@rio-cloud/cdk-v2-constructs 9.0.0-alpha.7 → 9.0.0-alpha.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/.jsii +883 -183
  2. package/README.md +65 -0
  3. package/docs/AGENTS_DOCUMENTATION.md +80 -14
  4. package/lib/backup/backup-policy.js +1 -1
  5. package/lib/certificate/cloud-front-certificate.js +1 -1
  6. package/lib/datadog/datadog-log-index-monitoring.js +3 -3
  7. package/lib/datadog/datadog-monitor.js +3 -3
  8. package/lib/datadogv2/datadog-dashboard.js +1 -1
  9. package/lib/datadogv2/datadog-lambda-instrumentation.js +4 -3
  10. package/lib/datadogv2/datadog-log-index-monitoring.js +1 -1
  11. package/lib/datadogv2/datadog-monitor.js +3 -3
  12. package/lib/datadogv2/datadog-notification.js +6 -6
  13. package/lib/datadogv2/datadog-service-catalog-entry.js +1 -1
  14. package/lib/datadogv2/datadog-shared-secrets.js +2 -2
  15. package/lib/datadogv2/datadog-slo.js +1 -1
  16. package/lib/ecr/docker-hub-pull-through-cache.js +1 -1
  17. package/lib/fargate/datadog.d.ts +4 -1
  18. package/lib/fargate/datadog.js +6 -3
  19. package/lib/fargate/rio-fargate-service-blue-green-alpha.js +7 -2
  20. package/lib/fargate/rio-fargate-service.d.ts +22 -1
  21. package/lib/fargate/rio-fargate-service.js +12 -3
  22. package/lib/fargate/trace-sampling.d.ts +87 -0
  23. package/lib/fargate/trace-sampling.js +123 -0
  24. package/lib/iam/sonatype-oss-index-credentials.js +1 -1
  25. package/lib/kafka/kafka-event-spec.js +2 -2
  26. package/lib/kafka/kafka-topic.js +4 -4
  27. package/lib/kafka/rio-kafka-event-source.js +1 -1
  28. package/lib/pipeline/delivery-performance-monitoring-override.js +1 -1
  29. package/lib/pipeline/rio-backup-secrets-restore-stage.js +1 -1
  30. package/lib/pipeline/rio-bitbucket-source-action.js +1 -1
  31. package/lib/pipeline/rio-pipeline-type.js +1 -1
  32. package/lib/rio-claidometer.js +2 -2
  33. package/lib/rio-landing-zone.js +1 -1
  34. package/lib/rio-load-balancer.js +1 -1
  35. package/lib/sbom-catalog/catalog-project.js +2 -2
  36. package/lib/ses/ses-observability.js +1 -1
  37. package/lib/test/normalized-test-template.js +1 -1
  38. package/lib/watchful/alb.js +1 -1
  39. package/lib/watchful/aspect.js +1 -1
  40. package/lib/watchful/cloudfront.js +1 -1
  41. package/lib/watchful/datadog-log-alarm.js +1 -1
  42. package/lib/watchful/datadog-metric-alarm.js +1 -1
  43. package/lib/watchful/docdb.js +1 -1
  44. package/lib/watchful/dynamodb.js +1 -1
  45. package/lib/watchful/ecs.js +1 -1
  46. package/lib/watchful/lambda.js +1 -1
  47. package/lib/watchful/rds.js +1 -1
  48. package/lib/watchful/targetgroup.js +1 -1
  49. package/lib/watchful/upperToLower.js +1 -1
  50. package/lib/watchful/watchful.js +4 -4
  51. package/lib/watchfulv2/watchful.js +1 -1
  52. package/package.json +1 -1
  53. package/version.json +1 -1
package/README.md CHANGED
@@ -28,6 +28,71 @@ $ npm install --save @rio-cloud/cdk-v2-constructs
28
28
 
29
29
  ## Constructs overview (Under construction...)
30
30
 
31
+ ### Fargate trace sampling
32
+
33
+ `RioFargateService` and `RioFargateServiceBlueGreenAlpha` configure Datadog
34
+ trace sampling through `datadogOptions.traceSampling`. The default is
35
+ `TraceSamplingMode.DEFAULT`: it sets `DD_APM_TARGET_TPS=5` and
36
+ `DD_APM_ERROR_TPS=10` on the Datadog Agent sidecar. This replaces the
37
+ historical application-level fixed rate of `DD_TRACE_SAMPLE_RATE=1.0`.
38
+ These settings apply per Agent; each Fargate task has its own Agent sidecar.
39
+
40
+ The head-sampling target is averaged over time, so traffic spikes can exceed
41
+ it. Error sampling captures additional local error trace chunks missed by
42
+ head sampling; it does not cap the total number of error traces ingested.
43
+
44
+ RIO uses target-per-second sampling as its default because it is appropriate
45
+ for both low- and high-traffic services: low-traffic services can retain all
46
+ their traces, while high-traffic services are sampled toward the target.
47
+
48
+ For Kotlin/Spring Boot services on Fargate it is recommended to use the
49
+ Datadog Java tracer, `dd-java-agent`, as a JVM agent. It automatically
50
+ instruments supported Spring Boot libraries and enables the Agent-side
51
+ target-per-second sampling configured by this construct.
52
+
53
+ Do not use the OpenTelemetry Java agent. The default tracing behavior for RIO
54
+ Fargate Services—`DD_APM_TARGET_TPS`—controls Datadog SDKs, not OTLP
55
+ ingestion. OpenTelemetry users must configure sampling in their own SDK and
56
+ maintain that integration separately.
57
+
58
+ - `DEFAULT` (or no option) emits the RIO Agent head-sampling target of 5
59
+ traces per second and an additional error-sampling budget of 10 error trace
60
+ chunks per second, per Agent (and therefore per running service instance).
61
+ This target-per-second approach is a practical default for both low- and
62
+ high-traffic services.
63
+ - `DATADOG_DEFAULT` emits no sampling variables, leaving Datadog's sampling
64
+ defaults in control.
65
+ - `FIXED_RATE` requires `fixedRate` (from 0 through 1) and emits a global
66
+ `DD_TRACE_SAMPLING_RULES` rule on the application container.
67
+ Datadog tracers additionally enforce their built-in 100-traces-per-second
68
+ rate limit when sampling rules are configured. This construct deliberately
69
+ does not expose or override that safeguard, so `fixedRate` is subject to
70
+ that per-instance upper bound on high-traffic services.
71
+ - `TARGET_PER_SECOND` requires `targetTracesPerSecond` and emits
72
+ `DD_APM_TARGET_TPS` on the Agent sidecar. This is an average head-sampling
73
+ target per Agent. Optional `errorTracesPerSecond` configures
74
+ `DD_APM_ERROR_TPS`, the budget for additional local error trace chunks per
75
+ second missed by head sampling.
76
+
77
+ For example:
78
+
79
+ ```ts
80
+ datadogOptions: {
81
+ traceSampling: {
82
+ mode: TraceSamplingMode.TARGET_PER_SECOND,
83
+ targetTracesPerSecond: 20,
84
+ errorTracesPerSecond: 10,
85
+ },
86
+ },
87
+ ```
88
+
89
+ `DD_TRACE_SAMPLING_RULES`, `DD_TRACE_SAMPLE_RATE`, `DD_APM_TARGET_TPS`, or
90
+ `DD_APM_ERROR_TPS` SHOULD not be set directly in
91
+ `containerDefinitionOption.environment`. Direct configuration remains possible
92
+ for backwards compatibility and produces a synthesis warning only.
93
+ Users who choose this approach are responsible for its configuration,
94
+ compatibility, and ongoing maintenance.
95
+
31
96
  ### Watchful
32
97
 
33
98
  Watchful constructs help generate some default monitors based on the resources defined in your stack. E.g. - If your stack contains a lambda function, and you configure watchful construct, then it will create out of box metric monitors for Throttling, Lambda error and Log error monitors. The ever-growing list of resources that watchful creates monitors for as of today are:
@@ -1,8 +1,8 @@
1
- # Agents Documentation for `@rio-cloud/cdk-v2-constructs`
1
+ # Agents Documentation for `@rio-cloud-internal/cdk-v2-constructs`
2
2
 
3
3
  ## Purpose
4
4
 
5
- Use this document as the entry point when an agent needs to understand or apply the npm package `@rio-cloud/cdk-v2-constructs` from an installed project. Prefer package-owned documentation in `.d.ts` files and generated type artifacts over memory or guesses.
5
+ Use this document as the entry point when an agent needs to understand or apply the npm package `@rio-cloud-internal/cdk-v2-constructs` from an installed project. Prefer package-owned documentation in `.d.ts` files and generated type artifacts over memory or guesses.
6
6
 
7
7
  This package provides RIO-specific AWS CDK v2 constructs and helpers for:
8
8
 
@@ -26,7 +26,73 @@ Use `lib/**/*.d.ts` for generated type information and JSDoc-derived annotations
26
26
 
27
27
  ## Import And Edit Workflow
28
28
 
29
- Prefer `import * as rio from '@rio-cloud/cdk-v2-constructs';` unless an exported subpath is explicitly available in the installed `package.json`.
29
+ Prefer `import * as rio from '@rio-cloud-internal/cdk-v2-constructs';` unless an exported subpath is explicitly available in the installed `package.json`.
30
+
31
+ ## Breaking migration to the internal npm namespace
32
+
33
+ Starting with `9.0.0`, this package is published as
34
+ `@rio-cloud-internal/cdk-v2-constructs` in the RIO CodeArtifact `internal`
35
+ repository. This is a package and installation breaking change for consumers:
36
+
37
+ - Replace the dependency and every import/subpath reference from
38
+ `@rio-cloud/cdk-v2-constructs` with `@rio-cloud-internal/cdk-v2-constructs`.
39
+ Preserve any subpath after the package name.
40
+ - Authenticate npm before installing dependencies. Run the login command in
41
+ the consuming workspace before `npm ci` or `npm install`:
42
+
43
+ ```bash
44
+ aws codeartifact login --region eu-west-1 --tool npm --domain rio \
45
+ --domain-owner 577146897785 --repository internal \
46
+ --namespace @rio-cloud-internal
47
+ npm ci
48
+ ```
49
+
50
+ - In CodeBuild or CodePipeline, run the same login command immediately before
51
+ the dependency installation in every relevant synth, branch, and auxiliary
52
+ build step. The build role must be allowed to call
53
+ `codeartifact:GetAuthorizationToken`, `codeartifact:GetRepositoryEndpoint`,
54
+ `codeartifact:ReadFromRepository`, and
55
+ `sts:GetServiceBearerToken` for the RIO `internal` repository. Do not commit
56
+ the generated npm credentials or an authentication token.
57
+
58
+ For a CDK `CodeBuildStep`, the relevant permissions are equivalent to:
59
+
60
+ ```typescript
61
+ new iam.PolicyStatement({
62
+ actions: ['codeartifact:GetAuthorizationToken'],
63
+ resources: ['arn:aws:codeartifact:eu-west-1:577146897785:domain/rio'],
64
+ });
65
+ new iam.PolicyStatement({
66
+ actions: ['sts:GetServiceBearerToken'],
67
+ resources: ['*'],
68
+ conditions: {
69
+ StringEquals: { 'sts:AWSServiceName': 'codeartifact.amazonaws.com' },
70
+ },
71
+ });
72
+ new iam.PolicyStatement({
73
+ actions: ['codeartifact:GetRepositoryEndpoint', 'codeartifact:ReadFromRepository'],
74
+ resources: ['arn:aws:codeartifact:eu-west-1:577146897785:repository/rio/internal'],
75
+ });
76
+ ```
77
+
78
+ Ensure these statements are attached to the actual CodeBuild synth or build
79
+ role. Adding only the npm login command is insufficient.
80
+ - Regenerate the lockfile after authenticating. Do not reuse the integrity hash
81
+ from the public npm tarball when the resolved URL changes to CodeArtifact.
82
+
83
+ For example, the package dependency and root import change as follows:
84
+
85
+ ```diff
86
+ -"@rio-cloud/cdk-v2-constructs": "..."
87
+ +"@rio-cloud-internal/cdk-v2-constructs": "..."
88
+
89
+ -import * as rio from '@rio-cloud/cdk-v2-constructs';
90
+ +import * as rio from '@rio-cloud-internal/cdk-v2-constructs';
91
+ ```
92
+
93
+ The old public package name is not an alias for the internal package. A
94
+ consumer that keeps the old name, or runs `npm ci` before CodeArtifact login,
95
+ will fail to resolve the migrated package.
30
96
 
31
97
  Read the relevant declaration comments and examples before writing or changing infrastructure code.
32
98
 
@@ -105,7 +171,7 @@ on the test `App` to either boolean `false` or string `"false"`:
105
171
  ```typescript
106
172
  const app = new App({
107
173
  context: {
108
- '@rio-cloud/cdk-v2-constructs:enableSourceCodeIntegration': false,
174
+ '@rio-cloud-internal/cdk-v2-constructs:enableSourceCodeIntegration': false,
109
175
  },
110
176
  });
111
177
  ```
