terraconstructs 0.0.11 → 0.0.12

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 (410) hide show
  1. package/.jsii +104486 -34582
  2. package/lib/aws/arn.js +1 -1
  3. package/lib/aws/aws-construct.d.ts +1 -1
  4. package/lib/aws/aws-construct.js +28 -2
  5. package/lib/aws/aws-stack.d.ts +2 -4
  6. package/lib/aws/aws-stack.js +21 -8
  7. package/lib/aws/aws-tags.d.ts +58 -0
  8. package/lib/aws/aws-tags.js +77 -0
  9. package/lib/aws/cloudwatch/actions/ec2.js +1 -1
  10. package/lib/aws/cloudwatch/actions/lambda.js +1 -1
  11. package/lib/aws/cloudwatch/alarm-base.js +1 -1
  12. package/lib/aws/cloudwatch/alarm-rule.js +1 -1
  13. package/lib/aws/cloudwatch/alarm-status-widget.js +1 -1
  14. package/lib/aws/cloudwatch/alarm.js +1 -1
  15. package/lib/aws/cloudwatch/composite-alarm.js +1 -1
  16. package/lib/aws/cloudwatch/dashboard.js +1 -1
  17. package/lib/aws/cloudwatch/data-protection-policy.js +3 -3
  18. package/lib/aws/cloudwatch/graph.js +8 -8
  19. package/lib/aws/cloudwatch/layout.js +3 -3
  20. package/lib/aws/cloudwatch/log-destinations/kinesis.js +1 -1
  21. package/lib/aws/cloudwatch/log-destinations/lambda.js +1 -1
  22. package/lib/aws/cloudwatch/log-group.js +1 -1
  23. package/lib/aws/cloudwatch/log-query.js +1 -1
  24. package/lib/aws/cloudwatch/log-stream.js +1 -1
  25. package/lib/aws/cloudwatch/metric-filter.d.ts +1 -1
  26. package/lib/aws/cloudwatch/metric-filter.js +4 -4
  27. package/lib/aws/cloudwatch/metric.js +2 -2
  28. package/lib/aws/cloudwatch/pattern.js +3 -3
  29. package/lib/aws/cloudwatch/policy.js +1 -1
  30. package/lib/aws/cloudwatch/private/env-tokens.js +5 -6
  31. package/lib/aws/cloudwatch/private/metric-util.js +4 -5
  32. package/lib/aws/cloudwatch/private/object.js +2 -3
  33. package/lib/aws/cloudwatch/private/rendering.js +3 -3
  34. package/lib/aws/cloudwatch/private/statistic.js +6 -7
  35. package/lib/aws/cloudwatch/query-definition.js +2 -2
  36. package/lib/aws/cloudwatch/stats.js +1 -1
  37. package/lib/aws/cloudwatch/subscription-filter.d.ts +1 -1
  38. package/lib/aws/cloudwatch/subscription-filter.js +4 -4
  39. package/lib/aws/cloudwatch/text.js +1 -1
  40. package/lib/aws/cloudwatch/variable.js +3 -3
  41. package/lib/aws/cloudwatch/widget.d.ts +1 -1
  42. package/lib/aws/cloudwatch/widget.js +4 -4
  43. package/lib/aws/compute/activity.js +3 -2
  44. package/lib/aws/compute/alb/application-listener-action.d.ts +334 -0
  45. package/lib/aws/compute/alb/application-listener-action.js +281 -0
  46. package/lib/aws/compute/alb/application-listener-certificate.d.ts +35 -0
  47. package/lib/aws/compute/alb/application-listener-certificate.js +35 -0
  48. package/lib/aws/compute/alb/application-listener-rule.d.ts +233 -0
  49. package/lib/aws/compute/alb/application-listener-rule.js +220 -0
  50. package/lib/aws/compute/alb/application-listener.d.ts +574 -0
  51. package/lib/aws/compute/alb/application-listener.js +538 -0
  52. package/lib/aws/compute/alb/application-load-balancer.d.ts +715 -0
  53. package/lib/aws/compute/alb/application-load-balancer.js +780 -0
  54. package/lib/aws/compute/alb/application-target-group.d.ts +339 -0
  55. package/lib/aws/compute/alb/application-target-group.js +427 -0
  56. package/lib/aws/compute/alb/conditions.d.ts +61 -0
  57. package/lib/aws/compute/alb/conditions.js +164 -0
  58. package/lib/aws/compute/alb/trust-store-revocation.d.ts +59 -0
  59. package/lib/aws/compute/alb/trust-store-revocation.js +46 -0
  60. package/lib/aws/compute/alb/trust-store.d.ts +86 -0
  61. package/lib/aws/compute/alb/trust-store.js +79 -0
  62. package/lib/aws/compute/architecture.js +1 -1
  63. package/lib/aws/compute/aspects/require-imdsv2-aspect.d.ts +75 -0
  64. package/lib/aws/compute/aspects/require-imdsv2-aspect.js +106 -0
  65. package/lib/aws/compute/bastion-host.d.ts +172 -0
  66. package/lib/aws/compute/bastion-host.js +114 -0
  67. package/lib/aws/compute/chain.js +1 -1
  68. package/lib/aws/compute/cidr-splits.d.ts +49 -0
  69. package/lib/aws/compute/cidr-splits.js +59 -0
  70. package/lib/aws/compute/client-vpn-authorization-rule.d.ts +43 -0
  71. package/lib/aws/compute/client-vpn-authorization-rule.js +30 -0
  72. package/lib/aws/compute/client-vpn-endpoint-types.d.ts +62 -0
  73. package/lib/aws/compute/client-vpn-endpoint-types.js +25 -0
  74. package/lib/aws/compute/client-vpn-endpoint.d.ts +239 -0
  75. package/lib/aws/compute/client-vpn-endpoint.js +259 -0
  76. package/lib/aws/compute/client-vpn-route.d.ts +67 -0
  77. package/lib/aws/compute/client-vpn-route.js +57 -0
  78. package/lib/aws/compute/condition.js +1 -1
  79. package/lib/aws/compute/connections.d.ts +137 -0
  80. package/lib/aws/compute/connections.js +208 -0
  81. package/lib/aws/compute/ec2-augmentations.generated.d.ts +53 -0
  82. package/lib/aws/compute/ec2-augmentations.generated.js +35 -0
  83. package/lib/aws/compute/ec2-canned-metrics.generated.d.ts +555 -0
  84. package/lib/aws/compute/ec2-canned-metrics.generated.js +681 -0
  85. package/lib/aws/compute/ec2-util-v2.d.ts +141 -0
  86. package/lib/aws/compute/ec2-util-v2.js +286 -0
  87. package/lib/aws/compute/ec2-util.d.ts +52 -0
  88. package/lib/aws/compute/ec2-util.js +138 -0
  89. package/lib/aws/compute/elasticloadbalancing-canned-metrics.generated.d.ts +176 -0
  90. package/lib/aws/compute/elasticloadbalancing-canned-metrics.generated.js +119 -0
  91. package/lib/aws/compute/elasticloadbalancingv2-canned-metrics.generated.d.ts +860 -0
  92. package/lib/aws/compute/elasticloadbalancingv2-canned-metrics.generated.js +597 -0
  93. package/lib/aws/compute/event-invoke-config.js +1 -1
  94. package/lib/aws/compute/event-source-filter.js +2 -2
  95. package/lib/aws/compute/event-source-mapping.js +1 -1
  96. package/lib/aws/compute/event-sources/s3-onfailure-destination.js +1 -1
  97. package/lib/aws/compute/event-sources/s3.js +1 -1
  98. package/lib/aws/compute/event-sources/sqs-dlq.js +1 -1
  99. package/lib/aws/compute/event-sources/sqs.js +1 -1
  100. package/lib/aws/compute/fields.js +4 -4
  101. package/lib/aws/compute/function-alias.js +1 -1
  102. package/lib/aws/compute/function-base.js +2 -2
  103. package/lib/aws/compute/function-destinations/event-bridge.js +1 -1
  104. package/lib/aws/compute/function-destinations/function.js +1 -1
  105. package/lib/aws/compute/function-destinations/sqs.js +1 -1
  106. package/lib/aws/compute/function-nodejs.js +1 -1
  107. package/lib/aws/compute/function-url.js +1 -1
  108. package/lib/aws/compute/function-vpc-config.generated.d.ts +3 -3
  109. package/lib/aws/compute/function-vpc-config.generated.js +1 -1
  110. package/lib/aws/compute/function.d.ts +1 -1
  111. package/lib/aws/compute/function.js +5 -5
  112. package/lib/aws/compute/index-alpha.d.ts +5 -0
  113. package/lib/aws/compute/index-alpha.js +22 -0
  114. package/lib/aws/compute/index.d.ts +60 -0
  115. package/lib/aws/compute/index.js +70 -2
  116. package/lib/aws/compute/instance-types.d.ts +1354 -0
  117. package/lib/aws/compute/instance-types.js +1683 -0
  118. package/lib/aws/compute/instance.d.ts +436 -0
  119. package/lib/aws/compute/instance.js +262 -0
  120. package/lib/aws/compute/ip-addresses.d.ts +249 -0
  121. package/lib/aws/compute/ip-addresses.js +248 -0
  122. package/lib/aws/compute/ipam.d.ts +309 -0
  123. package/lib/aws/compute/ipam.js +306 -0
  124. package/lib/aws/compute/key-pair.d.ts +178 -0
  125. package/lib/aws/compute/key-pair.js +194 -0
  126. package/lib/aws/compute/lambda-augmentations.generated.d.ts +65 -0
  127. package/lib/aws/compute/lambda-augmentations.generated.js +41 -0
  128. package/lib/aws/compute/lambda-canned-metrics.generated.d.ts +316 -0
  129. package/lib/aws/compute/lambda-canned-metrics.generated.js +119 -0
  130. package/lib/aws/compute/launch-template.d.ts +540 -0
  131. package/lib/aws/compute/launch-template.js +468 -0
  132. package/lib/aws/compute/lb-shared/access-logs-accounts.d.ts +7 -0
  133. package/lib/aws/compute/lb-shared/access-logs-accounts.js +46 -0
  134. package/lib/aws/compute/lb-shared/base-listener.d.ts +113 -0
  135. package/lib/aws/compute/lb-shared/base-listener.js +181 -0
  136. package/lib/aws/compute/lb-shared/base-load-balancer.d.ts +212 -0
  137. package/lib/aws/compute/lb-shared/base-load-balancer.js +290 -0
  138. package/lib/aws/compute/lb-shared/base-target-group.d.ts +382 -0
  139. package/lib/aws/compute/lb-shared/base-target-group.js +364 -0
  140. package/lib/aws/compute/lb-shared/enums.d.ts +282 -0
  141. package/lib/aws/compute/lb-shared/enums.js +301 -0
  142. package/lib/aws/compute/lb-shared/grid-lookup-types.d.ts +42 -0
  143. package/lib/aws/compute/lb-shared/grid-lookup-types.js +53 -0
  144. package/lib/aws/compute/lb-shared/imported.d.ts +24 -0
  145. package/lib/aws/compute/lb-shared/imported.js +27 -0
  146. package/lib/aws/compute/lb-shared/lb-listener-config.generated.d.ts +194 -0
  147. package/lib/aws/compute/lb-shared/lb-listener-config.generated.js +3 -0
  148. package/lib/aws/compute/lb-shared/lb-target-group-attachment-config.generated.d.ts +56 -0
  149. package/lib/aws/compute/lb-shared/lb-target-group-attachment-config.generated.js +3 -0
  150. package/lib/aws/compute/lb-shared/listener-action.d.ts +14 -0
  151. package/lib/aws/compute/lb-shared/listener-action.js +4 -0
  152. package/lib/aws/compute/lb-shared/listener-certificate.d.ts +28 -0
  153. package/lib/aws/compute/lb-shared/listener-certificate.js +29 -0
  154. package/lib/aws/compute/lb-shared/load-balancer-targets.d.ts +93 -0
  155. package/lib/aws/compute/lb-shared/load-balancer-targets.js +127 -0
  156. package/lib/aws/compute/lb-shared/util.d.ts +113 -0
  157. package/lib/aws/compute/lb-shared/util.js +264 -0
  158. package/lib/aws/compute/lb-targets/alb-target.d.ts +67 -0
  159. package/lib/aws/compute/lb-targets/alb-target.js +100 -0
  160. package/lib/aws/compute/lb-targets/index.d.ts +4 -0
  161. package/lib/aws/compute/lb-targets/index.js +22 -0
  162. package/lib/aws/compute/lb-targets/instance-target.d.ts +42 -0
  163. package/lib/aws/compute/lb-targets/instance-target.js +67 -0
  164. package/lib/aws/compute/lb-targets/ip-target.d.ts +55 -0
  165. package/lib/aws/compute/lb-targets/ip-target.js +79 -0
  166. package/lib/aws/compute/lb-targets/lambda-target.d.ts +25 -0
  167. package/lib/aws/compute/lb-targets/lambda-target.js +50 -0
  168. package/lib/aws/compute/load-balancer.d.ts +336 -0
  169. package/lib/aws/compute/load-balancer.js +287 -0
  170. package/lib/aws/compute/machine-image/amazon-linux-2022.d.ts +63 -0
  171. package/lib/aws/compute/machine-image/amazon-linux-2022.js +84 -0
  172. package/lib/aws/compute/machine-image/amazon-linux-2023.d.ts +63 -0
  173. package/lib/aws/compute/machine-image/amazon-linux-2023.js +84 -0
  174. package/lib/aws/compute/machine-image/amazon-linux2.d.ts +76 -0
  175. package/lib/aws/compute/machine-image/amazon-linux2.js +87 -0
  176. package/lib/aws/compute/machine-image/common.d.ts +181 -0
  177. package/lib/aws/compute/machine-image/common.js +122 -0
  178. package/lib/aws/compute/machine-image/index.d.ts +5 -0
  179. package/lib/aws/compute/machine-image/index.js +22 -0
  180. package/lib/aws/compute/machine-image/machine-image.d.ts +463 -0
  181. package/lib/aws/compute/machine-image/machine-image.js +566 -0
  182. package/lib/aws/compute/machine-image/utils.d.ts +2 -0
  183. package/lib/aws/compute/machine-image/utils.js +17 -0
  184. package/lib/aws/compute/nat.d.ts +325 -0
  185. package/lib/aws/compute/nat.js +455 -0
  186. package/lib/aws/compute/network-acl-types.d.ts +152 -0
  187. package/lib/aws/compute/network-acl-types.js +156 -0
  188. package/lib/aws/compute/network-acl.d.ts +285 -0
  189. package/lib/aws/compute/network-acl.js +207 -0
  190. package/lib/aws/compute/network-util.d.ts +116 -0
  191. package/lib/aws/compute/network-util.js +241 -0
  192. package/lib/aws/compute/nlb/network-listener-action.d.ts +92 -0
  193. package/lib/aws/compute/nlb/network-listener-action.js +146 -0
  194. package/lib/aws/compute/nlb/network-listener-certificate.d.ts +24 -0
  195. package/lib/aws/compute/nlb/network-listener-certificate.js +25 -0
  196. package/lib/aws/compute/nlb/network-listener.d.ts +248 -0
  197. package/lib/aws/compute/nlb/network-listener.js +217 -0
  198. package/lib/aws/compute/nlb/network-load-balancer.d.ts +315 -0
  199. package/lib/aws/compute/nlb/network-load-balancer.js +360 -0
  200. package/lib/aws/compute/nlb/network-target-group.d.ts +153 -0
  201. package/lib/aws/compute/nlb/network-target-group.js +223 -0
  202. package/lib/aws/compute/peer.d.ts +64 -0
  203. package/lib/aws/compute/peer.js +235 -0
  204. package/lib/aws/compute/placement-group.d.ts +161 -0
  205. package/lib/aws/compute/placement-group.js +133 -0
  206. package/lib/aws/compute/port.d.ts +287 -0
  207. package/lib/aws/compute/port.js +390 -0
  208. package/lib/aws/compute/prefix-list.d.ts +131 -0
  209. package/lib/aws/compute/prefix-list.js +114 -0
  210. package/lib/aws/compute/private/context-stub.d.ts +7 -0
  211. package/lib/aws/compute/private/context-stub.js +43 -0
  212. package/lib/aws/compute/private/ebs-util.d.ts +14 -0
  213. package/lib/aws/compute/private/ebs-util.js +145 -0
  214. package/lib/aws/compute/private/intrinstics.js +2 -1
  215. package/lib/aws/compute/private/json-path.js +8 -8
  216. package/lib/aws/compute/private/util.js +2 -3
  217. package/lib/aws/compute/route.d.ts +547 -0
  218. package/lib/aws/compute/route.js +469 -0
  219. package/lib/aws/compute/security-group.d.ts +414 -0
  220. package/lib/aws/compute/security-group.js +538 -0
  221. package/lib/aws/compute/state-graph.js +1 -1
  222. package/lib/aws/compute/state-machine-fragment.js +1 -1
  223. package/lib/aws/compute/state-machine.d.ts +2 -2
  224. package/lib/aws/compute/state-machine.js +14 -12
  225. package/lib/aws/compute/states/choice.js +1 -1
  226. package/lib/aws/compute/states/custom-state.js +1 -1
  227. package/lib/aws/compute/states/distributed-map/item-batcher.js +1 -1
  228. package/lib/aws/compute/states/distributed-map/item-reader.js +5 -5
  229. package/lib/aws/compute/states/distributed-map/result-writer.js +1 -1
  230. package/lib/aws/compute/states/distributed-map.js +1 -1
  231. package/lib/aws/compute/states/fail.js +1 -1
  232. package/lib/aws/compute/states/map-base.js +1 -1
  233. package/lib/aws/compute/states/map.js +1 -1
  234. package/lib/aws/compute/states/parallel.js +1 -1
  235. package/lib/aws/compute/states/pass.js +2 -2
  236. package/lib/aws/compute/states/state.js +5 -5
  237. package/lib/aws/compute/states/succeed.js +1 -1
  238. package/lib/aws/compute/states/task-base.js +2 -2
  239. package/lib/aws/compute/states/task.js +1 -1
  240. package/lib/aws/compute/states/wait.js +2 -2
  241. package/lib/aws/compute/stepfunctions-canned-metrics.generated.d.ts +83 -0
  242. package/lib/aws/compute/stepfunctions-canned-metrics.generated.js +127 -0
  243. package/lib/aws/compute/subnet-v2.d.ts +213 -0
  244. package/lib/aws/compute/subnet-v2.js +405 -0
  245. package/lib/aws/compute/subnet.d.ts +37 -0
  246. package/lib/aws/compute/subnet.js +181 -0
  247. package/lib/aws/compute/task-credentials.js +1 -1
  248. package/lib/aws/compute/task-input.js +1 -1
  249. package/lib/aws/compute/tasks/aws-sdk/call-aws-service.js +1 -1
  250. package/lib/aws/compute/tasks/eventbridge/put-events.js +1 -1
  251. package/lib/aws/compute/tasks/http/invoke.js +1 -1
  252. package/lib/aws/compute/tasks/lambda/invoke.js +1 -1
  253. package/lib/aws/compute/tasks/private/task-utils.js +3 -4
  254. package/lib/aws/compute/tasks/resource-arn-suffix.js +2 -3
  255. package/lib/aws/compute/tasks/sqs/send-message.js +1 -1
  256. package/lib/aws/compute/tasks/stepfunctions/invoke-activity.js +1 -1
  257. package/lib/aws/compute/tasks/stepfunctions/start-execution.js +1 -1
  258. package/lib/aws/compute/types.js +2 -2
  259. package/lib/aws/compute/user-data.d.ts +270 -0
  260. package/lib/aws/compute/user-data.js +487 -0
  261. package/lib/aws/compute/util.d.ts +1 -1
  262. package/lib/aws/compute/util.js +4 -5
  263. package/lib/aws/compute/volume.d.ts +480 -0
  264. package/lib/aws/compute/volume.js +426 -0
  265. package/lib/aws/compute/vpc-endpoint-service.d.ts +149 -0
  266. package/lib/aws/compute/vpc-endpoint-service.js +90 -0
  267. package/lib/aws/compute/vpc-endpoint.d.ts +742 -0
  268. package/lib/aws/compute/vpc-endpoint.js +811 -0
  269. package/lib/aws/compute/vpc-flow-logs.d.ts +551 -0
  270. package/lib/aws/compute/vpc-flow-logs.js +693 -0
  271. package/lib/aws/compute/vpc-lookup.d.ts +73 -0
  272. package/lib/aws/compute/vpc-lookup.js +3 -0
  273. package/lib/aws/compute/vpc-v2-base.d.ts +353 -0
  274. package/lib/aws/compute/vpc-v2-base.js +493 -0
  275. package/lib/aws/compute/vpc-v2.d.ts +385 -0
  276. package/lib/aws/compute/vpc-v2.js +408 -0
  277. package/lib/aws/compute/vpc.d.ts +1448 -0
  278. package/lib/aws/compute/vpc.js +1495 -0
  279. package/lib/aws/compute/vpn.d.ts +443 -0
  280. package/lib/aws/compute/vpn.js +397 -0
  281. package/lib/aws/compute/windows-versions.d.ts +418 -0
  282. package/lib/aws/compute/windows-versions.js +426 -0
  283. package/lib/aws/edge/certificate-base.d.ts +20 -0
  284. package/lib/aws/edge/certificate-base.js +28 -0
  285. package/lib/aws/edge/certificate.d.ts +23 -2
  286. package/lib/aws/edge/certificate.js +54 -4
  287. package/lib/aws/edge/distribution.js +3 -3
  288. package/lib/aws/edge/dns-alias-record-targets.js +2 -2
  289. package/lib/aws/edge/dns-record.js +16 -16
  290. package/lib/aws/edge/dns-zone.d.ts +20 -2
  291. package/lib/aws/edge/dns-zone.js +25 -10
  292. package/lib/aws/edge/function.js +2 -2
  293. package/lib/aws/edge/index.d.ts +1 -0
  294. package/lib/aws/edge/index.js +2 -1
  295. package/lib/aws/edge/key-value-store.js +4 -4
  296. package/lib/aws/edge/origin.js +7 -5
  297. package/lib/aws/edge/response-headers-policy.js +1 -1
  298. package/lib/aws/encryption/alias.js +1 -1
  299. package/lib/aws/encryption/key.js +1 -1
  300. package/lib/aws/encryption/via-service-principal.js +1 -1
  301. package/lib/aws/iam/grant.js +2 -2
  302. package/lib/aws/iam/index.d.ts +1 -0
  303. package/lib/aws/iam/index.js +2 -1
  304. package/lib/aws/iam/instance-profile.d.ts +155 -0
  305. package/lib/aws/iam/instance-profile.js +124 -0
  306. package/lib/aws/iam/managed-policy.js +1 -1
  307. package/lib/aws/iam/oidc-provider.js +1 -1
  308. package/lib/aws/iam/policy-document-config.generated.d.ts +8 -8
  309. package/lib/aws/iam/policy-document-config.generated.js +1 -1
  310. package/lib/aws/iam/policy-document.js +1 -1
  311. package/lib/aws/iam/policy-statement-props.generated.d.ts +8 -8
  312. package/lib/aws/iam/policy-statement-props.generated.js +1 -1
  313. package/lib/aws/iam/policy-statement.js +9 -9
  314. package/lib/aws/iam/policy.js +1 -1
  315. package/lib/aws/iam/principals.js +26 -26
  316. package/lib/aws/iam/private/assume-role-policy.js +2 -3
  317. package/lib/aws/iam/private/comparable-principal.js +2 -3
  318. package/lib/aws/iam/private/immutable-role.d.ts +2 -1
  319. package/lib/aws/iam/private/immutable-role.js +3 -3
  320. package/lib/aws/iam/private/imported-role.d.ts +1 -1
  321. package/lib/aws/iam/private/imported-role.js +3 -3
  322. package/lib/aws/iam/private/merge-statements.js +2 -3
  323. package/lib/aws/iam/private/util.js +4 -4
  324. package/lib/aws/iam/role.js +1 -1
  325. package/lib/aws/iam/saml-provider.d.ts +1 -1
  326. package/lib/aws/iam/saml-provider.js +6 -6
  327. package/lib/aws/iam/unknown-principal.js +1 -1
  328. package/lib/aws/iam/utils.js +2 -3
  329. package/lib/aws/index.d.ts +1 -0
  330. package/lib/aws/index.js +4 -1
  331. package/lib/aws/network/simple-ipv4-vpc.js +5 -5
  332. package/lib/aws/network/subnet-group.js +3 -3
  333. package/lib/aws/network/subnet.d.ts +1 -1
  334. package/lib/aws/network/subnet.js +7 -7
  335. package/lib/aws/notify/archive.js +3 -2
  336. package/lib/aws/notify/connection.js +5 -4
  337. package/lib/aws/notify/event-bus.js +5 -4
  338. package/lib/aws/notify/event-pattern.js +3 -3
  339. package/lib/aws/notify/index.js +3 -1
  340. package/lib/aws/notify/input.js +4 -3
  341. package/lib/aws/notify/kinesis-stream.js +3 -2
  342. package/lib/aws/notify/on-event-options.js +2 -1
  343. package/lib/aws/notify/queue-config.generated.d.ts +18 -11
  344. package/lib/aws/notify/queue-config.generated.js +1 -1
  345. package/lib/aws/notify/queue-policy.js +1 -1
  346. package/lib/aws/notify/queue.js +1 -1
  347. package/lib/aws/notify/resource-policy.js +1 -1
  348. package/lib/aws/notify/rule.js +3 -2
  349. package/lib/aws/notify/schedule.js +2 -2
  350. package/lib/aws/notify/sqs-augmentations.generated.d.ts +125 -0
  351. package/lib/aws/notify/sqs-augmentations.generated.js +74 -0
  352. package/lib/aws/notify/target.js +2 -1
  353. package/lib/aws/notify/targets/event-bus.js +1 -1
  354. package/lib/aws/notify/targets/function.js +1 -1
  355. package/lib/aws/notify/targets/log-group.js +2 -2
  356. package/lib/aws/notify/targets/sqs.js +1 -1
  357. package/lib/aws/notify/targets/state-machine.js +1 -1
  358. package/lib/aws/notify/targets/util.d.ts +1 -1
  359. package/lib/aws/notify/targets/util.js +10 -11
  360. package/lib/aws/notify/util.js +4 -4
  361. package/lib/aws/provider-config.generated.d.ts +33 -33
  362. package/lib/aws/provider-config.generated.js +1 -1
  363. package/lib/aws/storage/bucket-notifications.js +1 -1
  364. package/lib/aws/storage/bucket-policy.js +1 -1
  365. package/lib/aws/storage/bucket-source.js +1 -1
  366. package/lib/aws/storage/bucket.d.ts +298 -65
  367. package/lib/aws/storage/bucket.js +548 -225
  368. package/lib/aws/storage/cors-config.generated.d.ts +3 -3
  369. package/lib/aws/storage/cors-config.generated.js +1 -1
  370. package/lib/aws/storage/cors-rule-config.generated.d.ts +5 -5
  371. package/lib/aws/storage/cors-rule-config.generated.js +1 -1
  372. package/lib/aws/storage/index.d.ts +1 -0
  373. package/lib/aws/storage/index.js +2 -1
  374. package/lib/aws/storage/lifecycle-config.generated.d.ts +11 -11
  375. package/lib/aws/storage/lifecycle-config.generated.js +1 -1
  376. package/lib/aws/storage/notification-targets/function.js +6 -6
  377. package/lib/aws/storage/notification-targets/queue.js +1 -1
  378. package/lib/aws/storage/origin-access-identity.d.ts +1 -1
  379. package/lib/aws/storage/origin-access-identity.js +5 -4
  380. package/lib/aws/storage/parameter-util.d.ts +12 -0
  381. package/lib/aws/storage/parameter-util.js +65 -0
  382. package/lib/aws/storage/parameter.d.ts +526 -0
  383. package/lib/aws/storage/parameter.js +606 -0
  384. package/lib/aws/storage/s3-canned-metrics.generated.d.ts +22 -0
  385. package/lib/aws/storage/s3-canned-metrics.generated.js +23 -0
  386. package/lib/aws/storage/util.d.ts +25 -3
  387. package/lib/aws/storage/util.js +84 -17
  388. package/lib/aws/storage/website-config.generated.d.ts +5 -5
  389. package/lib/aws/storage/website-config.generated.js +1 -1
  390. package/lib/aws/util.js +2 -3
  391. package/lib/construct-base.d.ts +10 -1
  392. package/lib/construct-base.js +9 -6
  393. package/lib/duration.js +1 -1
  394. package/lib/expiration.d.ts +48 -0
  395. package/lib/expiration.js +68 -0
  396. package/lib/helpers-internal/index.d.ts +1 -0
  397. package/lib/helpers-internal/index.js +7 -0
  398. package/lib/index.d.ts +2 -0
  399. package/lib/index.js +3 -1
  400. package/lib/private/md5.d.ts +4 -0
  401. package/lib/private/md5.js +14 -0
  402. package/lib/private/unique-resource-name.js +3 -4
  403. package/lib/size.js +2 -2
  404. package/lib/stack-base.d.ts +4 -23
  405. package/lib/stack-base.js +9 -30
  406. package/lib/terra-func.d.ts +103 -0
  407. package/lib/terra-func.js +170 -0
  408. package/lib/token.js +5 -5
  409. package/package.json +15 -8
  410. package/bun.lockb +0 -0
@@ -101,7 +101,7 @@ class DataProtectionPolicy {
101
101
  }
102
102
  exports.DataProtectionPolicy = DataProtectionPolicy;
103
103
  _a = JSII_RTTI_SYMBOL_1;
104
- DataProtectionPolicy[_a] = { fqn: "terraconstructs.aws.cloudwatch.DataProtectionPolicy", version: "0.0.11" };
104
+ DataProtectionPolicy[_a] = { fqn: "terraconstructs.aws.cloudwatch.DataProtectionPolicy", version: "0.0.12" };
105
105
  /**
106
106
  * A data protection identifier. If an identifier is supported but not in this class, it can be passed in the constructor instead.
107
107
  */
@@ -119,7 +119,7 @@ class DataIdentifier {
119
119
  }
120
120
  exports.DataIdentifier = DataIdentifier;
