terraconstructs 0.2.4 → 0.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (412) hide show
  1. package/.jsii +2984 -2812
  2. package/CLAUDE.md +6 -6
  3. package/README.md +1 -1
  4. package/lib/asset-staging.js +3 -3
  5. package/lib/aws/arn.js +5 -5
  6. package/lib/aws/aws-asset-manager.js +9 -9
  7. package/lib/aws/aws-construct.js +1 -1
  8. package/lib/aws/aws-stack.d.ts +2 -2
  9. package/lib/aws/aws-stack.js +9 -9
  10. package/lib/aws/aws-tags.d.ts +1 -1
  11. package/lib/aws/aws-tags.js +5 -5
  12. package/lib/aws/cloudwatch/actions/appscaling.js +1 -1
  13. package/lib/aws/cloudwatch/actions/ec2.js +1 -1
  14. package/lib/aws/cloudwatch/actions/lambda.js +2 -2
  15. package/lib/aws/cloudwatch/actions/sns.js +1 -1
  16. package/lib/aws/cloudwatch/actions/ssm.js +2 -2
  17. package/lib/aws/cloudwatch/alarm-base.js +1 -1
  18. package/lib/aws/cloudwatch/alarm-rule.js +1 -1
  19. package/lib/aws/cloudwatch/alarm-status-widget.js +1 -1
  20. package/lib/aws/cloudwatch/alarm.d.ts +1 -1
  21. package/lib/aws/cloudwatch/alarm.js +10 -10
  22. package/lib/aws/cloudwatch/composite-alarm.d.ts +1 -1
  23. package/lib/aws/cloudwatch/composite-alarm.js +7 -7
  24. package/lib/aws/cloudwatch/dashboard.d.ts +1 -1
  25. package/lib/aws/cloudwatch/dashboard.js +7 -7
  26. package/lib/aws/cloudwatch/data-protection-policy.d.ts +1 -1
  27. package/lib/aws/cloudwatch/data-protection-policy.js +5 -5
  28. package/lib/aws/cloudwatch/graph.js +8 -8
  29. package/lib/aws/cloudwatch/layout.js +3 -3
  30. package/lib/aws/cloudwatch/log-destinations/kinesis.js +1 -1
  31. package/lib/aws/cloudwatch/log-destinations/lambda.js +1 -1
  32. package/lib/aws/cloudwatch/log-group.d.ts +1 -1
  33. package/lib/aws/cloudwatch/log-group.js +7 -7
  34. package/lib/aws/cloudwatch/log-query.js +1 -1
  35. package/lib/aws/cloudwatch/log-stream.d.ts +1 -1
  36. package/lib/aws/cloudwatch/log-stream.js +3 -3
  37. package/lib/aws/cloudwatch/metric-filter.d.ts +1 -1
  38. package/lib/aws/cloudwatch/metric-filter.js +3 -3
  39. package/lib/aws/cloudwatch/metric.js +6 -6
  40. package/lib/aws/cloudwatch/pattern.js +3 -3
  41. package/lib/aws/cloudwatch/policy.d.ts +1 -1
  42. package/lib/aws/cloudwatch/policy.js +3 -3
  43. package/lib/aws/cloudwatch/private/drop-empty-object-at-the-end-of-an-array-token.d.ts +1 -1
  44. package/lib/aws/cloudwatch/private/drop-empty-object-at-the-end-of-an-array-token.js +1 -1
  45. package/lib/aws/cloudwatch/private/env-tokens.js +6 -6
  46. package/lib/aws/cloudwatch/query-definition.d.ts +1 -1
  47. package/lib/aws/cloudwatch/query-definition.js +4 -4
  48. package/lib/aws/cloudwatch/stats.js +1 -1
  49. package/lib/aws/cloudwatch/subscription-filter.d.ts +1 -1
  50. package/lib/aws/cloudwatch/subscription-filter.js +6 -6
  51. package/lib/aws/cloudwatch/text.js +1 -1
  52. package/lib/aws/cloudwatch/variable.js +3 -3
  53. package/lib/aws/cloudwatch/widget.js +1 -1
  54. package/lib/aws/compute/access-log.d.ts +1 -1
  55. package/lib/aws/compute/access-log.js +5 -5
  56. package/lib/aws/compute/activity.d.ts +1 -1
  57. package/lib/aws/compute/activity.js +5 -5
  58. package/lib/aws/compute/alb/application-listener-action.d.ts +1 -1
  59. package/lib/aws/compute/alb/application-listener-action.js +5 -5
  60. package/lib/aws/compute/alb/application-listener-certificate.js +3 -3
  61. package/lib/aws/compute/alb/application-listener-rule.js +9 -9
  62. package/lib/aws/compute/alb/application-listener.js +5 -5
  63. package/lib/aws/compute/alb/application-load-balancer.js +8 -8
  64. package/lib/aws/compute/alb/application-target-group.js +7 -7
  65. package/lib/aws/compute/alb/conditions.js +3 -3
  66. package/lib/aws/compute/alb/trust-store-revocation.js +3 -3
  67. package/lib/aws/compute/alb/trust-store.js +7 -7
  68. package/lib/aws/compute/api-definition.js +9 -9
  69. package/lib/aws/compute/api-key.js +6 -6
  70. package/lib/aws/compute/architecture.js +1 -1
  71. package/lib/aws/compute/aspects/require-imdsv2-aspect.d.ts +1 -1
  72. package/lib/aws/compute/aspects/require-imdsv2-aspect.js +6 -6
  73. package/lib/aws/compute/authorizer.js +1 -1
  74. package/lib/aws/compute/authorizers/identity-source.js +1 -1
  75. package/lib/aws/compute/authorizers/lambda.d.ts +1 -1
  76. package/lib/aws/compute/authorizers/lambda.js +6 -6
  77. package/lib/aws/compute/base-path-mapping.js +5 -5
  78. package/lib/aws/compute/base-scalable-attribute.js +1 -1
  79. package/lib/aws/compute/bastion-host.js +4 -4
  80. package/lib/aws/compute/chain.js +1 -1
  81. package/lib/aws/compute/client-vpn-authorization-rule.js +3 -3
  82. package/lib/aws/compute/client-vpn-endpoint.d.ts +1 -1
  83. package/lib/aws/compute/client-vpn-endpoint.js +9 -9
  84. package/lib/aws/compute/client-vpn-route.d.ts +1 -1
  85. package/lib/aws/compute/client-vpn-route.js +4 -4
  86. package/lib/aws/compute/code.d.ts +3 -3
  87. package/lib/aws/compute/code.js +15 -15
  88. package/lib/aws/compute/condition.js +1 -1
  89. package/lib/aws/compute/connections.js +1 -1
  90. package/lib/aws/compute/cors.js +1 -1
  91. package/lib/aws/compute/deployment.js +5 -5
  92. package/lib/aws/compute/domain-name.js +5 -5
  93. package/lib/aws/compute/event-invoke-config.d.ts +1 -1
  94. package/lib/aws/compute/event-invoke-config.js +3 -3
  95. package/lib/aws/compute/event-source-filter.js +2 -2
  96. package/lib/aws/compute/event-source-mapping.js +7 -7
  97. package/lib/aws/compute/event-sources/s3-onfailure-destination.js +1 -1
  98. package/lib/aws/compute/event-sources/s3.js +1 -1
  99. package/lib/aws/compute/event-sources/sqs-dlq.js +1 -1
  100. package/lib/aws/compute/event-sources/sqs.js +5 -5
  101. package/lib/aws/compute/fields.d.ts +1 -1
  102. package/lib/aws/compute/fields.js +12 -12
  103. package/lib/aws/compute/function-alias.d.ts +1 -1
  104. package/lib/aws/compute/function-alias.js +3 -3
  105. package/lib/aws/compute/function-base.d.ts +1 -1
  106. package/lib/aws/compute/function-base.js +10 -9
  107. package/lib/aws/compute/function-destinations/event-bridge.js +1 -1
  108. package/lib/aws/compute/function-destinations/function.js +1 -1
  109. package/lib/aws/compute/function-destinations/sqs.js +1 -1
  110. package/lib/aws/compute/function-nodejs/bundling.js +6 -6
  111. package/lib/aws/compute/function-nodejs/function.js +4 -4
  112. package/lib/aws/compute/function-url.d.ts +1 -1
  113. package/lib/aws/compute/function-url.js +3 -3
  114. package/lib/aws/compute/function-vpc-config.generated.d.ts +5 -5
  115. package/lib/aws/compute/function-vpc-config.generated.js +1 -1
  116. package/lib/aws/compute/function.d.ts +2 -2
  117. package/lib/aws/compute/function.js +9 -9
  118. package/lib/aws/compute/gateway-response.d.ts +1 -1
  119. package/lib/aws/compute/gateway-response.js +4 -4
  120. package/lib/aws/compute/handler.js +1 -1
  121. package/lib/aws/compute/instance-types.js +1 -1
  122. package/lib/aws/compute/instance.d.ts +1 -1
  123. package/lib/aws/compute/instance.js +9 -9
  124. package/lib/aws/compute/integration.js +4 -4
  125. package/lib/aws/compute/integrations/aws.js +3 -3
  126. package/lib/aws/compute/integrations/http.js +1 -1
  127. package/lib/aws/compute/integrations/lambda.js +5 -5
  128. package/lib/aws/compute/integrations/mock.js +1 -1
  129. package/lib/aws/compute/integrations/stepfunctions.js +4 -4
  130. package/lib/aws/compute/ip-addresses.d.ts +1 -1
  131. package/lib/aws/compute/ip-addresses.js +10 -10
  132. package/lib/aws/compute/ipam.d.ts +1 -1
  133. package/lib/aws/compute/ipam.js +5 -5
  134. package/lib/aws/compute/key-pair.d.ts +1 -1
  135. package/lib/aws/compute/key-pair.js +6 -6
  136. package/lib/aws/compute/lambda-api.js +1 -1
  137. package/lib/aws/compute/launch-template.d.ts +1 -1
  138. package/lib/aws/compute/launch-template.js +12 -12
  139. package/lib/aws/compute/lb-shared/base-listener.js +9 -9
  140. package/lib/aws/compute/lb-shared/base-load-balancer.d.ts +2 -2
  141. package/lib/aws/compute/lb-shared/base-load-balancer.js +12 -12
  142. package/lib/aws/compute/lb-shared/base-target-group.d.ts +1 -1
  143. package/lib/aws/compute/lb-shared/base-target-group.js +15 -15
  144. package/lib/aws/compute/lb-shared/lb-listener-config.generated.d.ts +34 -34
  145. package/lib/aws/compute/lb-shared/lb-listener-config.generated.js +1 -1
  146. package/lib/aws/compute/lb-shared/lb-target-group-attachment-config.generated.d.ts +11 -6
  147. package/lib/aws/compute/lb-shared/lb-target-group-attachment-config.generated.js +1 -1
  148. package/lib/aws/compute/lb-shared/listener-action.d.ts +1 -1
  149. package/lib/aws/compute/lb-shared/listener-action.js +1 -1
  150. package/lib/aws/compute/lb-shared/listener-certificate.js +1 -1
  151. package/lib/aws/compute/lb-shared/load-balancer-targets.js +2 -2
  152. package/lib/aws/compute/lb-shared/util.js +5 -5
  153. package/lib/aws/compute/lb-targets/alb-target.js +3 -3
  154. package/lib/aws/compute/lb-targets/instance-target.js +2 -2
  155. package/lib/aws/compute/lb-targets/ip-target.js +1 -1
  156. package/lib/aws/compute/lb-targets/lambda-target.js +1 -1
  157. package/lib/aws/compute/load-balancer.d.ts +1 -1
  158. package/lib/aws/compute/load-balancer.js +8 -8
  159. package/lib/aws/compute/machine-image/amazon-linux-2022.js +2 -2
  160. package/lib/aws/compute/machine-image/amazon-linux-2023.js +2 -2
  161. package/lib/aws/compute/machine-image/amazon-linux2.js +2 -2
  162. package/lib/aws/compute/machine-image/common.js +1 -1
  163. package/lib/aws/compute/machine-image/machine-image.js +10 -10
  164. package/lib/aws/compute/method.js +6 -6
  165. package/lib/aws/compute/model.js +5 -5
  166. package/lib/aws/compute/nat.js +10 -10
  167. package/lib/aws/compute/network-acl-types.js +2 -2
  168. package/lib/aws/compute/network-acl.d.ts +1 -1
  169. package/lib/aws/compute/network-acl.js +5 -5
  170. package/lib/aws/compute/nlb/network-listener-action.d.ts +1 -1
  171. package/lib/aws/compute/nlb/network-listener-action.js +2 -2
  172. package/lib/aws/compute/nlb/network-listener-certificate.js +2 -2
  173. package/lib/aws/compute/nlb/network-listener.js +5 -5
  174. package/lib/aws/compute/nlb/network-load-balancer.js +6 -6
  175. package/lib/aws/compute/nlb/network-target-group.js +4 -4
  176. package/lib/aws/compute/peer.js +7 -7
  177. package/lib/aws/compute/placement-group.d.ts +1 -1
  178. package/lib/aws/compute/placement-group.js +3 -3
  179. package/lib/aws/compute/port.js +5 -5
  180. package/lib/aws/compute/prefix-list.d.ts +1 -1
  181. package/lib/aws/compute/prefix-list.js +5 -5
  182. package/lib/aws/compute/private/context-stub.js +7 -7
  183. package/lib/aws/compute/private/ebs-util.d.ts +1 -1
  184. package/lib/aws/compute/private/ebs-util.js +3 -3
  185. package/lib/aws/compute/private/json-path.d.ts +1 -1
  186. package/lib/aws/compute/private/json-path.js +8 -8
  187. package/lib/aws/compute/requestvalidator.js +3 -3
  188. package/lib/aws/compute/resource.js +5 -5
  189. package/lib/aws/compute/restapi.d.ts +1 -1
  190. package/lib/aws/compute/restapi.js +11 -11
  191. package/lib/aws/compute/route.d.ts +1 -1
  192. package/lib/aws/compute/route.js +12 -12
  193. package/lib/aws/compute/runtime.js +3 -3
  194. package/lib/aws/compute/scalable-target.d.ts +1 -1
  195. package/lib/aws/compute/scalable-target.js +3 -3
  196. package/lib/aws/compute/schedule.js +4 -4
  197. package/lib/aws/compute/security-group.js +12 -12
  198. package/lib/aws/compute/stage.d.ts +1 -1
  199. package/lib/aws/compute/stage.js +6 -6
  200. package/lib/aws/compute/state-graph.js +1 -1
  201. package/lib/aws/compute/state-machine-fragment.js +1 -1
  202. package/lib/aws/compute/state-machine.d.ts +2 -2
  203. package/lib/aws/compute/state-machine.js +8 -8
  204. package/lib/aws/compute/states/choice.js +1 -1
  205. package/lib/aws/compute/states/custom-state.js +5 -5
  206. package/lib/aws/compute/states/distributed-map/item-batcher.js +1 -1
  207. package/lib/aws/compute/states/distributed-map/item-reader.js +5 -5
  208. package/lib/aws/compute/states/distributed-map/result-writer.js +1 -1
  209. package/lib/aws/compute/states/distributed-map.js +4 -4
  210. package/lib/aws/compute/states/fail.js +4 -4
  211. package/lib/aws/compute/states/map-base.js +4 -4
  212. package/lib/aws/compute/states/map.js +1 -1
  213. package/lib/aws/compute/states/parallel.js +1 -1
  214. package/lib/aws/compute/states/pass.js +2 -2
  215. package/lib/aws/compute/states/state.js +4 -4
  216. package/lib/aws/compute/states/succeed.js +1 -1
  217. package/lib/aws/compute/states/task-base.js +2 -2
  218. package/lib/aws/compute/states/task.js +1 -1
  219. package/lib/aws/compute/states/wait.js +2 -2
  220. package/lib/aws/compute/step-scaling-action.js +5 -5
  221. package/lib/aws/compute/step-scaling-policy.js +7 -7
  222. package/lib/aws/compute/stepfunctions-api.js +2 -2
  223. package/lib/aws/compute/subnet-v2.d.ts +1 -1
  224. package/lib/aws/compute/subnet-v2.js +5 -5
  225. package/lib/aws/compute/subnet.js +4 -4
  226. package/lib/aws/compute/target-tracking-scaling-policy.js +3 -3
  227. package/lib/aws/compute/task-credentials.js +1 -1
  228. package/lib/aws/compute/task-input.js +1 -1
  229. package/lib/aws/compute/tasks/aws-sdk/call-aws-service.js +5 -5
  230. package/lib/aws/compute/tasks/eventbridge/put-events.js +1 -1
  231. package/lib/aws/compute/tasks/http/invoke.js +1 -1
  232. package/lib/aws/compute/tasks/lambda/invoke.js +1 -1
  233. package/lib/aws/compute/tasks/sqs/send-message.js +1 -1
  234. package/lib/aws/compute/tasks/stepfunctions/invoke-activity.js +1 -1
  235. package/lib/aws/compute/tasks/stepfunctions/start-execution.js +1 -1
  236. package/lib/aws/compute/types.js +1 -1
  237. package/lib/aws/compute/usage-plan.js +5 -5
  238. package/lib/aws/compute/user-data.d.ts +2 -2
  239. package/lib/aws/compute/user-data.js +10 -10
  240. package/lib/aws/compute/volume.d.ts +1 -1
  241. package/lib/aws/compute/volume.js +7 -7
  242. package/lib/aws/compute/vpc-endpoint-service.js +3 -3
  243. package/lib/aws/compute/vpc-endpoint.d.ts +1 -1
  244. package/lib/aws/compute/vpc-endpoint.js +13 -13
  245. package/lib/aws/compute/vpc-flow-logs.d.ts +1 -1
  246. package/lib/aws/compute/vpc-flow-logs.js +8 -8
  247. package/lib/aws/compute/vpc-link.js +5 -5
  248. package/lib/aws/compute/vpc-v2-base.js +6 -6
  249. package/lib/aws/compute/vpc-v2.d.ts +2 -2
  250. package/lib/aws/compute/vpc-v2.js +4 -4
  251. package/lib/aws/compute/vpc.d.ts +1 -1
  252. package/lib/aws/compute/vpc.js +21 -21
  253. package/lib/aws/compute/vpn.js +8 -8
  254. package/lib/aws/context-provider.js +4 -4
  255. package/lib/aws/edge/certificate.d.ts +1 -1
  256. package/lib/aws/edge/certificate.js +6 -6
  257. package/lib/aws/edge/distribution.d.ts +1 -1
  258. package/lib/aws/edge/distribution.js +9 -9
  259. package/lib/aws/edge/dns-alias-record-targets.d.ts +1 -1
  260. package/lib/aws/edge/dns-alias-record-targets.js +7 -7
  261. package/lib/aws/edge/dns-record.d.ts +1 -1
  262. package/lib/aws/edge/dns-record.js +19 -19
  263. package/lib/aws/edge/dns-zone.d.ts +2 -2
  264. package/lib/aws/edge/dns-zone.js +5 -5
  265. package/lib/aws/edge/function.d.ts +1 -1
  266. package/lib/aws/edge/function.js +4 -4
  267. package/lib/aws/edge/key-value-store.d.ts +1 -1
  268. package/lib/aws/edge/key-value-store.js +6 -6
  269. package/lib/aws/edge/origin.d.ts +1 -1
  270. package/lib/aws/edge/origin.js +6 -6
  271. package/lib/aws/edge/response-headers-policy.d.ts +1 -1
  272. package/lib/aws/edge/response-headers-policy.js +6 -6
  273. package/lib/aws/encryption/alias.d.ts +1 -1
  274. package/lib/aws/encryption/alias.js +8 -8
  275. package/lib/aws/encryption/key.d.ts +1 -1
  276. package/lib/aws/encryption/key.js +6 -6
  277. package/lib/aws/encryption/via-service-principal.js +1 -1
  278. package/lib/aws/iam/grant.js +3 -3
  279. package/lib/aws/iam/group.js +5 -5
  280. package/lib/aws/iam/instance-profile.d.ts +1 -1
  281. package/lib/aws/iam/instance-profile.js +3 -3
  282. package/lib/aws/iam/managed-policy.d.ts +1 -1
  283. package/lib/aws/iam/managed-policy.js +3 -3
  284. package/lib/aws/iam/oidc-provider.d.ts +1 -1
  285. package/lib/aws/iam/oidc-provider.js +3 -3
  286. package/lib/aws/iam/policy-document-config.generated.d.ts +9 -9
  287. package/lib/aws/iam/policy-document-config.generated.js +1 -1
  288. package/lib/aws/iam/policy-document.d.ts +1 -1
  289. package/lib/aws/iam/policy-document.js +5 -5
  290. package/lib/aws/iam/policy-statement-props.generated.d.ts +8 -8
  291. package/lib/aws/iam/policy-statement-props.generated.js +1 -1
  292. package/lib/aws/iam/policy-statement.d.ts +1 -1
  293. package/lib/aws/iam/policy-statement.js +8 -8
  294. package/lib/aws/iam/policy.js +3 -3
  295. package/lib/aws/iam/principals.js +25 -25
  296. package/lib/aws/iam/private/imported-role.js +3 -3
  297. package/lib/aws/iam/private/postprocess-policy-document.d.ts +1 -1
  298. package/lib/aws/iam/private/postprocess-policy-document.js +1 -1
  299. package/lib/aws/iam/private/util.d.ts +1 -1
  300. package/lib/aws/iam/private/util.js +5 -5
  301. package/lib/aws/iam/role.d.ts +1 -1
  302. package/lib/aws/iam/role.js +6 -6
  303. package/lib/aws/iam/saml-provider.d.ts +1 -1
  304. package/lib/aws/iam/saml-provider.js +6 -6
  305. package/lib/aws/iam/unknown-principal.js +4 -4
  306. package/lib/aws/iam/user.js +3 -3
  307. package/lib/aws/network/network.d.ts +1 -1
  308. package/lib/aws/network/network.js +1 -1
  309. package/lib/aws/network/simple-ipv4-vpc.js +12 -12
  310. package/lib/aws/network/subnet-group.d.ts +1 -1
  311. package/lib/aws/network/subnet-group.js +5 -5
  312. package/lib/aws/network/subnet.d.ts +1 -1
  313. package/lib/aws/network/subnet.js +6 -6
  314. package/lib/aws/notify/archive.d.ts +1 -1
  315. package/lib/aws/notify/archive.js +3 -3
  316. package/lib/aws/notify/connection.d.ts +1 -1
  317. package/lib/aws/notify/connection.js +5 -5
  318. package/lib/aws/notify/event-bus.d.ts +1 -1
  319. package/lib/aws/notify/event-bus.js +10 -10
  320. package/lib/aws/notify/event-pattern.d.ts +1 -1
  321. package/lib/aws/notify/event-pattern.js +5 -5
  322. package/lib/aws/notify/input.d.ts +1 -1
  323. package/lib/aws/notify/input.js +12 -12
  324. package/lib/aws/notify/kinesis-stream.d.ts +1 -1
  325. package/lib/aws/notify/kinesis-stream.js +7 -7
  326. package/lib/aws/notify/notification-rule.js +8 -8
  327. package/lib/aws/notify/policy.js +3 -3
  328. package/lib/aws/notify/queue-base.js +1 -1
  329. package/lib/aws/notify/queue-policy.js +3 -3
  330. package/lib/aws/notify/queue.d.ts +1 -1
  331. package/lib/aws/notify/queue.js +8 -8
  332. package/lib/aws/notify/resource-policy.js +3 -3
  333. package/lib/aws/notify/rule.d.ts +1 -1
  334. package/lib/aws/notify/rule.js +6 -6
  335. package/lib/aws/notify/schedule.js +4 -4
  336. package/lib/aws/notify/sns-grants.generated.js +1 -1
  337. package/lib/aws/notify/sqs-grants.generated.js +1 -1
  338. package/lib/aws/notify/subscription-filter.js +1 -1
  339. package/lib/aws/notify/subscription.js +6 -6
  340. package/lib/aws/notify/subscriptions/email.js +1 -1
  341. package/lib/aws/notify/subscriptions/lambda.js +4 -4
  342. package/lib/aws/notify/subscriptions/sms.js +1 -1
  343. package/lib/aws/notify/subscriptions/sqs.js +4 -4
  344. package/lib/aws/notify/subscriptions/url.js +4 -4
  345. package/lib/aws/notify/target.d.ts +1 -1
  346. package/lib/aws/notify/target.js +1 -1
  347. package/lib/aws/notify/targets/event-bus.js +1 -1
  348. package/lib/aws/notify/targets/function.js +1 -1
  349. package/lib/aws/notify/targets/log-group.js +2 -2
  350. package/lib/aws/notify/targets/sqs.js +1 -1
  351. package/lib/aws/notify/targets/state-machine.js +1 -1
  352. package/lib/aws/notify/targets/util.js +3 -3
  353. package/lib/aws/notify/topic-base.js +4 -4
  354. package/lib/aws/notify/topic.js +7 -7
  355. package/lib/aws/provider-config.generated.d.ts +42 -36
  356. package/lib/aws/provider-config.generated.js +1 -1
  357. package/lib/aws/region-lookup.js +4 -4
  358. package/lib/aws/storage/assets/image-asset.js +8 -8
  359. package/lib/aws/storage/assets/s3.js +1 -1
  360. package/lib/aws/storage/auth-token.js +2 -2
  361. package/lib/aws/storage/billing.js +1 -1
  362. package/lib/aws/storage/bucket-notifications.d.ts +1 -1
  363. package/lib/aws/storage/bucket-notifications.js +8 -8
  364. package/lib/aws/storage/bucket-policy.d.ts +1 -1
  365. package/lib/aws/storage/bucket-policy.js +3 -3
  366. package/lib/aws/storage/bucket-source.d.ts +1 -1
  367. package/lib/aws/storage/bucket-source.js +7 -7
  368. package/lib/aws/storage/bucket.d.ts +1 -1
  369. package/lib/aws/storage/bucket.js +8 -8
  370. package/lib/aws/storage/capacity.js +1 -1
  371. package/lib/aws/storage/cors-config.generated.d.ts +5 -5
  372. package/lib/aws/storage/cors-config.generated.js +1 -1
  373. package/lib/aws/storage/cors-rule-config.generated.d.ts +5 -5
  374. package/lib/aws/storage/cors-rule-config.generated.js +1 -1
  375. package/lib/aws/storage/ecr-repository.js +11 -11
  376. package/lib/aws/storage/encryption.d.ts +1 -1
  377. package/lib/aws/storage/encryption.js +5 -5
  378. package/lib/aws/storage/lifecycle-config.generated.d.ts +9 -9
  379. package/lib/aws/storage/lifecycle-config.generated.js +1 -1
  380. package/lib/aws/storage/notification-targets/function.js +2 -2
  381. package/lib/aws/storage/notification-targets/queue.js +4 -4
  382. package/lib/aws/storage/origin-access-identity.d.ts +2 -2
  383. package/lib/aws/storage/origin-access-identity.js +3 -3
  384. package/lib/aws/storage/parameter-util.js +5 -5
  385. package/lib/aws/storage/parameter.d.ts +2 -2
  386. package/lib/aws/storage/parameter.js +16 -16
  387. package/lib/aws/storage/stream-grants.js +1 -1
  388. package/lib/aws/storage/table-grants.js +1 -1
  389. package/lib/aws/storage/table.d.ts +1 -1
  390. package/lib/aws/storage/table.js +10 -10
  391. package/lib/aws/storage/website-config.generated.d.ts +8 -8
  392. package/lib/aws/storage/website-config.generated.js +1 -1
  393. package/lib/bundling.js +5 -5
  394. package/lib/construct-base.d.ts +1 -1
  395. package/lib/construct-base.js +10 -10
  396. package/lib/duration.js +9 -9
  397. package/lib/errors.js +1 -1
  398. package/lib/expiration.js +1 -1
  399. package/lib/fs/ignore.js +4 -4
  400. package/lib/fs/index.js +1 -1
  401. package/lib/private/terraform-dependables-aspect.d.ts +1 -1
  402. package/lib/private/terraform-dependables-aspect.js +6 -6
  403. package/lib/private/unique-resource-name.js +3 -3
  404. package/lib/size.js +6 -6
  405. package/lib/stack-base.d.ts +2 -2
  406. package/lib/stack-base.js +16 -16
  407. package/lib/terra-func.d.ts +1 -1
  408. package/lib/terra-func.js +18 -18
  409. package/lib/time-zone.js +1 -1
  410. package/lib/token.js +5 -5
  411. package/package.json +17 -17
  412. package/setup.js +2 -2
@@ -54,5 +54,5 @@ class ItemBatcher {
54
54
  }
55
55
  exports.ItemBatcher = ItemBatcher;
56
56
  _a = JSII_RTTI_SYMBOL_1;