@@ -147,20 +213,20 @@ guidance](https://confluence.collaboration-man.com/spaces/RIOSHIPPER/pages/44892
147
213
  Contribution constructs are no longer exported from the package root. Use the
148
214
  owner-level subpaths that are present in the installed package's `exports` map:
149
215
 
150
- | Owner | Public import path in `9.0.0` |
216
+ | Owner | Internal import path in `9.0.0` |
151
217
  | --- | --- |
152
- | Team Claid | `@rio-cloud/cdk-v2-constructs/contributions/team-claid` |
153
- | Team Outbound Order Book | `@rio-cloud/cdk-v2-constructs/contributions/team-outbound-order-book` |
154
- | Team Shipper Inbound Blue | `@rio-cloud/cdk-v2-constructs/contributions/team-shipper-inbound-blue` |
155
- | Smart Route / GitLab Runner | `@rio-cloud/cdk-v2-constructs/contributions/smart-route` |
156
- | Team Transport | `@rio-cloud/cdk-v2-constructs/contributions/team-transport` |
157
- | CoP Frontend | `@rio-cloud/cdk-v2-constructs/contributions/cop-frontend` |
218
+ | Team Claid | `@rio-cloud-internal/cdk-v2-constructs/contributions/team-claid` |
219
+ | Team Outbound Order Book | `@rio-cloud-internal/cdk-v2-constructs/contributions/team-outbound-order-book` |
220
+ | Team Shipper Inbound Blue | `@rio-cloud-internal/cdk-v2-constructs/contributions/team-shipper-inbound-blue` |
221
+ | Smart Route / GitLab Runner | `@rio-cloud-internal/cdk-v2-constructs/contributions/smart-route` |
222
+ | Team Transport | `@rio-cloud-internal/cdk-v2-constructs/contributions/team-transport` |
223
+ | CoP Frontend | `@rio-cloud-internal/cdk-v2-constructs/contributions/cop-frontend` |
158
224
 
159
225
  For example, change a root import while keeping the named imports:
160
226
 
161
227
  ```diff
162
- -import { PipelineStack, PipelineType } from '@rio-cloud/cdk-v2-constructs';
163
- +import { PipelineStack, PipelineType } from '@rio-cloud/cdk-v2-constructs/contributions/team-transport';
228
+ -import { PipelineStack, PipelineType } from '@rio-cloud-internal/cdk-v2-constructs';
229
+ +import { PipelineStack, PipelineType } from '@rio-cloud-internal/cdk-v2-constructs/contributions/team-transport';
164
230
  ```
165
231
 
166
232
  Team Transport was renamed from `team-transport-two` to `team-transport`.
@@ -224,7 +290,7 @@ DNS-validated ACM certificate in `us-east-1` for a stack in any region and
224
290
  requires a public Route 53 hosted zone in the same account:
225
291
 
226
292
  ```typescript
227
- import { CloudFrontCertificate } from '@rio-cloud/cdk-v2-constructs';
293
+ import { CloudFrontCertificate } from '@rio-cloud-internal/cdk-v2-constructs';
228
294
  import { Distribution } from 'aws-cdk-lib/aws-cloudfront';
229
295
 
230
296
  const certificate = new CloudFrontCertificate(this, 'CloudFrontCertificate', {
@@ -31,5 +31,5 @@ class BackupPolicy {
31
31
  }
32
32
  exports.BackupPolicy = BackupPolicy;
33
33
  _a = JSII_RTTI_SYMBOL_1;
34
- BackupPolicy[_a] = { fqn: "@rio-cloud/cdk-v2-constructs.BackupPolicy", version: "0.0.0" };
34
+ BackupPolicy[_a] = { fqn: "@rio-cloud-internal/cdk-v2-constructs.BackupPolicy", version: "0.0.0" };
35
35
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja3VwLXBvbGljeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9iYWNrdXAvYmFja3VwLXBvbGljeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQUFtQztBQUduQzs7R0FFRztBQUNILElBQVksV0FJWDtBQUpELFdBQVksV0FBVztJQUNyQiwwQkFBVyxDQUFBO0lBQ1gsZ0NBQWlCLENBQUE7SUFDakIsNEJBQWEsQ0FBQTtBQUNmLENBQUMsRUFKVyxXQUFXLDJCQUFYLFdBQVcsUUFJdEI7QUFFRDs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBYSxZQUFZO0lBQ3ZCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBa0IsRUFBRSxXQUF3QjtRQUN2RCxrQkFBSSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsaUNBQWlDLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDdEUsQ0FBQzs7QUFISCxvQ0FJQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRhZ3MgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgdHlwZSB7IElDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuLyoqXG4gKiBUaGUgYWxsb3dlZCB2YWx1ZXMgZm9yIGJhY2t1cCBjcml0aWNhbGl0eSBsZXZlbHNcbiAqL1xuZXhwb3J0IGVudW0gQ3JpdGljYWxpdHkge1xuICBMT1cgPSAnbG93JyxcbiAgTUVESVVNID0gJ21lZGl1bScsXG4gIEhJR0ggPSAnaGlnaCcsXG59XG5cbi8qKlxuICogSGVscGVyIGZ1bmN0aW9uIHRvIHRhZyBjb25zdHJ1Y3RzIHdpdGggY29ycmVjdCBiYWNrdXAgdmFsdWVzIHRvIGJlIHBpY2tlZFxuICogdXAgYnkgdGhlIHJpbyBsYW5kaW5nIHpvbmUgYmFja3VwIHNvbHV0aW9uLlxuICpcbiAqIEFwcGx5IHRoaXMgdG8gc3RhdGVmdWwgcmVzb3VyY2VzIHRoYXQgbXVzdCBiZSBkaXNjb3ZlcmVkIGJ5IHRoZSBSSU8gbGFuZGluZy16b25lIGJhY2t1cCBzb2x1dGlvbi5cbiAqXG4gKiBFeGFtcGxlOlxuICogYGBgdHNcbiAqIEJhY2t1cFBvbGljeS5hcHBseSh0YWJsZSwgQ3JpdGljYWxpdHkuSElHSCk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIEJhY2t1cFBvbGljeSB7XG4gIHN0YXRpYyBhcHBseSh0YXJnZXQ6IElDb25zdHJ1Y3QsIGNyaXRpY2FsaXR5OiBDcml0aWNhbGl0eSkge1xuICAgIFRhZ3Mub2YodGFyZ2V0KS5hZGQoJ3Jpby1sei1iYWNrdXAtY3JpdGljYWxpdHktbGV2ZWwnLCBjcml0aWNhbGl0eSk7XG4gIH1cbn1cbiJdfQ==
@@ -53,7 +53,7 @@ class CloudFrontCertificate extends constructs_1.Construct {
53
53
  }
54
54
  exports.CloudFrontCertificate = CloudFrontCertificate;
55
55
  _a = JSII_RTTI_SYMBOL_1;
56
- CloudFrontCertificate[_a] = { fqn: "@rio-cloud/cdk-v2-constructs.CloudFrontCertificate", version: "0.0.0" };
56
+ CloudFrontCertificate[_a] = { fqn: "@rio-cloud-internal/cdk-v2-constructs.CloudFrontCertificate", version: "0.0.0" };
57
57
  function certificateProvider(stack) {
58
58
  const providerId = 'CloudFrontCertificateProvider';
59
59
  const existing = stack.node.tryFindChild(providerId);
@@ -24,7 +24,7 @@ class DatadogLogIndexMonitoring extends constructs_1.Construct {
24
24
  new DatadogLogDailyQuotaMonitor(this, 'DatadogLogDailyQuotaMonitor', props);
25
25
  new DatadogLogsAnomalyMonitor(this, 'DatadogLogAlertAnomalyMonitor', props);
26
26
  new DatadogLogDailyQuotaReachedMonitor(this, 'DatadogLogDailyQuotaReachedV2Monitor', props);
27
- aws_cdk_lib_1.Annotations.of(scope).addDeprecation('@rio-cloud/cdk-v2-constructs.DatadogLogIndexMonitoring', 'DatadogLogIndexMonitoring deprecated! Please use datadogv2 DatadogLogIndexMonitoring instead');
27
+ aws_cdk_lib_1.Annotations.of(scope).addDeprecation('@rio-cloud-internal/cdk-v2-constructs.DatadogLogIndexMonitoring', 'DatadogLogIndexMonitoring deprecated! Please use datadogv2 DatadogLogIndexMonitoring instead');
28
28
  this.node.addValidation({
29
29
  validate: () => {
30
30
  const result = [];
@@ -44,7 +44,7 @@ class DatadogLogIndexMonitoring extends constructs_1.Construct {
44
44
  }
45
45
  exports.DatadogLogIndexMonitoring = DatadogLogIndexMonitoring;
46
46
  _a = JSII_RTTI_SYMBOL_1;
47
- DatadogLogIndexMonitoring[_a] = { fqn: "@rio-cloud/cdk-v2-constructs.DatadogLogIndexMonitoring", version: "0.0.0" };
47
+ DatadogLogIndexMonitoring[_a] = { fqn: "@rio-cloud-internal/cdk-v2-constructs.DatadogLogIndexMonitoring", version: "0.0.0" };
48
48
  const commonMonitorNamePrefix = (indexName) => `'${indexName}' index`;
49
49
  const commonTags = (indexName) => [`logIndex:${indexName}`];
50
50
  class DatadogLogDailyQuotaMonitor extends datadog_monitor_1.DatadogMonitor {
@@ -134,4 +134,4 @@ function datadogLogsSearchWithIndexFilterDeepLink(indexName, organization) {
134
134
  function datadogLogsIndexesConfigurationDeepLink(organization) {
135
135
  return `https://${getOrganizationUrlPrefix(organization)}.datadoghq.eu/logs/pipelines/indexes`;
136
136
  }
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZy1sb2ctaW5kZXgtbW9uaXRvcmluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhZG9nL2RhdGFkb2ctbG9nLWluZGV4LW1vbml0b3JpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQTJMQSw0REFTQzs7QUFwTUQsNkNBQTBDO0FBQzFDLDJDQUF1QztBQUN2Qyx1REFBMEU7QUF3RDFFOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFhLHlCQUEwQixTQUFRLHNCQUFTO0lBQ3RELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBcUM7UUFDN0UsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLDJCQUEyQixDQUFDLElBQUksRUFBRSw2QkFBNkIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1RSxJQUFJLHlCQUF5QixDQUFDLElBQUksRUFBRSwrQkFBK0IsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1RSxJQUFJLGtDQUFrQyxDQUFDLElBQUksRUFBRSxzQ0FBc0MsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1Rix5QkFBVyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxjQUFjLENBQ2xDLHdEQUF3RCxFQUN4RCw4RkFBOEYsQ0FDL0YsQ0FBQztRQUVGLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO1lBQ3RCLFFBQVEsRUFBRSxHQUFhLEVBQUU7Z0JBQ3ZCLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQztnQkFDbEIsSUFBSSxLQUFLLENBQUMsYUFBYSxDQUFDLHlCQUF5QixHQUFHLENBQUMsSUFBSSxLQUFLLENBQUMsYUFBYSxDQUFDLHlCQUF5QixHQUFHLEdBQUcsRUFBRSxDQUFDO29CQUM3RyxNQUFNLENBQUMsSUFBSSxDQUFDLDJFQUEyRSxDQUFDLENBQUM7Z0JBQzNGLENBQUM7Z0JBQ0QsSUFBSSxLQUFLLENBQUMsYUFBYSxDQUFDLHVCQUF1QixHQUFHLENB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O1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBSUQsU0FBZ0Isd0JBQXdCLENBQUMsWUFBNkM7SUFDcEYsUUFBUSxZQUFZLElBQUksSUFBSSxFQUFFLENBQUM7UUFDN0IsS0FBSyxJQUFJO1lBQ1AsT0FBTyxLQUFLLENBQUM7UUFDZixLQUFLLE9BQU87WUFDVixPQUFPLFlBQVksQ0FBQztRQUN0QixLQUFLLGNBQWM7WUFDakIsT0FBTyxpQkFBaUIsQ0FBQztJQUM3QixDQUFDO0FBQ0gsQ0FBQztBQUVELFNBQVMsd0NBQXdDLENBQUMsU0FBaUIsRUFBRSxZQUE2QztJQUNoSCxPQUFPLFdBQVcsd0JBQXdCLENBQUMsWUFBWSxDQUFDLDRCQUE0QixTQUFTLEVBQUUsQ0FBQztBQUNsRyxDQUFDO0FBRUQsU0FBUyx1Q0FBdUMsQ0FBQyxZQUE2QztJQUM1RixPQUFPLFdBQVcsd0JBQXdCLENBQUMsWUFBWSxDQUFDLHNDQUFzQyxDQUFDO0FBQ2pHLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbm5vdGF0aW9ucyB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgdHlwZSBEYXRhZG9nQWxlcnRUeXBlLCBEYXRhZG9nTW9uaXRvciB9IGZyb20gJy4vZGF0YWRvZy1tb25pdG9yJztcblxuZXhwb3J0IGludGVyZmFjZSBEYXRhZG9nTG9nSW5kZXhNb25pdG9yaW5nUHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgeW91ciBzZXJ2aWNlIGluIERhdGFkb2cuIENhbiBiZSB1c2VkIHRvIHF1ZXJ5IHRoZSBtb25pdG9ycy5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBEYXRhZG9nIGluZGV4LlxuICAgKi9cbiAgcmVhZG9ubHkgaW5kZXhOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBpbnRlZ3JhdGlvbiB0byB1c2UgZm9yIGFsZXJ0aW5nLlxuICAgKiBGb3IgT3BzR2VuaWUsIHlvdSBuZWVkIHRvIGluc3RhbGwgYW5kIGNvbmZpZ3VyZSB0aGUgJ29wc2dlbmllLWludGVncmF0aW9uJyBhY2NvdW50IG1vZHVsZS5cbiAgICovXG4gIHJlYWRvbmx5IGFsZXJ0VHlwZTogRGF0YWRvZ0FsZXJ0VHlwZTtcblxuICAvKipcbiAgICogVGhlIGRhaWx5IGxvZyBxdW90YSBzZXR0aW5ncy5cbiAgICovXG4gIHJlYWRvbmx5IGRhaWx5TG9nUXVvdGE6IERhdGFkb2dMb2dRdW90YVByb3BzO1xuXG4gIC8qKlxuICAgKiBUaGlzIHZhbHVlIHNob3VsZCBiZSB1c2VkIGlmIHRoZXJlIGlzIG5vIGxvZyBtZXNzYWdlIHdpdGhpbiAyNCBob3VycyBvciBtaXNzaW5nIGhpc3RvcmljYWwgZGF0YS5cbiAgICogV2l0aG91dCBzZXR0aW5nIHRoaXMgdmFsdWUgaXQgd2lsbCBsZWFkIHRvIGFuIGVtcHR5IHJlc3VsdCBhbmQgdGhlcmVmb3JlIHRyaWdnZXIgYW4gYWxlcnQuXG4gICAqIEBkZWZhdWx0VmFsdWUgLSBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgc3BhcnNlTG9nZ2luZz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBEYXRhZG9nIG9yZ2FuaXphdGlvbiwgZS5nLiwgJ0VVJyBvciAnTEFUQU0nXG4gICAqIEBkZWZhdWx0VmFsdWUgLSAnRVUnXG4gICAqL1xuICByZWFkb25seSBvcmdhbml6YXRpb24/OiBEYXRhZG9nT3JnYW5pemF0aW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERhdGFkb2dMb2dRdW90YVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBkYWlseSBsb2cgcXVvdGEgZm9yIHRoZSB0ZWFtLXNwZWNpZmljIGluZGV4IGluIG1pbGxpb24gZXZlbnRzLlxuICAgKi9cbiAgcmVhZG9ubHkgdmFsdWVJbk1pbGxpb25FdmVudHM6IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIHdhcm5pbmcgdGhyZXNob2xkIGZvciB0aGUgZGFpbHkgbG9nIHF1b3RhIG1vbml0b3IgaW4gcGVyY2VudC5cbiAgICovXG4gIHJlYWRvbmx5IHdhcm5pbmdUaHJlc2hvbGRJblBlcmNlbnQ6IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIGFsYXJtIHRocmVzaG9sZCBmb3IgdGhlIGRhaWx5IGxvZyBxdW90YSBtb25pdG9yIGluIHBlcmNlbnQuXG4gICAqIFRoZSB2YWx1ZSBtdXN0IGJlIGJldHdlZW4gMCBhbmQgMTAwIGFuZCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gdGhlIHdhcm5pbmcgdGhyZXNob2xkLlxuICAgKi9cbiAgcmVhZG9ubHkgYWxlcnRUaHJlc2hvbGRJblBlcmNlbnQ6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBCYXNpYyBtb25pdG9yaW5nIGFuZCBhbGVydGluZyBmb3IgYSBEYXRhZG9nIGxvZ3MgaW5kZXguXG4gKiBJdCBmb2xsb3dzIHRoZSBEYXRhZG9nIGd1aWRlIGF0IGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL2xvZ3MvZ3VpZGUvbG9ncy1tb25pdG9ycy1vbi12b2x1bWVzL1xuICogYW5kIGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgdGhyZWUgbW9uaXRvcnMuXG4gKiAgIDEuIEEgbWV0cmljIGFsZXJ0IHRoYXQgZmlyZXMgd2hlbiB5b3UgcmVhY2ggYSBjZXJ0YWluIHRocmVzaG9sZCBvZiB5b3VyIGRhaWx5IGxvZyBxdW90YS5cbiAqICAgMi4gQW4gYW5vbWFseSBtb25pdG9yIHRoYXQgZGV0ZWN0cyBsb2cgYW1vdW50IHNwaWtlcy5cbiAqICAgMy4gQW4gZXZlbnQgYWxlcnQgdGhhdCBmaXJlcyB3aGVuIHlvdSBoaXQgdGhlIGRhaWx5IGxvZyBxdW90YS5cbiAqXG4gKiBBIGRhdGFkb2cgbG9nIGluZGV4IGlzIHRlYW0gc3BlY2lmaWMgYW5kIHRodXMgdGhlIG1vbml0b3IgbmVlZHMgdG8gYmUgZGVwbG95ZWQganVzdCBvbmNlIHBlciBpbmRleC90ZWFtLlxuICogQGRlcHJlY2F0ZWQgUGxlYXNlIHVzZSBkYXRhZG9ndjIgRGF0YWRvZ0xvZ0luZGV4TW9uaXRvcmluZyBpbnN0ZWFkXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRhZG9nTG9nSW5kZXhNb25pdG9yaW5nIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IERhdGFkb2dMb2dJbmRleE1vbml0b3JpbmdQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBuZXcgRGF0YWRvZ0xvZ0RhaWx5UXVvdGFNb25pdG9yKHRoaXMsICdEYXRhZG9nTG9nRGFpbHlRdW90YU1vbml0b3InLCBwcm9wcyk7XG4gICAgbmV3IERhdGFkb2dMb2dzQW5vbWFseU1vbml0b3IodGhpcywgJ0RhdGFkb2dMb2dBbGVydEFub21hbHlNb25pdG9yJywgcHJvcHMpO1xuICAgIG5ldyBEYXRhZG9nTG9nRGFpbHlRdW90YVJlYWNoZWRNb25pdG9yKHRoaXMsICdEYXRhZG9nTG9nRGFpbHlRdW90YVJlYWNoZWRWMk1vbml0b3InLCBwcm9wcyk7XG4gICAgQW5ub3RhdGlvbnMub2Yoc2NvcGUpLmFkZERlcHJlY2F0aW9uKFxuICAgICAgJ0ByaW8tY2xvdWQvY2RrLXYyLWNvbnN0cnVjdHMuRGF0YWRvZ0xvZ0luZGV4TW9uaXRvcmluZycsXG4gICAgICAnRGF0YWRvZ0xvZ0luZGV4TW9uaXRvcmluZyBkZXByZWNhdGVkISBQbGVhc2UgdXNlIGRhdGFkb2d2MiBEYXRhZG9nTG9nSW5kZXhNb25pdG9yaW5nIGluc3RlYWQnXG4gICAgKTtcblxuICAgIHRoaXMubm9kZS5hZGRWYWxpZGF0aW9uKHtcbiAgICAgIHZhbGlkYXRlOiAoKTogc3RyaW5nW10gPT4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBbXTtcbiAgICAgICAgaWYgKHByb3BzLmRhaWx5TG9nUXVvdGEud2FybmluZ1RocmVzaG9sZEluUGVyY2VudCA8IDAgfHwgcHJvcHMuZGFpbHlMb2dRdW90YS53YXJuaW5nVGhyZXNob2xkSW5QZXJjZW50ID4gMTAwKSB7XG4gICAgICAgICAgcmVzdWx0LnB1c2goJ0ludmFsaWQgW3dhcm5pbmdUaHJlc2hvbGRJblBlcmNlbnRdOiBleHBlY3RpbmcgYSBudW1iZXIgYmV0d2VlbiAwIGFuZCAxMDAnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAocHJvcHMuZGFpbHlMb2dRdW90YS5hbGVydFRocmVzaG9sZEluUGVyY2VudCA8IDAgfHwgcHJvcHMuZGFpbHlMb2dRdW90YS5hbGVydFRocmVzaG9sZEluUGVyY2VudCA+IDEwMCkge1xuICAgICAgICAgIHJlc3VsdC5wdXNoKCdJbnZhbGlkIFthbGVydFRocmVzaG9sZEluUGVyY2VudF06IGV4cGVjdGluZyBhIG51bWJlciBiZXR3ZWVuIDAgYW5kIDEwMCcpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChwcm9wcy5kYWlseUxvZ1F1b3RhLmFsZXJ0VGhyZXNob2xkSW5QZXJjZW50IDwgcHJvcHMuZGFpbHlMb2dRdW90YS53YXJuaW5nVGhyZXNob2xkSW5QZXJjZW50KSB7XG4gICAgICAgICAgcmVzdWx0LnB1c2goXG4gICAgICAgICAgICAnSW52YWxpZCBbYWxlcnRUaHJlc2hvbGRJblBlcmNlbnRdOiBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byBbd2FybmluZ1RocmVzaG9sZEluUGVyY2VudF0nXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxufVxuXG5jb25zdCBjb21tb25Nb25pdG9yTmFtZVByZWZpeCA9IChpbmRleE5hbWU6IHN0cmluZykgPT4gYCcke2luZGV4TmFtZX0nIGluZGV4YDtcbmNvbnN0IGNvbW1vblRhZ3MgPSAoaW5kZXhOYW1lOiBzdHJpbmcpID0+IFtgbG9nSW5kZXg6JHtpbmRleE5hbWV9YF07XG5cbmNsYXNzIERhdGFkb2dMb2dEYWlseVF1b3RhTW9uaXRvciBleHRlbmRzIERhdGFkb2dNb25pdG9yIHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IERhdGFkb2dMb2dJbmRleE1vbml0b3JpbmdQcm9wcykge1xuICAgIGNvbnN0IGxvZ1F1b3RhSW5FdmVudHMgPSBNYXRoLmZsb29yKHByb3BzLmRhaWx5TG9nUXVvdGEudmFsdWVJbk1pbGxpb25FdmVudHMgKiAxXzAwMF8wMDApO1xuICAgIGNvbnN0IHdhcm5pbmdUaHJlc2hvbGQgPSBNYXRoLmZsb29yKGxvZ1F1b3RhSW5FdmVudHMgKiAocHJvcHMuZGFpbHlMb2dRdW90YS53YXJuaW5nVGhyZXNob2xkSW5QZXJjZW50IC8gMTAwKSk7XG4gICAgY29uc3QgYWxlcnRUaHJlc2hvbGQgPSBNYXRoLmZsb29yKGxvZ1F1b3RhSW5FdmVudHMgKiAocHJvcHMuZGFpbHlMb2dRdW90YS5hbGVydFRocmVzaG9sZEluUGVyY2VudCAvIDEwMCkpO1xuXG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICBzZXJ2aWNlTmFtZTogcHJvcHMuc2VydmljZU5hbWUsXG4gICAgICBhbGVydFR5cGVzOiBbcHJvcHMuYWxlcnRUeXBlXSxcbiAgICAgIG1vbml0b3I6IHtcbiAgICAgICAgbmFtZTogYCR7Y29tbW9uTW9uaXRvck5hbWVQcmVmaXgocHJvcHMuaW5kZXhOYW1lKX06IExvZyBxdW90YSBhbG1vc3QgcmVhY2hlZGAsXG4gICAgICAgIHR5cGU6ICdtZXRyaWMgYWxlcnQnLFxuICAgICAgICBxdWVyeTogYHN1bShsYXN0XzFkKTpzdW06ZGF0YWRvZy5lc3RpbWF0ZWRfdXNhZ2UubG9ncy5pbmdlc3RlZF9ldmVudHN7ZGF0YWRvZ19pc19leGNsdWRlZDpmYWxzZSxkYXRhZG9nX2luZGV4OiR7cHJvcHMuaW5kZXhOYW1lfX0uYXNfY291bnQoKSA+PSAke2FsZXJ0VGhyZXNob2xkfWAsXG4gICAgICAgIG1lc3NhZ2U6IGBbUDNdIEluc3BlY3QgeW91ciBsb2cgdm9sdW1lIGF0ICR7ZGF0YWRvZ0xvZ3NTZWFyY2hXaXRoSW5kZXhGaWx0ZXJEZWVwTGluayhcbiAgICAgICAgICBwcm9wcy5pbmRleE5hbWUsXG4gICAgICAgICAgcHJvcHMub3JnYW5pemF0aW9uXG4gICAgICAgICl9IG9yIGFkYXB0IHRoZSBsb2cgcXVvdGEgYXQgJHtkYXRhZG9nTG9nc0luZGV4ZXNDb25maWd1cmF0aW9uRGVlcExpbmsocHJvcHMub3JnYW5pemF0aW9uKX1gLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgdGhyZXNob2xkczoge1xuICAgICAgICAgICAgY3JpdGljYWw6IGFsZXJ0VGhyZXNob2xkLFxuICAgICAgICAgICAgd2FybmluZzogd2FybmluZ1RocmVzaG9sZCxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGluY2x1ZGVfdGFnczogZmFsc2UsXG4gICAgICAgICAgbm90aWZ5X25vX2RhdGE6ICFwcm9wcy5zcGFyc2VMb2dnaW5nLFxuICAgICAgICAgIG5vX2RhdGFfdGltZWZyYW1lOiAyNCAqIDYwLCAvLyAxIGRheVxuICAgICAgICB9LFxuICAgICAgICB0YWdzOiBbLi4uY29tbW9uVGFncyhwcm9wcy5pbmRleE5hbWUpXSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cblxuY2xhc3MgRGF0YWRvZ0xvZ3NBbm9tYWx5TW9uaXRvciBleHRlbmRzIERhdGFkb2dNb25pdG9yIHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IERhdGFkb2dMb2dJbmRleE1vbml0b3JpbmdQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgc2VydmljZU5hbWU6IHByb3BzLnNlcnZpY2VOYW1lLFxuICAgICAgYWxlcnRUeXBlczogW3Byb3BzLmFsZXJ0VHlwZV0sXG4gICAgICBtb25pdG9yOiB7XG4gICAgICAgIG5hbWU6IGAke2NvbW1vbk1vbml0b3JOYW1lUHJlZml4KHByb3BzLmluZGV4TmFtZSl9OiBMb2cgYW1vdW50IGlzIHJpc2luZyB0byB1bmV4cGVjdGVkIGxldmVsc2AsXG4gICAgICAgIHR5cGU6ICdtZXRyaWMgYWxlcnQnLFxuICAgICAgICBxdWVyeTogYGF2ZyhsYXN0XzRoKTphbm9tYWxpZXMoc3VtOmRhdGFkb2cuZXN0aW1hdGVkX3VzYWdlLmxvZ3MuaW5nZXN0ZWRfZXZlbnRze2RhdGFkb2dfaXNfZXhjbHVkZWQ6ZmFsc2UsZGF0YWRvZ19pbmRleDoke3Byb3BzLmluZGV4TmFtZX19LmFzX2NvdW50KCksICdyb2J1c3QnLCAyLCBkaXJlY3Rpb249J2Fib3ZlJywgYWxlcnRfd2luZG93PSdsYXN0XzE1bScsIGludGVydmFsPTYwLCBjb3VudF9kZWZhdWx0X3plcm89J3RydWUnLCBzZWFzb25hbGl0eT0nd2Vla2x5JywgdGltZXpvbmU9J2V1cm9wZS9iZXJsaW4nKSA+PSAxYCxcbiAgICAgICAgbWVzc2FnZTogYFtQNF0gTG9ncyBhcmUgZ2V0dGluZyBvdXQgb2YgY29udHJvbDogJHtkYXRhZG9nTG9nc1NlYXJjaFdpdGhJbmRleEZpbHRlckRlZXBMaW5rKFxuICAgICAgICAgIHByb3BzLmluZGV4TmFtZSxcbiAgICAgICAgICBwcm9wcy5vcmdhbml6YXRpb25cbiAgICAgICAgKX1gLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgaW5jbHVkZV90YWdzOiBmYWxzZSxcbiAgICAgICAgICBub3RpZnlfbm9fZGF0YTogIXByb3BzLnNwYXJzZUxvZ2dpbmcsXG4gICAgICAgICAgdGhyZXNob2xkX3dpbmRvd3M6IHtcbiAgICAgICAgICAgIHRyaWdnZXJfd2luZG93OiAnbGFzdF8xNW0nLFxuICAgICAgICAgICAgcmVjb3Zlcnlfd2luZG93OiAnbGFzdF8xNW0nLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHRhZ3M6IFsuLi5jb21tb25UYWdzKHByb3BzLmluZGV4TmFtZSldLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxufVxuXG5jbGFzcyBEYXRhZG9nTG9nRGFpbHlRdW90YVJlYWNoZWRNb25pdG9yIGV4dGVuZHMgRGF0YWRvZ01vbml0b3Ige1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogRGF0YWRvZ0xvZ0luZGV4TW9uaXRvcmluZ1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICBzZXJ2aWNlTmFtZTogcHJvcHMuc2VydmljZU5hbWUsXG4gICAgICBhbGVydFR5cGVzOiBbcHJvcHMuYWxlcnRUeXBlXSxcbiAgICAgIG1vbml0b3I6IHtcbiAgICAgICAgbmFtZTogYCR7Y29tbW9uTW9uaXRvck5hbWVQcmVmaXgocHJvcHMuaW5kZXhOYW1lKX06IExvZyBxdW90YSByZWFjaGVkYCxcbiAgICAgICAgdHlwZTogJ2V2ZW50LXYyIGFsZXJ0JyxcbiAgICAgICAgcXVlcnk6IGBldmVudHMoXCJzb3VyY2U6ZGF0YWRvZyBkYXRhZG9nX2luZGV4OiR7cHJvcHMuaW5kZXhOYW1lfSBEYWlseSBxdW90YSByZWFjaGVkXCIpLnJvbGx1cChcImNvdW50XCIpLmxhc3QoXCIxMmhcIikgPiAwYCxcbiAgICAgICAgbWVzc2FnZTogYFtQMl0gVGhlIGxvZyBxdW90ZSBmb3IgdGhlIGluZGV4IGhhcyBiZWVuIHJlYWNoZWQuIElmIHlvdSBkbyBub3QgaW5jcmVhc2UgdGhlIHF1b3RhIGF0ICR7ZGF0YWRvZ0xvZ3NJbmRleGVzQ29uZmlndXJhdGlvbkRlZXBMaW5rKHByb3BzLm9yZ2FuaXphdGlvbil9LCBubyBuZXcgbG9ncyB3aWxsIGJlIGluZGV4ZWQgdW50aWwgdGhlIHF1b3RhIGlzIHJlc2V0IGF0IDI6MDBwbSBVVEMuYCxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHRpbWVvdXRfaDogMjQsXG4gICAgICAgICAgdGhyZXNob2xkczoge1xuICAgICAgICAgICAgY3JpdGljYWw6IDAsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdGFnczogWy4uLmNvbW1vblRhZ3MocHJvcHMuaW5kZXhOYW1lKV0sXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG59XG5cbmV4cG9ydCB0eXBlIERhdGFkb2dPcmdhbml6YXRpb24gPSAnRVUnIHwgJ0xBVEFNJyB8ICdMYW5kaW5nIFpvbmUnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0T3JnYW5pemF0aW9uVXJsUHJlZml4KG9yZ2FuaXphdGlvbjogRGF0YWRvZ09yZ2FuaXphdGlvbiB8IHVuZGVmaW5lZCk6IHN0cmluZyB7XG4gIHN3aXRjaCAob3JnYW5pemF0aW9uID8/ICdFVScpIHtcbiAgICBjYXNlICdFVSc6XG4gICAgICByZXR1cm4gJ2FwcCc7XG4gICAgY2FzZSAnTEFUQU0nOlxuICAgICAgcmV0dXJuICdyaW8tYnJhemlsJztcbiAgICBjYXNlICdMYW5kaW5nIFpvbmUnOlxuICAgICAgcmV0dXJuICdyaW8tbGFuZGluZ3pvbmUnO1xuICB9XG59XG5cbmZ1bmN0aW9uIGRhdGFkb2dMb2dzU2VhcmNoV2l0aEluZGV4RmlsdGVyRGVlcExpbmsoaW5kZXhOYW1lOiBzdHJpbmcsIG9yZ2FuaXphdGlvbjogRGF0YWRvZ09yZ2FuaXphdGlvbiB8IHVuZGVmaW5lZCkge1xuICByZXR1cm4gYGh0dHBzOi8vJHtnZXRPcmdhbml6YXRpb25VcmxQcmVmaXgob3JnYW5pemF0aW9uKX0uZGF0YWRvZ2hxLmV1L2xvZ3M/aW5kZXg9JHtpbmRleE5hbWV9YDtcbn1cblxuZnVuY3Rpb24gZGF0YWRvZ0xvZ3NJbmRleGVzQ29uZmlndXJhdGlvbkRlZXBMaW5rKG9yZ2FuaXphdGlvbjogRGF0YWRvZ09yZ2FuaXphdGlvbiB8IHVuZGVmaW5lZCkge1xuICByZXR1cm4gYGh0dHBzOi8vJHtnZXRPcmdhbml6YXRpb25VcmxQcmVmaXgob3JnYW5pemF0aW9uKX0uZGF0YWRvZ2hxLmV1L2xvZ3MvcGlwZWxpbmVzL2luZGV4ZXNgO1xufVxuIl19
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZy1sb2ctaW5kZXgtbW9uaXRvcmluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhZG9nL2RhdGFkb2ctbG9nLWluZGV4LW1vbml0b3JpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQTJMQSw0REFTQzs7QUFwTUQsNkNBQTBDO0FBQzFDLDJDQUF1QztBQUN2Qyx1REFBMEU7QUF3RDFFOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFhLHlCQUEwQixTQUFRLHNCQUFTO0lBQ3RELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBcUM7UUFDN0UsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLDJCQUEyQixDQUFDLElBQUksRUFBRSw2QkFBNkIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1RSxJQUFJLHlCQUF5QixDQUFDLElBQUksRUFBRSwrQkFBK0IsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1RSxJQUFJLGtDQUFrQyxDQUFDLElBQUksRUFBRSxzQ0FBc0MsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1Rix5QkFBVyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxjQUFjLENBQ2xDLGlFQUFpRSxFQUNqRSw4RkFBOEYsQ0FDL0YsQ0FBQztRQUVGLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO1lBQ3RCLFFBQVEsRUFBRSxHQUFhLEVBQUU7Z0JBQ3ZCLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQztnQkFDbEIsSUFBSSxLQUFLLENBQUMsYUFBYSxDQUFDLHlCQUF5QixHQUFHLENBQUMsSUFBSSxLQUFLLENBQUMsYUFBYSxDQUFDLHlCQUF5QixHQUFHLEdBQUcsRUFBRSxDQUFDO29CQUM3RyxNQUFNLENBQUMsSUFBSSxDQUFDLDJFQUEyRSxDQUFDLENBQUM7Z0JBQzNGLENBQUM7Z0JBQ0QsSUFBSSxLQUFLLENBQUMsYUFBYSxDQUFDLHVCQUF1QixHQUFHLENB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O1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBSUQsU0FBZ0Isd0JBQXdCLENBQUMsWUFBNkM7SUFDcEYsUUFBUSxZQUFZLElBQUksSUFBSSxFQUFFLENBQUM7UUFDN0IsS0FBSyxJQUFJO1lBQ1AsT0FBTyxLQUFLLENBQUM7UUFDZixLQUFLLE9BQU87WUFDVixPQUFPLFlBQVksQ0FBQztRQUN0QixLQUFLLGNBQWM7WUFDakIsT0FBTyxpQkFBaUIsQ0FBQztJQUM3QixDQUFDO0FBQ0gsQ0FBQztBQUVELFNBQVMsd0NBQXdDLENBQUMsU0FBaUIsRUFBRSxZQUE2QztJQUNoSCxPQUFPLFdBQVcsd0JBQXdCLENBQUMsWUFBWSxDQUFDLDRCQUE0QixTQUFTLEVBQUUsQ0FBQztBQUNsRyxDQUFDO0FBRUQsU0FBUyx1Q0FBdUMsQ0FBQyxZQUE2QztJQUM1RixPQUFPLFdBQVcsd0JBQXdCLENBQUMsWUFBWSxDQUFDLHNDQUFzQyxDQUFDO0FBQ2pHLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbm5vdGF0aW9ucyB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgdHlwZSBEYXRhZG9nQWxlcnRUeXBlLCBEYXRhZG9nTW9uaXRvciB9IGZyb20gJy4vZGF0YWRvZy1tb25pdG9yJztcblxuZXhwb3J0IGludGVyZmFjZSBEYXRhZG9nTG9nSW5kZXhNb25pdG9yaW5nUHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgeW91ciBzZXJ2aWNlIGluIERhdGFkb2cuIENhbiBiZSB1c2VkIHRvIHF1ZXJ5IHRoZSBtb25pdG9ycy5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBEYXRhZG9nIGluZGV4LlxuICAgKi9cbiAgcmVhZG9ubHkgaW5kZXhOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBpbnRlZ3JhdGlvbiB0byB1c2UgZm9yIGFsZXJ0aW5nLlxuICAgKiBGb3IgT3BzR2VuaWUsIHlvdSBuZWVkIHRvIGluc3RhbGwgYW5kIGNvbmZpZ3VyZSB0aGUgJ29wc2dlbmllLWludGVncmF0aW9uJyBhY2NvdW50IG1vZHVsZS5cbiAgICovXG4gIHJlYWRvbmx5IGFsZXJ0VHlwZTogRGF0YWRvZ0FsZXJ0VHlwZTtcblxuICAvKipcbiAgICogVGhlIGRhaWx5IGxvZyBxdW90YSBzZXR0aW5ncy5cbiAgICovXG4gIHJlYWRvbmx5IGRhaWx5TG9nUXVvdGE6IERhdGFkb2dMb2dRdW90YVByb3BzO1xuXG4gIC8qKlxuICAgKiBUaGlzIHZhbHVlIHNob3VsZCBiZSB1c2VkIGlmIHRoZXJlIGlzIG5vIGxvZyBtZXNzYWdlIHdpdGhpbiAyNCBob3VycyBvciBtaXNzaW5nIGhpc3RvcmljYWwgZGF0YS5cbiAgICogV2l0aG91dCBzZXR0aW5nIHRoaXMgdmFsdWUgaXQgd2lsbCBsZWFkIHRvIGFuIGVtcHR5IHJlc3VsdCBhbmQgdGhlcmVmb3JlIHRyaWdnZXIgYW4gYWxlcnQuXG4gICAqIEBkZWZhdWx0VmFsdWUgLSBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgc3BhcnNlTG9nZ2luZz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBEYXRhZG9nIG9yZ2FuaXphdGlvbiwgZS5nLiwgJ0VVJyBvciAnTEFUQU0nXG4gICAqIEBkZWZhdWx0VmFsdWUgLSAnRVUnXG4gICAqL1xuICByZWFkb25seSBvcmdhbml6YXRpb24/OiBEYXRhZG9nT3JnYW5pemF0aW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERhdGFkb2dMb2dRdW90YVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBkYWlseSBsb2cgcXVvdGEgZm9yIHRoZSB0ZWFtLXNwZWNpZmljIGluZGV4IGluIG1pbGxpb24gZXZlbnRzLlxuICAgKi9cbiAgcmVhZG9ubHkgdmFsdWVJbk1pbGxpb25FdmVudHM6IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIHdhcm5pbmcgdGhyZXNob2xkIGZvciB0aGUgZGFpbHkgbG9nIHF1b3RhIG1vbml0b3IgaW4gcGVyY2VudC5cbiAgICovXG4gIHJlYWRvbmx5IHdhcm5pbmdUaHJlc2hvbGRJblBlcmNlbnQ6IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIGFsYXJtIHRocmVzaG9sZCBmb3IgdGhlIGRhaWx5IGxvZyBxdW90YSBtb25pdG9yIGluIHBlcmNlbnQuXG4gICAqIFRoZSB2YWx1ZSBtdXN0IGJlIGJldHdlZW4gMCBhbmQgMTAwIGFuZCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gdGhlIHdhcm5pbmcgdGhyZXNob2xkLlxuICAgKi9cbiAgcmVhZG9ubHkgYWxlcnRUaHJlc2hvbGRJblBlcmNlbnQ6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBCYXNpYyBtb25pdG9yaW5nIGFuZCBhbGVydGluZyBmb3IgYSBEYXRhZG9nIGxvZ3MgaW5kZXguXG4gKiBJdCBmb2xsb3dzIHRoZSBEYXRhZG9nIGd1aWRlIGF0IGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL2xvZ3MvZ3VpZGUvbG9ncy1tb25pdG9ycy1vbi12b2x1bWVzL1xuICogYW5kIGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgdGhyZWUgbW9uaXRvcnMuXG4gKiAgIDEuIEEgbWV0cmljIGFsZXJ0IHRoYXQgZmlyZXMgd2hlbiB5b3UgcmVhY2ggYSBjZXJ0YWluIHRocmVzaG9sZCBvZiB5b3VyIGRhaWx5IGxvZyBxdW90YS5cbiAqICAgMi4gQW4gYW5vbWFseSBtb25pdG9yIHRoYXQgZGV0ZWN0cyBsb2cgYW1vdW50IHNwaWtlcy5cbiAqICAgMy4gQW4gZXZlbnQgYWxlcnQgdGhhdCBmaXJlcyB3aGVuIHlvdSBoaXQgdGhlIGRhaWx5IGxvZyBxdW90YS5cbiAqXG4gKiBBIGRhdGFkb2cgbG9nIGluZGV4IGlzIHRlYW0gc3BlY2lmaWMgYW5kIHRodXMgdGhlIG1vbml0b3IgbmVlZHMgdG8gYmUgZGVwbG95ZWQganVzdCBvbmNlIHBlciBpbmRleC90ZWFtLlxuICogQGRlcHJlY2F0ZWQgUGxlYXNlIHVzZSBkYXRhZG9ndjIgRGF0YWRvZ0xvZ0luZGV4TW9uaXRvcmluZyBpbnN0ZWFkXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRhZG9nTG9nSW5kZXhNb25pdG9yaW5nIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IERhdGFkb2dMb2dJbmRleE1vbml0b3JpbmdQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBuZXcgRGF0YWRvZ0xvZ0RhaWx5UXVvdGFNb25pdG9yKHRoaXMsICdEYXRhZG9nTG9nRGFpbHlRdW90YU1vbml0b3InLCBwcm9wcyk7XG4gICAgbmV3IERhdGFkb2dMb2dzQW5vbWFseU1vbml0b3IodGhpcywgJ0RhdGFkb2dMb2dBbGVydEFub21hbHlNb25pdG9yJywgcHJvcHMpO1xuICAgIG5ldyBEYXRhZG9nTG9nRGFpbHlRdW90YVJlYWNoZWRNb25pdG9yKHRoaXMsICdEYXRhZG9nTG9nRGFpbHlRdW90YVJlYWNoZWRWMk1vbml0b3InLCBwcm9wcyk7XG4gICAgQW5ub3RhdGlvbnMub2Yoc2NvcGUpLmFkZERlcHJlY2F0aW9uKFxuICAgICAgJ0ByaW8tY2xvdWQtaW50ZXJuYWwvY2RrLXYyLWNvbnN0cnVjdHMuRGF0YWRvZ0xvZ0luZGV4TW9uaXRvcmluZycsXG4gICAgICAnRGF0YWRvZ0xvZ0luZGV4TW9uaXRvcmluZyBkZXByZWNhdGVkISBQbGVhc2UgdXNlIGRhdGFkb2d2MiBEYXRhZG9nTG9nSW5kZXhNb25pdG9yaW5nIGluc3RlYWQnXG4gICAgKTtcblxuICAgIHRoaXMubm9kZS5hZGRWYWxpZGF0aW9uKHtcbiAgICAgIHZhbGlkYXRlOiAoKTogc3RyaW5nW10gPT4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBbXTtcbiAgICAgICAgaWYgKHByb3BzLmRhaWx5TG9nUXVvdGEud2FybmluZ1RocmVzaG9sZEluUGVyY2VudCA8IDAgfHwgcHJvcHMuZGFpbHlMb2dRdW90YS53YXJuaW5nVGhyZXNob2xkSW5QZXJjZW50ID4gMTAwKSB7XG4gICAgICAgICAgcmVzdWx0LnB1c2goJ0ludmFsaWQgW3dhcm5pbmdUaHJlc2hvbGRJblBlcmNlbnRdOiBleHBlY3RpbmcgYSBudW1iZXIgYmV0d2VlbiAwIGFuZCAxMDAnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAocHJvcHMuZGFpbHlMb2dRdW90YS5hbGVydFRocmVzaG9sZEluUGVyY2VudCA8IDAgfHwgcHJvcHMuZGFpbHlMb2dRdW90YS5hbGVydFRocmVzaG9sZEluUGVyY2VudCA+IDEwMCkge1xuICAgICAgICAgIHJlc3VsdC5wdXNoKCdJbnZhbGlkIFthbGVydFRocmVzaG9sZEluUGVyY2VudF06IGV4cGVjdGluZyBhIG51bWJlciBiZXR3ZWVuIDAgYW5kIDEwMCcpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChwcm9wcy5kYWlseUxvZ1F1b3RhLmFsZXJ0VGhyZXNob2xkSW5QZXJjZW50IDwgcHJvcHMuZGFpbHlMb2dRdW90YS53YXJuaW5nVGhyZXNob2xkSW5QZXJjZW50KSB7XG4gICAgICAgICAgcmVzdWx0LnB1c2goXG4gICAgICAgICAgICAnSW52YWxpZCBbYWxlcnRUaHJlc2hvbGRJblBlcmNlbnRdOiBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byBbd2FybmluZ1RocmVzaG9sZEluUGVyY2VudF0nXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxufVxuXG5jb25zdCBjb21tb25Nb25pdG9yTmFtZVByZWZpeCA9IChpbmRleE5hbWU6IHN0cmluZykgPT4gYCcke2luZGV4TmFtZX0nIGluZGV4YDtcbmNvbnN0IGNvbW1vblRhZ3MgPSAoaW5kZXhOYW1lOiBzdHJpbmcpID0+IFtgbG9nSW5kZXg6JHtpbmRleE5hbWV9YF07XG5cbmNsYXNzIERhdGFkb2dMb2dEYWlseVF1b3RhTW9uaXRvciBleHRlbmRzIERhdGFkb2dNb25pdG9yIHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IERhdGFkb2dMb2dJbmRleE1vbml0b3JpbmdQcm9wcykge1xuICAgIGNvbnN0IGxvZ1F1b3RhSW5FdmVudHMgPSBNYXRoLmZsb29yKHByb3BzLmRhaWx5TG9nUXVvdGEudmFsdWVJbk1pbGxpb25FdmVudHMgKiAxXzAwMF8wMDApO1xuICAgIGNvbnN0IHdhcm5pbmdUaHJlc2hvbGQgPSBNYXRoLmZsb29yKGxvZ1F1b3RhSW5FdmVudHMgKiAocHJvcHMuZGFpbHlMb2dRdW90YS53YXJuaW5nVGhyZXNob2xkSW5QZXJjZW50IC8gMTAwKSk7XG4gICAgY29uc3QgYWxlcnRUaHJlc2hvbGQgPSBNYXRoLmZsb29yKGxvZ1F1b3RhSW5FdmVudHMgKiAocHJvcHMuZGFpbHlMb2dRdW90YS5hbGVydFRocmVzaG9sZEluUGVyY2VudCAvIDEwMCkpO1xuXG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICBzZXJ2aWNlTmFtZTogcHJvcHMuc2VydmljZU5hbWUsXG4gICAgICBhbGVydFR5cGVzOiBbcHJvcHMuYWxlcnRUeXBlXSxcbiAgICAgIG1vbml0b3I6IHtcbiAgICAgICAgbmFtZTogYCR7Y29tbW9uTW9uaXRvck5hbWVQcmVmaXgocHJvcHMuaW5kZXhOYW1lKX06IExvZyBxdW90YSBhbG1vc3QgcmVhY2hlZGAsXG4gICAgICAgIHR5cGU6ICdtZXRyaWMgYWxlcnQnLFxuICAgICAgICBxdWVyeTogYHN1bShsYXN0XzFkKTpzdW06ZGF0YWRvZy5lc3RpbWF0ZWRfdXNhZ2UubG9ncy5pbmdlc3RlZF9ldmVudHN7ZGF0YWRvZ19pc19leGNsdWRlZDpmYWxzZSxkYXRhZG9nX2luZGV4OiR7cHJvcHMuaW5kZXhOYW1lfX0uYXNfY291bnQoKSA+PSAke2FsZXJ0VGhyZXNob2xkfWAsXG4gICAgICAgIG1lc3NhZ2U6IGBbUDNdIEluc3BlY3QgeW91ciBsb2cgdm9sdW1lIGF0ICR7ZGF0YWRvZ0xvZ3NTZWFyY2hXaXRoSW5kZXhGaWx0ZXJEZWVwTGluayhcbiAgICAgICAgICBwcm9wcy5pbmRleE5hbWUsXG4gICAgICAgICAgcHJvcHMub3JnYW5pemF0aW9uXG4gICAgICAgICl9IG9yIGFkYXB0IHRoZSBsb2cgcXVvdGEgYXQgJHtkYXRhZG9nTG9nc0luZGV4ZXNDb25maWd1cmF0aW9uRGVlcExpbmsocHJvcHMub3JnYW5pemF0aW9uKX1gLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgdGhyZXNob2xkczoge1xuICAgICAgICAgICAgY3JpdGljYWw6IGFsZXJ0VGhyZXNob2xkLFxuICAgICAgICAgICAgd2FybmluZzogd2FybmluZ1RocmVzaG9sZCxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGluY2x1ZGVfdGFnczogZmFsc2UsXG4gICAgICAgICAgbm90aWZ5X25vX2RhdGE6ICFwcm9wcy5zcGFyc2VMb2dnaW5nLFxuICAgICAgICAgIG5vX2RhdGFfdGltZWZyYW1lOiAyNCAqIDYwLCAvLyAxIGRheVxuICAgICAgICB9LFxuICAgICAgICB0YWdzOiBbLi4uY29tbW9uVGFncyhwcm9wcy5pbmRleE5hbWUpXSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cblxuY2xhc3MgRGF0YWRvZ0xvZ3NBbm9tYWx5TW9uaXRvciBleHRlbmRzIERhdGFkb2dNb25pdG9yIHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IERhdGFkb2dMb2dJbmRleE1vbml0b3JpbmdQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgc2VydmljZU5hbWU6IHByb3BzLnNlcnZpY2VOYW1lLFxuICAgICAgYWxlcnRUeXBlczogW3Byb3BzLmFsZXJ0VHlwZV0sXG4gICAgICBtb25pdG9yOiB7XG4gICAgICAgIG5hbWU6IGAke2NvbW1vbk1vbml0b3JOYW1lUHJlZml4KHByb3BzLmluZGV4TmFtZSl9OiBMb2cgYW1vdW50IGlzIHJpc2luZyB0byB1bmV4cGVjdGVkIGxldmVsc2AsXG4gICAgICAgIHR5cGU6ICdtZXRyaWMgYWxlcnQnLFxuICAgICAgICBxdWVyeTogYGF2ZyhsYXN0XzRoKTphbm9tYWxpZXMoc3VtOmRhdGFkb2cuZXN0aW1hdGVkX3VzYWdlLmxvZ3MuaW5nZXN0ZWRfZXZlbnRze2RhdGFkb2dfaXNfZXhjbHVkZWQ6ZmFsc2UsZGF0YWRvZ19pbmRleDoke3Byb3BzLmluZGV4TmFtZX19LmFzX2NvdW50KCksICdyb2J1c3QnLCAyLCBkaXJlY3Rpb249J2Fib3ZlJywgYWxlcnRfd2luZG93PSdsYXN0XzE1bScsIGludGVydmFsPTYwLCBjb3VudF9kZWZhdWx0X3plcm89J3RydWUnLCBzZWFzb25hbGl0eT0nd2Vla2x5JywgdGltZXpvbmU9J2V1cm9wZS9iZXJsaW4nKSA+PSAxYCxcbiAgICAgICAgbWVzc2FnZTogYFtQNF0gTG9ncyBhcmUgZ2V0dGluZyBvdXQgb2YgY29udHJvbDogJHtkYXRhZG9nTG9nc1NlYXJjaFdpdGhJbmRleEZpbHRlckRlZXBMaW5rKFxuICAgICAgICAgIHByb3BzLmluZGV4TmFtZSxcbiAgICAgICAgICBwcm9wcy5vcmdhbml6YXRpb25cbiAgICAgICAgKX1gLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgaW5jbHVkZV90YWdzOiBmYWxzZSxcbiAgICAgICAgICBub3RpZnlfbm9fZGF0YTogIXByb3BzLnNwYXJzZUxvZ2dpbmcsXG4gICAgICAgICAgdGhyZXNob2xkX3dpbmRvd3M6IHtcbiAgICAgICAgICAgIHRyaWdnZXJfd2luZG93OiAnbGFzdF8xNW0nLFxuICAgICAgICAgICAgcmVjb3Zlcnlfd2luZG93OiAnbGFzdF8xNW0nLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHRhZ3M6IFsuLi5jb21tb25UYWdzKHByb3BzLmluZGV4TmFtZSldLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxufVxuXG5jbGFzcyBEYXRhZG9nTG9nRGFpbHlRdW90YVJlYWNoZWRNb25pdG9yIGV4dGVuZHMgRGF0YWRvZ01vbml0b3Ige1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogRGF0YWRvZ0xvZ0luZGV4TW9uaXRvcmluZ1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICBzZXJ2aWNlTmFtZTogcHJvcHMuc2VydmljZU5hbWUsXG4gICAgICBhbGVydFR5cGVzOiBbcHJvcHMuYWxlcnRUeXBlXSxcbiAgICAgIG1vbml0b3I6IHtcbiAgICAgICAgbmFtZTogYCR7Y29tbW9uTW9uaXRvck5hbWVQcmVmaXgocHJvcHMuaW5kZXhOYW1lKX06IExvZyBxdW90YSByZWFjaGVkYCxcbiAgICAgICAgdHlwZTogJ2V2ZW50LXYyIGFsZXJ0JyxcbiAgICAgICAgcXVlcnk6IGBldmVudHMoXCJzb3VyY2U6ZGF0YWRvZyBkYXRhZG9nX2luZGV4OiR7cHJvcHMuaW5kZXhOYW1lfSBEYWlseSBxdW90YSByZWFjaGVkXCIpLnJvbGx1cChcImNvdW50XCIpLmxhc3QoXCIxMmhcIikgPiAwYCxcbiAgICAgICAgbWVzc2FnZTogYFtQMl0gVGhlIGxvZyBxdW90ZSBmb3IgdGhlIGluZGV4IGhhcyBiZWVuIHJlYWNoZWQuIElmIHlvdSBkbyBub3QgaW5jcmVhc2UgdGhlIHF1b3RhIGF0ICR7ZGF0YWRvZ0xvZ3NJbmRleGVzQ29uZmlndXJhdGlvbkRlZXBMaW5rKHByb3BzLm9yZ2FuaXphdGlvbil9LCBubyBuZXcgbG9ncyB3aWxsIGJlIGluZGV4ZWQgdW50aWwgdGhlIHF1b3RhIGlzIHJlc2V0IGF0IDI6MDBwbSBVVEMuYCxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHRpbWVvdXRfaDogMjQsXG4gICAgICAgICAgdGhyZXNob2xkczoge1xuICAgICAgICAgICAgY3JpdGljYWw6IDAsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdGFnczogWy4uLmNvbW1vblRhZ3MocHJvcHMuaW5kZXhOYW1lKV0sXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG59XG5cbmV4cG9ydCB0eXBlIERhdGFkb2dPcmdhbml6YXRpb24gPSAnRVUnIHwgJ0xBVEFNJyB8ICdMYW5kaW5nIFpvbmUnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0T3JnYW5pemF0aW9uVXJsUHJlZml4KG9yZ2FuaXphdGlvbjogRGF0YWRvZ09yZ2FuaXphdGlvbiB8IHVuZGVmaW5lZCk6IHN0cmluZyB7XG4gIHN3aXRjaCAob3JnYW5pemF0aW9uID8/ICdFVScpIHtcbiAgICBjYXNlICdFVSc6XG4gICAgICByZXR1cm4gJ2FwcCc7XG4gICAgY2FzZSAnTEFUQU0nOlxuICAgICAgcmV0dXJuICdyaW8tYnJhemlsJztcbiAgICBjYXNlICdMYW5kaW5nIFpvbmUnOlxuICAgICAgcmV0dXJuICdyaW8tbGFuZGluZ3pvbmUnO1xuICB9XG59XG5cbmZ1bmN0aW9uIGRhdGFkb2dMb2dzU2VhcmNoV2l0aEluZGV4RmlsdGVyRGVlcExpbmsoaW5kZXhOYW1lOiBzdHJpbmcsIG9yZ2FuaXphdGlvbjogRGF0YWRvZ09yZ2FuaXphdGlvbiB8IHVuZGVmaW5lZCkge1xuICByZXR1cm4gYGh0dHBzOi8vJHtnZXRPcmdhbml6YXRpb25VcmxQcmVmaXgob3JnYW5pemF0aW9uKX0uZGF0YWRvZ2hxLmV1L2xvZ3M/aW5kZXg9JHtpbmRleE5hbWV9YDtcbn1cblxuZnVuY3Rpb24gZGF0YWRvZ0xvZ3NJbmRleGVzQ29uZmlndXJhdGlvbkRlZXBMaW5rKG9yZ2FuaXphdGlvbjogRGF0YWRvZ09yZ2FuaXphdGlvbiB8IHVuZGVmaW5lZCkge1xuICByZXR1cm4gYGh0dHBzOi8vJHtnZXRPcmdhbml6YXRpb25VcmxQcmVmaXgob3JnYW5pemF0aW9uKX0uZGF0YWRvZ2hxLmV1L2xvZ3MvcGlwZWxpbmVzL2luZGV4ZXNgO1xufVxuIl19
@@ -18,10 +18,10 @@ class DatadogMonitor {
18
18
  monitor.addPropertyOverride('AutoCloseOpsGenieAlerts', props.autoCloseOpsGenieAlerts);
19
19
  }