121
121
  _b = JSII_RTTI_SYMBOL_1;
122
- DataIdentifier[_b] = { fqn: "terraconstructs.aws.cloudwatch.DataIdentifier", version: "0.0.11" };
122
+ DataIdentifier[_b] = { fqn: "terraconstructs.aws.cloudwatch.DataIdentifier", version: "0.0.12" };
123
123
  DataIdentifier.ADDRESS = new DataIdentifier("Address");
124
124
  DataIdentifier.AWSSECRETKEY = new DataIdentifier("AwsSecretKey");
125
125
  DataIdentifier.BANKACCOUNTNUMBER_DE = new DataIdentifier("BankAccountNumber-DE");
@@ -242,5 +242,5 @@ class CustomDataIdentifier extends DataIdentifier {
242
242
  }
243
243
  exports.CustomDataIdentifier = CustomDataIdentifier;
244
244
  _c = JSII_RTTI_SYMBOL_1;
245
- CustomDataIdentifier[_c] = { fqn: "terraconstructs.aws.cloudwatch.CustomDataIdentifier", version: "0.0.11" };
245
+ CustomDataIdentifier[_c] = { fqn: "terraconstructs.aws.cloudwatch.CustomDataIdentifier", version: "0.0.12" };
246
246
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1wcm90ZWN0aW9uLXBvbGljeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hd3MvY2xvdWR3YXRjaC9kYXRhLXByb3RlY3Rpb24tcG9saWN5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMkdBQTJHO0FBRTNHLHNEQUF3RTtBQUN4RSw0Q0FBd0M7QUFHeEM7O0dBRUc7QUFDSCxNQUFhLG9CQUFvQjtJQUcvQixZQUFZLEtBQWdDO1FBQzFDLElBQUksS0FBSyxDQUFDLFdBQVcsQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDbEMsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO1FBQ3BELENBQUM7UUFDRCxJQUFJLENBQUMseUJBQXlCLEdBQUcsS0FBSyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxrREFBa0Q7SUFFbEQ7O09BRUc7SUFDSSxLQUFLLENBQ1YsTUFBaUI7UUFFakIsTUFBTSxJQUFJLEdBQ1IsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksSUFBSSw0QkFBNEIsQ0FBQztRQUN0RSxNQUFNLFdBQVcsR0FDZixJQUFJLENBQUMseUJBQXlCLENBQUMsV0FBVztZQUMxQyxzQ0FBc0MsQ0FBQztRQUN6QyxNQUFNLE9BQU8sR0FBRyxZQUFZLENBQUM7UUFFN0IsTUFBTSxtQkFBbUIsR0FBOEIsRUFBRSxDQUFDO1FBQzFELElBQUksSUFBSSxDQUFDLHlCQUF5QixDQUFDLHdCQUF3QixFQUFFLENBQUM7WUFDNUQsbUJBQW1CLENBQUMsY0FBYyxHQUFHO2dCQUNuQyxRQUFRLEVBQ04sSUFBSSxDQUFDLHlCQUF5QixDQUFDLHdCQUF3QixDQUFDLFlBQVk7YUFDdkUsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1lBQzVELG1CQUFtQixDQUFDLEVBQUUsR0FBRztnQkFDdkIsTUFBTSxFQUNKLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyx3QkFBd0IsQ0FBQyxVQUFVO2FBQ3JFLENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMseUJBQXlCLENBQUMsa0NBQWtDLEVBQUUsQ0FBQztZQUN0RSxtQkFBbUIsQ0FBQyxRQUFRLEdBQUc7Z0JBQzdCLGNBQWMsRUFDWixJQUFJLENBQUMseUJBQXlCLENBQUMsa0NBQWtDO2FBQ3BFLENBQUM7UUFDSixDQUFDO1FBRUQsTUFBTSxXQUFXLEdBQWEsRUFBRSxDQUFDO1FBQ2pDLE1BQU0scUJBQXFCLEdBQWlDLEVBQUUsQ0FBQztRQUMvRCxLQUFLLElBQUksVUFBVSxJQUFJLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNsRSxJQUFJLFVBQVUsWUFBWSxvQkFBb0IsRUFBRSxDQUFDO2dCQUMvQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDbEMscUJBQXFCLENBQUMsSUFBSSxDQUFDO29CQUN6QixJQUFJLEVBQUUsVUFBVSxDQUFDLElBQUk7b0JBQ3JCLEtBQUssRUFBRSxVQUFVLENBQUMsS0FBSztpQkFDeEIsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLFdBQVcsQ0FBQyxJQUFJLENBQ2Qsb0JBQVEsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsU0FBUyxDQUFDO29CQUN4QyxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixNQUFNLEVBQUUsRUFBRTtvQkFDVixPQUFPLEVBQUUsS0FBSztvQkFDZCxPQUFPLEVBQUUsZ0JBQWdCO29CQUN6QixZQUFZLEVBQUUsVUFBVSxDQUFDLElBQUk7aUJBQzlCLENBQUMsQ0FDSCxDQUFDO1lBQ0osQ0FBQztRQUNILENBQUM7UUFFRCxNQUFNLFNBQVMsR0FBRztZQUNoQjtnQkFDRSxHQUFHLEVBQUUscUJBQXFCO2dCQUMxQixjQUFjLEVBQUUsV0FBVztnQkFDM0IsU0FBUyxFQUFFO29CQUNULEtBQUssRUFBRTt3QkFDTCxtQkFBbUIsRUFBRSxtQkFBbUI7cUJBQ3pDO2lCQUNGO2FBQ0Y7WUFDRDtnQkFDRSxHQUFHLEVBQUUsc0JBQXNCO2dCQUMzQixjQUFjLEVBQUUsV0FBVztnQkFDM0IsU0FBUyxFQUFFO29CQUNULFVBQVUsRUFBRTt3QkFDVixVQUFVLEVBQUUsRUFBRTtxQkFDZjtpQkFDRjthQUNGO1NBQ0YsQ0FBQztRQUVGLE1BQU0sYUFBYSxHQUF3QjtZQUN6QyxvQkFBb0IsRUFBRSxxQkFBcUI7U0FDNUMsQ0FBQztRQUNGLE1BQU0sUUFBUSxHQUNaLElBQUksZ0RBQWlDLENBQUMsaUNBQWlDLENBQ3JFLE1BQU0sRUFDTixzQkFBc0IsRUFDdEI7WUFDRSxZQUFZLEVBQUUsTUFBTSxDQUFDLFlBQVk7WUFDakMsaUdBQWlHO1lBQ2pHLGdJQUFnSTtZQUNoSSxjQUFjLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQztnQkFDN0IsSUFBSTtnQkFDSixXQUFXO2dCQUNYLE9BQU87Z0JBQ1AsYUFBYTtnQkFDYixTQUFTO2FBQ1YsQ0FBQztTQUNILENBQ0YsQ0FBQztRQUNKLE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7O0FBL0dILG9EQWdIQzs7O0FBNkVEOztHQUVHO0FBQ0gsTUFBYSxjQUFjO0lBeU96Qjs7O09BR0c7SUFDSCxZQUE0QixJQUFZO1FBQVosU0FBSSxHQUFKLElBQUksQ0FBUTtJQUFHLENBQUM7SUFFckMsUUFBUTtRQUNiLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDOztBQWpQSCx3Q0FrUEM7OztBQWpQd0Isc0JBQU8sR0FBRyxJQUFJLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUN4QywyQkFBWSxHQUFHLElBQUksY0FBYyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQ2xELG1DQUFvQixHQUFHLElBQUksY0FBYyxDQUM5RCxzQkFBc0IsQ0FDdkIsQ0FBQztBQUNxQixtQ0FBb0IsR0FBRyxJQUFJLGNBQWMsQ0FDOUQsc0JBQXNCLENBQ3ZCLENBQUM7QUFDcUIsbUNBQW9CLEdBQUcsSUFBSSxjQUFjLENBQzlELHNCQUFzQixDQUN2QixDQUFDO0FBQ3FCLG1DQUFvQixHQUFHLElBQUksY0FBYyxDQUM5RCxzQkFBc0IsQ0FDdkIsQ0FBQztBQUNxQixtQ0FBb0IsR0FBRyxJQUFJLGNBQWMsQ0FDOUQsc0JBQXNCLENBQ3ZCLENBQUM7QUFDcUIsbUNBQW9CLEdBQUcsSUFBSSxjQUFjLENBQzlELHNCQUFzQixDQUN2QixDQUFDO0FBQ3FCLHlCQUFVLEdBQUcsSUFBSSxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDOUMsc0JBQU8sR0FBRyxJQUFJLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUN4Qyx5QkFBVSxHQUFHLElBQUksY0FBYyxDQUFDLFlBQVksQ0FBQyxDQUFDO0FBQzlDLG1DQUFvQixHQUFHLElBQUksY0FBYyxDQUM5RCxzQkFBc0IsQ0FDdkIsQ0FBQztBQUNxQiwrQkFBZ0IsR0FBRyxJQUFJLGNBQWMsQ0FDMUQsa0JBQWtCLENBQ25CLENBQUM7QUFDcUIscUNBQXNCLEdBQUcsSUFBSSxjQUFjLENBQ2hFLHdCQUF3QixDQUN6QixDQUFDO0FBQ3FCLGdDQUFpQixHQUFHLElBQUksY0FBYyxDQUMzRCxtQkFBbUIsQ0FDcEIsQ0FBQztBQUNxQixnQ0FBaUIsR0FBRyxJQUFJLGNBQWMsQ0FDM0QsbUJBQW1CLENBQ3BCLENBQUM7QUFDcUIsZ0NBQWlCLEdBQUcsSUFBSSxjQUFjLENBQzNELG1CQUFtQixDQUNwQixDQUFDO0FBQ3FCLGdDQUFpQixHQUFHLElBQUksY0FBYyxDQUMzRCxtQkFBbUIsQ0FDcEIsQ0FBQztBQUNxQixnQ0FBaUIsR0FBRyxJQUFJLGNBQWMsQ0FDM0QsbUJBQW1CLENBQ3BCLENBQUM7QUFDcUIsZ0NBQWlCLEdBQUcsSUFBSSxjQUFjLENBQzNELG1CQUFtQixDQUNwQixDQUFDO0FBQ3FCLGdDQUFpQixHQUFHLElBQUksY0FBYyxDQUMzRCxtQkFBbUIsQ0FDcEIsQ0FBQztBQUNxQixnQ0FBaUIsR0FBRyxJQUFJLGNBQWMsQ0FDM0QsbUJBQW1CLENBQ3BCLENBQUM7QUFDcUIsZ0NBQWlCLEdBQUcsSUFBSSxjQUFjLENBQzNELG1CQUFtQixDQUNwQixDQUFDO0FBQ3FCLGdDQUFpQixHQUFHLElBQUksY0FBYyxDQUMzRCxtQkFBbUIsQ0FDcEIsQ0FBQztBQUNxQixnQ0FBaUIsR0FBRyxJQUFJLGNBQWMsQ0FDM0QsbUJBQW1CLENBQ3BCLENBQUM7QUFDcUIsZ0NBQWlCLEdBQUcsSUFBSSxjQUFjLENBQzNELG1CQUFtQixDQUNwQixDQUFDO0FBQ3FCLGdDQUFpQixHQUFHLElBQUksY0FBYyxDQUMzRCxtQkFBbUIsQ0FDcEIsQ0FBQztBQUNxQixnQ0FBaUIsR0FBRyxJQUFJLGNBQWMsQ0FDM0QsbUJBQW1CLENBQ3BCLENBQUM7QUFDcUIsZ0NBQWlCLEdBQUcsSUFBSSxjQUFjLENBQzNELG1CQUFtQixDQUNwQixDQUFDO0FBQ3FCLGdDQUFpQixHQUFHLElBQUksY0FBYyxDQUMzRCxtQkFBbUIsQ0FDcEIsQ0FBQztBQUNxQixnQ0FBaUIsR0FBRyxJQUFJLGNBQWMsQ0FDM0QsbUJBQW1CLENBQ3BCLENBQUM7QUFDcUIsZ0NBQWlCLEdBQUcsSUFBSSxjQUFjLENBQzNELG1CQUFtQixDQUNwQixDQUFDO0FBQ3FCLGdDQUFpQixHQUFHLElBQUksY0FBYyxDQUMzRCxtQkFBbUIsQ0FDcEIsQ0FBQztBQUNxQixnQ0FBaUIsR0FBRyxJQUFJLGNBQWMsQ0FDM0QsbUJBQW1CLENBQ3BCLENBQUM7QUFDcUIsZ0NBQWlCLEdBQUcsSUFBSSxjQUFjLENBQzNELG1CQUFtQixDQUNwQixDQUFDO0FBQ3FCLGdDQUFpQixHQUFHLElBQUksY0FBYyxDQUMzRCxtQkFBbUIsQ0FDcEIsQ0FBQztBQUNxQixnQ0FBaUIsR0FBRyxJQUFJLGNBQWMsQ0FDM0QsbUJBQW1CLENBQ3BCLENBQUM7QUFDcUIsZ0NBQWlCLEdBQUcsSUFBSSxjQUFjLENBQzNELG1CQUFtQixDQUNwQixDQUFDO0FBQ3FCLGdDQUFpQixHQUFHLElBQUksY0FBYyxDQUMzRCxtQkFBbUIsQ0FDcEIsQ0FBQztBQUNxQixnQ0FBaUIsR0FBRyxJQUFJLGNBQWMsQ0FDM0QsbUJBQW1CLENBQ3BCLENBQUM7QUFDcUIsZ0NBQWlCLEdBQUcsSUFBSSxjQUFjLENBQzNELG1CQUFtQixDQUNwQixDQUFDO0FBQ3FCLGdDQUFpQixHQUFHLElBQUksY0FBYyxDQUMzRCxtQkFBbUIsQ0FDcEIsQ0FBQztBQUNxQixnQ0FBaUIsR0FBRyxJQUFJLGNBQWMsQ0FDM0QsbUJBQW1CLENBQ3BCLENBQUM7QUFDcUIsZ0NBQWlCLEdBQUcsSUFBSSxjQUFjLENBQzNELG1CQUFtQixDQUNwQixDQUFDO0FBQ3FCLGdDQUFpQixHQUFHLElBQUksY0FBYyxDQUMzRCxtQkFBbUIsQ0FDcEIsQ0FBQztBQUNxQiw2Q0FBOEIsR0FBRyxJQUFJLGNBQWMsQ0FDeEUsZ0NBQWdDLENBQ2pDLENBQUM7QUFDcUIscUNBQXNCLEdBQUcsSUFBSSxjQUFjLENBQ2hFLHdCQUF3QixDQUN6QixDQUFDO0FBQ3FCLDJCQUFZLEdBQUcsSUFBSSxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUM7QUFDbEQsMkNBQTRCLEdBQUcsSUFBSSxjQUFjLENBQ3RFLDhCQUE4QixDQUMvQixDQUFDO0FBQ3FCLDRDQUE2QixHQUFHLElBQUksY0FBYyxDQUN2RSwrQkFBK0IsQ0FDaEMsQ0FBQztBQUNxQix1Q0FBd0IsR0FBRyxJQUFJLGNBQWMsQ0FDbEUsMEJBQTBCLENBQzNCLENBQUM7QUFDcUIseUNBQTBCLEdBQUcsSUFBSSxjQUFjLENBQ3BFLDRCQUE0QixDQUM3QixDQUFDO0FBQ3FCLG1EQUFvQyxHQUN6RCxJQUFJLGNBQWMsQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO0FBQ3RDLDJCQUFZLEdBQUcsSUFBSSxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUM7QUFDbEQsd0JBQVMsR0FBRyxJQUFJLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUM1QyxzQkFBTyxHQUFHLElBQUksY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQ3hDLDJDQUE0QixHQUFHLElBQUksY0FBYyxDQUN0RSw4QkFBOEIsQ0FDL0IsQ0FBQztBQUNxQixtQkFBSSxHQUFHLElBQUksY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ2xDLGtDQUFtQixHQUFHLElBQUksY0FBYyxDQUM3RCxxQkFBcUIsQ0FDdEIsQ0FBQztBQUNxQiw4Q0FBK0IsR0FBRyxJQUFJLGNBQWMsQ0FDekUsaUNBQWlDLENBQ2xDLENBQUM7QUFDcUIsOENBQStCLEdBQUcsSUFBSSxjQUFjLENBQ3pFLGlDQUFpQyxDQUNsQyxDQUFDO0FBQ3FCLDhDQUErQixHQUFHLElBQUksY0FBYyxDQUN6RSxpQ0FBaUMsQ0FDbEMsQ0FBQztBQUNxQix5Q0FBMEIsR0FBRyxJQUFJLGNBQWMsQ0FDcEUsNEJBQTRCLENBQzdCLENBQUM7QUFDcUIsb0NBQXFCLEdBQUcsSUFBSSxjQUFjLENBQy9ELHVCQUF1QixDQUN4QixDQUFDO0FBQ3FCLDJCQUFZLEdBQUcsSUFBSSxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUM7QUFDbEQsMkJBQVksR0FBRyxJQUFJLGNBQWMsQ0FBQyxjQUFjLENBQUMsQ0FBQztBQUNsRCwyQkFBWSxHQUFHLElBQUksY0FBYyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQ2xELGdDQUFpQixHQUFHLElBQUksY0FBYyxDQUMzRCxtQkFBbUIsQ0FDcEIsQ0FBQztBQUNxQixnQ0FBaUIsR0FBRyxJQUFJLGNBQWMsQ0FDM0QsbUJBQW1CLENBQ3BCLENBQUM7QUFDcUIsZ0NBQWlCLEdBQUcsSUFBSSxjQUFjLENBQzNELG1CQUFtQixDQUNwQixDQUFDO0FBQ3FCLGdDQUFpQixHQUFHLElBQUksY0FBYyxDQUMzRCxtQkFBbUIsQ0FDcEIsQ0FBQztBQUNxQixnQ0FBaUIsR0FBRyxJQUFJLGNBQWMsQ0FDM0QsbUJBQW1CLENBQ3BCLENBQUM7QUFDcUIsZ0NBQWlCLEdBQUcsSUFBSSxjQUFjLENBQzNELG1CQUFtQixDQUNwQixDQUFDO0FBQ3FCLGdDQUFpQixHQUFHLElBQUksY0FBYyxDQUMzRCxtQkFBbUIsQ0FDcEIsQ0FBQztBQUNxQixnQ0FBaUIsR0FBRyxJQUFJLGNBQWMsQ0FDM0QsbUJBQW1CLENBQ3BCLENBQUM7QUFDcUIsMENBQTJCLEdBQUcsSUFBSSxjQUFjLENBQ3JFLDZCQUE2QixDQUM5QixDQUFDO0FBQ3FCLHNDQUF1QixHQUFHLElBQUksY0FBYyxDQUNqRSx5QkFBeUIsQ0FDMUIsQ0FBQztBQUNxQiw0QkFBYSxHQUFHLElBQUksY0FBYyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0FBQ3BELDZCQUFjLEdBQUcsSUFBSSxjQUFjLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztBQUN0RCw2QkFBYyxHQUFHLElBQUksY0FBYyxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFDdEQsNkJBQWMsR0FBRyxJQUFJLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0FBQ3RELDZCQUFjLEdBQUcsSUFBSSxjQUFjLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztBQUN0RCw2QkFBYyxHQUFHLElBQUksY0FBYyxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFDdEQsNkJBQWMsR0FBRyxJQUFJLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0FBQ3RELDZCQUFjLEdBQUcsSUFBSSxjQUFjLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztBQUN0RCw2QkFBYyxHQUFHLElBQUksY0FBYyxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFDdEQsNEJBQWEsR0FBRyxJQUFJLGNBQWMsQ0FBQyxlQUFlLENBQUMsQ0FBQztBQUNwRCw4QkFBZSxHQUFHLElBQUksY0FBYyxDQUN6RCxpQkFBaUIsQ0FDbEIsQ0FBQztBQUNxQiwwQkFBVyxHQUFHLElBQUksY0FBYyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0FBQ2hELHVDQUF3QixHQUFHLElBQUksY0FBYyxDQUNsRSwwQkFBMEIsQ0FDM0IsQ0FBQztBQUNxQixxQkFBTSxHQUFHLElBQUksY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQ3RDLHFCQUFNLEdBQUcsSUFBSSxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDdEMsdUJBQVEsR0FBRyxJQUFJLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUMxQyx1QkFBUSxHQUFHLElBQUksY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0FBQzFDLHVCQUFRLEdBQUcsSUFBSSxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUM7QUFDMUMsdUJBQVEsR0FBRyxJQUFJLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUMxQywwQ0FBMkIsR0FBRyxJQUFJLGNBQWMsQ0FDckUsNkJBQTZCLENBQzlCLENBQUM7QUFDcUIseUJBQVUsR0FBRyxJQUFJLGNBQWMsQ0FBQyxZQUFZLENBQUMsQ0FBQztBQWF2RTs7R0FFRztBQUNILE1BQWEsb0JBQXFCLFNBQVEsY0FBYztJQUN0RDs7OztPQUlHO0lBQ0gsWUFDa0IsSUFBWSxFQUNaLEtBQWE7UUFFN0IsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBSEksU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNaLFVBQUssR0FBTCxLQUFLLENBQVE7SUFHL0IsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFFBQVE7UUFDYixPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDdkMsQ0FBQzs7QUFuQkgsb0RBb0JDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvdjIuMTcwLjAvcGFja2FnZXMvYXdzLWNkay1saWIvYXdzLWxvZ3MvbGliL2RhdGEtcHJvdGVjdGlvbi1wb2xpY3kudHNcblxuaW1wb3J0IHsgY2xvdWR3YXRjaExvZ0RhdGFQcm90ZWN0aW9uUG9saWN5IH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1hd3NcIjtcbmltcG9ydCB7IEF3c1N0YWNrIH0gZnJvbSBcIi4uL2F3cy1zdGFja1wiO1xuaW1wb3J0IHsgSUxvZ0dyb3VwIH0gZnJvbSBcIi4vbG9nLWdyb3VwXCI7XG5pbXBvcnQgeyBJQnVja2V0IH0gZnJvbSBcIi4uL3N0b3JhZ2VcIjtcbi8qKlxuICogQ3JlYXRlcyBhIGRhdGEgcHJvdGVjdGlvbiBwb2xpY3kgZm9yIENsb3VkV2F0Y2ggTG9ncyBsb2cgZ3JvdXBzLlxuICovXG5leHBvcnQgY2xhc3MgRGF0YVByb3RlY3Rpb25Qb2xpY3kge1xuICBwcml2YXRlIHJlYWRvbmx5IGRhdGFQcm90ZWN0aW9uUG9saWN5UHJvcHM6IERhdGFQcm90ZWN0aW9uUG9saWN5UHJvcHM7XG5cbiAgY29uc3RydWN0b3IocHJvcHM6IERhdGFQcm90ZWN0aW9uUG9saWN5UHJvcHMpIHtcbiAgICBpZiAocHJvcHMuaWRlbnRpZmllcnMubGVuZ3RoID09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkRhdGFJZGVudGlmaWVyIGNhbm5vdCBiZSBlbXB0eVwiKTtcbiAgICB9XG4gICAgdGhpcy5kYXRhUHJvdGVjdGlvblBvbGljeVByb3BzID0gcHJvcHM7XG4gIH1cblxuICAvLyBOT1RFOiBsaW1pdGVkIHNjb3BlIHRvIGxvZ0dyb3VwIGNsYXNzIChmb3Igbm93KVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBfYmluZChcbiAgICBfc2NvcGU6IElMb2dHcm91cCxcbiAgKTogY2xvdWR3YXRjaExvZ0RhdGFQcm90ZWN0aW9uUG9saWN5LkNsb3Vkd2F0Y2hMb2dEYXRhUHJvdGVjdGlvblBvbGljeSB7XG4gICAgY29uc3QgbmFtZSA9XG4gICAgICB0aGlzLmRhdGFQcm90ZWN0aW9uUG9saWN5UHJvcHMubmFtZSB8fCBcImRhdGEtcHJvdGVjdGlvbi1wb2xpY3ktY2RrXCI7XG4gICAgY29uc3QgZGVzY3JpcHRpb24gPVxuICAgICAgdGhpcy5kYXRhUHJvdGVjdGlvblBvbGljeVByb3BzLmRlc2NyaXB0aW9uIHx8XG4gICAgICBcImNkayBnZW5lcmF0ZWQgZGF0YSBwcm90ZWN0aW9uIHBvbGljeVwiO1xuICAgIGNvbnN0IHZlcnNpb24gPSBcIjIwMjEtMDYtMDFcIjtcblxuICAgIGNvbnN0IGZpbmRpbmdzRGVzdGluYXRpb246IFBvbGljeUZpbmRpbmdzRGVzdGluYXRpb24gPSB7fTtcbiAgICBpZiAodGhpcy5kYXRhUHJvdGVjdGlvblBvbGljeVByb3BzLmxvZ0dyb3VwQXVkaXREZXN0aW5hdGlvbikge1xuICAgICAgZmluZGluZ3NEZXN0aW5hdGlvbi5jbG91ZFdhdGNoTG9ncyA9IHtcbiAgICAgICAgbG9nR3JvdXA6XG4gICAgICAgICAgdGhpcy5kYXRhUHJvdGVjdGlvblBvbGljeVByb3BzLmxvZ0dyb3VwQXVkaXREZXN0aW5hdGlvbi5sb2dHcm91cE5hbWUsXG4gICAgICB9O1xuICAgIH1cblxuICAgIGlmICh0aGlzLmRhdGFQcm90ZWN0aW9uUG9saWN5UHJvcHMuczNCdWNrZXRBdWRpdERlc3RpbmF0aW9uKSB7XG4gICAgICBmaW5kaW5nc0Rlc3RpbmF0aW9uLnMzID0ge1xuICAgICAgICBidWNrZXQ6XG4gICAgICAgICAgdGhpcy5kYXRhUHJvdGVjdGlvblBvbGljeVByb3BzLnMzQnVja2V0QXVkaXREZXN0aW5hdGlvbi5idWNrZXROYW1lLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5kYXRhUHJvdGVjdGlvblBvbGljeVByb3BzLmRlbGl2ZXJ5U3RyZWFtTmFtZUF1ZGl0RGVzdGluYXRpb24pIHtcbiAgICAgIGZpbmRpbmdzRGVzdGluYXRpb24uZmlyZWhvc2UgPSB7XG4gICAgICAgIGRlbGl2ZXJ5U3RyZWFtOlxuICAgICAgICAgIHRoaXMuZGF0YVByb3RlY3Rpb25Qb2xpY3lQcm9wcy5kZWxpdmVyeVN0cmVhbU5hbWVBdWRpdERlc3RpbmF0aW9uLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBjb25zdCBpZGVudGlmaWVyczogc3RyaW5nW10gPSBbXTtcbiAgICBjb25zdCBjdXN0b21EYXRhSWRlbnRpZmllcnM6IFBvbGljeUN1c3RvbURhdGFJZGVudGlmaWVyW10gPSBbXTtcbiAgICBmb3IgKGxldCBpZGVudGlmaWVyIG9mIHRoaXMuZGF0YVByb3RlY3Rpb25Qb2xpY3lQcm9wcy5pZGVudGlmaWVycykge1xuICAgICAgaWYgKGlkZW50aWZpZXIgaW5zdGFuY2VvZiBDdXN0b21EYXRhSWRlbnRpZmllcikge1xuICAgICAgICBpZGVudGlmaWVycy5wdXNoKGlkZW50aWZpZXIubmFtZSk7XG4gICAgICAgIGN1c3RvbURhdGFJZGVudGlmaWVycy5wdXNoKHtcbiAgICAgICAgICBuYW1lOiBpZGVudGlmaWVyLm5hbWUsXG4gICAgICAgICAgcmVnZXg6IGlkZW50aWZpZXIucmVnZXgsXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWRlbnRpZmllcnMucHVzaChcbiAgICAgICAgICBBd3NTdGFjay5vZkF3c0NvbnN0cnVjdChfc2NvcGUpLmZvcm1hdEFybih7XG4gICAgICAgICAgICByZXNvdXJjZTogXCJkYXRhLWlkZW50aWZpZXJcIixcbiAgICAgICAgICAgIHJlZ2lvbjogXCJcIixcbiAgICAgICAgICAgIGFjY291bnQ6IFwiYXdzXCIsXG4gICAgICAgICAgICBzZXJ2aWNlOiBcImRhdGFwcm90ZWN0aW9uXCIsXG4gICAgICAgICAgICByZXNvdXJjZU5hbWU6IGlkZW50aWZpZXIubmFtZSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBzdGF0ZW1lbnQgPSBbXG4gICAgICB7XG4gICAgICAgIHNpZDogXCJhdWRpdC1zdGF0ZW1lbnQtY2RrXCIsXG4gICAgICAgIGRhdGFJZGVudGlmaWVyOiBpZGVudGlmaWVycyxcbiAgICAgICAgb3BlcmF0aW9uOiB7XG4gICAgICAgICAgYXVkaXQ6IHtcbiAgICAgICAgICAgIGZpbmRpbmdzRGVzdGluYXRpb246IGZpbmRpbmdzRGVzdGluYXRpb24sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHNpZDogXCJyZWRhY3Qtc3RhdGVtZW50LWNka1wiLFxuICAgICAgICBkYXRhSWRlbnRpZmllcjogaWRlbnRpZmllcnMsXG4gICAgICAgIG9wZXJhdGlvbjoge1xuICAgICAgICAgIGRlaWRlbnRpZnk6IHtcbiAgICAgICAgICAgIG1hc2tDb25maWc6IHt9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIF07XG5cbiAgICBjb25zdCBjb25maWd1cmF0aW9uOiBQb2xpY3lDb25maWd1cmF0aW9uID0ge1xuICAgICAgY3VzdG9tRGF0YUlkZW50aWZpZXI6IGN1c3RvbURhdGFJZGVudGlmaWVycyxcbiAgICB9O1xuICAgIGNvbnN0IHJlc291cmNlID1cbiAgICAgIG5ldyBjbG91ZHdhdGNoTG9nRGF0YVByb3RlY3Rpb25Qb2xpY3kuQ2xvdWR3YXRjaExvZ0RhdGFQcm90ZWN0aW9uUG9saWN5KFxuICAgICAgICBfc2NvcGUsXG4gICAgICAgIFwiRGF0YVByb3RlY3Rpb25Qb2xpY3lcIixcbiAgICAgICAge1xuICAgICAgICAgIGxvZ0dyb3VwTmFtZTogX3Njb3BlLmxvZ0dyb3VwTmFtZSxcbiAgICAgICAgICAvLyBUT0RPOiB1c2UgY2xvdWR3YXRjaF9sb2dfZGF0YV9wcm90ZWN0aW9uX3BvbGljeV9kb2N1bWVudCBkYXRhIHNvdXJjZSBpbnN0ZWFkIG9mIGpzb24gc3RyaW5naWZ5XG4gICAgICAgICAgLy8gaHR0cHM6Ly9yZWdpc3RyeS50ZXJyYWZvcm0uaW8vcHJvdmlkZXJzL2hhc2hpY29ycC9hd3MvNS42OC4wL2RvY3MvZGF0YS1zb3VyY2VzL2Nsb3Vkd2F0Y2hfbG9nX2RhdGFfcHJvdGVjdGlvbl9wb2xpY3lfZG9jdW1lbnRcbiAgICAgICAgICBwb2xpY3lEb2N1bWVudDogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgICAgbmFtZSxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgdmVyc2lvbixcbiAgICAgICAgICAgIGNvbmZpZ3VyYXRpb24sXG4gICAgICAgICAgICBzdGF0ZW1lbnQsXG4gICAgICAgICAgfSksXG4gICAgICAgIH0sXG4gICAgICApO1xuICAgIHJldHVybiByZXNvdXJjZTtcbiAgfVxufVxuXG5pbnRlcmZhY2UgUG9saWN5Q29uZmlndXJhdGlvbiB7XG4gIGN1c3RvbURhdGFJZGVudGlmaWVyPzogUG9saWN5Q3VzdG9tRGF0YUlkZW50aWZpZXJbXTtcbn1cblxuaW50ZXJmYWNlIFBvbGljeUN1c3RvbURhdGFJZGVudGlmaWVyIHtcbiAgbmFtZTogc3RyaW5nO1xuICByZWdleDogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgUG9saWN5RmluZGluZ3NEZXN0aW5hdGlvbiB7XG4gIGNsb3VkV2F0Y2hMb2dzPzogUG9saWN5Q2xvdWRXYXRjaExvZ3NEZXN0aW5hdGlvbjtcbiAgZmlyZWhvc2U/OiBQb2xpY3lGaXJlaG9zZURlc3RpbmF0aW9uO1xuICBzMz86IFBvbGljeVMzRGVzdGluYXRpb247XG59XG5cbmludGVyZmFjZSBQb2xpY3lDbG91ZFdhdGNoTG9nc0Rlc3RpbmF0aW9uIHtcbiAgbG9nR3JvdXA6IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIFBvbGljeUZpcmVob3NlRGVzdGluYXRpb24ge1xuICBkZWxpdmVyeVN0cmVhbTogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgUG9saWN5UzNEZXN0aW5hdGlvbiB7XG4gIGJ1Y2tldDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGNyZWF0aW5nIGEgZGF0YSBwcm90ZWN0aW9uIHBvbGljeVxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGFQcm90ZWN0aW9uUG9saWN5UHJvcHMge1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgZGF0YSBwcm90ZWN0aW9uIHBvbGljeVxuICAgKlxuICAgKiBAZGVmYXVsdCAtICdkYXRhLXByb3RlY3Rpb24tcG9saWN5LWNkaydcbiAgICovXG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERlc2NyaXB0aW9uIG9mIHRoZSBkYXRhIHByb3RlY3Rpb24gcG9saWN5XG4gICAqXG4gICAqIEBkZWZhdWx0IC0gJ2NkayBnZW5lcmF0ZWQgZGF0YSBwcm90ZWN0aW9uIHBvbGljeSdcbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIGRhdGEgcHJvdGVjdGlvbiBpZGVudGlmaWVycy5cbiAgICpcbiAgICogTWFuYWdlZCBkYXRhIGlkZW50aWZpZXJzIG11c3QgYmUgaW4gdGhlIGZvbGxvd2luZyBsaXN0OiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQW1hem9uQ2xvdWRXYXRjaC9sYXRlc3QvbG9ncy9DV0wtbWFuYWdlZC1kYXRhLWlkZW50aWZpZXJzLmh0bWxcbiAgICogQ3VzdG9tIGRhdGEgaWRlbnRpZmllcnMgbXVzdCBoYXZlIGEgdmFsaWQgcmVnZXggZGVmaW5lZDogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FtYXpvbkNsb3VkV2F0Y2gvbGF0ZXN0L2xvZ3MvQ1dMLWN1c3RvbS1kYXRhLWlkZW50aWZpZXJzLmh0bWwjY3VzdG9tLWRhdGEtaWRlbnRpZmllcnMtY29uc3RyYWludHNcbiAgICovXG4gIHJlYWRvbmx5IGlkZW50aWZpZXJzOiBEYXRhSWRlbnRpZmllcltdO1xuXG4gIC8qKlxuICAgKiBDbG91ZFdhdGNoIExvZ3MgbG9nIGdyb3VwIHRvIHNlbmQgYXVkaXQgZmluZGluZ3MgdG8uIFRoZSBsb2cgZ3JvdXAgbXVzdCBhbHJlYWR5IGV4aXN0IHByaW9yIHRvIGNyZWF0aW5nIHRoZSBkYXRhIHByb3RlY3Rpb24gcG9saWN5LlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIG5vIENsb3VkV2F0Y2ggTG9ncyBhdWRpdCBkZXN0aW5hdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgbG9nR3JvdXBBdWRpdERlc3RpbmF0aW9uPzogSUxvZ0dyb3VwO1xuXG4gIC8qKlxuICAgKiBTMyBidWNrZXQgdG8gc2VuZCBhdWRpdCBmaW5kaW5ncyB0by4gVGhlIGJ1Y2tldCBtdXN0IGFscmVhZHkgZXhpc3QuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gUzMgYnVja2V0IGF1ZGl0IGRlc3RpbmF0aW9uXG4gICAqL1xuICByZWFkb25seSBzM0J1Y2tldEF1ZGl0RGVzdGluYXRpb24/OiBJQnVja2V0O1xuXG4gIC8qKlxuICAgKiBBbWF6b24gS2luZXNpcyBEYXRhIEZpcmVob3NlIGRlbGl2ZXJ5IHN0cmVhbSB0byBzZW5kIGF1ZGl0IGZpbmRpbmdzIHRvLiBUaGUgZGVsaXZlcnkgc3RyZWFtIG11c3QgYWxyZWFkeSBleGlzdC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBmaXJlaG9zZSBkZWxpdmVyeSBzdHJlYW0gYXVkaXQgZGVzdGluYXRpb25cbiAgICovXG4gIHJlYWRvbmx5IGRlbGl2ZXJ5U3RyZWFtTmFtZUF1ZGl0RGVzdGluYXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQSBkYXRhIHByb3RlY3Rpb24gaWRlbnRpZmllci4gSWYgYW4gaWRlbnRpZmllciBpcyBzdXBwb3J0ZWQgYnV0IG5vdCBpbiB0aGlzIGNsYXNzLCBpdCBjYW4gYmUgcGFzc2VkIGluIHRoZSBjb25zdHJ1Y3RvciBpbnN0ZWFkLlxuICovXG5leHBvcnQgY2xhc3MgRGF0YUlkZW50aWZpZXIge1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEFERFJFU1MgPSBuZXcgRGF0YUlkZW50aWZpZXIoXCJBZGRyZXNzXCIpO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEFXU1NFQ1JFVEtFWSA9IG5ldyBEYXRhSWRlbnRpZmllcihcIkF3c1NlY3JldEtleVwiKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBCQU5LQUNDT1VOVE5VTUJFUl9ERSA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIkJhbmtBY2NvdW50TnVtYmVyLURFXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQkFOS0FDQ09VTlROVU1CRVJfRVMgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJCYW5rQWNjb3VudE51bWJlci1FU1wiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEJBTktBQ0NPVU5UTlVNQkVSX0ZSID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiQmFua0FjY291bnROdW1iZXItRlJcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBCQU5LQUNDT1VOVE5VTUJFUl9HQiA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIkJhbmtBY2NvdW50TnVtYmVyLUdCXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQkFOS0FDQ09VTlROVU1CRVJfSVQgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJCYW5rQWNjb3VudE51bWJlci1JVFwiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEJBTktBQ0NPVU5UTlVNQkVSX1VTID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiQmFua0FjY291bnROdW1iZXItVVNcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDRVBDT0RFX0JSID0gbmV3IERhdGFJZGVudGlmaWVyKFwiQ2VwQ29kZS1CUlwiKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDTlBKX0JSID0gbmV3IERhdGFJZGVudGlmaWVyKFwiQ25wai1CUlwiKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDUEZDT0RFX0JSID0gbmV3IERhdGFJZGVudGlmaWVyKFwiQ3BmQ29kZS1CUlwiKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDUkVESVRDQVJERVhQSVJBVElPTiA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIkNyZWRpdENhcmRFeHBpcmF0aW9uXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ1JFRElUQ0FSRE5VTUJFUiA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIkNyZWRpdENhcmROdW1iZXJcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDUkVESVRDQVJEU0VDVVJJVFlDT0RFID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiQ3JlZGl0Q2FyZFNlY3VyaXR5Q29kZVwiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERSSVZFUlNMSUNFTlNFX0FUID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiRHJpdmVyc0xpY2Vuc2UtQVRcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBEUklWRVJTTElDRU5TRV9BVSA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIkRyaXZlcnNMaWNlbnNlLUFVXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRFJJVkVSU0xJQ0VOU0VfQkUgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJEcml2ZXJzTGljZW5zZS1CRVwiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERSSVZFUlNMSUNFTlNFX0JHID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiRHJpdmVyc0xpY2Vuc2UtQkdcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBEUklWRVJTTElDRU5TRV9DQSA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIkRyaXZlcnNMaWNlbnNlLUNBXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRFJJVkVSU0xJQ0VOU0VfQ1kgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJEcml2ZXJzTGljZW5zZS1DWVwiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERSSVZFUlNMSUNFTlNFX0NaID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiRHJpdmVyc0xpY2Vuc2UtQ1pcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBEUklWRVJTTElDRU5TRV9ERSA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIkRyaXZlcnNMaWNlbnNlLURFXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRFJJVkVSU0xJQ0VOU0VfREsgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJEcml2ZXJzTGljZW5zZS1ES1wiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERSSVZFUlNMSUNFTlNFX0VFID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiRHJpdmVyc0xpY2Vuc2UtRUVcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBEUklWRVJTTElDRU5TRV9FUyA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIkRyaXZlcnNMaWNlbnNlLUVTXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRFJJVkVSU0xJQ0VOU0VfRkkgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJEcml2ZXJzTGljZW5zZS1GSVwiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERSSVZFUlNMSUNFTlNFX0ZSID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiRHJpdmVyc0xpY2Vuc2UtRlJcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBEUklWRVJTTElDRU5TRV9HQiA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIkRyaXZlcnNMaWNlbnNlLUdCXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRFJJVkVSU0xJQ0VOU0VfR1IgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJEcml2ZXJzTGljZW5zZS1HUlwiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERSSVZFUlNMSUNFTlNFX0hSID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiRHJpdmVyc0xpY2Vuc2UtSFJcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBEUklWRVJTTElDRU5TRV9IVSA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIkRyaXZlcnNMaWNlbnNlLUhVXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRFJJVkVSU0xJQ0VOU0VfSUUgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJEcml2ZXJzTGljZW5zZS1JRVwiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERSSVZFUlNMSUNFTlNFX0lUID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiRHJpdmVyc0xpY2Vuc2UtSVRcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBEUklWRVJTTElDRU5TRV9MVCA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIkRyaXZlcnNMaWNlbnNlLUxUXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRFJJVkVSU0xJQ0VOU0VfTFUgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJEcml2ZXJzTGljZW5zZS1MVVwiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERSSVZFUlNMSUNFTlNFX0xWID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiRHJpdmVyc0xpY2Vuc2UtTFZcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBEUklWRVJTTElDRU5TRV9NVCA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIkRyaXZlcnNMaWNlbnNlLU1UXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRFJJVkVSU0xJQ0VOU0VfTkwgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJEcml2ZXJzTGljZW5zZS1OTFwiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERSSVZFUlNMSUNFTlNFX1BMID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiRHJpdmVyc0xpY2Vuc2UtUExcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBEUklWRVJTTElDRU5TRV9QVCA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIkRyaXZlcnNMaWNlbnNlLVBUXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRFJJVkVSU0xJQ0VOU0VfUk8gPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJEcml2ZXJzTGljZW5zZS1ST1wiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERSSVZFUlNMSUNFTlNFX1NFID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiRHJpdmVyc0xpY2Vuc2UtU0VcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBEUklWRVJTTElDRU5TRV9TSSA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIkRyaXZlcnNMaWNlbnNlLVNJXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRFJJVkVSU0xJQ0VOU0VfU0sgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJEcml2ZXJzTGljZW5zZS1TS1wiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERSSVZFUlNMSUNFTlNFX1VTID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiRHJpdmVyc0xpY2Vuc2UtVVNcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBEUlVHRU5GT1JDRU1FTlRBR0VOQ1lOVU1CRVJfVVMgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJEcnVnRW5mb3JjZW1lbnRBZ2VuY3lOdW1iZXItVVNcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBFTEVDVE9SQUxST0xMTlVNQkVSX0dCID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiRWxlY3RvcmFsUm9sbE51bWJlci1HQlwiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEVNQUlMQUREUkVTUyA9IG5ldyBEYXRhSWRlbnRpZmllcihcIkVtYWlsQWRkcmVzc1wiKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBIRUFMVEhJTlNVUkFOQ0VDQVJETlVNQkVSX0VVID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiSGVhbHRoSW5zdXJhbmNlQ2FyZE51bWJlci1FVVwiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEhFQUxUSElOU1VSQU5DRUNMQUlNTlVNQkVSX1VTID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiSGVhbHRoSW5zdXJhbmNlQ2xhaW1OdW1iZXItVVNcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBIRUFMVEhJTlNVUkFOQ0VOVU1CRVJfRlIgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJIZWFsdGhJbnN1cmFuY2VOdW1iZXItRlJcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBIRUFMVEhDQVJFUFJPQ0VEVVJFQ09ERV9VUyA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIkhlYWx0aGNhcmVQcm9jZWR1cmVDb2RlLVVTXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgSU5ESVZJRFVBTFRBWElERU5USUZJQ0FUSU9OTlVNQkVSX1VTID1cbiAgICBuZXcgRGF0YUlkZW50aWZpZXIoXCJJbmRpdmlkdWFsVGF4SWRlbnRpZmljYXRpb25OdW1iZXItVVNcIik7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgSU5TRUVDT0RFX0ZSID0gbmV3IERhdGFJZGVudGlmaWVyKFwiSW5zZWVDb2RlLUZSXCIpO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IElQQUREUkVTUyA9IG5ldyBEYXRhSWRlbnRpZmllcihcIklwQWRkcmVzc1wiKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBMQVRMT05HID0gbmV3IERhdGFJZGVudGlmaWVyKFwiTGF0TG9uZ1wiKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBNRURJQ0FSRUJFTkVGSUNJQVJZTlVNQkVSX1VTID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiTWVkaWNhcmVCZW5lZmljaWFyeU51bWJlci1VU1wiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE5BTUUgPSBuZXcgRGF0YUlkZW50aWZpZXIoXCJOYW1lXCIpO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE5BVElPTkFMRFJVR0NPREVfVVMgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJOYXRpb25hbERydWdDb2RlLVVTXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgTkFUSU9OQUxJREVOVElGSUNBVElPTk5VTUJFUl9ERSA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIk5hdGlvbmFsSWRlbnRpZmljYXRpb25OdW1iZXItREVcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBOQVRJT05BTElERU5USUZJQ0FUSU9OTlVNQkVSX0VTID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiTmF0aW9uYWxJZGVudGlmaWNhdGlvbk51bWJlci1FU1wiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE5BVElPTkFMSURFTlRJRklDQVRJT05OVU1CRVJfSVQgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJOYXRpb25hbElkZW50aWZpY2F0aW9uTnVtYmVyLUlUXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgTkFUSU9OQUxJTlNVUkFOQ0VOVU1CRVJfR0IgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJOYXRpb25hbEluc3VyYW5jZU51bWJlci1HQlwiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE5BVElPTkFMUFJPVklERVJJRF9VUyA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIk5hdGlvbmFsUHJvdmlkZXJJZC1VU1wiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE5IU05VTUJFUl9HQiA9IG5ldyBEYXRhSWRlbnRpZmllcihcIk5oc051bWJlci1HQlwiKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBOSUVOVU1CRVJfRVMgPSBuZXcgRGF0YUlkZW50aWZpZXIoXCJOaWVOdW1iZXItRVNcIik7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgTklGTlVNQkVSX0VTID0gbmV3IERhdGFJZGVudGlmaWVyKFwiTmlmTnVtYmVyLUVTXCIpO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE9QRU5TU0hQUklWQVRFS0VZID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiT3BlblNzaFByaXZhdGVLZXlcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBQQVNTUE9SVE5VTUJFUl9DQSA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIlBhc3Nwb3J0TnVtYmVyLUNBXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgUEFTU1BPUlROVU1CRVJfREUgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJQYXNzcG9ydE51bWJlci1ERVwiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFBBU1NQT1JUTlVNQkVSX0VTID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiUGFzc3BvcnROdW1iZXItRVNcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBQQVNTUE9SVE5VTUJFUl9GUiA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIlBhc3Nwb3J0TnVtYmVyLUZSXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgUEFTU1BPUlROVU1CRVJfR0IgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJQYXNzcG9ydE51bWJlci1HQlwiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFBBU1NQT1JUTlVNQkVSX0lUID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiUGFzc3BvcnROdW1iZXItSVRcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBQQVNTUE9SVE5VTUJFUl9VUyA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIlBhc3Nwb3J0TnVtYmVyLVVTXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgUEVSTUFORU5UUkVTSURFTkNFTlVNQkVSX0NBID0gbmV3IERhdGFJZGVudGlmaWVyKFxuICAgIFwiUGVybWFuZW50UmVzaWRlbmNlTnVtYmVyLUNBXCIsXG4gICk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgUEVSU09OQUxIRUFMVEhOVU1CRVJfQ0EgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJQZXJzb25hbEhlYWx0aE51bWJlci1DQVwiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFBHUFBSSVZBVEVLRVkgPSBuZXcgRGF0YUlkZW50aWZpZXIoXCJQZ3BQcml2YXRlS2V5XCIpO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFBIT05FTlVNQkVSX0JSID0gbmV3IERhdGFJZGVudGlmaWVyKFwiUGhvbmVOdW1iZXItQlJcIik7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgUEhPTkVOVU1CRVJfREUgPSBuZXcgRGF0YUlkZW50aWZpZXIoXCJQaG9uZU51bWJlci1ERVwiKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBQSE9ORU5VTUJFUl9FUyA9IG5ldyBEYXRhSWRlbnRpZmllcihcIlBob25lTnVtYmVyLUVTXCIpO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFBIT05FTlVNQkVSX0ZSID0gbmV3IERhdGFJZGVudGlmaWVyKFwiUGhvbmVOdW1iZXItRlJcIik7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgUEhPTkVOVU1CRVJfR0IgPSBuZXcgRGF0YUlkZW50aWZpZXIoXCJQaG9uZU51bWJlci1HQlwiKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBQSE9ORU5VTUJFUl9JVCA9IG5ldyBEYXRhSWRlbnRpZmllcihcIlBob25lTnVtYmVyLUlUXCIpO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFBIT05FTlVNQkVSX1VTID0gbmV3IERhdGFJZGVudGlmaWVyKFwiUGhvbmVOdW1iZXItVVNcIik7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgUEtDU1BSSVZBVEVLRVkgPSBuZXcgRGF0YUlkZW50aWZpZXIoXCJQa2NzUHJpdmF0ZUtleVwiKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBQT1NUQUxDT0RFX0NBID0gbmV3IERhdGFJZGVudGlmaWVyKFwiUG9zdGFsQ29kZS1DQVwiKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBQVVRUWVBSSVZBVEVLRVkgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJQdXR0eVByaXZhdGVLZXlcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBSR05VTUJFUl9CUiA9IG5ldyBEYXRhSWRlbnRpZmllcihcIlJnTnVtYmVyLUJSXCIpO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFNPQ0lBTElOU1VSQU5DRU5VTUJFUl9DQSA9IG5ldyBEYXRhSWRlbnRpZmllcihcbiAgICBcIlNvY2lhbEluc3VyYW5jZU51bWJlci1DQVwiLFxuICApO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFNTTl9FUyA9IG5ldyBEYXRhSWRlbnRpZmllcihcIlNzbi1FU1wiKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBTU05fVVMgPSBuZXcgRGF0YUlkZW50aWZpZXIoXCJTc24tVVNcIik7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgVEFYSURfREUgPSBuZXcgRGF0YUlkZW50aWZpZXIoXCJUYXhJZC1ERVwiKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBUQVhJRF9FUyA9IG5ldyBEYXRhSWRlbnRpZmllcihcIlRheElkLUVTXCIpO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFRBWElEX0ZSID0gbmV3IERhdGFJZGVudGlmaWVyKFwiVGF4SWQtRlJcIik7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgVEFYSURfR0IgPSBuZXcgRGF0YUlkZW50aWZpZXIoXCJUYXhJZC1HQlwiKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBWRUhJQ0xFSURFTlRJRklDQVRJT05OVU1CRVIgPSBuZXcgRGF0YUlkZW50aWZpZXIoXG4gICAgXCJWZWhpY2xlSWRlbnRpZmljYXRpb25OdW1iZXJcIixcbiAgKTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBaSVBDT0RFX1VTID0gbmV3IERhdGFJZGVudGlmaWVyKFwiWmlwQ29kZS1VU1wiKTtcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbWFuYWdlZCBkYXRhIGlkZW50aWZpZXIgbm90IGluIHRoZSBsaXN0IG9mIHN0YXRpYyBtZW1iZXJzLiBUaGlzIGlzIHVzZWQgdG8gbWFpbnRhaW4gZm9yd2FyZCBjb21wYXRpYmlsaXR5LCBpbiBjYXNlIGEgbmV3IG1hbmFnZWQgaWRlbnRpZmllciBpcyBzdXBwb3J0ZWQgYnV0IG5vdCB1cGRhdGVkIGluIENESyB5ZXQuXG4gICAqIEBwYXJhbSBuYW1lIC0gbmFtZSBvZiB0aGUgaWRlbnRpZmllci5cbiAgICovXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBuYW1lOiBzdHJpbmcpIHt9XG5cbiAgcHVibGljIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMubmFtZTtcbiAgfVxufVxuXG4vKipcbiAqIEEgY3VzdG9tIGRhdGEgaWRlbnRpZmllci4gSW5jbHVkZSBhIGN1c3RvbSBkYXRhIGlkZW50aWZpZXIgbmFtZSBhbmQgcmVndWxhciBleHByZXNzaW9uIGluIHRoZSBKU09OIHBvbGljeSB1c2VkIHRvIGRlZmluZSB0aGUgZGF0YSBwcm90ZWN0aW9uIHBvbGljeS5cbiAqL1xuZXhwb3J0IGNsYXNzIEN1c3RvbURhdGFJZGVudGlmaWVyIGV4dGVuZHMgRGF0YUlkZW50aWZpZXIge1xuICAvKipcbiAgICogQ3JlYXRlIGEgY3VzdG9tIGRhdGEgaWRlbnRpZmllci5cbiAgICogQHBhcmFtIG5hbWUgLSB0aGUgbmFtZSBvZiB0aGUgY3VzdG9tIGRhdGEgaWRlbnRpZmllci4gVGhpcyBjYW5ub3Qgc2hhcmUgdGhlIHNhbWUgbmFtZSBhcyBhIG1hbmFnZWQgZGF0YSBpZGVudGlmaWVyLlxuICAgKiBAcGFyYW0gcmVnZXggLSB0aGUgcmVndWxhciBleHByZXNzaW9uIHRvIGRldGVjdCBhbmQgbWFzayBsb2cgZXZlbnRzIGZvci5cbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSBuYW1lOiBzdHJpbmcsXG4gICAgcHVibGljIHJlYWRvbmx5IHJlZ2V4OiBzdHJpbmcsXG4gICkge1xuICAgIHN1cGVyKG5hbWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFN0cmluZyByZXByZXNlbnRhdGlvbiBvZiBhIEN1c3RvbURhdGFJZGVudGlmaWVyXG4gICAqIEByZXR1cm5zIHRoZSBuYW1lIGFuZCBSZWdFeCBvZiB0aGUgY3VzdG9tIGRhdGEgaWRlbnRpZmllclxuICAgKi9cbiAgcHVibGljIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3RoaXMubmFtZX06ICR7dGhpcy5yZWdleH1gO1xuICB9XG59XG4iXX0=
@@ -38,7 +38,7 @@ class AlarmWidget extends widget_1.ConcreteWidget {
38
38
  }