57
- ItemBatcher[_a] = { fqn: "terraconstructs.aws.compute.ItemBatcher", version: "0.2.4" };
57
+ ItemBatcher[_a] = { fqn: "terraconstructs.aws.compute.ItemBatcher", version: "0.2.5" };
58
58
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS1iYXRjaGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2F3cy9jb21wdXRlL3N0YXRlcy9kaXN0cmlidXRlZC1tYXAvaXRlbS1iYXRjaGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBd0RBOztHQUVHO0FBQ0gsTUFBYSxXQUFXO0lBR3RCLFlBQVksS0FBdUI7UUFDakMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTTtRQUNYLE9BQU87WUFDTCxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsSUFBSTtnQkFDakMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0I7YUFDOUMsQ0FBQztZQUNGLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLG9CQUFvQixJQUFJO2dCQUNyQyxvQkFBb0IsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLG9CQUFvQjthQUN0RCxDQUFDO1lBQ0YsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCLElBQUk7Z0JBQ3RDLHFCQUFxQixFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCO2FBQ3hELENBQUM7WUFDRixHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsSUFBSTtnQkFDMUMseUJBQXlCLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyx5QkFBeUI7YUFDaEUsQ0FBQztZQUNGLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsSUFBSSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQ3BFLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSSxtQkFBbUI7UUFDeEIsTUFBTSxNQUFNLEdBQWEsRUFBRSxDQUFDO1FBQzVCLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLG9CQUFvQixFQUFFLENBQUM7WUFDbkUsTUFBTSxDQUFDLElBQUksQ0FDVCwyRUFBMkUsQ0FDNUUsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUNFLElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCO1lBQ2hDLElBQUksQ0FBQyxLQUFLLENBQUMseUJBQXlCLEVBQ3BDLENBQUM7WUFDRCxNQUFNLENBQUMsSUFBSSxDQUNULHFGQUFxRixDQUN0RixDQUFDO1FBQ0osQ0FBQztRQUVELElBQ0UsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQjtZQUM1QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsb0JBQW9CO1lBQ2hDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxxQkFBcUI7WUFDakMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLHlCQUF5QjtZQUNyQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUN0QixDQUFDO1lBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO1FBQy9ELENBQUM7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDOztBQTNESCxrQ0E0REMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNjAuMC9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3Mtc3RlcGZ1bmN0aW9ucy9saWIvc3RhdGVzL2l0ZW0tYmF0Y2hlci50c1xuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgSXRlbUJhdGNoZXIgY29uZmlndXJhdGlvbiBwcm9wZXJ0aWVzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSXRlbUJhdGNoZXJQcm9wcyB7XG4gIC8qKlxuICAgKiBNYXhJdGVtc1BlckJhdGNoXG4gICAqXG4gICAqIFNwZWNpZmllcyB0aGUgbWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdGhhdCBlYWNoIGNoaWxkIHdvcmtmbG93IGV4ZWN1dGlvbiBwcm9jZXNzZXMsIGFzIHN0YXRpYyBudW1iZXJcbiAgICpcbiAgICogQGRlZmF1bHQgLSB1c2VzIHZhbHVlIG9mIGBtYXhJdGVtc1BlckJhdGNoUGF0aGAgYXMgdGhlIG1heCBpdGVtcyBwZXIgYmF0Y2gsXG4gICAqICAgbm8gbGltaXRzIG9uIHRoZSBudW1iZXIgb2YgaXRlbXMgaW4gYSBiYXRjaCB1bmRlciB0aGUgMjU2S0IgbGltaXQgaWYgdGhhdCBwcm9wZXJ0eSB3YXMgYWxzbyBub3QgcHJvdmlkZWRcbiAgICovXG4gIHJlYWRvbmx5IG1heEl0ZW1zUGVyQmF0Y2g/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1heEl0ZW1zUGVyQmF0Y2hQYXRoXG4gICAqXG4gICAqIFNwZWNpZmllcyB0aGUgbWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdGhhdCBlYWNoIGNoaWxkIHdvcmtmbG93IGV4ZWN1dGlvbiBwcm9jZXNzZXMsIGFzIEpzb25QYXRoXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gdXNlcyB2YWx1ZSBvZiBgbWF4SXRlbXNQZXJCYXRjaGAgYXMgdGhlIG1heCBpdGVtcyBwZXIgYmF0Y2gsXG4gICAqICAgbm8gbGltaXRzIG9uIHRoZSBudW1iZXIgb2YgaXRlbXMgaW4gYSBiYXRjaCB1bmRlciB0aGUgMjU2S0IgbGltaXQgaWYgdGhhdCBwcm9wZXJ0eSB3YXMgYWxzbyBub3QgcHJvdmlkZWRcbiAgICovXG4gIHJlYWRvbmx5IG1heEl0ZW1zUGVyQmF0Y2hQYXRoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBNYXhJbnB1dEJ5dGVzUGVyQmF0Y2hcbiAgICpcbiAgICogU3BlY2lmaWVzIHRoZSBtYXhpbXVtIG51bWJlciBvZiBieXRlcyB0aGF0IGVhY2ggY2hpbGQgd29ya2Zsb3cgZXhlY3V0aW9uIHByb2Nlc3NlcywgYXMgc3RhdGljIG51bWJlclxuICAgKlxuICAgKiBAZGVmYXVsdCAtIHVzZXMgdmFsdWUgb2YgYG1heElucHV0Qnl0ZXNQZXJCYXRjaFBhdGhgIGFzIHRoZSBtYXggc2l6ZSBwZXIgYmF0Y2gsXG4gICAqICAgbm8gbGltaXRzIG9uIHRoZSBiYXRjaCBzaXplIHVuZGVyIHRoZSAyNTZLQiBsaW1pdCBpZiB0aGF0IHByb3BlcnR5IHdhcyBhbHNvIG5vdCBwcm92aWRlZFxuICAgKi9cbiAgcmVhZG9ubHkgbWF4SW5wdXRCeXRlc1BlckJhdGNoPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNYXhJbnB1dEJ5dGVzUGVyQmF0Y2hQYXRoXG4gICAqXG4gICAqIFNwZWNpZmllcyB0aGUgbWF4aW11bSBudW1iZXIgb2YgYnl0ZXMgdGhhdCBlYWNoIGNoaWxkIHdvcmtmbG93IGV4ZWN1dGlvbiBwcm9jZXNzZXMsIGFzIEpzb25QYXRoXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gdXNlcyB2YWx1ZSBvZiBgbWF4SW5wdXRCeXRlc1BlckJhdGNoYCBhcyB0aGUgbWF4IHNpemUgcGVyIGJhdGNoLFxuICAgKiAgIG5vIGxpbWl0cyBvbiB0aGUgYmF0Y2ggc2l6ZSB1bmRlciB0aGUgMjU2S0IgbGltaXQgaWYgdGhhdCBwcm9wZXJ0eSB3YXMgYWxzbyBub3QgcHJvdmlkZWRcbiAgICovXG4gIHJlYWRvbmx5IG1heElucHV0Qnl0ZXNQZXJCYXRjaFBhdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEJhdGNoSW5wdXRcbiAgICpcbiAgICogRml4ZWQgSlNPTiBpbnB1dCB0byBpbmNsdWRlIGluIGVhY2ggYmF0Y2ggcGFzc2VkIHRvIGVhY2ggY2hpbGQgd29ya2Zsb3cgZXhlY3V0aW9uXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gYmF0Y2hJbnB1dFxuICAgKi9cbiAgcmVhZG9ubHkgYmF0Y2hJbnB1dD86IG9iamVjdDtcbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGZvciBwcm9jZXNzaW5nIGEgZ3JvdXAgb2YgaXRlbXMgaW4gYSBzaW5nbGUgY2hpbGQgd29ya2Zsb3cgZXhlY3V0aW9uXG4gKi9cbmV4cG9ydCBjbGFzcyBJdGVtQmF0Y2hlciB7XG4gIHByaXZhdGUgcHJvcHM6IEl0ZW1CYXRjaGVyUHJvcHM7XG5cbiAgY29uc3RydWN0b3IocHJvcHM6IEl0ZW1CYXRjaGVyUHJvcHMpIHtcbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG4gIH1cblxuICAvKipcbiAgICogUmVuZGVyIEl0ZW1CYXRjaGVyIGluIEFTTCBKU09OIGZvcm1hdFxuICAgKi9cbiAgcHVibGljIHJlbmRlcigpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICAuLi4odGhpcy5wcm9wcy5tYXhJdGVtc1BlckJhdGNoICYmIHtcbiAgICAgICAgTWF4SXRlbXNQZXJCYXRjaDogdGhpcy5wcm9wcy5tYXhJdGVtc1BlckJhdGNoLFxuICAgICAgfSksXG4gICAgICAuLi4odGhpcy5wcm9wcy5tYXhJdGVtc1BlckJhdGNoUGF0aCAmJiB7XG4gICAgICAgIE1heEl0ZW1zUGVyQmF0Y2hQYXRoOiB0aGlzLnByb3BzLm1heEl0ZW1zUGVyQmF0Y2hQYXRoLFxuICAgICAgfSksXG4gICAgICAuLi4odGhpcy5wcm9wcy5tYXhJbnB1dEJ5dGVzUGVyQmF0Y2ggJiYge1xuICAgICAgICBNYXhJbnB1dEJ5dGVzUGVyQmF0Y2g6IHRoaXMucHJvcHMubWF4SW5wdXRCeXRlc1BlckJhdGNoLFxuICAgICAgfSksXG4gICAgICAuLi4odGhpcy5wcm9wcy5tYXhJbnB1dEJ5dGVzUGVyQmF0Y2hQYXRoICYmIHtcbiAgICAgICAgTWF4SW5wdXRCeXRlc1BlckJhdGNoUGF0aDogdGhpcy5wcm9wcy5tYXhJbnB1dEJ5dGVzUGVyQmF0Y2hQYXRoLFxuICAgICAgfSksXG4gICAgICAuLi4odGhpcy5wcm9wcy5iYXRjaElucHV0ICYmIHsgQmF0Y2hJbnB1dDogdGhpcy5wcm9wcy5iYXRjaElucHV0IH0pLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGUgdGhpcyBJdGVtQmF0Y2hlclxuICAgKi9cbiAgcHVibGljIHZhbGlkYXRlSXRlbUJhdGNoZXIoKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGVycm9yczogc3RyaW5nW10gPSBbXTtcbiAgICBpZiAodGhpcy5wcm9wcy5tYXhJdGVtc1BlckJhdGNoICYmIHRoaXMucHJvcHMubWF4SXRlbXNQZXJCYXRjaFBhdGgpIHtcbiAgICAgIGVycm9ycy5wdXNoKFxuICAgICAgICBcIlByb3ZpZGUgZWl0aGVyIGBtYXhJdGVtc1BlckJhdGNoYCBvciBgbWF4SXRlbXNQZXJCYXRjaFBhdGhgLCBidXQgbm90IGJvdGhcIixcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgdGhpcy5wcm9wcy5tYXhJbnB1dEJ5dGVzUGVyQmF0Y2ggJiZcbiAgICAgIHRoaXMucHJvcHMubWF4SW5wdXRCeXRlc1BlckJhdGNoUGF0aFxuICAgICkge1xuICAgICAgZXJyb3JzLnB1c2goXG4gICAgICAgIFwiUHJvdmlkZSBlaXRoZXIgYG1heElucHV0Qnl0ZXNQZXJCYXRjaGAgb3IgYG1heElucHV0Qnl0ZXNQZXJCYXRjaFBhdGhgLCBidXQgbm90IGJvdGhcIixcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgIXRoaXMucHJvcHMubWF4SXRlbXNQZXJCYXRjaCAmJlxuICAgICAgIXRoaXMucHJvcHMubWF4SXRlbXNQZXJCYXRjaFBhdGggJiZcbiAgICAgICF0aGlzLnByb3BzLm1heElucHV0Qnl0ZXNQZXJCYXRjaCAmJlxuICAgICAgIXRoaXMucHJvcHMubWF4SW5wdXRCeXRlc1BlckJhdGNoUGF0aCAmJlxuICAgICAgIXRoaXMucHJvcHMuYmF0Y2hJbnB1dFxuICAgICkge1xuICAgICAgZXJyb3JzLnB1c2goXCJQcm92aWRlIGF0IGxlYXN0IG9uZSB2YWx1ZSB0byB0aGUgSXRlbUJhdGNoZXJcIik7XG4gICAgfVxuXG4gICAgcmV0dXJuIGVycm9ycztcbiAgfVxufVxuIl19
@@ -77,7 +77,7 @@ class S3ObjectsItemReader {
77
77
  }
78
78
  exports.S3ObjectsItemReader = S3ObjectsItemReader;
79
79
  _a = JSII_RTTI_SYMBOL_1;
80
- S3ObjectsItemReader[_a] = { fqn: "terraconstructs.aws.compute.S3ObjectsItemReader", version: "0.2.4" };
80
+ S3ObjectsItemReader[_a] = { fqn: "terraconstructs.aws.compute.S3ObjectsItemReader", version: "0.2.5" };
81
81
  /**
82
82
  * Base Item Reader configuration for iterating over entries in a S3 file
83
83
  */
@@ -172,7 +172,7 @@ class S3JsonItemReader extends S3FileItemReader {
172
172
  }
173
173
  exports.S3JsonItemReader = S3JsonItemReader;
174
174
  _b = JSII_RTTI_SYMBOL_1;
175
- S3JsonItemReader[_b] = { fqn: "terraconstructs.aws.compute.S3JsonItemReader", version: "0.2.4" };
175
+ S3JsonItemReader[_b] = { fqn: "terraconstructs.aws.compute.S3JsonItemReader", version: "0.2.5" };
176
176
  /**
177
177
  * CSV header location options
178
178
  */
@@ -213,7 +213,7 @@ class CsvHeaders {
213
213
  }
214
214
  exports.CsvHeaders = CsvHeaders;
215
215
  _c = JSII_RTTI_SYMBOL_1;
216
- CsvHeaders[_c] = { fqn: "terraconstructs.aws.compute.CsvHeaders", version: "0.2.4" };
216
+ CsvHeaders[_c] = { fqn: "terraconstructs.aws.compute.CsvHeaders", version: "0.2.5" };
217
217
  /**
218
218
  * Item Reader configuration for iterating over items in a CSV file stored in S3
219
219
  */
@@ -237,7 +237,7 @@ class S3CsvItemReader extends S3FileItemReader {
237
237
  }
238
238
  exports.S3CsvItemReader = S3CsvItemReader;
239
239
  _d = JSII_RTTI_SYMBOL_1;
240
- S3CsvItemReader[_d] = { fqn: "terraconstructs.aws.compute.S3CsvItemReader", version: "0.2.4" };
240
+ S3CsvItemReader[_d] = { fqn: "terraconstructs.aws.compute.S3CsvItemReader", version: "0.2.5" };
241
241
  /**
242
242
  * Item Reader configuration for iterating over items in a S3 inventory manifest file stored in S3
243
243
  */
@@ -249,5 +249,5 @@ class S3ManifestItemReader extends S3FileItemReader {
249
249
  }
250
250
  exports.S3ManifestItemReader = S3ManifestItemReader;
251
251
  _e = JSII_RTTI_SYMBOL_1;
252
- S3ManifestItemReader[_e] = { fqn: "terraconstructs.aws.compute.S3ManifestItemReader", version: "0.2.4" };
252
+ S3ManifestItemReader[_e] = { fqn: "terraconstructs.aws.compute.S3ManifestItemReader", version: "0.2.5" };
253
253
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS1yZWFkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXdzL2NvbXB1dGUvc3RhdGVzL2Rpc3RyaWJ1dGVkLW1hcC9pdGVtLXJlYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUdBLGdDQUFvRDtBQUNwRCxvQ0FBb0M7QUFFcEMseUNBQTBDO0FBdUYxQzs7R0FFRztBQUNILE1BQWEsbUJBQW1CO0lBbUM5QixJQUFjLFNBQVM7UUFDckIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDaEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUM7UUFDbkMsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3pCLE9BQU8sWUFBUSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQ2pFLENBQUM7UUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLDRCQUE0QixDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELFlBQVksS0FBK0I7UUFDekMsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQzNCLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQztRQUMzQyxJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQyxlQUFlLENBQUM7UUFDN0MsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQzNCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQztRQUMvQixJQUFJLENBQUMsUUFBUSxHQUFHLE9BQUcsQ0FBQyxNQUFNLENBQUM7WUFDekIsTUFBTSxFQUFFLEVBQUU7WUFDVixPQUFPLEVBQUUsRUFBRTtZQUNYLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixPQUFPLEVBQUUsUUFBUTtZQUNq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LE9BQU8sSUFBSSxVQUFVLENBQUMsaUJBQWlCLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFZRCxZQUFvQixjQUFpQyxFQUFFLE9BQWtCO1FBQ3ZFLElBQUksQ0FBQyxjQUFjLEdBQUcsY0FBYyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQ3pCLENBQUM7O0FBL0JILGdDQWdDQzs7O0FBY0Q7O0dBRUc7QUFDSCxNQUFhLGVBQWdCLFNBQVEsZ0JBQWdCO0lBT25ELFlBQVksS0FBMkI7UUFDckMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBSEksY0FBUyxHQUFXLEtBQUssQ0FBQztRQUkzQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxVQUFVLElBQUksVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2pFLENBQUM7SUFFTSxNQUFNO1FBQ1gsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBRWhDLFFBQVEsQ0FBQyxZQUFZLEdBQUcsbUJBQVUsQ0FBQyxZQUFZLENBQUM7WUFDOUMsR0FBRyxRQUFRLENBQUMsWUFBWTtZQUN4QixHQUFHO2dCQUNELGlCQUFpQixFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYztnQkFDakQsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxJQUFJLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLENBQUM7YUFDeEU7U0FDRixDQUFDLENBQUM7UUFFSCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDOztBQXhCSCwwQ0F5QkM7OztBQUVEOztHQUVHO0FBQ0gsTUFBYSxvQkFBcUIsU0FBUSxnQkFBZ0I7SUFBMUQ7O1FBQ3FCLGNBQVMsR0FBVyxVQUFVLENBQUM7S0FDbkQ7O0FBRkQsb0RBRUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNjAuMC9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3Mtc3RlcGZ1bmN0aW9ucy9saWIvc3RhdGVzL2l0ZW0tcmVhZGVyLnRzXG5cbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBBcm4sIEFybkZvcm1hdCwgQXdzU3RhY2sgfSBmcm9tIFwiLi4vLi4vLi5cIjtcbmltcG9ydCAqIGFzIGlhbSBmcm9tIFwiLi4vLi4vLi4vaWFtXCI7XG5pbXBvcnQgeyBJQnVja2V0IH0gZnJvbSBcIi4uLy4uLy4uL3N0b3JhZ2VcIjtcbmltcG9ydCB7IEZpZWxkVXRpbHMgfSBmcm9tIFwiLi4vLi4vZmllbGRzXCI7XG5cbi8qKlxuICogQmFzZSBpbnRlcmZhY2UgZm9yIEl0ZW0gUmVhZGVyIGNvbmZpZ3VyYXRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUl0ZW1SZWFkZXIge1xuICAvKipcbiAgICogUzMgQnVja2V0IGNvbnRhaW5pbmcgb2JqZWN0cyB0byBpdGVyYXRlIG92ZXIgb3IgYSBmaWxlIHdpdGggYSBsaXN0IHRvIGl0ZXJhdGUgb3ZlclxuICAgKi9cbiAgcmVhZG9ubHkgYnVja2V0PzogSUJ1Y2tldDtcblxuICAvKipcbiAgICogUzMgYnVja2V0IG5hbWUgY29udGFpbmluZyBvYmplY3RzIHRvIGl0ZXJhdGUgb3ZlciBvciBhIGZpbGUgd2l0aCBhIGxpc3QgdG8gaXRlcmF0ZSBvdmVyLCBhcyBKc29uUGF0aFxuICAgKi9cbiAgcmVhZG9ubHkgYnVja2V0TmFtZVBhdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBbWF6b24gUzMgQVBJIGFjdGlvbiB0aGF0IFN0ZXAgRnVuY3Rpb25zIG11c3QgaW52b2tlIGRlcGVuZGluZyBvbiB0aGUgc3BlY2lmaWVkIGRhdGFzZXQuXG4gICAqL1xuICByZWFkb25seSByZXNvdXJjZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaW1pdHMgdGhlIG51bWJlciBvZiBpdGVtcyBwYXNzZWQgdG8gdGhlIERpc3RyaWJ1dGVkIE1hcCBzdGF0ZVxuICAgKlxuICAgKiBAZGVmYXVsdCAtIERpc3RyaWJ1dGVkIE1hcCBzdGF0ZSB3aWxsIGl0ZXJhdGUgb3ZlciBhbGwgaXRlbXMgcHJvdmlkZWQgYnkgdGhlIEl0ZW1SZWFkZXJcbiAgICovXG4gIHJlYWRvbmx5IG1heEl0ZW1zPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBSZW5kZXIgdGhlIEl0ZW1SZWFkZXIgYXMgSlNPTiBvYmplY3RcbiAgICovXG4gIHJlbmRlcigpOiBhbnk7XG5cbiAgLyoqXG4gICAqIENvbXBpbGUgcG9saWN5IHN0YXRlbWVudHMgdG8gcHJvdmlkZSByZWxldmVudCBwZXJtaXNzaW9ucyB0byB0aGUgc3RhdGUgbWFjaGluZVxuICAgKi9cbiAgcHJvdmlkZVBvbGljeVN0YXRlbWVudHMoKTogaWFtLlBvbGljeVN0YXRlbWVudFtdO1xuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZSB0aGF0IEl0ZW1SZWFkZXIgY29udGFpbnMgZXhhY3RseSBlaXRoZXIgQHNlZSBidWNrZXQgb3IgQHNlZSBidWNrZXROYW1lUGF0aFxuICAgKi9cbiAgdmFsaWRhdGVJdGVtUmVhZGVyKCk6IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIEJhc2UgaW50ZXJmYWNlIGZvciBJdGVtIFJlYWRlciBjb25maWd1cmF0aW9uIHByb3BlcnRpZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJdGVtUmVhZGVyUHJvcHMge1xuICAvKipcbiAgICogUzMgQnVja2V0IGNvbnRhaW5pbmcgb2JqZWN0cyB0byBpdGVyYXRlIG92ZXIgb3IgYSBmaWxlIHdpdGggYSBsaXN0IHRvIGl0ZXJhdGUgb3ZlclxuICAgKlxuICAgKiBAZGVmYXVsdCAtIFMzIGJ1Y2tldCB3aWxsIGJlIGRldGVybWluZWQgZnJvbSBAc2VlIGJ1Y2tldE5hbWVQYXRoXG4gICAqL1xuICByZWFkb25seSBidWNrZXQ/OiBJQnVja2V0O1xuXG4gIC8qKlxuICAgKiBTMyBidWNrZXQgbmFtZSBjb250YWluaW5nIG9iamVjdHMgdG8gaXRlcmF0ZSBvdmVyIG9yIGEgZmlsZSB3aXRoIGEgbGlzdCB0byBpdGVyYXRlIG92ZXIsIGFzIEpzb25QYXRoXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gUzMgYnVja2V0IHdpbGwgYmUgZGV0ZXJtaW5lZCBmcm9tIEBzZWUgYnVja2V0XG4gICAqL1xuICByZWFkb25seSBidWNrZXROYW1lUGF0aD86IHN0cmluZztcblxuICAvKipcbiAgICogUzMgYnVja2V0IG5hbWUgc2NvcGUsIG9ubHkgcmVxdWlyZWQgaWYgQHNlZSBidWNrZXROYW1lUGF0aCBpcyBwcm92aWRlZFxuICAgKi9cbiAgcmVhZG9ubHkgYnVja2V0TmFtZVNjb3BlPzogQ29uc3RydWN0O1xuXG4gIC8qKlxuICAgKiBMaW1pdHMgdGhlIG51bWJlciBvZiBpdGVtcyBwYXNzZWQgdG8gdGhlIERpc3RyaWJ1dGVkIE1hcCBzdGF0ZVxuICAgKlxuICAgKiBAZGVmYXVsdCAtIERpc3RyaWJ1dGVkIE1hcCBzdGF0ZSB3aWxsIGl0ZXJhdGUgb3ZlciBhbGwgaXRlbXMgcHJvdmlkZWQgYnkgdGhlIEl0ZW1SZWFkZXJcbiAgICovXG4gIHJlYWRvbmx5IG1heEl0ZW1zPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGNvbmZpZ3VyaW5nIGFuIEl0ZW0gUmVhZGVyIHRoYXQgaXRlcmF0ZXMgb3ZlciBvYmplY3RzIGluIGFuIFMzIGJ1Y2tldFxuICovXG5leHBvcnQgaW50ZXJmYWNlIFMzT2JqZWN0c0l0ZW1SZWFkZXJQcm9wcyBleHRlbmRzIEl0ZW1SZWFkZXJQcm9wcyB7XG4gIC8qKlxuICAgKiBTMyBwcmVmaXggdXNlZCB0byBsaW1pdCBvYmplY3RzIHRvIGl0ZXJhdGUgb3ZlclxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIHByZWZpeFxuICAgKi9cbiAgcmVhZG9ubHkgcHJlZml4Pzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEl0ZW0gUmVhZGVyIGNvbmZpZ3VyYXRpb24gZm9yIGl0ZXJhdGluZyBvdmVyIG9iamVjdHMgaW4gYW4gUzMgYnVja2V0XG4gKi9cbmV4cG9ydCBjbGFzcyBTM09iamVjdHNJdGVtUmVhZGVyIGltcGxlbWVudHMgSUl0ZW1SZWFkZXIge1xuICAvKipcbiAgICogUzMgQnVja2V0IGNvbnRhaW5pbmcgb2JqZWN0cyB0byBpdGVyYXRlIG92ZXJcbiAgICovXG4gIHJlYWRvbmx5IGJ1Y2tldD86IElCdWNrZXQ7XG5cbiAgLyoqXG4gICAqIFMzIGJ1Y2tldCBuYW1lIGNvbnRhaW5pbmcgb2JqZWN0cyB0byBpdGVyYXRlIG92ZXIgb3IgYSBmaWxlIHdpdGggYSBsaXN0IHRvIGl0ZXJhdGUgb3ZlciwgYXMgSnNvblBhdGhcbiAgICovXG4gIHJlYWRvbmx5IGJ1Y2tldE5hbWVQYXRoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBUk4gZm9yIHRoZSBgbGlzdE9iamVjdHNWMmAgbWV0aG9kIG9mIHRoZSBTMyBBUElcbiAgICogVGhpcyBBUEkgbWV0aG9kIGlzIHVzZWQgdG8gaXRlcmF0ZSBhbGwgb2JqZWN0cyBpbiB0aGUgUzMgYnVja2V0L3ByZWZpeFxuICAgKi9cbiAgcmVhZG9ubHkgcmVzb3VyY2U6IHN0cmluZztcblxuICAvKipcbiAgICogUzMgcHJlZml4IHVzZWQgdG8gbGltaXQgb2JqZWN0cyB0byBpdGVyYXRlIG92ZXJcbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyBwcmVmaXhcbiAgICovXG4gIHJlYWRvbmx5IHByZWZpeD86IHN0cmluZztcblxuICAvKipcbiAgICogTGltaXRzIHRoZSBudW1iZXIgb2YgaXRlbXMgcGFzc2VkIHRvIHRoZSBEaXN0cmlidXRlZCBNYXAgc3RhdGVcbiAgICpcbiAgICogQGRlZmF1bHQgLSBEaXN0cmlidXRlZCBNYXAgc3RhdGUgd2lsbCBpdGVyYXRlIG92ZXIgYWxsIGl0ZW1zIHByb3ZpZGVkIGJ5IHRoZSBJdGVtUmVhZGVyXG4gICAqL1xuICByZWFkb25seSBtYXhJdGVtcz86IG51bWJlcjtcblxuICAvKipcbiAgICogUzMgYnVja2V0IG5hbWUgc2NvcGVcbiAgICovXG4gIHJlYWRvbmx5IGJ1Y2tldE5hbWVTY29wZT86IENvbnN0cnVjdDtcbiAgcHJvdGVjdGVkIGdldCBwYXJ0aXRpb24oKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5idWNrZXQpIHtcbiAgICAgIHJldHVybiB0aGlzLmJ1Y2tldC5lbnYucGFydGl0aW9uO1xuICAgIH1cbiAgICBpZiAodGhpcy5idWNrZXROYW1lU2NvcGUpIHtcbiAgICAgIHJldHVybiBBd3NTdGFjay5vZkF3c0NvbnN0cnVjdCh0aGlzLmJ1Y2tldE5hbWVTY29wZSkucGFydGl0aW9uO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJDYW5ub3QgZGV0ZXJtaW5lIHBhcnRpdGlvblwiKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByb3BzOiBTM09iamVjdHNJdGVtUmVhZGVyUHJvcHMpIHtcbiAgICB0aGlzLmJ1Y2tldCA9IHByb3BzLmJ1Y2tldDtcbiAgICB0aGlzLmJ1Y2tldE5hbWVQYXRoID0gcHJvcHMuYnVja2V0TmFtZVBhdGg7XG4gICAgdGhpcy5idWNrZXROYW1lU2NvcGUgPSBwcm9wcy5idWNrZXROYW1lU2NvcGU7XG4gICAgdGhpcy5wcmVmaXggPSBwcm9wcy5wcmVmaXg7XG4gICAgdGhpcy5tYXhJdGVtcyA9IHByb3BzLm1heEl0ZW1zO1xuICAgIHRoaXMucmVzb3VyY2UgPSBBcm4uZm9ybWF0KHtcbiAgICAgIHJlZ2lvbjogXCJcIixcbiAgICAgIGFjY291bnQ6IFwiXCIsXG4gICAgICBwYXJ0aXRpb246IHRoaXMucGFydGl0aW9uLFxuICAgICAgc2VydmljZTogXCJzdGF0ZXNcIixcbiAgICAgIHJlc291cmNlOiBcInMzXCIsXG4gICAgICByZXNvdXJjZU5hbWU6IFwibGlzdE9iamVjdHNWMlwiLFxuICAgICAgYXJuRm9ybWF0OiBBcm5Gb3JtYXQuQ09MT05fUkVTT1VSQ0VfTkFNRSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW5kZXJzIHRoZSBJdGVtUmVhZGVyIGNvbmZpZ3VyYXRpb24gYXMgSlNPTiBvYmplY3RcbiAgICogQHJldHVybnMgLSBKU09OIG9iamVjdFxuICAgKi9cbiAgcHVibGljIHJlbmRlcigpOiBhbnkge1xuICAgIHJldHVybiBGaWVsZFV0aWxzLnJlbmRlck9iamVjdCh7XG4gICAgICBSZXNvdXJjZTogdGhpcy5yZXNvdXJjZSxcbiAgICAgIC4uLih0aGlzLm1heEl0ZW1zICYmIHsgUmVhZGVyQ29uZmlnOiB7IE1heEl0ZW1zOiB0aGlzLm1heEl0ZW1zIH0gfSksXG4gICAgICBQYXJhbWV0ZXJzOiB7XG4gICAgICAgIC4uLih0aGlzLmJ1Y2tldCAmJiB7IEJ1Y2tldDogdGhpcy5idWNrZXQuYnVja2V0TmFtZSB9KSxcbiAgICAgICAgLi4uKHRoaXMuYnVja2V0TmFtZVBhdGggJiYgeyBCdWNrZXQ6IHRoaXMuYnVja2V0TmFtZVBhdGggfSksXG4gICAgICAgIC4uLih0aGlzLnByZWZpeCAmJiB7IFByZWZpeDogdGhpcy5wcmVmaXggfSksXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbXBpbGUgcG9saWN5IHN0YXRlbWVudHMgdG8gcHJvdmlkZSByZWxldmVudCBwZXJtaXNzaW9ucyB0byB0aGUgc3RhdGUgbWFjaGluZVxuICAgKi9cbiAgcHVibGljIHByb3ZpZGVQb2xpY3lTdGF0ZW1lbnRzKCk6IGlhbS5Qb2xpY3lTdGF0ZW1lbnRbXSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgYWN0aW9uczogW1wiczM6TGlzdEJ1Y2tldFwiXSxcbiAgICAgICAgcmVzb3VyY2VzOiBbdGhpcy5idWNrZXQgPyB0aGlzLmJ1Y2tldC5idWNrZXRBcm4gOiBcIipcIl0sXG4gICAgICB9KSxcbiAgICBdO1xuICB9XG5cbiAgLyoqXG4gICAqIFZhbGlkYXRlIHRoYXQgSXRlbVJlYWRlciBjb250YWlucyBleGFjdGx5IGVpdGhlciBAc2VlIGJ1Y2tldCBvciBAc2VlIGJ1Y2tldE5hbWVQYXRoXG4gICAqL1xuICBwdWJsaWMgdmFsaWRhdGVJdGVtUmVhZGVyKCk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBlcnJvcnM6IHN0cmluZ1tdID0gW107XG4gICAgaWYgKHRoaXMuYnVja2V0ICYmIHRoaXMuYnVja2V0TmFtZVBhdGgpIHtcbiAgICAgIGVycm9ycy5wdXNoKFwiUHJvdmlkZSBlaXRoZXIgYGJ1Y2tldGAgb3IgYGJ1Y2tldE5hbWVQYXRoYCwgYnV0IG5vdCBib3RoXCIpO1xuICAgIH0gZWxzZSBpZiAoIXRoaXMuYnVja2V0ICYmICF0aGlzLmJ1Y2tldE5hbWVQYXRoKSB7XG4gICAgICBlcnJvcnMucHVzaChcIlByb3ZpZGUgZWl0aGVyIGBidWNrZXRgIG9yIGBidWNrZXROYW1lUGF0aGBcIik7XG4gICAgfVxuICAgIHJldHVybiBlcnJvcnM7XG4gIH1cbn1cblxuLyoqXG4gKiBCYXNlIGludGVyZmFjZSBmb3IgSXRlbSBSZWFkZXIgY29uZmlndXJhdGlvbiBwcm9wZXJ0aWVzIHRoZSBpdGVyYXRlIG92ZXIgZW50cmllcyBpbiBhIFMzIGZpbGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTM0ZpbGVJdGVtUmVhZGVyUHJvcHMgZXh0ZW5kcyBJdGVtUmVhZGVyUHJvcHMge1xuICAvKipcbiAgICogS2V5IG9mIGZpbGUgc3RvcmVkIGluIFMzIGJ1Y2tldCBjb250YWluaW5nIGFuIGFycmF5IHRvIGl0ZXJhdGUgb3ZlclxuICAgKi9cbiAgcmVhZG9ubHkga2V5OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQmFzZSBJdGVtIFJlYWRlciBjb25maWd1cmF0aW9uIGZvciBpdGVyYXRpbmcgb3ZlciBlbnRyaWVzIGluIGEgUzMgZmlsZVxuICovXG5hYnN0cmFjdCBjbGFzcyBTM0ZpbGVJdGVtUmVhZGVyIGltcGxlbWVudHMgSUl0ZW1SZWFkZXIge1xuICAvKipcbiAgICogUzMgQnVja2V0IGNvbnRhaW5pbmcgYSBmaWxlIHdpdGggYSBsaXN0IHRvIGl0ZXJhdGUgb3ZlclxuICAgKi9cbiAgcmVhZG9ubHkgYnVja2V0PzogSUJ1Y2tldDtcblxuICAvKipcbiAgICogUzMgYnVja2V0IG5hbWUgY29udGFpbmluZyBvYmplY3RzIHRvIGl0ZXJhdGUgb3ZlciBvciBhIGZpbGUgd2l0aCBhIGxpc3QgdG8gaXRlcmF0ZSBvdmVyLCBhcyBKc29uUGF0aFxuICAgKi9cbiAgcmVhZG9ubHkgYnVja2V0TmFtZVBhdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFMzIGtleSBvZiBhIGZpbGUgd2l0aCBhIGxpc3QgdG8gaXRlcmF0ZSBvdmVyXG4gICAqL1xuICByZWFkb25seSBrZXk6IHN0cmluZztcblxuICAvKipcbiAgICogQVJOIGZvciB0aGUgYGdldE9iamVjdGAgbWV0aG9kIG9mIHRoZSBTMyBBUElcbiAgICogVGhpcyBBUEkgbWV0aG9kIGlzIHVzZWQgdG8gaXRlcmF0ZSBhbGwgb2JqZWN0cyBpbiB0aGUgUzMgYnVja2V0L3ByZWZpeFxuICAgKi9cbiAgcmVhZG9ubHkgcmVzb3VyY2U6IHN0cmluZztcblxuICAvKipcbiAgICogTGltaXRzIHRoZSBudW1iZXIgb2YgaXRlbXMgcGFzc2VkIHRvIHRoZSBEaXN0cmlidXRlZCBNYXAgc3RhdGVcbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyBtYXhJdGVtc1xuICAgKi9cbiAgcmVhZG9ubHkgbWF4SXRlbXM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFMzIGJ1Y2tldCBuYW1lIHNjb3BlXG4gICAqL1xuICByZWFkb25seSBidWNrZXROYW1lU2NvcGU/OiBDb25zdHJ1Y3Q7XG4gIHByb3RlY3RlZCBnZXQgcGFydGl0aW9uKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuYnVja2V0KSB7XG4gICAgICByZXR1cm4gdGhpcy5idWNrZXQuZW52LnBhcnRpdGlvbjtcbiAgICB9XG4gICAgaWYgKHRoaXMuYnVja2V0TmFtZVNjb3BlKSB7XG4gICAgICByZXR1cm4gQXdzU3RhY2sub2ZBd3NDb25zdHJ1Y3QodGhpcy5idWNrZXROYW1lU2NvcGUpLnBhcnRpdGlvbjtcbiAgICB9XG4gICAgdGhyb3cgbmV3IEVycm9yKFwiQ2Fubm90IGRldGVybWluZSBwYXJ0aXRpb25cIik7XG4gIH1cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcmVhZG9ubHkgaW5wdXRUeXBlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHJvcHM6IFMzRmlsZUl0ZW1SZWFkZXJQcm9wcykge1xuICAgIHRoaXMuYnVja2V0ID0gcHJvcHMuYnVja2V0O1xuICAgIHRoaXMuYnVja2V0TmFtZVBhdGggPSBwcm9wcy5idWNrZXROYW1lUGF0aDtcbiAgICB0aGlzLmJ1Y2tldE5hbWVTY29wZSA9IHByb3BzLmJ1Y2tldE5hbWVTY29wZTtcbiAgICB0aGlzLmtleSA9IHByb3BzLmtleTtcbiAgICB0aGlzLm1heEl0ZW1zID0gcHJvcHMubWF4SXRlbXM7XG4gICAgdGhpcy5yZXNvdXJjZSA9IEFybi5mb3JtYXQoe1xuICAgICAgcmVnaW9uOiBcIlwiLFxuICAgICAgYWNjb3VudDogXCJcIixcbiAgICAgIHBhcnRpdGlvbjogdGhpcy5wYXJ0aXRpb24sXG4gICAgICBzZXJ2aWNlOiBcInN0YXRlc1wiLFxuICAgICAgcmVzb3VyY2U6IFwiczNcIixcbiAgICAgIHJlc291cmNlTmFtZTogXCJnZXRPYmplY3RcIixcbiAgICAgIGFybkZvcm1hdDogQXJuRm9ybWF0LkNPTE9OX1JFU09VUkNFX05BTUUsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmVuZGVycyB0aGUgSXRlbVJlYWRlciBjb25maWd1cmF0aW9uIGFzIEpTT04gb2JqZWN0XG4gICAqIEByZXR1cm5zIC0gSlNPTiBvYmplY3RcbiAgICovXG4gIHB1YmxpYyByZW5kZXIoKTogYW55IHtcbiAgICByZXR1cm4gRmllbGRVdGlscy5yZW5kZXJPYmplY3Qoe1xuICAgICAgUmVzb3VyY2U6IHRoaXMucmVzb3VyY2UsXG4gICAgICBSZWFkZXJDb25maWc6IHtcbiAgICAgICAgSW5wdXRUeXBlOiB0aGlzLmlucHV0VHlwZSxcbiAgICAgICAgLi4uKHRoaXMubWF4SXRlbXMgJiYgeyBNYXhJdGVtczogdGhpcy5tYXhJdGVtcyB9KSxcbiAgICAgIH0sXG4gICAgICBQYXJhbWV0ZXJzOiB7XG4gICAgICAgIC4uLih0aGlzLmJ1Y2tldCAmJiB7IEJ1Y2tldDogdGhpcy5idWNrZXQuYnVja2V0TmFtZSB9KSxcbiAgICAgICAgLi4uKHRoaXMuYnVja2V0TmFtZVBhdGggJiYgeyBCdWNrZXQ6IHRoaXMuYnVja2V0TmFtZVBhdGggfSksXG4gICAgICAgIEtleTogdGhpcy5rZXksXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbXBpbGUgcG9saWN5IHN0YXRlbWVudHMgdG8gcHJvdmlkZSByZWxldmVudCBwZXJtaXNzaW9ucyB0byB0aGUgc3RhdGUgbWFjaGluZVxuICAgKi9cbiAgcHVibGljIHByb3ZpZGVQb2xpY3lTdGF0ZW1lbnRzKCk6IGlhbS5Qb2xpY3lTdGF0ZW1lbnRbXSB7XG4gICAgaWYgKCF0aGlzLmJ1Y2tldCkgcmV0dXJuIFtdO1xuICAgIGNvbnN0IHJlc291cmNlID0gQXJuLmZvcm1hdCh7XG4gICAgICByZWdpb246IFwiXCIsXG4gICAgICBhY2NvdW50OiBcIlwiLFxuICAgICAgcGFydGl0aW9uOiB0aGlzLmJ1Y2tldC5lbnYucGFydGl0aW9uLFxuICAgICAgc2VydmljZTogXCJzM1wiLFxuICAgICAgcmVzb3VyY2U6IHRoaXMuYnVja2V0LmJ1Y2tldE5hbWUsXG4gICAgICByZXNvdXJjZU5hbWU6IFwiKlwiLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIFtcbiAgICAgIG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgYWN0aW9uczogW1wiczM6R2V0T2JqZWN0XCJdLFxuICAgICAgICByZXNvdXJjZXM6IFtyZXNvdXJjZV0sXG4gICAgICB9KSxcbiAgICBdO1xuICB9XG5cbiAgLyoqXG4gICAqIFZhbGlkYXRlIHRoYXQgSXRlbVJlYWRlciBjb250YWlucyBleGFjdGx5IGVpdGhlciBAc2VlIGJ1Y2tldCBvciBAc2VlIGJ1Y2tldE5hbWVQYXRoIGFuZCBAc2VlIGJ1Y2tldE5hbWVTY29wZVxuICAgKi9cbiAgcHVibGljIHZhbGlkYXRlSXRlbVJlYWRlcigpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgZXJyb3JzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGlmICh0aGlzLmJ1Y2tldCAmJiAodGhpcy5idWNrZXROYW1lUGF0aCB8fCB0aGlzLmJ1Y2tldE5hbWVTY29wZSkpIHtcbiAgICAgIGVycm9ycy5wdXNoKFxuICAgICAgICBcIlByb3ZpZGUgZWl0aGVyIGBidWNrZXRgIG9yIGBidWNrZXROYW1lUGF0aGAgYW5kIGBidWNrZXROYW1lU2NvcGVgLCBidXQgbm90IGJvdGhcIixcbiAgICAgICk7XG4gICAgfSBlbHNlIGlmIChcbiAgICAgICF0aGlzLmJ1Y2tldCAmJlxuICAgICAgKCF0aGlzLmJ1Y2tldE5hbWVQYXRoIHx8ICF0aGlzLmJ1Y2tldE5hbWVTY29wZSlcbiAgICApIHtcbiAgICAgIGVycm9ycy5wdXNoKFxuICAgICAgICBcIlByb3ZpZGUgZWl0aGVyIGBidWNrZXRgIG9yIGBidWNrZXROYW1lUGF0aGAgJiYgYGJ1Y2tldE5hbWVTY29wZWBcIixcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiBlcnJvcnM7XG4gIH1cbn1cblxuLyoqXG4gKiBJdGVtIFJlYWRlciBjb25maWd1cmF0aW9uIGZvciBpdGVyYXRpbmcgb3ZlciBpdGVtcyBpbiBhIEpTT04gYXJyYXkgc3RvcmVkIGluIGEgUzMgZmlsZVxuICovXG5leHBvcnQgY2xhc3MgUzNKc29uSXRlbVJlYWRlciBleHRlbmRzIFMzRmlsZUl0ZW1SZWFkZXIge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaW5wdXRUeXBlOiBzdHJpbmcgPSBcIkpTT05cIjtcbn1cblxuLyoqXG4gKiBDU1YgaGVhZGVyIGxvY2F0aW9uIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGVudW0gQ3N2SGVhZGVyTG9jYXRpb24ge1xuICAvKipcbiAgICogSGVhZGVycyB3aWxsIGJlIHJlYWQgZnJvbSBmaXJzdCByb3cgb2YgQ1NWIGZpbGVcbiAgICovXG4gIEZJUlNUX1JPVyA9IFwiRklSU1RfUk9XXCIsXG5cbiAgLyoqXG4gICAqIEhlYWRlcnMgYXJlIHByb3ZpZGVkIGluIENTVkhlYWRlcnMgcHJvcGVydHlcbiAgICovXG4gIEdJVkVOID0gXCJHSVZFTlwiLFxufVxuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gZm9yIENTViBoZWFkZXIgb3B0aW9ucyBmb3IgYSBDU1YgSXRlbSBSZWFkZXJcbiAqL1xuZXhwb3J0IGNsYXNzIENzdkhlYWRlcnMge1xuICAvKipcbiAgICogQ29uZmlndXJlcyBTM0Nzdkl0ZW1SZWFkZXIgdG8gcmVhZCBoZWFkZXJzIGZyb20gdGhlIGZpcnN0IHJvdyBvZiB0aGUgQ1NWIGZpbGVcbiAgICogQHJldHVybnMgLSBDc3ZIZWFkZXJzXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHVzZUZpcnN0Um93KCk6IENzdkhlYWRlcnMge1xuICAgIHJldHVybiBuZXcgQ3N2SGVhZGVycyhDc3ZIZWFkZXJMb2NhdGlvbi5GSVJTVF9ST1cpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbmZpZ3VyZXMgUzNDc3ZJdGVtUmVhZGVyIHRvIHVzZSB0aGUgaGVhZGVycyBwcm92aWRlZCBpbiB0aGUgYGhlYWRlcnNgIHBhcmFtZXRlclxuICAgKiBAcGFyYW0gaGVhZGVycyAtIExpc3Qgb2YgaGVhZGVyc1xuICAgKiBAcmV0dXJucyAtIENzdkhlYWRlcnNcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgdXNlKGhlYWRlcnM6IHN0cmluZ1tdKTogQ3N2SGVhZGVycyB7XG4gICAgcmV0dXJuIG5ldyBDc3ZIZWFkZXJzKENzdkhlYWRlckxvY2F0aW9uLkdJVkVOLCBoZWFkZXJzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2NhdGlvbiBvZiBoZWFkZXJzIGluIENTViBmaWxlXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaGVhZGVyTG9jYXRpb246IENzdkhlYWRlckxvY2F0aW9uO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIGhlYWRlcnMgaWYgYGhlYWRlckxvY2F0aW9uYCBpcyBgR0lWRU5gXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaGVhZGVycz86IHN0cmluZ1tdO1xuXG4gIHByaXZhdGUgY29uc3RydWN0b3IoaGVhZGVyTG9jYXRpb246IENzdkhlYWRlckxvY2F0aW9uLCBoZWFkZXJzPzogc3RyaW5nW10pIHtcbiAgICB0aGlzLmhlYWRlckxvY2F0aW9uID0gaGVhZGVyTG9jYXRpb247XG4gICAgdGhpcy5oZWFkZXJzID0gaGVhZGVycztcbiAgfVxufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGNvbmZpZ3VyaW5nIGFuIEl0ZW0gUmVhZGVyIHRoYXQgaXRlcmF0ZXMgb3ZlciBpdGVtcyBpbiBhIENTViBmaWxlIGluIFMzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUzNDc3ZJdGVtUmVhZGVyUHJvcHMgZXh0ZW5kcyBTM0ZpbGVJdGVtUmVhZGVyUHJvcHMge1xuICAvKipcbiAgICogQ1NWIGZpbGUgaGVhZGVyIGNvbmZpZ3VyYXRpb25cbiAgICpcbiAgICogQGRlZmF1bHQgLSBDc3ZIZWFkZXJzIHdpdGggQ3N2SGVhZGVyc0xvY2F0aW9uLkZJUlNUX1JPV1xuICAgKi9cbiAgcmVhZG9ubHkgY3N2SGVhZGVycz86IENzdkhlYWRlcnM7XG59XG5cbi8qKlxuICogSXRlbSBSZWFkZXIgY29uZmlndXJhdGlvbiBmb3IgaXRlcmF0aW5nIG92ZXIgaXRlbXMgaW4gYSBDU1YgZmlsZSBzdG9yZWQgaW4gUzNcbiAqL1xuZXhwb3J0IGNsYXNzIFMzQ3N2SXRlbVJlYWRlciBleHRlbmRzIFMzRmlsZUl0ZW1SZWFkZXIge1xuICAvKipcbiAgICogQ1NWIGhlYWRlcnMgY29uZmlndXJhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgY3N2SGVhZGVyczogQ3N2SGVhZGVycztcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGlucHV0VHlwZTogc3RyaW5nID0gXCJDU1ZcIjtcblxuICBjb25zdHJ1Y3Rvcihwcm9wczogUzNDc3ZJdGVtUmVhZGVyUHJvcHMpIHtcbiAgICBzdXBlcihwcm9wcyk7XG4gICAgdGhpcy5jc3ZIZWFkZXJzID0gcHJvcHMuY3N2SGVhZGVycyA/PyBDc3ZIZWFkZXJzLnVzZUZpcnN0Um93KCk7XG4gIH1cblxuICBwdWJsaWMgcmVuZGVyKCk6IGFueSB7XG4gICAgY29uc3QgcmVuZGVyZWQgPSBzdXBlci5yZW5kZXIoKTtcblxuICAgIHJlbmRlcmVkLlJlYWRlckNvbmZpZyA9IEZpZWxkVXRpbHMucmVuZGVyT2JqZWN0KHtcbiAgICAgIC4uLnJlbmRlcmVkLlJlYWRlckNvbmZpZyxcbiAgICAgIC4uLntcbiAgICAgICAgQ1NWSGVhZGVyTG9jYXRpb246IHRoaXMuY3N2SGVhZGVycy5oZWFkZXJMb2NhdGlvbixcbiAgICAgICAgLi4uKHRoaXMuY3N2SGVhZGVycy5oZWFkZXJzICYmIHsgQ1NWSGVhZGVyczogdGhpcy5jc3ZIZWFkZXJzLmhlYWRlcnMgfSksXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHJlbmRlcmVkO1xuICB9XG59XG5cbi8qKlxuICogSXRlbSBSZWFkZXIgY29uZmlndXJhdGlvbiBmb3IgaXRlcmF0aW5nIG92ZXIgaXRlbXMgaW4gYSBTMyBpbnZlbnRvcnkgbWFuaWZlc3QgZmlsZSBzdG9yZWQgaW4gUzNcbiAqL1xuZXhwb3J0IGNsYXNzIFMzTWFuaWZlc3RJdGVtUmVhZGVyIGV4dGVuZHMgUzNGaWxlSXRlbVJlYWRlciB7XG4gIHByb3RlY3RlZCByZWFkb25seSBpbnB1dFR5cGU6IHN0cmluZyA9IFwiTUFOSUZFU1RcIjtcbn1cbiJdfQ==
@@ -62,5 +62,5 @@ class ResultWriter {
62
62
  }
