@decaf-ts/integrations 0.3.8 → 0.3.10

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 (1167) hide show
  1. package/dist/integrations.cjs +2 -1649
  2. package/dist/integrations.cjs.map +1 -0
  3. package/dist/integrations.js +2 -1885
  4. package/dist/integrations.js.map +1 -0
  5. package/lib/cjs/blob/azure/AzureBlobStoreService.cjs +2 -2
  6. package/lib/cjs/blob/azure/AzureBlobStoreService.cjs.map +1 -0
  7. package/lib/cjs/blob/azure/index.cjs +2 -2
  8. package/lib/cjs/blob/azure/index.cjs.map +1 -0
  9. package/lib/cjs/blob/core/BlobErrors.cjs +2 -2
  10. package/lib/cjs/blob/core/BlobErrors.cjs.map +1 -0
  11. package/lib/cjs/blob/core/BlobKey.cjs +2 -2
  12. package/lib/cjs/blob/core/BlobKey.cjs.map +1 -0
  13. package/lib/cjs/blob/core/BlobStoreFactory.cjs +2 -2
  14. package/lib/cjs/blob/core/BlobStoreFactory.cjs.map +1 -0
  15. package/lib/cjs/blob/core/BlobStoreService.cjs +2 -2
  16. package/lib/cjs/blob/core/BlobStoreService.cjs.map +1 -0
  17. package/lib/cjs/blob/core/BlobTypes.cjs +2 -2
  18. package/lib/cjs/blob/core/BlobTypes.cjs.map +1 -0
  19. package/lib/cjs/blob/core/BlobValue.cjs +2 -2
  20. package/lib/cjs/blob/core/BlobValue.cjs.map +1 -0
  21. package/lib/cjs/blob/core/index.cjs +2 -2
  22. package/lib/cjs/blob/core/index.cjs.map +1 -0
  23. package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs +2 -2
  24. package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs.map +1 -0
  25. package/lib/cjs/blob/gcp/index.cjs +2 -2
  26. package/lib/cjs/blob/gcp/index.cjs.map +1 -0
  27. package/lib/cjs/blob/index.cjs +2 -2
  28. package/lib/cjs/blob/index.cjs.map +1 -0
  29. package/lib/cjs/blob/ipfs/IpfsBlobStoreService.cjs +2 -2
  30. package/lib/cjs/blob/ipfs/IpfsBlobStoreService.cjs.map +1 -0
  31. package/lib/cjs/blob/ipfs/IpfsKeyIndex.cjs +2 -2
  32. package/lib/cjs/blob/ipfs/IpfsKeyIndex.cjs.map +1 -0
  33. package/lib/cjs/blob/ipfs/LocalJsonIpfsKeyIndex.cjs +2 -2
  34. package/lib/cjs/blob/ipfs/LocalJsonIpfsKeyIndex.cjs.map +1 -0
  35. package/lib/cjs/blob/ipfs/MemoryIpfsKeyIndex.cjs +2 -2
  36. package/lib/cjs/blob/ipfs/MemoryIpfsKeyIndex.cjs.map +1 -0
  37. package/lib/cjs/blob/ipfs/PostgresIpfsKeyIndex.cjs +2 -2
  38. package/lib/cjs/blob/ipfs/PostgresIpfsKeyIndex.cjs.map +1 -0
  39. package/lib/cjs/blob/ipfs/index.cjs +2 -2
  40. package/lib/cjs/blob/ipfs/index.cjs.map +1 -0
  41. package/lib/cjs/blob/local/LocalBlobStoreService.cjs +2 -2
  42. package/lib/cjs/blob/local/LocalBlobStoreService.cjs.map +1 -0
  43. package/lib/cjs/blob/local/index.cjs +2 -2
  44. package/lib/cjs/blob/local/index.cjs.map +1 -0
  45. package/lib/cjs/blob/memory/MemoryBlobStoreService.cjs +2 -2
  46. package/lib/cjs/blob/memory/MemoryBlobStoreService.cjs.map +1 -0
  47. package/lib/cjs/blob/memory/index.cjs +2 -2
  48. package/lib/cjs/blob/memory/index.cjs.map +1 -0
  49. package/lib/cjs/blob/s3/MinioBlobStoreService.cjs +2 -2
  50. package/lib/cjs/blob/s3/MinioBlobStoreService.cjs.map +1 -0
  51. package/lib/cjs/blob/s3/R2BlobStoreService.cjs +2 -2
  52. package/lib/cjs/blob/s3/R2BlobStoreService.cjs.map +1 -0
  53. package/lib/cjs/blob/s3/S3BlobStoreService.cjs +2 -2
  54. package/lib/cjs/blob/s3/S3BlobStoreService.cjs.map +1 -0
  55. package/lib/cjs/blob/s3/index.cjs +2 -2
  56. package/lib/cjs/blob/s3/index.cjs.map +1 -0
  57. package/lib/cjs/docker/DockerComposeService.cjs +2 -2
  58. package/lib/cjs/docker/DockerComposeService.cjs.map +1 -0
  59. package/lib/cjs/docker/index.cjs +2 -2
  60. package/lib/cjs/docker/index.cjs.map +1 -0
  61. package/lib/cjs/graph/engine/constants.cjs +58 -0
  62. package/lib/cjs/graph/engine/constants.cjs.map +1 -0
  63. package/lib/cjs/graph/engine/decorators.cjs +4 -0
  64. package/lib/cjs/graph/engine/decorators.cjs.map +1 -0
  65. package/lib/cjs/graph/engine/errors/GraphCycleError.cjs +20 -0
  66. package/lib/cjs/graph/engine/errors/GraphCycleError.cjs.map +1 -0
  67. package/lib/cjs/graph/engine/errors/GraphExecutionError.cjs +27 -0
  68. package/lib/cjs/graph/engine/errors/GraphExecutionError.cjs.map +1 -0
  69. package/lib/cjs/graph/engine/errors/GraphInputError.cjs +20 -0
  70. package/lib/cjs/graph/engine/errors/GraphInputError.cjs.map +1 -0
  71. package/lib/cjs/graph/engine/errors/GraphLoopLimitError.cjs +20 -0
  72. package/lib/cjs/graph/engine/errors/GraphLoopLimitError.cjs.map +1 -0
  73. package/lib/cjs/graph/engine/errors/GraphPinningError.cjs +20 -0
  74. package/lib/cjs/graph/engine/errors/GraphPinningError.cjs.map +1 -0
  75. package/lib/cjs/graph/engine/errors/GraphPortError.cjs +20 -0
  76. package/lib/cjs/graph/engine/errors/GraphPortError.cjs.map +1 -0
  77. package/lib/cjs/graph/engine/errors/GraphStoreError.cjs +20 -0
  78. package/lib/cjs/graph/engine/errors/GraphStoreError.cjs.map +1 -0
  79. package/lib/cjs/graph/engine/errors/GraphTopologyError.cjs +20 -0
  80. package/lib/cjs/graph/engine/errors/GraphTopologyError.cjs.map +1 -0
  81. package/lib/cjs/graph/engine/errors/index.cjs +31 -0
  82. package/lib/cjs/graph/engine/errors/index.cjs.map +1 -0
  83. package/lib/cjs/graph/engine/events/GraphExecutionEvent.cjs +4 -0
  84. package/lib/cjs/graph/engine/events/GraphExecutionEvent.cjs.map +1 -0
  85. package/lib/cjs/graph/engine/events/GraphExecutionEventEmitter.cjs +40 -0
  86. package/lib/cjs/graph/engine/events/GraphExecutionEventEmitter.cjs.map +1 -0
  87. package/lib/cjs/graph/engine/events/GraphExecutionEventFactory.cjs +37 -0
  88. package/lib/cjs/graph/engine/events/GraphExecutionEventFactory.cjs.map +1 -0
  89. package/lib/cjs/graph/engine/events/GraphExecutionObserver.cjs +4 -0
  90. package/lib/cjs/graph/engine/events/GraphExecutionObserver.cjs.map +1 -0
  91. package/lib/cjs/graph/engine/events/index.cjs +27 -0
  92. package/lib/cjs/graph/engine/events/index.cjs.map +1 -0
  93. package/lib/cjs/graph/engine/execution/CodeSandboxEvaluator.cjs +4 -0
  94. package/lib/cjs/graph/engine/execution/CodeSandboxEvaluator.cjs.map +1 -0
  95. package/lib/cjs/graph/engine/execution/GraphExecutionContext.cjs +79 -0
  96. package/lib/cjs/graph/engine/execution/GraphExecutionContext.cjs.map +1 -0
  97. package/lib/cjs/graph/engine/execution/GraphExecutionEngine.cjs +413 -0
  98. package/lib/cjs/graph/engine/execution/GraphExecutionEngine.cjs.map +1 -0
  99. package/lib/cjs/graph/engine/execution/GraphExecutionFrame.cjs +32 -0
  100. package/lib/cjs/graph/engine/execution/GraphExecutionFrame.cjs.map +1 -0
  101. package/lib/cjs/graph/engine/execution/GraphExecutionResult.cjs +30 -0
  102. package/lib/cjs/graph/engine/execution/GraphExecutionResult.cjs.map +1 -0
  103. package/lib/cjs/graph/engine/execution/GraphNodeExecutor.cjs +4 -0
  104. package/lib/cjs/graph/engine/execution/GraphNodeExecutor.cjs.map +1 -0
  105. package/lib/cjs/graph/engine/execution/SwitchGraphNodeExecutor.cjs +103 -0
  106. package/lib/cjs/graph/engine/execution/SwitchGraphNodeExecutor.cjs.map +1 -0
  107. package/lib/cjs/graph/engine/execution/index.cjs +30 -0
  108. package/lib/cjs/graph/engine/execution/index.cjs.map +1 -0
  109. package/lib/cjs/graph/engine/index.cjs +84 -0
  110. package/lib/cjs/graph/engine/index.cjs.map +1 -0
  111. package/lib/cjs/graph/engine/loops/ConditionExpressionEvaluator.cjs +87 -0
  112. package/lib/cjs/graph/engine/loops/ConditionExpressionEvaluator.cjs.map +1 -0
  113. package/lib/cjs/graph/engine/loops/ForeachGraphNodeExecutor.cjs +85 -0
  114. package/lib/cjs/graph/engine/loops/ForeachGraphNodeExecutor.cjs.map +1 -0
  115. package/lib/cjs/graph/engine/loops/GraphConditionEvaluator.cjs +85 -0
  116. package/lib/cjs/graph/engine/loops/GraphConditionEvaluator.cjs.map +1 -0
  117. package/lib/cjs/graph/engine/loops/GraphLoopExecutionContext.cjs +16 -0
  118. package/lib/cjs/graph/engine/loops/GraphLoopExecutionContext.cjs.map +1 -0
  119. package/lib/cjs/graph/engine/loops/UntilGraphNodeExecutor.cjs +77 -0
  120. package/lib/cjs/graph/engine/loops/UntilGraphNodeExecutor.cjs.map +1 -0
  121. package/lib/cjs/graph/engine/loops/WhileGraphNodeExecutor.cjs +78 -0
  122. package/lib/cjs/graph/engine/loops/WhileGraphNodeExecutor.cjs.map +1 -0
  123. package/lib/cjs/graph/engine/loops/index.cjs +29 -0
  124. package/lib/cjs/graph/engine/loops/index.cjs.map +1 -0
  125. package/lib/cjs/graph/engine/pinning/GraphPinningDependencyResolver.cjs +28 -0
  126. package/lib/cjs/graph/engine/pinning/GraphPinningDependencyResolver.cjs.map +1 -0
  127. package/lib/cjs/graph/engine/pinning/GraphPinningMetadata.cjs +20 -0
  128. package/lib/cjs/graph/engine/pinning/GraphPinningMetadata.cjs.map +1 -0
  129. package/lib/cjs/graph/engine/pinning/GraphPinningPolicy.cjs +34 -0
  130. package/lib/cjs/graph/engine/pinning/GraphPinningPolicy.cjs.map +1 -0
  131. package/lib/cjs/graph/engine/pinning/GraphPinningService.cjs +191 -0
  132. package/lib/cjs/graph/engine/pinning/GraphPinningService.cjs.map +1 -0
  133. package/lib/cjs/graph/engine/pinning/index.cjs +27 -0
  134. package/lib/cjs/graph/engine/pinning/index.cjs.map +1 -0
  135. package/lib/cjs/graph/engine/planning/GraphExecutionPlan.cjs +4 -0
  136. package/lib/cjs/graph/engine/planning/GraphExecutionPlan.cjs.map +1 -0
  137. package/lib/cjs/graph/engine/planning/GraphExecutionPlanEdge.cjs +4 -0
  138. package/lib/cjs/graph/engine/planning/GraphExecutionPlanEdge.cjs.map +1 -0
  139. package/lib/cjs/graph/engine/planning/GraphExecutionPlanLayer.cjs +4 -0
  140. package/lib/cjs/graph/engine/planning/GraphExecutionPlanLayer.cjs.map +1 -0
  141. package/lib/cjs/graph/engine/planning/GraphExecutionPlanNode.cjs +4 -0
  142. package/lib/cjs/graph/engine/planning/GraphExecutionPlanNode.cjs.map +1 -0
  143. package/lib/cjs/graph/engine/planning/GraphExecutionPlanner.cjs +197 -0
  144. package/lib/cjs/graph/engine/planning/GraphExecutionPlanner.cjs.map +1 -0
  145. package/lib/cjs/graph/engine/planning/GraphRelationResolver.cjs +172 -0
  146. package/lib/cjs/graph/engine/planning/GraphRelationResolver.cjs.map +1 -0
  147. package/lib/cjs/graph/engine/planning/GraphTopology.cjs +57 -0
  148. package/lib/cjs/graph/engine/planning/GraphTopology.cjs.map +1 -0
  149. package/lib/cjs/graph/engine/planning/index.cjs +30 -0
  150. package/lib/cjs/graph/engine/planning/index.cjs.map +1 -0
  151. package/lib/cjs/graph/engine/registry/GraphNodeExecutorRegistry.cjs +44 -0
  152. package/lib/cjs/graph/engine/registry/GraphNodeExecutorRegistry.cjs.map +1 -0
  153. package/lib/cjs/graph/engine/registry/GraphNodeExecutorResolver.cjs +27 -0
  154. package/lib/cjs/graph/engine/registry/GraphNodeExecutorResolver.cjs.map +1 -0
  155. package/lib/cjs/graph/engine/registry/index.cjs +25 -0
  156. package/lib/cjs/graph/engine/registry/index.cjs.map +1 -0
  157. package/lib/cjs/graph/engine/snapshots/GraphExecutionSnapshotMapper.cjs +53 -0
  158. package/lib/cjs/graph/engine/snapshots/GraphExecutionSnapshotMapper.cjs.map +1 -0
  159. package/lib/cjs/graph/engine/snapshots/index.cjs +24 -0
  160. package/lib/cjs/graph/engine/snapshots/index.cjs.map +1 -0
  161. package/lib/cjs/graph/engine/store/GraphCachedValue.cjs +4 -0
  162. package/lib/cjs/graph/engine/store/GraphCachedValue.cjs.map +1 -0
  163. package/lib/cjs/graph/engine/store/GraphValueKey.cjs +4 -0
  164. package/lib/cjs/graph/engine/store/GraphValueKey.cjs.map +1 -0
  165. package/lib/cjs/graph/engine/store/GraphValueStore.cjs +76 -0
  166. package/lib/cjs/graph/engine/store/GraphValueStore.cjs.map +1 -0
  167. package/lib/cjs/graph/engine/store/GraphValueStoreAdapter.cjs +4 -0
  168. package/lib/cjs/graph/engine/store/GraphValueStoreAdapter.cjs.map +1 -0
  169. package/lib/cjs/graph/engine/store/InMemoryGraphValueStoreAdapter.cjs +69 -0
  170. package/lib/cjs/graph/engine/store/InMemoryGraphValueStoreAdapter.cjs.map +1 -0
  171. package/lib/cjs/graph/engine/store/index.cjs +28 -0
  172. package/lib/cjs/graph/engine/store/index.cjs.map +1 -0
  173. package/lib/cjs/graph/engine/types.cjs +4 -0
  174. package/lib/cjs/graph/engine/types.cjs.map +1 -0
  175. package/lib/cjs/graph/engine/validation/GraphDefinitionValidator.cjs +33 -0
  176. package/lib/cjs/graph/engine/validation/GraphDefinitionValidator.cjs.map +1 -0
  177. package/lib/cjs/graph/engine/validation/GraphPortSchemaResolver.cjs +58 -0
  178. package/lib/cjs/graph/engine/validation/GraphPortSchemaResolver.cjs.map +1 -0
  179. package/lib/cjs/graph/engine/validation/GraphValueValidator.cjs +52 -0
  180. package/lib/cjs/graph/engine/validation/GraphValueValidator.cjs.map +1 -0
  181. package/lib/cjs/graph/engine/validation/index.cjs +26 -0
  182. package/lib/cjs/graph/engine/validation/index.cjs.map +1 -0
  183. package/lib/cjs/graph/index.cjs +10 -60
  184. package/lib/cjs/graph/index.cjs.map +1 -0
  185. package/lib/cjs/graph/shared/constants.cjs +44 -0
  186. package/lib/cjs/graph/shared/constants.cjs.map +1 -0
  187. package/lib/cjs/graph/shared/index.cjs +38 -0
  188. package/lib/cjs/graph/shared/index.cjs.map +1 -0
  189. package/lib/cjs/graph/shared/nodes/agent.cjs +110 -0
  190. package/lib/cjs/graph/shared/nodes/agent.cjs.map +1 -0
  191. package/lib/cjs/graph/shared/nodes/base.cjs +36 -0
  192. package/lib/cjs/graph/shared/nodes/base.cjs.map +1 -0
  193. package/lib/cjs/graph/shared/nodes/category-styles.cjs +38 -0
  194. package/lib/cjs/graph/shared/nodes/category-styles.cjs.map +1 -0
  195. package/lib/cjs/graph/shared/nodes/flow-control.cjs +464 -0
  196. package/lib/cjs/graph/shared/nodes/flow-control.cjs.map +1 -0
  197. package/lib/cjs/graph/shared/nodes/index.cjs +35 -0
  198. package/lib/cjs/graph/shared/nodes/index.cjs.map +1 -0
  199. package/lib/cjs/graph/shared/nodes/triggers.cjs +250 -0
  200. package/lib/cjs/graph/shared/nodes/triggers.cjs.map +1 -0
  201. package/lib/cjs/graph/shared/types.cjs +4 -0
  202. package/lib/cjs/graph/shared/types.cjs.map +1 -0
  203. package/lib/cjs/index.cjs +5 -5
  204. package/lib/cjs/index.cjs.map +1 -0
  205. package/lib/cjs/keycloak/index.cjs +2 -2
  206. package/lib/cjs/keycloak/index.cjs.map +1 -0
  207. package/lib/cjs/keycloak/services/KeycloakAuthService.cjs +2 -2
  208. package/lib/cjs/keycloak/services/KeycloakAuthService.cjs.map +1 -0
  209. package/lib/cjs/keycloak/services/KeycloakClientService.cjs +2 -2
  210. package/lib/cjs/keycloak/services/KeycloakClientService.cjs.map +1 -0
  211. package/lib/cjs/keycloak/services/KeycloakIdentityProviderService.cjs +2 -2
  212. package/lib/cjs/keycloak/services/KeycloakIdentityProviderService.cjs.map +1 -0
  213. package/lib/cjs/keycloak/services/KeycloakRealmService.cjs +2 -2
  214. package/lib/cjs/keycloak/services/KeycloakRealmService.cjs.map +1 -0
  215. package/lib/cjs/keycloak/services/KeycloakRoleService.cjs +2 -2
  216. package/lib/cjs/keycloak/services/KeycloakRoleService.cjs.map +1 -0
  217. package/lib/cjs/keycloak/services/KeycloakService.cjs +2 -2
  218. package/lib/cjs/keycloak/services/KeycloakService.cjs.map +1 -0
  219. package/lib/cjs/keycloak/services/KeycloakUserService.cjs +2 -2
  220. package/lib/cjs/keycloak/services/KeycloakUserService.cjs.map +1 -0
  221. package/lib/cjs/keycloak/services/index.cjs +2 -2
  222. package/lib/cjs/keycloak/services/index.cjs.map +1 -0
  223. package/lib/cjs/keycloak/services/runtime.cjs +2 -2
  224. package/lib/cjs/keycloak/services/runtime.cjs.map +1 -0
  225. package/lib/cjs/keycloak/types.cjs +2 -2
  226. package/lib/cjs/keycloak/types.cjs.map +1 -0
  227. package/lib/cjs/kibana/helpers.cjs +2 -2
  228. package/lib/cjs/kibana/helpers.cjs.map +1 -0
  229. package/lib/cjs/kibana/index.cjs +2 -2
  230. package/lib/cjs/kibana/index.cjs.map +1 -0
  231. package/lib/cjs/kibana/services/KibanaAuthService.cjs +2 -2
  232. package/lib/cjs/kibana/services/KibanaAuthService.cjs.map +1 -0
  233. package/lib/cjs/kibana/services/KibanaDashboardService.cjs +2 -2
  234. package/lib/cjs/kibana/services/KibanaDashboardService.cjs.map +1 -0
  235. package/lib/cjs/kibana/services/KibanaDataViewService.cjs +2 -2
  236. package/lib/cjs/kibana/services/KibanaDataViewService.cjs.map +1 -0
  237. package/lib/cjs/kibana/services/KibanaRoleService.cjs +2 -2
  238. package/lib/cjs/kibana/services/KibanaRoleService.cjs.map +1 -0
  239. package/lib/cjs/kibana/services/KibanaService.cjs +2 -2
  240. package/lib/cjs/kibana/services/KibanaService.cjs.map +1 -0
  241. package/lib/cjs/kibana/services/KibanaSpaceService.cjs +2 -2
  242. package/lib/cjs/kibana/services/KibanaSpaceService.cjs.map +1 -0
  243. package/lib/cjs/kibana/services/KibanaUserService.cjs +2 -2
  244. package/lib/cjs/kibana/services/KibanaUserService.cjs.map +1 -0
  245. package/lib/cjs/kibana/services/index.cjs +2 -2
  246. package/lib/cjs/kibana/services/index.cjs.map +1 -0
  247. package/lib/cjs/kibana/services/runtime.cjs +2 -2
  248. package/lib/cjs/kibana/services/runtime.cjs.map +1 -0
  249. package/lib/cjs/kibana/types.cjs +2 -2
  250. package/lib/cjs/kibana/types.cjs.map +1 -0
  251. package/lib/cjs/namespaces/index.cjs +2 -2
  252. package/lib/cjs/namespaces/index.cjs.map +1 -0
  253. package/lib/cjs/namespaces/models/authorization-model.cjs +2 -2
  254. package/lib/cjs/namespaces/models/authorization-model.cjs.map +1 -0
  255. package/lib/cjs/namespaces/models/effective-permission.model.cjs +2 -2
  256. package/lib/cjs/namespaces/models/effective-permission.model.cjs.map +1 -0
  257. package/lib/cjs/namespaces/models/group-membership.model.cjs +2 -2
  258. package/lib/cjs/namespaces/models/group-membership.model.cjs.map +1 -0
  259. package/lib/cjs/namespaces/models/group.model.cjs +2 -2
  260. package/lib/cjs/namespaces/models/group.model.cjs.map +1 -0
  261. package/lib/cjs/namespaces/models/index.cjs +2 -2
  262. package/lib/cjs/namespaces/models/index.cjs.map +1 -0
  263. package/lib/cjs/namespaces/models/inheritance-block.model.cjs +2 -2
  264. package/lib/cjs/namespaces/models/inheritance-block.model.cjs.map +1 -0
  265. package/lib/cjs/namespaces/models/org-unit-closure.model.cjs +2 -2
  266. package/lib/cjs/namespaces/models/org-unit-closure.model.cjs.map +1 -0
  267. package/lib/cjs/namespaces/models/org-unit-membership.model.cjs +2 -2
  268. package/lib/cjs/namespaces/models/org-unit-membership.model.cjs.map +1 -0
  269. package/lib/cjs/namespaces/models/org-unit-profile.model.cjs +2 -2
  270. package/lib/cjs/namespaces/models/org-unit-profile.model.cjs.map +1 -0
  271. package/lib/cjs/namespaces/models/org-unit.model.cjs +2 -2
  272. package/lib/cjs/namespaces/models/org-unit.model.cjs.map +1 -0
  273. package/lib/cjs/namespaces/models/permission.model.cjs +2 -2
  274. package/lib/cjs/namespaces/models/permission.model.cjs.map +1 -0
  275. package/lib/cjs/namespaces/models/principal.model.cjs +2 -2
  276. package/lib/cjs/namespaces/models/principal.model.cjs.map +1 -0
  277. package/lib/cjs/namespaces/models/protected-resource.model.cjs +2 -2
  278. package/lib/cjs/namespaces/models/protected-resource.model.cjs.map +1 -0
  279. package/lib/cjs/namespaces/models/resource-grant.model.cjs +2 -2
  280. package/lib/cjs/namespaces/models/resource-grant.model.cjs.map +1 -0
  281. package/lib/cjs/namespaces/models/role-assignment.model.cjs +2 -2
  282. package/lib/cjs/namespaces/models/role-assignment.model.cjs.map +1 -0
  283. package/lib/cjs/namespaces/models/role-permission.model.cjs +2 -2
  284. package/lib/cjs/namespaces/models/role-permission.model.cjs.map +1 -0
  285. package/lib/cjs/namespaces/models/role.model.cjs +2 -2
  286. package/lib/cjs/namespaces/models/role.model.cjs.map +1 -0
  287. package/lib/cjs/namespaces/models/storage-binding.model.cjs +2 -2
  288. package/lib/cjs/namespaces/models/storage-binding.model.cjs.map +1 -0
  289. package/lib/cjs/namespaces/models/tenant-membership.model.cjs +2 -2
  290. package/lib/cjs/namespaces/models/tenant-membership.model.cjs.map +1 -0
  291. package/lib/cjs/namespaces/models/tenant-profile.model.cjs +2 -2
  292. package/lib/cjs/namespaces/models/tenant-profile.model.cjs.map +1 -0
  293. package/lib/cjs/namespaces/models/tenant.model.cjs +2 -2
  294. package/lib/cjs/namespaces/models/tenant.model.cjs.map +1 -0
  295. package/lib/cjs/namespaces/models/user.model.cjs +2 -2
  296. package/lib/cjs/namespaces/models/user.model.cjs.map +1 -0
  297. package/lib/cjs/namespaces/org-based-authorization-system.cjs +10 -4
  298. package/lib/cjs/namespaces/org-based-authorization-system.cjs.map +1 -0
  299. package/lib/cjs/namespaces/org-based-authorization-system.models.cjs +2 -2
  300. package/lib/cjs/namespaces/org-based-authorization-system.models.cjs.map +1 -0
  301. package/lib/cjs/namespaces/org-based-authorization-system.services.cjs +19 -10
  302. package/lib/cjs/namespaces/org-based-authorization-system.services.cjs.map +1 -0
  303. package/lib/cjs/namespaces/services/authz.service.cjs +39 -13
  304. package/lib/cjs/namespaces/services/authz.service.cjs.map +1 -0
  305. package/lib/cjs/namespaces/services/bootstrap.service.cjs +2 -2
  306. package/lib/cjs/namespaces/services/bootstrap.service.cjs.map +1 -0
  307. package/lib/cjs/namespaces/services/effective-permission.service.cjs +2 -2
  308. package/lib/cjs/namespaces/services/effective-permission.service.cjs.map +1 -0
  309. package/lib/cjs/namespaces/services/group-membership.service.cjs +2 -2
  310. package/lib/cjs/namespaces/services/group-membership.service.cjs.map +1 -0
  311. package/lib/cjs/namespaces/services/group.service.cjs +2 -2
  312. package/lib/cjs/namespaces/services/group.service.cjs.map +1 -0
  313. package/lib/cjs/namespaces/services/index.cjs +2 -2
  314. package/lib/cjs/namespaces/services/index.cjs.map +1 -0
  315. package/lib/cjs/namespaces/services/inheritance-block.service.cjs +6 -4
  316. package/lib/cjs/namespaces/services/inheritance-block.service.cjs.map +1 -0
  317. package/lib/cjs/namespaces/services/org-unit-closure.service.cjs +16 -7
  318. package/lib/cjs/namespaces/services/org-unit-closure.service.cjs.map +1 -0
  319. package/lib/cjs/namespaces/services/org-unit-membership.service.cjs +2 -2
  320. package/lib/cjs/namespaces/services/org-unit-membership.service.cjs.map +1 -0
  321. package/lib/cjs/namespaces/services/org-unit-profile.service.cjs +2 -2
  322. package/lib/cjs/namespaces/services/org-unit-profile.service.cjs.map +1 -0
  323. package/lib/cjs/namespaces/services/org-unit.service.cjs +2 -2
  324. package/lib/cjs/namespaces/services/org-unit.service.cjs.map +1 -0
  325. package/lib/cjs/namespaces/services/permission.service.cjs +2 -2
  326. package/lib/cjs/namespaces/services/permission.service.cjs.map +1 -0
  327. package/lib/cjs/namespaces/services/principal.service.cjs +2 -2
  328. package/lib/cjs/namespaces/services/principal.service.cjs.map +1 -0
  329. package/lib/cjs/namespaces/services/protected-resource.service.cjs +2 -2
  330. package/lib/cjs/namespaces/services/protected-resource.service.cjs.map +1 -0
  331. package/lib/cjs/namespaces/services/resource-grant.service.cjs +2 -2
  332. package/lib/cjs/namespaces/services/resource-grant.service.cjs.map +1 -0
  333. package/lib/cjs/namespaces/services/resource-lifecycle.service.cjs +2 -2
  334. package/lib/cjs/namespaces/services/resource-lifecycle.service.cjs.map +1 -0
  335. package/lib/cjs/namespaces/services/role-assignment.service.cjs +4 -3
  336. package/lib/cjs/namespaces/services/role-assignment.service.cjs.map +1 -0
  337. package/lib/cjs/namespaces/services/role-permission.service.cjs +2 -2
  338. package/lib/cjs/namespaces/services/role-permission.service.cjs.map +1 -0
  339. package/lib/cjs/namespaces/services/role.service.cjs +2 -2
  340. package/lib/cjs/namespaces/services/role.service.cjs.map +1 -0
  341. package/lib/cjs/namespaces/services/storage-binding.service.cjs +2 -2
  342. package/lib/cjs/namespaces/services/storage-binding.service.cjs.map +1 -0
  343. package/lib/cjs/namespaces/services/system-management.service.cjs +2 -2
  344. package/lib/cjs/namespaces/services/system-management.service.cjs.map +1 -0
  345. package/lib/cjs/namespaces/services/tenant-membership.service.cjs +2 -2
  346. package/lib/cjs/namespaces/services/tenant-membership.service.cjs.map +1 -0
  347. package/lib/cjs/namespaces/services/tenant-profile.service.cjs +2 -2
  348. package/lib/cjs/namespaces/services/tenant-profile.service.cjs.map +1 -0
  349. package/lib/cjs/namespaces/services/tenant.service.cjs +2 -2
  350. package/lib/cjs/namespaces/services/tenant.service.cjs.map +1 -0
  351. package/lib/cjs/namespaces/services/user.service.cjs +2 -2
  352. package/lib/cjs/namespaces/services/user.service.cjs.map +1 -0
  353. package/lib/cjs/namespaces/types.cjs +2 -2
  354. package/lib/cjs/namespaces/types.cjs.map +1 -0
  355. package/lib/cjs/namespaces/utils.cjs +13 -5
  356. package/lib/cjs/namespaces/utils.cjs.map +1 -0
  357. package/lib/cjs/nest/authService.cjs +2 -2
  358. package/lib/cjs/nest/authService.cjs.map +1 -0
  359. package/lib/cjs/nest/graph/GraphExecutionController.cjs +2 -2
  360. package/lib/cjs/nest/graph/GraphExecutionController.cjs.map +1 -0
  361. package/lib/cjs/nest/graph/GraphExecutionModule.cjs +6 -4
  362. package/lib/cjs/nest/graph/GraphExecutionModule.cjs.map +1 -0
  363. package/lib/cjs/nest/graph/GraphExecutionResultModel.cjs +2 -2
  364. package/lib/cjs/nest/graph/GraphExecutionResultModel.cjs.map +1 -0
  365. package/lib/cjs/nest/graph/GraphExecutionResultRepository.cjs +2 -2
  366. package/lib/cjs/nest/graph/GraphExecutionResultRepository.cjs.map +1 -0
  367. package/lib/cjs/nest/graph/GraphExecutorRegistryFactory.cjs +97 -11
  368. package/lib/cjs/nest/graph/GraphExecutorRegistryFactory.cjs.map +1 -0
  369. package/lib/cjs/nest/graph/index.cjs +2 -2
  370. package/lib/cjs/nest/graph/index.cjs.map +1 -0
  371. package/lib/cjs/nest/graph/main.cjs +30 -0
  372. package/lib/cjs/nest/graph/main.cjs.map +1 -0
  373. package/lib/cjs/nest/index.cjs +2 -2
  374. package/lib/cjs/nest/index.cjs.map +1 -0
  375. package/lib/cjs/nest/keycloakAuthHandler.cjs +2 -2
  376. package/lib/cjs/nest/keycloakAuthHandler.cjs.map +1 -0
  377. package/lib/cjs/nest/keycloakModule.cjs +2 -2
  378. package/lib/cjs/nest/keycloakModule.cjs.map +1 -0
  379. package/lib/cjs/nest/logging.cjs +2 -2
  380. package/lib/cjs/nest/logging.cjs.map +1 -0
  381. package/lib/cjs/nest/types.cjs +2 -2
  382. package/lib/cjs/nest/types.cjs.map +1 -0
  383. package/lib/cjs/nest/utils.cjs +2 -2
  384. package/lib/cjs/nest/utils.cjs.map +1 -0
  385. package/lib/cjs/secrets/aws/AwsSecretService.cjs +2 -2
  386. package/lib/cjs/secrets/aws/AwsSecretService.cjs.map +1 -0
  387. package/lib/cjs/secrets/aws/AwsSecretServiceConfig.cjs +2 -2
  388. package/lib/cjs/secrets/aws/AwsSecretServiceConfig.cjs.map +1 -0
  389. package/lib/cjs/secrets/aws/index.cjs +2 -2
  390. package/lib/cjs/secrets/aws/index.cjs.map +1 -0
  391. package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs +2 -2
  392. package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs.map +1 -0
  393. package/lib/cjs/secrets/azure/AzureKeyVaultSecretServiceConfig.cjs +2 -2
  394. package/lib/cjs/secrets/azure/AzureKeyVaultSecretServiceConfig.cjs.map +1 -0
  395. package/lib/cjs/secrets/azure/index.cjs +2 -2
  396. package/lib/cjs/secrets/azure/index.cjs.map +1 -0
  397. package/lib/cjs/secrets/core/SecretErrors.cjs +2 -2
  398. package/lib/cjs/secrets/core/SecretErrors.cjs.map +1 -0
  399. package/lib/cjs/secrets/core/SecretName.cjs +2 -2
  400. package/lib/cjs/secrets/core/SecretName.cjs.map +1 -0
  401. package/lib/cjs/secrets/core/SecretReference.cjs +2 -2
  402. package/lib/cjs/secrets/core/SecretReference.cjs.map +1 -0
  403. package/lib/cjs/secrets/core/SecretSerialization.cjs +2 -2
  404. package/lib/cjs/secrets/core/SecretSerialization.cjs.map +1 -0
  405. package/lib/cjs/secrets/core/SecretService.cjs +2 -2
  406. package/lib/cjs/secrets/core/SecretService.cjs.map +1 -0
  407. package/lib/cjs/secrets/core/SecretTypes.cjs +2 -2
  408. package/lib/cjs/secrets/core/SecretTypes.cjs.map +1 -0
  409. package/lib/cjs/secrets/core/index.cjs +2 -2
  410. package/lib/cjs/secrets/core/index.cjs.map +1 -0
  411. package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs +2 -2
  412. package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs.map +1 -0
  413. package/lib/cjs/secrets/gcp/GcpSecretManagerServiceConfig.cjs +2 -2
  414. package/lib/cjs/secrets/gcp/GcpSecretManagerServiceConfig.cjs.map +1 -0
  415. package/lib/cjs/secrets/gcp/index.cjs +2 -2
  416. package/lib/cjs/secrets/gcp/index.cjs.map +1 -0
  417. package/lib/cjs/secrets/index.cjs +2 -2
  418. package/lib/cjs/secrets/index.cjs.map +1 -0
  419. package/lib/cjs/secrets/model/ModelSecretCrypto.cjs +2 -2
  420. package/lib/cjs/secrets/model/ModelSecretCrypto.cjs.map +1 -0
  421. package/lib/cjs/secrets/model/ModelSecretService.cjs +2 -2
  422. package/lib/cjs/secrets/model/ModelSecretService.cjs.map +1 -0
  423. package/lib/cjs/secrets/model/ModelSecretServiceConfig.cjs +2 -2
  424. package/lib/cjs/secrets/model/ModelSecretServiceConfig.cjs.map +1 -0
  425. package/lib/cjs/secrets/model/Secret.cjs +2 -2
  426. package/lib/cjs/secrets/model/Secret.cjs.map +1 -0
  427. package/lib/cjs/secrets/model/index.cjs +2 -2
  428. package/lib/cjs/secrets/model/index.cjs.map +1 -0
  429. package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs +2 -2
  430. package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs.map +1 -0
  431. package/lib/cjs/secrets/onepassword/OnePasswordSecretServiceConfig.cjs +2 -2
  432. package/lib/cjs/secrets/onepassword/OnePasswordSecretServiceConfig.cjs.map +1 -0
  433. package/lib/cjs/secrets/onepassword/index.cjs +2 -2
  434. package/lib/cjs/secrets/onepassword/index.cjs.map +1 -0
  435. package/lib/cjs/secrets/vault/VaultSecretService.cjs +2 -2
  436. package/lib/cjs/secrets/vault/VaultSecretService.cjs.map +1 -0
  437. package/lib/cjs/secrets/vault/VaultSecretServiceConfig.cjs +2 -2
  438. package/lib/cjs/secrets/vault/VaultSecretServiceConfig.cjs.map +1 -0
  439. package/lib/cjs/secrets/vault/index.cjs +2 -2
  440. package/lib/cjs/secrets/vault/index.cjs.map +1 -0
  441. package/lib/cjs/shared/runtime.cjs +2 -2
  442. package/lib/cjs/shared/runtime.cjs.map +1 -0
  443. package/lib/cjs/utils.cjs +2 -2
  444. package/lib/cjs/utils.cjs.map +1 -0
  445. package/lib/esm/blob/azure/AzureBlobStoreService.js +1 -1
  446. package/lib/esm/blob/azure/AzureBlobStoreService.js.map +1 -0
  447. package/lib/esm/blob/azure/index.js +1 -1
  448. package/lib/esm/blob/azure/index.js.map +1 -0
  449. package/lib/esm/blob/core/BlobErrors.js +1 -1
  450. package/lib/esm/blob/core/BlobErrors.js.map +1 -0
  451. package/lib/esm/blob/core/BlobKey.js +1 -1
  452. package/lib/esm/blob/core/BlobKey.js.map +1 -0
  453. package/lib/esm/blob/core/BlobStoreFactory.js +1 -1
  454. package/lib/esm/blob/core/BlobStoreFactory.js.map +1 -0
  455. package/lib/esm/blob/core/BlobStoreService.js +1 -1
  456. package/lib/esm/blob/core/BlobStoreService.js.map +1 -0
  457. package/lib/esm/blob/core/BlobTypes.js +1 -1
  458. package/lib/esm/blob/core/BlobTypes.js.map +1 -0
  459. package/lib/esm/blob/core/BlobValue.js +1 -1
  460. package/lib/esm/blob/core/BlobValue.js.map +1 -0
  461. package/lib/esm/blob/core/index.js +1 -1
  462. package/lib/esm/blob/core/index.js.map +1 -0
  463. package/lib/esm/blob/gcp/GcsBlobStoreService.js +1 -1
  464. package/lib/esm/blob/gcp/GcsBlobStoreService.js.map +1 -0
  465. package/lib/esm/blob/gcp/index.js +1 -1
  466. package/lib/esm/blob/gcp/index.js.map +1 -0
  467. package/lib/esm/blob/index.js +1 -1
  468. package/lib/esm/blob/index.js.map +1 -0
  469. package/lib/esm/blob/ipfs/IpfsBlobStoreService.js +1 -1
  470. package/lib/esm/blob/ipfs/IpfsBlobStoreService.js.map +1 -0
  471. package/lib/esm/blob/ipfs/IpfsKeyIndex.js +1 -1
  472. package/lib/esm/blob/ipfs/IpfsKeyIndex.js.map +1 -0
  473. package/lib/esm/blob/ipfs/LocalJsonIpfsKeyIndex.js +1 -1
  474. package/lib/esm/blob/ipfs/LocalJsonIpfsKeyIndex.js.map +1 -0
  475. package/lib/esm/blob/ipfs/MemoryIpfsKeyIndex.js +1 -1
  476. package/lib/esm/blob/ipfs/MemoryIpfsKeyIndex.js.map +1 -0
  477. package/lib/esm/blob/ipfs/PostgresIpfsKeyIndex.js +1 -1
  478. package/lib/esm/blob/ipfs/PostgresIpfsKeyIndex.js.map +1 -0
  479. package/lib/esm/blob/ipfs/index.js +1 -1
  480. package/lib/esm/blob/ipfs/index.js.map +1 -0
  481. package/lib/esm/blob/local/LocalBlobStoreService.js +1 -1
  482. package/lib/esm/blob/local/LocalBlobStoreService.js.map +1 -0
  483. package/lib/esm/blob/local/index.js +1 -1
  484. package/lib/esm/blob/local/index.js.map +1 -0
  485. package/lib/esm/blob/memory/MemoryBlobStoreService.js +1 -1
  486. package/lib/esm/blob/memory/MemoryBlobStoreService.js.map +1 -0
  487. package/lib/esm/blob/memory/index.js +1 -1
  488. package/lib/esm/blob/memory/index.js.map +1 -0
  489. package/lib/esm/blob/s3/MinioBlobStoreService.js +1 -1
  490. package/lib/esm/blob/s3/MinioBlobStoreService.js.map +1 -0
  491. package/lib/esm/blob/s3/R2BlobStoreService.js +1 -1
  492. package/lib/esm/blob/s3/R2BlobStoreService.js.map +1 -0
  493. package/lib/esm/blob/s3/S3BlobStoreService.js +1 -1
  494. package/lib/esm/blob/s3/S3BlobStoreService.js.map +1 -0
  495. package/lib/esm/blob/s3/index.js +1 -1
  496. package/lib/esm/blob/s3/index.js.map +1 -0
  497. package/lib/esm/docker/DockerComposeService.js +1 -1
  498. package/lib/esm/docker/DockerComposeService.js.map +1 -0
  499. package/lib/esm/docker/index.js +1 -1
  500. package/lib/esm/docker/index.js.map +1 -0
  501. package/lib/esm/graph/engine/constants.js +62 -0
  502. package/lib/esm/graph/engine/constants.js.map +1 -0
  503. package/lib/esm/graph/engine/decorators.js +2 -0
  504. package/lib/esm/graph/engine/decorators.js.map +1 -0
  505. package/lib/esm/graph/engine/errors/GraphCycleError.js +15 -0
  506. package/lib/esm/graph/engine/errors/GraphCycleError.js.map +1 -0
  507. package/lib/esm/graph/engine/errors/GraphExecutionError.js +22 -0
  508. package/lib/esm/graph/engine/errors/GraphExecutionError.js.map +1 -0
  509. package/lib/esm/graph/engine/errors/GraphInputError.js +15 -0
  510. package/lib/esm/graph/engine/errors/GraphInputError.js.map +1 -0
  511. package/lib/esm/graph/engine/errors/GraphLoopLimitError.js +15 -0
  512. package/lib/esm/graph/engine/errors/GraphLoopLimitError.js.map +1 -0
  513. package/lib/esm/graph/engine/errors/GraphPinningError.js +15 -0
  514. package/lib/esm/graph/engine/errors/GraphPinningError.js.map +1 -0
  515. package/lib/esm/graph/engine/errors/GraphPortError.js +15 -0
  516. package/lib/esm/graph/engine/errors/GraphPortError.js.map +1 -0
  517. package/lib/esm/graph/engine/errors/GraphStoreError.js +15 -0
  518. package/lib/esm/graph/engine/errors/GraphStoreError.js.map +1 -0
  519. package/lib/esm/graph/engine/errors/GraphTopologyError.js +15 -0
  520. package/lib/esm/graph/engine/errors/GraphTopologyError.js.map +1 -0
  521. package/lib/esm/graph/engine/errors/index.js +14 -0
  522. package/lib/esm/graph/engine/errors/index.js.map +1 -0
  523. package/lib/esm/graph/engine/events/GraphExecutionEvent.js +2 -0
  524. package/lib/esm/graph/engine/events/GraphExecutionEvent.js.map +1 -0
  525. package/lib/esm/graph/engine/events/GraphExecutionEventEmitter.js +35 -0
  526. package/lib/esm/graph/engine/events/GraphExecutionEventEmitter.js.map +1 -0
  527. package/lib/esm/graph/engine/events/GraphExecutionEventFactory.js +32 -0
  528. package/lib/esm/graph/engine/events/GraphExecutionEventFactory.js.map +1 -0
  529. package/lib/esm/graph/engine/events/GraphExecutionObserver.js +2 -0
  530. package/lib/esm/graph/engine/events/GraphExecutionObserver.js.map +1 -0
  531. package/lib/esm/graph/engine/events/index.js +10 -0
  532. package/lib/esm/graph/engine/events/index.js.map +1 -0
  533. package/lib/esm/graph/engine/execution/CodeSandboxEvaluator.js +18 -0
  534. package/lib/esm/graph/engine/execution/CodeSandboxEvaluator.js.map +1 -0
  535. package/lib/esm/graph/engine/execution/GraphExecutionContext.js +74 -0
  536. package/lib/esm/graph/engine/execution/GraphExecutionContext.js.map +1 -0
  537. package/lib/esm/graph/engine/execution/GraphExecutionEngine.js +408 -0
  538. package/lib/esm/graph/engine/execution/GraphExecutionEngine.js.map +1 -0
  539. package/lib/esm/graph/engine/execution/GraphExecutionFrame.js +27 -0
  540. package/lib/esm/graph/engine/execution/GraphExecutionFrame.js.map +1 -0
  541. package/lib/esm/graph/engine/execution/GraphExecutionResult.js +26 -0
  542. package/lib/esm/graph/engine/execution/GraphExecutionResult.js.map +1 -0
  543. package/lib/esm/graph/engine/execution/GraphNodeExecutor.js +2 -0
  544. package/lib/esm/graph/engine/execution/GraphNodeExecutor.js.map +1 -0
  545. package/lib/esm/graph/engine/execution/SwitchGraphNodeExecutor.js +98 -0
  546. package/lib/esm/graph/engine/execution/SwitchGraphNodeExecutor.js.map +1 -0
  547. package/lib/esm/graph/engine/execution/index.js +13 -0
  548. package/lib/esm/graph/engine/execution/index.js.map +1 -0
  549. package/lib/esm/graph/engine/index.js +67 -0
  550. package/lib/esm/graph/engine/index.js.map +1 -0
  551. package/lib/esm/graph/engine/loops/ConditionExpressionEvaluator.js +82 -0
  552. package/lib/esm/graph/engine/loops/ConditionExpressionEvaluator.js.map +1 -0
  553. package/lib/esm/graph/engine/loops/ForeachGraphNodeExecutor.js +80 -0
  554. package/lib/esm/graph/engine/loops/ForeachGraphNodeExecutor.js.map +1 -0
  555. package/lib/esm/graph/engine/loops/GraphConditionEvaluator.js +80 -0
  556. package/lib/esm/graph/engine/loops/GraphConditionEvaluator.js.map +1 -0
  557. package/lib/esm/graph/engine/loops/GraphLoopExecutionContext.js +11 -0
  558. package/lib/esm/graph/engine/loops/GraphLoopExecutionContext.js.map +1 -0
  559. package/lib/esm/graph/engine/loops/UntilGraphNodeExecutor.js +72 -0
  560. package/lib/esm/graph/engine/loops/UntilGraphNodeExecutor.js.map +1 -0
  561. package/lib/esm/graph/engine/loops/WhileGraphNodeExecutor.js +73 -0
  562. package/lib/esm/graph/engine/loops/WhileGraphNodeExecutor.js.map +1 -0
  563. package/lib/esm/graph/engine/loops/index.js +12 -0
  564. package/lib/esm/graph/engine/loops/index.js.map +1 -0
  565. package/lib/esm/graph/engine/pinning/GraphPinningDependencyResolver.js +23 -0
  566. package/lib/esm/graph/engine/pinning/GraphPinningDependencyResolver.js.map +1 -0
  567. package/lib/esm/graph/engine/pinning/GraphPinningMetadata.js +15 -0
  568. package/lib/esm/graph/engine/pinning/GraphPinningMetadata.js.map +1 -0
  569. package/lib/esm/graph/engine/pinning/GraphPinningPolicy.js +29 -0
  570. package/lib/esm/graph/engine/pinning/GraphPinningPolicy.js.map +1 -0
  571. package/lib/esm/graph/engine/pinning/GraphPinningService.js +186 -0
  572. package/lib/esm/graph/engine/pinning/GraphPinningService.js.map +1 -0
  573. package/lib/esm/graph/engine/pinning/index.js +10 -0
  574. package/lib/esm/graph/engine/pinning/index.js.map +1 -0
  575. package/lib/esm/graph/engine/planning/GraphExecutionPlan.js +2 -0
  576. package/lib/esm/graph/engine/planning/GraphExecutionPlan.js.map +1 -0
  577. package/lib/esm/graph/engine/planning/GraphExecutionPlanEdge.js +7 -0
  578. package/lib/esm/graph/engine/planning/GraphExecutionPlanEdge.js.map +1 -0
  579. package/lib/esm/graph/engine/planning/GraphExecutionPlanLayer.js +2 -0
  580. package/lib/esm/graph/engine/planning/GraphExecutionPlanLayer.js.map +1 -0
  581. package/lib/esm/graph/engine/planning/GraphExecutionPlanNode.js +2 -0
  582. package/lib/esm/graph/engine/planning/GraphExecutionPlanNode.js.map +1 -0
  583. package/lib/esm/graph/engine/planning/GraphExecutionPlanner.js +192 -0
  584. package/lib/esm/graph/engine/planning/GraphExecutionPlanner.js.map +1 -0
  585. package/lib/esm/graph/engine/planning/GraphRelationResolver.js +167 -0
  586. package/lib/esm/graph/engine/planning/GraphRelationResolver.js.map +1 -0
  587. package/lib/esm/graph/engine/planning/GraphTopology.js +52 -0
  588. package/lib/esm/graph/engine/planning/GraphTopology.js.map +1 -0
  589. package/lib/esm/graph/engine/planning/index.js +13 -0
  590. package/lib/esm/graph/engine/planning/index.js.map +1 -0
  591. package/lib/esm/graph/engine/registry/GraphNodeExecutorRegistry.js +39 -0
  592. package/lib/esm/graph/engine/registry/GraphNodeExecutorRegistry.js.map +1 -0
  593. package/lib/esm/graph/engine/registry/GraphNodeExecutorResolver.js +22 -0
  594. package/lib/esm/graph/engine/registry/GraphNodeExecutorResolver.js.map +1 -0
  595. package/lib/esm/graph/engine/registry/index.js +8 -0
  596. package/lib/esm/graph/engine/registry/index.js.map +1 -0
  597. package/lib/esm/graph/engine/snapshots/GraphExecutionSnapshotMapper.js +48 -0
  598. package/lib/esm/graph/engine/snapshots/GraphExecutionSnapshotMapper.js.map +1 -0
  599. package/lib/esm/graph/engine/snapshots/index.js +7 -0
  600. package/lib/esm/graph/engine/snapshots/index.js.map +1 -0
  601. package/lib/esm/graph/engine/store/GraphCachedValue.js +2 -0
  602. package/lib/esm/graph/engine/store/GraphCachedValue.js.map +1 -0
  603. package/lib/esm/graph/engine/store/GraphValueKey.js +7 -0
  604. package/lib/esm/graph/engine/store/GraphValueKey.js.map +1 -0
  605. package/lib/esm/graph/engine/store/GraphValueStore.js +71 -0
  606. package/lib/esm/graph/engine/store/GraphValueStore.js.map +1 -0
  607. package/lib/esm/graph/engine/store/GraphValueStoreAdapter.js +2 -0
  608. package/lib/esm/graph/engine/store/GraphValueStoreAdapter.js.map +1 -0
  609. package/lib/esm/graph/engine/store/InMemoryGraphValueStoreAdapter.js +64 -0
  610. package/lib/esm/graph/engine/store/InMemoryGraphValueStoreAdapter.js.map +1 -0
  611. package/lib/esm/graph/engine/store/index.js +11 -0
  612. package/lib/esm/graph/engine/store/index.js.map +1 -0
  613. package/lib/esm/graph/engine/types.js +2 -0
  614. package/lib/esm/graph/engine/types.js.map +1 -0
  615. package/lib/esm/graph/engine/validation/GraphDefinitionValidator.js +28 -0
  616. package/lib/esm/graph/engine/validation/GraphDefinitionValidator.js.map +1 -0
  617. package/lib/esm/graph/engine/validation/GraphPortSchemaResolver.js +53 -0
  618. package/lib/esm/graph/engine/validation/GraphPortSchemaResolver.js.map +1 -0
  619. package/lib/esm/graph/engine/validation/GraphValueValidator.js +47 -0
  620. package/lib/esm/graph/engine/validation/GraphValueValidator.js.map +1 -0
  621. package/lib/esm/graph/engine/validation/index.js +9 -0
  622. package/lib/esm/graph/engine/validation/index.js.map +1 -0
  623. package/lib/esm/graph/index.js +9 -59
  624. package/lib/esm/graph/index.js.map +1 -0
  625. package/lib/esm/graph/shared/constants.js +56 -0
  626. package/lib/esm/graph/shared/constants.js.map +1 -0
  627. package/lib/esm/graph/shared/index.js +19 -0
  628. package/lib/esm/graph/shared/index.js.map +1 -0
  629. package/lib/esm/graph/shared/nodes/agent.js +101 -0
  630. package/lib/esm/graph/shared/nodes/agent.js.map +1 -0
  631. package/lib/esm/graph/shared/nodes/base.js +31 -0
  632. package/lib/esm/graph/shared/nodes/base.js.map +1 -0
  633. package/lib/esm/graph/shared/nodes/category-styles.js +34 -0
  634. package/lib/esm/graph/shared/nodes/category-styles.js.map +1 -0
  635. package/lib/esm/graph/shared/nodes/flow-control.js +455 -0
  636. package/lib/esm/graph/shared/nodes/flow-control.js.map +1 -0
  637. package/lib/esm/graph/shared/nodes/index.js +18 -0
  638. package/lib/esm/graph/shared/nodes/index.js.map +1 -0
  639. package/lib/esm/graph/shared/nodes/triggers.js +241 -0
  640. package/lib/esm/graph/shared/nodes/triggers.js.map +1 -0
  641. package/lib/esm/graph/shared/types.js +2 -0
  642. package/lib/esm/graph/shared/types.js.map +1 -0
  643. package/lib/esm/index.js +4 -4
  644. package/lib/esm/index.js.map +1 -0
  645. package/lib/esm/keycloak/index.js +1 -1
  646. package/lib/esm/keycloak/index.js.map +1 -0
  647. package/lib/esm/keycloak/services/KeycloakAuthService.js +1 -1
  648. package/lib/esm/keycloak/services/KeycloakAuthService.js.map +1 -0
  649. package/lib/esm/keycloak/services/KeycloakClientService.js +1 -1
  650. package/lib/esm/keycloak/services/KeycloakClientService.js.map +1 -0
  651. package/lib/esm/keycloak/services/KeycloakIdentityProviderService.js +1 -1
  652. package/lib/esm/keycloak/services/KeycloakIdentityProviderService.js.map +1 -0
  653. package/lib/esm/keycloak/services/KeycloakRealmService.js +1 -1
  654. package/lib/esm/keycloak/services/KeycloakRealmService.js.map +1 -0
  655. package/lib/esm/keycloak/services/KeycloakRoleService.js +1 -1
  656. package/lib/esm/keycloak/services/KeycloakRoleService.js.map +1 -0
  657. package/lib/esm/keycloak/services/KeycloakService.js +1 -1
  658. package/lib/esm/keycloak/services/KeycloakService.js.map +1 -0
  659. package/lib/esm/keycloak/services/KeycloakUserService.js +1 -1
  660. package/lib/esm/keycloak/services/KeycloakUserService.js.map +1 -0
  661. package/lib/esm/keycloak/services/index.js +1 -1
  662. package/lib/esm/keycloak/services/index.js.map +1 -0
  663. package/lib/esm/keycloak/services/runtime.js +1 -1
  664. package/lib/esm/keycloak/services/runtime.js.map +1 -0
  665. package/lib/esm/keycloak/types.js +1 -1
  666. package/lib/esm/keycloak/types.js.map +1 -0
  667. package/lib/esm/kibana/helpers.js +1 -1
  668. package/lib/esm/kibana/helpers.js.map +1 -0
  669. package/lib/esm/kibana/index.js +1 -1
  670. package/lib/esm/kibana/index.js.map +1 -0
  671. package/lib/esm/kibana/services/KibanaAuthService.js +1 -1
  672. package/lib/esm/kibana/services/KibanaAuthService.js.map +1 -0
  673. package/lib/esm/kibana/services/KibanaDashboardService.js +1 -1
  674. package/lib/esm/kibana/services/KibanaDashboardService.js.map +1 -0
  675. package/lib/esm/kibana/services/KibanaDataViewService.js +1 -1
  676. package/lib/esm/kibana/services/KibanaDataViewService.js.map +1 -0
  677. package/lib/esm/kibana/services/KibanaRoleService.js +1 -1
  678. package/lib/esm/kibana/services/KibanaRoleService.js.map +1 -0
  679. package/lib/esm/kibana/services/KibanaService.js +1 -1
  680. package/lib/esm/kibana/services/KibanaService.js.map +1 -0
  681. package/lib/esm/kibana/services/KibanaSpaceService.js +1 -1
  682. package/lib/esm/kibana/services/KibanaSpaceService.js.map +1 -0
  683. package/lib/esm/kibana/services/KibanaUserService.js +1 -1
  684. package/lib/esm/kibana/services/KibanaUserService.js.map +1 -0
  685. package/lib/esm/kibana/services/index.js +1 -1
  686. package/lib/esm/kibana/services/index.js.map +1 -0
  687. package/lib/esm/kibana/services/runtime.js +1 -1
  688. package/lib/esm/kibana/services/runtime.js.map +1 -0
  689. package/lib/esm/kibana/types.js +1 -1
  690. package/lib/esm/kibana/types.js.map +1 -0
  691. package/lib/esm/namespaces/index.js +1 -1
  692. package/lib/esm/namespaces/index.js.map +1 -0
  693. package/lib/esm/namespaces/models/authorization-model.js +1 -1
  694. package/lib/esm/namespaces/models/authorization-model.js.map +1 -0
  695. package/lib/esm/namespaces/models/effective-permission.model.js +1 -1
  696. package/lib/esm/namespaces/models/effective-permission.model.js.map +1 -0
  697. package/lib/esm/namespaces/models/group-membership.model.js +1 -1
  698. package/lib/esm/namespaces/models/group-membership.model.js.map +1 -0
  699. package/lib/esm/namespaces/models/group.model.js +1 -1
  700. package/lib/esm/namespaces/models/group.model.js.map +1 -0
  701. package/lib/esm/namespaces/models/index.js +1 -1
  702. package/lib/esm/namespaces/models/index.js.map +1 -0
  703. package/lib/esm/namespaces/models/inheritance-block.model.js +1 -1
  704. package/lib/esm/namespaces/models/inheritance-block.model.js.map +1 -0
  705. package/lib/esm/namespaces/models/org-unit-closure.model.js +1 -1
  706. package/lib/esm/namespaces/models/org-unit-closure.model.js.map +1 -0
  707. package/lib/esm/namespaces/models/org-unit-membership.model.js +1 -1
  708. package/lib/esm/namespaces/models/org-unit-membership.model.js.map +1 -0
  709. package/lib/esm/namespaces/models/org-unit-profile.model.js +1 -1
  710. package/lib/esm/namespaces/models/org-unit-profile.model.js.map +1 -0
  711. package/lib/esm/namespaces/models/org-unit.model.js +1 -1
  712. package/lib/esm/namespaces/models/org-unit.model.js.map +1 -0
  713. package/lib/esm/namespaces/models/permission.model.js +1 -1
  714. package/lib/esm/namespaces/models/permission.model.js.map +1 -0
  715. package/lib/esm/namespaces/models/principal.model.js +1 -1
  716. package/lib/esm/namespaces/models/principal.model.js.map +1 -0
  717. package/lib/esm/namespaces/models/protected-resource.model.js +1 -1
  718. package/lib/esm/namespaces/models/protected-resource.model.js.map +1 -0
  719. package/lib/esm/namespaces/models/resource-grant.model.js +1 -1
  720. package/lib/esm/namespaces/models/resource-grant.model.js.map +1 -0
  721. package/lib/esm/namespaces/models/role-assignment.model.js +1 -1
  722. package/lib/esm/namespaces/models/role-assignment.model.js.map +1 -0
  723. package/lib/esm/namespaces/models/role-permission.model.js +1 -1
  724. package/lib/esm/namespaces/models/role-permission.model.js.map +1 -0
  725. package/lib/esm/namespaces/models/role.model.js +1 -1
  726. package/lib/esm/namespaces/models/role.model.js.map +1 -0
  727. package/lib/esm/namespaces/models/storage-binding.model.js +1 -1
  728. package/lib/esm/namespaces/models/storage-binding.model.js.map +1 -0
  729. package/lib/esm/namespaces/models/tenant-membership.model.js +1 -1
  730. package/lib/esm/namespaces/models/tenant-membership.model.js.map +1 -0
  731. package/lib/esm/namespaces/models/tenant-profile.model.js +1 -1
  732. package/lib/esm/namespaces/models/tenant-profile.model.js.map +1 -0
  733. package/lib/esm/namespaces/models/tenant.model.js +3 -3
  734. package/lib/esm/namespaces/models/tenant.model.js.map +1 -0
  735. package/lib/esm/namespaces/models/user.model.js +1 -1
  736. package/lib/esm/namespaces/models/user.model.js.map +1 -0
  737. package/lib/esm/namespaces/org-based-authorization-system.js +10 -4
  738. package/lib/esm/namespaces/org-based-authorization-system.js.map +1 -0
  739. package/lib/esm/namespaces/org-based-authorization-system.models.js +1 -1
  740. package/lib/esm/namespaces/org-based-authorization-system.models.js.map +1 -0
  741. package/lib/esm/namespaces/org-based-authorization-system.services.js +18 -9
  742. package/lib/esm/namespaces/org-based-authorization-system.services.js.map +1 -0
  743. package/lib/esm/namespaces/services/authz.service.js +40 -14
  744. package/lib/esm/namespaces/services/authz.service.js.map +1 -0
  745. package/lib/esm/namespaces/services/bootstrap.service.js +1 -1
  746. package/lib/esm/namespaces/services/bootstrap.service.js.map +1 -0
  747. package/lib/esm/namespaces/services/effective-permission.service.js +1 -1
  748. package/lib/esm/namespaces/services/effective-permission.service.js.map +1 -0
  749. package/lib/esm/namespaces/services/group-membership.service.js +1 -1
  750. package/lib/esm/namespaces/services/group-membership.service.js.map +1 -0
  751. package/lib/esm/namespaces/services/group.service.js +1 -1
  752. package/lib/esm/namespaces/services/group.service.js.map +1 -0
  753. package/lib/esm/namespaces/services/index.js +1 -1
  754. package/lib/esm/namespaces/services/index.js.map +1 -0
  755. package/lib/esm/namespaces/services/inheritance-block.service.js +5 -3
  756. package/lib/esm/namespaces/services/inheritance-block.service.js.map +1 -0
  757. package/lib/esm/namespaces/services/org-unit-closure.service.js +16 -7
  758. package/lib/esm/namespaces/services/org-unit-closure.service.js.map +1 -0
  759. package/lib/esm/namespaces/services/org-unit-membership.service.js +1 -1
  760. package/lib/esm/namespaces/services/org-unit-membership.service.js.map +1 -0
  761. package/lib/esm/namespaces/services/org-unit-profile.service.js +1 -1
  762. package/lib/esm/namespaces/services/org-unit-profile.service.js.map +1 -0
  763. package/lib/esm/namespaces/services/org-unit.service.js +1 -1
  764. package/lib/esm/namespaces/services/org-unit.service.js.map +1 -0
  765. package/lib/esm/namespaces/services/permission.service.js +1 -1
  766. package/lib/esm/namespaces/services/permission.service.js.map +1 -0
  767. package/lib/esm/namespaces/services/principal.service.js +1 -1
  768. package/lib/esm/namespaces/services/principal.service.js.map +1 -0
  769. package/lib/esm/namespaces/services/protected-resource.service.js +1 -1
  770. package/lib/esm/namespaces/services/protected-resource.service.js.map +1 -0
  771. package/lib/esm/namespaces/services/resource-grant.service.js +1 -1
  772. package/lib/esm/namespaces/services/resource-grant.service.js.map +1 -0
  773. package/lib/esm/namespaces/services/resource-lifecycle.service.js +1 -1
  774. package/lib/esm/namespaces/services/resource-lifecycle.service.js.map +1 -0
  775. package/lib/esm/namespaces/services/role-assignment.service.js +3 -2
  776. package/lib/esm/namespaces/services/role-assignment.service.js.map +1 -0
  777. package/lib/esm/namespaces/services/role-permission.service.js +1 -1
  778. package/lib/esm/namespaces/services/role-permission.service.js.map +1 -0
  779. package/lib/esm/namespaces/services/role.service.js +1 -1
  780. package/lib/esm/namespaces/services/role.service.js.map +1 -0
  781. package/lib/esm/namespaces/services/storage-binding.service.js +1 -1
  782. package/lib/esm/namespaces/services/storage-binding.service.js.map +1 -0
  783. package/lib/esm/namespaces/services/system-management.service.js +1 -1
  784. package/lib/esm/namespaces/services/system-management.service.js.map +1 -0
  785. package/lib/esm/namespaces/services/tenant-membership.service.js +1 -1
  786. package/lib/esm/namespaces/services/tenant-membership.service.js.map +1 -0
  787. package/lib/esm/namespaces/services/tenant-profile.service.js +1 -1
  788. package/lib/esm/namespaces/services/tenant-profile.service.js.map +1 -0
  789. package/lib/esm/namespaces/services/tenant.service.js +1 -1
  790. package/lib/esm/namespaces/services/tenant.service.js.map +1 -0
  791. package/lib/esm/namespaces/services/user.service.js +1 -1
  792. package/lib/esm/namespaces/services/user.service.js.map +1 -0
  793. package/lib/esm/namespaces/types.js +1 -1
  794. package/lib/esm/namespaces/types.js.map +1 -0
  795. package/lib/esm/namespaces/utils.js +12 -4
  796. package/lib/esm/namespaces/utils.js.map +1 -0
  797. package/lib/esm/nest/authService.js +1 -1
  798. package/lib/esm/nest/authService.js.map +1 -0
  799. package/lib/esm/nest/graph/GraphExecutionController.js +1 -1
  800. package/lib/esm/nest/graph/GraphExecutionController.js.map +1 -0
  801. package/lib/esm/nest/graph/GraphExecutionModule.js +6 -4
  802. package/lib/esm/nest/graph/GraphExecutionModule.js.map +1 -0
  803. package/lib/esm/nest/graph/GraphExecutionResultModel.js +1 -1
  804. package/lib/esm/nest/graph/GraphExecutionResultModel.js.map +1 -0
  805. package/lib/esm/nest/graph/GraphExecutionResultRepository.js +1 -1
  806. package/lib/esm/nest/graph/GraphExecutionResultRepository.js.map +1 -0
  807. package/lib/esm/nest/graph/GraphExecutorRegistryFactory.js +96 -11
  808. package/lib/esm/nest/graph/GraphExecutorRegistryFactory.js.map +1 -0
  809. package/lib/esm/nest/graph/index.js +1 -1
  810. package/lib/esm/nest/graph/index.js.map +1 -0
  811. package/lib/esm/nest/graph/main.js +27 -0
  812. package/lib/esm/nest/graph/main.js.map +1 -0
  813. package/lib/esm/nest/index.js +1 -1
  814. package/lib/esm/nest/index.js.map +1 -0
  815. package/lib/esm/nest/keycloakAuthHandler.js +1 -1
  816. package/lib/esm/nest/keycloakAuthHandler.js.map +1 -0
  817. package/lib/esm/nest/keycloakModule.js +1 -1
  818. package/lib/esm/nest/keycloakModule.js.map +1 -0
  819. package/lib/esm/nest/logging.js +1 -1
  820. package/lib/esm/nest/logging.js.map +1 -0
  821. package/lib/esm/nest/types.js +1 -1
  822. package/lib/esm/nest/types.js.map +1 -0
  823. package/lib/esm/nest/utils.js +1 -1
  824. package/lib/esm/nest/utils.js.map +1 -0
  825. package/lib/esm/secrets/aws/AwsSecretService.js +1 -1
  826. package/lib/esm/secrets/aws/AwsSecretService.js.map +1 -0
  827. package/lib/esm/secrets/aws/AwsSecretServiceConfig.js +1 -1
  828. package/lib/esm/secrets/aws/AwsSecretServiceConfig.js.map +1 -0
  829. package/lib/esm/secrets/aws/index.js +1 -1
  830. package/lib/esm/secrets/aws/index.js.map +1 -0
  831. package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js +1 -1
  832. package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js.map +1 -0
  833. package/lib/esm/secrets/azure/AzureKeyVaultSecretServiceConfig.js +1 -1
  834. package/lib/esm/secrets/azure/AzureKeyVaultSecretServiceConfig.js.map +1 -0
  835. package/lib/esm/secrets/azure/index.js +1 -1
  836. package/lib/esm/secrets/azure/index.js.map +1 -0
  837. package/lib/esm/secrets/core/SecretErrors.js +1 -1
  838. package/lib/esm/secrets/core/SecretErrors.js.map +1 -0
  839. package/lib/esm/secrets/core/SecretName.js +1 -1
  840. package/lib/esm/secrets/core/SecretName.js.map +1 -0
  841. package/lib/esm/secrets/core/SecretReference.js +1 -1
  842. package/lib/esm/secrets/core/SecretReference.js.map +1 -0
  843. package/lib/esm/secrets/core/SecretSerialization.js +1 -1
  844. package/lib/esm/secrets/core/SecretSerialization.js.map +1 -0
  845. package/lib/esm/secrets/core/SecretService.js +1 -1
  846. package/lib/esm/secrets/core/SecretService.js.map +1 -0
  847. package/lib/esm/secrets/core/SecretTypes.js +1 -1
  848. package/lib/esm/secrets/core/SecretTypes.js.map +1 -0
  849. package/lib/esm/secrets/core/index.js +1 -1
  850. package/lib/esm/secrets/core/index.js.map +1 -0
  851. package/lib/esm/secrets/gcp/GcpSecretManagerService.js +1 -1
  852. package/lib/esm/secrets/gcp/GcpSecretManagerService.js.map +1 -0
  853. package/lib/esm/secrets/gcp/GcpSecretManagerServiceConfig.js +1 -1
  854. package/lib/esm/secrets/gcp/GcpSecretManagerServiceConfig.js.map +1 -0
  855. package/lib/esm/secrets/gcp/index.js +1 -1
  856. package/lib/esm/secrets/gcp/index.js.map +1 -0
  857. package/lib/esm/secrets/index.js +1 -1
  858. package/lib/esm/secrets/index.js.map +1 -0
  859. package/lib/esm/secrets/model/ModelSecretCrypto.js +1 -1
  860. package/lib/esm/secrets/model/ModelSecretCrypto.js.map +1 -0
  861. package/lib/esm/secrets/model/ModelSecretService.js +1 -1
  862. package/lib/esm/secrets/model/ModelSecretService.js.map +1 -0
  863. package/lib/esm/secrets/model/ModelSecretServiceConfig.js +1 -1
  864. package/lib/esm/secrets/model/ModelSecretServiceConfig.js.map +1 -0
  865. package/lib/esm/secrets/model/Secret.js +1 -1
  866. package/lib/esm/secrets/model/Secret.js.map +1 -0
  867. package/lib/esm/secrets/model/index.js +1 -1
  868. package/lib/esm/secrets/model/index.js.map +1 -0
  869. package/lib/esm/secrets/onepassword/OnePasswordSecretService.js +1 -1
  870. package/lib/esm/secrets/onepassword/OnePasswordSecretService.js.map +1 -0
  871. package/lib/esm/secrets/onepassword/OnePasswordSecretServiceConfig.js +1 -1
  872. package/lib/esm/secrets/onepassword/OnePasswordSecretServiceConfig.js.map +1 -0
  873. package/lib/esm/secrets/onepassword/index.js +1 -1
  874. package/lib/esm/secrets/onepassword/index.js.map +1 -0
  875. package/lib/esm/secrets/vault/VaultSecretService.js +1 -1
  876. package/lib/esm/secrets/vault/VaultSecretService.js.map +1 -0
  877. package/lib/esm/secrets/vault/VaultSecretServiceConfig.js +1 -1
  878. package/lib/esm/secrets/vault/VaultSecretServiceConfig.js.map +1 -0
  879. package/lib/esm/secrets/vault/index.js +1 -1
  880. package/lib/esm/secrets/vault/index.js.map +1 -0
  881. package/lib/esm/shared/runtime.js +1 -1
  882. package/lib/esm/shared/runtime.js.map +1 -0
  883. package/lib/esm/utils.js +1 -1
  884. package/lib/esm/utils.js.map +1 -0
  885. package/lib/types/graph/engine/constants.d.cts +59 -0
  886. package/lib/types/graph/engine/constants.d.mts +59 -0
  887. package/lib/types/graph/{execution → engine/execution}/GraphExecutionResult.d.cts +1 -1
  888. package/lib/types/graph/{execution → engine/execution}/GraphExecutionResult.d.mts +1 -1
  889. package/lib/types/graph/engine/index.d.cts +61 -0
  890. package/lib/types/graph/engine/index.d.mts +61 -0
  891. package/lib/types/graph/{loops → engine/loops}/ConditionExpressionEvaluator.d.cts +1 -1
  892. package/lib/types/graph/{loops → engine/loops}/ConditionExpressionEvaluator.d.mts +1 -1
  893. package/lib/types/graph/{loops → engine/loops}/GraphConditionEvaluator.d.cts +2 -1
  894. package/lib/types/graph/{loops → engine/loops}/GraphConditionEvaluator.d.mts +2 -1
  895. package/lib/types/graph/{types.d.cts → engine/types.d.cts} +12 -148
  896. package/lib/types/graph/{types.d.mts → engine/types.d.mts} +12 -148
  897. package/lib/types/graph/index.d.cts +8 -53
  898. package/lib/types/graph/index.d.mts +8 -53
  899. package/lib/types/graph/shared/constants.d.cts +53 -0
  900. package/lib/types/graph/shared/constants.d.mts +53 -0
  901. package/lib/types/graph/shared/index.d.cts +18 -0
  902. package/lib/types/graph/shared/index.d.mts +18 -0
  903. package/lib/types/graph/shared/types.d.cts +162 -0
  904. package/lib/types/graph/shared/types.d.mts +162 -0
  905. package/lib/types/index.d.cts +2 -2
  906. package/lib/types/index.d.mts +2 -2
  907. package/lib/types/nest/graph/GraphExecutorRegistryFactory.d.cts +33 -5
  908. package/lib/types/nest/graph/GraphExecutorRegistryFactory.d.mts +33 -5
  909. package/lib/types/nest/graph/main.d.cts +1 -0
  910. package/lib/types/nest/graph/main.d.mts +1 -0
  911. package/package.json +19 -8
  912. package/lib/cjs/graph/constants.cjs +0 -94
  913. package/lib/cjs/graph/decorators.cjs +0 -4
  914. package/lib/cjs/graph/errors/GraphCycleError.cjs +0 -20
  915. package/lib/cjs/graph/errors/GraphExecutionError.cjs +0 -27
  916. package/lib/cjs/graph/errors/GraphInputError.cjs +0 -20
  917. package/lib/cjs/graph/errors/GraphLoopLimitError.cjs +0 -20
  918. package/lib/cjs/graph/errors/GraphPinningError.cjs +0 -20
  919. package/lib/cjs/graph/errors/GraphPortError.cjs +0 -20
  920. package/lib/cjs/graph/errors/GraphStoreError.cjs +0 -20
  921. package/lib/cjs/graph/errors/GraphTopologyError.cjs +0 -20
  922. package/lib/cjs/graph/errors/index.cjs +0 -31
  923. package/lib/cjs/graph/events/GraphExecutionEvent.cjs +0 -4
  924. package/lib/cjs/graph/events/GraphExecutionEventEmitter.cjs +0 -40
  925. package/lib/cjs/graph/events/GraphExecutionEventFactory.cjs +0 -37
  926. package/lib/cjs/graph/events/GraphExecutionObserver.cjs +0 -4
  927. package/lib/cjs/graph/events/index.cjs +0 -27
  928. package/lib/cjs/graph/execution/CodeSandboxEvaluator.cjs +0 -4
  929. package/lib/cjs/graph/execution/GraphExecutionContext.cjs +0 -79
  930. package/lib/cjs/graph/execution/GraphExecutionEngine.cjs +0 -407
  931. package/lib/cjs/graph/execution/GraphExecutionFrame.cjs +0 -32
  932. package/lib/cjs/graph/execution/GraphExecutionResult.cjs +0 -30
  933. package/lib/cjs/graph/execution/GraphNodeExecutor.cjs +0 -4
  934. package/lib/cjs/graph/execution/SwitchGraphNodeExecutor.cjs +0 -103
  935. package/lib/cjs/graph/execution/index.cjs +0 -30
  936. package/lib/cjs/graph/loops/ConditionExpressionEvaluator.cjs +0 -87
  937. package/lib/cjs/graph/loops/ForeachGraphNodeExecutor.cjs +0 -84
  938. package/lib/cjs/graph/loops/GraphConditionEvaluator.cjs +0 -85
  939. package/lib/cjs/graph/loops/GraphLoopExecutionContext.cjs +0 -16
  940. package/lib/cjs/graph/loops/UntilGraphNodeExecutor.cjs +0 -76
  941. package/lib/cjs/graph/loops/WhileGraphNodeExecutor.cjs +0 -77
  942. package/lib/cjs/graph/loops/index.cjs +0 -29
  943. package/lib/cjs/graph/nodes/agent.cjs +0 -110
  944. package/lib/cjs/graph/nodes/base.cjs +0 -35
  945. package/lib/cjs/graph/nodes/category-styles.cjs +0 -38
  946. package/lib/cjs/graph/nodes/flow-control.cjs +0 -464
  947. package/lib/cjs/graph/nodes/index.cjs +0 -35
  948. package/lib/cjs/graph/nodes/triggers.cjs +0 -250
  949. package/lib/cjs/graph/pinning/GraphPinningDependencyResolver.cjs +0 -28
  950. package/lib/cjs/graph/pinning/GraphPinningMetadata.cjs +0 -20
  951. package/lib/cjs/graph/pinning/GraphPinningPolicy.cjs +0 -34
  952. package/lib/cjs/graph/pinning/GraphPinningService.cjs +0 -191
  953. package/lib/cjs/graph/pinning/index.cjs +0 -27
  954. package/lib/cjs/graph/planning/GraphExecutionPlan.cjs +0 -4
  955. package/lib/cjs/graph/planning/GraphExecutionPlanEdge.cjs +0 -4
  956. package/lib/cjs/graph/planning/GraphExecutionPlanLayer.cjs +0 -4
  957. package/lib/cjs/graph/planning/GraphExecutionPlanNode.cjs +0 -4
  958. package/lib/cjs/graph/planning/GraphExecutionPlanner.cjs +0 -197
  959. package/lib/cjs/graph/planning/GraphRelationResolver.cjs +0 -172
  960. package/lib/cjs/graph/planning/GraphTopology.cjs +0 -57
  961. package/lib/cjs/graph/planning/index.cjs +0 -30
  962. package/lib/cjs/graph/registry/GraphNodeExecutorRegistry.cjs +0 -44
  963. package/lib/cjs/graph/registry/GraphNodeExecutorResolver.cjs +0 -27
  964. package/lib/cjs/graph/registry/index.cjs +0 -25
  965. package/lib/cjs/graph/snapshots/GraphExecutionSnapshotMapper.cjs +0 -53
  966. package/lib/cjs/graph/snapshots/index.cjs +0 -24
  967. package/lib/cjs/graph/store/GraphCachedValue.cjs +0 -4
  968. package/lib/cjs/graph/store/GraphValueKey.cjs +0 -4
  969. package/lib/cjs/graph/store/GraphValueStore.cjs +0 -76
  970. package/lib/cjs/graph/store/GraphValueStoreAdapter.cjs +0 -4
  971. package/lib/cjs/graph/store/InMemoryGraphValueStoreAdapter.cjs +0 -69
  972. package/lib/cjs/graph/store/index.cjs +0 -28
  973. package/lib/cjs/graph/types.cjs +0 -4
  974. package/lib/cjs/graph/validation/GraphDefinitionValidator.cjs +0 -33
  975. package/lib/cjs/graph/validation/GraphPortSchemaResolver.cjs +0 -58
  976. package/lib/cjs/graph/validation/GraphValueValidator.cjs +0 -52
  977. package/lib/cjs/graph/validation/index.cjs +0 -26
  978. package/lib/esm/graph/constants.js +0 -106
  979. package/lib/esm/graph/decorators.js +0 -2
  980. package/lib/esm/graph/errors/GraphCycleError.js +0 -15
  981. package/lib/esm/graph/errors/GraphExecutionError.js +0 -22
  982. package/lib/esm/graph/errors/GraphInputError.js +0 -15
  983. package/lib/esm/graph/errors/GraphLoopLimitError.js +0 -15
  984. package/lib/esm/graph/errors/GraphPinningError.js +0 -15
  985. package/lib/esm/graph/errors/GraphPortError.js +0 -15
  986. package/lib/esm/graph/errors/GraphStoreError.js +0 -15
  987. package/lib/esm/graph/errors/GraphTopologyError.js +0 -15
  988. package/lib/esm/graph/errors/index.js +0 -14
  989. package/lib/esm/graph/events/GraphExecutionEvent.js +0 -2
  990. package/lib/esm/graph/events/GraphExecutionEventEmitter.js +0 -35
  991. package/lib/esm/graph/events/GraphExecutionEventFactory.js +0 -32
  992. package/lib/esm/graph/events/GraphExecutionObserver.js +0 -2
  993. package/lib/esm/graph/events/index.js +0 -10
  994. package/lib/esm/graph/execution/CodeSandboxEvaluator.js +0 -18
  995. package/lib/esm/graph/execution/GraphExecutionContext.js +0 -74
  996. package/lib/esm/graph/execution/GraphExecutionEngine.js +0 -402
  997. package/lib/esm/graph/execution/GraphExecutionFrame.js +0 -27
  998. package/lib/esm/graph/execution/GraphExecutionResult.js +0 -26
  999. package/lib/esm/graph/execution/GraphNodeExecutor.js +0 -2
  1000. package/lib/esm/graph/execution/SwitchGraphNodeExecutor.js +0 -98
  1001. package/lib/esm/graph/execution/index.js +0 -13
  1002. package/lib/esm/graph/loops/ConditionExpressionEvaluator.js +0 -82
  1003. package/lib/esm/graph/loops/ForeachGraphNodeExecutor.js +0 -79
  1004. package/lib/esm/graph/loops/GraphConditionEvaluator.js +0 -80
  1005. package/lib/esm/graph/loops/GraphLoopExecutionContext.js +0 -11
  1006. package/lib/esm/graph/loops/UntilGraphNodeExecutor.js +0 -71
  1007. package/lib/esm/graph/loops/WhileGraphNodeExecutor.js +0 -72
  1008. package/lib/esm/graph/loops/index.js +0 -12
  1009. package/lib/esm/graph/nodes/agent.js +0 -101
  1010. package/lib/esm/graph/nodes/base.js +0 -30
  1011. package/lib/esm/graph/nodes/category-styles.js +0 -34
  1012. package/lib/esm/graph/nodes/flow-control.js +0 -455
  1013. package/lib/esm/graph/nodes/index.js +0 -18
  1014. package/lib/esm/graph/nodes/triggers.js +0 -241
  1015. package/lib/esm/graph/pinning/GraphPinningDependencyResolver.js +0 -23
  1016. package/lib/esm/graph/pinning/GraphPinningMetadata.js +0 -15
  1017. package/lib/esm/graph/pinning/GraphPinningPolicy.js +0 -29
  1018. package/lib/esm/graph/pinning/GraphPinningService.js +0 -186
  1019. package/lib/esm/graph/pinning/index.js +0 -10
  1020. package/lib/esm/graph/planning/GraphExecutionPlan.js +0 -2
  1021. package/lib/esm/graph/planning/GraphExecutionPlanEdge.js +0 -7
  1022. package/lib/esm/graph/planning/GraphExecutionPlanLayer.js +0 -2
  1023. package/lib/esm/graph/planning/GraphExecutionPlanNode.js +0 -2
  1024. package/lib/esm/graph/planning/GraphExecutionPlanner.js +0 -192
  1025. package/lib/esm/graph/planning/GraphRelationResolver.js +0 -167
  1026. package/lib/esm/graph/planning/GraphTopology.js +0 -52
  1027. package/lib/esm/graph/planning/index.js +0 -13
  1028. package/lib/esm/graph/registry/GraphNodeExecutorRegistry.js +0 -39
  1029. package/lib/esm/graph/registry/GraphNodeExecutorResolver.js +0 -22
  1030. package/lib/esm/graph/registry/index.js +0 -8
  1031. package/lib/esm/graph/snapshots/GraphExecutionSnapshotMapper.js +0 -48
  1032. package/lib/esm/graph/snapshots/index.js +0 -7
  1033. package/lib/esm/graph/store/GraphCachedValue.js +0 -2
  1034. package/lib/esm/graph/store/GraphValueKey.js +0 -7
  1035. package/lib/esm/graph/store/GraphValueStore.js +0 -71
  1036. package/lib/esm/graph/store/GraphValueStoreAdapter.js +0 -2
  1037. package/lib/esm/graph/store/InMemoryGraphValueStoreAdapter.js +0 -64
  1038. package/lib/esm/graph/store/index.js +0 -11
  1039. package/lib/esm/graph/types.js +0 -2
  1040. package/lib/esm/graph/validation/GraphDefinitionValidator.js +0 -28
  1041. package/lib/esm/graph/validation/GraphPortSchemaResolver.js +0 -53
  1042. package/lib/esm/graph/validation/GraphValueValidator.js +0 -47
  1043. package/lib/esm/graph/validation/index.js +0 -9
  1044. package/lib/types/graph/constants.d.cts +0 -101
  1045. package/lib/types/graph/constants.d.mts +0 -101
  1046. /package/lib/types/graph/{decorators.d.cts → engine/decorators.d.cts} +0 -0
  1047. /package/lib/types/graph/{decorators.d.mts → engine/decorators.d.mts} +0 -0
  1048. /package/lib/types/graph/{errors → engine/errors}/GraphCycleError.d.cts +0 -0
  1049. /package/lib/types/graph/{errors → engine/errors}/GraphCycleError.d.mts +0 -0
  1050. /package/lib/types/graph/{errors → engine/errors}/GraphExecutionError.d.cts +0 -0
  1051. /package/lib/types/graph/{errors → engine/errors}/GraphExecutionError.d.mts +0 -0
  1052. /package/lib/types/graph/{errors → engine/errors}/GraphInputError.d.cts +0 -0
  1053. /package/lib/types/graph/{errors → engine/errors}/GraphInputError.d.mts +0 -0
  1054. /package/lib/types/graph/{errors → engine/errors}/GraphLoopLimitError.d.cts +0 -0
  1055. /package/lib/types/graph/{errors → engine/errors}/GraphLoopLimitError.d.mts +0 -0
  1056. /package/lib/types/graph/{errors → engine/errors}/GraphPinningError.d.cts +0 -0
  1057. /package/lib/types/graph/{errors → engine/errors}/GraphPinningError.d.mts +0 -0
  1058. /package/lib/types/graph/{errors → engine/errors}/GraphPortError.d.cts +0 -0
  1059. /package/lib/types/graph/{errors → engine/errors}/GraphPortError.d.mts +0 -0
  1060. /package/lib/types/graph/{errors → engine/errors}/GraphStoreError.d.cts +0 -0
  1061. /package/lib/types/graph/{errors → engine/errors}/GraphStoreError.d.mts +0 -0
  1062. /package/lib/types/graph/{errors → engine/errors}/GraphTopologyError.d.cts +0 -0
  1063. /package/lib/types/graph/{errors → engine/errors}/GraphTopologyError.d.mts +0 -0
  1064. /package/lib/types/graph/{errors → engine/errors}/index.d.cts +0 -0
  1065. /package/lib/types/graph/{errors → engine/errors}/index.d.mts +0 -0
  1066. /package/lib/types/graph/{events → engine/events}/GraphExecutionEvent.d.cts +0 -0
  1067. /package/lib/types/graph/{events → engine/events}/GraphExecutionEvent.d.mts +0 -0
  1068. /package/lib/types/graph/{events → engine/events}/GraphExecutionEventEmitter.d.cts +0 -0
  1069. /package/lib/types/graph/{events → engine/events}/GraphExecutionEventEmitter.d.mts +0 -0
  1070. /package/lib/types/graph/{events → engine/events}/GraphExecutionEventFactory.d.cts +0 -0
  1071. /package/lib/types/graph/{events → engine/events}/GraphExecutionEventFactory.d.mts +0 -0
  1072. /package/lib/types/graph/{events → engine/events}/GraphExecutionObserver.d.cts +0 -0
  1073. /package/lib/types/graph/{events → engine/events}/GraphExecutionObserver.d.mts +0 -0
  1074. /package/lib/types/graph/{events → engine/events}/index.d.cts +0 -0
  1075. /package/lib/types/graph/{events → engine/events}/index.d.mts +0 -0
  1076. /package/lib/types/graph/{execution → engine/execution}/CodeSandboxEvaluator.d.cts +0 -0
  1077. /package/lib/types/graph/{execution → engine/execution}/CodeSandboxEvaluator.d.mts +0 -0
  1078. /package/lib/types/graph/{execution → engine/execution}/GraphExecutionContext.d.cts +0 -0
  1079. /package/lib/types/graph/{execution → engine/execution}/GraphExecutionContext.d.mts +0 -0
  1080. /package/lib/types/graph/{execution → engine/execution}/GraphExecutionEngine.d.cts +0 -0
  1081. /package/lib/types/graph/{execution → engine/execution}/GraphExecutionEngine.d.mts +0 -0
  1082. /package/lib/types/graph/{execution → engine/execution}/GraphExecutionFrame.d.cts +0 -0
  1083. /package/lib/types/graph/{execution → engine/execution}/GraphExecutionFrame.d.mts +0 -0
  1084. /package/lib/types/graph/{execution → engine/execution}/GraphNodeExecutor.d.cts +0 -0
  1085. /package/lib/types/graph/{execution → engine/execution}/GraphNodeExecutor.d.mts +0 -0
  1086. /package/lib/types/graph/{execution → engine/execution}/SwitchGraphNodeExecutor.d.cts +0 -0
  1087. /package/lib/types/graph/{execution → engine/execution}/SwitchGraphNodeExecutor.d.mts +0 -0
  1088. /package/lib/types/graph/{execution → engine/execution}/index.d.cts +0 -0
  1089. /package/lib/types/graph/{execution → engine/execution}/index.d.mts +0 -0
  1090. /package/lib/types/graph/{loops → engine/loops}/ForeachGraphNodeExecutor.d.cts +0 -0
  1091. /package/lib/types/graph/{loops → engine/loops}/ForeachGraphNodeExecutor.d.mts +0 -0
  1092. /package/lib/types/graph/{loops → engine/loops}/GraphLoopExecutionContext.d.cts +0 -0
  1093. /package/lib/types/graph/{loops → engine/loops}/GraphLoopExecutionContext.d.mts +0 -0
  1094. /package/lib/types/graph/{loops → engine/loops}/UntilGraphNodeExecutor.d.cts +0 -0
  1095. /package/lib/types/graph/{loops → engine/loops}/UntilGraphNodeExecutor.d.mts +0 -0
  1096. /package/lib/types/graph/{loops → engine/loops}/WhileGraphNodeExecutor.d.cts +0 -0
  1097. /package/lib/types/graph/{loops → engine/loops}/WhileGraphNodeExecutor.d.mts +0 -0
  1098. /package/lib/types/graph/{loops → engine/loops}/index.d.cts +0 -0
  1099. /package/lib/types/graph/{loops → engine/loops}/index.d.mts +0 -0
  1100. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningDependencyResolver.d.cts +0 -0
  1101. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningDependencyResolver.d.mts +0 -0
  1102. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningMetadata.d.cts +0 -0
  1103. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningMetadata.d.mts +0 -0
  1104. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningPolicy.d.cts +0 -0
  1105. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningPolicy.d.mts +0 -0
  1106. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningService.d.cts +0 -0
  1107. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningService.d.mts +0 -0
  1108. /package/lib/types/graph/{pinning → engine/pinning}/index.d.cts +0 -0
  1109. /package/lib/types/graph/{pinning → engine/pinning}/index.d.mts +0 -0
  1110. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlan.d.cts +0 -0
  1111. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlan.d.mts +0 -0
  1112. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanEdge.d.cts +0 -0
  1113. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanEdge.d.mts +0 -0
  1114. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanLayer.d.cts +0 -0
  1115. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanLayer.d.mts +0 -0
  1116. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanNode.d.cts +0 -0
  1117. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanNode.d.mts +0 -0
  1118. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanner.d.cts +0 -0
  1119. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanner.d.mts +0 -0
  1120. /package/lib/types/graph/{planning → engine/planning}/GraphRelationResolver.d.cts +0 -0
  1121. /package/lib/types/graph/{planning → engine/planning}/GraphRelationResolver.d.mts +0 -0
  1122. /package/lib/types/graph/{planning → engine/planning}/GraphTopology.d.cts +0 -0
  1123. /package/lib/types/graph/{planning → engine/planning}/GraphTopology.d.mts +0 -0
  1124. /package/lib/types/graph/{planning → engine/planning}/index.d.cts +0 -0
  1125. /package/lib/types/graph/{planning → engine/planning}/index.d.mts +0 -0
  1126. /package/lib/types/graph/{registry → engine/registry}/GraphNodeExecutorRegistry.d.cts +0 -0
  1127. /package/lib/types/graph/{registry → engine/registry}/GraphNodeExecutorRegistry.d.mts +0 -0
  1128. /package/lib/types/graph/{registry → engine/registry}/GraphNodeExecutorResolver.d.cts +0 -0
  1129. /package/lib/types/graph/{registry → engine/registry}/GraphNodeExecutorResolver.d.mts +0 -0
  1130. /package/lib/types/graph/{registry → engine/registry}/index.d.cts +0 -0
  1131. /package/lib/types/graph/{registry → engine/registry}/index.d.mts +0 -0
  1132. /package/lib/types/graph/{snapshots → engine/snapshots}/GraphExecutionSnapshotMapper.d.cts +0 -0
  1133. /package/lib/types/graph/{snapshots → engine/snapshots}/GraphExecutionSnapshotMapper.d.mts +0 -0
  1134. /package/lib/types/graph/{snapshots → engine/snapshots}/index.d.cts +0 -0
  1135. /package/lib/types/graph/{snapshots → engine/snapshots}/index.d.mts +0 -0
  1136. /package/lib/types/graph/{store → engine/store}/GraphCachedValue.d.cts +0 -0
  1137. /package/lib/types/graph/{store → engine/store}/GraphCachedValue.d.mts +0 -0
  1138. /package/lib/types/graph/{store → engine/store}/GraphValueKey.d.cts +0 -0
  1139. /package/lib/types/graph/{store → engine/store}/GraphValueKey.d.mts +0 -0
  1140. /package/lib/types/graph/{store → engine/store}/GraphValueStore.d.cts +0 -0
  1141. /package/lib/types/graph/{store → engine/store}/GraphValueStore.d.mts +0 -0
  1142. /package/lib/types/graph/{store → engine/store}/GraphValueStoreAdapter.d.cts +0 -0
  1143. /package/lib/types/graph/{store → engine/store}/GraphValueStoreAdapter.d.mts +0 -0
  1144. /package/lib/types/graph/{store → engine/store}/InMemoryGraphValueStoreAdapter.d.cts +0 -0
  1145. /package/lib/types/graph/{store → engine/store}/InMemoryGraphValueStoreAdapter.d.mts +0 -0
  1146. /package/lib/types/graph/{store → engine/store}/index.d.cts +0 -0
  1147. /package/lib/types/graph/{store → engine/store}/index.d.mts +0 -0
  1148. /package/lib/types/graph/{validation → engine/validation}/GraphDefinitionValidator.d.cts +0 -0
  1149. /package/lib/types/graph/{validation → engine/validation}/GraphDefinitionValidator.d.mts +0 -0
  1150. /package/lib/types/graph/{validation → engine/validation}/GraphPortSchemaResolver.d.cts +0 -0
  1151. /package/lib/types/graph/{validation → engine/validation}/GraphPortSchemaResolver.d.mts +0 -0
  1152. /package/lib/types/graph/{validation → engine/validation}/GraphValueValidator.d.cts +0 -0
  1153. /package/lib/types/graph/{validation → engine/validation}/GraphValueValidator.d.mts +0 -0
  1154. /package/lib/types/graph/{validation → engine/validation}/index.d.cts +0 -0
  1155. /package/lib/types/graph/{validation → engine/validation}/index.d.mts +0 -0
  1156. /package/lib/types/graph/{nodes → shared/nodes}/agent.d.cts +0 -0
  1157. /package/lib/types/graph/{nodes → shared/nodes}/agent.d.mts +0 -0
  1158. /package/lib/types/graph/{nodes → shared/nodes}/base.d.cts +0 -0
  1159. /package/lib/types/graph/{nodes → shared/nodes}/base.d.mts +0 -0
  1160. /package/lib/types/graph/{nodes → shared/nodes}/category-styles.d.cts +0 -0
  1161. /package/lib/types/graph/{nodes → shared/nodes}/category-styles.d.mts +0 -0
  1162. /package/lib/types/graph/{nodes → shared/nodes}/flow-control.d.cts +0 -0
  1163. /package/lib/types/graph/{nodes → shared/nodes}/flow-control.d.mts +0 -0
  1164. /package/lib/types/graph/{nodes → shared/nodes}/index.d.cts +0 -0
  1165. /package/lib/types/graph/{nodes → shared/nodes}/index.d.mts +0 -0
  1166. /package/lib/types/graph/{nodes → shared/nodes}/triggers.d.cts +0 -0
  1167. /package/lib/types/graph/{nodes → shared/nodes}/triggers.d.mts +0 -0