39
39
  exports.AlarmWidget = AlarmWidget;
40
40
  _a = JSII_RTTI_SYMBOL_1;
41
- AlarmWidget[_a] = { fqn: "terraconstructs.aws.cloudwatch.AlarmWidget", version: "0.0.11" };
41
+ AlarmWidget[_a] = { fqn: "terraconstructs.aws.cloudwatch.AlarmWidget", version: "0.0.12" };
42
42
  /**
43
43
  * Types of view
44
44
  */
@@ -120,7 +120,7 @@ class GaugeWidget extends widget_1.ConcreteWidget {
120
120
  }
121
121
  exports.GaugeWidget = GaugeWidget;
122
122
  _b = JSII_RTTI_SYMBOL_1;
123
- GaugeWidget[_b] = { fqn: "terraconstructs.aws.cloudwatch.GaugeWidget", version: "0.0.11" };
123
+ GaugeWidget[_b] = { fqn: "terraconstructs.aws.cloudwatch.GaugeWidget", version: "0.0.12" };
124
124
  /**
125
125
  * A dashboard widget that displays metrics
126
126
  */
@@ -214,7 +214,7 @@ class GraphWidget extends widget_1.ConcreteWidget {
214
214
  }
215
215
  exports.GraphWidget = GraphWidget;
216
216
  _c = JSII_RTTI_SYMBOL_1;
217
- GraphWidget[_c] = { fqn: "terraconstructs.aws.cloudwatch.GraphWidget", version: "0.0.11" };
217
+ GraphWidget[_c] = { fqn: "terraconstructs.aws.cloudwatch.GraphWidget", version: "0.0.12" };
218
218
  GraphWidget.ISO8601_REGEX = /^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[01]|0[1-9]|[12][0-9])T(2[0-3]|[01][0-9]):([0-5][0-9]):([0-5][0-9])(.[0-9]+)?(Z)?$/;
219
219
  /**
220
220
  * Layout for TableWidget
@@ -302,7 +302,7 @@ class TableThreshold {
302
302
  }
303
303
  exports.TableThreshold = TableThreshold;
304
304
  _d = JSII_RTTI_SYMBOL_1;
305
- TableThreshold[_d] = { fqn: "terraconstructs.aws.cloudwatch.TableThreshold", version: "0.0.11" };
305
+ TableThreshold[_d] = { fqn: "terraconstructs.aws.cloudwatch.TableThreshold", version: "0.0.12" };
306
306
  /**
307
307
  * A dashboard widget that displays metrics
308
308
  */
@@ -374,7 +374,7 @@ class TableWidget extends widget_1.ConcreteWidget {
374
374
  }
375
375
  exports.TableWidget = TableWidget;
376
376
  _e = JSII_RTTI_SYMBOL_1;
377
- TableWidget[_e] = { fqn: "terraconstructs.aws.cloudwatch.TableWidget", version: "0.0.11" };
377
+ TableWidget[_e] = { fqn: "terraconstructs.aws.cloudwatch.TableWidget", version: "0.0.12" };
378
378
  /**
379
379
  * A dashboard widget that displays the most recent value for every metric
380
380
  */
@@ -416,7 +416,7 @@ class SingleValueWidget extends widget_1.ConcreteWidget {
416
416
  }
417
417
  exports.SingleValueWidget = SingleValueWidget;
418
418
  _f = JSII_RTTI_SYMBOL_1;
419
- SingleValueWidget[_f] = { fqn: "terraconstructs.aws.cloudwatch.SingleValueWidget", version: "0.0.11" };
419
+ SingleValueWidget[_f] = { fqn: "terraconstructs.aws.cloudwatch.SingleValueWidget", version: "0.0.12" };
420
420
  /**
421
421
  * A CustomWidget shows the result of a AWS lambda function
422
422
  */
@@ -449,7 +449,7 @@ class CustomWidget extends widget_1.ConcreteWidget {
449
449
  }
450
450
  exports.CustomWidget = CustomWidget;
451
451
  _g = JSII_RTTI_SYMBOL_1;
452
- CustomWidget[_g] = { fqn: "terraconstructs.aws.cloudwatch.CustomWidget", version: "0.0.11" };
452
+ CustomWidget[_g] = { fqn: "terraconstructs.aws.cloudwatch.CustomWidget", version: "0.0.12" };
453
453
  /**
454
454
  * Fill shading options that will be used with a horizontal annotation
455
455
  */
@@ -494,7 +494,7 @@ class Color {
494
494
  }
495
495
  exports.Color = Color;
496
496
  _h = JSII_RTTI_SYMBOL_1;
497
- Color[_h] = { fqn: "terraconstructs.aws.cloudwatch.Color", version: "0.0.11" };
497
+ Color[_h] = { fqn: "terraconstructs.aws.cloudwatch.Color", version: "0.0.12" };
498
498
  /** blue - hex #1f77b4 */
499
499
  Color.BLUE = "#1f77b4";
500
500
  /** brown - hex #8c564b */
@@ -71,7 +71,7 @@ class Row {
71
71
  }
72
72
  exports.Row = Row;
73
73
  _a = JSII_RTTI_SYMBOL_1;