63
63
  exports.ResultWriter = ResultWriter;
64
64
  _a = JSII_RTTI_SYMBOL_1;
65
- ResultWriter[_a] = { fqn: "terraconstructs.aws.compute.ResultWriter", version: "0.2.4" };
65
+ ResultWriter[_a] = { fqn: "terraconstructs.aws.compute.ResultWriter", version: "0.2.5" };
66
66
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdWx0LXdyaXRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hd3MvY29tcHV0ZS9zdGF0ZXMvZGlzdHJpYnV0ZWQtbWFwL3Jlc3VsdC13cml0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxnQ0FBMEM7QUFDMUMsb0NBQW9DO0FBRXBDLHlDQUEwQztBQW1CMUM7O0dBRUc7QUFDSCxNQUFhLFlBQVk7SUFhdkIsWUFBWSxLQUF3QjtRQUNsQyxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDM0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO0lBQzdCLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU07UUFDWCxNQUFNLFFBQVEsR0FBRyxPQUFHLENBQUMsTUFBTSxDQUFDO1lBQzFCLE1BQU0sRUFBRSxFQUFFO1lBQ1YsT0FBTyxFQUFFLEVBQUU7WUFDWCxTQUFTLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsU0FBUztZQUNwQyxPQUFPLEVBQUUsUUFBUTtZQUNqQixRQUFRLEVBQUUsSUFBSTtZQUNkLFlBQVksRUFBRSxXQUFXO1lBQ3pCLFNBQVMsRUFBRSxhQUFTLENBQUMsbUJBQW1CO1NBQ3pDLENBQUMsQ0FBQztRQUNILE9BQU8sbUJBQVUsQ0FBQyxZQUFZLENBQUM7WUFDN0IsUUFBUSxFQUFFLFFBQVE7WUFDbEIsVUFBVSxFQUFFO2dCQUNWLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVU7Z0JBQzlCLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQzthQUM1QztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNJLHVCQUF1QjtRQUM1QixNQUFNLFFBQVEsR0FBRyxPQUFHLENBQUMsTUFBTSxDQUFDO1lBQzFCLE1BQU0sRUFBRSxFQUFFO1lBQ1YsT0FBTyxFQUFFLEVBQUU7WUFDWCxTQUFTLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsU0FBUztZQUNwQyxPQUFPLEVBQUUsSUFBSTtZQUNiLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVU7WUFDaEMsWUFBWSxFQUFFLEdBQUc7U0FDbEIsQ0FBQyxDQUFDO1FBRUgsT0FBTztZQUNMLElBQUksR0FBRyxDQUFDLGVBQWUsQ0FBQztnQkFDdEIsT0FBTyxFQUFFO29CQUNQLGNBQWM7b0JBQ2QsY0FBYztvQkFDZCw2QkFBNkI7b0JBQzdCLHlCQUF5QjtpQkFDMUI7Z0JBQ0QsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDO2FBQ3RCLENBQUM7U0FDSCxDQUFDO0lBQ0osQ0FBQzs7QUFoRUgsb0NBaUVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXJuLCBBcm5Gb3JtYXQgfSBmcm9tIFwiLi4vLi4vLi5cIjtcbmltcG9ydCAqIGFzIGlhbSBmcm9tIFwiLi4vLi4vLi4vaWFtXCI7XG5pbXBvcnQgeyBJQnVja2V0IH0gZnJvbSBcIi4uLy4uLy4uL3N0b3JhZ2VcIjtcbmltcG9ydCB7IEZpZWxkVXRpbHMgfSBmcm9tIFwiLi4vLi4vZmllbGRzXCI7XG5cbi8qKlxuICogSW50ZXJmYWNlIGZvciBSZXN1bHQgV3JpdGVyIGNvbmZpZ3VyYXRpb24gcHJvcGVydGllc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc3VsdFdyaXRlclByb3BzIHtcbiAgLyoqXG4gICAqIFMzIEJ1Y2tldCBpbiB3aGljaCB0byBzYXZlIE1hcCBSdW4gcmVzdWx0c1xuICAgKi9cbiAgcmVhZG9ubHkgYnVja2V0OiBJQnVja2V0O1xuXG4gIC8qKlxuICAgKiBTMyBwcmVmaXggaW4gd2hpY2ggdG8gc2F2ZSBNYXAgUnVuIHJlc3VsdHNcbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyBwcmVmaXhcbiAgICovXG4gIHJlYWRvbmx5IHByZWZpeD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGZvciB3cml0aW5nIERpc3RyaWJ1dGVkIE1hcCBzdGF0ZSByZXN1bHRzIHRvIFMzXG4gKi9cbmV4cG9ydCBjbGFzcyBSZXN1bHRXcml0ZXIge1xuICAvKipcbiAgICogUzMgQnVja2V0IGluIHdoaWNoIHRvIHNhdmUgTWFwIFJ1biByZXN1bHRzXG4gICAqL1xuICByZWFkb25seSBidWNrZXQ6IElCdWNrZXQ7XG5cbiAgLyoqXG4gICAqIFMzIHByZWZpeCBpbiB3aGljaCB0byBzYXZlIE1hcCBSdW4gcmVzdWx0c1xuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIHByZWZpeFxuICAgKi9cbiAgcmVhZG9ubHkgcHJlZml4Pzogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByb3BzOiBSZXN1bHRXcml0ZXJQcm9wcykge1xuICAgIHRoaXMuYnVja2V0ID0gcHJvcHMuYnVja2V0O1xuICAgIHRoaXMucHJlZml4ID0gcHJvcHMucHJlZml4O1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbmRlciBSZXN1bHRXcml0ZXIgaW4gQVNMIEpTT04gZm9ybWF0XG4gICAqL1xuICBwdWJsaWMgcmVuZGVyKCk6IGFueSB7XG4gICAgY29uc3QgcmVzb3VyY2UgPSBBcm4uZm9ybWF0KHtcbiAgICAgIHJlZ2lvbjogXCJcIixcbiAgICAgIGFjY291bnQ6IFwiXCIsXG4gICAgICBwYXJ0aXRpb246IHRoaXMuYnVja2V0LmVudi5wYXJ0aXRpb24sXG4gICAgICBzZXJ2aWNlOiBcInN0YXRlc1wiLFxuICAgICAgcmVzb3VyY2U6IFwiczNcIixcbiAgICAgIHJlc291cmNlTmFtZTogXCJwdXRPYmplY3RcIixcbiAgICAgIGFybkZvcm1hdDogQXJuRm9ybWF0LkNPTE9OX1JFU09VUkNFX05BTUUsXG4gICAgfSk7XG4gICAgcmV0dXJuIEZpZWxkVXRpbHMucmVuZGVyT2JqZWN0KHtcbiAgICAgIFJlc291cmNlOiByZXNvdXJjZSxcbiAgICAgIFBhcmFtZXRlcnM6IHtcbiAgICAgICAgQnVja2V0OiB0aGlzLmJ1Y2tldC5idWNrZXROYW1lLFxuICAgICAgICAuLi4odGhpcy5wcmVmaXggJiYgeyBQcmVmaXg6IHRoaXMucHJlZml4IH0pLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb21waWxlIHBvbGljeSBzdGF0ZW1lbnRzIHRvIHByb3ZpZGUgcmVsZXZlbnQgcGVybWlzc2lvbnMgdG8gdGhlIHN0YXRlIG1hY2hpbmVcbiAgICovXG4gIHB1YmxpYyBwcm92aWRlUG9saWN5U3RhdGVtZW50cygpOiBpYW0uUG9saWN5U3RhdGVtZW50W10ge1xuICAgIGNvbnN0IHJlc291cmNlID0gQXJuLmZvcm1hdCh7XG4gICAgICByZWdpb246IFwiXCIsXG4gICAgICBhY2NvdW50OiBcIlwiLFxuICAgICAgcGFydGl0aW9uOiB0aGlzLmJ1Y2tldC5lbnYucGFydGl0aW9uLFxuICAgICAgc2VydmljZTogXCJzM1wiLFxuICAgICAgcmVzb3VyY2U6IHRoaXMuYnVja2V0LmJ1Y2tldE5hbWUsXG4gICAgICByZXNvdXJjZU5hbWU6IFwiKlwiLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIFtcbiAgICAgIG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgIFwiczM6UHV0T2JqZWN0XCIsXG4gICAgICAgICAgXCJzMzpHZXRPYmplY3RcIixcbiAgICAgICAgICBcInMzOkxpc3RNdWx0aXBhcnRVcGxvYWRQYXJ0c1wiLFxuICAgICAgICAgIFwiczM6QWJvcnRNdWx0aXBhcnRVcGxvYWRcIixcbiAgICAgICAgXSxcbiAgICAgICAgcmVzb3VyY2VzOiBbcmVzb3VyY2VdLFxuICAgICAgfSksXG4gICAgXTtcbiAgfVxufVxuIl19
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.DistributedMap = void 0;
5
5
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
6
  // https://github.com/aws/aws-cdk/blob/v2.160.0/packages/aws-cdk-lib/aws-stepfunctions/lib/states/distributed-map.ts
7
- const cdktf_1 = require("cdktf");
7
+ const cdktn_1 = require("cdktn");
8
8
  const map_base_1 = require("./map-base");
9
9
  const fields_1 = require("../fields");
10
10
  const state_graph_1 = require("../state-graph");