20
20
  monitor.addPropertyOverride('Monitor', props.monitor);
21
- aws_cdk_lib_1.Annotations.of(stack).addDeprecation('@rio-cloud/cdk-v2-constructs.DatadogMonitor', 'DatadogMonitor deprecated! Please use datadogv2 DatadogMonitor instead');
21
+ aws_cdk_lib_1.Annotations.of(stack).addDeprecation('@rio-cloud-internal/cdk-v2-constructs.DatadogMonitor', 'DatadogMonitor deprecated! Please use datadogv2 DatadogMonitor instead');
22
22
  }
23
23
  }
24
24
  exports.DatadogMonitor = DatadogMonitor;
25
25
  _a = JSII_RTTI_SYMBOL_1;
26
- DatadogMonitor[_a] = { fqn: "@rio-cloud/cdk-v2-constructs.DatadogMonitor", version: "0.0.0" };
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZy1tb25pdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGFkb2cvZGF0YWRvZy1tb25pdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQWtFO0FBOEJsRTs7R0FFRztBQUNILE1BQWEsY0FBYztJQUN6QixZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQTBCO1FBQ2xFLE1BQU0sT0FBTyxHQUFHLElBQUksZ0NBQWtCLENBQUMsaUJBQWlCLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNsRSxZQUFZLEVBQUUsZ0JBQUUsQ0FBQyxXQUFXLENBQUMsOENBQThDLENBQUM7U0FDN0UsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxDQUFDLG1CQUFtQixDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDOUQsT0FBTyxDQUFDLG1CQUFtQixDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDNUQsSUFBSSxLQUFLLENBQUMsdUJBQXVCLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDaEQsT0FBTyxDQUFDLG1CQUFtQixDQUFDLHlCQUF5QixFQUFFLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQ3hGLENBQUM7UUFDRCxPQUFPLENBQUMsbUJBQW1CLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN0RCx5QkFBVyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxjQUFjLENBQ2xDLDZDQUE2QyxFQUM3Qyx3RUFBd0UsQ0FDekUsQ0FBQztJQUNKLENBQUM7O0FBZkgsd0NBZ0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQW5ub3RhdGlvbnMsIGF3c19jbG91ZGZvcm1hdGlvbiwgRm4gfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgdHlwZSB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuZXhwb3J0IHR5cGUgRGF0YWRvZ0FsZXJ0VHlwZSA9ICdvcHNnZW5pZScgfCAnc2xhY2snO1xuXG5leHBvcnQgaW50ZXJmYWNlIERhdGFkb2dNb25pdG9yUHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHNlcnZpY2UgdG8gd2hpY2ggdGhlIG1vbml0b3IgYmVsb25ncy5cbiAgICpcbiAgICogVXNlZCB0byBnZW5lcmF0ZSB0aGUgbW9uaXRvciBuYW1lIGFzIHdlbGwgYSBhcHBseSB0aGUgYHNlcnZpY2VgIHRhZy5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFR5cGUgb2YgYWxlcnQuIFwib3BzZ2VuaWVcIiBvciBcInNsYWNrXCJcbiAgICovXG4gIHJlYWRvbmx5IGFsZXJ0VHlwZXM/OiBEYXRhZG9nQWxlcnRUeXBlW107XG5cbiAgLyoqXG4gICAqIElmIEF1dG9DbG9zZU9wc0dlbmllQWxlcnRzIGlzIHNldCB0byBGYWxzZSwgdGhlIG1vbml0b3IgbWVzc2FnZSB3aWxsIGJlIHdyYXBwZWQgaW4gXFx7XFx7I2lzX2FsZXJ0XFx9XFx9IC4uLiBcXHtcXHsvaXNfYWxlcnRcXH1cXH0gc28gdGhhdCB0aGUgY29ycmVzcG9uZGluZyBPcHNHZW5pZSBhbGVydCB3aWxsIG5vdCByZXNvbHZlIGF1dG9tYXRpY2FsbHkuXG4gICAqIElmIHNldCB0byBUcnVlLCBpdCB3aWxsIGxlYXZlIHRoZSBtb25pdG9yIG1lc3NhZ2UgYXMgaXQgaXMuXG4gICAqIE5vdGUgYWxzbyB0aGF0IGl0IGlzIG5vdCBwb3NzaWJsZSB0byBwcm92aWRlIGFueSBvZiB0aGUgd3JhcHBpbmdzIFxce1xceyNpc19hbGVydFxcfVxcfSwgXFx7XFx7I2lzX3dhcm5pbmdcXH1cXH0sIFxce1xceyNpc19hbGVydF9yZWNvdmVyeVxcfVxcfSwgJ1xce1xceyNpc193YXJuaW5nX3JlY292ZXJ5XFx9XFx9JyBpbiB0aGUgbWVzc2FnZSB5b3Vyc2VsZiBhbmQgdXNlIHRoZSBwcm9wZXJ0eSBBdXRvQ2xvc2VPcHNHZW5pZUFsZXJ0cyBhdCB0aGUgc2FtZSB0aW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b0Nsb3NlT3BzR2VuaWVBbGVydHM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBNb25pdG9yIGRlZmluaXRpb24uIFJlZiA6IGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL2FwaS9sYXRlc3QvbW9uaXRvcnMvI2NyZWF0ZS1hLW1vbml0b3JcbiAgICovXG4gIHJlYWRvbmx5IG1vbml0b3I6IHsgW2tleTogc3RyaW5nXTogYW55IH07XG59XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgUGxlYXNlIHVzZSBkYXRhZG9ndjIgRGF0YWRvZ01vbml0b3IgaW5zdGVhZFxuICovXG5leHBvcnQgY2xhc3MgRGF0YWRvZ01vbml0b3Ige1xuICBjb25zdHJ1Y3RvcihzdGFjazogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogRGF0YWRvZ01vbml0b3JQcm9wcykge1xuICAgIGNvbnN0IG1vbml0b3IgPSBuZXcgYXdzX2Nsb3VkZm9ybWF0aW9uLkNmbkN1c3RvbVJlc291cmNlKHN0YWNrLCBpZCwge1xuICAgICAgc2VydmljZVRva2VuOiBGbi5pbXBvcnRWYWx1ZSgnY3VzdG9tLXJlc291cmNlLWRhdGFkb2ctbW9uaXRvci1mdW5jdGlvbi1hcm4nKSxcbiAgICB9KTtcbiAgICBtb25pdG9yLmFkZFByb3BlcnR5T3ZlcnJpZGUoJ1NlcnZpY2VOYW1lJywgcHJvcHMuc2VydmljZU5hbWUpO1xuICAgIG1vbml0b3IuYWRkUHJvcGVydHlPdmVycmlkZSgnQWxlcnRUeXBlcycsIHByb3BzLmFsZXJ0VHlwZXMpO1xuICAgIGlmIChwcm9wcy5hdXRvQ2xvc2VPcHNHZW5pZUFsZXJ0cyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBtb25pdG9yLmFkZFByb3BlcnR5T3ZlcnJpZGUoJ0F1dG9DbG9zZU9wc0dlbmllQWxlcnRzJywgcHJvcHMuYXV0b0Nsb3NlT3BzR2VuaWVBbGVydHMpO1xuICAgIH1cbiAgICBtb25pdG9yLmFkZFByb3BlcnR5T3ZlcnJpZGUoJ01vbml0b3InLCBwcm9wcy5tb25pdG9yKTtcbiAgICBBbm5vdGF0aW9ucy5vZihzdGFjaykuYWRkRGVwcmVjYXRpb24oXG4gICAgICAnQHJpby1jbG91ZC9jZGstdjItY29uc3RydWN0cy5EYXRhZG9nTW9uaXRvcicsXG4gICAgICAnRGF0YWRvZ01vbml0b3IgZGVwcmVjYXRlZCEgUGxlYXNlIHVzZSBkYXRhZG9ndjIgRGF0YWRvZ01vbml0b3IgaW5zdGVhZCdcbiAgICApO1xuICB9XG59XG4iXX0=
26
+ DatadogMonitor[_a] = { fqn: "@rio-cloud-internal/cdk-v2-constructs.DatadogMonitor", version: "0.0.0" };
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZy1tb25pdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGFkb2cvZGF0YWRvZy1tb25pdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQWtFO0FBOEJsRTs7R0FFRztBQUNILE1BQWEsY0FBYztJQUN6QixZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQTBCO1FBQ2xFLE1BQU0sT0FBTyxHQUFHLElBQUksZ0NBQWtCLENBQUMsaUJBQWlCLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNsRSxZQUFZLEVBQUUsZ0JBQUUsQ0FBQyxXQUFXLENBQUMsOENBQThDLENBQUM7U0FDN0UsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxDQUFDLG1CQUFtQixDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDOUQsT0FBTyxDQUFDLG1CQUFtQixDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDNUQsSUFBSSxLQUFLLENBQUMsdUJBQXVCLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDaEQsT0FBTyxDQUFDLG1CQUFtQixDQUFDLHlCQUF5QixFQUFFLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQ3hGLENBQUM7UUFDRCxPQUFPLENBQUMsbUJBQW1CLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN0RCx5QkFBVyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxjQUFjLENBQ2xDLHNEQUFzRCxFQUN0RCx3RUFBd0UsQ0FDekUsQ0FBQztJQUNKLENBQUM7O0FBZkgsd0NBZ0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQW5ub3RhdGlvbnMsIGF3c19jbG91ZGZvcm1hdGlvbiwgRm4gfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgdHlwZSB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuZXhwb3J0IHR5cGUgRGF0YWRvZ0FsZXJ0VHlwZSA9ICdvcHNnZW5pZScgfCAnc2xhY2snO1xuXG5leHBvcnQgaW50ZXJmYWNlIERhdGFkb2dNb25pdG9yUHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHNlcnZpY2UgdG8gd2hpY2ggdGhlIG1vbml0b3IgYmVsb25ncy5cbiAgICpcbiAgICogVXNlZCB0byBnZW5lcmF0ZSB0aGUgbW9uaXRvciBuYW1lIGFzIHdlbGwgYSBhcHBseSB0aGUgYHNlcnZpY2VgIHRhZy5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFR5cGUgb2YgYWxlcnQuIFwib3BzZ2VuaWVcIiBvciBcInNsYWNrXCJcbiAgICovXG4gIHJlYWRvbmx5IGFsZXJ0VHlwZXM/OiBEYXRhZG9nQWxlcnRUeXBlW107XG5cbiAgLyoqXG4gICAqIElmIEF1dG9DbG9zZU9wc0dlbmllQWxlcnRzIGlzIHNldCB0byBGYWxzZSwgdGhlIG1vbml0b3IgbWVzc2FnZSB3aWxsIGJlIHdyYXBwZWQgaW4gXFx7XFx7I2lzX2FsZXJ0XFx9XFx9IC4uLiBcXHtcXHsvaXNfYWxlcnRcXH1cXH0gc28gdGhhdCB0aGUgY29ycmVzcG9uZGluZyBPcHNHZW5pZSBhbGVydCB3aWxsIG5vdCByZXNvbHZlIGF1dG9tYXRpY2FsbHkuXG4gICAqIElmIHNldCB0byBUcnVlLCBpdCB3aWxsIGxlYXZlIHRoZSBtb25pdG9yIG1lc3NhZ2UgYXMgaXQgaXMuXG4gICAqIE5vdGUgYWxzbyB0aGF0IGl0IGlzIG5vdCBwb3NzaWJsZSB0byBwcm92aWRlIGFueSBvZiB0aGUgd3JhcHBpbmdzIFxce1xceyNpc19hbGVydFxcfVxcfSwgXFx7XFx7I2lzX3dhcm5pbmdcXH1cXH0sIFxce1xceyNpc19hbGVydF9yZWNvdmVyeVxcfVxcfSwgJ1xce1xceyNpc193YXJuaW5nX3JlY292ZXJ5XFx9XFx9JyBpbiB0aGUgbWVzc2FnZSB5b3Vyc2VsZiBhbmQgdXNlIHRoZSBwcm9wZXJ0eSBBdXRvQ2xvc2VPcHNHZW5pZUFsZXJ0cyBhdCB0aGUgc2FtZSB0aW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b0Nsb3NlT3BzR2VuaWVBbGVydHM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBNb25pdG9yIGRlZmluaXRpb24uIFJlZiA6IGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL2FwaS9sYXRlc3QvbW9uaXRvcnMvI2NyZWF0ZS1hLW1vbml0b3JcbiAgICovXG4gIHJlYWRvbmx5IG1vbml0b3I6IHsgW2tleTogc3RyaW5nXTogYW55IH07XG59XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgUGxlYXNlIHVzZSBkYXRhZG9ndjIgRGF0YWRvZ01vbml0b3IgaW5zdGVhZFxuICovXG5leHBvcnQgY2xhc3MgRGF0YWRvZ01vbml0b3Ige1xuICBjb25zdHJ1Y3RvcihzdGFjazogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogRGF0YWRvZ01vbml0b3JQcm9wcykge1xuICAgIGNvbnN0IG1vbml0b3IgPSBuZXcgYXdzX2Nsb3VkZm9ybWF0aW9uLkNmbkN1c3RvbVJlc291cmNlKHN0YWNrLCBpZCwge1xuICAgICAgc2VydmljZVRva2VuOiBGbi5pbXBvcnRWYWx1ZSgnY3VzdG9tLXJlc291cmNlLWRhdGFkb2ctbW9uaXRvci1mdW5jdGlvbi1hcm4nKSxcbiAgICB9KTtcbiAgICBtb25pdG9yLmFkZFByb3BlcnR5T3ZlcnJpZGUoJ1NlcnZpY2VOYW1lJywgcHJvcHMuc2VydmljZU5hbWUpO1xuICAgIG1vbml0b3IuYWRkUHJvcGVydHlPdmVycmlkZSgnQWxlcnRUeXBlcycsIHByb3BzLmFsZXJ0VHlwZXMpO1xuICAgIGlmIChwcm9wcy5hdXRvQ2xvc2VPcHNHZW5pZUFsZXJ0cyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBtb25pdG9yLmFkZFByb3BlcnR5T3ZlcnJpZGUoJ0F1dG9DbG9zZU9wc0dlbmllQWxlcnRzJywgcHJvcHMuYXV0b0Nsb3NlT3BzR2VuaWVBbGVydHMpO1xuICAgIH1cbiAgICBtb25pdG9yLmFkZFByb3BlcnR5T3ZlcnJpZGUoJ01vbml0b3InLCBwcm9wcy5tb25pdG9yKTtcbiAgICBBbm5vdGF0aW9ucy5vZihzdGFjaykuYWRkRGVwcmVjYXRpb24oXG4gICAgICAnQHJpby1jbG91ZC1pbnRlcm5hbC9jZGstdjItY29uc3RydWN0cy5EYXRhZG9nTW9uaXRvcicsXG4gICAgICAnRGF0YWRvZ01vbml0b3IgZGVwcmVjYXRlZCEgUGxlYXNlIHVzZSBkYXRhZG9ndjIgRGF0YWRvZ01vbml0b3IgaW5zdGVhZCdcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -25,5 +25,5 @@ class DatadogDashboard extends constructs_1.Construct {
25
25
  }