74
- Row[_a] = { fqn: "terraconstructs.aws.cloudwatch.Row", version: "0.0.11" };
74
+ Row[_a] = { fqn: "terraconstructs.aws.cloudwatch.Row", version: "0.0.12" };
75
75
  /**
76
76
  * A widget that contains other widgets in a vertical column
77
77
  *
@@ -115,7 +115,7 @@ class Column {
115
115
  }
116
116
  exports.Column = Column;
117
117
  _b = JSII_RTTI_SYMBOL_1;
118
- Column[_b] = { fqn: "terraconstructs.aws.cloudwatch.Column", version: "0.0.11" };
118
+ Column[_b] = { fqn: "terraconstructs.aws.cloudwatch.Column", version: "0.0.12" };
119
119
  /**
120
120
  * A widget that doesn't display anything but takes up space
121
121
  */
@@ -133,7 +133,7 @@ class Spacer {
133
133
  }
134
134
  exports.Spacer = Spacer;
135
135
  _c = JSII_RTTI_SYMBOL_1;
136
- Spacer[_c] = { fqn: "terraconstructs.aws.cloudwatch.Spacer", version: "0.0.11" };
136
+ Spacer[_c] = { fqn: "terraconstructs.aws.cloudwatch.Spacer", version: "0.0.12" };
137
137
  /**
138
138
  * Return the sum of a list of numbers
139
139
  */
@@ -48,5 +48,5 @@ class KinesisDestination {
48
48
  }
49
49
  exports.KinesisDestination = KinesisDestination;
50
50
  _a = JSII_RTTI_SYMBOL_1;
51
- KinesisDestination[_a] = { fqn: "terraconstructs.aws.cloudwatch.destinations.KinesisDestination", version: "0.0.11" };
51
+ KinesisDestination[_a] = { fqn: "terraconstructs.aws.cloudwatch.destinations.KinesisDestination", version: "0.0.12" };
52
52
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2luZXNpcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hd3MvY2xvdWR3YXRjaC9sb2ctZGVzdGluYXRpb25zL2tpbmVzaXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFJQSxpQ0FBaUM7QUFlakM7O0dBRUc7QUFDSCxNQUFhLGtCQUFrQjtJQUM3Qjs7OztPQUlHO0lBQ0gsWUFDbUIsTUFBdUIsRUFDdkIsUUFBaUMsRUFBRTtRQURuQyxXQUFNLEdBQU4sTUFBTSxDQUFpQjtRQUN2QixVQUFLLEdBQUwsS0FBSyxDQUE4QjtJQUNuRCxDQUFDO0lBRUcsSUFBSSxDQUNULEtBQWdCLEVBQ2hCLGVBQStCO1FBRS9CLHFJQUFxSTtRQUNySSxvRkFBb0Y7UUFDcEYsTUFBTSxFQUFFLEdBQUcsNkJBQTZCLENBQUM7UUFDekMsTUFBTSxJQUFJLEdBQ1IsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJO1lBQ2QsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFlO1lBQzFDLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO2dCQUN0QixTQUFTLEVBQUUsSUFBSSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUM7YUFDMUQsQ0FBQyxDQUFDO1FBQ0wsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV6QixNQUFNLFlBQVksR0FBZ0IsRUFBRSxDQUFDO1FBQ3JDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3ZELElBQUksTUFBTSxFQUFFLENBQUM7WUFDWCxnQ0FBZ0M7WUFDaEMsNkRBQTZEO1lBQzdELCtDQUErQztZQUUvQyxrQkFBa0I7WUFDbEIsNkdBQTZHO1lBQzdHLDZHQUE2RztZQUM3Ryw0R0FBNEc7WUFDNUcsOEdBQThHO1lBQzlHLGdIQUFnSDtZQUVoSCx1REFBdUQ7WUFDdkQsWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM1QixDQUFDO1FBRUQsT0FBTyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUM7SUFDNUQsQ0FBQzs7QUE5Q0gsZ0RBK0NDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvdjIuMTcwLjAvcGFja2FnZXMvYXdzLWNkay1saWIvYXdzLWxvZ3MtZGVzdGluYXRpb25zL2xpYi9raW5lc2lzLnRzXG5cbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgKiBhcyBsb2dzIGZyb20gXCIuLlwiO1xuaW1wb3J0ICogYXMgaWFtIGZyb20gXCIuLi8uLi9pYW1cIjtcbmltcG9ydCAqIGFzIGtpbmVzaXMgZnJvbSBcIi4uLy4uL25vdGlmeVwiO1xuXG4vKipcbiAqIEN1c3RvbWl6ZSB0aGUgS2luZXNpcyBMb2dzIERlc3RpbmF0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgS2luZXNpc0Rlc3RpbmF0aW9uUHJvcHMge1xuICAvKipcbiAgICogVGhlIHJvbGUgdG8gYXNzdW1lIHRvIHdyaXRlIGxvZyBldmVudHMgdG8gdGhlIGRlc3RpbmF0aW9uXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gQSBuZXcgUm9sZSBpcyBjcmVhdGVkXG4gICAqL1xuICByZWFkb25seSByb2xlPzogaWFtLklSb2xlO1xufVxuXG4vKipcbiAqIFVzZSBhIEtpbmVzaXMgc3RyZWFtIGFzIHRoZSBkZXN0aW5hdGlvbiBmb3IgYSBsb2cgc3Vic2NyaXB0aW9uXG4gKi9cbmV4cG9ydCBjbGFzcyBLaW5lc2lzRGVzdGluYXRpb24gaW1wbGVtZW50cyBsb2dzLklMb2dTdWJzY3JpcHRpb25EZXN0aW5hdGlvbiB7XG4gIC8qKlxuICAgKiBAcGFyYW0gc3RyZWFtIFRoZSBLaW5lc2lzIHN0cmVhbSB0byB1c2UgYXMgZGVzdGluYXRpb25cbiAgICogQHBhcmFtIHByb3BzIFRoZSBLaW5lc2lzIERlc3RpbmF0aW9uIHByb3BlcnRpZXNcbiAgICpcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc3RyZWFtOiBraW5lc2lzLklTdHJlYW0sXG4gICAgcHJpdmF0ZSByZWFkb25seSBwcm9wczogS2luZXNpc0Rlc3RpbmF0aW9uUHJvcHMgPSB7fSxcbiAgKSB7fVxuXG4gIHB1YmxpYyBiaW5kKFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgX3NvdXJjZUxvZ0dyb3VwOiBsb2dzLklMb2dHcm91cCxcbiAgKTogbG9ncy5Mb2dTdWJzY3JpcHRpb25EZXN0aW5hdGlvbkNvbmZpZyB7XG4gICAgLy8gRm9sbG93aW5nIGV4YW1wbGUgZnJvbSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQW1hem9uQ2xvdWRXYXRjaC9sYXRlc3QvbG9ncy9TdWJzY3JpcHRpb25GaWx0ZXJzLmh0bWwjRGVzdGluYXRpb25LaW5lc2lzRXhhbXBsZVxuICAgIC8vIENyZWF0ZSBhIHJvbGUgdG8gYmUgYXNzdW1lZCBieSBDV0wgdGhhdCBjYW4gd3JpdGUgdG8gdGhpcyBzdHJlYW0gYW5kIHBhc3MgaXRzZWxmLlxuICAgIGNvbnN0IGlkID0gXCJDbG91ZFdhdGNoTG9nc0NhblB1dFJlY29yZHNcIjtcbiAgICBjb25zdCByb2xlID1cbiAgICAgIHRoaXMucHJvcHMucm9sZSA/P1xuICAgICAgKHNjb3BlLm5vZGUudHJ5RmluZENoaWxkKGlkKSBhcyBpYW0uSVJvbGUpID8/XG4gICAgICBuZXcgaWFtLlJvbGUoc2NvcGUsIGlkLCB7XG4gICAgICAgIGFzc3VtZWRCeTogbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKFwibG9ncy5hbWF6b25hd3MuY29tXCIpLFxuICAgICAgfSk7XG4gICAgdGhpcy5zdHJlYW0uZ3JhbnRXcml0ZShyb2xlKTtcbiAgICByb2xlLmdyYW50UGFzc1JvbGUocm9sZSk7XG5cbiAgICBjb25zdCBkZXBlbmRlbmNpZXM6IENvbnN0cnVjdFtdID0gW107XG4gICAgY29uc3QgcG9saWN5ID0gcm9sZS5ub2RlLnRyeUZpbmRDaGlsZChcIkRlZmF1bHRQb2xpY3lcIik7XG4gICAgaWYgKHBvbGljeSkge1xuICAgICAgLy8gLy8gUmVtb3ZlIGNpcmN1bGFyIGRlcGVuZGVuY3lcbiAgICAgIC8vIGNvbnN0IHRmUm9sZSA9IHJvbGUubm9kZS5kZWZhdWx0Q2hpbGQgYXMgVGVycmFmb3JtRWxlbWVudDtcbiAgICAgIC8vIHRmUm9sZS5hZGRPdmVycmlkZShcImRlcGVuZHNfb25cIiwgdW5kZWZpbmVkKTtcblxuICAgICAgLy8gVW5saWtlIEFXUyBDREs6XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNzAuMC9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3MtbG9ncy1kZXN0aW5hdGlvbnMvbGliL2tpbmVzaXMudHMjTDQ3XG4gICAgICAvLyBXZSBtdXN0IHJldHVybiB0aGUgZGVwZW5kZW5jaWVzLiBmb3IgdGhlIGNhbGxlciB0byBhdHRhY2ggdGhlbSB0byB0aGUgbmVzdGVkIHN1YnNjcmlwdGlvbiBmaWx0ZXIgQ29uc3RydWN0XG4gICAgICAvLyBvbmx5LiBJZiB3ZSBhdHRhY2ggdGhlbSB0aGUgc2NvcGUsIHRoZSBgVGVycmFmb3JtRGVwZW5kZW5jeUFzcGVjdGAgd2lsbCBwcm9wYWdhdGUgdGhlIGRlcGVuZGVuY2llcyB0byBhbGxcbiAgICAgIC8vIG5lc3RlZCBjb25zdHJ1Y3RzIChyb2xlLCBwb2xpY3ksIHN1YnNjcmlwdGlvbkZpbHRlcikgY2F1c2luZyBoYXJkIHRvIGhhbmRsZSBkZXBlbmRlbmN5IGN5Y2xlcyBiZXR3ZWVuIHRoZW0uXG4gICAgICAvLyBTaW1wbHkgbGV0dGluZyB0aGUgY2FsbGVyIGF0dGFjaCB0aGUgZGVwZW5kZW5jeSB0byB0aGUgbmVzdGVkIHN1YnNjcmlwdGlvbiBmaWx0ZXIgZGlyZWN0bHkgc29sdmVzIHRoaXMgY3ljbGUuXG5cbiAgICAgIC8vIEVuc3VyZXMgcG9saWN5IGlzIGNyZWF0ZWQgYmVmb3JlIHN1YnNjcmlwdGlvbiBmaWx0ZXJcbiAgICAgIGRlcGVuZGVuY2llcy5wdXNoKHBvbGljeSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHsgYXJuOiB0aGlzLnN0cmVhbS5zdHJlYW1Bcm4sIHJvbGUsIGRlcGVuZGVuY2llcyB9O1xuICB9XG59XG4iXX0=
@@ -42,5 +42,5 @@ class LambdaDestination {
42
42
  }
43
43
  exports.LambdaDestination = LambdaDestination;
44
44
  _a = JSII_RTTI_SYMBOL_1;
45
- LambdaDestination[_a] = { fqn: "terraconstructs.aws.cloudwatch.destinations.LambdaDestination", version: "0.0.11" };
45
+ LambdaDestination[_a] = { fqn: "terraconstructs.aws.cloudwatch.destinations.LambdaDestination", version: "0.0.12" };
46
46
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFtYmRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2F3cy9jbG91ZHdhdGNoL2xvZy1kZXN0aW5hdGlvbnMvbGFtYmRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBR0EsaUNBQWlDO0FBWWpDOztHQUVHO0FBQ0gsTUFBYSxpQkFBaUI7SUFDNUIsZ0NBQWdDO0lBQ2hDLFlBQ21CLEVBQXFCLEVBQ3JCLFVBQW9DLEVBQUU7UUFEdEMsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFDckIsWUFBTyxHQUFQLE9BQU8sQ0FBK0I7SUFDdEQsQ0FBQztJQUVHLElBQUksQ0FDVCxLQUFnQixFQUNoQixRQUF3QjtRQUV4QixNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsV0FBVyxDQUFDO1FBQ2pDLE1BQU0sWUFBWSxHQUFnQixFQUFFLENBQUM7UUFDckMsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsS0FBSyxLQUFLLEVBQUUsQ0FBQztZQUMxQyxzRUFBc0U7WUFDdEUsMERBQTBEO1lBQzFELE1BQU0sWUFBWSxHQUFHLGlCQUFpQixDQUFDO1lBQ3ZDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFlBQVksRUFBRTtnQkFDbEMsU0FBUyxFQUFFLElBQUksR0FBRyxDQUFDLGdCQUFnQixDQUFDLG9CQUFvQixDQUFDO2dCQUN6RCxTQUFTLEVBQUUsR0FBRztnQkFDZCx1RkFBdUY7Z0JBQ3ZGLG1CQUFtQjtnQkFDbkIsS0FBSzthQUNOLENBQUMsQ0FBQztZQUNILHVGQUF1RjtZQUN2RiwwQ0FBMEM7WUFDMUMsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDM0QsSUFBSSxZQUFZLEVBQUUsQ0FBQztnQkFDakIsV0FBVztnQkFDWCwwQ0FBMEM7Z0JBQzFDLDhDQUE4QztnQkFDOUMsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNsQyxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxXQUFXLEVBQUUsWUFBWSxFQUFFLENBQUM7SUFDcEQsQ0FBQzs7QUFuQ0gsOENBb0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCAqIGFzIGxvZ3MgZnJvbSBcIi4uXCI7XG5pbXBvcnQgKiBhcyBjb21wdXRlIGZyb20gXCIuLi8uLi9jb21wdXRlXCI7XG5pbXBvcnQgKiBhcyBpYW0gZnJvbSBcIi4uLy4uL2lhbVwiO1xuXG4vKipcbiAqIE9wdGlvbnMgdGhhdCBtYXkgYmUgcHJvdmlkZWQgdG8gTGFtYmRhRGVzdGluYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMYW1iZGFEZXN0aW5hdGlvbk9wdGlvbnMge1xuICAvKiogV2hldGhlciBvciBub3QgdG8gYWRkIExhbWJkYSBQZXJtaXNzaW9ucy5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgYWRkUGVybWlzc2lvbnM/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFVzZSBhIExhbWJkYSBGdW5jdGlvbiBhcyB0aGUgZGVzdGluYXRpb24gZm9yIGEgbG9nIHN1YnNjcmlwdGlvblxuICovXG5leHBvcnQgY2xhc3MgTGFtYmRhRGVzdGluYXRpb24gaW1wbGVtZW50cyBsb2dzLklMb2dTdWJzY3JpcHRpb25EZXN0aW5hdGlvbiB7XG4gIC8qKiAgTGFtYmRhRGVzdGluYXRpb25PcHRpb25zICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZm46IGNvbXB1dGUuSUZ1bmN0aW9uLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogTGFtYmRhRGVzdGluYXRpb25PcHRpb25zID0ge30sXG4gICkge31cblxuICBwdWJsaWMgYmluZChcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIGxvZ0dyb3VwOiBsb2dzLklMb2dHcm91cCxcbiAgKTogbG9ncy5Mb2dTdWJzY3JpcHRpb25EZXN0aW5hdGlvbkNvbmZpZyB7XG4gICAgY29uc3QgYXJuID0gbG9nR3JvdXAubG9nR3JvdXBBcm47XG4gICAgY29uc3QgZGVwZW5kZW5jaWVzOiBDb25zdHJ1Y3RbXSA9IFtdO1xuICAgIGlmICh0aGlzLm9wdGlvbnMuYWRkUGVybWlzc2lvbnMgIT09IGZhbHNlKSB7XG4gICAgICAvLyBTYW1lIGJ1ZyBhcHBsaWVzIGhlcmU/IGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9pc3N1ZXMvMjk1MTQ/XG4gICAgICAvLyBUT0RPOiBBZGQgYGxvZ0dyb3VwLm5vZGUuaWRgIGFzIHByZWZpeCB0byBwZXJtaXNzaW9uSWQ/XG4gICAgICBjb25zdCBwZXJtaXNzaW9uSWQgPSBcIkNhbkludm9rZUxhbWJkYVwiO1xuICAgICAgdGhpcy5mbi5hZGRQZXJtaXNzaW9uKHBlcm1pc3Npb25JZCwge1xuICAgICAgICBwcmluY2lwYWw6IG5ldyBpYW0uU2VydmljZVByaW5jaXBhbChcImxvZ3MuYW1hem9uYXdzLmNvbVwiKSxcbiAgICAgICAgc291cmNlQXJuOiBhcm4sXG4gICAgICAgIC8vIFVzaW5nIFN1YlNjcmlwdGlvbiBGaWx0ZXIgYXMgc2NvcGUgaXMgb2theSwgc2luY2UgZXZlcnkgU3Vic2NyaXB0aW9uIEZpbHRlciBoYXMgb25seVxuICAgICAgICAvLyBvbmUgZGVzdGluYXRpb24uXG4gICAgICAgIHNjb3BlLFxuICAgICAgfSk7XG4gICAgICAvLyBOZWVkIHRvIGFkZCBhIGRlcGVuZGVuY3ksIG90aGVyd2lzZSB0aGUgU3Vic2NyaXB0aW9uRmlsdGVyIGNhbiBiZSBjcmVhdGVkIGJlZm9yZSB0aGVcbiAgICAgIC8vIFBlcm1pc3Npb24gdGhhdCBhbGxvd3MgdGhlIGludGVyYWN0aW9uLlxuICAgICAgY29uc3QgdGZQZXJtaXNzaW9uID0gc2NvcGUubm9kZS50cnlGaW5kQ2hpbGQocGVybWlzc2lvbklkKTtcbiAgICAgIGlmICh0ZlBlcm1pc3Npb24pIHtcbiAgICAgICAgLy8gQVdTIENESzpcbiAgICAgICAgLy8gc2NvcGUubm9kZS5hZGREZXBlbmRlbmN5KHRmUGVybWlzc2lvbik7XG4gICAgICAgIC8vIHdlIGxldCB0aGUgY2FsbGVyIGF0dGFjaCB0aGUgZGVwZW5kZW5jeSAuLi5cbiAgICAgICAgZGVwZW5kZW5jaWVzLnB1c2godGZQZXJtaXNzaW9uKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHsgYXJuOiB0aGlzLmZuLmZ1bmN0aW9uQXJuLCBkZXBlbmRlbmNpZXMgfTtcbiAgfVxufVxuIl19
@@ -346,5 +346,5 @@ class LogGroup extends LogGroupBase {
346
346
  }
347
347
  exports.LogGroup = LogGroup;
348
348
  _a = JSII_RTTI_SYMBOL_1;