@@ -135,7 +135,7 @@ class DistributedMap extends map_base_1.MapBase {
135
135
  const rendered = super.toStateJson();
136
136
  if (rendered.ItemProcessor.ProcessorConfig.ExecutionType) {
137
137
  // "@aws-cdk/aws-stepfunctions:propertyIgnored", // TODO: CDKTF does not support acknowledgeable warnings
138
- cdktf_1.Annotations.of(this).addWarning("Property 'ProcessorConfig.executionType' is ignored, use the 'mapExecutionType' in the 'DistributedMap' class instead.");
138
+ cdktn_1.Annotations.of(this).addWarning("Property 'ProcessorConfig.executionType' is ignored, use the 'mapExecutionType' in the 'DistributedMap' class instead.");
139
139
  }
140
140
  rendered.ItemProcessor.ProcessorConfig.ExecutionType =
141
141
  this.mapExecutionType;
@@ -195,7 +195,7 @@ class DistributedMap extends map_base_1.MapBase {
195
195
  }
196
196
  exports.DistributedMap = DistributedMap;
197
197
  _a = JSII_RTTI_SYMBOL_1;
198
- DistributedMap[_a] = { fqn: "terraconstructs.aws.compute.DistributedMap", version: "0.2.4" };
198
+ DistributedMap[_a] = { fqn: "terraconstructs.aws.compute.DistributedMap", version: "0.2.5" };
199
199
  /**
200
200
  * Mark all instances of 'DistributeMap'.
201
201
  */
@@ -204,4 +204,4 @@ Object.defineProperty(DistributedMap.prototype, DISTRIBUTED_MAP_SYMBOL, {
204
204
  enumerable: false,
205
205
  writable: false,
206
206
  });
207
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzdHJpYnV0ZWQtbWFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2F3cy9jb21wdXRlL3N0YXRlcy9kaXN0cmlidXRlZC1tYXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxvSEFBb0g7QUFFcEgsaUNBQW9DO0FBS3BDLHlDQUFtRDtBQUNuRCxzQ0FBdUM7QUFDdkMsZ0RBQTRDO0FBQzVDLG9EQUFvRDtBQUNwRCxvQ0FPa0I7QUFFbEIsTUFBTSxzQkFBc0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUN2QyxnREFBZ0QsQ0FDakQsQ0FBQztBQXNGRjs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxNQUFhLGNBQWUsU0FBUSxrQkFBTztJQUN6Qzs7T0FFRztJQUNJLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFNO1FBQ25DLE9BQU8sQ0FBQyxLQUFLLElBQUksSUFBSSxPQUFPLENBQUMsS0FBSyxRQUFRLElBQUksc0JBQXNCLElBQUksQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFZRCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLFFBQTZCLEVBQUU7UUFDdkUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxnQkFBZ0IsSUFBSSxnQ0FBZ0IsQ0FBQyxRQUFRLENBQUM7UUFDNUUsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDO1FBQ25DLElBQUksQ0FBQywwQkFBMEIsR0FBRyxLQUFLLENBQUMsMEJBQTBCLENBQUM7UUFDbkUsSUFBSSxDQUFDLDhCQUE4QixHQUFHLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQztRQUMzRSxJQUFJLENBQUMscUJBQXFCLEdBQUcsS0FBSyxDQUFDLHFCQUFxQixDQUFDO1FBQ3pELElBQUksQ0FBQyx5QkFBeUIsR0FBRyxLQUFLLENBQUMseUJBQXlCLENBQUM7UUFDakUsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQztRQUNyQyxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7UUFDdkMsSUFBSSxDQUFDLGFBQWEsR0FBRyxxQkFBYSxDQUFDLFdBQVcsQ0FBQztJQUNqRCxDQUFDO0lBRUQ7O09BRUc7SUFDTyxhQUFhO1FBQ3JCLE1BQU0sTUFBTSxHQUFhLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUUvQyxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsSUFBSSxLQUFLLHFCQUFhLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDeEQsTUFBTSxDQUFDLElBQUksQ0FBQywwREFBMEQsQ0FBQyxDQUFDO1FBQzFFLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3RDLE1BQU0sQ0FBQyxJQUFJLENBQUMsMERBQTBELENBQUMsQ0FBQztRQUMxRSxDQUFDO1FBRUQsSUFDRSxJQUFJLENBQUMsMEJBQTBCO1lBQy9CLElBQUksQ0FBQyw4QkFBOEIsRUFDbkMsQ0FBQztZQUNELE1BQU0sQ0FBQyxJQUFJLENBQ1QsK0ZBQStGLENBQ2hHLENBQUM7UUFDSixDQUFDO1FBRUQsSUFDRSxJQUFJLENBQUMsMEJBQTBCO1lBQy9CLENBQUMsQ0FDQyxJQUFJLENBQUMsMEJBQTBCLElBQUksQ0FBQztnQkFDcEMsSUFBSSxDQUFDLDBCQUEwQixJQUFJLEdBQUcsQ0FDdkMsRUFDRCxDQUFDO1lBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQyxzREFBc0QsQ0FBQyxDQUFDO1FBQ3RFLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxxQkFBcUIsSUFBSSxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztZQUNqRSxNQUFNLENBQUMsSUFBSSxDQUNULHFGQUFxRixDQUN0RixDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3JCLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQztRQUN6RCxDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDcEIsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZELENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNmLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsRUFBRSxFQUFFLENBQUM7Z0JBQzNCLE1BQU0sQ0FBQyxJQUFJLENBQUMscUNBQXFDLENBQUMsQ0FBQztZQUNyRCxDQUFDO1lBRUQsTUFBTSxVQUFVLEdBQ2QsaUZBQWlGLENBQUM7WUFDcEYsSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUNoQyxNQUFNLENBQUMsSUFBSSxDQUNULDJEQUEyRCxDQUM1RCxDQUFDO1lBQ0osQ0FBQztRQUNILENBQUM7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRVMsZ0JBQWdCLENBQUMsS0FBaUI7UUFDMUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlCLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxZQUFZLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxlQUFlLEVBQUUsRUFBRTtnQkFDdEUsS0FBSyxDQUFDLHVCQUF1QixDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQ2pELENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxVQUFVLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxlQUFlLEVBQUUsRUFBRTtnQkFDcEUsS0FBSyxDQUFDLHVCQUF1QixDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQ2pELENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLFFBQVEsQ0FBQyxRQUFvQixFQUFFO1FBQ3BDLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxRQUFRLENBQUMsT0FBbUIsRUFBRSxRQUFvQixFQUFFO1FBQ3pELEtBQUssQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMzQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksYUFBYSxDQUNsQixTQUFxQixFQUNyQixTQUEwQixFQUFFO1FBRTVCLE1BQU0sSUFBSSxHQUFHLE9BQU8sSUFBSSxDQUFDLE9BQU8saUJBQWlCLENBQUM7UUFDbEQsTUFBTSxVQUFVLEdBQUcsSUFBSSx3QkFBVSxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDOUQsS0FBSyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUMzQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7T0FFRztJQUNJLFdBQVc7UUFDaEIsTUFBTSxRQUFRLEdBQVEsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzFDLElBQUksUUFBUSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDekQseUdBQXlHO1lBQ3pHLG1CQUFXLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLFVBQVUsQ0FDN0Isd0hBQXdILENBQ3pILENBQUM7UUFDSixDQUFDO1FBQ0QsUUFBUSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsYUFBYTtZQUNsRCxJQUFJLENBQUMsZ0JBQWdCLENBQUM7UUFFeEIsT0FBTztZQUNMLEdBQUcsUUFBUTtZQUNYLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQzFCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQzNCLEdBQUcsQ0FBQyxJQUFJLENBQUMsMEJBQTBCLElBQUk7Z0JBQ3JDLDBCQUEwQixFQUFFLElBQUksQ0FBQywwQkFBMEI7YUFDNUQsQ0FBQztZQUNGLEdBQUcsQ0FBQyxJQUFJLENBQUMsOEJBQThCLElBQUk7Z0JBQ3pDLDhCQUE4QixFQUFFLElBQUksQ0FBQyw4QkFBOEI7YUFDcEUsQ0FBQztZQUNGLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUk7Z0JBQ2hDLHFCQUFxQixFQUFFLElBQUksQ0FBQyxxQkFBcUI7YUFDbEQsQ0FBQztZQUNGLEdBQUcsQ0FBQyxJQUFJLENBQUMseUJBQXlCLElBQUk7Z0JBQ3BDLHlCQUF5QixFQUFFLElBQUksQ0FBQyx5QkFBeUI7YUFDMUQsQ0FBQztZQUNGLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUN4QyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtTQUM3QixDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0ssZ0JBQWdCO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDckIsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztRQUVELE9BQU8sbUJBQVUsQ0FBQyxZQUFZLENBQUM7WUFDN0IsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFO1NBQ3JDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNLLGtCQUFrQjtRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3ZCLE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUM7UUFFRCxPQUFPLG1CQUFVLENBQUMsWUFBWSxDQUFDO1lBQzdCLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRTtTQUN6QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSyxpQkFBaUI7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN0QixPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDO1FBRUQsT0FBTztZQUNMLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRTtTQUN2QyxDQUFDO0lBQ0osQ0FBQzs7QUEzTkgsd0NBNE5DOzs7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxzQkFBc0IsRUFBRTtJQUN0RSxLQUFLLEVBQUUsSUFBSTtJQUNYLFVBQVUsRUFBRSxLQUFLO0lBQ2pCLFFBQVEsRUFBRSxLQUFLO0NBQ2hCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9ibG9iL3YyLjE2MC4wL3BhY2thZ2VzL2F3cy1jZGstbGliL2F3cy1zdGVwZnVuY3Rpb25zL2xpYi9zdGF0ZXMvZGlzdHJpYnV0ZWQtbWFwLnRzXG5cbmltcG9ydCB7IEFubm90YXRpb25zIH0gZnJvbSBcImNka3RmXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgSXRlbUJhdGNoZXIgfSBmcm9tIFwiLi9kaXN0cmlidXRlZC1tYXAvaXRlbS1iYXRjaGVyXCI7XG5pbXBvcnQgeyBJSXRlbVJlYWRlciB9IGZyb20gXCIuL2Rpc3RyaWJ1dGVkLW1hcC9pdGVtLXJlYWRlclwiO1xuaW1wb3J0IHsgUmVzdWx0V3JpdGVyIH0gZnJvbSBcIi4vZGlzdHJpYnV0ZWQtbWFwL3Jlc3VsdC13cml0ZXJcIjtcbmltcG9ydCB7IE1hcEJhc2UsIE1hcEJhc2VQcm9wcyB9IGZyb20gXCIuL21hcC1iYXNlXCI7XG5pbXBvcnQgeyBGaWVsZFV0aWxzIH0gZnJvbSBcIi4uL2ZpZWxkc1wiO1xuaW1wb3J0IHsgU3RhdGVHcmFwaCB9IGZyb20gXCIuLi9zdGF0ZS1ncmFwaFwiO1xuaW1wb3J0IHsgU3RhdGVNYWNoaW5lVHlwZSB9IGZyb20gXCIuLi9zdGF0ZS1tYWNoaW5lXCI7XG5pbXBvcnQge1xuICBDYXRjaFByb3BzLFxuICBJQ2hhaW5hYmxlLFxuICBJTmV4dGFibGUsXG4gIFByb2Nlc3NvckNvbmZpZyxcbiAgUHJvY2Vzc29yTW9kZSxcbiAgUmV0cnlQcm9wcyxcbn0gZnJvbSBcIi4uL3R5cGVzXCI7XG5cbmNvbnN0IERJU1RSSUJVVEVEX01BUF9TWU1CT0wgPSBTeW1ib2wuZm9yKFxuICBcInRlcnJhY29uc3RydWN0cy9saWIvYXdzL2NvbXB1dGUuRGlzdHJpYnV0ZWRNYXBcIixcbik7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgY29uZmlndXJpbmcgYSBEaXN0cmlidXRlIE1hcCBzdGF0ZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIERpc3RyaWJ1dGVkTWFwUHJvcHMgZXh0ZW5kcyBNYXBCYXNlUHJvcHMge1xuICAvKipcbiAgICogTWFwRXhlY3V0aW9uVHlwZVxuICAgKlxuICAgKiBUaGUgZXhlY3V0aW9uIHR5cGUgb2YgdGhlIGRpc3RyaWJ1dGVkIG1hcCBzdGF0ZVxuICAgKlxuICAgKiBUaGlzIHByb3BlcnR5IG92ZXJ3cml0ZXMgUHJvY2Vzc29yQ29uZmlnLmV4ZWN1dGlvblR5cGVcbiAgICpcbiAgICogQGRlZmF1bHQgU3RhdGVNYWNoaW5lVHlwZS5TVEFOREFSRFxuICAgKi9cbiAgcmVhZG9ubHkgbWFwRXhlY3V0aW9uVHlwZT86IFN0YXRlTWFjaGluZVR5cGU7XG5cbiAgLyoqXG4gICAqIEl0ZW1SZWFkZXJcbiAgICpcbiAgICogQ29uZmlndXJhdGlvbiBmb3Igd2hlcmUgdG8gcmVhZCBpdGVtcyBkYXRhc2V0IGluIFMzIHRvIGl0ZXJhdGVcbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyBpdGVtUmVhZGVyXG4gICAqL1xuICByZWFkb25seSBpdGVtUmVhZGVyPzogSUl0ZW1SZWFkZXI7XG5cbiAgLyoqXG4gICAqIFRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlXG4gICAqXG4gICAqIFBlcmNlbnRhZ2Ugb2YgZmFpbGVkIGl0ZW1zIHRvIHRvbGVyYXRlIGluIGEgTWFwIFJ1biwgYXMgc3RhdGljIG51bWJlclxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIHRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlXG4gICAqL1xuICByZWFkb25seSB0b2xlcmF0ZWRGYWlsdXJlUGVyY2VudGFnZT86IG51bWJlcjtcblxuICAvKipcbiAgICogVG9sZXJhdGVkRmFpbHVyZVBlcmNlbnRhZ2VQYXRoXG4gICAqXG4gICAqIFBlcmNlbnRhZ2Ugb2YgZmFpbGVkIGl0ZW1zIHRvIHRvbGVyYXRlIGluIGEgTWFwIFJ1biwgYXMgSnNvblBhdGhcbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyB0b2xlcmF0ZWRGYWlsdXJlUGVyY2VudGFnZVBhdGhcbiAgICovXG4gIHJlYWRvbmx5IHRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlUGF0aD86IHN0cmluZztcblxuICAvKipcbiAgICogVG9sZXJhdGVkRmFpbHVyZUNvdW50XG4gICAqXG4gICAqIE51bWJlciBvZiBmYWlsZWQgaXRlbXMgdG8gdG9sZXJhdGUgaW4gYSBNYXAgUnVuLCBhcyBzdGF0aWMgbnVtYmVyXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gdG9sZXJhdGVkRmFpbHVyZUNvdW50XG4gICAqL1xuICByZWFkb25seSB0b2xlcmF0ZWRGYWlsdXJlQ291bnQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRvbGVyYXRlZEZhaWx1cmVDb3VudFBhdGhcbiAgICpcbiAgICogTnVtYmVyIG9mIGZhaWxlZCBpdGVtcyB0byB0b2xlcmF0ZSBpbiBhIE1hcCBSdW4sIGFzIEpzb25QYXRoXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gdG9sZXJhdGVkRmFpbHVyZUNvdW50UGF0aFxuICAgKi9cbiAgcmVhZG9ubHkgdG9sZXJhdGVkRmFpbHVyZUNvdW50UGF0aD86IHN0cmluZztcblxuICAvKipcbiAgICogTGFiZWxcbiAgICpcbiAgICogVW5pcXVlIG5hbWUgZm9yIHRoZSBEaXN0cmlidXRlZCBNYXAgc3RhdGUgYWRkZWQgdG8gZWFjaCBNYXAgUnVuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gbGFiZWxcbiAgICovXG4gIHJlYWRvbmx5IGxhYmVsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIGZvciBTMyBsb2NhdGlvbiBpbiB3aGljaCB0byBzYXZlIE1hcCBSdW4gcmVzdWx0c1xuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIHJlc3VsdFdyaXRlclxuICAgKi9cbiAgcmVhZG9ubHkgcmVzdWx0V3JpdGVyPzogUmVzdWx0V3JpdGVyO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdG8gcHJvY2VzcyBhIGdyb3VwIG9mIGl0ZW1zIGluIGEgc2luZ2xlIGNoaWxkIHdvcmtmbG93IGV4ZWN1dGlvblxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIGl0ZW1CYXRjaGVyXG4gICAqL1xuICByZWFkb25seSBpdGVtQmF0Y2hlcj86IEl0ZW1CYXRjaGVyO1xufVxuXG4vKipcbiAqIERlZmluZSBhIERpc3RyaWJ1dGVkIE1vZGUgTWFwIHN0YXRlIGluIHRoZSBzdGF0ZSBtYWNoaW5lXG4gKlxuICogQSBgTWFwYCBzdGF0ZSBjYW4gYmUgdXNlZCB0byBydW4gYSBzZXQgb2Ygc3RlcHMgZm9yIGVhY2ggZWxlbWVudCBvZiBhbiBpbnB1dCBhcnJheS5cbiAqIEEgTWFwIHN0YXRlIHdpbGwgZXhlY3V0ZSB0aGUgc2FtZSBzdGVwcyBmb3IgbXVsdGlwbGUgZW50cmllcyBvZiBhbiBhcnJheSBpbiB0aGUgc3RhdGUgaW5wdXQuXG4gKlxuICogV2hpbGUgdGhlIFBhcmFsbGVsIHN0YXRlIGV4ZWN1dGVzIG11bHRpcGxlIGJyYW5jaGVzIG9mIHN0ZXBzIHVzaW5nIHRoZSBzYW1lIGlucHV0LCBhIE1hcCBzdGF0ZVxuICogd2lsbCBleGVjdXRlIHRoZSBzYW1lIHN0ZXBzIGZvciBtdWx0aXBsZSBlbnRyaWVzIG9mIGFuIGFycmF5IGluIHRoZSBzdGF0ZSBpbnB1dC5cbiAqXG4gKiBBIGBNYXBgIHN0YXRlIGluIGBEaXN0cmlidXRlZGAgbW9kZSB3aWxsIGV4ZWN1dGUgYSBjaGlsZCB3b3JrZmxvdyBmb3IgZWFjaCBpdGVyYXRpb24gb2YgdGhlIE1hcCBzdGF0ZS5cbiAqIFRoaXMgc2VydmVzIHRvIGluY3JlYXNlIGNvbmN1cnJlbmN5IGFuZCBhbGxvd3MgZm9yIGxhcmdlciB3b3JrbG9hZHMgdG8gYmUgcnVuIGluIGEgc2luZ2xlIHN0YXRlIG1hY2hpbmUuXG4gKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9zdGVwLWZ1bmN0aW9ucy9sYXRlc3QvZGcvY29uY2VwdHMtYXNsLXVzZS1tYXAtc3RhdGUtZGlzdHJpYnV0ZWQuaHRtbFxuICovXG5leHBvcnQgY2xhc3MgRGlzdHJpYnV0ZWRNYXAgZXh0ZW5kcyBNYXBCYXNlIGltcGxlbWVudHMgSU5leHRhYmxlIHtcbiAgLyoqXG4gICAqIFJldHVybiB3aGV0aGVyIHRoZSBnaXZlbiBvYmplY3QgaXMgYSBEaXN0cmlidXRlZE1hcC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgaXNEaXN0cmlidXRlZE1hcCh4OiBhbnkpOiB4IGlzIERpc3RyaWJ1dGVkTWFwIHtcbiAgICByZXR1cm4geCAhPT0gbnVsbCAmJiB0eXBlb2YgeCA9PT0gXCJvYmplY3RcIiAmJiBESVNUUklCVVRFRF9NQVBfU1lNQk9MIGluIHg7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IG1hcEV4ZWN1dGlvblR5cGU/OiBTdGF0ZU1hY2hpbmVUeXBlO1xuICBwcml2YXRlIHJlYWRvbmx5IGl0ZW1SZWFkZXI/OiBJSXRlbVJlYWRlcjtcbiAgcHJpdmF0ZSByZWFkb25seSB0b2xlcmF0ZWRGYWlsdXJlUGVyY2VudGFnZT86IG51bWJlcjtcbiAgcHJpdmF0ZSByZWFkb25seSB0b2xlcmF0ZWRGYWlsdXJlUGVyY2VudGFnZVBhdGg/OiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgdG9sZXJhdGVkRmFpbHVyZUNvdW50PzogbnVtYmVyO1xuICBwcml2YXRlIHJlYWRvbmx5IHRvbGVyYXRlZEZhaWx1cmVDb3VudFBhdGg/OiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgbGFiZWw/OiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVzdWx0V3JpdGVyPzogUmVzdWx0V3JpdGVyO1xuICBwcml2YXRlIHJlYWRvbmx5IGl0ZW1CYXRjaGVyPzogSXRlbUJhdGNoZXI7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IERpc3RyaWJ1dGVkTWFwUHJvcHMgPSB7fSkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuICAgIHRoaXMubWFwRXhlY3V0aW9uVHlwZSA9IHByb3BzLm1hcEV4ZWN1dGlvblR5cGUgPz8gU3RhdGVNYWNoaW5lVHlwZS5TVEFOREFSRDtcbiAgICB0aGlzLml0ZW1SZWFkZXIgPSBwcm9wcy5pdGVtUmVhZGVyO1xuICAgIHRoaXMudG9sZXJhdGVkRmFpbHVyZVBlcmNlbnRhZ2UgPSBwcm9wcy50b2xlcmF0ZWRGYWlsdXJlUGVyY2VudGFnZTtcbiAgICB0aGlzLnRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlUGF0aCA9IHByb3BzLnRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlUGF0aDtcbiAgICB0aGlzLnRvbGVyYXRlZEZhaWx1cmVDb3VudCA9IHByb3BzLnRvbGVyYXRlZEZhaWx1cmVDb3VudDtcbiAgICB0aGlzLnRvbGVyYXRlZEZhaWx1cmVDb3VudFBhdGggPSBwcm9wcy50b2xlcmF0ZWRGYWlsdXJlQ291bnRQYXRoO1xuICAgIHRoaXMubGFiZWwgPSBwcm9wcy5sYWJlbDtcbiAgICB0aGlzLml0ZW1CYXRjaGVyID0gcHJvcHMuaXRlbUJhdGNoZXI7XG4gICAgdGhpcy5yZXN1bHRXcml0ZXIgPSBwcm9wcy5yZXN1bHRXcml0ZXI7XG4gICAgdGhpcy5wcm9jZXNzb3JNb2RlID0gUHJvY2Vzc29yTW9kZS5ESVNUUklCVVRFRDtcbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZSB0aGlzIHN0YXRlXG4gICAqL1xuICBwcm90ZWN0ZWQgdmFsaWRhdGVTdGF0ZSgpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgZXJyb3JzOiBzdHJpbmdbXSA9IHN1cGVyLnZhbGlkYXRlU3RhdGUoKTtcblxuICAgIGlmICh0aGlzLnByb2Nlc3NvckNvbmZpZz8ubW9kZSA9PT0gUHJvY2Vzc29yTW9kZS5JTkxJTkUpIHtcbiAgICAgIGVycm9ycy5wdXNoKFwiUHJvY2Vzc2luZyBtb2RlIGNhbm5vdCBiZSBgSU5MSU5FYCBmb3IgYSBEaXN0cmlidXRlZCBNYXBcIik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaXRlbXNQYXRoICYmIHRoaXMuaXRlbVJlYWRlcikge1xuICAgICAgZXJyb3JzLnB1c2goXCJQcm92aWRlIGVpdGhlciBgaXRlbXNQYXRoYCBvciBgaXRlbVJlYWRlcmAsIGJ1dCBub3QgYm90aFwiKTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICB0aGlzLnRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlICYmXG4gICAgICB0aGlzLnRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlUGF0aFxuICAgICkge1xuICAgICAgZXJyb3JzLnB1c2goXG4gICAgICAgIFwiUHJvdmlkZSBlaXRoZXIgYHRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlYCBvciBgdG9sZXJhdGVkRmFpbHVyZVBlcmNlbnRhZ2VQYXRoYCwgYnV0IG5vdCBib3RoXCIsXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIHRoaXMudG9sZXJhdGVkRmFpbHVyZVBlcmNlbnRhZ2UgJiZcbiAgICAgICEoXG4gICAgICAgIHRoaXMudG9sZXJhdGVkRmFpbHVyZVBlcmNlbnRhZ2UgPj0gMCAmJlxuICAgICAgICB0aGlzLnRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlIDw9IDEwMFxuICAgICAgKVxuICAgICkge1xuICAgICAgZXJyb3JzLnB1c2goXCJ0b2xlcmF0ZWRGYWlsdXJlUGVyY2VudGFnZSBtdXN0IGJlIGJldHdlZW4gMCBhbmQgMTAwXCIpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnRvbGVyYXRlZEZhaWx1cmVDb3VudCAmJiB0aGlzLnRvbGVyYXRlZEZhaWx1cmVDb3VudFBhdGgpIHtcbiAgICAgIGVycm9ycy5wdXNoKFxuICAgICAgICBcIlByb3ZpZGUgZWl0aGVyIGB0b2xlcmF0ZWRGYWlsdXJlQ291bnRgIG9yIGB0b2xlcmF0ZWRGYWlsdXJlQ291bnRQYXRoYCwgYnV0IG5vdCBib3RoXCIsXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmICh0aGlzLml0ZW1CYXRjaGVyKSB7XG4gICAgICBlcnJvcnMucHVzaCguLi50aGlzLml0ZW1CYXRjaGVyLnZhbGlkYXRlSXRlbUJhdGNoZXIoKSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaXRlbVJlYWRlcikge1xuICAgICAgZXJyb3JzLnB1c2goLi4udGhpcy5pdGVtUmVhZGVyLnZhbGlkYXRlSXRlbVJlYWRlcigpKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5sYWJlbCkge1xuICAgICAgaWYgKHRoaXMubGFiZWwubGVuZ3RoID4gNDApIHtcbiAgICAgICAgZXJyb3JzLnB1c2goXCJsYWJlbCBtdXN0IGJlIDQwIGNoYXJhY3RlcnMgb3IgbGVzc1wiKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgbGFiZWxSZWdleCA9XG4gICAgICAgIC9bXFxzXFw/XFwqXFw8XFw+XFx7XFx9XFxcXFtcXF1cXDpcXDtcXCxcXHxcXF5cXH5cXCRcXCNcXCVcXCZcXGBcXFwiXXxbXFx1MDAwMC1cXHUwMDFmXXxbXFx1MDA3Zi1cXHUwMDlmXS9naTtcbiAgICAgIGlmIChsYWJlbFJlZ2V4LnRlc3QodGhpcy5sYWJlbCkpIHtcbiAgICAgICAgZXJyb3JzLnB1c2goXG4gICAgICAgICAgXCJsYWJlbCBjYW5ub3QgY29udGFpbiBhbnkgd2hpdGVzcGFjZSBvciBzcGVjaWFsIGNoYXJhY3RlcnNcIixcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZXJyb3JzO1xuICB9XG5cbiAgcHJvdGVjdGVkIHdoZW5Cb3VuZFRvR3JhcGgoZ3JhcGg6IFN0YXRlR3JhcGgpIHtcbiAgICBzdXBlci53aGVuQm91bmRUb0dyYXBoKGdyYXBoKTtcbiAgICBpZiAodGhpcy5yZXN1bHRXcml0ZXIpIHtcbiAgICAgIHRoaXMucmVzdWx0V3JpdGVyLnByb3ZpZGVQb2xpY3lTdGF0ZW1lbnRzKCkuZm9yRWFjaCgocG9saWN5U3RhdGVtZW50KSA9PiB7XG4gICAgICAgIGdyYXBoLnJlZ2lzdGVyUG9saWN5U3RhdGVtZW50KHBvbGljeVN0YXRlbWVudCk7XG4gICAgICB9KTtcbiAgICB9XG4gICAgaWYgKHRoaXMuaXRlbVJlYWRlcikge1xuICAgICAgdGhpcy5pdGVtUmVhZGVyLnByb3ZpZGVQb2xpY3lTdGF0ZW1lbnRzKCkuZm9yRWFjaCgocG9saWN5U3RhdGVtZW50KSA9PiB7XG4gICAgICAgIGdyYXBoLnJlZ2lzdGVyUG9saWN5U3RhdGVtZW50KHBvbGljeVN0YXRlbWVudCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQWRkIHJldHJ5IGNvbmZpZ3VyYXRpb24gZm9yIHRoaXMgc3RhdGVcbiAgICpcbiAgICogVGhpcyBjb250cm9scyBpZiBhbmQgaG93IHRoZSBleGVjdXRpb24gd2lsbCBiZSByZXRyaWVkIGlmIGEgcGFydGljdWxhclxuICAgKiBlcnJvciBvY2N1cnMuXG4gICAqL1xuICBwdWJsaWMgYWRkUmV0cnkocHJvcHM6IFJldHJ5UHJvcHMgPSB7fSk6IERpc3RyaWJ1dGVkTWFwIHtcbiAgICBzdXBlci5fYWRkUmV0cnkocHJvcHMpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIHJlY292ZXJ5IGhhbmRsZXIgZm9yIHRoaXMgc3RhdGVcbiAgICpcbiAgICogV2hlbiBhIHBhcnRpY3VsYXIgZXJyb3Igb2NjdXJzLCBleGVjdXRpb24gd2lsbCBjb250aW51ZSBhdCB0aGUgZXJyb3JcbiAgICogaGFuZGxlciBpbnN0ZWFkIG9mIGZhaWxpbmcgdGhlIHN0YXRlIG1hY2hpbmUgZXhlY3V0aW9uLlxuICAgKi9cbiAgcHVibGljIGFkZENhdGNoKGhhbmRsZXI6IElDaGFpbmFibGUsIHByb3BzOiBDYXRjaFByb3BzID0ge30pOiBEaXN0cmlidXRlZE1hcCB7XG4gICAgc3VwZXIuX2FkZENhdGNoKGhhbmRsZXIuc3RhcnRTdGF0ZSwgcHJvcHMpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIERlZmluZSBpdGVtIHByb2Nlc3NvciBpbiBhIERpc3RyaWJ1dGVkIE1hcC5cbiAgICpcbiAgICogQSBEaXN0cmlidXRlZCBNYXAgbXVzdCBoYXZlIGEgbm9uLWVtcHR5IGl0ZW0gcHJvY2Vzc29yXG4gICAqL1xuICBwdWJsaWMgaXRlbVByb2Nlc3NvcihcbiAgICBwcm9jZXNzb3I6IElDaGFpbmFibGUsXG4gICAgY29uZmlnOiBQcm9jZXNzb3JDb25maWcgPSB7fSxcbiAgKTogRGlzdHJpYnV0ZWRNYXAge1xuICAgIGNvbnN0IG5hbWUgPSBgTWFwICR7dGhpcy5zdGF0ZUlkfSBJdGVtIFByb2Nlc3NvcmA7XG4gICAgY29uc3Qgc3RhdGVHcmFwaCA9IG5ldyBTdGF0ZUdyYXBoKHByb2Nlc3Nvci5zdGFydFN0YXRlLCBuYW1lKTtcbiAgICBzdXBlci5hZGRJdGVtUHJvY2Vzc29yKHN0YXRlR3JhcGgsIGNvbmZpZyk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBBbWF6b24gU3RhdGVzIExhbmd1YWdlIG9iamVjdCBmb3IgdGhpcyBzdGF0ZVxuICAgKi9cbiAgcHVibGljIHRvU3RhdGVKc29uKCk6IG9iamVjdCB7XG4gICAgY29uc3QgcmVuZGVyZWQ6IGFueSA9IHN1cGVyLnRvU3RhdGVKc29uKCk7XG4gICAgaWYgKHJlbmRlcmVkLkl0ZW1Qcm9jZXNzb3IuUHJvY2Vzc29yQ29uZmlnLkV4ZWN1dGlvblR5cGUpIHtcbiAgICAgIC8vIFwiQGF3cy1jZGsvYXdzLXN0ZXBmdW5jdGlvbnM6cHJvcGVydHlJZ25vcmVkXCIsIC8vIFRPRE86IENES1RGIGRvZXMgbm90IHN1cHBvcnQgYWNrbm93bGVkZ2VhYmxlIHdhcm5pbmdzXG4gICAgICBBbm5vdGF0aW9ucy5vZih0aGlzKS5hZGRXYXJuaW5nKFxuICAgICAgICBcIlByb3BlcnR5ICdQcm9jZXNzb3JDb25maWcuZXhlY3V0aW9uVHlwZScgaXMgaWdub3JlZCwgdXNlIHRoZSAnbWFwRXhlY3V0aW9uVHlwZScgaW4gdGhlICdEaXN0cmlidXRlZE1hcCcgY2xhc3MgaW5zdGVhZC5cIixcbiAgICAgICk7XG4gICAgfVxuICAgIHJlbmRlcmVkLkl0ZW1Qcm9jZXNzb3IuUHJvY2Vzc29yQ29uZmlnLkV4ZWN1dGlvblR5cGUgPVxuICAgICAgdGhpcy5tYXBFeGVjdXRpb25UeXBlO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnJlbmRlcmVkLFxuICAgICAgLi4udGhpcy5yZW5kZXJJdGVtUmVhZGVyKCksXG4gICAgICAuLi50aGlzLnJlbmRlckl0ZW1CYXRjaGVyKCksXG4gICAgICAuLi4odGhpcy50b2xlcmF0ZWRGYWlsdXJlUGVyY2VudGFnZSAmJiB7XG4gICAgICAgIFRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlOiB0aGlzLnRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlLFxuICAgICAgfSksXG4gICAgICAuLi4odGhpcy50b2xlcmF0ZWRGYWlsdXJlUGVyY2VudGFnZVBhdGggJiYge1xuICAgICAgICBUb2xlcmF0ZWRGYWlsdXJlUGVyY2VudGFnZVBhdGg6IHRoaXMudG9sZXJhdGVkRmFpbHVyZVBlcmNlbnRhZ2VQYXRoLFxuICAgICAgfSksXG4gICAgICAuLi4odGhpcy50b2xlcmF0ZWRGYWlsdXJlQ291bnQgJiYge1xuICAgICAgICBUb2xlcmF0ZWRGYWlsdXJlQ291bnQ6IHRoaXMudG9sZXJhdGVkRmFpbHVyZUNvdW50LFxuICAgICAgfSksXG4gICAgICAuLi4odGhpcy50b2xlcmF0ZWRGYWlsdXJlQ291bnRQYXRoICYmIHtcbiAgICAgICAgVG9sZXJhdGVkRmFpbHVyZUNvdW50UGF0aDogdGhpcy50b2xlcmF0ZWRGYWlsdXJlQ291bnRQYXRoLFxuICAgICAgfSksXG4gICAgICAuLi4odGhpcy5sYWJlbCAmJiB7IExhYmVsOiB0aGlzLmxhYmVsIH0pLFxuICAgICAgLi4udGhpcy5yZW5kZXJSZXN1bHRXcml0ZXIoKSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbmRlciB0aGUgSXRlbVJlYWRlciBhcyBKU09OIG9iamVjdFxuICAgKi9cbiAgcHJpdmF0ZSByZW5kZXJJdGVtUmVhZGVyKCk6IGFueSB7XG4gICAgaWYgKCF0aGlzLml0ZW1SZWFkZXIpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIEZpZWxkVXRpbHMucmVuZGVyT2JqZWN0KHtcbiAgICAgIEl0ZW1SZWFkZXI6IHRoaXMuaXRlbVJlYWRlci5yZW5kZXIoKSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW5kZXIgUmVzdWx0V3JpdGVyIGluIEFTTCBKU09OIGZvcm1hdFxuICAgKi9cbiAgcHJpdmF0ZSByZW5kZXJSZXN1bHRXcml0ZXIoKTogYW55IHtcbiAgICBpZiAoIXRoaXMucmVzdWx0V3JpdGVyKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHJldHVybiBGaWVsZFV0aWxzLnJlbmRlck9iamVjdCh7XG4gICAgICBSZXN1bHRXcml0ZXI6IHRoaXMucmVzdWx0V3JpdGVyLnJlbmRlcigpLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbmRlciBJdGVtQmF0Y2hlciBpbiBBU0wgSlNPTiBmb3JtYXRcbiAgICovXG4gIHByaXZhdGUgcmVuZGVySXRlbUJhdGNoZXIoKTogYW55IHtcbiAgICBpZiAoIXRoaXMuaXRlbUJhdGNoZXIpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIEl0ZW1CYXRjaGVyOiB0aGlzLml0ZW1CYXRjaGVyLnJlbmRlcigpLFxuICAgIH07XG4gIH1cbn1cblxuLyoqXG4gKiBNYXJrIGFsbCBpbnN0YW5jZXMgb2YgJ0Rpc3RyaWJ1dGVNYXAnLlxuICovXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoRGlzdHJpYnV0ZWRNYXAucHJvdG90eXBlLCBESVNUUklCVVRFRF9NQVBfU1lNQk9MLCB7XG4gIHZhbHVlOiB0cnVlLFxuICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgd3JpdGFibGU6IGZhbHNlLFxufSk7XG4iXX0=
207
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzdHJpYnV0ZWQtbWFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2F3cy9jb21wdXRlL3N0YXRlcy9kaXN0cmlidXRlZC1tYXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxvSEFBb0g7QUFFcEgsaUNBQW9DO0FBS3BDLHlDQUFtRDtBQUNuRCxzQ0FBdUM7QUFDdkMsZ0RBQTRDO0FBQzVDLG9EQUFvRDtBQUNwRCxvQ0FPa0I7QUFFbEIsTUFBTSxzQkFBc0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUN2QyxnREFBZ0QsQ0FDakQsQ0FBQztBQXNGRjs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxNQUFhLGNBQWUsU0FBUSxrQkFBTztJQUN6Qzs7T0FFRztJQUNJLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFNO1FBQ25DLE9BQU8sQ0FBQyxLQUFLLElBQUksSUFBSSxPQUFPLENBQUMsS0FBSyxRQUFRLElBQUksc0JBQXNCLElBQUksQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFZRCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLFFBQTZCLEVBQUU7UUFDdkUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxnQkFBZ0IsSUFBSSxnQ0FBZ0IsQ0FBQyxRQUFRLENBQUM7UUFDNUUsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDO1FBQ25DLElBQUksQ0FBQywwQkFBMEIsR0FBRyxLQUFLLENBQUMsMEJBQTBCLENBQUM7UUFDbkUsSUFBSSxDQUFDLDhCQUE4QixHQUFHLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQztRQUMzRSxJQUFJLENBQUMscUJBQXFCLEdBQUcsS0FBSyxDQUFDLHFCQUFxQixDQUFDO1FBQ3pELElBQUksQ0FBQyx5QkFBeUIsR0FBRyxLQUFLLENBQUMseUJBQXlCLENBQUM7UUFD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RUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRTtTQUN6QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSyxpQkFBaUI7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN0QixPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDO1FBRUQsT0FBTztZQUNMLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRTtTQUN2QyxDQUFDO0lBQ0osQ0FBQzs7QUEzTkgsd0NBNE5DOzs7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxzQkFBc0IsRUFBRTtJQUN0RSxLQUFLLEVBQUUsSUFBSTtJQUNYLFVBQVUsRUFBRSxLQUFLO0lBQ2pCLFFBQVEsRUFBRSxLQUFLO0NBQ2hCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9ibG9iL3YyLjE2MC4wL3BhY2thZ2VzL2F3cy1jZGstbGliL2F3cy1zdGVwZnVuY3Rpb25zL2xpYi9zdGF0ZXMvZGlzdHJpYnV0ZWQtbWFwLnRzXG5cbmltcG9ydCB7IEFubm90YXRpb25zIH0gZnJvbSBcImNka3RuXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgSXRlbUJhdGNoZXIgfSBmcm9tIFwiLi9kaXN0cmlidXRlZC1tYXAvaXRlbS1iYXRjaGVyXCI7XG5pbXBvcnQgeyBJSXRlbVJlYWRlciB9IGZyb20gXCIuL2Rpc3RyaWJ1dGVkLW1hcC9pdGVtLXJlYWRlclwiO1xuaW1wb3J0IHsgUmVzdWx0V3JpdGVyIH0gZnJvbSBcIi4vZGlzdHJpYnV0ZWQtbWFwL3Jlc3VsdC13cml0ZXJcIjtcbmltcG9ydCB7IE1hcEJhc2UsIE1hcEJhc2VQcm9wcyB9IGZyb20gXCIuL21hcC1iYXNlXCI7XG5pbXBvcnQgeyBGaWVsZFV0aWxzIH0gZnJvbSBcIi4uL2ZpZWxkc1wiO1xuaW1wb3J0IHsgU3RhdGVHcmFwaCB9IGZyb20gXCIuLi9zdGF0ZS1ncmFwaFwiO1xuaW1wb3J0IHsgU3RhdGVNYWNoaW5lVHlwZSB9IGZyb20gXCIuLi9zdGF0ZS1tYWNoaW5lXCI7XG5pbXBvcnQge1xuICBDYXRjaFByb3BzLFxuICBJQ2hhaW5hYmxlLFxuICBJTmV4dGFibGUsXG4gIFByb2Nlc3NvckNvbmZpZyxcbiAgUHJvY2Vzc29yTW9kZSxcbiAgUmV0cnlQcm9wcyxcbn0gZnJvbSBcIi4uL3R5cGVzXCI7XG5cbmNvbnN0IERJU1RSSUJVVEVEX01BUF9TWU1CT0wgPSBTeW1ib2wuZm9yKFxuICBcInRlcnJhY29uc3RydWN0cy9saWIvYXdzL2NvbXB1dGUuRGlzdHJpYnV0ZWRNYXBcIixcbik7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgY29uZmlndXJpbmcgYSBEaXN0cmlidXRlIE1hcCBzdGF0ZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIERpc3RyaWJ1dGVkTWFwUHJvcHMgZXh0ZW5kcyBNYXBCYXNlUHJvcHMge1xuICAvKipcbiAgICogTWFwRXhlY3V0aW9uVHlwZVxuICAgKlxuICAgKiBUaGUgZXhlY3V0aW9uIHR5cGUgb2YgdGhlIGRpc3RyaWJ1dGVkIG1hcCBzdGF0ZVxuICAgKlxuICAgKiBUaGlzIHByb3BlcnR5IG92ZXJ3cml0ZXMgUHJvY2Vzc29yQ29uZmlnLmV4ZWN1dGlvblR5cGVcbiAgICpcbiAgICogQGRlZmF1bHQgU3RhdGVNYWNoaW5lVHlwZS5TVEFOREFSRFxuICAgKi9cbiAgcmVhZG9ubHkgbWFwRXhlY3V0aW9uVHlwZT86IFN0YXRlTWFjaGluZVR5cGU7XG5cbiAgLyoqXG4gICAqIEl0ZW1SZWFkZXJcbiAgICpcbiAgICogQ29uZmlndXJhdGlvbiBmb3Igd2hlcmUgdG8gcmVhZCBpdGVtcyBkYXRhc2V0IGluIFMzIHRvIGl0ZXJhdGVcbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyBpdGVtUmVhZGVyXG4gICAqL1xuICByZWFkb25seSBpdGVtUmVhZGVyPzogSUl0ZW1SZWFkZXI7XG5cbiAgLyoqXG4gICAqIFRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlXG4gICAqXG4gICAqIFBlcmNlbnRhZ2Ugb2YgZmFpbGVkIGl0ZW1zIHRvIHRvbGVyYXRlIGluIGEgTWFwIFJ1biwgYXMgc3RhdGljIG51bWJlclxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIHRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlXG4gICAqL1xuICByZWFkb25seSB0b2xlcmF0ZWRGYWlsdXJlUGVyY2VudGFnZT86IG51bWJlcjtcblxuICAvKipcbiAgICogVG9sZXJhdGVkRmFpbHVyZVBlcmNlbnRhZ2VQYXRoXG4gICAqXG4gICAqIFBlcmNlbnRhZ2Ugb2YgZmFpbGVkIGl0ZW1zIHRvIHRvbGVyYXRlIGluIGEgTWFwIFJ1biwgYXMgSnNvblBhdGhcbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyB0b2xlcmF0ZWRGYWlsdXJlUGVyY2VudGFnZVBhdGhcbiAgICovXG4gIHJlYWRvbmx5IHRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlUGF0aD86IHN0cmluZztcblxuICAvKipcbiAgICogVG9sZXJhdGVkRmFpbHVyZUNvdW50XG4gICAqXG4gICAqIE51bWJlciBvZiBmYWlsZWQgaXRlbXMgdG8gdG9sZXJhdGUgaW4gYSBNYXAgUnVuLCBhcyBzdGF0aWMgbnVtYmVyXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gdG9sZXJhdGVkRmFpbHVyZUNvdW50XG4gICAqL1xuICByZWFkb25seSB0b2xlcmF0ZWRGYWlsdXJlQ291bnQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRvbGVyYXRlZEZhaWx1cmVDb3VudFBhdGhcbiAgICpcbiAgICogTnVtYmVyIG9mIGZhaWxlZCBpdGVtcyB0byB0b2xlcmF0ZSBpbiBhIE1hcCBSdW4sIGFzIEpzb25QYXRoXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gdG9sZXJhdGVkRmFpbHVyZUNvdW50UGF0aFxuICAgKi9cbiAgcmVhZG9ubHkgdG9sZXJhdGVkRmFpbHVyZUNvdW50UGF0aD86IHN0cmluZztcblxuICAvKipcbiAgICogTGFiZWxcbiAgICpcbiAgICogVW5pcXVlIG5hbWUgZm9yIHRoZSBEaXN0cmlidXRlZCBNYXAgc3RhdGUgYWRkZWQgdG8gZWFjaCBNYXAgUnVuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gbGFiZWxcbiAgICovXG4gIHJlYWRvbmx5IGxhYmVsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIGZvciBTMyBsb2NhdGlvbiBpbiB3aGljaCB0byBzYXZlIE1hcCBSdW4gcmVzdWx0c1xuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIHJlc3VsdFdyaXRlclxuICAgKi9cbiAgcmVhZG9ubHkgcmVzdWx0V3JpdGVyPzogUmVzdWx0V3JpdGVyO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdG8gcHJvY2VzcyBhIGdyb3VwIG9mIGl0ZW1zIGluIGEgc2luZ2xlIGNoaWxkIHdvcmtmbG93IGV4ZWN1dGlvblxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIGl0ZW1CYXRjaGVyXG4gICAqL1xuICByZWFkb25seSBpdGVtQmF0Y2hlcj86IEl0ZW1CYXRjaGVyO1xufVxuXG4vKipcbiAqIERlZmluZSBhIERpc3RyaWJ1dGVkIE1vZGUgTWFwIHN0YXRlIGluIHRoZSBzdGF0ZSBtYWNoaW5lXG4gKlxuICogQSBgTWFwYCBzdGF0ZSBjYW4gYmUgdXNlZCB0byBydW4gYSBzZXQgb2Ygc3RlcHMgZm9yIGVhY2ggZWxlbWVudCBvZiBhbiBpbnB1dCBhcnJheS5cbiAqIEEgTWFwIHN0YXRlIHdpbGwgZXhlY3V0ZSB0aGUgc2FtZSBzdGVwcyBmb3IgbXVsdGlwbGUgZW50cmllcyBvZiBhbiBhcnJheSBpbiB0aGUgc3RhdGUgaW5wdXQuXG4gKlxuICogV2hpbGUgdGhlIFBhcmFsbGVsIHN0YXRlIGV4ZWN1dGVzIG11bHRpcGxlIGJyYW5jaGVzIG9mIHN0ZXBzIHVzaW5nIHRoZSBzYW1lIGlucHV0LCBhIE1hcCBzdGF0ZVxuICogd2lsbCBleGVjdXRlIHRoZSBzYW1lIHN0ZXBzIGZvciBtdWx0aXBsZSBlbnRyaWVzIG9mIGFuIGFycmF5IGluIHRoZSBzdGF0ZSBpbnB1dC5cbiAqXG4gKiBBIGBNYXBgIHN0YXRlIGluIGBEaXN0cmlidXRlZGAgbW9kZSB3aWxsIGV4ZWN1dGUgYSBjaGlsZCB3b3JrZmxvdyBmb3IgZWFjaCBpdGVyYXRpb24gb2YgdGhlIE1hcCBzdGF0ZS5cbiAqIFRoaXMgc2VydmVzIHRvIGluY3JlYXNlIGNvbmN1cnJlbmN5IGFuZCBhbGxvd3MgZm9yIGxhcmdlciB3b3JrbG9hZHMgdG8gYmUgcnVuIGluIGEgc2luZ2xlIHN0YXRlIG1hY2hpbmUuXG4gKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9zdGVwLWZ1bmN0aW9ucy9sYXRlc3QvZGcvY29uY2VwdHMtYXNsLXVzZS1tYXAtc3RhdGUtZGlzdHJpYnV0ZWQuaHRtbFxuICovXG5leHBvcnQgY2xhc3MgRGlzdHJpYnV0ZWRNYXAgZXh0ZW5kcyBNYXBCYXNlIGltcGxlbWVudHMgSU5leHRhYmxlIHtcbiAgLyoqXG4gICAqIFJldHVybiB3aGV0aGVyIHRoZSBnaXZlbiBvYmplY3QgaXMgYSBEaXN0cmlidXRlZE1hcC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgaXNEaXN0cmlidXRlZE1hcCh4OiBhbnkpOiB4IGlzIERpc3RyaWJ1dGVkTWFwIHtcbiAgICByZXR1cm4geCAhPT0gbnVsbCAmJiB0eXBlb2YgeCA9PT0gXCJvYmplY3RcIiAmJiBESVNUUklCVVRFRF9NQVBfU1lNQk9MIGluIHg7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IG1hcEV4ZWN1dGlvblR5cGU/OiBTdGF0ZU1hY2hpbmVUeXBlO1xuICBwcml2YXRlIHJlYWRvbmx5IGl0ZW1SZWFkZXI/OiBJSXRlbVJlYWRlcjtcbiAgcHJpdmF0ZSByZWFkb25seSB0b2xlcmF0ZWRGYWlsdXJlUGVyY2VudGFnZT86IG51bWJlcjtcbiAgcHJpdmF0ZSByZWFkb25seSB0b2xlcmF0ZWRGYWlsdXJlUGVyY2VudGFnZVBhdGg/OiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgdG9sZXJhdGVkRmFpbHVyZUNvdW50PzogbnVtYmVyO1xuICBwcml2YXRlIHJlYWRvbmx5IHRvbGVyYXRlZEZhaWx1cmVDb3VudFBhdGg/OiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgbGFiZWw/OiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVzdWx0V3JpdGVyPzogUmVzdWx0V3JpdGVyO1xuICBwcml2YXRlIHJlYWRvbmx5IGl0ZW1CYXRjaGVyPzogSXRlbUJhdGNoZXI7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IERpc3RyaWJ1dGVkTWFwUHJvcHMgPSB7fSkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuICAgIHRoaXMubWFwRXhlY3V0aW9uVHlwZSA9IHByb3BzLm1hcEV4ZWN1dGlvblR5cGUgPz8gU3RhdGVNYWNoaW5lVHlwZS5TVEFOREFSRDtcbiAgICB0aGlzLml0ZW1SZWFkZXIgPSBwcm9wcy5pdGVtUmVhZGVyO1xuICAgIHRoaXMudG9sZXJhdGVkRmFpbHVyZVBlcmNlbnRhZ2UgPSBwcm9wcy50b2xlcmF0ZWRGYWlsdXJlUGVyY2VudGFnZTtcbiAgICB0aGlzLnRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlUGF0aCA9IHByb3BzLnRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlUGF0aDtcbiAgICB0aGlzLnRvbGVyYXRlZEZhaWx1cmVDb3VudCA9IHByb3BzLnRvbGVyYXRlZEZhaWx1cmVDb3VudDtcbiAgICB0aGlzLnRvbGVyYXRlZEZhaWx1cmVDb3VudFBhdGggPSBwcm9wcy50b2xlcmF0ZWRGYWlsdXJlQ291bnRQYXRoO1xuICAgIHRoaXMubGFiZWwgPSBwcm9wcy5sYWJlbDtcbiAgICB0aGlzLml0ZW1CYXRjaGVyID0gcHJvcHMuaXRlbUJhdGNoZXI7XG4gICAgdGhpcy5yZXN1bHRXcml0ZXIgPSBwcm9wcy5yZXN1bHRXcml0ZXI7XG4gICAgdGhpcy5wcm9jZXNzb3JNb2RlID0gUHJvY2Vzc29yTW9kZS5ESVNUUklCVVRFRDtcbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZSB0aGlzIHN0YXRlXG4gICAqL1xuICBwcm90ZWN0ZWQgdmFsaWRhdGVTdGF0ZSgpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgZXJyb3JzOiBzdHJpbmdbXSA9IHN1cGVyLnZhbGlkYXRlU3RhdGUoKTtcblxuICAgIGlmICh0aGlzLnByb2Nlc3NvckNvbmZpZz8ubW9kZSA9PT0gUHJvY2Vzc29yTW9kZS5JTkxJTkUpIHtcbiAgICAgIGVycm9ycy5wdXNoKFwiUHJvY2Vzc2luZyBtb2RlIGNhbm5vdCBiZSBgSU5MSU5FYCBmb3IgYSBEaXN0cmlidXRlZCBNYXBcIik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaXRlbXNQYXRoICYmIHRoaXMuaXRlbVJlYWRlcikge1xuICAgICAgZXJyb3JzLnB1c2goXCJQcm92aWRlIGVpdGhlciBgaXRlbXNQYXRoYCBvciBgaXRlbVJlYWRlcmAsIGJ1dCBub3QgYm90aFwiKTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICB0aGlzLnRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlICYmXG4gICAgICB0aGlzLnRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlUGF0aFxuICAgICkge1xuICAgICAgZXJyb3JzLnB1c2goXG4gICAgICAgIFwiUHJvdmlkZSBlaXRoZXIgYHRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlYCBvciBgdG9sZXJhdGVkRmFpbHVyZVBlcmNlbnRhZ2VQYXRoYCwgYnV0IG5vdCBib3RoXCIsXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIHRoaXMudG9sZXJhdGVkRmFpbHVyZVBlcmNlbnRhZ2UgJiZcbiAgICAgICEoXG4gICAgICAgIHRoaXMudG9sZXJhdGVkRmFpbHVyZVBlcmNlbnRhZ2UgPj0gMCAmJlxuICAgICAgICB0aGlzLnRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlIDw9IDEwMFxuICAgICAgKVxuICAgICkge1xuICAgICAgZXJyb3JzLnB1c2goXCJ0b2xlcmF0ZWRGYWlsdXJlUGVyY2VudGFnZSBtdXN0IGJlIGJldHdlZW4gMCBhbmQgMTAwXCIpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnRvbGVyYXRlZEZhaWx1cmVDb3VudCAmJiB0aGlzLnRvbGVyYXRlZEZhaWx1cmVDb3VudFBhdGgpIHtcbiAgICAgIGVycm9ycy5wdXNoKFxuICAgICAgICBcIlByb3ZpZGUgZWl0aGVyIGB0b2xlcmF0ZWRGYWlsdXJlQ291bnRgIG9yIGB0b2xlcmF0ZWRGYWlsdXJlQ291bnRQYXRoYCwgYnV0IG5vdCBib3RoXCIsXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmICh0aGlzLml0ZW1CYXRjaGVyKSB7XG4gICAgICBlcnJvcnMucHVzaCguLi50aGlzLml0ZW1CYXRjaGVyLnZhbGlkYXRlSXRlbUJhdGNoZXIoKSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaXRlbVJlYWRlcikge1xuICAgICAgZXJyb3JzLnB1c2goLi4udGhpcy5pdGVtUmVhZGVyLnZhbGlkYXRlSXRlbVJlYWRlcigpKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5sYWJlbCkge1xuICAgICAgaWYgKHRoaXMubGFiZWwubGVuZ3RoID4gNDApIHtcbiAgICAgICAgZXJyb3JzLnB1c2goXCJsYWJlbCBtdXN0IGJlIDQwIGNoYXJhY3RlcnMgb3IgbGVzc1wiKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgbGFiZWxSZWdleCA9XG4gICAgICAgIC9bXFxzXFw/XFwqXFw8XFw+XFx7XFx9XFxcXFtcXF1cXDpcXDtcXCxcXHxcXF5cXH5cXCRcXCNcXCVcXCZcXGBcXFwiXXxbXFx1MDAwMC1cXHUwMDFmXXxbXFx1MDA3Zi1cXHUwMDlmXS9naTtcbiAgICAgIGlmIChsYWJlbFJlZ2V4LnRlc3QodGhpcy5sYWJlbCkpIHtcbiAgICAgICAgZXJyb3JzLnB1c2goXG4gICAgICAgICAgXCJsYWJlbCBjYW5ub3QgY29udGFpbiBhbnkgd2hpdGVzcGFjZSBvciBzcGVjaWFsIGNoYXJhY3RlcnNcIixcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZXJyb3JzO1xuICB9XG5cbiAgcHJvdGVjdGVkIHdoZW5Cb3VuZFRvR3JhcGgoZ3JhcGg6IFN0YXRlR3JhcGgpIHtcbiAgICBzdXBlci53aGVuQm91bmRUb0dyYXBoKGdyYXBoKTtcbiAgICBpZiAodGhpcy5yZXN1bHRXcml0ZXIpIHtcbiAgICAgIHRoaXMucmVzdWx0V3JpdGVyLnByb3ZpZGVQb2xpY3lTdGF0ZW1lbnRzKCkuZm9yRWFjaCgocG9saWN5U3RhdGVtZW50KSA9PiB7XG4gICAgICAgIGdyYXBoLnJlZ2lzdGVyUG9saWN5U3RhdGVtZW50KHBvbGljeVN0YXRlbWVudCk7XG4gICAgICB9KTtcbiAgICB9XG4gICAgaWYgKHRoaXMuaXRlbVJlYWRlcikge1xuICAgICAgdGhpcy5pdGVtUmVhZGVyLnByb3ZpZGVQb2xpY3lTdGF0ZW1lbnRzKCkuZm9yRWFjaCgocG9saWN5U3RhdGVtZW50KSA9PiB7XG4gICAgICAgIGdyYXBoLnJlZ2lzdGVyUG9saWN5U3RhdGVtZW50KHBvbGljeVN0YXRlbWVudCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQWRkIHJldHJ5IGNvbmZpZ3VyYXRpb24gZm9yIHRoaXMgc3RhdGVcbiAgICpcbiAgICogVGhpcyBjb250cm9scyBpZiBhbmQgaG93IHRoZSBleGVjdXRpb24gd2lsbCBiZSByZXRyaWVkIGlmIGEgcGFydGljdWxhclxuICAgKiBlcnJvciBvY2N1cnMuXG4gICAqL1xuICBwdWJsaWMgYWRkUmV0cnkocHJvcHM6IFJldHJ5UHJvcHMgPSB7fSk6IERpc3RyaWJ1dGVkTWFwIHtcbiAgICBzdXBlci5fYWRkUmV0cnkocHJvcHMpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIHJlY292ZXJ5IGhhbmRsZXIgZm9yIHRoaXMgc3RhdGVcbiAgICpcbiAgICogV2hlbiBhIHBhcnRpY3VsYXIgZXJyb3Igb2NjdXJzLCBleGVjdXRpb24gd2lsbCBjb250aW51ZSBhdCB0aGUgZXJyb3JcbiAgICogaGFuZGxlciBpbnN0ZWFkIG9mIGZhaWxpbmcgdGhlIHN0YXRlIG1hY2hpbmUgZXhlY3V0aW9uLlxuICAgKi9cbiAgcHVibGljIGFkZENhdGNoKGhhbmRsZXI6IElDaGFpbmFibGUsIHByb3BzOiBDYXRjaFByb3BzID0ge30pOiBEaXN0cmlidXRlZE1hcCB7XG4gICAgc3VwZXIuX2FkZENhdGNoKGhhbmRsZXIuc3RhcnRTdGF0ZSwgcHJvcHMpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIERlZmluZSBpdGVtIHByb2Nlc3NvciBpbiBhIERpc3RyaWJ1dGVkIE1hcC5cbiAgICpcbiAgICogQSBEaXN0cmlidXRlZCBNYXAgbXVzdCBoYXZlIGEgbm9uLWVtcHR5IGl0ZW0gcHJvY2Vzc29yXG4gICAqL1xuICBwdWJsaWMgaXRlbVByb2Nlc3NvcihcbiAgICBwcm9jZXNzb3I6IElDaGFpbmFibGUsXG4gICAgY29uZmlnOiBQcm9jZXNzb3JDb25maWcgPSB7fSxcbiAgKTogRGlzdHJpYnV0ZWRNYXAge1xuICAgIGNvbnN0IG5hbWUgPSBgTWFwICR7dGhpcy5zdGF0ZUlkfSBJdGVtIFByb2Nlc3NvcmA7XG4gICAgY29uc3Qgc3RhdGVHcmFwaCA9IG5ldyBTdGF0ZUdyYXBoKHByb2Nlc3Nvci5zdGFydFN0YXRlLCBuYW1lKTtcbiAgICBzdXBlci5hZGRJdGVtUHJvY2Vzc29yKHN0YXRlR3JhcGgsIGNvbmZpZyk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBBbWF6b24gU3RhdGVzIExhbmd1YWdlIG9iamVjdCBmb3IgdGhpcyBzdGF0ZVxuICAgKi9cbiAgcHVibGljIHRvU3RhdGVKc29uKCk6IG9iamVjdCB7XG4gICAgY29uc3QgcmVuZGVyZWQ6IGFueSA9IHN1cGVyLnRvU3RhdGVKc29uKCk7XG4gICAgaWYgKHJlbmRlcmVkLkl0ZW1Qcm9jZXNzb3IuUHJvY2Vzc29yQ29uZmlnLkV4ZWN1dGlvblR5cGUpIHtcbiAgICAgIC8vIFwiQGF3cy1jZGsvYXdzLXN0ZXBmdW5jdGlvbnM6cHJvcGVydHlJZ25vcmVkXCIsIC8vIFRPRE86IENES1RGIGRvZXMgbm90IHN1cHBvcnQgYWNrbm93bGVkZ2VhYmxlIHdhcm5pbmdzXG4gICAgICBBbm5vdGF0aW9ucy5vZih0aGlzKS5hZGRXYXJuaW5nKFxuICAgICAgICBcIlByb3BlcnR5ICdQcm9jZXNzb3JDb25maWcuZXhlY3V0aW9uVHlwZScgaXMgaWdub3JlZCwgdXNlIHRoZSAnbWFwRXhlY3V0aW9uVHlwZScgaW4gdGhlICdEaXN0cmlidXRlZE1hcCcgY2xhc3MgaW5zdGVhZC5cIixcbiAgICAgICk7XG4gICAgfVxuICAgIHJlbmRlcmVkLkl0ZW1Qcm9jZXNzb3IuUHJvY2Vzc29yQ29uZmlnLkV4ZWN1dGlvblR5cGUgPVxuICAgICAgdGhpcy5tYXBFeGVjdXRpb25UeXBlO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnJlbmRlcmVkLFxuICAgICAgLi4udGhpcy5yZW5kZXJJdGVtUmVhZGVyKCksXG4gICAgICAuLi50aGlzLnJlbmRlckl0ZW1CYXRjaGVyKCksXG4gICAgICAuLi4odGhpcy50b2xlcmF0ZWRGYWlsdXJlUGVyY2VudGFnZSAmJiB7XG4gICAgICAgIFRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlOiB0aGlzLnRvbGVyYXRlZEZhaWx1cmVQZXJjZW50YWdlLFxuICAgICAgfSksXG4gICAgICAuLi4odGhpcy50b2xlcmF0ZWRGYWlsdXJlUGVyY2VudGFnZVBhdGggJiYge1xuICAgICAgICBUb2xlcmF0ZWRGYWlsdXJlUGVyY2VudGFnZVBhdGg6IHRoaXMudG9sZXJhdGVkRmFpbHVyZVBlcmNlbnRhZ2VQYXRoLFxuICAgICAgfSksXG4gICAgICAuLi4odGhpcy50b2xlcmF0ZWRGYWlsdXJlQ291bnQgJiYge1xuICAgICAgICBUb2xlcmF0ZWRGYWlsdXJlQ291bnQ6IHRoaXMudG9sZXJhdGVkRmFpbHVyZUNvdW50LFxuICAgICAgfSksXG4gICAgICAuLi4odGhpcy50b2xlcmF0ZWRGYWlsdXJlQ291bnRQYXRoICYmIHtcbiAgICAgICAgVG9sZXJhdGVkRmFpbHVyZUNvdW50UGF0aDogdGhpcy50b2xlcmF0ZWRGYWlsdXJlQ291bnRQYXRoLFxuICAgICAgfSksXG4gICAgICAuLi4odGhpcy5sYWJlbCAmJiB7IExhYmVsOiB0aGlzLmxhYmVsIH0pLFxuICAgICAgLi4udGhpcy5yZW5kZXJSZXN1bHRXcml0ZXIoKSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbmRlciB0aGUgSXRlbVJlYWRlciBhcyBKU09OIG9iamVjdFxuICAgKi9cbiAgcHJpdmF0ZSByZW5kZXJJdGVtUmVhZGVyKCk6IGFueSB7XG4gICAgaWYgKCF0aGlzLml0ZW1SZWFkZXIpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIEZpZWxkVXRpbHMucmVuZGVyT2JqZWN0KHtcbiAgICAgIEl0ZW1SZWFkZXI6IHRoaXMuaXRlbVJlYWRlci5yZW5kZXIoKSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW5kZXIgUmVzdWx0V3JpdGVyIGluIEFTTCBKU09OIGZvcm1hdFxuICAgKi9cbiAgcHJpdmF0ZSByZW5kZXJSZXN1bHRXcml0ZXIoKTogYW55IHtcbiAgICBpZiAoIXRoaXMucmVzdWx0V3JpdGVyKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHJldHVybiBGaWVsZFV0aWxzLnJlbmRlck9iamVjdCh7XG4gICAgICBSZXN1bHRXcml0ZXI6IHRoaXMucmVzdWx0V3JpdGVyLnJlbmRlcigpLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbmRlciBJdGVtQmF0Y2hlciBpbiBBU0wgSlNPTiBmb3JtYXRcbiAgICovXG4gIHByaXZhdGUgcmVuZGVySXRlbUJhdGNoZXIoKTogYW55IHtcbiAgICBpZiAoIXRoaXMuaXRlbUJhdGNoZXIpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIEl0ZW1CYXRjaGVyOiB0aGlzLml0ZW1CYXRjaGVyLnJlbmRlcigpLFxuICAgIH07XG4gIH1cbn1cblxuLyoqXG4gKiBNYXJrIGFsbCBpbnN0YW5jZXMgb2YgJ0Rpc3RyaWJ1dGVNYXAnLlxuICovXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoRGlzdHJpYnV0ZWRNYXAucHJvdG90eXBlLCBESVNUUklCVVRFRF9NQVBfU1lNQk9MLCB7XG4gIHZhbHVlOiB0cnVlLFxuICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgd3JpdGFibGU6IGZhbHNlLFxufSk7XG4iXX0=
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.Fail = void 0;
5
5
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
6
  // https://github.com/aws/aws-cdk/blob/v2.160.0/packages/aws-cdk-lib/aws-stepfunctions/lib/states/fail.ts
7
- const cdktf_1 = require("cdktf");
7
+ const cdktn_1 = require("cdktn");
8
8
  const state_type_1 = require("./private/state-type");
9
9
  const state_1 = require("./state");
10
10
  /**
@@ -62,7 +62,7 @@ class Fail extends state_1.State {
62
62
  return errors;
63
63
  }
64
64
  isIntrinsicString(jsonPath) {
65
- return !cdktf_1.Token.isUnresolved(jsonPath) && !jsonPath?.startsWith("$");
65
+ return !cdktn_1.Token.isUnresolved(jsonPath) && !jsonPath?.startsWith("$");
66
66
  }
67
67
  isAllowedIntrinsic(intrinsic) {
68
68
  return Fail.allowedIntrinsics.some((allowed) => intrinsic.startsWith(allowed));
@@ -70,7 +70,7 @@ class Fail extends state_1.State {
70
70
  }
71
71
  exports.Fail = Fail;
72
72
  _a = JSII_RTTI_SYMBOL_1;
73
- Fail[_a] = { fqn: "terraconstructs.aws.compute.Fail", version: "0.2.4" };
73
+ Fail[_a] = { fqn: "terraconstructs.aws.compute.Fail", version: "0.2.5" };
74
74
  Fail.allowedIntrinsics = [
75
75
  "States.Format",
76
76
  "States.JsonToString",
@@ -80,4 +80,4 @@ Fail.allowedIntrinsics = [
80
80
  "States.Hash",
81
81
  "States.UUID",
82
82
  ];
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hd3MvY29tcHV0ZS9zdGF0ZXMvZmFpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHlHQUF5RztBQUV6RyxpQ0FBOEI7QUFFOUIscURBQWlEO0FBQ2pELG1DQUFnRDtBQXdEaEQ7Ozs7R0FJRztBQUNILE1BQWEsSUFBSyxTQUFRLGFBQUs7SUFrQjdCLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsUUFBbUIsRUFBRTtRQUM3RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQVJWLGNBQVMsR0FBZ0IsRUFBRSxDQUFDO1FBVTFDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUM7UUFDakMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxXQUFXO1FBQ2hCLE9BQU87WUFDTCxJQUFJLEVBQUUsc0JBQVMsQ0FBQyxJQUFJO1lBQ3BCLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztZQUNyQixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsU0FBUyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO2dCQUMvQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVM7Z0JBQ2hCLENBQUMsQ0FBQyxJQUFBLHNCQUFjLEVBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNsQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsU0FBUyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO2dCQUMvQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVM7Z0JBQ2hCLENBQUMsQ0FBQyxJQUFBLHNCQUFjLEVBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztTQUNuQyxDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ08sYUFBYTtRQUNyQixNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7UUFFckMsSUFDRSxJQUFJLENBQUMsU0FBUztZQUNkLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1lBQ3RDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFDeEMsQ0FBQztZQUNELE1BQU0sQ0FBQyxJQUFJLENBQ1QsNEVBQTRFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FDaEgsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUNFLElBQUksQ0FBQyxTQUFTO1lBQ2QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDdEMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUN4QyxDQUFDO1lBQ0QsTUFBTSxDQUFDLElBQUksQ0FDVCw0RUFBNEUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUNoSCxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDakMsTUFBTSxDQUFDLElBQUksQ0FBQyxpREFBaUQsQ0FBQyxDQUFDO1FBQ2pFLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2pDLE1BQU0sQ0FBQyxJQUFJLENBQUMsaURBQWlELENBQUMsQ0FBQztRQUNqRSxDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVPLGlCQUFpQixDQUFDLFFBQWlCO1FBQ3pDLE9BQU8sQ0FBQyxhQUFLLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRU8sa0JBQWtCLENBQUMsU0FBaUI7UUFDMUMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FDN0MsU0FBUyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FDOUIsQ0FBQztJQUNKLENBQUM7O0FBMUZILG9CQTJGQzs7O0FBMUZnQixzQkFBaUIsR0FBRztJQUNqQyxlQUFlO0lBQ2YscUJBQXFCO0lBQ3JCLHFCQUFxQjtJQUNyQixxQkFBcUI7SUFDckIscUJBQXFCO0lBQ3JCLGFBQWE7SUFDYixhQUFhO0NBQ2QsQUFSK0IsQ0FROUIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNjAuMC9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3Mtc3RlcGZ1bmN0aW9ucy9saWIvc3RhdGVzL2ZhaWwudHNcblxuaW1wb3J0IHsgVG9rZW4gfSBmcm9tIFwiY2RrdGZcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBTdGF0ZVR5cGUgfSBmcm9tIFwiLi9wcml2YXRlL3N0YXRlLXR5cGVcIjtcbmltcG9ydCB7IHJlbmRlckpzb25QYXRoLCBTdGF0ZSB9IGZyb20gXCIuL3N0YXRlXCI7XG5pbXBvcnQgeyBJTmV4dGFibGUgfSBmcm9tIFwiLi4vdHlwZXNcIjtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBkZWZpbmluZyBhIEZhaWwgc3RhdGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGYWlsUHJvcHMge1xuICAvKipcbiAgICogT3B0aW9uYWwgbmFtZSBmb3IgdGhpcyBzdGF0ZVxuICAgKlxuICAgKiBAZGVmYXVsdCAtIFRoZSBjb25zdHJ1Y3QgSUQgd2lsbCBiZSB1c2VkIGFzIHN0YXRlIG5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHN0YXRlTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQW4gb3B0aW9uYWwgZGVzY3JpcHRpb24gZm9yIHRoaXMgc3RhdGVcbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyBjb21tZW50XG4gICAqL1xuICByZWFkb25seSBjb21tZW50Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFcnJvciBjb2RlIHVzZWQgdG8gcmVwcmVzZW50IHRoaXMgZmFpbHVyZVxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIGVycm9yIGNvZGVcbiAgICovXG4gIHJlYWRvbmx5IGVycm9yPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBKc29uUGF0aCBleHByZXNzaW9uIHRvIHNlbGVjdCBwYXJ0IG9mIHRoZSBzdGF0ZSB0byBiZSB0aGUgZXJyb3IgdG8gdGhpcyBzdGF0ZS5cbiAgICpcbiAgICogWW91IGNhbiBhbHNvIHVzZSBhbiBpbnRyaW5zaWMgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGEgc3RyaW5nIHRvIHNwZWNpZnkgdGhpcyBwcm9wZXJ0eS5cbiAgICogVGhlIGFsbG93ZWQgZnVuY3Rpb25zIGluY2x1ZGUgU3RhdGVzLkZvcm1hdCwgU3RhdGVzLkpzb25Ub1N0cmluZywgU3RhdGVzLkFycmF5R2V0SXRlbSwgU3RhdGVzLkJhc2U2NEVuY29kZSwgU3RhdGVzLkJhc2U2NERlY29kZSwgU3RhdGVzLkhhc2gsIGFuZCBTdGF0ZXMuVVVJRC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyBlcnJvciBwYXRoXG4gICAqL1xuICByZWFkb25seSBlcnJvclBhdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgZGVzY3JpcHRpb24gZm9yIHRoZSBjYXVzZSBvZiB0aGUgZmFpbHVyZVxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIGRlc2NyaXB0aW9uXG4gICAqL1xuICByZWFkb25seSBjYXVzZT86IHN0cmluZztcblxuICAvKipcbiAgICogSnNvblBhdGggZXhwcmVzc2lvbiB0byBzZWxlY3QgcGFydCBvZiB0aGUgc3RhdGUgdG8gYmUgdGhlIGNhdXNlIHRvIHRoaXMgc3RhdGUuXG4gICAqXG4gICAqIFlvdSBjYW4gYWxzbyB1c2UgYW4gaW50cmluc2ljIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBhIHN0cmluZyB0byBzcGVjaWZ5IHRoaXMgcHJvcGVydHkuXG4gICAqIFRoZSBhbGxvd2VkIGZ1bmN0aW9ucyBpbmNsdWRlIFN0YXRlcy5Gb3JtYXQsIFN0YXRlcy5Kc29uVG9TdHJpbmcsIFN0YXRlcy5BcnJheUdldEl0ZW0sIFN0YXRlcy5CYXNlNjRFbmNvZGUsIFN0YXRlcy5CYXNlNjREZWNvZGUsIFN0YXRlcy5IYXNoLCBhbmQgU3RhdGVzLlVVSUQuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gY2F1c2UgcGF0aFxuICAgKi9cbiAgcmVhZG9ubHkgY2F1c2VQYXRoPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIERlZmluZSBhIEZhaWwgc3RhdGUgaW4gdGhlIHN0YXRlIG1hY2hpbmVcbiAqXG4gKiBSZWFjaGluZyBhIEZhaWwgc3RhdGUgdGVybWluYXRlcyB0aGUgc3RhdGUgZXhlY3V0aW9uIGluIGZhaWx1cmUuXG4gKi9cbmV4cG9ydCBjbGFzcyBGYWlsIGV4dGVuZHMgU3RhdGUge1xuICBwcml2YXRlIHN0YXRpYyBhbGxvd2VkSW50cmluc2ljcyA9IFtcbiAgICBcIlN0YXRlcy5Gb3JtYXRcIixcbiAgICBcIlN0YXRlcy5Kc29uVG9TdHJpbmdcIixcbiAgICBcIlN0YXRlcy5BcnJheUdldEl0ZW1cIixcbiAgICBcIlN0YXRlcy5CYXNlNjRFbmNvZGVcIixcbiAgICBcIlN0YXRlcy5CYXNlNjREZWNvZGVcIixcbiAgICBcIlN0YXRlcy5IYXNoXCIsXG4gICAgXCJTdGF0ZXMuVVVJRFwiLFxuICBdO1xuXG4gIHB1YmxpYyByZWFkb25seSBlbmRTdGF0ZXM6IElOZXh0YWJsZVtdID0gW107XG5cbiAgcHJpdmF0ZSByZWFkb25seSBlcnJvcj86IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBlcnJvclBhdGg/OiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgY2F1c2U/OiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgY2F1c2VQYXRoPzogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBGYWlsUHJvcHMgPSB7fSkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuXG4gICAgdGhpcy5lcnJvciA9IHByb3BzLmVycm9yO1xuICAgIHRoaXMuZXJyb3JQYXRoID0gcHJvcHMuZXJyb3JQYXRoO1xuICAgIHRoaXMuY2F1c2UgPSBwcm9wcy5jYXVzZTtcbiAgICB0aGlzLmNhdXNlUGF0aCA9IHByb3BzLmNhdXNlUGF0aDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm4gdGhlIEFtYXpvbiBTdGF0ZXMgTGFuZ3VhZ2Ugb2JqZWN0IGZvciB0aGlzIHN0YXRlXG4gICAqL1xuICBwdWJsaWMgdG9TdGF0ZUpzb24oKTogb2JqZWN0IHtcbiAgICByZXR1cm4ge1xuICAgICAgVHlwZTogU3RhdGVUeXBlLkZBSUwsXG4gICAgICBDb21tZW50OiB0aGlzLmNvbW1lbnQsXG4gICAgICBFcnJvcjogdGhpcy5lcnJvcixcbiAgICAgIEVycm9yUGF0aDogdGhpcy5pc0ludHJpbnNpY1N0cmluZyh0aGlzLmVycm9yUGF0aClcbiAgICAgICAgPyB0aGlzLmVycm9yUGF0aFxuICAgICAgICA6IHJlbmRlckpzb25QYXRoKHRoaXMuZXJyb3JQYXRoKSxcbiAgICAgIENhdXNlOiB0aGlzLmNhdXNlLFxuICAgICAgQ2F1c2VQYXRoOiB0aGlzLmlzSW50cmluc2ljU3RyaW5nKHRoaXMuY2F1c2VQYXRoKVxuICAgICAgICA/IHRoaXMuY2F1c2VQYXRoXG4gICAgICAgIDogcmVuZGVySnNvblBhdGgodGhpcy5jYXVzZVBhdGgpLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGUgdGhpcyBzdGF0ZVxuICAgKi9cbiAgcHJvdGVjdGVkIHZhbGlkYXRlU3RhdGUoKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGVycm9ycyA9IHN1cGVyLnZhbGlkYXRlU3RhdGUoKTtcblxuICAgIGlmIChcbiAgICAgIHRoaXMuZXJyb3JQYXRoICYmXG4gICAgICB0aGlzLmlzSW50cmluc2ljU3RyaW5nKHRoaXMuZXJyb3JQYXRoKSAmJlxuICAgICAgIXRoaXMuaXNBbGxvd2VkSW50cmluc2ljKHRoaXMuZXJyb3JQYXRoKVxuICAgICkge1xuICAgICAgZXJyb3JzLnB1c2goXG4gICAgICAgIGBZb3UgbXVzdCBzcGVjaWZ5IGEgdmFsaWQgaW50cmluc2ljIGZ1bmN0aW9uIGluIGVycm9yUGF0aC4gTXVzdCBiZSBvbmUgb2YgJHtGYWlsLmFsbG93ZWRJbnRyaW5zaWNzLmpvaW4oXCIsIFwiKX1gLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICB0aGlzLmNhdXNlUGF0aCAmJlxuICAgICAgdGhpcy5pc0ludHJpbnNpY1N0cmluZyh0aGlzLmNhdXNlUGF0aCkgJiZcbiAgICAgICF0aGlzLmlzQWxsb3dlZEludHJpbnNpYyh0aGlzLmNhdXNlUGF0aClcbiAgICApIHtcbiAgICAgIGVycm9ycy5wdXNoKFxuICAgICAgICBgWW91IG11c3Qgc3BlY2lmeSBhIHZhbGlkIGludHJpbnNpYyBmdW5jdGlvbiBpbiBjYXVzZVBhdGguIE11c3QgYmUgb25lIG9mICR7RmFpbC5hbGxvd2VkSW50cmluc2ljcy5qb2luKFwiLCBcIil9YCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZXJyb3IgJiYgdGhpcy5lcnJvclBhdGgpIHtcbiAgICAgIGVycm9ycy5wdXNoKFwiRmFpbCBzdGF0ZSBjYW5ub3QgaGF2ZSBib3RoIGVycm9yIGFuZCBlcnJvclBhdGhcIik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY2F1c2UgJiYgdGhpcy5jYXVzZVBhdGgpIHtcbiAgICAgIGVycm9ycy5wdXNoKFwiRmFpbCBzdGF0ZSBjYW5ub3QgaGF2ZSBib3RoIGNhdXNlIGFuZCBjYXVzZVBhdGhcIik7XG4gICAgfVxuXG4gICAgcmV0dXJuIGVycm9ycztcbiAgfVxuXG4gIHByaXZhdGUgaXNJbnRyaW5zaWNTdHJpbmcoanNvblBhdGg/OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIVRva2VuLmlzVW5yZXNvbHZlZChqc29uUGF0aCkgJiYgIWpzb25QYXRoPy5zdGFydHNXaXRoKFwiJFwiKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNBbGxvd2VkSW50cmluc2ljKGludHJpbnNpYzogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIEZhaWwuYWxsb3dlZEludHJpbnNpY3Muc29tZSgoYWxsb3dlZCkgPT5cbiAgICAgIGludHJpbnNpYy5zdGFydHNXaXRoKGFsbG93ZWQpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hd3MvY29tcHV0ZS9zdGF0ZXMvZmFpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHlHQUF5RztBQUV6RyxpQ0FBOEI7QUFFOUIscURBQWlEO0FBQ2pELG1DQUFnRDtBQXdEaEQ7Ozs7R0FJRztBQUNILE1BQWEsSUFBSyxTQUFRLGFBQUs7SUFrQjdCLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsUUFBbUIsRUFBRTtRQUM3RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQVJWLGNBQVMsR0FBZ0IsRUFBRSxDQUFDO1FBVTFDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUM7UUFDakMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxXQUFXO1FBQ2hCLE9BQU87WUFDTCxJQUFJLEVBQUUsc0JBQVMsQ0FBQyxJQUFJO1lBQ3BCLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztZQUNyQixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsU0FBUyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO2dCQUMvQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVM7Z0JBQ2hCLENBQUMsQ0FBQyxJQUFBLHNCQUFjLEVBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNsQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsU0FBUyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO2dCQUMvQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVM7Z0JBQ2hCLENBQUMsQ0FBQyxJQUFBLHNCQUFjLEVBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztTQUNuQyxDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ08sYUFBYTtRQUNyQixNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7UUFFckMsSUFDRSxJQUFJLENBQUMsU0FBUztZQUNkLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1lBQ3RDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFDeEMsQ0FBQztZQUNELE1BQU0sQ0FBQyxJQUFJLENBQ1QsNEVBQTRFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FDaEgsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUNFLElBQUksQ0FBQyxTQUFTO1lBQ2QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDdEMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUN4QyxDQUFDO1lBQ0QsTUFBTSxDQUFDLElBQUksQ0FDVCw0RUFBNEUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUNoSCxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDakMsTUFBTSxDQUFDLElBQUksQ0FBQyxpREFBaUQsQ0FBQyxDQUFDO1FBQ2pFLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2pDLE1BQU0sQ0FBQyxJQUFJLENBQUMsaURBQWlELENBQUMsQ0FBQztRQUNqRSxDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVPLGlCQUFpQixDQUFDLFFBQWlCO1FBQ3pDLE9BQU8sQ0FBQyxhQUFLLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRU8sa0JBQWtCLENBQUMsU0FBaUI7UUFDMUMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FDN0MsU0FBUyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FDOUIsQ0FBQztJQUNKLENBQUM7O0FBMUZILG9CQTJGQzs7O0FBMUZnQixzQkFBaUIsR0FBRztJQUNqQyxlQUFlO0lBQ2YscUJBQXFCO0lBQ3JCLHFCQUFxQjtJQUNyQixxQkFBcUI7SUFDckIscUJBQXFCO0lBQ3JCLGFBQWE7SUFDYixhQUFhO0NBQ2QsQUFSK0IsQ0FROUIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNjAuMC9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3Mtc3RlcGZ1bmN0aW9ucy9saWIvc3RhdGVzL2ZhaWwudHNcblxuaW1wb3J0IHsgVG9rZW4gfSBmcm9tIFwiY2RrdG5cIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBTdGF0ZVR5cGUgfSBmcm9tIFwiLi9wcml2YXRlL3N0YXRlLXR5cGVcIjtcbmltcG9ydCB7IHJlbmRlckpzb25QYXRoLCBTdGF0ZSB9IGZyb20gXCIuL3N0YXRlXCI7XG5pbXBvcnQgeyBJTmV4dGFibGUgfSBmcm9tIFwiLi4vdHlwZXNcIjtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBkZWZpbmluZyBhIEZhaWwgc3RhdGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGYWlsUHJvcHMge1xuICAvKipcbiAgICogT3B0aW9uYWwgbmFtZSBmb3IgdGhpcyBzdGF0ZVxuICAgKlxuICAgKiBAZGVmYXVsdCAtIFRoZSBjb25zdHJ1Y3QgSUQgd2lsbCBiZSB1c2VkIGFzIHN0YXRlIG5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHN0YXRlTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQW4gb3B0aW9uYWwgZGVzY3JpcHRpb24gZm9yIHRoaXMgc3RhdGVcbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyBjb21tZW50XG4gICAqL1xuICByZWFkb25seSBjb21tZW50Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFcnJvciBjb2RlIHVzZWQgdG8gcmVwcmVzZW50IHRoaXMgZmFpbHVyZVxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIGVycm9yIGNvZGVcbiAgICovXG4gIHJlYWRvbmx5IGVycm9yPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBKc29uUGF0aCBleHByZXNzaW9uIHRvIHNlbGVjdCBwYXJ0IG9mIHRoZSBzdGF0ZSB0byBiZSB0aGUgZXJyb3IgdG8gdGhpcyBzdGF0ZS5cbiAgICpcbiAgICogWW91IGNhbiBhbHNvIHVzZSBhbiBpbnRyaW5zaWMgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGEgc3RyaW5nIHRvIHNwZWNpZnkgdGhpcyBwcm9wZXJ0eS5cbiAgICogVGhlIGFsbG93ZWQgZnVuY3Rpb25zIGluY2x1ZGUgU3RhdGVzLkZvcm1hdCwgU3RhdGVzLkpzb25Ub1N0cmluZywgU3RhdGVzLkFycmF5R2V0SXRlbSwgU3RhdGVzLkJhc2U2NEVuY29kZSwgU3RhdGVzLkJhc2U2NERlY29kZSwgU3RhdGVzLkhhc2gsIGFuZCBTdGF0ZXMuVVVJRC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyBlcnJvciBwYXRoXG4gICAqL1xuICByZWFkb25seSBlcnJvclBhdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgZGVzY3JpcHRpb24gZm9yIHRoZSBjYXVzZSBvZiB0aGUgZmFpbHVyZVxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIGRlc2NyaXB0aW9uXG4gICAqL1xuICByZWFkb25seSBjYXVzZT86IHN0cmluZztcblxuICAvKipcbiAgICogSnNvblBhdGggZXhwcmVzc2lvbiB0byBzZWxlY3QgcGFydCBvZiB0aGUgc3RhdGUgdG8gYmUgdGhlIGNhdXNlIHRvIHRoaXMgc3RhdGUuXG4gICAqXG4gICAqIFlvdSBjYW4gYWxzbyB1c2UgYW4gaW50cmluc2ljIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBhIHN0cmluZyB0byBzcGVjaWZ5IHRoaXMgcHJvcGVydHkuXG4gICAqIFRoZSBhbGxvd2VkIGZ1bmN0aW9ucyBpbmNsdWRlIFN0YXRlcy5Gb3JtYXQsIFN0YXRlcy5Kc29uVG9TdHJpbmcsIFN0YXRlcy5BcnJheUdldEl0ZW0sIFN0YXRlcy5CYXNlNjRFbmNvZGUsIFN0YXRlcy5CYXNlNjREZWNvZGUsIFN0YXRlcy5IYXNoLCBhbmQgU3RhdGVzLlVVSUQuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gY2F1c2UgcGF0aFxuICAgKi9cbiAgcmVhZG9ubHkgY2F1c2VQYXRoPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIERlZmluZSBhIEZhaWwgc3RhdGUgaW4gdGhlIHN0YXRlIG1hY2hpbmVcbiAqXG4gKiBSZWFjaGluZyBhIEZhaWwgc3RhdGUgdGVybWluYXRlcyB0aGUgc3RhdGUgZXhlY3V0aW9uIGluIGZhaWx1cmUuXG4gKi9cbmV4cG9ydCBjbGFzcyBGYWlsIGV4dGVuZHMgU3RhdGUge1xuICBwcml2YXRlIHN0YXRpYyBhbGxvd2VkSW50cmluc2ljcyA9IFtcbiAgICBcIlN0YXRlcy5Gb3JtYXRcIixcbiAgICBcIlN0YXRlcy5Kc29uVG9TdHJpbmdcIixcbiAgICBcIlN0YXRlcy5BcnJheUdldEl0ZW1cIixcbiAgICBcIlN0YXRlcy5CYXNlNjRFbmNvZGVcIixcbiAgICBcIlN0YXRlcy5CYXNlNjREZWNvZGVcIixcbiAgICBcIlN0YXRlcy5IYXNoXCIsXG4gICAgXCJTdGF0ZXMuVVVJRFwiLFxuICBdO1xuXG4gIHB1YmxpYyByZWFkb25seSBlbmRTdGF0ZXM6IElOZXh0YWJsZVtdID0gW107XG5cbiAgcHJpdmF0ZSByZWFkb25seSBlcnJvcj86IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBlcnJvclBhdGg/OiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgY2F1c2U/OiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgY2F1c2VQYXRoPzogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBGYWlsUHJvcHMgPSB7fSkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuXG4gICAgdGhpcy5lcnJvciA9IHByb3BzLmVycm9yO1xuICAgIHRoaXMuZXJyb3JQYXRoID0gcHJvcHMuZXJyb3JQYXRoO1xuICAgIHRoaXMuY2F1c2UgPSBwcm9wcy5jYXVzZTtcbiAgICB0aGlzLmNhdXNlUGF0aCA9IHByb3BzLmNhdXNlUGF0aDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm4gdGhlIEFtYXpvbiBTdGF0ZXMgTGFuZ3VhZ2Ugb2JqZWN0IGZvciB0aGlzIHN0YXRlXG4gICAqL1xuICBwdWJsaWMgdG9TdGF0ZUpzb24oKTogb2JqZWN0IHtcbiAgICByZXR1cm4ge1xuICAgICAgVHlwZTogU3RhdGVUeXBlLkZBSUwsXG4gICAgICBDb21tZW50OiB0aGlzLmNvbW1lbnQsXG4gICAgICBFcnJvcjogdGhpcy5lcnJvcixcbiAgICAgIEVycm9yUGF0aDogdGhpcy5pc0ludHJpbnNpY1N0cmluZyh0aGlzLmVycm9yUGF0aClcbiAgICAgICAgPyB0aGlzLmVycm9yUGF0aFxuICAgICAgICA6IHJlbmRlckpzb25QYXRoKHRoaXMuZXJyb3JQYXRoKSxcbiAgICAgIENhdXNlOiB0aGlzLmNhdXNlLFxuICAgICAgQ2F1c2VQYXRoOiB0aGlzLmlzSW50cmluc2ljU3RyaW5nKHRoaXMuY2F1c2VQYXRoKVxuICAgICAgICA/IHRoaXMuY2F1c2VQYXRoXG4gICAgICAgIDogcmVuZGVySnNvblBhdGgodGhpcy5jYXVzZVBhdGgpLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGUgdGhpcyBzdGF0ZVxuICAgKi9cbiAgcHJvdGVjdGVkIHZhbGlkYXRlU3RhdGUoKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGVycm9ycyA9IHN1cGVyLnZhbGlkYXRlU3RhdGUoKTtcblxuICAgIGlmIChcbiAgICAgIHRoaXMuZXJyb3JQYXRoICYmXG4gICAgICB0aGlzLmlzSW50cmluc2ljU3RyaW5nKHRoaXMuZXJyb3JQYXRoKSAmJlxuICAgICAgIXRoaXMuaXNBbGxvd2VkSW50cmluc2ljKHRoaXMuZXJyb3JQYXRoKVxuICAgICkge1xuICAgICAgZXJyb3JzLnB1c2goXG4gICAgICAgIGBZb3UgbXVzdCBzcGVjaWZ5IGEgdmFsaWQgaW50cmluc2ljIGZ1bmN0aW9uIGluIGVycm9yUGF0aC4gTXVzdCBiZSBvbmUgb2YgJHtGYWlsLmFsbG93ZWRJbnRyaW5zaWNzLmpvaW4oXCIsIFwiKX1gLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICB0aGlzLmNhdXNlUGF0aCAmJlxuICAgICAgdGhpcy5pc0ludHJpbnNpY1N0cmluZyh0aGlzLmNhdXNlUGF0aCkgJiZcbiAgICAgICF0aGlzLmlzQWxsb3dlZEludHJpbnNpYyh0aGlzLmNhdXNlUGF0aClcbiAgICApIHtcbiAgICAgIGVycm9ycy5wdXNoKFxuICAgICAgICBgWW91IG11c3Qgc3BlY2lmeSBhIHZhbGlkIGludHJpbnNpYyBmdW5jdGlvbiBpbiBjYXVzZVBhdGguIE11c3QgYmUgb25lIG9mICR7RmFpbC5hbGxvd2VkSW50cmluc2ljcy5qb2luKFwiLCBcIil9YCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZXJyb3IgJiYgdGhpcy5lcnJvclBhdGgpIHtcbiAgICAgIGVycm9ycy5wdXNoKFwiRmFpbCBzdGF0ZSBjYW5ub3QgaGF2ZSBib3RoIGVycm9yIGFuZCBlcnJvclBhdGhcIik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY2F1c2UgJiYgdGhpcy5jYXVzZVBhdGgpIHtcbiAgICAgIGVycm9ycy5wdXNoKFwiRmFpbCBzdGF0ZSBjYW5ub3QgaGF2ZSBib3RoIGNhdXNlIGFuZCBjYXVzZVBhdGhcIik7XG4gICAgfVxuXG4gICAgcmV0dXJuIGVycm9ycztcbiAgfVxuXG4gIHByaXZhdGUgaXNJbnRyaW5zaWNTdHJpbmcoanNvblBhdGg/OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIVRva2VuLmlzVW5yZXNvbHZlZChqc29uUGF0aCkgJiYgIWpzb25QYXRoPy5zdGFydHNXaXRoKFwiJFwiKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNBbGxvd2VkSW50cmluc2ljKGludHJpbnNpYzogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIEZhaWwuYWxsb3dlZEludHJpbnNpY3Muc29tZSgoYWxsb3dlZCkgPT5cbiAgICAgIGludHJpbnNpYy5zdGFydHNXaXRoKGFsbG93ZWQpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.MapBase = exports.isPositiveInteger = void 0;
5
5
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
6
  // https://github.com/aws/aws-cdk/blob/v2.160.0/packages/aws-cdk-lib/aws-stepfunctions/lib/states/map-base.ts
7
- const cdktf_1 = require("cdktf");
7
+ const cdktn_1 = require("cdktn");
8
8
  const state_type_1 = require("./private/state-type");
9
9
  const state_1 = require("./state");
10
10
  const chain_1 = require("../chain");
@@ -78,7 +78,7 @@ class MapBase extends state_1.State {
78
78
  errors.push("You must specify an execution type for the distributed Map workflow");
79
79
  }
80
80
  if (this.maxConcurrency &&
81
- !cdktf_1.Token.isUnresolved(this.maxConcurrency) &&
81
+ !cdktn_1.Token.isUnresolved(this.maxConcurrency) &&
82
82
  !(0, exports.isPositiveInteger)(this.maxConcurrency)) {
83
83
  errors.push("maxConcurrency has to be a positive integer");
84
84
  }
@@ -105,5 +105,5 @@ class MapBase extends state_1.State {
105
105
  }
106
106
  exports.MapBase = MapBase;
107
107
  _a = JSII_RTTI_SYMBOL_1;
108
- MapBase[_a] = { fqn: "terraconstructs.aws.compute.MapBase", version: "0.2.4" };
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXdzL2NvbXB1dGUvc3RhdGVzL21hcC1iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkdBQTZHO0FBRTdHLGlDQUE4QjtBQUU5QixxREFBaUQ7QUFDakQsbUNBQWdEO0FBQ2hELG9DQUFpQztBQUNqQyxzQ0FBdUM7QUFDdkMsb0NBQWdFO0FBMEdoRTs7O0dBR0c7QUFDSSxNQUFNLGlCQUFpQixHQUFHLENBQUMsS0FBYSxFQUFFLEVBQUU7SUFDakQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxLQUFLLENBQUM7SUFFNUMsTUFBTSxvQkFBb0IsR0FBRyxLQUFLLEdBQUcsQ0FBQyxJQUFJLEtBQUssR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7SUFFMUUsT0FBTyxDQUFDLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDO0FBQzNDLENBQUMsQ0FBQztBQU5XLFFBQUEsaUJBQWlCLHFCQU01QjtBQUVGOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFzQixPQUFRLFNBQVEsYUFBSztJQVF6QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLFFBQXNCLEVBQUU7UUFDaEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQztRQUMzQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixDQUFDO1FBQ25ELElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQztRQUNqQyxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7SUFDekMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksSUFBSSxDQUFDLElBQWdCO1FBQzFCLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLE9BQU8sYUFBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksV0FBVztRQUNoQixPQUFPO1lBQ0wsSUFBSSxFQUFFLHNCQUFTLENBQUMsR0FBRztZQUNuQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsVUFBVSxFQUFFLElBQUEsc0JBQWMsRUFBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQzNDLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN2QixHQUFHLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMzQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUM5QixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUMxQixHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDekIsR0FBRyxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDNUIsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDN0IsR0FBRyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksRUFBRSxjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ25FLEdBQUcsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLElBQUk7Z0JBQzdCLGtCQUFrQixFQUFFLElBQUEsc0JBQWMsRUFBQyxJQUFJLENBQUMsa0JBQWtCLENBQUM7YUFDNUQsQ0FBQztTQUNILENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDTyxhQUFhO1FBQ3JCLE1BQU0sTUFBTSxHQUFhLEVBQUUsQ0FBQztRQUU1QixJQUNFLElBQUksQ0FBQyxlQUFlLEVBQUUsSUFBSSxLQUFLLHFCQUFhLENBQUMsV0FBVztZQUN4RCxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsYUFBYSxFQUNwQyxDQUFDO1lBQ0QsTUFBTSxDQUFDLElBQUksQ0FDVCxxRUFBcUUsQ0FDdEUsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUNFLElBQUksQ0FBQyxjQUFjO1lBQ25CLENBQUMsYUFBSyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDO1lBQ3hDLENBQUMsSUFBQSx5QkFBaUIsRUFBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQ3ZDLENBQUM7WUFDRCxNQUFNLENBQUMsSUFBSSxDQUFDLDZDQUE2QyxDQUFDLENBQUM7UUFDN0QsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUNuRCxNQUFNLENBQUMsSUFBSSxDQUNULHVFQUF1RSxDQUN4RSxDQUFDO1FBQ0osQ0FBQztRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTyxlQUFlO1FBQ3JCLE9BQU87WUFDTCxTQUFTLEVBQUUsSUFBQSxzQkFBYyxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7U0FDMUMsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNLLGtCQUFrQjtRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVk7WUFBRSxPQUFPLFNBQVMsQ0FBQztRQUN6QyxPQUFPLG1CQUFVLENBQUMsWUFBWSxDQUFDO1lBQzdCLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtTQUNoQyxDQUFDLENBQUM7SUFDTCxDQUFDOztBQTdGSCwwQkE4RkMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNjAuMC9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3Mtc3RlcGZ1bmN0aW9ucy9saWIvc3RhdGVzL21hcC1iYXNlLnRzXG5cbmltcG9ydCB7IFRva2VuIH0gZnJvbSBcImNka3RmXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgU3RhdGVUeXBlIH0gZnJvbSBcIi4vcHJpdmF0ZS9zdGF0ZS10eXBlXCI7XG5pbXBvcnQgeyByZW5kZXJKc29uUGF0aCwgU3RhdGUgfSBmcm9tIFwiLi9zdGF0ZVwiO1xuaW1wb3J0IHsgQ2hhaW4gfSBmcm9tIFwiLi4vY2hhaW5cIjtcbmltcG9ydCB7IEZpZWxkVXRpbHMgfSBmcm9tIFwiLi4vZmllbGRzXCI7XG5pbXBvcnQgeyBJQ2hhaW5hYmxlLCBJTmV4dGFibGUsIFByb2Nlc3Nvck1vZGUgfSBmcm9tIFwiLi4vdHlwZXNcIjtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBkZWZpbmluZyBhIE1hcCBzdGF0ZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1hcEJhc2VQcm9wcyB7XG4gIC8qKlxuICAgKiBPcHRpb25hbCBuYW1lIGZvciB0aGlzIHN0YXRlXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gVGhlIGNvbnN0cnVjdCBJRCB3aWxsIGJlIHVzZWQgYXMgc3RhdGUgbmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgc3RhdGVOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBbiBvcHRpb25hbCBkZXNjcmlwdGlvbiBmb3IgdGhpcyBzdGF0ZVxuICAgKlxuICAgKiBAZGVmYXVsdCBObyBjb21tZW50XG4gICAqL1xuICByZWFkb25seSBjb21tZW50Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBKU09OUGF0aCBleHByZXNzaW9uIHRvIHNlbGVjdCBwYXJ0IG9mIHRoZSBzdGF0ZSB0byBiZSB0aGUgaW5wdXQgdG8gdGhpcyBzdGF0ZS5cbiAgICpcbiAgICogTWF5IGFsc28gYmUgdGhlIHNwZWNpYWwgdmFsdWUgSnNvblBhdGguRElTQ0FSRCwgd2hpY2ggd2lsbCBjYXVzZSB0aGUgZWZmZWN0aXZlXG4gICAqIGlucHV0IHRvIGJlIHRoZSBlbXB0eSBvYmplY3Qge30uXG4gICAqXG4gICAqIEBkZWZhdWx0ICRcbiAgICovXG4gIHJlYWRvbmx5IGlucHV0UGF0aD86IHN0cmluZztcblxuICAvKipcbiAgICogSlNPTlBhdGggZXhwcmVzc2lvbiB0byBzZWxlY3QgcGFydCBvZiB0aGUgc3RhdGUgdG8gYmUgdGhlIG91dHB1dCB0byB0aGlzIHN0YXRlLlxuICAgKlxuICAgKiBNYXkgYWxzbyBiZSB0aGUgc3BlY2lhbCB2YWx1ZSBKc29uUGF0aC5ESVNDQVJELCB3aGljaCB3aWxsIGNhdXNlIHRoZSBlZmZlY3RpdmVcbiAgICogb3V0cHV0IHRvIGJlIHRoZSBlbXB0eSBvYmplY3Qge30uXG4gICAqXG4gICAqIEBkZWZhdWx0ICRcbiAgICovXG4gIHJlYWRvbmx5IG91dHB1dFBhdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEpTT05QYXRoIGV4cHJlc3Npb24gdG8gaW5kaWNhdGUgd2hlcmUgdG8gaW5qZWN0IHRoZSBzdGF0ZSdzIG91dHB1dFxuICAgKlxuICAgKiBNYXkgYWxzbyBiZSB0aGUgc3BlY2lhbCB2YWx1ZSBKc29uUGF0aC5ESVNDQVJELCB3aGljaCB3aWxsIGNhdXNlIHRoZSBzdGF0ZSdzXG4gICAqIGlucHV0IHRvIGJlY29tZSBpdHMgb3V0cHV0LlxuICAgKlxuICAgKiBAZGVmYXVsdCAkXG4gICAqL1xuICByZWFkb25seSByZXN1bHRQYXRoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBKU09OUGF0aCBleHByZXNzaW9uIHRvIHNlbGVjdCB0aGUgYXJyYXkgdG8gaXRlcmF0ZSBvdmVyXG4gICAqXG4gICAqIEBkZWZhdWx0ICRcbiAgICovXG4gIHJlYWRvbmx5IGl0ZW1zUGF0aD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEpTT04gdGhhdCB5b3Ugd2FudCB0byBvdmVycmlkZSB5b3VyIGRlZmF1bHQgaXRlcmF0aW9uIGlucHV0IChtdXR1YWxseSBleGNsdXNpdmUgIHdpdGggYHBhcmFtZXRlcnNgKS5cbiAgICpcbiAgICogQHNlZVxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vc3RlcC1mdW5jdGlvbnMvbGF0ZXN0L2RnL2lucHV0LW91dHB1dC1pdGVtc2VsZWN0b3IuaHRtbFxuICAgKlxuICAgKiBAZGVmYXVsdCAkXG4gICAqL1xuICByZWFkb25seSBpdGVtU2VsZWN0b3I/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xuXG4gIC8qKlxuICAgKiBUaGUgSlNPTiB0aGF0IHdpbGwgcmVwbGFjZSB0aGUgc3RhdGUncyByYXcgcmVzdWx0IGFuZCBiZWNvbWUgdGhlIGVmZmVjdGl2ZVxuICAgKiByZXN1bHQgYmVmb3JlIFJlc3VsdFBhdGggaXMgYXBwbGllZC5cbiAgICpcbiAgICogWW91IGNhbiB1c2UgUmVzdWx0U2VsZWN0b3IgdG8gY3JlYXRlIGEgcGF5bG9hZCB3aXRoIHZhbHVlcyB0aGF0IGFyZSBzdGF0aWNcbiAgICogb3Igc2VsZWN0ZWQgZnJvbSB0aGUgc3RhdGUncyByYXcgcmVzdWx0LlxuICAgKlxuICAgKiBAc2VlXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9zdGVwLWZ1bmN0aW9ucy9sYXRlc3QvZGcvaW5wdXQtb3V0cHV0LWlucHV0cGF0aC1wYXJhbXMuaHRtbCNpbnB1dC1vdXRwdXQtcmVzdWx0c2VsZWN0b3JcbiAgICpcbiAgICogQGRlZmF1bHQgLSBOb25lXG4gICAqL1xuICByZWFkb25seSByZXN1bHRTZWxlY3Rvcj86IHsgW2tleTogc3RyaW5nXTogYW55IH07XG5cbiAgLyoqXG4gICAqIE1heENvbmN1cnJlbmN5XG4gICAqXG4gICAqIEFuIHVwcGVyIGJvdW5kIG9uIHRoZSBudW1iZXIgb2YgaXRlcmF0aW9ucyB5b3Ugd2FudCBydW5uaW5nIGF0IG9uY2UuXG4gICAqXG4gICAqIEBzZWVcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL3N0ZXAtZnVuY3Rpb25zL2xhdGVzdC9kZy9jb25jZXB0cy1hc2wtdXNlLW1hcC1zdGF0ZS1pbmxpbmUuaHRtbCNtYXAtc3RhdGUtaW5saW5lLWFkZGl0aW9uYWwtZmllbGRzXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gZnVsbCBjb25jdXJyZW5jeVxuICAgKi9cbiAgcmVhZG9ubHkgbWF4Q29uY3VycmVuY3k/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1heENvbmN1cnJlbmN5UGF0aFxuICAgKlxuICAgKiBBIEpzb25QYXRoIHRoYXQgc3BlY2lmaWVzIHRoZSBtYXhpbXVtIGNvbmN1cnJlbmN5IGR5bmFtaWNhbGx5IGZyb20gdGhlIHN0YXRlIGlucHV0LlxuICAgKlxuICAgKiBAc2VlXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9zdGVwLWZ1bmN0aW9ucy9sYXRlc3QvZGcvY29uY2VwdHMtYXNsLXVzZS1tYXAtc3RhdGUtaW5saW5lLmh0bWwjbWFwLXN0YXRlLWlubGluZS1hZGRpdGlvbmFsLWZpZWxkc1xuICAgKlxuICAgKiBAZGVmYXVsdCAtIGZ1bGwgY29uY3VycmVuY3lcbiAgICovXG4gIHJlYWRvbmx5IG1heENvbmN1cnJlbmN5UGF0aD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRydWUgaWYgdGhlIHZhbHVlIHBhc3NlZCBpcyBhIHBvc2l0aXZlIGludGVnZXJcbiAqIEBwYXJhbSB2YWx1ZSB0aGUgdmFsdWUgdG8gdmFsaWRhdGVcbiAqL1xuZXhwb3J0IGNvbnN0IGlzUG9zaXRpdmVJbnRlZ2VyID0gKHZhbHVlOiBudW1iZXIpID0+IHtcbiAgY29uc3QgaXNGbG9hdCA9IE1hdGguZmxvb3IodmFsdWUpICE9PSB2YWx1ZTtcblxuICBjb25zdCBpc05vdFBvc2l0aXZlSW50ZWdlciA9IHZhbHVlIDwgMCB8fCB2YWx1ZSA+IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSO1xuXG4gIHJldHVybiAhaXNGbG9hdCAmJiAhaXNOb3RQb3NpdGl2ZUludGVnZXI7XG59O1xuXG4vKipcbiAqIERlZmluZSBhIE1hcCBzdGF0ZSBpbiB0aGUgc3RhdGUgbWFjaGluZVxuICpcbiAqIEEgYE1hcGAgc3RhdGUgY2FuIGJlIHVzZWQgdG8gcnVuIGEgc2V0IG9mIHN0ZXBzIGZvciBlYWNoIGVsZW1lbnQgb2YgYW4gaW5wdXQgYXJyYXkuXG4gKiBBIE1hcCBzdGF0ZSB3aWxsIGV4ZWN1dGUgdGhlIHNhbWUgc3RlcHMgZm9yIG11bHRpcGxlIGVudHJpZXMgb2YgYW4gYXJyYXkgaW4gdGhlIHN0YXRlIGlucHV0LlxuICpcbiAqIFdoaWxlIHRoZSBQYXJhbGxlbCBzdGF0ZSBleGVjdXRlcyBtdWx0aXBsZSBicmFuY2hlcyBvZiBzdGVwcyB1c2luZyB0aGUgc2FtZSBpbnB1dCwgYSBNYXAgc3RhdGVcbiAqIHdpbGwgZXhlY3V0ZSB0aGUgc2FtZSBzdGVwcyBmb3IgbXVsdGlwbGUgZW50cmllcyBvZiBhbiBhcnJheSBpbiB0aGUgc3RhdGUgaW5wdXQuXG4gKlxuICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vc3RlcC1mdW5jdGlvbnMvbGF0ZXN0L2RnL2FtYXpvbi1zdGF0ZXMtbGFuZ3VhZ2UtbWFwLXN0YXRlLmh0bWxcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE1hcEJhc2UgZXh0ZW5kcyBTdGF0ZSBpbXBsZW1lbnRzIElOZXh0YWJsZSB7XG4gIHB1YmxpYyByZWFkb25seSBlbmRTdGF0ZXM6IElOZXh0YWJsZVtdO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbWF4Q29uY3VycmVuY3k/OiBudW1iZXI7XG4gIHByaXZhdGUgcmVhZG9ubHkgbWF4Q29uY3VycmVuY3lQYXRoPzogc3RyaW5nO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXRlbXNQYXRoPzogc3RyaW5nO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXRlbVNlbGVjdG9yPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTWFwQmFzZVByb3BzID0ge30pIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHByb3BzKTtcbiAgICB0aGlzLmVuZFN0YXRlcyA9IFt0aGlzXTtcbiAgICB0aGlzLm1heENvbmN1cnJlbmN5ID0gcHJvcHMubWF4Q29uY3VycmVuY3k7XG4gICAgdGhpcy5tYXhDb25jdXJyZW5jeVBhdGggPSBwcm9wcy5tYXhDb25jdXJyZW5jeVBhdGg7XG4gICAgdGhpcy5pdGVtc1BhdGggPSBwcm9wcy5pdGVtc1BhdGg7XG4gICAgdGhpcy5pdGVtU2VsZWN0b3IgPSBwcm9wcy5pdGVtU2VsZWN0b3I7XG4gIH1cblxuICAvKipcbiAgICogQ29udGludWUgbm9ybWFsIGV4ZWN1dGlvbiB3aXRoIHRoZSBnaXZlbiBzdGF0ZVxuICAgKi9cbiAgcHVibGljIG5leHQobmV4dDogSUNoYWluYWJsZSk6IENoYWluIHtcbiAgICBzdXBlci5tYWtlTmV4dChuZXh0LnN0YXJ0U3RhdGUpO1xuICAgIHJldHVybiBDaGFpbi5zZXF1ZW5jZSh0aGlzLCBuZXh0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm4gdGhlIEFtYXpvbiBTdGF0ZXMgTGFuZ3VhZ2Ugb2JqZWN0IGZvciB0aGlzIHN0YXRlXG4gICAqL1xuICBwdWJsaWMgdG9TdGF0ZUpzb24oKTogb2JqZWN0IHtcbiAgICByZXR1cm4ge1xuICAgICAgVHlwZTogU3RhdGVUeXBlLk1BUCxcbiAgICAgIENvbW1lbnQ6IHRoaXMuY29tbWVudCxcbiAgICAgIFJlc3VsdFBhdGg6IHJlbmRlckpzb25QYXRoKHRoaXMucmVzdWx0UGF0aCksXG4gICAgICAuLi50aGlzLnJlbmRlck5leHRFbmQoKSxcbiAgICAgIC4uLnRoaXMucmVuZGVySW5wdXRPdXRwdXQoKSxcbiAgICAgIC4uLnRoaXMucmVuZGVyUmVzdWx0U2VsZWN0b3IoKSxcbiAgICAgIC4uLnRoaXMucmVuZGVyUmV0cnlDYXRjaCgpLFxuICAgICAgLi4udGhpcy5yZW5kZXJJdGVtc1BhdGgoKSxcbiAgICAgIC4uLnRoaXMucmVuZGVySXRlbVNlbGVjdG9yKCksXG4gICAgICAuLi50aGlzLnJlbmRlckl0ZW1Qcm9jZXNzb3IoKSxcbiAgICAgIC4uLih0aGlzLm1heENvbmN1cnJlbmN5ICYmIHsgTWF4Q29uY3VycmVuY3k6IHRoaXMubWF4Q29uY3VycmVuY3kgfSksXG4gICAgICAuLi4odGhpcy5tYXhDb25jdXJyZW5jeVBhdGggJiYge1xuICAgICAgICBNYXhDb25jdXJyZW5jeVBhdGg6IHJlbmRlckpzb25QYXRoKHRoaXMubWF4Q29uY3VycmVuY3lQYXRoKSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGUgdGhpcyBzdGF0ZVxuICAgKi9cbiAgcHJvdGVjdGVkIHZhbGlkYXRlU3RhdGUoKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGVycm9yczogc3RyaW5nW10gPSBbXTtcblxuICAgIGlmIChcbiAgICAgIHRoaXMucHJvY2Vzc29yQ29uZmlnPy5tb2RlID09PSBQcm9jZXNzb3JNb2RlLkRJU1RSSUJVVEVEICYmXG4gICAgICAhdGhpcy5wcm9jZXNzb3JDb25maWc/LmV4ZWN1dGlvblR5cGVcbiAgICApIHtcbiAgICAgIGVycm9ycy5wdXNoKFxuICAgICAgICBcIllvdSBtdXN0IHNwZWNpZnkgYW4gZXhlY3V0aW9uIHR5cGUgZm9yIHRoZSBkaXN0cmlidXRlZCBNYXAgd29ya2Zsb3dcIixcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgdGhpcy5tYXhDb25jdXJyZW5jeSAmJlxuICAgICAgIVRva2VuLmlzVW5yZXNvbHZlZCh0aGlzLm1heENvbmN1cnJlbmN5KSAmJlxuICAgICAgIWlzUG9zaXRpdmVJbnRlZ2VyKHRoaXMubWF4Q29uY3VycmVuY3kpXG4gICAgKSB7XG4gICAgICBlcnJvcnMucHVzaChcIm1heENvbmN1cnJlbmN5IGhhcyB0byBiZSBhIHBvc2l0aXZlIGludGVnZXJcIik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubWF4Q29uY3VycmVuY3kgJiYgdGhpcy5tYXhDb25jdXJyZW5jeVBhdGgpIHtcbiAgICAgIGVycm9ycy5wdXNoKFxuICAgICAgICBcIlByb3ZpZGUgZWl0aGVyIGBtYXhDb25jdXJyZW5jeWAgb3IgYG1heENvbmN1cnJlbmN5UGF0aGAsIGJ1dCBub3QgYm90aFwiLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZXJyb3JzO1xuICB9XG5cbiAgcHJpdmF0ZSByZW5kZXJJdGVtc1BhdGgoKTogYW55IHtcbiAgICByZXR1cm4ge1xuICAgICAgSXRlbXNQYXRoOiByZW5kZXJKc29uUGF0aCh0aGlzLml0ZW1zUGF0aCksXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW5kZXIgSXRlbVNlbGVjdG9yIGluIEFTTCBKU09OIGZvcm1hdFxuICAgKi9cbiAgcHJpdmF0ZSByZW5kZXJJdGVtU2VsZWN0b3IoKTogYW55IHtcbiAgICBpZiAoIXRoaXMuaXRlbVNlbGVjdG9yKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIHJldHVybiBGaWVsZFV0aWxzLnJlbmRlck9iamVjdCh7XG4gICAgICBJdGVtU2VsZWN0b3I6IHRoaXMuaXRlbVNlbGVjdG9yLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
108
+ MapBase[_a] = { fqn: "terraconstructs.aws.compute.MapBase", version: "0.2.5" };
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXdzL2NvbXB1dGUvc3RhdGVzL21hcC1iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkdBQTZHO0FBRTdHLGlDQUE4QjtBQUU5QixxREFBaUQ7QUFDakQsbUNBQWdEO0FBQ2hELG9DQUFpQztBQUNqQyxzQ0FBdUM7QUFDdkMsb0NBQWdFO0FBMEdoRTs7O0dBR0c7QUFDSSxNQUFNLGlCQUFpQixHQUFHLENBQUMsS0FBYSxFQUFFLEVBQUU7SUFDakQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxLQUFLLENBQUM7SUFFNUMsTUFBTSxvQkFBb0IsR0FBRyxLQUFLLEdBQUcsQ0FBQyxJQUFJLEtBQUssR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7SUFFMUUsT0FBTyxDQUFDLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDO0FBQzNDLENBQUMsQ0FBQztBQU5XLFFBQUEsaUJBQWlCLHFCQU01QjtBQUVGOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFzQixPQUFRLFNBQVEsYUFBSztJQVF6QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLFFBQXNCLEVBQUU7UUFDaEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQztRQUMzQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixDQUFDO1FBQ25ELElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQztRQUNqQyxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7SUFDekMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksSUFBSSxDQUFDLElBQWdCO1FBQzFCLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLE9BQU8sYUFBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksV0FBVztRQUNoQixPQUFPO1lBQ0wsSUFBSSxFQUFFLHNCQUFTLENBQUMsR0FBRztZQUNuQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsVUFBVSxFQUFFLElBQUEsc0JBQWMsRUFBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQzNDLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN2QixHQUFHLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMzQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUM5QixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUMxQixHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDekIsR0FBRyxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDNUIsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDN0IsR0FBRyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksRUFBRSxjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ25FLEdBQUcsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLElBQUk7Z0JBQzdCLGtCQUFrQixFQUFFLElBQUEsc0JBQWMsRUFBQyxJQUFJLENBQUMsa0JBQWtCLENBQUM7YUFDNUQsQ0FBQztTQUNILENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDTyxhQUFhO1FBQ3JCLE1BQU0sTUFBTSxHQUFhLEVBQUUsQ0FBQztRQUU1QixJQUNFLElBQUksQ0FBQyxlQUFlLEVBQUUsSUFBSSxLQUFLLHFCQUFhLENBQUMsV0FBVztZQUN4RCxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsYUFBYSxFQUNwQyxDQUFDO1lBQ0QsTUFBTSxDQUFDLElBQUksQ0FDVCxxRUFBcUUsQ0FDdEUsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUNFLElBQUksQ0FBQyxjQUFjO1lBQ25CLENBQUMsYUFBSyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDO1lBQ3hDLENBQUMsSUFBQSx5QkFBaUIsRUFBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQ3ZDLENBQUM7WUFDRCxNQUFNLENBQUMsSUFBSSxDQUFDLDZDQUE2QyxDQUFDLENBQUM7UUFDN0QsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUNuRCxNQUFNLENBQUMsSUFBSSxDQUNULHVFQUF1RSxDQUN4RSxDQUFDO1FBQ0osQ0FBQztRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTyxlQUFlO1FBQ3JCLE9BQU87WUFDTCxTQUFTLEVBQUUsSUFBQSxzQkFBYyxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7U0FDMUMsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNLLGtCQUFrQjtRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVk7WUFBRSxPQUFPLFNBQVMsQ0FBQztRQUN6QyxPQUFPLG1CQUFVLENBQUMsWUFBWSxDQUFDO1lBQzdCLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtTQUNoQyxDQUFDLENBQUM7SUFDTCxDQUFDOztBQTdGSCwwQkE4RkMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNjAuMC9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3Mtc3RlcGZ1bmN0aW9ucy9saWIvc3RhdGVzL21hcC1iYXNlLnRzXG5cbmltcG9ydCB7IFRva2VuIH0gZnJvbSBcImNka3RuXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgU3RhdGVUeXBlIH0gZnJvbSBcIi4vcHJpdmF0ZS9zdGF0ZS10eXBlXCI7XG5pbXBvcnQgeyByZW5kZXJKc29uUGF0aCwgU3RhdGUgfSBmcm9tIFwiLi9zdGF0ZVwiO1xuaW1wb3J0IHsgQ2hhaW4gfSBmcm9tIFwiLi4vY2hhaW5cIjtcbmltcG9ydCB7IEZpZWxkVXRpbHMgfSBmcm9tIFwiLi4vZmllbGRzXCI7XG5pbXBvcnQgeyBJQ2hhaW5hYmxlLCBJTmV4dGFibGUsIFByb2Nlc3Nvck1vZGUgfSBmcm9tIFwiLi4vdHlwZXNcIjtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBkZWZpbmluZyBhIE1hcCBzdGF0ZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1hcEJhc2VQcm9wcyB7XG4gIC8qKlxuICAgKiBPcHRpb25hbCBuYW1lIGZvciB0aGlzIHN0YXRlXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gVGhlIGNvbnN0cnVjdCBJRCB3aWxsIGJlIHVzZWQgYXMgc3RhdGUgbmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgc3RhdGVOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBbiBvcHRpb25hbCBkZXNjcmlwdGlvbiBmb3IgdGhpcyBzdGF0ZVxuICAgKlxuICAgKiBAZGVmYXVsdCBObyBjb21tZW50XG4gICAqL1xuICByZWFkb25seSBjb21tZW50Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBKU09OUGF0aCBleHByZXNzaW9uIHRvIHNlbGVjdCBwYXJ0IG9mIHRoZSBzdGF0ZSB0byBiZSB0aGUgaW5wdXQgdG8gdGhpcyBzdGF0ZS5cbiAgICpcbiAgICogTWF5IGFsc28gYmUgdGhlIHNwZWNpYWwgdmFsdWUgSnNvblBhdGguRElTQ0FSRCwgd2hpY2ggd2lsbCBjYXVzZSB0aGUgZWZmZWN0aXZlXG4gICAqIGlucHV0IHRvIGJlIHRoZSBlbXB0eSBvYmplY3Qge30uXG4gICAqXG4gICAqIEBkZWZhdWx0ICRcbiAgICovXG4gIHJlYWRvbmx5IGlucHV0UGF0aD86IHN0cmluZztcblxuICAvKipcbiAgICogSlNPTlBhdGggZXhwcmVzc2lvbiB0byBzZWxlY3QgcGFydCBvZiB0aGUgc3RhdGUgdG8gYmUgdGhlIG91dHB1dCB0byB0aGlzIHN0YXRlLlxuICAgKlxuICAgKiBNYXkgYWxzbyBiZSB0aGUgc3BlY2lhbCB2YWx1ZSBKc29uUGF0aC5ESVNDQVJELCB3aGljaCB3aWxsIGNhdXNlIHRoZSBlZmZlY3RpdmVcbiAgICogb3V0cHV0IHRvIGJlIHRoZSBlbXB0eSBvYmplY3Qge30uXG4gICAqXG4gICAqIEBkZWZhdWx0ICRcbiAgICovXG4gIHJlYWRvbmx5IG91dHB1dFBhdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEpTT05QYXRoIGV4cHJlc3Npb24gdG8gaW5kaWNhdGUgd2hlcmUgdG8gaW5qZWN0IHRoZSBzdGF0ZSdzIG91dHB1dFxuICAgKlxuICAgKiBNYXkgYWxzbyBiZSB0aGUgc3BlY2lhbCB2YWx1ZSBKc29uUGF0aC5ESVNDQVJELCB3aGljaCB3aWxsIGNhdXNlIHRoZSBzdGF0ZSdzXG4gICAqIGlucHV0IHRvIGJlY29tZSBpdHMgb3V0cHV0LlxuICAgKlxuICAgKiBAZGVmYXVsdCAkXG4gICAqL1xuICByZWFkb25seSByZXN1bHRQYXRoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBKU09OUGF0aCBleHByZXNzaW9uIHRvIHNlbGVjdCB0aGUgYXJyYXkgdG8gaXRlcmF0ZSBvdmVyXG4gICAqXG4gICAqIEBkZWZhdWx0ICRcbiAgICovXG4gIHJlYWRvbmx5IGl0ZW1zUGF0aD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEpTT04gdGhhdCB5b3Ugd2FudCB0byBvdmVycmlkZSB5b3VyIGRlZmF1bHQgaXRlcmF0aW9uIGlucHV0IChtdXR1YWxseSBleGNsdXNpdmUgIHdpdGggYHBhcmFtZXRlcnNgKS5cbiAgICpcbiAgICogQHNlZVxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vc3RlcC1mdW5jdGlvbnMvbGF0ZXN0L2RnL2lucHV0LW91dHB1dC1pdGVtc2VsZWN0b3IuaHRtbFxuICAgKlxuICAgKiBAZGVmYXVsdCAkXG4gICAqL1xuICByZWFkb25seSBpdGVtU2VsZWN0b3I/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xuXG4gIC8qKlxuICAgKiBUaGUgSlNPTiB0aGF0IHdpbGwgcmVwbGFjZSB0aGUgc3RhdGUncyByYXcgcmVzdWx0IGFuZCBiZWNvbWUgdGhlIGVmZmVjdGl2ZVxuICAgKiByZXN1bHQgYmVmb3JlIFJlc3VsdFBhdGggaXMgYXBwbGllZC5cbiAgICpcbiAgICogWW91IGNhbiB1c2UgUmVzdWx0U2VsZWN0b3IgdG8gY3JlYXRlIGEgcGF5bG9hZCB3aXRoIHZhbHVlcyB0aGF0IGFyZSBzdGF0aWNcbiAgICogb3Igc2VsZWN0ZWQgZnJvbSB0aGUgc3RhdGUncyByYXcgcmVzdWx0LlxuICAgKlxuICAgKiBAc2VlXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9zdGVwLWZ1bmN0aW9ucy9sYXRlc3QvZGcvaW5wdXQtb3V0cHV0LWlucHV0cGF0aC1wYXJhbXMuaHRtbCNpbnB1dC1vdXRwdXQtcmVzdWx0c2VsZWN0b3JcbiAgICpcbiAgICogQGRlZmF1bHQgLSBOb25lXG4gICAqL1xuICByZWFkb25seSByZXN1bHRTZWxlY3Rvcj86IHsgW2tleTogc3RyaW5nXTogYW55IH07XG5cbiAgLyoqXG4gICAqIE1heENvbmN1cnJlbmN5XG4gICAqXG4gICAqIEFuIHVwcGVyIGJvdW5kIG9uIHRoZSBudW1iZXIgb2YgaXRlcmF0aW9ucyB5b3Ugd2FudCBydW5uaW5nIGF0IG9uY2UuXG4gICAqXG4gICAqIEBzZWVcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL3N0ZXAtZnVuY3Rpb25zL2xhdGVzdC9kZy9jb25jZXB0cy1hc2wtdXNlLW1hcC1zdGF0ZS1pbmxpbmUuaHRtbCNtYXAtc3RhdGUtaW5saW5lLWFkZGl0aW9uYWwtZmllbGRzXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gZnVsbCBjb25jdXJyZW5jeVxuICAgKi9cbiAgcmVhZG9ubHkgbWF4Q29uY3VycmVuY3k/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1heENvbmN1cnJlbmN5UGF0aFxuICAgKlxuICAgKiBBIEpzb25QYXRoIHRoYXQgc3BlY2lmaWVzIHRoZSBtYXhpbXVtIGNvbmN1cnJlbmN5IGR5bmFtaWNhbGx5IGZyb20gdGhlIHN0YXRlIGlucHV0LlxuICAgKlxuICAgKiBAc2VlXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9zdGVwLWZ1bmN0aW9ucy9sYXRlc3QvZGcvY29uY2VwdHMtYXNsLXVzZS1tYXAtc3RhdGUtaW5saW5lLmh0bWwjbWFwLXN0YXRlLWlubGluZS1hZGRpdGlvbmFsLWZpZWxkc1xuICAgKlxuICAgKiBAZGVmYXVsdCAtIGZ1bGwgY29uY3VycmVuY3lcbiAgICovXG4gIHJlYWRvbmx5IG1heENvbmN1cnJlbmN5UGF0aD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRydWUgaWYgdGhlIHZhbHVlIHBhc3NlZCBpcyBhIHBvc2l0aXZlIGludGVnZXJcbiAqIEBwYXJhbSB2YWx1ZSB0aGUgdmFsdWUgdG8gdmFsaWRhdGVcbiAqL1xuZXhwb3J0IGNvbnN0IGlzUG9zaXRpdmVJbnRlZ2VyID0gKHZhbHVlOiBudW1iZXIpID0+IHtcbiAgY29uc3QgaXNGbG9hdCA9IE1hdGguZmxvb3IodmFsdWUpICE9PSB2YWx1ZTtcblxuICBjb25zdCBpc05vdFBvc2l0aXZlSW50ZWdlciA9IHZhbHVlIDwgMCB8fCB2YWx1ZSA+IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSO1xuXG4gIHJldHVybiAhaXNGbG9hdCAmJiAhaXNOb3RQb3NpdGl2ZUludGVnZXI7XG59O1xuXG4vKipcbiAqIERlZmluZSBhIE1hcCBzdGF0ZSBpbiB0aGUgc3RhdGUgbWFjaGluZVxuICpcbiAqIEEgYE1hcGAgc3RhdGUgY2FuIGJlIHVzZWQgdG8gcnVuIGEgc2V0IG9mIHN0ZXBzIGZvciBlYWNoIGVsZW1lbnQgb2YgYW4gaW5wdXQgYXJyYXkuXG4gKiBBIE1hcCBzdGF0ZSB3aWxsIGV4ZWN1dGUgdGhlIHNhbWUgc3RlcHMgZm9yIG11bHRpcGxlIGVudHJpZXMgb2YgYW4gYXJyYXkgaW4gdGhlIHN0YXRlIGlucHV0LlxuICpcbiAqIFdoaWxlIHRoZSBQYXJhbGxlbCBzdGF0ZSBleGVjdXRlcyBtdWx0aXBsZSBicmFuY2hlcyBvZiBzdGVwcyB1c2luZyB0aGUgc2FtZSBpbnB1dCwgYSBNYXAgc3RhdGVcbiAqIHdpbGwgZXhlY3V0ZSB0aGUgc2FtZSBzdGVwcyBmb3IgbXVsdGlwbGUgZW50cmllcyBvZiBhbiBhcnJheSBpbiB0aGUgc3RhdGUgaW5wdXQuXG4gKlxuICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vc3RlcC1mdW5jdGlvbnMvbGF0ZXN0L2RnL2FtYXpvbi1zdGF0ZXMtbGFuZ3VhZ2UtbWFwLXN0YXRlLmh0bWxcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE1hcEJhc2UgZXh0ZW5kcyBTdGF0ZSBpbXBsZW1lbnRzIElOZXh0YWJsZSB7XG4gIHB1YmxpYyByZWFkb25seSBlbmRTdGF0ZXM6IElOZXh0YWJsZVtdO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbWF4Q29uY3VycmVuY3k/OiBudW1iZXI7XG4gIHByaXZhdGUgcmVhZG9ubHkgbWF4Q29uY3VycmVuY3lQYXRoPzogc3RyaW5nO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXRlbXNQYXRoPzogc3RyaW5nO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXRlbVNlbGVjdG9yPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTWFwQmFzZVByb3BzID0ge30pIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHByb3BzKTtcbiAgICB0aGlzLmVuZFN0YXRlcyA9IFt0aGlzXTtcbiAgICB0aGlzLm1heENvbmN1cnJlbmN5ID0gcHJvcHMubWF4Q29uY3VycmVuY3k7XG4gICAgdGhpcy5tYXhDb25jdXJyZW5jeVBhdGggPSBwcm9wcy5tYXhDb25jdXJyZW5jeVBhdGg7XG4gICAgdGhpcy5pdGVtc1BhdGggPSBwcm9wcy5pdGVtc1BhdGg7XG4gICAgdGhpcy5pdGVtU2VsZWN0b3IgPSBwcm9wcy5pdGVtU2VsZWN0b3I7XG4gIH1cblxuICAvKipcbiAgICogQ29udGludWUgbm9ybWFsIGV4ZWN1dGlvbiB3aXRoIHRoZSBnaXZlbiBzdGF0ZVxuICAgKi9cbiAgcHVibGljIG5leHQobmV4dDogSUNoYWluYWJsZSk6IENoYWluIHtcbiAgICBzdXBlci5tYWtlTmV4dChuZXh0LnN0YXJ0U3RhdGUpO1xuICAgIHJldHVybiBDaGFpbi5zZXF1ZW5jZSh0aGlzLCBuZXh0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm4gdGhlIEFtYXpvbiBTdGF0ZXMgTGFuZ3VhZ2Ugb2JqZWN0IGZvciB0aGlzIHN0YXRlXG4gICAqL1xuICBwdWJsaWMgdG9TdGF0ZUpzb24oKTogb2JqZWN0IHtcbiAgICByZXR1cm4ge1xuICAgICAgVHlwZTogU3RhdGVUeXBlLk1BUCxcbiAgICAgIENvbW1lbnQ6IHRoaXMuY29tbWVudCxcbiAgICAgIFJlc3VsdFBhdGg6IHJlbmRlckpzb25QYXRoKHRoaXMucmVzdWx0UGF0aCksXG4gICAgICAuLi50aGlzLnJlbmRlck5leHRFbmQoKSxcbiAgICAgIC4uLnRoaXMucmVuZGVySW5wdXRPdXRwdXQoKSxcbiAgICAgIC4uLnRoaXMucmVuZGVyUmVzdWx0U2VsZWN0b3IoKSxcbiAgICAgIC4uLnRoaXMucmVuZGVyUmV0cnlDYXRjaCgpLFxuICAgICAgLi4udGhpcy5yZW5kZXJJdGVtc1BhdGgoKSxcbiAgICAgIC4uLnRoaXMucmVuZGVySXRlbVNlbGVjdG9yKCksXG4gICAgICAuLi50aGlzLnJlbmRlckl0ZW1Qcm9jZXNzb3IoKSxcbiAgICAgIC4uLih0aGlzLm1heENvbmN1cnJlbmN5ICYmIHsgTWF4Q29uY3VycmVuY3k6IHRoaXMubWF4Q29uY3VycmVuY3kgfSksXG4gICAgICAuLi4odGhpcy5tYXhDb25jdXJyZW5jeVBhdGggJiYge1xuICAgICAgICBNYXhDb25jdXJyZW5jeVBhdGg6IHJlbmRlckpzb25QYXRoKHRoaXMubWF4Q29uY3VycmVuY3lQYXRoKSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGUgdGhpcyBzdGF0ZVxuICAgKi9cbiAgcHJvdGVjdGVkIHZhbGlkYXRlU3RhdGUoKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGVycm9yczogc3RyaW5nW10gPSBbXTtcblxuICAgIGlmIChcbiAgICAgIHRoaXMucHJvY2Vzc29yQ29uZmlnPy5tb2RlID09PSBQcm9jZXNzb3JNb2RlLkRJU1RSSUJVVEVEICYmXG4gICAgICAhdGhpcy5wcm9jZXNzb3JDb25maWc/LmV4ZWN1dGlvblR5cGVcbiAgICApIHtcbiAgICAgIGVycm9ycy5wdXNoKFxuICAgICAgICBcIllvdSBtdXN0IHNwZWNpZnkgYW4gZXhlY3V0aW9uIHR5cGUgZm9yIHRoZSBkaXN0cmlidXRlZCBNYXAgd29ya2Zsb3dcIixcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgdGhpcy5tYXhDb25jdXJyZW5jeSAmJlxuICAgICAgIVRva2VuLmlzVW5yZXNvbHZlZCh0aGlzLm1heENvbmN1cnJlbmN5KSAmJlxuICAgICAgIWlzUG9zaXRpdmVJbnRlZ2VyKHRoaXMubWF4Q29uY3VycmVuY3kpXG4gICAgKSB7XG4gICAgICBlcnJvcnMucHVzaChcIm1heENvbmN1cnJlbmN5IGhhcyB0byBiZSBhIHBvc2l0aXZlIGludGVnZXJcIik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubWF4Q29uY3VycmVuY3kgJiYgdGhpcy5tYXhDb25jdXJyZW5jeVBhdGgpIHtcbiAgICAgIGVycm9ycy5wdXNoKFxuICAgICAgICBcIlByb3ZpZGUgZWl0aGVyIGBtYXhDb25jdXJyZW5jeWAgb3IgYG1heENvbmN1cnJlbmN5UGF0aGAsIGJ1dCBub3QgYm90aFwiLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZXJyb3JzO1xuICB9XG5cbiAgcHJpdmF0ZSByZW5kZXJJdGVtc1BhdGgoKTogYW55IHtcbiAgICByZXR1cm4ge1xuICAgICAgSXRlbXNQYXRoOiByZW5kZXJKc29uUGF0aCh0aGlzLml0ZW1zUGF0aCksXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW5kZXIgSXRlbVNlbGVjdG9yIGluIEFTTCBKU09OIGZvcm1hdFxuICAgKi9cbiAgcHJpdmF0ZSByZW5kZXJJdGVtU2VsZWN0b3IoKTogYW55IHtcbiAgICBpZiAoIXRoaXMuaXRlbVNlbGVjdG9yKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIHJldHVybiBGaWVsZFV0aWxzLnJlbmRlck9iamVjdCh7XG4gICAgICBJdGVtU2VsZWN0b3I6IHRoaXMuaXRlbVNlbGVjdG9yLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -106,5 +106,5 @@ class Map extends map_base_1.MapBase {
106
106
  }
107
107
  exports.Map = Map;
108
108
  _a = JSII_RTTI_SYMBOL_1;
109
- Map[_a] = { fqn: "terraconstructs.aws.compute.Map", version: "0.2.4" };
109
+ Map[_a] = { fqn: "terraconstructs.aws.compute.Map", version: "0.2.5" };
110
110
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2F3cy9jb21wdXRlL3N0YXRlcy9tYXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFHQSx5Q0FBbUQ7QUFDbkQsc0NBQXVDO0FBQ3ZDLGdEQUE0QztBQUM1QyxvQ0FPa0I7QUFvQmxCOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFhLEdBQUksU0FBUSxrQkFBTztJQUM5QixZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLFFBQWtCLEVBQUU7UUFDNUQsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxxQkFBYSxDQUFDLE1BQU0sQ0FBQztJQUM1QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksUUFBUSxDQUFDLFFBQW9CO1FBQ2xDLE1BQU0sSUFBSSxHQUFHLE9BQU8sSUFBSSxDQUFDLE9BQU8sV0FBVyxDQUFDO1FBQzVDLEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSSx3QkFBVSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUM3RCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7T0FFRztJQUNJLFdBQVc7UUFDaEIsT0FBTztZQUNMLEdBQUcsS0FBSyxDQUFDLFdBQVcsRUFBRTtZQUN0QixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUMxQixHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUU7U0FDekIsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNPLGFBQWE7UUFDckIsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBRXJDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3ZDLE1BQU0sQ0FBQyxJQUFJLENBQ1QsK0VBQStFLENBQ2hGLENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNyQyxNQUFNLENBQUMsSUFBSSxDQUNULDhEQUE4RCxDQUMvRCxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDekMsTUFBTSxDQUFDLElBQUksQ0FBQyw0REFBNEQsQ0FBQyxDQUFDO1FBQzVFLENBQUM7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQ7O09BRUc7SUFDSyxnQkFBZ0I7UUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNyQixPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDO1FBQ0QsT0FBTyxtQkFBVSxDQUFDLFlBQVksQ0FBQztZQUM3QixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7U0FDNUIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksUUFBUSxDQUFDLFFBQW9CLEVBQUU7UUFDcEMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLFFBQVEsQ0FBQyxPQUFtQixFQUFFLFFBQW9CLEVBQUU7UUFDekQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzNDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxhQUFhLENBQ2xCLFNBQXFCLEVBQ3JCLFNBQTBCLEVBQUU7UUFFNUIsTUFBTSxJQUFJLEdBQUcsT0FBTyxJQUFJLENBQUMsT0FBTyxpQkFBaUIsQ0FBQztRQUNsRCxNQUFNLFVBQVUsR0FBRyxJQUFJLHdCQUFVLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM5RCxLQUFLLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzNDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzs7QUF0R0gsa0JBdUdDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvdjIuMTYwLjAvcGFja2FnZXMvYXdzLWNkay1saWIvYXdzLXN0ZXBmdW5jdGlvbnMvbGliL3N0YXRlcy9tYXAudHNcblxuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IE1hcEJhc2UsIE1hcEJhc2VQcm9wcyB9IGZyb20gXCIuL21hcC1iYXNlXCI7XG5pbXBvcnQgeyBGaWVsZFV0aWxzIH0gZnJvbSBcIi4uL2ZpZWxkc1wiO1xuaW1wb3J0IHsgU3RhdGVHcmFwaCB9IGZyb20gXCIuLi9zdGF0ZS1ncmFwaFwiO1xuaW1wb3J0IHtcbiAgQ2F0Y2hQcm9wcyxcbiAgSUNoYWluYWJsZSxcbiAgSU5leHRhYmxlLFxuICBQcm9jZXNzb3JDb25maWcsXG4gIFByb2Nlc3Nvck1vZGUsXG4gIFJldHJ5UHJvcHMsXG59IGZyb20gXCIuLi90eXBlc1wiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGRlZmluaW5nIGEgTWFwIHN0YXRlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWFwUHJvcHMgZXh0ZW5kcyBNYXBCYXNlUHJvcHMge1xuICAvKipcbiAgICogVGhlIEpTT04gdGhhdCB5b3Ugd2FudCB0byBvdmVycmlkZSB5b3VyIGRlZmF1bHQgaXRlcmF0aW9uIGlucHV0IChtdXR1YWxseSBleGNsdXNpdmUgIHdpdGggYGl0ZW1TZWxlY3RvcmApLlxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCBTdGVwIEZ1bmN0aW9ucyBoYXMgZGVwcmVjYXRlZCB0aGUgYHBhcmFtZXRlcnNgIGZpZWxkIGluIGZhdm9yIG9mXG4gICAqIHRoZSBuZXcgYGl0ZW1TZWxlY3RvcmAgZmllbGRcbiAgICpcbiAgICogQHNlZVxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vc3RlcC1mdW5jdGlvbnMvbGF0ZXN0L2RnL2lucHV0LW91dHB1dC1pdGVtc2VsZWN0b3IuaHRtbFxuICAgKlxuICAgKiBAZGVmYXVsdCAkXG4gICAqL1xuICByZWFkb25seSBwYXJhbWV0ZXJzPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcbn1cblxuLyoqXG4gKiBEZWZpbmUgYSBNYXAgc3RhdGUgaW4gdGhlIHN0YXRlIG1hY2hpbmVcbiAqXG4gKiBBIGBNYXBgIHN0YXRlIGNhbiBiZSB1c2VkIHRvIHJ1biBhIHNldCBvZiBzdGVwcyBmb3IgZWFjaCBlbGVtZW50IG9mIGFuIGlucHV0IGFycmF5LlxuICogQSBNYXAgc3RhdGUgd2lsbCBleGVjdXRlIHRoZSBzYW1lIHN0ZXBzIGZvciBtdWx0aXBsZSBlbnRyaWVzIG9mIGFuIGFycmF5IGluIHRoZSBzdGF0ZSBpbnB1dC5cbiAqXG4gKiBXaGlsZSB0aGUgUGFyYWxsZWwgc3RhdGUgZXhlY3V0ZXMgbXVsdGlwbGUgYnJhbmNoZXMgb2Ygc3RlcHMgdXNpbmcgdGhlIHNhbWUgaW5wdXQsIGEgTWFwIHN0YXRlXG4gKiB3aWxsIGV4ZWN1dGUgdGhlIHNhbWUgc3RlcHMgZm9yIG11bHRpcGxlIGVudHJpZXMgb2YgYW4gYXJyYXkgaW4gdGhlIHN0YXRlIGlucHV0LlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL3N0ZXAtZnVuY3Rpb25zL2xhdGVzdC9kZy9hbWF6b24tc3RhdGVzLWxhbmd1YWdlLW1hcC1zdGF0ZS5odG1sXG4gKi9cbmV4cG9ydCBjbGFzcyBNYXAgZXh0ZW5kcyBNYXBCYXNlIGltcGxlbWVudHMgSU5leHRhYmxlIHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IE1hcFByb3BzID0ge30pIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHByb3BzKTtcbiAgICB0aGlzLnByb2Nlc3Nvck1vZGUgPSBQcm9jZXNzb3JNb2RlLklOTElORTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWZpbmUgaXRlcmF0b3Igc3RhdGUgbWFjaGluZSBpbiBNYXAuXG4gICAqXG4gICAqIEEgTWFwIG11c3QgZWl0aGVyIGhhdmUgYSBub24tZW1wdHkgaXRlcmF0b3Igb3IgYSBub24tZW1wdHkgaXRlbSBwcm9jZXNzb3IgKG11dHVhbGx5IGV4Y2x1c2l2ZSAgd2l0aCBgaXRlbVByb2Nlc3NvcmApLlxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCAtIHVzZSBgaXRlbVByb2Nlc3NvcmDCoGluc3RlYWQuXG4gICAqL1xuICBwdWJsaWMgaXRlcmF0b3IoaXRlcmF0b3I6IElDaGFpbmFibGUpOiBNYXAge1xuICAgIGNvbnN0IG5hbWUgPSBgTWFwICR7dGhpcy5zdGF0ZUlkfSBJdGVyYXRvcmA7XG4gICAgc3VwZXIuYWRkSXRlcmF0b3IobmV3IFN0YXRlR3JhcGgoaXRlcmF0b3Iuc3RhcnRTdGF0ZSwgbmFtZSkpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiB0aGUgQW1hem9uIFN0YXRlcyBMYW5ndWFnZSBvYmplY3QgZm9yIHRoaXMgc3RhdGVcbiAgICovXG4gIHB1YmxpYyB0b1N0YXRlSnNvbigpOiBvYmplY3Qge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5zdXBlci50b1N0YXRlSnNvbigpLFxuICAgICAgLi4udGhpcy5yZW5kZXJQYXJhbWV0ZXJzKCksXG4gICAgICAuLi50aGlzLnJlbmRlckl0ZXJhdG9yKCksXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZSB0aGlzIHN0YXRlXG4gICAqL1xuICBwcm90ZWN0ZWQgdmFsaWRhdGVTdGF0ZSgpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgZXJyb3JzID0gc3VwZXIudmFsaWRhdGVTdGF0ZSgpO1xuXG4gICAgaWYgKCF0aGlzLml0ZXJhdGlvbiAmJiAhdGhpcy5wcm9jZXNzb3IpIHtcbiAgICAgIGVycm9ycy5wdXNoKFxuICAgICAgICBcIk1hcCBzdGF0ZSBtdXN0IGVpdGhlciBoYXZlIGEgbm9uLWVtcHR5IGl0ZXJhdG9yIG9yIGEgbm9uLWVtcHR5IGl0ZW0gcHJvY2Vzc29yXCIsXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmICh0aGlzLml0ZXJhdGlvbiAmJiB0aGlzLnByb2Nlc3Nvcikge1xuICAgICAgZXJyb3JzLnB1c2goXG4gICAgICAgIFwiTWFwIHN0YXRlIGNhbm5vdCBoYXZlIGJvdGggYW4gaXRlcmF0b3IgYW5kIGFuIGl0ZW0gcHJvY2Vzc29yXCIsXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnBhcmFtZXRlcnMgJiYgdGhpcy5pdGVtU2VsZWN0b3IpIHtcbiAgICAgIGVycm9ycy5wdXNoKFwiTWFwIHN0YXRlIGNhbm5vdCBoYXZlIGJvdGggcGFyYW1ldGVycyBhbmQgYW4gaXRlbSBzZWxlY3RvclwiKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZXJyb3JzO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbmRlciBQYXJhbWV0ZXJzIGluIEFTTCBKU09OIGZvcm1hdFxuICAgKi9cbiAgcHJpdmF0ZSByZW5kZXJQYXJhbWV0ZXJzKCk6IGFueSB7XG4gICAgaWYgKCF0aGlzLnBhcmFtZXRlcnMpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHJldHVybiBGaWVsZFV0aWxzLnJlbmRlck9iamVjdCh7XG4gICAgICBQYXJhbWV0ZXJzOiB0aGlzLnBhcmFtZXRlcnMsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIHJldHJ5IGNvbmZpZ3VyYXRpb24gZm9yIHRoaXMgc3RhdGVcbiAgICpcbiAgICogVGhpcyBjb250cm9scyBpZiBhbmQgaG93IHRoZSBleGVjdXRpb24gd2lsbCBiZSByZXRyaWVkIGlmIGEgcGFydGljdWxhclxuICAgKiBlcnJvciBvY2N1cnMuXG4gICAqL1xuICBwdWJsaWMgYWRkUmV0cnkocHJvcHM6IFJldHJ5UHJvcHMgPSB7fSk6IE1hcCB7XG4gICAgc3VwZXIuX2FkZFJldHJ5KHByb3BzKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSByZWNvdmVyeSBoYW5kbGVyIGZvciB0aGlzIHN0YXRlXG4gICAqXG4gICAqIFdoZW4gYSBwYXJ0aWN1bGFyIGVycm9yIG9jY3VycywgZXhlY3V0aW9uIHdpbGwgY29udGludWUgYXQgdGhlIGVycm9yXG4gICAqIGhhbmRsZXIgaW5zdGVhZCBvZiBmYWlsaW5nIHRoZSBzdGF0ZSBtYWNoaW5lIGV4ZWN1dGlvbi5cbiAgICovXG4gIHB1YmxpYyBhZGRDYXRjaChoYW5kbGVyOiBJQ2hhaW5hYmxlLCBwcm9wczogQ2F0Y2hQcm9wcyA9IHt9KTogTWFwIHtcbiAgICBzdXBlci5fYWRkQ2F0Y2goaGFuZGxlci5zdGFydFN0YXRlLCBwcm9wcyk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogRGVmaW5lIGl0ZW0gcHJvY2Vzc29yIGluIE1hcC5cbiAgICpcbiAgICogQSBNYXAgbXVzdCBlaXRoZXIgaGF2ZSBhIG5vbi1lbXB0eSBpdGVyYXRvciBvciBhIG5vbi1lbXB0eSBpdGVtIHByb2Nlc3NvciAobXV0dWFsbHkgZXhjbHVzaXZlICB3aXRoIGBpdGVyYXRvcmApLlxuICAgKi9cbiAgcHVibGljIGl0ZW1Qcm9jZXNzb3IoXG4gICAgcHJvY2Vzc29yOiBJQ2hhaW5hYmxlLFxuICAgIGNvbmZpZzogUHJvY2Vzc29yQ29uZmlnID0ge30sXG4gICk6IE1hcCB7XG4gICAgY29uc3QgbmFtZSA9IGBNYXAgJHt0aGlzLnN0YXRlSWR9IEl0ZW0gUHJvY2Vzc29yYDtcbiAgICBjb25zdCBzdGF0ZUdyYXBoID0gbmV3IFN0YXRlR3JhcGgocHJvY2Vzc29yLnN0YXJ0U3RhdGUsIG5hbWUpO1xuICAgIHN1cGVyLmFkZEl0ZW1Qcm9jZXNzb3Ioc3RhdGVHcmFwaCwgY29uZmlnKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxufVxuIl19
@@ -96,5 +96,5 @@ class Parallel extends state_1.State {
96
96
  }
97
97
  exports.Parallel = Parallel;
98
98
  _a = JSII_RTTI_SYMBOL_1;
99
- Parallel[_a] = { fqn: "terraconstructs.aws.compute.Parallel", version: "0.2.4" };
99
+ Parallel[_a] = { fqn: "terraconstructs.aws.compute.Parallel", version: "0.2.5" };
100
100
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYWxsZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXdzL2NvbXB1dGUvc3RhdGVzL3BhcmFsbGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBR0EscURBQWlEO0FBQ2pELG1DQUFnRDtBQUNoRCxvQ0FBaUM7QUFDakMsZ0RBQTRDO0FBa0U1Qzs7Ozs7OztHQU9HO0FBQ0gsTUFBYSxRQUFTLFNBQVEsYUFBSztJQUlqQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLFFBQXVCLEVBQUU7UUFDakUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFIVCxjQUFTLEdBQWlCLEVBQUUsQ0FBQztRQUs1QyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksUUFBUSxDQUFDLFFBQW9CLEVBQUU7UUFDcEMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLFFBQVEsQ0FBQyxPQUFtQixFQUFFLFFBQW9CLEVBQUU7UUFDekQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzNDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOztPQUVHO0lBQ0ksSUFBSSxDQUFDLElBQWdCO1FBQzFCLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLE9BQU8sYUFBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLEdBQUcsUUFBc0I7UUFDckMsOEVBQThFO1FBQzlFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUM7UUFDakMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLFdBQVcsQ0FBQyxLQUFpQjtRQUNsQyxLQUFLLE1BQU0sTUFBTSxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksR0FBRyxhQUFhLElBQUksQ0FBQyxPQUFPLFlBQVksSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDN0UsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLHdCQUFVLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzNELENBQUM7UUFDRCxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNoRCxPQUFPLEtBQUssQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksV0FBVztRQUNoQixPQUFPO1lBQ0wsSUFBSSxFQUFFLHNCQUFTLENBQUMsUUFBUTtZQUN4QixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsVUFBVSxFQUFFLElBQUEsc0JBQWMsRUFBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQzNDLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN2QixHQUFHLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMzQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUMxQixHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDeEIsR0FBRyxJQUFJLENBQUMsb0JBQW9CLEVBQUU7U0FDL0IsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNPLGFBQWE7UUFDckIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUMvQixPQUFPLENBQUMsd0NBQXdDLENBQUMsQ0FBQztRQUNwRCxDQUFDO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDOztBQXZGSCw0QkF3RkMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNjAuMC9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3Mtc3RlcGZ1bmN0aW9ucy9saWIvc3RhdGVzL3BhcmFsbGVsLnRzXG5cbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBTdGF0ZVR5cGUgfSBmcm9tIFwiLi9wcml2YXRlL3N0YXRlLXR5cGVcIjtcbmltcG9ydCB7IHJlbmRlckpzb25QYXRoLCBTdGF0ZSB9IGZyb20gXCIuL3N0YXRlXCI7XG5pbXBvcnQgeyBDaGFpbiB9IGZyb20gXCIuLi9jaGFpblwiO1xuaW1wb3J0IHsgU3RhdGVHcmFwaCB9IGZyb20gXCIuLi9zdGF0ZS1ncmFwaFwiO1xuaW1wb3J0IHsgQ2F0Y2hQcm9wcywgSUNoYWluYWJsZSwgSU5leHRhYmxlLCBSZXRyeVByb3BzIH0gZnJvbSBcIi4uL3R5cGVzXCI7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgZGVmaW5pbmcgYSBQYXJhbGxlbCBzdGF0ZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBhcmFsbGVsUHJvcHMge1xuICAvKipcbiAgICogT3B0aW9uYWwgbmFtZSBmb3IgdGhpcyBzdGF0ZVxuICAgKlxuICAgKiBAZGVmYXVsdCAtIFRoZSBjb25zdHJ1Y3QgSUQgd2lsbCBiZSB1c2VkIGFzIHN0YXRlIG5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHN0YXRlTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQW4gb3B0aW9uYWwgZGVzY3JpcHRpb24gZm9yIHRoaXMgc3RhdGVcbiAgICpcbiAgICogQGRlZmF1bHQgTm8gY29tbWVudFxuICAgKi9cbiAgcmVhZG9ubHkgY29tbWVudD86IHN0cmluZztcblxuICAvKipcbiAgICogSlNPTlBhdGggZXhwcmVzc2lvbiB0byBzZWxlY3QgcGFydCBvZiB0aGUgc3RhdGUgdG8gYmUgdGhlIGlucHV0IHRvIHRoaXMgc3RhdGUuXG4gICAqXG4gICAqIE1heSBhbHNvIGJlIHRoZSBzcGVjaWFsIHZhbHVlIEpzb25QYXRoLkRJU0NBUkQsIHdoaWNoIHdpbGwgY2F1c2UgdGhlIGVmZmVjdGl2ZVxuICAgKiBpbnB1dCB0byBiZSB0aGUgZW1wdHkgb2JqZWN0IHt9LlxuICAgKlxuICAgKiBAZGVmYXVsdCAkXG4gICAqL1xuICByZWFkb25seSBpbnB1dFBhdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEpTT05QYXRoIGV4cHJlc3Npb24gdG8gc2VsZWN0IHBhcnQgb2YgdGhlIHN0YXRlIHRvIGJlIHRoZSBvdXRwdXQgdG8gdGhpcyBzdGF0ZS5cbiAgICpcbiAgICogTWF5IGFsc28gYmUgdGhlIHNwZWNpYWwgdmFsdWUgSnNvblBhdGguRElTQ0FSRCwgd2hpY2ggd2lsbCBjYXVzZSB0aGUgZWZmZWN0aXZlXG4gICAqIG91dHB1dCB0byBiZSB0aGUgZW1wdHkgb2JqZWN0IHt9LlxuICAgKlxuICAgKiBAZGVmYXVsdCAkXG4gICAqL1xuICByZWFkb25seSBvdXRwdXRQYXRoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBKU09OUGF0aCBleHByZXNzaW9uIHRvIGluZGljYXRlIHdoZXJlIHRvIGluamVjdCB0aGUgc3RhdGUncyBvdXRwdXRcbiAgICpcbiAgICogTWF5IGFsc28gYmUgdGhlIHNwZWNpYWwgdmFsdWUgSnNvblBhdGguRElTQ0FSRCwgd2hpY2ggd2lsbCBjYXVzZSB0aGUgc3RhdGUnc1xuICAgKiBpbnB1dCB0byBiZWNvbWUgaXRzIG91dHB1dC5cbiAgICpcbiAgICogQGRlZmF1bHQgJFxuICAgKi9cbiAgcmVhZG9ubHkgcmVzdWx0UGF0aD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEpTT04gdGhhdCB3aWxsIHJlcGxhY2UgdGhlIHN0YXRlJ3MgcmF3IHJlc3VsdCBhbmQgYmVjb21lIHRoZSBlZmZlY3RpdmVcbiAgICogcmVzdWx0IGJlZm9yZSBSZXN1bHRQYXRoIGlzIGFwcGxpZWQuXG4gICAqXG4gICAqIFlvdSBjYW4gdXNlIFJlc3VsdFNlbGVjdG9yIHRvIGNyZWF0ZSBhIHBheWxvYWQgd2l0aCB2YWx1ZXMgdGhhdCBhcmUgc3RhdGljXG4gICAqIG9yIHNlbGVjdGVkIGZyb20gdGhlIHN0YXRlJ3MgcmF3IHJlc3VsdC5cbiAgICpcbiAgICogQHNlZVxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vc3RlcC1mdW5jdGlvbnMvbGF0ZXN0L2RnL2lucHV0LW91dHB1dC1pbnB1dHBhdGgtcGFyYW1zLmh0bWwjaW5wdXQtb3V0cHV0LXJlc3VsdHNlbGVjdG9yXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVzdWx0U2VsZWN0b3I/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xufVxuXG4vKipcbiAqIERlZmluZSBhIFBhcmFsbGVsIHN0YXRlIGluIHRoZSBzdGF0ZSBtYWNoaW5lXG4gKlxuICogQSBQYXJhbGxlbCBzdGF0ZSBjYW4gYmUgdXNlZCB0byBydW4gb25lIG9yIG1vcmUgc3RhdGUgbWFjaGluZXMgYXQgdGhlIHNhbWVcbiAqIHRpbWUuXG4gKlxuICogVGhlIFJlc3VsdCBvZiBhIFBhcmFsbGVsIHN0YXRlIGlzIGFuIGFycmF5IG9mIHRoZSByZXN1bHRzIG9mIGl0cyBzdWJzdGF0ZW1hY2hpbmVzLlxuICovXG5leHBvcnQgY2xhc3MgUGFyYWxsZWwgZXh0ZW5kcyBTdGF0ZSBpbXBsZW1lbnRzIElOZXh0YWJsZSB7XG4gIHB1YmxpYyByZWFkb25seSBlbmRTdGF0ZXM6IElOZXh0YWJsZVtdO1xuICBwcml2YXRlIHJlYWRvbmx5IF9icmFuY2hlczogSUNoYWluYWJsZVtdID0gW107XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFBhcmFsbGVsUHJvcHMgPSB7fSkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuXG4gICAgdGhpcy5lbmRTdGF0ZXMgPSBbdGhpc107XG4gIH1cblxuICAvKipcbiAgICogQWRkIHJldHJ5IGNvbmZpZ3VyYXRpb24gZm9yIHRoaXMgc3RhdGVcbiAgICpcbiAgICogVGhpcyBjb250cm9scyBpZiBhbmQgaG93IHRoZSBleGVjdXRpb24gd2lsbCBiZSByZXRyaWVkIGlmIGEgcGFydGljdWxhclxuICAgKiBlcnJvciBvY2N1cnMuXG4gICAqL1xuICBwdWJsaWMgYWRkUmV0cnkocHJvcHM6IFJldHJ5UHJvcHMgPSB7fSk6IFBhcmFsbGVsIHtcbiAgICBzdXBlci5fYWRkUmV0cnkocHJvcHMpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIHJlY292ZXJ5IGhhbmRsZXIgZm9yIHRoaXMgc3RhdGVcbiAgICpcbiAgICogV2hlbiBhIHBhcnRpY3VsYXIgZXJyb3Igb2NjdXJzLCBleGVjdXRpb24gd2lsbCBjb250aW51ZSBhdCB0aGUgZXJyb3JcbiAgICogaGFuZGxlciBpbnN0ZWFkIG9mIGZhaWxpbmcgdGhlIHN0YXRlIG1hY2hpbmUgZXhlY3V0aW9uLlxuICAgKi9cbiAgcHVibGljIGFkZENhdGNoKGhhbmRsZXI6IElDaGFpbmFibGUsIHByb3BzOiBDYXRjaFByb3BzID0ge30pOiBQYXJhbGxlbCB7XG4gICAgc3VwZXIuX2FkZENhdGNoKGhhbmRsZXIuc3RhcnRTdGF0ZSwgcHJvcHMpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnRpbnVlIG5vcm1hbCBleGVjdXRpb24gd2l0aCB0aGUgZ2l2ZW4gc3RhdGVcbiAgICovXG4gIHB1YmxpYyBuZXh0KG5leHQ6IElDaGFpbmFibGUpOiBDaGFpbiB7XG4gICAgc3VwZXIubWFrZU5leHQobmV4dC5zdGFydFN0YXRlKTtcbiAgICByZXR1cm4gQ2hhaW4uc2VxdWVuY2UodGhpcywgbmV4dCk7XG4gIH1cblxuICAvKipcbiAgICogRGVmaW5lIG9uZSBvciBtb3JlIGJyYW5jaGVzIHRvIHJ1biBpbiBwYXJhbGxlbFxuICAgKi9cbiAgcHVibGljIGJyYW5jaCguLi5icmFuY2hlczogSUNoYWluYWJsZVtdKTogUGFyYWxsZWwge1xuICAgIC8vIFN0b3JlIGJyYW5jaGVzIGZvciBsYXRlLWJvdW5kIHN0YXRlZ3JhcGggY3JlYXRpb24gd2hlbiB3ZSBjYWxsIGJpbmRUb0dyYXBoLlxuICAgIHRoaXMuX2JyYW5jaGVzLnB1c2goLi4uYnJhbmNoZXMpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIE92ZXJ3cml0ZXMgU3RhdGUuYmluZFRvR3JhcGguIEFkZHMgYnJhbmNoZXMgdG9cbiAgICogdGhlIFBhcmFsbGVsIHN0YXRlIGhlcmUgc28gdGhhdCBhbnkgbmVjZXNzYXJ5XG4gICAqIHByZWZpeGVzIGFyZSBhcHBlbmRlZCBmaXJzdC5cbiAgICovXG4gIHB1YmxpYyBiaW5kVG9HcmFwaChncmFwaDogU3RhdGVHcmFwaCkge1xuICAgIGZvciAoY29uc3QgYnJhbmNoIG9mIHRoaXMuX2JyYW5jaGVzKSB7XG4gICAgICBjb25zdCBuYW1lID0gYFBhcmFsbGVsICcke3RoaXMuc3RhdGVJZH0nIGJyYW5jaCAke3RoaXMuYnJhbmNoZXMubGVuZ3RoICsgMX1gO1xuICAgICAgc3VwZXIuYWRkQnJhbmNoKG5ldyBTdGF0ZUdyYXBoKGJyYW5jaC5zdGFydFN0YXRlLCBuYW1lKSk7XG4gICAgfVxuICAgIHRoaXMuX2JyYW5jaGVzLnNwbGljZSgwLCB0aGlzLl9icmFuY2hlcy5sZW5ndGgpO1xuICAgIHJldHVybiBzdXBlci5iaW5kVG9HcmFwaChncmFwaCk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBBbWF6b24gU3RhdGVzIExhbmd1YWdlIG9iamVjdCBmb3IgdGhpcyBzdGF0ZVxuICAgKi9cbiAgcHVibGljIHRvU3RhdGVKc29uKCk6IG9iamVjdCB7XG4gICAgcmV0dXJuIHtcbiAgICAgIFR5cGU6IFN0YXRlVHlwZS5QQVJBTExFTCxcbiAgICAgIENvbW1lbnQ6IHRoaXMuY29tbWVudCxcbiAgICAgIFJlc3VsdFBhdGg6IHJlbmRlckpzb25QYXRoKHRoaXMucmVzdWx0UGF0aCksXG4gICAgICAuLi50aGlzLnJlbmRlck5leHRFbmQoKSxcbiAgICAgIC4uLnRoaXMucmVuZGVySW5wdXRPdXRwdXQoKSxcbiAgICAgIC4uLnRoaXMucmVuZGVyUmV0cnlDYXRjaCgpLFxuICAgICAgLi4udGhpcy5yZW5kZXJCcmFuY2hlcygpLFxuICAgICAgLi4udGhpcy5yZW5kZXJSZXN1bHRTZWxlY3RvcigpLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGUgdGhpcyBzdGF0ZVxuICAgKi9cbiAgcHJvdGVjdGVkIHZhbGlkYXRlU3RhdGUoKTogc3RyaW5nW10ge1xuICAgIGlmICh0aGlzLmJyYW5jaGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIFtcIlBhcmFsbGVsIG11c3QgaGF2ZSBhdCBsZWFzdCBvbmUgYnJhbmNoXCJdO1xuICAgIH1cbiAgICByZXR1cm4gW107XG4gIH1cbn1cbiJdfQ==
@@ -51,7 +51,7 @@ class Result {
51
51
  }
52
52
  exports.Result = Result;
53
53
  _a = JSII_RTTI_SYMBOL_1;
54
- Result[_a] = { fqn: "terraconstructs.aws.compute.Result", version: "0.2.4" };
54
+ Result[_a] = { fqn: "terraconstructs.aws.compute.Result", version: "0.2.5" };
55
55
  /**
56
56
  * Define a Pass in the state machine
57
57
  *
@@ -95,5 +95,5 @@ class Pass extends state_1.State {
95
95
  }
96
96
  exports.Pass = Pass;
97
97
  _b = JSII_RTTI_SYMBOL_1;
98
- Pass[_b] = { fqn: "terraconstructs.aws.compute.Pass", version: "0.2.4" };
98
+ Pass[_b] = { fqn: "terraconstructs.aws.compute.Pass", version: "0.2.5" };
99
99
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hd3MvY29tcHV0ZS9zdGF0ZXMvcGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUdBLHFEQUFpRDtBQUNqRCxtQ0FBZ0Q7QUFDaEQsb0NBQWlDO0FBQ2pDLHNDQUF1QztBQUd2Qzs7R0FFRztBQUNILE1BQWEsTUFBTTtJQUNqQjs7T0FFRztJQUNJLE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBYTtRQUNwQyxPQUFPLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBYTtRQUNwQyxPQUFPLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBYztRQUN0QyxPQUFPLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBNkI7UUFDcEQsT0FBTyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVk7UUFDbEMsT0FBTyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsWUFBc0MsS0FBVTtRQUFWLFVBQUssR0FBTCxLQUFLLENBQUs7SUFBRyxDQUFDOztBQXhDdEQsd0JBeUNDOzs7QUFzRUQ7Ozs7R0FJRztBQUNILE1BQWEsSUFBSyxTQUFRLGFBQUs7SUFLN0IsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxRQUFtQixFQUFFO1FBQzdELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRXhCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUMzQixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksSUFBSSxDQUFDLElBQWdCO1FBQzFCLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLE9BQU8sYUFBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksV0FBVztRQUNoQixPQUFPO1lBQ0wsSUFBSSxFQUFFLHNCQUFTLENBQUMsSUFBSTtZQUNwQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsS0FBSztZQUMxQixVQUFVLEVBQUUsSUFBQSxzQkFBYyxFQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7WUFDM0MsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDM0IsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDMUIsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFO1NBQ3hCLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSyxnQkFBZ0I7UUFDdEIsT0FBTyxtQkFBVSxDQUFDLFlBQVksQ0FBQztZQUM3QixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7U0FDNUIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUExQ0gsb0JBMkNDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvdjIuMTYwLjAvcGFja2FnZXMvYXdzLWNkay1saWIvYXdzLXN0ZXBmdW5jdGlvbnMvbGliL3N0YXRlcy9wYXNzLnRzXG5cbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBTdGF0ZVR5cGUgfSBmcm9tIFwiLi9wcml2YXRlL3N0YXRlLXR5cGVcIjtcbmltcG9ydCB7IHJlbmRlckpzb25QYXRoLCBTdGF0ZSB9IGZyb20gXCIuL3N0YXRlXCI7XG5pbXBvcnQgeyBDaGFpbiB9IGZyb20gXCIuLi9jaGFpblwiO1xuaW1wb3J0IHsgRmllbGRVdGlscyB9IGZyb20gXCIuLi9maWVsZHNcIjtcbmltcG9ydCB7IElDaGFpbmFibGUsIElOZXh0YWJsZSB9IGZyb20gXCIuLi90eXBlc1wiO1xuXG4vKipcbiAqIFRoZSByZXN1bHQgb2YgYSBQYXNzIG9wZXJhdGlvblxuICovXG5leHBvcnQgY2xhc3MgUmVzdWx0IHtcbiAgLyoqXG4gICAqIFRoZSByZXN1bHQgb2YgdGhlIG9wZXJhdGlvbiBpcyBhIHN0cmluZ1xuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tU3RyaW5nKHZhbHVlOiBzdHJpbmcpOiBSZXN1bHQge1xuICAgIHJldHVybiBuZXcgUmVzdWx0KHZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgcmVzdWx0IG9mIHRoZSBvcGVyYXRpb24gaXMgYSBudW1iZXJcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbU51bWJlcih2YWx1ZTogbnVtYmVyKTogUmVzdWx0IHtcbiAgICByZXR1cm4gbmV3IFJlc3VsdCh2YWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHJlc3VsdCBvZiB0aGUgb3BlcmF0aW9uIGlzIGEgYm9vbGVhblxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tQm9vbGVhbih2YWx1ZTogYm9vbGVhbik6IFJlc3VsdCB7XG4gICAgcmV0dXJuIG5ldyBSZXN1bHQodmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSByZXN1bHQgb2YgdGhlIG9wZXJhdGlvbiBpcyBhbiBvYmplY3RcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbU9iamVjdCh2YWx1ZTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSk6IFJlc3VsdCB7XG4gICAgcmV0dXJuIG5ldyBSZXN1bHQodmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSByZXN1bHQgb2YgdGhlIG9wZXJhdGlvbiBpcyBhbiBhcnJheVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tQXJyYXkodmFsdWU6IGFueVtdKTogUmVzdWx0IHtcbiAgICByZXR1cm4gbmV3IFJlc3VsdCh2YWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIHJlc3VsdCBvZiB0aGUgUGFzcyBvcGVyYXRpb25cbiAgICovXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgdmFsdWU6IGFueSkge31cbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBkZWZpbmluZyBhIFBhc3Mgc3RhdGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQYXNzUHJvcHMge1xuICAvKipcbiAgICogT3B0aW9uYWwgbmFtZSBmb3IgdGhpcyBzdGF0ZVxuICAgKlxuICAgKiBAZGVmYXVsdCAtIFRoZSBjb25zdHJ1Y3QgSUQgd2lsbCBiZSB1c2VkIGFzIHN0YXRlIG5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHN0YXRlTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQW4gb3B0aW9uYWwgZGVzY3JpcHRpb24gZm9yIHRoaXMgc3RhdGVcbiAgICpcbiAgICogQGRlZmF1bHQgTm8gY29tbWVudFxuICAgKi9cbiAgcmVhZG9ubHkgY29tbWVudD86IHN0cmluZztcblxuICAvKipcbiAgICogSlNPTlBhdGggZXhwcmVzc2lvbiB0byBzZWxlY3QgcGFydCBvZiB0aGUgc3RhdGUgdG8gYmUgdGhlIGlucHV0IHRvIHRoaXMgc3RhdGUuXG4gICAqXG4gICAqIE1heSBhbHNvIGJlIHRoZSBzcGVjaWFsIHZhbHVlIEpzb25QYXRoLkRJU0NBUkQsIHdoaWNoIHdpbGwgY2F1c2UgdGhlIGVmZmVjdGl2ZVxuICAgKiBpbnB1dCB0byBiZSB0aGUgZW1wdHkgb2JqZWN0IHt9LlxuICAgKlxuICAgKiBAZGVmYXVsdCAkXG4gICAqL1xuICByZWFkb25seSBpbnB1dFBhdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEpTT05QYXRoIGV4cHJlc3Npb24gdG8gc2VsZWN0IHBhcnQgb2YgdGhlIHN0YXRlIHRvIGJlIHRoZSBvdXRwdXQgdG8gdGhpcyBzdGF0ZS5cbiAgICpcbiAgICogTWF5IGFsc28gYmUgdGhlIHNwZWNpYWwgdmFsdWUgSnNvblBhdGguRElTQ0FSRCwgd2hpY2ggd2lsbCBjYXVzZSB0aGUgZWZmZWN0aXZlXG4gICAqIG91dHB1dCB0byBiZSB0aGUgZW1wdHkgb2JqZWN0IHt9LlxuICAgKlxuICAgKiBAZGVmYXVsdCAkXG4gICAqL1xuICByZWFkb25seSBvdXRwdXRQYXRoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBKU09OUGF0aCBleHByZXNzaW9uIHRvIGluZGljYXRlIHdoZXJlIHRvIGluamVjdCB0aGUgc3RhdGUncyBvdXRwdXRcbiAgICpcbiAgICogTWF5IGFsc28gYmUgdGhlIHNwZWNpYWwgdmFsdWUgSnNvblBhdGguRElTQ0FSRCwgd2hpY2ggd2lsbCBjYXVzZSB0aGUgc3RhdGUnc1xuICAgKiBpbnB1dCB0byBiZWNvbWUgaXRzIG91dHB1dC5cbiAgICpcbiAgICogQGRlZmF1bHQgJFxuICAgKi9cbiAgcmVhZG9ubHkgcmVzdWx0UGF0aD86IHN0cmluZztcblxuICAvKipcbiAgICogSWYgZ2l2ZW4sIHRyZWF0IGFzIHRoZSByZXN1bHQgb2YgdGhpcyBvcGVyYXRpb25cbiAgICpcbiAgICogQ2FuIGJlIHVzZWQgdG8gaW5qZWN0IG9yIHJlcGxhY2UgdGhlIGN1cnJlbnQgZXhlY3V0aW9uIHN0YXRlLlxuICAgKlxuICAgKiBAZGVmYXVsdCBObyBpbmplY3RlZCByZXN1bHRcbiAgICovXG4gIHJlYWRvbmx5IHJlc3VsdD86IFJlc3VsdDtcblxuICAvKipcbiAgICogUGFyYW1ldGVycyBwYXNzIGEgY29sbGVjdGlvbiBvZiBrZXktdmFsdWUgcGFpcnMsIGVpdGhlciBzdGF0aWMgdmFsdWVzIG9yIEpTT05QYXRoIGV4cHJlc3Npb25zIHRoYXQgc2VsZWN0IGZyb20gdGhlIGlucHV0LlxuICAgKlxuICAgKiBAc2VlXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9zdGVwLWZ1bmN0aW9ucy9sYXRlc3QvZGcvaW5wdXQtb3V0cHV0LWlucHV0cGF0aC1wYXJhbXMuaHRtbCNpbnB1dC1vdXRwdXQtcGFyYW1ldGVyc1xuICAgKlxuICAgKiBAZGVmYXVsdCBObyBwYXJhbWV0ZXJzXG4gICAqL1xuICByZWFkb25seSBwYXJhbWV0ZXJzPzogeyBbbmFtZTogc3RyaW5nXTogYW55IH07XG59XG5cbi8qKlxuICogRGVmaW5lIGEgUGFzcyBpbiB0aGUgc3RhdGUgbWFjaGluZVxuICpcbiAqIEEgUGFzcyBzdGF0ZSBjYW4gYmUgdXNlZCB0byB0cmFuc2Zvcm0gdGhlIGN1cnJlbnQgZXhlY3V0aW9uJ3Mgc3RhdGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBQYXNzIGV4dGVuZHMgU3RhdGUgaW1wbGVtZW50cyBJTmV4dGFibGUge1xuICBwdWJsaWMgcmVhZG9ubHkgZW5kU3RhdGVzOiBJTmV4dGFibGVbXTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHJlc3VsdD86IFJlc3VsdDtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogUGFzc1Byb3BzID0ge30pIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHByb3BzKTtcblxuICAgIHRoaXMucmVzdWx0ID0gcHJvcHMucmVzdWx0O1xuICAgIHRoaXMuZW5kU3RhdGVzID0gW3RoaXNdO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnRpbnVlIG5vcm1hbCBleGVjdXRpb24gd2l0aCB0aGUgZ2l2ZW4gc3RhdGVcbiAgICovXG4gIHB1YmxpYyBuZXh0KG5leHQ6IElDaGFpbmFibGUpOiBDaGFpbiB7XG4gICAgc3VwZXIubWFrZU5leHQobmV4dC5zdGFydFN0YXRlKTtcbiAgICByZXR1cm4gQ2hhaW4uc2VxdWVuY2UodGhpcywgbmV4dCk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBBbWF6b24gU3RhdGVzIExhbmd1YWdlIG9iamVjdCBmb3IgdGhpcyBzdGF0ZVxuICAgKi9cbiAgcHVibGljIHRvU3RhdGVKc29uKCk6IG9iamVjdCB7XG4gICAgcmV0dXJuIHtcbiAgICAgIFR5cGU6IFN0YXRlVHlwZS5QQVNTLFxuICAgICAgQ29tbWVudDogdGhpcy5jb21tZW50LFxuICAgICAgUmVzdWx0OiB0aGlzLnJlc3VsdD8udmFsdWUsXG4gICAgICBSZXN1bHRQYXRoOiByZW5kZXJKc29uUGF0aCh0aGlzLnJlc3VsdFBhdGgpLFxuICAgICAgLi4udGhpcy5yZW5kZXJJbnB1dE91dHB1dCgpLFxuICAgICAgLi4udGhpcy5yZW5kZXJQYXJhbWV0ZXJzKCksXG4gICAgICAuLi50aGlzLnJlbmRlck5leHRFbmQoKSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbmRlciBQYXJhbWV0ZXJzIGluIEFTTCBKU09OIGZvcm1hdFxuICAgKi9cbiAgcHJpdmF0ZSByZW5kZXJQYXJhbWV0ZXJzKCk6IGFueSB7XG4gICAgcmV0dXJuIEZpZWxkVXRpbHMucmVuZGVyT2JqZWN0KHtcbiAgICAgIFBhcmFtZXRlcnM6IHRoaXMucGFyYW1ldGVycyxcbiAgICB9KTtcbiAgfVxufVxuIl19