@@ -1,35 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- /**
18
- * @module integrations/graph/nodes
19
- * @summary Production node kind declarations (DECAF-32 §22.2).
20
- * @description Canonical `@node`-decorated classes for the ALFRED-5 node kind
21
- * taxonomy. These are the framework's built-in node definitions — triggers
22
- * (§22.2.1), flow-control/utility nodes (§22.2.2–22.2.3), and the Agent node
23
- * (§21.3). The three loop kinds (`core.loop.foreach/while/until`) already have
24
- * built-in executors (§5.9) and are not redeclared here.
25
- *
26
- * Consumers (for-angular, ALFRED, etc.) import these declarations to populate
27
- * node palettes, registries, and reference snapshots.
28
- */
29
- __exportStar(require("./base.cjs"), exports);
30
- __exportStar(require("./category-styles.cjs"), exports);
31
- __exportStar(require("./triggers.cjs"), exports);
32
- __exportStar(require("./flow-control.cjs"), exports);
33
- __exportStar(require("./agent.cjs"), exports);
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZ3JhcGgvbm9kZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0dBV0c7QUFDSCwwQkFBdUI7QUFDdkIscUNBQWtDO0FBQ2xDLDhCQUEyQjtBQUMzQixrQ0FBK0I7QUFDL0IsMkJBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9ncmFwaC9ub2Rlc1xuICogQHN1bW1hcnkgUHJvZHVjdGlvbiBub2RlIGtpbmQgZGVjbGFyYXRpb25zIChERUNBRi0zMiDCpzIyLjIpLlxuICogQGRlc2NyaXB0aW9uIENhbm9uaWNhbCBgQG5vZGVgLWRlY29yYXRlZCBjbGFzc2VzIGZvciB0aGUgQUxGUkVELTUgbm9kZSBraW5kXG4gKiB0YXhvbm9teS4gVGhlc2UgYXJlIHRoZSBmcmFtZXdvcmsncyBidWlsdC1pbiBub2RlIGRlZmluaXRpb25zIOKAlCB0cmlnZ2Vyc1xuICogKMKnMjIuMi4xKSwgZmxvdy1jb250cm9sL3V0aWxpdHkgbm9kZXMgKMKnMjIuMi4y4oCTMjIuMi4zKSwgYW5kIHRoZSBBZ2VudCBub2RlXG4gKiAowqcyMS4zKS4gVGhlIHRocmVlIGxvb3Aga2luZHMgKGBjb3JlLmxvb3AuZm9yZWFjaC93aGlsZS91bnRpbGApIGFscmVhZHkgaGF2ZVxuICogYnVpbHQtaW4gZXhlY3V0b3JzICjCpzUuOSkgYW5kIGFyZSBub3QgcmVkZWNsYXJlZCBoZXJlLlxuICpcbiAqIENvbnN1bWVycyAoZm9yLWFuZ3VsYXIsIEFMRlJFRCwgZXRjLikgaW1wb3J0IHRoZXNlIGRlY2xhcmF0aW9ucyB0byBwb3B1bGF0ZVxuICogbm9kZSBwYWxldHRlcywgcmVnaXN0cmllcywgYW5kIHJlZmVyZW5jZSBzbmFwc2hvdHMuXG4gKi9cbmV4cG9ydCAqIGZyb20gXCIuL2Jhc2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NhdGVnb3J5LXN0eWxlc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vdHJpZ2dlcnNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2Zsb3ctY29udHJvbFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vYWdlbnRcIjtcbiJdfQ==
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7Ozs7Ozs7Ozs7O0dBV0c7QUFDSCw0Q0FBMEI7QUFDMUIsdURBQXFDO0FBQ3JDLGdEQUE4QjtBQUM5QixvREFBa0M7QUFDbEMsNkNBQTJCO0FBQzNCLDA0Q0FBMDRDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9ncmFwaC9ub2Rlc1xuICogQHN1bW1hcnkgUHJvZHVjdGlvbiBub2RlIGtpbmQgZGVjbGFyYXRpb25zIChERUNBRi0zMiDCpzIyLjIpLlxuICogQGRlc2NyaXB0aW9uIENhbm9uaWNhbCBgQG5vZGVgLWRlY29yYXRlZCBjbGFzc2VzIGZvciB0aGUgQUxGUkVELTUgbm9kZSBraW5kXG4gKiB0YXhvbm9teS4gVGhlc2UgYXJlIHRoZSBmcmFtZXdvcmsncyBidWlsdC1pbiBub2RlIGRlZmluaXRpb25zIOKAlCB0cmlnZ2Vyc1xuICogKMKnMjIuMi4xKSwgZmxvdy1jb250cm9sL3V0aWxpdHkgbm9kZXMgKMKnMjIuMi4y4oCTMjIuMi4zKSwgYW5kIHRoZSBBZ2VudCBub2RlXG4gKiAowqcyMS4zKS4gVGhlIHRocmVlIGxvb3Aga2luZHMgKGBjb3JlLmxvb3AuZm9yZWFjaC93aGlsZS91bnRpbGApIGFscmVhZHkgaGF2ZVxuICogYnVpbHQtaW4gZXhlY3V0b3JzICjCpzUuOSkgYW5kIGFyZSBub3QgcmVkZWNsYXJlZCBoZXJlLlxuICpcbiAqIENvbnN1bWVycyAoZm9yLWFuZ3VsYXIsIEFMRlJFRCwgZXRjLikgaW1wb3J0IHRoZXNlIGRlY2xhcmF0aW9ucyB0byBwb3B1bGF0ZVxuICogbm9kZSBwYWxldHRlcywgcmVnaXN0cmllcywgYW5kIHJlZmVyZW5jZSBzbmFwc2hvdHMuXG4gKi9cbmV4cG9ydCAqIGZyb20gXCIuL2Jhc2UuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NhdGVnb3J5LXN0eWxlcy5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vdHJpZ2dlcnMuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2Zsb3ctY29udHJvbC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vYWdlbnQuanNcIjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaWFXNWtaWGd1YW5NaUxDSnpiM1Z5WTJWU2IyOTBJam9pSWl3aWMyOTFjbU5sY3lJNld5SXVMaTh1TGk4dUxpOHVMaTl6Y21NdlozSmhjR2d2Ym05a1pYTXZhVzVrWlhndWRITWlYU3dpYm1GdFpYTWlPbHRkTENKdFlYQndhVzVuY3lJNklrRkJRVUU3T3pzN096czdPenM3TzBkQlYwYzdRVUZEU0N3d1FrRkJkVUk3UVVGRGRrSXNjVU5CUVd0RE8wRkJRMnhETERoQ1FVRXlRanRCUVVNelFpeHJRMEZCSzBJN1FVRkRMMElzTWtKQlFYZENJaXdpYzI5MWNtTmxjME52Ym5SbGJuUWlPbHNpTHlvcVhHNGdLaUJBYlc5a2RXeGxJR2x1ZEdWbmNtRjBhVzl1Y3k5bmNtRndhQzl1YjJSbGMxeHVJQ29nUUhOMWJXMWhjbmtnVUhKdlpIVmpkR2x2YmlCdWIyUmxJR3RwYm1RZ1pHVmpiR0Z5WVhScGIyNXpJQ2hFUlVOQlJpMHpNaURDcHpJeUxqSXBMbHh1SUNvZ1FHUmxjMk55YVhCMGFXOXVJRU5oYm05dWFXTmhiQ0JnUUc1dlpHVmdMV1JsWTI5eVlYUmxaQ0JqYkdGemMyVnpJR1p2Y2lCMGFHVWdRVXhHVWtWRUxUVWdibTlrWlNCcmFXNWtYRzRnS2lCMFlYaHZibTl0ZVM0Z1ZHaGxjMlVnWVhKbElIUm9aU0JtY21GdFpYZHZjbXNuY3lCaWRXbHNkQzFwYmlCdWIyUmxJR1JsWm1sdWFYUnBiMjV6SU9LQWxDQjBjbWxuWjJWeWMxeHVJQ29nS01Lbk1qSXVNaTR4S1N3Z1pteHZkeTFqYjI1MGNtOXNMM1YwYVd4cGRIa2dibTlrWlhNZ0tNS25Nakl1TWk0eTRvQ1RNakl1TWk0ektTd2dZVzVrSUhSb1pTQkJaMlZ1ZENCdWIyUmxYRzRnS2lBb3dxY3lNUzR6S1M0Z1ZHaGxJSFJvY21WbElHeHZiM0FnYTJsdVpITWdLR0JqYjNKbExteHZiM0F1Wm05eVpXRmphQzkzYUdsc1pTOTFiblJwYkdBcElHRnNjbVZoWkhrZ2FHRjJaVnh1SUNvZ1luVnBiSFF0YVc0Z1pYaGxZM1YwYjNKeklDakNwelV1T1NrZ1lXNWtJR0Z5WlNCdWIzUWdjbVZrWldOc1lYSmxaQ0JvWlhKbExseHVJQ3BjYmlBcUlFTnZibk4xYldWeWN5QW9abTl5TFdGdVozVnNZWElzSUVGTVJsSkZSQ3dnWlhSakxpa2dhVzF3YjNKMElIUm9aWE5sSUdSbFkyeGhjbUYwYVc5dWN5QjBieUJ3YjNCMWJHRjBaVnh1SUNvZ2JtOWtaU0J3WVd4bGRIUmxjeXdnY21WbmFYTjBjbWxsY3l3Z1lXNWtJSEpsWm1WeVpXNWpaU0J6Ym1Gd2MyaHZkSE11WEc0Z0tpOWNibVY0Y0c5eWRDQXFJR1p5YjIwZ1hDSXVMMkpoYzJWY0lqdGNibVY0Y0c5eWRDQXFJR1p5YjIwZ1hDSXVMMk5oZEdWbmIzSjVMWE4wZVd4bGMxd2lPMXh1Wlhod2IzSjBJQ29nWm5KdmJTQmNJaTR2ZEhKcFoyZGxjbk5jSWp0Y2JtVjRjRzl5ZENBcUlHWnliMjBnWENJdUwyWnNiM2N0WTI5dWRISnZiRndpTzF4dVpYaHdiM0owSUNvZ1puSnZiU0JjSWk0dllXZGxiblJjSWp0Y2JpSmRmUT09Il19
@@ -1,250 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GRAPH_TRIGGER_NODES = exports.ChatTriggerNode = exports.FormTriggerNode = exports.EventTriggerNode = exports.ScheduleTriggerNode = exports.WebhookTriggerNode = exports.ManualTriggerNode = void 0;
4
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
5
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
6
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
7
- r = Reflect.decorate(decorators, target, key, desc);
8
- else
9
- for (var i = decorators.length - 1; i >= 0; i--)
10
- if (d = decorators[i])
11
- r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
12
- return c > 3 && r && Object.defineProperty(target, key, r), r;
13
- };
14
- var __metadata = (this && this.__metadata) || function (k, v) {
15
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
16
- return Reflect.metadata(k, v);
17
- };
18
- /**
19
- * @module integrations/graph/nodes/triggers
20
- * @summary Production trigger node kind declarations (DECAF-32 §22.2.1).
21
- * @description Canonical `@node`-decorated classes for the six ALFRED-5 trigger
22
- * kinds. Triggers are metadata-only entrypoints: they define how a workflow
23
- * starts and produce a trigger payload on their `@output` ports. They have no
24
- * `@input` ports (nothing feeds a trigger) and no built-in executors — the
25
- * engine's execution model starts from workflow inputs (§5.8) and treats
26
- * trigger nodes as metadata-only entrypoints.
27
- */
28
- const decorator_validation_1 = require("@decaf-ts/decorator-validation");
29
- const ui_decorators_1 = require("@decaf-ts/ui-decorators");
30
- const graph_1 = require("@decaf-ts/ui-decorators/graph");
31
- /**
32
- * Manual trigger — user clicks Run; input form generated from `inputSchema`.
33
- */
34
- let ManualTriggerNode = class ManualTriggerNode extends decorator_validation_1.Model {
35
- };
36
- exports.ManualTriggerNode = ManualTriggerNode;
37
- __decorate([
38
- (0, decorator_validation_1.required)(),
39
- (0, ui_decorators_1.uielement)("textarea", { label: "Trigger payload", placeholder: "Manual trigger payload" }),
40
- (0, graph_1.output)({ handle: "payload" }),
41
- __metadata("design:type", Object)
42
- ], ManualTriggerNode.prototype, "payload", void 0);
43
- exports.ManualTriggerNode = ManualTriggerNode = __decorate([
44
- (0, graph_1.node)("core.trigger.manual", {
45
- kind: "core.trigger.manual",
46
- category: "Trigger",
47
- color: "#3b82f6",
48
- icon: "ti-hand-click",
49
- width: 96,
50
- height: 96,
51
- labels: ["trigger", "manual", "entrypoint"],
52
- metadata: {
53
- title: "Manual trigger",
54
- description: "Starts the workflow when the user clicks Run. The input form is generated from the trigger's input schema.",
55
- trigger: {
56
- type: "manual",
57
- inputSchema: {},
58
- },
59
- },
60
- }),
61
- (0, decorator_validation_1.model)()
62
- ], ManualTriggerNode);
63
- /**
64
- * Webhook trigger — HTTP request received; path/method/auth/responseMode config.
65
- */
66
- let WebhookTriggerNode = class WebhookTriggerNode extends decorator_validation_1.Model {
67
- };
68
- exports.WebhookTriggerNode = WebhookTriggerNode;
69
- __decorate([
70
- (0, decorator_validation_1.required)(),
71
- (0, ui_decorators_1.uielement)("textarea", { label: "Request payload", placeholder: "Webhook request body" }),
72
- (0, graph_1.output)({ handle: "payload" }),
73
- __metadata("design:type", Object)
74
- ], WebhookTriggerNode.prototype, "payload", void 0);
75
- exports.WebhookTriggerNode = WebhookTriggerNode = __decorate([
76
- (0, graph_1.node)("core.trigger.webhook", {
77
- kind: "core.trigger.webhook",
78
- category: "Trigger",
79
- color: "#0ea5e9",
80
- icon: "ti-webhook",
81
- width: 96,
82
- height: 96,
83
- labels: ["trigger", "webhook", "http"],
84
- metadata: {
85
- title: "Webhook trigger",
86
- description: "Starts the workflow when an HTTP request is received on the configured path and method.",
87
- trigger: {
88
- type: "webhook",
89
- path: "/webhook",
90
- method: "POST",
91
- auth: "none",
92
- responseMode: "onReceived",
93
- },
94
- },
95
- }),
96
- (0, decorator_validation_1.model)()
97
- ], WebhookTriggerNode);
98
- /**
99
- * Schedule trigger — cron-like schedule; timezone + payload config.
100
- */
101
- let ScheduleTriggerNode = class ScheduleTriggerNode extends decorator_validation_1.Model {
102
- };
103
- exports.ScheduleTriggerNode = ScheduleTriggerNode;
104
- __decorate([
105
- (0, decorator_validation_1.required)(),
106
- (0, ui_decorators_1.uielement)("textarea", { label: "Scheduled payload", placeholder: "Payload for the scheduled run" }),
107
- (0, graph_1.output)({ handle: "payload" }),
108
- __metadata("design:type", Object)
109
- ], ScheduleTriggerNode.prototype, "payload", void 0);
110
- exports.ScheduleTriggerNode = ScheduleTriggerNode = __decorate([
111
- (0, graph_1.node)("core.trigger.schedule", {
112
- kind: "core.trigger.schedule",
113
- category: "Trigger",
114
- color: "#6366f1",
115
- icon: "ti-calendar-time",
116
- width: 96,
117
- height: 96,
118
- labels: ["trigger", "schedule", "cron"],
119
- metadata: {
120
- title: "Schedule trigger",
121
- description: "Starts the workflow on a cron-like schedule with timezone support.",
122
- trigger: {
123
- type: "schedule",
124
- schedule: "0 * * * *",
125
- timezone: "UTC",
126
- },
127
- },
128
- }),
129
- (0, decorator_validation_1.model)()
130
- ], ScheduleTriggerNode);
131
- /**
132
- * Event trigger — internal event bus topic subscriber.
133
- */
134
- let EventTriggerNode = class EventTriggerNode extends decorator_validation_1.Model {
135
- };
136
- exports.EventTriggerNode = EventTriggerNode;
137
- __decorate([
138
- (0, decorator_validation_1.required)(),
139
- (0, ui_decorators_1.uielement)("textarea", { label: "Event payload", placeholder: "Event bus payload" }),
140
- (0, graph_1.output)({ handle: "payload" }),
141
- __metadata("design:type", Object)
142
- ], EventTriggerNode.prototype, "payload", void 0);
143
- exports.EventTriggerNode = EventTriggerNode = __decorate([
144
- (0, graph_1.node)("core.trigger.event", {
145
- kind: "core.trigger.event",
146
- category: "Trigger",
147
- color: "#8b5cf6",
148
- icon: "ti-broadcast",
149
- width: 96,
150
- height: 96,
151
- labels: ["trigger", "event", "bus"],
152
- metadata: {
153
- title: "Event trigger",
154
- description: "Starts the workflow when an event is published on the configured internal event bus topic.",
155
- trigger: {
156
- type: "event",
157
- topic: "default",
158
- },
159
- },
160
- }),
161
- (0, decorator_validation_1.model)()
162
- ], EventTriggerNode);
163
- /**
164
- * Form trigger — generated public/internal form; field definitions.
165
- */
166
- let FormTriggerNode = class FormTriggerNode extends decorator_validation_1.Model {
167
- };
168
- exports.FormTriggerNode = FormTriggerNode;
169
- __decorate([
170
- (0, decorator_validation_1.required)(),
171
- (0, ui_decorators_1.uielement)("textarea", { label: "Form submission", placeholder: "Form submission payload" }),
172
- (0, graph_1.output)({ handle: "payload" }),
173
- __metadata("design:type", Object)
174
- ], FormTriggerNode.prototype, "payload", void 0);
175
- exports.FormTriggerNode = FormTriggerNode = __decorate([
176
- (0, graph_1.node)("core.trigger.form", {
177
- kind: "core.trigger.form",
178
- category: "Trigger",
179
- color: "#ec4899",
180
- icon: "ti-forms",
181
- width: 96,
182
- height: 96,
183
- labels: ["trigger", "form", "public"],
184
- metadata: {
185
- title: "Form trigger",
186
- description: "Starts the workflow when a generated form is submitted. Field definitions drive the form schema.",
187
- trigger: {
188
- type: "form",
189
- fields: [],
190
- },
191
- },
192
- }),
193
- (0, decorator_validation_1.model)()
194
- ], FormTriggerNode);
195
- /**
196
- * Chat trigger — chat message entrypoint; message/sessionId/userId schema.
197
- */
198
- let ChatTriggerNode = class ChatTriggerNode extends decorator_validation_1.Model {
199
- };
200
- exports.ChatTriggerNode = ChatTriggerNode;
201
- __decorate([
202
- (0, decorator_validation_1.required)(),
203
- (0, ui_decorators_1.uielement)("input", { label: "Message", placeholder: "Incoming chat message" }),
204
- (0, graph_1.output)({ handle: "message" }),
205
- __metadata("design:type", String)
206
- ], ChatTriggerNode.prototype, "message", void 0);
207
- __decorate([
208
- (0, decorator_validation_1.required)(),
209
- (0, ui_decorators_1.uielement)("input", { label: "Session ID", placeholder: "Chat session identifier" }),
210
- (0, graph_1.output)({ handle: "sessionId" }),
211
- __metadata("design:type", String)
212
- ], ChatTriggerNode.prototype, "sessionId", void 0);
213
- __decorate([
214
- (0, decorator_validation_1.required)(),
215
- (0, ui_decorators_1.uielement)("input", { label: "User ID", placeholder: "Chat user identifier" }),
216
- (0, graph_1.output)({ handle: "userId" }),
217
- __metadata("design:type", String)
218
- ], ChatTriggerNode.prototype, "userId", void 0);
219
- exports.ChatTriggerNode = ChatTriggerNode = __decorate([
220
- (0, graph_1.node)("core.trigger.chat", {
221
- kind: "core.trigger.chat",
222
- category: "Trigger",
223
- color: "#14b8a6",
224
- icon: "ti-message-circle",
225
- width: 96,
226
- height: 96,
227
- labels: ["trigger", "chat", "entrypoint"],
228
- metadata: {
229
- title: "Chat trigger",
230
- description: "Starts the workflow when a chat message is received. Emits message, sessionId, and userId.",
231
- trigger: {
232
- type: "chat",
233
- },
234
- },
235
- }),
236
- (0, decorator_validation_1.model)()
237
- ], ChatTriggerNode);
238
- /**
239
- * All built-in trigger node constructors.
240
- */
241
- exports.GRAPH_TRIGGER_NODES = [
242
- ManualTriggerNode,
243
- WebhookTriggerNode,
244
- ScheduleTriggerNode,
245
- EventTriggerNode,
246
- FormTriggerNode,
247
- ChatTriggerNode,
248
- ];
249
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJpZ2dlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZ3JhcGgvbm9kZXMvdHJpZ2dlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7Ozs7Ozs7OztHQVNHO0FBQ0gsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFN0Q7O0dBRUc7QUFtQkksSUFBTSxpQkFBaUIsR0FBdkIsTUFBTSxpQkFBa0IsU0FBUSxLQUFLO0NBSzNDLENBQUE7QUFEQztJQUhDLFFBQVEsRUFBRTtJQUNWLFNBQVMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLHdCQUF3QixFQUFFLENBQUM7SUFDMUYsTUFBTSxDQUFDLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxDQUFDOztrREFDWjtBQUpQLGlCQUFpQjtJQWxCN0IsSUFBSSxDQUFDLHFCQUFxQixFQUFFO1FBQzNCLElBQUksRUFBRSxxQkFBcUI7UUFDM0IsUUFBUSxFQUFFLFNBQVM7UUFDbkIsS0FBSyxFQUFFLFNBQVM7UUFDaEIsSUFBSSxFQUFFLGVBQWU7UUFDckIsS0FBSyxFQUFFLEVBQUU7UUFDVCxNQUFNLEVBQUUsRUFBRTtRQUNWLE1BQU0sRUFBRSxDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsWUFBWSxDQUFDO1FBQzNDLFFBQVEsRUFBRTtZQUNSLEtBQUssRUFBRSxnQkFBZ0I7WUFDdkIsV0FBVyxFQUFFLDRHQUE0RztZQUN6SCxPQUFPLEVBQUU7Z0JBQ1AsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsV0FBVyxFQUFFLEVBQUU7YUFDaEI7U0FDRjtLQUNGLENBQUM7SUFDRCxLQUFL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dGlvbnMvZ3JhcGgvbm9kZXMvdHJpZ2dlcnNcbiAqIEBzdW1tYXJ5IFByb2R1Y3Rpb24gdHJpZ2dlciBub2RlIGtpbmQgZGVjbGFyYXRpb25zIChERUNBRi0zMiDCpzIyLjIuMSkuXG4gKiBAZGVzY3JpcHRpb24gQ2Fub25pY2FsIGBAbm9kZWAtZGVjb3JhdGVkIGNsYXNzZXMgZm9yIHRoZSBzaXggQUxGUkVELTUgdHJpZ2dlclxuICoga2luZHMuIFRyaWdnZXJzIGFyZSBtZXRhZGF0YS1vbmx5IGVudHJ5cG9pbnRzOiB0aGV5IGRlZmluZSBob3cgYSB3b3JrZmxvd1xuICogc3RhcnRzIGFuZCBwcm9kdWNlIGEgdHJpZ2dlciBwYXlsb2FkIG9uIHRoZWlyIGBAb3V0cHV0YCBwb3J0cy4gVGhleSBoYXZlIG5vXG4gKiBgQGlucHV0YCBwb3J0cyAobm90aGluZyBmZWVkcyBhIHRyaWdnZXIpIGFuZCBubyBidWlsdC1pbiBleGVjdXRvcnMg4oCUIHRoZVxuICogZW5naW5lJ3MgZXhlY3V0aW9uIG1vZGVsIHN0YXJ0cyBmcm9tIHdvcmtmbG93IGlucHV0cyAowqc1LjgpIGFuZCB0cmVhdHNcbiAqIHRyaWdnZXIgbm9kZXMgYXMgbWV0YWRhdGEtb25seSBlbnRyeXBvaW50cy5cbiAqL1xuaW1wb3J0IHsgTW9kZWwsIG1vZGVsLCByZXF1aXJlZCB9IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcbmltcG9ydCB7IHVpZWxlbWVudCB9IGZyb20gXCJAZGVjYWYtdHMvdWktZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgbm9kZSwgb3V0cHV0IH0gZnJvbSBcIkBkZWNhZi10cy91aS1kZWNvcmF0b3JzL2dyYXBoXCI7XG5cbi8qKlxuICogTWFudWFsIHRyaWdnZXIg4oCUIHVzZXIgY2xpY2tzIFJ1bjsgaW5wdXQgZm9ybSBnZW5lcmF0ZWQgZnJvbSBgaW5wdXRTY2hlbWFgLlxuICovXG5Abm9kZShcImNvcmUudHJpZ2dlci5tYW51YWxcIiwge1xuICBraW5kOiBcImNvcmUudHJpZ2dlci5tYW51YWxcIixcbiAgY2F0ZWdvcnk6IFwiVHJpZ2dlclwiLFxuICBjb2xvcjogXCIjM2I4MmY2XCIsXG4gIGljb246IFwidGktaGFuZC1jbGlja1wiLFxuICB3aWR0aDogOTYsXG4gIGhlaWdodDogOTYsXG4gIGxhYmVsczogW1widHJpZ2dlclwiLCBcIm1hbnVhbFwiLCBcImVudHJ5cG9pbnRcIl0sXG4gIG1ldGFkYXRhOiB7XG4gICAgdGl0bGU6IFwiTWFudWFsIHRyaWdnZXJcIixcbiAgICBkZXNjcmlwdGlvbjogXCJTdGFydHMgdGhlIHdvcmtmbG93IHdoZW4gdGhlIHVzZXIgY2xpY2tzIFJ1bi4gVGhlIGlucHV0IGZvcm0gaXMgZ2VuZXJhdGVkIGZyb20gdGhlIHRyaWdnZXIncyBpbnB1dCBzY2hlbWEuXCIsXG4gICAgdHJpZ2dlcjoge1xuICAgICAgdHlwZTogXCJtYW51YWxcIixcbiAgICAgIGlucHV0U2NoZW1hOiB7fSxcbiAgICB9LFxuICB9LFxufSlcbkBtb2RlbCgpXG5leHBvcnQgY2xhc3MgTWFudWFsVHJpZ2dlck5vZGUgZXh0ZW5kcyBNb2RlbCB7XG4gIEByZXF1aXJlZCgpXG4gIEB1aWVsZW1lbnQoXCJ0ZXh0YXJlYVwiLCB7IGxhYmVsOiBcIlRyaWdnZXIgcGF5bG9hZFwiLCBwbGFjZWhvbGRlcjogXCJNYW51YWwgdHJpZ2dlciBwYXlsb2FkXCIgfSlcbiAgQG91dHB1dCh7IGhhbmRsZTogXCJwYXlsb2FkXCIgfSlcbiAgcGF5bG9hZCE6IHVua25vd247XG59XG5cbi8qKlxuICogV2ViaG9vayB0cmlnZ2VyIOKAlCBIVFRQIHJlcXVlc3QgcmVjZWl2ZWQ7IHBhdGgvbWV0aG9kL2F1dGgvcmVzcG9uc2VNb2RlIGNvbmZpZy5cbiAqL1xuQG5vZGUoXCJjb3JlLnRyaWdnZXIud2ViaG9va1wiLCB7XG4gIGtpbmQ6IFwiY29yZS50cmlnZ2VyLndlYmhvb2tcIixcbiAgY2F0ZWdvcnk6IFwiVHJpZ2dlclwiLFxuICBjb2xvcjogXCIjMGVhNWU5XCIsXG4gIGljb246IFwidGktd2ViaG9va1wiLFxuICB3aWR0aDogOTYsXG4gIGhlaWdodDogOTYsXG4gIGxhYmVsczogW1widHJpZ2dlclwiLCBcIndlYmhvb2tcIiwgXCJodHRwXCJdLFxuICBtZXRhZGF0YToge1xuICAgIHRpdGxlOiBcIldlYmhvb2sgdHJpZ2dlclwiLFxuICAgIGRlc2NyaXB0aW9uOiBcIlN0YXJ0cyB0aGUgd29ya2Zsb3cgd2hlbiBhbiBIVFRQIHJlcXVlc3QgaXMgcmVjZWl2ZWQgb24gdGhlIGNvbmZpZ3VyZWQgcGF0aCBhbmQgbWV0aG9kLlwiLFxuICAgIHRyaWdnZXI6IHtcbiAgICAgIHR5cGU6IFwid2ViaG9va1wiLFxuICAgICAgcGF0aDogXCIvd2ViaG9va1wiLFxuICAgICAgbWV0aG9kOiBcIlBPU1RcIixcbiAgICAgIGF1dGg6IFwibm9uZVwiLFxuICAgICAgcmVzcG9uc2VNb2RlOiBcIm9uUmVjZWl2ZWRcIixcbiAgICB9LFxuICB9LFxufSlcbkBtb2RlbCgpXG5leHBvcnQgY2xhc3MgV2ViaG9va1RyaWdnZXJOb2RlIGV4dGVuZHMgTW9kZWwge1xuICBAcmVxdWlyZWQoKVxuICBAdWllbGVtZW50KFwidGV4dGFyZWFcIiwgeyBsYWJlbDogXCJSZXF1ZXN0IHBheWxvYWRcIiwgcGxhY2Vob2xkZXI6IFwiV2ViaG9vayByZXF1ZXN0IGJvZHlcIiB9KVxuICBAb3V0cHV0KHsgaGFuZGxlOiBcInBheWxvYWRcIiB9KVxuICBwYXlsb2FkITogdW5rbm93bjtcbn1cblxuLyoqXG4gKiBTY2hlZHVsZSB0cmlnZ2VyIOKAlCBjcm9uLWxpa2Ugc2NoZWR1bGU7IHRpbWV6b25lICsgcGF5bG9hZCBjb25maWcuXG4gKi9cbkBub2RlKFwiY29yZS50cmlnZ2VyLnNjaGVkdWxlXCIsIHtcbiAga2luZDogXCJjb3JlLnRyaWdnZXIuc2NoZWR1bGVcIixcbiAgY2F0ZWdvcnk6IFwiVHJpZ2dlclwiLFxuICBjb2xvcjogXCIjNjM2NmYxXCIsXG4gIGljb246IFwidGktY2FsZW5kYXItdGltZVwiLFxuICB3aWR0aDogOTYsXG4gIGhlaWdodDogOTYsXG4gIGxhYmVsczogW1widHJpZ2dlclwiLCBcInNjaGVkdWxlXCIsIFwiY3JvblwiXSxcbiAgbWV0YWRhdGE6IHtcbiAgICB0aXRsZTogXCJTY2hlZHVsZSB0cmlnZ2VyXCIsXG4gICAgZGVzY3JpcHRpb246IFwiU3RhcnRzIHRoZSB3b3JrZmxvdyBvbiBhIGNyb24tbGlrZSBzY2hlZHVsZSB3aXRoIHRpbWV6b25lIHN1cHBvcnQuXCIsXG4gICAgdHJpZ2dlcjoge1xuICAgICAgdHlwZTogXCJzY2hlZHVsZVwiLFxuICAgICAgc2NoZWR1bGU6IFwiMCAqICogKiAqXCIsXG4gICAgICB0aW1lem9uZTogXCJVVENcIixcbiAgICB9LFxuICB9LFxufSlcbkBtb2RlbCgpXG5leHBvcnQgY2xhc3MgU2NoZWR1bGVUcmlnZ2VyTm9kZSBleHRlbmRzIE1vZGVsIHtcbiAgQHJlcXVpcmVkKClcbiAgQHVpZWxlbWVudChcInRleHRhcmVhXCIsIHsgbGFiZWw6IFwiU2NoZWR1bGVkIHBheWxvYWRcIiwgcGxhY2Vob2xkZXI6IFwiUGF5bG9hZCBmb3IgdGhlIHNjaGVkdWxlZCBydW5cIiB9KVxuICBAb3V0cHV0KHsgaGFuZGxlOiBcInBheWxvYWRcIiB9KVxuICBwYXlsb2FkITogdW5rbm93bjtcbn1cblxuLyoqXG4gKiBFdmVudCB0cmlnZ2VyIOKAlCBpbnRlcm5hbCBldmVudCBidXMgdG9waWMgc3Vic2NyaWJlci5cbiAqL1xuQG5vZGUoXCJjb3JlLnRyaWdnZXIuZXZlbnRcIiwge1xuICBraW5kOiBcImNvcmUudHJpZ2dlci5ldmVudFwiLFxuICBjYXRlZ29yeTogXCJUcmlnZ2VyXCIsXG4gIGNvbG9yOiBcIiM4YjVjZjZcIixcbiAgaWNvbjogXCJ0aS1icm9hZGNhc3RcIixcbiAgd2lkdGg6IDk2LFxuICBoZWlnaHQ6IDk2LFxuICBsYWJlbHM6IFtcInRyaWdnZXJcIiwgXCJldmVudFwiLCBcImJ1c1wiXSxcbiAgbWV0YWRhdGE6IHtcbiAgICB0aXRsZTogXCJFdmVudCB0cmlnZ2VyXCIsXG4gICAgZGVzY3JpcHRpb246IFwiU3RhcnRzIHRoZSB3b3JrZmxvdyB3aGVuIGFuIGV2ZW50IGlzIHB1Ymxpc2hlZCBvbiB0aGUgY29uZmlndXJlZCBpbnRlcm5hbCBldmVudCBidXMgdG9waWMuXCIsXG4gICAgdHJpZ2dlcjoge1xuICAgICAgdHlwZTogXCJldmVudFwiLFxuICAgICAgdG9waWM6IFwiZGVmYXVsdFwiLFxuICAgIH0sXG4gIH0sXG59KVxuQG1vZGVsKClcbmV4cG9ydCBjbGFzcyBFdmVudFRyaWdnZXJOb2RlIGV4dGVuZHMgTW9kZWwge1xuICBAcmVxdWlyZWQoKVxuICBAdWllbGVtZW50KFwidGV4dGFyZWFcIiwgeyBsYWJlbDogXCJFdmVudCBwYXlsb2FkXCIsIHBsYWNlaG9sZGVyOiBcIkV2ZW50IGJ1cyBwYXlsb2FkXCIgfSlcbiAgQG91dHB1dCh7IGhhbmRsZTogXCJwYXlsb2FkXCIgfSlcbiAgcGF5bG9hZCE6IHVua25vd247XG59XG5cbi8qKlxuICogRm9ybSB0cmlnZ2VyIOKAlCBnZW5lcmF0ZWQgcHVibGljL2ludGVybmFsIGZvcm07IGZpZWxkIGRlZmluaXRpb25zLlxuICovXG5Abm9kZShcImNvcmUudHJpZ2dlci5mb3JtXCIsIHtcbiAga2luZDogXCJjb3JlLnRyaWdnZXIuZm9ybVwiLFxuICBjYXRlZ29yeTogXCJUcmlnZ2VyXCIsXG4gIGNvbG9yOiBcIiNlYzQ4OTlcIixcbiAgaWNvbjogXCJ0aS1mb3Jtc1wiLFxuICB3aWR0aDogOTYsXG4gIGhlaWdodDogOTYsXG4gIGxhYmVsczogW1widHJpZ2dlclwiLCBcImZvcm1cIiwgXCJwdWJsaWNcIl0sXG4gIG1ldGFkYXRhOiB7XG4gICAgdGl0bGU6IFwiRm9ybSB0cmlnZ2VyXCIsXG4gICAgZGVzY3JpcHRpb246IFwiU3RhcnRzIHRoZSB3b3JrZmxvdyB3aGVuIGEgZ2VuZXJhdGVkIGZvcm0gaXMgc3VibWl0dGVkLiBGaWVsZCBkZWZpbml0aW9ucyBkcml2ZSB0aGUgZm9ybSBzY2hlbWEuXCIsXG4gICAgdHJpZ2dlcjoge1xuICAgICAgdHlwZTogXCJmb3JtXCIsXG4gICAgICBmaWVsZHM6IFtdLFxuICAgIH0sXG4gIH0sXG59KVxuQG1vZGVsKClcbmV4cG9ydCBjbGFzcyBGb3JtVHJpZ2dlck5vZGUgZXh0ZW5kcyBNb2RlbCB7XG4gIEByZXF1aXJlZCgpXG4gIEB1aWVsZW1lbnQoXCJ0ZXh0YXJlYVwiLCB7IGxhYmVsOiBcIkZvcm0gc3VibWlzc2lvblwiLCBwbGFjZWhvbGRlcjogXCJGb3JtIHN1Ym1pc3Npb24gcGF5bG9hZFwiIH0pXG4gIEBvdXRwdXQoeyBoYW5kbGU6IFwicGF5bG9hZFwiIH0pXG4gIHBheWxvYWQhOiB1bmtub3duO1xufVxuXG4vKipcbiAqIENoYXQgdHJpZ2dlciDigJQgY2hhdCBtZXNzYWdlIGVudHJ5cG9pbnQ7IG1lc3NhZ2Uvc2Vzc2lvbklkL3VzZXJJZCBzY2hlbWEuXG4gKi9cbkBub2RlKFwiY29yZS50cmlnZ2VyLmNoYXRcIiwge1xuICBraW5kOiBcImNvcmUudHJpZ2dlci5jaGF0XCIsXG4gIGNhdGVnb3J5OiBcIlRyaWdnZXJcIixcbiAgY29sb3I6IFwiIzE0YjhhNlwiLFxuICBpY29uOiBcInRpLW1lc3NhZ2UtY2lyY2xlXCIsXG4gIHdpZHRoOiA5NixcbiAgaGVpZ2h0OiA5NixcbiAgbGFiZWxzOiBbXCJ0cmlnZ2VyXCIsIFwiY2hhdFwiLCBcImVudHJ5cG9pbnRcIl0sXG4gIG1ldGFkYXRhOiB7XG4gICAgdGl0bGU6IFwiQ2hhdCB0cmlnZ2VyXCIsXG4gICAgZGVzY3JpcHRpb246IFwiU3RhcnRzIHRoZSB3b3JrZmxvdyB3aGVuIGEgY2hhdCBtZXNzYWdlIGlzIHJlY2VpdmVkLiBFbWl0cyBtZXNzYWdlLCBzZXNzaW9uSWQsIGFuZCB1c2VySWQuXCIsXG4gICAgdHJpZ2dlcjoge1xuICAgICAgdHlwZTogXCJjaGF0XCIsXG4gICAgfSxcbiAgfSxcbn0pXG5AbW9kZWwoKVxuZXhwb3J0IGNsYXNzIENoYXRUcmlnZ2VyTm9kZSBleHRlbmRzIE1vZGVsIHtcbiAgQHJlcXVpcmVkKClcbiAgQHVpZWxlbWVudChcImlucHV0XCIsIHsgbGFiZWw6IFwiTWVzc2FnZVwiLCBwbGFjZWhvbGRlcjogXCJJbmNvbWluZyBjaGF0IG1lc3NhZ2VcIiB9KVxuICBAb3V0cHV0KHsgaGFuZGxlOiBcIm1lc3NhZ2VcIiB9KVxuICBtZXNzYWdlITogc3RyaW5nO1xuXG4gIEByZXF1aXJlZCgpXG4gIEB1aWVsZW1lbnQoXCJpbnB1dFwiLCB7IGxhYmVsOiBcIlNlc3Npb24gSURcIiwgcGxhY2Vob2xkZXI6IFwiQ2hhdCBzZXNzaW9uIGlkZW50aWZpZXJcIiB9KVxuICBAb3V0cHV0KHsgaGFuZGxlOiBcInNlc3Npb25JZFwiIH0pXG4gIHNlc3Npb25JZCE6IHN0cmluZztcblxuICBAcmVxdWlyZWQoKVxuICBAdWllbGVtZW50KFwiaW5wdXRcIiwgeyBsYWJlbDogXCJVc2VyIElEXCIsIHBsYWNlaG9sZGVyOiBcIkNoYXQgdXNlciBpZGVudGlmaWVyXCIgfSlcbiAgQG91dHB1dCh7IGhhbmRsZTogXCJ1c2VySWRcIiB9KVxuICB1c2VySWQhOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQWxsIGJ1aWx0LWluIHRyaWdnZXIgbm9kZSBjb25zdHJ1Y3RvcnMuXG4gKi9cbmV4cG9ydCBjb25zdCBHUkFQSF9UUklHR0VSX05PREVTID0gW1xuICBNYW51YWxUcmlnZ2VyTm9kZSxcbiAgV2ViaG9va1RyaWdnZXJOb2RlLFxuICBTY2hlZHVsZVRyaWdnZXJOb2RlLFxuICBFdmVudFRyaWdnZXJOb2RlLFxuICBGb3JtVHJpZ2dlck5vZGUsXG4gIENoYXRUcmlnZ2VyTm9kZSxcbl0gYXMgY29uc3Q7XG4iXX0=
250
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJpZ2dlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0cmlnZ2Vycy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFJLFVBQVUsR0FBRyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksVUFBVSxVQUFVLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxJQUFJO0lBQ2pGLElBQUksQ0FBQyxHQUFHLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDN0gsSUFBSSxPQUFPLE9BQU8sS0FBSyxRQUFRLElBQUksT0FBTyxPQUFPLENBQUMsUUFBUSxLQUFLLFVBQVU7UUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQzs7UUFDMUgsS0FBSyxJQUFJLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRTtZQUFFLElBQUksQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUM7Z0JBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxJ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UztRQUNuQixLQUFLLEVBQUUsU0FBUztRQUNoQixJQUFJLEVBQUUsbUJBQW1CO1FBQ3pCLEtBQUssRUFBRSxFQUFFO1FBQ1QsTUFBTSxFQUFFLEVBQUU7UUFDVixNQUFNLEVBQUUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLFlBQVksQ0FBQztRQUN6QyxRQUFRLEVBQUU7WUFDTixLQUFLLEVBQUUsY0FBYztZQUNyQixXQUFXLEVBQUUsNEZBQTRGO1lBQ3pHLE9BQU8sRUFBRTtnQkFDTCxJQUFJLEVBQUUsTUFBTTthQUNmO1NBQ0o7S0FDSixDQUFDO0lBQ0YsSUFBQSw0QkFBSyxHQUFFO0NBQ1YsRUFBRSxlQUFlLENBQUMsQ0FBQztBQUVwQjs7R0FFRztBQUNVLFFBQUEsbUJBQW1CLEdBQUc7SUFDL0IsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixtQkFBbUI7SUFDbkIsZ0JBQWdCO0lBQ2hCLGVBQWU7SUFDZixlQUFlO0NBQ2xCLENBQUM7QUFDRiwwNGJBQTA0YiIsInNvdXJjZXNDb250ZW50IjpbInZhciBfX2RlY29yYXRlID0gKHRoaXMgJiYgdGhpcy5fX2RlY29yYXRlKSB8fCBmdW5jdGlvbiAoZGVjb3JhdG9ycywgdGFyZ2V0LCBrZXksIGRlc2MpIHtcbiAgICB2YXIgYyA9IGFyZ3VtZW50cy5sZW5ndGgsIHIgPSBjIDwgMyA/IHRhcmdldCA6IGRlc2MgPT09IG51bGwgPyBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0YXJnZXQsIGtleSkgOiBkZXNjLCBkO1xuICAgIGlmICh0eXBlb2YgUmVmbGVjdCA9PT0gXCJvYmplY3RcIiAmJiB0eXBlb2YgUmVmbGVjdC5kZWNvcmF0ZSA9PT0gXCJmdW5jdGlvblwiKSByID0gUmVmbGVjdC5kZWNvcmF0ZShkZWNvcmF0b3JzLCB0YXJnZXQsIGtleSwgZGVzYyk7XG4gICAgZWxzZSBmb3IgKHZhciBpID0gZGVjb3JhdG9ycy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkgaWYgKGQgPSBkZWNvcmF0b3JzW2ldKSByID0gKGMgPCAzID8gZChyKSA6IGMgPiAzID8gZCh0YXJnZXQsIGtleSwgcikgOiBkKHRhcmdldCwga2V5KSkgfHwgcjtcbiAgICByZXR1cm4gYyA+IDMgJiYgciAmJiBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIHIpLCByO1xufTtcbnZhciBfX21ldGFkYXRhID0gKHRoaXMgJiYgdGhpcy5fX21ldGFkYXRhKSB8fCBmdW5jdGlvbiAoaywgdikge1xuICAgIGlmICh0eXBlb2YgUmVmbGVjdCA9PT0gXCJvYmplY3RcIiAmJiB0eXBlb2YgUmVmbGVjdC5tZXRhZGF0YSA9PT0gXCJmdW5jdGlvblwiKSByZXR1cm4gUmVmbGVjdC5tZXRhZGF0YShrLCB2KTtcbn07XG4vKipcbiAqIEBtb2R1bGUgaW50ZWdyYXRpb25zL2dyYXBoL25vZGVzL3RyaWdnZXJzXG4gKiBAc3VtbWFyeSBQcm9kdWN0aW9uIHRyaWdnZXIgbm9kZSBraW5kIGRlY2xhcmF0aW9ucyAoREVDQUYtMzIgwqcyMi4yLjEpLlxuICogQGRlc2NyaXB0aW9uIENhbm9uaWNhbCBgQG5vZGVgLWRlY29yYXRlZCBjbGFzc2VzIGZvciB0aGUgc2l4IEFMRlJFRC01IHRyaWdnZXJcbiAqIGtpbmRzLiBUcmlnZ2VycyBhcmUgbWV0YWRhdGEtb25seSBlbnRyeXBvaW50czogdGhleSBkZWZpbmUgaG93IGEgd29ya2Zsb3dcbiAqIHN0YXJ0cyBhbmQgcHJvZHVjZSBhIHRyaWdnZXIgcGF5bG9hZCBvbiB0aGVpciBgQG91dHB1dGAgcG9ydHMuIFRoZXkgaGF2ZSBub1xuICogYEBpbnB1dGAgcG9ydHMgKG5vdGhpbmcgZmVlZHMgYSB0cmlnZ2VyKSBhbmQgbm8gYnVpbHQtaW4gZXhlY3V0b3JzIOKAlCB0aGVcbiAqIGVuZ2luZSdzIGV4ZWN1dGlvbiBtb2RlbCBzdGFydHMgZnJvbSB3b3JrZmxvdyBpbnB1dHMgKMKnNS44KSBhbmQgdHJlYXRzXG4gKiB0cmlnZ2VyIG5vZGVzIGFzIG1ldGFkYXRhLW9ubHkgZW50cnlwb2ludHMuXG4gKi9cbmltcG9ydCB7IE1vZGVsLCBtb2RlbCwgcmVxdWlyZWQgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyB1aWVsZW1lbnQgfSBmcm9tIFwiQGRlY2FmLXRzL3VpLWRlY29yYXRvcnNcIjtcbmltcG9ydCB7IG5vZGUsIG91dHB1dCB9IGZyb20gXCJAZGVjYWYtdHMvdWktZGVjb3JhdG9ycy9ncmFwaFwiO1xuLyoqXG4gKiBNYW51YWwgdHJpZ2dlciDigJQgdXNlciBjbGlja3MgUnVuOyBpbnB1dCBmb3JtIGdlbmVyYXRlZCBmcm9tIGBpbnB1dFNjaGVtYWAuXG4gKi9cbmxldCBNYW51YWxUcmlnZ2VyTm9kZSA9IGNsYXNzIE1hbnVhbFRyaWdnZXJOb2RlIGV4dGVuZHMgTW9kZWwge1xufTtcbl9fZGVjb3JhdGUoW1xuICAgIHJlcXVpcmVkKCksXG4gICAgdWllbGVtZW50KFwidGV4dGFyZWFcIiwgeyBsYWJlbDogXCJUcmlnZ2VyIHBheWxvYWRcIiwgcGxhY2Vob2xkZXI6IFwiTWFudWFsIHRyaWdnZXIgcGF5bG9hZFwiIH0pLFxuICAgIG91dHB1dCh7IGhhbmRsZTogXCJwYXlsb2FkXCIgfSksXG4gICAgX19tZXRhZGF0YShcImRlc2lnbjp0eXBlXCIsIE9iamVjdClcbl0sIE1hbnVhbFRyaWdnZXJOb2RlLnByb3RvdHlwZSwgXCJwYXlsb2FkXCIsIHZvaWQgMCk7XG5NYW51YWxUcmlnZ2VyTm9kZSA9IF9fZGVjb3JhdGUoW1xuICAgIG5vZGUoXCJjb3JlLnRyaWdnZXIubWFudWFsXCIsIHtcbiAgICAgICAga2luZDogXCJjb3JlLnRyaWdnZXIubWFudWFsXCIsXG4gICAgICAgIGNhdGVnb3J5OiBcIlRyaWdnZXJcIixcbiAgICAgICAgY29sb3I6IFwiIzNiODJmNlwiLFxuICAgICAgICBpY29uOiBcInRpLWhhbmQtY2xpY2tcIixcbiAgICAgICAgd2lkdGg6IDk2LFxuICAgICAgICBoZWlnaHQ6IDk2LFxuICAgICAgICBsYWJlbHM6IFtcInRyaWdnZXJcIiwgXCJtYW51YWxcIiwgXCJlbnRyeXBvaW50XCJdLFxuICAgICAgICBtZXRhZGF0YToge1xuICAgICAgICAgICAgdGl0bGU6IFwiTWFudWFsIHRyaWdnZXJcIixcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBcIlN0YXJ0cyB0aGUgd29ya2Zsb3cgd2hlbiB0aGUgdXNlciBjbGlja3MgUnVuLiBUaGUgaW5wdXQgZm9ybSBpcyBnZW5lcmF0ZWQgZnJvbSB0aGUgdHJpZ2dlcidzIGlucHV0IHNjaGVtYS5cIixcbiAgICAgICAgICAgIHRyaWdnZXI6IHtcbiAgICAgICAgICAgICAgICB0eXBlOiBcIm1hbnVhbFwiLFxuICAgICAgICAgICAgICAgIGlucHV0U2NoZW1hOiB7fSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgfSksXG4gICAgbW9kZWwoKVxuXSwgTWFudWFsVHJpZ2dlck5vZGUpO1xuZXhwb3J0IHsgTWFudWFsVHJpZ2dlck5vZGUgfTtcbi8qKlxuICogV2ViaG9vayB0cmlnZ2VyIOKAlCBIVFRQIHJlcXVlc3QgcmVjZWl2ZWQ7IHBhdGgvbWV0aG9kL2F1dGgvcmVzcG9uc2VNb2RlIGNvbmZpZy5cbiAqL1xubGV0IFdlYmhvb2tUcmlnZ2VyTm9kZSA9IGNsYXNzIFdlYmhvb2tUcmlnZ2VyTm9kZSBleHRlbmRzIE1vZGVsIHtcbn07XG5fX2RlY29yYXRlKFtcbiAgICByZXF1aXJlZCgpLFxuICAgIHVpZWxlbWVudChcInRleHRhcmVhXCIsIHsgbGFiZWw6IFwiUmVxdWVzdCBwYXlsb2FkXCIsIHBsYWNlaG9sZGVyOiBcIldlYmhvb2sgcmVxdWVzdCBib2R5XCIgfSksXG4gICAgb3V0cHV0KHsgaGFuZGxlOiBcInBheWxvYWRcIiB9KSxcbiAgICBfX21ldGFkYXRhKFwiZGVzaWduOnR5cGVcIiwgT2JqZWN0KVxuXSwgV2ViaG9va1RyaWdnZXJOb2RlLnByb3RvdHlwZSwgXCJwYXlsb2FkXCIsIHZvaWQgMCk7XG5XZWJob29rVHJpZ2dlck5vZGUgPSBfX2RlY29yYXRlKFtcbiAgICBub2RlKFwiY29yZS50cmlnZ2VyLndlYmhvb2tcIiwge1xuICAgICAgICBraW5kOiBcImNvcmUudHJpZ2dlci53ZWJob29rXCIsXG4gICAgICAgIGNhdGVnb3J5OiBcIlRyaWdnZXJcIixcbiAgICAgICAgY29sb3I6IFwiIzBlYTVlOVwiLFxuICAgICAgICBpY29uOiBcInRpLXdlYmhvb2tcIixcbiAgICAgICAgd2lkdGg6IDk2LFxuICAgICAgICBoZWlnaHQ6IDk2LFxuICAgICAgICBsYWJlbHM6IFtcInRyaWdnZXJcIiwgXCJ3ZWJob29rXCIsIFwiaHR0cFwiXSxcbiAgICAgICAgbWV0YWRhdGE6IHtcbiAgICAgICAgICAgIHRpdGxlOiBcIldlYmhvb2sgdHJpZ2dlclwiLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246IFwiU3RhcnRzIHRoZSB3b3JrZmxvdyB3aGVuIGFuIEhUVFAgcmVxdWVzdCBpcyByZWNlaXZlZCBvbiB0aGUgY29uZmlndXJlZCBwYXRoIGFuZCBtZXRob2QuXCIsXG4gICAgICAgICAgICB0cmlnZ2VyOiB7XG4gICAgICAgICAgICAgICAgdHlwZTogXCJ3ZWJob29rXCIsXG4gICAgICAgICAgICAgICAgcGF0aDogXCIvd2ViaG9va1wiLFxuICAgICAgICAgICAgICAgIG1ldGhvZDogXCJQT1NUXCIsXG4gICAgICAgICAgICAgICAgYXV0aDogXCJub25lXCIsXG4gICAgICAgICAgICAgICAgcmVzcG9uc2VNb2RlOiBcIm9uUmVjZWl2ZWRcIixcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgfSksXG4gICAgbW9kZWwoKVxuXSwgV2ViaG9va1RyaWdnZXJOb2RlKTtcbmV4cG9ydCB7IFdlYmhvb2tUcmlnZ2VyTm9kZSB9O1xuLyoqXG4gKiBTY2hlZHVsZSB0cmlnZ2VyIOKAlCBjcm9uLWxpa2Ugc2NoZWR1bGU7IHRpbWV6b25lICsgcGF5bG9hZCBjb25maWcuXG4gKi9cbmxldCBTY2hlZHVsZVRyaWdnZXJOb2RlID0gY2xhc3MgU2NoZWR1bGVUcmlnZ2VyTm9kZSBleHRlbmRzIE1vZGVsIHtcbn07XG5fX2RlY29yYXRlKFtcbiAgICByZXF1aXJlZCgpLFxuICAgIHVpZWxlbWVudChcInRleHRhcmVhXCIsIHsgbGFiZWw6IFwiU2NoZWR1bGVkIHBheWxvYWRcIiwgcGxhY2Vob2xkZXI6IFwiUGF5bG9hZCBmb3IgdGhlIHNjaGVkdWxlZCBydW5cIiB9KSxcbiAgICBvdXRwdXQoeyBoYW5kbGU6IFwicGF5bG9hZFwiIH0pLFxuICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246dHlwZVwiLCBPYmplY3QpXG5dLCBTY2hlZHVsZVRyaWdnZXJOb2RlLnByb3RvdHlwZSwgXCJwYXlsb2FkXCIsIHZvaWQgMCk7XG5TY2hlZHVsZVRyaWdnZXJOb2RlID0gX19kZWNvcmF0ZShbXG4gICAgbm9kZShcImNvcmUudHJpZ2dlci5zY2hlZHVsZVwiLCB7XG4gICAgICAgIGtpbmQ6IFwiY29yZS50cmlnZ2VyLnNjaGVkdWxlXCIsXG4gICAgICAgIGNhdGVnb3J5OiBcIlRyaWdnZXJcIixcbiAgICAgICAgY29sb3I6IFwiIzYzNjZmMVwiLFxuICAgICAgICBpY29uOiBcInRpLWNhbGVuZGFyLXRpbWVcIixcbiAgICAgICAgd2lkdGg6IDk2LFxuICAgICAgICBoZWlnaHQ6IDk2LFxuICAgICAgICBsYWJlbHM6IFtcInRyaWdnZXJcIiwgXCJzY2hlZHVsZVwiLCBcImNyb25cIl0sXG4gICAgICAgIG1ldGFkYXRhOiB7XG4gICAgICAgICAgICB0aXRsZTogXCJTY2hlZHVsZSB0cmlnZ2VyXCIsXG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogXCJTdGFydHMgdGhlIHdvcmtmbG93IG9uIGEgY3Jvbi1saWtlIHNjaGVkdWxlIHdpdGggdGltZXpvbmUgc3VwcG9ydC5cIixcbiAgICAgICAgICAgIHRyaWdnZXI6IHtcbiAgICAgICAgICAgICAgICB0eXBlOiBcInNjaGVkdWxlXCIsXG4gICAgICAgICAgICAgICAgc2NoZWR1bGU6IFwiMCAqICogKiAqXCIsXG4gICAgICAgICAgICAgICAgdGltZXpvbmU6IFwiVVRDXCIsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgIH0pLFxuICAgIG1vZGVsKClcbl0sIFNjaGVkdWxlVHJpZ2dlck5vZGUpO1xuZXhwb3J0IHsgU2NoZWR1bGVUcmlnZ2VyTm9kZSB9O1xuLyoqXG4gKiBFdmVudCB0cmlnZ2VyIOKAlCBpbnRlcm5hbCBldmVudCBidXMgdG9waWMgc3Vic2NyaWJlci5cbiAqL1xubGV0IEV2ZW50VHJpZ2dlck5vZGUgPSBjbGFzcyBFdmVudFRyaWdnZXJOb2RlIGV4dGVuZHMgTW9kZWwge1xufTtcbl9fZGVjb3JhdGUoW1xuICAgIHJlcXVpcmVkKCksXG4gICAgdWllbGVtZW50KFwidGV4dGFyZWFcIiwgeyBsYWJlbDogXCJFdmVudCBwYXlsb2FkXCIsIHBsYWNlaG9sZGVyOiBcIkV2ZW50IGJ1cyBwYXlsb2FkXCIgfSksXG4gICAgb3V0cHV0KHsgaGFuZGxlOiBcInBheWxvYWRcIiB9KSxcbiAgICBfX21ldGFkYXRhKFwiZGVzaWduOnR5cGVcIiwgT2JqZWN0KVxuXSwgRXZlbnRUcmlnZ2VyTm9kZS5wcm90b3R5cGUsIFwicGF5bG9hZFwiLCB2b2lkIDApO1xuRXZlbnRUcmlnZ2VyTm9kZSA9IF9fZGVjb3JhdGUoW1xuICAgIG5vZGUoXCJjb3JlLnRyaWdnZXIuZXZlbnRcIiwge1xuICAgICAgICBraW5kOiBcImNvcmUudHJpZ2dlci5ldmVudFwiLFxuICAgICAgICBjYXRlZ29yeTogXCJUcmlnZ2VyXCIsXG4gICAgICAgIGNvbG9yOiBcIiM4YjVjZjZcIixcbiAgICAgICAgaWNvbjogXCJ0aS1icm9hZGNhc3RcIixcbiAgICAgICAgd2lkdGg6IDk2LFxuICAgICAgICBoZWlnaHQ6IDk2LFxuICAgICAgICBsYWJlbHM6IFtcInRyaWdnZXJcIiwgXCJldmVudFwiLCBcImJ1c1wiXSxcbiAgICAgICAgbWV0YWRhdGE6IHtcbiAgICAgICAgICAgIHRpdGxlOiBcIkV2ZW50IHRyaWdnZXJcIixcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBcIlN0YXJ0cyB0aGUgd29ya2Zsb3cgd2hlbiBhbiBldmVudCBpcyBwdWJsaXNoZWQgb24gdGhlIGNvbmZpZ3VyZWQgaW50ZXJuYWwgZXZlbnQgYnVzIHRvcGljLlwiLFxuICAgICAgICAgICAgdHJpZ2dlcjoge1xuICAgICAgICAgICAgICAgIHR5cGU6IFwiZXZlbnRcIixcbiAgICAgICAgICAgICAgICB0b3BpYzogXCJkZWZhdWx0XCIsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgIH0pLFxuICAgIG1vZGVsKClcbl0sIEV2ZW50VHJpZ2dlck5vZGUpO1xuZXhwb3J0IHsgRXZlbnRUcmlnZ2VyTm9kZSB9O1xuLyoqXG4gKiBGb3JtIHRyaWdnZXIg4oCUIGdlbmVyYXRlZCBwdWJsaWMvaW50ZXJuYWwgZm9ybTsgZmllbGQgZGVmaW5pdGlvbnMuXG4gKi9cbmxldCBGb3JtVHJpZ2dlck5vZGUgPSBjbGFzcyBGb3JtVHJpZ2dlck5vZGUgZXh0ZW5kcyBNb2RlbCB7XG59O1xuX19kZWNvcmF0ZShbXG4gICAgcmVxdWlyZWQoKSxcbiAgICB1aWVsZW1lbnQoXCJ0ZXh0YXJlYVwiLCB7IGxhYmVsOiBcIkZvcm0gc3VibWlzc2lvblwiLCBwbGFjZWhvbGRlcjogXCJGb3JtIHN1Ym1pc3Npb24gcGF5bG9hZFwiIH0pLFxuICAgIG91dHB1dCh7IGhhbmRsZTogXCJwYXlsb2FkXCIgfSksXG4gICAgX19tZXRhZGF0YShcImRlc2lnbjp0eXBlXCIsIE9iamVjdClcbl0sIEZvcm1UcmlnZ2VyTm9kZS5wcm90b3R5cGUsIFwicGF5bG9hZFwiLCB2b2lkIDApO1xuRm9ybVRyaWdnZXJOb2RlID0gX19kZWNvcmF0ZShbXG4gICAgbm9kZShcImNvcmUudHJpZ2dlci5mb3JtXCIsIHtcbiAgICAgICAga2luZDogXCJjb3JlLnRyaWdnZXIuZm9ybVwiLFxuICAgICAgICBjYXRlZ29yeTogXCJUcmlnZ2VyXCIsXG4gICAgICAgIGNvbG9yOiBcIiNlYzQ4OTlcIixcbiAgICAgICAgaWNvbjogXCJ0aS1mb3Jtc1wiLFxuICAgICAgICB3aWR0aDogOTYsXG4gICAgICAgIGhlaWdodDogOTYsXG4gICAgICAgIGxhYmVsczogW1widHJpZ2dlclwiLCBcImZvcm1cIiwgXCJwdWJsaWNcIl0sXG4gICAgICAgIG1ldGFkYXRhOiB7XG4gICAgICAgICAgICB0aXRsZTogXCJGb3JtIHRyaWdnZXJcIixcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBcIlN0YXJ0cyB0aGUgd29ya2Zsb3cgd2hlbiBhIGdlbmVyYXRlZCBmb3JtIGlzIHN1Ym1pdHRlZC4gRmllbGQgZGVmaW5pdGlvbnMgZHJpdmUgdGhlIGZvcm0gc2NoZW1hLlwiLFxuICAgICAgICAgICAgdHJpZ2dlcjoge1xuICAgICAgICAgICAgICAgIHR5cGU6IFwiZm9ybVwiLFxuICAgICAgICAgICAgICAgIGZpZWxkczogW10sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgIH0pLFxuICAgIG1vZGVsKClcbl0sIEZvcm1UcmlnZ2VyTm9kZSk7XG5leHBvcnQgeyBGb3JtVHJpZ2dlck5vZGUgfTtcbi8qKlxuICogQ2hhdCB0cmlnZ2VyIOKAlCBjaGF0IG1lc3NhZ2UgZW50cnlwb2ludDsgbWVzc2FnZS9zZXNzaW9uSWQvdXNlcklkIHNjaGVtYS5cbiAqL1xubGV0IENoYXRUcmlnZ2VyTm9kZSA9IGNsYXNzIENoYXRUcmlnZ2VyTm9kZSBleHRlbmRzIE1vZGVsIHtcbn07XG5fX2RlY29yYXRlKFtcbiAgICByZXF1aXJlZCgpLFxuICAgIHVpZWxlbWVudChcImlucHV0XCIsIHsgbGFiZWw6IFwiTWVzc2FnZVwiLCBwbGFjZWhvbGRlcjogXCJJbmNvbWluZyBjaGF0IG1lc3NhZ2VcIiB9KSxcbiAgICBvdXRwdXQoeyBoYW5kbGU6IFwibWVzc2FnZVwiIH0pLFxuICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246dHlwZVwiLCBTdHJpbmcpXG5dLCBDaGF0VHJpZ2dlck5vZGUucHJvdG90eXBlLCBcIm1lc3NhZ2VcIiwgdm9pZCAwKTtcbl9fZGVjb3JhdGUoW1xuICAgIHJlcXVpcmVkKCksXG4gICAgdWllbGVtZW50KFwiaW5wdXRcIiwgeyBsYWJlbDogXCJTZXNzaW9uIElEXCIsIHBsYWNlaG9sZGVyOiBcIkNoYXQgc2Vzc2lvbiBpZGVudGlmaWVyXCIgfSksXG4gICAgb3V0cHV0KHsgaGFuZGxlOiBcInNlc3Npb25JZFwiIH0pLFxuICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246dHlwZVwiLCBTdHJpbmcpXG5dLCBDaGF0VHJpZ2dlck5vZGUucHJvdG90eXBlLCBcInNlc3Npb25JZFwiLCB2b2lkIDApO1xuX19kZWNvcmF0ZShbXG4gICAgcmVxdWlyZWQoKSxcbiAgICB1aWVsZW1lbnQoXCJpbnB1dFwiLCB7IGxhYmVsOiBcIlVzZXIgSURcIiwgcGxhY2Vob2xkZXI6IFwiQ2hhdCB1c2VyIGlkZW50aWZpZXJcIiB9KSxcbiAgICBvdXRwdXQoeyBoYW5kbGU6IFwidXNlcklkXCIgfSksXG4gICAgX19tZXRhZGF0YShcImRlc2lnbjp0eXBlXCIsIFN0cmluZylcbl0sIENoYXRUcmlnZ2VyTm9kZS5wcm90b3R5cGUsIFwidXNlcklkXCIsIHZvaWQgMCk7XG5DaGF0VHJpZ2dlck5vZGUgPSBfX2RlY29yYXRlKFtcbiAgICBub2RlKFwiY29yZS50cmlnZ2VyLmNoYXRcIiwge1xuICAgICAgICBraW5kOiBcImNvcmUudHJpZ2dlci5jaGF0XCIsXG4gICAgICAgIGNhdGVnb3J5OiBcIlRyaWdnZXJcIixcbiAgICAgICAgY29sb3I6IFwiIzE0YjhhNlwiLFxuICAgICAgICBpY29uOiBcInRpLW1lc3NhZ2UtY2lyY2xlXCIsXG4gICAgICAgIHdpZHRoOiA5NixcbiAgICAgICAgaGVpZ2h0OiA5NixcbiAgICAgICAgbGFiZWxzOiBbXCJ0cmlnZ2VyXCIsIFwiY2hhdFwiLCBcImVudHJ5cG9pbnRcIl0sXG4gICAgICAgIG1ldGFkYXRhOiB7XG4gICAgICAgICAgICB0aXRsZTogXCJDaGF0IHRyaWdnZXJcIixcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBcIlN0YXJ0cyB0aGUgd29ya2Zsb3cgd2hlbiBhIGNoYXQgbWVzc2FnZSBpcyByZWNlaXZlZC4gRW1pdHMgbWVzc2FnZSwgc2Vzc2lvbklkLCBhbmQgdXNlcklkLlwiLFxuICAgICAgICAgICAgdHJpZ2dlcjoge1xuICAgICAgICAgICAgICAgIHR5cGU6IFwiY2hhdFwiLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICB9KSxcbiAgICBtb2RlbCgpXG5dLCBDaGF0VHJpZ2dlck5vZGUpO1xuZXhwb3J0IHsgQ2hhdFRyaWdnZXJOb2RlIH07XG4vKipcbiAqIEFsbCBidWlsdC1pbiB0cmlnZ2VyIG5vZGUgY29uc3RydWN0b3JzLlxuICovXG5leHBvcnQgY29uc3QgR1JBUEhfVFJJR0dFUl9OT0RFUyA9IFtcbiAgICBNYW51YWxUcmlnZ2VyTm9kZSxcbiAgICBXZWJob29rVHJpZ2dlck5vZGUsXG4gICAgU2NoZWR1bGVUcmlnZ2VyTm9kZSxcbiAgICBFdmVudFRyaWdnZXJOb2RlLFxuICAgIEZvcm1UcmlnZ2VyTm9kZSxcbiAgICBDaGF0VHJpZ2dlck5vZGUsXG5dO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pZEhKcFoyZGxjbk11YW5NaUxDSnpiM1Z5WTJWU2IyOTBJam9pSWl3aWMyOTFjbU5sY3lJNld5SXVMaTh1TGk4dUxpOHVMaTl6Y21NdlozSmhjR2d2Ym05a1pYTXZkSEpwWjJkbGNuTXVkSE1pWFN3aWJtRnRaWE1pT2x0ZExDSnRZWEJ3YVc1bmN5STZJanM3T3pzN096czdPMEZCUVVFN096czdPenM3T3p0SFFWTkhPMEZCUTBnc1QwRkJUeXhGUVVGRkxFdEJRVXNzUlVGQlJTeExRVUZMTEVWQlFVVXNVVUZCVVN4RlFVRkZMRTFCUVUwc1owTkJRV2RETEVOQlFVTTdRVUZEZUVVc1QwRkJUeXhGUVVGRkxGTkJRVk1zUlVGQlJTeE5RVUZOTEhsQ1FVRjVRaXhEUVVGRE8wRkJRM0JFTEU5QlFVOHNSVUZCUlN4SlFVRkpMRVZCUVVVc1RVRkJUU3hGUVVGRkxFMUJRVTBzSzBKQlFTdENMRU5CUVVNN1FVRkZOMFE3TzBkQlJVYzdRVUZ0UWtrc1NVRkJUU3hwUWtGQmFVSXNSMEZCZGtJc1RVRkJUU3hwUWtGQmEwSXNVMEZCVVN4TFFVRkxPME5CU3pORExFTkJRVUU3UVVGRVF6dEpRVWhETEZGQlFWRXNSVUZCUlR0SlFVTldMRk5CUVZNc1EwRkJReXhWUVVGVkxFVkJRVVVzUlVGQlJTeExRVUZMTEVWQlFVVXNhVUpCUVdsQ0xFVkJRVVVzVjBGQlZ5eEZRVUZGTEhkQ1FVRjNRaXhGUVVGRkxFTkJRVU03U1VGRE1VWXNUVUZCVFN4RFFVRkRMRVZCUVVVc1RVRkJUU3hGUVVGRkxGTkJRVk1zUlVGQlJTeERRVUZET3p0clJFRkRXanRCUVVwUUxHbENRVUZwUWp0SlFXeENOMElzU1VGQlNTeERRVUZETEhGQ1FVRnhRaXhGUVVGRk8xRkJRek5DTEVsQlFVa3NSVUZCUlN4eFFrRkJjVUk3VVVGRE0wSXNVVUZCVVN4RlFVRkZMRk5CUVZNN1VVRkRia0lzUzBGQlN5eEZRVUZGTEZOQlFWTTdVVUZEYUVJc1NVRkJTU3hGUVVGRkxHVkJRV1U3VVVGRGNrSXNTMEZCU3l4RlFVRkZMRVZCUVVVN1VVRkRWQ3hOUVVGTkxFVkJRVVVzUlVGQlJUdFJRVU5XTEUxQlFVMHNSVUZCUlN4RFFVRkRMRk5CUVZNc1JVRkJSU3hSUVVGUkxFVkJRVVVzV1VGQldTeERRVUZETzFGQlF6TkRMRkZCUVZFc1JVRkJSVHRaUVVOU0xFdEJRVXNzUlVGQlJTeG5Ra0ZCWjBJN1dVRkRka0lzVjBGQlZ5eEZRVUZGTERSSFFVRTBSenRaUVVONlNDeFBRVUZQTEVWQlFVVTdaMEpCUTFBc1NVRkJTU3hGUVVGRkxGRkJRVkU3WjBKQlEyUXNWMEZCVnl4RlFVRkZMRVZCUVVVN1lVRkRhRUk3VTBGRFJqdExRVU5HTEVOQlFVTTdTVUZEUkN4TFFVRkxMRVZCUVVVN1IwRkRTeXhwUWtGQmFVSXNRMEZMTjBJN08wRkJSVVE3TzBkQlJVYzdRVUZ6UWtrc1NVRkJUU3hyUWtGQmEwSXNSMEZCZUVJc1RVRkJUU3hyUWtGQmJVSXNVMEZCVVN4TFFVRkxPME5CU3pWRExFTkJRVUU3UVVGRVF6dEpRVWhETEZGQlFWRXNSVUZCUlR0SlFVTldMRk5CUVZNc1EwRkJReXhWUVVGVkxFVkJRVVVzUlVGQlJTeExRVUZMTEVWQlFVVXNhVUpCUVdsQ0xFVkJRVVVzVjBGQlZ5eEZRVUZGTEhOQ1FVRnpRaXhGUVVGRkxFTkJRVU03U1VGRGVFWXNUVUZCVFN4RFFVRkRMRVZCUVVVc1RVRkJUU3hGUVVGRkxGTkJRVk1zUlVGQlJTeERRVUZET3p0dFJFRkRXanRCUVVwUUxHdENRVUZyUWp0SlFYSkNPVUlzU1VGQlNTeERRVUZETEhOQ1FVRnpRaXhGUVVGRk8xRkJRelZDTEVsQlFVa3NSVUZCUlN4elFrRkJjMEk3VVVGRE5VSXNVVUZCVVN4RlFVRkZMRk5CUVZNN1VVRkRia0lzUzBGQlN5eEZRVUZGTEZOQlFWTTdVVUZEYUVJc1NVRkJTU3hGUVVGRkxGbEJRVms3VVVGRGJFSXNTMEZCU3l4RlFVRkZMRVZCUVVVN1VVRkRWQ3hOUVVGTkxFVkJRVVVzUlVGQlJUdFJRVU5XTEUxQlFVMHNSVUZCUlN4RFFVRkRMRk5CUVZNc1JVRkJSU3hUUVVGVExFVkJRVVVzVFVGQlRTeERRVUZETzFGQlEzUkRMRkZCUVZFc1JVRkJSVHRaUVVOU0xFdEJRVXNzUlVGQlJTeHBRa0ZCYVVJN1dVRkRlRUlzVjBGQlZ5eEZRVUZGTEhsR1FVRjVSanRaUVVOMFJ5eFBRVUZQTEVWQlFVVTdaMEpCUTFBc1NVRkJTU3hGUVVGRkxGTkJRVk03WjBKQlEyWXNTVUZCU1N4RlFVRkZMRlZCUVZVN1owSkJRMmhDTEUxQlFVMHNSVUZCUlN4TlFVRk5PMmRDUVVOa0xFbEJRVWtzUlVGQlJTeE5RVUZOTzJkQ1FVTmFMRmxCUVZrc1JVRkJSU3haUVVGWk8yRkJRek5DTzFOQlEwWTdTMEZEUml4RFFVRkRPMGxCUTBRc1MwRkJTeXhGUVVGRk8wZEJRMHNzYTBKQlFXdENMRU5CU3psQ096dEJRVVZFT3p0SFFVVkhPMEZCYjBKSkxFbEJRVTBzYlVKQlFXMUNMRWRCUVhwQ0xFMUJRVTBzYlVKQlFXOUNMRk5CUVZFc1MwRkJTenREUVVzM1F5eERRVUZCTzBGQlJFTTdTVUZJUXl4UlFVRlJMRVZCUVVVN1NVRkRWaXhUUVVGVExFTkJRVU1zVlVGQlZTeEZRVUZGTEVWQlFVVXNTMEZCU3l4RlFVRkZMRzFDUVVGdFFpeEZRVUZGTEZkQlFWY3NSVUZCUlN3clFrRkJLMElzUlVGQlJTeERRVUZETzBsQlEyNUhMRTFCUVUwc1EwRkJReXhGUVVGRkxFMUJRVTBzUlVGQlJTeFRRVUZUTEVWQlFVVXNRMEZCUXpzN2IwUkJRMW83UVVGS1VDeHRRa0ZCYlVJN1NVRnVRaTlDTEVsQlFVa3NRMEZCUXl4MVFrRkJkVUlzUlVGQlJUdFJRVU0zUWl4SlFVRkpMRVZCUVVVc2RVSkJRWFZDTzFGQlF6ZENMRkZCUVZFc1JVRkJSU3hUUVVGVE8xRkJRMjVDTEV0QlFVc3NSVUZCUlN4VFFVRlRPMUZCUTJoQ0xFbEJRVWtzUlVGQlJTeHJRa0ZCYTBJN1VVRkRlRUlzUzBGQlN5eEZRVUZGTEVWQlFVVTdVVUZEVkN4TlFVRk5MRVZCUVVVc1JVRkJSVHRSUVVOV0xFMUJRVTBzUlVGQlJTeERRVUZETEZOQlFWTXNSVUZCUlN4VlFVRlZMRVZCUVVVc1RVRkJUU3hEUVVGRE8xRkJRM1pETEZGQlFWRXNSVUZCUlR0WlFVTlNMRXRCUVVzc1JVRkJSU3hyUWtGQmEwSTdXVUZEZWtJc1YwRkJWeXhGUVVGRkxHOUZRVUZ2UlR0WlFVTnFSaXhQUVVGUExFVkJRVVU3WjBKQlExQXNTVUZCU1N4RlFVRkZMRlZCUVZVN1owSkJRMmhDTEZGQlFWRXNSVUZCUlN4WFFVRlhPMmRDUVVOeVFpeFJRVUZSTEVWQlFVVXNTMEZCU3p0aFFVTm9RanRUUVVOR08wdEJRMFlzUTBGQlF6dEpRVU5FTEV0QlFVc3NSVUZCUlR0SFFVTkxMRzFDUVVGdFFpeERRVXN2UWpzN1FVRkZSRHM3UjBGRlJ6dEJRVzFDU1N4SlFVRk5MR2RDUVVGblFpeEhRVUYwUWl4TlFVRk5MR2RDUVVGcFFpeFRRVUZSTEV0QlFVczdRMEZMTVVNc1EwRkJRVHRCUVVSRE8wbEJTRU1zVVVGQlVTeEZRVUZGTzBsQlExWXNVMEZCVXl4RFFVRkRMRlZCUVZVc1JVRkJSU3hGUVVGRkxFdEJRVXNzUlVGQlJTeGxRVUZsTEVWQlFVVXNWMEZCVnl4RlFVRkZMRzFDUVVGdFFpeEZRVUZGTEVOQlFVTTdTVUZEYmtZc1RVRkJUU3hEUVVGRExFVkJRVVVzVFVGQlRTeEZRVUZGTEZOQlFWTXNSVUZCUlN4RFFVRkRPenRwUkVGRFdqdEJRVXBRTEdkQ1FVRm5RanRKUVd4Q05VSXNTVUZCU1N4RFFVRkRMRzlDUVVGdlFpeEZRVUZGTzFGQlF6RkNMRWxCUVVrc1JVRkJSU3h2UWtGQmIwSTdVVUZETVVJc1VVRkJVU3hGUVVGRkxGTkJRVk03VVVGRGJrSXNTMEZCU3l4RlFVRkZMRk5CUVZNN1VVRkRhRUlzU1VGQlNTeEZRVUZGTEdOQlFXTTdVVUZEY0VJc1MwRkJTeXhGUVVGRkxFVkJRVVU3VVVGRFZDeE5RVUZOTEVWQlFVVXNSVUZCUlR0UlFVTldMRTFCUVUwc1JVRkJSU3hEUVVGRExGTkJRVk1zUlVGQlJTeFBRVUZQTEVWQlFVVXNTMEZCU3l4RFFVRkRPMUZCUTI1RExGRkJRVkVzUlVGQlJUdFpRVU5TTEV0QlFVc3NSVUZCUlN4bFFVRmxPMWxCUTNSQ0xGZEJRVmNzUlVGQlJTdzBSa0ZCTkVZN1dVRkRla2NzVDBGQlR5eEZRVUZGTzJkQ1FVTlFMRWxCUVVrc1JVRkJSU3hQUVVGUE8yZENRVU5pTEV0QlFVc3NSVUZCUlN4VFFVRlRPMkZCUTJwQ08xTkJRMFk3UzBGRFJpeERRVUZETzBsQlEwUXNTMEZCU3l4RlFVRkZPMGRCUTBzc1owSkJRV2RDTEVOQlN6VkNPenRCUVVWRU96dEhRVVZITzBGQmJVSkpMRWxCUVUwc1pVRkJaU3hIUVVGeVFpeE5RVUZOTEdWQlFXZENMRk5CUVZFc1MwRkJTenREUVV0NlF5eERRVUZCTzBGQlJFTTdTVUZJUXl4UlFVRlJMRVZCUVVVN1NVRkRWaXhUUVVGVExFTkJRVU1zVlVGQlZTeEZRVUZGTEVWQlFVVXNTMEZCU3l4RlFVRkZMR2xDUVVGcFFpeEZRVUZGTEZkQlFWY3NSVUZCUlN4NVFrRkJlVUlzUlVGQlJTeERRVUZETzBsQlF6TkdMRTFCUVUwc1EwRkJReXhGUVVGRkxFMUJRVTBzUlVGQlJTeFRRVUZUTEVWQlFVVXNRMEZCUXpzN1owUkJRMW83UVVGS1VDeGxRVUZsTzBsQmJFSXpRaXhKUVVGSkxFTkJRVU1zYlVKQlFXMUNMRVZCUVVVN1VVRkRla0lzU1VGQlNTeEZRVUZGTEcxQ1FVRnRRanRSUVVONlFpeFJRVUZSTEVWQlFVVXNVMEZCVXp0UlFVTnVRaXhMUVVGTExFVkJRVVVzVTBGQlV6dFJRVU5vUWl4SlFVRkpMRVZCUVVVc1ZVRkJWVHRSUVVOb1FpeExRVUZMTEVWQlFVVXNSVUZCUlR0UlFVTlVMRTFCUVUwc1JVRkJSU3hGUVVGRk8xRkJRMVlzVFVGQlRTeEZRVUZGTEVOQlFVTXNVMEZCVXl4RlFVRkZMRTFCUVUwc1JVRkJSU3hSUVVGUkxFTkJRVU03VVVGRGNrTXNVVUZCVVN4RlFVRkZPMWxCUTFJc1MwRkJTeXhGUVVGRkxHTkJRV003V1VGRGNrSXNWMEZCVnl4RlFVRkZMR3RIUVVGclJ6dFpRVU12Unl4UFFVRlBMRVZCUVVVN1owSkJRMUFzU1VGQlNTeEZRVUZGTEUxQlFVMDdaMEpCUTFvc1RVRkJUU3hGUVVGRkxFVkJRVVU3WVVGRFdEdFRRVU5HTzB0QlEwWXNRMEZCUXp0SlFVTkVMRXRCUVVzc1JVRkJSVHRIUVVOTExHVkJRV1VzUTBGTE0wSTdPMEZCUlVRN08wZEJSVWM3UVVGclFra3NTVUZCVFN4bFFVRmxMRWRCUVhKQ0xFMUJRVTBzWlVGQlowSXNVMEZCVVN4TFFVRkxPME5CWlhwRExFTkJRVUU3UVVGWVF6dEpRVWhETEZGQlFWRXNSVUZCUlR0SlFVTldMRk5CUVZNc1EwRkJReXhQUVVGUExFVkJRVVVzUlVGQlJTeExRVUZMTEVWQlFVVXNVMEZCVXl4RlFVRkZMRmRCUVZjc1JVRkJSU3gxUWtGQmRVSXNSVUZCUlN4RFFVRkRPMGxCUXpsRkxFMUJRVTBzUTBGQlF5eEZRVUZGTEUxQlFVMHNSVUZCUlN4VFFVRlRMRVZCUVVVc1EwRkJRenM3WjBSQlEySTdRVUZMYWtJN1NVRklReXhSUVVGUkxFVkJRVVU3U1VGRFZpeFRRVUZUTEVOQlFVTXNUMEZCVHl4RlFVRkZMRVZCUVVVc1MwRkJTeXhGUVVGRkxGbEJRVmtzUlVGQlJTeFhRVUZYTEVWQlFVVXNlVUpCUVhsQ0xFVkJRVVVzUTBGQlF6dEpRVU51Uml4TlFVRk5MRU5CUVVNc1JVRkJSU3hOUVVGTkxFVkJRVVVzVjBGQlZ5eEZRVUZGTEVOQlFVTTdPMnRFUVVOaU8wRkJTMjVDTzBsQlNFTXNVVUZCVVN4RlFVRkZPMGxCUTFZc1UwRkJVeXhEUVVGRExFOUJRVThzUlVGQlJTeEZRVUZGTEV0QlFVc3NSVUZCUlN4VFFVRlRMRVZCUVVVc1YwRkJWeXhGUVVGRkxITkNRVUZ6UWl4RlFVRkZMRU5CUVVNN1NVRkROMFVzVFVGQlRTeERRVUZETEVWQlFVVXNUVUZCVFN4RlFVRkZMRkZCUVZFc1JVRkJSU3hEUVVGRE96c3JRMEZEWWp0QlFXUk1MR1ZCUVdVN1NVRnFRak5DTEVsQlFVa3NRMEZCUXl4dFFrRkJiVUlzUlVGQlJUdFJRVU42UWl4SlFVRkpMRVZCUVVVc2JVSkJRVzFDTzFGQlEzcENMRkZCUVZFc1JVRkJSU3hUUVVGVE8xRkJRMjVDTEV0QlFVc3NSVUZCUlN4VFFVRlRPMUZCUTJoQ0xFbEJRVWtzUlVGQlJTeHRRa0ZCYlVJN1VVRkRla0lzUzBGQlN5eEZRVUZGTEVWQlFVVTdVVUZEVkN4TlFVRk5MRVZCUVVVc1JVRkJSVHRSUVVOV0xFMUJRVTBzUlVGQlJTeERRVUZETEZOQlFWTXNSVUZCUlN4TlFVRk5MRVZCUVVVc1dVRkJXU3hEUVVGRE8xRkJRM3BETEZGQlFWRXNSVUZCUlR0WlFVTlNMRXRCUVVzc1JVRkJSU3hqUVVGak8xbEJRM0pDTEZkQlFWY3NSVUZCUlN3MFJrRkJORVk3V1VGRGVrY3NUMEZCVHl4RlFVRkZPMmRDUVVOUUxFbEJRVWtzUlVGQlJTeE5RVUZOTzJGQlEySTdVMEZEUmp0TFFVTkdMRU5CUVVNN1NVRkRSQ3hMUVVGTExFVkJRVVU3UjBGRFN5eGxRVUZsTEVOQlpUTkNPenRCUVVWRU96dEhRVVZITzBGQlEwZ3NUVUZCVFN4RFFVRkRMRTFCUVUwc2JVSkJRVzFDTEVkQlFVYzdTVUZEYWtNc2FVSkJRV2xDTzBsQlEycENMR3RDUVVGclFqdEpRVU5zUWl4dFFrRkJiVUk3U1VGRGJrSXNaMEpCUVdkQ08wbEJRMmhDTEdWQlFXVTdTVUZEWml4bFFVRmxPME5CUTFBc1EwRkJReUlzSW5OdmRYSmpaWE5EYjI1MFpXNTBJanBiSWk4cUtseHVJQ29nUUcxdlpIVnNaU0JwYm5SbFozSmhkR2x2Ym5NdlozSmhjR2d2Ym05a1pYTXZkSEpwWjJkbGNuTmNiaUFxSUVCemRXMXRZWEo1SUZCeWIyUjFZM1JwYjI0Z2RISnBaMmRsY2lCdWIyUmxJR3RwYm1RZ1pHVmpiR0Z5WVhScGIyNXpJQ2hFUlVOQlJpMHpNaURDcHpJeUxqSXVNU2t1WEc0Z0tpQkFaR1Z6WTNKcGNIUnBiMjRnUTJGdWIyNXBZMkZzSUdCQWJtOWtaV0F0WkdWamIzSmhkR1ZrSUdOc1lYTnpaWE1nWm05eUlIUm9aU0J6YVhnZ1FVeEdVa1ZFTFRVZ2RISnBaMmRsY2x4dUlDb2dhMmx1WkhNdUlGUnlhV2RuWlhKeklHRnlaU0J0WlhSaFpHRjBZUzF2Ym14NUlHVnVkSEo1Y0c5cGJuUnpPaUIwYUdWNUlHUmxabWx1WlNCb2IzY2dZU0IzYjNKclpteHZkMXh1SUNvZ2MzUmhjblJ6SUdGdVpDQndjbTlrZFdObElHRWdkSEpwWjJkbGNpQndZWGxzYjJGa0lHOXVJSFJvWldseUlHQkFiM1YwY0hWMFlDQndiM0owY3k0Z1ZHaGxlU0JvWVhabElHNXZYRzRnS2lCZ1FHbHVjSFYwWUNCd2IzSjBjeUFvYm05MGFHbHVaeUJtWldWa2N5QmhJSFJ5YVdkblpYSXBJR0Z1WkNCdWJ5QmlkV2xzZEMxcGJpQmxlR1ZqZFhSdmNuTWc0b0NVSUhSb1pWeHVJQ29nWlc1bmFXNWxKM01nWlhobFkzVjBhVzl1SUcxdlpHVnNJSE4wWVhKMGN5Qm1jbTl0SUhkdmNtdG1iRzkzSUdsdWNIVjBjeUFvd3FjMUxqZ3BJR0Z1WkNCMGNtVmhkSE5jYmlBcUlIUnlhV2RuWlhJZ2JtOWtaWE1nWVhNZ2JXVjBZV1JoZEdFdGIyNXNlU0JsYm5SeWVYQnZhVzUwY3k1Y2JpQXFMMXh1YVcxd2IzSjBJSHNnVFc5a1pXd3NJRzF2WkdWc0xDQnlaWEYxYVhKbFpDQjlJR1p5YjIwZ1hDSkFaR1ZqWVdZdGRITXZaR1ZqYjNKaGRHOXlMWFpoYkdsa1lYUnBiMjVjSWp0Y2JtbHRjRzl5ZENCN0lIVnBaV3hsYldWdWRDQjlJR1p5YjIwZ1hDSkFaR1ZqWVdZdGRITXZkV2t0WkdWamIzSmhkRzl5YzF3aU8xeHVhVzF3YjNKMElIc2dibTlrWlN3Z2IzVjBjSFYwSUgwZ1puSnZiU0JjSWtCa1pXTmhaaTEwY3k5MWFTMWtaV052Y21GMGIzSnpMMmR5WVhCb1hDSTdYRzVjYmk4cUtseHVJQ29nVFdGdWRXRnNJSFJ5YVdkblpYSWc0b0NVSUhWelpYSWdZMnhwWTJ0eklGSjFianNnYVc1d2RYUWdabTl5YlNCblpXNWxjbUYwWldRZ1puSnZiU0JnYVc1d2RYUlRZMmhsYldGZ0xseHVJQ292WEc1QWJtOWtaU2hjSW1OdmNtVXVkSEpwWjJkbGNpNXRZVzUxWVd4Y0lpd2dlMXh1SUNCcmFXNWtPaUJjSW1OdmNtVXVkSEpwWjJkbGNpNXRZVzUxWVd4Y0lpeGNiaUFnWTJGMFpXZHZjbms2SUZ3aVZISnBaMmRsY2x3aUxGeHVJQ0JqYjJ4dmNqb2dYQ0lqTTJJNE1tWTJYQ0lzWEc0Z0lHbGpiMjQ2SUZ3aWRHa3RhR0Z1WkMxamJHbGphMXdpTEZ4dUlDQjNhV1IwYURvZ09UWXNYRzRnSUdobGFXZG9kRG9nT1RZc1hHNGdJR3hoWW1Wc2N6b2dXMXdpZEhKcFoyZGxjbHdpTENCY0ltMWhiblZoYkZ3aUxDQmNJbVZ1ZEhKNWNHOXBiblJjSWwwc1hHNGdJRzFsZEdGa1lYUmhPaUI3WEc0Z0lDQWdkR2wwYkdVNklGd2lUV0Z1ZFdGc0lIUnlhV2RuWlhKY0lpeGNiaUFnSUNCa1pYTmpjbWx3ZEdsdmJqb2dYQ0pUZEdGeWRITWdkR2hsSUhkdmNtdG1iRzkzSUhkb1pXNGdkR2hsSUhWelpYSWdZMnhwWTJ0eklGSjFiaTRnVkdobElHbHVjSFYwSUdadmNtMGdhWE1nWjJWdVpYSmhkR1ZrSUdaeWIyMGdkR2hsSUhSeWFXZG5aWEluY3lCcGJuQjFkQ0J6WTJobGJXRXVYQ0lzWEc0Z0lDQWdkSEpwWjJkbGNqb2dlMXh1SUNBZ0lDQWdkSGx3WlRvZ1hDSnRZVzUxWVd4Y0lpeGNiaUFnSUNBZ0lHbHVjSFYwVTJOb1pXMWhPaUI3ZlN4Y2JpQWdJQ0I5TEZ4dUlDQjlMRnh1ZlNsY2JrQnRiMlJsYkNncFhHNWxlSEJ2Y25RZ1kyeGhjM01nVFdGdWRXRnNWSEpwWjJkbGNrNXZaR1VnWlhoMFpXNWtjeUJOYjJSbGJDQjdYRzRnSUVCeVpYRjFhWEpsWkNncFhHNGdJRUIxYVdWc1pXMWxiblFvWENKMFpYaDBZWEpsWVZ3aUxDQjdJR3hoWW1Wc09pQmNJbFJ5YVdkblpYSWdjR0Y1Ykc5aFpGd2lMQ0J3YkdGalpXaHZiR1JsY2pvZ1hDSk5ZVzUxWVd3Z2RISnBaMmRsY2lCd1lYbHNiMkZrWENJZ2ZTbGNiaUFnUUc5MWRIQjFkQ2g3SUdoaGJtUnNaVG9nWENKd1lYbHNiMkZrWENJZ2ZTbGNiaUFnY0dGNWJHOWhaQ0U2SUhWdWEyNXZkMjQ3WEc1OVhHNWNiaThxS2x4dUlDb2dWMlZpYUc5dmF5QjBjbWxuWjJWeUlPS0FsQ0JJVkZSUUlISmxjWFZsYzNRZ2NtVmpaV2wyWldRN0lIQmhkR2d2YldWMGFHOWtMMkYxZEdndmNtVnpjRzl1YzJWTmIyUmxJR052Ym1acFp5NWNiaUFxTDF4dVFHNXZaR1VvWENKamIzSmxMblJ5YVdkblpYSXVkMlZpYUc5dmExd2lMQ0I3WEc0Z0lHdHBibVE2SUZ3aVkyOXlaUzUwY21sbloyVnlMbmRsWW1odmIydGNJaXhjYmlBZ1kyRjBaV2R2Y25rNklGd2lWSEpwWjJkbGNsd2lMRnh1SUNCamIyeHZjam9nWENJak1HVmhOV1U1WENJc1hHNGdJR2xqYjI0NklGd2lkR2t0ZDJWaWFHOXZhMXdpTEZ4dUlDQjNhV1IwYURvZ09UWXNYRzRnSUdobGFXZG9kRG9nT1RZc1hHNGdJR3hoWW1Wc2N6b2dXMXdpZEhKcFoyZGxjbHdpTENCY0luZGxZbWh2YjJ0Y0lpd2dYQ0pvZEhSd1hDSmRMRnh1SUNCdFpYUmhaR0YwWVRvZ2UxeHVJQ0FnSUhScGRHeGxPaUJjSWxkbFltaHZiMnNnZEhKcFoyZGxjbHdpTEZ4dUlDQWdJR1JsYzJOeWFYQjBhVzl1T2lCY0lsTjBZWEowY3lCMGFHVWdkMjl5YTJac2IzY2dkMmhsYmlCaGJpQklWRlJRSUhKbGNYVmxjM1FnYVhNZ2NtVmpaV2wyWldRZ2IyNGdkR2hsSUdOdmJtWnBaM1Z5WldRZ2NHRjBhQ0JoYm1RZ2JXVjBhRzlrTGx3aUxGeHVJQ0FnSUhSeWFXZG5aWEk2SUh0Y2JpQWdJQ0FnSUhSNWNHVTZJRndpZDJWaWFHOXZhMXdpTEZ4dUlDQWdJQ0FnY0dGMGFEb2dYQ0l2ZDJWaWFHOXZhMXdpTEZ4dUlDQWdJQ0FnYldWMGFHOWtPaUJjSWxCUFUxUmNJaXhjYmlBZ0lDQWdJR0YxZEdnNklGd2libTl1WlZ3aUxGeHVJQ0FnSUNBZ2NtVnpjRzl1YzJWTmIyUmxPaUJjSW05dVVtVmpaV2wyWldSY0lpeGNiaUFnSUNCOUxGeHVJQ0I5TEZ4dWZTbGNia0J0YjJSbGJDZ3BYRzVsZUhCdmNuUWdZMnhoYzNNZ1YyVmlhRzl2YTFSeWFXZG5aWEpPYjJSbElHVjRkR1Z1WkhNZ1RXOWtaV3dnZTF4dUlDQkFjbVZ4ZFdseVpXUW9LVnh1SUNCQWRXbGxiR1Z0Wlc1MEtGd2lkR1Y0ZEdGeVpXRmNJaXdnZXlCc1lXSmxiRG9nWENKU1pYRjFaWE4wSUhCaGVXeHZZV1JjSWl3Z2NHeGhZMlZvYjJ4a1pYSTZJRndpVjJWaWFHOXZheUJ5WlhGMVpYTjBJR0p2WkhsY0lpQjlLVnh1SUNCQWIzVjBjSFYwS0hzZ2FHRnVaR3hsT2lCY0luQmhlV3h2WVdSY0lpQjlLVnh1SUNCd1lYbHNiMkZrSVRvZ2RXNXJibTkzYmp0Y2JuMWNibHh1THlvcVhHNGdLaUJUWTJobFpIVnNaU0IwY21sbloyVnlJT0tBbENCamNtOXVMV3hwYTJVZ2MyTm9aV1IxYkdVN0lIUnBiV1Y2YjI1bElDc2djR0Y1Ykc5aFpDQmpiMjVtYVdjdVhHNGdLaTljYmtCdWIyUmxLRndpWTI5eVpTNTBjbWxuWjJWeUxuTmphR1ZrZFd4bFhDSXNJSHRjYmlBZ2EybHVaRG9nWENKamIzSmxMblJ5YVdkblpYSXVjMk5vWldSMWJHVmNJaXhjYmlBZ1kyRjBaV2R2Y25rNklGd2lWSEpwWjJkbGNsd2lMRnh1SUNCamIyeHZjam9nWENJak5qTTJObVl4WENJc1hHNGdJR2xqYjI0NklGd2lkR2t0WTJGc1pXNWtZWEl0ZEdsdFpWd2lMRnh1SUNCM2FXUjBhRG9nT1RZc1hHNGdJR2hsYVdkb2REb2dPVFlzWEc0Z0lHeGhZbVZzY3pvZ1cxd2lkSEpwWjJkbGNsd2lMQ0JjSW5OamFHVmtkV3hsWENJc0lGd2lZM0p2Ymx3aVhTeGNiaUFnYldWMFlXUmhkR0U2SUh0Y2JpQWdJQ0IwYVhSc1pUb2dYQ0pUWTJobFpIVnNaU0IwY21sbloyVnlYQ0lzWEc0Z0lDQWdaR1Z6WTNKcGNIUnBiMjQ2SUZ3aVUzUmhjblJ6SUhSb1pTQjNiM0pyWm14dmR5QnZiaUJoSUdOeWIyNHRiR2xyWlNCelkyaGxaSFZzWlNCM2FYUm9JSFJwYldWNmIyNWxJSE4xY0hCdmNuUXVYQ0lzWEc0Z0lDQWdkSEpwWjJkbGNqb2dlMXh1SUNBZ0lDQWdkSGx3WlRvZ1hDSnpZMmhsWkhWc1pWd2lMRnh1SUNBZ0lDQWdjMk5vWldSMWJHVTZJRndpTUNBcUlDb2dLaUFxWENJc1hHNGdJQ0FnSUNCMGFXMWxlbTl1WlRvZ1hDSlZWRU5jSWl4Y2JpQWdJQ0I5TEZ4dUlDQjlMRnh1ZlNsY2JrQnRiMlJsYkNncFhHNWxlSEJ2Y25RZ1kyeGhjM01nVTJOb1pXUjFiR1ZVY21sbloyVnlUbTlrWlNCbGVIUmxibVJ6SUUxdlpHVnNJSHRjYmlBZ1FISmxjWFZwY21Wa0tDbGNiaUFnUUhWcFpXeGxiV1Z1ZENoY0luUmxlSFJoY21WaFhDSXNJSHNnYkdGaVpXdzZJRndpVTJOb1pXUjFiR1ZrSUhCaGVXeHZZV1JjSWl3Z2NHeGhZMlZvYjJ4a1pYSTZJRndpVUdGNWJHOWhaQ0JtYjNJZ2RHaGxJSE5qYUdWa2RXeGxaQ0J5ZFc1Y0lpQjlLVnh1SUNCQWIzVjBjSFYwS0hzZ2FHRnVaR3hsT2lCY0luQmhlV3h2WVdSY0lpQjlLVnh1SUNCd1lYbHNiMkZrSVRvZ2RXNXJibTkzYmp0Y2JuMWNibHh1THlvcVhHNGdLaUJGZG1WdWRDQjBjbWxuWjJWeUlPS0FsQ0JwYm5SbGNtNWhiQ0JsZG1WdWRDQmlkWE1nZEc5d2FXTWdjM1ZpYzJOeWFXSmxjaTVjYmlBcUwxeHVRRzV2WkdVb1hDSmpiM0psTG5SeWFXZG5aWEl1WlhabGJuUmNJaXdnZTF4dUlDQnJhVzVrT2lCY0ltTnZjbVV1ZEhKcFoyZGxjaTVsZG1WdWRGd2lMRnh1SUNCallYUmxaMjl5ZVRvZ1hDSlVjbWxuWjJWeVhDSXNYRzRnSUdOdmJHOXlPaUJjSWlNNFlqVmpaalpjSWl4Y2JpQWdhV052YmpvZ1hDSjBhUzFpY205aFpHTmhjM1JjSWl4Y2JpQWdkMmxrZEdnNklEazJMRnh1SUNCb1pXbG5hSFE2SURrMkxGeHVJQ0JzWVdKbGJITTZJRnRjSW5SeWFXZG5aWEpjSWl3Z1hDSmxkbVZ1ZEZ3aUxDQmNJbUoxYzF3aVhTeGNiaUFnYldWMFlXUmhkR0U2SUh0Y2JpQWdJQ0IwYVhSc1pUb2dYQ0pGZG1WdWRDQjBjbWxuWjJWeVhDSXNYRzRnSUNBZ1pHVnpZM0pwY0hScGIyNDZJRndpVTNSaGNuUnpJSFJvWlNCM2IzSnJabXh2ZHlCM2FHVnVJR0Z1SUdWMlpXNTBJR2x6SUhCMVlteHBjMmhsWkNCdmJpQjBhR1VnWTI5dVptbG5kWEpsWkNCcGJuUmxjbTVoYkNCbGRtVnVkQ0JpZFhNZ2RHOXdhV011WENJc1hHNGdJQ0FnZEhKcFoyZGxjam9nZTF4dUlDQWdJQ0FnZEhsd1pUb2dYQ0psZG1WdWRGd2lMRnh1SUNBZ0lDQWdkRzl3YVdNNklGd2laR1ZtWVhWc2RGd2lMRnh1SUNBZ0lIMHNYRzRnSUgwc1hHNTlLVnh1UUcxdlpHVnNLQ2xjYm1WNGNHOXlkQ0JqYkdGemN5QkZkbVZ1ZEZSeWFXZG5aWEpPYjJSbElHVjRkR1Z1WkhNZ1RXOWtaV3dnZTF4dUlDQkFjbVZ4ZFdseVpXUW9LVnh1SUNCQWRXbGxiR1Z0Wlc1MEtGd2lkR1Y0ZEdGeVpXRmNJaXdnZXlCc1lXSmxiRG9nWENKRmRtVnVkQ0J3WVhsc2IyRmtYQ0lzSUhCc1lXTmxhRzlzWkdWeU9pQmNJa1YyWlc1MElHSjFjeUJ3WVhsc2IyRmtYQ0lnZlNsY2JpQWdRRzkxZEhCMWRDaDdJR2hoYm1Sc1pUb2dYQ0p3WVhsc2IyRmtYQ0lnZlNsY2JpQWdjR0Y1Ykc5aFpDRTZJSFZ1YTI1dmQyNDdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1JtOXliU0IwY21sbloyVnlJT0tBbENCblpXNWxjbUYwWldRZ2NIVmliR2xqTDJsdWRHVnlibUZzSUdadmNtMDdJR1pwWld4a0lHUmxabWx1YVhScGIyNXpMbHh1SUNvdlhHNUFibTlrWlNoY0ltTnZjbVV1ZEhKcFoyZGxjaTVtYjNKdFhDSXNJSHRjYmlBZ2EybHVaRG9nWENKamIzSmxMblJ5YVdkblpYSXVabTl5YlZ3aUxGeHVJQ0JqWVhSbFoyOXllVG9nWENKVWNtbG5aMlZ5WENJc1hHNGdJR052Ykc5eU9pQmNJaU5sWXpRNE9UbGNJaXhjYmlBZ2FXTnZiam9nWENKMGFTMW1iM0p0YzF3aUxGeHVJQ0IzYVdSMGFEb2dPVFlzWEc0Z0lHaGxhV2RvZERvZ09UWXNYRzRnSUd4aFltVnNjem9nVzF3aWRISnBaMmRsY2x3aUxDQmNJbVp2Y20xY0lpd2dYQ0p3ZFdKc2FXTmNJbDBzWEc0Z0lHMWxkR0ZrWVhSaE9pQjdYRzRnSUNBZ2RHbDBiR1U2SUZ3aVJtOXliU0IwY21sbloyVnlYQ0lzWEc0Z0lDQWdaR1Z6WTNKcGNIUnBiMjQ2SUZ3aVUzUmhjblJ6SUhSb1pTQjNiM0pyWm14dmR5QjNhR1Z1SUdFZ1oyVnVaWEpoZEdWa0lHWnZjbTBnYVhNZ2MzVmliV2wwZEdWa0xpQkdhV1ZzWkNCa1pXWnBibWwwYVc5dWN5QmtjbWwyWlNCMGFHVWdabTl5YlNCelkyaGxiV0V1WENJc1hHNGdJQ0FnZEhKcFoyZGxjam9nZTF4dUlDQWdJQ0FnZEhsd1pUb2dYQ0ptYjNKdFhDSXNYRzRnSUNBZ0lDQm1hV1ZzWkhNNklGdGRMRnh1SUNBZ0lIMHNYRzRnSUgwc1hHNTlLVnh1UUcxdlpHVnNLQ2xjYm1WNGNHOXlkQ0JqYkdGemN5QkdiM0p0VkhKcFoyZGxjazV2WkdVZ1pYaDBaVzVrY3lCTmIyUmxiQ0I3WEc0Z0lFQnlaWEYxYVhKbFpDZ3BYRzRnSUVCMWFXVnNaVzFsYm5Rb1hDSjBaWGgwWVhKbFlWd2lMQ0I3SUd4aFltVnNPaUJjSWtadmNtMGdjM1ZpYldsemMybHZibHdpTENCd2JHRmpaV2h2YkdSbGNqb2dYQ0pHYjNKdElITjFZbTFwYzNOcGIyNGdjR0Y1Ykc5aFpGd2lJSDBwWEc0Z0lFQnZkWFJ3ZFhRb2V5Qm9ZVzVrYkdVNklGd2ljR0Y1Ykc5aFpGd2lJSDBwWEc0Z0lIQmhlV3h2WVdRaE9pQjFibXR1YjNkdU8xeHVmVnh1WEc0dktpcGNiaUFxSUVOb1lYUWdkSEpwWjJkbGNpRGlnSlFnWTJoaGRDQnRaWE56WVdkbElHVnVkSEo1Y0c5cGJuUTdJRzFsYzNOaFoyVXZjMlZ6YzJsdmJrbGtMM1Z6WlhKSlpDQnpZMmhsYldFdVhHNGdLaTljYmtCdWIyUmxLRndpWTI5eVpTNTBjbWxuWjJWeUxtTm9ZWFJjSWl3Z2UxeHVJQ0JyYVc1a09pQmNJbU52Y21VdWRISnBaMmRsY2k1amFHRjBYQ0lzWEc0Z0lHTmhkR1ZuYjNKNU9pQmNJbFJ5YVdkblpYSmNJaXhjYmlBZ1kyOXNiM0k2SUZ3aUl6RTBZamhoTmx3aUxGeHVJQ0JwWTI5dU9pQmNJblJwTFcxbGMzTmhaMlV0WTJseVkyeGxYQ0lzWEc0Z0lIZHBaSFJvT2lBNU5peGNiaUFnYUdWcFoyaDBPaUE1Tml4Y2JpQWdiR0ZpWld4ek9pQmJYQ0owY21sbloyVnlYQ0lzSUZ3aVkyaGhkRndpTENCY0ltVnVkSEo1Y0c5cGJuUmNJbDBzWEc0Z0lHMWxkR0ZrWVhSaE9pQjdYRzRnSUNBZ2RHbDBiR1U2SUZ3aVEyaGhkQ0IwY21sbloyVnlYQ0lzWEc0Z0lDQWdaR1Z6WTNKcGNIUnBiMjQ2SUZ3aVUzUmhjblJ6SUhSb1pTQjNiM0pyWm14dmR5QjNhR1Z1SUdFZ1kyaGhkQ0J0WlhOellXZGxJR2x6SUhKbFkyVnBkbVZrTGlCRmJXbDBjeUJ0WlhOellXZGxMQ0J6WlhOemFXOXVTV1FzSUdGdVpDQjFjMlZ5U1dRdVhDSXNYRzRnSUNBZ2RISnBaMmRsY2pvZ2UxeHVJQ0FnSUNBZ2RIbHdaVG9nWENKamFHRjBYQ0lzWEc0Z0lDQWdmU3hjYmlBZ2ZTeGNibjBwWEc1QWJXOWtaV3dvS1Z4dVpYaHdiM0owSUdOc1lYTnpJRU5vWVhSVWNtbG5aMlZ5VG05a1pTQmxlSFJsYm1SeklFMXZaR1ZzSUh0Y2JpQWdRSEpsY1hWcGNtVmtLQ2xjYmlBZ1FIVnBaV3hsYldWdWRDaGNJbWx1Y0hWMFhDSXNJSHNnYkdGaVpXdzZJRndpVFdWemMyRm5aVndpTENCd2JHRmpaV2h2YkdSbGNqb2dYQ0pKYm1OdmJXbHVaeUJqYUdGMElHMWxjM05oWjJWY0lpQjlLVnh1SUNCQWIzVjBjSFYwS0hzZ2FHRnVaR3hsT2lCY0ltMWxjM05oWjJWY0lpQjlLVnh1SUNCdFpYTnpZV2RsSVRvZ2MzUnlhVzVuTzF4dVhHNGdJRUJ5WlhGMWFYSmxaQ2dwWEc0Z0lFQjFhV1ZzWlcxbGJuUW9YQ0pwYm5CMWRGd2lMQ0I3SUd4aFltVnNPaUJjSWxObGMzTnBiMjRnU1VSY0lpd2djR3hoWTJWb2IyeGtaWEk2SUZ3aVEyaGhkQ0J6WlhOemFXOXVJR2xrWlc1MGFXWnBaWEpjSWlCOUtWeHVJQ0JBYjNWMGNIVjBLSHNnYUdGdVpHeGxPaUJjSW5ObGMzTnBiMjVKWkZ3aUlIMHBYRzRnSUhObGMzTnBiMjVKWkNFNklITjBjbWx1Wnp0Y2JseHVJQ0JBY21WeGRXbHlaV1FvS1Z4dUlDQkFkV2xsYkdWdFpXNTBLRndpYVc1d2RYUmNJaXdnZXlCc1lXSmxiRG9nWENKVmMyVnlJRWxFWENJc0lIQnNZV05sYUc5c1pHVnlPaUJjSWtOb1lYUWdkWE5sY2lCcFpHVnVkR2xtYVdWeVhDSWdmU2xjYmlBZ1FHOTFkSEIxZENoN0lHaGhibVJzWlRvZ1hDSjFjMlZ5U1dSY0lpQjlLVnh1SUNCMWMyVnlTV1FoT2lCemRISnBibWM3WEc1OVhHNWNiaThxS2x4dUlDb2dRV3hzSUdKMWFXeDBMV2x1SUhSeWFXZG5aWElnYm05a1pTQmpiMjV6ZEhKMVkzUnZjbk11WEc0Z0tpOWNibVY0Y0c5eWRDQmpiMjV6ZENCSFVrRlFTRjlVVWtsSFIwVlNYMDVQUkVWVElEMGdXMXh1SUNCTllXNTFZV3hVY21sbloyVnlUbTlrWlN4Y2JpQWdWMlZpYUc5dmExUnlhV2RuWlhKT2IyUmxMRnh1SUNCVFkyaGxaSFZzWlZSeWFXZG5aWEpPYjJSbExGeHVJQ0JGZG1WdWRGUnlhV2RuWlhKT2IyUmxMRnh1SUNCR2IzSnRWSEpwWjJkbGNrNXZaR1VzWEc0Z0lFTm9ZWFJVY21sbloyVnlUbTlrWlN4Y2JsMGdZWE1nWTI5dWMzUTdYRzRpWFgwPSJdfQ==
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GraphPinningDependencyResolver = void 0;
4
- const GraphTopology_js_1 = require("./../planning/GraphTopology.cjs");
5
- /**
6
- * Resolves the upstream dependency subtree of a node for pinning operations.
7
- */
8
- class GraphPinningDependencyResolver {
9
- /**
10
- * Returns the set of upstream node ids that the given node depends on,
11
- * excluding the workflow boundary.
12
- */
13
- getDependencies(plan, nodeId) {
14
- return GraphTopology_js_1.GraphTopology.upstreamNodes(nodeId, plan.incomingByNode, false);
15
- }
16
- /**
17
- * Returns the full set of node ids to pin: the node itself plus all its
18
- * upstream dependencies.
19
- */
20
- getPinSet(plan, nodeId) {
21
- const deps = this.getDependencies(plan, nodeId);
22
- deps.add(nodeId);
23
- return deps;
24
- }
25
- }
26
- exports.GraphPinningDependencyResolver = GraphPinningDependencyResolver;
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhQaW5uaW5nRGVwZW5kZW5jeVJlc29sdmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2dyYXBoL3Bpbm5pbmcvR3JhcGhQaW5uaW5nRGVwZW5kZW5jeVJlc29sdmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLE9BQU8sRUFBRSxhQUFhLEVBQUUsdUNBQWtDO0FBRTFEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLDhCQUE4QjtJQUN6Qzs7O09BR0c7SUFDSCxlQUFlLENBQUMsSUFBd0IsRUFBRSxNQUFjO1FBQ3RELE9BQU8sYUFBYSxDQUFDLGFBQWEsQ0FDaEMsTUFBTSxFQUNOLElBQUksQ0FBQyxjQUFjLEVBQ25CLEtBQUssQ0FDTixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7T0FHRztJQUNILFNBQVMsQ0FBQyxJQUF3QixFQUFFLE1BQWM7UUFDaEQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDaEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNqQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG1vZHVsZSBpbnRlZ3JhdGlvbnMvZ3JhcGgvcGlubmluZy9HcmFwaFBpbm5pbmdEZXBlbmRlbmN5UmVzb2x2ZXJcbiAqIEBzdW1tYXJ5IFJlc29sdmVzIHVwc3RyZWFtIGRlcGVuZGVuY3kgc3VidHJlZXMgZm9yIHBpbm5pbmcuXG4gKiBAZGVzY3JpcHRpb24gV2hlbiBhIG5vZGUgaXMgcGlubmVkLCBhbGwgdXBzdHJlYW0gbm9kZXMgaXQgZGVwZW5kcyBvbiBtdXN0IGFsc28gYmUgcGlubmVkLiBUaGlzIHJlc29sdmVyIGNvbXB1dGVzIHRoZSBkZXBlbmRlbmN5IHNldC5cbiAqL1xuaW1wb3J0IHR5cGUgeyBHcmFwaEV4ZWN1dGlvblBsYW4gfSBmcm9tIFwiLi4vcGxhbm5pbmcvR3JhcGhFeGVjdXRpb25QbGFuXCI7XG5pbXBvcnQgeyBHcmFwaFRvcG9sb2d5IH0gZnJvbSBcIi4uL3BsYW5uaW5nL0dyYXBoVG9wb2xvZ3lcIjtcblxuLyoqXG4gKiBSZXNvbHZlcyB0aGUgdXBzdHJlYW0gZGVwZW5kZW5jeSBzdWJ0cmVlIG9mIGEgbm9kZSBmb3IgcGlubmluZyBvcGVyYXRpb25zLlxuICovXG5leHBvcnQgY2xhc3MgR3JhcGhQaW5uaW5nRGVwZW5kZW5jeVJlc29sdmVyIHtcbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHNldCBvZiB1cHN0cmVhbSBub2RlIGlkcyB0aGF0IHRoZSBnaXZlbiBub2RlIGRlcGVuZHMgb24sXG4gICAqIGV4Y2x1ZGluZyB0aGUgd29ya2Zsb3cgYm91bmRhcnkuXG4gICAqL1xuICBnZXREZXBlbmRlbmNpZXMocGxhbjogR3JhcGhFeGVjdXRpb25QbGFuLCBub2RlSWQ6IHN0cmluZyk6IFNldDxzdHJpbmc+IHtcbiAgICByZXR1cm4gR3JhcGhUb3BvbG9neS51cHN0cmVhbU5vZGVzKFxuICAgICAgbm9kZUlkLFxuICAgICAgcGxhbi5pbmNvbWluZ0J5Tm9kZSxcbiAgICAgIGZhbHNlXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBmdWxsIHNldCBvZiBub2RlIGlkcyB0byBwaW46IHRoZSBub2RlIGl0c2VsZiBwbHVzIGFsbCBpdHNcbiAgICogdXBzdHJlYW0gZGVwZW5kZW5jaWVzLlxuICAgKi9cbiAgZ2V0UGluU2V0KHBsYW46IEdyYXBoRXhlY3V0aW9uUGxhbiwgbm9kZUlkOiBzdHJpbmcpOiBTZXQ8c3RyaW5nPiB7XG4gICAgY29uc3QgZGVwcyA9IHRoaXMuZ2V0RGVwZW5kZW5jaWVzKHBsYW4sIG5vZGVJZCk7XG4gICAgZGVwcy5hZGQobm9kZUlkKTtcbiAgICByZXR1cm4gZGVwcztcbiAgfVxufVxuIl19
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhQaW5uaW5nRGVwZW5kZW5jeVJlc29sdmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiR3JhcGhQaW5uaW5nRGVwZW5kZW5jeVJlc29sdmVyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUErRDtBQUMvRDs7R0FFRztBQUNILE1BQWEsOEJBQThCO0lBQ3ZDOzs7T0FHRztJQUNILGVBQWUsQ0FBQyxJQUFJLEVBQUUsTUFBTTtRQUN4QixPQUFPLGdDQUFhLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFDRDs7O09BR0c7SUFDSCxTQUFTLENBQUMsSUFBSSxFQUFFLE1BQU07UUFDbEIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDaEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNqQixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0NBQ0o7QUFqQkQsd0VBaUJDO0FBQ0QsMDBFQUEwMEUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHcmFwaFRvcG9sb2d5IH0gZnJvbSBcIi4vLi4vcGxhbm5pbmcvR3JhcGhUb3BvbG9neS5qc1wiO1xuLyoqXG4gKiBSZXNvbHZlcyB0aGUgdXBzdHJlYW0gZGVwZW5kZW5jeSBzdWJ0cmVlIG9mIGEgbm9kZSBmb3IgcGlubmluZyBvcGVyYXRpb25zLlxuICovXG5leHBvcnQgY2xhc3MgR3JhcGhQaW5uaW5nRGVwZW5kZW5jeVJlc29sdmVyIHtcbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBzZXQgb2YgdXBzdHJlYW0gbm9kZSBpZHMgdGhhdCB0aGUgZ2l2ZW4gbm9kZSBkZXBlbmRzIG9uLFxuICAgICAqIGV4Y2x1ZGluZyB0aGUgd29ya2Zsb3cgYm91bmRhcnkuXG4gICAgICovXG4gICAgZ2V0RGVwZW5kZW5jaWVzKHBsYW4sIG5vZGVJZCkge1xuICAgICAgICByZXR1cm4gR3JhcGhUb3BvbG9neS51cHN0cmVhbU5vZGVzKG5vZGVJZCwgcGxhbi5pbmNvbWluZ0J5Tm9kZSwgZmFsc2UpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBmdWxsIHNldCBvZiBub2RlIGlkcyB0byBwaW46IHRoZSBub2RlIGl0c2VsZiBwbHVzIGFsbCBpdHNcbiAgICAgKiB1cHN0cmVhbSBkZXBlbmRlbmNpZXMuXG4gICAgICovXG4gICAgZ2V0UGluU2V0KHBsYW4sIG5vZGVJZCkge1xuICAgICAgICBjb25zdCBkZXBzID0gdGhpcy5nZXREZXBlbmRlbmNpZXMocGxhbiwgbm9kZUlkKTtcbiAgICAgICAgZGVwcy5hZGQobm9kZUlkKTtcbiAgICAgICAgcmV0dXJuIGRlcHM7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pUjNKaGNHaFFhVzV1YVc1blJHVndaVzVrWlc1amVWSmxjMjlzZG1WeUxtcHpJaXdpYzI5MWNtTmxVbTl2ZENJNklpSXNJbk52ZFhKalpYTWlPbHNpTGk0dkxpNHZMaTR2TGk0dmMzSmpMMmR5WVhCb0wzQnBibTVwYm1jdlIzSmhjR2hRYVc1dWFXNW5SR1Z3Wlc1a1pXNWplVkpsYzI5c2RtVnlMblJ6SWwwc0ltNWhiV1Z6SWpwYlhTd2liV0Z3Y0dsdVozTWlPaUpCUVUxQkxFOUJRVThzUlVGQlJTeGhRVUZoTEVWQlFVVXNkVU5CUVd0RE8wRkJSVEZFT3p0SFFVVkhPMEZCUTBnc1RVRkJUU3hQUVVGUExEaENRVUU0UWp0SlFVTjZRenM3TzA5QlIwYzdTVUZEU0N4bFFVRmxMRU5CUVVNc1NVRkJkMElzUlVGQlJTeE5RVUZqTzFGQlEzUkVMRTlCUVU4c1lVRkJZU3hEUVVGRExHRkJRV0VzUTBGRGFFTXNUVUZCVFN4RlFVTk9MRWxCUVVrc1EwRkJReXhqUVVGakxFVkJRMjVDTEV0QlFVc3NRMEZEVGl4RFFVRkRPMGxCUTBvc1EwRkJRenRKUVVWRU96czdUMEZIUnp0SlFVTklMRk5CUVZNc1EwRkJReXhKUVVGM1FpeEZRVUZGTEUxQlFXTTdVVUZEYUVRc1RVRkJUU3hKUVVGSkxFZEJRVWNzU1VGQlNTeERRVUZETEdWQlFXVXNRMEZCUXl4SlFVRkpMRVZCUVVVc1RVRkJUU3hEUVVGRExFTkJRVU03VVVGRGFFUXNTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF6dFJRVU5xUWl4UFFVRlBMRWxCUVVrc1EwRkJRenRKUVVOa0xFTkJRVU03UTBGRFJpSXNJbk52ZFhKalpYTkRiMjUwWlc1MElqcGJJaThxS2x4dUlDb2dRRzF2WkhWc1pTQnBiblJsWjNKaGRHbHZibk12WjNKaGNHZ3ZjR2x1Ym1sdVp5OUhjbUZ3YUZCcGJtNXBibWRFWlhCbGJtUmxibU41VW1WemIyeDJaWEpjYmlBcUlFQnpkVzF0WVhKNUlGSmxjMjlzZG1WeklIVndjM1J5WldGdElHUmxjR1Z1WkdWdVkza2djM1ZpZEhKbFpYTWdabTl5SUhCcGJtNXBibWN1WEc0Z0tpQkFaR1Z6WTNKcGNIUnBiMjRnVjJobGJpQmhJRzV2WkdVZ2FYTWdjR2x1Ym1Wa0xDQmhiR3dnZFhCemRISmxZVzBnYm05a1pYTWdhWFFnWkdWd1pXNWtjeUJ2YmlCdGRYTjBJR0ZzYzI4Z1ltVWdjR2x1Ym1Wa0xpQlVhR2x6SUhKbGMyOXNkbVZ5SUdOdmJYQjFkR1Z6SUhSb1pTQmtaWEJsYm1SbGJtTjVJSE5sZEM1Y2JpQXFMMXh1YVcxd2IzSjBJSFI1Y0dVZ2V5QkhjbUZ3YUVWNFpXTjFkR2x2YmxCc1lXNGdmU0JtY205dElGd2lMaTR2Y0d4aGJtNXBibWN2UjNKaGNHaEZlR1ZqZFhScGIyNVFiR0Z1WENJN1hHNXBiWEJ2Y25RZ2V5QkhjbUZ3YUZSdmNHOXNiMmQ1SUgwZ1puSnZiU0JjSWk0dUwzQnNZVzV1YVc1bkwwZHlZWEJvVkc5d2IyeHZaM2xjSWp0Y2JseHVMeW9xWEc0Z0tpQlNaWE52YkhabGN5QjBhR1VnZFhCemRISmxZVzBnWkdWd1pXNWtaVzVqZVNCemRXSjBjbVZsSUc5bUlHRWdibTlrWlNCbWIzSWdjR2x1Ym1sdVp5QnZjR1Z5WVhScGIyNXpMbHh1SUNvdlhHNWxlSEJ2Y25RZ1kyeGhjM01nUjNKaGNHaFFhVzV1YVc1blJHVndaVzVrWlc1amVWSmxjMjlzZG1WeUlIdGNiaUFnTHlvcVhHNGdJQ0FxSUZKbGRIVnlibk1nZEdobElITmxkQ0J2WmlCMWNITjBjbVZoYlNCdWIyUmxJR2xrY3lCMGFHRjBJSFJvWlNCbmFYWmxiaUJ1YjJSbElHUmxjR1Z1WkhNZ2IyNHNYRzRnSUNBcUlHVjRZMngxWkdsdVp5QjBhR1VnZDI5eWEyWnNiM2NnWW05MWJtUmhjbmt1WEc0Z0lDQXFMMXh1SUNCblpYUkVaWEJsYm1SbGJtTnBaWE1vY0d4aGJqb2dSM0poY0doRmVHVmpkWFJwYjI1UWJHRnVMQ0J1YjJSbFNXUTZJSE4wY21sdVp5azZJRk5sZER4emRISnBibWMrSUh0Y2JpQWdJQ0J5WlhSMWNtNGdSM0poY0doVWIzQnZiRzluZVM1MWNITjBjbVZoYlU1dlpHVnpLRnh1SUNBZ0lDQWdibTlrWlVsa0xGeHVJQ0FnSUNBZ2NHeGhiaTVwYm1OdmJXbHVaMEo1VG05a1pTeGNiaUFnSUNBZ0lHWmhiSE5sWEc0Z0lDQWdLVHRjYmlBZ2ZWeHVYRzRnSUM4cUtseHVJQ0FnS2lCU1pYUjFjbTV6SUhSb1pTQm1kV3hzSUhObGRDQnZaaUJ1YjJSbElHbGtjeUIwYnlCd2FXNDZJSFJvWlNCdWIyUmxJR2wwYzJWc1ppQndiSFZ6SUdGc2JDQnBkSE5jYmlBZ0lDb2dkWEJ6ZEhKbFlXMGdaR1Z3Wlc1a1pXNWphV1Z6TGx4dUlDQWdLaTljYmlBZ1oyVjBVR2x1VTJWMEtIQnNZVzQ2SUVkeVlYQm9SWGhsWTNWMGFXOXVVR3hoYml3Z2JtOWtaVWxrT2lCemRISnBibWNwT2lCVFpYUThjM1J5YVc1blBpQjdYRzRnSUNBZ1kyOXVjM1FnWkdWd2N5QTlJSFJvYVhNdVoyVjBSR1Z3Wlc1a1pXNWphV1Z6S0hCc1lXNHNJRzV2WkdWSlpDazdYRzRnSUNBZ1pHVndjeTVoWkdRb2JtOWtaVWxrS1R0Y2JpQWdJQ0J5WlhSMWNtNGdaR1Z3Y3p0Y2JpQWdmVnh1ZlZ4dUlsMTkiXX0=
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEFAULT_PINNING_METADATA = void 0;
4
- exports.isPinnable = isPinnable;
5
- /**
6
- * Default pinning metadata applied when `@pinnable()` is used without options.
7
- */
8
- exports.DEFAULT_PINNING_METADATA = {
9
- enabled: true,
10
- strategy: "manual",
11
- includeDependencies: true,
12
- };
13
- /**
14
- * Returns `true` when the given metadata allows pinning.
15
- */
16
- function isPinnable(metadata) {
17
- return metadata?.enabled === true && metadata.strategy !== "disabled";
18
- }
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhQaW5uaW5nTWV0YWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZ3JhcGgvcGlubmluZy9HcmFwaFBpbm5pbmdNZXRhZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUF5QjtJQUM1RCxPQUFPLEVBQUUsSUFBSTtJQUNiLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLG1CQUFtQixFQUFFLElBQUk7Q0FDMUIsQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBTSxVQUFVLFVBQVUsQ0FBQyxRQUEwQztJQUNuRSxPQUFPLFFBQVEsRUFBRSxPQUFPLEtBQUssSUFBSSxJQUFJLFFBQVEsQ0FBQyxRQUFRLEtBQUssVUFBVSxDQUFDO0FBQ3hFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgaW50ZWdyYXRpb25zL2dyYXBoL3Bpbm5pbmcvR3JhcGhQaW5uaW5nTWV0YWRhdGFcbiAqIEBzdW1tYXJ5IFBpbm5pbmcgbWV0YWRhdGEgZGVmYXVsdHMgYW5kIGhlbHBlcnMuXG4gKiBAZGVzY3JpcHRpb24gUHJvdmlkZXMgZGVmYXVsdCBwaW5uaW5nIG1ldGFkYXRhIHZhbHVlcyBhbmQgYSBoZWxwZXIgdG8gY2hlY2sgcGlubmFiaWxpdHkuIFRoZSBgR3JhcGhQaW5uaW5nTWV0YWRhdGFgIHR5cGUgaXRzZWxmIGlzIGRlZmluZWQgaW4gYC4uL3R5cGVzYCBhbmQgcmUtZXhwb3J0ZWQgZnJvbSB0aGUgcGFja2FnZSByb290LlxuICovXG5pbXBvcnQgdHlwZSB7IEdyYXBoUGlubmluZ01ldGFkYXRhIH0gZnJvbSBcIi4uL3R5cGVzXCI7XG5cbi8qKlxuICogRGVmYXVsdCBwaW5uaW5nIG1ldGFkYXRhIGFwcGxpZWQgd2hlbiBgQHBpbm5hYmxlKClgIGlzIHVzZWQgd2l0aG91dCBvcHRpb25zLlxuICovXG5leHBvcnQgY29uc3QgREVGQVVMVF9QSU5OSU5HX01FVEFEQVRBOiBHcmFwaFBpbm5pbmdNZXRhZGF0YSA9IHtcbiAgZW5hYmxlZDogdHJ1ZSxcbiAgc3RyYXRlZ3k6IFwibWFudWFsXCIsXG4gIGluY2x1ZGVEZXBlbmRlbmNpZXM6IHRydWUsXG59O1xuXG4vKipcbiAqIFJldHVybnMgYHRydWVgIHdoZW4gdGhlIGdpdmVuIG1ldGFkYXRhIGFsbG93cyBwaW5uaW5nLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNQaW5uYWJsZShtZXRhZGF0YTogR3JhcGhQaW5uaW5nTWV0YWRhdGEgfCB1bmRlZmluZWQpOiBib29sZWFuIHtcbiAgcmV0dXJuIG1ldGFkYXRhPy5lbmFibGVkID09PSB0cnVlICYmIG1ldGFkYXRhLnN0cmF0ZWd5ICE9PSBcImRpc2FibGVkXCI7XG59XG4iXX0=
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhQaW5uaW5nTWV0YWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJHcmFwaFBpbm5pbmdNZXRhZGF0YS5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFXQSxnQ0FFQztBQWJEOztHQUVHO0FBQ1UsUUFBQSx3QkFBd0IsR0FBRztJQUNwQyxPQUFPLEVBQUUsSUFBSTtJQUNiLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLG1CQUFtQixFQUFFLElBQUk7Q0FDNUIsQ0FBQztBQUNGOztHQUVHO0FBQ0gsU0FBZ0IsVUFBVSxDQUFDLFFBQVE7SUFDL0IsT0FBTyxRQUFRLEVBQUUsT0FBTyxLQUFLLElBQUksSUFBSSxRQUFRLENBQUMsUUFBUSxLQUFLLFVBQVUsQ0FBQztBQUMxRSxDQUFDO0FBQ0Qsc3NEQUFzc0QiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIERlZmF1bHQgcGlubmluZyBtZXRhZGF0YSBhcHBsaWVkIHdoZW4gYEBwaW5uYWJsZSgpYCBpcyB1c2VkIHdpdGhvdXQgb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfUElOTklOR19NRVRBREFUQSA9IHtcbiAgICBlbmFibGVkOiB0cnVlLFxuICAgIHN0cmF0ZWd5OiBcIm1hbnVhbFwiLFxuICAgIGluY2x1ZGVEZXBlbmRlbmNpZXM6IHRydWUsXG59O1xuLyoqXG4gKiBSZXR1cm5zIGB0cnVlYCB3aGVuIHRoZSBnaXZlbiBtZXRhZGF0YSBhbGxvd3MgcGlubmluZy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzUGlubmFibGUobWV0YWRhdGEpIHtcbiAgICByZXR1cm4gbWV0YWRhdGE/LmVuYWJsZWQgPT09IHRydWUgJiYgbWV0YWRhdGEuc3RyYXRlZ3kgIT09IFwiZGlzYWJsZWRcIjtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaVIzSmhjR2hRYVc1dWFXNW5UV1YwWVdSaGRHRXVhbk1pTENKemIzVnlZMlZTYjI5MElqb2lJaXdpYzI5MWNtTmxjeUk2V3lJdUxpOHVMaTh1TGk4dUxpOXpjbU12WjNKaGNHZ3ZjR2x1Ym1sdVp5OUhjbUZ3YUZCcGJtNXBibWROWlhSaFpHRjBZUzUwY3lKZExDSnVZVzFsY3lJNlcxMHNJbTFoY0hCcGJtZHpJam9pUVVGUFFUczdSMEZGUnp0QlFVTklMRTFCUVUwc1EwRkJReXhOUVVGTkxIZENRVUYzUWl4SFFVRjVRanRKUVVNMVJDeFBRVUZQTEVWQlFVVXNTVUZCU1R0SlFVTmlMRkZCUVZFc1JVRkJSU3hSUVVGUk8wbEJRMnhDTEcxQ1FVRnRRaXhGUVVGRkxFbEJRVWs3UTBGRE1VSXNRMEZCUXp0QlFVVkdPenRIUVVWSE8wRkJRMGdzVFVGQlRTeFZRVUZWTEZWQlFWVXNRMEZCUXl4UlFVRXdRenRKUVVOdVJTeFBRVUZQTEZGQlFWRXNSVUZCUlN4UFFVRlBMRXRCUVVzc1NVRkJTU3hKUVVGSkxGRkJRVkVzUTBGQlF5eFJRVUZSTEV0QlFVc3NWVUZCVlN4RFFVRkRPMEZCUTNoRkxFTkJRVU1pTENKemIzVnlZMlZ6UTI5dWRHVnVkQ0k2V3lJdktpcGNiaUFxSUVCdGIyUjFiR1VnYVc1MFpXZHlZWFJwYjI1ekwyZHlZWEJvTDNCcGJtNXBibWN2UjNKaGNHaFFhVzV1YVc1blRXVjBZV1JoZEdGY2JpQXFJRUJ6ZFcxdFlYSjVJRkJwYm01cGJtY2diV1YwWVdSaGRHRWdaR1ZtWVhWc2RITWdZVzVrSUdobGJIQmxjbk11WEc0Z0tpQkFaR1Z6WTNKcGNIUnBiMjRnVUhKdmRtbGtaWE1nWkdWbVlYVnNkQ0J3YVc1dWFXNW5JRzFsZEdGa1lYUmhJSFpoYkhWbGN5QmhibVFnWVNCb1pXeHdaWElnZEc4Z1kyaGxZMnNnY0dsdWJtRmlhV3hwZEhrdUlGUm9aU0JnUjNKaGNHaFFhVzV1YVc1blRXVjBZV1JoZEdGZ0lIUjVjR1VnYVhSelpXeG1JR2x6SUdSbFptbHVaV1FnYVc0Z1lDNHVMM1I1Y0dWellDQmhibVFnY21VdFpYaHdiM0owWldRZ1puSnZiU0IwYUdVZ2NHRmphMkZuWlNCeWIyOTBMbHh1SUNvdlhHNXBiWEJ2Y25RZ2RIbHdaU0I3SUVkeVlYQm9VR2x1Ym1sdVowMWxkR0ZrWVhSaElIMGdabkp2YlNCY0lpNHVMM1I1Y0dWelhDSTdYRzVjYmk4cUtseHVJQ29nUkdWbVlYVnNkQ0J3YVc1dWFXNW5JRzFsZEdGa1lYUmhJR0Z3Y0d4cFpXUWdkMmhsYmlCZ1FIQnBibTVoWW14bEtDbGdJR2x6SUhWelpXUWdkMmwwYUc5MWRDQnZjSFJwYjI1ekxseHVJQ292WEc1bGVIQnZjblFnWTI5dWMzUWdSRVZHUVZWTVZGOVFTVTVPU1U1SFgwMUZWRUZFUVZSQk9pQkhjbUZ3YUZCcGJtNXBibWROWlhSaFpHRjBZU0E5SUh0Y2JpQWdaVzVoWW14bFpEb2dkSEoxWlN4Y2JpQWdjM1J5WVhSbFozazZJRndpYldGdWRXRnNYQ0lzWEc0Z0lHbHVZMngxWkdWRVpYQmxibVJsYm1OcFpYTTZJSFJ5ZFdVc1hHNTlPMXh1WEc0dktpcGNiaUFxSUZKbGRIVnlibk1nWUhSeWRXVmdJSGRvWlc0Z2RHaGxJR2RwZG1WdUlHMWxkR0ZrWVhSaElHRnNiRzkzY3lCd2FXNXVhVzVuTGx4dUlDb3ZYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdhWE5RYVc1dVlXSnNaU2h0WlhSaFpHRjBZVG9nUjNKaGNHaFFhVzV1YVc1blRXVjBZV1JoZEdFZ2ZDQjFibVJsWm1sdVpXUXBPaUJpYjI5c1pXRnVJSHRjYmlBZ2NtVjBkWEp1SUcxbGRHRmtZWFJoUHk1bGJtRmliR1ZrSUQwOVBTQjBjblZsSUNZbUlHMWxkR0ZrWVhSaExuTjBjbUYwWldkNUlDRTlQU0JjSW1ScGMyRmliR1ZrWENJN1hHNTlYRzRpWFgwPSJdfQ==
@@ -1,34 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GraphPinningPolicy = void 0;
4
- const GraphPinningMetadata_js_1 = require("./GraphPinningMetadata.cjs");
5
- /**
6
- * Policy that decides pinning behaviour for a plan node.
7
- */
8
- class GraphPinningPolicy {
9
- /** Returns whether the node is allowed to be pinned. */
10
- canPin(node) {
11
- return (0, GraphPinningMetadata_js_1.isPinnable)(this.getPinningMetadata(node));
12
- }
13
- /** Returns whether the engine should attempt to use a pinned value for the node. */
14
- shouldUsePinnedValue(node) {
15
- const metadata = this.getPinningMetadata(node);
16
- return metadata.enabled === true && metadata.strategy !== "disabled";
17
- }
18
- /** Returns whether automatic pinning should occur after execution. */
19
- shouldAutoPin(node) {
20
- const metadata = this.getPinningMetadata(node);
21
- return metadata.enabled === true && metadata.strategy === "automatic";
22
- }
23
- /** Extracts pinning metadata from a plan node. */
24
- getPinningMetadata(node) {
25
- const raw = node.definition?.graph?.metadata?.pinnable ??
26
- node.metadata?.pinnable;
27
- return raw
28
- ? { ...GraphPinningMetadata_js_1.DEFAULT_PINNING_METADATA, ...raw }
29
- : { ...GraphPinningMetadata_js_1.DEFAULT_PINNING_METADATA, enabled: false };
30
- }
31
- }
32
- exports.GraphPinningPolicy = GraphPinningPolicy;
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhQaW5uaW5nUG9saWN5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2dyYXBoL3Bpbm5pbmcvR3JhcGhQaW5uaW5nUG9saWN5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxVQUFVLEVBQUUsa0NBQStCO0FBRTlFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGtCQUFrQjtJQUM3Qix3REFBd0Q7SUFDeEQsTUFBTSxDQUFDLElBQTRCO1FBQ2pDLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxvRkFBb0Y7SUFDcEYsb0JBQW9CLENBQUMsSUFBNEI7UUFDL0MsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9DLE9BQU8sUUFBUSxDQUFDLE9BQU8sS0FBSyxJQUFJLElBQUksUUFBUSxDQUFDLFFBQVEsS0FBSyxVQUFVLENBQUM7SUFDdkUsQ0FBQztJQUVELHNFQUFzRTtJQUN0RSxhQUFhLENBQUMsSUFBNEI7UUFDeEMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9DLE9BQU8sUUFBUSxDQUFDLE9BQU8sS0FBSyxJQUFJLElBQUksUUFBUSxDQUFDLFFBQVEsS0FBSyxXQUFXLENBQUM7SUFDeEUsQ0FBQztJQUVELGtEQUFrRDtJQUNsRCxrQkFBa0IsQ0FBQyxJQUE0QjtRQUM3QyxNQUFNLEdBQUcsR0FDTixJQUFJLENBQUMsVUFBa0IsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFFBQVE7WUFDbEQsSUFBSSxDQUFDLFFBQWdCLEVBQUUsUUFBUSxDQUFDO1FBQ25DLE9BQU8sR0FBRztZQUNSLENBQUMsQ0FBQyxFQUFFLEdBQUcsd0JBQXdCLEVBQUUsR0FBRyxHQUFHLEVBQUU7WUFDekMsQ0FBQyxDQUFDLEVBQUUsR0FBRyx3QkFBd0IsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFDdEQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9ncmFwaC9waW5uaW5nL0dyYXBoUGlubmluZ1BvbGljeVxuICogQHN1bW1hcnkgRGVjaWRlcyB3aGV0aGVyIGEgbm9kZSBjYW4gYmUgcGlubmVkIGFuZCB3aGV0aGVyIHBpbm5lZCB2YWx1ZXMgc2hvdWxkIGJlIHVzZWQuXG4gKiBAZGVzY3JpcHRpb24gUmVhZHMgcGlubmluZyBtZXRhZGF0YSBmcm9tIHBsYW4gbm9kZXMgYW5kIGVuZm9yY2VzIHRoZSBwaW5uaW5nIHN0cmF0ZWd5LlxuICovXG5pbXBvcnQgdHlwZSB7IEdyYXBoRXhlY3V0aW9uUGxhbk5vZGUgfSBmcm9tIFwiLi4vcGxhbm5pbmcvR3JhcGhFeGVjdXRpb25QbGFuTm9kZVwiO1xuaW1wb3J0IHR5cGUgeyBHcmFwaFBpbm5pbmdNZXRhZGF0YSB9IGZyb20gXCIuLi90eXBlc1wiO1xuaW1wb3J0IHsgREVGQVVMVF9QSU5OSU5HX01FVEFEQVRBLCBpc1Bpbm5hYmxlIH0gZnJvbSBcIi4vR3JhcGhQaW5uaW5nTWV0YWRhdGFcIjtcblxuLyoqXG4gKiBQb2xpY3kgdGhhdCBkZWNpZGVzIHBpbm5pbmcgYmVoYXZpb3VyIGZvciBhIHBsYW4gbm9kZS5cbiAqL1xuZXhwb3J0IGNsYXNzIEdyYXBoUGlubmluZ1BvbGljeSB7XG4gIC8qKiBSZXR1cm5zIHdoZXRoZXIgdGhlIG5vZGUgaXMgYWxsb3dlZCB0byBiZSBwaW5uZWQuICovXG4gIGNhblBpbihub2RlOiBHcmFwaEV4ZWN1dGlvblBsYW5Ob2RlKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzUGlubmFibGUodGhpcy5nZXRQaW5uaW5nTWV0YWRhdGEobm9kZSkpO1xuICB9XG5cbiAgLyoqIFJldHVybnMgd2hldGhlciB0aGUgZW5naW5lIHNob3VsZCBhdHRlbXB0IHRvIHVzZSBhIHBpbm5lZCB2YWx1ZSBmb3IgdGhlIG5vZGUuICovXG4gIHNob3VsZFVzZVBpbm5lZFZhbHVlKG5vZGU6IEdyYXBoRXhlY3V0aW9uUGxhbk5vZGUpOiBib29sZWFuIHtcbiAgICBjb25zdCBtZXRhZGF0YSA9IHRoaXMuZ2V0UGlubmluZ01ldGFkYXRhKG5vZGUpO1xuICAgIHJldHVybiBtZXRhZGF0YS5lbmFibGVkID09PSB0cnVlICYmIG1ldGFkYXRhLnN0cmF0ZWd5ICE9PSBcImRpc2FibGVkXCI7XG4gIH1cblxuICAvKiogUmV0dXJucyB3aGV0aGVyIGF1dG9tYXRpYyBwaW5uaW5nIHNob3VsZCBvY2N1ciBhZnRlciBleGVjdXRpb24uICovXG4gIHNob3VsZEF1dG9QaW4obm9kZTogR3JhcGhFeGVjdXRpb25QbGFuTm9kZSk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IG1ldGFkYXRhID0gdGhpcy5nZXRQaW5uaW5nTWV0YWRhdGEobm9kZSk7XG4gICAgcmV0dXJuIG1ldGFkYXRhLmVuYWJsZWQgPT09IHRydWUgJiYgbWV0YWRhdGEuc3RyYXRlZ3kgPT09IFwiYXV0b21hdGljXCI7XG4gIH1cblxuICAvKiogRXh0cmFjdHMgcGlubmluZyBtZXRhZGF0YSBmcm9tIGEgcGxhbiBub2RlLiAqL1xuICBnZXRQaW5uaW5nTWV0YWRhdGEobm9kZTogR3JhcGhFeGVjdXRpb25QbGFuTm9kZSk6IEdyYXBoUGlubmluZ01ldGFkYXRhIHtcbiAgICBjb25zdCByYXcgPVxuICAgICAgKG5vZGUuZGVmaW5pdGlvbiBhcyBhbnkpPy5ncmFwaD8ubWV0YWRhdGE/LnBpbm5hYmxlID8/XG4gICAgICAobm9kZS5tZXRhZGF0YSBhcyBhbnkpPy5waW5uYWJsZTtcbiAgICByZXR1cm4gcmF3XG4gICAgICA/IHsgLi4uREVGQVVMVF9QSU5OSU5HX01FVEFEQVRBLCAuLi5yYXcgfVxuICAgICAgOiB7IC4uLkRFRkFVTFRfUElOTklOR19NRVRBREFUQSwgZW5hYmxlZDogZmFsc2UgfTtcbiAgfVxufVxuIl19
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhQaW5uaW5nUG9saWN5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiR3JhcGhQaW5uaW5nUG9saWN5LmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHVFQUFpRjtBQUNqRjs7R0FFRztBQUNILE1BQWEsa0JBQWtCO0lBQzNCLHdEQUF3RDtJQUN4RCxNQUFNLENBQUMsSUFBSTtRQUNQLE9BQU8sSUFBQSxvQ0FBVSxFQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFDRCxvRkFBb0Y7SUFDcEYsb0JBQW9CLENBQUMsSUFBSTtRQUNyQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDL0MsT0FBTyxRQUFRLENBQUMsT0FBTyxLQUFLLElBQUksSUFBSSxRQUFRLENBQUMsUUFBUSxLQUFLLFVBQVUsQ0FBQztJQUN6RSxDQUFDO0lBQ0Qsc0VBQXNFO0lBQ3RFLGFBQWEsQ0FBQyxJQUFJO1FBQ2QsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9DLE9BQU8sUUFBUSxDQUFDLE9BQU8sS0FBSyxJQUFJLElBQUksUUFBUSxDQUFDLFFBQVEsS0FBSyxXQUFXLENBQUM7SUFDMUUsQ0FBQztJQUNELGtEQUFrRDtJQUNsRCxrQkFBa0IsQ0FBQyxJQUFJO1FBQ25CLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxRQUFRO1lBQ2xELElBQUksQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDO1FBQzVCLE9BQU8sR0FBRztZQUNOLENBQUMsQ0FBQyxFQUFFLEdBQUcsa0RBQXdCLEVBQUUsR0FBRyxHQUFHLEVBQUU7WUFDekMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxrREFBd0IsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFDMUQsQ0FBQztDQUNKO0FBdkJELGdEQXVCQztBQUNELHNqSEFBc2pIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgREVGQVVMVF9QSU5OSU5HX01FVEFEQVRBLCBpc1Bpbm5hYmxlIH0gZnJvbSBcIi4vR3JhcGhQaW5uaW5nTWV0YWRhdGEuanNcIjtcbi8qKlxuICogUG9saWN5IHRoYXQgZGVjaWRlcyBwaW5uaW5nIGJlaGF2aW91ciBmb3IgYSBwbGFuIG5vZGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBHcmFwaFBpbm5pbmdQb2xpY3kge1xuICAgIC8qKiBSZXR1cm5zIHdoZXRoZXIgdGhlIG5vZGUgaXMgYWxsb3dlZCB0byBiZSBwaW5uZWQuICovXG4gICAgY2FuUGluKG5vZGUpIHtcbiAgICAgICAgcmV0dXJuIGlzUGlubmFibGUodGhpcy5nZXRQaW5uaW5nTWV0YWRhdGEobm9kZSkpO1xuICAgIH1cbiAgICAvKiogUmV0dXJucyB3aGV0aGVyIHRoZSBlbmdpbmUgc2hvdWxkIGF0dGVtcHQgdG8gdXNlIGEgcGlubmVkIHZhbHVlIGZvciB0aGUgbm9kZS4gKi9cbiAgICBzaG91bGRVc2VQaW5uZWRWYWx1ZShub2RlKSB7XG4gICAgICAgIGNvbnN0IG1ldGFkYXRhID0gdGhpcy5nZXRQaW5uaW5nTWV0YWRhdGEobm9kZSk7XG4gICAgICAgIHJldHVybiBtZXRhZGF0YS5lbmFibGVkID09PSB0cnVlICYmIG1ldGFkYXRhLnN0cmF0ZWd5ICE9PSBcImRpc2FibGVkXCI7XG4gICAgfVxuICAgIC8qKiBSZXR1cm5zIHdoZXRoZXIgYXV0b21hdGljIHBpbm5pbmcgc2hvdWxkIG9jY3VyIGFmdGVyIGV4ZWN1dGlvbi4gKi9cbiAgICBzaG91bGRBdXRvUGluKG5vZGUpIHtcbiAgICAgICAgY29uc3QgbWV0YWRhdGEgPSB0aGlzLmdldFBpbm5pbmdNZXRhZGF0YShub2RlKTtcbiAgICAgICAgcmV0dXJuIG1ldGFkYXRhLmVuYWJsZWQgPT09IHRydWUgJiYgbWV0YWRhdGEuc3RyYXRlZ3kgPT09IFwiYXV0b21hdGljXCI7XG4gICAgfVxuICAgIC8qKiBFeHRyYWN0cyBwaW5uaW5nIG1ldGFkYXRhIGZyb20gYSBwbGFuIG5vZGUuICovXG4gICAgZ2V0UGlubmluZ01ldGFkYXRhKG5vZGUpIHtcbiAgICAgICAgY29uc3QgcmF3ID0gbm9kZS5kZWZpbml0aW9uPy5ncmFwaD8ubWV0YWRhdGE/LnBpbm5hYmxlID8/XG4gICAgICAgICAgICBub2RlLm1ldGFkYXRhPy5waW5uYWJsZTtcbiAgICAgICAgcmV0dXJuIHJhd1xuICAgICAgICAgICAgPyB7IC4uLkRFRkFVTFRfUElOTklOR19NRVRBREFUQSwgLi4ucmF3IH1cbiAgICAgICAgICAgIDogeyAuLi5ERUZBVUxUX1BJTk5JTkdfTUVUQURBVEEsIGVuYWJsZWQ6IGZhbHNlIH07XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pUjNKaGNHaFFhVzV1YVc1blVHOXNhV041TG1weklpd2ljMjkxY21ObFVtOXZkQ0k2SWlJc0luTnZkWEpqWlhNaU9sc2lMaTR2TGk0dkxpNHZMaTR2YzNKakwyZHlZWEJvTDNCcGJtNXBibWN2UjNKaGNHaFFhVzV1YVc1blVHOXNhV041TG5SeklsMHNJbTVoYldWeklqcGJYU3dpYldGd2NHbHVaM01pT2lKQlFVOUJMRTlCUVU4c1JVRkJSU3gzUWtGQmQwSXNSVUZCUlN4VlFVRlZMRVZCUVVVc2EwTkJRU3RDTzBGQlJUbEZPenRIUVVWSE8wRkJRMGdzVFVGQlRTeFBRVUZQTEd0Q1FVRnJRanRKUVVNM1FpeDNSRUZCZDBRN1NVRkRlRVFzVFVGQlRTeERRVUZETEVsQlFUUkNPMUZCUTJwRExFOUJRVThzVlVGQlZTeERRVUZETEVsQlFVa3NRMEZCUXl4clFrRkJhMElzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRPMGxCUTI1RUxFTkJRVU03U1VGRlJDeHZSa0ZCYjBZN1NVRkRjRVlzYjBKQlFXOUNMRU5CUVVNc1NVRkJORUk3VVVGREwwTXNUVUZCVFN4UlFVRlJMRWRCUVVjc1NVRkJTU3hEUVVGRExHdENRVUZyUWl4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRE8xRkJReTlETEU5QlFVOHNVVUZCVVN4RFFVRkRMRTlCUVU4c1MwRkJTeXhKUVVGSkxFbEJRVWtzVVVGQlVTeERRVUZETEZGQlFWRXNTMEZCU3l4VlFVRlZMRU5CUVVNN1NVRkRka1VzUTBGQlF6dEpRVVZFTEhORlFVRnpSVHRKUVVOMFJTeGhRVUZoTEVOQlFVTXNTVUZCTkVJN1VVRkRlRU1zVFVGQlRTeFJRVUZSTEVkQlFVY3NTVUZCU1N4RFFVRkRMR3RDUVVGclFpeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMUZCUXk5RExFOUJRVThzVVVGQlVTeERRVUZETEU5QlFVOHNTMEZCU3l4SlFVRkpMRWxCUVVrc1VVRkJVU3hEUVVGRExGRkJRVkVzUzBGQlN5eFhRVUZYTEVOQlFVTTdTVUZEZUVVc1EwRkJRenRKUVVWRUxHdEVRVUZyUkR0SlFVTnNSQ3hyUWtGQmEwSXNRMEZCUXl4SlFVRTBRanRSUVVNM1F5eE5RVUZOTEVkQlFVY3NSMEZEVGl4SlFVRkpMRU5CUVVNc1ZVRkJhMElzUlVGQlJTeExRVUZMTEVWQlFVVXNVVUZCVVN4RlFVRkZMRkZCUVZFN1dVRkRiRVFzU1VGQlNTeERRVUZETEZGQlFXZENMRVZCUVVVc1VVRkJVU3hEUVVGRE8xRkJRMjVETEU5QlFVOHNSMEZCUnp0WlFVTlNMRU5CUVVNc1EwRkJReXhGUVVGRkxFZEJRVWNzZDBKQlFYZENMRVZCUVVVc1IwRkJSeXhIUVVGSExFVkJRVVU3V1VGRGVrTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1IwRkJSeXgzUWtGQmQwSXNSVUZCUlN4UFFVRlBMRVZCUVVVc1MwRkJTeXhGUVVGRkxFTkJRVU03U1VGRGRFUXNRMEZCUXp0RFFVTkdJaXdpYzI5MWNtTmxjME52Ym5SbGJuUWlPbHNpTHlvcVhHNGdLaUJBYlc5a2RXeGxJR2x1ZEdWbmNtRjBhVzl1Y3k5bmNtRndhQzl3YVc1dWFXNW5MMGR5WVhCb1VHbHVibWx1WjFCdmJHbGplVnh1SUNvZ1FITjFiVzFoY25rZ1JHVmphV1JsY3lCM2FHVjBhR1Z5SUdFZ2JtOWtaU0JqWVc0Z1ltVWdjR2x1Ym1Wa0lHRnVaQ0IzYUdWMGFHVnlJSEJwYm01bFpDQjJZV3gxWlhNZ2MyaHZkV3hrSUdKbElIVnpaV1F1WEc0Z0tpQkFaR1Z6WTNKcGNIUnBiMjRnVW1WaFpITWdjR2x1Ym1sdVp5QnRaWFJoWkdGMFlTQm1jbTl0SUhCc1lXNGdibTlrWlhNZ1lXNWtJR1Z1Wm05eVkyVnpJSFJvWlNCd2FXNXVhVzVuSUhOMGNtRjBaV2Q1TGx4dUlDb3ZYRzVwYlhCdmNuUWdkSGx3WlNCN0lFZHlZWEJvUlhobFkzVjBhVzl1VUd4aGJrNXZaR1VnZlNCbWNtOXRJRndpTGk0dmNHeGhibTVwYm1jdlIzSmhjR2hGZUdWamRYUnBiMjVRYkdGdVRtOWtaVndpTzF4dWFXMXdiM0owSUhSNWNHVWdleUJIY21Gd2FGQnBibTVwYm1kTlpYUmhaR0YwWVNCOUlHWnliMjBnWENJdUxpOTBlWEJsYzF3aU8xeHVhVzF3YjNKMElIc2dSRVZHUVZWTVZGOVFTVTVPU1U1SFgwMUZWRUZFUVZSQkxDQnBjMUJwYm01aFlteGxJSDBnWm5KdmJTQmNJaTR2UjNKaGNHaFFhVzV1YVc1blRXVjBZV1JoZEdGY0lqdGNibHh1THlvcVhHNGdLaUJRYjJ4cFkza2dkR2hoZENCa1pXTnBaR1Z6SUhCcGJtNXBibWNnWW1Wb1lYWnBiM1Z5SUdadmNpQmhJSEJzWVc0Z2JtOWtaUzVjYmlBcUwxeHVaWGh3YjNKMElHTnNZWE56SUVkeVlYQm9VR2x1Ym1sdVoxQnZiR2xqZVNCN1hHNGdJQzhxS2lCU1pYUjFjbTV6SUhkb1pYUm9aWElnZEdobElHNXZaR1VnYVhNZ1lXeHNiM2RsWkNCMGJ5QmlaU0J3YVc1dVpXUXVJQ292WEc0Z0lHTmhibEJwYmlodWIyUmxPaUJIY21Gd2FFVjRaV04xZEdsdmJsQnNZVzVPYjJSbEtUb2dZbTl2YkdWaGJpQjdYRzRnSUNBZ2NtVjBkWEp1SUdselVHbHVibUZpYkdVb2RHaHBjeTVuWlhSUWFXNXVhVzVuVFdWMFlXUmhkR0VvYm05a1pTa3BPMXh1SUNCOVhHNWNiaUFnTHlvcUlGSmxkSFZ5Ym5NZ2QyaGxkR2hsY2lCMGFHVWdaVzVuYVc1bElITm9iM1ZzWkNCaGRIUmxiWEIwSUhSdklIVnpaU0JoSUhCcGJtNWxaQ0IyWVd4MVpTQm1iM0lnZEdobElHNXZaR1V1SUNvdlhHNGdJSE5vYjNWc1pGVnpaVkJwYm01bFpGWmhiSFZsS0c1dlpHVTZJRWR5WVhCb1JYaGxZM1YwYVc5dVVHeGhiazV2WkdVcE9pQmliMjlzWldGdUlIdGNiaUFnSUNCamIyNXpkQ0J0WlhSaFpHRjBZU0E5SUhSb2FYTXVaMlYwVUdsdWJtbHVaMDFsZEdGa1lYUmhLRzV2WkdVcE8xeHVJQ0FnSUhKbGRIVnliaUJ0WlhSaFpHRjBZUzVsYm1GaWJHVmtJRDA5UFNCMGNuVmxJQ1ltSUcxbGRHRmtZWFJoTG5OMGNtRjBaV2Q1SUNFOVBTQmNJbVJwYzJGaWJHVmtYQ0k3WEc0Z0lIMWNibHh1SUNBdktpb2dVbVYwZFhKdWN5QjNhR1YwYUdWeUlHRjFkRzl0WVhScFl5QndhVzV1YVc1bklITm9iM1ZzWkNCdlkyTjFjaUJoWm5SbGNpQmxlR1ZqZFhScGIyNHVJQ292WEc0Z0lITm9iM1ZzWkVGMWRHOVFhVzRvYm05a1pUb2dSM0poY0doRmVHVmpkWFJwYjI1UWJHRnVUbTlrWlNrNklHSnZiMnhsWVc0Z2UxeHVJQ0FnSUdOdmJuTjBJRzFsZEdGa1lYUmhJRDBnZEdocGN5NW5aWFJRYVc1dWFXNW5UV1YwWVdSaGRHRW9ibTlrWlNrN1hHNGdJQ0FnY21WMGRYSnVJRzFsZEdGa1lYUmhMbVZ1WVdKc1pXUWdQVDA5SUhSeWRXVWdKaVlnYldWMFlXUmhkR0V1YzNSeVlYUmxaM2tnUFQwOUlGd2lZWFYwYjIxaGRHbGpYQ0k3WEc0Z0lIMWNibHh1SUNBdktpb2dSWGgwY21GamRITWdjR2x1Ym1sdVp5QnRaWFJoWkdGMFlTQm1jbTl0SUdFZ2NHeGhiaUJ1YjJSbExpQXFMMXh1SUNCblpYUlFhVzV1YVc1blRXVjBZV1JoZEdFb2JtOWtaVG9nUjNKaGNHaEZlR1ZqZFhScGIyNVFiR0Z1VG05a1pTazZJRWR5WVhCb1VHbHVibWx1WjAxbGRHRmtZWFJoSUh0Y2JpQWdJQ0JqYjI1emRDQnlZWGNnUFZ4dUlDQWdJQ0FnS0c1dlpHVXVaR1ZtYVc1cGRHbHZiaUJoY3lCaGJua3BQeTVuY21Gd2FEOHViV1YwWVdSaGRHRS9MbkJwYm01aFlteGxJRDgvWEc0Z0lDQWdJQ0FvYm05a1pTNXRaWFJoWkdGMFlTQmhjeUJoYm5rcFB5NXdhVzV1WVdKc1pUdGNiaUFnSUNCeVpYUjFjbTRnY21GM1hHNGdJQ0FnSUNBL0lIc2dMaTR1UkVWR1FWVk1WRjlRU1U1T1NVNUhYMDFGVkVGRVFWUkJMQ0F1TGk1eVlYY2dmVnh1SUNBZ0lDQWdPaUI3SUM0dUxrUkZSa0ZWVEZSZlVFbE9Ua2xPUjE5TlJWUkJSRUZVUVN3Z1pXNWhZbXhsWkRvZ1ptRnNjMlVnZlR0Y2JpQWdmVnh1ZlZ4dUlsMTkiXX0=