349
- LogGroup[_a] = { fqn: "terraconstructs.aws.cloudwatch.LogGroup", version: "0.0.11" };
349
+ LogGroup[_a] = { fqn: "terraconstructs.aws.cloudwatch.LogGroup", version: "0.0.12" };
350
350
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLWdyb3VwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F3cy9jbG91ZHdhdGNoL2xvZy1ncm91cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDhGQUE4RjtBQUU5RixzREFBeUQ7QUFDekQsaUNBQTJDO0FBRTNDLGdDQUF3QztBQUN4QyxvREFBdUU7QUFDdkUsNENBQXdDO0FBQ3hDLG9EQUFpRDtBQUVqRCw2Q0FBeUM7QUFDekMscUNBQWlEO0FBQ2pELG1EQUErQztBQUUvQyx1Q0FBMEQ7QUFDMUQscUNBQTBDO0FBQzFDLCtEQUcrQjtBQUUvQiw4QkFBOEI7QUFpSTlCOztHQUVHO0FBQ0gsTUFBZSxZQUFhLFNBQVEsZ0NBQWdCO0lBV2xELElBQVcsZUFBZTtRQUN4QixPQUFPO1lBQ0wsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzdCLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtTQUNoQyxDQUFDO0lBQ0osQ0FBQztJQUNELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDOUIsQ0FBQztJQUlEOzs7OztPQUtHO0lBQ0ksU0FBUyxDQUFDLEVBQVUsRUFBRSxRQUF1QixFQUFFO1FBQ3BELE9BQU8sSUFBSSxzQkFBUyxDQUFDLElBQUksRUFBRSxFQUFFLEVBQUU7WUFDN0IsUUFBUSxFQUFFLElBQUk7WUFDZCxHQUFHLEtBQUs7U0FDVCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxxQkFBcUIsQ0FDMUIsRUFBVSxFQUNWLEtBQWdDO1FBRWhDLE9BQU8sSUFBSSx3Q0FBa0IsQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFFO1lBQ3RDLFFBQVEsRUFBRSxJQUFJO1lBQ2QsR0FBRyxLQUFLO1NBQ1QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksZUFBZSxDQUFDLEVBQVUsRUFBRSxLQUEwQjtRQUMzRCxPQUFPLElBQUksNEJB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Q0FBQztZQUN0QywrQkFBK0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFDM0QsQ0FBQztZQUNELDRDQUE0QztZQUM1QyxtQkFBVyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxVQUFVLENBQzdCLHlFQUF5RSwrQkFBK0IsRUFBRSxDQUMzRyxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxpQ0FBa0IsQ0FBQyxrQkFBa0IsQ0FDdkQsSUFBSSxFQUNKLFVBQVUsRUFDVjtZQUNFLElBQUk7WUFDSixhQUFhO1lBQ2IsZUFBZTtZQUNmLFdBQVc7WUFDWCxRQUFRLEVBQUUsS0FBSyxDQUFDLGFBQWEsRUFBRSxNQUFNO1NBQ3RDLENBQ0YsQ0FBQztRQUVGLHVIQUF1SDtRQUN2SCxnR0FBZ0c7UUFDaEcsSUFBSSxDQUFDLFdBQVcsR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDNUMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztRQUN2QyxJQUFJLEtBQUssQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1lBQy9CLEtBQUssQ0FBQyxvQkFBb0IsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUMsQ0FBQztJQUNILENBQUM7O0FBL0hILDRCQWdJQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9ibG9iL3YyLjE3MC4wL3BhY2thZ2VzL2F3cy1jZGstbGliL2F3cy1sb2dzL2xpYi9sb2ctZ3JvdXAudHNcblxuaW1wb3J0IHsgY2xvdWR3YXRjaExvZ0dyb3VwIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1hd3NcIjtcbmltcG9ydCB7IEFubm90YXRpb25zLCBUb2tlbiB9IGZyb20gXCJjZGt0ZlwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IEFybiwgQXJuRm9ybWF0IH0gZnJvbSBcIi4uL2FyblwiO1xuaW1wb3J0IHsgQXdzQ29uc3RydWN0QmFzZSwgQXdzQ29uc3RydWN0UHJvcHMgfSBmcm9tIFwiLi4vYXdzLWNvbnN0cnVjdFwiO1xuaW1wb3J0IHsgQXdzU3RhY2sgfSBmcm9tIFwiLi4vYXdzLXN0YWNrXCI7XG5pbXBvcnQgeyBSZXRlbnRpb25EYXlzIH0gZnJvbSBcIi4uL2xvZy1yZXRlbnRpb25cIjtcbmltcG9ydCB7IERhdGFQcm90ZWN0aW9uUG9saWN5IH0gZnJvbSBcIi4vZGF0YS1wcm90ZWN0aW9uLXBvbGljeVwiO1xuaW1wb3J0IHsgTG9nU3RyZWFtIH0gZnJvbSBcIi4vbG9nLXN0cmVhbVwiO1xuaW1wb3J0IHsgTWV0cmljLCBNZXRyaWNPcHRpb25zIH0gZnJvbSBcIi4vbWV0cmljXCI7XG5pbXBvcnQgeyBNZXRyaWNGaWx0ZXIgfSBmcm9tIFwiLi9tZXRyaWMtZmlsdGVyXCI7XG5pbXBvcnQgeyBVbml0IH0gZnJvbSBcIi4vbWV0cmljLXR5cGVzXCI7XG5pbXBvcnQgeyBGaWx0ZXJQYXR0ZXJuLCBJRmlsdGVyUGF0dGVybiB9IGZyb20gXCIuL3BhdHRlcm5cIjtcbmltcG9ydCB7IFJlc291cmNlUG9saWN5IH0gZnJvbSBcIi4vcG9saWN5XCI7XG5pbXBvcnQge1xuICBJTG9nU3Vic2NyaXB0aW9uRGVzdGluYXRpb24sXG4gIFN1YnNjcmlwdGlvbkZpbHRlcixcbn0gZnJvbSBcIi4vc3Vic2NyaXB0aW9uLWZpbHRlclwiO1xuaW1wb3J0ICogYXMga21zIGZyb20gXCIuLi9lbmNyeXB0aW9uXCI7XG5pbXBvcnQgKiBhcyBpYW0gZnJvbSBcIi4uL2lhbVwiO1xuXG4vKipcbiAqIE91dHB1dHMgd2hpY2ggbWF5IGJlIHJlZ2lzdGVyZWQgZm9yIG91dHB1dCB2aWEgdGhlIEdyaWQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9nR3JvdXBPdXRwdXRzIHtcbiAgLyoqXG4gICAqIFRoZSBhcm4gb2YgdGhpcyBsb2cgZ3JvdXBcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgbG9nR3JvdXBBcm46IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoaXMgbG9nIGdyb3VwXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGxvZ0dyb3VwTmFtZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElMb2dHcm91cCBleHRlbmRzIGlhbS5JQXdzQ29uc3RydWN0V2l0aFBvbGljeSB7XG4gIC8qKiBTdHJvbmdseSB0eXBlZCBvdXRwdXRzICovXG4gIHJlYWRvbmx5IGxvZ0dyb3VwT3V0cHV0czogTG9nR3JvdXBPdXRwdXRzO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoaXMgbG9nIGdyb3VwLCB3aXRoICc6KicgYXBwZW5kZWRcbiAgICpcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgbG9nR3JvdXBBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhpcyBsb2cgZ3JvdXBcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgbG9nR3JvdXBOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBMb2cgU3RyZWFtIGZvciB0aGlzIExvZyBHcm91cFxuICAgKlxuICAgKiBAcGFyYW0gaWQgVW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBjb25zdHJ1Y3QgaW4gaXRzIHBhcmVudFxuICAgKiBAcGFyYW0gcHJvcHMgUHJvcGVydGllcyBmb3IgY3JlYXRpbmcgdGhlIExvZ1N0cmVhbVxuICAgKi9cbiAgYWRkU3RyZWFtKGlkOiBzdHJpbmcsIHByb3BzPzogU3RyZWFtT3B0aW9ucyk6IExvZ1N0cmVhbTtcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IFN1YnNjcmlwdGlvbiBGaWx0ZXIgb24gdGhpcyBMb2cgR3JvdXBcbiAgICpcbiAgICogQHBhcmFtIGlkIFVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgY29uc3RydWN0IGluIGl0cyBwYXJlbnRcbiAgICogQHBhcmFtIHByb3BzIFByb3BlcnRpZXMgZm9yIGNyZWF0aW5nIHRoZSBTdWJzY3JpcHRpb25GaWx0ZXJcbiAgICovXG4gIGFkZFN1YnNjcmlwdGlvbkZpbHRlcihcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBTdWJzY3JpcHRpb25GaWx0ZXJPcHRpb25zLFxuICApOiBTdWJzY3JpcHRpb25GaWx0ZXI7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBNZXRyaWMgRmlsdGVyIG9uIHRoaXMgTG9nIEdyb3VwXG4gICAqXG4gICAqIEBwYXJhbSBpZCBVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIGNvbnN0cnVjdCBpbiBpdHMgcGFyZW50XG4gICAqIEBwYXJhbSBwcm9wcyBQcm9wZXJ0aWVzIGZvciBjcmVhdGluZyB0aGUgTWV0cmljRmlsdGVyXG4gICAqL1xuICBhZGRNZXRyaWNGaWx0ZXIoaWQ6IHN0cmluZywgcHJvcHM6IE1ldHJpY0ZpbHRlck9wdGlvbnMpOiBNZXRyaWNGaWx0ZXI7XG5cbiAgLyoqXG4gICAqIEV4dHJhY3QgYSBtZXRyaWMgZnJvbSBzdHJ1Y3R1cmVkIGxvZyBldmVudHMgaW4gdGhlIExvZ0dyb3VwXG4gICAqXG4gICAqIENyZWF0ZXMgYSBNZXRyaWNGaWx0ZXIgb24gdGhpcyBMb2dHcm91cCB0aGF0IHdpbGwgZXh0cmFjdCB0aGUgdmFsdWVcbiAgICogb2YgdGhlIGluZGljYXRlZCBKU09OIGZpZWxkIGluIGFsbCByZWNvcmRzIHdoZXJlIGl0IG9jY3Vycy5cbiAgICpcbiAgICogVGhlIG1ldHJpYyB3aWxsIGJlIGF2YWlsYWJsZSBpbiBDbG91ZFdhdGNoIE1ldHJpY3MgdW5kZXIgdGhlXG4gICAqIGluZGljYXRlZCBuYW1lc3BhY2UgYW5kIG5hbWUuXG4gICAqXG4gICAqIEBwYXJhbSBqc29uRmllbGQgSlNPTiBmaWVsZCB0byBleHRyYWN0IChleGFtcGxlOiAnJC5teWZpZWxkJylcbiAgICogQHBhcmFtIG1ldHJpY05hbWVzcGFjZSBOYW1lc3BhY2UgdG8gZW1pdCB0aGUgbWV0cmljIHVuZGVyXG4gICAqIEBwYXJhbSBtZXRyaWNOYW1lIE5hbWUgdG8gZW1pdCB0aGUgbWV0cmljIHVuZGVyXG4gICAqIEByZXR1cm5zIEEgTWV0cmljIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIGV4dHJhY3RlZCBtZXRyaWNcbiAgICovXG4gIGV4dHJhY3RNZXRyaWMoXG4gICAganNvbkZpZWxkOiBzdHJpbmcsXG4gICAgbWV0cmljTmFtZXNwYWNlOiBzdHJpbmcsXG4gICAgbWV0cmljTmFtZTogc3RyaW5nLFxuICApOiBNZXRyaWM7XG5cbiAgLyoqXG4gICAqIEdpdmUgcGVybWlzc2lvbnMgdG8gd3JpdGUgdG8gY3JlYXRlIGFuZCB3cml0ZSB0byBzdHJlYW1zIGluIHRoaXMgbG9nIGdyb3VwXG4gICAqL1xuICBncmFudFdyaXRlKGdyYW50ZWU6IGlhbS5JR3JhbnRhYmxlKTogaWFtLkdyYW50O1xuXG4gIC8qKlxuICAgKiBHaXZlIHBlcm1pc3Npb25zIHRvIHJlYWQgZnJvbSB0aGlzIGxvZyBncm91cCBhbmQgc3RyZWFtc1xuICAgKi9cbiAgZ3JhbnRSZWFkKGdyYW50ZWU6IGlhbS5JR3JhbnRhYmxlKTogaWFtLkdyYW50O1xuXG4gIC8qKlxuICAgKiBHaXZlIHRoZSBpbmRpY2F0ZWQgcGVybWlzc2lvbnMgb24gdGhpcyBsb2cgZ3JvdXAgYW5kIGFsbCBzdHJlYW1zXG4gICAqL1xuICBncmFudChncmFudGVlOiBpYW0uSUdyYW50YWJsZSwgLi4uYWN0aW9uczogc3RyaW5nW10pOiBpYW0uR3JhbnQ7XG5cbiAgLyoqXG4gICAqIFB1YmxpYyBtZXRob2QgdG8gZ2V0IHRoZSBwaHlzaWNhbCBuYW1lIG9mIHRoaXMgbG9nIGdyb3VwXG4gICAqL1xuICBsb2dHcm91cFBoeXNpY2FsTmFtZSgpOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFJldHVybiB0aGUgZ2l2ZW4gbmFtZWQgbWV0cmljIGZvciB0aGlzIExvZyBHcm91cFxuICAgKlxuICAgKiBAcGFyYW0gbWV0cmljTmFtZSBUaGUgbmFtZSBvZiB0aGUgbWV0cmljXG4gICAqIEBwYXJhbSBwcm9wcyBQcm9wZXJ0aWVzIGZvciB0aGUgbWV0cmljXG4gICAqL1xuICBtZXRyaWMobWV0cmljTmFtZTogc3RyaW5nLCBwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWM7XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgbG9nIGV2ZW50cyB1cGxvYWRlZCB0byBDbG91ZFdhdGNoIExvZ3MuXG4gICAqIFdoZW4gdXNlZCB3aXRoIHRoZSBMb2dHcm91cE5hbWUgZGltZW5zaW9uLCB0aGlzIGlzIHRoZSBudW1iZXIgb2ZcbiAgICogbG9nIGV2ZW50cyB1cGxvYWRlZCB0byB0aGUgbG9nIGdyb3VwLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvcHMgUHJvcGVydGllcyBmb3IgdGhlIENsb3Vkd2F0Y2ggbWV0cmljXG4gICAqL1xuICBtZXRyaWNJbmNvbWluZ0xvZ0V2ZW50cyhwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWM7XG5cbiAgLyoqXG4gICAqIFRoZSB2b2x1bWUgb2YgbG9nIGV2ZW50cyBpbiB1bmNvbXByZXNzZWQgYnl0ZXMgdXBsb2FkZWQgdG8gQ2xvdWRXYXRjaCBMb2dzLlxuICAgKiBXaGVuIHVzZWQgd2l0aCB0aGUgTG9nR3JvdXBOYW1lIGRpbWVuc2lvbiwgdGhpcyBpcyB0aGUgdm9sdW1lIG9mIGxvZyBldmVudHNcbiAgICogaW4gdW5jb21wcmVzc2VkIGJ5dGVzIHVwbG9hZGVkIHRvIHRoZSBsb2cgZ3JvdXAuXG4gICAqXG4gICAqIEBwYXJhbSBwcm9wcyBQcm9wZXJ0aWVzIGZvciB0aGUgQ2xvdWR3YXRjaCBtZXRyaWNcbiAgICovXG4gIG1ldHJpY0luY29taW5nQnl0ZXMocHJvcHM/OiBNZXRyaWNPcHRpb25zKTogTWV0cmljO1xufVxuXG4vKipcbiAqIEFuIENsb3VkV2F0Y2ggTG9nIEdyb3VwXG4gKi9cbmFic3RyYWN0IGNsYXNzIExvZ0dyb3VwQmFzZSBleHRlbmRzIEF3c0NvbnN0cnVjdEJhc2UgaW1wbGVtZW50cyBJTG9nR3JvdXAge1xuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGlzIGxvZyBncm91cCwgd2l0aCAnOionIGFwcGVuZGVkXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgbG9nR3JvdXBBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhpcyBsb2cgZ3JvdXBcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBsb2dHcm91cE5hbWU6IHN0cmluZztcblxuICBwdWJsaWMgZ2V0IGxvZ0dyb3VwT3V0cHV0cygpOiBMb2dHcm91cE91dHB1dHMge1xuICAgIHJldHVybiB7XG4gICAgICBsb2dHcm91cEFybjogdGhpcy5sb2dHcm91cEFybixcbiAgICAgIGxvZ0dyb3VwTmFtZTogdGhpcy5sb2dHcm91cE5hbWUsXG4gICAgfTtcbiAgfVxuICBwdWJsaWMgZ2V0IG91dHB1dHMoKTogUmVjb3JkPHN0cmluZywgYW55PiB7XG4gICAgcmV0dXJuIHRoaXMubG9nR3JvdXBPdXRwdXRzO1xuICB9XG5cbiAgcHJpdmF0ZSBwb2xpY3k/OiBSZXNvdXJjZVBvbGljeTtcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IExvZyBTdHJlYW0gZm9yIHRoaXMgTG9nIEdyb3VwXG4gICAqXG4gICAqIEBwYXJhbSBpZCBVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIGNvbnN0cnVjdCBpbiBpdHMgcGFyZW50XG4gICAqIEBwYXJhbSBwcm9wcyBQcm9wZXJ0aWVzIGZvciBjcmVhdGluZyB0aGUgTG9nU3RyZWFtXG4gICAqL1xuICBwdWJsaWMgYWRkU3RyZWFtKGlkOiBzdHJpbmcsIHByb3BzOiBTdHJlYW1PcHRpb25zID0ge30pOiBMb2dTdHJlYW0ge1xuICAgIHJldHVybiBuZXcgTG9nU3RyZWFtKHRoaXMsIGlkLCB7XG4gICAgICBsb2dHcm91cDogdGhpcyxcbiAgICAgIC4uLnByb3BzLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBTdWJzY3JpcHRpb24gRmlsdGVyIG9uIHRoaXMgTG9nIEdyb3VwXG4gICAqXG4gICAqIEBwYXJhbSBpZCBVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIGNvbnN0cnVjdCBpbiBpdHMgcGFyZW50XG4gICAqIEBwYXJhbSBwcm9wcyBQcm9wZXJ0aWVzIGZvciBjcmVhdGluZyB0aGUgU3Vic2NyaXB0aW9uRmlsdGVyXG4gICAqL1xuICBwdWJsaWMgYWRkU3Vic2NyaXB0aW9uRmlsdGVyKFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IFN1YnNjcmlwdGlvbkZpbHRlck9wdGlvbnMsXG4gICk6IFN1YnNjcmlwdGlvbkZpbHRlciB7XG4gICAgcmV0dXJuIG5ldyBTdWJzY3JpcHRpb25GaWx0ZXIodGhpcywgaWQsIHtcbiAgICAgIGxvZ0dyb3VwOiB0aGlzLFxuICAgICAgLi4ucHJvcHMsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IE1ldHJpYyBGaWx0ZXIgb24gdGhpcyBMb2cgR3JvdXBcbiAgICpcbiAgICogQHBhcmFtIGlkIFVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgY29uc3RydWN0IGluIGl0cyBwYXJlbnRcbiAgICogQHBhcmFtIHByb3BzIFByb3BlcnRpZXMgZm9yIGNyZWF0aW5nIHRoZSBNZXRyaWNGaWx0ZXJcbiAgICovXG4gIHB1YmxpYyBhZGRNZXRyaWNGaWx0ZXIoaWQ6IHN0cmluZywgcHJvcHM6IE1ldHJpY0ZpbHRlck9wdGlvbnMpOiBNZXRyaWNGaWx0ZXIge1xuICAgIHJldHVybiBuZXcgTWV0cmljRmlsdGVyKHRoaXMsIGlkLCB7XG4gICAgICBsb2dHcm91cDogdGhpcyxcbiAgICAgIC4uLnByb3BzLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEV4dHJhY3QgYSBtZXRyaWMgZnJvbSBzdHJ1Y3R1cmVkIGxvZyBldmVudHMgaW4gdGhlIExvZ0dyb3VwXG4gICAqXG4gICAqIENyZWF0ZXMgYSBNZXRyaWNGaWx0ZXIgb24gdGhpcyBMb2dHcm91cCB0aGF0IHdpbGwgZXh0cmFjdCB0aGUgdmFsdWVcbiAgICogb2YgdGhlIGluZGljYXRlZCBKU09OIGZpZWxkIGluIGFsbCByZWNvcmRzIHdoZXJlIGl0IG9jY3Vycy5cbiAgICpcbiAgICogVGhlIG1ldHJpYyB3aWxsIGJlIGF2YWlsYWJsZSBpbiBDbG91ZFdhdGNoIE1ldHJpY3MgdW5kZXIgdGhlXG4gICAqIGluZGljYXRlZCBuYW1lc3BhY2UgYW5kIG5hbWUuXG4gICAqXG4gICAqIEBwYXJhbSBqc29uRmllbGQgSlNPTiBmaWVsZCB0byBleHRyYWN0IChleGFtcGxlOiAnJC5teWZpZWxkJylcbiAgICogQHBhcmFtIG1ldHJpY05hbWVzcGFjZSBOYW1lc3BhY2UgdG8gZW1pdCB0aGUgbWV0cmljIHVuZGVyXG4gICAqIEBwYXJhbSBtZXRyaWNOYW1lIE5hbWUgdG8gZW1pdCB0aGUgbWV0cmljIHVuZGVyXG4gICAqIEByZXR1cm5zIEEgTWV0cmljIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIGV4dHJhY3RlZCBtZXRyaWNcbiAgICovXG4gIHB1YmxpYyBleHRyYWN0TWV0cmljKFxuICAgIGpzb25GaWVsZDogc3RyaW5nLFxuICAgIG1ldHJpY05hbWVzcGFjZTogc3RyaW5nLFxuICAgIG1ldHJpY05hbWU6IHN0cmluZyxcbiAgKSB7XG4gICAgbmV3IE1ldHJpY0ZpbHRlcih0aGlzLCBgJHttZXRyaWNOYW1lc3BhY2V9XyR7bWV0cmljTmFtZX1gLCB7XG4gICAgICBsb2dHcm91cDogdGhpcyxcbiAgICAgIG1ldHJpY05hbWVzcGFjZSxcbiAgICAgIG1ldHJpY05hbWUsXG4gICAgICBmaWx0ZXJQYXR0ZXJuOiBGaWx0ZXJQYXR0ZXJuLmV4aXN0cyhqc29uRmllbGQpLFxuICAgICAgbWV0cmljVmFsdWU6IGpzb25GaWVsZCxcbiAgICB9KTtcblxuICAgIHJldHVybiBuZXcgTWV0cmljKHtcbiAgICAgIG1ldHJpY05hbWUsXG4gICAgICBuYW1lc3BhY2U6IG1ldHJpY05hbWVzcGFjZSxcbiAgICB9KS5hdHRhY2hUbyh0aGlzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHaXZlIHBlcm1pc3Npb25zIHRvIGNyZWF0ZSBhbmQgd3JpdGUgdG8gc3RyZWFtcyBpbiB0aGlzIGxvZyBncm91cFxuICAgKi9cbiAgcHVibGljIGdyYW50V3JpdGUoZ3JhbnRlZTogaWFtLklHcmFudGFibGUpIHtcbiAgICByZXR1cm4gdGhpcy5ncmFudChncmFudGVlLCBcImxvZ3M6Q3JlYXRlTG9nU3RyZWFtXCIsIFwibG9nczpQdXRMb2dFdmVudHNcIik7XG4gIH1cblxuICAvKipcbiAgICogR2l2ZSBwZXJtaXNzaW9ucyB0byByZWFkIGFuZCBmaWx0ZXIgZXZlbnRzIGZyb20gdGhpcyBsb2cgZ3JvdXBcbiAgICovXG4gIHB1YmxpYyBncmFudFJlYWQoZ3JhbnRlZTogaWFtLklHcmFudGFibGUpIHtcbiAgICByZXR1cm4gdGhpcy5ncmFudChcbiAgICAgIGdyYW50ZWUsXG4gICAgICBcImxvZ3M6RmlsdGVyTG9nRXZlbnRzXCIsXG4gICAgICBcImxvZ3M6R2V0TG9nRXZlbnRzXCIsXG4gICAgICBcImxvZ3M6R2V0TG9nR3JvdXBGaWVsZHNcIixcbiAgICAgIFwibG9nczpEZXNjcmliZUxvZ0dyb3Vwc1wiLFxuICAgICAgXCJsb2dzOkRlc2NyaWJlTG9nU3RyZWFtc1wiLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogR2l2ZSB0aGUgaW5kaWNhdGVkIHBlcm1pc3Npb25zIG9uIHRoaXMgbG9nIGdyb3VwIGFuZCBhbGwgc3RyZWFtc1xuICAgKi9cbiAgcHVibGljIGdyYW50KGdyYW50ZWU6IGlhbS5JR3JhbnRhYmxlLCAuLi5hY3Rpb25zOiBzdHJpbmdbXSkge1xuICAgIHJldHVybiBpYW0uR3JhbnQuYWRkVG9QcmluY2lwYWxPclJlc291cmNlKHtcbiAgICAgIGdyYW50ZWUsXG4gICAgICBhY3Rpb25zLFxuICAgICAgLy8gQSBMb2dHcm91cCBBUk4gb3V0IG9mIENsb3VkRm9ybWF0aW9uIGFscmVhZHkgaW5jbHVkZXMgYSAnOionIGF0IHRoZSBlbmQgdG8gaW5jbHVkZSB0aGUgbG9nIHN0cmVhbXMgdW5kZXIgdGhlIGdyb3VwLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BV1NDbG91ZEZvcm1hdGlvbi9sYXRlc3QvVXNlckd1aWRlL2F3cy1yZXNvdXJjZS1sb2dzLWxvZ2dyb3VwLmh0bWwjdzJhYjFjMjFjMTBjNjNjNDNjMTFcbiAgICAgIHJlc291cmNlQXJuczogW3RoaXMubG9nR3JvdXBBcm5dLFxuICAgICAgcmVzb3VyY2U6IHRoaXMsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogUHVibGljIG1ldGhvZCB0byBnZXQgdGhlIHBoeXNpY2FsIG5hbWUgb2YgdGhpcyBsb2cgZ3JvdXBcbiAgICogQHJldHVybnMgUGh5c2ljYWwgbmFtZSBvZiBsb2cgZ3JvdXBcbiAgICovXG4gIHB1YmxpYyBsb2dHcm91cFBoeXNpY2FsTmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmxvZ0dyb3VwTmFtZTtcbiAgfVxuICAvKipcbiAgICogQWRkcyBhIHN0YXRlbWVudCB0byB0aGUgcmVzb3VyY2UgcG9saWN5IGFzc29jaWF0ZWQgd2l0aCB0aGlzIGxvZyBncm91cC5cbiAgICogQSByZXNvdXJjZSBwb2xpY3kgd2lsbCBiZSBhdXRvbWF0aWNhbGx5IGNyZWF0ZWQgdXBvbiB0aGUgZmlyc3QgY2FsbCB0byBgYWRkVG9SZXNvdXJjZVBvbGljeWAuXG4gICAqXG4gICAqIEFueSBBUk4gUHJpbmNpcGFscyBpbnNpZGUgb2YgdGhlIHN0YXRlbWVudCB3aWxsIGJlIGNvbnZlcnRlZCBpbnRvIEFXUyBBY2NvdW50IElEIHN0cmluZ3NcbiAgICogYmVjYXVzZSBDbG91ZFdhdGNoIExvZ3MgUmVzb3VyY2UgUG9saWNpZXMgZG8gbm90IGFjY2VwdCBBUk4gcHJpbmNpcGFscy5cbiAgICpcbiAgICogQHBhcmFtIHN0YXRlbWVudCBUaGUgcG9saWN5IHN0YXRlbWVudCB0byBhZGRcbiAgICovXG4gIHB1YmxpYyBhZGRUb1Jlc291cmNlUG9saWN5KFxuICAgIHN0YXRlbWVudDogaWFtLlBvbGljeVN0YXRlbWVudCxcbiAgKTogaWFtLkFkZFRvUmVzb3VyY2VQb2xpY3lSZXN1bHQge1xuICAgIGlmICghdGhpcy5wb2xpY3kpIHtcbiAgICAgIHRoaXMucG9saWN5ID0gbmV3IFJlc291cmNlUG9saWN5KHRoaXMsIFwiUG9saWN5XCIpO1xuICAgIH1cbiAgICB0aGlzLnBvbGljeS5kb2N1bWVudC5hZGRTdGF0ZW1lbnRzKFxuICAgICAgc3RhdGVtZW50LmNvcHkoe1xuICAgICAgICBwcmluY2lwYWxzOiBzdGF0ZW1lbnQucHJpbmNpcGFscy5tYXAoKHApID0+XG4gICAgICAgICAgdGhpcy5jb252ZXJ0QXJuUHJpbmNpcGFsVG9BY2NvdW50SWQocCksXG4gICAgICAgICksXG4gICAgICB9KSxcbiAgICApO1xuICAgIHJldHVybiB7IHN0YXRlbWVudEFkZGVkOiB0cnVlLCBwb2xpY3lEZXBlbmRhYmxlOiB0aGlzLnBvbGljeSB9O1xuICB9XG5cbiAgcHJpdmF0ZSBjb252ZXJ0QXJuUHJpbmNpcGFsVG9BY2NvdW50SWQocHJpbmNpcGFsOiBpYW0uSVByaW5jaXBhbCkge1xuICAgIGlmIChwcmluY2lwYWwucHJpbmNpcGFsQWNjb3VudCkge1xuICAgICAgLy8gd2UgdXNlIEFyblByaW5jaXBhbCBoZXJlIGJlY2F1c2UgdGhlIGNvbnN0cnVjdG9yIGluc2VydHMgdGhlIGFyZ3VtZW50XG4gICAgICAvLyBpbnRvIHRoZSB0ZW1wbGF0ZSB3aXRob3V0IG11dGF0aW5nIGl0LCB3aGljaCBtZWFucyB0aGF0IHRoZXJlIGlzIG5vXG4gICAgICAvLyBBUk4gY3JlYXRlZCBieSB0aGlzIGNhbGwuXG4gICAgICByZXR1cm4gbmV3IGlhbS5Bcm5QcmluY2lwYWwocHJpbmNpcGFsLnByaW5jaXBhbEFjY291bnQpO1xuICAgIH1cblxuICAgIGlmIChwcmluY2lwYWwgaW5zdGFuY2VvZiBpYW0uQXJuUHJpbmNpcGFsICYmIHByaW5jaXBhbC5hcm4gIT09IFwiKlwiKSB7XG4gICAgICBjb25zdCBwYXJzZWRBcm4gPSBBcm4uc3BsaXQocHJpbmNpcGFsLmFybiwgQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUpO1xuICAgICAgaWYgKHBhcnNlZEFybi5hY2NvdW50KSB7XG4gICAgICAgIHJldHVybiBuZXcgaWFtLkFyblByaW5jaXBhbChwYXJzZWRBcm4uYWNjb3VudCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHByaW5jaXBhbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgQ2xvdWRXYXRjaCBtZXRyaWMgZm9yIHRoZSBudW1iZXIgb2YgaW5jb21pbmcgbG9nIGV2ZW50cyB0byB0aGlzIGxvZyBncm91cC5cbiAgICpcbiAgICogQHBhcmFtIHByb3BzIC0gT3B0aW9uYWwuIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIG1ldHJpYy5cbiAgICogQHJldHVybnMgQSBDbG91ZFdhdGNoIE1ldHJpYyBvYmplY3QgcmVwcmVzZW50aW5nIHRoZSBJbmNvbWluZ0xvZ0V2ZW50cyBtZXRyaWMuXG4gICAqXG4gICAqIFRoaXMgbWV0aG9kIGFsbG93cyB5b3UgdG8gbW9uaXRvciB0aGUgcmF0ZSBhdCB3aGljaCBsb2cgZXZlbnRzIGFyZSBiZWluZyBpbmdlc3RlZFxuICAgKiBpbnRvIHRoZSBsb2cgZ3JvdXAuIEl0J3MgdXNlZnVsIGZvciB1bmRlcnN0YW5kaW5nIHRoZSB2b2x1bWUgb2YgbG9nZ2luZyBhY3Rpdml0eVxuICAgKiBhbmQgY2FuIGhlbHAgaW4gY2FwYWNpdHkgcGxhbm5pbmcgb3IgZGV0ZWN0aW5nIHVudXN1YWwgc3Bpa2VzIGluIGxvZ2dpbmcuXG4gICAqXG4gICAqIEV4YW1wbGUgdXNhZ2U6XG4gICAqIGBgYFxuICAgKiBjb25zdCBsb2dHcm91cCA9IG5ldyBsb2dzLkxvZ0dyb3VwKHRoaXMsICdNeUxvZ0dyb3VwJyk7XG4gICAqIGxvZ0dyb3VwLm1ldHJpY0luY29taW5nTG9nRXZlbnRzKCkuY3JlYXRlQWxhcm0oc3RhY2ssICdJbmNvbWluZ0V2ZW50c1Blckluc3RhbmNlQWxhcm0nLCB7XG4gICAqIHRocmVzaG9sZDogMSxcbiAgICogZXZhbHVhdGlvblBlcmlvZHM6IDEsXG4gICAqIH0pO1xuICAgKiBgYGBcbiAgICovXG4gIHB1YmxpYyBtZXRyaWNJbmNvbWluZ0xvZ0V2ZW50cyhwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWMge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYyhcIkluY29taW5nTG9nc1wiLCBwcm9wcyk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIENsb3VkV2F0Y2ggbWV0cmljIGZvciB0aGUgdm9sdW1lIG9mIGluY29taW5nIGxvZyBkYXRhIGluIGJ5dGVzIHRvIHRoaXMgbG9nIGdyb3VwLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvcHMgLSBPcHRpb25hbC4gQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgbWV0cmljLlxuICAgKiBAcmV0dXJucyBBIENsb3VkV2F0Y2ggTWV0cmljIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIEluY29taW5nQnl0ZXMgbWV0cmljLlxuICAgKlxuICAgKiBUaGlzIG1ldGhvZCBhbGxvd3MgeW91IHRvIG1vbml0b3IgdGhlIHZvbHVtZSBvZiBkYXRhIGJlaW5nIGluZ2VzdGVkIGludG8gdGhlIGxvZyBncm91cC5cbiAgICogSXQncyB1c2VmdWwgZm9yIHVuZGVyc3RhbmRpbmcgdGhlIHNpemUgb2YgeW91ciBsb2dzLCB3aGljaCBjYW4gaW1wYWN0IHN0b3JhZ2UgY29zdHNcbiAgICogYW5kIGhlbHAgaW4gaWRlbnRpZnlpbmcgdW5leHBlY3RlZGx5IGxhcmdlIGxvZyBlbnRyaWVzLlxuICAgKlxuICAgKiBFeGFtcGxlIHVzYWdlOlxuICAgKiBgYGBcbiAgICogY29uc3QgbG9nR3JvdXAgPSBuZXcgbG9ncy5Mb2dHcm91cCh0aGlzLCAnTXlMb2dHcm91cCcpO1xuICAgKiBsb2dHcm91cC5tZXRyaWNJbmNvbWluZ0J5dGVzKCkuY3JlYXRlQWxhcm0oc3RhY2ssICdJbmNvbWluZ0J5dGVzUGVySW5zdGFuY2VBbGFybScsIHtcbiAgICogICB0aHJlc2hvbGQ6IDEsXG4gICAqICAgZXZhbHVhdGlvblBlcmlvZHM6IDEsXG4gICAqIH0pO1xuICAgKiBgYGBcbiAgICovXG4gIHB1YmxpYyBtZXRyaWNJbmNvbWluZ0J5dGVzKHByb3BzPzogTWV0cmljT3B0aW9ucyk6IE1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKFwiSW5jb21pbmdCeXRlc1wiLCBwcm9wcyk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIENsb3VkV2F0Y2ggbWV0cmljIGZvciB0aGlzIGxvZyBncm91cC5cbiAgICpcbiAgICogQHBhcmFtIG1ldHJpY05hbWUgLSBUaGUgbmFtZSBvZiB0aGUgbWV0cmljIHRvIGNyZWF0ZS5cbiAgICogQHBhcmFtIHByb3BzIC0gT3B0aW9uYWwuIEFkZGl0aW9uYWwgcHJvcGVydGllcyB0byBjb25maWd1cmUgdGhlIG1ldHJpYy5cbiAgICogQHJldHVybnMgQSBDbG91ZFdhdGNoIE1ldHJpYyBvYmplY3QgcmVwcmVzZW50aW5nIHRoZSBzcGVjaWZpZWQgbWV0cmljIGZvciB0aGlzIGxvZyBncm91cC5cbiAgICpcbiAgICogVGhpcyBtZXRob2QgY3JlYXRlcyBhIENsb3VkV2F0Y2ggTWV0cmljIG9iamVjdCB3aXRoIHByZWRlZmluZWQgc2V0dGluZ3MgZm9yIHRoZSBsb2cgZ3JvdXAuXG4gICAqIEl0IHNldHMgdGhlIG5hbWVzcGFjZSB0byAnQVdTL0xvZ3MnIGFuZCB0aGUgc3RhdGlzdGljIHRvICdTdW0nIGJ5IGRlZmF1bHQuXG4gICAqXG4gICAqIFRoZSBjcmVhdGVkIG1ldHJpYyBpcyBhdXRvbWF0aWNhbGx5IGFzc29jaWF0ZWQgd2l0aCB0aGlzIGxvZyBncm91cCB1c2luZyB0aGUgYGF0dGFjaFRvYCBtZXRob2QuXG4gICAqXG4gICAqIENvbW1vbiBtZXRyaWMgbmFtZXMgZm9yIGxvZyBncm91cHMgaW5jbHVkZTpcbiAgICogLSAnSW5jb21pbmdCeXRlcyc6IFRoZSB2b2x1bWUgb2YgbG9nIGRhdGEgaW4gYnl0ZXMgaW5nZXN0ZWQgaW50byB0aGUgbG9nIGdyb3VwLlxuICAgKiAtICdJbmNvbWluZ0xvZ0V2ZW50cyc6IFRoZSBudW1iZXIgb2YgbG9nIGV2ZW50cyBpbmdlc3RlZCBpbnRvIHRoZSBsb2cgZ3JvdXAuXG4gICAqIGBgYFxuICAgKi9cbiAgcHVibGljIG1ldHJpYyhtZXRyaWNOYW1lOiBzdHJpbmcsIHByb3BzPzogTWV0cmljT3B0aW9ucyk6IE1ldHJpYyB7XG4gICAgcmV0dXJuIG5ldyBNZXRyaWMoe1xuICAgICAgbmFtZXNwYWNlOiBcIkFXUy9Mb2dzXCIsXG4gICAgICBtZXRyaWNOYW1lLFxuICAgICAgc3RhdGlzdGljOiBcIlN1bVwiLFxuICAgICAgLi4ucHJvcHMsXG4gICAgfSkuYXR0YWNoVG8odGhpcyk7XG4gIH1cbn1cblxuLyoqXG4gKiBDbGFzcyBvZiBMb2cgR3JvdXAuXG4gKi9cbmV4cG9ydCBlbnVtIExvZ0dyb3VwQ2xhc3Mge1xuICAvKipcbiAgICogRGVmYXVsdCBjbGFzcyBvZiBsb2dzIHNlcnZpY2VzXG4gICAqL1xuICBTVEFOREFSRCA9IFwiU1RBTkRBUkRcIixcblxuICAvKipcbiAgICogQ2xhc3MgZm9yIHJlZHVjZWQgbG9ncyBzZXJ2aWNlc1xuICAgKi9cbiAgSU5GUkVRVUVOVF9BQ0NFU1MgPSBcIklORlJFUVVFTlRfQUNDRVNTXCIsXG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYSBMb2dHcm91cFxuICovXG5leHBvcnQgaW50ZXJmYWNlIExvZ0dyb3VwUHJvcHMgZXh0ZW5kcyBBd3NDb25zdHJ1Y3RQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgS01TIGN1c3RvbWVyIG1hbmFnZWQga2V5IHRvIGVuY3J5cHQgdGhlIGxvZyBncm91cCB3aXRoLlxuICAgKlxuICAgKiBAZGVmYXVsdCBTZXJ2ZXItc2lkZSBlbmNyeXB0aW9uIG1hbmFnZWQgYnkgdGhlIENsb3VkV2F0Y2ggTG9ncyBzZXJ2aWNlXG4gICAqL1xuICByZWFkb25seSBlbmNyeXB0aW9uS2V5Pzoga21zLklLZXk7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGxvZyBncm91cC5cbiAgICpcbiAgICogQGRlZmF1bHQgQXV0b21hdGljYWxseSBnZW5lcmF0ZWRcbiAgICovXG4gIHJlYWRvbmx5IGxvZ0dyb3VwTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogRGF0YSBQcm90ZWN0aW9uIFBvbGljeSBmb3IgdGhpcyBsb2cgZ3JvdXAuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gZGF0YSBwcm90ZWN0aW9uIHBvbGljeVxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YVByb3RlY3Rpb25Qb2xpY3k/OiBEYXRhUHJvdGVjdGlvblBvbGljeTtcblxuICAvKipcbiAgICogSG93IGxvbmcsIGluIGRheXMsIHRoZSBsb2cgY29udGVudHMgd2lsbCBiZSByZXRhaW5lZC5cbiAgICpcbiAgICogVG8gcmV0YWluIGFsbCBsb2dzLCBzZXQgdGhpcyB2YWx1ZSB0byBSZXRlbnRpb25EYXlzLklORklOSVRFLlxuICAgKlxuICAgKiBAZGVmYXVsdCBSZXRlbnRpb25EYXlzLlRXT19ZRUFSU1xuICAgKi9cbiAgcmVhZG9ubHkgcmV0ZW50aW9uPzogUmV0ZW50aW9uRGF5cztcblxuICAvKipcbiAgICogU2V0IHRvIHRydWUgaWYgeW91IGRvIG5vdCB3aXNoIHRoZSBsb2cgZ3JvdXAgKGFuZCBhbnkgbG9ncyBpdCBtYXkgY29udGFpbikgdG8gYmUgZGVsZXRlZCBhdCBkZXN0cm95IHRpbWUsIGFuZCBpbnN0ZWFkIGp1c3QgcmVtb3ZlIHRoZSBsb2cgZ3JvdXAgZnJvbSB0aGUgVGVycmFmb3JtIHN0YXRlLlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZSAtIHVubGVzcyBgcmV0ZW50aW9uYCBpcyBzZXQgdG8gUmV0ZW50aW9uRGF5cy5JTkZJTklURSwgaW4gd2hpY2ggY2FzZSB0aGlzIGlzIHNldCB0byB0cnVlXG4gICAqL1xuICByZWFkb25seSBza2lwRGVzdHJveT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBjbGFzcyBvZiB0aGUgbG9nIGdyb3VwLiBQb3NzaWJsZSB2YWx1ZXMgYXJlOiBTVEFOREFSRCBhbmQgSU5GUkVRVUVOVF9BQ0NFU1MuXG4gICAqXG4gICAqIElORlJFUVVFTlRfQUNDRVNTIGNsYXNzIHByb3ZpZGVzIGN1c3RvbWVycyBhIGNvc3QtZWZmZWN0aXZlIHdheSB0byBjb25zb2xpZGF0ZVxuICAgKiBsb2dzIHdoaWNoIHN1cHBvcnRzIHF1ZXJ5aW5nIHVzaW5nIExvZ3MgSW5zaWdodHMuIFRoZSBsb2dHcm91cENsYXNzIHByb3BlcnR5IGNhbm5vdFxuICAgKiBiZSBjaGFuZ2VkIG9uY2UgdGhlIGxvZyBncm91cCBpcyBjcmVhdGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBMb2dHcm91cENsYXNzLlNUQU5EQVJEXG4gICAqL1xuICByZWFkb25seSBsb2dHcm91cENsYXNzPzogTG9nR3JvdXBDbGFzcztcbn1cblxuLyoqXG4gKiBUaGUgbWV0aG9kIHVzZWQgdG8gZGlzdHJpYnV0ZSBsb2cgZGF0YSB0byB0aGUgZGVzdGluYXRpb24uXG4gKi9cbmV4cG9ydCBlbnVtIERpc3RyaWJ1dGlvbiB7XG4gIC8qKlxuICAgKiBMb2cgZXZlbnRzIGZyb20gdGhlIHNhbWUgbG9nIHN0cmVhbSBhcmUga2VwdCB0b2dldGhlciBhbmQgc2VudCB0byB0aGUgc2FtZSBkZXN0aW5hdGlvbi5cbiAgICovXG4gIEJZX0xPR19TVFJFQU0gPSBcIkJ5TG9nU3RyZWFtXCIsXG5cbiAgLyoqXG4gICAqIExvZyBldmVudHMgYXJlIGRpc3RyaWJ1dGVkIGFjcm9zcyB0aGUgbG9nIGRlc3RpbmF0aW9ucyByYW5kb21seS5cbiAgICovXG4gIFJBTkRPTSA9IFwiUmFuZG9tXCIsXG59XG5cbi8qKlxuICogRGVmaW5lIGEgQ2xvdWRXYXRjaCBMb2cgR3JvdXBcbiAqL1xuZXhwb3J0IGNsYXNzIExvZ0dyb3VwIGV4dGVuZHMgTG9nR3JvdXBCYXNlIHtcbiAgLyoqXG4gICAqIEltcG9ydCBhbiBleGlzdGluZyBMb2dHcm91cCBnaXZlbiBpdHMgQVJOXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21Mb2dHcm91cEFybihcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgbG9nR3JvdXBBcm46IHN0cmluZyxcbiAgKTogSUxvZ0dyb3VwIHtcbiAgICBjb25zdCBiYXNlTG9nR3JvdXBBcm4gPSBsb2dHcm91cEFybi5yZXBsYWNlKC86XFwqJC8sIFwiXCIpO1xuXG4gICAgY2xhc3MgSW1wb3J0IGV4dGVuZHMgTG9nR3JvdXBCYXNlIHtcbiAgICAgIHB1YmxpYyByZWFkb25seSBsb2dHcm91cEFybiA9IGAke2Jhc2VMb2dHcm91cEFybn06KmA7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgbG9nR3JvdXBOYW1lID0gQXdzU3RhY2sub2ZBd3NDb25zdHJ1Y3Qoc2NvcGUpLnNwbGl0QXJuKFxuICAgICAgICBiYXNlTG9nR3JvdXBBcm4sXG4gICAgICAgIEFybkZvcm1hdC5DT0xPTl9SRVNPVVJDRV9OQU1FLFxuICAgICAgKS5yZXNvdXJjZU5hbWUhO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgSW1wb3J0KHNjb3BlLCBpZCwge1xuICAgICAgZW52aXJvbm1lbnRGcm9tQXJuOiBiYXNlTG9nR3JvdXBBcm4sXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIExvZ0dyb3VwIGdpdmVuIGl0cyBuYW1lXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21Mb2dHcm91cE5hbWUoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIGxvZ0dyb3VwTmFtZTogc3RyaW5nLFxuICApOiBJTG9nR3JvdXAge1xuICAgIGNvbnN0IGJhc2VMb2dHcm91cE5hbWUgPSBsb2dHcm91cE5hbWUucmVwbGFjZSgvOlxcKiQvLCBcIlwiKTtcblxuICAgIGNsYXNzIEltcG9ydCBleHRlbmRzIExvZ0dyb3VwQmFzZSB7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgbG9nR3JvdXBOYW1lID0gYmFzZUxvZ0dyb3VwTmFtZTtcbiAgICAgIHB1YmxpYyByZWFkb25seSBsb2dHcm91cEFybiA9IEF3c1N0YWNrLm9mQXdzQ29uc3RydWN0KHNjb3BlKS5mb3JtYXRBcm4oe1xuICAgICAgICBzZXJ2aWNlOiBcImxvZ3NcIixcbiAgICAgICAgcmVzb3VyY2U6IFwibG9nLWdyb3VwXCIsXG4gICAgICAgIGFybkZvcm1hdDogQXJuRm9ybWF0LkNPTE9OX1JFU09VUkNFX05BTUUsXG4gICAgICAgIHJlc291cmNlTmFtZTogYmFzZUxvZ0dyb3VwTmFtZSArIFwiOipcIixcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgSW1wb3J0KHNjb3BlLCBpZCk7XG4gIH1cblxuICBwdWJsaWMgcmVhZG9ubHkgcmVzb3VyY2U6IGNsb3Vkd2F0Y2hMb2dHcm91cC5DbG91ZHdhdGNoTG9nR3JvdXA7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhpcyBsb2cgZ3JvdXBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBsb2dHcm91cEFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGlzIGxvZyBncm91cFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGxvZ0dyb3VwTmFtZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBMb2dHcm91cFByb3BzID0ge30pIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHByb3BzKTtcbiAgICBjb25zdCBuYW1lID1cbiAgICAgIHByb3BzLmxvZ0dyb3VwTmFtZSB8fFxuICAgICAgdGhpcy5zdGFjay51bmlxdWVSZXNvdXJjZU5hbWUodGhpcywge1xuICAgICAgICBwcmVmaXg6IHRoaXMuZ3JpZFVVSUQsXG4gICAgICB9KTtcblxuICAgIGxldCByZXRlbnRpb25JbkRheXMgPSBwcm9wcy5yZXRlbnRpb247XG4gICAgbGV0IHNraXBEZXN0cm95ID0gcHJvcHMuc2tpcERlc3Ryb3k7XG4gICAgaWYgKHJldGVudGlvbkluRGF5cyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXRlbnRpb25JbkRheXMgPSBSZXRlbnRpb25EYXlzLlRXT19ZRUFSUztcbiAgICB9XG4gICAgaWYgKFxuICAgICAgcmV0ZW50aW9uSW5EYXlzID09PSBJbmZpbml0eSB8fFxuICAgICAgcmV0ZW50aW9uSW5EYXlzID09PSBSZXRlbnRpb25EYXlzLklORklOSVRFXG4gICAgKSB7XG4gICAgICByZXRlbnRpb25JbkRheXMgPSB1bmRlZmluZWQ7XG4gICAgICBza2lwRGVzdHJveSA9IHByb3BzLnNraXBEZXN0cm95ID8/IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgcmV0ZW50aW9uSW5EYXlzICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICFUb2tlbi5pc1VucmVzb2x2ZWQocmV0ZW50aW9uSW5EYXlzKSAmJlxuICAgICAgcmV0ZW50aW9uSW5EYXlzIDw9IDBcbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYHJldGVudGlvbkluRGF5cyBtdXN0IGJlIHBvc2l0aXZlLCBnb3QgJHtyZXRlbnRpb25JbkRheXN9YCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgbGV0IGxvZ0dyb3VwQ2xhc3MgPSBwcm9wcy5sb2dHcm91cENsYXNzO1xuXG4gICAgY29uc3QgbG9nR3JvdXBDbGFzc1Vuc3VwcG9ydGVkUmVnaW9ucyA9IFtcbiAgICAgIFwidXMtaXNvLXdlc3QtMVwiLCAvLyBBUEFcbiAgICAgIFwidXMtaXNvLWVhc3QtMVwiLCAvLyBEQ0FcbiAgICAgIFwidXMtaXNvYi1lYXN0LTFcIiwgLy8gTENLXG4gICAgXTtcbiAgICBpZiAoXG4gICAgICBsb2dHcm91cENsYXNzICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICFUb2tlbi5pc1VucmVzb2x2ZWQodGhpcy5zdGFjay5yZWdpb24pICYmXG4gICAgICBsb2dHcm91cENsYXNzVW5zdXBwb3J0ZWRSZWdpb25zLmluY2x1ZGVzKHRoaXMuc3RhY2sucmVnaW9uKVxuICAgICkge1xuICAgICAgLy8gXCJAYXdzLWNkay9hd3MtbG9nczpwcm9wZXJ0eU5vdFN1cHBvcnRlZFwiLFxuICAgICAgQW5ub3RhdGlvbnMub2YodGhpcykuYWRkV2FybmluZyhcbiAgICAgICAgYFRoZSBMb2dHcm91cENsYXNzIHByb3BlcnR5IGlzIG5vdCBzdXBwb3J0ZWQgaW4gdGhlIGZvbGxvd2luZyByZWdpb25zOiAke2xvZ0dyb3VwQ2xhc3NVbnN1cHBvcnRlZFJlZ2lvbnN9YCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy5yZXNvdXJjZSA9IG5ldyBjbG91ZHdhdGNoTG9nR3JvdXAuQ2xvdWR3YXRjaExvZ0dyb3VwKFxuICAgICAgdGhpcyxcbiAgICAgIFwiUmVzb3VyY2VcIixcbiAgICAgIHtcbiAgICAgICAgbmFtZSxcbiAgICAgICAgbG9nR3JvdXBDbGFzcyxcbiAgICAgICAgcmV0ZW50aW9uSW5EYXlzLFxuICAgICAgICBza2lwRGVzdHJveSxcbiAgICAgICAga21zS2V5SWQ6IHByb3BzLmVuY3J5cHRpb25LZXk/LmtleUFybixcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIC8vIGh0dHBzOi8vcmVnaXN0cnkudGVycmFmb3JtLmlvL3Byb3ZpZGVycy9oYXNoaWNvcnAvYXdzLzUuODIuMS9kb2NzL3Jlc291cmNlcy9jbG91ZHdhdGNoX2xvZ19ncm91cCNhdHRyaWJ1dGUtcmVmZXJlbmNlXG4gICAgLy8gdGVycmFmb3JtLXByb3ZpZGVyLWF3cyBkcm9wcyB0aGUgdHJhaWxpbmcgJzoqJyBmcm9tIHRoZSBBUk4gd2hlbiByZXR1cm5pbmcgaXQgYXMgYW4gYXR0cmlidXRlXG4gICAgdGhpcy5sb2dHcm91cEFybiA9IGAke3RoaXMucmVzb3VyY2UuYXJufToqYDtcbiAgICB0aGlzLmxvZ0dyb3VwTmFtZSA9IHRoaXMucmVzb3VyY2UubmFtZTtcbiAgICBpZiAocHJvcHMuZGF0YVByb3RlY3Rpb25Qb2xpY3kpIHtcbiAgICAgIHByb3BzLmRhdGFQcm90ZWN0aW9uUG9saWN5Py5fYmluZCh0aGlzKTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIG5ldyBMb2dTdHJlYW0gY3JlYXRlZCBmcm9tIGEgTG9nR3JvdXBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdHJlYW1PcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBsb2cgc3RyZWFtIHRvIGNyZWF0ZS5cbiAgICpcbiAgICogVGhlIG5hbWUgbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBsb2cgZ3JvdXAuXG4gICAqXG4gICAqIEBkZWZhdWx0IEF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkXG4gICAqL1xuICByZWFkb25seSBsb2dTdHJlYW1OYW1lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgbmV3IFN1YnNjcmlwdGlvbkZpbHRlciBjcmVhdGVkIGZyb20gYSBMb2dHcm91cFxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN1YnNjcmlwdGlvbkZpbHRlck9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIGRlc3RpbmF0aW9uIHRvIHNlbmQgdGhlIGZpbHRlcmVkIGV2ZW50cyB0by5cbiAgICpcbiAgICogRm9yIGV4YW1wbGUsIGEgS2luZXNpcyBzdHJlYW0gb3IgYSBMYW1iZGEgZnVuY3Rpb24uXG4gICAqL1xuICByZWFkb25seSBkZXN0aW5hdGlvbjogSUxvZ1N1YnNjcmlwdGlvbkRlc3RpbmF0aW9uO1xuXG4gIC8qKlxuICAgKiBMb2cgZXZlbnRzIG1hdGNoaW5nIHRoaXMgcGF0dGVybiB3aWxsIGJlIHNlbnQgdG8gdGhlIGRlc3RpbmF0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgZmlsdGVyUGF0dGVybjogSUZpbHRlclBhdHRlcm47XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBzdWJzY3JpcHRpb24gZmlsdGVyLlxuICAgKlxuICAgKiBAZGVmYXVsdCBBdXRvbWF0aWNhbGx5IGdlbmVyYXRlZFxuICAgKi9cbiAgcmVhZG9ubHkgZmlsdGVyTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG1ldGhvZCB1c2VkIHRvIGRpc3RyaWJ1dGUgbG9nIGRhdGEgdG8gdGhlIGRlc3RpbmF0aW9uLlxuICAgKiBUaGlzIHByb3BlcnR5IGNhbiBvbmx5IGJlIHVzZWQgd2l0aCBLaW5lc2lzRGVzdGluYXRpb24uXG4gICAqXG4gICAqIEBkZWZhdWx0IERpc3RyaWJ1dGlvbi5CWV9MT0dfU1RSRUFNXG4gICAqL1xuICByZWFkb25seSBkaXN0cmlidXRpb24/OiBEaXN0cmlidXRpb247XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYSBNZXRyaWNGaWx0ZXIgY3JlYXRlZCBmcm9tIGEgTG9nR3JvdXBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNZXRyaWNGaWx0ZXJPcHRpb25zIHtcbiAgLyoqXG4gICAqIFBhdHRlcm4gdG8gc2VhcmNoIGZvciBsb2cgZXZlbnRzLlxuICAgKi9cbiAgcmVhZG9ubHkgZmlsdGVyUGF0dGVybjogSUZpbHRlclBhdHRlcm47XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lc3BhY2Ugb2YgdGhlIG1ldHJpYyB0byBlbWl0LlxuICAgKi9cbiAgcmVhZG9ubHkgbWV0cmljTmFtZXNwYWNlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBtZXRyaWMgdG8gZW1pdC5cbiAgICovXG4gIHJlYWRvbmx5IG1ldHJpY05hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHZhbHVlIHRvIGVtaXQgZm9yIHRoZSBtZXRyaWMuXG4gICAqXG4gICAqIENhbiBlaXRoZXIgYmUgYSBsaXRlcmFsIG51bWJlciAodHlwaWNhbGx5IFwiMVwiKSwgb3IgdGhlIG5hbWUgb2YgYSBmaWVsZCBpbiB0aGUgc3RydWN0dXJlXG4gICAqIHRvIHRha2UgdGhlIHZhbHVlIGZyb20gdGhlIG1hdGNoZWQgZXZlbnQuIElmIHlvdSBhcmUgdXNpbmcgYSBmaWVsZCB2YWx1ZSwgdGhlIGZpZWxkXG4gICAqIHZhbHVlIG11c3QgaGF2ZSBiZWVuIG1hdGNoZWQgdXNpbmcgdGhlIHBhdHRlcm4uXG4gICAqXG4gICAqIElmIHlvdSB3YW50IHRvIHNwZWNpZnkgYSBmaWVsZCBmcm9tIGEgbWF0Y2hlZCBKU09OIHN0cnVjdHVyZSwgdXNlICckLmZpZWxkTmFtZScsXG4gICAqIGFuZCBtYWtlIHN1cmUgdGhlIGZpZWxkIGlzIGluIHRoZSBwYXR0ZXJuIChpZiBvbmx5IGFzICckLmZpZWxkTmFtZSA9IConKS5cbiAgICpcbiAgICogSWYgeW91IHdhbnQgdG8gc3BlY2lmeSBhIGZpZWxkIGZyb20gYSBtYXRjaGVkIHNwYWNlLWRlbGltaXRlZCBzdHJ1Y3R1cmUsXG4gICAqIHVzZSAnJGZpZWxkTmFtZScuXG4gICAqXG4gICAqIEBkZWZhdWx0IFwiMVwiXG4gICAqL1xuICByZWFkb25seSBtZXRyaWNWYWx1ZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHZhbHVlIHRvIGVtaXQgaWYgdGhlIHBhdHRlcm4gZG9lcyBub3QgbWF0Y2ggYSBwYXJ0aWN1bGFyIGV2ZW50LlxuICAgKlxuICAgKiBAZGVmYXVsdCBObyBtZXRyaWMgZW1pdHRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGRlZmF1bHRWYWx1ZT86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIGZpZWxkcyB0byB1c2UgYXMgZGltZW5zaW9ucyBmb3IgdGhlIG1ldHJpYy4gT25lIG1ldHJpYyBmaWx0ZXIgY2FuIGluY2x1ZGUgYXMgbWFueSBhcyB0aHJlZSBkaW1lbnNpb25zLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BV1NDbG91ZEZvcm1hdGlvbi9sYXRlc3QvVXNlckd1aWRlL2F3cy1wcm9wZXJ0aWVzLWxvZ3MtbWV0cmljZmlsdGVyLW1ldHJpY3RyYW5zZm9ybWF0aW9uLmh0bWwjY2ZuLWxvZ3MtbWV0cmljZmlsdGVyLW1ldHJpY3RyYW5zZm9ybWF0aW9uLWRpbWVuc2lvbnNcbiAgICogQGRlZmF1bHQgLSBObyBkaW1lbnNpb25zIGF0dGFjaGVkIHRvIG1ldHJpY3MuXG4gICAqL1xuICByZWFkb25seSBkaW1lbnNpb25zPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuICAvKipcbiAgICogVGhlIHVuaXQgdG8gYXNzaWduIHRvIHRoZSBtZXRyaWMuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FXU0Nsb3VkRm9ybWF0aW9uL2xhdGVzdC9Vc2VyR3VpZGUvYXdzLXByb3BlcnRpZXMtbG9ncy1tZXRyaWNmaWx0ZXItbWV0cmljdHJhbnNmb3JtYXRpb24uaHRtbCNjZm4tbG9ncy1tZXRyaWNmaWx0ZXItbWV0cmljdHJhbnNmb3JtYXRpb24tdW5pdFxuICAgKiBAZGVmYXVsdCAtIE5vIHVuaXQgYXR0YWNoZWQgdG8gbWV0cmljcy5cbiAgICovXG4gIHJlYWRvbmx5IHVuaXQ/OiBVbml0O1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgbWV0cmljIGZpbHRlci5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBDbG91ZGZvcm1hdGlvbiBnZW5lcmF0ZWQgbmFtZS5cbiAgICovXG4gIHJlYWRvbmx5IGZpbHRlck5hbWU/OiBzdHJpbmc7XG59XG4iXX0=
@@ -81,5 +81,5 @@ class LogQueryWidget extends widget_1.ConcreteWidget {
81
81
  }