26
26
  exports.DatadogDashboard = DatadogDashboard;
27
27
  _a = JSII_RTTI_SYMBOL_1;
28
- DatadogDashboard[_a] = { fqn: "@rio-cloud/cdk-v2-constructs.datadogv2.DatadogDashboard", version: "0.0.0" };
28
+ DatadogDashboard[_a] = { fqn: "@rio-cloud-internal/cdk-v2-constructs.datadogv2.DatadogDashboard", version: "0.0.0" };
29
29
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZy1kYXNoYm9hcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YWRvZ3YyL2RhdGFkb2ctZGFzaGJvYXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsbUNBQW1DO0FBQ25DLDJDQUF1QztBQWdCdkM7Ozs7OztHQU1HO0FBQ0gsTUFBYSxnQkFBaUIsU0FBUSxzQkFBUztJQUM3QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQTRCO1FBQ3BFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxHQUFHLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFO1lBQzNDLElBQUksRUFBRSxnQ0FBZ0M7WUFDdEMsVUFBVSxFQUFFO2dCQUNWLG1CQUFtQixFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDO2FBQy9EO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUFWSCw0Q0FXQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuZXhwb3J0IGludGVyZmFjZSBEYXRhZG9nRGFzaGJvYXJkUHJvcHMge1xuICAvKipcbiAgICogVGhlIERhc2hib2FyZCBkZWZpbml0aW9uIGFzIGV4cG9ydGVkIGZyb20gRGF0YWRvZzpcbiAgICogYGBgdHNcbiAgICogaW1wb3J0IGRhc2hib2FyZERlZmluaXRpb24gZnJvbSAnLi9kYXNoYm9hcmQuanNvbic7XG4gICAqXG4gICAqIG5ldyBEYXRhZG9nRGFzaGJvYXJkKHRoaXMsICdTYW1wbGVEYXNoYm9hcmQnLCB7IGRhc2hib2FyZERlZmluaXRpb24gfSlcbiAgICogYGBgXG4gICAqXG4gICAqIFJlZmVyZW5jZXMgdG8ge0BsaW5rIC4vZGF0YWRvZy1tb25pdG9yLnRzLiNEYXRhZG9nTW9uaXRvcn0uIHdpbGwgbm90IGJlIHJlc29sdmVkIGF0IHRoZSBtb21lbnQuXG4gICAqL1xuICByZWFkb25seSBkYXNoYm9hcmREZWZpbml0aW9uOiBvYmplY3Q7XG59XG5cbi8qKlxuICogV3JhcHBlciBhcm91bmQgRGF0YWRvZydzIENsb3VkRm9ybWF0aW9uIGBEYXRhZG9nOjpNb25pdG9yczo6RGFzaGJvYXJkYCB3aXRoIHNvbWUgUklPIGRlZmF1bHRzIGFwcGxpZWQuXG4gKlxuICogVG8gdXNlIHRoaXMgdGhlIERhdGFkb2cgcmVzb3VyY2VzIGhhdmUgdG8gYmUge0BsaW5rIGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL2ludGVncmF0aW9ucy9ndWlkZS9hbWF6b25fY2xvdWRmb3JtYXRpb24vXG4gKiB8ZW5hYmxlZCBpbiB0aGUgQ2xvdWRGb3JtYXRpb24gcmVnaXN0cnl9IG9mIHRoZSBjb3JyZXNwb25kaW5nIEFXUyBhY2NvdW50LiBVc3VhbGx5IHRoaXMgaXMgZG9uZVxuICogYXV0b21hdGljYWxseSBieSB0aGUgRGF0YWRvZyBJbnRlZ3JhdGlvbnMgKGFjY291bnQgbW9kdWxlIEFORCBTZXJ2aWNlQ2F0YWxvZykgcHJvdmlkZWQgYnkgQ0xBSUQuXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRhZG9nRGFzaGJvYXJkIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IERhdGFkb2dEYXNoYm9hcmRQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBuZXcgY2RrLkNmblJlc291cmNlKHNjb3BlLCBgJHtpZH1EYXNoYm9hcmRgLCB7XG4gICAgICB0eXBlOiAnRGF0YWRvZzo6RGFzaGJvYXJkczo6RGFzaGJvYXJkJyxcbiAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgRGFzaGJvYXJkRGVmaW5pdGlvbjogSlNPTi5zdHJpbmdpZnkocHJvcHMuZGFzaGJvYXJkRGVmaW5pdGlvbiksXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -77,14 +77,15 @@ class DatadogLambdaInstrumentation extends constructs_1.Construct {
77
77
  }
