terraconstructs 0.2.4 → 0.2.6

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 +3099 -2917
  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 +19 -4
  9. package/lib/aws/aws-stack.js +43 -18
  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 +24 -22
  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
@@ -4,8 +4,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.Rule = void 0;
5
5
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
6
  // https://github.com/aws/aws-cdk/blob/v2.156.0/packages/aws-cdk-lib/aws-events/lib/rule.ts
7
- const provider_aws_1 = require("@cdktf/provider-aws");
8
- const cdktf_1 = require("cdktf");
7
+ const provider_aws_1 = require("@cdktn/provider-aws");
8
+ const cdktn_1 = require("cdktn");
9
9
  const arn_1 = require("../arn");
10
10
  const aws_construct_1 = require("../aws-construct");
11
11
  const aws_stack_1 = require("../aws-stack");
@@ -81,7 +81,7 @@ class Rule extends aws_construct_1.AwsConstructBase {
81
81
  ? "ENABLED"
82
82
  : "DISABLED", //TODO: support ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS?
83
83
  scheduleExpression: this.scheduleExpression,
84
- eventPattern: cdktf_1.Lazy.stringValue({
84
+ eventPattern: cdktn_1.Lazy.stringValue({
85
85
  produce: () => this.stack.toJsonString(this._renderEventPattern()),
86
86
  }),
87
87
  // terraform-provider-aws separates targets to different resources.
@@ -145,7 +145,7 @@ class Rule extends aws_construct_1.AwsConstructBase {
145
145
  return (0, util_1.renderEventPattern)(this.eventPattern);
146
146
  }
147
147
  validateRule(ruleName) {
148
- if (ruleName !== undefined && !cdktf_1.Token.isUnresolved(ruleName)) {
148
+ if (ruleName !== undefined && !cdktn_1.Token.isUnresolved(ruleName)) {
149
149
  if (ruleName.length < 1 || ruleName.length > 64) {
150
150
  throw new Error(`Event rule name must be between 1 and 64 characters. Received: ${ruleName}`);
151
151
  }
@@ -226,5 +226,5 @@ class Rule extends aws_construct_1.AwsConstructBase {
226
226
  }
227
227
  exports.Rule = Rule;
228
228
  _a = JSII_RTTI_SYMBOL_1;
229
- Rule[_a] = { fqn: "terraconstructs.aws.notify.Rule", version: "0.2.4" };
230
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hd3Mvbm90aWZ5L3J1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwyRkFBMkY7QUFFM0Ysc0RBSTZCO0FBQzdCLGlDQUFvQztBQUVwQyxnQ0FBbUM7QUFDbkMsb0RBSTBCO0FBQzFCLDRDQUF3QztBQVF4QyxpQ0FBK0Q7QUFvRy9ELE1BQWEsSUFBSyxTQUFRLGdDQUFnQjtJQUN4Qzs7Ozs7O09BTUc7SUFDSSxNQUFNLENBQUMsZ0JBQWdCLENBQzVCLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVixZQUFvQjtRQUVwQixNQUFNLEtBQUssR0FBRyxvQkFBUSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQ25ELFlBQVksRUFDWixlQUFTLENBQUMsbUJBQW1CLENBQzlCLENBQUM7UUFFRixNQUFNLE1BQU8sU0FBUSxnQ0FBZ0I7WUFBckM7O2dCQUNTLFlBQU8sR0FBRyxZQUFZLENBQUM7Z0JBQ3ZCLGFBQVEsR0FBRyxLQUFLLENBQUMsWUFBWSxJQUFJLEVBQUUsQ0FBQztnQkFDcEMsZ0JBQVcsR0FBRztvQkFDbkIsSUFBSSxFQUFFLElBQUksQ0FBQyxRQUFRO29CQUNuQixHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU87aUJBQ2xCLENBQUM7Z0JBQ0ssWUFBTyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7WUFDcEMsQ0FBQztTQUFBO1FBQ0QsT0FBTyxJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQzNCLGtCQUFrQixFQUFFLFlBQVk7U0FDakMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUdELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO0lBQzNCLENBQUM7SUFDRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztJQUM1QixDQUFDO0lB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LElBQUksVUFBVSxDQUFDLEtBQUs7WUFDckMsU0FBUyxFQUFFLFVBQVUsSUFBSSxVQUFVLENBQUMsU0FBUztZQUM3QyxnQkFBZ0IsRUFDZCxVQUFVLEVBQUUsYUFBYSxLQUFLLFNBQVM7Z0JBQ3JDLENBQUMsQ0FBQztvQkFDRSxhQUFhLEVBQUUsVUFBVSxDQUFDLGFBQWE7b0JBQ3ZDLFVBQVUsRUFBRSxVQUFVLENBQUMsYUFBYTtpQkFDckM7Z0JBQ0gsQ0FBQyxDQUFDLFNBQVM7U0FDaEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxXQUFXO1FBQ2hCOztXQUVHO1FBQ0gsS0FBSyxNQUFNLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbEMsOENBQThDO1lBQzlDLG1HQUFtRztZQUNuRyw0R0FBNEc7WUFDNUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsUUFBUyxDQUFDO2dCQUFFLFNBQVMsQ0FBQyw4QkFBOEI7WUFDdEYsSUFBSSxvQ0FBcUIsQ0FBQyxxQkFBcUIsQ0FDN0MsSUFBSSxFQUNKLE1BQU0sQ0FBQyxRQUFTLEVBQ2hCLE1BQU0sQ0FDUCxDQUFDO1FBQ0osQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQzs7QUFsUUgsb0JBbVFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvdjIuMTU2LjAvcGFja2FnZXMvYXdzLWNkay1saWIvYXdzLWV2ZW50cy9saWIvcnVsZS50c1xuXG5pbXBvcnQge1xuICBjbG91ZHdhdGNoRXZlbnRSdWxlLFxuICBjbG91ZHdhdGNoRXZlbnRUYXJnZXQsXG4gIC8vc2NoZWR1bGVyU2NoZWR1bGVHcm91cCAvL1RPRE86IHN1cHBvcnQgc2NoZWR1bGVyIGdyb3Vwcz9cbn0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1hd3NcIjtcbmltcG9ydCB7IExhenksIFRva2VuIH0gZnJvbSBcImNka3RmXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgQXJuRm9ybWF0IH0gZnJvbSBcIi4uL2FyblwiO1xuaW1wb3J0IHtcbiAgQXdzQ29uc3RydWN0QmFzZSxcbiAgSUF3c0NvbnN0cnVjdCxcbiAgQXdzQ29uc3RydWN0UHJvcHMsXG59IGZyb20gXCIuLi9hd3MtY29uc3RydWN0XCI7XG5pbXBvcnQgeyBBd3NTdGFjayB9IGZyb20gXCIuLi9hd3Mtc3RhY2tcIjtcbmltcG9ydCB7XG4gIFNjaGVkdWxlLFxuICBFdmVudFBhdHRlcm4sXG4gIElSdWxlVGFyZ2V0LFxuICBJRXZlbnRCdXMsXG4gIEV2ZW50Q29tbW9uT3B0aW9ucyxcbn0gZnJvbSBcIi4vXCI7XG5pbXBvcnQgeyBtZXJnZUV2ZW50UGF0dGVybiwgcmVuZGVyRXZlbnRQYXR0ZXJuIH0gZnJvbSBcIi4vdXRpbFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJ1bGVQcm9wcyBleHRlbmRzIEF3c0NvbnN0cnVjdFByb3BzLCBFdmVudENvbW1vbk9wdGlvbnMge1xuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIHJ1bGUgaXMgZW5hYmxlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFJ1bGUgTmFtZSBwcmVmaXggdG8gYXBwZW5kIHRvIEdyaWQgVVVJRFxuICAgKlxuICAgKiBSdWxlIG5hbWVzIG11c3QgYmUgbWFkZSB1cCBvZiBvbmx5IHVwcGVyY2FzZSBhbmQgbG93ZXJjYXNlIEFTQ0lJIGxldHRlcnMsXG4gICAqIG51bWJlcnMsIHVuZGVyc2NvcmVzLCBhbmQgaHlwaGVucywgYW5kIER1ZSB0byB0aGUgbGVuZ3RoIG9mIHRoZSB0ZiBnZW5lcmF0ZWRcbiAgICogc3VmZml4LCBtdXN0IGJlIDY0IGNoYXJhY3RlcnMgb3IgbGVzcyBsb25nLlxuICAgKlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEdyaWRVVUlEICsgU3RhY2sgVW5pcXVlIE5hbWVcbiAgICovXG4gIHJlYWRvbmx5IG5hbWVQcmVmaXg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzY2hlZHVsZSBvciByYXRlIChmcmVxdWVuY3kpIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIEV2ZW50QnJpZGdlXG4gICAqIHJ1bnMgdGhlIHJ1bGUuXG4gICAqXG4gICAqIFlvdSBtdXN0IHNwZWNpZnkgdGhpcyBwcm9wZXJ0eSwgdGhlIGBldmVudFBhdHRlcm5gIHByb3BlcnR5LCBvciBib3RoLlxuICAgKlxuICAgKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIFNjaGVkdWxlIEV4cHJlc3Npb24gU3ludGF4IGZvclxuICAgKiBSdWxlcyBpbiB0aGUgQW1hem9uIEV2ZW50QnJpZGdlIFVzZXIgR3VpZGUuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2V2ZW50YnJpZGdlL2xhdGVzdC91c2VyZ3VpZGUvc2NoZWR1bGVkLWV2ZW50cy5odG1sXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm9uZS5cbiAgICovXG4gIHJlYWRvbmx5IHNjaGVkdWxlPzogU2NoZWR1bGU7XG5cbiAgLyoqXG4gICAqIFRhcmdldHMgdG8gaW52b2tlIHdoZW4gdGhpcyBydWxlIG1hdGNoZXMgYW4gZXZlbnQuXG4gICAqXG4gICAqIElucHV0IHdpbGwgYmUgdGhlIGZ1bGwgbWF0Y2hlZCBldmVudC4gSWYgeW91IHdpc2ggdG8gc3BlY2lmeSBjdXN0b21cbiAgICogdGFyZ2V0IGlucHV0LCB1c2UgYGFkZFRhcmdldCh0YXJnZXRbLCBpbnB1dE9wdGlvbnNdKWAuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gdGFyZ2V0cy5cbiAgICovXG4gIHJlYWRvbmx5IHRhcmdldHM/OiBJUnVsZVRhcmdldFtdO1xuXG4gIC8qKlxuICAgKiBUaGUgZXZlbnQgYnVzIHRvIGFzc29jaWF0ZSB3aXRoIHRoaXMgcnVsZS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBUaGUgZGVmYXVsdCBldmVudCBidXMuXG4gICAqL1xuICByZWFkb25seSBldmVudEJ1cz86IElFdmVudEJ1cztcblxuICAvLyAvKipcbiAgLy8gICogQWRkaXRpb25hbCByZXN0cmljdGlvbnMgZm9yIHRoZSBldmVudCB0byByb3V0ZSB0byB0aGUgc3BlY2lmaWVkIHRhcmdldFxuICAvLyAgKlxuICAvLyAgKiBUaGUgbWV0aG9kIHRoYXQgZ2VuZXJhdGVzIHRoZSBydWxlIHByb2JhYmx5IGltcG9zZXMgc29tZSB0eXBlIG9mIGV2ZW50XG4gIC8vICAqIGZpbHRlcmluZy4gVGhlIGZpbHRlcmluZyBpbXBsaWVkIGJ5IHdoYXQgeW91IHBhc3MgaGVyZSBpcyBhZGRlZFxuICAvLyAgKiBvbiB0b3Agb2YgdGhhdCBmaWx0ZXJpbmcuXG4gIC8vICAqXG4gIC8vICAqIEBkZWZhdWx0IC0gTm8gYWRkaXRpb25hbCBmaWx0ZXJpbmcgYmFzZWQgb24gYW4gZXZlbnQgcGF0dGVybi5cbiAgLy8gICpcbiAgLy8gICogQHNlZVxuICAvLyAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZXZlbnRicmlkZ2UvbGF0ZXN0L3VzZXJndWlkZS9ldmVudGJyaWRnZS1hbmQtZXZlbnQtcGF0dGVybnMuaHRtbFxuICAvLyAgKi9cbiAgLy8gcmVhZG9ubHkgZXZlbnRQYXR0ZXJuPzogRXZlbnRQYXR0ZXJuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJ1bGVPdXRwdXRzIHtcbiAgLyoqXG4gICAqIFJ1bGUgbmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSdWxlIGFyblxuICAgKi9cbiAgcmVhZG9ubHkgYXJuOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVJ1bGUgZXh0ZW5kcyBJQXdzQ29uc3RydWN0IHtcbiAgLyoqIFN0cm9uZ2x5IHR5cGVkIG91dHB1dHMgKi9cbiAgcmVhZG9ubHkgcnVsZU91dHB1dHM6IFJ1bGVPdXRwdXRzO1xuICAvKipcbiAgICogVGhlIHZhbHVlIG9mIHRoZSBldmVudCBydWxlIEFtYXpvbiBSZXNvdXJjZSBOYW1lIChBUk4pLCBzdWNoIGFzXG4gICAqIGFybjphd3M6ZXZlbnRzOnVzLWVhc3QtMjoxMjM0NTY3ODkwMTI6cnVsZS9leGFtcGxlLlxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBydWxlQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIGV2ZW50IHJ1bGVcbiAgICpcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgcnVsZU5hbWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIFJ1bGUgZXh0ZW5kcyBBd3NDb25zdHJ1Y3RCYXNlIGltcGxlbWVudHMgSVJ1bGUge1xuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIEV2ZW50QnJpZGdlIFJ1bGUgcHJvdmlkZWQgYW4gQVJOXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSBUaGUgcGFyZW50IGNyZWF0aW5nIGNvbnN0cnVjdCAodXN1YWxseSBgdGhpc2ApLlxuICAgKiBAcGFyYW0gaWQgVGhlIGNvbnN0cnVjdCdzIG5hbWUuXG4gICAqIEBwYXJhbSBldmVudFJ1bGVBcm4gRXZlbnQgUnVsZSBBUk4gKGkuZS4gYXJuOmF3czpldmVudHM6PHJlZ2lvbj46PGFjY291bnQtaWQ+OnJ1bGUvTXlTY2hlZHVsZWRSdWxlKS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbUV2ZW50UnVsZUFybihcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgZXZlbnRSdWxlQXJuOiBzdHJpbmcsXG4gICk6IElSdWxlIHtcbiAgICBjb25zdCBwYXJ0cyA9IEF3c1N0YWNrLm9mQXdzQ29uc3RydWN0KHNjb3BlKS5zcGxpdEFybihcbiAgICAgIGV2ZW50UnVsZUFybixcbiAgICAgIEFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FLFxuICAgICk7XG5cbiAgICBjbGFzcyBJbXBvcnQgZXh0ZW5kcyBBd3NDb25zdHJ1Y3RCYXNlIGltcGxlbWVudHMgSVJ1bGUge1xuICAgICAgcHVibGljIHJ1bGVBcm4gPSBldmVudFJ1bGVBcm47XG4gICAgICBwdWJsaWMgcnVsZU5hbWUgPSBwYXJ0cy5yZXNvdXJjZU5hbWUgfHwgXCJcIjtcbiAgICAgIHB1YmxpYyBydWxlT3V0cHV0cyA9IHtcbiAgICAgICAgbmFtZTogdGhpcy5ydWxlTmFtZSxcbiAgICAgICAgYXJuOiB0aGlzLnJ1bGVBcm4sXG4gICAgICB9O1xuICAgICAgcHVibGljIG91dHB1dHMgPSB0aGlzLnJ1bGVPdXRwdXRzO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IEltcG9ydChzY29wZSwgaWQsIHtcbiAgICAgIGVudmlyb25tZW50RnJvbUFybjogZXZlbnRSdWxlQXJuLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlYWRvbmx5IHJlc291cmNlOiBjbG91ZHdhdGNoRXZlbnRSdWxlLkNsb3Vkd2F0Y2hFdmVudFJ1bGU7XG4gIHB1YmxpYyBnZXQgcnVsZUFybigpIHtcbiAgICByZXR1cm4gdGhpcy5yZXNvdXJjZS5hcm47XG4gIH1cbiAgcHVibGljIGdldCBydWxlTmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5yZXNvdXJjZS5uYW1lO1xuICB9XG4gIHB1YmxpYyBnZXQgcnVsZU91dHB1dHMoKTogUnVsZU91dHB1dHMge1xuICAgIHJldHVybiB7XG4gICAgICBuYW1lOiB0aGlzLnJ1bGVOYW1lLFxuICAgICAgYXJuOiB0aGlzLnJ1bGVBcm4sXG4gICAgfTtcbiAgfVxuICBwdWJsaWMgZ2V0IG91dHB1dHMoKTogUmVjb3JkPHN0cmluZywgYW55PiB7XG4gICAgcmV0dXJuIHRoaXMucnVsZU91dHB1dHM7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IHRhcmdldHMgPVxuICAgIG5ldyBBcnJheTxjbG91ZHdhdGNoRXZlbnRUYXJnZXQuQ2xvdWR3YXRjaEV2ZW50VGFyZ2V0Q29uZmlnPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IGV2ZW50UGF0dGVybjogRXZlbnRQYXR0ZXJuID0ge307XG5cbiAgcHJpdmF0ZSByZWFkb25seSBzY2hlZHVsZUV4cHJlc3Npb24/OiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgZXZlbnRCdXNOYW1lPzogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIG5hbWU6IHN0cmluZywgcHJvcHM6IFJ1bGVQcm9wcyA9IHt9KSB7XG4gICAgc3VwZXIoc2NvcGUsIG5hbWUsIHByb3BzKTtcblxuICAgIGlmIChwcm9wcy5ldmVudEJ1cyAmJiBwcm9wcy5zY2hlZHVsZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIkNhbm5vdCBhc3NvY2lhdGUgcnVsZSB3aXRoICdldmVudEJ1cycgd2hlbiB1c2luZyAnc2NoZWR1bGUnXCIsXG4gICAgICApO1xuICAgIH1cblxuICAgIGxldCBuYW1lUHJlZml4OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgaWYgKCFwcm9wcy5ydWxlTmFtZSkge1xuICAgICAgbmFtZVByZWZpeCA9IHRoaXMuc3RhY2sudW5pcXVlUmVzb3VyY2VOYW1lUHJlZml4KHRoaXMsIHtcbiAgICAgICAgcHJlZml4OiBwcm9wcy5uYW1lUHJlZml4ID8/IHRoaXMuZ3JpZFVVSUQgKyBcIi1cIixcbiAgICAgICAgYWxsb3dlZFNwZWNpYWxDaGFyYWN0ZXJzOiBcIi4tX1wiLFxuICAgICAgICBtYXhMZW5ndGg6IDY0LFxuICAgICAgfSk7XG4gICAgfVxuICAgIHRoaXMuZGVzY3JpcHRpb24gPSBwcm9wcy5kZXNjcmlwdGlvbjtcbiAgICB0aGlzLnNjaGVkdWxlRXhwcmVzc2lvbiA9IHByb3BzLnNjaGVkdWxlPy5leHByZXNzaW9uU3RyaW5nO1xuICAgIHRoaXMuZXZlbnRCdXNOYW1lID0gcHJvcHMuZXZlbnRCdXM/LmV2ZW50QnVzTmFtZTtcblxuICAgIC8vIGFkZCBhIHdhcm5pbmcgb24gc3ludGggd2hlbiBtaW51dGUgaXMgbm90IGRlZmluZWQgaW4gYSBjcm9uIHNjaGVkdWxlXG4gICAgcHJvcHMuc2NoZWR1bGU/Ll9iaW5kKHRoaXMpO1xuXG4gICAgdGhpcy5yZXNvdXJjZSA9IG5ldyBjbG91ZHdhdGNoRXZlbnRSdWxlLkNsb3Vkd2F0Y2hFdmVudFJ1bGUoXG4gICAgICB0aGlzLFxuICAgICAgXCJSZXNvdXJjZVwiLFxuICAgICAge1xuICAgICAgICBuYW1lOiBwcm9wcy5ydWxlTmFtZSxcbiAgICAgICAgbmFtZVByZWZpeCxcbiAgICAgICAgZGVzY3JpcHRpb246IHRoaXMuZGVzY3JpcHRpb24sXG4gICAgICAgIHN0YXRlOlxuICAgICAgICAgIHByb3BzLmVuYWJsZWQgPT0gbnVsbFxuICAgICAgICAgICAgPyBcIkVOQUJMRURcIlxuICAgICAgICAgICAgOiBwcm9wcy5lbmFibGVkXG4gICAgICAgICAgICAgID8gXCJFTkFCTEVEXCJcbiAgICAgICAgICAgICAgOiBcIkRJU0FCTEVEXCIsIC8vVE9ETzogc3VwcG9ydCBFTkFCTEVEX1dJVEhfQUxMX0NMT1VEVFJBSUxfTUFOQUdFTUVOVF9FVkVOVFM/XG4gICAgICAgIHNjaGVkdWxlRXhwcmVzc2lvbjogdGhpcy5zY2hlZHVsZUV4cHJlc3Npb24sXG4gICAgICAgIGV2ZW50UGF0dGVybjogTGF6eS5zdHJpbmdWYWx1ZSh7XG4gICAgICAgICAgcHJvZHVjZTogKCkgPT4gdGhpcy5zdGFjay50b0pzb25TdHJpbmcodGhpcy5fcmVuZGVyRXZlbnRQYXR0ZXJuKCkpLFxuICAgICAgICB9KSxcbiAgICAgICAgLy8gdGVycmFmb3JtLXByb3ZpZGVyLWF3cyBzZXBhcmF0ZXMgdGFyZ2V0cyB0byBkaWZmZXJlbnQgcmVzb3VyY2VzLlxuICAgICAgICAvLyB0YXJnZXRzOiBMYXp5LmFueVZhbHVlKHsgcHJvZHVjZTogKCkgPT4gdGhpcy5yZW5kZXJUYXJnZXRzKCkgfSksXG4gICAgICAgIGV2ZW50QnVzTmFtZTogdGhpcy5ldmVudEJ1c05hbWUsXG4gICAgICAgIGRlcGVuZHNPbjogcHJvcHMuZGVwZW5kc09uLFxuICAgICAgfSxcbiAgICApO1xuXG4gICAgdGhpcy5hZGRFdmVudFBhdHRlcm4ocHJvcHMuZXZlbnRQYXR0ZXJuKTtcblxuICAgIGZvciAoY29uc3QgdGFyZ2V0IG9mIHByb3BzLnRhcmdldHMgfHwgW10pIHtcbiAgICAgIHRoaXMuYWRkVGFyZ2V0KHRhcmdldCk7XG4gICAgfVxuXG4gICAgdGhpcy5ub2RlLmFkZFZhbGlkYXRpb24oe1xuICAgICAgdmFsaWRhdGU6ICgpID0+IHRoaXMudmFsaWRhdGVSdWxlKHByb3BzLnJ1bGVOYW1lKSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGFuIGV2ZW50IHBhdHRlcm4gZmlsdGVyIHRvIHRoaXMgcnVsZS4gSWYgYSBwYXR0ZXJuIHdhcyBhbHJlYWR5IHNwZWNpZmllZCxcbiAgICogdGhlc2UgdmFsdWVzIGFyZSBtZXJnZWQgaW50byB0aGUgZXhpc3RpbmcgcGF0dGVybi5cbiAgICpcbiAgICogRm9yIGV4YW1wbGUsIGlmIHRoZSBydWxlIGFscmVhZHkgY29udGFpbnMgdGhlIHBhdHRlcm46XG4gICAqXG4gICAqICAgIHtcbiAgICogICAgICBcInJlc291cmNlc1wiOiBbIFwicjFcIiBdLFxuICAgKiAgICAgIFwiZGV0YWlsXCI6IHtcbiAgICogICAgICAgIFwiaGVsbG9cIjogWyAxIF1cbiAgICogICAgICB9XG4gICAqICAgIH1cbiAgICpcbiAgICogQW5kIGBhZGRFdmVudFBhdHRlcm5gIGlzIGNhbGxlZCB3aXRoIHRoZSBwYXR0ZXJuOlxuICAgKlxuICAgKiAgICB7XG4gICAqICAgICAgXCJyZXNvdXJjZXNcIjogWyBcInIyXCIgXSxcbiAgICogICAgICBcImRldGFpbFwiOiB7XG4gICAqICAgICAgICBcImZvb1wiOiBbIFwiYmFyXCIgXVxuICAgKiAgICAgIH1cbiAgICogICAgfVxuICAgKlxuICAgKiBUaGUgcmVzdWx0aW5nIGV2ZW50IHBhdHRlcm4gd2lsbCBiZTpcbiAgICpcbiAgICogICAge1xuICAgKiAgICAgIFwicmVzb3VyY2VzXCI6IFsgXCJyMVwiLCBcInIyXCIgXSxcbiAgICogICAgICBcImRldGFpbFwiOiB7XG4gICAqICAgICAgICBcImhlbGxvXCI6IFsgMSBdLFxuICAgKiAgICAgICAgXCJmb29cIjogWyBcImJhclwiIF1cbiAgICogICAgICB9XG4gICAqICAgIH1cbiAgICpcbiAgICovXG4gIHB1YmxpYyBhZGRFdmVudFBhdHRlcm4oZXZlbnRQYXR0ZXJuPzogRXZlbnRQYXR0ZXJuKSB7XG4gICAgaWYgKCFldmVudFBhdHRlcm4pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgbWVyZ2VFdmVudFBhdHRlcm4odGhpcy5ldmVudFBhdHRlcm4sIGV2ZW50UGF0dGVybik7XG4gIH1cblxuICAvKipcbiAgICogTm90IHByaXZhdGUgb25seSB0byBiZSBvdmVycmlkZWVuIGluIENvcHlSdWxlLlxuICAgKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBfcmVuZGVyRXZlbnRQYXR0ZXJuKCk6IGFueSB7XG4gICAgcmV0dXJuIHJlbmRlckV2ZW50UGF0dGVybih0aGlzLmV2ZW50UGF0dGVybik7XG4gIH1cblxuICBwcm90ZWN0ZWQgdmFsaWRhdGVSdWxlKHJ1bGVOYW1lPzogc3RyaW5nKSB7XG4gICAgaWYgKHJ1bGVOYW1lICE9PSB1bmRlZmluZWQgJiYgIVRva2VuLmlzVW5yZXNvbHZlZChydWxlTmFtZSkpIHtcbiAgICAgIGlmIChydWxlTmFtZS5sZW5ndGggPCAxIHx8IHJ1bGVOYW1lLmxlbmd0aCA+IDY0KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICBgRXZlbnQgcnVsZSBuYW1lIG11c3QgYmUgYmV0d2VlbiAxIGFuZCA2NCBjaGFyYWN0ZXJzLiBSZWNlaXZlZDogJHtydWxlTmFtZX1gLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgaWYgKCEvXltcXC5cXC1fQS1aYS16MC05XSskLy50ZXN0KHJ1bGVOYW1lKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgYEV2ZW50IHJ1bGUgbmFtZSAke3J1bGVOYW1lfSBjYW4gY29udGFpbiBvbmx5IGxldHRlcnMsIG51bWJlcnMsIHBlcmlvZHMsIGh5cGhlbnMsIG9yIHVuZGVyc2NvcmVzIHdpdGggbm8gc3BhY2VzLmAsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgZXJyb3JzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGlmIChcbiAgICAgIE9iamVjdC5rZXlzKHRoaXMuZXZlbnRQYXR0ZXJuKS5sZW5ndGggPT09IDAgJiZcbiAgICAgICF0aGlzLnNjaGVkdWxlRXhwcmVzc2lvblxuICAgICkge1xuICAgICAgZXJyb3JzLnB1c2goXCJFaXRoZXIgJ2V2ZW50UGF0dGVybicgb3IgJ3NjaGVkdWxlJyBtdXN0IGJlIGRlZmluZWRcIik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudGFyZ2V0cy5sZW5ndGggPiA1KSB7XG4gICAgICBlcnJvcnMucHVzaChcIkV2ZW50IHJ1bGUgY2Fubm90IGhhdmUgbW9yZSB0aGFuIDUgdGFyZ2V0cy5cIik7XG4gICAgfVxuXG4gICAgcmV0dXJuIGVycm9ycztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgdGFyZ2V0IHRvIHRoZSBydWxlLiBUaGUgYWJzdHJhY3QgY2xhc3MgUnVsZVRhcmdldCBjYW4gYmUgZXh0ZW5kZWQgdG8gZGVmaW5lIG5ld1xuICAgKiB0YXJnZXRzLlxuICAgKlxuICAgKiBOby1vcCBpZiB0YXJnZXQgaXMgdW5kZWZpbmVkLlxuICAgKi9cbiAgcHVibGljIGFkZFRhcmdldCh0YXJnZXQ/OiBJUnVsZVRhcmdldCk6IHZvaWQge1xuICAgIGlmICghdGFyZ2V0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIC8vIFNpbXBseSBpbmNyZW1lbnQgaWQgZm9yIGVhY2ggYGFkZFRhcmdldGAgY2FsbC4gVGhpcyBpcyBndWFyYW50ZWVkIHRvIGJlIHVuaXF1ZS5cbiAgICBjb25zdCB0YXJnZXRJZCA9IGBUYXJnZXQke3RoaXMudGFyZ2V0cy5sZW5ndGh9YDtcbiAgICBjb25zdCB0YXJnZXRQcm9wcyA9IHRhcmdldC5iaW5kKHRoaXMsIHRhcmdldElkKTtcbiAgICBjb25zdCBpbnB1dFByb3BzID0gdGFyZ2V0UHJvcHMuaW5wdXQgJiYgdGFyZ2V0UHJvcHMuaW5wdXQuYmluZCh0aGlzKTtcbiAgICB0aGlzLnRhcmdldHMucHVzaCh7XG4gICAgICB0YXJnZXRJZCxcbiAgICAgIHJvbGVBcm46IHRhcmdldFByb3BzLnJvbGU/LnJvbGVBcm4sXG4gICAgICBydWxlOiB0aGlzLnJlc291cmNlLm5hbWUsXG4gICAgICBldmVudEJ1c05hbWU6IHRoaXMuZXZlbnRCdXNOYW1lLCAvLyBJZiBvbWl0dGVkLCBpdCB3aWxsIHVzZSBgZGVmYXVsdGAgZXZlbnQgYnVzXG4gICAgICBhcm46IHRhcmdldFByb3BzLmFybixcbiAgICAgIGVjc1RhcmdldDogdGFyZ2V0UHJvcHMuZWNzUGFyYW1ldGVycyxcbiAgICAgIGh0dHBUYXJnZXQ6IHRhcmdldFByb3BzLmh0dHBQYXJhbWV0ZXJzLFxuICAgICAga2luZXNpc1RhcmdldDogdGFyZ2V0UHJvcHMua2luZXNpc1BhcmFtZXRlcnMsXG4gICAgICBydW5Db21tYW5kVGFyZ2V0czogdGFyZ2V0UHJvcHMucnVuQ29tbWFuZFBhcmFtZXRlcnMsXG4gICAgICBiYXRjaFRhcmdldDogdGFyZ2V0UHJvcHMuYmF0Y2hQYXJhbWV0ZXJzLFxuICAgICAgZGVhZExldHRlckNvbmZpZzogdGFyZ2V0UHJvcHMuZGVhZExldHRlckNvbmZpZyxcbiAgICAgIHJldHJ5UG9saWN5OiB0YXJnZXRQcm9wcy5yZXRyeVBvbGljeSxcbiAgICAgIHNxc1RhcmdldDogdGFyZ2V0UHJvcHMuc3FzUGFyYW1ldGVycyxcbiAgICAgIHJlZHNoaWZ0VGFyZ2V0OiB0YXJnZXRQcm9wcy5yZWRzaGlmdERhdGFQYXJhbWV0ZXJzLFxuICAgICAgLy8gVE9ETzogbm90IGF2YWlsYWJsZSBpbiB0ZXJyYWZvcm0tcHJvdmlkZXItYXdzXG4gICAgICAvLyBhcHBTeW5jUGFyYW1ldGVyczogdGFyZ2V0UHJvcHMuYXBwU3luY1BhcmFtZXRlcnMsXG4gICAgICBpbnB1dDogaW5wdXRQcm9wcyAmJiBpbnB1dFByb3BzLmlucHV0LFxuICAgICAgaW5wdXRQYXRoOiBpbnB1dFByb3BzICYmIGlucHV0UHJvcHMuaW5wdXRQYXRoLFxuICAgICAgaW5wdXRUcmFuc2Zvcm1lcjpcbiAgICAgICAgaW5wdXRQcm9wcz8uaW5wdXRUZW1wbGF0ZSAhPT0gdW5kZWZpbmVkXG4gICAgICAgICAgPyB7XG4gICAgICAgICAgICAgIGlucHV0VGVtcGxhdGU6IGlucHV0UHJvcHMuaW5wdXRUZW1wbGF0ZSxcbiAgICAgICAgICAgICAgaW5wdXRQYXRoczogaW5wdXRQcm9wcy5pbnB1dFBhdGhzTWFwLFxuICAgICAgICAgICAgfVxuICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgcmVzb3VyY2UgdG8gdGhlIFRlcnJhZm9ybSBKU09OIG91dHB1dCBhdCBTeW50aCB0aW1lLlxuICAgKlxuICAgKiBjYWxsZWQgYnkgVGVycmFmb3JtU3RhY2sucHJlcGFyZVN0YWNrKClcbiAgICovXG4gIHB1YmxpYyB0b1RlcnJhZm9ybSgpOiBhbnkge1xuICAgIC8qKlxuICAgICAqIEEgcHJlcGFyaW5nIHJlc29sdmUgbWlnaHQgYWRkIG5ldyByZXNvdXJjZXMgdG8gdGhlIHN0YWNrXG4gICAgICovXG4gICAgZm9yIChjb25zdCB0YXJnZXQgb2YgdGhpcy50YXJnZXRzKSB7XG4gICAgICAvLyBub3RlOiB0YXJnZXRJZCBpcyBjYWxjdWxhdGVkIGluIGFkZFRhcmdldCgpXG4gICAgICAvLyBUT0RPOiBJZGVhbGx5IHdlIHNob3VsZCBoYXZlIHVzZWQgSVJlc29sdmFibGUucmVzb2x2ZSBhbmQgdXNlIHRoZSBJUmVzb2x2ZUNvbnRleHQucHJlcGFyaW5nIGZsYWdcbiAgICAgIC8vIHJlZjogaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvdjIuMTcwLjAvcGFja2FnZXMvYXdzLWNkay1saWIvYXdzLWlhbS9saWIvcG9saWN5LWRvY3VtZW50LnRzI0w0OFxuICAgICAgaWYgKHRoaXMubm9kZS50cnlGaW5kQ2hpbGQodGFyZ2V0LnRhcmdldElkISkpIGNvbnRpbnVlOyAvLyBpZ25vcmUgaWYgYWxyZWFkeSBnZW5lcmF0ZWRcbiAgICAgIG5ldyBjbG91ZHdhdGNoRXZlbnRUYXJnZXQuQ2xvdWR3YXRjaEV2ZW50VGFyZ2V0KFxuICAgICAgICB0aGlzLFxuICAgICAgICB0YXJnZXQudGFyZ2V0SWQhLFxuICAgICAgICB0YXJnZXQsXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4ge307XG4gIH1cbn1cbiJdfQ==
229
+ Rule[_a] = { fqn: "terraconstructs.aws.notify.Rule", version: "0.2.6" };
230
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hd3Mvbm90aWZ5L3J1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwyRkFBMkY7QUFFM0Ysc0RBSTZCO0FBQzdCLGlDQUFvQztBQUVwQyxnQ0FBbUM7QUFDbkMsb0RBSTBCO0FBQzFCLDRDQUF3QztBQVF4QyxpQ0FBK0Q7QUFvRy9ELE1BQWEsSUFBSyxTQUFRLGdDQUFnQjtJQUN4Qzs7Ozs7O09BTUc7SUFDSSxNQUFNLENBQUMsZ0JBQWdCLENBQzVCLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVixZQUFvQjtRQUVwQixNQUFNLEtBQUssR0FBRyxvQkFBUSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQ25ELFlBQVksRUFDWixlQUFTLENBQUMsbUJBQW1CLENBQzlCLENBQUM7UUFFRixNQUFNLE1BQU8sU0FBUSxnQ0FBZ0I7WUFBckM7O2dCQUNTLFlBQU8sR0FBRyxZQUFZLENBQUM7Z0JBQ3ZCLGFBQVEsR0FBRyxLQUFLLENBQUMsWUFBWSxJQUFJLEVBQUUsQ0FBQztnQkFDcEMsZ0JBQVcsR0FBRztvQkFDbkIsSUFBSSxFQUFFLElBQUksQ0FBQyxRQUFRO29CQUNuQixHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU87aUJBQ2xCLENBQUM7Z0JBQ0ssWUFBTyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7WUFDcEMsQ0FBQztTQUFBO1FBQ0QsT0FBTyxJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQzNCLGtCQUFrQixFQUFFLFlBQVk7U0FDakMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUdELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO0lBQzNCLENBQUM7SUFDRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztJQUM1QixDQUFDO0lB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LElBQUksVUFBVSxDQUFDLEtBQUs7WUFDckMsU0FBUyxFQUFFLFVBQVUsSUFBSSxVQUFVLENBQUMsU0FBUztZQUM3QyxnQkFBZ0IsRUFDZCxVQUFVLEVBQUUsYUFBYSxLQUFLLFNBQVM7Z0JBQ3JDLENBQUMsQ0FBQztvQkFDRSxhQUFhLEVBQUUsVUFBVSxDQUFDLGFBQWE7b0JBQ3ZDLFVBQVUsRUFBRSxVQUFVLENBQUMsYUFBYTtpQkFDckM7Z0JBQ0gsQ0FBQyxDQUFDLFNBQVM7U0FDaEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxXQUFXO1FBQ2hCOztXQUVHO1FBQ0gsS0FBSyxNQUFNLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbEMsOENBQThDO1lBQzlDLG1HQUFtRztZQUNuRyw0R0FBNEc7WUFDNUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsUUFBUyxDQUFDO2dCQUFFLFNBQVMsQ0FBQyw4QkFBOEI7WUFDdEYsSUFBSSxvQ0FBcUIsQ0FBQyxxQkFBcUIsQ0FDN0MsSUFBSSxFQUNKLE1BQU0sQ0FBQyxRQUFTLEVBQ2hCLE1BQU0sQ0FDUCxDQUFDO1FBQ0osQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQzs7QUFsUUgsb0JBbVFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvdjIuMTU2LjAvcGFja2FnZXMvYXdzLWNkay1saWIvYXdzLWV2ZW50cy9saWIvcnVsZS50c1xuXG5pbXBvcnQge1xuICBjbG91ZHdhdGNoRXZlbnRSdWxlLFxuICBjbG91ZHdhdGNoRXZlbnRUYXJnZXQsXG4gIC8vc2NoZWR1bGVyU2NoZWR1bGVHcm91cCAvL1RPRE86IHN1cHBvcnQgc2NoZWR1bGVyIGdyb3Vwcz9cbn0gZnJvbSBcIkBjZGt0bi9wcm92aWRlci1hd3NcIjtcbmltcG9ydCB7IExhenksIFRva2VuIH0gZnJvbSBcImNka3RuXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgQXJuRm9ybWF0IH0gZnJvbSBcIi4uL2FyblwiO1xuaW1wb3J0IHtcbiAgQXdzQ29uc3RydWN0QmFzZSxcbiAgSUF3c0NvbnN0cnVjdCxcbiAgQXdzQ29uc3RydWN0UHJvcHMsXG59IGZyb20gXCIuLi9hd3MtY29uc3RydWN0XCI7XG5pbXBvcnQgeyBBd3NTdGFjayB9IGZyb20gXCIuLi9hd3Mtc3RhY2tcIjtcbmltcG9ydCB7XG4gIFNjaGVkdWxlLFxuICBFdmVudFBhdHRlcm4sXG4gIElSdWxlVGFyZ2V0LFxuICBJRXZlbnRCdXMsXG4gIEV2ZW50Q29tbW9uT3B0aW9ucyxcbn0gZnJvbSBcIi4vXCI7XG5pbXBvcnQgeyBtZXJnZUV2ZW50UGF0dGVybiwgcmVuZGVyRXZlbnRQYXR0ZXJuIH0gZnJvbSBcIi4vdXRpbFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJ1bGVQcm9wcyBleHRlbmRzIEF3c0NvbnN0cnVjdFByb3BzLCBFdmVudENvbW1vbk9wdGlvbnMge1xuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIHJ1bGUgaXMgZW5hYmxlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFJ1bGUgTmFtZSBwcmVmaXggdG8gYXBwZW5kIHRvIEdyaWQgVVVJRFxuICAgKlxuICAgKiBSdWxlIG5hbWVzIG11c3QgYmUgbWFkZSB1cCBvZiBvbmx5IHVwcGVyY2FzZSBhbmQgbG93ZXJjYXNlIEFTQ0lJIGxldHRlcnMsXG4gICAqIG51bWJlcnMsIHVuZGVyc2NvcmVzLCBhbmQgaHlwaGVucywgYW5kIER1ZSB0byB0aGUgbGVuZ3RoIG9mIHRoZSB0ZiBnZW5lcmF0ZWRcbiAgICogc3VmZml4LCBtdXN0IGJlIDY0IGNoYXJhY3RlcnMgb3IgbGVzcyBsb25nLlxuICAgKlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEdyaWRVVUlEICsgU3RhY2sgVW5pcXVlIE5hbWVcbiAgICovXG4gIHJlYWRvbmx5IG5hbWVQcmVmaXg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzY2hlZHVsZSBvciByYXRlIChmcmVxdWVuY3kpIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIEV2ZW50QnJpZGdlXG4gICAqIHJ1bnMgdGhlIHJ1bGUuXG4gICAqXG4gICAqIFlvdSBtdXN0IHNwZWNpZnkgdGhpcyBwcm9wZXJ0eSwgdGhlIGBldmVudFBhdHRlcm5gIHByb3BlcnR5LCBvciBib3RoLlxuICAgKlxuICAgKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIFNjaGVkdWxlIEV4cHJlc3Npb24gU3ludGF4IGZvclxuICAgKiBSdWxlcyBpbiB0aGUgQW1hem9uIEV2ZW50QnJpZGdlIFVzZXIgR3VpZGUuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2V2ZW50YnJpZGdlL2xhdGVzdC91c2VyZ3VpZGUvc2NoZWR1bGVkLWV2ZW50cy5odG1sXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm9uZS5cbiAgICovXG4gIHJlYWRvbmx5IHNjaGVkdWxlPzogU2NoZWR1bGU7XG5cbiAgLyoqXG4gICAqIFRhcmdldHMgdG8gaW52b2tlIHdoZW4gdGhpcyBydWxlIG1hdGNoZXMgYW4gZXZlbnQuXG4gICAqXG4gICAqIElucHV0IHdpbGwgYmUgdGhlIGZ1bGwgbWF0Y2hlZCBldmVudC4gSWYgeW91IHdpc2ggdG8gc3BlY2lmeSBjdXN0b21cbiAgICogdGFyZ2V0IGlucHV0LCB1c2UgYGFkZFRhcmdldCh0YXJnZXRbLCBpbnB1dE9wdGlvbnNdKWAuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gdGFyZ2V0cy5cbiAgICovXG4gIHJlYWRvbmx5IHRhcmdldHM/OiBJUnVsZVRhcmdldFtdO1xuXG4gIC8qKlxuICAgKiBUaGUgZXZlbnQgYnVzIHRvIGFzc29jaWF0ZSB3aXRoIHRoaXMgcnVsZS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBUaGUgZGVmYXVsdCBldmVudCBidXMuXG4gICAqL1xuICByZWFkb25seSBldmVudEJ1cz86IElFdmVudEJ1cztcblxuICAvLyAvKipcbiAgLy8gICogQWRkaXRpb25hbCByZXN0cmljdGlvbnMgZm9yIHRoZSBldmVudCB0byByb3V0ZSB0byB0aGUgc3BlY2lmaWVkIHRhcmdldFxuICAvLyAgKlxuICAvLyAgKiBUaGUgbWV0aG9kIHRoYXQgZ2VuZXJhdGVzIHRoZSBydWxlIHByb2JhYmx5IGltcG9zZXMgc29tZSB0eXBlIG9mIGV2ZW50XG4gIC8vICAqIGZpbHRlcmluZy4gVGhlIGZpbHRlcmluZyBpbXBsaWVkIGJ5IHdoYXQgeW91IHBhc3MgaGVyZSBpcyBhZGRlZFxuICAvLyAgKiBvbiB0b3Agb2YgdGhhdCBmaWx0ZXJpbmcuXG4gIC8vICAqXG4gIC8vICAqIEBkZWZhdWx0IC0gTm8gYWRkaXRpb25hbCBmaWx0ZXJpbmcgYmFzZWQgb24gYW4gZXZlbnQgcGF0dGVybi5cbiAgLy8gICpcbiAgLy8gICogQHNlZVxuICAvLyAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZXZlbnRicmlkZ2UvbGF0ZXN0L3VzZXJndWlkZS9ldmVudGJyaWRnZS1hbmQtZXZlbnQtcGF0dGVybnMuaHRtbFxuICAvLyAgKi9cbiAgLy8gcmVhZG9ubHkgZXZlbnRQYXR0ZXJuPzogRXZlbnRQYXR0ZXJuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJ1bGVPdXRwdXRzIHtcbiAgLyoqXG4gICAqIFJ1bGUgbmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSdWxlIGFyblxuICAgKi9cbiAgcmVhZG9ubHkgYXJuOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVJ1bGUgZXh0ZW5kcyBJQXdzQ29uc3RydWN0IHtcbiAgLyoqIFN0cm9uZ2x5IHR5cGVkIG91dHB1dHMgKi9cbiAgcmVhZG9ubHkgcnVsZU91dHB1dHM6IFJ1bGVPdXRwdXRzO1xuICAvKipcbiAgICogVGhlIHZhbHVlIG9mIHRoZSBldmVudCBydWxlIEFtYXpvbiBSZXNvdXJjZSBOYW1lIChBUk4pLCBzdWNoIGFzXG4gICAqIGFybjphd3M6ZXZlbnRzOnVzLWVhc3QtMjoxMjM0NTY3ODkwMTI6cnVsZS9leGFtcGxlLlxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBydWxlQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIGV2ZW50IHJ1bGVcbiAgICpcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgcnVsZU5hbWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIFJ1bGUgZXh0ZW5kcyBBd3NDb25zdHJ1Y3RCYXNlIGltcGxlbWVudHMgSVJ1bGUge1xuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIEV2ZW50QnJpZGdlIFJ1bGUgcHJvdmlkZWQgYW4gQVJOXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSBUaGUgcGFyZW50IGNyZWF0aW5nIGNvbnN0cnVjdCAodXN1YWxseSBgdGhpc2ApLlxuICAgKiBAcGFyYW0gaWQgVGhlIGNvbnN0cnVjdCdzIG5hbWUuXG4gICAqIEBwYXJhbSBldmVudFJ1bGVBcm4gRXZlbnQgUnVsZSBBUk4gKGkuZS4gYXJuOmF3czpldmVudHM6PHJlZ2lvbj46PGFjY291bnQtaWQ+OnJ1bGUvTXlTY2hlZHVsZWRSdWxlKS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbUV2ZW50UnVsZUFybihcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgZXZlbnRSdWxlQXJuOiBzdHJpbmcsXG4gICk6IElSdWxlIHtcbiAgICBjb25zdCBwYXJ0cyA9IEF3c1N0YWNrLm9mQXdzQ29uc3RydWN0KHNjb3BlKS5zcGxpdEFybihcbiAgICAgIGV2ZW50UnVsZUFybixcbiAgICAgIEFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FLFxuICAgICk7XG5cbiAgICBjbGFzcyBJbXBvcnQgZXh0ZW5kcyBBd3NDb25zdHJ1Y3RCYXNlIGltcGxlbWVudHMgSVJ1bGUge1xuICAgICAgcHVibGljIHJ1bGVBcm4gPSBldmVudFJ1bGVBcm47XG4gICAgICBwdWJsaWMgcnVsZU5hbWUgPSBwYXJ0cy5yZXNvdXJjZU5hbWUgfHwgXCJcIjtcbiAgICAgIHB1YmxpYyBydWxlT3V0cHV0cyA9IHtcbiAgICAgICAgbmFtZTogdGhpcy5ydWxlTmFtZSxcbiAgICAgICAgYXJuOiB0aGlzLnJ1bGVBcm4sXG4gICAgICB9O1xuICAgICAgcHVibGljIG91dHB1dHMgPSB0aGlzLnJ1bGVPdXRwdXRzO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IEltcG9ydChzY29wZSwgaWQsIHtcbiAgICAgIGVudmlyb25tZW50RnJvbUFybjogZXZlbnRSdWxlQXJuLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlYWRvbmx5IHJlc291cmNlOiBjbG91ZHdhdGNoRXZlbnRSdWxlLkNsb3Vkd2F0Y2hFdmVudFJ1bGU7XG4gIHB1YmxpYyBnZXQgcnVsZUFybigpIHtcbiAgICByZXR1cm4gdGhpcy5yZXNvdXJjZS5hcm47XG4gIH1cbiAgcHVibGljIGdldCBydWxlTmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5yZXNvdXJjZS5uYW1lO1xuICB9XG4gIHB1YmxpYyBnZXQgcnVsZU91dHB1dHMoKTogUnVsZU91dHB1dHMge1xuICAgIHJldHVybiB7XG4gICAgICBuYW1lOiB0aGlzLnJ1bGVOYW1lLFxuICAgICAgYXJuOiB0aGlzLnJ1bGVBcm4sXG4gICAgfTtcbiAgfVxuICBwdWJsaWMgZ2V0IG91dHB1dHMoKTogUmVjb3JkPHN0cmluZywgYW55PiB7XG4gICAgcmV0dXJuIHRoaXMucnVsZU91dHB1dHM7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IHRhcmdldHMgPVxuICAgIG5ldyBBcnJheTxjbG91ZHdhdGNoRXZlbnRUYXJnZXQuQ2xvdWR3YXRjaEV2ZW50VGFyZ2V0Q29uZmlnPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IGV2ZW50UGF0dGVybjogRXZlbnRQYXR0ZXJuID0ge307XG5cbiAgcHJpdmF0ZSByZWFkb25seSBzY2hlZHVsZUV4cHJlc3Npb24/OiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgZXZlbnRCdXNOYW1lPzogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIG5hbWU6IHN0cmluZywgcHJvcHM6IFJ1bGVQcm9wcyA9IHt9KSB7XG4gICAgc3VwZXIoc2NvcGUsIG5hbWUsIHByb3BzKTtcblxuICAgIGlmIChwcm9wcy5ldmVudEJ1cyAmJiBwcm9wcy5zY2hlZHVsZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIkNhbm5vdCBhc3NvY2lhdGUgcnVsZSB3aXRoICdldmVudEJ1cycgd2hlbiB1c2luZyAnc2NoZWR1bGUnXCIsXG4gICAgICApO1xuICAgIH1cblxuICAgIGxldCBuYW1lUHJlZml4OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgaWYgKCFwcm9wcy5ydWxlTmFtZSkge1xuICAgICAgbmFtZVByZWZpeCA9IHRoaXMuc3RhY2sudW5pcXVlUmVzb3VyY2VOYW1lUHJlZml4KHRoaXMsIHtcbiAgICAgICAgcHJlZml4OiBwcm9wcy5uYW1lUHJlZml4ID8/IHRoaXMuZ3JpZFVVSUQgKyBcIi1cIixcbiAgICAgICAgYWxsb3dlZFNwZWNpYWxDaGFyYWN0ZXJzOiBcIi4tX1wiLFxuICAgICAgICBtYXhMZW5ndGg6IDY0LFxuICAgICAgfSk7XG4gICAgfVxuICAgIHRoaXMuZGVzY3JpcHRpb24gPSBwcm9wcy5kZXNjcmlwdGlvbjtcbiAgICB0aGlzLnNjaGVkdWxlRXhwcmVzc2lvbiA9IHByb3BzLnNjaGVkdWxlPy5leHByZXNzaW9uU3RyaW5nO1xuICAgIHRoaXMuZXZlbnRCdXNOYW1lID0gcHJvcHMuZXZlbnRCdXM/LmV2ZW50QnVzTmFtZTtcblxuICAgIC8vIGFkZCBhIHdhcm5pbmcgb24gc3ludGggd2hlbiBtaW51dGUgaXMgbm90IGRlZmluZWQgaW4gYSBjcm9uIHNjaGVkdWxlXG4gICAgcHJvcHMuc2NoZWR1bGU/Ll9iaW5kKHRoaXMpO1xuXG4gICAgdGhpcy5yZXNvdXJjZSA9IG5ldyBjbG91ZHdhdGNoRXZlbnRSdWxlLkNsb3Vkd2F0Y2hFdmVudFJ1bGUoXG4gICAgICB0aGlzLFxuICAgICAgXCJSZXNvdXJjZVwiLFxuICAgICAge1xuICAgICAgICBuYW1lOiBwcm9wcy5ydWxlTmFtZSxcbiAgICAgICAgbmFtZVByZWZpeCxcbiAgICAgICAgZGVzY3JpcHRpb246IHRoaXMuZGVzY3JpcHRpb24sXG4gICAgICAgIHN0YXRlOlxuICAgICAgICAgIHByb3BzLmVuYWJsZWQgPT0gbnVsbFxuICAgICAgICAgICAgPyBcIkVOQUJMRURcIlxuICAgICAgICAgICAgOiBwcm9wcy5lbmFibGVkXG4gICAgICAgICAgICAgID8gXCJFTkFCTEVEXCJcbiAgICAgICAgICAgICAgOiBcIkRJU0FCTEVEXCIsIC8vVE9ETzogc3VwcG9ydCBFTkFCTEVEX1dJVEhfQUxMX0NMT1VEVFJBSUxfTUFOQUdFTUVOVF9FVkVOVFM/XG4gICAgICAgIHNjaGVkdWxlRXhwcmVzc2lvbjogdGhpcy5zY2hlZHVsZUV4cHJlc3Npb24sXG4gICAgICAgIGV2ZW50UGF0dGVybjogTGF6eS5zdHJpbmdWYWx1ZSh7XG4gICAgICAgICAgcHJvZHVjZTogKCkgPT4gdGhpcy5zdGFjay50b0pzb25TdHJpbmcodGhpcy5fcmVuZGVyRXZlbnRQYXR0ZXJuKCkpLFxuICAgICAgICB9KSxcbiAgICAgICAgLy8gdGVycmFmb3JtLXByb3ZpZGVyLWF3cyBzZXBhcmF0ZXMgdGFyZ2V0cyB0byBkaWZmZXJlbnQgcmVzb3VyY2VzLlxuICAgICAgICAvLyB0YXJnZXRzOiBMYXp5LmFueVZhbHVlKHsgcHJvZHVjZTogKCkgPT4gdGhpcy5yZW5kZXJUYXJnZXRzKCkgfSksXG4gICAgICAgIGV2ZW50QnVzTmFtZTogdGhpcy5ldmVudEJ1c05hbWUsXG4gICAgICAgIGRlcGVuZHNPbjogcHJvcHMuZGVwZW5kc09uLFxuICAgICAgfSxcbiAgICApO1xuXG4gICAgdGhpcy5hZGRFdmVudFBhdHRlcm4ocHJvcHMuZXZlbnRQYXR0ZXJuKTtcblxuICAgIGZvciAoY29uc3QgdGFyZ2V0IG9mIHByb3BzLnRhcmdldHMgfHwgW10pIHtcbiAgICAgIHRoaXMuYWRkVGFyZ2V0KHRhcmdldCk7XG4gICAgfVxuXG4gICAgdGhpcy5ub2RlLmFkZFZhbGlkYXRpb24oe1xuICAgICAgdmFsaWRhdGU6ICgpID0+IHRoaXMudmFsaWRhdGVSdWxlKHByb3BzLnJ1bGVOYW1lKSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGFuIGV2ZW50IHBhdHRlcm4gZmlsdGVyIHRvIHRoaXMgcnVsZS4gSWYgYSBwYXR0ZXJuIHdhcyBhbHJlYWR5IHNwZWNpZmllZCxcbiAgICogdGhlc2UgdmFsdWVzIGFyZSBtZXJnZWQgaW50byB0aGUgZXhpc3RpbmcgcGF0dGVybi5cbiAgICpcbiAgICogRm9yIGV4YW1wbGUsIGlmIHRoZSBydWxlIGFscmVhZHkgY29udGFpbnMgdGhlIHBhdHRlcm46XG4gICAqXG4gICAqICAgIHtcbiAgICogICAgICBcInJlc291cmNlc1wiOiBbIFwicjFcIiBdLFxuICAgKiAgICAgIFwiZGV0YWlsXCI6IHtcbiAgICogICAgICAgIFwiaGVsbG9cIjogWyAxIF1cbiAgICogICAgICB9XG4gICAqICAgIH1cbiAgICpcbiAgICogQW5kIGBhZGRFdmVudFBhdHRlcm5gIGlzIGNhbGxlZCB3aXRoIHRoZSBwYXR0ZXJuOlxuICAgKlxuICAgKiAgICB7XG4gICAqICAgICAgXCJyZXNvdXJjZXNcIjogWyBcInIyXCIgXSxcbiAgICogICAgICBcImRldGFpbFwiOiB7XG4gICAqICAgICAgICBcImZvb1wiOiBbIFwiYmFyXCIgXVxuICAgKiAgICAgIH1cbiAgICogICAgfVxuICAgKlxuICAgKiBUaGUgcmVzdWx0aW5nIGV2ZW50IHBhdHRlcm4gd2lsbCBiZTpcbiAgICpcbiAgICogICAge1xuICAgKiAgICAgIFwicmVzb3VyY2VzXCI6IFsgXCJyMVwiLCBcInIyXCIgXSxcbiAgICogICAgICBcImRldGFpbFwiOiB7XG4gICAqICAgICAgICBcImhlbGxvXCI6IFsgMSBdLFxuICAgKiAgICAgICAgXCJmb29cIjogWyBcImJhclwiIF1cbiAgICogICAgICB9XG4gICAqICAgIH1cbiAgICpcbiAgICovXG4gIHB1YmxpYyBhZGRFdmVudFBhdHRlcm4oZXZlbnRQYXR0ZXJuPzogRXZlbnRQYXR0ZXJuKSB7XG4gICAgaWYgKCFldmVudFBhdHRlcm4pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgbWVyZ2VFdmVudFBhdHRlcm4odGhpcy5ldmVudFBhdHRlcm4sIGV2ZW50UGF0dGVybik7XG4gIH1cblxuICAvKipcbiAgICogTm90IHByaXZhdGUgb25seSB0byBiZSBvdmVycmlkZWVuIGluIENvcHlSdWxlLlxuICAgKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBfcmVuZGVyRXZlbnRQYXR0ZXJuKCk6IGFueSB7XG4gICAgcmV0dXJuIHJlbmRlckV2ZW50UGF0dGVybih0aGlzLmV2ZW50UGF0dGVybik7XG4gIH1cblxuICBwcm90ZWN0ZWQgdmFsaWRhdGVSdWxlKHJ1bGVOYW1lPzogc3RyaW5nKSB7XG4gICAgaWYgKHJ1bGVOYW1lICE9PSB1bmRlZmluZWQgJiYgIVRva2VuLmlzVW5yZXNvbHZlZChydWxlTmFtZSkpIHtcbiAgICAgIGlmIChydWxlTmFtZS5sZW5ndGggPCAxIHx8IHJ1bGVOYW1lLmxlbmd0aCA+IDY0KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICBgRXZlbnQgcnVsZSBuYW1lIG11c3QgYmUgYmV0d2VlbiAxIGFuZCA2NCBjaGFyYWN0ZXJzLiBSZWNlaXZlZDogJHtydWxlTmFtZX1gLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgaWYgKCEvXltcXC5cXC1fQS1aYS16MC05XSskLy50ZXN0KHJ1bGVOYW1lKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgYEV2ZW50IHJ1bGUgbmFtZSAke3J1bGVOYW1lfSBjYW4gY29udGFpbiBvbmx5IGxldHRlcnMsIG51bWJlcnMsIHBlcmlvZHMsIGh5cGhlbnMsIG9yIHVuZGVyc2NvcmVzIHdpdGggbm8gc3BhY2VzLmAsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgZXJyb3JzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGlmIChcbiAgICAgIE9iamVjdC5rZXlzKHRoaXMuZXZlbnRQYXR0ZXJuKS5sZW5ndGggPT09IDAgJiZcbiAgICAgICF0aGlzLnNjaGVkdWxlRXhwcmVzc2lvblxuICAgICkge1xuICAgICAgZXJyb3JzLnB1c2goXCJFaXRoZXIgJ2V2ZW50UGF0dGVybicgb3IgJ3NjaGVkdWxlJyBtdXN0IGJlIGRlZmluZWRcIik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudGFyZ2V0cy5sZW5ndGggPiA1KSB7XG4gICAgICBlcnJvcnMucHVzaChcIkV2ZW50IHJ1bGUgY2Fubm90IGhhdmUgbW9yZSB0aGFuIDUgdGFyZ2V0cy5cIik7XG4gICAgfVxuXG4gICAgcmV0dXJuIGVycm9ycztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgdGFyZ2V0IHRvIHRoZSBydWxlLiBUaGUgYWJzdHJhY3QgY2xhc3MgUnVsZVRhcmdldCBjYW4gYmUgZXh0ZW5kZWQgdG8gZGVmaW5lIG5ld1xuICAgKiB0YXJnZXRzLlxuICAgKlxuICAgKiBOby1vcCBpZiB0YXJnZXQgaXMgdW5kZWZpbmVkLlxuICAgKi9cbiAgcHVibGljIGFkZFRhcmdldCh0YXJnZXQ/OiBJUnVsZVRhcmdldCk6IHZvaWQge1xuICAgIGlmICghdGFyZ2V0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIC8vIFNpbXBseSBpbmNyZW1lbnQgaWQgZm9yIGVhY2ggYGFkZFRhcmdldGAgY2FsbC4gVGhpcyBpcyBndWFyYW50ZWVkIHRvIGJlIHVuaXF1ZS5cbiAgICBjb25zdCB0YXJnZXRJZCA9IGBUYXJnZXQke3RoaXMudGFyZ2V0cy5sZW5ndGh9YDtcbiAgICBjb25zdCB0YXJnZXRQcm9wcyA9IHRhcmdldC5iaW5kKHRoaXMsIHRhcmdldElkKTtcbiAgICBjb25zdCBpbnB1dFByb3BzID0gdGFyZ2V0UHJvcHMuaW5wdXQgJiYgdGFyZ2V0UHJvcHMuaW5wdXQuYmluZCh0aGlzKTtcbiAgICB0aGlzLnRhcmdldHMucHVzaCh7XG4gICAgICB0YXJnZXRJZCxcbiAgICAgIHJvbGVBcm46IHRhcmdldFByb3BzLnJvbGU/LnJvbGVBcm4sXG4gICAgICBydWxlOiB0aGlzLnJlc291cmNlLm5hbWUsXG4gICAgICBldmVudEJ1c05hbWU6IHRoaXMuZXZlbnRCdXNOYW1lLCAvLyBJZiBvbWl0dGVkLCBpdCB3aWxsIHVzZSBgZGVmYXVsdGAgZXZlbnQgYnVzXG4gICAgICBhcm46IHRhcmdldFByb3BzLmFybixcbiAgICAgIGVjc1RhcmdldDogdGFyZ2V0UHJvcHMuZWNzUGFyYW1ldGVycyxcbiAgICAgIGh0dHBUYXJnZXQ6IHRhcmdldFByb3BzLmh0dHBQYXJhbWV0ZXJzLFxuICAgICAga2luZXNpc1RhcmdldDogdGFyZ2V0UHJvcHMua2luZXNpc1BhcmFtZXRlcnMsXG4gICAgICBydW5Db21tYW5kVGFyZ2V0czogdGFyZ2V0UHJvcHMucnVuQ29tbWFuZFBhcmFtZXRlcnMsXG4gICAgICBiYXRjaFRhcmdldDogdGFyZ2V0UHJvcHMuYmF0Y2hQYXJhbWV0ZXJzLFxuICAgICAgZGVhZExldHRlckNvbmZpZzogdGFyZ2V0UHJvcHMuZGVhZExldHRlckNvbmZpZyxcbiAgICAgIHJldHJ5UG9saWN5OiB0YXJnZXRQcm9wcy5yZXRyeVBvbGljeSxcbiAgICAgIHNxc1RhcmdldDogdGFyZ2V0UHJvcHMuc3FzUGFyYW1ldGVycyxcbiAgICAgIHJlZHNoaWZ0VGFyZ2V0OiB0YXJnZXRQcm9wcy5yZWRzaGlmdERhdGFQYXJhbWV0ZXJzLFxuICAgICAgLy8gVE9ETzogbm90IGF2YWlsYWJsZSBpbiB0ZXJyYWZvcm0tcHJvdmlkZXItYXdzXG4gICAgICAvLyBhcHBTeW5jUGFyYW1ldGVyczogdGFyZ2V0UHJvcHMuYXBwU3luY1BhcmFtZXRlcnMsXG4gICAgICBpbnB1dDogaW5wdXRQcm9wcyAmJiBpbnB1dFByb3BzLmlucHV0LFxuICAgICAgaW5wdXRQYXRoOiBpbnB1dFByb3BzICYmIGlucHV0UHJvcHMuaW5wdXRQYXRoLFxuICAgICAgaW5wdXRUcmFuc2Zvcm1lcjpcbiAgICAgICAgaW5wdXRQcm9wcz8uaW5wdXRUZW1wbGF0ZSAhPT0gdW5kZWZpbmVkXG4gICAgICAgICAgPyB7XG4gICAgICAgICAgICAgIGlucHV0VGVtcGxhdGU6IGlucHV0UHJvcHMuaW5wdXRUZW1wbGF0ZSxcbiAgICAgICAgICAgICAgaW5wdXRQYXRoczogaW5wdXRQcm9wcy5pbnB1dFBhdGhzTWFwLFxuICAgICAgICAgICAgfVxuICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgcmVzb3VyY2UgdG8gdGhlIFRlcnJhZm9ybSBKU09OIG91dHB1dCBhdCBTeW50aCB0aW1lLlxuICAgKlxuICAgKiBjYWxsZWQgYnkgVGVycmFmb3JtU3RhY2sucHJlcGFyZVN0YWNrKClcbiAgICovXG4gIHB1YmxpYyB0b1RlcnJhZm9ybSgpOiBhbnkge1xuICAgIC8qKlxuICAgICAqIEEgcHJlcGFyaW5nIHJlc29sdmUgbWlnaHQgYWRkIG5ldyByZXNvdXJjZXMgdG8gdGhlIHN0YWNrXG4gICAgICovXG4gICAgZm9yIChjb25zdCB0YXJnZXQgb2YgdGhpcy50YXJnZXRzKSB7XG4gICAgICAvLyBub3RlOiB0YXJnZXRJZCBpcyBjYWxjdWxhdGVkIGluIGFkZFRhcmdldCgpXG4gICAgICAvLyBUT0RPOiBJZGVhbGx5IHdlIHNob3VsZCBoYXZlIHVzZWQgSVJlc29sdmFibGUucmVzb2x2ZSBhbmQgdXNlIHRoZSBJUmVzb2x2ZUNvbnRleHQucHJlcGFyaW5nIGZsYWdcbiAgICAgIC8vIHJlZjogaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvdjIuMTcwLjAvcGFja2FnZXMvYXdzLWNkay1saWIvYXdzLWlhbS9saWIvcG9saWN5LWRvY3VtZW50LnRzI0w0OFxuICAgICAgaWYgKHRoaXMubm9kZS50cnlGaW5kQ2hpbGQodGFyZ2V0LnRhcmdldElkISkpIGNvbnRpbnVlOyAvLyBpZ25vcmUgaWYgYWxyZWFkeSBnZW5lcmF0ZWRcbiAgICAgIG5ldyBjbG91ZHdhdGNoRXZlbnRUYXJnZXQuQ2xvdWR3YXRjaEV2ZW50VGFyZ2V0KFxuICAgICAgICB0aGlzLFxuICAgICAgICB0YXJnZXQudGFyZ2V0SWQhLFxuICAgICAgICB0YXJnZXQsXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4ge307XG4gIH1cbn1cbiJdfQ==
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.Schedule = void 0;
5
5
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
6
  // https://github.com/aws/aws-cdk/blob/v2.156.0/packages/aws-cdk-lib/aws-events/lib/schedule.ts
7
- const cdktf_1 = require("cdktf");
7
+ const cdktn_1 = require("cdktn");
8
8
  /**
9
9
  * Schedule for scheduled event rules
10
10
  *
@@ -75,7 +75,7 @@ class Schedule {
75
75
  _bind(scope) {
76
76
  if (!options.minute) {
77
77
  // "@aws-cdk/aws-events:scheduleWillRunEveryMinute",
78
- cdktf_1.Annotations.of(scope).addWarning("cron: If you don't pass 'minute', by default the event runs every minute. Pass 'minute: '*'' if that's what you intend, or 'minute: 0' to run once per hour instead.");
78
+ cdktn_1.Annotations.of(scope).addWarning("cron: If you don't pass 'minute', by default the event runs every minute. Pass 'minute: '*'' if that's what you intend, or 'minute: 0' to run once per hour instead.");
79
79
  }
80
80
  return new LiteralSchedule(this.expressionString);
81
81
  }
@@ -85,7 +85,7 @@ class Schedule {
85
85
  }
86
86
  exports.Schedule = Schedule;
87
87
  _a = JSII_RTTI_SYMBOL_1;
88
- Schedule[_a] = { fqn: "terraconstructs.aws.notify.Schedule", version: "0.2.4" };
88
+ Schedule[_a] = { fqn: "terraconstructs.aws.notify.Schedule", version: "0.2.6" };
89
89
  class LiteralSchedule extends Schedule {
90
90
  constructor(expressionString) {
91
91
  super();
@@ -113,4 +113,4 @@ function makeRate(interval, singular) {
113
113
  ? `rate(1 ${singular})`
114
114
  : `rate(${interval} ${singular}s)`;
115
115
  }
116
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWR1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXdzL25vdGlmeS9zY2hlZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLCtGQUErRjtBQUUvRixpQ0FBb0M7QUFJcEM7Ozs7OztHQU1HO0FBQ0gsTUFBc0IsUUFBUTtJQUM1Qjs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLFVBQVUsQ0FBQyxVQUFrQjtRQUN6QyxPQUFPLElBQUksZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFrQjtRQUNuQyxJQUFJLFFBQVEsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDO1lBQzVCLE1BQU0saUJBQWlCLEdBQUc7Z0JBQ3hCLFFBQVE7Z0JBQ1IsU0FBUztnQkFDVCxNQUFNO2dCQUNOLE9BQU87Z0JBQ1AsS0FBSztnQkFDTCxNQUFNO2FBQ1AsQ0FBQztZQUNGLElBQUksaUJBQWlCLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQzNELE1BQU0sSUFBSSxLQUFLLENBQ2IsdUZBQXVGLENBQ3hGLENBQUM7WUFDSixDQUFDO1lBQ0QsT0FBTyxJQUFJLGVBQWUsQ0FBQyxRQUFRLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN4RSxDQUFDO1FBQ0QsSUFBSSxRQUFRLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFFRCxJQUFJLElBQUksR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2xFLElBQUksSUFB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QyxDQUFDO0FBQ3RDLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQVMsUUFBUSxDQUFDLFFBQWdCLEVBQUUsUUFBZ0I7SUFDbEQsT0FBTyxRQUFRLEtBQUssQ0FBQztRQUNuQixDQUFDLENBQUMsVUFBVSxRQUFRLEdBQUc7UUFDdkIsQ0FBQyxDQUFDLFFBQVEsUUFBUSxJQUFJLFFBQVEsSUFBSSxDQUFDO0FBQ3ZDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNTYuMC9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3MtZXZlbnRzL2xpYi9zY2hlZHVsZS50c1xuXG5pbXBvcnQgeyBBbm5vdGF0aW9ucyB9IGZyb20gXCJjZGt0ZlwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IER1cmF0aW9uIH0gZnJvbSBcIi4uLy4uXCI7XG5cbi8qKlxuICogU2NoZWR1bGUgZm9yIHNjaGVkdWxlZCBldmVudCBydWxlc1xuICpcbiAqIE5vdGUgdGhhdCByYXRlcyBjYW5ub3QgYmUgZGVmaW5lZCBpbiBmcmFjdGlvbnMgb2YgbWludXRlcy5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9ldmVudGJyaWRnZS9sYXRlc3QvdXNlcmd1aWRlL3NjaGVkdWxlZC1ldmVudHMuaHRtbFxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU2NoZWR1bGUge1xuICAvKipcbiAgICogQ29uc3RydWN0IGEgc2NoZWR1bGUgZnJvbSBhIGxpdGVyYWwgc2NoZWR1bGUgZXhwcmVzc2lvblxuICAgKlxuICAgKiBAcGFyYW0gZXhwcmVzc2lvbiBUaGUgZXhwcmVzc2lvbiB0byB1c2UuIE11c3QgYmUgaW4gYSBmb3JtYXQgdGhhdCBFdmVudEJyaWRnZSB3aWxsIHJlY29nbml6ZVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBleHByZXNzaW9uKGV4cHJlc3Npb246IHN0cmluZyk6IFNjaGVkdWxlIHtcbiAgICByZXR1cm4gbmV3IExpdGVyYWxTY2hlZHVsZShleHByZXNzaW9uKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3QgYSBzY2hlZHVsZSBmcm9tIGFuIGludGVydmFsIGFuZCBhIHRpbWUgdW5pdFxuICAgKlxuICAgKiBSYXRlcyBtYXkgYmUgZGVmaW5lZCB3aXRoIGFueSB1bml0IG9mIHRpbWUsIGJ1dCB3aGVuIGNvbnZlcnRlZCBpbnRvIG1pbnV0ZXMsIHRoZSBkdXJhdGlvbiBtdXN0IGJlIGEgcG9zaXRpdmUgd2hvbGUgbnVtYmVyIG9mIG1pbnV0ZXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJhdGUoZHVyYXRpb246IER1cmF0aW9uKTogU2NoZWR1bGUge1xuICAgIGlmIChkdXJhdGlvbi5pc1VucmVzb2x2ZWQoKSkge1xuICAgICAgY29uc3QgdmFsaWREdXJhdGlvblVuaXQgPSBbXG4gICAgICAgIFwibWludXRlXCIsXG4gICAgICAgIFwibWludXRlc1wiLFxuICAgICAgICBcImhvdXJcIixcbiAgICAgICAgXCJob3Vyc1wiLFxuICAgICAgICBcImRheVwiLFxuICAgICAgICBcImRheXNcIixcbiAgICAgIF07XG4gICAgICBpZiAodmFsaWREdXJhdGlvblVuaXQuaW5kZXhPZihkdXJhdGlvbi51bml0TGFiZWwoKSkgPT09IC0xKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICBcIkFsbG93ZWQgdW5pdHMgZm9yIHNjaGVkdWxpbmcgYXJlOiAnbWludXRlJywgJ21pbnV0ZXMnLCAnaG91cicsICdob3VycycsICdkYXknLCAnZGF5cydcIixcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBuZXcgTGl0ZXJhbFNjaGVkdWxlKGByYXRlKCR7ZHVyYXRpb24uZm9ybWF0VG9rZW5Ub051bWJlcigpfSlgKTtcbiAgICB9XG4gICAgaWYgKGR1cmF0aW9uLnRvTWludXRlcygpID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJEdXJhdGlvbiBjYW5ub3QgYmUgMFwiKTtcbiAgICB9XG5cbiAgICBsZXQgcmF0ZSA9IG1heWJlUmF0ZShkdXJhdGlvbi50b0RheXMoeyBpbnRlZ3JhbDogZmFsc2UgfSksIFwiZGF5XCIpO1xuICAgIGlmIChyYXRlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJhdGUgPSBtYXliZVJhdGUoZHVyYXRpb24udG9Ib3Vycyh7IGludGVncmFsOiBmYWxzZSB9KSwgXCJob3VyXCIpO1xuICAgIH1cbiAgICBpZiAocmF0ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByYXRlID0gbWFrZVJhdGUoZHVyYXRpb24udG9NaW51dGVzKHsgaW50ZWdyYWw6IHRydWUgfSksIFwibWludXRlXCIpO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IExpdGVyYWxTY2hlZHVsZShyYXRlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBzY2hlZHVsZSBmcm9tIGEgc2V0IG9mIGNyb24gZmllbGRzXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNyb24ob3B0aW9uczogQ3Jvbk9wdGlvbnMpOiBTY2hlZHVsZSB7XG4gICAgaWYgKG9wdGlvbnMud2Vla0RheSAhPT0gdW5kZWZpbmVkICYmIG9wdGlvbnMuZGF5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgXCJDYW5ub3Qgc3VwcGx5IGJvdGggJ2RheScgYW5kICd3ZWVrRGF5JywgdXNlIGF0IG1vc3Qgb25lXCIsXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IG1pbnV0ZSA9IGZhbGxiYWNrKG9wdGlvbnMubWludXRlLCBcIipcIik7XG4gICAgY29uc3QgaG91ciA9IGZhbGxiYWNrKG9wdGlvbnMuaG91ciwgXCIqXCIpO1xuICAgIGNvbnN0IG1vbnRoID0gZmFsbGJhY2sob3B0aW9ucy5tb250aCwgXCIqXCIpO1xuICAgIGNvbnN0IHllYXIgPSBmYWxsYmFjayhvcHRpb25zLnllYXIsIFwiKlwiKTtcblxuICAgIC8vIFdlZWtkYXkgZGVmYXVsdHMgdG8gJz8nIGlmIG5vdCBzdXBwbGllZC4gSWYgaXQgaXMgc3VwcGxpZWQsIGRheSBtdXN0IGJlY29tZSAnPydcbiAgICBjb25zdCBkYXkgPSBmYWxsYmFjayhcbiAgICAgIG9wdGlvbnMuZGF5LFxuICAgICAgb3B0aW9ucy53ZWVrRGF5ICE9PSB1bmRlZmluZWQgPyBcIj9cIiA6IFwiKlwiLFxuICAgICk7XG4gICAgY29uc3Qgd2Vla0RheSA9IGZhbGxiYWNrKG9wdGlvbnMud2Vla0RheSwgXCI/XCIpO1xuXG4gICAgcmV0dXJuIG5ldyAoY2xhc3MgZXh0ZW5kcyBTY2hlZHVsZSB7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgZXhwcmVzc2lvblN0cmluZzogc3RyaW5nID0gYGNyb24oJHttaW51dGV9ICR7aG91cn0gJHtkYXl9ICR7bW9udGh9ICR7d2Vla0RheX0gJHt5ZWFyfSlgO1xuICAgICAgcHVibGljIF9iaW5kKHNjb3BlOiBDb25zdHJ1Y3QpIHtcbiAgICAgICAgaWYgKCFvcHRpb25zLm1pbnV0ZSkge1xuICAgICAgICAgIC8vIFwiQGF3cy1jZGsvYXdzLWV2ZW50czpzY2hlZHVsZVdpbGxSdW5FdmVyeU1pbnV0ZVwiLFxuICAgICAgICAgIEFubm90YXRpb25zLm9mKHNjb3BlKS5hZGRXYXJuaW5nKFxuICAgICAgICAgICAgXCJjcm9uOiBJZiB5b3UgZG9uJ3QgcGFzcyAnbWludXRlJywgYnkgZGVmYXVsdCB0aGUgZXZlbnQgcnVucyBldmVyeSBtaW51dGUuIFBhc3MgJ21pbnV0ZTogJyonJyBpZiB0aGF0J3Mgd2hhdCB5b3UgaW50ZW5kLCBvciAnbWludXRlOiAwJyB0byBydW4gb25jZSBwZXIgaG91ciBpbnN0ZWFkLlwiLFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG5ldyBMaXRlcmFsU2NoZWR1bGUodGhpcy5leHByZXNzaW9uU3RyaW5nKTtcbiAgICAgIH1cbiAgICB9KSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlIHRoZSBleHByZXNzaW9uIGZvciB0aGlzIHNjaGVkdWxlXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgZXhwcmVzc2lvblN0cmluZzogc3RyaW5nO1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgLyoqXG4gICAqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IF9iaW5kKHNjb3BlOiBDb25zdHJ1Y3QpOiB2b2lkO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgdG8gY29uZmlndXJlIGEgY3JvbiBleHByZXNzaW9uXG4gKlxuICogQWxsIGZpZWxkcyBhcmUgc3RyaW5ncyBzbyB5b3UgY2FuIHVzZSBjb21wbGV4IGV4cHJlc3Npb25zLiBBYnNlbmNlIG9mXG4gKiBhIGZpZWxkIGltcGxpZXMgJyonIG9yICc/Jywgd2hpY2hldmVyIG9uZSBpcyBhcHByb3ByaWF0ZS5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9ldmVudGJyaWRnZS9sYXRlc3QvdXNlcmd1aWRlL3NjaGVkdWxlZC1ldmVudHMuaHRtbCNjcm9uLWV4cHJlc3Npb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3Jvbk9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIG1pbnV0ZSB0byBydW4gdGhpcyBydWxlIGF0XG4gICAqXG4gICAqIEBkZWZhdWx0IC0gRXZlcnkgbWludXRlXG4gICAqL1xuICByZWFkb25seSBtaW51dGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBob3VyIHRvIHJ1biB0aGlzIHJ1bGUgYXRcbiAgICpcbiAgICogQGRlZmF1bHQgLSBFdmVyeSBob3VyXG4gICAqL1xuICByZWFkb25seSBob3VyPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZGF5IG9mIHRoZSBtb250aCB0byBydW4gdGhpcyBydWxlIGF0XG4gICAqXG4gICAqIEBkZWZhdWx0IC0gRXZlcnkgZGF5IG9mIHRoZSBtb250aFxuICAgKi9cbiAgcmVhZG9ubHkgZGF5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbW9udGggdG8gcnVuIHRoaXMgcnVsZSBhdFxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEV2ZXJ5IG1vbnRoXG4gICAqL1xuICByZWFkb25seSBtb250aD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHllYXIgdG8gcnVuIHRoaXMgcnVsZSBhdFxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEV2ZXJ5IHllYXJcbiAgICovXG4gIHJlYWRvbmx5IHllYXI/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBkYXkgb2YgdGhlIHdlZWsgdG8gcnVuIHRoaXMgcnVsZSBhdFxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEFueSBkYXkgb2YgdGhlIHdlZWtcbiAgICovXG4gIHJlYWRvbmx5IHdlZWtEYXk/OiBzdHJpbmc7XG59XG5cbmNsYXNzIExpdGVyYWxTY2hlZHVsZSBleHRlbmRzIFNjaGVkdWxlIHtcbiAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IGV4cHJlc3Npb25TdHJpbmc6IHN0cmluZykge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBwdWJsaWMgX2JpbmQoKSB7fVxufVxuXG5mdW5jdGlvbiBmYWxsYmFjazxUPih4OiBUIHwgdW5kZWZpbmVkLCBkZWY6IFQpOiBUIHtcbiAgcmV0dXJuIHggPz8gZGVmO1xufVxuXG4vKipcbiAqIFJldHVybiB0aGUgcmF0ZSBpZiB0aGUgcmF0ZSBpcyB3aG9sZSBudW1iZXJcbiAqL1xuZnVuY3Rpb24gbWF5YmVSYXRlKGludGVydmFsOiBudW1iZXIsIHNpbmd1bGFyOiBzdHJpbmcpIHtcbiAgaWYgKGludGVydmFsID09PSAwIHx8ICFOdW1iZXIuaXNJbnRlZ2VyKGludGVydmFsKSkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgcmV0dXJuIG1ha2VSYXRlKGludGVydmFsLCBzaW5ndWxhcik7XG59XG5cbi8qKlxuICogUmV0dXJuICdyYXRlKCR7aW50ZXJ2YWx9ICR7c2luZ3VsYXJ9KHMpKWAgZm9yIHRoZSBpbnRlcnZhbFxuICovXG5mdW5jdGlvbiBtYWtlUmF0ZShpbnRlcnZhbDogbnVtYmVyLCBzaW5ndWxhcjogc3RyaW5nKSB7XG4gIHJldHVybiBpbnRlcnZhbCA9PT0gMVxuICAgID8gYHJhdGUoMSAke3Npbmd1bGFyfSlgXG4gICAgOiBgcmF0ZSgke2ludGVydmFsfSAke3Npbmd1bGFyfXMpYDtcbn1cbiJdfQ==
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWR1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXdzL25vdGlmeS9zY2hlZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLCtGQUErRjtBQUUvRixpQ0FBb0M7QUFJcEM7Ozs7OztHQU1HO0FBQ0gsTUFBc0IsUUFBUTtJQUM1Qjs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLFVBQVUsQ0FBQyxVQUFrQjtRQUN6QyxPQUFPLElBQUksZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFrQjtRQUNuQyxJQUFJLFFBQVEsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDO1lBQzVCLE1BQU0saUJBQWlCLEdBQUc7Z0JBQ3hCLFFBQVE7Z0JBQ1IsU0FBUztnQkFDVCxNQUFNO2dCQUNOLE9BQU87Z0JBQ1AsS0FBSztnQkFDTCxNQUFNO2FBQ1AsQ0FBQztZQUNGLElBQUksaUJBQWlCLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQzNELE1BQU0sSUFBSSxLQUFLLENBQ2IsdUZBQXVGLENBQ3hGLENBQUM7WUFDSixDQUFDO1lBQ0QsT0FBTyxJQUFJLGVBQWUsQ0FBQyxRQUFRLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN4RSxDQUFDO1FBQ0QsSUFBSSxRQUFRLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFFRCxJQUFJLElBQUksR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2xFLElBQUksSUFB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QyxDQUFDO0FBQ3RDLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQVMsUUFBUSxDQUFDLFFBQWdCLEVBQUUsUUFBZ0I7SUFDbEQsT0FBTyxRQUFRLEtBQUssQ0FBQztRQUNuQixDQUFDLENBQUMsVUFBVSxRQUFRLEdBQUc7UUFDdkIsQ0FBQyxDQUFDLFFBQVEsUUFBUSxJQUFJLFFBQVEsSUFBSSxDQUFDO0FBQ3ZDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNTYuMC9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3MtZXZlbnRzL2xpYi9zY2hlZHVsZS50c1xuXG5pbXBvcnQgeyBBbm5vdGF0aW9ucyB9IGZyb20gXCJjZGt0blwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IER1cmF0aW9uIH0gZnJvbSBcIi4uLy4uXCI7XG5cbi8qKlxuICogU2NoZWR1bGUgZm9yIHNjaGVkdWxlZCBldmVudCBydWxlc1xuICpcbiAqIE5vdGUgdGhhdCByYXRlcyBjYW5ub3QgYmUgZGVmaW5lZCBpbiBmcmFjdGlvbnMgb2YgbWludXRlcy5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9ldmVudGJyaWRnZS9sYXRlc3QvdXNlcmd1aWRlL3NjaGVkdWxlZC1ldmVudHMuaHRtbFxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU2NoZWR1bGUge1xuICAvKipcbiAgICogQ29uc3RydWN0IGEgc2NoZWR1bGUgZnJvbSBhIGxpdGVyYWwgc2NoZWR1bGUgZXhwcmVzc2lvblxuICAgKlxuICAgKiBAcGFyYW0gZXhwcmVzc2lvbiBUaGUgZXhwcmVzc2lvbiB0byB1c2UuIE11c3QgYmUgaW4gYSBmb3JtYXQgdGhhdCBFdmVudEJyaWRnZSB3aWxsIHJlY29nbml6ZVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBleHByZXNzaW9uKGV4cHJlc3Npb246IHN0cmluZyk6IFNjaGVkdWxlIHtcbiAgICByZXR1cm4gbmV3IExpdGVyYWxTY2hlZHVsZShleHByZXNzaW9uKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3QgYSBzY2hlZHVsZSBmcm9tIGFuIGludGVydmFsIGFuZCBhIHRpbWUgdW5pdFxuICAgKlxuICAgKiBSYXRlcyBtYXkgYmUgZGVmaW5lZCB3aXRoIGFueSB1bml0IG9mIHRpbWUsIGJ1dCB3aGVuIGNvbnZlcnRlZCBpbnRvIG1pbnV0ZXMsIHRoZSBkdXJhdGlvbiBtdXN0IGJlIGEgcG9zaXRpdmUgd2hvbGUgbnVtYmVyIG9mIG1pbnV0ZXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJhdGUoZHVyYXRpb246IER1cmF0aW9uKTogU2NoZWR1bGUge1xuICAgIGlmIChkdXJhdGlvbi5pc1VucmVzb2x2ZWQoKSkge1xuICAgICAgY29uc3QgdmFsaWREdXJhdGlvblVuaXQgPSBbXG4gICAgICAgIFwibWludXRlXCIsXG4gICAgICAgIFwibWludXRlc1wiLFxuICAgICAgICBcImhvdXJcIixcbiAgICAgICAgXCJob3Vyc1wiLFxuICAgICAgICBcImRheVwiLFxuICAgICAgICBcImRheXNcIixcbiAgICAgIF07XG4gICAgICBpZiAodmFsaWREdXJhdGlvblVuaXQuaW5kZXhPZihkdXJhdGlvbi51bml0TGFiZWwoKSkgPT09IC0xKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICBcIkFsbG93ZWQgdW5pdHMgZm9yIHNjaGVkdWxpbmcgYXJlOiAnbWludXRlJywgJ21pbnV0ZXMnLCAnaG91cicsICdob3VycycsICdkYXknLCAnZGF5cydcIixcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBuZXcgTGl0ZXJhbFNjaGVkdWxlKGByYXRlKCR7ZHVyYXRpb24uZm9ybWF0VG9rZW5Ub051bWJlcigpfSlgKTtcbiAgICB9XG4gICAgaWYgKGR1cmF0aW9uLnRvTWludXRlcygpID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJEdXJhdGlvbiBjYW5ub3QgYmUgMFwiKTtcbiAgICB9XG5cbiAgICBsZXQgcmF0ZSA9IG1heWJlUmF0ZShkdXJhdGlvbi50b0RheXMoeyBpbnRlZ3JhbDogZmFsc2UgfSksIFwiZGF5XCIpO1xuICAgIGlmIChyYXRlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJhdGUgPSBtYXliZVJhdGUoZHVyYXRpb24udG9Ib3Vycyh7IGludGVncmFsOiBmYWxzZSB9KSwgXCJob3VyXCIpO1xuICAgIH1cbiAgICBpZiAocmF0ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByYXRlID0gbWFrZVJhdGUoZHVyYXRpb24udG9NaW51dGVzKHsgaW50ZWdyYWw6IHRydWUgfSksIFwibWludXRlXCIpO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IExpdGVyYWxTY2hlZHVsZShyYXRlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBzY2hlZHVsZSBmcm9tIGEgc2V0IG9mIGNyb24gZmllbGRzXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNyb24ob3B0aW9uczogQ3Jvbk9wdGlvbnMpOiBTY2hlZHVsZSB7XG4gICAgaWYgKG9wdGlvbnMud2Vla0RheSAhPT0gdW5kZWZpbmVkICYmIG9wdGlvbnMuZGF5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgXCJDYW5ub3Qgc3VwcGx5IGJvdGggJ2RheScgYW5kICd3ZWVrRGF5JywgdXNlIGF0IG1vc3Qgb25lXCIsXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IG1pbnV0ZSA9IGZhbGxiYWNrKG9wdGlvbnMubWludXRlLCBcIipcIik7XG4gICAgY29uc3QgaG91ciA9IGZhbGxiYWNrKG9wdGlvbnMuaG91ciwgXCIqXCIpO1xuICAgIGNvbnN0IG1vbnRoID0gZmFsbGJhY2sob3B0aW9ucy5tb250aCwgXCIqXCIpO1xuICAgIGNvbnN0IHllYXIgPSBmYWxsYmFjayhvcHRpb25zLnllYXIsIFwiKlwiKTtcblxuICAgIC8vIFdlZWtkYXkgZGVmYXVsdHMgdG8gJz8nIGlmIG5vdCBzdXBwbGllZC4gSWYgaXQgaXMgc3VwcGxpZWQsIGRheSBtdXN0IGJlY29tZSAnPydcbiAgICBjb25zdCBkYXkgPSBmYWxsYmFjayhcbiAgICAgIG9wdGlvbnMuZGF5LFxuICAgICAgb3B0aW9ucy53ZWVrRGF5ICE9PSB1bmRlZmluZWQgPyBcIj9cIiA6IFwiKlwiLFxuICAgICk7XG4gICAgY29uc3Qgd2Vla0RheSA9IGZhbGxiYWNrKG9wdGlvbnMud2Vla0RheSwgXCI/XCIpO1xuXG4gICAgcmV0dXJuIG5ldyAoY2xhc3MgZXh0ZW5kcyBTY2hlZHVsZSB7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgZXhwcmVzc2lvblN0cmluZzogc3RyaW5nID0gYGNyb24oJHttaW51dGV9ICR7aG91cn0gJHtkYXl9ICR7bW9udGh9ICR7d2Vla0RheX0gJHt5ZWFyfSlgO1xuICAgICAgcHVibGljIF9iaW5kKHNjb3BlOiBDb25zdHJ1Y3QpIHtcbiAgICAgICAgaWYgKCFvcHRpb25zLm1pbnV0ZSkge1xuICAgICAgICAgIC8vIFwiQGF3cy1jZGsvYXdzLWV2ZW50czpzY2hlZHVsZVdpbGxSdW5FdmVyeU1pbnV0ZVwiLFxuICAgICAgICAgIEFubm90YXRpb25zLm9mKHNjb3BlKS5hZGRXYXJuaW5nKFxuICAgICAgICAgICAgXCJjcm9uOiBJZiB5b3UgZG9uJ3QgcGFzcyAnbWludXRlJywgYnkgZGVmYXVsdCB0aGUgZXZlbnQgcnVucyBldmVyeSBtaW51dGUuIFBhc3MgJ21pbnV0ZTogJyonJyBpZiB0aGF0J3Mgd2hhdCB5b3UgaW50ZW5kLCBvciAnbWludXRlOiAwJyB0byBydW4gb25jZSBwZXIgaG91ciBpbnN0ZWFkLlwiLFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG5ldyBMaXRlcmFsU2NoZWR1bGUodGhpcy5leHByZXNzaW9uU3RyaW5nKTtcbiAgICAgIH1cbiAgICB9KSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlIHRoZSBleHByZXNzaW9uIGZvciB0aGlzIHNjaGVkdWxlXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgZXhwcmVzc2lvblN0cmluZzogc3RyaW5nO1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgLyoqXG4gICAqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IF9iaW5kKHNjb3BlOiBDb25zdHJ1Y3QpOiB2b2lkO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgdG8gY29uZmlndXJlIGEgY3JvbiBleHByZXNzaW9uXG4gKlxuICogQWxsIGZpZWxkcyBhcmUgc3RyaW5ncyBzbyB5b3UgY2FuIHVzZSBjb21wbGV4IGV4cHJlc3Npb25zLiBBYnNlbmNlIG9mXG4gKiBhIGZpZWxkIGltcGxpZXMgJyonIG9yICc/Jywgd2hpY2hldmVyIG9uZSBpcyBhcHByb3ByaWF0ZS5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9ldmVudGJyaWRnZS9sYXRlc3QvdXNlcmd1aWRlL3NjaGVkdWxlZC1ldmVudHMuaHRtbCNjcm9uLWV4cHJlc3Npb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3Jvbk9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIG1pbnV0ZSB0byBydW4gdGhpcyBydWxlIGF0XG4gICAqXG4gICAqIEBkZWZhdWx0IC0gRXZlcnkgbWludXRlXG4gICAqL1xuICByZWFkb25seSBtaW51dGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBob3VyIHRvIHJ1biB0aGlzIHJ1bGUgYXRcbiAgICpcbiAgICogQGRlZmF1bHQgLSBFdmVyeSBob3VyXG4gICAqL1xuICByZWFkb25seSBob3VyPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZGF5IG9mIHRoZSBtb250aCB0byBydW4gdGhpcyBydWxlIGF0XG4gICAqXG4gICAqIEBkZWZhdWx0IC0gRXZlcnkgZGF5IG9mIHRoZSBtb250aFxuICAgKi9cbiAgcmVhZG9ubHkgZGF5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbW9udGggdG8gcnVuIHRoaXMgcnVsZSBhdFxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEV2ZXJ5IG1vbnRoXG4gICAqL1xuICByZWFkb25seSBtb250aD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHllYXIgdG8gcnVuIHRoaXMgcnVsZSBhdFxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEV2ZXJ5IHllYXJcbiAgICovXG4gIHJlYWRvbmx5IHllYXI/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBkYXkgb2YgdGhlIHdlZWsgdG8gcnVuIHRoaXMgcnVsZSBhdFxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEFueSBkYXkgb2YgdGhlIHdlZWtcbiAgICovXG4gIHJlYWRvbmx5IHdlZWtEYXk/OiBzdHJpbmc7XG59XG5cbmNsYXNzIExpdGVyYWxTY2hlZHVsZSBleHRlbmRzIFNjaGVkdWxlIHtcbiAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IGV4cHJlc3Npb25TdHJpbmc6IHN0cmluZykge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBwdWJsaWMgX2JpbmQoKSB7fVxufVxuXG5mdW5jdGlvbiBmYWxsYmFjazxUPih4OiBUIHwgdW5kZWZpbmVkLCBkZWY6IFQpOiBUIHtcbiAgcmV0dXJuIHggPz8gZGVmO1xufVxuXG4vKipcbiAqIFJldHVybiB0aGUgcmF0ZSBpZiB0aGUgcmF0ZSBpcyB3aG9sZSBudW1iZXJcbiAqL1xuZnVuY3Rpb24gbWF5YmVSYXRlKGludGVydmFsOiBudW1iZXIsIHNpbmd1bGFyOiBzdHJpbmcpIHtcbiAgaWYgKGludGVydmFsID09PSAwIHx8ICFOdW1iZXIuaXNJbnRlZ2VyKGludGVydmFsKSkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgcmV0dXJuIG1ha2VSYXRlKGludGVydmFsLCBzaW5ndWxhcik7XG59XG5cbi8qKlxuICogUmV0dXJuICdyYXRlKCR7aW50ZXJ2YWx9ICR7c2luZ3VsYXJ9KHMpKWAgZm9yIHRoZSBpbnRlcnZhbFxuICovXG5mdW5jdGlvbiBtYWtlUmF0ZShpbnRlcnZhbDogbnVtYmVyLCBzaW5ndWxhcjogc3RyaW5nKSB7XG4gIHJldHVybiBpbnRlcnZhbCA9PT0gMVxuICAgID8gYHJhdGUoMSAke3Npbmd1bGFyfSlgXG4gICAgOiBgcmF0ZSgke2ludGVydmFsfSAke3Npbmd1bGFyfXMpYDtcbn1cbiJdfQ==
@@ -73,5 +73,5 @@ class TopicGrants {
73
73
  }
74
74
  exports.TopicGrants = TopicGrants;
75
75
  _a = JSII_RTTI_SYMBOL_1;
76
- TopicGrants[_a] = { fqn: "terraconstructs.aws.notify.TopicGrants", version: "0.2.4" };
76
+ TopicGrants[_a] = { fqn: "terraconstructs.aws.notify.TopicGrants", version: "0.2.6" };
77
77
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25zLWdyYW50cy5nZW5lcmF0ZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXdzL25vdGlmeS9zbnMtZ3JhbnRzLmdlbmVyYXRlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUVBLDhCQUE4QjtBQXFCOUI7O0dBRUc7QUFDSCxNQUFhLFdBQVc7SUFDdEI7O09BRUc7SUFDSSxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQW9CO1FBQzFDLHVFQUF1RTtRQUN2RSxNQUFNLGlCQUFpQixHQUFHLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUM7WUFDNUUsQ0FBQyxDQUFFLFFBQThDO1lBQ2pELENBQUMsQ0FBQyxTQUFTLENBQUM7UUFFZCxNQUFNLGNBQWMsR0FBRyxHQUFHLENBQUMsa0JBQWtCLENBQUMsb0JBQW9CLENBQUMsUUFBUSxDQUFDO1lBQzFFLENBQUMsQ0FBRSxRQUFtRDtZQUN0RCxDQUFDLENBQUMsU0FBUyxDQUFDO1FBRWQsT0FBTyxJQUFJLFdBQVcsQ0FBQztZQUNyQixRQUFRO1lBQ1IsaUJBQWlCO1lBQ2pCLGNBQWM7U0FDZixDQUFDLENBQUM7SUFDTCxDQUFDO0lBTUQsWUFBb0IsS0FBdUI7UUFDekMsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDO1FBQy9CLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUMsaUJBQWlCLENBQUM7UUFDakQsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUMsY0FBYyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7T0FFRztJQUNJLE9BQU8sQ0FBQyxPQUF1QjtRQUNwQyxNQUFNLE9BQU8sR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRWhDLE1BQU0sWUFBWSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUU5QyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsY0FBYztZQUNoQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQztnQkFDakMsT0FBTztnQkFDUCxPQUFPO2dCQUNQLFlBQVk7Z0JBQ1osUUFBUSxFQUFFLElBQUksQ0FBQyxjQUFjO2FBQzlCLENBQUM7WUFDSixDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUM7Z0JBQ3ZCLE9BQU87Z0JBQ1AsT0FBTztnQkFDUCxZQUFZO2FBQ2IsQ0FBQyxDQUFDO1FBRVAsSUFBSSxDQUFDLGlCQUFpQixFQUFFLFVBQVUsQ0FDaEMsT0FBTyxFQUNQLGFBQWEsRUFDYixzQkFBc0IsQ0FDdkIsQ0FBQztRQUVGLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7T0FFRztJQUNJLFNBQVMsQ0FBQyxPQUF1QjtRQUN0QyxNQUFNLE9BQU8sR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ2xDLE1BQU0sWUFBWSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUU5QyxPQUFPLElBQUksQ0FBQyxjQUFjO1lBQ3hCLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLHdCQUF3QixDQUFDO2dCQUNqQyxPQUFPO2dCQUNQLE9BQU87Z0JBQ1AsWUFBWTtnQkFDWixRQUFRLEVBQUUsSUFBSSxDQUFDLGNBQWM7YUFDOUIsQ0FBQztZQUNKLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQztnQkFDdkIsT0FBTztnQkFDUCxPQUFPO2dCQUNQLFlBQVk7YUFDYixDQUFDLENBQUM7SUFDVCxDQUFDOztBQWhGSCxrQ0FpRkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBwcmV0dGllci9wcmV0dGllcixtYXgtbGVuICovXG5pbXBvcnQgKiBhcyBzbnMgZnJvbSAnLi8nO1xuaW1wb3J0ICogYXMgaWFtIGZyb20gJy4uL2lhbSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVG9waWNHcmFudHNQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgU1FTIHRvcGljIGludGVyZmFjZSAoSVRvcGljKSB0aGlzIGhlbHBlciB3aWxsIG9wZXJhdGUgb24uXG4gICAqL1xuICByZWFkb25seSByZXNvdXJjZTogc25zLklUb3BpYztcblxuICAvKipcbiAgICogSWYgdGhlIHRvcGljIGlzIGFuIGVuY3J5cHRlZCByZXNvdXJjZSwgcHJvdmlkZXMgYWNjZXNzIHRvIGdyYW50IEtNUyBrZXkgcGVybWlzc2lvbnMuXG4gICAqIFR5cGljYWxseSBwcmVzZW50IGlmIHRoZSByZXNvdXJjZSBpbXBsZW1lbnRzIGlhbS5JRW5jcnlwdGVkUmVzb3VyY2UuXG4gICAqL1xuICByZWFkb25seSBlbmNyeXB0ZWRSZXNvdXJjZT86IGlhbS5JRW5jcnlwdGVkUmVzb3VyY2U7XG5cbiAgLyoqXG4gICAqIElmIHRoZSB0b3BpYyBzdXBwb3J0cyBhIHJlc291cmNlIHBvbGljeSwgdGhpcyBlbmFibGVzIGFkZFRvUHJpbmNpcGFsT3JSZXNvdXJjZSBncmFudHMuXG4gICAqIFR5cGljYWxseSBwcmVzZW50IGlmIHRoZSByZXNvdXJjZSBpbXBsZW1lbnRzIGlhbS5JUmVzb3VyY2VXaXRoUG9saWN5LlxuICAgKi9cbiAgcmVhZG9ubHkgcG9saWN5UmVzb3VyY2U/OiBpYW0uSUF3c0NvbnN0cnVjdFdpdGhQb2xpY3k7XG59XG5cbi8qKlxuICogQ29sbGVjdGlvbiBvZiBncmFudCBtZXRob2RzIGZvciBhIElUb3BpY1xuICovXG5leHBvcnQgY2xhc3MgVG9waWNHcmFudHMge1xuICAvKipcbiAgICogQ3JlYXRlcyBncmFudHMgZm9yIFRvcGljR3JhbnRzXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21Ub3BpYyhyZXNvdXJjZTogc25zLklUb3BpYyk6IFRvcGljR3JhbnRzIHtcbiAgICAvLyBVc2UgSUFNIGhlbHBlciB0eXBlLWd1YXJkcyB0byBkaXNjb3ZlciBjYXBhYmlsaXRpZXMgb24gdGhlIHJlc291cmNlLlxuICAgIGNvbnN0IGVuY3J5cHRlZFJlc291cmNlID0gaWFtLkdyYW50YWJsZVJlc291cmNlcy5pc0VuY3J5cHRlZFJlc291cmNlKHJlc291cmNlKVxuICAgICAgPyAocmVzb3VyY2UgYXMgdW5rbm93biBhcyBpYW0uSUVuY3J5cHRlZFJlc291cmNlKVxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICBjb25zdCBwb2xpY3lSZXNvdXJjZSA9IGlhbS5HcmFudGFibGVSZXNvdXJjZXMuaXNSZXNvdXJjZVdpdGhQb2xpY3kocmVzb3VyY2UpXG4gICAgICA/IChyZXNvdXJjZSBhcyB1bmtub3duIGFzIGlhbS5JQXdzQ29uc3RydWN0V2l0aFBvbGljeSlcbiAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgcmV0dXJuIG5ldyBUb3BpY0dyYW50cyh7XG4gICAgICByZXNvdXJjZSxcbiAgICAgIGVuY3J5cHRlZFJlc291cmNlLFxuICAgICAgcG9saWN5UmVzb3VyY2UsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgcmVhZG9ubHkgcmVzb3VyY2U6IHNucy5JVG9waWM7XG4gIHByaXZhdGUgcmVhZG9ubHkgZW5jcnlwdGVkUmVzb3VyY2U/OiBpYW0uSUVuY3J5cHRlZFJlc291cmNlO1xuICBwcml2YXRlIHJlYWRvbmx5IHBvbGljeVJlc291cmNlPzogaWFtLklBd3NDb25zdHJ1Y3RXaXRoUG9saWN5O1xuXG4gIHByaXZhdGUgY29uc3RydWN0b3IocHJvcHM6IFRvcGljR3JhbnRzUHJvcHMpIHtcbiAgICB0aGlzLnJlc291cmNlID0gcHJvcHMucmVzb3VyY2U7XG4gICAgdGhpcy5lbmNyeXB0ZWRSZXNvdXJjZSA9IHByb3BzLmVuY3J5cHRlZFJlc291cmNlO1xuICAgIHRoaXMucG9saWN5UmVzb3VyY2UgPSBwcm9wcy5wb2xpY3lSZXNvdXJjZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudCB0b3BpYyBwdWJsaXNoaW5nIHBlcm1pc3Npb25zIHRvIHRoZSBnaXZlbiBpZGVudGl0eVxuICAgKi9cbiAgcHVibGljIHB1Ymxpc2goZ3JhbnRlZTogaWFtLklHcmFudGFibGUpOiBpYW0uR3JhbnQge1xuICAgIGNvbnN0IGFjdGlvbnMgPSBbJ3NuczpQdWJsaXNoJ107XG5cbiAgICBjb25zdCByZXNvdXJjZUFybnMgPSBbdGhpcy5yZXNvdXJjZS50b3BpY0Fybl07XG5cbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLnBvbGljeVJlc291cmNlXG4gICAgICA/IGlhbS5HcmFudC5hZGRUb1ByaW5jaXBhbE9yUmVzb3VyY2Uoe1xuICAgICAgICAgIGFjdGlvbnMsXG4gICAgICAgICAgZ3JhbnRlZSxcbiAgICAgICAgICByZXNvdXJjZUFybnMsXG4gICAgICAgICAgcmVzb3VyY2U6IHRoaXMucG9saWN5UmVzb3VyY2UsXG4gICAgICAgIH0pXG4gICAgICA6IGlhbS5HcmFudC5hZGRUb1ByaW5jaXBhbCh7XG4gICAgICAgICAgYWN0aW9ucyxcbiAgICAgICAgICBncmFudGVlLFxuICAgICAgICAgIHJlc291cmNlQXJucyxcbiAgICAgICAgfSk7XG5cbiAgICB0aGlzLmVuY3J5cHRlZFJlc291cmNlPy5ncmFudE9uS2V5KFxuICAgICAgZ3JhbnRlZSxcbiAgICAgICdrbXM6RGVjcnlwdCcsXG4gICAgICAna21zOkdlbmVyYXRlRGF0YUtleSonXG4gICAgKTtcblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnQgdG9waWMgc3Vic2NyaWJpbmcgcGVybWlzc2lvbnMgdG8gdGhlIGdpdmVuIGlkZW50aXR5XG4gICAqL1xuICBwdWJsaWMgc3Vic2NyaWJlKGdyYW50ZWU6IGlhbS5JR3JhbnRhYmxlKTogaWFtLkdyYW50IHtcbiAgICBjb25zdCBhY3Rpb25zID0gWydzbnM6U3Vic2NyaWJlJ107XG4gICAgY29uc3QgcmVzb3VyY2VBcm5zID0gW3RoaXMucmVzb3VyY2UudG9waWNBcm5dO1xuXG4gICAgcmV0dXJuIHRoaXMucG9saWN5UmVzb3VyY2VcbiAgICAgID8gaWFtLkdyYW50LmFkZFRvUHJpbmNpcGFsT3JSZXNvdXJjZSh7XG4gICAgICAgICAgYWN0aW9ucyxcbiAgICAgICAgICBncmFudGVlLFxuICAgICAgICAgIHJlc291cmNlQXJucyxcbiAgICAgICAgICByZXNvdXJjZTogdGhpcy5wb2xpY3lSZXNvdXJjZSxcbiAgICAgICAgfSlcbiAgICAgIDogaWFtLkdyYW50LmFkZFRvUHJpbmNpcGFsKHtcbiAgICAgICAgICBhY3Rpb25zLFxuICAgICAgICAgIGdyYW50ZWUsXG4gICAgICAgICAgcmVzb3VyY2VBcm5zLFxuICAgICAgICB9KTtcbiAgfVxufVxuIl19
@@ -135,5 +135,5 @@ class QueueGrants {
135
135
  }
136
136
  exports.QueueGrants = QueueGrants;
137
137
  _a = JSII_RTTI_SYMBOL_1;
138
- QueueGrants[_a] = { fqn: "terraconstructs.aws.notify.QueueGrants", version: "0.2.4" };
138
+ QueueGrants[_a] = { fqn: "terraconstructs.aws.notify.QueueGrants", version: "0.2.6" };
139
139
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3FzLWdyYW50cy5nZW5lcmF0ZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXdzL25vdGlmeS9zcXMtZ3JhbnRzLmdlbmVyYXRlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUVBLDhCQUE4QjtBQXFCOUI7O0dBRUc7QUFDSCxNQUFhLFdBQVc7SUFDdEI7O09BRUc7SUFDSSxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQW9CO1FBQzFDLHVFQUF1RTtRQUN2RSxNQUFNLGlCQUFpQixHQUFHLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUM7WUFDNUUsQ0FBQyxDQUFFLFFBQThDO1lBQ2pELENBQUMsQ0FBQyxTQUFTLENBQUM7UUFFZCxNQUFNLGNBQWMsR0FBRyxHQUFHLENBQUMsa0JBQWtCLENBQUMsb0JBQW9CLENBQUMsUUFBUSxDQUFDO1lBQzFFLENBQUMsQ0FBRSxRQUFtRDtZQUN0RCxDQUFDLENBQUMsU0FBUyxDQUFDO1FBRWQsT0FBTyxJQUFJLFdBQVcsQ0FBQztZQUNyQixRQUFRO1lBQ1IsaUJBQWlCO1lBQ2pCLGNBQWM7U0FDZixDQUFDLENBQUM7SUFDTCxDQUFDO0lBTUQsWUFBb0IsS0FBdUI7UUFDekMsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDO1FBQy9CLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUMsaUJBQWlCLENBQUM7UUFDakQsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUMsY0FBYyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7OztPQWdCRztJQUNJLGVBQWUsQ0FBQyxPQUF1QjtRQUM1QyxNQUFNLE9BQU8sR0FBRztZQUNkLG9CQUFvQjtZQUNwQiw2QkFBNkI7WUFDN0IsaUJBQWlCO1lBQ2pCLG1CQUFtQjtZQUNuQix3QkFBd0I7U0FDekIsQ0FBQztRQUVGLE1BQU0sWUFBWSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUU5QyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsY0FBYztZQUNoQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQztnQkFDakMsT0FBTztnQkFDUCxPQUFPO2dCQUNQLFlBQVk7Z0JBQ1osUUFBUSxFQUFFLElBQUksQ0FBQyxjQUFjO2FBQzlCLENBQUM7WUFDSixDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUM7Z0JBQ3ZCLE9BQU87Z0JBQ1AsT0FBTztnQkFDUCxZQUFZO2FBQ2IsQ0FBQyxDQUFDO1FBRVAsZ0VBQWdFO1FBQ2hFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxVQUFVLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBRTNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FpQkc7SUFDSSxZQUFZLENBQUMsT0FBdUI7UUFDekMsTUFBTSxPQUFPLEdBQUc7WUFDZCxpQkFBaUI7WUFDakIsd0JBQXdCO1lBQ3hCLGlCQUFpQjtTQUNsQixDQUFDO1FBRUYsTUFBTSxZQUFZLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTlDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxjQUFjO1lBQ2hDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLHdCQUF3QixDQUFDO2dCQUNqQyxPQUFPO2dCQUNQLE9BQU87Z0JBQ1AsWUFBWTtnQkFDWixRQUFRLEVBQUUsSUFBSSxDQUFDLGNBQWM7YUFDOUIsQ0FBQztZQUNKLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQztnQkFDdkIsT0FBTztnQkFDUCxPQUFPO2dCQUNQLFlBQVk7YUFDYixDQUFDLENBQUM7UUFFUCx5RUFBeUU7UUFDekUsSUFBSSxDQUFDLGlCQUFpQixFQUFFLFVBQVUsQ0FDaEMsT0FBTyxFQUNQLGFBQWEsRUFDYixhQUFhLEVBQ2IsZ0JBQWdCLEVBQ2hCLHNCQUFzQixDQUN2QixDQUFDO1FBRUYsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLE9BQXVCO1FBQ2xDLE1BQU0sT0FBTyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsd0JBQXdCLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztRQUNoRixNQUFNLFlBQVksR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFOUMsT0FBTyxJQUFJLENBQUMsY0FBYztZQUN4QixDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQztnQkFDakMsT0FBTztnQkFDUCxPQUFPO2dCQUNQLFlBQVk7Z0JBQ1osUUFBUSxFQUFFLElBQUksQ0FBQyxjQUFjO2FBQzlCLENBQUM7WUFDSixDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUM7Z0JBQ3ZCLE9BQU87Z0JBQ1AsT0FBTztnQkFDUCxZQUFZO2FBQ04sQ0FBQyxDQUFDO0lBQ2hCLENBQUM7O0FBckpILGtDQXNKQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIHByZXR0aWVyL3ByZXR0aWVyLG1heC1sZW4gKi9cbmltcG9ydCAqIGFzIHNxcyBmcm9tICcuLyc7XG5pbXBvcnQgKiBhcyBpYW0gZnJvbSAnLi4vaWFtJztcblxuZXhwb3J0IGludGVyZmFjZSBRdWV1ZUdyYW50c1Byb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBTUVMgcXVldWUgaW50ZXJmYWNlIChJUXVldWUpIHRoaXMgaGVscGVyIHdpbGwgb3BlcmF0ZSBvbi5cbiAgICovXG4gIHJlYWRvbmx5IHJlc291cmNlOiBzcXMuSVF1ZXVlO1xuXG4gIC8qKlxuICAgKiBJZiB0aGUgcXVldWUgaXMgYW4gZW5jcnlwdGVkIHJlc291cmNlLCBwcm92aWRlcyBhY2Nlc3MgdG8gZ3JhbnQgS01TIGtleSBwZXJtaXNzaW9ucy5cbiAgICogVHlwaWNhbGx5IHByZXNlbnQgaWYgdGhlIHJlc291cmNlIGltcGxlbWVudHMgaWFtLklFbmNyeXB0ZWRSZXNvdXJjZS5cbiAgICovXG4gIHJlYWRvbmx5IGVuY3J5cHRlZFJlc291cmNlPzogaWFtLklFbmNyeXB0ZWRSZXNvdXJjZTtcblxuICAvKipcbiAgICogSWYgdGhlIHF1ZXVlIHN1cHBvcnRzIGEgcmVzb3VyY2UgcG9saWN5LCB0aGlzIGVuYWJsZXMgYWRkVG9QcmluY2lwYWxPclJlc291cmNlIGdyYW50cy5cbiAgICogVHlwaWNhbGx5IHByZXNlbnQgaWYgdGhlIHJlc291cmNlIGltcGxlbWVudHMgaWFtLklSZXNvdXJjZVdpdGhQb2xpY3kuXG4gICAqL1xuICByZWFkb25seSBwb2xpY3lSZXNvdXJjZT86IGlhbS5JQXdzQ29uc3RydWN0V2l0aFBvbGljeTtcbn1cblxuLyoqXG4gKiBDb2xsZWN0aW9uIG9mIGdyYW50IG1ldGhvZHMgZm9yIGEgSVF1ZXVlXG4gKi9cbmV4cG9ydCBjbGFzcyBRdWV1ZUdyYW50cyB7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGdyYW50cyBmb3IgUXVldWVHcmFudHNcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbVF1ZXVlKHJlc291cmNlOiBzcXMuSVF1ZXVlKTogUXVldWVHcmFudHMge1xuICAgIC8vIFVzZSBJQU0gaGVscGVyIHR5cGUtZ3VhcmRzIHRvIGRpc2NvdmVyIGNhcGFiaWxpdGllcyBvbiB0aGUgcmVzb3VyY2UuXG4gICAgY29uc3QgZW5jcnlwdGVkUmVzb3VyY2UgPSBpYW0uR3JhbnRhYmxlUmVzb3VyY2VzLmlzRW5jcnlwdGVkUmVzb3VyY2UocmVzb3VyY2UpXG4gICAgICA/IChyZXNvdXJjZSBhcyB1bmtub3duIGFzIGlhbS5JRW5jcnlwdGVkUmVzb3VyY2UpXG4gICAgICA6IHVuZGVmaW5lZDtcblxuICAgIGNvbnN0IHBvbGljeVJlc291cmNlID0gaWFtLkdyYW50YWJsZVJlc291cmNlcy5pc1Jlc291cmNlV2l0aFBvbGljeShyZXNvdXJjZSlcbiAgICAgID8gKHJlc291cmNlIGFzIHVua25vd24gYXMgaWFtLklBd3NDb25zdHJ1Y3RXaXRoUG9saWN5KVxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICByZXR1cm4gbmV3IFF1ZXVlR3JhbnRzKHtcbiAgICAgIHJlc291cmNlLFxuICAgICAgZW5jcnlwdGVkUmVzb3VyY2UsXG4gICAgICBwb2xpY3lSZXNvdXJjZSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyByZWFkb25seSByZXNvdXJjZTogc3FzLklRdWV1ZTtcbiAgcHJpdmF0ZSByZWFkb25seSBlbmNyeXB0ZWRSZXNvdXJjZT86IGlhbS5JRW5jcnlwdGVkUmVzb3VyY2U7XG4gIHByaXZhdGUgcmVhZG9ubHkgcG9saWN5UmVzb3VyY2U/OiBpYW0uSUF3c0NvbnN0cnVjdFdpdGhQb2xpY3k7XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3Rvcihwcm9wczogUXVldWVHcmFudHNQcm9wcykge1xuICAgIHRoaXMucmVzb3VyY2UgPSBwcm9wcy5yZXNvdXJjZTtcbiAgICB0aGlzLmVuY3J5cHRlZFJlc291cmNlID0gcHJvcHMuZW5jcnlwdGVkUmVzb3VyY2U7XG4gICAgdGhpcy5wb2xpY3lSZXNvdXJjZSA9IHByb3BzLnBvbGljeVJlc291cmNlO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50IHBlcm1pc3Npb25zIHRvIGNvbnN1bWUgbWVzc2FnZXMgZnJvbSBhIHF1ZXVlXG4gICAqXG4gICAqIFRoaXMgd2lsbCBncmFudCB0aGUgZm9sbG93aW5nIHBlcm1pc3Npb25zOlxuICAgKlxuICAgKiAgIC0gc3FzOkNoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5XG4gICAqICAgLSBzcXM6RGVsZXRlTWVzc2FnZVxuICAgKiAgIC0gc3FzOlJlY2VpdmVNZXNzYWdlXG4gICAqICAgLSBzcXM6R2V0UXVldWVBdHRyaWJ1dGVzXG4gICAqICAgLSBzcXM6R2V0UXVldWVVcmxcbiAgICpcbiAgICogSWYgZW5jcnlwdGlvbiBpcyB1c2VkLCBwZXJtaXNzaW9uIHRvIHVzZSB0aGUga2V5IHRvIGRlY3J5cHQgdGhlIGNvbnRlbnRzIG9mIHRoZSBxdWV1ZSB3aWxsIGFsc28gYmUgZ3JhbnRlZCB0byB0aGUgc2FtZSBwcmluY2lwYWwuXG4gICAqXG4gICAqIFRoaXMgd2lsbCBncmFudCB0aGUgZm9sbG93aW5nIEtNUyBwZXJtaXNzaW9uczpcbiAgICpcbiAgICogICAtIGttczpEZWNyeXB0XG4gICAqL1xuICBwdWJsaWMgY29uc3VtZU1lc3NhZ2VzKGdyYW50ZWU6IGlhbS5JR3JhbnRhYmxlKTogaWFtLkdyYW50IHtcbiAgICBjb25zdCBhY3Rpb25zID0gW1xuICAgICAgJ3NxczpSZWNlaXZlTWVzc2FnZScsXG4gICAgICAnc3FzOkNoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5JyxcbiAgICAgICdzcXM6R2V0UXVldWVVcmwnLFxuICAgICAgJ3NxczpEZWxldGVNZXNzYWdlJyxcbiAgICAgICdzcXM6R2V0UXVldWVBdHRyaWJ1dGVzJyxcbiAgICBdO1xuXG4gICAgY29uc3QgcmVzb3VyY2VBcm5zID0gW3RoaXMucmVzb3VyY2UucXVldWVBcm5dO1xuXG4gICAgY29uc3QgcmVzdWx0ID0gdGhpcy5wb2xpY3lSZXNvdXJjZVxuICAgICAgPyBpYW0uR3JhbnQuYWRkVG9QcmluY2lwYWxPclJlc291cmNlKHtcbiAgICAgICAgICBhY3Rpb25zLFxuICAgICAgICAgIGdyYW50ZWUsXG4gICAgICAgICAgcmVzb3VyY2VBcm5zLFxuICAgICAgICAgIHJlc291cmNlOiB0aGlzLnBvbGljeVJlc291cmNlLFxuICAgICAgICB9KVxuICAgICAgOiBpYW0uR3JhbnQuYWRkVG9QcmluY2lwYWwoe1xuICAgICAgICAgIGFjdGlvbnMsXG4gICAgICAgICAgZ3JhbnRlZSxcbiAgICAgICAgICByZXNvdXJjZUFybnMsXG4gICAgICAgIH0pO1xuXG4gICAgLy8gSWYgcXVldWUgaXMgZW5jcnlwdGVkLCBhbGxvdyBkZWNyeXB0IGZvciBtZXNzYWdlIGNvbnN1bXB0aW9uLlxuICAgIHRoaXMuZW5jcnlwdGVkUmVzb3VyY2U/LmdyYW50T25LZXkoZ3JhbnRlZSwgJ2ttczpEZWNyeXB0Jyk7XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50IGFjY2VzcyB0byBzZW5kIG1lc3NhZ2VzIHRvIGEgcXVldWUgdG8gdGhlIGdpdmVuIGlkZW50aXR5LlxuICAgKlxuICAgKiBUaGlzIHdpbGwgZ3JhbnQgdGhlIGZvbGxvd2luZyBwZXJtaXNzaW9uczpcbiAgICpcbiAgICogIC0gc3FzOlNlbmRNZXNzYWdlXG4gICAqICAtIHNxczpHZXRRdWV1ZUF0dHJpYnV0ZXNcbiAgICogIC0gc3FzOkdldFF1ZXVlVXJsXG4gICAqXG4gICAqIElmIGVuY3J5cHRpb24gaXMgdXNlZCwgcGVybWlzc2lvbiB0byB1c2UgdGhlIGtleSB0byBlbmNyeXB0L2RlY3J5cHQgdGhlIGNvbnRlbnRzIG9mIHRoZSBxdWV1ZSB3aWxsIGFsc28gYmUgZ3JhbnRlZCB0byB0aGUgc2FtZSBwcmluY2lwYWwuXG4gICAqXG4gICAqIFRoaXMgd2lsbCBncmFudCB0aGUgZm9sbG93aW5nIEtNUyBwZXJtaXNzaW9uczpcbiAgICpcbiAgICogIC0ga21zOkRlY3J5cHRcbiAgICogIC0ga21zOkVuY3J5cHRcbiAgICogIC0ga21zOlJlRW5jcnlwdCpcbiAgICogIC0ga21zOkdlbmVyYXRlRGF0YUtleSpcbiAgICovXG4gIHB1YmxpYyBzZW5kTWVzc2FnZXMoZ3JhbnRlZTogaWFtLklHcmFudGFibGUpOiBpYW0uR3JhbnQge1xuICAgIGNvbnN0IGFjdGlvbnMgPSBbXG4gICAgICAnc3FzOlNlbmRNZXNzYWdlJyxcbiAgICAgICdzcXM6R2V0UXVldWVBdHRyaWJ1dGVzJyxcbiAgICAgICdzcXM6R2V0UXVldWVVcmwnLFxuICAgIF07XG5cbiAgICBjb25zdCByZXNvdXJjZUFybnMgPSBbdGhpcy5yZXNvdXJjZS5xdWV1ZUFybl07XG5cbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLnBvbGljeVJlc291cmNlXG4gICAgICA/IGlhbS5HcmFudC5hZGRUb1ByaW5jaXBhbE9yUmVzb3VyY2Uoe1xuICAgICAgICAgIGFjdGlvbnMsXG4gICAgICAgICAgZ3JhbnRlZSxcbiAgICAgICAgICByZXNvdXJjZUFybnMsXG4gICAgICAgICAgcmVzb3VyY2U6IHRoaXMucG9saWN5UmVzb3VyY2UsXG4gICAgICAgIH0pXG4gICAgICA6IGlhbS5HcmFudC5hZGRUb1ByaW5jaXBhbCh7XG4gICAgICAgICAgYWN0aW9ucyxcbiAgICAgICAgICBncmFudGVlLFxuICAgICAgICAgIHJlc291cmNlQXJucyxcbiAgICAgICAgfSk7XG5cbiAgICAvLyBJZiBxdWV1ZSBpcyBlbmNyeXB0ZWQsIGFsbG93IHRoZSBuZWNlc3NhcnkgS01TIHVzYWdlIHRvIHNlbmQgbWVzc2FnZXMuXG4gICAgdGhpcy5lbmNyeXB0ZWRSZXNvdXJjZT8uZ3JhbnRPbktleShcbiAgICAgIGdyYW50ZWUsXG4gICAgICAna21zOkRlY3J5cHQnLFxuICAgICAgJ2ttczpFbmNyeXB0JyxcbiAgICAgICdrbXM6UmVFbmNyeXB0KicsXG4gICAgICAna21zOkdlbmVyYXRlRGF0YUtleSonLFxuICAgICk7XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwdXJnZSBwZXJtaXNzaW9uc1xuICAgKi9cbiAgcHVibGljIHB1cmdlKGdyYW50ZWU6IGlhbS5JR3JhbnRhYmxlKTogaWFtLkdyYW50IHtcbiAgICBjb25zdCBhY3Rpb25zID0gWydzcXM6UHVyZ2VRdWV1ZScsICdzcXM6R2V0UXVldWVBdHRyaWJ1dGVzJywgJ3NxczpHZXRRdWV1ZVVybCddO1xuICAgIGNvbnN0IHJlc291cmNlQXJucyA9IFt0aGlzLnJlc291cmNlLnF1ZXVlQXJuXTtcblxuICAgIHJldHVybiB0aGlzLnBvbGljeVJlc291cmNlXG4gICAgICA/IGlhbS5HcmFudC5hZGRUb1ByaW5jaXBhbE9yUmVzb3VyY2Uoe1xuICAgICAgICAgIGFjdGlvbnMsXG4gICAgICAgICAgZ3JhbnRlZSxcbiAgICAgICAgICByZXNvdXJjZUFybnMsXG4gICAgICAgICAgcmVzb3VyY2U6IHRoaXMucG9saWN5UmVzb3VyY2UsXG4gICAgICAgIH0pXG4gICAgICA6IGlhbS5HcmFudC5hZGRUb1ByaW5jaXBhbCh7XG4gICAgICAgICAgYWN0aW9ucyxcbiAgICAgICAgICBncmFudGVlLFxuICAgICAgICAgIHJlc291cmNlQXJucyxcbiAgICAgICAgICAgICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -100,5 +100,5 @@ class SubscriptionFilter {
100
100
  }
101
101
  exports.SubscriptionFilter = SubscriptionFilter;
102
102
  _a = JSII_RTTI_SYMBOL_1;
103
- SubscriptionFilter[_a] = { fqn: "terraconstructs.aws.notify.SubscriptionFilter", version: "0.2.4" };
103
+ SubscriptionFilter[_a] = { fqn: "terraconstructs.aws.notify.SubscriptionFilter", version: "0.2.6" };
104
104
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0aW9uLWZpbHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hd3Mvbm90aWZ5L3N1YnNjcmlwdGlvbi1maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx1SUFBdUk7QUFFdkkseUNBQXVEO0FBNEh2RDs7R0FFRztBQUNILE1BQWEsa0JBQWtCO0lBQzdCOztPQUVHO0lBQ0ksTUFBTSxDQUFDLFlBQVksQ0FBQyxnQkFBa0M7UUFDM0QsTUFBTSxVQUFVLEdBQUcsSUFBSSxLQUFLLEVBQU8sQ0FBQztRQUVwQyxJQUFJLGdCQUFnQixDQUFDLFNBQVMsSUFBSSxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUM3RCxNQUFNLElBQUksZ0NBQXVCLENBQy9CLDJEQUEyRCxDQUM1RCxDQUFDO1FBQ0osQ0FBQztRQUNELElBQUksZ0JBQWdCLENBQUMsU0FBUyxJQUFJLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQzVELE1BQU0sSUFBSSxnQ0FBdUIsQ0FDL0IsMERBQTBELENBQzNELENBQUM7UUFDSixDQUFDO1FBQ0QsTUFBTSxTQUFTLEdBQUcsZ0JBQWdCLENBQUMsU0FBUyxJQUFJLGdCQUFnQixDQUFDLFNBQVMsQ0FBQztRQUMzRSxNQUFNLFFBQVEsR0FBRyxnQkFBZ0IsQ0FBQyxRQUFRLElBQUksZ0JBQWdCLENBQUMsU0FBUyxDQUFDO1FBRXpFLElBQUksU0FBUyxFQUFFLENBQUM7WUFDZCxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUM7UUFDaEMsQ0FBQztRQUVELElBQUksUUFBUSxFQUFFLENBQUM7WUFDYixVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDaEQsQ0FBQztRQUVELElBQUksZ0JBQWdCLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDbkMsVUFBVSxDQUFDLElBQUksQ0FDYixHQUFHLGdC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Q0FBQztRQUNMLENBQUM7UUFFRCxPQUFPLElBQUksa0JBQWtCLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLFlBQVk7UUFDeEIsT0FBTyxJQUFJLGtCQUFrQixDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRDs7O09BR0c7SUFDSCxZQUE0QixhQUFvQixFQUFFO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7SUFBRyxDQUFDOztBQW5IeEQsZ0RBb0hDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvNzQ1MjQ2MjU1MGExMDBmNWJkMmRjYWI2ZjQ5NWM5ZjY4YmYwZGI0YS9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3Mtc25zL2xpYi9zdWJzY3JpcHRpb24tZmlsdGVyLnRzXG5cbmltcG9ydCB7IFVuc2NvcGVkVmFsaWRhdGlvbkVycm9yIH0gZnJvbSBcIi4uLy4uL2Vycm9yc1wiO1xuXG4vKipcbiAqIENvbmRpdGlvbnMgdGhhdCBjYW4gYmUgYXBwbGllZCB0byBzdHJpbmcgYXR0cmlidXRlcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdHJpbmdDb25kaXRpb25zIHtcbiAgLyoqXG4gICAqIE1hdGNoIG9uZSBvciBtb3JlIHZhbHVlcy5cbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgdXNlIGBhbGxvd2xpc3RgXG4gICAqIEBkZWZhdWx0IC0gTm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgd2hpdGVsaXN0Pzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIE1hdGNoIGFueSB2YWx1ZSB0aGF0IGRvZXNuJ3QgaW5jbHVkZSBhbnkgb2YgdGhlIHNwZWNpZmllZCB2YWx1ZXMuXG4gICAqIEBkZXByZWNhdGVkIHVzZSBgZGVueWxpc3RgXG4gICAqIEBkZWZhdWx0IC0gTm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgYmxhY2tsaXN0Pzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIE1hdGNoIG9uZSBvciBtb3JlIHZhbHVlcy5cbiAgICogQGRlZmF1bHQgLSBOb25lXG4gICAqL1xuICByZWFkb25seSBhbGxvd2xpc3Q/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogTWF0Y2ggYW55IHZhbHVlIHRoYXQgZG9lc24ndCBpbmNsdWRlIGFueSBvZiB0aGUgc3BlY2lmaWVkIHZhbHVlcy5cbiAgICogQGRlZmF1bHQgLSBOb25lXG4gICAqL1xuICByZWFkb25seSBkZW55bGlzdD86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBNYXRjaGVzIHZhbHVlcyB0aGF0IGJlZ2lucyB3aXRoIHRoZSBzcGVjaWZpZWQgcHJlZml4ZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgbWF0Y2hQcmVmaXhlcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBNYXRjaGVzIHZhbHVlcyB0aGF0IGVuZCB3aXRoIHRoZSBzcGVjaWZpZWQgc3VmZml4ZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgbWF0Y2hTdWZmaXhlcz86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIEJldHdlZW4gY29uZGl0aW9uIGZvciBhIG51bWVyaWMgYXR0cmlidXRlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJldHdlZW5Db25kaXRpb24ge1xuICAvKipcbiAgICogVGhlIHN0YXJ0IHZhbHVlLlxuICAgKi9cbiAgcmVhZG9ubHkgc3RhcnQ6IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIHN0b3AgdmFsdWUuXG4gICAqL1xuICByZWFkb25seSBzdG9wOiBudW1iZXI7XG59XG5cbi8qKlxuICogQ29uZGl0aW9ucyB0aGF0IGNhbiBiZSBhcHBsaWVkIHRvIG51bWVyaWMgYXR0cmlidXRlcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOdW1lcmljQ29uZGl0aW9ucyB7XG4gIC8qKlxuICAgKiBNYXRjaCBvbmUgb3IgbW9yZSB2YWx1ZXMuXG4gICAqIEBkZXByZWNhdGVkIHVzZSBgYWxsb3dsaXN0YFxuICAgKiBAZGVmYXVsdCAtIE5vbmVcbiAgICovXG4gIHJlYWRvbmx5IHdoaXRlbGlzdD86IG51bWJlcltdO1xuXG4gIC8qKlxuICAgKiBNYXRjaCBvbmUgb3IgbW9yZSB2YWx1ZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgYWxsb3dsaXN0PzogbnVtYmVyW107XG5cbiAgLyoqXG4gICAqIE1hdGNoIHZhbHVlcyB0aGF0IGFyZSBncmVhdGVyIHRoYW4gdGhlIHNwZWNpZmllZCB2YWx1ZS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBOb25lXG4gICAqL1xuICByZWFkb25seSBncmVhdGVyVGhhbj86IG51bWJlcjtcblxuICAvKipcbiAgICogTWF0Y2ggdmFsdWVzIHRoYXQgYXJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byB0aGUgc3BlY2lmaWVkIHZhbHVlLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vbmVcbiAgICovXG4gIHJlYWRvbmx5IGdyZWF0ZXJUaGFuT3JFcXVhbFRvPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNYXRjaCB2YWx1ZXMgdGhhdCBhcmUgbGVzcyB0aGFuIHRoZSBzcGVjaWZpZWQgdmFsdWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgbGVzc1RoYW4/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1hdGNoIHZhbHVlcyB0aGF0IGFyZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gdGhlIHNwZWNpZmllZCB2YWx1ZS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBOb25lXG4gICAqL1xuICByZWFkb25seSBsZXNzVGhhbk9yRXF1YWxUbz86IG51bWJlcjtcblxuICAvKipcbiAgICogTWF0Y2ggdmFsdWVzIHRoYXQgYXJlIGJldHdlZW4gdGhlIHNwZWNpZmllZCB2YWx1ZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgYmV0d2Vlbj86IEJldHdlZW5Db25kaXRpb247XG5cbiAgLyoqXG4gICAqIE1hdGNoIHZhbHVlcyB0aGF0IGFyZSBzdHJpY3RseSBiZXR3ZWVuIHRoZSBzcGVjaWZpZWQgdmFsdWVzLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vbmVcbiAgICovXG4gIHJlYWRvbmx5IGJldHdlZW5TdHJpY3Q/OiBCZXR3ZWVuQ29uZGl0aW9uO1xufVxuXG4vKipcbiAqIEEgc3Vic2NyaXB0aW9uIGZpbHRlciBmb3IgYW4gYXR0cmlidXRlLlxuICovXG5leHBvcnQgY2xhc3MgU3Vic2NyaXB0aW9uRmlsdGVyIHtcbiAgLyoqXG4gICAqIFJldHVybnMgYSBzdWJzY3JpcHRpb24gZmlsdGVyIGZvciBhIHN0cmluZyBhdHRyaWJ1dGUuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHN0cmluZ0ZpbHRlcihzdHJpbmdDb25kaXRpb25zOiBTdHJpbmdDb25kaXRpb25zKSB7XG4gICAgY29uc3QgY29uZGl0aW9ucyA9IG5ldyBBcnJheTxhbnk+KCk7XG5cbiAgICBpZiAoc3RyaW5nQ29uZGl0aW9ucy53aGl0ZWxpc3QgJiYgc3RyaW5nQ29uZGl0aW9ucy5hbGxvd2xpc3QpIHtcbiAgICAgIHRocm93IG5ldyBVbnNjb3BlZFZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgXCJgd2hpdGVsaXN0YCBpcyBkZXByZWNhdGVkOyBwbGVhc2UgdXNlIGBhbGxvd2xpc3RgIGluc3RlYWRcIixcbiAgICAgICk7XG4gICAgfVxuICAgIGlmIChzdHJpbmdDb25kaXRpb25zLmJsYWNrbGlzdCAmJiBzdHJpbmdDb25kaXRpb25zLmRlbnlsaXN0KSB7XG4gICAgICB0aHJvdyBuZXcgVW5zY29wZWRWYWxpZGF0aW9uRXJyb3IoXG4gICAgICAgIFwiYGJsYWNrbGlzdGAgaXMgZGVwcmVjYXRlZDsgcGxlYXNlIHVzZSBgZGVueWxpc3RgIGluc3RlYWRcIixcbiAgICAgICk7XG4gICAgfVxuICAgIGNvbnN0IGFsbG93bGlzdCA9IHN0cmluZ0NvbmRpdGlvbnMuYWxsb3dsaXN0ID8/IHN0cmluZ0NvbmRpdGlvbnMud2hpdGVsaXN0O1xuICAgIGNvbnN0IGRlbnlsaXN0ID0gc3RyaW5nQ29uZGl0aW9ucy5kZW55bGlzdCA/PyBzdHJpbmdDb25kaXRpb25zLmJsYWNrbGlzdDtcblxuICAgIGlmIChhbGxvd2xpc3QpIHtcbiAgICAgIGNvbmRpdGlvbnMucHVzaCguLi5hbGxvd2xpc3QpO1xuICAgIH1cblxuICAgIGlmIChkZW55bGlzdCkge1xuICAgICAgY29uZGl0aW9ucy5wdXNoKHsgXCJhbnl0aGluZy1idXRcIjogZGVueWxpc3QgfSk7XG4gICAgfVxuXG4gICAgaWYgKHN0cmluZ0NvbmRpdGlvbnMubWF0Y2hQcmVmaXhlcykge1xuICAgICAgY29uZGl0aW9ucy5wdXNoKFxuICAgICAgICAuLi5zdHJpbmdDb25kaXRpb25zLm1hdGNoUHJlZml4ZXMubWFwKChwKSA9PiAoeyBwcmVmaXg6IHAgfSkpLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoc3RyaW5nQ29uZGl0aW9ucy5tYXRjaFN1ZmZpeGVzKSB7XG4gICAgICBjb25kaXRpb25zLnB1c2goXG4gICAgICAgIC4uLnN0cmluZ0NvbmRpdGlvbnMubWF0Y2hTdWZmaXhlcy5tYXAoKHMpID0+ICh7IHN1ZmZpeDogcyB9KSksXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgU3Vic2NyaXB0aW9uRmlsdGVyKGNvbmRpdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYSBzdWJzY3JpcHRpb24gZmlsdGVyIGZvciBhIG51bWVyaWMgYXR0cmlidXRlLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBudW1lcmljRmlsdGVyKG51bWVyaWNDb25kaXRpb25zOiBOdW1lcmljQ29uZGl0aW9ucykge1xuICAgIGNvbnN0IGNvbmRpdGlvbnMgPSBuZXcgQXJyYXk8YW55PigpO1xuXG4gICAgaWYgKG51bWVyaWNDb25kaXRpb25zLndoaXRlbGlzdCAmJiBudW1lcmljQ29uZGl0aW9ucy5hbGxvd2xpc3QpIHtcbiAgICAgIHRocm93IG5ldyBVbnNjb3BlZFZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgXCJgd2hpdGVsaXN0YCBpcyBkZXByZWNhdGVkOyBwbGVhc2UgdXNlIGBhbGxvd2xpc3RgIGluc3RlYWRcIixcbiAgICAgICk7XG4gICAgfVxuICAgIGNvbnN0IGFsbG93bGlzdCA9XG4gICAgICBudW1lcmljQ29uZGl0aW9ucy5hbGxvd2xpc3QgPz8gbnVtZXJpY0NvbmRpdGlvbnMud2hpdGVsaXN0O1xuXG4gICAgaWYgKGFsbG93bGlzdCkge1xuICAgICAgY29uZGl0aW9ucy5wdXNoKC4uLmFsbG93bGlzdC5tYXAoKHYpID0+ICh7IG51bWVyaWM6IFtcIj1cIiwgdl0gfSkpKTtcbiAgICB9XG5cbiAgICBpZiAobnVtZXJpY0NvbmRpdGlvbnMuZ3JlYXRlclRoYW4gIT09IHVuZGVmaW5lZCkge1xuICAgICAgY29uZGl0aW9ucy5wdXNoKHsgbnVtZXJpYzogW1wiPlwiLCBudW1lcmljQ29uZGl0aW9ucy5ncmVhdGVyVGhhbl0gfSk7XG4gICAgfVxuXG4gICAgaWYgKG51bWVyaWNDb25kaXRpb25zLmdyZWF0ZXJUaGFuT3JFcXVhbFRvICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvbmRpdGlvbnMucHVzaCh7XG4gICAgICAgIG51bWVyaWM6IFtcIj49XCIsIG51bWVyaWNDb25kaXRpb25zLmdyZWF0ZXJUaGFuT3JFcXVhbFRvXSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChudW1lcmljQ29uZGl0aW9ucy5sZXNzVGhhbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBjb25kaXRpb25zLnB1c2goeyBudW1lcmljOiBbXCI8XCIsIG51bWVyaWNDb25kaXRpb25zLmxlc3NUaGFuXSB9KTtcbiAgICB9XG5cbiAgICBpZiAobnVtZXJpY0NvbmRpdGlvbnMubGVzc1RoYW5PckVxdWFsVG8gIT09IHVuZGVmaW5lZCkge1xuICAgICAgY29uZGl0aW9ucy5wdXNoKHsgbnVtZXJpYzogW1wiPD1cIiwgbnVtZXJpY0NvbmRpdGlvbnMubGVzc1RoYW5PckVxdWFsVG9dIH0pO1xuICAgIH1cblxuICAgIGlmIChudW1lcmljQ29uZGl0aW9ucy5iZXR3ZWVuKSB7XG4gICAgICBjb25kaXRpb25zLnB1c2goe1xuICAgICAgICBudW1lcmljOiBbXG4gICAgICAgICAgXCI+PVwiLFxuICAgICAgICAgIG51bWVyaWNDb25kaXRpb25zLmJldHdlZW4uc3RhcnQsXG4gICAgICAgICAgXCI8PVwiLFxuICAgICAgICAgIG51bWVyaWNDb25kaXRpb25zLmJldHdlZW4uc3RvcCxcbiAgICAgICAgXSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChudW1lcmljQ29uZGl0aW9ucy5iZXR3ZWVuU3RyaWN0KSB7XG4gICAgICBjb25kaXRpb25zLnB1c2goe1xuICAgICAgICBudW1lcmljOiBbXG4gICAgICAgICAgXCI+XCIsXG4gICAgICAgICAgbnVtZXJpY0NvbmRpdGlvbnMuYmV0d2VlblN0cmljdC5zdGFydCxcbiAgICAgICAgICBcIjxcIixcbiAgICAgICAgICBudW1lcmljQ29uZGl0aW9ucy5iZXR3ZWVuU3RyaWN0LnN0b3AsXG4gICAgICAgIF0sXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvbkZpbHRlcihjb25kaXRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgc3Vic2NyaXB0aW9uIGZpbHRlciBmb3IgYXR0cmlidXRlIGtleSBtYXRjaGluZy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZXhpc3RzRmlsdGVyKCkge1xuICAgIHJldHVybiBuZXcgU3Vic2NyaXB0aW9uRmlsdGVyKFt7IGV4aXN0czogdHJ1ZSB9XSk7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIGNvbmRpdGlvbnMgY29uZGl0aW9ucyB0aGF0IHNwZWNpZnkgdGhlIG1lc3NhZ2UgYXR0cmlidXRlcyB0aGF0IHNob3VsZCBiZSBpbmNsdWRlZCwgZXhjbHVkZWQsIG1hdGNoZWQsIGV0Yy5cbiAgICovXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBjb25kaXRpb25zOiBhbnlbXSA9IFtdKSB7fVxufVxuIl19
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.Policy = exports.Filter = exports.FilterOrPolicy = exports.FilterOrPolicyType = exports.SubscriptionProtocol = exports.Subscription = void 0;
5
5
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
6
  // https://github.com/aws/aws-cdk/blob/6b9e47a1529319561bc1040739fe02bac15895bf/packages/aws-cdk-lib/aws-sns/lib/subscription.ts
7
- const provider_aws_1 = require("@cdktf/provider-aws");
7
+ const provider_aws_1 = require("@cdktn/provider-aws");
8
8
  const errors_1 = require("../../errors");
9
9
  const aws_construct_1 = require("../aws-construct");
10
10
  const iam = require("../iam");
@@ -206,7 +206,7 @@ class Subscription extends aws_construct_1.AwsConstructBase {
206
206
  }
207
207
  exports.Subscription = Subscription;
208
208
  _a = JSII_RTTI_SYMBOL_1;
209
- Subscription[_a] = { fqn: "terraconstructs.aws.notify.Subscription", version: "0.2.4" };
209
+ Subscription[_a] = { fqn: "terraconstructs.aws.notify.Subscription", version: "0.2.6" };
210
210
  /**
211
211
  * The type of subscription, controlling the type of the endpoint parameter.
212
212
  */
@@ -312,7 +312,7 @@ class FilterOrPolicy {
312
312
  }
313
313
  exports.FilterOrPolicy = FilterOrPolicy;
314
314
  _b = JSII_RTTI_SYMBOL_1;
315
- FilterOrPolicy[_b] = { fqn: "terraconstructs.aws.notify.FilterOrPolicy", version: "0.2.4" };
315
+ FilterOrPolicy[_b] = { fqn: "terraconstructs.aws.notify.FilterOrPolicy", version: "0.2.6" };
316
316
  /**
317
317
  * Filter implementation of FilterOrPolicy
318
318
  */
@@ -332,7 +332,7 @@ class Filter extends FilterOrPolicy {
332
332
  }
333
333
  exports.Filter = Filter;
334
334
  _c = JSII_RTTI_SYMBOL_1;
335
- Filter[_c] = { fqn: "terraconstructs.aws.notify.Filter", version: "0.2.4" };
335
+ Filter[_c] = { fqn: "terraconstructs.aws.notify.Filter", version: "0.2.6" };
336
336
  /**
337
337
  * Policy Implementation of FilterOrPolicy
338
338
  */
@@ -352,5 +352,5 @@ class Policy extends FilterOrPolicy {
352
352
  }
353
353
  exports.Policy = Policy;
354
354
  _d = JSII_RTTI_SYMBOL_1;
355
- Policy[_d] = { fqn: "terraconstructs.aws.notify.Policy", version: "0.2.4" };
356
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F3cy9ub3RpZnkvc3Vic2NyaXB0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsZ0lBQWdJO0FBRWhJLHNEQUEyRDtBQUszRCx5Q0FBK0M7QUFDL0Msb0RBQW9EO0FBQ3BELDhCQUE4QjtBQThGOUI7Ozs7Ozs7R0FPRztBQUNILE1BQWEsWUFBYSxTQUFRLGdDQUFnQjtJQVNoRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUM7SUFDbEMsQ0FBQztJQUVELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBd0I7UUFDaEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFeEIsSUFDRSxLQUFLLENBQUMsa0JBQWtCO1lBQ3hCO2dCQUNFLG9CQUFvQixDQUFDLElBQUk7Z0JBQ3pCLG9CQUFvQixDQUFDLEtBQUs7Z0JBQzFCLG9CQUFvQixDQUFDLEdBQUc7Z0JBQ3hCLG9CQUFvQixDQUFDLFFBQVE7YUFDOUIsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFDN0IsQ0FBQztZQUNELE1BQU0sSUFBSSx3QkFBZSxDQUN2Qiw0RkFBNEYsRUFDNUYsSUFBSSxDQUNMLENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxnQkFBb0MsQ0FBQztRQUN6QyxzRkFBc0Y7UUFDdEYsSUFBSSxpQkFBa0UsQ0FBQztRQUV2RSxJQUFJLEtBQUssQ0FBQyxZQUFZLElBQUksS0FBSyxDQUFDLDJCQUEyQixFQUFFLENBQUM7WUFDNUQsTUFBTSxJQUFJLEtBQUssQ0FDYixtRkFBbUYsQ0FDcEYsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUFJLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN2QixJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVks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cmNlc0NvbnRlbnQiOlsiLy8gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvNmI5ZTQ3YTE1MjkzMTk1NjFiYzEwNDA3MzlmZTAyYmFjMTU4OTViZi9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3Mtc25zL2xpYi9zdWJzY3JpcHRpb24udHNcblxuaW1wb3J0IHsgc25zVG9waWNTdWJzY3JpcHRpb24gfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF3c1wiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IERlbGl2ZXJ5UG9saWN5IH0gZnJvbSBcIi4vZGVsaXZlcnktcG9saWN5XCI7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb25GaWx0ZXIgfSBmcm9tIFwiLi9zdWJzY3JpcHRpb24tZmlsdGVyXCI7XG5pbXBvcnQgeyBJVG9waWMgfSBmcm9tIFwiLi90b3BpYy1iYXNlXCI7XG5pbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3IgfSBmcm9tIFwiLi4vLi4vZXJyb3JzXCI7XG5pbXBvcnQgeyBBd3NDb25zdHJ1Y3RCYXNlIH0gZnJvbSBcIi4uL2F3cy1jb25zdHJ1Y3RcIjtcbmltcG9ydCAqIGFzIGlhbSBmcm9tIFwiLi4vaWFtXCI7XG5pbXBvcnQgKiBhcyBub3RpZnkgZnJvbSBcIi4uL25vdGlmeVwiO1xuXG4vKipcbiAqIE91dHB1dHMgZm9yIHRoZSBTdWJzY3JpcHRpb24gY29uc3RydWN0LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN1YnNjcmlwdGlvbk91dHB1dHMge1xuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgc3Vic2NyaXB0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgc3Vic2NyaXB0aW9uQXJuOiBzdHJpbmc7XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgY3JlYXRpbmcgYSBuZXcgc3Vic2NyaXB0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3Vic2NyaXB0aW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBXaGF0IHR5cGUgb2Ygc3Vic2NyaXB0aW9uIHRvIGFkZC5cbiAgICovXG4gIHJlYWRvbmx5IHByb3RvY29sOiBTdWJzY3JpcHRpb25Qcm90b2NvbDtcblxuICAvKipcbiAgICogVGhlIHN1YnNjcmlwdGlvbiBlbmRwb2ludC5cbiAgICpcbiAgICogVGhlIG1lYW5pbmcgb2YgdGhpcyB2YWx1ZSBkZXBlbmRzIG9uIHRoZSB2YWx1ZSBmb3IgJ3Byb3RvY29sJy5cbiAgICovXG4gIHJlYWRvbmx5IGVuZHBvaW50OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIHRydWUgaWYgcmF3IG1lc3NhZ2UgZGVsaXZlcnkgaXMgZW5hYmxlZCBmb3IgdGhlIHN1YnNjcmlwdGlvbi4gUmF3IG1lc3NhZ2VzIGFyZSBmcmVlIG9mIEpTT04gZm9ybWF0dGluZyBhbmQgY2FuIGJlXG4gICAqIHNlbnQgdG8gSFRUUC9TIGFuZCBBbWF6b24gU1FTIGVuZHBvaW50cy4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSBHZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzIGluIHRoZSBBbWF6b24gU2ltcGxlXG4gICAqIE5vdGlmaWNhdGlvbiBTZXJ2aWNlIEFQSSBSZWZlcmVuY2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSByYXdNZXNzYWdlRGVsaXZlcnk/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgZmlsdGVyIHBvbGljeS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBhbGwgbWVzc2FnZXMgYXJlIGRlbGl2ZXJlZFxuICAgKi9cbiAgcmVhZG9ubHkgZmlsdGVyUG9saWN5PzogeyBbYXR0cmlidXRlOiBzdHJpbmddOiBTdWJzY3JpcHRpb25GaWx0ZXIgfTtcblxuICAvKipcbiAgICogVGhlIGZpbHRlciBwb2xpY3kgdGhhdCBpcyBhcHBsaWVkIG9uIHRoZSBtZXNzYWdlIGJvZHkuXG4gICAqIFRvIGFwcGx5IGEgZmlsdGVyIHBvbGljeSB0byB0aGUgbWVzc2FnZSBhdHRyaWJ1dGVzLCB1c2UgYGZpbHRlclBvbGljeWAuIEEgbWF4aW11bSBvZiBvbmUgb2YgYGZpbHRlclBvbGljeVdpdGhNZXNzYWdlQm9keWAgYW5kIGBmaWx0ZXJQb2xpY3lgIG1heSBiZSB1c2VkLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGFsbCBtZXNzYWdlcyBhcmUgZGVsaXZlcmVkXG4gICAqL1xuICByZWFkb25seSBmaWx0ZXJQb2xpY3lXaXRoTWVzc2FnZUJvZHk/OiB7XG4gICAgW2F0dHJpYnV0ZTogc3RyaW5nXTogRmlsdGVyT3JQb2xpY3k7XG4gIH07XG5cbiAgLyoqXG4gICAqIFRoZSByZWdpb24gd2hlcmUgdGhlIHRvcGljIHJlc2lkZXMsIGluIHRoZSBjYXNlIG9mIGNyb3NzLXJlZ2lvbiBzdWJzY3JpcHRpb25zXG4gICAqIEBsaW5rIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BV1NDbG91ZEZvcm1hdGlvbi9sYXRlc3QvVXNlckd1aWRlL2F3cy1yZXNvdXJjZS1zbnMtc3Vic2NyaXB0aW9uLmh0bWwjY2ZuLXNucy1zdWJzY3JpcHRpb24tcmVnaW9uXG4gICAqIEBkZWZhdWx0IC0gdGhlIHJlZ2lvbiB3aGVyZSB0aGUgc3RhY2sgaXMgYmVpbmcgZGVwbG95ZWQuXG4gICAqL1xuICByZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFF1ZXVlIHRvIGJlIHVzZWQgYXMgZGVhZCBsZXR0ZXIgcXVldWUuXG4gICAqIElmIG5vdCBwYXNzZWQgbm8gZGVhZCBsZXR0ZXIgcXVldWUgaXMgZW5hYmxlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyBkZWFkIGxldHRlciBxdWV1ZSBlbmFibGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVhZExldHRlclF1ZXVlPzogbm90aWZ5LklRdWV1ZTtcblxuICAvKipcbiAgICogQXJuIG9mIHJvbGUgYWxsb3dpbmcgYWNjZXNzIHRvIGZpcmVob3NlIGRlbGl2ZXJ5IHN0cmVhbS5cbiAgICogUmVxdWlyZWQgZm9yIGEgZmlyZWhvc2Ugc3Vic2NyaXB0aW9uIHByb3RvY29sLlxuICAgKiBAZGVmYXVsdCAtIE5vIHN1YnNjcmlwdGlvbiByb2xlIGlzIHByb3ZpZGVkXG4gICAqL1xuICByZWFkb25seSBzdWJzY3JpcHRpb25Sb2xlQXJuPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZGVsaXZlcnkgcG9saWN5LlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGlmIHRoZSBpbml0aWFsIGRlbGl2ZXJ5IG9mIHRoZSBtZXNzYWdlIGZhaWxzLCB0aHJlZSByZXRyaWVzIHdpdGggYSBkZWxheSBiZXR3ZWVuIGZhaWxlZCBhdHRlbXB0cyBzZXQgYXQgMjAgc2Vjb25kc1xuICAgKi9cbiAgcmVhZG9ubHkgZGVsaXZlcnlQb2xpY3k/OiBEZWxpdmVyeVBvbGljeTtcbn1cbi8qKlxuICogUHJvcGVydGllcyBmb3IgY3JlYXRpbmcgYSBuZXcgc3Vic2NyaXB0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3Vic2NyaXB0aW9uUHJvcHMgZXh0ZW5kcyBTdWJzY3JpcHRpb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSB0b3BpYyB0byBzdWJzY3JpYmUgdG8uXG4gICAqL1xuICByZWFkb25seSB0b3BpYzogSVRvcGljO1xufVxuXG4vKipcbiAqIEEgbmV3IHN1YnNjcmlwdGlvbi5cbiAqXG4gKiBQcmVmZXIgdG8gdXNlIHRoZSBgSVRvcGljLmFkZFN1YnNjcmlwdGlvbigpYCBtZXRob2RzIHRvIGNyZWF0ZSBpbnN0YW5jZXMgb2ZcbiAqIHRoaXMgY2xhc3MuXG4gKlxuICogQHJlc291cmNlIGF3c19zbnNfdG9waWNfc3Vic2NyaXB0aW9uXG4gKi9cbmV4cG9ydCBjbGFzcyBTdWJzY3JpcHRpb24gZXh0ZW5kcyBBd3NDb25zdHJ1Y3RCYXNlIHtcbiAgLyoqXG4gICAqIFRoZSBETFEgYXNzb2NpYXRlZCB3aXRoIHRoaXMgc3Vic2NyaXB0aW9uIGlmIHByZXNlbnQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZGVhZExldHRlclF1ZXVlPzogbm90aWZ5LklRdWV1ZTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHJlc291cmNlOiBzbnNUb3BpY1N1YnNjcmlwdGlvbi5TbnNUb3BpY1N1YnNjcmlwdGlvbjtcblxuICBwdWJsaWMgcmVhZG9ubHkgc3Vic2NyaXB0aW9uT3V0cHV0czogU3Vic2NyaXB0aW9uT3V0cHV0cztcbiAgcHVibGljIGdldCBvdXRwdXRzKCk6IFJlY29yZDxzdHJpbmcsIGFueT4ge1xuICAgIHJldHVybiB0aGlzLnN1YnNjcmlwdGlvbk91dHB1dHM7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogU3Vic2NyaXB0aW9uUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHByb3BzKTtcblxuICAgIGlmIChcbiAgICAgIHByb3BzLnJhd01lc3NhZ2VEZWxpdmVyeSAmJlxuICAgICAgW1xuICAgICAgICBTdWJzY3JpcHRpb25Qcm90b2NvbC5IVFRQLFxuICAgICAgICBTdWJzY3JpcHRpb25Qcm90b2NvbC5IVFRQUyxcbiAgICAgICAgU3Vic2NyaXB0aW9uUHJvdG9jb2wuU1FTLFxuICAgICAgICBTdWJzY3JpcHRpb25Qcm90b2NvbC5GSVJFSE9TRSxcbiAgICAgIF0uaW5kZXhPZihwcm9wcy5wcm90b2NvbCkgPCAwXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgVmFsaWRhdGlvbkVycm9yKFxuICAgICAgICBcIlJhdyBtZXNzYWdlIGRlbGl2ZXJ5IGNhbiBvbmx5IGJlIGVuYWJsZWQgZm9yIEhUVFAsIEhUVFBTLCBTUVMsIGFuZCBGaXJlaG9zZSBzdWJzY3JpcHRpb25zLlwiLFxuICAgICAgICB0aGlzLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBsZXQgZmlsdGVyUG9saWN5SnNvbjogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBXaGV0aGVyIHRoZSBmaWx0ZXJfcG9saWN5IGFwcGxpZXMgdG8gTWVzc2FnZUF0dHJpYnV0ZXMgKGRlZmF1bHQpIG9yIE1lc3NhZ2VCb2R5ICovXG4gICAgbGV0IGZpbHRlclBvbGljeVNjb3BlOiBcIk1lc3NhZ2VBdHRyaWJ1dGVzXCIgfCBcIk1lc3NhZ2VCb2R5XCIgfCB1bmRlZmluZWQ7XG5cbiAgICBpZiAocHJvcHMuZmlsdGVyUG9saWN5ICYmIHByb3BzLmZpbHRlclBvbGljeVdpdGhNZXNzYWdlQm9keSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIkEgbWF4aW11bSBvZiBvbmUgb2YgYGZpbHRlclBvbGljeVdpdGhNZXNzYWdlQm9keWAgYW5kIGBmaWx0ZXJQb2xpY3lgIG1heSBiZSB1c2VkLlwiLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMuZmlsdGVyUG9saWN5KSB7XG4gICAgICBpZiAoT2JqZWN0LmtleXMocHJvcHMuZmlsdGVyUG9saWN5KS5sZW5ndGggPiA1KSB7XG4gICAgICAgIHRocm93IG5ldyBWYWxpZGF0aW9uRXJyb3IoXG4gICAgICAgICAgXCJBIGZpbHRlciBwb2xpY3kgY2FuIGhhdmUgYSBtYXhpbXVtIG9mIDUgYXR0cmlidXRlIG5hbWVzLlwiLFxuICAgICAgICAgIHRoaXMsXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGZpbHRlclBvbGljeUNvbmRpdGlvbnMgPSBPYmplY3QuZW50cmllcyhwcm9wcy5maWx0ZXJQb2xpY3kpLnJlZHVjZShcbiAgICAgICAgKGFjYywgW2ssIHZdKSA9PiAoeyAuLi5hY2MsIFtrXTogdi5jb25kaXRpb25zIH0pLFxuICAgICAgICB7fSxcbiAgICAgICk7XG5cbiAgICAgIGxldCB0b3RhbCA9IDE7XG4gICAgICBPYmplY3QudmFsdWVzKGZpbHRlclBvbGljeUNvbmRpdGlvbnMpLmZvckVhY2goKGZpbHRlcjogYW55KSA9PiB7XG4gICAgICAgIHRvdGFsICo9IGZpbHRlci5sZW5ndGg7XG4gICAgICB9KTtcbiAgICAgIGlmICh0b3RhbCA+IDE1MCkge1xuICAgICAgICB0aHJvdyBuZXcgVmFsaWRhdGlvbkVycm9yKFxuICAgICAgICAgIGBUaGUgdG90YWwgY29tYmluYXRpb24gb2YgdmFsdWVzICgke3RvdGFsfSkgbXVzdCBub3QgZXhjZWVkIDE1MC5gLFxuICAgICAgICAgIHRoaXMsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBmaWx0ZXJQb2xpY3lKc29uID0gSlNPTi5zdHJpbmdpZnkoZmlsdGVyUG9saWN5Q29uZGl0aW9ucyk7XG4gICAgICBmaWx0ZXJQb2xpY3lTY29wZSA9IFwiTWVzc2FnZUF0dHJpYnV0ZXNcIjsgLy8gRGVmYXVsdCBzY29wZVxuICAgIH0gZWxzZSBpZiAocHJvcHMuZmlsdGVyUG9saWN5V2l0aE1lc3NhZ2VCb2R5KSB7XG4gICAgICBpZiAoT2JqZWN0LmtleXMocHJvcHMuZmlsdGVyUG9saWN5V2l0aE1lc3NhZ2VCb2R5KS5sZW5ndGggPiA1KSB7XG4gICAgICAgIHRocm93IG5ldyBWYWxpZGF0aW9uRXJyb3IoXG4gICAgICAgICAgXCJBIGZpbHRlciBwb2xpY3kgY2FuIGhhdmUgYSBtYXhpbXVtIG9mIDUgYXR0cmlidXRlIG5hbWVzLlwiLFxuICAgICAgICAgIHRoaXMsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBjb25zdCBidWlsdFBvbGljeSA9IGJ1aWxkRmlsdGVyUG9saWN5V2l0aE1lc3NhZ2VCb2R5KFxuICAgICAgICB0aGlzLFxuICAgICAgICBwcm9wcy5maWx0ZXJQb2xpY3lXaXRoTWVzc2FnZUJvZHksXG4gICAgICApO1xuICAgICAgZmlsdGVyUG9saWN5SnNvbiA9IEpTT04uc3RyaW5naWZ5KGJ1aWx0UG9saWN5KTtcbiAgICAgIGZpbHRlclBvbGljeVNjb3BlID0gXCJNZXNzYWdlQm9keVwiO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIHByb3BzLnByb3RvY29sID09PSBTdWJzY3JpcHRpb25Qcm90b2NvbC5GSVJFSE9TRSAmJlxuICAgICAgIXByb3BzLnN1YnNjcmlwdGlvblJvbGVBcm5cbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBWYWxpZGF0aW9uRXJyb3IoXG4gICAgICAgIFwiU3Vic2NyaXB0aW9uIHJvbGUgYXJuIGlzIHJlcXVpcmVkIGZpZWxkIGZvciBzdWJzY3JpcHRpb25zIHdpdGggYSBmaXJlaG9zZSBwcm90b2NvbC5cIixcbiAgICAgICAgdGhpcyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy5kZWFkTGV0dGVyUXVldWUgPSB0aGlzLmJ1aWxkRGVhZExldHRlclF1ZXVlKHByb3BzKTtcbiAgICBjb25zdCByZWRyaXZlUG9saWN5SnNvbiA9IHRoaXMuYnVpbGREZWFkTGV0dGVyQ29uZmlnKHRoaXMuZGVhZExldHRlclF1ZXVlKTtcbiAgICBjb25zdCBkZWxpdmVyeVBvbGljeUpzb24gPSBwcm9wcy5kZWxpdmVyeVBvbGljeVxuICAgICAgPyB0aGlzLnJlbmRlckRlbGl2ZXJ5UG9saWN5KHByb3BzLmRlbGl2ZXJ5UG9saWN5LCBwcm9wcy5wcm90b2NvbClcbiAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgdGhpcy5yZXNvdXJjZSA9IG5ldyBzbnNUb3BpY1N1YnNjcmlwdGlvbi5TbnNUb3BpY1N1YnNjcmlwdGlvbihcbiAgICAgIHRoaXMsXG4gICAgICBcIlJlc291cmNlXCIsXG4gICAgICB7XG4gICAgICAgIGVuZHBvaW50OiBwcm9wcy5lbmRwb2ludCxcbiAgICAgICAgcHJvdG9jb2w6IHByb3BzLnByb3RvY29sLFxuICAgICAgICB0b3BpY0FybjogcHJvcHMudG9waWMudG9waWNBcm4sXG4gICAgICAgIHJhd01lc3NhZ2VEZWxpdmVyeTogcHJvcHMucmF3TWVzc2FnZURlbGl2ZXJ5LFxuICAgICAgICBmaWx0ZXJQb2xpY3k6IGZpbHRlclBvbGljeUpzb24sXG4gICAgICAgIGZpbHRlclBvbGljeVNjb3BlOiBmaWx0ZXJQb2xpY3lTY29wZSxcbiAgICAgICAgcmVkcml2ZVBvbGljeTogcmVkcml2ZVBvbGljeUpzb24sXG4gICAgICAgIHN1YnNjcmlwdGlvblJvbGVBcm46IHByb3BzLnN1YnNjcmlwdGlvblJvbGVBcm4sXG4gICAgICAgIGRlbGl2ZXJ5UG9saWN5OiBkZWxpdmVyeVBvbGljeUpzb24sXG4gICAgICAgIHJlZ2lvbjpcbiAgICAgICAgICBwcm9wcy5yZWdpb24gPz8gcHJvcHMudG9waWMuZW52LnJlZ2lvbiA/PyBwcm9wcy50b3BpYy5zdGFjay5yZWdpb24sXG4gICAgICAgIC8vIGNvbmZpcm1hdGlvblRpbWVvdXRJbk1pbnV0ZXM6IC8vIE5vdCBkaXJlY3RseSBhdmFpbGFibGUgaW4gQ0RLIHByb3BzXG4gICAgICAgIC8vIGVuZHBvaW50QXV0b0NvbmZpcm1zOiAvLyBOb3QgZGlyZWN0bHkgYXZhaWxhYmxlIGluIENESyBwcm9wc1xuICAgICAgICAvLyByZXBsYXlQb2xpY3k6IC8vIE5vdCBkaXJlY3RseSBhdmFpbGFibGUgaW4gQ0RLIHByb3BzIChtaXNzaW5nIGluIEFXUyBDREspXG4gICAgICB9LFxuICAgICk7XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbk91dHB1dHMgPSB7XG4gICAgICBzdWJzY3JpcHRpb25Bcm46IHRoaXMucmVzb3VyY2UuYXJuLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIHJlbmRlckRlbGl2ZXJ5UG9saWN5KFxuICAgIGRlbGl2ZXJ5UG9saWN5OiBEZWxpdmVyeVBvbGljeSxcbiAgICBwcm90b2NvbDogU3Vic2NyaXB0aW9uUHJvdG9jb2wsXG4gICk6IHN0cmluZyB7XG4gICAgaWYgKFxuICAgICAgIVtTdWJzY3JpcHRpb25Qcm90b2NvbC5IVFRQLCBTdWJzY3JpcHRpb25Qcm90b2NvbC5IVFRQU10uaW5jbHVkZXMoXG4gICAgICAgIHByb3RvY29sLFxuICAgICAgKVxuICAgICkge1xuICAgICAgdGhyb3cgbmV3IFZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgYERlbGl2ZXJ5IHBvbGljeSBpcyBvbmx5IHN1cHBvcnRlZCBmb3IgSFRUUCBhbmQgSFRUUFMgc3Vic2NyaXB0aW9ucywgZ290OiAke3Byb3RvY29sfWAsXG4gICAgICAgIHRoaXMsXG4gICAgICApO1xuICAgIH1cbiAgICBjb25zdCB7IGhlYWx0aHlSZXRyeVBvbGljeSwgdGhyb3R0bGVQb2xpY3ksIHJlcXVlc3RQb2xpY3kgfSA9XG4gICAgICBkZWxpdmVyeVBvbGljeTtcbiAgICBjb25zdCByZW5kZXJlZFBvbGljeTogYW55ID0ge307XG5cbiAgICBpZiAoaGVhbHRoeVJldHJ5UG9saWN5KSB7XG4gICAgICBjb25zdCBkZWxheVRhcmdldExpbWl0U2VjcyA9IDM2MDA7XG4gICAgICBjb25zdCBtaW5EZWxheVRhcmdldCA9IGhlYWx0aHlSZXRyeVBvbGljeS5taW5EZWxheVRhcmdldDtcbiAgICAgIGNvbnN0IG1heERlbGF5VGFyZ2V0ID0gaGVhbHRoeVJldHJ5UG9saWN5Lm1heERlbGF5VGFyZ2V0O1xuICAgICAgaWYgKG1pbkRlbGF5VGFyZ2V0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgaWYgKG1pbkRlbGF5VGFyZ2V0LnRvTWlsbGlzZWNvbmRzKCkgJSAxMDAwICE9PSAwKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IFZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgICAgIGBtaW5EZWxheVRhcmdldCBtdXN0IGJlIGEgd2hvbGUgbnVtYmVyIG9mIHNlY29uZHMsIGdvdDogJHttaW5EZWxheVRhcmdldH1gLFxuICAgICAgICAgICAgdGhpcyxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG1pbkRlbGF5VGFyZ2V0U2VjcyA9IG1pbkRlbGF5VGFyZ2V0LnRvU2Vjb25kcygpO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgbWluRGVsYXlUYXJnZXRTZWNzIDwgMSB8fFxuICAgICAgICAgIG1pbkRlbGF5VGFyZ2V0U2VjcyA+IGRlbGF5VGFyZ2V0TGltaXRTZWNzXG4gICAgICAgICkge1xuICAgICAgICAgIHRocm93IG5ldyBWYWxpZGF0aW9uRXJyb3IoXG4gICAgICAgICAgICBgbWluRGVsYXlUYXJnZXQgbXVzdCBiZSBiZXR3ZWVuIDEgYW5kICR7ZGVsYXlUYXJnZXRMaW1pdFNlY3N9IHNlY29uZHMgaW5jbHVzaXZlLCBnb3Q6ICR7bWluRGVsYXlUYXJnZXRTZWNzfXNgLFxuICAgICAgICAgICAgdGhpcyxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAobWF4RGVsYXlUYXJnZXQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBpZiAobWF4RGVsYXlUYXJnZXQudG9NaWxsaXNlY29uZHMoKSAlIDEwMDAgIT09IDApIHtcbiAgICAgICAgICB0aHJvdyBuZXcgVmFsaWRhdGlvbkVycm9yKFxuICAgICAgICAgICAgYG1heERlbGF5VGFyZ2V0IG11c3QgYmUgYSB3aG9sZSBudW1iZXIgb2Ygc2Vjb25kcywgZ290OiAke21heERlbGF5VGFyZ2V0fWAsXG4gICAgICAgICAgICB0aGlzLFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbWF4RGVsYXlUYXJnZXRTZWNzID0gbWF4RGVsYXlUYXJnZXQudG9TZWNvbmRzKCk7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBtYXhEZWxheVRhcmdldFNlY3MgPCAxIHx8XG4gICAgICAgICAgbWF4RGVsYXlUYXJnZXRTZWNzID4gZGVsYXlUYXJnZXRMaW1pdFNlY3NcbiAgICAgICAgKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IFZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgICAgIGBtYXhEZWxheVRhcmdldCBtdXN0IGJlIGJldHdlZW4gMSBhbmQgJHtkZWxheVRhcmdldExpbWl0U2Vjc30gc2Vjb25kcyBpbmNsdXNpdmUsIGdvdDogJHttYXhEZWxheVRhcmdldFNlY3N9c2AsXG4gICAgICAgICAgICB0aGlzLFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKFxuICAgICAgICAgIG1pbkRlbGF5VGFyZ2V0ICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICBtaW5EZWxheVRhcmdldC50b1NlY29uZHMoKSA+IG1heERlbGF5VGFyZ2V0U2Vjc1xuICAgICAgICApIHtcbiAgICAgICAgICB0aHJvdyBuZXcgVmFsaWRhdGlvbkVycm9yKFxuICAgICAgICAgICAgXCJtaW5EZWxheVRhcmdldCBtdXN0IG5vdCBleGNlZWQgbWF4RGVsYXlUYXJnZXRcIixcbiAgICAgICAgICAgIHRoaXMsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjb25zdCBudW1SZXRyaWVzTGltaXQgPSAxMDA7XG4gICAgICBpZiAoXG4gICAgICAgIGhlYWx0aHlSZXRyeVBvbGljeS5udW1SZXRyaWVzICYmXG4gICAgICAgIChoZWFsdGh5UmV0cnlQb2xpY3kubnVtUmV0cmllcyA8IDAgfHxcbiAgICAgICAgICBoZWFsdGh5UmV0cnlQb2xpY3kubnVtUmV0cmllcyA+IG51bVJldHJpZXNMaW1pdClcbiAgICAgICkge1xuICAgICAgICB0aHJvdyBuZXcgVmFsaWRhdGlvbkVycm9yKFxuICAgICAgICAgIGBudW1SZXRyaWVzIG11c3QgYmUgYmV0d2VlbiAwIGFuZCAke251bVJldHJpZXNMaW1pdH0gaW5jbHVzaXZlLCBnb3Q6ICR7aGVhbHRoeVJldHJ5UG9saWN5Lm51bVJldHJpZXN9YCxcbiAgICAgICAgICB0aGlzLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgY29uc3QgeyBudW1Ob0RlbGF5UmV0cmllcywgbnVtTWluRGVsYXlSZXRyaWVzLCBudW1NYXhEZWxheVJldHJpZXMgfSA9XG4gICAgICAgIGhlYWx0aHlSZXRyeVBvbGljeTtcbiAgICAgIGlmIChcbiAgICAgICAgbnVtTm9EZWxheVJldHJpZXMgJiZcbiAgICAgICAgKG51bU5vRGVsYXlSZXRyaWVzIDwgMCB8fCAhTnVtYmVyLmlzSW50ZWdlcihudW1Ob0RlbGF5UmV0cmllcykpXG4gICAgICApIHtcbiAgICAgICAgdGhyb3cgbmV3IFZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgICBgbnVtTm9EZWxheVJldHJpZXMgbXVzdCBiZSBhbiBpbnRlZ2VyIHplcm8gb3IgZ3JlYXRlciwgZ290OiAke251bU5vRGVsYXlSZXRyaWVzfWAsXG4gICAgICAgICAgdGhpcyxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIGlmIChcbiAgICAgICAgbnVtTWluRGVsYXlSZXRyaWVzICYmXG4gICAgICAgIChudW1NaW5EZWxheVJldHJpZXMgPCAwIHx8ICFOdW1iZXIuaXNJbnRlZ2VyKG51bU1pbkRlbGF5UmV0cmllcykpXG4gICAgICApIHtcbiAgICAgICAgdGhyb3cgbmV3IFZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgICBgbnVtTWluRGVsYXlSZXRyaWVzIG11c3QgYmUgYW4gaW50ZWdlciB6ZXJvIG9yIGdyZWF0ZXIsIGdvdDogJHtudW1NaW5EZWxheVJldHJpZXN9YCxcbiAgICAgICAgICB0aGlzLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgaWYgKFxuICAgICAgICBudW1NYXhEZWxheVJldHJpZXMgJiZcbiAgICAgICAgKG51bU1heERlbGF5UmV0cmllcyA8IDAgfHwgIU51bWJlci5pc0ludGVnZXIobnVtTWF4RGVsYXlSZXRyaWVzKSlcbiAgICAgICkge1xuICAgICAgICB0aHJvdyBuZXcgVmFsaWRhdGlvbkVycm9yKFxuICAgICAgICAgIGBudW1NYXhEZWxheVJldHJpZXMgbXVzdCBiZSBhbiBpbnRlZ2VyIHplcm8gb3IgZ3JlYXRlciwgZ290OiAke251bU1heERlbGF5UmV0cmllc31gLFxuICAgICAgICAgIHRoaXMsXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIHJlbmRlcmVkUG9saWN5LmhlYWx0aHlSZXRyeVBvbGljeSA9IHtcbiAgICAgICAgbWluRGVsYXlUYXJnZXQ6XG4gICAgICAgICAgaGVhbHRoeVJldHJ5UG9saWN5Lm1pbkRlbGF5VGFyZ2V0ID09PSB1bmRlZmluZWRcbiAgICAgICAgICAgID8gMjBcbiAgICAgICAgICAgIDogaGVhbHRoeVJldHJ5UG9saWN5Lm1pbkRlbGF5VGFyZ2V0LnRvU2Vjb25kcygpLFxuICAgICAgICBtYXhEZWxheVRhcmdldDpcbiAgICAgICAgICBoZWFsdGh5UmV0cnlQb2xpY3kubWF4RGVsYXlUYXJnZXQgPT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgPyAyMFxuICAgICAgICAgICAgOiBoZWFsdGh5UmV0cnlQb2xpY3kubWF4RGVsYXlUYXJnZXQudG9TZWNvbmRzKCksXG4gICAgICAgIG51bVJldHJpZXM6XG4gICAgICAgICAgaGVhbHRoeVJldHJ5UG9saWN5Lm51bVJldHJpZXMgPT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgPyAzXG4gICAgICAgICAgICA6IGhlYWx0aHlSZXRyeVBvbGljeS5udW1SZXRyaWVzLFxuICAgICAgICBudW1Ob0RlbGF5UmV0cmllczogaGVhbHRoeVJldHJ5UG9saWN5Lm51bU5vRGVsYXlSZXRyaWVzLFxuICAgICAgICBudW1NaW5EZWxheVJldHJpZXM6IGhlYWx0aHlSZXRyeVBvbGljeS5udW1NaW5EZWxheVJldHJpZXMsXG4gICAgICAgIG51bU1heERlbGF5UmV0cmllczogaGVhbHRoeVJldHJ5UG9saWN5Lm51bU1heERlbGF5UmV0cmllcyxcbiAgICAgICAgYmFja29mZkZ1bmN0aW9uOiBoZWFsdGh5UmV0cnlQb2xpY3kuYmFja29mZkZ1bmN0aW9uLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAodGhyb3R0bGVQb2xpY3kpIHtcbiAgICAgIGNvbnN0IG1heFJlY2VpdmVzUGVyU2Vjb25kID0gdGhyb3R0bGVQb2xpY3kubWF4UmVjZWl2ZXNQZXJTZWNvbmQ7XG4gICAgICBpZiAoXG4gICAgICAgIG1heFJlY2VpdmVzUGVyU2Vjb25kICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgKG1heFJlY2VpdmVzUGVyU2Vjb25kIDwgMSB8fCAhTnVtYmVyLmlzSW50ZWdlcihtYXhSZWNlaXZlc1BlclNlY29uZCkpXG4gICAgICApIHtcbiAgICAgICAgdGhyb3cgbmV3IFZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgICBgbWF4UmVjZWl2ZXNQZXJTZWNvbmQgbXVzdCBiZSBhbiBpbnRlZ2VyIGdyZWF0ZXIgdGhhbiB6ZXJvLCBnb3Q6ICR7bWF4UmVjZWl2ZXNQZXJTZWNvbmR9YCxcbiAgICAgICAgICB0aGlzLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgcmVuZGVyZWRQb2xpY3kudGhyb3R0bGVQb2xpY3kgPSB7XG4gICAgICAgIG1heFJlY2VpdmVzUGVyU2Vjb25kOiB0aHJvdHRsZVBvbGljeS5tYXhSZWNlaXZlc1BlclNlY29uZCxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgaWYgKHJlcXVlc3RQb2xpY3kpIHtcbiAgICAgIHJlbmRlcmVkUG9saWN5LnJlcXVlc3RQb2xpY3kgPSB7XG4gICAgICAgIGhlYWRlckNvbnRlbnRUeXBlOiByZXF1ZXN0UG9saWN5LmhlYWRlckNvbnRlbnRUeXBlLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkocmVuZGVyZWRQb2xpY3kpO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZERlYWRMZXR0ZXJRdWV1ZShcbiAgICBwcm9wczogU3Vic2NyaXB0aW9uUHJvcHMsXG4gICk6IG5vdGlmeS5JUXVldWUgfCB1bmRlZmluZWQge1xuICAgIGlmICghcHJvcHMuZGVhZExldHRlclF1ZXVlKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGNvbnN0IGRlYWRMZXR0ZXJRdWV1ZSA9IHByb3BzLmRlYWRMZXR0ZXJRdWV1ZTtcblxuICAgIGRlYWRMZXR0ZXJRdWV1ZS5hZGRUb1Jlc291cmNlUG9saWN5KFxuICAgICAgbmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICByZXNvdXJjZXM6IFtkZWFkTGV0dGVyUXVldWUucXVldWVBcm5dLFxuICAgICAgICBhY3Rpb25zOiBbXCJzcXM6U2VuZE1lc3NhZ2VcIl0sXG4gICAgICAgIHByaW5jaXBhbHM6IFtuZXcgaWFtLlNlcnZpY2VQcmluY2lwYWwoXCJzbnMuYW1hem9uYXdzLmNvbVwiKV0sXG4gICAgICAgIGNvbmRpdGlvbjogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHRlc3Q6IFwiQXJuRXF1YWxzXCIsXG4gICAgICAgICAgICB2YXJpYWJsZTogXCJhd3M6U291cmNlQXJuXCIsXG4gICAgICAgICAgICB2YWx1ZXM6IFtwcm9wcy50b3BpYy50b3BpY0Fybl0sXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgICk7XG5cbiAgICByZXR1cm4gZGVhZExldHRlclF1ZXVlO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZERlYWRMZXR0ZXJDb25maWcoXG4gICAgZGVhZExldHRlclF1ZXVlPzogbm90aWZ5LklRdWV1ZSxcbiAgKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoZGVhZExldHRlclF1ZXVlKSB7XG4gICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICBkZWFkTGV0dGVyVGFyZ2V0QXJuOiBkZWFkTGV0dGVyUXVldWUucXVldWVBcm4sXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBUaGUgdHlwZSBvZiBzdWJzY3JpcHRpb24sIGNvbnRyb2xsaW5nIHRoZSB0eXBlIG9mIHRoZSBlbmRwb2ludCBwYXJhbWV0ZXIuXG4gKi9cbmV4cG9ydCBlbnVtIFN1YnNjcmlwdGlvblByb3RvY29sIHtcbiAgLyoqXG4gICAqIEpTT04tZW5jb2RlZCBtZXNzYWdlIGlzIFBPU1RFRCB0byBhbiBIVFRQIHVybC5cbiAgICovXG4gIEhUVFAgPSBcImh0dHBcIixcblxuICAvKipcbiAgICogSlNPTi1lbmNvZGVkIG1lc3NhZ2UgaXMgUE9TVGVkIHRvIGFuIEhUVFBTIHVybC5cbiAgICovXG4gIEhUVFBTID0gXCJodHRwc1wiLFxuXG4gIC8qKlxuICAgKiBOb3RpZmljYXRpb25zIGFyZSBzZW50IHZpYSBlbWFpbC5cbiAgICovXG4gIEVNQUlMID0gXCJlbWFpbFwiLFxuXG4gIC8qKlxuICAgKiBOb3RpZmljYXRpb25zIGFyZSBKU09OLWVuY29kZWQgYW5kIHNlbnQgdmlhIG1haWwuXG4gICAqL1xuICBFTUFJTF9KU09OID0gXCJlbWFpbC1qc29uXCIsXG5cbiAgLyoqXG4gICAqIE5vdGlmaWNhdGlvbiBpcyBkZWxpdmVyZWQgYnkgU01TXG4gICAqL1xuICBTTVMgPSBcInNtc1wiLFxuXG4gIC8qKlxuICAgKiBOb3RpZmljYXRpb25zIGFyZSBlbnF1ZXVlZCBpbnRvIGFuIFNRUyBxdWV1ZS5cbiAgICovXG4gIFNRUyA9IFwic3FzXCIsXG5cbiAgLyoqXG4gICAqIEpTT04tZW5jb2RlZCBub3RpZmljYXRpb25zIGFyZSBzZW50IHRvIGEgbW9iaWxlIGFwcCBlbmRwb2ludC5cbiAgICovXG4gIEFQUExJQ0FUSU9OID0gXCJhcHBsaWNhdGlvblwiLFxuXG4gIC8qKlxuICAgKiBOb3RpZmljYXRpb25zIHRyaWdnZXIgYSBMYW1iZGEgZnVuY3Rpb24uXG4gICAqL1xuICBMQU1CREEgPSBcImxhbWJkYVwiLFxuXG4gIC8qKlxuICAgKiBOb3RpZmljYXRpb25zIHB1dCByZWNvcmRzIGludG8gYSBmaXJlaG9zZSBkZWxpdmVyeSBzdHJlYW0uXG4gICAqL1xuICBGSVJFSE9TRSA9IFwiZmlyZWhvc2VcIixcbn1cblxuZnVuY3Rpb24gYnVpbGRGaWx0ZXJQb2xpY3lXaXRoTWVzc2FnZUJvZHkoXG4gIHNjb3BlOiBDb25zdHJ1Y3QsXG4gIGlucHV0T2JqZWN0OiB7IFtrZXk6IHN0cmluZ106IEZpbHRlck9yUG9saWN5IH0sXG4gIGRlcHRoID0gMSxcbiAgdG90YWxDb21iaW5hdGlvblZhbHVlcyA9IFsxXSxcbik6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xuICBjb25zdCByZXN1bHQ6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPSB7fTtcblxuICBmb3IgKGNvbnN0IFtrZXksIGZpbHRlck9yUG9saWN5XSBvZiBPYmplY3QuZW50cmllcyhpbnB1dE9iamVjdCkpIHtcbiAgICBpZiAoZmlsdGVyT3JQb2xpY3kuaXNQb2xpY3koKSkge1xuICAgICAgcmVzdWx0W2tleV0gPSBidWlsZEZpbHRlclBvbGljeVdpdGhNZXNzYWdlQm9keShcbiAgICAgICAgc2NvcGUsXG4gICAgICAgIGZpbHRlck9yUG9saWN5LnBvbGljeURvYyxcbiAgICAgICAgZGVwdGggKyAxLFxuICAgICAgICB0b3RhbENvbWJpbmF0aW9uVmFsdWVzLFxuICAgICAgKTtcbiAgICB9IGVsc2UgaWYgKGZpbHRlck9yUG9saWN5LmlzRmlsdGVyKCkpIHtcbiAgICAgIGNvbnN0IGZpbHRlciA9IGZpbHRlck9yUG9saWN5LmZpbHRlckRvYy5jb25kaXRpb25zO1xuICAgICAgcmVzdWx0W2tleV0gPSBmaWx0ZXI7XG4gICAgICB0b3RhbENvbWJpbmF0aW9uVmFsdWVzWzBdICo9IGZpbHRlci5sZW5ndGggKiBkZXB0aDtcbiAgICB9XG4gIH1cblxuICAvLyBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vc25zL2xhdGVzdC9kZy9zdWJzY3JpcHRpb24tZmlsdGVyLXBvbGljeS1jb25zdHJhaW50cy5odG1sXG4gIGlmICh0b3RhbENvbWJpbmF0aW9uVmFsdWVzWzBdID4gMTUwKSB7XG4gICAgdGhyb3cgbmV3IFZhbGlkYXRpb25FcnJvcihcbiAgICAgIGBUaGUgdG90YWwgY29tYmluYXRpb24gb2YgdmFsdWVzICgke3RvdGFsQ29tYmluYXRpb25WYWx1ZXN9KSBtdXN0IG5vdCBleGNlZWQgMTUwLmAsXG4gICAgICBzY29wZSxcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuLyoqXG4gKiBUaGUgdHlwZSBvZiB0aGUgTWVzc2FnZUJvZHkgYXQgYSBnaXZlbiBrZXkgdmFsdWUgcGFpclxuICovXG5leHBvcnQgZW51bSBGaWx0ZXJPclBvbGljeVR5cGUge1xuICAvKipcbiAgICogVGhlIGZpbHRlciBvZiB0aGUgTWVzc2FnZUJvZHlcbiAgICovXG4gIEZJTFRFUixcbiAgLyoqXG4gICAqIEEgbmVzdGVkIGtleSBvZiB0aGUgTWVzc2FnZUJvZHlcbiAgICovXG4gIFBPTElDWSxcbn1cblxuLyoqXG4gKiBDbGFzcyBmb3IgYnVpbGRpbmcgdGhlIEZpbHRlclBvbGljeSBieSBhdm9pZGluZyB1bmlvbiB0eXBlc1xuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRmlsdGVyT3JQb2xpY3kge1xuICAvKipcbiAgICogRmlsdGVyIG9mIE1lc3NhZ2VCb2R5XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZpbHRlcihmaWx0ZXI6IFN1YnNjcmlwdGlvbkZpbHRlcikge1xuICAgIHJldHVybiBuZXcgRmlsdGVyKGZpbHRlcik7XG4gIH1cblxuICAvKipcbiAgICogUG9saWN5IG9mIE1lc3NhZ2VCb2R5XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHBvbGljeShwb2xpY3k6IHsgW2F0dHJpYnV0ZTogc3RyaW5nXTogRmlsdGVyT3JQb2xpY3kgfSkge1xuICAgIHJldHVybiBuZXcgUG9saWN5KHBvbGljeSk7XG4gIH1cblxuICAvKipcbiAgICogVHlwZSBzd2l0Y2ggZm9yIGRpc2FtYmlndWF0aW5nIGJldHdlZW4gc3ViY2xhc3Nlc1xuICAgKi9cbiAgYWJzdHJhY3QgcmVhZG9ubHkgdHlwZTogRmlsdGVyT3JQb2xpY3lUeXBlO1xuXG4gIC8qKlxuICAgKiBDaGVjayBpZiBpbnN0YW5jZSBpcyBgUG9saWN5YCB0eXBlXG4gICAqL1xuICBwdWJsaWMgaXNQb2xpY3koKTogdGhpcyBpcyBQb2xpY3kge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09IEZpbHRlck9yUG9saWN5VHlwZS5QT0xJQ1k7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgaW5zdGFuY2UgaXMgYEZpbHRlcmAgdHlwZVxuICAgKi9cbiAgcHVibGljIGlzRmlsdGVyKCk6IHRoaXMgaXMgRmlsdGVyIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBGaWx0ZXJPclBvbGljeVR5cGUuRklMVEVSO1xuICB9XG59XG5cbi8qKlxuICogRmlsdGVyIGltcGxlbWVudGF0aW9uIG9mIEZpbHRlck9yUG9saWN5XG4gKi9cbmV4cG9ydCBjbGFzcyBGaWx0ZXIgZXh0ZW5kcyBGaWx0ZXJPclBvbGljeSB7XG4gIC8qKlxuICAgKiBUeXBlIHVzZWQgaW4gREZTIGJ1aWxkRmlsdGVyUG9saWN5V2l0aE1lc3NhZ2VCb2R5IHRvIGRldGVybWluZSBqc29uIHZhbHVlIHR5cGVcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB0eXBlID0gRmlsdGVyT3JQb2xpY3lUeXBlLkZJTFRFUjtcbiAgLyoqXG4gICAqIFBvbGljeSBjb25zdHJ1Y3RvclxuICAgKiBAcGFyYW0gZmlsdGVyRG9jIGZpbHRlciBhcmd1bWVudCB0byBjb25zdHJ1Y3RcbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgZmlsdGVyRG9jOiBTdWJzY3JpcHRpb25GaWx0ZXIpIHtcbiAgICBzdXBlcigpO1xuICB9XG59XG5cbi8qKlxuICogUG9saWN5IEltcGxlbWVudGF0aW9uIG9mIEZpbHRlck9yUG9saWN5XG4gKi9cbmV4cG9ydCBjbGFzcyBQb2xpY3kgZXh0ZW5kcyBGaWx0ZXJPclBvbGljeSB7XG4gIC8qKlxuICAgKiBUeXBlIHVzZWQgaW4gREZTIGJ1aWxkRmlsdGVyUG9saWN5V2l0aE1lc3NhZ2VCb2R5IHRvIGRldGVybWluZSBqc29uIHZhbHVlIHR5cGVcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB0eXBlID0gRmlsdGVyT3JQb2xpY3lUeXBlLlBPTElDWTtcbiAgLyoqXG4gICAqIFBvbGljeSBjb25zdHJ1Y3RvclxuICAgKiBAcGFyYW0gcG9saWN5RG9jIHBvbGljeSBhcmd1bWVudCB0byBjb25zdHJ1Y3RcbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgcG9saWN5RG9jOiB7IFthdHRyaWJ1dGU6IHN0cmluZ106IEZpbHRlck9yUG9saWN5IH0sXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cbn1cbiJdfQ==
355
+ Policy[_d] = { fqn: "terraconstructs.aws.notify.Policy", version: "0.2.6" };
356
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F3cy9ub3RpZnkvc3Vic2NyaXB0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsZ0lBQWdJO0FBRWhJLHNEQUEyRDtBQUszRCx5Q0FBK0M7QUFDL0Msb0RBQW9EO0FBQ3BELDhCQUE4QjtBQThGOUI7Ozs7Ozs7R0FPRztBQUNILE1BQWEsWUFBYSxTQUFRLGdDQUFnQjtJQVNoRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUM7SUFDbEMsQ0FBQztJQUVELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBd0I7UUFDaEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFeEIsSUFDRSxLQUFLLENBQUMsa0JBQWtCO1lBQ3hCO2dCQUNFLG9CQUFvQixDQUFDLElBQUk7Z0JBQ3pCLG9CQUFvQixDQUFDLEtBQUs7Z0JBQzFCLG9CQUFvQixDQUFDLEdBQUc7Z0JBQ3hCLG9CQUFvQixDQUFDLFFBQVE7YUFDOUIsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFDN0IsQ0FBQztZQUNELE1BQU0sSUFBSSx3QkFBZSxDQUN2Qiw0RkFBNEYsRUFDNUYsSUFBSSxDQUNMLENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxnQkFBb0MsQ0FBQztRQUN6QyxzRkFBc0Y7UUFDdEYsSUFBSSxpQkFBa0UsQ0FBQztRQUV2RSxJQUFJLEtBQUssQ0FBQyxZQUFZLElBQUksS0FBSyxDQUFDLDJCQUEyQixFQUFFLENBQUM7WUFDNUQsTUFBTSxJQUFJLEtBQUssQ0FDYixtRkFBbUYsQ0FDcEYsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUFJLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN2QixJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDL0MsTUFBTSxJQUFJLHdCQUFlLENBQ3ZCLDBEQUEwRCxFQUMxRCxJQUFJLENBQ0wsQ0FBQztZQUNKLENBQUM7WUFFRCxNQUFNLHNCQUFzQixHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDLE1BQU0sQ0FDdEUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxFQUNoRCxFQUFFLENBQ0gsQ0FBQztZQUVGLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQztZQUNkLE1BQU0sQ0FBQyxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRTtnQkFDNUQsS0FBSyxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUM7WUFDekIsQ0FBQyxDQUFDLENBQUM7WUFDSCxJQUFJLEtBQUssR0FBRyxHQUFHLEVBQUUsQ0FBQztnQkFDaEIsTUFBTSxJQUFJLHdCQUFlLENBQ3ZCLG9DQUFvQyxLQUFLLHdCQUF3QixFQUNqRSxJQUFJLENBQ0wsQ0FBQztZQUNKLENBQUM7WUFDRCxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLHNCQUFzQixDQUFDLENBQUM7WUFDMUQsaUJBQWlCLEdBQUcsbUJBQW1CLENBQUMsQ0FBQyxnQkFBZ0I7UUFDM0QsQ0FBQzthQUFNLElBQUksS0FBSyxDQUFDLDJCQUEyQixFQUFFLENBQUM7WUFDN0MsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDOUQsTUFBTSxJQUFJLHdCQUFlLENBQ3ZCLDBEQUEwRCxFQUMxRCxJQUFJLENBQ0wsQ0FBQztZQUNKLENBQUM7WUFDRCxNQUFNLFdBQVcsR0FBRyxnQ0FBZ0MsQ0FDbEQsSUFBSSxFQUNKLEtBQUssQ0FBQywyQkFBMkIsQ0FDbEMsQ0FBQztZQUNGLGdCQUFnQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDL0MsaUJBQWlCLEdBQUcsYUFBYSxDQUFDO1FBQ3BDLENBQUM7UUFFRCxJQUNFLEtBQUssQ0FBQyxRQUFRLEtBQUssb0JBQW9CLENBQUMsUUFBUTtZQUNoRCxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsRUFDMUIsQ0FBQztZQUNELE1BQU0sSUFBSSx3QkFBZSxDQUN2QixxRkFBcUYsRUFDckYsSUFBSSxDQUNMLENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEQsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzNFLE1BQU0sa0JBQWtCLEdBQUcsS0FBSyxDQUFDLGNBQWM7WUFDN0MsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUM7WUFDakUsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUVkLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxtQ0FBb0IsQ0FBQyxvQkFBb0IsQ0FDM0QsSUFBSSxFQUNKLFVBQVUsRUFDVjtZQUNFLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtZQUN4QixRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVE7WUFDeEIsUUFBUSxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsUUFBUTtZQUM5QixrQkFBa0IsRUFBRSxLQUFLLENBQUMsa0JBQWtCO1lBQzVDLFlBQVksRUFBRSxnQkFBZ0I7WUFDOUIsaUJBQWlCLEVBQUUsaUJBQWlCO1lBQ3BDLGFBQWEsRUFBRSxpQkFBaUI7WUFDaEMsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLG1CQUFtQjtZQUM5QyxjQUFjLEVBQUUsa0JBQWtCO1lBQ2xDLE1BQU0sRUFDSixLQUFLLENBQUMsTUFBTSxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNO1lBQ3BFLHVFQUF1RTtZQUN2RSwrREFBK0Q7WUFDL0QsNEVBQTRFO1NBQzdFLENBQ0YsQ0FBQztRQUVGLElBQUksQ0FBQyxtQkFBbUIsR0FBRztZQUN6QixlQUFlLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHO1NBQ25DLENBQUM7SUFDSixDQUFDO0lBRU8sb0JBQW9CLENBQzFCLGNBQThCLEVBQzlCLFFBQThCO1FBRTlCLElBQ0UsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLElBQUksRUFBRSxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQy9ELFFBQVEsQ0FDVCxFQUNELENBQUM7WUFDRCxNQUFNLElBQUksd0JBQWUsQ0FDdkIsNEVBQTRFLFFBQVEsRUFBRSxFQUN0RixJQUFJLENBQ0wsQ0FBQztRQUNKLENBQUM7UUFDRCxNQUFNLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxHQUN6RCxjQUFjLENBQUM7UUFDakIsTUFBTSxjQUFjLEdBQVEsRUFBRSxDQUFDO1FBRS9CLElBQUksa0JBQWtCLEVBQUUsQ0FBQztZQUN2QixNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQztZQUNsQyxNQUFNLGNBQWMsR0FBRyxrQkFBa0IsQ0FBQyxjQUFjLENBQUM7WUFDekQsTUFBTSxjQUFjLEdBQUcsa0JBQWtCLENBQUMsY0FBYyxDQUFDO1lBQ3pELElBQUksY0FBYyxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUNqQyxJQUFJLGNBQWMsQ0FBQyxjQUFjLEVBQUUsR0FBRyxJQUFJLEtBQUssQ0FBQyxFQUFFLENBQUM7b0JBQ2pELE1BQU0sSUFBSSx3QkFBZSxDQUN2QiwwREFBMEQsY0FBYyxFQUFFLEVBQzFFLElBQUksQ0FDTCxDQUFDO2dCQUNKLENBQUM7Z0JBQ0QsTUFBTSxrQkFBa0IsR0FBRyxjQUFjLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ3RELElBQ0Usa0JBQWtCLEdBQUcsQ0FBQztvQkFDdEIsa0JBQWtCLEdBQUcsb0JBQW9CLEVBQ3pDLENBQUM7b0JBQ0QsTUFBTSxJQUFJLHdCQUFlLENBQ3ZCLHdDQUF3QyxvQkFBb0IsNEJBQTRCLGtCQUFrQixHQUFHLEVBQzdHLElBQUksQ0FDTCxDQUFDO2dCQUNKLENBQUM7WUFDSCxDQUFDO1lBQ0QsSUFBSSxjQUFjLEtBQUssU0FBUyxFQUFFLENBQUM7Z0JBQ2pDLElBQUksY0FBYyxDQUFDLGNBQWMsRUFBRSxHQUFHLElBQUksS0FBSyxDQUFDLEVBQUUsQ0FBQztvQkFDakQsTUFBTSxJQUFJLHdCQUFlLENBQ3ZCLDBEQUEwRCxjQUFjLEVBQUUsRUFDMUUsSUFBSSxDQUNMLENBQUM7Z0JBQ0osQ0FBQztnQkFDRCxNQUFNLGtCQUFrQixHQUFHLGNBQWMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDdEQsSUFDRSxrQkFBa0IsR0FBRyxDQUFDO29CQUN0QixrQkFBa0IsR0FBRyxvQkFBb0IsRUFDekMsQ0FBQztvQkFDRCxNQUFNLElBQUksd0JBQWUsQ0FDdkIsd0NBQXdDLG9CQUFvQiw0QkFBNEIsa0JBQWtCLEdBQUcsRUFDN0csSUFBSSxDQUNMLENBQUM7Z0JBQ0osQ0FBQztnQkFDRCxJQUNFLGNBQWMsS0FBSyxTQUFTO29CQUM1QixjQUFjLENBQUMsU0FBUyxFQUFFLEdBQUcsa0JBQWtCLEVBQy9DLENBQUM7b0JBQ0QsTUFBTSxJQUFJLHdCQUFlLENBQ3ZCLCtDQUErQyxFQUMvQyxJQUFJLENBQ0wsQ0FBQztnQkFDSixDQUFDO1lBQ0gsQ0FBQztZQUVELE1BQU0sZUFBZSxHQUFHLEdBQUcsQ0FBQztZQUM1QixJQUNFLGtCQUFrQixDQUFDLFVBQVU7Z0JBQzdCLENBQUMsa0JBQWtCLENBQUMsVUFBVSxHQUFHLENBQUM7b0JBQ2hDLGtCQUFrQixDQUFDLFVBQVUsR0FBRyxlQUFlLENBQUMsRUFDbEQsQ0FBQztnQkFDRCxNQUFNLElBQUksd0JBQWUsQ0FDdkIsb0NBQW9DLGVBQWUsb0JBQW9CLGtCQUFrQixDQUFDLFVBQVUsRUFBRSxFQUN0RyxJQUFJLENBQ0wsQ0FBQztZQUNKLENBQUM7WUFDRCxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsR0FDakUsa0JBQWtCLENBQUM7WUFDckIsSUFDRSxpQkFBaUI7Z0JBQ2pCLENBQUMsaUJBQWlCLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLEVBQy9ELENBQUM7Z0JBQ0QsTUFBTSxJQUFJLHdCQUFlLENBQ3ZCLDhEQUE4RCxpQkFBaUIsRUFBRSxFQUNqRixJQUFJLENBQ0wsQ0FBQztZQUNKLENBQUM7WUFDRCxJQUNFLGtCQUFrQjtnQkFDbEIsQ0FBQyxrQkFBa0IsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLGtCQUFrQixDQUFDLENBQUMsRUFDakUsQ0FBQztnQkFDRCxNQUFNLElBQUksd0JBQWUsQ0FDdkIsK0RBQStELGtCQUFrQixFQUFFLEVBQ25GLElBQUksQ0FDTCxDQUFDO1lBQ0osQ0FBQztZQUNELElBQ0Usa0JBQWtCO2dCQUNsQixDQUFDLGtCQUFrQixHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxFQUNqRSxDQUFDO2dCQUNELE1BQU0sSUFBSSx3QkFBZSxDQUN2QiwrREFBK0Qsa0JBQWtCLEVBQUUsRUFDbkYsSUFBSSxDQUNMLENBQUM7WUFDSixDQUFDO1lBRUQsY0FBYyxDQUFDLGtCQUFrQixHQUFHO2dCQUNsQyxjQUFjLEVBQ1osa0JBQWtCLENBQUMsY0FBYyxLQUFLLFNBQVM7b0JBQzdDLENBQUMsQ0FBQyxFQUFFO29CQUNKLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFO2dCQUNuRCxjQUFjLEVBQ1osa0JBQWtCLENBQUMsY0FBYyxLQUFLLFNBQVM7b0JBQzdDLENBQUMsQ0FBQyxFQUFFO29CQUNKLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFO2dCQUNuRCxVQUFVLEVBQ1Isa0JBQWtCLENBQUMsVUFBVSxLQUFLLFNBQVM7b0JBQ3pDLENBQUMsQ0FBQyxDQUFDO29CQUNILENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVO2dCQUNuQyxpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQyxpQkFBaUI7Z0JBQ3ZELGtCQUFrQixFQUFFLGtCQUFrQixDQUFDLGtCQUFrQjtnQkFDekQsa0JBQWtCLEVBQUUsa0JBQWtCLENBQUMsa0JBQWtCO2dCQUN6RCxlQUFlLEVBQUUsa0JBQWtCLENBQUMsZUFBZTthQUNwRCxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksY0FBYyxFQUFFLENBQUM7WUFDbkIsTUFBTSxvQkFBb0IsR0FBRyxjQUFjLENBQUMsb0JBQW9CLENBQUM7WUFDakUsSUFDRSxvQkFBb0IsS0FBSyxTQUFTO2dCQUNsQyxDQUFDLG9CQUFvQixHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxFQUNyRSxDQUFDO2dCQUNELE1BQU0sSUFBSSx3QkFBZSxDQUN2QixtRUFBbUUsb0JBQW9CLEVBQUUsRUFDekYsSUFBSSxDQUNMLENBQUM7WUFDSixDQUFDO1lBQ0QsY0FBYyxDQUFDLGNBQWMsR0FBRztnQkFDOUIsb0JBQW9CLEVBQUUsY0FBYyxDQUFDLG9CQUFvQjthQUMxRCxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksYUFBYSxFQUFFLENBQUM7WUFDbEIsY0FBYyxDQUFDLGFBQWEsR0FBRztnQkFDN0IsaUJBQWlCLEVBQUUsYUFBYSxDQUFDLGlCQUFpQjthQUNuRCxDQUFDO1FBQ0osQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRU8sb0JBQW9CLENBQzFCLEtBQXdCO1FBRXhCLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDM0IsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztRQUVELE1BQU0sZUFBZSxHQUFHLEtBQUssQ0FBQyxlQUFlLENBQUM7UUFFOUMsZUFBZSxDQUFDLG1CQUFtQixDQUNqQyxJQUFJLEdBQUcsQ0FBQyxlQUFlLENBQUM7WUFDdEIsU0FBUyxFQUFFLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQztZQUNyQyxPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztZQUM1QixVQUFVLEVBQUUsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1lBQzNELFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxJQUFJLEVBQUUsV0FBVztvQkFDakIsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO2lCQUMvQjthQUNGO1NBQ0YsQ0FBQyxDQUNILENBQUM7UUFFRixPQUFPLGVBQWUsQ0FBQztJQUN6QixDQUFDO0lBRU8scUJBQXFCLENBQzNCLGVBQStCO1FBRS9CLElBQUksZUFBZSxFQUFFLENBQUM7WUFDcEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO2dCQUNwQixtQkFBbUIsRUFBRSxlQUFlLENBQUMsUUFBUTthQUM5QyxDQUFDLENBQUM7UUFDTCxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUM7SUFDSCxDQUFDOztBQTFUSCxvQ0EyVEM7OztBQUVEOztHQUVHO0FBQ0gsSUFBWSxvQkE2Q1g7QUE3Q0QsV0FBWSxvQkFBb0I7SUFDOUI7O09BRUc7SUFDSCxxQ0FBYSxDQUFBO0lBRWI7O09BRUc7SUFDSCx1Q0FBZSxDQUFBO0lBRWY7O09BRUc7SUFDSCx1Q0FBZSxDQUFBO0lBRWY7O09BRUc7SUFDSCxpREFBeUIsQ0FBQTtJQUV6Qjs7T0FFRztJQUNILG1DQUFXLENBQUE7SUFFWDs7T0FFRztJQUNILG1DQUFXLENBQUE7SUFFWDs7T0FFRztJQUNILG1EQUEyQixDQUFBO0lBRTNCOztPQUVHO0lBQ0gseUNBQWlCLENBQUE7SUFFakI7O09BRUc7SUFDSCw2Q0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBN0NXLG9CQUFvQixvQ0FBcEIsb0JBQW9CLFFBNkMvQjtBQUVELFNBQVMsZ0NBQWdDLENBQ3ZDLEtBQWdCLEVBQ2hCLFdBQThDLEVBQzlDLEtBQUssR0FBRyxDQUFDLEVBQ1Qsc0JBQXNCLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFFNUIsTUFBTSxNQUFNLEdBQTJCLEVBQUUsQ0FBQztJQUUxQyxLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsY0FBYyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1FBQ2hFLElBQUksY0FBYyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7WUFDOUIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLGdDQUFnQyxDQUM1QyxLQUFLLEVBQ0wsY0FBYyxDQUFDLFNBQVMsRUFDeEIsS0FBSyxHQUFHLENBQUMsRUFDVCxzQkFBc0IsQ0FDdkIsQ0FBQztRQUNKLENBQUM7YUFBTSxJQUFJLGNBQWMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO1lBQ3JDLE1BQU0sTUFBTSxHQUFHLGNBQWMsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDO1lBQ25ELE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUM7WUFDckIsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDckQsQ0FBQztJQUNILENBQUM7SUFFRCx3RkFBd0Y7SUFDeEYsSUFBSSxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQztRQUNwQyxNQUFNLElBQUksd0JBQWUsQ0FDdkIsb0NBQW9DLHNCQUFzQix3QkFBd0IsRUFDbEYsS0FBSyxDQUNOLENBQUM7SUFDSixDQUFDO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUVEOztHQUVHO0FBQ0gsSUFBWSxrQkFTWDtBQVRELFdBQVksa0JBQWtCO0lBQzVCOztPQUVHO0lBQ0gsK0RBQU0sQ0FBQTtJQUNOOztPQUVHO0lBQ0gsK0RBQU0sQ0FBQTtBQUNSLENBQUMsRUFUVyxrQkFBa0Isa0NBQWxCLGtCQUFrQixRQVM3QjtBQUVEOztHQUVHO0FBQ0gsTUFBc0IsY0FBYztJQUNsQzs7T0FFRztJQUNJLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBMEI7UUFDN0MsT0FBTyxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQStDO1FBQ2xFLE9BQU8sSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQU9EOztPQUVHO0lBQ0ksUUFBUTtRQUNiLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxrQkFBa0IsQ0FBQyxNQUFNLENBQUM7SUFDakQsQ0FBQztJQUVEOztPQUVHO0lBQ0ksUUFBUTtRQUNiLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxrQkFBa0IsQ0FBQyxNQUFNLENBQUM7SUFDakQsQ0FBQzs7QUFoQ0gsd0NBaUNDOzs7QUFFRDs7R0FFRztBQUNILE1BQWEsTUFBTyxTQUFRLGNBQWM7SUFLeEM7OztPQUdHO0lBQ0gsWUFBbUMsU0FBNkI7UUFDOUQsS0FBSyxFQUFFLENBQUM7UUFEeUIsY0FBUyxHQUFULFNBQVMsQ0FBb0I7UUFSaEU7O1dBRUc7UUFDYSxTQUFJLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxDQUFDO0lBT2pELENBQUM7O0FBWEgsd0JBWUM7OztBQUVEOztHQUVHO0FBQ0gsTUFBYSxNQUFPLFNBQVEsY0FBYztJQUt4Qzs7O09BR0c7SUFDSCxZQUNrQixTQUFrRDtRQUVsRSxLQUFLLEVBQUUsQ0FBQztRQUZRLGNBQVMsR0FBVCxTQUFTLENBQXlDO1FBVHBFOztXQUVHO1FBQ2EsU0FBSSxHQUFHLGtCQUFrQixDQUFDLE1BQU0sQ0FBQztJQVNqRCxDQUFDOztBQWJILHdCQWNDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvNmI5ZTQ3YTE1MjkzMTk1NjFiYzEwNDA3MzlmZTAyYmFjMTU4OTViZi9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3Mtc25zL2xpYi9zdWJzY3JpcHRpb24udHNcblxuaW1wb3J0IHsgc25zVG9waWNTdWJzY3JpcHRpb24gfSBmcm9tIFwiQGNka3RuL3Byb3ZpZGVyLWF3c1wiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IERlbGl2ZXJ5UG9saWN5IH0gZnJvbSBcIi4vZGVsaXZlcnktcG9saWN5XCI7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb25GaWx0ZXIgfSBmcm9tIFwiLi9zdWJzY3JpcHRpb24tZmlsdGVyXCI7XG5pbXBvcnQgeyBJVG9waWMgfSBmcm9tIFwiLi90b3BpYy1iYXNlXCI7XG5pbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3IgfSBmcm9tIFwiLi4vLi4vZXJyb3JzXCI7XG5pbXBvcnQgeyBBd3NDb25zdHJ1Y3RCYXNlIH0gZnJvbSBcIi4uL2F3cy1jb25zdHJ1Y3RcIjtcbmltcG9ydCAqIGFzIGlhbSBmcm9tIFwiLi4vaWFtXCI7XG5pbXBvcnQgKiBhcyBub3RpZnkgZnJvbSBcIi4uL25vdGlmeVwiO1xuXG4vKipcbiAqIE91dHB1dHMgZm9yIHRoZSBTdWJzY3JpcHRpb24gY29uc3RydWN0LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN1YnNjcmlwdGlvbk91dHB1dHMge1xuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgc3Vic2NyaXB0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgc3Vic2NyaXB0aW9uQXJuOiBzdHJpbmc7XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgY3JlYXRpbmcgYSBuZXcgc3Vic2NyaXB0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3Vic2NyaXB0aW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBXaGF0IHR5cGUgb2Ygc3Vic2NyaXB0aW9uIHRvIGFkZC5cbiAgICovXG4gIHJlYWRvbmx5IHByb3RvY29sOiBTdWJzY3JpcHRpb25Qcm90b2NvbDtcblxuICAvKipcbiAgICogVGhlIHN1YnNjcmlwdGlvbiBlbmRwb2ludC5cbiAgICpcbiAgICogVGhlIG1lYW5pbmcgb2YgdGhpcyB2YWx1ZSBkZXBlbmRzIG9uIHRoZSB2YWx1ZSBmb3IgJ3Byb3RvY29sJy5cbiAgICovXG4gIHJlYWRvbmx5IGVuZHBvaW50OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIHRydWUgaWYgcmF3IG1lc3NhZ2UgZGVsaXZlcnkgaXMgZW5hYmxlZCBmb3IgdGhlIHN1YnNjcmlwdGlvbi4gUmF3IG1lc3NhZ2VzIGFyZSBmcmVlIG9mIEpTT04gZm9ybWF0dGluZyBhbmQgY2FuIGJlXG4gICAqIHNlbnQgdG8gSFRUUC9TIGFuZCBBbWF6b24gU1FTIGVuZHBvaW50cy4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSBHZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzIGluIHRoZSBBbWF6b24gU2ltcGxlXG4gICAqIE5vdGlmaWNhdGlvbiBTZXJ2aWNlIEFQSSBSZWZlcmVuY2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSByYXdNZXNzYWdlRGVsaXZlcnk/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgZmlsdGVyIHBvbGljeS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBhbGwgbWVzc2FnZXMgYXJlIGRlbGl2ZXJlZFxuICAgKi9cbiAgcmVhZG9ubHkgZmlsdGVyUG9saWN5PzogeyBbYXR0cmlidXRlOiBzdHJpbmddOiBTdWJzY3JpcHRpb25GaWx0ZXIgfTtcblxuICAvKipcbiAgICogVGhlIGZpbHRlciBwb2xpY3kgdGhhdCBpcyBhcHBsaWVkIG9uIHRoZSBtZXNzYWdlIGJvZHkuXG4gICAqIFRvIGFwcGx5IGEgZmlsdGVyIHBvbGljeSB0byB0aGUgbWVzc2FnZSBhdHRyaWJ1dGVzLCB1c2UgYGZpbHRlclBvbGljeWAuIEEgbWF4aW11bSBvZiBvbmUgb2YgYGZpbHRlclBvbGljeVdpdGhNZXNzYWdlQm9keWAgYW5kIGBmaWx0ZXJQb2xpY3lgIG1heSBiZSB1c2VkLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGFsbCBtZXNzYWdlcyBhcmUgZGVsaXZlcmVkXG4gICAqL1xuICByZWFkb25seSBmaWx0ZXJQb2xpY3lXaXRoTWVzc2FnZUJvZHk/OiB7XG4gICAgW2F0dHJpYnV0ZTogc3RyaW5nXTogRmlsdGVyT3JQb2xpY3k7XG4gIH07XG5cbiAgLyoqXG4gICAqIFRoZSByZWdpb24gd2hlcmUgdGhlIHRvcGljIHJlc2lkZXMsIGluIHRoZSBjYXNlIG9mIGNyb3NzLXJlZ2lvbiBzdWJzY3JpcHRpb25zXG4gICAqIEBsaW5rIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BV1NDbG91ZEZvcm1hdGlvbi9sYXRlc3QvVXNlckd1aWRlL2F3cy1yZXNvdXJjZS1zbnMtc3Vic2NyaXB0aW9uLmh0bWwjY2ZuLXNucy1zdWJzY3JpcHRpb24tcmVnaW9uXG4gICAqIEBkZWZhdWx0IC0gdGhlIHJlZ2lvbiB3aGVyZSB0aGUgc3RhY2sgaXMgYmVpbmcgZGVwbG95ZWQuXG4gICAqL1xuICByZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFF1ZXVlIHRvIGJlIHVzZWQgYXMgZGVhZCBsZXR0ZXIgcXVldWUuXG4gICAqIElmIG5vdCBwYXNzZWQgbm8gZGVhZCBsZXR0ZXIgcXVldWUgaXMgZW5hYmxlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyBkZWFkIGxldHRlciBxdWV1ZSBlbmFibGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVhZExldHRlclF1ZXVlPzogbm90aWZ5LklRdWV1ZTtcblxuICAvKipcbiAgICogQXJuIG9mIHJvbGUgYWxsb3dpbmcgYWNjZXNzIHRvIGZpcmVob3NlIGRlbGl2ZXJ5IHN0cmVhbS5cbiAgICogUmVxdWlyZWQgZm9yIGEgZmlyZWhvc2Ugc3Vic2NyaXB0aW9uIHByb3RvY29sLlxuICAgKiBAZGVmYXVsdCAtIE5vIHN1YnNjcmlwdGlvbiByb2xlIGlzIHByb3ZpZGVkXG4gICAqL1xuICByZWFkb25seSBzdWJzY3JpcHRpb25Sb2xlQXJuPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZGVsaXZlcnkgcG9saWN5LlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGlmIHRoZSBpbml0aWFsIGRlbGl2ZXJ5IG9mIHRoZSBtZXNzYWdlIGZhaWxzLCB0aHJlZSByZXRyaWVzIHdpdGggYSBkZWxheSBiZXR3ZWVuIGZhaWxlZCBhdHRlbXB0cyBzZXQgYXQgMjAgc2Vjb25kc1xuICAgKi9cbiAgcmVhZG9ubHkgZGVsaXZlcnlQb2xpY3k/OiBEZWxpdmVyeVBvbGljeTtcbn1cbi8qKlxuICogUHJvcGVydGllcyBmb3IgY3JlYXRpbmcgYSBuZXcgc3Vic2NyaXB0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3Vic2NyaXB0aW9uUHJvcHMgZXh0ZW5kcyBTdWJzY3JpcHRpb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSB0b3BpYyB0byBzdWJzY3JpYmUgdG8uXG4gICAqL1xuICByZWFkb25seSB0b3BpYzogSVRvcGljO1xufVxuXG4vKipcbiAqIEEgbmV3IHN1YnNjcmlwdGlvbi5cbiAqXG4gKiBQcmVmZXIgdG8gdXNlIHRoZSBgSVRvcGljLmFkZFN1YnNjcmlwdGlvbigpYCBtZXRob2RzIHRvIGNyZWF0ZSBpbnN0YW5jZXMgb2ZcbiAqIHRoaXMgY2xhc3MuXG4gKlxuICogQHJlc291cmNlIGF3c19zbnNfdG9waWNfc3Vic2NyaXB0aW9uXG4gKi9cbmV4cG9ydCBjbGFzcyBTdWJzY3JpcHRpb24gZXh0ZW5kcyBBd3NDb25zdHJ1Y3RCYXNlIHtcbiAgLyoqXG4gICAqIFRoZSBETFEgYXNzb2NpYXRlZCB3aXRoIHRoaXMgc3Vic2NyaXB0aW9uIGlmIHByZXNlbnQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZGVhZExldHRlclF1ZXVlPzogbm90aWZ5LklRdWV1ZTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHJlc291cmNlOiBzbnNUb3BpY1N1YnNjcmlwdGlvbi5TbnNUb3BpY1N1YnNjcmlwdGlvbjtcblxuICBwdWJsaWMgcmVhZG9ubHkgc3Vic2NyaXB0aW9uT3V0cHV0czogU3Vic2NyaXB0aW9uT3V0cHV0cztcbiAgcHVibGljIGdldCBvdXRwdXRzKCk6IFJlY29yZDxzdHJpbmcsIGFueT4ge1xuICAgIHJldHVybiB0aGlzLnN1YnNjcmlwdGlvbk91dHB1dHM7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogU3Vic2NyaXB0aW9uUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHByb3BzKTtcblxuICAgIGlmIChcbiAgICAgIHByb3BzLnJhd01lc3NhZ2VEZWxpdmVyeSAmJlxuICAgICAgW1xuICAgICAgICBTdWJzY3JpcHRpb25Qcm90b2NvbC5IVFRQLFxuICAgICAgICBTdWJzY3JpcHRpb25Qcm90b2NvbC5IVFRQUyxcbiAgICAgICAgU3Vic2NyaXB0aW9uUHJvdG9jb2wuU1FTLFxuICAgICAgICBTdWJzY3JpcHRpb25Qcm90b2NvbC5GSVJFSE9TRSxcbiAgICAgIF0uaW5kZXhPZihwcm9wcy5wcm90b2NvbCkgPCAwXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgVmFsaWRhdGlvbkVycm9yKFxuICAgICAgICBcIlJhdyBtZXNzYWdlIGRlbGl2ZXJ5IGNhbiBvbmx5IGJlIGVuYWJsZWQgZm9yIEhUVFAsIEhUVFBTLCBTUVMsIGFuZCBGaXJlaG9zZSBzdWJzY3JpcHRpb25zLlwiLFxuICAgICAgICB0aGlzLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBsZXQgZmlsdGVyUG9saWN5SnNvbjogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKiBXaGV0aGVyIHRoZSBmaWx0ZXJfcG9saWN5IGFwcGxpZXMgdG8gTWVzc2FnZUF0dHJpYnV0ZXMgKGRlZmF1bHQpIG9yIE1lc3NhZ2VCb2R5ICovXG4gICAgbGV0IGZpbHRlclBvbGljeVNjb3BlOiBcIk1lc3NhZ2VBdHRyaWJ1dGVzXCIgfCBcIk1lc3NhZ2VCb2R5XCIgfCB1bmRlZmluZWQ7XG5cbiAgICBpZiAocHJvcHMuZmlsdGVyUG9saWN5ICYmIHByb3BzLmZpbHRlclBvbGljeVdpdGhNZXNzYWdlQm9keSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIkEgbWF4aW11bSBvZiBvbmUgb2YgYGZpbHRlclBvbGljeVdpdGhNZXNzYWdlQm9keWAgYW5kIGBmaWx0ZXJQb2xpY3lgIG1heSBiZSB1c2VkLlwiLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMuZmlsdGVyUG9saWN5KSB7XG4gICAgICBpZiAoT2JqZWN0LmtleXMocHJvcHMuZmlsdGVyUG9saWN5KS5sZW5ndGggPiA1KSB7XG4gICAgICAgIHRocm93IG5ldyBWYWxpZGF0aW9uRXJyb3IoXG4gICAgICAgICAgXCJBIGZpbHRlciBwb2xpY3kgY2FuIGhhdmUgYSBtYXhpbXVtIG9mIDUgYXR0cmlidXRlIG5hbWVzLlwiLFxuICAgICAgICAgIHRoaXMsXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGZpbHRlclBvbGljeUNvbmRpdGlvbnMgPSBPYmplY3QuZW50cmllcyhwcm9wcy5maWx0ZXJQb2xpY3kpLnJlZHVjZShcbiAgICAgICAgKGFjYywgW2ssIHZdKSA9PiAoeyAuLi5hY2MsIFtrXTogdi5jb25kaXRpb25zIH0pLFxuICAgICAgICB7fSxcbiAgICAgICk7XG5cbiAgICAgIGxldCB0b3RhbCA9IDE7XG4gICAgICBPYmplY3QudmFsdWVzKGZpbHRlclBvbGljeUNvbmRpdGlvbnMpLmZvckVhY2goKGZpbHRlcjogYW55KSA9PiB7XG4gICAgICAgIHRvdGFsICo9IGZpbHRlci5sZW5ndGg7XG4gICAgICB9KTtcbiAgICAgIGlmICh0b3RhbCA+IDE1MCkge1xuICAgICAgICB0aHJvdyBuZXcgVmFsaWRhdGlvbkVycm9yKFxuICAgICAgICAgIGBUaGUgdG90YWwgY29tYmluYXRpb24gb2YgdmFsdWVzICgke3RvdGFsfSkgbXVzdCBub3QgZXhjZWVkIDE1MC5gLFxuICAgICAgICAgIHRoaXMsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBmaWx0ZXJQb2xpY3lKc29uID0gSlNPTi5zdHJpbmdpZnkoZmlsdGVyUG9saWN5Q29uZGl0aW9ucyk7XG4gICAgICBmaWx0ZXJQb2xpY3lTY29wZSA9IFwiTWVzc2FnZUF0dHJpYnV0ZXNcIjsgLy8gRGVmYXVsdCBzY29wZVxuICAgIH0gZWxzZSBpZiAocHJvcHMuZmlsdGVyUG9saWN5V2l0aE1lc3NhZ2VCb2R5KSB7XG4gICAgICBpZiAoT2JqZWN0LmtleXMocHJvcHMuZmlsdGVyUG9saWN5V2l0aE1lc3NhZ2VCb2R5KS5sZW5ndGggPiA1KSB7XG4gICAgICAgIHRocm93IG5ldyBWYWxpZGF0aW9uRXJyb3IoXG4gICAgICAgICAgXCJBIGZpbHRlciBwb2xpY3kgY2FuIGhhdmUgYSBtYXhpbXVtIG9mIDUgYXR0cmlidXRlIG5hbWVzLlwiLFxuICAgICAgICAgIHRoaXMsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBjb25zdCBidWlsdFBvbGljeSA9IGJ1aWxkRmlsdGVyUG9saWN5V2l0aE1lc3NhZ2VCb2R5KFxuICAgICAgICB0aGlzLFxuICAgICAgICBwcm9wcy5maWx0ZXJQb2xpY3lXaXRoTWVzc2FnZUJvZHksXG4gICAgICApO1xuICAgICAgZmlsdGVyUG9saWN5SnNvbiA9IEpTT04uc3RyaW5naWZ5KGJ1aWx0UG9saWN5KTtcbiAgICAgIGZpbHRlclBvbGljeVNjb3BlID0gXCJNZXNzYWdlQm9keVwiO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIHByb3BzLnByb3RvY29sID09PSBTdWJzY3JpcHRpb25Qcm90b2NvbC5GSVJFSE9TRSAmJlxuICAgICAgIXByb3BzLnN1YnNjcmlwdGlvblJvbGVBcm5cbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBWYWxpZGF0aW9uRXJyb3IoXG4gICAgICAgIFwiU3Vic2NyaXB0aW9uIHJvbGUgYXJuIGlzIHJlcXVpcmVkIGZpZWxkIGZvciBzdWJzY3JpcHRpb25zIHdpdGggYSBmaXJlaG9zZSBwcm90b2NvbC5cIixcbiAgICAgICAgdGhpcyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy5kZWFkTGV0dGVyUXVldWUgPSB0aGlzLmJ1aWxkRGVhZExldHRlclF1ZXVlKHByb3BzKTtcbiAgICBjb25zdCByZWRyaXZlUG9saWN5SnNvbiA9IHRoaXMuYnVpbGREZWFkTGV0dGVyQ29uZmlnKHRoaXMuZGVhZExldHRlclF1ZXVlKTtcbiAgICBjb25zdCBkZWxpdmVyeVBvbGljeUpzb24gPSBwcm9wcy5kZWxpdmVyeVBvbGljeVxuICAgICAgPyB0aGlzLnJlbmRlckRlbGl2ZXJ5UG9saWN5KHByb3BzLmRlbGl2ZXJ5UG9saWN5LCBwcm9wcy5wcm90b2NvbClcbiAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgdGhpcy5yZXNvdXJjZSA9IG5ldyBzbnNUb3BpY1N1YnNjcmlwdGlvbi5TbnNUb3BpY1N1YnNjcmlwdGlvbihcbiAgICAgIHRoaXMsXG4gICAgICBcIlJlc291cmNlXCIsXG4gICAgICB7XG4gICAgICAgIGVuZHBvaW50OiBwcm9wcy5lbmRwb2ludCxcbiAgICAgICAgcHJvdG9jb2w6IHByb3BzLnByb3RvY29sLFxuICAgICAgICB0b3BpY0FybjogcHJvcHMudG9waWMudG9waWNBcm4sXG4gICAgICAgIHJhd01lc3NhZ2VEZWxpdmVyeTogcHJvcHMucmF3TWVzc2FnZURlbGl2ZXJ5LFxuICAgICAgICBmaWx0ZXJQb2xpY3k6IGZpbHRlclBvbGljeUpzb24sXG4gICAgICAgIGZpbHRlclBvbGljeVNjb3BlOiBmaWx0ZXJQb2xpY3lTY29wZSxcbiAgICAgICAgcmVkcml2ZVBvbGljeTogcmVkcml2ZVBvbGljeUpzb24sXG4gICAgICAgIHN1YnNjcmlwdGlvblJvbGVBcm46IHByb3BzLnN1YnNjcmlwdGlvblJvbGVBcm4sXG4gICAgICAgIGRlbGl2ZXJ5UG9saWN5OiBkZWxpdmVyeVBvbGljeUpzb24sXG4gICAgICAgIHJlZ2lvbjpcbiAgICAgICAgICBwcm9wcy5yZWdpb24gPz8gcHJvcHMudG9waWMuZW52LnJlZ2lvbiA/PyBwcm9wcy50b3BpYy5zdGFjay5yZWdpb24sXG4gICAgICAgIC8vIGNvbmZpcm1hdGlvblRpbWVvdXRJbk1pbnV0ZXM6IC8vIE5vdCBkaXJlY3RseSBhdmFpbGFibGUgaW4gQ0RLIHByb3BzXG4gICAgICAgIC8vIGVuZHBvaW50QXV0b0NvbmZpcm1zOiAvLyBOb3QgZGlyZWN0bHkgYXZhaWxhYmxlIGluIENESyBwcm9wc1xuICAgICAgICAvLyByZXBsYXlQb2xpY3k6IC8vIE5vdCBkaXJlY3RseSBhdmFpbGFibGUgaW4gQ0RLIHByb3BzIChtaXNzaW5nIGluIEFXUyBDREspXG4gICAgICB9LFxuICAgICk7XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbk91dHB1dHMgPSB7XG4gICAgICBzdWJzY3JpcHRpb25Bcm46IHRoaXMucmVzb3VyY2UuYXJuLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIHJlbmRlckRlbGl2ZXJ5UG9saWN5KFxuICAgIGRlbGl2ZXJ5UG9saWN5OiBEZWxpdmVyeVBvbGljeSxcbiAgICBwcm90b2NvbDogU3Vic2NyaXB0aW9uUHJvdG9jb2wsXG4gICk6IHN0cmluZyB7XG4gICAgaWYgKFxuICAgICAgIVtTdWJzY3JpcHRpb25Qcm90b2NvbC5IVFRQLCBTdWJzY3JpcHRpb25Qcm90b2NvbC5IVFRQU10uaW5jbHVkZXMoXG4gICAgICAgIHByb3RvY29sLFxuICAgICAgKVxuICAgICkge1xuICAgICAgdGhyb3cgbmV3IFZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgYERlbGl2ZXJ5IHBvbGljeSBpcyBvbmx5IHN1cHBvcnRlZCBmb3IgSFRUUCBhbmQgSFRUUFMgc3Vic2NyaXB0aW9ucywgZ290OiAke3Byb3RvY29sfWAsXG4gICAgICAgIHRoaXMsXG4gICAgICApO1xuICAgIH1cbiAgICBjb25zdCB7IGhlYWx0aHlSZXRyeVBvbGljeSwgdGhyb3R0bGVQb2xpY3ksIHJlcXVlc3RQb2xpY3kgfSA9XG4gICAgICBkZWxpdmVyeVBvbGljeTtcbiAgICBjb25zdCByZW5kZXJlZFBvbGljeTogYW55ID0ge307XG5cbiAgICBpZiAoaGVhbHRoeVJldHJ5UG9saWN5KSB7XG4gICAgICBjb25zdCBkZWxheVRhcmdldExpbWl0U2VjcyA9IDM2MDA7XG4gICAgICBjb25zdCBtaW5EZWxheVRhcmdldCA9IGhlYWx0aHlSZXRyeVBvbGljeS5taW5EZWxheVRhcmdldDtcbiAgICAgIGNvbnN0IG1heERlbGF5VGFyZ2V0ID0gaGVhbHRoeVJldHJ5UG9saWN5Lm1heERlbGF5VGFyZ2V0O1xuICAgICAgaWYgKG1pbkRlbGF5VGFyZ2V0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgaWYgKG1pbkRlbGF5VGFyZ2V0LnRvTWlsbGlzZWNvbmRzKCkgJSAxMDAwICE9PSAwKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IFZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgICAgIGBtaW5EZWxheVRhcmdldCBtdXN0IGJlIGEgd2hvbGUgbnVtYmVyIG9mIHNlY29uZHMsIGdvdDogJHttaW5EZWxheVRhcmdldH1gLFxuICAgICAgICAgICAgdGhpcyxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG1pbkRlbGF5VGFyZ2V0U2VjcyA9IG1pbkRlbGF5VGFyZ2V0LnRvU2Vjb25kcygpO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgbWluRGVsYXlUYXJnZXRTZWNzIDwgMSB8fFxuICAgICAgICAgIG1pbkRlbGF5VGFyZ2V0U2VjcyA+IGRlbGF5VGFyZ2V0TGltaXRTZWNzXG4gICAgICAgICkge1xuICAgICAgICAgIHRocm93IG5ldyBWYWxpZGF0aW9uRXJyb3IoXG4gICAgICAgICAgICBgbWluRGVsYXlUYXJnZXQgbXVzdCBiZSBiZXR3ZWVuIDEgYW5kICR7ZGVsYXlUYXJnZXRMaW1pdFNlY3N9IHNlY29uZHMgaW5jbHVzaXZlLCBnb3Q6ICR7bWluRGVsYXlUYXJnZXRTZWNzfXNgLFxuICAgICAgICAgICAgdGhpcyxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAobWF4RGVsYXlUYXJnZXQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBpZiAobWF4RGVsYXlUYXJnZXQudG9NaWxsaXNlY29uZHMoKSAlIDEwMDAgIT09IDApIHtcbiAgICAgICAgICB0aHJvdyBuZXcgVmFsaWRhdGlvbkVycm9yKFxuICAgICAgICAgICAgYG1heERlbGF5VGFyZ2V0IG11c3QgYmUgYSB3aG9sZSBudW1iZXIgb2Ygc2Vjb25kcywgZ290OiAke21heERlbGF5VGFyZ2V0fWAsXG4gICAgICAgICAgICB0aGlzLFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbWF4RGVsYXlUYXJnZXRTZWNzID0gbWF4RGVsYXlUYXJnZXQudG9TZWNvbmRzKCk7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBtYXhEZWxheVRhcmdldFNlY3MgPCAxIHx8XG4gICAgICAgICAgbWF4RGVsYXlUYXJnZXRTZWNzID4gZGVsYXlUYXJnZXRMaW1pdFNlY3NcbiAgICAgICAgKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IFZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgICAgIGBtYXhEZWxheVRhcmdldCBtdXN0IGJlIGJldHdlZW4gMSBhbmQgJHtkZWxheVRhcmdldExpbWl0U2Vjc30gc2Vjb25kcyBpbmNsdXNpdmUsIGdvdDogJHttYXhEZWxheVRhcmdldFNlY3N9c2AsXG4gICAgICAgICAgICB0aGlzLFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKFxuICAgICAgICAgIG1pbkRlbGF5VGFyZ2V0ICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICBtaW5EZWxheVRhcmdldC50b1NlY29uZHMoKSA+IG1heERlbGF5VGFyZ2V0U2Vjc1xuICAgICAgICApIHtcbiAgICAgICAgICB0aHJvdyBuZXcgVmFsaWRhdGlvbkVycm9yKFxuICAgICAgICAgICAgXCJtaW5EZWxheVRhcmdldCBtdXN0IG5vdCBleGNlZWQgbWF4RGVsYXlUYXJnZXRcIixcbiAgICAgICAgICAgIHRoaXMsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjb25zdCBudW1SZXRyaWVzTGltaXQgPSAxMDA7XG4gICAgICBpZiAoXG4gICAgICAgIGhlYWx0aHlSZXRyeVBvbGljeS5udW1SZXRyaWVzICYmXG4gICAgICAgIChoZWFsdGh5UmV0cnlQb2xpY3kubnVtUmV0cmllcyA8IDAgfHxcbiAgICAgICAgICBoZWFsdGh5UmV0cnlQb2xpY3kubnVtUmV0cmllcyA+IG51bVJldHJpZXNMaW1pdClcbiAgICAgICkge1xuICAgICAgICB0aHJvdyBuZXcgVmFsaWRhdGlvbkVycm9yKFxuICAgICAgICAgIGBudW1SZXRyaWVzIG11c3QgYmUgYmV0d2VlbiAwIGFuZCAke251bVJldHJpZXNMaW1pdH0gaW5jbHVzaXZlLCBnb3Q6ICR7aGVhbHRoeVJldHJ5UG9saWN5Lm51bVJldHJpZXN9YCxcbiAgICAgICAgICB0aGlzLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgY29uc3QgeyBudW1Ob0RlbGF5UmV0cmllcywgbnVtTWluRGVsYXlSZXRyaWVzLCBudW1NYXhEZWxheVJldHJpZXMgfSA9XG4gICAgICAgIGhlYWx0aHlSZXRyeVBvbGljeTtcbiAgICAgIGlmIChcbiAgICAgICAgbnVtTm9EZWxheVJldHJpZXMgJiZcbiAgICAgICAgKG51bU5vRGVsYXlSZXRyaWVzIDwgMCB8fCAhTnVtYmVyLmlzSW50ZWdlcihudW1Ob0RlbGF5UmV0cmllcykpXG4gICAgICApIHtcbiAgICAgICAgdGhyb3cgbmV3IFZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgICBgbnVtTm9EZWxheVJldHJpZXMgbXVzdCBiZSBhbiBpbnRlZ2VyIHplcm8gb3IgZ3JlYXRlciwgZ290OiAke251bU5vRGVsYXlSZXRyaWVzfWAsXG4gICAgICAgICAgdGhpcyxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIGlmIChcbiAgICAgICAgbnVtTWluRGVsYXlSZXRyaWVzICYmXG4gICAgICAgIChudW1NaW5EZWxheVJldHJpZXMgPCAwIHx8ICFOdW1iZXIuaXNJbnRlZ2VyKG51bU1pbkRlbGF5UmV0cmllcykpXG4gICAgICApIHtcbiAgICAgICAgdGhyb3cgbmV3IFZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgICBgbnVtTWluRGVsYXlSZXRyaWVzIG11c3QgYmUgYW4gaW50ZWdlciB6ZXJvIG9yIGdyZWF0ZXIsIGdvdDogJHtudW1NaW5EZWxheVJldHJpZXN9YCxcbiAgICAgICAgICB0aGlzLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgaWYgKFxuICAgICAgICBudW1NYXhEZWxheVJldHJpZXMgJiZcbiAgICAgICAgKG51bU1heERlbGF5UmV0cmllcyA8IDAgfHwgIU51bWJlci5pc0ludGVnZXIobnVtTWF4RGVsYXlSZXRyaWVzKSlcbiAgICAgICkge1xuICAgICAgICB0aHJvdyBuZXcgVmFsaWRhdGlvbkVycm9yKFxuICAgICAgICAgIGBudW1NYXhEZWxheVJldHJpZXMgbXVzdCBiZSBhbiBpbnRlZ2VyIHplcm8gb3IgZ3JlYXRlciwgZ290OiAke251bU1heERlbGF5UmV0cmllc31gLFxuICAgICAgICAgIHRoaXMsXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIHJlbmRlcmVkUG9saWN5LmhlYWx0aHlSZXRyeVBvbGljeSA9IHtcbiAgICAgICAgbWluRGVsYXlUYXJnZXQ6XG4gICAgICAgICAgaGVhbHRoeVJldHJ5UG9saWN5Lm1pbkRlbGF5VGFyZ2V0ID09PSB1bmRlZmluZWRcbiAgICAgICAgICAgID8gMjBcbiAgICAgICAgICAgIDogaGVhbHRoeVJldHJ5UG9saWN5Lm1pbkRlbGF5VGFyZ2V0LnRvU2Vjb25kcygpLFxuICAgICAgICBtYXhEZWxheVRhcmdldDpcbiAgICAgICAgICBoZWFsdGh5UmV0cnlQb2xpY3kubWF4RGVsYXlUYXJnZXQgPT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgPyAyMFxuICAgICAgICAgICAgOiBoZWFsdGh5UmV0cnlQb2xpY3kubWF4RGVsYXlUYXJnZXQudG9TZWNvbmRzKCksXG4gICAgICAgIG51bVJldHJpZXM6XG4gICAgICAgICAgaGVhbHRoeVJldHJ5UG9saWN5Lm51bVJldHJpZXMgPT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgPyAzXG4gICAgICAgICAgICA6IGhlYWx0aHlSZXRyeVBvbGljeS5udW1SZXRyaWVzLFxuICAgICAgICBudW1Ob0RlbGF5UmV0cmllczogaGVhbHRoeVJldHJ5UG9saWN5Lm51bU5vRGVsYXlSZXRyaWVzLFxuICAgICAgICBudW1NaW5EZWxheVJldHJpZXM6IGhlYWx0aHlSZXRyeVBvbGljeS5udW1NaW5EZWxheVJldHJpZXMsXG4gICAgICAgIG51bU1heERlbGF5UmV0cmllczogaGVhbHRoeVJldHJ5UG9saWN5Lm51bU1heERlbGF5UmV0cmllcyxcbiAgICAgICAgYmFja29mZkZ1bmN0aW9uOiBoZWFsdGh5UmV0cnlQb2xpY3kuYmFja29mZkZ1bmN0aW9uLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAodGhyb3R0bGVQb2xpY3kpIHtcbiAgICAgIGNvbnN0IG1heFJlY2VpdmVzUGVyU2Vjb25kID0gdGhyb3R0bGVQb2xpY3kubWF4UmVjZWl2ZXNQZXJTZWNvbmQ7XG4gICAgICBpZiAoXG4gICAgICAgIG1heFJlY2VpdmVzUGVyU2Vjb25kICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgKG1heFJlY2VpdmVzUGVyU2Vjb25kIDwgMSB8fCAhTnVtYmVyLmlzSW50ZWdlcihtYXhSZWNlaXZlc1BlclNlY29uZCkpXG4gICAgICApIHtcbiAgICAgICAgdGhyb3cgbmV3IFZhbGlkYXRpb25FcnJvcihcbiAgICAgICAgICBgbWF4UmVjZWl2ZXNQZXJTZWNvbmQgbXVzdCBiZSBhbiBpbnRlZ2VyIGdyZWF0ZXIgdGhhbiB6ZXJvLCBnb3Q6ICR7bWF4UmVjZWl2ZXNQZXJTZWNvbmR9YCxcbiAgICAgICAgICB0aGlzLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgcmVuZGVyZWRQb2xpY3kudGhyb3R0bGVQb2xpY3kgPSB7XG4gICAgICAgIG1heFJlY2VpdmVzUGVyU2Vjb25kOiB0aHJvdHRsZVBvbGljeS5tYXhSZWNlaXZlc1BlclNlY29uZCxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgaWYgKHJlcXVlc3RQb2xpY3kpIHtcbiAgICAgIHJlbmRlcmVkUG9saWN5LnJlcXVlc3RQb2xpY3kgPSB7XG4gICAgICAgIGhlYWRlckNvbnRlbnRUeXBlOiByZXF1ZXN0UG9saWN5LmhlYWRlckNvbnRlbnRUeXBlLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkocmVuZGVyZWRQb2xpY3kpO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZERlYWRMZXR0ZXJRdWV1ZShcbiAgICBwcm9wczogU3Vic2NyaXB0aW9uUHJvcHMsXG4gICk6IG5vdGlmeS5JUXVldWUgfCB1bmRlZmluZWQge1xuICAgIGlmICghcHJvcHMuZGVhZExldHRlclF1ZXVlKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGNvbnN0IGRlYWRMZXR0ZXJRdWV1ZSA9IHByb3BzLmRlYWRMZXR0ZXJRdWV1ZTtcblxuICAgIGRlYWRMZXR0ZXJRdWV1ZS5hZGRUb1Jlc291cmNlUG9saWN5KFxuICAgICAgbmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICByZXNvdXJjZXM6IFtkZWFkTGV0dGVyUXVldWUucXVldWVBcm5dLFxuICAgICAgICBhY3Rpb25zOiBbXCJzcXM6U2VuZE1lc3NhZ2VcIl0sXG4gICAgICAgIHByaW5jaXBhbHM6IFtuZXcgaWFtLlNlcnZpY2VQcmluY2lwYWwoXCJzbnMuYW1hem9uYXdzLmNvbVwiKV0sXG4gICAgICAgIGNvbmRpdGlvbjogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHRlc3Q6IFwiQXJuRXF1YWxzXCIsXG4gICAgICAgICAgICB2YXJpYWJsZTogXCJhd3M6U291cmNlQXJuXCIsXG4gICAgICAgICAgICB2YWx1ZXM6IFtwcm9wcy50b3BpYy50b3BpY0Fybl0sXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgICk7XG5cbiAgICByZXR1cm4gZGVhZExldHRlclF1ZXVlO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZERlYWRMZXR0ZXJDb25maWcoXG4gICAgZGVhZExldHRlclF1ZXVlPzogbm90aWZ5LklRdWV1ZSxcbiAgKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoZGVhZExldHRlclF1ZXVlKSB7XG4gICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICBkZWFkTGV0dGVyVGFyZ2V0QXJuOiBkZWFkTGV0dGVyUXVldWUucXVldWVBcm4sXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBUaGUgdHlwZSBvZiBzdWJzY3JpcHRpb24sIGNvbnRyb2xsaW5nIHRoZSB0eXBlIG9mIHRoZSBlbmRwb2ludCBwYXJhbWV0ZXIuXG4gKi9cbmV4cG9ydCBlbnVtIFN1YnNjcmlwdGlvblByb3RvY29sIHtcbiAgLyoqXG4gICAqIEpTT04tZW5jb2RlZCBtZXNzYWdlIGlzIFBPU1RFRCB0byBhbiBIVFRQIHVybC5cbiAgICovXG4gIEhUVFAgPSBcImh0dHBcIixcblxuICAvKipcbiAgICogSlNPTi1lbmNvZGVkIG1lc3NhZ2UgaXMgUE9TVGVkIHRvIGFuIEhUVFBTIHVybC5cbiAgICovXG4gIEhUVFBTID0gXCJodHRwc1wiLFxuXG4gIC8qKlxuICAgKiBOb3RpZmljYXRpb25zIGFyZSBzZW50IHZpYSBlbWFpbC5cbiAgICovXG4gIEVNQUlMID0gXCJlbWFpbFwiLFxuXG4gIC8qKlxuICAgKiBOb3RpZmljYXRpb25zIGFyZSBKU09OLWVuY29kZWQgYW5kIHNlbnQgdmlhIG1haWwuXG4gICAqL1xuICBFTUFJTF9KU09OID0gXCJlbWFpbC1qc29uXCIsXG5cbiAgLyoqXG4gICAqIE5vdGlmaWNhdGlvbiBpcyBkZWxpdmVyZWQgYnkgU01TXG4gICAqL1xuICBTTVMgPSBcInNtc1wiLFxuXG4gIC8qKlxuICAgKiBOb3RpZmljYXRpb25zIGFyZSBlbnF1ZXVlZCBpbnRvIGFuIFNRUyBxdWV1ZS5cbiAgICovXG4gIFNRUyA9IFwic3FzXCIsXG5cbiAgLyoqXG4gICAqIEpTT04tZW5jb2RlZCBub3RpZmljYXRpb25zIGFyZSBzZW50IHRvIGEgbW9iaWxlIGFwcCBlbmRwb2ludC5cbiAgICovXG4gIEFQUExJQ0FUSU9OID0gXCJhcHBsaWNhdGlvblwiLFxuXG4gIC8qKlxuICAgKiBOb3RpZmljYXRpb25zIHRyaWdnZXIgYSBMYW1iZGEgZnVuY3Rpb24uXG4gICAqL1xuICBMQU1CREEgPSBcImxhbWJkYVwiLFxuXG4gIC8qKlxuICAgKiBOb3RpZmljYXRpb25zIHB1dCByZWNvcmRzIGludG8gYSBmaXJlaG9zZSBkZWxpdmVyeSBzdHJlYW0uXG4gICAqL1xuICBGSVJFSE9TRSA9IFwiZmlyZWhvc2VcIixcbn1cblxuZnVuY3Rpb24gYnVpbGRGaWx0ZXJQb2xpY3lXaXRoTWVzc2FnZUJvZHkoXG4gIHNjb3BlOiBDb25zdHJ1Y3QsXG4gIGlucHV0T2JqZWN0OiB7IFtrZXk6IHN0cmluZ106IEZpbHRlck9yUG9saWN5IH0sXG4gIGRlcHRoID0gMSxcbiAgdG90YWxDb21iaW5hdGlvblZhbHVlcyA9IFsxXSxcbik6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xuICBjb25zdCByZXN1bHQ6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPSB7fTtcblxuICBmb3IgKGNvbnN0IFtrZXksIGZpbHRlck9yUG9saWN5XSBvZiBPYmplY3QuZW50cmllcyhpbnB1dE9iamVjdCkpIHtcbiAgICBpZiAoZmlsdGVyT3JQb2xpY3kuaXNQb2xpY3koKSkge1xuICAgICAgcmVzdWx0W2tleV0gPSBidWlsZEZpbHRlclBvbGljeVdpdGhNZXNzYWdlQm9keShcbiAgICAgICAgc2NvcGUsXG4gICAgICAgIGZpbHRlck9yUG9saWN5LnBvbGljeURvYyxcbiAgICAgICAgZGVwdGggKyAxLFxuICAgICAgICB0b3RhbENvbWJpbmF0aW9uVmFsdWVzLFxuICAgICAgKTtcbiAgICB9IGVsc2UgaWYgKGZpbHRlck9yUG9saWN5LmlzRmlsdGVyKCkpIHtcbiAgICAgIGNvbnN0IGZpbHRlciA9IGZpbHRlck9yUG9saWN5LmZpbHRlckRvYy5jb25kaXRpb25zO1xuICAgICAgcmVzdWx0W2tleV0gPSBmaWx0ZXI7XG4gICAgICB0b3RhbENvbWJpbmF0aW9uVmFsdWVzWzBdICo9IGZpbHRlci5sZW5ndGggKiBkZXB0aDtcbiAgICB9XG4gIH1cblxuICAvLyBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vc25zL2xhdGVzdC9kZy9zdWJzY3JpcHRpb24tZmlsdGVyLXBvbGljeS1jb25zdHJhaW50cy5odG1sXG4gIGlmICh0b3RhbENvbWJpbmF0aW9uVmFsdWVzWzBdID4gMTUwKSB7XG4gICAgdGhyb3cgbmV3IFZhbGlkYXRpb25FcnJvcihcbiAgICAgIGBUaGUgdG90YWwgY29tYmluYXRpb24gb2YgdmFsdWVzICgke3RvdGFsQ29tYmluYXRpb25WYWx1ZXN9KSBtdXN0IG5vdCBleGNlZWQgMTUwLmAsXG4gICAgICBzY29wZSxcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuLyoqXG4gKiBUaGUgdHlwZSBvZiB0aGUgTWVzc2FnZUJvZHkgYXQgYSBnaXZlbiBrZXkgdmFsdWUgcGFpclxuICovXG5leHBvcnQgZW51bSBGaWx0ZXJPclBvbGljeVR5cGUge1xuICAvKipcbiAgICogVGhlIGZpbHRlciBvZiB0aGUgTWVzc2FnZUJvZHlcbiAgICovXG4gIEZJTFRFUixcbiAgLyoqXG4gICAqIEEgbmVzdGVkIGtleSBvZiB0aGUgTWVzc2FnZUJvZHlcbiAgICovXG4gIFBPTElDWSxcbn1cblxuLyoqXG4gKiBDbGFzcyBmb3IgYnVpbGRpbmcgdGhlIEZpbHRlclBvbGljeSBieSBhdm9pZGluZyB1bmlvbiB0eXBlc1xuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRmlsdGVyT3JQb2xpY3kge1xuICAvKipcbiAgICogRmlsdGVyIG9mIE1lc3NhZ2VCb2R5XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZpbHRlcihmaWx0ZXI6IFN1YnNjcmlwdGlvbkZpbHRlcikge1xuICAgIHJldHVybiBuZXcgRmlsdGVyKGZpbHRlcik7XG4gIH1cblxuICAvKipcbiAgICogUG9saWN5IG9mIE1lc3NhZ2VCb2R5XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHBvbGljeShwb2xpY3k6IHsgW2F0dHJpYnV0ZTogc3RyaW5nXTogRmlsdGVyT3JQb2xpY3kgfSkge1xuICAgIHJldHVybiBuZXcgUG9saWN5KHBvbGljeSk7XG4gIH1cblxuICAvKipcbiAgICogVHlwZSBzd2l0Y2ggZm9yIGRpc2FtYmlndWF0aW5nIGJldHdlZW4gc3ViY2xhc3Nlc1xuICAgKi9cbiAgYWJzdHJhY3QgcmVhZG9ubHkgdHlwZTogRmlsdGVyT3JQb2xpY3lUeXBlO1xuXG4gIC8qKlxuICAgKiBDaGVjayBpZiBpbnN0YW5jZSBpcyBgUG9saWN5YCB0eXBlXG4gICAqL1xuICBwdWJsaWMgaXNQb2xpY3koKTogdGhpcyBpcyBQb2xpY3kge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09IEZpbHRlck9yUG9saWN5VHlwZS5QT0xJQ1k7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgaW5zdGFuY2UgaXMgYEZpbHRlcmAgdHlwZVxuICAgKi9cbiAgcHVibGljIGlzRmlsdGVyKCk6IHRoaXMgaXMgRmlsdGVyIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBGaWx0ZXJPclBvbGljeVR5cGUuRklMVEVSO1xuICB9XG59XG5cbi8qKlxuICogRmlsdGVyIGltcGxlbWVudGF0aW9uIG9mIEZpbHRlck9yUG9saWN5XG4gKi9cbmV4cG9ydCBjbGFzcyBGaWx0ZXIgZXh0ZW5kcyBGaWx0ZXJPclBvbGljeSB7XG4gIC8qKlxuICAgKiBUeXBlIHVzZWQgaW4gREZTIGJ1aWxkRmlsdGVyUG9saWN5V2l0aE1lc3NhZ2VCb2R5IHRvIGRldGVybWluZSBqc29uIHZhbHVlIHR5cGVcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB0eXBlID0gRmlsdGVyT3JQb2xpY3lUeXBlLkZJTFRFUjtcbiAgLyoqXG4gICAqIFBvbGljeSBjb25zdHJ1Y3RvclxuICAgKiBAcGFyYW0gZmlsdGVyRG9jIGZpbHRlciBhcmd1bWVudCB0byBjb25zdHJ1Y3RcbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgZmlsdGVyRG9jOiBTdWJzY3JpcHRpb25GaWx0ZXIpIHtcbiAgICBzdXBlcigpO1xuICB9XG59XG5cbi8qKlxuICogUG9saWN5IEltcGxlbWVudGF0aW9uIG9mIEZpbHRlck9yUG9saWN5XG4gKi9cbmV4cG9ydCBjbGFzcyBQb2xpY3kgZXh0ZW5kcyBGaWx0ZXJPclBvbGljeSB7XG4gIC8qKlxuICAgKiBUeXBlIHVzZWQgaW4gREZTIGJ1aWxkRmlsdGVyUG9saWN5V2l0aE1lc3NhZ2VCb2R5IHRvIGRldGVybWluZSBqc29uIHZhbHVlIHR5cGVcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB0eXBlID0gRmlsdGVyT3JQb2xpY3lUeXBlLlBPTElDWTtcbiAgLyoqXG4gICAqIFBvbGljeSBjb25zdHJ1Y3RvclxuICAgKiBAcGFyYW0gcG9saWN5RG9jIHBvbGljeSBhcmd1bWVudCB0byBjb25zdHJ1Y3RcbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgcG9saWN5RG9jOiB7IFthdHRyaWJ1dGU6IHN0cmluZ106IEZpbHRlck9yUG9saWN5IH0sXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cbn1cbiJdfQ==
@@ -33,5 +33,5 @@ class EmailSubscription {
33
33
  }
34
34
  exports.EmailSubscription = EmailSubscription;
35
35
  _a = JSII_RTTI_SYMBOL_1;
36
- EmailSubscription[_a] = { fqn: "terraconstructs.aws.notify.subscriptions.EmailSubscription", version: "0.2.4" };
36
+ EmailSubscription[_a] = { fqn: "terraconstructs.aws.notify.subscriptions.EmailSubscription", version: "0.2.6" };
37
37
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXdzL25vdGlmeS9zdWJzY3JpcHRpb25zL2VtYWlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsZ0dBQWdHO0FBRWhHLDBCQUEwQjtBQWdCMUI7Ozs7R0FJRztBQUNILE1BQWEsaUJBQWlCO0lBQzVCLFlBQ21CLFlBQW9CLEVBQ3BCLFFBQWdDLEVBQUU7UUFEbEMsaUJBQVksR0FBWixZQUFZLENBQVE7UUFDcEIsVUFBSyxHQUFMLEtBQUssQ0FBNkI7SUFDbEQsQ0FBQztJQUVKOztPQUVHO0lBQ0ksSUFBSSxDQUFDLE1BQWtCO1FBQzVCLE9BQU87WUFDTCxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDL0IsUUFBUSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQzNCLFFBQVEsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUk7Z0JBQ3ZCLENBQUMsQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsVUFBVTtnQkFDckMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLO1lBQ2xDLFlBQVksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVk7WUFDckMsMkJBQTJCLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQywyQkFBMkI7WUFDbkUsZUFBZSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZTtTQUM1QyxDQUFDO0lBQ0osQ0FBQzs7QUFwQkgsOENBcUJDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvdjIuMTc2LjAvcGFja2FnZXMvYXdzLWNkay1saWIvYXdzLXNucy9saWIvc3Vic2NyaXB0aW9uLnRzXG5cbmltcG9ydCAqIGFzIHNucyBmcm9tIFwiLi5cIjtcbmltcG9ydCB7IFN1YnNjcmlwdGlvblByb3BzIH0gZnJvbSBcIi4vc3Vic2NyaXB0aW9uXCI7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgZW1haWwgc3Vic2NyaXB0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbWFpbFN1YnNjcmlwdGlvblByb3BzIGV4dGVuZHMgU3Vic2NyaXB0aW9uUHJvcHMge1xuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBmdWxsIG5vdGlmaWNhdGlvbiBKU09OIHNob3VsZCBiZSBzZW50IHRvIHRoZSBlbWFpbFxuICAgKiBhZGRyZXNzIG9yIGp1c3QgdGhlIG1lc3NhZ2UgdGV4dC5cbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2UgKE1lc3NhZ2UgdGV4dClcbiAgICovXG4gIHJlYWRvbmx5IGpzb24/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFVzZSBhbiBlbWFpbCBhZGRyZXNzIGFzIGEgc3Vic2NyaXB0aW9uIHRhcmdldFxuICpcbiAqIEVtYWlsIHN1YnNjcmlwdGlvbnMgcmVxdWlyZSBjb25maXJtYXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBFbWFpbFN1YnNjcmlwdGlvbiBpbXBsZW1lbnRzIHNucy5JVG9waWNTdWJzY3JpcHRpb24ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVtYWlsQWRkcmVzczogc3RyaW5nLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcHJvcHM6IEVtYWlsU3Vic2NyaXB0aW9uUHJvcHMgPSB7fSxcbiAgKSB7fVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgY29uZmlndXJhdGlvbiBmb3IgYW4gZW1haWwgYWRkcmVzcyB0byBzdWJzY3JpYmUgdG8gYW4gU05TIHRvcGljXG4gICAqL1xuICBwdWJsaWMgYmluZChfdG9waWM6IHNucy5JVG9waWMpOiBzbnMuVG9waWNTdWJzY3JpcHRpb25Db25maWcge1xuICAgIHJldHVybiB7XG4gICAgICBzdWJzY3JpYmVySWQ6IHRoaXMuZW1haWxBZGRyZXNzLFxuICAgICAgZW5kcG9pbnQ6IHRoaXMuZW1haWxBZGRyZXNzLFxuICAgICAgcHJvdG9jb2w6IHRoaXMucHJvcHMuanNvblxuICAgICAgICA/IHNucy5TdWJzY3JpcHRpb25Qcm90b2NvbC5FTUFJTF9KU09OXG4gICAgICAgIDogc25zLlN1YnNjcmlwdGlvblByb3RvY29sLkVNQUlMLFxuICAgICAgZmlsdGVyUG9saWN5OiB0aGlzLnByb3BzLmZpbHRlclBvbGljeSxcbiAgICAgIGZpbHRlclBvbGljeVdpdGhNZXNzYWdlQm9keTogdGhpcy5wcm9wcy5maWx0ZXJQb2xpY3lXaXRoTWVzc2FnZUJvZHksXG4gICAgICBkZWFkTGV0dGVyUXVldWU6IHRoaXMucHJvcHMuZGVhZExldHRlclF1ZXVlLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.LambdaSubscription = void 0;
5
5
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
6
  // https://github.com/aws/aws-cdk/blob/v2.176.0/packages/aws-cdk-lib/aws-sns-subscriptions/lib/lambda.ts
7
- const cdktf_1 = require("cdktf");
7
+ const cdktn_1 = require("cdktn");
8
8
  const constructs_1 = require("constructs");
9
9
  const sns = require("../");
10
10
  const arn_1 = require("../../arn");
@@ -53,7 +53,7 @@ class LambdaSubscription {
53
53
  if (topic.stack !== this.fn.stack) {
54
54
  // only if we know the region, will not work for
55
55
  // env agnostic stacks
56
- if (!cdktf_1.Token.isUnresolved(topic.env.region) &&
56
+ if (!cdktn_1.Token.isUnresolved(topic.env.region) &&
57
57
  topic.env.region !== this.fn.env.region) {
58
58
  return topic.env.region;
59
59
  }
@@ -65,5 +65,5 @@ class LambdaSubscription {
65
65
  }
66
66
  exports.LambdaSubscription = LambdaSubscription;
67
67
  _a = JSII_RTTI_SYMBOL_1;
68
- LambdaSubscription[_a] = { fqn: "terraconstructs.aws.notify.subscriptions.LambdaSubscription", version: "0.2.4" };
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFtYmRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2F3cy9ub3RpZnkvc3Vic2NyaXB0aW9ucy9sYW1iZGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx3R0FBd0c7QUFFeEcsaUNBQThCO0FBQzlCLDJDQUF1QztBQUV2QywyQkFBMkI7QUFDM0IsbUNBQXNDO0FBQ3RDLCtDQUEyQztBQUUzQyxpQ0FBaUM7QUFNakM7O0dBRUc7QUFDSCxNQUFhLGtCQUFrQjtJQUM3QixZQUNtQixFQUFvQixFQUNwQixRQUFpQyxFQUFFO1FBRG5DLE9BQUUsR0FBRixFQUFFLENBQWtCO1FBQ3BCLFVBQUssR0FBTCxLQUFLLENBQThCO0lBQ25ELENBQUM7SUFFSjs7T0FFRztJQUNJLElBQUksQ0FBQyxLQUFpQjtRQUMzQiwwRUFBMEU7UUFDMUUsOERBQThEO1FBQzlELElBQUksQ0FBQyxzQkFBUyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksS0FBSyxDQUNiLHNFQUFzRSxDQUN2RSxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGVBQWUsb0JBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDcEUsU0FBUyxFQUFFLEtBQUssQ0FBQyxRQUFRO1lBQ3pCLFNBQVMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxtQkFBbUIsQ0FBQztTQUN6RCxDQUFDLENBQUM7UUFFSCw0REFBNEQ7UUFDNUQsdURBQXVEO1FBQ3ZELElBQUksS0FBSyxZQUFZLEdBQUcsQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2hFLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0MsQ0FBQztRQUVELE9BQU87WUFDTCxlQUFlLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDeEIsWUFBWSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUMzQixRQUFRLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxXQUFXO1lBQzdCLFFBQVEsRUFBRSxHQUFHLENBQUMsb0JBQW9CLENBQUMsTUFBTTtZQUN6QyxZQUFZLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZO1lBQ3JDLDJCQUEyQixFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsMkJBQTJCO1lBQ25FLE1BQU0sRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQztZQUNqQyxlQUFlLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlO1NBQzVDLENBQUM7SUFDSixDQUFDO0lBRU8sYUFBYSxDQUFDLEtBQWlCO1FBQ3JDLHdFQUF3RTtRQUN4RSxJQUFJLEtBQUssWUFBWSxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDL0IsSUFBSSxLQUFLLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2xDLGdEQUFnRDtnQkFDaEQsc0JBQXNCO2dCQUN0QixJQUNFLENBQUMsYUFBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQztvQkFDckMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUN2QyxDQUFDO29CQUNELE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUM7Z0JBQzFCLENBQUM7WUFDSCxDQUFDO1lBQ0QsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztRQUNELE9BQU8sb0JBQVEsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUM1QyxLQUFLLENBQUMsUUFBUSxFQUNkLGVBQVMsQ0FBQyxtQkFBbUIsQ0FDOUIsQ0FBQyxNQUFNLENBQUM7SUFDWCxDQUFDOztBQTVESCxnREE2REMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNzYuMC9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3Mtc25zLXN1YnNjcmlwdGlvbnMvbGliL2xhbWJkYS50c1xuXG5pbXBvcnQgeyBUb2tlbiB9IGZyb20gXCJjZGt0ZlwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IFN1YnNjcmlwdGlvblByb3BzIH0gZnJvbSBcIi4vc3Vic2NyaXB0aW9uXCI7XG5pbXBvcnQgKiBhcyBzbnMgZnJvbSBcIi4uL1wiO1xuaW1wb3J0IHsgQXJuRm9ybWF0IH0gZnJvbSBcIi4uLy4uL2FyblwiO1xuaW1wb3J0IHsgQXdzU3RhY2sgfSBmcm9tIFwiLi4vLi4vYXdzLXN0YWNrXCI7XG5pbXBvcnQgKiBhcyBsYW1iZGEgZnJvbSBcIi4uLy4uL2NvbXB1dGVcIjtcbmltcG9ydCAqIGFzIGlhbSBmcm9tIFwiLi4vLi4vaWFtXCI7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYSBMYW1iZGEgc3Vic2NyaXB0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGFtYmRhU3Vic2NyaXB0aW9uUHJvcHMgZXh0ZW5kcyBTdWJzY3JpcHRpb25Qcm9wcyB7fVxuLyoqXG4gKiBVc2UgYSBMYW1iZGEgZnVuY3Rpb24gYXMgYSBzdWJzY3JpcHRpb24gdGFyZ2V0XG4gKi9cbmV4cG9ydCBjbGFzcyBMYW1iZGFTdWJzY3JpcHRpb24gaW1wbGVtZW50cyBzbnMuSVRvcGljU3Vic2NyaXB0aW9uIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBmbjogbGFtYmRhLklGdW5jdGlvbixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHByb3BzOiBMYW1iZGFTdWJzY3JpcHRpb25Qcm9wcyA9IHt9LFxuICApIHt9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYSBjb25maWd1cmF0aW9uIGZvciBhIExhbWJkYSBmdW5jdGlvbiB0byBzdWJzY3JpYmUgdG8gYW4gU05TIHRvcGljXG4gICAqL1xuICBwdWJsaWMgYmluZCh0b3BpYzogc25zLklUb3BpYyk6IHNucy5Ub3BpY1N1YnNjcmlwdGlvbkNvbmZpZyB7XG4gICAgLy8gQ3JlYXRlIHN1YnNjcmlwdGlvbiB1bmRlciAqY29uc3VtaW5nKiBjb25zdHJ1Y3QgdG8gbWFrZSBzdXJlIGl0IGVuZHMgdXBcbiAgICAvLyBpbiB0aGUgY29ycmVjdCBzdGFjayBpbiBjYXNlcyBvZiBjcm9zcy1zdGFjayBzdWJzY3JpcHRpb25zLlxuICAgIGlmICghQ29uc3RydWN0LmlzQ29uc3RydWN0KHRoaXMuZm4pKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiVGhlIHN1cHBsaWVkIGxhbWJkYSBGdW5jdGlvbiBvYmplY3QgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBDb25zdHJ1Y3RcIixcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy5mbi5hZGRQZXJtaXNzaW9uKGBBbGxvd0ludm9rZToke0F3c1N0YWNrLnVuaXF1ZUlkKHRvcGljLm5vZGUpfWAsIHtcbiAgICAgIHNvdXJjZUFybjogdG9waWMudG9waWNBcm4sXG4gICAgICBwcmluY2lwYWw6IG5ldyBpYW0uU2VydmljZVByaW5jaXBhbChcInNucy5hbWF6b25hd3MuY29tXCIpLFxuICAgIH0pO1xuXG4gICAgLy8gaWYgdGhlIHRvcGljIGFuZCBmdW5jdGlvbiBhcmUgY3JlYXRlZCBpbiBkaWZmZXJlbnQgc3RhY2tzXG4gICAgLy8gdGhlbiB3ZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGUgdG9waWMgaXMgY3JlYXRlZCBmaXJzdFxuICAgIGlmICh0b3BpYyBpbnN0YW5jZW9mIHNucy5Ub3BpYyAmJiB0b3BpYy5zdGFjayAhPT0gdGhpcy5mbi5zdGFjaykge1xuICAgICAgdGhpcy5mbi5zdGFjay5hZGREZXBlbmRlbmN5KHRvcGljLnN0YWNrKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgc3Vic2NyaWJlclNjb3BlOiB0aGlzLmZuLFxuICAgICAgc3Vic2NyaWJlcklkOiB0b3BpYy5ub2RlLmlkLFxuICAgICAgZW5kcG9pbnQ6IHRoaXMuZm4uZnVuY3Rpb25Bcm4sXG4gICAgICBwcm90b2NvbDogc25zLlN1YnNjcmlwdGlvblByb3RvY29sLkxBTUJEQSxcbiAgICAgIGZpbHRlclBvbGljeTogdGhpcy5wcm9wcy5maWx0ZXJQb2xpY3ksXG4gICAgICBmaWx0ZXJQb2xpY3lXaXRoTWVzc2FnZUJvZHk6IHRoaXMucHJvcHMuZmlsdGVyUG9saWN5V2l0aE1lc3NhZ2VCb2R5LFxuICAgICAgcmVnaW9uOiB0aGlzLnJlZ2lvbkZyb21Bcm4odG9waWMpLFxuICAgICAgZGVhZExldHRlclF1ZXVlOiB0aGlzLnByb3BzLmRlYWRMZXR0ZXJRdWV1ZSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSByZWdpb25Gcm9tQXJuKHRvcGljOiBzbnMuSVRvcGljKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAvLyBubyBuZWVkIHRvIHNwZWNpZnkgYHJlZ2lvbmAgZm9yIHRvcGljcyBkZWZpbmVkIHdpdGhpbiB0aGUgc2FtZSBzdGFjay5cbiAgICBpZiAodG9waWMgaW5zdGFuY2VvZiBzbnMuVG9waWMpIHtcbiAgICAgIGlmICh0b3BpYy5zdGFjayAhPT0gdGhpcy5mbi5zdGFjaykge1xuICAgICAgICAvLyBvbmx5IGlmIHdlIGtub3cgdGhlIHJlZ2lvbiwgd2lsbCBub3Qgd29yayBmb3JcbiAgICAgICAgLy8gZW52IGFnbm9zdGljIHN0YWNrc1xuICAgICAgICBpZiAoXG4gICAgICAgICAgIVRva2VuLmlzVW5yZXNvbHZlZCh0b3BpYy5lbnYucmVnaW9uKSAmJlxuICAgICAgICAgIHRvcGljLmVudi5yZWdpb24gIT09IHRoaXMuZm4uZW52LnJlZ2lvblxuICAgICAgICApIHtcbiAgICAgICAgICByZXR1cm4gdG9waWMuZW52LnJlZ2lvbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gICAgcmV0dXJuIEF3c1N0YWNrLm9mQXdzQ29uc3RydWN0KHRvcGljKS5zcGxpdEFybihcbiAgICAgIHRvcGljLnRvcGljQXJuLFxuICAgICAgQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUsXG4gICAgKS5yZWdpb247XG4gIH1cbn1cbiJdfQ==
68
+ LambdaSubscription[_a] = { fqn: "terraconstructs.aws.notify.subscriptions.LambdaSubscription", version: "0.2.6" };
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFtYmRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2F3cy9ub3RpZnkvc3Vic2NyaXB0aW9ucy9sYW1iZGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx3R0FBd0c7QUFFeEcsaUNBQThCO0FBQzlCLDJDQUF1QztBQUV2QywyQkFBMkI7QUFDM0IsbUNBQXNDO0FBQ3RDLCtDQUEyQztBQUUzQyxpQ0FBaUM7QUFNakM7O0dBRUc7QUFDSCxNQUFhLGtCQUFrQjtJQUM3QixZQUNtQixFQUFvQixFQUNwQixRQUFpQyxFQUFFO1FBRG5DLE9BQUUsR0FBRixFQUFFLENBQWtCO1FBQ3BCLFVBQUssR0FBTCxLQUFLLENBQThCO0lBQ25ELENBQUM7SUFFSjs7T0FFRztJQUNJLElBQUksQ0FBQyxLQUFpQjtRQUMzQiwwRUFBMEU7UUFDMUUsOERBQThEO1FBQzlELElBQUksQ0FBQyxzQkFBUyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksS0FBSyxDQUNiLHNFQUFzRSxDQUN2RSxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGVBQWUsb0JBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDcEUsU0FBUyxFQUFFLEtBQUssQ0FBQyxRQUFRO1lBQ3pCLFNBQVMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxtQkFBbUIsQ0FBQztTQUN6RCxDQUFDLENBQUM7UUFFSCw0REFBNEQ7UUFDNUQsdURBQXVEO1FBQ3ZELElBQUksS0FBSyxZQUFZLEdBQUcsQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2hFLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0MsQ0FBQztRQUVELE9BQU87WUFDTCxlQUFlLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDeEIsWUFBWSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUMzQixRQUFRLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxXQUFXO1lBQzdCLFFBQVEsRUFBRSxHQUFHLENBQUMsb0JBQW9CLENBQUMsTUFBTTtZQUN6QyxZQUFZLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZO1lBQ3JDLDJCQUEyQixFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsMkJBQTJCO1lBQ25FLE1BQU0sRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQztZQUNqQyxlQUFlLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlO1NBQzVDLENBQUM7SUFDSixDQUFDO0lBRU8sYUFBYSxDQUFDLEtBQWlCO1FBQ3JDLHdFQUF3RTtRQUN4RSxJQUFJLEtBQUssWUFBWSxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDL0IsSUFBSSxLQUFLLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2xDLGdEQUFnRDtnQkFDaEQsc0JBQXNCO2dCQUN0QixJQUNFLENBQUMsYUFBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQztvQkFDckMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUN2QyxDQUFDO29CQUNELE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUM7Z0JBQzFCLENBQUM7WUFDSCxDQUFDO1lBQ0QsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztRQUNELE9BQU8sb0JBQVEsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUM1QyxLQUFLLENBQUMsUUFBUSxFQUNkLGVBQVMsQ0FBQyxtQkFBbUIsQ0FDOUIsQ0FBQyxNQUFNLENBQUM7SUFDWCxDQUFDOztBQTVESCxnREE2REMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNzYuMC9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3Mtc25zLXN1YnNjcmlwdGlvbnMvbGliL2xhbWJkYS50c1xuXG5pbXBvcnQgeyBUb2tlbiB9IGZyb20gXCJjZGt0blwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IFN1YnNjcmlwdGlvblByb3BzIH0gZnJvbSBcIi4vc3Vic2NyaXB0aW9uXCI7XG5pbXBvcnQgKiBhcyBzbnMgZnJvbSBcIi4uL1wiO1xuaW1wb3J0IHsgQXJuRm9ybWF0IH0gZnJvbSBcIi4uLy4uL2FyblwiO1xuaW1wb3J0IHsgQXdzU3RhY2sgfSBmcm9tIFwiLi4vLi4vYXdzLXN0YWNrXCI7XG5pbXBvcnQgKiBhcyBsYW1iZGEgZnJvbSBcIi4uLy4uL2NvbXB1dGVcIjtcbmltcG9ydCAqIGFzIGlhbSBmcm9tIFwiLi4vLi4vaWFtXCI7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYSBMYW1iZGEgc3Vic2NyaXB0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGFtYmRhU3Vic2NyaXB0aW9uUHJvcHMgZXh0ZW5kcyBTdWJzY3JpcHRpb25Qcm9wcyB7fVxuLyoqXG4gKiBVc2UgYSBMYW1iZGEgZnVuY3Rpb24gYXMgYSBzdWJzY3JpcHRpb24gdGFyZ2V0XG4gKi9cbmV4cG9ydCBjbGFzcyBMYW1iZGFTdWJzY3JpcHRpb24gaW1wbGVtZW50cyBzbnMuSVRvcGljU3Vic2NyaXB0aW9uIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBmbjogbGFtYmRhLklGdW5jdGlvbixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHByb3BzOiBMYW1iZGFTdWJzY3JpcHRpb25Qcm9wcyA9IHt9LFxuICApIHt9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYSBjb25maWd1cmF0aW9uIGZvciBhIExhbWJkYSBmdW5jdGlvbiB0byBzdWJzY3JpYmUgdG8gYW4gU05TIHRvcGljXG4gICAqL1xuICBwdWJsaWMgYmluZCh0b3BpYzogc25zLklUb3BpYyk6IHNucy5Ub3BpY1N1YnNjcmlwdGlvbkNvbmZpZyB7XG4gICAgLy8gQ3JlYXRlIHN1YnNjcmlwdGlvbiB1bmRlciAqY29uc3VtaW5nKiBjb25zdHJ1Y3QgdG8gbWFrZSBzdXJlIGl0IGVuZHMgdXBcbiAgICAvLyBpbiB0aGUgY29ycmVjdCBzdGFjayBpbiBjYXNlcyBvZiBjcm9zcy1zdGFjayBzdWJzY3JpcHRpb25zLlxuICAgIGlmICghQ29uc3RydWN0LmlzQ29uc3RydWN0KHRoaXMuZm4pKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiVGhlIHN1cHBsaWVkIGxhbWJkYSBGdW5jdGlvbiBvYmplY3QgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBDb25zdHJ1Y3RcIixcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy5mbi5hZGRQZXJtaXNzaW9uKGBBbGxvd0ludm9rZToke0F3c1N0YWNrLnVuaXF1ZUlkKHRvcGljLm5vZGUpfWAsIHtcbiAgICAgIHNvdXJjZUFybjogdG9waWMudG9waWNBcm4sXG4gICAgICBwcmluY2lwYWw6IG5ldyBpYW0uU2VydmljZVByaW5jaXBhbChcInNucy5hbWF6b25hd3MuY29tXCIpLFxuICAgIH0pO1xuXG4gICAgLy8gaWYgdGhlIHRvcGljIGFuZCBmdW5jdGlvbiBhcmUgY3JlYXRlZCBpbiBkaWZmZXJlbnQgc3RhY2tzXG4gICAgLy8gdGhlbiB3ZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGUgdG9waWMgaXMgY3JlYXRlZCBmaXJzdFxuICAgIGlmICh0b3BpYyBpbnN0YW5jZW9mIHNucy5Ub3BpYyAmJiB0b3BpYy5zdGFjayAhPT0gdGhpcy5mbi5zdGFjaykge1xuICAgICAgdGhpcy5mbi5zdGFjay5hZGREZXBlbmRlbmN5KHRvcGljLnN0YWNrKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgc3Vic2NyaWJlclNjb3BlOiB0aGlzLmZuLFxuICAgICAgc3Vic2NyaWJlcklkOiB0b3BpYy5ub2RlLmlkLFxuICAgICAgZW5kcG9pbnQ6IHRoaXMuZm4uZnVuY3Rpb25Bcm4sXG4gICAgICBwcm90b2NvbDogc25zLlN1YnNjcmlwdGlvblByb3RvY29sLkxBTUJEQSxcbiAgICAgIGZpbHRlclBvbGljeTogdGhpcy5wcm9wcy5maWx0ZXJQb2xpY3ksXG4gICAgICBmaWx0ZXJQb2xpY3lXaXRoTWVzc2FnZUJvZHk6IHRoaXMucHJvcHMuZmlsdGVyUG9saWN5V2l0aE1lc3NhZ2VCb2R5LFxuICAgICAgcmVnaW9uOiB0aGlzLnJlZ2lvbkZyb21Bcm4odG9waWMpLFxuICAgICAgZGVhZExldHRlclF1ZXVlOiB0aGlzLnByb3BzLmRlYWRMZXR0ZXJRdWV1ZSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSByZWdpb25Gcm9tQXJuKHRvcGljOiBzbnMuSVRvcGljKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAvLyBubyBuZWVkIHRvIHNwZWNpZnkgYHJlZ2lvbmAgZm9yIHRvcGljcyBkZWZpbmVkIHdpdGhpbiB0aGUgc2FtZSBzdGFjay5cbiAgICBpZiAodG9waWMgaW5zdGFuY2VvZiBzbnMuVG9waWMpIHtcbiAgICAgIGlmICh0b3BpYy5zdGFjayAhPT0gdGhpcy5mbi5zdGFjaykge1xuICAgICAgICAvLyBvbmx5IGlmIHdlIGtub3cgdGhlIHJlZ2lvbiwgd2lsbCBub3Qgd29yayBmb3JcbiAgICAgICAgLy8gZW52IGFnbm9zdGljIHN0YWNrc1xuICAgICAgICBpZiAoXG4gICAgICAgICAgIVRva2VuLmlzVW5yZXNvbHZlZCh0b3BpYy5lbnYucmVnaW9uKSAmJlxuICAgICAgICAgIHRvcGljLmVudi5yZWdpb24gIT09IHRoaXMuZm4uZW52LnJlZ2lvblxuICAgICAgICApIHtcbiAgICAgICAgICByZXR1cm4gdG9waWMuZW52LnJlZ2lvbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gICAgcmV0dXJuIEF3c1N0YWNrLm9mQXdzQ29uc3RydWN0KHRvcGljKS5zcGxpdEFybihcbiAgICAgIHRvcGljLnRvcGljQXJuLFxuICAgICAgQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUsXG4gICAgKS5yZWdpb247XG4gIH1cbn1cbiJdfQ==
@@ -25,5 +25,5 @@ class SmsSubscription {
25
25
  }
26
26
  exports.SmsSubscription = SmsSubscription;
27
27
  _a = JSII_RTTI_SYMBOL_1;
28
- SmsSubscription[_a] = { fqn: "terraconstructs.aws.notify.subscriptions.SmsSubscription", version: "0.2.4" };
28
+ SmsSubscription[_a] = { fqn: "terraconstructs.aws.notify.subscriptions.SmsSubscription", version: "0.2.6" };
29
29
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2F3cy9ub3RpZnkvc3Vic2NyaXB0aW9ucy9zbXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxxR0FBcUc7QUFFckcsMEJBQTBCO0FBUTFCOztHQUVHO0FBQ0gsTUFBYSxlQUFlO0lBQzFCLFlBQ21CLFdBQW1CLEVBQ25CLFFBQThCLEVBQUU7UUFEaEMsZ0JBQVcsR0FBWCxXQUFXLENBQVE7UUFDbkIsVUFBSyxHQUFMLEtBQUssQ0FBMkI7SUFDaEQsQ0FBQztJQUVHLElBQUksQ0FBQyxNQUFrQjtRQUM1QixPQUFPO1lBQ0wsWUFBWSxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzlCLFFBQVEsRUFBRSxJQUFJLENBQUMsV0FBVztZQUMxQixRQUFRLEVBQUUsR0FBRyxDQUFDLG9CQUFvQixDQUFDLEdBQUc7WUFDdEMsWUFBWSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWTtZQUNyQywyQkFBMkIsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLDJCQUEyQjtTQUNwRSxDQUFDO0lBQ0osQ0FBQzs7QUFkSCwwQ0FlQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9ibG9iL3YyLjE3Ni4wL3BhY2thZ2VzL2F3cy1jZGstbGliL2F3cy1zbnMtc3Vic2NyaXB0aW9ucy9saWIvc21zLnRzXG5cbmltcG9ydCAqIGFzIHNucyBmcm9tIFwiLi5cIjtcbmltcG9ydCB7IFN1YnNjcmlwdGlvblByb3BzIH0gZnJvbSBcIi4vc3Vic2NyaXB0aW9uXCI7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgU01TIHN1YnNjcmlwdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU21zU3Vic2NyaXB0aW9uUHJvcHMgZXh0ZW5kcyBTdWJzY3JpcHRpb25Qcm9wcyB7fVxuXG4vKipcbiAqIFVzZSBhbiBzbXMgYWRkcmVzcyBhcyBhIHN1YnNjcmlwdGlvbiB0YXJnZXRcbiAqL1xuZXhwb3J0IGNsYXNzIFNtc1N1YnNjcmlwdGlvbiBpbXBsZW1lbnRzIHNucy5JVG9waWNTdWJzY3JpcHRpb24ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBob25lTnVtYmVyOiBzdHJpbmcsXG4gICAgcHJpdmF0ZSByZWFkb25seSBwcm9wczogU21zU3Vic2NyaXB0aW9uUHJvcHMgPSB7fSxcbiAgKSB7fVxuXG4gIHB1YmxpYyBiaW5kKF90b3BpYzogc25zLklUb3BpYyk6IHNucy5Ub3BpY1N1YnNjcmlwdGlvbkNvbmZpZyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHN1YnNjcmliZXJJZDogdGhpcy5waG9uZU51bWJlcixcbiAgICAgIGVuZHBvaW50OiB0aGlzLnBob25lTnVtYmVyLFxuICAgICAgcHJvdG9jb2w6IHNucy5TdWJzY3JpcHRpb25Qcm90b2NvbC5TTVMsXG4gICAgICBmaWx0ZXJQb2xpY3k6IHRoaXMucHJvcHMuZmlsdGVyUG9saWN5LFxuICAgICAgZmlsdGVyUG9saWN5V2l0aE1lc3NhZ2VCb2R5OiB0aGlzLnByb3BzLmZpbHRlclBvbGljeVdpdGhNZXNzYWdlQm9keSxcbiAgICB9O1xuICB9XG59XG4iXX0=