82
82
  exports.LogQueryWidget = LogQueryWidget;
83
83
  _a = JSII_RTTI_SYMBOL_1;
84
- LogQueryWidget[_a] = { fqn: "terraconstructs.aws.cloudwatch.LogQueryWidget", version: "0.0.11" };
84
+ LogQueryWidget[_a] = { fqn: "terraconstructs.aws.cloudwatch.LogQueryWidget", version: "0.0.12" };
85
85
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLXF1ZXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F3cy9jbG91ZHdhdGNoL2xvZy1xdWVyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUdBLHFDQUEwQztBQUUxQzs7R0FFRztBQUNILElBQVkseUJBcUJYO0FBckJELFdBQVkseUJBQXlCO0lBQ25DOztPQUVHO0lBQ0gsNENBQWUsQ0FBQTtJQUNmOztPQUVHO0lBQ0gsMENBQWEsQ0FBQTtJQUNiOztPQUVHO0lBQ0gsd0RBQTJCLENBQUE7SUFDM0I7O09BRUc7SUFDSCx3Q0FBVyxDQUFBO0lBQ1g7O09BRUc7SUFDSCx3Q0FBVyxDQUFBO0FBQ2IsQ0FBQyxFQXJCVyx5QkFBeUIseUNBQXpCLHlCQUF5QixRQXFCcEM7QUFrRUQ7O0dBRUc7QUFDSCxNQUFhLGNBQWUsU0FBUSx1QkFBYztJQUdoRCxZQUFZLEtBQWdCLEVBQUUsS0FBMEI7UUFDdEQsS0FBSyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxLQUFLLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksS0FBSyxDQUFDLGFBQWEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDckMsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO1FBQzFELENBQUM7UUFFRCxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsV0FBVyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDL0MsTUFBTSxJQUFJLEtBQUssQ0FBQyx1REFBdUQsQ0FBQyxDQUFDO1FBQzNFLENBQUM7SUFDSCxDQUFDO0lBRU0sTUFBTTtRQUNYLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYTthQUNyQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUM7YUFDM0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2YsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVO1lBQ2pDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQ3BDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQztRQUUzQixNQUFNLFVBQVUsR0FBUTtZQUN0QixJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLO1lBQ3pFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUs7WUFDdkIsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTTtZQUM5QyxLQUFLLEVBQUUsR0FBRyxPQUFPLE1BQU0sS0FBSyxFQUFFO1NBQy9CLENBQUM7UUFFRix5REFBeUQ7UUFDekQsSUFDRSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyx5QkFBeUIsQ0FBQyxJQUFJO1lBQ2xELElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLHlCQUF5QixDQUFDLFdBQVcsRUFDekQsQ0FBQztZQUNELHNFQUFzRTtZQUN0RSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEdBQUcsWUFBWSxDQUFDO2dCQUM5QixDQUFDLFVBQVUsQ0FBQyxPQUFPO29CQUNqQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyx5QkFBeUIsQ0FBQyxXQUFXO3dCQUN2RCxDQUFDLENBQUMsSUFBSTt3QkFDTixDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakIsQ0FBQztRQUVELE9BQU87WUFDTDtnQkFDRSxJQUFJLEVBQUUsS0FBSztnQkFDWCxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7Z0JBQ2pCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtnQkFDbkIsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUNULENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDVCxVQUFVLEVBQUUsVUFBVTthQUN2QjtTQUNGLENBQUM7SUFDSixDQUFDOztBQXRESCx3Q0F1REMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNzAuMC9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaC9saWIvbG9nLXF1ZXJ5LnRzXG5cbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBDb25jcmV0ZVdpZGdldCB9IGZyb20gXCIuL3dpZGdldFwiO1xuXG4vKipcbiAqIFR5cGVzIG9mIHZpZXdcbiAqL1xuZXhwb3J0IGVudW0gTG9nUXVlcnlWaXN1YWxpemF0aW9uVHlwZSB7XG4gIC8qKlxuICAgKiBUYWJsZSB2aWV3XG4gICAqL1xuICBUQUJMRSA9IFwidGFibGVcIixcbiAgLyoqXG4gICAqIExpbmUgdmlld1xuICAgKi9cbiAgTElORSA9IFwibGluZVwiLFxuICAvKipcbiAgICogU3RhY2tlZCBhcmVhIHZpZXdcbiAgICovXG4gIFNUQUNLRURBUkVBID0gXCJzdGFja2VkYXJlYVwiLFxuICAvKipcbiAgICogQmFyIHZpZXdcbiAgICovXG4gIEJBUiA9IFwiYmFyXCIsXG4gIC8qKlxuICAgKiBQaWUgdmlld1xuICAgKi9cbiAgUElFID0gXCJwaWVcIixcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIFF1ZXJ5IHdpZGdldFxuICovXG5leHBvcnQgaW50ZXJmYWNlIExvZ1F1ZXJ5V2lkZ2V0UHJvcHMge1xuICAvKipcbiAgICogVGl0bGUgZm9yIHRoZSB3aWRnZXRcbiAgICpcbiAgICogQGRlZmF1bHQgTm8gdGl0bGVcbiAgICovXG4gIHJlYWRvbmx5IHRpdGxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lcyBvZiBsb2cgZ3JvdXBzIHRvIHF1ZXJ5XG4gICAqL1xuICByZWFkb25seSBsb2dHcm91cE5hbWVzOiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogRnVsbCBxdWVyeSBzdHJpbmcgZm9yIGxvZyBpbnNpZ2h0c1xuICAgKlxuICAgKiBCZSBzdXJlIHRvIHByZXBlbmQgZXZlcnkgbmV3IGxpbmUgd2l0aCBhIG5ld2xpbmUgYW5kIHBpcGUgY2hhcmFjdGVyXG4gICAqIChgXFxufGApLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEV4YWN0bHkgb25lIG9mIGBxdWVyeVN0cmluZ2AsIGBxdWVyeUxpbmVzYCBpcyByZXF1aXJlZC5cbiAgICovXG4gIHJlYWRvbmx5IHF1ZXJ5U3RyaW5nPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIHNlcXVlbmNlIG9mIGxpbmVzIHRvIHVzZSB0byBidWlsZCB0aGUgcXVlcnlcbiAgICpcbiAgICogVGhlIHF1ZXJ5IHdpbGwgYmUgYnVpbHQgYnkgam9pbmluZyB0aGUgbGluZXMgdG9nZXRoZXIgdXNpbmcgYFxcbnxgLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEV4YWN0bHkgb25lIG9mIGBxdWVyeVN0cmluZ2AsIGBxdWVyeUxpbmVzYCBpcyByZXF1aXJlZC5cbiAgICovXG4gIHJlYWRvbmx5IHF1ZXJ5TGluZXM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIHJlZ2lvbiB0aGUgbWV0cmljcyBvZiB0aGlzIHdpZGdldCBzaG91bGQgYmUgdGFrZW4gZnJvbVxuICAgKlxuICAgKiBAZGVmYXVsdCBDdXJyZW50IHJlZ2lvblxuICAgKi9cbiAgcmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvZiB2aWV3IHRvIHVzZVxuICAgKlxuICAgKiBAZGVmYXVsdCBMb2dRdWVyeVZpc3VhbGl6YXRpb25UeXBlLlRBQkxFXG4gICAqL1xuICByZWFkb25seSB2aWV3PzogTG9nUXVlcnlWaXN1YWxpemF0aW9uVHlwZTtcblxuICAvKipcbiAgICogV2lkdGggb2YgdGhlIHdpZGdldCwgaW4gYSBncmlkIG9mIDI0IHVuaXRzIHdpZGVcbiAgICpcbiAgICogQGRlZmF1bHQgNlxuICAgKi9cbiAgcmVhZG9ubHkgd2lkdGg/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEhlaWdodCBvZiB0aGUgd2lkZ2V0XG4gICAqXG4gICAqIEBkZWZhdWx0IDZcbiAgICovXG4gIHJlYWRvbmx5IGhlaWdodD86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBEaXNwbGF5IHF1ZXJ5IHJlc3VsdHMgZnJvbSBMb2dzIEluc2lnaHRzXG4gKi9cbmV4cG9ydCBjbGFzcyBMb2dRdWVyeVdpZGdldCBleHRlbmRzIENvbmNyZXRlV2lkZ2V0IHtcbiAgcHJpdmF0ZSByZWFkb25seSBwcm9wczogTG9nUXVlcnlXaWRnZXRQcm9wcztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBwcm9wczogTG9nUXVlcnlXaWRnZXRQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBwcm9wcy53aWR0aCB8fCA2LCBwcm9wcy5oZWlnaHQgfHwgNik7XG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuXG4gICAgaWYgKHByb3BzLmxvZ0dyb3VwTmFtZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJTcGVjaWZ5IGF0IGxlYXN0IG9uZSBsb2cgZ3JvdXAgbmFtZS5cIik7XG4gICAgfVxuXG4gICAgaWYgKCEhcHJvcHMucXVlcnlTdHJpbmcgPT09ICEhcHJvcHMucXVlcnlMaW5lcykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiU3BlY2lmeSBleGFjdGx5IG9uZSBvZiAncXVlcnlTdHJpbmcnIGFuZCAncXVlcnlMaW5lcydcIik7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHRvSnNvbigpOiBhbnlbXSB7XG4gICAgY29uc3Qgc291cmNlcyA9IHRoaXMucHJvcHMubG9nR3JvdXBOYW1lc1xuICAgICAgLm1hcCgobCkgPT4gYFNPVVJDRSAnJHtsfSdgKVxuICAgICAgLmpvaW4oXCIgfCBcIik7XG4gICAgY29uc3QgcXVlcnkgPSB0aGlzLnByb3BzLnF1ZXJ5TGluZXNcbiAgICAgID8gdGhpcy5wcm9wcy5xdWVyeUxpbmVzLmpvaW4oXCJcXG58IFwiKVxuICAgICAgOiB0aGlzLnByb3BzLnF1ZXJ5U3RyaW5nO1xuXG4gICAgY29uc3QgcHJvcGVydGllczogYW55ID0ge1xuICAgICAgdmlldzogdGhpcy5wcm9wcy52aWV3ID8gdGhpcy5wcm9wcy52aWV3IDogTG9nUXVlcnlWaXN1YWxpemF0aW9uVHlwZS5UQUJMRSxcbiAgICAgIHRpdGxlOiB0aGlzLnByb3BzLnRpdGxlLFxuICAgICAgcmVnaW9uOiB0aGlzLnByb3BzLnJlZ2lvbiB8fCB0aGlzLnN0YWNrLnJlZ2lvbixcbiAgICAgIHF1ZXJ5OiBgJHtzb3VyY2VzfSB8ICR7cXVlcnl9YCxcbiAgICB9O1xuXG4gICAgLy8gYWRkaW5nIHN0YWNrZWQgcHJvcGVydHkgaW4gY2FzZSBvZiBMSU5FIG9yIFNUQUNLRURBUkVBXG4gICAgaWYgKFxuICAgICAgdGhpcy5wcm9wcy52aWV3ID09PSBMb2dRdWVyeVZpc3VhbGl6YXRpb25UeXBlLkxJTkUgfHxcbiAgICAgIHRoaXMucHJvcHMudmlldyA9PT0gTG9nUXVlcnlWaXN1YWxpemF0aW9uVHlwZS5TVEFDS0VEQVJFQVxuICAgICkge1xuICAgICAgLy8gYXNzaWduIHRoZSByaWdodCBuYXRpdmUgdmlldyB2YWx1ZS4gYm90aCB0eXBlcyBzaGFyZSB0aGUgc2FtZSB2YWx1ZVxuICAgICAgKHByb3BlcnRpZXMudmlldyA9IFwidGltZVNlcmllc1wiKSxcbiAgICAgICAgKHByb3BlcnRpZXMuc3RhY2tlZCA9XG4gICAgICAgICAgdGhpcy5wcm9wcy52aWV3ID09PSBMb2dRdWVyeVZpc3VhbGl6YXRpb25UeXBlLlNUQUNLRURBUkVBXG4gICAgICAgICAgICA/IHRydWVcbiAgICAgICAgICAgIDogZmFsc2UpO1xuICAgIH1cblxuICAgIHJldHVybiBbXG4gICAgICB7XG4gICAgICAgIHR5cGU6IFwibG9nXCIsXG4gICAgICAgIHdpZHRoOiB0aGlzLndpZHRoLFxuICAgICAgICBoZWlnaHQ6IHRoaXMuaGVpZ2h0LFxuICAgICAgICB4OiB0aGlzLngsXG4gICAgICAgIHk6IHRoaXMueSxcbiAgICAgICAgcHJvcGVydGllczogcHJvcGVydGllcyxcbiAgICAgIH0sXG4gICAgXTtcbiAgfVxufVxuIl19
@@ -53,5 +53,5 @@ class LogStream extends aws_construct_1.AwsConstructBase {
53
53
  }