78
78
  exports.DatadogLambdaInstrumentation = DatadogLambdaInstrumentation;
79
79
  _a = JSII_RTTI_SYMBOL_1;
80
- DatadogLambdaInstrumentation[_a] = { fqn: "@rio-cloud/cdk-v2-constructs.datadogv2.DatadogLambdaInstrumentation", version: "0.0.0" };
80
+ DatadogLambdaInstrumentation[_a] = { fqn: "@rio-cloud-internal/cdk-v2-constructs.datadogv2.DatadogLambdaInstrumentation", version: "0.0.0" };
81
81
  /**
82
82
  * @param node - The node to check for the context value
83
83
  * @returns true as a default if not disabled via context
84
84
  */
85
85
  const getSourceCodeIntegrationDefault = (node) => {
86
- const value = node.tryGetContext('@rio-cloud/cdk-v2-constructs:enableSourceCodeIntegration');
86
+ const value = node.tryGetContext('@rio-cloud-internal/cdk-v2-constructs:enableSourceCodeIntegration') ??
87
+ node.tryGetContext('@rio-cloud/cdk-v2-constructs:enableSourceCodeIntegration');
87
88
  const isDisabled = value === 'false' || value === false;
88
89
  return !isDisabled;
89
90
  };
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZy1sYW1iZGEtaW5zdHJ1bWVudGF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGFkb2d2Mi9kYXRhZG9nLWxhbWJkYS1pbnN0cnVtZW50YXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFFQSwyQ0FBa0Q7QUFDbEQsNkRBQTZEO0FBQzdELGdEQUFnRDtBQUNoRCx5RUFBOEQ7QUFFOUQscUVBQStEO0FBQy9ELCtFQUEwRTtBQWtFMUUsTUFBTSxtQkFBbUIsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQ3hDO1FBQ0UsSUFBSSxFQUFFLGtCQUFrQjtRQUN4QixJQUFJLEVBQUUsa0JBQWtCO1FBQ3hCLE9BQU8sRUFBRSxnQ0FBZ0M7S0FDMUM7Q0FDRixDQUFDLENBQUM7QUFFSDs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0gsTUFBYSw0QkFBNkIsU0FBUSxzQkFBUztJQU16RCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXdDO1FBQ2hGLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxDQUFDLGFBQWEsR0FBRyw0Q0FBbUIsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQztRQUVuRCxNQUFNLHFCQUFxQixHQUFHLDRDQUFtQixDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFFLElBQUksQ0FBQyxJQUFJLEdBQUcscUJBQXFCLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRXhFLE1BQU0sVUFBVSxHQUF1QjtZQUNyQyxHQUFHLEVBQUUsTUFBTTtZQUNYLGVBQWUsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVM7WUFDN0MsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsaUJBQWlCLEVBQUUsSUFBSTtZQUN2QixnQkFBZ0IsRUFBRSxJQUFJO1lBQ3RCLG9CQUFvQixFQUFFLEtBQUs7WUFDM0Isc0JBQXNCLEVBQUUsS0FBSztZQUM3QixxQkFBcUIsRUFBRSxLQUFLO1lBQzVCLGVBQWUsRUFBRSxLQUFLO1lBQ3RCLGlCQUFpQixFQUFFLDZDQUFpQixDQUFDLEdBQUc7WUFDeEMscUJBQXFCLEVBQUUsK0JBQStCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNqRSxHQUFHLEtBQUs7U0FDVCxDQUFDO1FBRUYsRUFBRSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM3QixFQUFFLENBQUMsdUJBQXVCLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFdkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsc0JBQXNCLEdBQUcsS0FBSyxDQUFDLHFCQUFxQixJQUFJLEtBQUssQ0FBQztJQUNyRSxDQUFDO0lBRUQsa0JBQWtCLENBQUMsZUFBb0MsRUFBRSxTQUFxQjtRQUM1RSx5REFBeUQ7UUFDekQsZUFBZSxDQUFDLE9BQU8sQ0FBQyx1REFBeUIsQ0FBQyxDQUFDO1FBQ25ELEtBQUssTUFBTSxjQUFjLElBQUksZUFBZSxFQUFFLENBQUM7WUFDN0MsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDN0MsY0FBYyxDQUFDLGNBQWMsQ0FBQyxxQkFBcUIsRUFBRSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLENBQUM7WUFDdkYsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztnQkFDNUIsY0FBYyxDQUFDLGNBQWMsQ0FBQyxpQ0FBaUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQztZQUN4RyxDQUFDO1FBQ0gsQ0FBQztRQUNELElBQUksQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsZUFBZSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxlQUFvQyxFQUFFLFlBQXFCLEVBQUUsVUFBbUI7UUFDbkcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLEVBQUUsWUFBWSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFDRCxnQ0FBZ0MsQ0FBQyxTQUEyQjtRQUMxRCxJQUFJLENBQUMsUUFBUSxDQUFDLGdDQUFnQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzVELENBQUM7O0FBdkRILG9FQXdEQzs7O0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSwrQkFBK0IsR0FBRyxDQUFDLElBQVUsRUFBVyxFQUFFO0lBQzlELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsMERBQTBELENBQUMsQ0FBQztJQUU3RixNQUFNLFVBQVUsR0FBRyxLQUFLLEtBQUssT0FBTyxJQUFJLEtBQUssS0FBSyxLQUFLLENBQUM7SUFFeEQsT0FBTyxDQUFDLFVBQVUsQ0FBQztBQUNyQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSAqIGFzIGxvZ3MgZnJvbSAnYXdzLWNkay1saWIvYXdzLWxvZ3MnO1xuaW1wb3J0IHR5cGUgKiBhcyBzZWNyZXRzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1zZWNyZXRzbWFuYWdlcic7XG5pbXBvcnQgeyBDb25zdHJ1Y3QsIHR5cGUgTm9kZSB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby1leHRyYW5lb3VzLWRlcGVuZGVuY2llc1xuaW1wb3J0ICogYXMgZGQgZnJvbSAnZGF0YWRvZy1jZGstY29uc3RydWN0cy12Mic7XG5pbXBvcnQgeyBEYXRhZG9nQXBwU2VjTW9kZSB9IGZyb20gJ2RhdGFkb2ctY2RrLWNvbnN0cnVjdHMtdjInO1xuaW1wb3J0IHR5cGUgeyBEYXRhZG9nTGFtYmRhUHJvcHMgfSBmcm9tICdkYXRhZG9nLWNkay1jb25zdHJ1Y3RzLXYyL2xpYi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IERhdGFkb2dTaGFyZWRTZWNyZXQgfSBmcm9tICcuL2RhdGFkb2ctc2hhcmVkLXNlY3JldHMnO1xuaW1wb3J0IHsgdmFsaWRhdGVMYW1iZGFFbnZpcm9ubWVudCB9IGZyb20gJy4vdmFsaWRhdGUtbGFtYmRhLWVudmlyb25tZW50JztcblxuLyoqXG4gKiBQcm9wcyBmb3IgdGhlIERhdGFkb2dMYW1iZGFJbnN0cnVtZW50YXRpb24gY29uc3RydWN0LlxuICogQ29waWVkIG92ZXIgZnJvbSBvcmlnaW5hbCBEYXRhZG9nIGNvbnN0cnVjdC5cbiAqIFRoaXMgaW50ZXJmYWNlIGlzIGludGVudGlvbmFsbHkgbm90IGV4dGVuZGluZyB0aGUgb3JpZ2luYWwgRGF0YWRvZ1Byb3BzLCBzbyB0aGF0IHRoZSBkZXBlbmRlbmN5IG5lZWRzIHRvIGJlIGJ1bmRsZWQgYXMgd2VsbC5cbiAqXG4gKiBsYXRlc3QgdmVyc2lvbiBmb3Igbm9kZUxheWVyVmVyc2lvbjogaHR0cHM6Ly9naXRodWIuY29tL0RhdGFEb2cvZGF0YWRvZy1sYW1iZGEtanMvcmVsZWFzZXNcbiAqXG4gKiBsYXRlc3QgdmVyc2lvbiBmb3IgZXh0ZW5zaW9uTGF5ZXJWZXJzaW9uOiBodHRwczovL2dpdGh1Yi5jb20vRGF0YURvZy9kYXRhZG9nLWxhbWJkYS1leHRlbnNpb24vcmVsZWFzZXNcbiAqXG4gKlxuICogQHNlZSBkZC5EYXRhZG9nUHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRhZG9nTGFtYmRhSW5zdHJ1bWVudGF0aW9uUHJvcHMge1xuICByZWFkb25seSBzZXJ2aWNlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gc3VwcHJlc3MgdGhlIHN5c3RlbSBsb2cgbGluZXMgKFNUQVJULCBFTkQsIFJFUE9SVCkgZnJvbSBMYW1iZGEgbG9ncy5cbiAgICogRGF0YWRvZyByZWNvbW1lbmRzIGtlZXBpbmcgdGhlIFJFUE9SVCBsb2dzLCBhcyB0aGV5IGFyZSB1c2VkIHRvIHBvcHVsYXRlIHRoZSBpbnZvY2F0aW9ucyBsaXN0IGluIHRoZVxuICAgKiBzZXJ2ZXJsZXNzIGZ1bmN0aW9uIHZpZXdzLlxuICAgKiBodHRwczovL2RvY3MuZGF0YWRvZ2hxLmNvbS9sb2dzL2d1aWRlL2ZvcndhcmRlci8/dGFiPWNsb3VkZm9ybWF0aW9uJnNpdGU9dXMjbG9nLWZpbHRlcmluZy1vcHRpb25hbFxuICAgKi9cbiAgcmVhZG9ubHkgc3VwcHJlc3NTeXN0ZW1Mb2dzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0byBlbmFibGUgZW5oYW5jZWQgbWV0cmljcyBmb3IgdGhlIExhbWJkYSBmdW5jdGlvbnMuXG4gICAqXG4gICAqIEBkZWZhdWx0VmFsdWUgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZUVuaGFuY2VkTWV0cmljcz86IGJvb2xlYW47XG4gIHJlYWRvbmx5IG5vZGVMYXllclZlcnNpb246IG51bWJlcjtcbiAgcmVhZG9ubHkgZXh0ZW5zaW9uTGF5ZXJWZXJzaW9uOiBudW1iZXI7XG4gIHJlYWRvbmx5IGFkZExheWVycz86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGZvcndhcmRlckFybj86IHN0cmluZztcbiAgcmVhZG9ubHkgZmx1c2hNZXRyaWNzVG9Mb2dzPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgc2l0ZT86IHN0cmluZztcbiAgcmVhZG9ubHkgYXBpS2V5Pzogc3RyaW5nO1xuICByZWFkb25seSBhcGlLZXlTZWNyZXRBcm4/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGFwaUtleVNlY3JldD86IHNlY3JldHMuSVNlY3JldDtcbiAgcmVhZG9ubHkgYXBpS21zS2V5Pzogc3RyaW5nO1xuICByZWFkb25seSBlbmFibGVEYXRhZG9nVHJhY2luZz86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGVuYWJsZURhdGFkb2dBU00/OiBib29sZWFuO1xuICByZWFkb25seSBlbmFibGVNZXJnZVhyYXlUcmFjZXM/OiBib29sZWFuO1xuICByZWFkb25seSBpbmplY3RMb2dDb250ZXh0PzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgbG9nTGV2ZWw/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGVuYWJsZURhdGFkb2dMb2dzPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgY2FwdHVyZUxhbWJkYVBheWxvYWQ/OiBib29sZWFuO1xuICByZWFkb25seSBlbnY/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHZlcnNpb24/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHRhZ3M/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGNyZWF0ZUZvcndhcmRlclBlcm1pc3Npb25zPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgc291cmNlQ29kZUludGVncmF0aW9uPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgZW5hYmxlQ29sZFN0YXJ0VHJhY2luZz86IGJvb2xlYW47XG4gIHJlYWRvbmx5IG1pbkNvbGRTdGFydFRyYWNlRHVyYXRpb24/OiBudW1iZXI7XG4gIHJlYWRvbmx5IGNvbGRTdGFydFRyYWNlU2tpcExpYnM/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGVuYWJsZVByb2ZpbGluZz86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGVuY29kZUF1dGhvcml6ZXJDb250ZXh0PzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgZGVjb2RlQXV0aG9yaXplckNvbnRleHQ/OiBib29sZWFuO1xuICByZWFkb25seSBhcG1GbHVzaERlYWRsaW5lPzogc3RyaW5nIHwgbnVtYmVyO1xuICByZWFkb25seSByZWRpcmVjdEhhbmRsZXI/OiBib29sZWFuO1xuICByZWFkb25seSBncmFudFNlY3JldFJlYWRBY2Nlc3M/OiBib29sZWFuO1xuICByZWFkb25seSB1c2VMYXllcnNGcm9tQWNjb3VudD86IHN0cmluZztcbiAgcmVhZG9ubHkgZGF0YWRvZ0FwcFNlY01vZGU/OiBEYXRhZG9nQXBwU2VjTW9kZTtcbn1cblxuY29uc3QgTE9HX0VYQ0xVU0lPTl9SVUxFUyA9IE9iamVjdC5mcmVlemUoW1xuICB7XG4gICAgdHlwZTogJ2V4Y2x1ZGVfYXRfbWF0Y2gnLFxuICAgIG5hbWU6ICdkcm9wX3N5c3RlbV9sb2dzJyxcbiAgICBwYXR0ZXJuOiAnXihTVEFSVHxFTkR8UkVQT1JUKSBSZXF1ZXN0SWQ6JyxcbiAgfSxcbl0pO1xuXG4vKipcbiAqIFdyYXBwZXIgY29uc3RydWN0IGZvciBEYXRhZG9nJ3MgTGFtYmRhIGluc3RydW1lbnRhdGlvbi5cbiAqIFRoaXMgY29uc3RydWN0IHdpbGwgY3JlYXRlIGEgRGF0YWRvZyBjb25zdHJ1Y3Qgd2l0aCB0aGUgcHJvdmlkZWQgcHJvcHMgYW5kIGFkZCB0aGUgTGFtYmRhIGZ1bmN0aW9ucyB0byBpdC5cbiAqIFBlciBkZWZhdWx0LCBpdCB3aWxsIGRpc2FibGUgYWxsIGFkZGl0aW9uYWwgZmVhdHVyZXMsIHRoYXQgY2F1c2UgRGF0YWRvZyBjaGFyZ2luZyBmb3IgU2VydmVybGVzcyBGdW5jdGlvbnMgZmVhdHVyZXMuXG4gKiBTbyBqdXN0IGNoYW5nZSBpdCwgaWYgeW91IG5lZWQgdGhlIGFkdmFuY2VkIGZlYXR1cmVzLlxuICpcbiAqIEFkZGl0aW9uYWxseSwgc29tZSBkZWZhdWx0cyBmcm9tIHRoZSBkYXRhZG9nLWludGVncmF0aW9uIGFjY291bnQgbW9kdWxlIGFyZSBhcHBsaWVkOlxuICogLSB0aGUgc2VjcmV0IGFuZCBzaXRlIGZvciB0aGUgQVBJIGtleSBpcyByZWFkIGZyb20gYSBzaGFyZWQgc2VjcmV0IGluIHJpby1kZXZlbG9wZXItdG9vbHMgYWNjb3VudFxuICpcbiAqIFRvIHVzZSBpdCwgaW5zdGFsbCBEYXRhZG9nIENESyBDb25zdHJ1Y3RzIHBhY2thZ2U6XG4gKiBgYGBiYXNoXG4gKiBucG0gaSAtRCBkYXRhZG9nLWNkay1jb25zdHJ1Y3RzLXYyQF41XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIERhdGFkb2dMYW1iZGFJbnN0cnVtZW50YXRpb24gZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwcml2YXRlIGRlbGVnYXRlOiBkZC5EYXRhZG9nTGFtYmRhO1xuICBwcml2YXRlIGRhdGFkb2dTZWNyZXQ6IERhdGFkb2dTaGFyZWRTZWNyZXQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgc2l0ZTogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IGVuaGFuY2VkTWV0cmljc0VuYWJsZWQ6IGJvb2xlYW47XG4gIHByaXZhdGUgcmVhZG9ubHkgc3VwcHJlc3NTeXN0ZW1Mb2dzPzogYm9vbGVhbjtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IERhdGFkb2dMYW1iZGFJbnN0cnVtZW50YXRpb25Qcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLmRhdGFkb2dTZWNyZXQgPSBEYXRhZG9nU2hhcmVkU2VjcmV0LmFwaUtleVNlY3JldCh0aGlzKTtcbiAgICB0aGlzLnN1cHByZXNzU3lzdGVtTG9ncyA9IHByb3BzLnN1cHByZXNzU3lzdGVtTG9ncztcblxuICAgIGNvbnN0IHJlc29sdmVkRGF0YWRvZ1NlY3JldCA9IERhdGFkb2dTaGFyZWRTZWNyZXQuY3JlZGVudGlhbHNTZWNyZXQodGhpcyk7XG4gICAgdGhpcy5zaXRlID0gcmVzb2x2ZWREYXRhZG9nU2VjcmV0LmdldFNlY3JldFZhbHVlKCdTaXRlJykudW5zYWZlVW53cmFwKCk7XG5cbiAgICBjb25zdCBmaW5hbFByb3BzOiBEYXRhZG9nTGFtYmRhUHJvcHMgPSB7XG4gICAgICBlbnY6ICdwcm9kJyxcbiAgICAgIGFwaUtleVNlY3JldEFybjogdGhpcy5kYXRhZG9nU2VjcmV0LnNlY3JldEFybixcbiAgICAgIHNpdGU6IHRoaXMuc2l0ZSxcbiAgICAgIGVuYWJsZURhdGFkb2dMb2dzOiB0cnVlLFxuICAgICAgaW5qZWN0TG9nQ29udGV4dDogdHJ1ZSxcbiAgICAgIGVuYWJsZURhdGFkb2dUcmFjaW5nOiBmYWxzZSxcbiAgICAgIGVuYWJsZUNvbGRTdGFydFRyYWNpbmc6IGZhbHNlLFxuICAgICAgZW5hYmxlTWVyZ2VYcmF5VHJhY2VzOiBmYWxzZSxcbiAgICAgIGVuYWJsZVByb2ZpbGluZzogZmFsc2UsXG4gICAgICBkYXRhZG9nQXBwU2VjTW9kZTogRGF0YWRvZ0FwcFNlY01vZGUuT0ZGLFxuICAgICAgc291cmNlQ29kZUludGVncmF0aW9uOiBnZXRTb3VyY2VDb2RlSW50ZWdyYXRpb25EZWZhdWx0KHRoaXMubm9kZSksXG4gICAgICAuLi5wcm9wcyxcbiAgICB9O1xuXG4gICAgZGQudmFsaWRhdGVQcm9wcyhmaW5hbFByb3BzKTtcbiAgICBkZC5jaGVja0Zvck11bHRpcGxlQXBpS2V5cyhmaW5hbFByb3BzKTtcblxuICAgIHRoaXMuZGVsZWdhdGUgPSBuZXcgZGQuRGF0YWRvZ0xhbWJkYSh0aGlzLCAnRGF0YWRvZycsIGZpbmFsUHJvcHMpO1xuICAgIHRoaXMuZW5oYW5jZWRNZXRyaWNzRW5hYmxlZCA9IHByb3BzLmVuYWJsZUVuaGFuY2VkTWV0cmljcyA/PyBmYWxzZTtcbiAgfVxuXG4gIGFkZExhbWJkYUZ1bmN0aW9ucyhsYW1iZGFGdW5jdGlvbnM6IGRkLkxhbWJkYUZ1bmN0aW9uW10sIGNvbnN0cnVjdD86IENvbnN0cnVjdCk6IHZvaWQge1xuICAgIC8vIFZhbGlkYXRlIHRoZSB3aG9sZSBiYXRjaCBiZWZvcmUgY2hhbmdpbmcgYW55IGZ1bmN0aW9uLlxuICAgIGxhbWJkYUZ1bmN0aW9ucy5mb3JFYWNoKHZhbGlkYXRlTGFtYmRhRW52aXJvbm1lbnQpO1xuICAgIGZvciAoY29uc3QgbGFtYmRhRnVuY3Rpb24gb2YgbGFtYmRhRnVuY3Rpb25zKSB7XG4gICAgICB0aGlzLmRhdGFkb2dTZWNyZXQuZ3JhbnRSZWFkKGxhbWJkYUZ1bmN0aW9uKTtcbiAgICAgIGxhbWJkYUZ1bmN0aW9uLmFkZEVudmlyb25tZW50KCdERF9FTkhBTkNFRF9NRVRSSUNTJywgYCR7dGhpcy5lbmhhbmNlZE1ldHJpY3NFbmFibGVkfWApO1xuICAgICAgaWYgKHRoaXMuc3VwcHJlc3NTeXN0ZW1Mb2dzKSB7XG4gICAgICAgIGxhbWJkYUZ1bmN0aW9uLmFkZEVudmlyb25tZW50KCdERF9MT0dTX0NPTkZJR19QUk9DRVNTSU5HX1JVTEVTJywgSlNPTi5zdHJpbmdpZnkoTE9HX0VYQ0xVU0lPTl9SVUxFUykpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLmRlbGVnYXRlLmFkZExhbWJkYUZ1bmN0aW9ucyhsYW1iZGFGdW5jdGlvbnMsIGNvbnN0cnVjdCk7XG4gIH1cblxuICBhZGRHaXRDb21taXRNZXRhZGF0YShsYW1iZGFGdW5jdGlvbnM6IGRkLkxhbWJkYUZ1bmN0aW9uW10sIGdpdENvbW1pdFNoYT86IHN0cmluZywgZ2l0UmVwb1VybD86IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuZGVsZWdhdGUuYWRkR2l0Q29tbWl0TWV0YWRhdGEobGFtYmRhRnVuY3Rpb25zLCBnaXRDb21taXRTaGEsIGdpdFJlcG9VcmwpO1xuICB9XG4gIGFkZEZvcndhcmRlclRvTm9uTGFtYmRhTG9nR3JvdXBzKGxvZ0dyb3VwczogbG9ncy5JTG9nR3JvdXBbXSk6IHZvaWQge1xuICAgIHRoaXMuZGVsZWdhdGUuYWRkRm9yd2FyZGVyVG9Ob25MYW1iZGFMb2dHcm91cHMobG9nR3JvdXBzKTtcbiAgfVxufVxuXG4vKipcbiAqIEBwYXJhbSBub2RlIC0gVGhlIG5vZGUgdG8gY2hlY2sgZm9yIHRoZSBjb250ZXh0IHZhbHVlXG4gKiBAcmV0dXJucyB0cnVlIGFzIGEgZGVmYXVsdCBpZiBub3QgZGlzYWJsZWQgdmlhIGNvbnRleHRcbiAqL1xuY29uc3QgZ2V0U291cmNlQ29kZUludGVncmF0aW9uRGVmYXVsdCA9IChub2RlOiBOb2RlKTogYm9vbGVhbiA9PiB7XG4gIGNvbnN0IHZhbHVlID0gbm9kZS50cnlHZXRDb250ZXh0KCdAcmlvLWNsb3VkL2Nkay12Mi1jb25zdHJ1Y3RzOmVuYWJsZVNvdXJjZUNvZGVJbnRlZ3JhdGlvbicpO1xuXG4gIGNvbnN0IGlzRGlzYWJsZWQgPSB2YWx1ZSA9PT0gJ2ZhbHNlJyB8fCB2YWx1ZSA9PT0gZmFsc2U7XG5cbiAgcmV0dXJuICFpc0Rpc2FibGVkO1xufTtcbiJdfQ==
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZy1sYW1iZGEtaW5zdHJ1bWVudGF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGFkb2d2Mi9kYXRhZG9nLWxhbWJkYS1pbnN0cnVtZW50YXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFFQSwyQ0FBa0Q7QUFDbEQsNkRBQTZEO0FBQzdELGdEQUFnRDtBQUNoRCx5RUFBOEQ7QUFFOUQscUVBQStEO0FBQy9ELCtFQUEwRTtBQWtFMUUsTUFBTSxtQkFBbUIsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQ3hDO1FBQ0UsSUFBSSxFQUFFLGtCQUFrQjtRQUN4QixJQUFJLEVBQUUsa0JBQWtCO1FBQ3hCLE9BQU8sRUFBRSxnQ0FBZ0M7S0FDMUM7Q0FDRixDQUFDLENBQUM7QUFFSDs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0gsTUFBYSw0QkFBNkIsU0FBUSxzQkFBUztJQU16RCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXdDO1FBQ2hGLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxDQUFDLGFBQWEsR0FBRyw0Q0FBbUIsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQztRQUVuRCxNQUFNLHFCQUFxQixHQUFHLDRDQUFtQixDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFFLElBQUksQ0FBQyxJQUFJLEdBQUcscUJBQXFCLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRXhFLE1BQU0sVUFBVSxHQUF1QjtZQUNyQyxHQUFHLEVBQUUsTUFBTTtZQUNYLGVBQWUsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVM7WUFDN0MsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsaUJBQWlCLEVBQUUsSUFBSTtZQUN2QixnQkFBZ0IsRUFBRSxJQUFJO1lBQ3RCLG9CQUFvQixFQUFFLEtBQUs7WUFDM0Isc0JBQXNCLEVBQUUsS0FBSztZQUM3QixxQkFBcUIsRUFBRSxLQUFLO1lBQzVCLGVBQWUsRUFBRSxLQUFLO1lBQ3RCLGlCQUFpQixFQUFFLDZDQUFpQixDQUFDLEdBQUc7WUFDeEMscUJBQXFCLEVBQUUsK0JBQStCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNqRSxHQUFHLEtBQUs7U0FDVCxDQUFDO1FBRUYsRUFBRSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM3QixFQUFFLENBQUMsdUJBQXVCLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFdkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsc0JBQXNCLEdBQUcsS0FBSyxDQUFDLHFCQUFxQixJQUFJLEtBQUssQ0FBQztJQUNyRSxDQUFDO0lBRUQsa0JBQWtCLENBQUMsZUFBb0MsRUFBRSxTQUFxQjtRQUM1RSx5REFBeUQ7UUFDekQsZUFBZSxDQUFDLE9BQU8sQ0FBQyx1REFBeUIsQ0FBQyxDQUFDO1FBQ25ELEtBQUssTUFBTSxjQUFjLElBQUksZUFBZSxFQUFFLENBQUM7WUFDN0MsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDN0MsY0FBYyxDQUFDLGNBQWMsQ0FBQyxxQkFBcUIsRUFBRSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLENBQUM7WUFDdkYsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztnQkFDNUIsY0FBYyxDQUFDLGNBQWMsQ0FBQyxpQ0FBaUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQztZQUN4RyxDQUFDO1FBQ0gsQ0FBQztRQUNELElBQUksQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsZUFBZSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxlQUFvQyxFQUFFLFlBQXFCLEVBQUUsVUFBbUI7UUFDbkcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLEVBQUUsWUFBWSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFDRCxnQ0FBZ0MsQ0FBQyxTQUEyQjtRQUMxRCxJQUFJLENBQUMsUUFBUSxDQUFDLGdDQUFnQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzVELENBQUM7O0FBdkRILG9FQXdEQzs7O0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSwrQkFBK0IsR0FBRyxDQUFDLElBQVUsRUFBVyxFQUFFO0lBQzlELE1BQU0sS0FBSyxHQUNULElBQUksQ0FBQyxhQUFhLENBQUMsbUVBQW1FLENBQUM7UUFDdkYsSUFBSSxDQUFDLGFBQWEsQ0FBQywwREFBMEQsQ0FBQyxDQUFDO0lBRWpGLE1BQU0sVUFBVSxHQUFHLEtBQUssS0FBSyxPQUFPLElBQUksS0FBSyxLQUFLLEtBQUssQ0FBQztJQUV4RCxPQUFPLENBQUMsVUFBVSxDQUFDO0FBQ3JCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlICogYXMgbG9ncyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbG9ncyc7XG5pbXBvcnQgdHlwZSAqIGFzIHNlY3JldHMgZnJvbSAnYXdzLWNkay1saWIvYXdzLXNlY3JldHNtYW5hZ2VyJztcbmltcG9ydCB7IENvbnN0cnVjdCwgdHlwZSBOb2RlIH0gZnJvbSAnY29uc3RydWN0cyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLWV4dHJhbmVvdXMtZGVwZW5kZW5jaWVzXG5pbXBvcnQgKiBhcyBkZCBmcm9tICdkYXRhZG9nLWNkay1jb25zdHJ1Y3RzLXYyJztcbmltcG9ydCB7IERhdGFkb2dBcHBTZWNNb2RlIH0gZnJvbSAnZGF0YWRvZy1jZGstY29uc3RydWN0cy12Mic7XG5pbXBvcnQgdHlwZSB7IERhdGFkb2dMYW1iZGFQcm9wcyB9IGZyb20gJ2RhdGFkb2ctY2RrLWNvbnN0cnVjdHMtdjIvbGliL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgRGF0YWRvZ1NoYXJlZFNlY3JldCB9IGZyb20gJy4vZGF0YWRvZy1zaGFyZWQtc2VjcmV0cyc7XG5pbXBvcnQgeyB2YWxpZGF0ZUxhbWJkYUVudmlyb25tZW50IH0gZnJvbSAnLi92YWxpZGF0ZS1sYW1iZGEtZW52aXJvbm1lbnQnO1xuXG4vKipcbiAqIFByb3BzIGZvciB0aGUgRGF0YWRvZ0xhbWJkYUluc3RydW1lbnRhdGlvbiBjb25zdHJ1Y3QuXG4gKiBDb3BpZWQgb3ZlciBmcm9tIG9yaWdpbmFsIERhdGFkb2cgY29uc3RydWN0LlxuICogVGhpcyBpbnRlcmZhY2UgaXMgaW50ZW50aW9uYWxseSBub3QgZXh0ZW5kaW5nIHRoZSBvcmlnaW5hbCBEYXRhZG9nUHJvcHMsIHNvIHRoYXQgdGhlIGRlcGVuZGVuY3kgbmVlZHMgdG8gYmUgYnVuZGxlZCBhcyB3ZWxsLlxuICpcbiAqIGxhdGVzdCB2ZXJzaW9uIGZvciBub2RlTGF5ZXJWZXJzaW9uOiBodHRwczovL2dpdGh1Yi5jb20vRGF0YURvZy9kYXRhZG9nLWxhbWJkYS1qcy9yZWxlYXNlc1xuICpcbiAqIGxhdGVzdCB2ZXJzaW9uIGZvciBleHRlbnNpb25MYXllclZlcnNpb246IGh0dHBzOi8vZ2l0aHViLmNvbS9EYXRhRG9nL2RhdGFkb2ctbGFtYmRhLWV4dGVuc2lvbi9yZWxlYXNlc1xuICpcbiAqXG4gKiBAc2VlIGRkLkRhdGFkb2dQcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGFkb2dMYW1iZGFJbnN0cnVtZW50YXRpb25Qcm9wcyB7XG4gIHJlYWRvbmx5IHNlcnZpY2U6IHN0cmluZztcblxuICAvKipcbiAgICogV2hldGhlciB0byBzdXBwcmVzcyB0aGUgc3lzdGVtIGxvZyBsaW5lcyAoU1RBUlQsIEVORCwgUkVQT1JUKSBmcm9tIExhbWJkYSBsb2dzLlxuICAgKiBEYXRhZG9nIHJlY29tbWVuZHMga2VlcGluZyB0aGUgUkVQT1JUIGxvZ3MsIGFzIHRoZXkgYXJlIHVzZWQgdG8gcG9wdWxhdGUgdGhlIGludm9jYXRpb25zIGxpc3QgaW4gdGhlXG4gICAqIHNlcnZlcmxlc3MgZnVuY3Rpb24gdmlld3MuXG4gICAqIGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL2xvZ3MvZ3VpZGUvZm9yd2FyZGVyLz90YWI9Y2xvdWRmb3JtYXRpb24mc2l0ZT11cyNsb2ctZmlsdGVyaW5nLW9wdGlvbmFsXG4gICAqL1xuICByZWFkb25seSBzdXBwcmVzc1N5c3RlbUxvZ3M/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGVuYWJsZSBlbmhhbmNlZCBtZXRyaWNzIGZvciB0aGUgTGFtYmRhIGZ1bmN0aW9ucy5cbiAgICpcbiAgICogQGRlZmF1bHRWYWx1ZSBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlRW5oYW5jZWRNZXRyaWNzPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgbm9kZUxheWVyVmVyc2lvbjogbnVtYmVyO1xuICByZWFkb25seSBleHRlbnNpb25MYXllclZlcnNpb246IG51bWJlcjtcbiAgcmVhZG9ubHkgYWRkTGF5ZXJzPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgZm9yd2FyZGVyQXJuPzogc3RyaW5nO1xuICByZWFkb25seSBmbHVzaE1ldHJpY3NUb0xvZ3M/OiBib29sZWFuO1xuICByZWFkb25seSBzaXRlPzogc3RyaW5nO1xuICByZWFkb25seSBhcGlLZXk/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGFwaUtleVNlY3JldEFybj86IHN0cmluZztcbiAgcmVhZG9ubHkgYXBpS2V5U2VjcmV0Pzogc2VjcmV0cy5JU2VjcmV0O1xuICByZWFkb25seSBhcGlLbXNLZXk/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGVuYWJsZURhdGFkb2dUcmFjaW5nPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgZW5hYmxlRGF0YWRvZ0FTTT86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGVuYWJsZU1lcmdlWHJheVRyYWNlcz86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGluamVjdExvZ0NvbnRleHQ/OiBib29sZWFuO1xuICByZWFkb25seSBsb2dMZXZlbD86IHN0cmluZztcbiAgcmVhZG9ubHkgZW5hYmxlRGF0YWRvZ0xvZ3M/OiBib29sZWFuO1xuICByZWFkb25seSBjYXB0dXJlTGFtYmRhUGF5bG9hZD86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGVudj86IHN0cmluZztcbiAgcmVhZG9ubHkgdmVyc2lvbj86IHN0cmluZztcbiAgcmVhZG9ubHkgdGFncz86IHN0cmluZztcbiAgcmVhZG9ubHkgY3JlYXRlRm9yd2FyZGVyUGVybWlzc2lvbnM/OiBib29sZWFuO1xuICByZWFkb25seSBzb3VyY2VDb2RlSW50ZWdyYXRpb24/OiBib29sZWFuO1xuICByZWFkb25seSBlbmFibGVDb2xkU3RhcnRUcmFjaW5nPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgbWluQ29sZFN0YXJ0VHJhY2VEdXJhdGlvbj86IG51bWJlcjtcbiAgcmVhZG9ubHkgY29sZFN0YXJ0VHJhY2VTa2lwTGlicz86IHN0cmluZztcbiAgcmVhZG9ubHkgZW5hYmxlUHJvZmlsaW5nPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgZW5jb2RlQXV0aG9yaXplckNvbnRleHQ/OiBib29sZWFuO1xuICByZWFkb25seSBkZWNvZGVBdXRob3JpemVyQ29udGV4dD86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGFwbUZsdXNoRGVhZGxpbmU/OiBzdHJpbmcgfCBudW1iZXI7XG4gIHJlYWRvbmx5IHJlZGlyZWN0SGFuZGxlcj86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGdyYW50U2VjcmV0UmVhZEFjY2Vzcz86IGJvb2xlYW47XG4gIHJlYWRvbmx5IHVzZUxheWVyc0Zyb21BY2NvdW50Pzogc3RyaW5nO1xuICByZWFkb25seSBkYXRhZG9nQXBwU2VjTW9kZT86IERhdGFkb2dBcHBTZWNNb2RlO1xufVxuXG5jb25zdCBMT0dfRVhDTFVTSU9OX1JVTEVTID0gT2JqZWN0LmZyZWV6ZShbXG4gIHtcbiAgICB0eXBlOiAnZXhjbHVkZV9hdF9tYXRjaCcsXG4gICAgbmFtZTogJ2Ryb3Bfc3lzdGVtX2xvZ3MnLFxuICAgIHBhdHRlcm46ICdeKFNUQVJUfEVORHxSRVBPUlQpIFJlcXVlc3RJZDonLFxuICB9LFxuXSk7XG5cbi8qKlxuICogV3JhcHBlciBjb25zdHJ1Y3QgZm9yIERhdGFkb2cncyBMYW1iZGEgaW5zdHJ1bWVudGF0aW9uLlxuICogVGhpcyBjb25zdHJ1Y3Qgd2lsbCBjcmVhdGUgYSBEYXRhZG9nIGNvbnN0cnVjdCB3aXRoIHRoZSBwcm92aWRlZCBwcm9wcyBhbmQgYWRkIHRoZSBMYW1iZGEgZnVuY3Rpb25zIHRvIGl0LlxuICogUGVyIGRlZmF1bHQsIGl0IHdpbGwgZGlzYWJsZSBhbGwgYWRkaXRpb25hbCBmZWF0dXJlcywgdGhhdCBjYXVzZSBEYXRhZG9nIGNoYXJnaW5nIGZvciBTZXJ2ZXJsZXNzIEZ1bmN0aW9ucyBmZWF0dXJlcy5cbiAqIFNvIGp1c3QgY2hhbmdlIGl0LCBpZiB5b3UgbmVlZCB0aGUgYWR2YW5jZWQgZmVhdHVyZXMuXG4gKlxuICogQWRkaXRpb25hbGx5LCBzb21lIGRlZmF1bHRzIGZyb20gdGhlIGRhdGFkb2ctaW50ZWdyYXRpb24gYWNjb3VudCBtb2R1bGUgYXJlIGFwcGxpZWQ6XG4gKiAtIHRoZSBzZWNyZXQgYW5kIHNpdGUgZm9yIHRoZSBBUEkga2V5IGlzIHJlYWQgZnJvbSBhIHNoYXJlZCBzZWNyZXQgaW4gcmlvLWRldmVsb3Blci10b29scyBhY2NvdW50XG4gKlxuICogVG8gdXNlIGl0LCBpbnN0YWxsIERhdGFkb2cgQ0RLIENvbnN0cnVjdHMgcGFja2FnZTpcbiAqIGBgYGJhc2hcbiAqIG5wbSBpIC1EIGRhdGFkb2ctY2RrLWNvbnN0cnVjdHMtdjJAXjVcbiAqIGBgYFxuICovXG5leHBvcnQgY2xhc3MgRGF0YWRvZ0xhbWJkYUluc3RydW1lbnRhdGlvbiBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHByaXZhdGUgZGVsZWdhdGU6IGRkLkRhdGFkb2dMYW1iZGE7XG4gIHByaXZhdGUgZGF0YWRvZ1NlY3JldDogRGF0YWRvZ1NoYXJlZFNlY3JldDtcbiAgcHJpdmF0ZSByZWFkb25seSBzaXRlOiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgZW5oYW5jZWRNZXRyaWNzRW5hYmxlZDogYm9vbGVhbjtcbiAgcHJpdmF0ZSByZWFkb25seSBzdXBwcmVzc1N5c3RlbUxvZ3M/OiBib29sZWFuO1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogRGF0YWRvZ0xhbWJkYUluc3RydW1lbnRhdGlvblByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIHRoaXMuZGF0YWRvZ1NlY3JldCA9IERhdGFkb2dTaGFyZWRTZWNyZXQuYXBpS2V5U2VjcmV0KHRoaXMpO1xuICAgIHRoaXMuc3VwcHJlc3NTeXN0ZW1Mb2dzID0gcHJvcHMuc3VwcHJlc3NTeXN0ZW1Mb2dzO1xuXG4gICAgY29uc3QgcmVzb2x2ZWREYXRhZG9nU2VjcmV0ID0gRGF0YWRvZ1NoYXJlZFNlY3JldC5jcmVkZW50aWFsc1NlY3JldCh0aGlzKTtcbiAgICB0aGlzLnNpdGUgPSByZXNvbHZlZERhdGFkb2dTZWNyZXQuZ2V0U2VjcmV0VmFsdWUoJ1NpdGUnKS51bnNhZmVVbndyYXAoKTtcblxuICAgIGNvbnN0IGZpbmFsUHJvcHM6IERhdGFkb2dMYW1iZGFQcm9wcyA9IHtcbiAgICAgIGVudjogJ3Byb2QnLFxuICAgICAgYXBpS2V5U2VjcmV0QXJuOiB0aGlzLmRhdGFkb2dTZWNyZXQuc2VjcmV0QXJuLFxuICAgICAgc2l0ZTogdGhpcy5zaXRlLFxuICAgICAgZW5hYmxlRGF0YWRvZ0xvZ3M6IHRydWUsXG4gICAgICBpbmplY3RMb2dDb250ZXh0OiB0cnVlLFxuICAgICAgZW5hYmxlRGF0YWRvZ1RyYWNpbmc6IGZhbHNlLFxuICAgICAgZW5hYmxlQ29sZFN0YXJ0VHJhY2luZzogZmFsc2UsXG4gICAgICBlbmFibGVNZXJnZVhyYXlUcmFjZXM6IGZhbHNlLFxuICAgICAgZW5hYmxlUHJvZmlsaW5nOiBmYWxzZSxcbiAgICAgIGRhdGFkb2dBcHBTZWNNb2RlOiBEYXRhZG9nQXBwU2VjTW9kZS5PRkYsXG4gICAgICBzb3VyY2VDb2RlSW50ZWdyYXRpb246IGdldFNvdXJjZUNvZGVJbnRlZ3JhdGlvbkRlZmF1bHQodGhpcy5ub2RlKSxcbiAgICAgIC4uLnByb3BzLFxuICAgIH07XG5cbiAgICBkZC52YWxpZGF0ZVByb3BzKGZpbmFsUHJvcHMpO1xuICAgIGRkLmNoZWNrRm9yTXVsdGlwbGVBcGlLZXlzKGZpbmFsUHJvcHMpO1xuXG4gICAgdGhpcy5kZWxlZ2F0ZSA9IG5ldyBkZC5EYXRhZG9nTGFtYmRhKHRoaXMsICdEYXRhZG9nJywgZmluYWxQcm9wcyk7XG4gICAgdGhpcy5lbmhhbmNlZE1ldHJpY3NFbmFibGVkID0gcHJvcHMuZW5hYmxlRW5oYW5jZWRNZXRyaWNzID8/IGZhbHNlO1xuICB9XG5cbiAgYWRkTGFtYmRhRnVuY3Rpb25zKGxhbWJkYUZ1bmN0aW9uczogZGQuTGFtYmRhRnVuY3Rpb25bXSwgY29uc3RydWN0PzogQ29uc3RydWN0KTogdm9pZCB7XG4gICAgLy8gVmFsaWRhdGUgdGhlIHdob2xlIGJhdGNoIGJlZm9yZSBjaGFuZ2luZyBhbnkgZnVuY3Rpb24uXG4gICAgbGFtYmRhRnVuY3Rpb25zLmZvckVhY2godmFsaWRhdGVMYW1iZGFFbnZpcm9ubWVudCk7XG4gICAgZm9yIChjb25zdCBsYW1iZGFGdW5jdGlvbiBvZiBsYW1iZGFGdW5jdGlvbnMpIHtcbiAgICAgIHRoaXMuZGF0YWRvZ1NlY3JldC5ncmFudFJlYWQobGFtYmRhRnVuY3Rpb24pO1xuICAgICAgbGFtYmRhRnVuY3Rpb24uYWRkRW52aXJvbm1lbnQoJ0REX0VOSEFOQ0VEX01FVFJJQ1MnLCBgJHt0aGlzLmVuaGFuY2VkTWV0cmljc0VuYWJsZWR9YCk7XG4gICAgICBpZiAodGhpcy5zdXBwcmVzc1N5c3RlbUxvZ3MpIHtcbiAgICAgICAgbGFtYmRhRnVuY3Rpb24uYWRkRW52aXJvbm1lbnQoJ0REX0xPR1NfQ09ORklHX1BST0NFU1NJTkdfUlVMRVMnLCBKU09OLnN0cmluZ2lmeShMT0dfRVhDTFVTSU9OX1JVTEVTKSk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuZGVsZWdhdGUuYWRkTGFtYmRhRnVuY3Rpb25zKGxhbWJkYUZ1bmN0aW9ucywgY29uc3RydWN0KTtcbiAgfVxuXG4gIGFkZEdpdENvbW1pdE1ldGFkYXRhKGxhbWJkYUZ1bmN0aW9uczogZGQuTGFtYmRhRnVuY3Rpb25bXSwgZ2l0Q29tbWl0U2hhPzogc3RyaW5nLCBnaXRSZXBvVXJsPzogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5kZWxlZ2F0ZS5hZGRHaXRDb21taXRNZXRhZGF0YShsYW1iZGFGdW5jdGlvbnMsIGdpdENvbW1pdFNoYSwgZ2l0UmVwb1VybCk7XG4gIH1cbiAgYWRkRm9yd2FyZGVyVG9Ob25MYW1iZGFMb2dHcm91cHMobG9nR3JvdXBzOiBsb2dzLklMb2dHcm91cFtdKTogdm9pZCB7XG4gICAgdGhpcy5kZWxlZ2F0ZS5hZGRGb3J3YXJkZXJUb05vbkxhbWJkYUxvZ0dyb3Vwcyhsb2dHcm91cHMpO1xuICB9XG59XG5cbi8qKlxuICogQHBhcmFtIG5vZGUgLSBUaGUgbm9kZSB0byBjaGVjayBmb3IgdGhlIGNvbnRleHQgdmFsdWVcbiAqIEByZXR1cm5zIHRydWUgYXMgYSBkZWZhdWx0IGlmIG5vdCBkaXNhYmxlZCB2aWEgY29udGV4dFxuICovXG5jb25zdCBnZXRTb3VyY2VDb2RlSW50ZWdyYXRpb25EZWZhdWx0ID0gKG5vZGU6IE5vZGUpOiBib29sZWFuID0+IHtcbiAgY29uc3QgdmFsdWUgPVxuICAgIG5vZGUudHJ5R2V0Q29udGV4dCgnQHJpby1jbG91ZC1pbnRlcm5hbC9jZGstdjItY29uc3RydWN0czplbmFibGVTb3VyY2VDb2RlSW50ZWdyYXRpb24nKSA/P1xuICAgIG5vZGUudHJ5R2V0Q29udGV4dCgnQHJpby1jbG91ZC9jZGstdjItY29uc3RydWN0czplbmFibGVTb3VyY2VDb2RlSW50ZWdyYXRpb24nKTtcblxuICBjb25zdCBpc0Rpc2FibGVkID0gdmFsdWUgPT09ICdmYWxzZScgfHwgdmFsdWUgPT09IGZhbHNlO1xuXG4gIHJldHVybiAhaXNEaXNhYmxlZDtcbn07XG4iXX0=
@@ -93,7 +93,7 @@ class DatadogLogIndexMonitoring extends constructs_1.Construct {
93
93
  }
94
94
  exports.DatadogLogIndexMonitoring = DatadogLogIndexMonitoring;
95
95
  _a = JSII_RTTI_SYMBOL_1;
96
- DatadogLogIndexMonitoring[_a] = { fqn: "@rio-cloud/cdk-v2-constructs.datadogv2.DatadogLogIndexMonitoring", version: "0.0.0" };
96
+ DatadogLogIndexMonitoring[_a] = { fqn: "@rio-cloud-internal/cdk-v2-constructs.datadogv2.DatadogLogIndexMonitoring", version: "0.0.0" };
97
97
  const commonMonitorNamePrefix = (indexName) => `'${indexName}' index`;
98
98
  const commonTags = (indexName) => [`logIndex:${indexName}`];
99
99
  function getOrganizationUrlPrefix(organization) {