@rio-cloud/cdk-v2-constructs 9.0.0-alpha.6 → 9.0.0-alpha.7
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.
- package/.jsii +19 -19
- package/lib/backup/backup-policy.d.ts +1 -1
- package/lib/backup/backup-policy.js +1 -1
- package/lib/certificate/cloud-front-certificate.d.ts +1 -1
- package/lib/certificate/cloud-front-certificate.js +4 -3
- package/lib/certificate/lambda/handler.cjs +21 -7
- package/lib/contributions/cop-frontend/cloudfront/contentSecurityPolicy.js +2 -2
- package/lib/contributions/cop-frontend/cloudfront/rio-cloudfront-distribution.d.ts +1 -1
- package/lib/contributions/cop-frontend/cloudfront/rio-cloudfront-distribution.js +3 -3
- package/lib/contributions/smart-route/gitlab-runner/autoscaling-runner.d.ts +4 -4
- package/lib/contributions/smart-route/gitlab-runner/autoscaling-runner.js +1 -1
- package/lib/contributions/smart-route/gitlab-runner/runner-roles.d.ts +1 -1
- package/lib/contributions/smart-route/gitlab-runner/runner-roles.js +1 -1
- package/lib/contributions/team-claid/aws-backup-monitoring/aws-backup-monitoring.js +2 -2
- package/lib/contributions/team-claid/aws-glue/view-table.d.ts +1 -1
- package/lib/contributions/team-claid/aws-glue/view-table.js +1 -1
- package/lib/contributions/team-claid/datadog-usage-monitoring/datadog-usage-monitoring.d.ts +2 -2
- package/lib/contributions/team-claid/datadog-usage-monitoring/datadog-usage-monitoring.js +2 -2
- package/lib/contributions/team-outbound-order-book/aws-ecs-abruptly-stopped-monitor/aws-ecs-abruptly-stopped-monitor.d.ts +1 -1
- package/lib/contributions/team-outbound-order-book/aws-ecs-abruptly-stopped-monitor/aws-ecs-abruptly-stopped-monitor.js +3 -3
- package/lib/contributions/team-shipper-inbound-blue/pipeline/pipeline-build-stage-actions.d.ts +2 -2
- package/lib/contributions/team-shipper-inbound-blue/pipeline/pipeline-build-stage-actions.js +1 -1
- package/lib/contributions/team-transport/datadog/datadog-dashboard-construct.d.ts +1 -1
- package/lib/contributions/team-transport/datadog/datadog-dashboard-construct.js +3 -3
- package/lib/contributions/team-transport/datadog/datadog-dashboard-downloader.d.ts +1 -1
- package/lib/contributions/team-transport/datadog/datadog-dashboard-downloader.js +2 -2
- package/lib/contributions/team-transport/datadog-synthetics/datadog-synthetics-test.js +4 -4
- package/lib/contributions/team-transport/pipeline/application-stage.d.ts +3 -3
- package/lib/contributions/team-transport/pipeline/application-stage.js +1 -1
- package/lib/contributions/team-transport/pipeline/build-project.d.ts +2 -2
- package/lib/contributions/team-transport/pipeline/build-project.js +1 -1
- package/lib/contributions/team-transport/pipeline/buildspecs.d.ts +1 -1
- package/lib/contributions/team-transport/pipeline/buildspecs.js +1 -1
- package/lib/contributions/team-transport/pipeline/datadog-monitors.d.ts +3 -3
- package/lib/contributions/team-transport/pipeline/datadog-monitors.js +1 -1
- package/lib/contributions/team-transport/pipeline/monitoring-deploy-step.d.ts +1 -1
- package/lib/contributions/team-transport/pipeline/monitoring-deploy-step.js +2 -5
- package/lib/contributions/team-transport/pipeline/pipeline-stack.d.ts +5 -5
- package/lib/contributions/team-transport/pipeline/pipeline-stack.js +3 -3
- package/lib/datadog/datadog-log-index-monitoring.d.ts +1 -1
- package/lib/datadog/datadog-log-index-monitoring.js +1 -1
- package/lib/datadog/datadog-monitor.d.ts +1 -1
- package/lib/datadog/datadog-monitor.js +1 -1
- package/lib/datadogv2/datadog-dashboard.js +2 -2
- package/lib/datadogv2/datadog-lambda-instrumentation.d.ts +2 -2
- package/lib/datadogv2/datadog-lambda-instrumentation.js +1 -1
- package/lib/datadogv2/datadog-log-index-monitoring.d.ts +1 -1
- package/lib/datadogv2/datadog-log-index-monitoring.js +1 -1
- package/lib/datadogv2/datadog-monitor.d.ts +1 -1
- package/lib/datadogv2/datadog-monitor.js +1 -1
- package/lib/datadogv2/datadog-notification.d.ts +1 -1
- package/lib/datadogv2/datadog-notification.js +1 -1
- package/lib/datadogv2/datadog-service-catalog-entry.js +2 -2
- package/lib/datadogv2/datadog-shared-secrets.js +2 -2
- package/lib/datadogv2/secret-locator-custom-resource/on-create.cjs +3 -1
- package/lib/datadogv2/service-catalog-custom-resource/on-create.cjs +3 -1
- package/lib/datadogv2/validate-lambda-environment.d.ts +1 -1
- package/lib/datadogv2/validate-lambda-environment.js +1 -1
- package/lib/ecr/docker-hub-pull-through-cache.d.ts +1 -1
- package/lib/ecr/docker-hub-pull-through-cache.js +1 -1
- package/lib/fargate/codedeploy-custom-resources/run-monitoring-test-suite-runner.cjs +1 -1
- package/lib/fargate/datadog.d.ts +3 -3
- package/lib/fargate/datadog.js +1 -1
- package/lib/fargate/rio-fargate-service-blue-green-alpha.d.ts +1 -1
- package/lib/fargate/rio-fargate-service-blue-green-alpha.js +5 -5
- package/lib/fargate/rio-fargate-service.d.ts +1 -1
- package/lib/fargate/rio-fargate-service.js +1 -1
- package/lib/fargate/spring.d.ts +1 -1
- package/lib/fargate/spring.js +1 -1
- package/lib/iam/sonatype-oss-index-credentials.d.ts +2 -2
- package/lib/iam/sonatype-oss-index-credentials.js +1 -1
- package/lib/kafka/kafka-topic.d.ts +1 -1
- package/lib/kafka/kafka-topic.js +1 -1
- package/lib/kafka/rio-kafka-event-source.d.ts +2 -2
- package/lib/kafka/rio-kafka-event-source.js +1 -1
- package/lib/pipeline/delivery-performance-monitoring-override.d.ts +2 -2
- package/lib/pipeline/delivery-performance-monitoring-override.js +1 -1
- package/lib/pipeline/rio-backup-secrets-restore-stage.d.ts +1 -1
- package/lib/pipeline/rio-backup-secrets-restore-stage.js +4 -4
- package/lib/pipeline/rio-bitbucket-source-action.d.ts +2 -2
- package/lib/pipeline/rio-bitbucket-source-action.js +1 -1
- package/lib/pipeline/rio-pipeline-type.d.ts +1 -1
- package/lib/pipeline/rio-pipeline-type.js +1 -1
- package/lib/rio-landing-zone.d.ts +1 -1
- package/lib/rio-landing-zone.js +1 -1
- package/lib/rio-load-balancer.d.ts +1 -1
- package/lib/rio-load-balancer.js +1 -1
- package/lib/sbom-catalog/catalog-project.d.ts +1 -1
- package/lib/sbom-catalog/catalog-project.js +12 -9
- package/lib/sbom-catalog/lambda/handler.cjs +2 -1
- package/lib/ses/helper.js +2 -2
- package/lib/ses/ses-observability.js +2 -2
- package/lib/test/normalized-test-template.d.ts +1 -1
- package/lib/test/normalized-test-template.js +1 -1
- package/lib/toggle.d.ts +1 -1
- package/lib/toggle.js +2 -3
- package/lib/watchful/alb.d.ts +1 -1
- package/lib/watchful/alb.js +1 -1
- package/lib/watchful/aspect.d.ts +3 -3
- package/lib/watchful/aspect.js +1 -1
- package/lib/watchful/cloudfront.d.ts +2 -2
- package/lib/watchful/cloudfront.js +1 -1
- package/lib/watchful/datadog-log-alarm.d.ts +1 -1
- package/lib/watchful/datadog-log-alarm.js +2 -2
- package/lib/watchful/datadog-metric-alarm.d.ts +1 -1
- package/lib/watchful/datadog-metric-alarm.js +1 -3
- package/lib/watchful/docdb.d.ts +2 -2
- package/lib/watchful/docdb.js +1 -1
- package/lib/watchful/dynamodb.d.ts +2 -2
- package/lib/watchful/dynamodb.js +1 -1
- package/lib/watchful/ecs.d.ts +2 -2
- package/lib/watchful/ecs.js +1 -1
- package/lib/watchful/lambda.d.ts +2 -2
- package/lib/watchful/lambda.js +1 -1
- package/lib/watchful/metric-alarm.d.ts +1 -1
- package/lib/watchful/metric-alarm.js +1 -1
- package/lib/watchful/rds.d.ts +2 -2
- package/lib/watchful/rds.js +1 -1
- package/lib/watchful/targetgroup.d.ts +1 -1
- package/lib/watchful/targetgroup.js +1 -1
- package/lib/watchful/watchful.d.ts +11 -11
- package/lib/watchful/watchful.js +1 -1
- package/lib/watchfulv2/datadog-log-alarm.d.ts +2 -2
- package/lib/watchfulv2/datadog-log-alarm.js +2 -2
- package/lib/watchfulv2/datadog-metric-alarm.d.ts +2 -2
- package/lib/watchfulv2/datadog-metric-alarm.js +1 -3
- package/lib/watchfulv2/watchful.d.ts +4 -4
- package/lib/watchfulv2/watchful.js +1 -1
- package/package.json +1 -1
- package/version.json +1 -1
package/.jsii
CHANGED
|
@@ -26011,7 +26011,7 @@
|
|
|
26011
26011
|
"kind": "interface",
|
|
26012
26012
|
"locationInModule": {
|
|
26013
26013
|
"filename": "src/watchfulv2/watchful.ts",
|
|
26014
|
-
"line":
|
|
26014
|
+
"line": 16
|
|
26015
26015
|
},
|
|
26016
26016
|
"name": "LogErrorMonitorProps",
|
|
26017
26017
|
"namespace": "watchfulv2",
|
|
@@ -26027,7 +26027,7 @@
|
|
|
26027
26027
|
"immutable": true,
|
|
26028
26028
|
"locationInModule": {
|
|
26029
26029
|
"filename": "src/watchfulv2/watchful.ts",
|
|
26030
|
-
"line":
|
|
26030
|
+
"line": 36
|
|
26031
26031
|
},
|
|
26032
26032
|
"name": "createCasesFromErrorLogMonitors",
|
|
26033
26033
|
"optional": true,
|
|
@@ -26046,7 +26046,7 @@
|
|
|
26046
26046
|
"immutable": true,
|
|
26047
26047
|
"locationInModule": {
|
|
26048
26048
|
"filename": "src/watchfulv2/watchful.ts",
|
|
26049
|
-
"line":
|
|
26049
|
+
"line": 21
|
|
26050
26050
|
},
|
|
26051
26051
|
"name": "disableAutoClose",
|
|
26052
26052
|
"optional": true,
|
|
@@ -26064,7 +26064,7 @@
|
|
|
26064
26064
|
"immutable": true,
|
|
26065
26065
|
"locationInModule": {
|
|
26066
26066
|
"filename": "src/watchfulv2/watchful.ts",
|
|
26067
|
-
"line":
|
|
26067
|
+
"line": 27
|
|
26068
26068
|
},
|
|
26069
26069
|
"name": "priority",
|
|
26070
26070
|
"optional": true,
|
|
@@ -26081,7 +26081,7 @@
|
|
|
26081
26081
|
"immutable": true,
|
|
26082
26082
|
"locationInModule": {
|
|
26083
26083
|
"filename": "src/watchfulv2/watchful.ts",
|
|
26084
|
-
"line":
|
|
26084
|
+
"line": 41
|
|
26085
26085
|
},
|
|
26086
26086
|
"name": "renotifyInterval",
|
|
26087
26087
|
"optional": true,
|
|
@@ -26103,7 +26103,7 @@
|
|
|
26103
26103
|
"kind": "interface",
|
|
26104
26104
|
"locationInModule": {
|
|
26105
26105
|
"filename": "src/watchfulv2/watchful.ts",
|
|
26106
|
-
"line":
|
|
26106
|
+
"line": 47
|
|
26107
26107
|
},
|
|
26108
26108
|
"name": "QueryErrorMonitorProps",
|
|
26109
26109
|
"namespace": "watchfulv2",
|
|
@@ -26118,7 +26118,7 @@
|
|
|
26118
26118
|
"immutable": true,
|
|
26119
26119
|
"locationInModule": {
|
|
26120
26120
|
"filename": "src/watchfulv2/watchful.ts",
|
|
26121
|
-
"line":
|
|
26121
|
+
"line": 52
|
|
26122
26122
|
},
|
|
26123
26123
|
"name": "priority",
|
|
26124
26124
|
"optional": true,
|
|
@@ -26144,7 +26144,7 @@
|
|
|
26144
26144
|
},
|
|
26145
26145
|
"locationInModule": {
|
|
26146
26146
|
"filename": "src/watchfulv2/watchful.ts",
|
|
26147
|
-
"line":
|
|
26147
|
+
"line": 112
|
|
26148
26148
|
},
|
|
26149
26149
|
"parameters": [
|
|
26150
26150
|
{
|
|
@@ -26171,7 +26171,7 @@
|
|
|
26171
26171
|
"kind": "class",
|
|
26172
26172
|
"locationInModule": {
|
|
26173
26173
|
"filename": "src/watchfulv2/watchful.ts",
|
|
26174
|
-
"line":
|
|
26174
|
+
"line": 105
|
|
26175
26175
|
},
|
|
26176
26176
|
"methods": [
|
|
26177
26177
|
{
|
|
@@ -26181,7 +26181,7 @@
|
|
|
26181
26181
|
},
|
|
26182
26182
|
"locationInModule": {
|
|
26183
26183
|
"filename": "src/watchfulv2/watchful.ts",
|
|
26184
|
-
"line":
|
|
26184
|
+
"line": 137
|
|
26185
26185
|
},
|
|
26186
26186
|
"name": "createAlarm",
|
|
26187
26187
|
"overrides": "@rio-cloud/cdk-v2-constructs.AbstractWatchful",
|
|
@@ -26222,7 +26222,7 @@
|
|
|
26222
26222
|
},
|
|
26223
26223
|
"locationInModule": {
|
|
26224
26224
|
"filename": "src/watchfulv2/watchful.ts",
|
|
26225
|
-
"line":
|
|
26225
|
+
"line": 162
|
|
26226
26226
|
},
|
|
26227
26227
|
"name": "createLogAlarm",
|
|
26228
26228
|
"overrides": "@rio-cloud/cdk-v2-constructs.AbstractWatchful",
|
|
@@ -26263,7 +26263,7 @@
|
|
|
26263
26263
|
},
|
|
26264
26264
|
"locationInModule": {
|
|
26265
26265
|
"filename": "src/watchfulv2/watchful.ts",
|
|
26266
|
-
"line":
|
|
26266
|
+
"line": 192
|
|
26267
26267
|
},
|
|
26268
26268
|
"name": "watchScope",
|
|
26269
26269
|
"parameters": [
|
|
@@ -26291,7 +26291,7 @@
|
|
|
26291
26291
|
"kind": "interface",
|
|
26292
26292
|
"locationInModule": {
|
|
26293
26293
|
"filename": "src/watchfulv2/watchful.ts",
|
|
26294
|
-
"line":
|
|
26294
|
+
"line": 58
|
|
26295
26295
|
},
|
|
26296
26296
|
"name": "WatchfulProps",
|
|
26297
26297
|
"namespace": "watchfulv2",
|
|
@@ -26307,7 +26307,7 @@
|
|
|
26307
26307
|
"immutable": true,
|
|
26308
26308
|
"locationInModule": {
|
|
26309
26309
|
"filename": "src/watchfulv2/watchful.ts",
|
|
26310
|
-
"line":
|
|
26310
|
+
"line": 79
|
|
26311
26311
|
},
|
|
26312
26312
|
"name": "createCasesFromErrorLogMonitors",
|
|
26313
26313
|
"optional": true,
|
|
@@ -26324,7 +26324,7 @@
|
|
|
26324
26324
|
"immutable": true,
|
|
26325
26325
|
"locationInModule": {
|
|
26326
26326
|
"filename": "src/watchfulv2/watchful.ts",
|
|
26327
|
-
"line":
|
|
26327
|
+
"line": 84
|
|
26328
26328
|
},
|
|
26329
26329
|
"name": "logErrorMonitorConfig",
|
|
26330
26330
|
"optional": true,
|
|
@@ -26342,7 +26342,7 @@
|
|
|
26342
26342
|
"immutable": true,
|
|
26343
26343
|
"locationInModule": {
|
|
26344
26344
|
"filename": "src/watchfulv2/watchful.ts",
|
|
26345
|
-
"line":
|
|
26345
|
+
"line": 71
|
|
26346
26346
|
},
|
|
26347
26347
|
"name": "notification",
|
|
26348
26348
|
"optional": true,
|
|
@@ -26360,7 +26360,7 @@
|
|
|
26360
26360
|
"immutable": true,
|
|
26361
26361
|
"locationInModule": {
|
|
26362
26362
|
"filename": "src/watchfulv2/watchful.ts",
|
|
26363
|
-
"line":
|
|
26363
|
+
"line": 90
|
|
26364
26364
|
},
|
|
26365
26365
|
"name": "queryErrorMonitorConfig",
|
|
26366
26366
|
"optional": true,
|
|
@@ -26378,7 +26378,7 @@
|
|
|
26378
26378
|
"immutable": true,
|
|
26379
26379
|
"locationInModule": {
|
|
26380
26380
|
"filename": "src/watchfulv2/watchful.ts",
|
|
26381
|
-
"line":
|
|
26381
|
+
"line": 64
|
|
26382
26382
|
},
|
|
26383
26383
|
"name": "serviceName",
|
|
26384
26384
|
"optional": true,
|
|
@@ -26391,5 +26391,5 @@
|
|
|
26391
26391
|
}
|
|
26392
26392
|
},
|
|
26393
26393
|
"version": "0.0.0",
|
|
26394
|
-
"fingerprint": "
|
|
26394
|
+
"fingerprint": "AYkDPRqbh5GgyWZva6DirHBb6v4/dAjoo2IfXNLSsMc="
|
|
26395
26395
|
}
|
|
@@ -32,4 +32,4 @@ class BackupPolicy {
|
|
|
32
32
|
exports.BackupPolicy = BackupPolicy;
|
|
33
33
|
_a = JSII_RTTI_SYMBOL_1;
|
|
34
34
|
BackupPolicy[_a] = { fqn: "@rio-cloud/cdk-v2-constructs.BackupPolicy", version: "0.0.0" };
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja3VwLXBvbGljeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9iYWNrdXAvYmFja3VwLXBvbGljeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQUFtQztBQUduQzs7R0FFRztBQUNILElBQVksV0FJWDtBQUpELFdBQVksV0FBVztJQUNyQiwwQkFBVyxDQUFBO0lBQ1gsZ0NBQWlCLENBQUE7SUFDakIsNEJBQWEsQ0FBQTtBQUNmLENBQUMsRUFKVyxXQUFXLDJCQUFYLFdBQVcsUUFJdEI7QUFFRDs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBYSxZQUFZO0lBQ3ZCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBa0IsRUFBRSxXQUF3QjtRQUN2RCxrQkFBSSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsaUNBQWlDLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDdEUsQ0FBQzs7QUFISCxvQ0FJQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRhZ3MgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgdHlwZSB7IElDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuLyoqXG4gKiBUaGUgYWxsb3dlZCB2YWx1ZXMgZm9yIGJhY2t1cCBjcml0aWNhbGl0eSBsZXZlbHNcbiAqL1xuZXhwb3J0IGVudW0gQ3JpdGljYWxpdHkge1xuICBMT1cgPSAnbG93JyxcbiAgTUVESVVNID0gJ21lZGl1bScsXG4gIEhJR0ggPSAnaGlnaCcsXG59XG5cbi8qKlxuICogSGVscGVyIGZ1bmN0aW9uIHRvIHRhZyBjb25zdHJ1Y3RzIHdpdGggY29ycmVjdCBiYWNrdXAgdmFsdWVzIHRvIGJlIHBpY2tlZFxuICogdXAgYnkgdGhlIHJpbyBsYW5kaW5nIHpvbmUgYmFja3VwIHNvbHV0aW9uLlxuICpcbiAqIEFwcGx5IHRoaXMgdG8gc3RhdGVmdWwgcmVzb3VyY2VzIHRoYXQgbXVzdCBiZSBkaXNjb3ZlcmVkIGJ5IHRoZSBSSU8gbGFuZGluZy16b25lIGJhY2t1cCBzb2x1dGlvbi5cbiAqXG4gKiBFeGFtcGxlOlxuICogYGBgdHNcbiAqIEJhY2t1cFBvbGljeS5hcHBseSh0YWJsZSwgQ3JpdGljYWxpdHkuSElHSCk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIEJhY2t1cFBvbGljeSB7XG4gIHN0YXRpYyBhcHBseSh0YXJnZXQ6IElDb25zdHJ1Y3QsIGNyaXRpY2FsaXR5OiBDcml0aWNhbGl0eSkge1xuICAgIFRhZ3Mub2YodGFyZ2V0KS5hZGQoJ3Jpby1sei1iYWNrdXAtY3JpdGljYWxpdHktbGV2ZWwnLCBjcml0aWNhbGl0eSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as acm from 'aws-cdk-lib/aws-certificatemanager';
|
|
2
|
-
import * as route53 from 'aws-cdk-lib/aws-route53';
|
|
2
|
+
import type * as route53 from 'aws-cdk-lib/aws-route53';
|
|
3
3
|
import { Construct } from 'constructs';
|
|
4
4
|
/** Properties for a DNS-validated CloudFront certificate. */
|
|
5
5
|
export interface CloudFrontCertificateProps {
|
|
@@ -3,6 +3,7 @@ var _a;
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.CloudFrontCertificate = void 0;
|
|
5
5
|
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const path = require("node:path");
|
|
6
7
|
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
7
8
|
const acm = require("aws-cdk-lib/aws-certificatemanager");
|
|
8
9
|
const iam = require("aws-cdk-lib/aws-iam");
|
|
@@ -10,7 +11,6 @@ const lambda = require("aws-cdk-lib/aws-lambda");
|
|
|
10
11
|
const logs = require("aws-cdk-lib/aws-logs");
|
|
11
12
|
const custom_resources_1 = require("aws-cdk-lib/custom-resources");
|
|
12
13
|
const constructs_1 = require("constructs");
|
|
13
|
-
const path = require("path");
|
|
14
14
|
const constants_1 = require("../constants");
|
|
15
15
|
/**
|
|
16
16
|
* Creates an ACM certificate in us-east-1, regardless of the stack region.
|
|
@@ -57,8 +57,9 @@ CloudFrontCertificate[_a] = { fqn: "@rio-cloud/cdk-v2-constructs.CloudFrontCerti
|
|
|
57
57
|
function certificateProvider(stack) {
|
|
58
58
|
const providerId = 'CloudFrontCertificateProvider';
|
|
59
59
|
const existing = stack.node.tryFindChild(providerId);
|
|
60
|
-
if (existing)
|
|
60
|
+
if (existing) {
|
|
61
61
|
return existing;
|
|
62
|
+
}
|
|
62
63
|
const logGroup = new logs.LogGroup(stack, 'CloudFrontCertificateHandlerLogs', {
|
|
63
64
|
retention: logs.RetentionDays.ONE_WEEK,
|
|
64
65
|
});
|
|
@@ -103,4 +104,4 @@ function certificateProvider(stack) {
|
|
|
103
104
|
totalTimeout: aws_cdk_lib_1.Duration.minutes(60),
|
|
104
105
|
});
|
|
105
106
|
}
|
|
106
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvdWQtZnJvbnQtY2VydGlmaWNhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2VydGlmaWNhdGUvY2xvdWQtZnJvbnQtY2VydGlmaWNhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2Q0FBOEQ7QUFDOUQsMERBQTBEO0FBQzFELDJDQUEyQztBQUMzQyxpREFBaUQ7QUFDakQsNkNBQTZDO0FBRTdDLG1FQUF3RDtBQUN4RCwyQ0FBdUM7QUFDdkMsNkJBQTZCO0FBQzdCLDRDQUFvRDtBQVVwRDs7Ozs7O0dBTUc7QUFDSCxNQUFhLHFCQUFzQixTQUFRLHNCQUFTO0lBT2xELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBaUM7UUFDekUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixNQUFNLFFBQVEsR0FBRyxtQkFBbUIsQ0FBQyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3JELE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDO1FBQ25ELFFBQVEsQ0FBQyxpQkFBa0IsQ0FBQyxlQUFlLENBQ3pDLElBQUksR0FBRyxDQUFDLGVBQWUsQ0FBQztZQUN0QixPQUFPLEVBQUUsQ0FBQyxrQ0FBa0MsQ0FBQztZQUM3QyxTQUFTLEVBQUU7Z0JBQ1QsbUJBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDO29CQUN2QixPQUFPLEVBQUUsU0FBUztvQkFDbEIsTUFBTSxFQUFFLEVBQUU7b0JBQ1YsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFlBQVksRUFBRSxZQUFZO2lCQUMzQixDQUFDO2FBQ0g7WUFDRCxVQUFVLEVBQUU7Z0JBQ1YsMkJBQTJCLEVBQUU7b0JBQzNCLDZDQUE2QyxFQUFFLENBQUMsT0FBTyxDQUFDO29CQUN4RCx5Q0FBeUMsRUFBRSxDQUFD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QUNyQyxjQUFjLEVBQUUsT0FBTztRQUN2QixpQkFBaUIsRUFBRSxVQUFVO1FBQzdCLGFBQWEsRUFBRSxzQkFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7UUFDbkMsWUFBWSxFQUFFLHNCQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztLQUNuQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3VzdG9tUmVzb3VyY2UsIER1cmF0aW9uLCBTdGFjayB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCAqIGFzIGFjbSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY2VydGlmaWNhdGVtYW5hZ2VyJztcbmltcG9ydCAqIGFzIGlhbSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaWFtJztcbmltcG9ydCAqIGFzIGxhbWJkYSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhJztcbmltcG9ydCAqIGFzIGxvZ3MgZnJvbSAnYXdzLWNkay1saWIvYXdzLWxvZ3MnO1xuaW1wb3J0ICogYXMgcm91dGU1MyBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtcm91dGU1Myc7XG5pbXBvcnQgeyBQcm92aWRlciB9IGZyb20gJ2F3cy1jZGstbGliL2N1c3RvbS1yZXNvdXJjZXMnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgREVGQVVMVF9OT0RFX1JVTlRJTUUgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuXG4vKiogUHJvcGVydGllcyBmb3IgYSBETlMtdmFsaWRhdGVkIENsb3VkRnJvbnQgY2VydGlmaWNhdGUuICovXG5leHBvcnQgaW50ZXJmYWNlIENsb3VkRnJvbnRDZXJ0aWZpY2F0ZVByb3BzIHtcbiAgLyoqIERvbWFpbiBuYW1lIHRvIGNlcnRpZnksIGluY2x1ZGluZyBhIHdpbGRjYXJkIGlmIHJlcXVpcmVkLiAqL1xuICByZWFkb25seSBkb21haW5OYW1lOiBzdHJpbmc7XG4gIC8qKiBQdWJsaWMgUm91dGUgNTMgaG9zdGVkIHpvbmUgaW4gdGhpcyBhY2NvdW50IGNvbnRhaW5pbmcgdGhlIGRvbWFpbi4gKi9cbiAgcmVhZG9ubHkgaG9zdGVkWm9uZTogcm91dGU1My5JSG9zdGVkWm9uZTtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGFuIEFDTSBjZXJ0aWZpY2F0ZSBpbiB1cy1lYXN0LTEsIHJlZ2FyZGxlc3Mgb2YgdGhlIHN0YWNrIHJlZ2lvbi5cbiAqIERlcGxveW1lbnQgd2FpdHMgZm9yIEROUyB2YWxpZGF0aW9uIGJlZm9yZSBleHBvc2luZyB0aGUgY2VydGlmaWNhdGUgQVJOLlxuICogQWxsIGluc3RhbmNlcyBpbiBhIHN0YWNrIHNoYXJlIHRoZSBwcm92aWRlciBhbmQgaXRzIHNpbmdsZXRvbiBMYW1iZGEgaGFuZGxlcnMuXG4gKiBEb21haW4gb3IgaG9zdGVkIHpvbmUgY2hhbmdlcyByZXBsYWNlIHRoZSBjZXJ0aWZpY2F0ZS4gVmFsaWRhdGlvbiBDTkFNRXMgYXJlXG4gKiByZXRhaW5lZCBvbiBkZWxldGlvbiBiZWNhdXNlIEFDTSBjYW4gc2hhcmUgdGhlbSB3aXRoIG90aGVyIGNlcnRpZmljYXRlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIENsb3VkRnJvbnRDZXJ0aWZpY2F0ZSBleHRlbmRzIENvbnN0cnVjdCB7XG4gIC8qKiBBUk4gb2YgdGhlIGlzc3VlZCBjZXJ0aWZpY2F0ZSwgc3VpdGFibGUgZm9yIENlcnRpZmljYXRlLmZyb21DZXJ0aWZpY2F0ZUFybi4gKi9cbiAgcHVibGljIHJlYWRvbmx5IGNlcnRpZmljYXRlQXJuOiBzdHJpbmc7XG5cbiAgLyoqIENlcnRpZmljYXRlIHJlZmVyZW5jZSB0aGF0IGNhbiBiZSBwYXNzZWQgZGlyZWN0bHkgdG8gQ0RLIGNvbnN0cnVjdHMuICovXG4gIHB1YmxpYyByZWFkb25seSBjZXJ0aWZpY2F0ZTogYWNtLklDZXJ0aWZpY2F0ZTtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQ2xvdWRGcm9udENlcnRpZmljYXRlUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIGNvbnN0IHByb3ZpZGVyID0gY2VydGlmaWNhdGVQcm92aWRlcihTdGFjay5vZih0aGlzKSk7XG4gICAgY29uc3QgaG9zdGVkWm9uZUlkID0gcHJvcHMuaG9zdGVkWm9uZS5ob3N0ZWRab25lSWQ7XG4gICAgcHJvdmlkZXIuaXNDb21wbGV0ZUhhbmRsZXIhLmFkZFRvUm9sZVBvbGljeShcbiAgICAgIG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgYWN0aW9uczogWydyb3V0ZTUzOkNoYW5nZVJlc291cmNlUmVjb3JkU2V0cyddLFxuICAgICAgICByZXNvdXJjZXM6IFtcbiAgICAgICAgICBTdGFjay5vZih0aGlzKS5mb3JtYXRBcm4oe1xuICAgICAgICAgICAgc2VydmljZTogJ3JvdXRlNTMnLFxuICAgICAgICAgICAgcmVnaW9uOiAnJyxcbiAgICAgICAgICAgIGFjY291bnQ6ICcnLFxuICAgICAgICAgICAgcmVzb3VyY2U6ICdob3N0ZWR6b25lJyxcbiAgICAgICAgICAgIHJlc291cmNlTmFtZTogaG9zdGVkWm9uZUlkLFxuICAgICAgICAgIH0pLFxuICAgICAgICBdLFxuICAgICAgICBjb25kaXRpb25zOiB7XG4gICAgICAgICAgJ0ZvckFsbFZhbHVlczpTdHJpbmdFcXVhbHMnOiB7XG4gICAgICAgICAgICAncm91dGU1MzpDaGFuZ2VSZXNvdXJjZVJlY29yZFNldHNSZWNvcmRUeXBlcyc6IFsnQ05BTUUnXSxcbiAgICAgICAgICAgICdyb3V0ZTUzOkNoYW5nZVJlc291cmNlUmVjb3JkU2V0c0FjdGlvbnMnOiBbJ1VQU0VSVCddLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9KVxuICAgICk7XG4gICAgY29uc3QgcmVzb3VyY2UgPSBuZXcgQ3VzdG9tUmVzb3VyY2UodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgcmVzb3VyY2VUeXBlOiAnQ3VzdG9tOjpDbG91ZEZyb250Q2VydGlmaWNhdGUnLFxuICAgICAgc2VydmljZVRva2VuOiBwcm92aWRlci5zZXJ2aWNlVG9rZW4sXG4gICAgICBwcm9wZXJ0aWVzOiB7IERvbWFpbk5hbWU6IHByb3BzLmRvbWFpbk5hbWUsIEhvc3RlZFpvbmVJZDogaG9zdGVkWm9uZUlkIH0sXG4gICAgfSk7XG4gICAgdGhpcy5jZXJ0aWZpY2F0ZUFybiA9IHJlc291cmNlLmdldEF0dFN0cmluZygnQ2VydGlmaWNhdGVBcm4nKTtcbiAgICB0aGlzLmNlcnRpZmljYXRlID0gYWNtLkNlcnRpZmljYXRlLmZyb21DZXJ0aWZpY2F0ZUFybih0aGlzLCAnQ2VydGlmaWNhdGUnLCB0aGlzLmNlcnRpZmljYXRlQXJuKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBjZXJ0aWZpY2F0ZVByb3ZpZGVyKHN0YWNrOiBTdGFjayk6IFByb3ZpZGVyIHtcbiAgY29uc3QgcHJvdmlkZXJJZCA9ICdDbG91ZEZyb250Q2VydGlmaWNhdGVQcm92aWRlcic7XG4gIGNvbnN0IGV4aXN0aW5nID0gc3RhY2subm9kZS50cnlGaW5kQ2hpbGQocHJvdmlkZXJJZCk7XG4gIGlmIChleGlzdGluZykgcmV0dXJuIGV4aXN0aW5nIGFzIFByb3ZpZGVyO1xuXG4gIGNvbnN0IGxvZ0dyb3VwID0gbmV3IGxvZ3MuTG9nR3JvdXAoc3RhY2ssICdDbG91ZEZyb250Q2VydGlmaWNhdGVIYW5kbGVyTG9ncycsIHtcbiAgICByZXRlbnRpb246IGxvZ3MuUmV0ZW50aW9uRGF5cy5PTkVfV0VFSyxcbiAgfSk7XG4gIGNvbnN0IGNvbW1vbiA9IHtcbiAgICBydW50aW1lOiBERUZBVUxUX05PREVfUlVOVElNRSxcbiAgICBhcmNoaXRlY3R1cmU6IGxhbWJkYS5BcmNoaXRlY3R1cmUuQVJNXzY0LFxuICAgIGNvZGU6IGxhbWJkYS5Db2RlLmZyb21Bc3NldChwYXRoLmpvaW4oX19kaXJuYW1lLCAnbGFtYmRhJyksIHsgZXhjbHVkZTogWycqLmpzJywgJyouZC50cyddIH0pLFxuICAgIHRpbWVvdXQ6IER1cmF0aW9uLm1pbnV0ZXMoMSksXG4gICAgbG9nR3JvdXAsXG4gIH07XG4gIGNvbnN0IGNlcnRpZmljYXRlQXJucyA9IFtcbiAgICBzdGFjay5mb3JtYXRBcm4oeyBzZXJ2aWNlOiAnYWNtJywgcmVnaW9uOiAndXMtZWFzdC0xJywgcmVzb3VyY2U6ICdjZXJ0aWZpY2F0ZScsIHJlc291cmNlTmFtZTogJyonIH0pLFxuICBdO1xuICBjb25zdCBvbkV2ZW50ID0gbmV3IGxhbWJkYS5TaW5nbGV0b25GdW5jdGlvbihzdGFjaywgJ0Nsb3VkRnJvbnRDZXJ0aWZpY2F0ZU9uRXZlbnQnLCB7XG4gICAgLi4uY29tbW9uLFxuICAgIHV1aWQ6ICc0NzYyZDUwZS1lNDRlLTQ5OTUtOGM2Yy01MWZhNTllNjIzNzMnLFxuICAgIGxhbWJkYVB1cnBvc2U6ICdDbG91ZEZyb250Q2VydGlmaWNhdGVPbkV2ZW50JyxcbiAgICBoYW5kbGVyOiAnaGFuZGxlci5vbkV2ZW50JyxcbiAgICBpbml0aWFsUG9saWN5OiBbXG4gICAgICBuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgIGFjdGlvbnM6IFsnYWNtOlJlcXVlc3RDZXJ0aWZpY2F0ZSddLFxuICAgICAgICByZXNvdXJjZXM6IFsnKiddLFxuICAgICAgfSksXG4gICAgXSxcbiAgfSk7XG4gIGNvbnN0IGlzQ29tcGxldGUgPSBuZXcgbGFtYmRhLlNpbmdsZXRvbkZ1bmN0aW9uKHN0YWNrLCAnQ2xvdWRGcm9udENlcnRpZmljYXRlSXNDb21wbGV0ZScsIHtcbiAgICAuLi5jb21tb24sXG4gICAgdXVpZDogJzQ2NzNkOWRlLWQ5MWUtNDljNS04ZDlmLWM0N2Q5ZTE2ZDBlZScsXG4gICAgbGFtYmRhUHVycG9zZTogJ0Nsb3VkRnJvbnRDZXJ0aWZpY2F0ZUlzQ29tcGxldGUnLFxuICAgIGhhbmRsZXI6ICdoYW5kbGVyLmlzQ29tcGxldGUnLFxuICAgIGluaXRpYWxQb2xpY3k6IFtcbiAgICAgIG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgYWN0aW9uczogWydhY206RGVzY3JpYmVDZXJ0aWZpY2F0ZScsICdhY206RGVsZXRlQ2VydGlmaWNhdGUnXSxcbiAgICAgICAgcmVzb3VyY2VzOiBjZXJ0aWZpY2F0ZUFybnMsXG4gICAgICB9KSxcbiAgICBdLFxuICB9KTtcbiAgcmV0dXJuIG5ldyBQcm92aWRlcihzdGFjaywgcHJvdmlkZXJJZCwge1xuICAgIG9uRXZlbnRIYW5kbGVyOiBvbkV2ZW50LFxuICAgIGlzQ29tcGxldGVIYW5kbGVyOiBpc0NvbXBsZXRlLFxuICAgIHF1ZXJ5SW50ZXJ2YWw6IER1cmF0aW9uLnNlY29uZHMoMzApLFxuICAgIHRvdGFsVGltZW91dDogRHVyYXRpb24ubWludXRlcyg2MCksXG4gIH0pO1xufVxuIl19
|
|
107
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvdWQtZnJvbnQtY2VydGlmaWNhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2VydGlmaWNhdGUvY2xvdWQtZnJvbnQtY2VydGlmaWNhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxrQ0FBa0M7QUFDbEMsNkNBQThEO0FBQzlELDBEQUEwRDtBQUMxRCwyQ0FBMkM7QUFDM0MsaURBQWlEO0FBQ2pELDZDQUE2QztBQUU3QyxtRUFBd0Q7QUFDeEQsMkNBQXVDO0FBQ3ZDLDRDQUFvRDtBQVVwRDs7Ozs7O0dBTUc7QUFDSCxNQUFhLHFCQUFzQixTQUFRLHNCQUFTO0lBT2xELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBaUM7UUFDekUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixNQUFNLFFBQVEsR0FBRyxtQkFBbUIsQ0FBQyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3JELE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDO1FBQ25ELFFBQVEsQ0FBQyxpQkFBa0IsQ0FBQyxlQUFlLENBQ3pDLElBQUksR0FBRyxDQUFDLGVBQWUsQ0FBQztZQUN0QixPQUFPLEVBQUUsQ0FBQyxrQ0FBa0MsQ0FBQztZQUM3QyxTQUFTLEVBQUU7Z0JBQ1QsbUJBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDO29CQUN2QixPQUFPLEVBQUUsU0FBUztvQkFDbEIsTUFBTSxFQUFFLEVBQUU7b0JBQ1YsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFlBQVksRUFBRSxZQUFZO2lCQUMzQixDQUFDO2FBQ0g7WUFDRCxVQUFVLEVBQUU7Z0JBQ1YsMkJBQTJCLEVBQUU7b0JBQzNCLDZDQUE2QyxFQUFFLENBQUMsT0FBTyxDQUFDO29CQUN4RCx5Q0FBeUMsRUFBRSxDQUFD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QUFLLEVBQUUsVUFBVSxFQUFFO1FBQ3JDLGNBQWMsRUFBRSxPQUFPO1FBQ3ZCLGlCQUFpQixFQUFFLFVBQVU7UUFDN0IsYUFBYSxFQUFFLHNCQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNuQyxZQUFZLEVBQUUsc0JBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO0tBQ25DLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBwYXRoIGZyb20gJ25vZGU6cGF0aCc7XG5pbXBvcnQgeyBDdXN0b21SZXNvdXJjZSwgRHVyYXRpb24sIFN0YWNrIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0ICogYXMgYWNtIGZyb20gJ2F3cy1jZGstbGliL2F3cy1jZXJ0aWZpY2F0ZW1hbmFnZXInO1xuaW1wb3J0ICogYXMgaWFtIGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0ICogYXMgbGFtYmRhIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1xuaW1wb3J0ICogYXMgbG9ncyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbG9ncyc7XG5pbXBvcnQgdHlwZSAqIGFzIHJvdXRlNTMgZnJvbSAnYXdzLWNkay1saWIvYXdzLXJvdXRlNTMnO1xuaW1wb3J0IHsgUHJvdmlkZXIgfSBmcm9tICdhd3MtY2RrLWxpYi9jdXN0b20tcmVzb3VyY2VzJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgREVGQVVMVF9OT0RFX1JVTlRJTUUgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuXG4vKiogUHJvcGVydGllcyBmb3IgYSBETlMtdmFsaWRhdGVkIENsb3VkRnJvbnQgY2VydGlmaWNhdGUuICovXG5leHBvcnQgaW50ZXJmYWNlIENsb3VkRnJvbnRDZXJ0aWZpY2F0ZVByb3BzIHtcbiAgLyoqIERvbWFpbiBuYW1lIHRvIGNlcnRpZnksIGluY2x1ZGluZyBhIHdpbGRjYXJkIGlmIHJlcXVpcmVkLiAqL1xuICByZWFkb25seSBkb21haW5OYW1lOiBzdHJpbmc7XG4gIC8qKiBQdWJsaWMgUm91dGUgNTMgaG9zdGVkIHpvbmUgaW4gdGhpcyBhY2NvdW50IGNvbnRhaW5pbmcgdGhlIGRvbWFpbi4gKi9cbiAgcmVhZG9ubHkgaG9zdGVkWm9uZTogcm91dGU1My5JSG9zdGVkWm9uZTtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGFuIEFDTSBjZXJ0aWZpY2F0ZSBpbiB1cy1lYXN0LTEsIHJlZ2FyZGxlc3Mgb2YgdGhlIHN0YWNrIHJlZ2lvbi5cbiAqIERlcGxveW1lbnQgd2FpdHMgZm9yIEROUyB2YWxpZGF0aW9uIGJlZm9yZSBleHBvc2luZyB0aGUgY2VydGlmaWNhdGUgQVJOLlxuICogQWxsIGluc3RhbmNlcyBpbiBhIHN0YWNrIHNoYXJlIHRoZSBwcm92aWRlciBhbmQgaXRzIHNpbmdsZXRvbiBMYW1iZGEgaGFuZGxlcnMuXG4gKiBEb21haW4gb3IgaG9zdGVkIHpvbmUgY2hhbmdlcyByZXBsYWNlIHRoZSBjZXJ0aWZpY2F0ZS4gVmFsaWRhdGlvbiBDTkFNRXMgYXJlXG4gKiByZXRhaW5lZCBvbiBkZWxldGlvbiBiZWNhdXNlIEFDTSBjYW4gc2hhcmUgdGhlbSB3aXRoIG90aGVyIGNlcnRpZmljYXRlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIENsb3VkRnJvbnRDZXJ0aWZpY2F0ZSBleHRlbmRzIENvbnN0cnVjdCB7XG4gIC8qKiBBUk4gb2YgdGhlIGlzc3VlZCBjZXJ0aWZpY2F0ZSwgc3VpdGFibGUgZm9yIENlcnRpZmljYXRlLmZyb21DZXJ0aWZpY2F0ZUFybi4gKi9cbiAgcHVibGljIHJlYWRvbmx5IGNlcnRpZmljYXRlQXJuOiBzdHJpbmc7XG5cbiAgLyoqIENlcnRpZmljYXRlIHJlZmVyZW5jZSB0aGF0IGNhbiBiZSBwYXNzZWQgZGlyZWN0bHkgdG8gQ0RLIGNvbnN0cnVjdHMuICovXG4gIHB1YmxpYyByZWFkb25seSBjZXJ0aWZpY2F0ZTogYWNtLklDZXJ0aWZpY2F0ZTtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQ2xvdWRGcm9udENlcnRpZmljYXRlUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIGNvbnN0IHByb3ZpZGVyID0gY2VydGlmaWNhdGVQcm92aWRlcihTdGFjay5vZih0aGlzKSk7XG4gICAgY29uc3QgaG9zdGVkWm9uZUlkID0gcHJvcHMuaG9zdGVkWm9uZS5ob3N0ZWRab25lSWQ7XG4gICAgcHJvdmlkZXIuaXNDb21wbGV0ZUhhbmRsZXIhLmFkZFRvUm9sZVBvbGljeShcbiAgICAgIG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgYWN0aW9uczogWydyb3V0ZTUzOkNoYW5nZVJlc291cmNlUmVjb3JkU2V0cyddLFxuICAgICAgICByZXNvdXJjZXM6IFtcbiAgICAgICAgICBTdGFjay5vZih0aGlzKS5mb3JtYXRBcm4oe1xuICAgICAgICAgICAgc2VydmljZTogJ3JvdXRlNTMnLFxuICAgICAgICAgICAgcmVnaW9uOiAnJyxcbiAgICAgICAgICAgIGFjY291bnQ6ICcnLFxuICAgICAgICAgICAgcmVzb3VyY2U6ICdob3N0ZWR6b25lJyxcbiAgICAgICAgICAgIHJlc291cmNlTmFtZTogaG9zdGVkWm9uZUlkLFxuICAgICAgICAgIH0pLFxuICAgICAgICBdLFxuICAgICAgICBjb25kaXRpb25zOiB7XG4gICAgICAgICAgJ0ZvckFsbFZhbHVlczpTdHJpbmdFcXVhbHMnOiB7XG4gICAgICAgICAgICAncm91dGU1MzpDaGFuZ2VSZXNvdXJjZVJlY29yZFNldHNSZWNvcmRUeXBlcyc6IFsnQ05BTUUnXSxcbiAgICAgICAgICAgICdyb3V0ZTUzOkNoYW5nZVJlc291cmNlUmVjb3JkU2V0c0FjdGlvbnMnOiBbJ1VQU0VSVCddLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9KVxuICAgICk7XG4gICAgY29uc3QgcmVzb3VyY2UgPSBuZXcgQ3VzdG9tUmVzb3VyY2UodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgcmVzb3VyY2VUeXBlOiAnQ3VzdG9tOjpDbG91ZEZyb250Q2VydGlmaWNhdGUnLFxuICAgICAgc2VydmljZVRva2VuOiBwcm92aWRlci5zZXJ2aWNlVG9rZW4sXG4gICAgICBwcm9wZXJ0aWVzOiB7IERvbWFpbk5hbWU6IHByb3BzLmRvbWFpbk5hbWUsIEhvc3RlZFpvbmVJZDogaG9zdGVkWm9uZUlkIH0sXG4gICAgfSk7XG4gICAgdGhpcy5jZXJ0aWZpY2F0ZUFybiA9IHJlc291cmNlLmdldEF0dFN0cmluZygnQ2VydGlmaWNhdGVBcm4nKTtcbiAgICB0aGlzLmNlcnRpZmljYXRlID0gYWNtLkNlcnRpZmljYXRlLmZyb21DZXJ0aWZpY2F0ZUFybih0aGlzLCAnQ2VydGlmaWNhdGUnLCB0aGlzLmNlcnRpZmljYXRlQXJuKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBjZXJ0aWZpY2F0ZVByb3ZpZGVyKHN0YWNrOiBTdGFjayk6IFByb3ZpZGVyIHtcbiAgY29uc3QgcHJvdmlkZXJJZCA9ICdDbG91ZEZyb250Q2VydGlmaWNhdGVQcm92aWRlcic7XG4gIGNvbnN0IGV4aXN0aW5nID0gc3RhY2subm9kZS50cnlGaW5kQ2hpbGQocHJvdmlkZXJJZCk7XG4gIGlmIChleGlzdGluZykge1xuICAgIHJldHVybiBleGlzdGluZyBhcyBQcm92aWRlcjtcbiAgfVxuXG4gIGNvbnN0IGxvZ0dyb3VwID0gbmV3IGxvZ3MuTG9nR3JvdXAoc3RhY2ssICdDbG91ZEZyb250Q2VydGlmaWNhdGVIYW5kbGVyTG9ncycsIHtcbiAgICByZXRlbnRpb246IGxvZ3MuUmV0ZW50aW9uRGF5cy5PTkVfV0VFSyxcbiAgfSk7XG4gIGNvbnN0IGNvbW1vbiA9IHtcbiAgICBydW50aW1lOiBERUZBVUxUX05PREVfUlVOVElNRSxcbiAgICBhcmNoaXRlY3R1cmU6IGxhbWJkYS5BcmNoaXRlY3R1cmUuQVJNXzY0LFxuICAgIGNvZGU6IGxhbWJkYS5Db2RlLmZyb21Bc3NldChwYXRoLmpvaW4oX19kaXJuYW1lLCAnbGFtYmRhJyksIHsgZXhjbHVkZTogWycqLmpzJywgJyouZC50cyddIH0pLFxuICAgIHRpbWVvdXQ6IER1cmF0aW9uLm1pbnV0ZXMoMSksXG4gICAgbG9nR3JvdXAsXG4gIH07XG4gIGNvbnN0IGNlcnRpZmljYXRlQXJucyA9IFtcbiAgICBzdGFjay5mb3JtYXRBcm4oeyBzZXJ2aWNlOiAnYWNtJywgcmVnaW9uOiAndXMtZWFzdC0xJywgcmVzb3VyY2U6ICdjZXJ0aWZpY2F0ZScsIHJlc291cmNlTmFtZTogJyonIH0pLFxuICBdO1xuICBjb25zdCBvbkV2ZW50ID0gbmV3IGxhbWJkYS5TaW5nbGV0b25GdW5jdGlvbihzdGFjaywgJ0Nsb3VkRnJvbnRDZXJ0aWZpY2F0ZU9uRXZlbnQnLCB7XG4gICAgLi4uY29tbW9uLFxuICAgIHV1aWQ6ICc0NzYyZDUwZS1lNDRlLTQ5OTUtOGM2Yy01MWZhNTllNjIzNzMnLFxuICAgIGxhbWJkYVB1cnBvc2U6ICdDbG91ZEZyb250Q2VydGlmaWNhdGVPbkV2ZW50JyxcbiAgICBoYW5kbGVyOiAnaGFuZGxlci5vbkV2ZW50JyxcbiAgICBpbml0aWFsUG9saWN5OiBbXG4gICAgICBuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgIGFjdGlvbnM6IFsnYWNtOlJlcXVlc3RDZXJ0aWZpY2F0ZSddLFxuICAgICAgICByZXNvdXJjZXM6IFsnKiddLFxuICAgICAgfSksXG4gICAgXSxcbiAgfSk7XG4gIGNvbnN0IGlzQ29tcGxldGUgPSBuZXcgbGFtYmRhLlNpbmdsZXRvbkZ1bmN0aW9uKHN0YWNrLCAnQ2xvdWRGcm9udENlcnRpZmljYXRlSXNDb21wbGV0ZScsIHtcbiAgICAuLi5jb21tb24sXG4gICAgdXVpZDogJzQ2NzNkOWRlLWQ5MWUtNDljNS04ZDlmLWM0N2Q5ZTE2ZDBlZScsXG4gICAgbGFtYmRhUHVycG9zZTogJ0Nsb3VkRnJvbnRDZXJ0aWZpY2F0ZUlzQ29tcGxldGUnLFxuICAgIGhhbmRsZXI6ICdoYW5kbGVyLmlzQ29tcGxldGUnLFxuICAgIGluaXRpYWxQb2xpY3k6IFtcbiAgICAgIG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgYWN0aW9uczogWydhY206RGVzY3JpYmVDZXJ0aWZpY2F0ZScsICdhY206RGVsZXRlQ2VydGlmaWNhdGUnXSxcbiAgICAgICAgcmVzb3VyY2VzOiBjZXJ0aWZpY2F0ZUFybnMsXG4gICAgICB9KSxcbiAgICBdLFxuICB9KTtcbiAgcmV0dXJuIG5ldyBQcm92aWRlcihzdGFjaywgcHJvdmlkZXJJZCwge1xuICAgIG9uRXZlbnRIYW5kbGVyOiBvbkV2ZW50LFxuICAgIGlzQ29tcGxldGVIYW5kbGVyOiBpc0NvbXBsZXRlLFxuICAgIHF1ZXJ5SW50ZXJ2YWw6IER1cmF0aW9uLnNlY29uZHMoMzApLFxuICAgIHRvdGFsVGltZW91dDogRHVyYXRpb24ubWludXRlcyg2MCksXG4gIH0pO1xufVxuIl19
|
|
@@ -35970,7 +35970,9 @@ async function requestCertificate(event) {
|
|
|
35970
35970
|
ValidationMethod: "DNS"
|
|
35971
35971
|
})
|
|
35972
35972
|
);
|
|
35973
|
-
if (!result.CertificateArn)
|
|
35973
|
+
if (!result.CertificateArn) {
|
|
35974
|
+
throw new Error("ACM did not return a certificate ARN");
|
|
35975
|
+
}
|
|
35974
35976
|
return certificateResponse(result.CertificateArn);
|
|
35975
35977
|
}
|
|
35976
35978
|
function onDelete(event) {
|
|
@@ -35980,18 +35982,26 @@ async function completeDeletion(event) {
|
|
|
35980
35982
|
const arn = event.PhysicalResourceId;
|
|
35981
35983
|
try {
|
|
35982
35984
|
const certificate = await describeCertificate(arn);
|
|
35983
|
-
if (certificate.InUseBy?.length)
|
|
35985
|
+
if (certificate.InUseBy?.length) {
|
|
35986
|
+
return { IsComplete: false };
|
|
35987
|
+
}
|
|
35984
35988
|
await acm.send(new import_client_acm.DeleteCertificateCommand({ CertificateArn: arn }));
|
|
35985
35989
|
} catch (error2) {
|
|
35986
|
-
if (error2 instanceof import_client_acm.ResourceInUseException)
|
|
35987
|
-
|
|
35990
|
+
if (error2 instanceof import_client_acm.ResourceInUseException) {
|
|
35991
|
+
return { IsComplete: false };
|
|
35992
|
+
}
|
|
35993
|
+
if (error2 instanceof import_client_acm.ResourceNotFoundException) {
|
|
35994
|
+
return { IsComplete: true };
|
|
35995
|
+
}
|
|
35988
35996
|
throw error2;
|
|
35989
35997
|
}
|
|
35990
35998
|
return { IsComplete: true };
|
|
35991
35999
|
}
|
|
35992
36000
|
async function describeCertificate(arn) {
|
|
35993
36001
|
const { Certificate } = await acm.send(new import_client_acm.DescribeCertificateCommand({ CertificateArn: arn }));
|
|
35994
|
-
if (!Certificate)
|
|
36002
|
+
if (!Certificate) {
|
|
36003
|
+
throw new Error("ACM did not return certificate details");
|
|
36004
|
+
}
|
|
35995
36005
|
return Certificate;
|
|
35996
36006
|
}
|
|
35997
36007
|
function certificateResponse(arn) {
|
|
@@ -36004,14 +36014,18 @@ var route53 = new import_client_route_53.Route53Client({});
|
|
|
36004
36014
|
async function completeValidation(event) {
|
|
36005
36015
|
const arn = event.PhysicalResourceId;
|
|
36006
36016
|
const certificate = await describeCertificate(arn);
|
|
36007
|
-
if (certificate.Status === "ISSUED")
|
|
36017
|
+
if (certificate.Status === "ISSUED") {
|
|
36018
|
+
return { IsComplete: true };
|
|
36019
|
+
}
|
|
36008
36020
|
if (certificate.Status !== "PENDING_VALIDATION") {
|
|
36009
36021
|
throw new Error(
|
|
36010
36022
|
`Certificate ${arn} has status ${certificate.Status}: ${certificate.FailureReason ?? "unknown reason"}`
|
|
36011
36023
|
);
|
|
36012
36024
|
}
|
|
36013
36025
|
const record = certificate.DomainValidationOptions?.[0]?.ResourceRecord;
|
|
36014
|
-
if (!record?.Name || !record.Value || record.Type !== "CNAME")
|
|
36026
|
+
if (!record?.Name || !record.Value || record.Type !== "CNAME") {
|
|
36027
|
+
return { IsComplete: false };
|
|
36028
|
+
}
|
|
36015
36029
|
await route53.send(
|
|
36016
36030
|
new import_client_route_53.ChangeResourceRecordSetsCommand({
|
|
36017
36031
|
HostedZoneId: event.ResourceProperties.HostedZoneId,
|
|
@@ -29,7 +29,7 @@ const createCspFromDirectiveObjects = (directiveObjects) => {
|
|
|
29
29
|
exports.createCspFromDirectiveObjects = createCspFromDirectiveObjects;
|
|
30
30
|
const camelToDash = (str) => {
|
|
31
31
|
if (str != str.toLowerCase()) {
|
|
32
|
-
str = str.replace(/[A-Z]/g, m =>
|
|
32
|
+
str = str.replace(/[A-Z]/g, m => `-${m.toLowerCase()}`);
|
|
33
33
|
}
|
|
34
34
|
return str;
|
|
35
35
|
};
|
|
@@ -58,4 +58,4 @@ const ORDERED_DIRECTIVE_NAMES = [
|
|
|
58
58
|
'upgradeInsecureRequests',
|
|
59
59
|
'childSrc',
|
|
60
60
|
];
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudFNlY3VyaXR5UG9saWN5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbnRyaWJ1dGlvbnMvY29wLWZyb250ZW5kL2Nsb3VkZnJvbnQvY29udGVudFNlY3VyaXR5UG9saWN5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQXlCTyxNQUFNLDZCQUE2QixHQUFHLENBQUMsZ0JBQWlDLEVBQVUsRUFBRTtJQUN6RixNQUFNLFlBQVksR0FBRyxJQUFJLEdBQUcsRUFBaUMsQ0FBQztJQUU5RCxLQUFLLE1BQU0sZUFBZSxJQUFJLGdCQUFnQixFQUFFLENBQUM7UUFDL0MsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUM7WUFDL0MsTUFBTSxhQUFhLEdBQUcsR0FBdUIsQ0FBQztZQUM5QyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDO2dCQUNyQyxZQUFZLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDN0MsQ0FBQztZQUNELEtBQUssTUFBTSxLQUFLLElBQUksZUFBZSxDQUFDLGFBQWEsQ0FBYSxFQUFFLENBQUM7Z0JBQy9ELFlBQVksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzlDLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELE1BQU0sTUFBTSxHQUFhLEVBQUUsQ0FBQztJQUU1QixLQUFLLE1BQU0sU0FBUyxJQUFJLHVCQUF1QixFQUFFLENBQUM7UUFDaEQsTUFBTSxNQUFNLEdBQTRCLFlBQVksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDcEUsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUNYLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFBLG1CQUFXLEVBQUMsU0FBUyxDQUFDLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzVFLENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxNQUFNO1NBQ1YsSUFBSSxDQUFDLEdBQUcsQ0FBQztTQUNULE9BQU8sQ0FBQyxZQUFZLEVBQUUsR0FBRyxDQUFDO1NBQzFCLElBQUksRUFBRSxDQUFDO0FBQ1osQ0FBQyxDQUFDO0FBNUJXLFFBQUEsNkJBQTZCLGlDQTRCeEM7QUFFSyxNQUFNLFdBQVcsR0FBRyxDQUFDLEdBQVcsRUFBRSxFQUFFO0lBQ3pDLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDO1FBQzdCLEdBQUcsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBQ0QsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDLENBQUM7QUFMVyxRQUFBLFdBQVcsZUFLdEI7QUFJRixNQUFNLHVCQUF1QixHQUF1QjtJQUNsRCxZQUFZO0lBQ1osWUFBWTtJQUNaLFNBQVM7SUFDVCxRQUFRO0lBQ1IsYUFBYTtJQUNiLFVBQVU7SUFDVixXQUFXO0lBQ1gsV0FBVztJQUNYLGVBQWU7SUFDZixlQUFlO0lBQ2YsVUFBVTtJQUNWLGNBQWM7SUFDZCxjQUFjO0lBQ2QsV0FBVztJQUNYLFNBQVM7SUFDVCxTQUFTO0lBQ1QsWUFBWTtJQUNaLGdCQUFnQjtJQUNoQixVQUFVO0lBQ1YsVUFBVTtJQUNWLHlCQUF5QjtJQUN6QixVQUFVO0NBQ1gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgQ3NwRGlyZWN0aXZlcyB7XG4gIHJlYWRvbmx5IGRlZmF1bHRTcmM/OiBzdHJpbmdbXTtcbiAgcmVhZG9ubHkgY29ubmVjdFNyYz86IHN0cmluZ1tdO1xuICByZWFkb25seSBmb250U3JjPzogc3RyaW5nW107XG4gIHJlYWRvbmx5IGltZ1NyYz86IHN0cmluZ1tdO1xuICByZWFkb25seSBtYW5pZmVzdFNyYz86IHN0cmluZ1tdO1xuICByZWFkb25seSBtZWRpYVNyYz86IHN0cmluZ1tdO1xuICByZWFkb25seSBvYmplY3RTcmM/OiBzdHJpbmdbXTtcbiAgcmVhZG9ubHkgc2NyaXB0U3JjPzogc3RyaW5nW107XG4gIHJlYWRvbmx5IHNjcmlwdFNyY0VsZW0/OiBzdHJpbmdbXTtcbiAgcmVhZG9ubHkgc2NyaXB0U3JjQXR0cj86IHN0cmluZ1tdO1xuICByZWFkb25seSBzdHlsZVNyYz86IHN0cmluZ1tdO1xuICByZWFkb25seSBzdHlsZVNyY0VsZW0/OiBzdHJpbmdbXTtcbiAgcmVhZG9ubHkgc3R5bGVTcmNBdHRyPzogc3RyaW5nW107XG4gIHJlYWRvbmx5IHdvcmtlclNyYz86IHN0cmluZ1tdO1xuICByZWFkb25seSBiYXNlVXJpPzogc3RyaW5nW107XG4gIHJlYWRvbmx5IHNhbmRib3g/OiBzdHJpbmdbXTtcbiAgcmVhZG9ubHkgZm9ybUFjdGlvbj86IHN0cmluZ1tdO1xuICByZWFkb25seSBmcmFtZUFuY2VzdG9ycz86IHN0cmluZ1tdO1xuICByZWFkb25seSBmcmFtZVNyYz86IHN0cmluZ1tdO1xuICByZWFkb25seSByZXBvcnRUbz86IHN0cmluZ1tdO1xuICByZWFkb25seSB1cGdyYWRlSW5zZWN1cmVSZXF1ZXN0cz86IHN0cmluZ1tdO1xuICByZWFkb25seSBjaGlsZFNyYz86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgY29uc3QgY3JlYXRlQ3NwRnJvbURpcmVjdGl2ZU9iamVjdHMgPSAoZGlyZWN0aXZlT2JqZWN0czogQ3NwRGlyZWN0aXZlc1tdKTogc3RyaW5nID0+IHtcbiAgY29uc3QgZGlyZWN0aXZlTWFwID0gbmV3IE1hcDxDc3BEaXJlY3RpdmVOYW1lLCBTZXQ8c3RyaW5nPj4oKTtcblxuICBmb3IgKGNvbnN0IGRpcmVjdGl2ZU9iamVjdCBvZiBkaXJlY3RpdmVPYmplY3RzKSB7XG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoZGlyZWN0aXZlT2JqZWN0KSkge1xuICAgICAgY29uc3QgZGlyZWN0aXZlTmFtZSA9IGtleSBhcyBDc3BEaXJlY3RpdmVOYW1lO1xuICAgICAgaWYgKCFkaXJlY3RpdmVNYXAuaGFzKGRpcmVjdGl2ZU5hbWUpKSB7XG4gICAgICAgIGRpcmVjdGl2ZU1hcC5zZXQoZGlyZWN0aXZlTmFtZSwgbmV3IFNldCgpKTtcbiAgICAgIH1cbiAgICAgIGZvciAoY29uc3QgdmFsdWUgb2YgZGlyZWN0aXZlT2JqZWN0W2RpcmVjdGl2ZU5hbWVdIGFzIHN0cmluZ1tdKSB7XG4gICAgICAgIGRpcmVjdGl2ZU1hcC5nZXQoZGlyZWN0aXZlTmFtZSkhLmFkZCh2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY29uc3Qgb3V0cHV0OiBzdHJpbmdbXSA9IFtdO1xuXG4gIGZvciAoY29uc3QgZGlyZWN0aXZlIG9mIE9SREVSRURfRElSRUNUSVZFX05BTUVTKSB7XG4gICAgY29uc3QgdmFsdWVzOiBTZXQ8c3RyaW5nPiB8IHVuZGVmaW5lZCA9IGRpcmVjdGl2ZU1hcC5nZXQoZGlyZWN0aXZlKTtcbiAgICBpZiAodmFsdWVzKSB7XG4gICAgICBvdXRwdXQucHVzaChgJHtjYW1lbFRvRGFzaChkaXJlY3RpdmUpfSAke0FycmF5LmZyb20odmFsdWVzKS5qb2luKCcgJyl9O2ApO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBvdXRwdXRcbiAgICAuam9pbignICcpXG4gICAgLnJlcGxhY2UoL1tcXHJcXG5cXHNdKy9nLCAnICcpXG4gICAgLnRyaW0oKTtcbn07XG5cbmV4cG9ydCBjb25zdCBjYW1lbFRvRGFzaCA9IChzdHI6IHN0cmluZykgPT4ge1xuICBpZiAoc3RyICE9IHN0ci50b0xvd2VyQ2FzZSgpKSB7XG4gICAgc3RyID0gc3RyLnJlcGxhY2UoL1tBLVpdL2csIG0gPT4gYC0ke20udG9Mb3dlckNhc2UoKX1gKTtcbiAgfVxuICByZXR1cm4gc3RyO1xufTtcblxudHlwZSBDc3BEaXJlY3RpdmVOYW1lID0ga2V5b2YgQ3NwRGlyZWN0aXZlcztcblxuY29uc3QgT1JERVJFRF9ESVJFQ1RJVkVfTkFNRVM6IENzcERpcmVjdGl2ZU5hbWVbXSA9IFtcbiAgJ2RlZmF1bHRTcmMnLFxuICAnY29ubmVjdFNyYycsXG4gICdmb250U3JjJyxcbiAgJ2ltZ1NyYycsXG4gICdtYW5pZmVzdFNyYycsXG4gICdtZWRpYVNyYycsXG4gICdvYmplY3RTcmMnLFxuICAnc2NyaXB0U3JjJyxcbiAgJ3NjcmlwdFNyY0VsZW0nLFxuICAnc2NyaXB0U3JjQXR0cicsXG4gICdzdHlsZVNyYycsXG4gICdzdHlsZVNyY0VsZW0nLFxuICAnc3R5bGVTcmNBdHRyJyxcbiAgJ3dvcmtlclNyYycsXG4gICdiYXNlVXJpJyxcbiAgJ3NhbmRib3gnLFxuICAnZm9ybUFjdGlvbicsXG4gICdmcmFtZUFuY2VzdG9ycycsXG4gICdmcmFtZVNyYycsXG4gICdyZXBvcnRUbycsXG4gICd1cGdyYWRlSW5zZWN1cmVSZXF1ZXN0cycsXG4gICdjaGlsZFNyYycsXG5dO1xuIl19
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as cloudfront from 'aws-cdk-lib/aws-cloudfront';
|
|
2
2
|
import * as route53 from 'aws-cdk-lib/aws-route53';
|
|
3
3
|
import { Construct } from 'constructs';
|
|
4
|
-
import { CspDirectives } from './contentSecurityPolicy';
|
|
4
|
+
import { type CspDirectives } from './contentSecurityPolicy';
|
|
5
5
|
/** Properties for defining a RioCloudfrontDistribution. */
|
|
6
6
|
export interface RioCloudfrontDistributionProps {
|
|
7
7
|
/** The reference to the S3 bucket containing the files to serve. */
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.createCspFromConfig = exports.RioCloudfrontDistribution = void 0;
|
|
4
|
+
const path = require("node:path");
|
|
4
5
|
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
5
6
|
const acm = require("aws-cdk-lib/aws-certificatemanager");
|
|
6
7
|
const cloudfront = require("aws-cdk-lib/aws-cloudfront");
|
|
@@ -9,7 +10,6 @@ const route53 = require("aws-cdk-lib/aws-route53");
|
|
|
9
10
|
const targets = require("aws-cdk-lib/aws-route53-targets");
|
|
10
11
|
const s3 = require("aws-cdk-lib/aws-s3");
|
|
11
12
|
const constructs_1 = require("constructs");
|
|
12
|
-
const path = require("path");
|
|
13
13
|
const rio_claidometer_1 = require("../../../rio-claidometer");
|
|
14
14
|
const rio_landing_zone_1 = require("../../../rio-landing-zone");
|
|
15
15
|
const contentSecurityPolicy_1 = require("./contentSecurityPolicy");
|
|
@@ -23,7 +23,7 @@ class RioCloudfrontDistribution extends constructs_1.Construct {
|
|
|
23
23
|
super(scope, id);
|
|
24
24
|
const hostedZone = props.hostedZone ?? rio_landing_zone_1.RioLandingZone.getDefaultHostedZone(this);
|
|
25
25
|
const subDomain = props.subDomain ?? '';
|
|
26
|
-
const domainName = props.subDomain === undefined ? hostedZone.zoneName : subDomain
|
|
26
|
+
const domainName = props.subDomain === undefined ? hostedZone.zoneName : `${subDomain}.${hostedZone.zoneName}`;
|
|
27
27
|
const frameOptions = props.frameOptions ?? {
|
|
28
28
|
frameOption: cloudfront.HeadersFrameOption.DENY,
|
|
29
29
|
override: true,
|
|
@@ -210,4 +210,4 @@ const intercomDirectives = {
|
|
|
210
210
|
scriptSrc: ["'unsafe-inline'", 'https://widget.intercom.io', 'https://js.intercomcdn.com'],
|
|
211
211
|
mediaSrc: ['https://js.intercomcdn.com'],
|
|
212
212
|
};
|
|
213
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmlvLWNsb3VkZnJvbnQtZGlzdHJpYnV0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbnRyaWJ1dGlvbnMvY29wLWZyb250ZW5kL2Nsb3VkZnJvbnQvcmlvLWNsb3VkZnJvbnQtZGlzdHJpYnV0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUFzRDtBQUN0RCwwREFBMEQ7QUFDMUQseURBQXlEO0FBQ3pELDhEQUE4RDtBQUM5RCxtREFBbUQ7QUFDbkQsMkRBQTJEO0FBQzNELHlDQUF5QztBQUN6QywyQ0FBdUM7QUFDdkMsNkJBQTZCO0FBQzdCLDhEQUEyRTtBQUMzRSxnRUFBMkQ7QUFDM0QsbUVBQXVGO0FBMEV2Rjs7OztHQUlHO0FBQ0gsTUFBYSx5QkFBMEIsU0FBUSxzQkFBUztJQUd0RCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXFDO1FBQzdFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLFVBQVUsSUFBSSxpQ0FBYyxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pGLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDO1FBQ3hDLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxTQUFTLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLEdBQUcsR0FBRyxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUM7UUFDL0csTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLFlBQVksSUFBSTtZQUN6QyxXQUFXLEVBQUUsVUFBVSxDQUFDLGtCQUFrQixDQUFDLElBQUk7WUFDL0MsUUFBUSxFQUFFLElBQUk7U0FDZixDQUFDO1FBRUYsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxD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LENBQUM7QUFFRixNQUFNLGtCQUFrQixHQUFrQjtJQUN4QyxVQUFVLEVBQUU7UUFDViw2QkFBNkI7UUFDN0IscURBQXFEO1FBQ3JELHFDQUFxQztRQUNyQyxxQ0FBcUM7UUFDckMsK0NBQStDO0tBQ2hEO0lBQ0QsT0FBTyxFQUFFLENBQUMsK0JBQStCLENBQUM7SUFDMUMsTUFBTSxFQUFFLENBQUMsNEJBQTRCLEVBQUUsbUNBQW1DLEVBQUUsbUNBQW1DLENBQUM7SUFDaEgsU0FBUyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsNEJBQTRCLEVBQUUsNEJBQTRCLENBQUM7SUFDMUYsUUFBUSxFQUFFLENBQUMsNEJBQTRCLENBQUM7Q0FDekMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IER1cmF0aW9uLCBSZW1vdmFsUG9saWN5IH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0ICogYXMgYWNtIGZyb20gJ2F3cy1jZGstbGliL2F3cy1jZXJ0aWZpY2F0ZW1hbmFnZXInO1xuaW1wb3J0ICogYXMgY2xvdWRmcm9udCBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY2xvdWRmcm9udCc7XG5pbXBvcnQgKiBhcyBvcmlnaW5zIGZyb20gJ2F3cy1jZGstbGliL2F3cy1jbG91ZGZyb250LW9yaWdpbnMnO1xuaW1wb3J0ICogYXMgcm91dGU1MyBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtcm91dGU1Myc7XG5pbXBvcnQgKiBhcyB0YXJnZXRzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1yb3V0ZTUzLXRhcmdldHMnO1xuaW1wb3J0ICogYXMgczMgZnJvbSAnYXdzLWNkay1saWIvYXdzLXMzJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IENsYWlkb21ldGVyLCBDbGFpZG9tZXRlclByb2R1Y3QgfSBmcm9tICcuLi8uLi8uLi9yaW8tY2xhaWRvbWV0ZXInO1xuaW1wb3J0IHsgUmlvTGFuZGluZ1pvbmUgfSBmcm9tICcuLi8uLi8uLi9yaW8tbGFuZGluZy16b25lJztcbmltcG9ydCB7IENzcERpcmVjdGl2ZXMsIGNyZWF0ZUNzcEZyb21EaXJlY3RpdmVPYmplY3RzIH0gZnJvbSAnLi9jb250ZW50U2VjdXJpdHlQb2xpY3knO1xuXG4vKiogUHJvcGVydGllcyBmb3IgZGVmaW5pbmcgYSBSaW9DbG91ZGZyb250RGlzdHJpYnV0aW9uLiAqL1xuZXhwb3J0IGludGVyZmFjZSBSaW9DbG91ZGZyb250RGlzdHJpYnV0aW9uUHJvcHMge1xuICAvKiogVGhlIHJlZmVyZW5jZSB0byB0aGUgUzMgYnVja2V0IGNvbnRhaW5pbmcgdGhlIGZpbGVzIHRvIHNlcnZlLiAqL1xuICByZWFkb25seSBjb250ZW50QnVja2V0TmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgc3ViZG9tYWluIHdoZXJlIHRoZSBjb250ZW50IHNob3VsZCBiZSBzZXJ2ZWQuXG4gICAqXG4gICAqIElmIG5vdCBnaXZlbiwgYW4gZW1wdHkgc3RyaW5nLCBpLmUuIG5vIHN1YkRvbWFpbiB3aWxsIGJlIHVzZWQuIEluc3RlYWQsIHRoZSBuYW1lIG9mIHRoZSBob3N0ZWQgem9uZSB3aWxsIGJlIHVzZWRcbiAgICogZGlyZWN0bHkuXG4gICAqL1xuICByZWFkb25seSBzdWJEb21haW4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBob3N0ZWQgem9uZSBvZiB0aGUgZG9tYWluIHVuZGVyIHdoaWNoIHRoZSBjb250ZW50IHdpbGwgYmUgc2VydmVkLlxuICAgKlxuICAgKiBJZiBub3QgZ2l2ZW4sIHRoZSBkZWZhdWx0IGhvc3RlZCBab25lIHByb3ZpZGVkIGJ5IFJJTyBzZXR1cCB3aWxsIGJlIHVzZWQuXG4gICAqL1xuICByZWFkb25seSBob3N0ZWRab25lPzogcm91dGU1My5JSG9zdGVkWm9uZTtcblxuICAvKipcbiAgICogQWxsb3dzIGRlY2xhcmF0aXZlbHkgZGVmaW5pbmcgeW91ciBkZXNpcmVkIENTUC5cbiAgICpcbiAgICogVGhlIFJJTyBkZWZhdWx0cyBhcmUgYWx3YXlzIGluY2x1ZGVkLCBhbmQgeW91IGNhbiBjaG9vc2Ugd2hpY2ggc2VydmljZXMgeW91IHdhbnQgdG8gaW5jbHVkZSAoZS5nLiBDb25maWdDYXQpIG9yXG4gICAqIG5vdC4gWW91IGNhbiBhbHNvIHByb3ZpZGUgY3VzdG9tIGRpcmVjdGl2ZXMgLyB2YWx1ZXMgdXNpbmcgdGhlIFwiY3VzdG9tXCIga2V5LlxuICAgKi9cbiAgcmVhZG9ubHkgY3NwQ29uZmlnPzogQ3NwQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBUaGUgbGlzdCBvZiBmdW5jdGlvbnMgdG8gYmUgYXNzb2NpYXRlZCB3aXRoIHRoZSBkZWZhdWx0IGJlaGF2aW91ciBvZiB0aGUgZGlzdHJpYnV0aW9uLlxuICAgKlxuICAgKiBJZiBub3QgZ2l2ZW4sIG5vIGZ1bmN0aW9ucyB3aWxsIGJlIGFzc2lnbmVkLlxuICAgKi9cbiAgcmVhZG9ubHkgZnVuY3Rpb25Bc3NvY2lhdGlvbnM/OiBjbG91ZGZyb250LkZ1bmN0aW9uQXNzb2NpYXRpb25bXTtcblxuICAvKipcbiAgICogVGhlIGZyYW1lIG9wdGlvbnMgdG8gYmUgdXNlZCBpbiB0aGUgcmVzcG9uc2UgaGVhZGVycyBwb2xpY3kuXG4gICAqXG4gICAqIElmIG5vdCBnaXZlbiwgdGhlIGRlZmF1bHQgdmFsdWUgd2lsbCBiZSBgREVOWWAgJiBvdmVycmlkZTogdHJ1ZS5cbiAgICovXG4gIHJlYWRvbmx5IGZyYW1lT3B0aW9ucz86IGNsb3VkZnJvbnQuUmVzcG9uc2VIZWFkZXJzRnJhbWVPcHRpb25zO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENzcENvbmZpZyB7XG4gIC8qKiBJbmNsdWRlIEdvb2dsZSBBbmFseXRpY3MgLyBHb29nbGUgVGFnIG1hbmFnZXIuICovXG4gIHJlYWRvbmx5IGdvb2dsZUFuYWx5dGljcz86IGJvb2xlYW47XG5cbiAgLyoqIEluY2x1ZGUgU2VudHJ5LiAqL1xuICByZWFkb25seSBzZW50cnk/OiBib29sZWFuO1xuXG4gIC8qKiBJbmNsdWRlIFNwbGl0LmlvLiAqL1xuICByZWFkb25seSBzcGxpdD86IGJvb2xlYW47XG5cbiAgLyoqIEluY2x1ZGUgRGF0YWRvZy4gKi9cbiAgcmVhZG9ubHkgZGF0YWRvZz86IGJvb2xlYW47XG5cbiAgLyoqIEluY2x1ZGUgQ29uZmlnQ2F0LiAqL1xuICByZWFkb25seSBjb25maWdDYXQ/OiBib29sZWFuO1xuXG4gIC8qKiBJbmNsdWRlIEhlcmUgTWFwcy4gKi9cbiAgcmVhZG9ubHkgaGVyZT86IGJvb2xlYW47XG5cbiAgLyoqIEluY2x1ZGUgSW50ZXJjb20uICovXG4gIHJlYWRvbmx5IGludGVyY29tPzogYm9vbGVhbjtcblxuICAvKiogUHJpbnRzIHRoZSBnZW5lcmF0ZWQgQ1NQIHRvIHRoZSBjb25zb2xlLiAqL1xuICByZWFkb25seSBsb2dPdXRwdXQ/OiBib29sZWFuO1xuXG4gIC8qKiBZb3UgY2FuIGRlZmluZSBjdXN0b20gdmFsdWVzIGZvciBhbnkgQ1NQIGRpcmVjdGl2ZSB3aXRoIHRoaXMuICovXG4gIHJlYWRvbmx5IGN1c3RvbURpcmVjdGl2ZXM/OiBDc3BEaXJlY3RpdmVzO1xufVxuXG4vKipcbiAqIEEgQ29uc3RydWN0IHdoaWNoIGNyZWF0ZXMgYSBkZWZhdWx0IGNsb3VkZnJvbnQgZGlzdHJpYnV0aW9uIHVzaW5nIGEgczMgYnVja2V0IGFzIG9yaWdpbi5cbiAqXG4gKiBJbnRlbmRlZCBmb3IgZGVsaXZlcnkgb2YgaHRtbCBkb2N1bWVudHMuIEl0IHNldHMgc29tZSBkZWZhdWx0cyBhIHJlY29tbWVuZGVkIGJ5IEFXUyBhbmQgcHJvdmlkZXMgQ1NQIHNldHRpbmdzLlxuICovXG5leHBvcnQgY2xhc3MgUmlvQ2xvdWRmcm9udERpc3RyaWJ1dGlvbiBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHJlYWRvbmx5IGRpc3RyaWJ1dGlvbjogY2xvdWRmcm9udC5JRGlzdHJpYnV0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBSaW9DbG91ZGZyb250RGlzdHJpYnV0aW9uUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgY29uc3QgaG9zdGVkWm9uZSA9IHByb3BzLmhvc3RlZFpvbmUgPz8gUmlvTGFuZGluZ1pvbmUuZ2V0RGVmYXVsdEhvc3RlZFpvbmUodGhpcyk7XG4gICAgY29uc3Qgc3ViRG9tYWluID0gcHJvcHMuc3ViRG9tYWluID8/ICcnO1xuICAgIGNvbnN0IGRvbWFpbk5hbWUgPSBwcm9wcy5zdWJEb21haW4gPT09IHVuZGVmaW5lZCA/IGhvc3RlZFpvbmUuem9uZU5hbWUgOiBzdWJEb21haW4gKyAnLicgKyBob3N0ZWRab25lLnpvbmVOYW1lO1xuICAgIGNvbnN0IGZyYW1lT3B0aW9ucyA9IHByb3BzLmZyYW1lT3B0aW9ucyA/PyB7XG4gICAgICBmcmFtZU9wdGlvbjogY2xvdWRmcm9udC5IZWFkZXJzRnJhbWVPcHRpb24uREVOWSxcbiAgICAgIG92ZXJyaWRlOiB0cnVlLFxuICAgIH07XG5cbiAgICBjb25zdCBjb250ZW50U2VjdXJpdHlQb2xpY3kgPSB0aGlzLmdlbmVyYXRlQ3NwKHByb3BzKTtcblxuICAgIGNvbnN0IGNlcnRpZmljYXRlID0gbmV3IGFjbS5EbnNWYWxpZGF0ZWRDZXJ0aWZpY2F0ZSh0aGlzLCAnQ2xvdWRmcm9udERpc3RyaWJ1dGlvbkNlcnRpZmljYXRlJywge1xuICAgICAgZG9tYWluTmFtZTogZG9tYWluTmFtZSxcbiAgICAgIGhvc3RlZFpvbmU6IGhvc3RlZFpvbmUsXG4gICAgICByZWdpb246ICd1cy1lYXN0LTEnLFxuICAgIH0pO1xuXG4gICAgY29uc3QgYnVja2V0ID0gbmV3IHMzLkJ1Y2tldCh0aGlzLCAnRnJvbnRFbmRCdWNrZXQnLCB7XG4gICAgICBidWNrZXROYW1lOiBwcm9wcy5jb250ZW50QnVja2V0TmFtZSxcbiAgICAgIGVuY3J5cHRpb246IHMzLkJ1Y2tldEVuY3J5cHRpb24uUzNfTUFOQUdFRCxcbiAgICAgIHZlcnNpb25lZDogdHJ1ZSxcbiAgICAgIHJlbW92YWxQb2xpY3k6IFJlbW92YWxQb2xpY3kuREVTVFJPWSxcbiAgICAgIGF1dG9EZWxldGVPYmplY3RzOiB0cnVlLFxuICAgICAgbGlmZWN5Y2xlUnVsZXM6IFtcbiAgICAgICAgeyBpZDogJ0V4cGlyZXNPYmplY3RzJywgZXhwaXJhdGlvbjogRHVyYXRpb24uZGF5cyg5MCksIG5vbmN1cnJlbnRWZXJzaW9uRXhwaXJhdGlvbjogRHVyYXRpb24uZGF5cygzMCkgfSxcbiAgICAgIF0sXG4gICAgICBlbmZvcmNlU1NMOiB0cnVlLFxuICAgICAgY29yczogW3sgYWxsb3dlZE1ldGhvZHM6IFtzMy5IdHRwTWV0aG9kcy5HRVRdLCBhbGxvd2VkT3JpZ2luczogWycqJ10sIGFsbG93ZWRIZWFkZXJzOiBbJyonXSB9XSxcbiAgICAgIGJsb2NrUHVibGljQWNjZXNzOiBzMy5CbG9ja1B1YmxpY0FjY2Vzcy5CTE9DS19BTEwsXG4gICAgfSk7XG5cbiAgICBjb25zdCByZXNwb25zZUhlYWRlcnNQb2xpY3kgPSBuZXcgY2xvdWRmcm9udC5SZXNwb25zZUhlYWRlcnNQb2xpY3kodGhpcywgJ1Jlc3BvbnNlSGVhZGVyc1BvbGljeScsIHtcbiAgICAgIGNvbW1lbnQ6ICdQb2xpY3kgZm9yIENsb3VkRnJvbnQgcmVzcG9uc2VzJyxcbiAgICAgIGNvcnNCZWhhdmlvcjoge1xuICAgICAgICBhY2Nlc3NDb250cm9sQWxsb3dDcmVkZW50aWFsczogZmFsc2UsXG4gICAgICAgIGFjY2Vzc0NvbnRyb2xBbGxvd0hlYWRlcnM6IFsnKiddLFxuICAgICAgICBhY2Nlc3NDb250cm9sQWxsb3dNZXRob2RzOiBbJ0dFVCddLFxuICAgICAgICBhY2Nlc3NDb250cm9sQWxsb3dPcmlnaW5zOiBbaG9zdGVkWm9uZS56b25lTmFtZV0sXG4gICAgICAgIGFjY2Vzc0NvbnRyb2xNYXhBZ2U6IER1cmF0aW9uLnNlY29uZHMoNjAwKSxcbiAgICAgICAgb3JpZ2luT3ZlcnJpZGU6IHRydWUsXG4gICAgICB9LFxuICAgICAgc2VjdXJpdHlIZWFkZXJzQmVoYXZpb3I6IHtcbiAgICAgICAgY29udGVudFNlY3VyaXR5UG9saWN5OiB7IGNvbnRlbnRTZWN1cml0eVBvbGljeTogY29udGVudFNlY3VyaXR5UG9saWN5LCBvdmVycmlkZTogdHJ1ZSB9LFxuICAgICAgICBjb250ZW50VHlwZU9wdGlvbnM6IHsgb3ZlcnJpZGU6IHRydWUgfSxcbiAgICAgICAgZnJhbWVPcHRpb25zOiBmcmFtZU9wdGlvbnMsXG4gICAgICAgIHJlZmVycmVyUG9saWN5OiB7XG4gICAgICAgICAgcmVmZXJyZXJQb2xpY3k6IGNsb3VkZnJvbnQuSGVhZGVyc1JlZmVycmVyUG9saWN5LlNUUklDVF9PUklHSU5fV0hFTl9DUk9TU19PUklHSU4sXG4gICAgICAgICAgb3ZlcnJpZGU6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIHN0cmljdFRyYW5zcG9ydFNlY3VyaXR5OiB7IGFjY2Vzc0NvbnRyb2xNYXhBZ2U6IER1cmF0aW9uLmRheXMoMzY1KSwgaW5jbHVkZVN1YmRvbWFpbnM6IHRydWUsIG92ZXJyaWRlOiB0cnVlIH0sXG4gICAgICAgIHhzc1Byb3RlY3Rpb246IHsgcHJvdGVjdGlvbjogdHJ1ZSwgbW9kZUJsb2NrOiB0cnVlLCBvdmVycmlkZTogdHJ1ZSB9LFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGNvbnN0IG9yaWdpbkFjY2Vzc0NvbnRyb2wgPSBuZXcgY2xvdWRmcm9udC5TM09yaWdpbkFjY2Vzc0NvbnRyb2wodGhpcywgJ09yaWdpbkFjY2Vzc0NvbnRyb2wnLCB7XG4gICAgICBkZXNjcmlwdGlvbjogYEFjY2VzcyBjb250cm9sIGZvciAqLiR7ZG9tYWluTmFtZX1gLFxuICAgIH0pO1xuXG4gICAgdGhpcy5kaXN0cmlidXRpb24gPSBuZXcgY2xvdWRmcm9udC5EaXN0cmlidXRpb24odGhpcywgJ0Rpc3RyaWJ1dGlvbicsIHtcbiAgICAgIGRlZmF1bHRCZWhhdmlvcjoge1xuICAgICAgICBvcmlnaW46IG9yaWdpbnMuUzNCdWNrZXRPcmlnaW4ud2l0aE9yaWdpbkFjY2Vzc0NvbnRyb2woYnVja2V0LCB7XG4gICAgICAgICAgb3JpZ2luQWNjZXNzQ29udHJvbDogb3JpZ2luQWNjZXNzQ29udHJvbCxcbiAgICAgICAgfSksXG4gICAgICAgIG9yaWdpblJlcXVlc3RQb2xpY3k6IGNsb3VkZnJvbnQuT3JpZ2luUmVxdWVzdFBvbGljeS5DT1JTX1MzX09SSUdJTixcbiAgICAgICAgdmlld2VyUHJvdG9jb2xQb2xpY3k6IGNsb3VkZnJvbnQuVmlld2VyUHJvdG9jb2xQb2xpY3kuUkVESVJFQ1RfVE9fSFRUUFMsXG4gICAgICAgIGNhY2hlUG9saWN5OiBjbG91ZGZyb250LkNhY2hlUG9saWN5LkNBQ0hJTkdfT1BUSU1JWkVELFxuICAgICAgICByZXNwb25zZUhlYWRlcnNQb2xpY3k6IHJlc3BvbnNlSGVhZGVyc1BvbGljeSxcbiAgICAgICAgY29tcHJlc3M6IHRydWUsXG4gICAgICAgIGZ1bmN0aW9uQXNzb2NpYXRpb25zOiBwcm9wcy5mdW5jdGlvbkFzc29jaWF0aW9ucyxcbiAgICAgIH0sXG4gICAgICBkb21haW5OYW1lczogW2RvbWFpbk5hbWVdLFxuICAgICAgcHJpY2VDbGFzczogY2xvdWRmcm9udC5QcmljZUNsYXNzLlBSSUNFX0NMQVNTXzEwMCxcbiAgICAgIGNlcnRpZmljYXRlOiBjZXJ0aWZpY2F0ZSxcbiAgICAgIGRlZmF1bHRSb290T2JqZWN0OiAnaW5kZXguaHRtbCcsXG4gICAgICBtaW5pbXVtUHJvdG9jb2xWZXJzaW9uOiBjbG91ZGZyb250LlNlY3VyaXR5UG9saWN5UHJvdG9jb2wuVExTX1YxXzJfMjAxOCxcbiAgICAgIGVycm9yUmVzcG9uc2VzOiBbXG4gICAgICAgIHsgaHR0cFN0YXR1czogNDA0LCByZXNwb25zZUh0dHBTdGF0dXM6IDIwMCwgcmVzcG9uc2VQYWdlUGF0aDogJy9pbmRleC5odG1sJywgdHRsOiBEdXJhdGlvbi5taW51dGVzKDUpIH0sXG4gICAgICAgIHsgaHR0cFN0YXR1czogNDAzLCByZXNwb25zZUh0dHBTdGF0dXM6IDIwMCwgcmVzcG9uc2VQYWdlUGF0aDogJy9pbmRleC5odG1sJywgdHRsOiBEdXJhdGlvbi5taW51dGVzKDUpIH0sXG4gICAgICBdLFxuICAgIH0pO1xuXG4gICAgbmV3IHJvdXRlNTMuUmVjb3JkU2V0KHRoaXMsICdSZWNvcmRTZXQnLCB7XG4gICAgICByZWNvcmROYW1lOiBzdWJEb21haW4sXG4gICAgICB0YXJnZXQ6IHJvdXRlNTMuUmVjb3JkVGFyZ2V0LmZyb21BbGlhcyhuZXcgdGFyZ2V0cy5DbG91ZEZyb250VGFyZ2V0KHRoaXMuZGlzdHJpYnV0aW9uKSksXG4gICAgICB6b25lOiBob3N0ZWRab25lLFxuICAgICAgcmVjb3JkVHlwZTogcm91dGU1My5SZWNvcmRUeXBlLkEsXG4gICAgfSk7XG5cbiAgICBjb25zdCBbZmVhdHVyZSwgcGFja2FnZU5hbWVdID0gX19kaXJuYW1lLnNwbGl0KHBhdGguc2VwKS5yZXZlcnNlKCk7XG5cbiAgICBuZXcgQ2xhaWRvbWV0ZXIodGhpcywgJ0NsYWlkb21ldGVyJywge1xuICAgICAgcHJvZHVjdDogQ2xhaWRvbWV0ZXJQcm9kdWN0LkNES19DT05UUklCVVRJT04sXG4gICAgICBwYWNrYWdlTmFtZSxcbiAgICAgIGZlYXR1cmUsXG4gICAgICB2ZXJzaW9uOiAnMC4wLjUnLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZW5lcmF0ZUNzcCh7IGNzcENvbmZpZyB9OiBSaW9DbG91ZGZyb250RGlzdHJpYnV0aW9uUHJvcHMpOiBzdHJpbmcge1xuICAgIGlmICghY3NwQ29uZmlnKSB7XG4gICAgICBjb25zb2xlLmluZm8oJ1tSaW9DbG91ZEZyb250RGlzdHJpYnV0aW9uXSBZb3UgZGlkIG5vdCBwcm92aWRlIGEgXCJjc3BDb25maWdcIi4gVGhlIGRlZmF1bHQgQ1NQIHdpbGwgYmUgZ2VuZXJhdGVkLicpO1xuICAgIH1cblxuICAgIGNvbnN0IGdlbmVyYXRlZENvbmZpZyA9IGNyZWF0ZUNzcEZyb21Db25maWcoY3NwQ29uZmlnKTtcblxuICAgIGlmIChjc3BDb25maWc/LmxvZ091dHB1dCkge1xuICAgICAgY29uc29sZS5sb2coYFtSaW9DbG91ZEZyb250RGlzdHJpYnV0aW9uXSBHZW5lcmF0ZWQgQ1NQOlxcbiR7Z2VuZXJhdGVkQ29uZmlnfWApO1xuICAgIH1cblxuICAgIHJldHVybiBnZW5lcmF0ZWRDb25maWc7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IGNyZWF0ZUNzcEZyb21Db25maWcgPSAoY3NwQ29uZmlnOiBDc3BDb25maWcgPSBERUZBVUxUX0NTUF9DT05GSUcpOiBzdHJpbmcgPT4ge1xuICBjb25zdCB7IGdvb2dsZUFuYWx5dGljcywgc2VudHJ5LCBzcGxpdCwgZGF0YWRvZywgY29uZmlnQ2F0LCBoZXJlLCBpbnRlcmNvbSwgY3VzdG9tRGlyZWN0aXZlcyB9ID0gY3NwQ29uZmlnO1xuICBjb25zdCBkaXJlY3RpdmVPYmplY3RzID0gW292ZXJhbGxEZWZhdWx0c107XG4gIGdvb2dsZUFuYWx5dGljcyAmJiBkaXJlY3RpdmVPYmplY3RzLnB1c2goZ29vZ2xlQW5hbHl0aWNzRGlyZWN0aXZlcyk7XG4gIHNlbnRyeSAmJiBkaXJlY3RpdmVPYmplY3RzLnB1c2goc2VudHJ5RGlyZWN0aXZlcyk7XG4gIHNwbGl0ICYmIGRpcmVjdGl2ZU9iamVjdHMucHVzaChzcGxpdERpcmVjdGl2ZXMpO1xuICBkYXRhZG9nICYmIGRpcmVjdGl2ZU9iamVjdHMucHVzaChkYXRhZG9nRGlyZWN0aXZlcyk7XG4gIGNvbmZpZ0NhdCAmJiBkaXJlY3RpdmVPYmplY3RzLnB1c2goY29uZmlnQ2F0RGlyZWN0aXZlcyk7XG4gIGhlcmUgJiYgZGlyZWN0aXZlT2JqZWN0cy5wdXNoKGhlcmVEaXJlY3RpdmVzKTtcbiAgaW50ZXJjb20gJiYgZGlyZWN0aXZlT2JqZWN0cy5wdXNoKGludGVyY29tRGlyZWN0aXZlcyk7XG4gIGN1c3RvbURpcmVjdGl2ZXMgJiYgZGlyZWN0aXZlT2JqZWN0cy5wdXNoKGN1c3RvbURpcmVjdGl2ZXMpO1xuICByZXR1cm4gY3JlYXRlQ3NwRnJvbURpcmVjdGl2ZU9iamVjdHMoZGlyZWN0aXZlT2JqZWN0cyk7XG59O1xuXG5jb25zdCBERUZBVUxUX0NTUF9DT05GSUc6IENzcENvbmZpZyA9IHtcbiAgZ29vZ2xlQW5hbHl0aWNzOiB0cnVlLFxuICBzZW50cnk6IHRydWUsXG4gIHNwbGl0OiB0cnVlLFxuICBkYXRhZG9nOiB0cnVlLFxuICBjb25maWdDYXQ6IHRydWUsXG4gIGhlcmU6IGZhbHNlLFxufTtcblxuY29uc3QgUklPX0FORF9TRUxGID0gW1wiJ3NlbGYnXCIsICdodHRwczovLyoucmlvLmNsb3VkJywgJ2h0dHBzOi8vcmlvLmNsb3VkJ107XG5cbmNvbnN0IG92ZXJhbGxEZWZhdWx0czogQ3NwRGlyZWN0aXZlcyA9IHtcbiAgZGVmYXVsdFNyYzogUklPX0FORF9TRUxGLFxuICBjb25uZWN0U3JjOiBSSU9fQU5EX1NFTEYsXG4gIGZvbnRTcmM6IFsuLi5SSU9fQU5EX1NFTEYsICdkYXRhOiddLFxuICBpbWdTcmM6IFsuLi5SSU9fQU5EX1NFTEYsICdkYXRhOiddLFxuICBvYmplY3RTcmM6IFtcIidub25lJ1wiXSxcbiAgc2NyaXB0U3JjOiBSSU9fQU5EX1NFTEYsXG4gIHN0eWxlU3JjOiBbLi4uUklPX0FORF9TRUxGLCBcIid1bnNhZmUtaW5saW5lJ1wiXSxcbiAgYmFzZVVyaTogW1wiJ3NlbGYnXCJdLFxuICBmb3JtQWN0aW9uOiBSSU9fQU5EX1NFTEYsXG4gIGZyYW1lQW5jZXN0b3JzOiBSSU9fQU5EX1NFTEYsXG4gIGZyYW1lU3JjOiBSSU9fQU5EX1NFTEYsXG59O1xuXG5jb25zdCBnb29nbGVBbmFseXRpY3NEaXJlY3RpdmVzOiBDc3BEaXJlY3RpdmVzID0ge1xuICBpbWdTcmM6IFsnd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tJ10sXG4gIHNjcmlwdFNyYzogW1xuICAgICdodHRwczovLyouZ29vZ2xldGFnbWFuYWdlci5jb20nLFxuICAgIC8vIGdvb2dsZSBhbmF5bHl0aWNzIHNjcmlwdCBkZWNsYXJlZCBpbiBpbmRleC5odG1sXG4gICAgXCInc2hhMjU2LUhEV0FnZlRlTUFndVQ4d0Z3Nys5Mlk3aTRFby82UlVRUXVBM1RXOUp4YkE9J1wiLFxuICAgIC8vIHNjcmlwdCBsb2FkZWQgYnkgZ29vZ2xlIHRhZyBtYW5hZ2VyXG4gICAgXCInc2hhMjU2LXBkbXFxKzFROHl3SkdOdjJoZ0NlUld0UnoxUWY3UDc5a3p4ckxlSGJtV1U9J1wiLFxuICBdLFxuICBjb25uZWN0U3JjOiBbXG4gICAgJ2h0dHBzOi8vd3d3Lmdvb2dsZS5jb20nLFxuICAgICdodHRwczovLyouZ29vZ2xlLWFuYWx5dGljcy5jb20nLFxuICAgICdodHRwczovLyouYW5hbHl0aWNzLmdvb2dsZS5jb20nLFxuICAgICdodHRwczovLyouZ29vZ2xldGFnbWFuYWdlci5jb20nLFxuICBdLFxuICBmcmFtZVNyYzogWydodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbSddLFxufTtcblxuY29uc3Qgc2VudHJ5RGlyZWN0aXZlczogQ3NwRGlyZWN0aXZlcyA9IHtcbiAgY29ubmVjdFNyYzogWydodHRwczovLyouc2VudHJ5LmlvJywgJ2h0dHBzOi8vc2VudHJ5LmlvJ10sXG59O1xuXG5jb25zdCBzcGxpdERpcmVjdGl2ZXM6IENzcERpcmVjdGl2ZXMgPSB7XG4gIGNvbm5lY3RTcmM6IFsnaHR0cHM6Ly9zZGsuc3BsaXQuaW8nXSxcbn07XG5cbmNvbnN0IGRhdGFkb2dEaXJlY3RpdmVzOiBDc3BEaXJlY3RpdmVzID0ge1xuICBjb25uZWN0U3JjOiBbXG4gICAgJ2h0dHBzOi8vKi5kYXRhZG9naHEuZXUnLFxuICAgICdodHRwczovLyouYnJvd3Nlci1pbnRha2UtZGF0YWRvZ2hxLmV1JyxcbiAgICAnaHR0cHM6Ly9icm93c2VyLWludGFrZS1kYXRhZG9naHEuZXUnLFxuICBdLFxufTtcblxuY29uc3QgY29uZmlnQ2F0RGlyZWN0aXZlczogQ3NwRGlyZWN0aXZlcyA9IHtcbiAgY29ubmVjdFNyYzogWydodHRwczovL2Nkbi1ldS5jb25maWdjYXQuY29tJ10sXG59O1xuXG5jb25zdCBoZXJlRGlyZWN0aXZlczogQ3NwRGlyZWN0aXZlcyA9IHtcbiAgZGVmYXVsdFNyYzogWycqLmpzLmFwaS5oZXJlLmNvbSddLFxuICBjb25uZWN0U3JjOiBbJ2h0dHBzOi8vKi5oZXJlYXBpLmNvbScsICdodHRwczovLyouYXBpLmhlcmUuY29tJ10sXG4gIGZvbnRTcmM6IFsnaHR0cHM6Ly9qcy5hcGkuaGVyZS5jb20nXSxcbiAgaW1nU3JjOiBbJ2pzLmFwaS5oZXJlLmNvbSddLFxuICBzY3JpcHRTcmM6IFsnaHR0cHM6Ly8qLmhlcmVhcGkuY29tIGh0dHBzOi8vKi5hcGkuaGVyZS5jb20nXSxcbiAgc3R5bGVTcmM6IFsnKi5oZXJlLmNvbSddLFxufTtcblxuY29uc3QgaW50ZXJjb21EaXJlY3RpdmVzOiBDc3BEaXJlY3RpdmVzID0ge1xuICBjb25uZWN0U3JjOiBbXG4gICAgJ2h0dHBzOi8vYXBpLWlhbS5pbnRlcmNvbS5pbycsXG4gICAgJ2h0dHBzOi8vaW50ZXJuZXQtdXAtcmVhbHRpbWUuaW50ZXJjb20tbWVzc2VuZ2VyLmNvbScsXG4gICAgJ3dzczovL25leHVzLXdlYnNvY2tldC1hLmludGVyY29tLmlvJyxcbiAgICAnd3NzOi8vbmV4dXMtd2Vic29ja2V0LWIuaW50ZXJjb20uaW8nLFxuICAgICd3c3M6Ly9wcmltYXJ5LXJlYWx0aW1lLmludGVyY29tLW1lc3Nlbmdlci5jb20nLFxuICBdLFxuICBmb250U3JjOiBbJ2h0dHBzOi8vZm9udHMuaW50ZXJjb21jZG4uY29tJ10sXG4gIGltZ1NyYzogWydodHRwczovL2pzLmludGVyY29tY2RuLmNvbScsICdodHRwczovL3N0YXRpYy5pbnRlcmNvbWFzc2V0cy5jb20nLCAnaHR0cHM6Ly9kb3dubG9hZHMuaW50ZXJjb21jZG4uY29tJ10sXG4gIHNjcmlwdFNyYzogW1wiJ3Vuc2FmZS1pbmxpbmUnXCIsICdodHRwczovL3dpZGdldC5pbnRlcmNvbS5pbycsICdodHRwczovL2pzLmludGVyY29tY2RuLmNvbSddLFxuICBtZWRpYVNyYzogWydodHRwczovL2pzLmludGVyY29tY2RuLmNvbSddLFxufTtcbiJdfQ==
|
|
213
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmlvLWNsb3VkZnJvbnQtZGlzdHJpYnV0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbnRyaWJ1dGlvbnMvY29wLWZyb250ZW5kL2Nsb3VkZnJvbnQvcmlvLWNsb3VkZnJvbnQtZGlzdHJpYnV0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGtDQUFrQztBQUNsQyw2Q0FBc0Q7QUFDdEQsMERBQTBEO0FBQzFELHlEQUF5RDtBQUN6RCw4REFBOEQ7QUFDOUQsbURBQW1EO0FBQ25ELDJEQUEyRDtBQUMzRCx5Q0FBeUM7QUFDekMsMkNBQXVDO0FBQ3ZDLDhEQUEyRTtBQUMzRSxnRUFBMkQ7QUFDM0QsbUVBQTRGO0FBMEU1Rjs7OztHQUlHO0FBQ0gsTUFBYSx5QkFBMEIsU0FBUSxzQkFBUztJQUd0RCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXFDO1FBQzdFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLFVBQVUsSUFBSSxpQ0FBYyxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pGLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDO1FBQ3hDLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxTQUFTLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsSUFBSSxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDL0csTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLFlBQVksSUFBSTtZQUN6QyxXQUFXLEVBQUUsVUFBVSxDQUFDLGtCQUFrQixDQUFDLElBQUk7WUFDL0MsUUFBUSxFQUFFLElBQUk7U0FDZixDQUFDO1FBRUYsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXRELE1BQU0sV0FBVyxHQUFHLElBQUksR0FBRyxDQUFDLHVCQUF1QixDQUFDLElBQUksRUFBRSxtQ0FBbUMsRUFBRTtZQUM3RixVQUFVLEVBQUUsVUFBVTtZQUN0QixVQUFVLEVBQUUsVUFBVTtZQUN0QixNQUFNLEVBQUUsV0FBVztTQUNwQixDQUFDLENBQUM7UUFFSCxNQUFNLE1BQU0sR0FBRyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFO1lBQ25ELFVBQVUsRUFBRSxLQUFLLENBQUMsaUJBQWlCO1lBQ25DLFVBQVUsRUFBRSxFQUFFLENBQUMsZ0JBQWdCLENBQUMsVUFBVTtZQUMxQyxTQUFTLEVBQUUsSUFBSTtZQUNmLGFBQWEsRUFBRSwyQkFBYSxDQUFDLE9BQU87WUFDcEMsaUJBQWlCLEVBQUUsSUFBSTtZQUN2QixjQUFjLEVBQUU7Z0JBQ2QsRUFBRSxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsVUFBVSxFQUFFLHNCQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLDJCQUEyQixFQUFFLHNCQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFO2FBQ3hHO1lBQ0QsVUFBVSxFQUFFLElBQUk7WUFDaEIsSUFBSSxFQUFFLENBQUMsRUFBRSxjQUFjLEVBQUUsQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxFQUFFLGNBQWMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLGNBQWMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDOUYsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLFNBQVM7U0FDbEQsQ0FBQyxDQUFDO1FBRUgsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsdUJBQXVCLEVBQUU7WUFDaEcsT0FBTyxFQUFFLGlDQUFpQztZQUMxQyxZQUFZLEVBQUU7Z0JBQ1osNkJBQTZCLEVBQUUsS0FBSztnQkFDcEMseUJBQXlCLEVBQUUsQ0FBQyxHQUFHLENBQUM7Z0JBQ2hDLHlCQUF5QixFQUFFLENBQUMsS0FBSyxDQUFDO2dCQUNsQyx5QkFBeUIsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUM7Z0JBQ2hELG1CQUFtQixFQUFFLHNCQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztnQkFDMUMsY0FBYyxFQUFFLElBQUk7YUFDckI7WUFDRCx1QkFBdUIsRUFBRTtnQkFDdkIscUJBQXFCLEVBQUUsRUFBRSxxQkFBcUIsRUFBRSxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUN2RixrQkFBa0IsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ3RDLFlBQVksRUFBRSxZQUFZO2dCQUMxQixjQUFjLEVBQUU7b0JBQ2QsY0FBYyxFQUFFLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQywrQkFBK0I7b0JBQ2hGLFFBQVEsRUFBRSxJQUFJO2lCQUNmO2dCQUNELHVCQUF1QixFQUFFLEVBQUUsbUJBQW1CLEVBQUUsc0JBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQzdHLGFBQWEsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2FBQ3JFO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUscUJBQXFCLEVBQUU7WUFDNUYsV0FBVyxFQUFFLHdCQUF3QixVQUFVLEVBQUU7U0FDbEQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLGNBQWMsRUFBRTtZQUNwRSxlQUFlLEVBQUU7Z0JBQ2YsTUFBTSxFQUFFLE9BQU8sQ0FBQyxjQUFjLENBQUMsdUJBQXVCLENBQUMsTUFBTSxFQUFFO29CQUM3RCxtQkFBbUIsRUFBRSxtQkFBbUI7aUJBQ3pDLENBQUM7Z0JBQ0YsbUJBQW1CLEVBQUUsVUFBVSxDQUFDLG1CQUFtQixDQUFDLGNBQWM7Z0JBQ2xFLG9CQUFvQixFQUFFLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxpQkFBaUI7Z0JBQ3ZFLFdBQVcsRUFBRSxVQUFVLENBQUMsV0FBVyxDQUFDLGlCQUFpQjtnQkFDckQscUJBQXFCLEVBQUUscUJBQXFCO2dCQUM1QyxRQUFRLEVBQUUsSUFBSTtnQkFDZCxvQkFBb0IsRUFBRSxLQUFLLENBQUMsb0JBQW9CO2FBQ2pEO1lBQ0QsV0FBVyxFQUFFLENBQUMsVUFBVSxDQUFDO1lBQ3pCLFVBQVUsRUFBRSxVQUFVLENBQUMsVUFBVSxDQUFDLGVBQWU7WUFDakQsV0FBVyxFQUFFLFdBQVc7WUFDeEIsaUJBQWlCLEVBQUUsWUFBWTtZQUMvQixzQkFBc0IsRUFBRSxVQUFVLENBQUMsc0JBQXNCLENBQUMsYUFBYTtZQUN2RSxjQUFjLEVBQUU7Z0JBQ2QsRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLGtCQUFrQixFQUFFLEdBQUcsRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLHNCQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUN2RyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsa0JBQWtCLEVBQUUsR0FBRyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQUUsc0JBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7YUFDeEc7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRTtZQUN2QyxVQUFVLEVBQUUsU0FBUztZQUNyQixNQUFNLEVBQUUsT0FBTyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsSUFBSSxPQUFPLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3ZGLElBQUksRUFBRSxVQUFVO1lBQ2hCLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDakMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUVuRSxJQUFJLDZCQUFXLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRTtZQUNuQyxPQUFPLEVBQUUsb0NBQWtCLENBQUMsZ0JBQWdCO1lBQzVDLFdBQVc7WUFDWCxPQUFPO1lBQ1AsT0FBTyxFQUFFLE9BQU87U0FDakIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLFdBQVcsQ0FBQyxFQUFFLFNBQVMsRUFBa0M7UUFDL0QsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLElBQUksQ0FBQyxtR0FBbUcsQ0FBQyxDQUFDO1FBQ3BILENBQUM7UUFFRCxNQUFNLGVBQWUsR0FBRyxJQUFBLDJCQUFtQixFQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXZELElBQUksU0FBUyxFQUFFLFNBQVMsRUFBRSxDQUFDO1lBQ3pCLE9BQU8sQ0FBQyxHQUFHLENBQUMsK0NBQStDLGVBQWUsRUFBRSxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUVELE9BQU8sZUFBZSxDQUFDO0lBQ3pCLENBQUM7Q0FDRjtBQXBIRCw4REFvSEM7QUFFTSxNQUFNLG1CQUFtQixHQUFHLENBQUMsWUFBdUIsa0JBQWtCLEVBQVUsRUFBRTtJQUN2RixNQUFNLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixFQUFFLEdBQUcsU0FBUyxDQUFDO0lBQzNHLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMzQyxlQUFlLElBQUksZ0JBQWdCLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDcEUsTUFBTSxJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2xELEtBQUssSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDaEQsT0FBTyxJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3BELFNBQVMsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUN4RCxJQUFJLElBQUksZ0JBQWdCLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzlDLFFBQVEsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUN0RCxnQkFBZ0IsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUM1RCxPQUFPLElBQUEscURBQTZCLEVBQUMsZ0JBQWdCLENBQUMsQ0FBQztBQUN6RCxDQUFDLENBQUM7QUFaVyxRQUFBLG1CQUFtQix1QkFZOUI7QUFFRixNQUFNLGtCQUFrQixHQUFjO0lBQ3BDLGVBQWUsRUFBRSxJQUFJO0lBQ3JCLE1BQU0sRUFBRSxJQUFJO0lBQ1osS0FBSyxFQUFFLElBQUk7SUFDWCxPQUFPLEVBQUUsSUFBSTtJQUNiLFNBQVMsRUFBRSxJQUFJO0lBQ2YsSUFBSSxFQUFFLEtBQUs7Q0FDWixDQUFDO0FBRUYsTUFBTSxZQUFZLEdBQUcsQ0FBQyxRQUFRLEVBQUUscUJBQXFCLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztBQUU1RSxNQUFNLGVBQWUsR0FBa0I7SUFDckMsVUFBVSxFQUFFLFlBQVk7SUFDeEIsVUFBVSxFQUFFLFlBQVk7SUFDeEIsT0FBTyxFQUFFLENBQUMsR0FBRyxZQUFZLEVBQUUsT0FBTyxDQUFDO0lBQ25DLE1BQU0sRUFBRSxDQUFDLEdBQUcsWUFBWSxFQUFFLE9BQU8sQ0FBQztJQUNsQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUM7SUFDckIsU0FBUyxFQUFFLFlBQVk7SUFDdkIsUUFBUSxFQUFFLENBQUMsR0FBRyxZQUFZLEVBQUUsaUJBQWlCLENBQUM7SUFDOUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDO0lBQ25CLFVBQVUsRUFBRSxZQUFZO0lBQ3hCLGNBQWMsRUFBRSxZQUFZO0lBQzVCLFFBQVEsRUFBRSxZQUFZO0NBQ3ZCLENBQUM7QUFFRixNQUFNLHlCQUF5QixHQUFrQjtJQUMvQyxNQUFNLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztJQUNwQyxTQUFTLEVBQUU7UUFDVCxnQ0FBZ0M7UUFDaEMsa0RBQWtEO1FBQ2xELHVEQUF1RDtRQUN2RCxzQ0FBc0M7UUFDdEMsdURBQXVEO0tBQ3hEO0lBQ0QsVUFBVSxFQUFFO1FBQ1Ysd0JBQXdCO1FBQ3hCLGdDQUFnQztRQUNoQyxnQ0FBZ0M7UUFDaEMsZ0NBQWdDO0tBQ2pDO0lBQ0QsUUFBUSxFQUFFLENBQUMsa0NBQWtDLENBQUM7Q0FDL0MsQ0FBQztBQUVGLE1BQU0sZ0JBQWdCLEdBQWtCO0lBQ3RDLFVBQVUsRUFBRSxDQUFDLHFCQUFxQixFQUFFLG1CQUFtQixDQUFDO0NBQ3pELENBQUM7QUFFRixNQUFNLGVBQWUsR0FBa0I7SUFDckMsVUFBVSxFQUFFLENBQUMsc0JBQXNCLENBQUM7Q0FDckMsQ0FBQztBQUVGLE1BQU0saUJBQWlCLEdBQWtCO0lBQ3ZDLFVBQVUsRUFBRTtRQUNWLHdCQUF3QjtRQUN4Qix1Q0FBdUM7UUFDdkMscUNBQXFDO0tBQ3RDO0NBQ0YsQ0FBQztBQUVGLE1BQU0sbUJBQW1CLEdBQWtCO0lBQ3pDLFVBQVUsRUFBRSxDQUFDLDhCQUE4QixDQUFDO0NBQzdDLENBQUM7QUFFRixNQUFNLGNBQWMsR0FBa0I7SUFDcEMsVUFBVSxFQUFFLENBQUMsbUJBQW1CLENBQUM7SUFDakMsVUFBVSxFQUFFLENBQUMsdUJBQXVCLEVBQUUsd0JBQXdCLENBQUM7SUFDL0QsT0FBTyxFQUFFLENBQUMseUJBQXlCLENBQUM7SUFDcEMsTUFBTSxFQUFFLENBQUMsaUJBQWlCLENBQUM7SUFDM0IsU0FBUyxFQUFFLENBQUMsOENBQThDLENBQUM7SUFDM0QsUUFBUSxFQUFFLENBQUMsWUFBWSxDQUFDO0NBQ3pCLENBQUM7QUFFRixNQUFNLGtCQUFrQixHQUFrQjtJQUN4QyxVQUFVLEVBQUU7UUFDViw2QkFBNkI7UUFDN0IscURBQXFEO1FBQ3JELHFDQUFxQztRQUNyQyxxQ0FBcUM7UUFDckMsK0NBQStDO0tBQ2hEO0lBQ0QsT0FBTyxFQUFFLENBQUMsK0JBQStCLENBQUM7SUFDMUMsTUFBTSxFQUFFLENBQUMsNEJBQTRCLEVBQUUsbUNBQW1DLEVBQUUsbUNBQW1DLENBQUM7SUFDaEgsU0FBUyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsNEJBQTRCLEVBQUUsNEJBQTRCLENBQUM7SUFDMUYsUUFBUSxFQUFFLENBQUMsNEJBQTRCLENBQUM7Q0FDekMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHBhdGggZnJvbSAnbm9kZTpwYXRoJztcbmltcG9ydCB7IER1cmF0aW9uLCBSZW1vdmFsUG9saWN5IH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0ICogYXMgYWNtIGZyb20gJ2F3cy1jZGstbGliL2F3cy1jZXJ0aWZpY2F0ZW1hbmFnZXInO1xuaW1wb3J0ICogYXMgY2xvdWRmcm9udCBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY2xvdWRmcm9udCc7XG5pbXBvcnQgKiBhcyBvcmlnaW5zIGZyb20gJ2F3cy1jZGstbGliL2F3cy1jbG91ZGZyb250LW9yaWdpbnMnO1xuaW1wb3J0ICogYXMgcm91dGU1MyBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtcm91dGU1Myc7XG5pbXBvcnQgKiBhcyB0YXJnZXRzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1yb3V0ZTUzLXRhcmdldHMnO1xuaW1wb3J0ICogYXMgczMgZnJvbSAnYXdzLWNkay1saWIvYXdzLXMzJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQ2xhaWRvbWV0ZXIsIENsYWlkb21ldGVyUHJvZHVjdCB9IGZyb20gJy4uLy4uLy4uL3Jpby1jbGFpZG9tZXRlcic7XG5pbXBvcnQgeyBSaW9MYW5kaW5nWm9uZSB9IGZyb20gJy4uLy4uLy4uL3Jpby1sYW5kaW5nLXpvbmUnO1xuaW1wb3J0IHsgdHlwZSBDc3BEaXJlY3RpdmVzLCBjcmVhdGVDc3BGcm9tRGlyZWN0aXZlT2JqZWN0cyB9IGZyb20gJy4vY29udGVudFNlY3VyaXR5UG9saWN5JztcblxuLyoqIFByb3BlcnRpZXMgZm9yIGRlZmluaW5nIGEgUmlvQ2xvdWRmcm9udERpc3RyaWJ1dGlvbi4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmlvQ2xvdWRmcm9udERpc3RyaWJ1dGlvblByb3BzIHtcbiAgLyoqIFRoZSByZWZlcmVuY2UgdG8gdGhlIFMzIGJ1Y2tldCBjb250YWluaW5nIHRoZSBmaWxlcyB0byBzZXJ2ZS4gKi9cbiAgcmVhZG9ubHkgY29udGVudEJ1Y2tldE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHN1YmRvbWFpbiB3aGVyZSB0aGUgY29udGVudCBzaG91bGQgYmUgc2VydmVkLlxuICAgKlxuICAgKiBJZiBub3QgZ2l2ZW4sIGFuIGVtcHR5IHN0cmluZywgaS5lLiBubyBzdWJEb21haW4gd2lsbCBiZSB1c2VkLiBJbnN0ZWFkLCB0aGUgbmFtZSBvZiB0aGUgaG9zdGVkIHpvbmUgd2lsbCBiZSB1c2VkXG4gICAqIGRpcmVjdGx5LlxuICAgKi9cbiAgcmVhZG9ubHkgc3ViRG9tYWluPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgaG9zdGVkIHpvbmUgb2YgdGhlIGRvbWFpbiB1bmRlciB3aGljaCB0aGUgY29udGVudCB3aWxsIGJlIHNlcnZlZC5cbiAgICpcbiAgICogSWYgbm90IGdpdmVuLCB0aGUgZGVmYXVsdCBob3N0ZWQgWm9uZSBwcm92aWRlZCBieSBSSU8gc2V0dXAgd2lsbCBiZSB1c2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgaG9zdGVkWm9uZT86IHJvdXRlNTMuSUhvc3RlZFpvbmU7XG5cbiAgLyoqXG4gICAqIEFsbG93cyBkZWNsYXJhdGl2ZWx5IGRlZmluaW5nIHlvdXIgZGVzaXJlZCBDU1AuXG4gICAqXG4gICAqIFRoZSBSSU8gZGVmYXVsdHMgYXJlIGFsd2F5cyBpbmNsdWRlZCwgYW5kIHlvdSBjYW4gY2hvb3NlIHdoaWNoIHNlcnZpY2VzIHlvdSB3YW50IHRvIGluY2x1ZGUgKGUuZy4gQ29uZmlnQ2F0KSBvclxuICAgKiBub3QuIFlvdSBjYW4gYWxzbyBwcm92aWRlIGN1c3RvbSBkaXJlY3RpdmVzIC8gdmFsdWVzIHVzaW5nIHRoZSBcImN1c3RvbVwiIGtleS5cbiAgICovXG4gIHJlYWRvbmx5IGNzcENvbmZpZz86IENzcENvbmZpZztcblxuICAvKipcbiAgICogVGhlIGxpc3Qgb2YgZnVuY3Rpb25zIHRvIGJlIGFzc29jaWF0ZWQgd2l0aCB0aGUgZGVmYXVsdCBiZWhhdmlvdXIgb2YgdGhlIGRpc3RyaWJ1dGlvbi5cbiAgICpcbiAgICogSWYgbm90IGdpdmVuLCBubyBmdW5jdGlvbnMgd2lsbCBiZSBhc3NpZ25lZC5cbiAgICovXG4gIHJlYWRvbmx5IGZ1bmN0aW9uQXNzb2NpYXRpb25zPzogY2xvdWRmcm9udC5GdW5jdGlvbkFzc29jaWF0aW9uW107XG5cbiAgLyoqXG4gICAqIFRoZSBmcmFtZSBvcHRpb25zIHRvIGJlIHVzZWQgaW4gdGhlIHJlc3BvbnNlIGhlYWRlcnMgcG9saWN5LlxuICAgKlxuICAgKiBJZiBub3QgZ2l2ZW4sIHRoZSBkZWZhdWx0IHZhbHVlIHdpbGwgYmUgYERFTllgICYgb3ZlcnJpZGU6IHRydWUuXG4gICAqL1xuICByZWFkb25seSBmcmFtZU9wdGlvbnM/OiBjbG91ZGZyb250LlJlc3BvbnNlSGVhZGVyc0ZyYW1lT3B0aW9ucztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDc3BDb25maWcge1xuICAvKiogSW5jbHVkZSBHb29nbGUgQW5hbHl0aWNzIC8gR29vZ2xlIFRhZyBtYW5hZ2VyLiAqL1xuICByZWFkb25seSBnb29nbGVBbmFseXRpY3M/OiBib29sZWFuO1xuXG4gIC8qKiBJbmNsdWRlIFNlbnRyeS4gKi9cbiAgcmVhZG9ubHkgc2VudHJ5PzogYm9vbGVhbjtcblxuICAvKiogSW5jbHVkZSBTcGxpdC5pby4gKi9cbiAgcmVhZG9ubHkgc3BsaXQ/OiBib29sZWFuO1xuXG4gIC8qKiBJbmNsdWRlIERhdGFkb2cuICovXG4gIHJlYWRvbmx5IGRhdGFkb2c/OiBib29sZWFuO1xuXG4gIC8qKiBJbmNsdWRlIENvbmZpZ0NhdC4gKi9cbiAgcmVhZG9ubHkgY29uZmlnQ2F0PzogYm9vbGVhbjtcblxuICAvKiogSW5jbHVkZSBIZXJlIE1hcHMuICovXG4gIHJlYWRvbmx5IGhlcmU/OiBib29sZWFuO1xuXG4gIC8qKiBJbmNsdWRlIEludGVyY29tLiAqL1xuICByZWFkb25seSBpbnRlcmNvbT86IGJvb2xlYW47XG5cbiAgLyoqIFByaW50cyB0aGUgZ2VuZXJhdGVkIENTUCB0byB0aGUgY29uc29sZS4gKi9cbiAgcmVhZG9ubHkgbG9nT3V0cHV0PzogYm9vbGVhbjtcblxuICAvKiogWW91IGNhbiBkZWZpbmUgY3VzdG9tIHZhbHVlcyBmb3IgYW55IENTUCBkaXJlY3RpdmUgd2l0aCB0aGlzLiAqL1xuICByZWFkb25seSBjdXN0b21EaXJlY3RpdmVzPzogQ3NwRGlyZWN0aXZlcztcbn1cblxuLyoqXG4gKiBBIENvbnN0cnVjdCB3aGljaCBjcmVhdGVzIGEgZGVmYXVsdCBjbG91ZGZyb250IGRpc3RyaWJ1dGlvbiB1c2luZyBhIHMzIGJ1Y2tldCBhcyBvcmlnaW4uXG4gKlxuICogSW50ZW5kZWQgZm9yIGRlbGl2ZXJ5IG9mIGh0bWwgZG9jdW1lbnRzLiBJdCBzZXRzIHNvbWUgZGVmYXVsdHMgYSByZWNvbW1lbmRlZCBieSBBV1MgYW5kIHByb3ZpZGVzIENTUCBzZXR0aW5ncy5cbiAqL1xuZXhwb3J0IGNsYXNzIFJpb0Nsb3VkZnJvbnREaXN0cmlidXRpb24gZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICByZWFkb25seSBkaXN0cmlidXRpb246IGNsb3VkZnJvbnQuSURpc3RyaWJ1dGlvbjtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogUmlvQ2xvdWRmcm9udERpc3RyaWJ1dGlvblByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IGhvc3RlZFpvbmUgPSBwcm9wcy5ob3N0ZWRab25lID8/IFJpb0xhbmRpbmdab25lLmdldERlZmF1bHRIb3N0ZWRab25lKHRoaXMpO1xuICAgIGNvbnN0IHN1YkRvbWFpbiA9IHByb3BzLnN1YkRvbWFpbiA/PyAnJztcbiAgICBjb25zdCBkb21haW5OYW1lID0gcHJvcHMuc3ViRG9tYWluID09PSB1bmRlZmluZWQgPyBob3N0ZWRab25lLnpvbmVOYW1lIDogYCR7c3ViRG9tYWlufS4ke2hvc3RlZFpvbmUuem9uZU5hbWV9YDtcbiAgICBjb25zdCBmcmFtZU9wdGlvbnMgPSBwcm9wcy5mcmFtZU9wdGlvbnMgPz8ge1xuICAgICAgZnJhbWVPcHRpb246IGNsb3VkZnJvbnQuSGVhZGVyc0ZyYW1lT3B0aW9uLkRFTlksXG4gICAgICBvdmVycmlkZTogdHJ1ZSxcbiAgICB9O1xuXG4gICAgY29uc3QgY29udGVudFNlY3VyaXR5UG9saWN5ID0gdGhpcy5nZW5lcmF0ZUNzcChwcm9wcyk7XG5cbiAgICBjb25zdCBjZXJ0aWZpY2F0ZSA9IG5ldyBhY20uRG5zVmFsaWRhdGVkQ2VydGlmaWNhdGUodGhpcywgJ0Nsb3VkZnJvbnREaXN0cmlidXRpb25DZXJ0aWZpY2F0ZScsIHtcbiAgICAgIGRvbWFpbk5hbWU6IGRvbWFpbk5hbWUsXG4gICAgICBob3N0ZWRab25lOiBob3N0ZWRab25lLFxuICAgICAgcmVnaW9uOiAndXMtZWFzdC0xJyxcbiAgICB9KTtcblxuICAgIGNvbnN0IGJ1Y2tldCA9IG5ldyBzMy5CdWNrZXQodGhpcywgJ0Zyb250RW5kQnVja2V0Jywge1xuICAgICAgYnVja2V0TmFtZTogcHJvcHMuY29udGVudEJ1Y2tldE5hbWUsXG4gICAgICBlbmNyeXB0aW9uOiBzMy5CdWNrZXRFbmNyeXB0aW9uLlMzX01BTkFHRUQsXG4gICAgICB2ZXJzaW9uZWQ6IHRydWUsXG4gICAgICByZW1vdmFsUG9saWN5OiBSZW1vdmFsUG9saWN5LkRFU1RST1ksXG4gICAgICBhdXRvRGVsZXRlT2JqZWN0czogdHJ1ZSxcbiAgICAgIGxpZmVjeWNsZVJ1bGVzOiBbXG4gICAgICAgIHsgaWQ6ICdFeHBpcmVzT2JqZWN0cycsIGV4cGlyYXRpb246IER1cmF0aW9uLmRheXMoOTApLCBub25jdXJyZW50VmVyc2lvbkV4cGlyYXRpb246IER1cmF0aW9uLmRheXMoMzApIH0sXG4gICAgICBdLFxuICAgICAgZW5mb3JjZVNTTDogdHJ1ZSxcbiAgICAgIGNvcnM6IFt7IGFsbG93ZWRNZXRob2RzOiBbczMuSHR0cE1ldGhvZHMuR0VUXSwgYWxsb3dlZE9yaWdpbnM6IFsnKiddLCBhbGxvd2VkSGVhZGVyczogWycqJ10gfV0sXG4gICAgICBibG9ja1B1YmxpY0FjY2VzczogczMuQmxvY2tQdWJsaWNBY2Nlc3MuQkxPQ0tfQUxMLFxuICAgIH0pO1xuXG4gICAgY29uc3QgcmVzcG9uc2VIZWFkZXJzUG9saWN5ID0gbmV3IGNsb3VkZnJvbnQuUmVzcG9uc2VIZWFkZXJzUG9saWN5KHRoaXMsICdSZXNwb25zZUhlYWRlcnNQb2xpY3knLCB7XG4gICAgICBjb21tZW50OiAnUG9saWN5IGZvciBDbG91ZEZyb250IHJlc3BvbnNlcycsXG4gICAgICBjb3JzQmVoYXZpb3I6IHtcbiAgICAgICAgYWNjZXNzQ29udHJvbEFsbG93Q3JlZGVudGlhbHM6IGZhbHNlLFxuICAgICAgICBhY2Nlc3NDb250cm9sQWxsb3dIZWFkZXJzOiBbJyonXSxcbiAgICAgICAgYWNjZXNzQ29udHJvbEFsbG93TWV0aG9kczogWydHRVQnXSxcbiAgICAgICAgYWNjZXNzQ29udHJvbEFsbG93T3JpZ2luczogW2hvc3RlZFpvbmUuem9uZU5hbWVdLFxuICAgICAgICBhY2Nlc3NDb250cm9sTWF4QWdlOiBEdXJhdGlvbi5zZWNvbmRzKDYwMCksXG4gICAgICAgIG9yaWdpbk92ZXJyaWRlOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHNlY3VyaXR5SGVhZGVyc0JlaGF2aW9yOiB7XG4gICAgICAgIGNvbnRlbnRTZWN1cml0eVBvbGljeTogeyBjb250ZW50U2VjdXJpdHlQb2xpY3k6IGNvbnRlbnRTZWN1cml0eVBvbGljeSwgb3ZlcnJpZGU6IHRydWUgfSxcbiAgICAgICAgY29udGVudFR5cGVPcHRpb25zOiB7IG92ZXJyaWRlOiB0cnVlIH0sXG4gICAgICAgIGZyYW1lT3B0aW9uczogZnJhbWVPcHRpb25zLFxuICAgICAgICByZWZlcnJlclBvbGljeToge1xuICAgICAgICAgIHJlZmVycmVyUG9saWN5OiBjbG91ZGZyb250LkhlYWRlcnNSZWZlcnJlclBvbGljeS5TVFJJQ1RfT1JJR0lOX1dIRU5fQ1JPU1NfT1JJR0lOLFxuICAgICAgICAgIG92ZXJyaWRlOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBzdHJpY3RUcmFuc3BvcnRTZWN1cml0eTogeyBhY2Nlc3NDb250cm9sTWF4QWdlOiBEdXJhdGlvbi5kYXlzKDM2NSksIGluY2x1ZGVTdWJkb21haW5zOiB0cnVlLCBvdmVycmlkZTogdHJ1ZSB9LFxuICAgICAgICB4c3NQcm90ZWN0aW9uOiB7IHByb3RlY3Rpb246IHRydWUsIG1vZGVCbG9jazogdHJ1ZSwgb3ZlcnJpZGU6IHRydWUgfSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBjb25zdCBvcmlnaW5BY2Nlc3NDb250cm9sID0gbmV3IGNsb3VkZnJvbnQuUzNPcmlnaW5BY2Nlc3NDb250cm9sKHRoaXMsICdPcmlnaW5BY2Nlc3NDb250cm9sJywge1xuICAgICAgZGVzY3JpcHRpb246IGBBY2Nlc3MgY29udHJvbCBmb3IgKi4ke2RvbWFpbk5hbWV9YCxcbiAgICB9KTtcblxuICAgIHRoaXMuZGlzdHJpYnV0aW9uID0gbmV3IGNsb3VkZnJvbnQuRGlzdHJpYnV0aW9uKHRoaXMsICdEaXN0cmlidXRpb24nLCB7XG4gICAgICBkZWZhdWx0QmVoYXZpb3I6IHtcbiAgICAgICAgb3JpZ2luOiBvcmlnaW5zLlMzQnVja2V0T3JpZ2luLndpdGhPcmlnaW5BY2Nlc3NDb250cm9sKGJ1Y2tldCwge1xuICAgICAgICAgIG9yaWdpbkFjY2Vzc0NvbnRyb2w6IG9yaWdpbkFjY2Vzc0NvbnRyb2wsXG4gICAgICAgIH0pLFxuICAgICAgICBvcmlnaW5SZXF1ZXN0UG9saWN5OiBjbG91ZGZyb250Lk9yaWdpblJlcXVlc3RQb2xpY3kuQ09SU19TM19PUklHSU4sXG4gICAgICAgIHZpZXdlclByb3RvY29sUG9saWN5OiBjbG91ZGZyb250LlZpZXdlclByb3RvY29sUG9saWN5LlJFRElSRUNUX1RPX0hUVFBTLFxuICAgICAgICBjYWNoZVBvbGljeTogY2xvdWRmcm9udC5DYWNoZVBvbGljeS5DQUNISU5HX09QVElNSVpFRCxcbiAgICAgICAgcmVzcG9uc2VIZWFkZXJzUG9saWN5OiByZXNwb25zZUhlYWRlcnNQb2xpY3ksXG4gICAgICAgIGNvbXByZXNzOiB0cnVlLFxuICAgICAgICBmdW5jdGlvbkFzc29jaWF0aW9uczogcHJvcHMuZnVuY3Rpb25Bc3NvY2lhdGlvbnMsXG4gICAgICB9LFxuICAgICAgZG9tYWluTmFtZXM6IFtkb21haW5OYW1lXSxcbiAgICAgIHByaWNlQ2xhc3M6IGNsb3VkZnJvbnQuUHJpY2VDbGFzcy5QUklDRV9DTEFTU18xMDAsXG4gICAgICBjZXJ0aWZpY2F0ZTogY2VydGlmaWNhdGUsXG4gICAgICBkZWZhdWx0Um9vdE9iamVjdDogJ2luZGV4Lmh0bWwnLFxuICAgICAgbWluaW11bVByb3RvY29sVmVyc2lvbjogY2xvdWRmcm9udC5TZWN1cml0eVBvbGljeVByb3RvY29sLlRMU19WMV8yXzIwMTgsXG4gICAgICBlcnJvclJlc3BvbnNlczogW1xuICAgICAgICB7IGh0dHBTdGF0dXM6IDQwNCwgcmVzcG9uc2VIdHRwU3RhdHVzOiAyMDAsIHJlc3BvbnNlUGFnZVBhdGg6ICcvaW5kZXguaHRtbCcsIHR0bDogRHVyYXRpb24ubWludXRlcyg1KSB9LFxuICAgICAgICB7IGh0dHBTdGF0dXM6IDQwMywgcmVzcG9uc2VIdHRwU3RhdHVzOiAyMDAsIHJlc3BvbnNlUGFnZVBhdGg6ICcvaW5kZXguaHRtbCcsIHR0bDogRHVyYXRpb24ubWludXRlcyg1KSB9LFxuICAgICAgXSxcbiAgICB9KTtcblxuICAgIG5ldyByb3V0ZTUzLlJlY29yZFNldCh0aGlzLCAnUmVjb3JkU2V0Jywge1xuICAgICAgcmVjb3JkTmFtZTogc3ViRG9tYWluLFxuICAgICAgdGFyZ2V0OiByb3V0ZTUzLlJlY29yZFRhcmdldC5mcm9tQWxpYXMobmV3IHRhcmdldHMuQ2xvdWRGcm9udFRhcmdldCh0aGlzLmRpc3RyaWJ1dGlvbikpLFxuICAgICAgem9uZTogaG9zdGVkWm9uZSxcbiAgICAgIHJlY29yZFR5cGU6IHJvdXRlNTMuUmVjb3JkVHlwZS5BLFxuICAgIH0pO1xuXG4gICAgY29uc3QgW2ZlYXR1cmUsIHBhY2thZ2VOYW1lXSA9IF9fZGlybmFtZS5zcGxpdChwYXRoLnNlcCkucmV2ZXJzZSgpO1xuXG4gICAgbmV3IENsYWlkb21ldGVyKHRoaXMsICdDbGFpZG9tZXRlcicsIHtcbiAgICAgIHByb2R1Y3Q6IENsYWlkb21ldGVyUHJvZHVjdC5DREtfQ09OVFJJQlVUSU9OLFxuICAgICAgcGFja2FnZU5hbWUsXG4gICAgICBmZWF0dXJlLFxuICAgICAgdmVyc2lvbjogJzAuMC41JyxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2VuZXJhdGVDc3AoeyBjc3BDb25maWcgfTogUmlvQ2xvdWRmcm9udERpc3RyaWJ1dGlvblByb3BzKTogc3RyaW5nIHtcbiAgICBpZiAoIWNzcENvbmZpZykge1xuICAgICAgY29uc29sZS5pbmZvKCdbUmlvQ2xvdWRGcm9udERpc3RyaWJ1dGlvbl0gWW91IGRpZCBub3QgcHJvdmlkZSBhIFwiY3NwQ29uZmlnXCIuIFRoZSBkZWZhdWx0IENTUCB3aWxsIGJlIGdlbmVyYXRlZC4nKTtcbiAgICB9XG5cbiAgICBjb25zdCBnZW5lcmF0ZWRDb25maWcgPSBjcmVhdGVDc3BGcm9tQ29uZmlnKGNzcENvbmZpZyk7XG5cbiAgICBpZiAoY3NwQ29uZmlnPy5sb2dPdXRwdXQpIHtcbiAgICAgIGNvbnNvbGUubG9nKGBbUmlvQ2xvdWRGcm9udERpc3RyaWJ1dGlvbl0gR2VuZXJhdGVkIENTUDpcXG4ke2dlbmVyYXRlZENvbmZpZ31gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZ2VuZXJhdGVkQ29uZmlnO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVDc3BGcm9tQ29uZmlnID0gKGNzcENvbmZpZzogQ3NwQ29uZmlnID0gREVGQVVMVF9DU1BfQ09ORklHKTogc3RyaW5nID0+IHtcbiAgY29uc3QgeyBnb29nbGVBbmFseXRpY3MsIHNlbnRyeSwgc3BsaXQsIGRhdGFkb2csIGNvbmZpZ0NhdCwgaGVyZSwgaW50ZXJjb20sIGN1c3RvbURpcmVjdGl2ZXMgfSA9IGNzcENvbmZpZztcbiAgY29uc3QgZGlyZWN0aXZlT2JqZWN0cyA9IFtvdmVyYWxsRGVmYXVsdHNdO1xuICBnb29nbGVBbmFseXRpY3MgJiYgZGlyZWN0aXZlT2JqZWN0cy5wdXNoKGdvb2dsZUFuYWx5dGljc0RpcmVjdGl2ZXMpO1xuICBzZW50cnkgJiYgZGlyZWN0aXZlT2JqZWN0cy5wdXNoKHNlbnRyeURpcmVjdGl2ZXMpO1xuICBzcGxpdCAmJiBkaXJlY3RpdmVPYmplY3RzLnB1c2goc3BsaXREaXJlY3RpdmVzKTtcbiAgZGF0YWRvZyAmJiBkaXJlY3RpdmVPYmplY3RzLnB1c2goZGF0YWRvZ0RpcmVjdGl2ZXMpO1xuICBjb25maWdDYXQgJiYgZGlyZWN0aXZlT2JqZWN0cy5wdXNoKGNvbmZpZ0NhdERpcmVjdGl2ZXMpO1xuICBoZXJlICYmIGRpcmVjdGl2ZU9iamVjdHMucHVzaChoZXJlRGlyZWN0aXZlcyk7XG4gIGludGVyY29tICYmIGRpcmVjdGl2ZU9iamVjdHMucHVzaChpbnRlcmNvbURpcmVjdGl2ZXMpO1xuICBjdXN0b21EaXJlY3RpdmVzICYmIGRpcmVjdGl2ZU9iamVjdHMucHVzaChjdXN0b21EaXJlY3RpdmVzKTtcbiAgcmV0dXJuIGNyZWF0ZUNzcEZyb21EaXJlY3RpdmVPYmplY3RzKGRpcmVjdGl2ZU9iamVjdHMpO1xufTtcblxuY29uc3QgREVGQVVMVF9DU1BfQ09ORklHOiBDc3BDb25maWcgPSB7XG4gIGdvb2dsZUFuYWx5dGljczogdHJ1ZSxcbiAgc2VudHJ5OiB0cnVlLFxuICBzcGxpdDogdHJ1ZSxcbiAgZGF0YWRvZzogdHJ1ZSxcbiAgY29uZmlnQ2F0OiB0cnVlLFxuICBoZXJlOiBmYWxzZSxcbn07XG5cbmNvbnN0IFJJT19BTkRfU0VMRiA9IFtcIidzZWxmJ1wiLCAnaHR0cHM6Ly8qLnJpby5jbG91ZCcsICdodHRwczovL3Jpby5jbG91ZCddO1xuXG5jb25zdCBvdmVyYWxsRGVmYXVsdHM6IENzcERpcmVjdGl2ZXMgPSB7XG4gIGRlZmF1bHRTcmM6IFJJT19BTkRfU0VMRixcbiAgY29ubmVjdFNyYzogUklPX0FORF9TRUxGLFxuICBmb250U3JjOiBbLi4uUklPX0FORF9TRUxGLCAnZGF0YTonXSxcbiAgaW1nU3JjOiBbLi4uUklPX0FORF9TRUxGLCAnZGF0YTonXSxcbiAgb2JqZWN0U3JjOiBbXCInbm9uZSdcIl0sXG4gIHNjcmlwdFNyYzogUklPX0FORF9TRUxGLFxuICBzdHlsZVNyYzogWy4uLlJJT19BTkRfU0VMRiwgXCIndW5zYWZlLWlubGluZSdcIl0sXG4gIGJhc2VVcmk6IFtcIidzZWxmJ1wiXSxcbiAgZm9ybUFjdGlvbjogUklPX0FORF9TRUxGLFxuICBmcmFtZUFuY2VzdG9yczogUklPX0FORF9TRUxGLFxuICBmcmFtZVNyYzogUklPX0FORF9TRUxGLFxufTtcblxuY29uc3QgZ29vZ2xlQW5hbHl0aWNzRGlyZWN0aXZlczogQ3NwRGlyZWN0aXZlcyA9IHtcbiAgaW1nU3JjOiBbJ3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbSddLFxuICBzY3JpcHRTcmM6IFtcbiAgICAnaHR0cHM6Ly8qLmdvb2dsZXRhZ21hbmFnZXIuY29tJyxcbiAgICAvLyBnb29nbGUgYW5heWx5dGljcyBzY3JpcHQgZGVjbGFyZWQgaW4gaW5kZXguaHRtbFxuICAgIFwiJ3NoYTI1Ni1IRFdBZ2ZUZU1BZ3VUOHdGdzcrOTJZN2k0RW8vNlJVUVF1QTNUVzlKeGJBPSdcIixcbiAgICAvLyBzY3JpcHQgbG9hZGVkIGJ5IGdvb2dsZSB0YWcgbWFuYWdlclxuICAgIFwiJ3NoYTI1Ni1wZG1xcSsxUTh5d0pHTnYyaGdDZVJXdFJ6MVFmN1A3OWt6eHJMZUhibVdVPSdcIixcbiAgXSxcbiAgY29ubmVjdFNyYzogW1xuICAgICdodHRwczovL3d3dy5nb29nbGUuY29tJyxcbiAgICAnaHR0cHM6Ly8qLmdvb2dsZS1hbmFseXRpY3MuY29tJyxcbiAgICAnaHR0cHM6Ly8qLmFuYWx5dGljcy5nb29nbGUuY29tJyxcbiAgICAnaHR0cHM6Ly8qLmdvb2dsZXRhZ21hbmFnZXIuY29tJyxcbiAgXSxcbiAgZnJhbWVTcmM6IFsnaHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20nXSxcbn07XG5cbmNvbnN0IHNlbnRyeURpcmVjdGl2ZXM6IENzcERpcmVjdGl2ZXMgPSB7XG4gIGNvbm5lY3RTcmM6IFsnaHR0cHM6Ly8qLnNlbnRyeS5pbycsICdodHRwczovL3NlbnRyeS5pbyddLFxufTtcblxuY29uc3Qgc3BsaXREaXJlY3RpdmVzOiBDc3BEaXJlY3RpdmVzID0ge1xuICBjb25uZWN0U3JjOiBbJ2h0dHBzOi8vc2RrLnNwbGl0LmlvJ10sXG59O1xuXG5jb25zdCBkYXRhZG9nRGlyZWN0aXZlczogQ3NwRGlyZWN0aXZlcyA9IHtcbiAgY29ubmVjdFNyYzogW1xuICAgICdodHRwczovLyouZGF0YWRvZ2hxLmV1JyxcbiAgICAnaHR0cHM6Ly8qLmJyb3dzZXItaW50YWtlLWRhdGFkb2docS5ldScsXG4gICAgJ2h0dHBzOi8vYnJvd3Nlci1pbnRha2UtZGF0YWRvZ2hxLmV1JyxcbiAgXSxcbn07XG5cbmNvbnN0IGNvbmZpZ0NhdERpcmVjdGl2ZXM6IENzcERpcmVjdGl2ZXMgPSB7XG4gIGNvbm5lY3RTcmM6IFsnaHR0cHM6Ly9jZG4tZXUuY29uZmlnY2F0LmNvbSddLFxufTtcblxuY29uc3QgaGVyZURpcmVjdGl2ZXM6IENzcERpcmVjdGl2ZXMgPSB7XG4gIGRlZmF1bHRTcmM6IFsnKi5qcy5hcGkuaGVyZS5jb20nXSxcbiAgY29ubmVjdFNyYzogWydodHRwczovLyouaGVyZWFwaS5jb20nLCAnaHR0cHM6Ly8qLmFwaS5oZXJlLmNvbSddLFxuICBmb250U3JjOiBbJ2h0dHBzOi8vanMuYXBpLmhlcmUuY29tJ10sXG4gIGltZ1NyYzogWydqcy5hcGkuaGVyZS5jb20nXSxcbiAgc2NyaXB0U3JjOiBbJ2h0dHBzOi8vKi5oZXJlYXBpLmNvbSBodHRwczovLyouYXBpLmhlcmUuY29tJ10sXG4gIHN0eWxlU3JjOiBbJyouaGVyZS5jb20nXSxcbn07XG5cbmNvbnN0IGludGVyY29tRGlyZWN0aXZlczogQ3NwRGlyZWN0aXZlcyA9IHtcbiAgY29ubmVjdFNyYzogW1xuICAgICdodHRwczovL2FwaS1pYW0uaW50ZXJjb20uaW8nLFxuICAgICdodHRwczovL2ludGVybmV0LXVwLXJlYWx0aW1lLmludGVyY29tLW1lc3Nlbmdlci5jb20nLFxuICAgICd3c3M6Ly9uZXh1cy13ZWJzb2NrZXQtYS5pbnRlcmNvbS5pbycsXG4gICAgJ3dzczovL25leHVzLXdlYnNvY2tldC1iLmludGVyY29tLmlvJyxcbiAgICAnd3NzOi8vcHJpbWFyeS1yZWFsdGltZS5pbnRlcmNvbS1tZXNzZW5nZXIuY29tJyxcbiAgXSxcbiAgZm9udFNyYzogWydodHRwczovL2ZvbnRzLmludGVyY29tY2RuLmNvbSddLFxuICBpbWdTcmM6IFsnaHR0cHM6Ly9qcy5pbnRlcmNvbWNkbi5jb20nLCAnaHR0cHM6Ly9zdGF0aWMuaW50ZXJjb21hc3NldHMuY29tJywgJ2h0dHBzOi8vZG93bmxvYWRzLmludGVyY29tY2RuLmNvbSddLFxuICBzY3JpcHRTcmM6IFtcIid1bnNhZmUtaW5saW5lJ1wiLCAnaHR0cHM6Ly93aWRnZXQuaW50ZXJjb20uaW8nLCAnaHR0cHM6Ly9qcy5pbnRlcmNvbWNkbi5jb20nXSxcbiAgbWVkaWFTcmM6IFsnaHR0cHM6Ly9qcy5pbnRlcmNvbWNkbi5jb20nXSxcbn07XG4iXX0=
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Environment, Stack } from 'aws-cdk-lib';
|
|
1
|
+
import type { Environment, Stack } from 'aws-cdk-lib';
|
|
2
2
|
import { InstanceType } from 'aws-cdk-lib/aws-ec2';
|
|
3
|
-
import { IRole } from 'aws-cdk-lib/aws-iam';
|
|
4
|
-
import { IBucket } from 'aws-cdk-lib/aws-s3';
|
|
5
|
-
import { IStringParameter } from 'aws-cdk-lib/aws-ssm';
|
|
3
|
+
import type { IRole } from 'aws-cdk-lib/aws-iam';
|
|
4
|
+
import type { IBucket } from 'aws-cdk-lib/aws-s3';
|
|
5
|
+
import { type IStringParameter } from 'aws-cdk-lib/aws-ssm';
|
|
6
6
|
import { Construct } from 'constructs';
|
|
7
7
|
/**
|
|
8
8
|
* The GitLabRunnerProps require the VPC ID, a defined environment of account and region, optional
|
|
@@ -146,4 +146,4 @@ class GitlabRunner extends constructs_1.Construct {
|
|
|
146
146
|
}
|
|
147
147
|
}
|
|
148
148
|
exports.GitlabRunner = GitlabRunner;
|
|
149
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b3NjYWxpbmctcnVubmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbnRyaWJ1dGlvbnMvc21hcnQtcm91dGUvZ2l0bGFiLXJ1bm5lci9hdXRvc2NhbGluZy1ydW5uZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkRBQTZEO0FBQzdELDRGQUlrRDtBQUVsRCxpREFBZ0Y7QUFHaEYsaURBQXdFO0FBQ3hFLDJDQUF1QztBQUN2QyxnRUFBMkQ7QUEyQzNEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0RHO0FBQ0gsTUFBYSxZQUFhLFNBQVEsc0JBQVM7SUFPekMsWUFBWSxLQUFZLEVBQUUsRUFBVSxFQUFFLEtBQXdCO1FBQzVELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFQWCxzQkFBaUIsR0FBK0I7WUFDdEQ7Z0JBQ0UsT0FBTyxFQUFFLENBQUMsd0JBQXdCLENBQUM7Z0JBQ25DLFFBQVEsRUFBRSxlQUFlO2FBQzFCO1NBQ0YsQ0FBQztRQUlBLE1BQU0sR0FBRyxHQUFHLGlDQUFjLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWhELE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxrQkFBa0I7WUFDM0MsQ0FBQyxDQUFDLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQztZQUN0RSxDQUFDLENBQUMsSUFBSSxDQUFDLDRCQUE0QixDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUVqRCxNQUFNLGVBQWUsR0FBRyxLQUFLLENBQUMsbUJBQW1CLElBQUksc0JBQVksQ0FBQyxFQUFFLENBQUMsdUJBQWEsQ0FBQyxFQUFFLEVBQUUsc0JBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUUzRyxNQUFNLE1BQU0sR0FBRyxJQUFJLHVEQUF1QixDQUFDLEtBQUssRUFBRSxNQUFNLEtBQUssQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUN6RSxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7WUFDdkIsT0FBTyxFQUFFO2dCQUNQLEdBQUcsRUFBRSxHQUFHO2FBQ1Q7WUFDRCxPQUFPLEVBQUU7Z0JBQ1AsWUFBWSxFQUFFLGVBQWU7YUFDOUI7WUFDRCxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRTtZQUM5QixhQUFhLEVBQUUsRUFBRSxFQUFFLG1DQUFtQztZQUN0RCxVQUFVLEVBQUUsR0FBRyxFQUFFLG1DQUFtQztTQUNyRCxDQUFDLENBQUM7UUFDSCwwSEFBMEg7UUFDMUgsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUNqQyx5RUFBeUUsRUFBRSw2QkFBNkI7UUFDeEcsMEdBQTBHLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLENBQUMsV0FBVyxFQUFFLEVBQ3ZKLHVCQUF1QixDQUFDLGlFQUFpRTtTQUMxRixDQUFDO0lBQ0osQ0FBQztJQUVPLDBCQUEwQixDQUNoQyxXQUFvQyxFQUNwQyxHQUFnQjtRQUVoQixPQUFPO1lBQ0wsS0FBSyxFQUFFLFdBQVcsQ0FBQyxLQUFLO1lBQ3hCLElBQUksRUFBRSxXQUFXLENBQUMsaUJBQWlCO1lBQ25DLGFBQWEsRUFBRTtnQkFDYixHQUFHLEVBQUUsV0FBVyxDQUFDLGNBQWM7Z0JBQy9CLE9BQU8sRUFBRTtvQkFDUCxXQUFXLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtvQkFDbkMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxTQUFTLElBQUksRUFBRTtvQkFDdEMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxlQUFlLElBQUksQ0FBQztvQkFDM0MsUUFBUSxFQUFFLFdBQVcsQ0FBQyxXQUFXLElBQUksR0FBRztvQkFDeEMsY0FBYyxFQUFFO3dCQUNkLG1CQUFtQixFQUFFLFdBQVcsQ0FBQyxnQkFBZ0I7d0JBQ2pELFNBQVMsRUFBRSxXQUFXLENBQUMsU0FBUztxQkFDakM7aUJBQ0Y7Z0JBQ0QsV0FBVyxFQUFFO29CQUNYLHdCQUF3QjtvQkFDeEIseUJBQXlCO29CQUN6Qix3RUFDRSxHQUFHLENBQUMsT0FDTixZQUFZLEdBQUcsQ0FBQyxNQUFNLGtDQUFrQztpQkFDekQ7YUFDRjtZQUNELFlBQVksRUFBRSxXQUFXLENBQUMsWUFBWTtTQUN2QyxDQUFDO0lBQ0osQ0FBQztJQUVPLDRCQUE0QixDQUFDLEdBQWdCO1FBQ25ELE1BQU0sMEJBQTBCLEdBQUcseUJBQWUsQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLEVBQUUsYUFBYSxFQUFFO1lBQ3BHLGFBQWEsRUFBRSxpQ0FBaUM7U0FDakQsQ0FBQyxDQUFDO1FBQ0gsT0FBTztZQUNMLEtBQUssRUFBRSwwQkFBMEI7WUFDakMsYUFBYSxFQUFFO2dCQUNiLEdBQUcsRUFBRSx5QkFBeUI7Z0JBQzlCLEtBQUssRUFBRSxDQUFDO2dCQUNSLE9BQU8sRUFBRTtvQkFDUCxTQUFTLEVBQUUsRUFBRTtvQkFDYixXQUFXLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtvQkFDbkMsU0FBUyxFQUFFLENBQUM7b0JBQ1osUUFBUSxFQUFFLEdBQUc7b0JBQ2IsY0FBYyxFQUFFO3dCQUNkLG1CQUFtQixFQUFFLElBQUk7d0JBQ3pCLFNBQVMsRUFBRSxJQUFJO3FCQUNoQjtpQkFDRjtnQkFDRCxXQUFXLEVBQUU7b0JBQ1gsd0JBQXdCO29CQUN4Qix5QkFBeUI7b0JBQ3pCLHdFQUNFLEdBQUcsQ0FBQyxPQUNOLFlBQVksR0FBRyxDQUFDLE1BQU0sa0NBQWtDO2lCQUN6RDthQUNGO1lBQ0QsWUFBWSxFQUFFLHNCQUFZLENBQUMsRUFBRSxDQUFDLHVCQUFhLENBQUMsRUFBRSxFQUFFLHNCQUFZLENBQUMsS0FBSyxDQUFDO1NBQ3BFLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFuR0Qsb0NBbUdDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby1leHRyYW5lb3VzLWRlcGVuZGVuY2llc1xuaW1wb3J0IHtcbiAgQXV0b3NjYWxpbmdDb25maWd1cmF0aW9uLFxuICBHaXRsYWJSdW5uZXJBdXRvc2NhbGluZyxcbiAgR2l0bGFiUnVubmVyQXV0b3NjYWxpbmdKb2JSdW5uZXJQcm9wcyxcbn0gZnJvbSAnQHBlcHBlcml6ZS9jZGstYXV0b3NjYWxpbmctZ2l0bGFiLXJ1bm5lcic7XG5pbXBvcnQgeyBFbnZpcm9ubWVudCwgU3RhY2sgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBJbnN0YW5jZUNsYXNzLCBJbnN0YW5jZVNpemUsIEluc3RhbmNlVHlwZSB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1lYzInO1xuaW1wb3J0IHsgSVJvbGUgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaWFtJztcbmltcG9ydCB7IElCdWNrZXQgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtczMnO1xuaW1wb3J0IHsgSVN0cmluZ1BhcmFtZXRlciwgU3RyaW5nUGFyYW1ldGVyIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLXNzbSc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IFJpb0xhbmRpbmdab25lIH0gZnJvbSAnLi4vLi4vLi4vcmlvLWxhbmRpbmctem9uZSc7XG5cbi8qKlxuICogVGhlIEdpdExhYlJ1bm5lclByb3BzIHJlcXVpcmUgdGhlIFZQQyBJRCwgYSBkZWZpbmVkIGVudmlyb25tZW50IG9mIGFjY291bnQgYW5kIHJlZ2lvbiwgb3B0aW9uYWxcbiAqIHJ1bm5lciBjb25maWd1cmF0aW9uIGFuZCBvcHRpb25hbGx5IHRoZSBHaXRMYWIgUnVubmVyIE1hbmFnZXIgaW5zdGFuY2UgdHlwZS4gQnkgZGVmYXVsdCwgYSBUMyBNaWNybyBpbnN0YW5jZSB3aWxsIGJlIHVzZWQuXG4gKiBGb3IgbGFyZ2VyIHdvcmtsb2FkcyBhbmQgdmVyeSBhY3RpdmUgdGVhbXMgaXQgaXMgcmVjb21tZW5kZWQgdG8gdXNlIFQzIFNtYWxsIGZvciB0aGUgbWFuYWdlciBpbnN0ZWFkLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdpdExhYlJ1bm5lclByb3BzIHtcbiAgcmVhZG9ubHkgZW52OiBFbnZpcm9ubWVudDtcbiAgcmVhZG9ubHkgcnVubmVyc1dvcmtlclByb3BzPzogR2l0bGFiUnVubmVyV29ya2VyUHJvcHM7XG4gIHJlYWRvbmx5IG1hbmFnZXJJbnN0YW5jZVR5cGU/OiBJbnN0YW5jZVR5cGU7XG4gIHJlYWRvbmx5IGNhY2hlOiBJQnVja2V0O1xufVxuXG4vKipcbiAqIFRoZSBHaXRsYWJSdW5uZXJXb3JrZXJQcm9wcyBpbnRlcmZhY2UgcHJvdmlkZXMgYSBzaW1wbGlmaWVkIEdpdExhYiBSdW5uZXIgd29ya2VyIGNvbmZpZ3VyYXRpb25cbiAqIHJlcXVpcmluZyBhIHRva2VuIGFzIGFuIFNTTSBwYXJhbWV0ZXIsIG9uZSBvZiB0aGUgdmFsaWQgZ2l0bGFiIFVSTHMsIGluc3RhbmNlIG9mIHlvdSBjaG9pY2UsIHRoZSBkZXNpcmVkIG1heCBzcG90IHByaWNlLFxuICogd2hldGhlciB0byB1c2Ugc3BvdCBpbnN0YW5jZSBvciBub3QgYW5kIGEgZGVmYXVsdCByb2xlLlxuICogSXQgaXMgcmVjb21tZW5kZWQgdG8gdXNlIHRoZSBSdW5uZXJSb2xlcyBjb25zdHJ1Y3QsIGFuZCBpdCdzIGV4cG9zZWQgZGVmYXVsdCBydW5uZXIgcm9sZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHaXRsYWJSdW5uZXJXb3JrZXJQcm9wcyB7XG4gIC8qKiBUaGUgU1NNIFN0cmluZ1BhcmFtZXRlciB3aXRoIHRoZSByZWdpc3RlcmVkIHJ1bm5lciB0b2tlbiAgKi9cbiAgcmVhZG9ubHkgdG9rZW46IElTdHJpbmdQYXJhbWV0ZXI7XG4gIC8qKiBUaGUgR2l0TGFiIGluc3RhbmNlIFVSTCwgZWl0aGVyIGh0dHBzOi8vZ2l0bGFiLmNpY2QubWFuIG9yIGh0dHBzOi8vZ2l0bGFiLmNvbGxhYm9yYXRpb25sYXllci10cmF0b24uY29tICovXG4gIHJlYWRvbmx5IGdpdEluc3RhbmNlVXJsOiBHaXRsYWJJbnN0YW5jZVVybDtcbiAgLyoqIFRoZSBpbnN0YW5jZSB0eXBlIGZvciB0aGUgcnVubmVyIHdvcmtlciAqL1xuICByZWFkb25seSBpbnN0YW5jZVR5cGU6IEluc3RhbmNlVHlwZTtcbiAgLyoqIFRoZSBkZXNpcmVkIG1heCBzcG90IHByaWNlICovXG4gIHJlYWRvbmx5IHNwb3RQcmljZTogbnVtYmVyO1xuICAvKiogV2hldGhlciB0byB1c2Ugc3BvdCBpbnN0YW5jZSBvciBub3QsIFJlcXVpcmVzIFNlcnZpY2VMaW5rZWQgUm9sZSBmb3IgRUMyIFNwb3QgdG8gYmUgZGVwbG95ZWQgaW4gdGhlIGFjY291bnQgKi9cbiAgcmVhZG9ubHkgcmVxdWVzdFNwb3RQcmljZTogYm9vbGVhbjtcbiAgLyoqIFRoZSBkZWZhdWx0IHJvbGUgZm9yIHRoZSBydW5uZXIgd29ya2VyIHdoZW4gc3Bhd25lZCAqL1xuICByZWFkb25seSBkZWZhdWx0V29ya2VyUm9sZTogSVJvbGU7XG4gIC8qKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgYnVpbGRzIGZvciBhbiBpbnN0YW5jZSBiZWZvcmUgaXQgaGFzIHRvIGJlIGRlY29tbWlzc2lvbmVkLiBEZWZhdWx0IDEwICovXG4gIHJlYWRvbmx5IG1heEJ1aWxkcz86IG51bWJlcjtcbiAgLyoqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgdG8ga2VlcCBpZGxlIGZvciBuZXcgaW5jb21pbmcgam9icy4gRGVmYXVsdCA1ICovXG4gIHJlYWRvbmx5IG1heElkbGVJbnN0YW5jZT86IG51bWJlcjtcbiAgLyoqIFRoZSBtYXhpbXVtIGlkbGUgdGltZSBzZWNvbmRzIGZvciBhbiBpbnN0YW5jZS4gRGVmYXVsdCA5MDAgc2Vjb25kcyAqL1xuICByZWFkb25seSBtYXhJZGxlVGltZT86IG51bWJlcjtcbn1cblxuZXhwb3J0IHR5cGUgR2l0bGFiSW5zdGFuY2VVcmwgPSAnaHR0cHM6Ly9naXRsYWIuY2ljZC5tYW4nIHwgJ2h0dHBzOi8vZ2l0bGFiLmNvbGxhYm9yYXRpb25sYXllci10cmF0b24uY29tJztcblxuLyoqXG4gKiBUaGUgY29uc3RydWN0IGNyZWF0ZSB0aGUgR2l0TGFiUnVubmVyIE1hbmFnZXIgaW5zdGFuY2Ugd2hpY2ggd2lsbCBhdXRvc2NhbGUgUnVubmVyIGluc3RhbmNlcyBiYXNlZCBvbiB0aGUgY29uZmlndXJhdGlvbi5cbiAqIEJ5IGRlZmF1bHQsIHRoZSBjb25zdHJ1Y3Qgd2lsbCBjcmVhdGUgYSBSdW5uZXIgd2l0aCBhIG1hbmFnZXIgVDMgTWljcm8gaW5zdGFuY2Ugd2hpY2ggd2lsbCBiZSBlbmFibGVkIHRvIHNwYXduIFQzIExhcmdlIFJ1bm5lclxuICogd29ya2VyIHNwb3QgaW5zdGFuY2UuIFRoZSBkZWZhdWx0IHJ1bm5lciBSb2xlIGhhcyBvbmx5IHRoZSBwZXJtaXNzaW9ucyB0byB1cGxvYWQgYW5kIGRvd25sb2FkIGZyb20gdGhlIFMzIHJ1bm5lciBjYWNoZS5cbiAqXG4gKiBtaW5pbWFsIGNvbmZpZ3VyYXRpb24gd2l0aCBydW5uZXIgc3BvdCBpbnN0YW5jZTpcbiAqIGBgYHRzXG4gKiBuZXcgU3BvdFNlcnZpY2VMaW5rZWRSb2xlKHN0YWNrLCAnU3BvdExpbmtlZFJvbGUnKTtcbiAqIGNvbnN0IG15QnVja2V0ID0gbmV3IEJ1Y2tldChzdGFjaywgJ015U2hhcmVSdW5uZXJDYWNoZScsIHtcbiAqICAgICBlbmZvcmNlU1NMOiB0cnVlLFxuICogICAgIHB1YmxpY1JlYWRBY2Nlc3M6IGZhbHNlLFxuICogICAgIGVuY3J5cHRpb246IEJ1Y2tldEVuY3J5cHRpb24uUzNfTUFOQUdFRCxcbiAqICAgICBsaWZlY3ljbGVSdWxlczogW1xuICogICAgICAge1xuICogICAgICAgICBlbmFibGVkOiB0cnVlLFxuICogICAgICAgICBleHBpcmF0aW9uOiBEdXJhdGlvbi5kYXlzKDMwKSxcbiAqICAgICAgIH0sXG4gKiAgICAgXSxcbiAqICAgfSk7XG4gKiBuZXcgR2l0bGFiUnVubmVyKHN0YWNrLCAnR2l0TGFiUnVubmVyJywge1xuICogIGVudjoge2FjY291bnQ6ICcxMjM0NTY3ODkwMTInLCByZWdpb246ICdldS13ZXN0LTEnfSxcbiAqICBjYWNoZTogbXlCdWNrZXQgLy8gdXNlIGEgUzMgYnVja2V0IHdpdGhvdXQgcHVibGljIGFjY2VzcyBhbmQgYSByZXRlbnRpb24gZGVmaW5lZCwgdXNlIG9uZSBjYWNoZSBidWNrZXQgZm9yIGFsbCB5b3UgcnVubmVyc1xuICogfSk7XG4gKmBgYFxuICogcmVjb21tZW5kZWQ6XG4gKiBgYGB0c1xuICogbmV3IFNwb3RTZXJ2aWNlTGlua2VkUm9sZShzdGFjaywgJ1Nwb3RMaW5rZWRSb2xlJyk7XG4gKiBjb25zdCBydW5uZXJSb2xlcyA9IG5ldyBSdW5uZXJSb2xlcyhzdGFjaywgJ1J1bm5lclJvbGVzJywge2Vudjoge2FjY291bnQ6ICcxMjM0NTY3ODkwMTInLCByZWdpb246ICdldS13ZXN0LTEnfX0pO1xuICogY29uc3QgbXlCdWNrZXQgPSBuZXcgQnVja2V0KHN0YWNrLCAnTXlTaGFyZVJ1bm5lckNhY2hlJywge1xuICogICAgIGVuZm9yY2VTU0w6IHRydWUsXG4gKiAgICAgcHVibGljUmVhZEFjY2VzczogZmFsc2UsXG4gKiAgICAgZW5jcnlwdGlvbjogQnVja2V0RW5jcnlwdGlvbi5TM19NQU5BR0VELFxuICogICAgIGxpZmVjeWNsZVJ1bGVzOiBbXG4gKiAgICAgICB7XG4gKiAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gKiAgICAgICAgIGV4cGlyYXRpb246IER1cmF0aW9uLmRheXMoMzApLFxuICogICAgICAgfSxcbiAqICAgICBdLFxuICogICB9KTtcbiAqIG5ldyBHaXRsYWJSdW5uZXIoc3RhY2ssICdHaXRMYWJSdW5uZXInLCB7XG4gKiAgZW52OiB7YWNjb3VudDogJzEyMzQ1Njc4OTAxMicsIHJlZ2lvbjogJ2V1LXdlc3QtMSd9LFxuICogIGNhY2hlOiBteUJ1Y2tldCAvLyAvLyB1c2UgYSBTMyBidWNrZXQgd2l0aG91dCBwdWJsaWMgYWNjZXNzIGFuZCBhIHJldGVudGlvbiBkZWZpbmVkLCB1c2Ugb25lIGNhY2hlIGJ1Y2tldCBmb3IgYWxsIHlvdSBydW5uZXJzXG4gKiAgcnVubmVyc1dvcmtlclByb3BzOiB7XG4gKiAgICB0b2tlbjogbXlUb2tlbkZvclRhZ2dlZFJ1bm5lcjEsIC8vIHdpdGggdGhpcyBydW5uZXIgd2Ugb25seSB3YW50IHRvIHJ1biBqb2JzIHRoYXQgcmVxdWlyZSBtb3JlIHBvd2VyXG4gKiAgICBnaXRJbnN0YW5jZVVybDogJ2h0dHBzOi8vZ2l0bGFiLmNpY2QubWFuJywgLy8gb3IgdGhlIFRyYXRvbiBHaXRMYWJcbiAqICAgIGluc3RhbmNlVHlwZTogSW5zdGFuY2VUeXBlLm9mKEluc3RhbmNlQ2xhc3MuTTdJX0ZMRVgsIEluc3RhbmNlU2l6ZS5YTEFSR0UpLCAvLyBleGVtcGxhcnkgbGFyZ2VyIHJ1bm5lclxuICogICAgc3BvdFByaWNlOiAwLjIsIC8vIGV4ZW1wbGFyeSBzcG90IHByaWNlXG4gKiAgICByZXF1ZXN0U3BvdFByaWNlOiB0cnVlLFxuICogICAgZGVmYXVsdFdvcmtlclJvbGU6IHJ1bm5lclJvbGVzLnJ1bm5lckJhc2VSb2xlLCAvLyB1c2UgdGhlIGJhc2Ugcm9sZVxuICogIH0sXG4gKiB9KTtcbiAqIGBgYFxuICovXG5leHBvcnQgY2xhc3MgR2l0bGFiUnVubmVyIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHJpdmF0ZSBhdXRvc2NhbGluZ0NvbmZpZzogQXV0b3NjYWxpbmdDb25maWd1cmF0aW9uW10gPSBbXG4gICAge1xuICAgICAgcGVyaW9kczogWycqICogNy0yMiAqICogbW9uLWZyaSAqJ10sXG4gICAgICB0aW1lem9uZTogJ0V1cm9wZS9CZXJsaW4nLFxuICAgIH0sXG4gIF07XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBTdGFjaywgaWQ6IHN0cmluZywgcHJvcHM6IEdpdExhYlJ1bm5lclByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IHZwYyA9IFJpb0xhbmRpbmdab25lLmdldERlZmF1bHRWcGMoc2NvcGUpO1xuXG4gICAgY29uc3QgcnVubmVyQ29uZmlnID0gcHJvcHMucnVubmVyc1dvcmtlclByb3BzXG4gICAgICA/IHRoaXMuY3JlYXRlV29ya2VyQ29uZmlndXJhdGlvbnMocHJvcHMucnVubmVyc1dvcmtlclByb3BzLCBwcm9wcy5lbnYpXG4gICAgICA6IHRoaXMuZ2V0RGVmYXVsdFJ1bm5lcldvcmtlckNvbmZpZyhwcm9wcy5lbnYpO1xuXG4gICAgY29uc3QgbWFuYWdlckluc3RhbmNlID0gcHJvcHMubWFuYWdlckluc3RhbmNlVHlwZSA/PyBJbnN0YW5jZVR5cGUub2YoSW5zdGFuY2VDbGFzcy5UMywgSW5zdGFuY2VTaXplLk1JQ1JPKTtcblxuICAgIGNvbnN0IHJ1bm5lciA9IG5ldyBHaXRsYWJSdW5uZXJBdXRvc2NhbGluZyhzY29wZSwgYEdMUiR7c2NvcGUuc3RhY2tOYW1lfWAsIHtcbiAgICAgIHJ1bm5lcnM6IFtydW5uZXJDb25maWddLFxuICAgICAgbmV0d29yazoge1xuICAgICAgICB2cGM6IHZwYyxcbiAgICAgIH0sXG4gICAgICBtYW5hZ2VyOiB7XG4gICAgICAgIGluc3RhbmNlVHlwZTogbWFuYWdlckluc3RhbmNlLFxuICAgICAgfSxcbiAgICAgIGNhY2hlOiB7IGJ1Y2tldDogcHJvcHMuY2FjaGUgfSxcbiAgICAgIGNoZWNrSW50ZXJ2YWw6IDMwLCAvLyBjaGVjayBldmVyeSAzMHMgZm9yIHBlbmRpbmcgam9ic1xuICAgICAgY29uY3VycmVudDogMzAwLCAvLyBHbG9iYWwgbGltaXQgb2YgY29uY3VycmVudCBqb2JzLFxuICAgIH0pO1xuICAgIC8vIGR1ZSB0byB0aGUgbmV3IHJlZ2lzdHJhdGlvbiBwcm9jZXNzIHdlIGhhdmUgdG8gcmVnaXN0ZXIgdGhlIHJ1bm5lciBieSBydW5uaW5nIGV4cGxpY2l0IGNvbW1hbmRzIG9uIHN0YXJ0IG9mIHRoZSBtYW5hZ2VyXG4gICAgcnVubmVyLm1hbmFnZXIudXNlckRhdGEuYWRkQ29tbWFuZHMoXG4gICAgICAnY3AgIC9ldGMvZ2l0bGFiLXJ1bm5lci9jb25maWcudG9tbCAgL2V0Yy9naXRsYWItcnVubmVyL2NvbmZpZ19iYWNrLnRvbWwnLCAvLyBhdm9pZCB0b21sIG1lcmdlIGNvbmZsaWN0c1xuICAgICAgYGdpdGxhYi1ydW5uZXIgcmVnaXN0ZXIgLS1ub24taW50ZXJhY3RpdmUgLS10ZW1wbGF0ZS1jb25maWcgL2V0Yy9naXRsYWItcnVubmVyL2NvbmZpZ19iYWNrLnRvbWwgLS10b2tlbiAke3Byb3BzLnJ1bm5lcnNXb3JrZXJQcm9wcz8udG9rZW4uc3RyaW5nVmFsdWV9YCxcbiAgICAgICdnaXRsYWItcnVubmVyIHJlc3RhcnQnIC8vIHJlc3RhcnQgdGhlIHJ1bm5lciB0byBlbnN1cmUgdGhlIGNvbmZpZyBpcyBwaWNrZWQgdXAgY29ycmVjdGx5XG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlV29ya2VyQ29uZmlndXJhdGlvbnMoXG4gICAgd29ya2VyUHJvcHM6IEdpdGxhYlJ1bm5lcldvcmtlclByb3BzLFxuICAgIGVudjogRW52aXJvbm1lbnRcbiAgKTogR2l0bGFiUnVubmVyQXV0b3NjYWxpbmdKb2JSdW5uZXJQcm9wcyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRva2VuOiB3b3JrZXJQcm9wcy50b2tlbixcbiAgICAgIHJvbGU6IHdvcmtlclByb3BzLmRlZmF1bHRXb3JrZXJSb2xlLFxuICAgICAgY29uZmlndXJhdGlvbjoge1xuICAgICAgICB1cmw6IHdvcmtlclByb3BzLmdpdEluc3RhbmNlVXJsLFxuICAgICAgICBtYWNoaW5lOiB7XG4gICAgICAgICAgYXV0b3NjYWxpbmc6IHRoaXMuYXV0b3NjYWxpbmdDb25maWcsXG4gICAgICAgICAgbWF4QnVpbGRzOiB3b3JrZXJQcm9wcy5tYXhCdWlsZHMgPz8gMTAsXG4gICAgICAgICAgaWRsZUNvdW50OiB3b3JrZXJQcm9wcy5tYXhJZGxlSW5zdGFuY2UgPz8gNSxcbiAgICAgICAgICBpZGxlVGltZTogd29ya2VyUHJvcHMubWF4SWRsZVRpbWUgPz8gOTAwLFxuICAgICAgICAgIG1hY2hpbmVPcHRpb25zOiB7XG4gICAgICAgICAgICByZXF1ZXN0U3BvdEluc3RhbmNlOiB3b3JrZXJQcm9wcy5yZXF1ZXN0U3BvdFByaWNlLFxuICAgICAgICAgICAgc3BvdFByaWNlOiB3b3JrZXJQcm9wcy5zcG90UHJpY2UsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZW52aXJvbm1lbnQ6IFtcbiAgICAgICAgICAnRE9DS0VSX0RSSVZFUj1vdmVybGF5MicsXG4gICAgICAgICAgJ0RPQ0tFUl9UTFNfRElSQ0U9L2NlcnRzJyxcbiAgICAgICAgICBgRE9DS0VSX0FVVEhfQ09ORklHPXtcImNyZWRIZWxwZXJzXCI6IHsgXCJwdWJsaWMuZWNyLmF3c1wiOiBcImVjci1sb2dpblwiLCBcIiR7XG4gICAgICAgICAgICBlbnYuYWNjb3VudFxuICAgICAgICAgIH0uZGtyLmVjci4ke2Vudi5yZWdpb259LmFtYXpvbmF3cy5jb21cIjogXCJlY3ItbG9naW5cIiB9IH1gLFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIGluc3RhbmNlVHlwZTogd29ya2VyUHJvcHMuaW5zdGFuY2VUeXBlLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGdldERlZmF1bHRSdW5uZXJXb3JrZXJDb25maWcoZW52OiBFbnZpcm9ubWVudCk6IEdpdGxhYlJ1bm5lckF1dG9zY2FsaW5nSm9iUnVubmVyUHJvcHMge1xuICAgIGNvbnN0IGdpdExhYlJ1bm5lclRva2VuUGFyYW1ldGVyID0gU3RyaW5nUGFyYW1ldGVyLmZyb21TdHJpbmdQYXJhbWV0ZXJBdHRyaWJ1dGVzKHRoaXMsICdSdW5uZXJUb2tlbicsIHtcbiAgICAgIHBhcmFtZXRlck5hbWU6ICcvY29uZmlnL2dpdGxhYi1ydW5uZXItY2RrL3Rva2VuJyxcbiAgICB9KTtcbiAgICByZXR1cm4ge1xuICAgICAgdG9rZW46IGdpdExhYlJ1bm5lclRva2VuUGFyYW1ldGVyLFxuICAgICAgY29uZmlndXJhdGlvbjoge1xuICAgICAgICB1cmw6ICdodHRwczovL2dpdGxhYi5jaWNkLm1hbicsXG4gICAgICAgIGxpbWl0OiAwLFxuICAgICAgICBtYWNoaW5lOiB7XG4gICAgICAgICAgbWF4QnVpbGRzOiAxMCxcbiAgICAgICAgICBhdXRvc2NhbGluZzogdGhpcy5hdXRvc2NhbGluZ0NvbmZpZyxcbiAgICAgICAgICBpZGxlQ291bnQ6IDUsXG4gICAgICAgICAgaWRsZVRpbWU6IDkwMCxcbiAgICAgICAgICBtYWNoaW5lT3B0aW9uczoge1xuICAgICAgICAgICAgcmVxdWVzdFNwb3RJbnN0YW5jZTogdHJ1ZSxcbiAgICAgICAgICAgIHNwb3RQcmljZTogMC4wOSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBlbnZpcm9ubWVudDogW1xuICAgICAgICAgICdET0NLRVJfRFJJVkVSPW92ZXJsYXkyJyxcbiAgICAgICAgICAnRE9DS0VSX1RMU19ESVJDRT0vY2VydHMnLFxuICAgICAgICAgIGBET0NLRVJfQVVUSF9DT05GSUc9e1wiY3JlZEhlbHBlcnNcIjogeyBcInB1YmxpYy5lY3IuYXdzXCI6IFwiZWNyLWxvZ2luXCIsIFwiJHtcbiAgICAgICAgICAgIGVudi5hY2NvdW50XG4gICAgICAgICAgfS5ka3IuZWNyLiR7ZW52LnJlZ2lvbn0uYW1hem9uYXdzLmNvbVwiOiBcImVjci1sb2dpblwiIH0gfWAsXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAgaW5zdGFuY2VUeXBlOiBJbnN0YW5jZVR5cGUub2YoSW5zdGFuY2VDbGFzcy5UMywgSW5zdGFuY2VTaXplLkxBUkdFKSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
149
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b3NjYWxpbmctcnVubmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbnRyaWJ1dGlvbnMvc21hcnQtcm91dGUvZ2l0bGFiLXJ1bm5lci9hdXRvc2NhbGluZy1ydW5uZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkRBQTZEO0FBQzdELDRGQUlrRDtBQUVsRCxpREFBZ0Y7QUFHaEYsaURBQTZFO0FBQzdFLDJDQUF1QztBQUN2QyxnRUFBMkQ7QUEyQzNEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0RHO0FBQ0gsTUFBYSxZQUFhLFNBQVEsc0JBQVM7SUFPekMsWUFBWSxLQUFZLEVBQUUsRUFBVSxFQUFFLEtBQXdCO1FBQzVELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFQWCxzQkFBaUIsR0FBK0I7WUFDdEQ7Z0JBQ0UsT0FBTyxFQUFFLENBQUMsd0JBQXdCLENBQUM7Z0JBQ25DLFFBQVEsRUFBRSxlQUFlO2FBQzFCO1NBQ0YsQ0FBQztRQUlBLE1BQU0sR0FBRyxHQUFHLGlDQUFjLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWhELE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxrQkFBa0I7WUFDM0MsQ0FBQyxDQUFDLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQztZQUN0RSxDQUFDLENBQUMsSUFBSSxDQUFDLDRCQUE0QixDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUVqRCxNQUFNLGVBQWUsR0FBRyxLQUFLLENBQUMsbUJBQW1CLElBQUksc0JBQVksQ0FBQyxFQUFFLENBQUMsdUJBQWEsQ0FBQyxFQUFFLEVBQUUsc0JBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUUzRyxNQUFNLE1BQU0sR0FBRyxJQUFJLHVEQUF1QixDQUFDLEtBQUssRUFBRSxNQUFNLEtBQUssQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUN6RSxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7WUFDdkIsT0FBTyxFQUFFO2dCQUNQLEdBQUcsRUFBRSxHQUFHO2FBQ1Q7WUFDRCxPQUFPLEVBQUU7Z0JBQ1AsWUFBWSxFQUFFLGVBQWU7YUFDOUI7WUFDRCxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRTtZQUM5QixhQUFhLEVBQUUsRUFBRSxFQUFFLG1DQUFtQztZQUN0RCxVQUFVLEVBQUUsR0FBRyxFQUFFLG1DQUFtQztTQUNyRCxDQUFDLENBQUM7UUFDSCwwSEFBMEg7UUFDMUgsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUNqQyx5RUFBeUUsRUFBRSw2QkFBNkI7UUFDeEcsMEdBQTBHLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLENBQUMsV0FBVyxFQUFFLEVBQ3ZKLHVCQUF1QixDQUFDLGlFQUFpRTtTQUMxRixDQUFDO0lBQ0osQ0FBQztJQUVPLDBCQUEwQixDQUNoQyxXQUFvQyxFQUNwQyxHQUFnQjtRQUVoQixPQUFPO1lBQ0wsS0FBSyxFQUFFLFdBQVcsQ0FBQyxLQUFLO1lBQ3hCLElBQUksRUFBRSxXQUFXLENBQUMsaUJBQWlCO1lBQ25DLGFBQWEsRUFBRTtnQkFDYixHQUFHLEVBQUUsV0FBVyxDQUFDLGNBQWM7Z0JBQy9CLE9BQU8sRUFBRTtvQkFDUCxXQUFXLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtvQkFDbkMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxTQUFTLElBQUksRUFBRTtvQkFDdEMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxlQUFlLElBQUksQ0FBQztvQkFDM0MsUUFBUSxFQUFFLFdBQVcsQ0FBQyxXQUFXLElBQUksR0FBRztvQkFDeEMsY0FBYyxFQUFFO3dCQUNkLG1CQUFtQixFQUFFLFdBQVcsQ0FBQyxnQkFBZ0I7d0JBQ2pELFNBQVMsRUFBRSxXQUFXLENBQUMsU0FBUztxQkFDakM7aUJBQ0Y7Z0JBQ0QsV0FBVyxFQUFFO29CQUNYLHdCQUF3QjtvQkFDeEIseUJBQXlCO29CQUN6Qix3RUFDRSxHQUFHLENBQUMsT0FDTixZQUFZLEdBQUcsQ0FBQyxNQUFNLGtDQUFrQztpQkFDekQ7YUFDRjtZQUNELFlBQVksRUFBRSxXQUFXLENBQUMsWUFBWTtTQUN2QyxDQUFDO0lBQ0osQ0FBQztJQUVPLDRCQUE0QixDQUFDLEdBQWdCO1FBQ25ELE1BQU0sMEJBQTBCLEdBQUcseUJBQWUsQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLEVBQUUsYUFBYSxFQUFFO1lBQ3BHLGFBQWEsRUFBRSxpQ0FBaUM7U0FDakQsQ0FBQyxDQUFDO1FBQ0gsT0FBTztZQUNMLEtBQUssRUFBRSwwQkFBMEI7WUFDakMsYUFBYSxFQUFFO2dCQUNiLEdBQUcsRUFBRSx5QkFBeUI7Z0JBQzlCLEtBQUssRUFBRSxDQUFDO2dCQUNSLE9BQU8sRUFBRTtvQkFDUCxTQUFTLEVBQUUsRUFBRTtvQkFDYixXQUFXLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtvQkFDbkMsU0FBUyxFQUFFLENBQUM7b0JBQ1osUUFBUSxFQUFFLEdBQUc7b0JBQ2IsY0FBYyxFQUFFO3dCQUNkLG1CQUFtQixFQUFFLElBQUk7d0JBQ3pCLFNBQVMsRUFBRSxJQUFJO3FCQUNoQjtpQkFDRjtnQkFDRCxXQUFXLEVBQUU7b0JBQ1gsd0JBQXdCO29CQUN4Qix5QkFBeUI7b0JBQ3pCLHdFQUNFLEdBQUcsQ0FBQyxPQUNOLFlBQVksR0FBRyxDQUFDLE1BQU0sa0NBQWtDO2lCQUN6RDthQUNGO1lBQ0QsWUFBWSxFQUFFLHNCQUFZLENBQUMsRUFBRSxDQUFDLHVCQUFhLENBQUMsRUFBRSxFQUFFLHNCQUFZLENBQUMsS0FBSyxDQUFDO1NBQ3BFLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFuR0Qsb0NBbUdDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby1leHRyYW5lb3VzLWRlcGVuZGVuY2llc1xuaW1wb3J0IHtcbiAgdHlwZSBBdXRvc2NhbGluZ0NvbmZpZ3VyYXRpb24sXG4gIEdpdGxhYlJ1bm5lckF1dG9zY2FsaW5nLFxuICB0eXBlIEdpdGxhYlJ1bm5lckF1dG9zY2FsaW5nSm9iUnVubmVyUHJvcHMsXG59IGZyb20gJ0BwZXBwZXJpemUvY2RrLWF1dG9zY2FsaW5nLWdpdGxhYi1ydW5uZXInO1xuaW1wb3J0IHR5cGUgeyBFbnZpcm9ubWVudCwgU3RhY2sgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBJbnN0YW5jZUNsYXNzLCBJbnN0YW5jZVNpemUsIEluc3RhbmNlVHlwZSB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1lYzInO1xuaW1wb3J0IHR5cGUgeyBJUm9sZSB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0IHR5cGUgeyBJQnVja2V0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLXMzJztcbmltcG9ydCB7IHR5cGUgSVN0cmluZ1BhcmFtZXRlciwgU3RyaW5nUGFyYW1ldGVyIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLXNzbSc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IFJpb0xhbmRpbmdab25lIH0gZnJvbSAnLi4vLi4vLi4vcmlvLWxhbmRpbmctem9uZSc7XG5cbi8qKlxuICogVGhlIEdpdExhYlJ1bm5lclByb3BzIHJlcXVpcmUgdGhlIFZQQyBJRCwgYSBkZWZpbmVkIGVudmlyb25tZW50IG9mIGFjY291bnQgYW5kIHJlZ2lvbiwgb3B0aW9uYWxcbiAqIHJ1bm5lciBjb25maWd1cmF0aW9uIGFuZCBvcHRpb25hbGx5IHRoZSBHaXRMYWIgUnVubmVyIE1hbmFnZXIgaW5zdGFuY2UgdHlwZS4gQnkgZGVmYXVsdCwgYSBUMyBNaWNybyBpbnN0YW5jZSB3aWxsIGJlIHVzZWQuXG4gKiBGb3IgbGFyZ2VyIHdvcmtsb2FkcyBhbmQgdmVyeSBhY3RpdmUgdGVhbXMgaXQgaXMgcmVjb21tZW5kZWQgdG8gdXNlIFQzIFNtYWxsIGZvciB0aGUgbWFuYWdlciBpbnN0ZWFkLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdpdExhYlJ1bm5lclByb3BzIHtcbiAgcmVhZG9ubHkgZW52OiBFbnZpcm9ubWVudDtcbiAgcmVhZG9ubHkgcnVubmVyc1dvcmtlclByb3BzPzogR2l0bGFiUnVubmVyV29ya2VyUHJvcHM7XG4gIHJlYWRvbmx5IG1hbmFnZXJJbnN0YW5jZVR5cGU/OiBJbnN0YW5jZVR5cGU7XG4gIHJlYWRvbmx5IGNhY2hlOiBJQnVja2V0O1xufVxuXG4vKipcbiAqIFRoZSBHaXRsYWJSdW5uZXJXb3JrZXJQcm9wcyBpbnRlcmZhY2UgcHJvdmlkZXMgYSBzaW1wbGlmaWVkIEdpdExhYiBSdW5uZXIgd29ya2VyIGNvbmZpZ3VyYXRpb25cbiAqIHJlcXVpcmluZyBhIHRva2VuIGFzIGFuIFNTTSBwYXJhbWV0ZXIsIG9uZSBvZiB0aGUgdmFsaWQgZ2l0bGFiIFVSTHMsIGluc3RhbmNlIG9mIHlvdSBjaG9pY2UsIHRoZSBkZXNpcmVkIG1heCBzcG90IHByaWNlLFxuICogd2hldGhlciB0byB1c2Ugc3BvdCBpbnN0YW5jZSBvciBub3QgYW5kIGEgZGVmYXVsdCByb2xlLlxuICogSXQgaXMgcmVjb21tZW5kZWQgdG8gdXNlIHRoZSBSdW5uZXJSb2xlcyBjb25zdHJ1Y3QsIGFuZCBpdCdzIGV4cG9zZWQgZGVmYXVsdCBydW5uZXIgcm9sZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHaXRsYWJSdW5uZXJXb3JrZXJQcm9wcyB7XG4gIC8qKiBUaGUgU1NNIFN0cmluZ1BhcmFtZXRlciB3aXRoIHRoZSByZWdpc3RlcmVkIHJ1bm5lciB0b2tlbiAgKi9cbiAgcmVhZG9ubHkgdG9rZW46IElTdHJpbmdQYXJhbWV0ZXI7XG4gIC8qKiBUaGUgR2l0TGFiIGluc3RhbmNlIFVSTCwgZWl0aGVyIGh0dHBzOi8vZ2l0bGFiLmNpY2QubWFuIG9yIGh0dHBzOi8vZ2l0bGFiLmNvbGxhYm9yYXRpb25sYXllci10cmF0b24uY29tICovXG4gIHJlYWRvbmx5IGdpdEluc3RhbmNlVXJsOiBHaXRsYWJJbnN0YW5jZVVybDtcbiAgLyoqIFRoZSBpbnN0YW5jZSB0eXBlIGZvciB0aGUgcnVubmVyIHdvcmtlciAqL1xuICByZWFkb25seSBpbnN0YW5jZVR5cGU6IEluc3RhbmNlVHlwZTtcbiAgLyoqIFRoZSBkZXNpcmVkIG1heCBzcG90IHByaWNlICovXG4gIHJlYWRvbmx5IHNwb3RQcmljZTogbnVtYmVyO1xuICAvKiogV2hldGhlciB0byB1c2Ugc3BvdCBpbnN0YW5jZSBvciBub3QsIFJlcXVpcmVzIFNlcnZpY2VMaW5rZWQgUm9sZSBmb3IgRUMyIFNwb3QgdG8gYmUgZGVwbG95ZWQgaW4gdGhlIGFjY291bnQgKi9cbiAgcmVhZG9ubHkgcmVxdWVzdFNwb3RQcmljZTogYm9vbGVhbjtcbiAgLyoqIFRoZSBkZWZhdWx0IHJvbGUgZm9yIHRoZSBydW5uZXIgd29ya2VyIHdoZW4gc3Bhd25lZCAqL1xuICByZWFkb25seSBkZWZhdWx0V29ya2VyUm9sZTogSVJvbGU7XG4gIC8qKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgYnVpbGRzIGZvciBhbiBpbnN0YW5jZSBiZWZvcmUgaXQgaGFzIHRvIGJlIGRlY29tbWlzc2lvbmVkLiBEZWZhdWx0IDEwICovXG4gIHJlYWRvbmx5IG1heEJ1aWxkcz86IG51bWJlcjtcbiAgLyoqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgdG8ga2VlcCBpZGxlIGZvciBuZXcgaW5jb21pbmcgam9icy4gRGVmYXVsdCA1ICovXG4gIHJlYWRvbmx5IG1heElkbGVJbnN0YW5jZT86IG51bWJlcjtcbiAgLyoqIFRoZSBtYXhpbXVtIGlkbGUgdGltZSBzZWNvbmRzIGZvciBhbiBpbnN0YW5jZS4gRGVmYXVsdCA5MDAgc2Vjb25kcyAqL1xuICByZWFkb25seSBtYXhJZGxlVGltZT86IG51bWJlcjtcbn1cblxuZXhwb3J0IHR5cGUgR2l0bGFiSW5zdGFuY2VVcmwgPSAnaHR0cHM6Ly9naXRsYWIuY2ljZC5tYW4nIHwgJ2h0dHBzOi8vZ2l0bGFiLmNvbGxhYm9yYXRpb25sYXllci10cmF0b24uY29tJztcblxuLyoqXG4gKiBUaGUgY29uc3RydWN0IGNyZWF0ZSB0aGUgR2l0TGFiUnVubmVyIE1hbmFnZXIgaW5zdGFuY2Ugd2hpY2ggd2lsbCBhdXRvc2NhbGUgUnVubmVyIGluc3RhbmNlcyBiYXNlZCBvbiB0aGUgY29uZmlndXJhdGlvbi5cbiAqIEJ5IGRlZmF1bHQsIHRoZSBjb25zdHJ1Y3Qgd2lsbCBjcmVhdGUgYSBSdW5uZXIgd2l0aCBhIG1hbmFnZXIgVDMgTWljcm8gaW5zdGFuY2Ugd2hpY2ggd2lsbCBiZSBlbmFibGVkIHRvIHNwYXduIFQzIExhcmdlIFJ1bm5lclxuICogd29ya2VyIHNwb3QgaW5zdGFuY2UuIFRoZSBkZWZhdWx0IHJ1bm5lciBSb2xlIGhhcyBvbmx5IHRoZSBwZXJtaXNzaW9ucyB0byB1cGxvYWQgYW5kIGRvd25sb2FkIGZyb20gdGhlIFMzIHJ1bm5lciBjYWNoZS5cbiAqXG4gKiBtaW5pbWFsIGNvbmZpZ3VyYXRpb24gd2l0aCBydW5uZXIgc3BvdCBpbnN0YW5jZTpcbiAqIGBgYHRzXG4gKiBuZXcgU3BvdFNlcnZpY2VMaW5rZWRSb2xlKHN0YWNrLCAnU3BvdExpbmtlZFJvbGUnKTtcbiAqIGNvbnN0IG15QnVja2V0ID0gbmV3IEJ1Y2tldChzdGFjaywgJ015U2hhcmVSdW5uZXJDYWNoZScsIHtcbiAqICAgICBlbmZvcmNlU1NMOiB0cnVlLFxuICogICAgIHB1YmxpY1JlYWRBY2Nlc3M6IGZhbHNlLFxuICogICAgIGVuY3J5cHRpb246IEJ1Y2tldEVuY3J5cHRpb24uUzNfTUFOQUdFRCxcbiAqICAgICBsaWZlY3ljbGVSdWxlczogW1xuICogICAgICAge1xuICogICAgICAgICBlbmFibGVkOiB0cnVlLFxuICogICAgICAgICBleHBpcmF0aW9uOiBEdXJhdGlvbi5kYXlzKDMwKSxcbiAqICAgICAgIH0sXG4gKiAgICAgXSxcbiAqICAgfSk7XG4gKiBuZXcgR2l0bGFiUnVubmVyKHN0YWNrLCAnR2l0TGFiUnVubmVyJywge1xuICogIGVudjoge2FjY291bnQ6ICcxMjM0NTY3ODkwMTInLCByZWdpb246ICdldS13ZXN0LTEnfSxcbiAqICBjYWNoZTogbXlCdWNrZXQgLy8gdXNlIGEgUzMgYnVja2V0IHdpdGhvdXQgcHVibGljIGFjY2VzcyBhbmQgYSByZXRlbnRpb24gZGVmaW5lZCwgdXNlIG9uZSBjYWNoZSBidWNrZXQgZm9yIGFsbCB5b3UgcnVubmVyc1xuICogfSk7XG4gKmBgYFxuICogcmVjb21tZW5kZWQ6XG4gKiBgYGB0c1xuICogbmV3IFNwb3RTZXJ2aWNlTGlua2VkUm9sZShzdGFjaywgJ1Nwb3RMaW5rZWRSb2xlJyk7XG4gKiBjb25zdCBydW5uZXJSb2xlcyA9IG5ldyBSdW5uZXJSb2xlcyhzdGFjaywgJ1J1bm5lclJvbGVzJywge2Vudjoge2FjY291bnQ6ICcxMjM0NTY3ODkwMTInLCByZWdpb246ICdldS13ZXN0LTEnfX0pO1xuICogY29uc3QgbXlCdWNrZXQgPSBuZXcgQnVja2V0KHN0YWNrLCAnTXlTaGFyZVJ1bm5lckNhY2hlJywge1xuICogICAgIGVuZm9yY2VTU0w6IHRydWUsXG4gKiAgICAgcHVibGljUmVhZEFjY2VzczogZmFsc2UsXG4gKiAgICAgZW5jcnlwdGlvbjogQnVja2V0RW5jcnlwdGlvbi5TM19NQU5BR0VELFxuICogICAgIGxpZmVjeWNsZVJ1bGVzOiBbXG4gKiAgICAgICB7XG4gKiAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gKiAgICAgICAgIGV4cGlyYXRpb246IER1cmF0aW9uLmRheXMoMzApLFxuICogICAgICAgfSxcbiAqICAgICBdLFxuICogICB9KTtcbiAqIG5ldyBHaXRsYWJSdW5uZXIoc3RhY2ssICdHaXRMYWJSdW5uZXInLCB7XG4gKiAgZW52OiB7YWNjb3VudDogJzEyMzQ1Njc4OTAxMicsIHJlZ2lvbjogJ2V1LXdlc3QtMSd9LFxuICogIGNhY2hlOiBteUJ1Y2tldCAvLyAvLyB1c2UgYSBTMyBidWNrZXQgd2l0aG91dCBwdWJsaWMgYWNjZXNzIGFuZCBhIHJldGVudGlvbiBkZWZpbmVkLCB1c2Ugb25lIGNhY2hlIGJ1Y2tldCBmb3IgYWxsIHlvdSBydW5uZXJzXG4gKiAgcnVubmVyc1dvcmtlclByb3BzOiB7XG4gKiAgICB0b2tlbjogbXlUb2tlbkZvclRhZ2dlZFJ1bm5lcjEsIC8vIHdpdGggdGhpcyBydW5uZXIgd2Ugb25seSB3YW50IHRvIHJ1biBqb2JzIHRoYXQgcmVxdWlyZSBtb3JlIHBvd2VyXG4gKiAgICBnaXRJbnN0YW5jZVVybDogJ2h0dHBzOi8vZ2l0bGFiLmNpY2QubWFuJywgLy8gb3IgdGhlIFRyYXRvbiBHaXRMYWJcbiAqICAgIGluc3RhbmNlVHlwZTogSW5zdGFuY2VUeXBlLm9mKEluc3RhbmNlQ2xhc3MuTTdJX0ZMRVgsIEluc3RhbmNlU2l6ZS5YTEFSR0UpLCAvLyBleGVtcGxhcnkgbGFyZ2VyIHJ1bm5lclxuICogICAgc3BvdFByaWNlOiAwLjIsIC8vIGV4ZW1wbGFyeSBzcG90IHByaWNlXG4gKiAgICByZXF1ZXN0U3BvdFByaWNlOiB0cnVlLFxuICogICAgZGVmYXVsdFdvcmtlclJvbGU6IHJ1bm5lclJvbGVzLnJ1bm5lckJhc2VSb2xlLCAvLyB1c2UgdGhlIGJhc2Ugcm9sZVxuICogIH0sXG4gKiB9KTtcbiAqIGBgYFxuICovXG5leHBvcnQgY2xhc3MgR2l0bGFiUnVubmVyIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHJpdmF0ZSBhdXRvc2NhbGluZ0NvbmZpZzogQXV0b3NjYWxpbmdDb25maWd1cmF0aW9uW10gPSBbXG4gICAge1xuICAgICAgcGVyaW9kczogWycqICogNy0yMiAqICogbW9uLWZyaSAqJ10sXG4gICAgICB0aW1lem9uZTogJ0V1cm9wZS9CZXJsaW4nLFxuICAgIH0sXG4gIF07XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBTdGFjaywgaWQ6IHN0cmluZywgcHJvcHM6IEdpdExhYlJ1bm5lclByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IHZwYyA9IFJpb0xhbmRpbmdab25lLmdldERlZmF1bHRWcGMoc2NvcGUpO1xuXG4gICAgY29uc3QgcnVubmVyQ29uZmlnID0gcHJvcHMucnVubmVyc1dvcmtlclByb3BzXG4gICAgICA/IHRoaXMuY3JlYXRlV29ya2VyQ29uZmlndXJhdGlvbnMocHJvcHMucnVubmVyc1dvcmtlclByb3BzLCBwcm9wcy5lbnYpXG4gICAgICA6IHRoaXMuZ2V0RGVmYXVsdFJ1bm5lcldvcmtlckNvbmZpZyhwcm9wcy5lbnYpO1xuXG4gICAgY29uc3QgbWFuYWdlckluc3RhbmNlID0gcHJvcHMubWFuYWdlckluc3RhbmNlVHlwZSA/PyBJbnN0YW5jZVR5cGUub2YoSW5zdGFuY2VDbGFzcy5UMywgSW5zdGFuY2VTaXplLk1JQ1JPKTtcblxuICAgIGNvbnN0IHJ1bm5lciA9IG5ldyBHaXRsYWJSdW5uZXJBdXRvc2NhbGluZyhzY29wZSwgYEdMUiR7c2NvcGUuc3RhY2tOYW1lfWAsIHtcbiAgICAgIHJ1bm5lcnM6IFtydW5uZXJDb25maWddLFxuICAgICAgbmV0d29yazoge1xuICAgICAgICB2cGM6IHZwYyxcbiAgICAgIH0sXG4gICAgICBtYW5hZ2VyOiB7XG4gICAgICAgIGluc3RhbmNlVHlwZTogbWFuYWdlckluc3RhbmNlLFxuICAgICAgfSxcbiAgICAgIGNhY2hlOiB7IGJ1Y2tldDogcHJvcHMuY2FjaGUgfSxcbiAgICAgIGNoZWNrSW50ZXJ2YWw6IDMwLCAvLyBjaGVjayBldmVyeSAzMHMgZm9yIHBlbmRpbmcgam9ic1xuICAgICAgY29uY3VycmVudDogMzAwLCAvLyBHbG9iYWwgbGltaXQgb2YgY29uY3VycmVudCBqb2JzLFxuICAgIH0pO1xuICAgIC8vIGR1ZSB0byB0aGUgbmV3IHJlZ2lzdHJhdGlvbiBwcm9jZXNzIHdlIGhhdmUgdG8gcmVnaXN0ZXIgdGhlIHJ1bm5lciBieSBydW5uaW5nIGV4cGxpY2l0IGNvbW1hbmRzIG9uIHN0YXJ0IG9mIHRoZSBtYW5hZ2VyXG4gICAgcnVubmVyLm1hbmFnZXIudXNlckRhdGEuYWRkQ29tbWFuZHMoXG4gICAgICAnY3AgIC9ldGMvZ2l0bGFiLXJ1bm5lci9jb25maWcudG9tbCAgL2V0Yy9naXRsYWItcnVubmVyL2NvbmZpZ19iYWNrLnRvbWwnLCAvLyBhdm9pZCB0b21sIG1lcmdlIGNvbmZsaWN0c1xuICAgICAgYGdpdGxhYi1ydW5uZXIgcmVnaXN0ZXIgLS1ub24taW50ZXJhY3RpdmUgLS10ZW1wbGF0ZS1jb25maWcgL2V0Yy9naXRsYWItcnVubmVyL2NvbmZpZ19iYWNrLnRvbWwgLS10b2tlbiAke3Byb3BzLnJ1bm5lcnNXb3JrZXJQcm9wcz8udG9rZW4uc3RyaW5nVmFsdWV9YCxcbiAgICAgICdnaXRsYWItcnVubmVyIHJlc3RhcnQnIC8vIHJlc3RhcnQgdGhlIHJ1bm5lciB0byBlbnN1cmUgdGhlIGNvbmZpZyBpcyBwaWNrZWQgdXAgY29ycmVjdGx5XG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlV29ya2VyQ29uZmlndXJhdGlvbnMoXG4gICAgd29ya2VyUHJvcHM6IEdpdGxhYlJ1bm5lcldvcmtlclByb3BzLFxuICAgIGVudjogRW52aXJvbm1lbnRcbiAgKTogR2l0bGFiUnVubmVyQXV0b3NjYWxpbmdKb2JSdW5uZXJQcm9wcyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRva2VuOiB3b3JrZXJQcm9wcy50b2tlbixcbiAgICAgIHJvbGU6IHdvcmtlclByb3BzLmRlZmF1bHRXb3JrZXJSb2xlLFxuICAgICAgY29uZmlndXJhdGlvbjoge1xuICAgICAgICB1cmw6IHdvcmtlclByb3BzLmdpdEluc3RhbmNlVXJsLFxuICAgICAgICBtYWNoaW5lOiB7XG4gICAgICAgICAgYXV0b3NjYWxpbmc6IHRoaXMuYXV0b3NjYWxpbmdDb25maWcsXG4gICAgICAgICAgbWF4QnVpbGRzOiB3b3JrZXJQcm9wcy5tYXhCdWlsZHMgPz8gMTAsXG4gICAgICAgICAgaWRsZUNvdW50OiB3b3JrZXJQcm9wcy5tYXhJZGxlSW5zdGFuY2UgPz8gNSxcbiAgICAgICAgICBpZGxlVGltZTogd29ya2VyUHJvcHMubWF4SWRsZVRpbWUgPz8gOTAwLFxuICAgICAgICAgIG1hY2hpbmVPcHRpb25zOiB7XG4gICAgICAgICAgICByZXF1ZXN0U3BvdEluc3RhbmNlOiB3b3JrZXJQcm9wcy5yZXF1ZXN0U3BvdFByaWNlLFxuICAgICAgICAgICAgc3BvdFByaWNlOiB3b3JrZXJQcm9wcy5zcG90UHJpY2UsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZW52aXJvbm1lbnQ6IFtcbiAgICAgICAgICAnRE9DS0VSX0RSSVZFUj1vdmVybGF5MicsXG4gICAgICAgICAgJ0RPQ0tFUl9UTFNfRElSQ0U9L2NlcnRzJyxcbiAgICAgICAgICBgRE9DS0VSX0FVVEhfQ09ORklHPXtcImNyZWRIZWxwZXJzXCI6IHsgXCJwdWJsaWMuZWNyLmF3c1wiOiBcImVjci1sb2dpblwiLCBcIiR7XG4gICAgICAgICAgICBlbnYuYWNjb3VudFxuICAgICAgICAgIH0uZGtyLmVjci4ke2Vudi5yZWdpb259LmFtYXpvbmF3cy5jb21cIjogXCJlY3ItbG9naW5cIiB9IH1gLFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIGluc3RhbmNlVHlwZTogd29ya2VyUHJvcHMuaW5zdGFuY2VUeXBlLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGdldERlZmF1bHRSdW5uZXJXb3JrZXJDb25maWcoZW52OiBFbnZpcm9ubWVudCk6IEdpdGxhYlJ1bm5lckF1dG9zY2FsaW5nSm9iUnVubmVyUHJvcHMge1xuICAgIGNvbnN0IGdpdExhYlJ1bm5lclRva2VuUGFyYW1ldGVyID0gU3RyaW5nUGFyYW1ldGVyLmZyb21TdHJpbmdQYXJhbWV0ZXJBdHRyaWJ1dGVzKHRoaXMsICdSdW5uZXJUb2tlbicsIHtcbiAgICAgIHBhcmFtZXRlck5hbWU6ICcvY29uZmlnL2dpdGxhYi1ydW5uZXItY2RrL3Rva2VuJyxcbiAgICB9KTtcbiAgICByZXR1cm4ge1xuICAgICAgdG9rZW46IGdpdExhYlJ1bm5lclRva2VuUGFyYW1ldGVyLFxuICAgICAgY29uZmlndXJhdGlvbjoge1xuICAgICAgICB1cmw6ICdodHRwczovL2dpdGxhYi5jaWNkLm1hbicsXG4gICAgICAgIGxpbWl0OiAwLFxuICAgICAgICBtYWNoaW5lOiB7XG4gICAgICAgICAgbWF4QnVpbGRzOiAxMCxcbiAgICAgICAgICBhdXRvc2NhbGluZzogdGhpcy5hdXRvc2NhbGluZ0NvbmZpZyxcbiAgICAgICAgICBpZGxlQ291bnQ6IDUsXG4gICAgICAgICAgaWRsZVRpbWU6IDkwMCxcbiAgICAgICAgICBtYWNoaW5lT3B0aW9uczoge1xuICAgICAgICAgICAgcmVxdWVzdFNwb3RJbnN0YW5jZTogdHJ1ZSxcbiAgICAgICAgICAgIHNwb3RQcmljZTogMC4wOSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBlbnZpcm9ubWVudDogW1xuICAgICAgICAgICdET0NLRVJfRFJJVkVSPW92ZXJsYXkyJyxcbiAgICAgICAgICAnRE9DS0VSX1RMU19ESVJDRT0vY2VydHMnLFxuICAgICAgICAgIGBET0NLRVJfQVVUSF9DT05GSUc9e1wiY3JlZEhlbHBlcnNcIjogeyBcInB1YmxpYy5lY3IuYXdzXCI6IFwiZWNyLWxvZ2luXCIsIFwiJHtcbiAgICAgICAgICAgIGVudi5hY2NvdW50XG4gICAgICAgICAgfS5ka3IuZWNyLiR7ZW52LnJlZ2lvbn0uYW1hem9uYXdzLmNvbVwiOiBcImVjci1sb2dpblwiIH0gfWAsXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAgaW5zdGFuY2VUeXBlOiBJbnN0YW5jZVR5cGUub2YoSW5zdGFuY2VDbGFzcy5UMywgSW5zdGFuY2VTaXplLkxBUkdFKSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|