54
54
  exports.LogStream = LogStream;
55
55
  _a = JSII_RTTI_SYMBOL_1;
56
- LogStream[_a] = { fqn: "terraconstructs.aws.cloudwatch.LogStream", version: "0.0.11" };
56
+ LogStream[_a] = { fqn: "terraconstructs.aws.cloudwatch.LogStream", version: "0.0.12" };
57
57
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLXN0cmVhbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hd3MvY2xvdWR3YXRjaC9sb2ctc3RyZWFtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0ZBQStGO0FBRS9GLHNEQUEwRDtBQUUxRCxvREFJMEI7QUE0QzFCOztHQUVHO0FBQ0gsTUFBYSxTQUFVLFNBQVEsZ0NBQWdCO0lBQzdDOztPQUVHO0lBQ0ksTUFBTSxDQUFDLGlCQUFpQixDQUM3QixLQUFnQixFQUNoQixFQUFVLEVBQ1YsYUFBcUI7UUFFckIsTUFBTSxNQUFPLFNBQVEsZ0NBQWdCO1lBQXJDOztnQkFTa0Isa0JBQWEsR0FBRyxhQUFhLENBQUM7WUFDaEQsQ0FBQztZQVRDLElBQVcsZ0JBQWdCO2dCQUN6QixPQUFPO29CQUNMLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtpQkFDbEMsQ0FBQztZQUNKLENBQUM7WUFDRCxJQUFXLE9BQU87Z0JBQ2hCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO1lBQy9CLENBQUM7U0FFRjtRQUVELE9BQU8sSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFPRCxJQUFXLGdCQUFnQjtRQUN6QixPQUFPO1lBQ0wsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1NBQ2xDLENBQUM7SUFDSixDQUFDO0lBQ0QsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQy9CLENBQUM7SUFFRCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXFCO1FBQzdELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3hCLE1BQU0sSUFBSSxHQUNSLEtBQUssQ0FBQyxhQUFhO1lBQ25CLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFO2dCQUNsQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVE7YUFDdEIsQ0FBQyxDQUFDO1FBRUwsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLGtDQUFtQixDQUFDLG1CQUFtQixDQUN6RCxJQUFJLEVBQ0osVUFBVSxFQUNWO1lBQ0UsWUFBWSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsWUFBWTtZQUN6QyxJQUFJO1NBQ0wsQ0FDRixDQUFDO1FBRUYsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztJQUMxQyxDQUFDOztBQXhESCw4QkF5REMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNzAuMC9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3MtbG9ncy9saWIvbG9nLXN0cmVhbS50c1xuXG5pbXBvcnQgeyBjbG91ZHdhdGNoTG9nU3RyZWFtIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1hd3NcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge1xuICBJQXdzQ29uc3RydWN0LFxuICBBd3NDb25zdHJ1Y3RCYXNlLFxuICBBd3NDb25zdHJ1Y3RQcm9wcyxcbn0gZnJvbSBcIi4uL2F3cy1jb25zdHJ1Y3RcIjtcbmltcG9ydCB7IElMb2dHcm91cCB9IGZyb20gXCIuL2xvZy1ncm91cFwiO1xuXG4vKipcbiAqIE91dHB1dHMgd2hpY2ggbWF5IGJlIHJlZ2lzdGVyZWQgZm9yIG91dHB1dCB2aWEgdGhlIEdyaWQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9nU3RyZWFtT3V0cHV0cyB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGlzIGxvZyBzdHJlYW1cbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgbG9nU3RyZWFtTmFtZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElMb2dTdHJlYW0gZXh0ZW5kcyBJQXdzQ29uc3RydWN0IHtcbiAgLyoqIFN0cm9uZ2x5IHR5cGVkIG91dHB1dHMgKi9cbiAgcmVhZG9ubHkgbG9nU3RyZWFtT3V0cHV0czogTG9nU3RyZWFtT3V0cHV0cztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhpcyBsb2cgc3RyZWFtXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGxvZ1N0cmVhbU5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIExvZ1N0cmVhbVxuICovXG5leHBvcnQgaW50ZXJmYWNlIExvZ1N0cmVhbVByb3BzIGV4dGVuZHMgQXdzQ29uc3RydWN0UHJvcHMge1xuICAvKipcbiAgICogVGhlIGxvZyBncm91cCB0byBjcmVhdGUgYSBsb2cgc3RyZWFtIGZvci5cbiAgICovXG4gIHJlYWRvbmx5IGxvZ0dyb3VwOiBJTG9nR3JvdXA7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBsb2cgc3RyZWFtIHRvIGNyZWF0ZS5cbiAgICpcbiAgICogVGhlIG5hbWUgbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBsb2cgZ3JvdXAuXG4gICAqXG4gICAqIEBkZWZhdWx0IEF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkXG4gICAqL1xuICByZWFkb25seSBsb2dTdHJlYW1OYW1lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIERlZmluZSBhIExvZyBTdHJlYW0gaW4gYSBMb2cgR3JvdXBcbiAqL1xuZXhwb3J0IGNsYXNzIExvZ1N0cmVhbSBleHRlbmRzIEF3c0NvbnN0cnVjdEJhc2UgaW1wbGVtZW50cyBJTG9nU3RyZWFtIHtcbiAgLyoqXG4gICAqIEltcG9ydCBhbiBleGlzdGluZyBMb2dHcm91cFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tTG9nU3RyZWFtTmFtZShcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgbG9nU3RyZWFtTmFtZTogc3RyaW5nLFxuICApOiBJTG9nU3RyZWFtIHtcbiAgICBjbGFzcyBJbXBvcnQgZXh0ZW5kcyBBd3NDb25zdHJ1Y3RCYXNlIGltcGxlbWVudHMgSUxvZ1N0cmVhbSB7XG4gICAgICBwdWJsaWMgZ2V0IGxvZ1N0cmVhbU91dHB1dHMoKTogTG9nU3RyZWFtT3V0cHV0cyB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgbG9nU3RyZWFtTmFtZTogdGhpcy5sb2dTdHJlYW1OYW1lLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgcHVibGljIGdldCBvdXRwdXRzKCk6IFJlY29yZDxzdHJpbmcsIGFueT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5sb2dTdHJlYW1PdXRwdXRzO1xuICAgICAgfVxuICAgICAgcHVibGljIHJlYWRvbmx5IGxvZ1N0cmVhbU5hbWUgPSBsb2dTdHJlYW1OYW1lO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgSW1wb3J0KHNjb3BlLCBpZCk7XG4gIH1cblxuICBwdWJsaWMgcmVhZG9ubHkgcmVzb3VyY2U6IGNsb3Vkd2F0Y2hMb2dTdHJlYW0uQ2xvdWR3YXRjaExvZ1N0cmVhbTtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoaXMgbG9nIHN0cmVhbVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGxvZ1N0cmVhbU5hbWU6IHN0cmluZztcbiAgcHVibGljIGdldCBsb2dTdHJlYW1PdXRwdXRzKCk6IExvZ1N0cmVhbU91dHB1dHMge1xuICAgIHJldHVybiB7XG4gICAgICBsb2dTdHJlYW1OYW1lOiB0aGlzLmxvZ1N0cmVhbU5hbWUsXG4gICAgfTtcbiAgfVxuICBwdWJsaWMgZ2V0IG91dHB1dHMoKTogUmVjb3JkPHN0cmluZywgYW55PiB7XG4gICAgcmV0dXJuIHRoaXMubG9nU3RyZWFtT3V0cHV0cztcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBMb2dTdHJlYW1Qcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuICAgIGNvbnN0IG5hbWUgPVxuICAgICAgcHJvcHMubG9nU3RyZWFtTmFtZSB8fFxuICAgICAgdGhpcy5zdGFjay51bmlxdWVSZXNvdXJjZU5hbWUodGhpcywge1xuICAgICAgICBwcmVmaXg6IHRoaXMuZ3JpZFVVSUQsXG4gICAgICB9KTtcblxuICAgIHRoaXMucmVzb3VyY2UgPSBuZXcgY2xvdWR3YXRjaExvZ1N0cmVhbS5DbG91ZHdhdGNoTG9nU3RyZWFtKFxuICAgICAgdGhpcyxcbiAgICAgIFwiUmVzb3VyY2VcIixcbiAgICAgIHtcbiAgICAgICAgbG9nR3JvdXBOYW1lOiBwcm9wcy5sb2dHcm91cC5sb2dHcm91cE5hbWUsXG4gICAgICAgIG5hbWUsXG4gICAgICB9LFxuICAgICk7XG5cbiAgICB0aGlzLmxvZ1N0cmVhbU5hbWUgPSB0aGlzLnJlc291cmNlLm5hbWU7XG4gIH1cbn1cbiJdfQ==
@@ -2,7 +2,7 @@ import { cloudwatchLogMetricFilter } from "@cdktf/provider-aws";
2
2
  import { Construct } from "constructs";
3
3
  import { ILogGroup, MetricFilterOptions } from "./log-group";
4
4
  import { Metric, MetricOptions } from "./metric";
5
- import { AwsConstructBase, AwsConstructProps } from "../";
5
+ import { AwsConstructBase, AwsConstructProps } from "../aws-construct";
6
6
  /**
7
7
  * Properties for a MetricFilter
8
8
  */
@@ -6,11 +6,11 @@ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
6
  // https://github.com/aws/aws-cdk/blob/v2.170.0/packages/aws-cdk-lib/aws-logs/lib/metric-filter.ts
7
7
  const provider_aws_1 = require("@cdktf/provider-aws");
8
8
  const metric_1 = require("./metric");
9
- const __1 = require("../");
9
+ const aws_construct_1 = require("../aws-construct");
10
10
  /**
11
11
  * A filter that extracts information from CloudWatch Logs and emits to CloudWatch Metrics
12
12
  */
13
- class MetricFilter extends __1.AwsConstructBase {
13
+ class MetricFilter extends aws_construct_1.AwsConstructBase {
14
14
  get outputs() {
15
15
  return {
16
16
  id: this.resource.id,
@@ -65,5 +65,5 @@ class MetricFilter extends __1.AwsConstructBase {
65
65
  }
66
66
  exports.MetricFilter = MetricFilter;
67
67
  _a = JSII_RTTI_SYMBOL_1;
68
- MetricFilter[_a] = { fqn: "terraconstructs.aws.cloudwatch.MetricFilter", version: "0.0.11" };
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0cmljLWZpbHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hd3MvY2xvdWR3YXRjaC9tZXRyaWMtZmlsdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0dBQWtHO0FBRWxHLHNEQUFnRTtBQUdoRSxxQ0FBaUQ7QUFDakQsMkJBQTBEO0FBYzFEOztHQUVHO0FBQ0gsTUFBYSxZQUFhLFNBQVEsb0JBQWdCO0lBR2hELElBQVcsT0FBTztRQUNoQixPQUFPO1lBQ0wsRUFBRSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtTQUNyQixDQUFDO0lBQ0osQ0FBQztJQUlELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBd0I7UUFDaEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDeEIsTUFBTSxJQUFJLEdBQ1IsS0FBSyxDQUFDLFVBQVU7WUFDaEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUU7Z0JBQ2xDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUTthQUN0QixDQUFDLENBQUM7UUFFTCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUM7UUFDbkMsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUMsZUFBZSxDQUFDO1FBRTdDLE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUN0RSxJQUFJLGtCQUFrQixHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzNCLE1BQU0sSUFBSSxLQUFLLENBQ2IscUVBQXFFLGtCQUFrQixHQUFHLENBQzNGLENBQUM7UUFDSixDQUFDO1FBRUQsa0VBQWtFO1FBQ2xFLCtEQUErRDtRQUMvRCwrREFBK0Q7UUFDL0QsRUFBRTtRQUNGLHFHQUFxRztRQUNyRyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksd0NBQXlCLENBQUMseUJBQXlCLENBQ3JFLElBQUksRUFDSixVQUFVLEVBQ1Y7WUFDRSxJQUFJO1lBQ0osWUFBWSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsWUFBWTtZQUN6QyxPQUFPLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0I7WUFDN0Msb0JBQW9CLEVBQUU7Z0JBQ3BCLFNBQVMsRUFBRSxLQUFLLENBQUMsZUFBZTtnQkFDaEMsSUFBSSxFQUFFLEtBQUssQ0FBQyxVQUFVO2dCQUN0QixLQUFLLEVBQUUsS0FBSyxDQUFDLFdBQVcsSUFBSSxHQUFHO2dCQUMvQixZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVk7b0JBQzlCLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQztvQkFDNUIsQ0FBQyxDQUFDLFNBQVM7Z0JBQ2IsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVO2dCQUM1QixJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7YUFDakI7U0FDRixDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyxLQUFxQjtRQUNqQyxPQUFPLElBQUksZUFBTSxDQUFDO1lBQ2hCLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUMzQixTQUFTLEVBQUUsSUFBSSxDQUFDLGVBQWU7WUFDL0IsU0FBUyxFQUFFLEtBQUs7WUFDaEIsR0FBRyxLQUFLO1NBQ1QsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQixDQUFDOztBQW5FSCxvQ0FvRUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNzAuMC9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3MtbG9ncy9saWIvbWV0cmljLWZpbHRlci50c1xuXG5pbXBvcnQgeyBjbG91ZHdhdGNoTG9nTWV0cmljRmlsdGVyIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1hd3NcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBJTG9nR3JvdXAsIE1ldHJpY0ZpbHRlck9wdGlvbnMgfSBmcm9tIFwiLi9sb2ctZ3JvdXBcIjtcbmltcG9ydCB7IE1ldHJpYywgTWV0cmljT3B0aW9ucyB9IGZyb20gXCIuL21ldHJpY1wiO1xuaW1wb3J0IHsgQXdzQ29uc3RydWN0QmFzZSwgQXdzQ29uc3RydWN0UHJvcHMgfSBmcm9tIFwiLi4vXCI7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYSBNZXRyaWNGaWx0ZXJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNZXRyaWNGaWx0ZXJQcm9wc1xuICBleHRlbmRzIE1ldHJpY0ZpbHRlck9wdGlvbnMsXG4gICAgQXdzQ29uc3RydWN0UHJvcHMge1xuICAvKipcbiAgICogVGhlIGxvZyBncm91cCB0byBjcmVhdGUgdGhlIGZpbHRlciBvbi5cbiAgICovXG4gIHJlYWRvbmx5IGxvZ0dyb3VwOiBJTG9nR3JvdXA7XG59XG5cbi8qKlxuICogQSBmaWx0ZXIgdGhhdCBleHRyYWN0cyBpbmZvcm1hdGlvbiBmcm9tIENsb3VkV2F0Y2ggTG9ncyBhbmQgZW1pdHMgdG8gQ2xvdWRXYXRjaCBNZXRyaWNzXG4gKi9cbmV4cG9ydCBjbGFzcyBNZXRyaWNGaWx0ZXIgZXh0ZW5kcyBBd3NDb25zdHJ1Y3RCYXNlIHtcbiAgcHVibGljIHJlYWRvbmx5IHJlc291cmNlOiBjbG91ZHdhdGNoTG9nTWV0cmljRmlsdGVyLkNsb3Vkd2F0Y2hMb2dNZXRyaWNGaWx0ZXI7XG5cbiAgcHVibGljIGdldCBvdXRwdXRzKCk6IFJlY29yZDxzdHJpbmcsIGFueT4ge1xuICAgIHJldHVybiB7XG4gICAgICBpZDogdGhpcy5yZXNvdXJjZS5pZCxcbiAgICB9O1xuICB9XG4gIHByaXZhdGUgcmVhZG9ubHkgbWV0cmljTmFtZTogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IG1ldHJpY05hbWVzcGFjZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBNZXRyaWNGaWx0ZXJQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuICAgIGNvbnN0IG5hbWUgPVxuICAgICAgcHJvcHMuZmlsdGVyTmFtZSB8fFxuICAgICAgdGhpcy5zdGFjay51bmlxdWVSZXNvdXJjZU5hbWUodGhpcywge1xuICAgICAgICBwcmVmaXg6IHRoaXMuZ3JpZFVVSUQsXG4gICAgICB9KTtcblxuICAgIHRoaXMubWV0cmljTmFtZSA9IHByb3BzLm1ldHJpY05hbWU7XG4gICAgdGhpcy5tZXRyaWNOYW1lc3BhY2UgPSBwcm9wcy5tZXRyaWNOYW1lc3BhY2U7XG5cbiAgICBjb25zdCBudW1iZXJPZkRpbWVuc2lvbnMgPSBPYmplY3Qua2V5cyhwcm9wcy5kaW1lbnNpb25zID8/IHt9KS5sZW5ndGg7XG4gICAgaWYgKG51bWJlck9mRGltZW5zaW9ucyA+IDMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYE1ldHJpY0ZpbHRlciBvbmx5IHN1cHBvcnRzIGEgbWF4aW11bSBvZiAzIGRpbWVuc2lvbnMgYnV0IHJlY2VpdmVkICR7bnVtYmVyT2ZEaW1lbnNpb25zfS5gLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyA+IEN1cnJlbnRseSwgeW91IGNhbiBzcGVjaWZ5IG9ubHkgb25lIG1ldHJpYyB0cmFuc2Zvcm1hdGlvbiBmb3JcbiAgICAvLyA+IGVhY2ggbWV0cmljIGZpbHRlci4gSWYgeW91IHdhbnQgdG8gc3BlY2lmeSBtdWx0aXBsZSBtZXRyaWNcbiAgICAvLyA+IHRyYW5zZm9ybWF0aW9ucywgeW91IG11c3Qgc3BlY2lmeSBtdWx0aXBsZSBtZXRyaWMgZmlsdGVycy5cbiAgICAvL1xuICAgIC8vIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BV1NDbG91ZEZvcm1hdGlvbi9sYXRlc3QvVXNlckd1aWRlL2F3cy1yZXNvdXJjZS1sb2dzLW1ldHJpY2ZpbHRlci5odG1sXG4gICAgdGhpcy5yZXNvdXJjZSA9IG5ldyBjbG91ZHdhdGNoTG9nTWV0cmljRmlsdGVyLkNsb3Vkd2F0Y2hMb2dNZXRyaWNGaWx0ZXIoXG4gICAgICB0aGlzLFxuICAgICAgXCJSZXNvdXJjZVwiLFxuICAgICAge1xuICAgICAgICBuYW1lLFxuICAgICAgICBsb2dHcm91cE5hbWU6IHByb3BzLmxvZ0dyb3VwLmxvZ0dyb3VwTmFtZSxcbiAgICAgICAgcGF0dGVybjogcHJvcHMuZmlsdGVyUGF0dGVybi5sb2dQYXR0ZXJuU3RyaW5nLFxuICAgICAgICBtZXRyaWNUcmFuc2Zvcm1hdGlvbjoge1xuICAgICAgICAgIG5hbWVzcGFjZTogcHJvcHMubWV0cmljTmFtZXNwYWNlLFxuICAgICAgICAgIG5hbWU6IHByb3BzLm1ldHJpY05hbWUsXG4gICAgICAgICAgdmFsdWU6IHByb3BzLm1ldHJpY1ZhbHVlID8/IFwiMVwiLFxuICAgICAgICAgIGRlZmF1bHRWYWx1ZTogcHJvcHMuZGVmYXVsdFZhbHVlXG4gICAgICAgICAgICA/IFN0cmluZyhwcm9wcy5kZWZhdWx0VmFsdWUpXG4gICAgICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgICAgICBkaW1lbnNpb25zOiBwcm9wcy5kaW1lbnNpb25zLFxuICAgICAgICAgIHVuaXQ6IHByb3BzLnVuaXQsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBnaXZlbiBuYW1lZCBtZXRyaWMgZm9yIHRoaXMgTWV0cmljIEZpbHRlclxuICAgKlxuICAgKiBAZGVmYXVsdCBhdmcgb3ZlciA1IG1pbnV0ZXNcbiAgICovXG4gIHB1YmxpYyBtZXRyaWMocHJvcHM/OiBNZXRyaWNPcHRpb25zKTogTWV0cmljIHtcbiAgICByZXR1cm4gbmV3IE1ldHJpYyh7XG4gICAgICBtZXRyaWNOYW1lOiB0aGlzLm1ldHJpY05hbWUsXG4gICAgICBuYW1lc3BhY2U6IHRoaXMubWV0cmljTmFtZXNwYWNlLFxuICAgICAgc3RhdGlzdGljOiBcImF2Z1wiLFxuICAgICAgLi4ucHJvcHMsXG4gICAgfSkuYXR0YWNoVG8odGhpcyk7XG4gIH1cbn1cbiJdfQ==
68
+ MetricFilter[_a] = { fqn: "terraconstructs.aws.cloudwatch.MetricFilter", version: "0.0.12" };
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0cmljLWZpbHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hd3MvY2xvdWR3YXRjaC9tZXRyaWMtZmlsdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0dBQWtHO0FBRWxHLHNEQUFnRTtBQUdoRSxxQ0FBaUQ7QUFDakQsb0RBQXVFO0FBY3ZFOztHQUVHO0FBQ0gsTUFBYSxZQUFhLFNBQVEsZ0NBQWdCO0lBR2hELElBQVcsT0FBTztRQUNoQixPQUFPO1lBQ0wsRUFBRSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtTQUNyQixDQUFDO0lBQ0osQ0FBQztJQUlELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBd0I7UUFDaEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDeEIsTUFBTSxJQUFJLEdBQ1IsS0FBSyxDQUFDLFVBQVU7WUFDaEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUU7Z0JBQ2xDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUTthQUN0QixDQUFDLENBQUM7UUFFTCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUM7UUFDbkMsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUMsZUFBZSxDQUFDO1FBRTdDLE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUN0RSxJQUFJLGtCQUFrQixHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzNCLE1BQU0sSUFBSSxLQUFLLENBQ2IscUVBQXFFLGtCQUFrQixHQUFHLENBQzNGLENBQUM7UUFDSixDQUFDO1FBRUQsa0VBQWtFO1FBQ2xFLCtEQUErRDtRQUMvRCwrREFBK0Q7UUFDL0QsRUFBRTtRQUNGLHFHQUFxRztRQUNyRyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksd0NBQXlCLENBQUMseUJBQXlCLENBQ3JFLElBQUksRUFDSixVQUFVLEVBQ1Y7WUFDRSxJQUFJO1lBQ0osWUFBWSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsWUFBWTtZQUN6QyxPQUFPLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0I7WUFDN0Msb0JBQW9CLEVBQUU7Z0JBQ3BCLFNBQVMsRUFBRSxLQUFLLENBQUMsZUFBZTtnQkFDaEMsSUFBSSxFQUFFLEtBQUssQ0FBQyxVQUFVO2dCQUN0QixLQUFLLEVBQUUsS0FBSyxDQUFDLFdBQVcsSUFBSSxHQUFHO2dCQUMvQixZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVk7b0JBQzlCLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQztvQkFDNUIsQ0FBQyxDQUFDLFNBQVM7Z0JBQ2IsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVO2dCQUM1QixJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7YUFDakI7U0FDRixDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyxLQUFxQjtRQUNqQyxPQUFPLElBQUksZUFBTSxDQUFDO1lBQ2hCLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUMzQixTQUFTLEVBQUUsSUFBSSxDQUFDLGVBQWU7WUFDL0IsU0FBUyxFQUFFLEtBQUs7WUFDaEIsR0FBRyxLQUFLO1NBQ1QsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQixDQUFDOztBQW5FSCxvQ0FvRUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNzAuMC9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3MtbG9ncy9saWIvbWV0cmljLWZpbHRlci50c1xuXG5pbXBvcnQgeyBjbG91ZHdhdGNoTG9nTWV0cmljRmlsdGVyIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1hd3NcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBJTG9nR3JvdXAsIE1ldHJpY0ZpbHRlck9wdGlvbnMgfSBmcm9tIFwiLi9sb2ctZ3JvdXBcIjtcbmltcG9ydCB7IE1ldHJpYywgTWV0cmljT3B0aW9ucyB9IGZyb20gXCIuL21ldHJpY1wiO1xuaW1wb3J0IHsgQXdzQ29uc3RydWN0QmFzZSwgQXdzQ29uc3RydWN0UHJvcHMgfSBmcm9tIFwiLi4vYXdzLWNvbnN0cnVjdFwiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgTWV0cmljRmlsdGVyXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWV0cmljRmlsdGVyUHJvcHNcbiAgZXh0ZW5kcyBNZXRyaWNGaWx0ZXJPcHRpb25zLFxuICAgIEF3c0NvbnN0cnVjdFByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBsb2cgZ3JvdXAgdG8gY3JlYXRlIHRoZSBmaWx0ZXIgb24uXG4gICAqL1xuICByZWFkb25seSBsb2dHcm91cDogSUxvZ0dyb3VwO1xufVxuXG4vKipcbiAqIEEgZmlsdGVyIHRoYXQgZXh0cmFjdHMgaW5mb3JtYXRpb24gZnJvbSBDbG91ZFdhdGNoIExvZ3MgYW5kIGVtaXRzIHRvIENsb3VkV2F0Y2ggTWV0cmljc1xuICovXG5leHBvcnQgY2xhc3MgTWV0cmljRmlsdGVyIGV4dGVuZHMgQXdzQ29uc3RydWN0QmFzZSB7XG4gIHB1YmxpYyByZWFkb25seSByZXNvdXJjZTogY2xvdWR3YXRjaExvZ01ldHJpY0ZpbHRlci5DbG91ZHdhdGNoTG9nTWV0cmljRmlsdGVyO1xuXG4gIHB1YmxpYyBnZXQgb3V0cHV0cygpOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHtcbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IHRoaXMucmVzb3VyY2UuaWQsXG4gICAgfTtcbiAgfVxuICBwcml2YXRlIHJlYWRvbmx5IG1ldHJpY05hbWU6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBtZXRyaWNOYW1lc3BhY2U6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTWV0cmljRmlsdGVyUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHByb3BzKTtcbiAgICBjb25zdCBuYW1lID1cbiAgICAgIHByb3BzLmZpbHRlck5hbWUgfHxcbiAgICAgIHRoaXMuc3RhY2sudW5pcXVlUmVzb3VyY2VOYW1lKHRoaXMsIHtcbiAgICAgICAgcHJlZml4OiB0aGlzLmdyaWRVVUlELFxuICAgICAgfSk7XG5cbiAgICB0aGlzLm1ldHJpY05hbWUgPSBwcm9wcy5tZXRyaWNOYW1lO1xuICAgIHRoaXMubWV0cmljTmFtZXNwYWNlID0gcHJvcHMubWV0cmljTmFtZXNwYWNlO1xuXG4gICAgY29uc3QgbnVtYmVyT2ZEaW1lbnNpb25zID0gT2JqZWN0LmtleXMocHJvcHMuZGltZW5zaW9ucyA/PyB7fSkubGVuZ3RoO1xuICAgIGlmIChudW1iZXJPZkRpbWVuc2lvbnMgPiAzKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBNZXRyaWNGaWx0ZXIgb25seSBzdXBwb3J0cyBhIG1heGltdW0gb2YgMyBkaW1lbnNpb25zIGJ1dCByZWNlaXZlZCAke251bWJlck9mRGltZW5zaW9uc30uYCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gPiBDdXJyZW50bHksIHlvdSBjYW4gc3BlY2lmeSBvbmx5IG9uZSBtZXRyaWMgdHJhbnNmb3JtYXRpb24gZm9yXG4gICAgLy8gPiBlYWNoIG1ldHJpYyBmaWx0ZXIuIElmIHlvdSB3YW50IHRvIHNwZWNpZnkgbXVsdGlwbGUgbWV0cmljXG4gICAgLy8gPiB0cmFuc2Zvcm1hdGlvbnMsIHlvdSBtdXN0IHNwZWNpZnkgbXVsdGlwbGUgbWV0cmljIGZpbHRlcnMuXG4gICAgLy9cbiAgICAvLyBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQVdTQ2xvdWRGb3JtYXRpb24vbGF0ZXN0L1VzZXJHdWlkZS9hd3MtcmVzb3VyY2UtbG9ncy1tZXRyaWNmaWx0ZXIuaHRtbFxuICAgIHRoaXMucmVzb3VyY2UgPSBuZXcgY2xvdWR3YXRjaExvZ01ldHJpY0ZpbHRlci5DbG91ZHdhdGNoTG9nTWV0cmljRmlsdGVyKFxuICAgICAgdGhpcyxcbiAgICAgIFwiUmVzb3VyY2VcIixcbiAgICAgIHtcbiAgICAgICAgbmFtZSxcbiAgICAgICAgbG9nR3JvdXBOYW1lOiBwcm9wcy5sb2dHcm91cC5sb2dHcm91cE5hbWUsXG4gICAgICAgIHBhdHRlcm46IHByb3BzLmZpbHRlclBhdHRlcm4ubG9nUGF0dGVyblN0cmluZyxcbiAgICAgICAgbWV0cmljVHJhbnNmb3JtYXRpb246IHtcbiAgICAgICAgICBuYW1lc3BhY2U6IHByb3BzLm1ldHJpY05hbWVzcGFjZSxcbiAgICAgICAgICBuYW1lOiBwcm9wcy5tZXRyaWNOYW1lLFxuICAgICAgICAgIHZhbHVlOiBwcm9wcy5tZXRyaWNWYWx1ZSA/PyBcIjFcIixcbiAgICAgICAgICBkZWZhdWx0VmFsdWU6IHByb3BzLmRlZmF1bHRWYWx1ZVxuICAgICAgICAgICAgPyBTdHJpbmcocHJvcHMuZGVmYXVsdFZhbHVlKVxuICAgICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICAgICAgZGltZW5zaW9uczogcHJvcHMuZGltZW5zaW9ucyxcbiAgICAgICAgICB1bml0OiBwcm9wcy51bml0LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiB0aGUgZ2l2ZW4gbmFtZWQgbWV0cmljIGZvciB0aGlzIE1ldHJpYyBGaWx0ZXJcbiAgICpcbiAgICogQGRlZmF1bHQgYXZnIG92ZXIgNSBtaW51dGVzXG4gICAqL1xuICBwdWJsaWMgbWV0cmljKHByb3BzPzogTWV0cmljT3B0aW9ucyk6IE1ldHJpYyB7XG4gICAgcmV0dXJuIG5ldyBNZXRyaWMoe1xuICAgICAgbWV0cmljTmFtZTogdGhpcy5tZXRyaWNOYW1lLFxuICAgICAgbmFtZXNwYWNlOiB0aGlzLm1ldHJpY05hbWVzcGFjZSxcbiAgICAgIHN0YXRpc3RpYzogXCJhdmdcIixcbiAgICAgIC4uLnByb3BzLFxuICAgIH0pLmF0dGFjaFRvKHRoaXMpO1xuICB9XG59XG4iXX0=
@@ -248,7 +248,7 @@ class Metric {
248
248
  }
249
249
  exports.Metric = Metric;
250
250
  _a = JSII_RTTI_SYMBOL_1;
251
- Metric[_a] = { fqn: "terraconstructs.aws.cloudwatch.Metric", version: "0.0.11" };
251
+ Metric[_a] = { fqn: "terraconstructs.aws.cloudwatch.Metric", version: "0.0.12" };
252
252
  function asString(x) {
253
253
  if (x === undefined) {
254
254
  return undefined;
@@ -422,7 +422,7 @@ class MathExpression {
422
422
  }
423
423
  exports.MathExpression = MathExpression;
424
424
  _b = JSII_RTTI_SYMBOL_1;
425
- MathExpression[_b] = { fqn: "terraconstructs.aws.cloudwatch.MathExpression", version: "0.0.11" };
425
+ MathExpression[_b] = { fqn: "terraconstructs.aws.cloudwatch.MathExpression", version: "0.0.12" };
426
426
  /**
427
427
  * Pattern for a variable name. Alphanum starting with lowercase.
428
428
  */
@@ -18,7 +18,7 @@ class JsonPattern {
18
18
  }
19
19
  exports.JsonPattern = JsonPattern;
20
20
  _a = JSII_RTTI_SYMBOL_1;
21
- JsonPattern[_a] = { fqn: "terraconstructs.aws.cloudwatch.JsonPattern", version: "0.0.11" };
21
+ JsonPattern[_a] = { fqn: "terraconstructs.aws.cloudwatch.JsonPattern", version: "0.0.12" };
22
22
  /**
23
23
  * A collection of static methods to generate appropriate ILogPatterns
24
24
  */
@@ -186,7 +186,7 @@ class FilterPattern {
186
186
  }
187
187
  exports.FilterPattern = FilterPattern;
188
188
  _b = JSII_RTTI_SYMBOL_1;
189
- FilterPattern[_b] = { fqn: "terraconstructs.aws.cloudwatch.FilterPattern", version: "0.0.11" };
189
+ FilterPattern[_b] = { fqn: "terraconstructs.aws.cloudwatch.FilterPattern", version: "0.0.12" };
190
190
  /**
191
191
  * Use a string literal as a log pattern
192
192
  */
@@ -344,7 +344,7 @@ class SpaceDelimitedTextPattern {
344
344
  }
345
345
  exports.SpaceDelimitedTextPattern = SpaceDelimitedTextPattern;
346
346
  _c = JSII_RTTI_SYMBOL_1;
347
- SpaceDelimitedTextPattern[_c] = { fqn: "terraconstructs.aws.cloudwatch.SpaceDelimitedTextPattern", version: "0.0.11" };
347
+ SpaceDelimitedTextPattern[_c] = { fqn: "terraconstructs.aws.cloudwatch.SpaceDelimitedTextPattern", version: "0.0.12" };
348
348
  /**
349
349
  * Quote a term for use in a pattern expression
350
350
  *
@@ -46,5 +46,5 @@ class ResourcePolicy extends aws_construct_1.AwsConstructBase {
46
46
  }
47
47
  exports.ResourcePolicy = ResourcePolicy;
48
48
  _a = JSII_RTTI_SYMBOL_1;
49
- ResourcePolicy[_a] = { fqn: "terraconstructs.aws.cloudwatch.ResourcePolicy", version: "0.0.11" };
49
+ ResourcePolicy[_a] = { fqn: "terraconstructs.aws.cloudwatch.ResourcePolicy", version: "0.0.12" };
50
50
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9saWN5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F3cy9jbG91ZHdhdGNoL3BvbGljeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBGQUEwRjtBQUUxRixzREFBa0U7QUFFbEUsb0RBQXVFO0FBQ3ZFLGdDQUF5RDtBQW9CekQ7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUNILE1BQWEsY0FBZSxTQUFRLGdDQUFnQjtJQUVsRCxJQUFXLE9BQU87UUFDaEIsT0FBTztZQUNMLGlEQUFpRDtZQUNqRCxFQUFFLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1NBQ3JCLENBQUM7SUFDSixDQUFDO0lBT0QsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxRQUE2QixFQUFFO1FBQ3ZFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3hCLE1BQU0sVUFBVSxHQUNkLEtBQUssQ0FBQyxrQkFBa0I7WUFDeEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUU7Z0JBQ2xDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUTthQUN0QixDQUFDLENBQUM7UUFFTCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksb0JBQWMsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLDBDQUEyQixDQUFDLDJCQUEyQixDQUN6RSxJQUFJLEVBQ0osVUFBVSxFQUNWO1lBQ0UsY0FBYyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSTtZQUNsQyxVQUFVO1NBQ1gsQ0FDRixDQUFDO1FBQ0YsSUFBSSxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3pELENBQUM7SUFDSCxDQUFDOztBQWxDSCx3Q0FtQ0MiLCJzb3VyY2VzQ29udGVudCI6WyIvL2h0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9ibG9iL3YyLjE3MC4wL3BhY2thZ2VzL2F3cy1jZGstbGliL2F3cy1sb2dzL2xpYi9wb2xpY3kudHNcblxuaW1wb3J0IHsgY2xvdWR3YXRjaExvZ1Jlc291cmNlUG9saWN5IH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1hd3NcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBBd3NDb25zdHJ1Y3RCYXNlLCBBd3NDb25zdHJ1Y3RQcm9wcyB9IGZyb20gXCIuLi9hd3MtY29uc3RydWN0XCI7XG5pbXBvcnQgeyBQb2xpY3lEb2N1bWVudCwgUG9saWN5U3RhdGVtZW50IH0gZnJvbSBcIi4uL2lhbVwiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgdG8gZGVmaW5lIENsb3Vkd2F0Y2ggbG9nIGdyb3VwIHJlc291cmNlIHBvbGljeVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc291cmNlUG9saWN5UHJvcHMgZXh0ZW5kcyBBd3NDb25zdHJ1Y3RQcm9wcyB7XG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBsb2cgZ3JvdXAgcmVzb3VyY2UgcG9saWN5XG4gICAqIEBkZWZhdWx0IC0gVXNlcyBhIHVuaXF1ZSBpZCBiYXNlZCBvbiB0aGUgY29uc3RydWN0IHBhdGhcbiAgICovXG4gIHJlYWRvbmx5IHJlc291cmNlUG9saWN5TmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogSW5pdGlhbCBzdGF0ZW1lbnRzIHRvIGFkZCB0byB0aGUgcmVzb3VyY2UgcG9saWN5XG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gc3RhdGVtZW50c1xuICAgKi9cbiAgcmVhZG9ubHkgcG9saWN5U3RhdGVtZW50cz86IFBvbGljeVN0YXRlbWVudFtdO1xufVxuXG4vKipcbiAqIFJlc291cmNlIFBvbGljeSBmb3IgQ2xvdWRXYXRjaCBMb2cgR3JvdXBzXG4gKlxuICogUG9saWNpZXMgZGVmaW5lIHRoZSBvcGVyYXRpb25zIHRoYXQgYXJlIGFsbG93ZWQgb24gdGhpcyByZXNvdXJjZS5cbiAqXG4gKiBZb3UgYWxtb3N0IG5ldmVyIG5lZWQgdG8gZGVmaW5lIHRoaXMgY29uc3RydWN0IGRpcmVjdGx5LlxuICpcbiAqIEFsbCBBV1MgcmVzb3VyY2VzIHRoYXQgc3VwcG9ydCByZXNvdXJjZSBwb2xpY2llcyBoYXZlIGEgbWV0aG9kIGNhbGxlZFxuICogYGFkZFRvUmVzb3VyY2VQb2xpY3koKWAsIHdoaWNoIHdpbGwgYXV0b21hdGljYWxseSBjcmVhdGUgYSBuZXcgcmVzb3VyY2VcbiAqIHBvbGljeSBpZiBvbmUgZG9lc24ndCBleGlzdCB5ZXQsIG90aGVyd2lzZSBpdCB3aWxsIGFkZCB0byB0aGUgZXhpc3RpbmdcbiAqIHBvbGljeS5cbiAqXG4gKiBQcmVmZXIgdG8gdXNlIGBhZGRUb1Jlc291cmNlUG9saWN5KClgIGluc3RlYWQuXG4gKi9cbmV4cG9ydCBjbGFzcyBSZXNvdXJjZVBvbGljeSBleHRlbmRzIEF3c0NvbnN0cnVjdEJhc2Uge1xuICBwdWJsaWMgcmVhZG9ubHkgcmVzb3VyY2U6IGNsb3Vkd2F0Y2hMb2dSZXNvdXJjZVBvbGljeS5DbG91ZHdhdGNoTG9nUmVzb3VyY2VQb2xpY3k7XG4gIHB1YmxpYyBnZXQgb3V0cHV0cygpOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHtcbiAgICByZXR1cm4ge1xuICAgICAgLy8gVGhlIG5hbWUgb2YgdGhlIENsb3VkV2F0Y2ggbG9nIHJlc291cmNlIHBvbGljeVxuICAgICAgaWQ6IHRoaXMucmVzb3VyY2UuaWQsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgSUFNIHBvbGljeSBkb2N1bWVudCBmb3IgdGhpcyByZXNvdXJjZSBwb2xpY3kuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZG9jdW1lbnQ6IFBvbGljeURvY3VtZW50O1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBSZXNvdXJjZVBvbGljeVByb3BzID0ge30pIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHByb3BzKTtcbiAgICBjb25zdCBwb2xpY3lOYW1lID1cbiAgICAgIHByb3BzLnJlc291cmNlUG9saWN5TmFtZSB8fFxuICAgICAgdGhpcy5zdGFjay51bmlxdWVSZXNvdXJjZU5hbWUodGhpcywge1xuICAgICAgICBwcmVmaXg6IHRoaXMuZ3JpZFVVSUQsXG4gICAgICB9KTtcblxuICAgIHRoaXMuZG9jdW1lbnQgPSBuZXcgUG9saWN5RG9jdW1lbnQodGhpcywgXCJQb2xpY3lcIik7XG4gICAgdGhpcy5yZXNvdXJjZSA9IG5ldyBjbG91ZHdhdGNoTG9nUmVzb3VyY2VQb2xpY3kuQ2xvdWR3YXRjaExvZ1Jlc291cmNlUG9saWN5KFxuICAgICAgdGhpcyxcbiAgICAgIFwiUmVzb3VyY2VcIixcbiAgICAgIHtcbiAgICAgICAgcG9saWN5RG9jdW1lbnQ6IHRoaXMuZG9jdW1lbnQuanNvbixcbiAgICAgICAgcG9saWN5TmFtZSxcbiAgICAgIH0sXG4gICAgKTtcbiAgICBpZiAocHJvcHM/LnBvbGljeVN0YXRlbWVudHMpIHtcbiAgICAgIHRoaXMuZG9jdW1lbnQuYWRkU3RhdGVtZW50cyguLi5wcm9wcy5wb2xpY3lTdGF0ZW1lbnRzKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,23 +1,22 @@
1
1
  "use strict";
2
2
  // https://github.com/aws/aws-cdk/blob/v2.170.0/packages/aws-cdk-lib/aws-cloudwatch/lib/private/env-tokens.ts
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.accountIfDifferentFromStack = exports.regionIfDifferentFromStack = void 0;
4
+ exports.regionIfDifferentFromStack = regionIfDifferentFromStack;
5
+ exports.accountIfDifferentFromStack = accountIfDifferentFromStack;
5
6
  const cdktf_1 = require("cdktf");
6
- const __1 = require("../../");
7
+ const aws_stack_1 = require("../../aws-stack");
7
8
  /**
8
9
  * Make a Token that renders to given region if used in a different stack, otherwise undefined
9
10
  */
10
11
  function regionIfDifferentFromStack(region) {
11
12
  return cdktf_1.Token.asString(new StackDependentToken(region, (stack) => stack.region));
12
13
  }
13
- exports.regionIfDifferentFromStack = regionIfDifferentFromStack;
14
14
  /**
15
15
  * Make a Token that renders to given account if used in a different stack, otherwise undefined
16
16
  */
17
17
  function accountIfDifferentFromStack(account) {
18
18
  return cdktf_1.Token.asString(new StackDependentToken(account, (stack) => stack.account));
19
19
  }
20
- exports.accountIfDifferentFromStack = accountIfDifferentFromStack;
21
20
  /**
22
21
  * A lazy token that requires an instance of Stack to evaluate
23
22
  */
@@ -30,7 +29,7 @@ class StackDependentToken {
30
29
  this.creationStack = ["stack traces disabled"];
31
30
  }
32
31
  resolve(context) {
33
- const stackValue = this.fn(__1.AwsStack.ofAwsConstruct(context.scope));
32
+ const stackValue = this.fn(aws_stack_1.AwsStack.ofAwsConstruct(context.scope));
34
33
  // Don't render if the values are definitely the same. If the stack
35
34
  // is unresolved we don't know, better output the value.
36
35
  if (!cdktf_1.Token.isUnresolved(stackValue) && stackValue === this.originalValue) {
@@ -45,4 +44,4 @@ class StackDependentToken {
45
44
  return this.originalValue;
46
45
  }
47
46
  }
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52LXRva2Vucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hd3MvY2xvdWR3YXRjaC9wcml2YXRlL2Vudi10b2tlbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDZHQUE2Rzs7O0FBRTdHLGlDQUE0RDtBQUM1RCw4QkFBa0M7QUFFbEM7O0dBRUc7QUFDSCxTQUFnQiwwQkFBMEIsQ0FBQyxNQUFjO0lBQ3ZELE9BQU8sYUFBSyxDQUFDLFFBQVEsQ0FDbkIsSUFBSSxtQkFBbUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FDekQsQ0FBQztBQUNKLENBQUM7QUFKRCxnRUFJQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsMkJBQTJCLENBQUMsT0FBZTtJQUN6RCxPQUFPLGFBQUssQ0FBQyxRQUFRLENBQ25CLElBQUksbUJBQW1CLENBQUMsT0FBTyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQzNELENBQUM7QUFDSixDQUFDO0FBSkQsa0VBSUM7QUFFRDs7R0FFRztBQUNILE1BQU0sbUJBQW1CO0lBRXZCLFlBQ21CLGFBQXFCLEVBQ3JCLEVBQStCO1FBRC9CLGtCQUFhLEdBQWIsYUFBYSxDQUFRO1FBQ3JCLE9BQUUsR0FBRixFQUFFLENBQTZCO1FBRWhELCtCQUErQjtRQUMvQixxR0FBcUc7UUFDckcsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVNLE9BQU8sQ0FBQyxPQUF3QjtRQUNyQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLFlBQVEsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFFbkUsbUVBQW1FO1FBQ25FLHdEQUF3RDtRQUN4RCxJQUFJLENBQUMsYUFBSyxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsSUFBSSxVQUFVLEtBQUssSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3pFLE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQUVNLFFBQVE7UUFDYixPQUFPLGFBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVNLE1BQU07UUFDWCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvdjIuMTcwLjAvcGFja2FnZXMvYXdzLWNkay1saWIvYXdzLWNsb3Vkd2F0Y2gvbGliL3ByaXZhdGUvZW52LXRva2Vucy50c1xuXG5pbXBvcnQgeyBUb2tlbiwgSVJlc29sdmFibGUsIElSZXNvbHZlQ29udGV4dCB9IGZyb20gXCJjZGt0ZlwiO1xuaW1wb3J0IHsgQXdzU3RhY2sgfSBmcm9tIFwiLi4vLi4vXCI7XG5cbi8qKlxuICogTWFrZSBhIFRva2VuIHRoYXQgcmVuZGVycyB0byBnaXZlbiByZWdpb24gaWYgdXNlZCBpbiBhIGRpZmZlcmVudCBzdGFjaywgb3RoZXJ3aXNlIHVuZGVmaW5lZFxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVnaW9uSWZEaWZmZXJlbnRGcm9tU3RhY2socmVnaW9uOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gVG9rZW4uYXNTdHJpbmcoXG4gICAgbmV3IFN0YWNrRGVwZW5kZW50VG9rZW4ocmVnaW9uLCAoc3RhY2spID0+IHN0YWNrLnJlZ2lvbiksXG4gICk7XG59XG5cbi8qKlxuICogTWFrZSBhIFRva2VuIHRoYXQgcmVuZGVycyB0byBnaXZlbiBhY2NvdW50IGlmIHVzZWQgaW4gYSBkaWZmZXJlbnQgc3RhY2ssIG90aGVyd2lzZSB1bmRlZmluZWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFjY291bnRJZkRpZmZlcmVudEZyb21TdGFjayhhY2NvdW50OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gVG9rZW4uYXNTdHJpbmcoXG4gICAgbmV3IFN0YWNrRGVwZW5kZW50VG9rZW4oYWNjb3VudCwgKHN0YWNrKSA9PiBzdGFjay5hY2NvdW50KSxcbiAgKTtcbn1cblxuLyoqXG4gKiBBIGxhenkgdG9rZW4gdGhhdCByZXF1aXJlcyBhbiBpbnN0YW5jZSBvZiBTdGFjayB0byBldmFsdWF0ZVxuICovXG5jbGFzcyBTdGFja0RlcGVuZGVudFRva2VuIGltcGxlbWVudHMgSVJlc29sdmFibGUge1xuICBwdWJsaWMgcmVhZG9ubHkgY3JlYXRpb25TdGFjazogc3RyaW5nW107XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgb3JpZ2luYWxWYWx1ZTogc3RyaW5nLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZm46IChzdGFjazogQXdzU3RhY2spID0+IHN0cmluZyxcbiAgKSB7XG4gICAgLy8gVE9ETzogSW1wbGVtZW50IHN0YWNrIHRyYWNlc1xuICAgIC8vIHJlZjogaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvdjIuMTQzLjAvcGFja2FnZXMvYXdzLWNkay1saWIvY29yZS9saWIvc3RhY2stdHJhY2UudHMjTDIyXG4gICAgdGhpcy5jcmVhdGlvblN0YWNrID0gW1wic3RhY2sgdHJhY2VzIGRpc2FibGVkXCJdO1xuICB9XG5cbiAgcHVibGljIHJlc29sdmUoY29udGV4dDogSVJlc29sdmVDb250ZXh0KSB7XG4gICAgY29uc3Qgc3RhY2tWYWx1ZSA9IHRoaXMuZm4oQXdzU3RhY2sub2ZBd3NDb25zdHJ1Y3QoY29udGV4dC5zY29wZSkpO1xuXG4gICAgLy8gRG9uJ3QgcmVuZGVyIGlmIHRoZSB2YWx1ZXMgYXJlIGRlZmluaXRlbHkgdGhlIHNhbWUuIElmIHRoZSBzdGFja1xuICAgIC8vIGlzIHVucmVzb2x2ZWQgd2UgZG9uJ3Qga25vdywgYmV0dGVyIG91dHB1dCB0aGUgdmFsdWUuXG4gICAgaWYgKCFUb2tlbi5pc1VucmVzb2x2ZWQoc3RhY2tWYWx1ZSkgJiYgc3RhY2tWYWx1ZSA9PT0gdGhpcy5vcmlnaW5hbFZhbHVlKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLm9yaWdpbmFsVmFsdWU7XG4gIH1cblxuICBwdWJsaWMgdG9TdHJpbmcoKSB7XG4gICAgcmV0dXJuIFRva2VuLmFzU3RyaW5nKHRoaXMpO1xuICB9XG5cbiAgcHVibGljIHRvSlNPTigpIHtcbiAgICByZXR1cm4gdGhpcy5vcmlnaW5hbFZhbHVlO1xuICB9XG59XG4iXX0=
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52LXRva2Vucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hd3MvY2xvdWR3YXRjaC9wcml2YXRlL2Vudi10b2tlbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDZHQUE2Rzs7QUFRN0csZ0VBSUM7QUFLRCxrRUFJQztBQW5CRCxpQ0FBNEQ7QUFDNUQsK0NBQTJDO0FBRTNDOztHQUVHO0FBQ0gsU0FBZ0IsMEJBQTBCLENBQUMsTUFBYztJQUN2RCxPQUFPLGFBQUssQ0FBQyxRQUFRLENBQ25CLElBQUksbUJBQW1CLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQ3pELENBQUM7QUFDSixDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQiwyQkFBMkIsQ0FBQyxPQUFlO0lBQ3pELE9BQU8sYUFBSyxDQUFDLFFBQVEsQ0FDbkIsSUFBSSxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FDM0QsQ0FBQztBQUNKLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sbUJBQW1CO0lBRXZCLFlBQ21CLGFBQXFCLEVBQ3JCLEVBQStCO1FBRC9CLGtCQUFhLEdBQWIsYUFBYSxDQUFRO1FBQ3JCLE9BQUUsR0FBRixFQUFFLENBQTZCO1FBRWhELCtCQUErQjtRQUMvQixxR0FBcUc7UUFDckcsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVNLE9BQU8sQ0FBQyxPQUF3QjtRQUNyQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLG9CQUFRLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBRW5FLG1FQUFtRTtRQUNuRSx3REFBd0Q7UUFDeEQsSUFBSSxDQUFDLGFBQUssQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLElBQUksVUFBVSxLQUFLLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUN6RSxPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFTSxRQUFRO1FBQ2IsT0FBTyxhQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFTSxNQUFNO1FBQ1gsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9ibG9iL3YyLjE3MC4wL3BhY2thZ2VzL2F3cy1jZGstbGliL2F3cy1jbG91ZHdhdGNoL2xpYi9wcml2YXRlL2Vudi10b2tlbnMudHNcblxuaW1wb3J0IHsgVG9rZW4sIElSZXNvbHZhYmxlLCBJUmVzb2x2ZUNvbnRleHQgfSBmcm9tIFwiY2RrdGZcIjtcbmltcG9ydCB7IEF3c1N0YWNrIH0gZnJvbSBcIi4uLy4uL2F3cy1zdGFja1wiO1xuXG4vKipcbiAqIE1ha2UgYSBUb2tlbiB0aGF0IHJlbmRlcnMgdG8gZ2l2ZW4gcmVnaW9uIGlmIHVzZWQgaW4gYSBkaWZmZXJlbnQgc3RhY2ssIG90aGVyd2lzZSB1bmRlZmluZWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lvbklmRGlmZmVyZW50RnJvbVN0YWNrKHJlZ2lvbjogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIFRva2VuLmFzU3RyaW5nKFxuICAgIG5ldyBTdGFja0RlcGVuZGVudFRva2VuKHJlZ2lvbiwgKHN0YWNrKSA9PiBzdGFjay5yZWdpb24pLFxuICApO1xufVxuXG4vKipcbiAqIE1ha2UgYSBUb2tlbiB0aGF0IHJlbmRlcnMgdG8gZ2l2ZW4gYWNjb3VudCBpZiB1c2VkIGluIGEgZGlmZmVyZW50IHN0YWNrLCBvdGhlcndpc2UgdW5kZWZpbmVkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhY2NvdW50SWZEaWZmZXJlbnRGcm9tU3RhY2soYWNjb3VudDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIFRva2VuLmFzU3RyaW5nKFxuICAgIG5ldyBTdGFja0RlcGVuZGVudFRva2VuKGFjY291bnQsIChzdGFjaykgPT4gc3RhY2suYWNjb3VudCksXG4gICk7XG59XG5cbi8qKlxuICogQSBsYXp5IHRva2VuIHRoYXQgcmVxdWlyZXMgYW4gaW5zdGFuY2Ugb2YgU3RhY2sgdG8gZXZhbHVhdGVcbiAqL1xuY2xhc3MgU3RhY2tEZXBlbmRlbnRUb2tlbiBpbXBsZW1lbnRzIElSZXNvbHZhYmxlIHtcbiAgcHVibGljIHJlYWRvbmx5IGNyZWF0aW9uU3RhY2s6IHN0cmluZ1tdO1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9yaWdpbmFsVmFsdWU6IHN0cmluZyxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZuOiAoc3RhY2s6IEF3c1N0YWNrKSA9PiBzdHJpbmcsXG4gICkge1xuICAgIC8vIFRPRE86IEltcGxlbWVudCBzdGFjayB0cmFjZXNcbiAgICAvLyByZWY6IGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9ibG9iL3YyLjE0My4wL3BhY2thZ2VzL2F3cy1jZGstbGliL2NvcmUvbGliL3N0YWNrLXRyYWNlLnRzI0wyMlxuICAgIHRoaXMuY3JlYXRpb25TdGFjayA9IFtcInN0YWNrIHRyYWNlcyBkaXNhYmxlZFwiXTtcbiAgfVxuXG4gIHB1YmxpYyByZXNvbHZlKGNvbnRleHQ6IElSZXNvbHZlQ29udGV4dCkge1xuICAgIGNvbnN0IHN0YWNrVmFsdWUgPSB0aGlzLmZuKEF3c1N0YWNrLm9mQXdzQ29uc3RydWN0KGNvbnRleHQuc2NvcGUpKTtcblxuICAgIC8vIERvbid0IHJlbmRlciBpZiB0aGUgdmFsdWVzIGFyZSBkZWZpbml0ZWx5IHRoZSBzYW1lLiBJZiB0aGUgc3RhY2tcbiAgICAvLyBpcyB1bnJlc29sdmVkIHdlIGRvbid0IGtub3csIGJldHRlciBvdXRwdXQgdGhlIHZhbHVlLlxuICAgIGlmICghVG9rZW4uaXNVbnJlc29sdmVkKHN0YWNrVmFsdWUpICYmIHN0YWNrVmFsdWUgPT09IHRoaXMub3JpZ2luYWxWYWx1ZSkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5vcmlnaW5hbFZhbHVlO1xuICB9XG5cbiAgcHVibGljIHRvU3RyaW5nKCkge1xuICAgIHJldHVybiBUb2tlbi5hc1N0cmluZyh0aGlzKTtcbiAgfVxuXG4gIHB1YmxpYyB0b0pTT04oKSB7XG4gICAgcmV0dXJuIHRoaXMub3JpZ2luYWxWYWx1ZTtcbiAgfVxufVxuIl19