aws-cdk 2.1003.0 → 2.1005.0
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/build-info.json +2 -2
- package/lib/api/aws-auth/account-cache.d.ts +1 -1
- package/lib/api/aws-auth/account-cache.js +1 -1
- package/lib/api/aws-auth/awscli-compatible.d.ts +1 -1
- package/lib/api/aws-auth/awscli-compatible.js +1 -1
- package/lib/api/aws-auth/credential-plugins.d.ts +1 -1
- package/lib/api/aws-auth/credential-plugins.js +1 -1
- package/lib/api/aws-auth/provider-caching.d.ts +1 -1
- package/lib/api/aws-auth/provider-caching.js +1 -1
- package/lib/api/aws-auth/sdk-logger.d.ts +4 -4
- package/lib/api/aws-auth/sdk-logger.js +5 -10
- package/lib/api/aws-auth/sdk-provider.d.ts +4 -4
- package/lib/api/aws-auth/sdk-provider.js +1 -1
- package/lib/api/aws-auth/sdk.d.ts +12 -12
- package/lib/api/aws-auth/sdk.js +1 -1
- package/lib/api/bootstrap/bootstrap-environment.d.ts +4 -4
- package/lib/api/bootstrap/bootstrap-environment.js +9 -9
- package/lib/api/bootstrap/bootstrap-props.d.ts +3 -3
- package/lib/api/bootstrap/bootstrap-props.js +1 -1
- package/lib/api/bootstrap/deploy-bootstrap.d.ts +7 -7
- package/lib/api/bootstrap/deploy-bootstrap.js +11 -11
- package/lib/api/bootstrap/legacy-template.d.ts +1 -1
- package/lib/api/bootstrap/legacy-template.js +1 -1
- package/lib/api/cxapp/cloud-assembly.d.ts +1 -16
- package/lib/api/cxapp/cloud-assembly.js +3 -3
- package/lib/api/cxapp/cloud-executable.d.ts +3 -3
- package/lib/api/cxapp/cloud-executable.js +1 -1
- package/lib/api/cxapp/environments.d.ts +3 -3
- package/lib/api/cxapp/environments.js +1 -1
- package/lib/api/cxapp/exec.d.ts +4 -4
- package/lib/api/cxapp/exec.js +1 -1
- package/lib/api/deployments/asset-publishing.d.ts +6 -6
- package/lib/api/deployments/asset-publishing.js +7 -8
- package/lib/api/deployments/assets.d.ts +4 -4
- package/lib/api/deployments/assets.js +9 -9
- package/lib/api/deployments/checks.d.ts +3 -3
- package/lib/api/deployments/checks.js +4 -4
- package/lib/api/deployments/cloudformation.d.ts +8 -8
- package/lib/api/deployments/cloudformation.js +27 -27
- package/lib/api/deployments/deploy-stack.d.ts +8 -8
- package/lib/api/deployments/deploy-stack.js +53 -56
- package/lib/api/deployments/deployments.d.ts +14 -10
- package/lib/api/deployments/deployments.js +22 -24
- package/lib/api/deployments/hotswap-deployments.d.ts +7 -5
- package/lib/api/deployments/hotswap-deployments.js +52 -27
- package/lib/api/environment/environment-access.d.ts +8 -9
- package/lib/api/environment/environment-access.js +6 -7
- package/lib/api/environment/environment-resources.d.ts +5 -5
- package/lib/api/environment/environment-resources.js +12 -12
- package/lib/api/evaluate-cloudformation-template.d.ts +7 -2
- package/lib/api/evaluate-cloudformation-template.js +11 -5
- package/lib/api/garbage-collection/garbage-collector.d.ts +6 -7
- package/lib/api/garbage-collection/garbage-collector.js +38 -39
- package/lib/api/garbage-collection/progress-printer.d.ts +4 -5
- package/lib/api/garbage-collection/progress-printer.js +5 -6
- package/lib/api/garbage-collection/stack-refresh.d.ts +4 -4
- package/lib/api/garbage-collection/stack-refresh.js +7 -7
- package/lib/api/hotswap/appsync-mapping-templates.d.ts +3 -2
- package/lib/api/hotswap/appsync-mapping-templates.js +8 -6
- package/lib/api/hotswap/code-build-projects.d.ts +3 -2
- package/lib/api/hotswap/code-build-projects.js +8 -6
- package/lib/api/hotswap/common.d.ts +45 -34
- package/lib/api/hotswap/common.js +2 -14
- package/lib/api/hotswap/ecs-services.d.ts +3 -2
- package/lib/api/hotswap/ecs-services.js +7 -5
- package/lib/api/hotswap/lambda-functions.d.ts +3 -2
- package/lib/api/hotswap/lambda-functions.js +47 -65
- package/lib/api/hotswap/s3-bucket-deployments.d.ts +4 -8
- package/lib/api/hotswap/s3-bucket-deployments.js +18 -17
- package/lib/api/hotswap/stepfunctions-state-machines.d.ts +3 -2
- package/lib/api/hotswap/stepfunctions-state-machines.js +8 -6
- package/lib/api/logs/find-cloudwatch-logs.d.ts +2 -2
- package/lib/api/logs/find-cloudwatch-logs.js +6 -7
- package/lib/api/logs/logs-monitor.d.ts +28 -5
- package/lib/api/logs/logs-monitor.js +51 -30
- package/lib/api/resource-import/importer.d.ts +6 -8
- package/lib/api/resource-import/importer.js +12 -13
- package/lib/api/resource-import/migrator.d.ts +5 -7
- package/lib/api/resource-import/migrator.js +7 -9
- package/lib/api/stack-events/stack-activity-monitor.d.ts +5 -64
- package/lib/api/stack-events/stack-activity-monitor.js +9 -30
- package/lib/api/stack-events/stack-progress-monitor.d.ts +2 -15
- package/lib/api/stack-events/stack-progress-monitor.js +1 -1
- package/lib/api/toolkit-info.d.ts +3 -3
- package/lib/api/toolkit-info.js +5 -5
- package/lib/api/util/template-body-parameter.d.ts +1 -1
- package/lib/api/util/template-body-parameter.js +1 -1
- package/lib/api/work-graph/work-graph-builder.d.ts +4 -5
- package/lib/api/work-graph/work-graph-builder.js +5 -6
- package/lib/api/work-graph/work-graph-types.d.ts +2 -2
- package/lib/api/work-graph/work-graph-types.js +1 -1
- package/lib/api/work-graph/work-graph.d.ts +4 -9
- package/lib/api/work-graph/work-graph.js +6 -7
- package/lib/cli/activity-printer/base.d.ts +5 -6
- package/lib/cli/activity-printer/base.js +6 -5
- package/lib/cli/activity-printer/current.d.ts +2 -1
- package/lib/cli/activity-printer/current.js +1 -1
- package/lib/cli/activity-printer/history.d.ts +3 -2
- package/lib/cli/activity-printer/history.js +1 -1
- package/lib/cli/cdk-toolkit.d.ts +7 -7
- package/lib/cli/cdk-toolkit.js +26 -22
- package/lib/cli/ci-systems.d.ts +29 -0
- package/lib/cli/ci-systems.js +62 -0
- package/lib/cli/cli.d.ts +1 -1
- package/lib/cli/cli.js +27 -8
- package/lib/cli/convert-to-user-input.js +1 -1
- package/lib/cli/messages.d.ts +11 -9
- package/lib/cli/messages.js +7 -14
- package/lib/cli/parse-command-line-arguments.js +1 -1
- package/lib/cli/user-configuration.js +1 -1
- package/lib/cli/user-input.js +1 -1
- package/lib/commands/context.d.ts +1 -1
- package/lib/commands/context.js +1 -1
- package/lib/commands/migrate.d.ts +1 -1
- package/lib/commands/migrate.js +1 -1
- package/lib/context-providers/ami.d.ts +1 -1
- package/lib/context-providers/ami.js +1 -1
- package/lib/context-providers/availability-zones.d.ts +1 -1
- package/lib/context-providers/availability-zones.js +1 -1
- package/lib/context-providers/cc-api-provider.d.ts +1 -1
- package/lib/context-providers/cc-api-provider.js +1 -1
- package/lib/context-providers/endpoint-service-availability-zones.d.ts +1 -1
- package/lib/context-providers/endpoint-service-availability-zones.js +1 -1
- package/lib/context-providers/hosted-zones.d.ts +2 -2
- package/lib/context-providers/hosted-zones.js +1 -1
- package/lib/context-providers/index.d.ts +3 -3
- package/lib/context-providers/index.js +1 -1
- package/lib/context-providers/keys.d.ts +1 -1
- package/lib/context-providers/keys.js +1 -1
- package/lib/context-providers/load-balancers.d.ts +3 -3
- package/lib/context-providers/load-balancers.js +1 -1
- package/lib/context-providers/ssm-parameters.d.ts +1 -1
- package/lib/context-providers/ssm-parameters.js +1 -1
- package/lib/context-providers/vpcs.d.ts +1 -1
- package/lib/context-providers/vpcs.js +1 -1
- package/lib/diff.d.ts +1 -1
- package/lib/diff.js +1 -1
- package/lib/index.js +8764 -7741
- package/lib/legacy-logging-source.js +1 -1
- package/lib/list-stacks.d.ts +2 -2
- package/lib/list-stacks.js +1 -1
- package/lib/logging.d.ts +6 -4
- package/lib/logging.js +37 -34
- package/lib/notices.d.ts +22 -18
- package/lib/notices.js +46 -46
- package/lib/toolkit/cli-io-host.d.ts +53 -126
- package/lib/toolkit/cli-io-host.js +77 -78
- package/lib/tree.d.ts +1 -1
- package/lib/tree.js +1 -1
- package/package.json +4 -12
|
@@ -433,4 +433,4 @@ function convertConfigToUserInput(config) {
|
|
|
433
433
|
};
|
|
434
434
|
return userInput;
|
|
435
435
|
}
|
|
436
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydC10by11c2VyLWlucHV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY29udmVydC10by11c2VyLWlucHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBU0EsMERBNFBDO0FBR0QsNERBaU1DO0FBamNELG9CQUFvQjtBQUNwQixTQUFnQix1QkFBdUIsQ0FBQyxJQUFTO0lBQy9DLE1BQU0sYUFBYSxHQUFrQjtRQUNuQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7UUFDYixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7UUFDakIsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1FBQ3JCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtRQUNuQixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7UUFDakIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1FBQ25CLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztRQUNyQixZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7UUFDL0IsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1FBQ2YsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1FBQ3JCLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztRQUNqQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87UUFDckIsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1FBQ2pCLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtRQUMvQixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7UUFDdkIsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLGdCQUFnQjtRQUN2QyxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7UUFDL0IsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1FBQ2pDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztRQUNyQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87UUFDckIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1FBQ25CLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztR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UUFDckIsS0FBSyxFQUFFLE9BQUEsTUFBTSxDQUFDLE9BQU8sNENBQUUsS0FBSztRQUM1QixLQUFLLEVBQUUsT0FBQSxNQUFNLENBQUMsT0FBTyw0Q0FBRSxLQUFLO1FBQzVCLEtBQUssRUFBRSxPQUFBLE1BQU0sQ0FBQyxPQUFPLDRDQUFFLEtBQUs7S0FDN0IsQ0FBQztJQUNGLE1BQU0sV0FBVyxHQUFHO1FBQ2xCLE9BQU8sRUFBRSxPQUFBLE1BQU0sQ0FBQyxJQUFJLDRDQUFFLE9BQU87S0FDOUIsQ0FBQztJQUNGLE1BQU0sYUFBYSxHQUFHLEVBQUUsQ0FBQztJQUN6QixNQUFNLFNBQVMsR0FBYztRQUMzQixhQUFhO1FBQ2IsSUFBSSxFQUFFLFdBQVc7UUFDakIsS0FBSyxFQUFFLFlBQVk7UUFDbkIsU0FBUyxFQUFFLGdCQUFnQjtRQUMzQixFQUFFLEVBQUUsU0FBUztRQUNiLE1BQU0sRUFBRSxhQUFhO1FBQ3JCLFFBQVEsRUFBRSxlQUFlO1FBQ3pCLE1BQU0sRUFBRSxhQUFhO1FBQ3JCLEtBQUssRUFBRSxZQUFZO1FBQ25CLE9BQU8sRUFBRSxjQUFjO1FBQ3ZCLElBQUksRUFBRSxXQUFXO1FBQ2pCLFFBQVEsRUFBRSxlQUFlO1FBQ3pCLFdBQVcsRUFBRSxrQkFBa0I7UUFDL0IsT0FBTyxFQUFFLGNBQWM7UUFDdkIsSUFBSSxFQUFFLFdBQVc7UUFDakIsT0FBTyxFQUFFLGNBQWM7UUFDdkIsT0FBTyxFQUFFLGNBQWM7UUFDdkIsSUFBSSxFQUFFLFdBQVc7UUFDakIsTUFBTSxFQUFFLGFBQWE7S0FDdEIsQ0FBQztJQUVGLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBHRU5FUkFURUQgRlJPTSBwYWNrYWdlcy9hd3MtY2RrL2xpYi9jbGkvY2xpLWNvbmZpZy50cy5cbi8vIERvIG5vdCBlZGl0IGJ5IGhhbmQ7IGFsbCBjaGFuZ2VzIHdpbGwgYmUgb3ZlcndyaXR0ZW4gYXQgYnVpbGQgdGltZSBmcm9tIHRoZSBjb25maWcgZmlsZS5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8qIGVzbGludC1kaXNhYmxlIEBzdHlsaXN0aWMvbWF4LWxlbiAqL1xuaW1wb3J0IHsgQ29tbWFuZCB9IGZyb20gJy4vdXNlci1jb25maWd1cmF0aW9uJztcbmltcG9ydCB7IFVzZXJJbnB1dCwgR2xvYmFsT3B0aW9ucyB9IGZyb20gJy4vdXNlci1pbnB1dCc7XG5cbi8vIEB0cy1pZ25vcmUgVFM2MTMzXG5leHBvcnQgZnVuY3Rpb24gY29udmVydFlhcmdzVG9Vc2VySW5wdXQoYXJnczogYW55KTogVXNlcklucHV0IHtcbiAgY29uc3QgZ2xvYmFsT3B0aW9uczogR2xvYmFsT3B0aW9ucyA9IHtcbiAgICBhcHA6IGFyZ3MuYXBwLFxuICAgIGJ1aWxkOiBhcmdzLmJ1aWxkLFxuICAgIGNvbnRleHQ6IGFyZ3MuY29udGV4dCxcbiAgICBwbHVnaW46IGFyZ3MucGx1Z2luLFxuICAgIHRyYWNlOiBhcmdzLnRyYWNlLFxuICAgIHN0cmljdDogYXJncy5zdHJpY3QsXG4gICAgbG9va3VwczogYXJncy5sb29rdXBzLFxuICAgIGlnbm9yZUVycm9yczogYXJncy5pZ25vcmVFcnJvcnMsXG4gICAganNvbjogYXJncy5qc29uLFxuICAgIHZlcmJvc2U6IGFyZ3MudmVyYm9zZSxcbiAgICBkZWJ1ZzogYXJncy5kZWJ1ZyxcbiAgICBwcm9maWxlOiBhcmdzLnByb2ZpbGUsXG4gICAgcHJveHk6IGFyZ3MucHJveHksXG4gICAgY2FCdW5kbGVQYXRoOiBhcmdzLmNhQnVuZGxlUGF0aCxcbiAgICBlYzJjcmVkczogYXJncy5lYzJjcmVkcyxcbiAgICB2ZXJzaW9uUmVwb3J0aW5nOiBhcmdzLnZlcnNpb25SZXBvcnRpbmcsXG4gICAgcGF0aE1ldGFkYXRhOiBhcmdzLnBhdGhNZXRhZGF0YSxcbiAgICBhc3NldE1ldGFkYXRhOiBhcmdzLmFzc2V0TWV0YWRhdGEsXG4gICAgcm9sZUFybjogYXJncy5yb2xlQXJuLFxuICAgIHN0YWdpbmc6IGFyZ3Muc3RhZ2luZyxcbiAgICBvdXRwdXQ6IGFyZ3Mub3V0cHV0LFxuICAgIG5vdGljZXM6IGFyZ3Mubm90aWNlcyxcbiAgICBub0NvbG9yOiBhcmdzLm5vQ29sb3IsXG4gICAgY2k6IGFyZ3MuY2ksXG4gICAgdW5zdGFibGU6IGFyZ3MudW5zdGFibGUsXG4gIH07XG4gIGxldCBjb21tYW5kT3B0aW9ucztcbiAgc3dpdGNoIChhcmdzLl9bMF0gYXMgQ29tbWFuZCkge1xuICAgIGNhc2UgJ2xpc3QnOlxuICAgIGNhc2UgJ2xzJzpcbiAgICAgIGNvbW1hbmRPcHRpb25zID0ge1xuICAgICAgICBsb25nOiBhcmdzLmxvbmcsXG4gICAgICAgIHNob3dEZXBlbmRlbmNpZXM6IGFyZ3Muc2hvd0RlcGVuZGVuY2llcyxcbiAgICAgICAgU1RBQ0tTOiBhcmdzLlNUQUNLUyxcbiAgICAgIH07XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ3N5bnRoJzpcbiAgICBjYXNlICdzeW50aGVzaXplJzpcbiAgICAgIGNvbW1hbmRPcHRpb25zID0ge1xuICAgICAgICBleGNsdXNpdmVseTogYXJncy5leGNsdXNpdmVseSxcbiAgICAgICAgdmFsaWRhdGlvbjogYXJncy52YWxpZGF0aW9uLFxuICAgICAgICBxdWlldDogYXJncy5xdWlldCxcbiAgICAgICAgU1RBQ0tTOiBhcmdzLlNUQUNLUyxcbiAgICAgIH07XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ2Jvb3RzdHJhcCc6XG4gICAgICBjb21tYW5kT3B0aW9ucyA9IHtcbiAgICAgICAgYm9vdHN0cmFwQnVja2V0TmFtZTogYXJncy5ib290c3RyYXBCdWNrZXROYW1lLFxuICAgICAgICBib290c3RyYXBLbXNLZXlJZDogYXJncy5ib290c3RyYXBLbXNLZXlJZCxcbiAgICAgICAgZXhhbXBsZVBlcm1pc3Npb25zQm91bmRhcnk6IGFyZ3MuZXhhbXBsZVBlcm1pc3Npb25zQm91bmRhcnksXG4gICAgICAgIGN1c3RvbVBlcm1pc3Npb25zQm91bmRhcnk6IGFyZ3MuY3VzdG9tUGVybWlzc2lvbnNCb3VuZGFyeSxcbiAgICAgICAgYm9vdHN0cmFwQ3VzdG9tZXJLZXk6IGFyZ3MuYm9vdHN0cmFwQ3VzdG9tZXJLZXksXG4gICAgICAgIHF1YWxpZmllcjogYXJncy5xdWFsaWZpZXIsXG4gICAgICAgIHB1YmxpY0FjY2Vzc0Jsb2NrQ29uZmlndXJhdGlvbjogYXJncy5wdWJsaWNBY2Nlc3NCbG9ja0NvbmZpZ3VyYXRpb24sXG4gICAgICAgIHRhZ3M6IGFyZ3MudGFncyxcbiAgICAgICAgZXhlY3V0ZTogYXJncy5leGVjdXRlLFxuICAgICAgICB0cnVzdDogYXJncy50cnVzdCxcbiAgICAgICAgdHJ1c3RGb3JMb29rdXA6IGFyZ3MudHJ1c3RGb3JMb29rdXAsXG4gICAgICAgIHVudHJ1c3Q6IGFyZ3MudW50cnVzdCxcbiAgICAgICAgY2xvdWRmb3JtYXRpb25FeGVjdXRpb25Qb2xpY2llczogYXJncy5jbG91ZGZvcm1hdGlvbkV4ZWN1dGlvblBvbGljaWVzLFxuICAgICAgICBmb3JjZTogYXJncy5mb3JjZSxcbiAgICAgICAgdGVybWluYXRpb25Qcm90ZWN0aW9uOiBhcmdzLnRlcm1pbmF0aW9uUHJvdGVjdGlvbixcbiAgICAgICAgc2hvd1RlbXBsYXRlOiBhcmdzLnNob3dUZW1wbGF0ZSxcbiAgICAgICAgdG9vbGtpdFN0YWNrTmFtZTogYXJncy50b29sa2l0U3RhY2tOYW1lLFxuICAgICAgICB0ZW1wbGF0ZTogYXJncy50ZW1wbGF0ZSxcbiAgICAgICAgcHJldmlvdXNQYXJhbWV0ZXJzOiBhcmdzLnByZXZpb3VzUGFyYW1ldGVycyxcbiAgICAgICAgRU5WSVJPTk1FTlRTOiBhcmdzLkVOVklST05NRU5UUyxcbiAgICAgIH07XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ2djJzpcbiAgICAgIGNvbW1hbmRPcHRpb25zID0ge1xuICAgICAgICBhY3Rpb246IGFyZ3MuYWN0aW9uLFxuICAgICAgICB0eXBlOiBhcmdzLnR5cGUsXG4gICAgICAgIHJvbGxiYWNrQnVmZmVyRGF5czogYXJncy5yb2xsYmFja0J1ZmZlckRheXMsXG4gICAgICAgIGNyZWF0ZWRCdWZmZXJEYXlzOiBhcmdzLmNyZWF0ZWRCdWZmZXJEYXlzLFxuICAgICAgICBjb25maXJtOiBhcmdzLmNvbmZpcm0sXG4gICAgICAgIGJvb3RzdHJhcFN0YWNrTmFtZTogYXJncy5ib290c3RyYXBTdGFja05hbWUsXG4gICAgICAgIEVOVklST05NRU5UUzogYXJncy5FTlZJUk9OTUVOVFMsXG4gICAgICB9O1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlICdkZXBsb3knOlxuICAgICAgY29tbWFuZE9wdGlvbnMgPSB7XG4gICAgICAgIGFsbDogYXJncy5hbGwsXG4gICAgICAgIGJ1aWxkRXhjbHVkZTogYXJncy5idWlsZEV4Y2x1ZGUsXG4gICAgICAgIGV4Y2x1c2l2ZWx5OiBhcmdzLmV4Y2x1c2l2ZWx5LFxuICAgICAgICByZXF1aXJlQXBwcm92YWw6IGFyZ3MucmVxdWlyZUFwcHJvdmFsLFxuICAgICAgICBub3RpZmljYXRpb25Bcm5zOiBhcmdzLm5vdGlmaWNhdGlvbkFybnMsXG4gICAgICAgIHRhZ3M6IGFyZ3MudGFncyxcbiAgICAgICAgZXhlY3V0ZTogYXJncy5leGVjdXRlLFxuICAgICAgICBjaGFuZ2VTZXROYW1lOiBhcmdzLmNoYW5nZVNldE5hbWUsXG4gICAgICAgIG1ldGhvZDogYXJncy5tZXRob2QsXG4gICAgICAgIGltcG9ydEV4aXN0aW5nUmVzb3VyY2VzOiBhcmdzLmltcG9ydEV4aXN0aW5nUmVzb3VyY2VzLFxuICAgICAgICBmb3JjZTogYXJncy5mb3JjZSxcbiAgICAgICAgcGFyYW1ldGVyczogYXJncy5wYXJhbWV0ZXJzLFxuICAgICAgICBvdXRwdXRzRmlsZTogYXJncy5vdXRwdXRzRmlsZSxcbiAgICAgICAgcHJldmlvdXNQYXJhbWV0ZXJzOiBhcmdzLnByZXZpb3VzUGFyYW1ldGVycyxcbiAgICAgICAgdG9vbGtpdFN0YWNrTmFtZTogYXJncy50b29sa2l0U3RhY2tOYW1lLFxuICAgICAgICBwcm9ncmVzczogYXJncy5wcm9ncmVzcyxcbiAgICAgICAgcm9sbGJhY2s6IGFyZ3Mucm9sbGJhY2ssXG4gICAgICAgIGhvdHN3YXA6IGFyZ3MuaG90c3dhcCxcbiAgICAgICAgaG90c3dhcEZhbGxiYWNrOiBhcmdzLmhvdHN3YXBGYWxsYmFjayxcbiAgICAgICAgd2F0Y2g6IGFyZ3Mud2F0Y2gsXG4gICAgICAgIGxvZ3M6IGFyZ3MubG9ncyxcbiAgICAgICAgY29uY3VycmVuY3k6IGFyZ3MuY29uY3VycmVuY3ksXG4gICAgICAgIGFzc2V0UGFyYWxsZWxpc206IGFyZ3MuYXNzZXRQYXJhbGxlbGlzbSxcbiAgICAgICAgYXNzZXRQcmVidWlsZDogYXJncy5hc3NldFByZWJ1aWxkLFxuICAgICAgICBpZ25vcmVOb1N0YWNrczogYXJncy5pZ25vcmVOb1N0YWNrcyxcbiAgICAgICAgU1RBQ0tTOiBhcmdzLlNUQUNLUyxcbiAgICAgIH07XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ3JvbGxiYWNrJzpcbiAgICAgIGNvbW1hbmRPcHRpb25zID0ge1xuICAgICAgICBhbGw6IGFyZ3MuYWxsLFxuICAgICAgICB0b29sa2l0U3RhY2tOYW1lOiBhcmdzLnRvb2xraXRTdGFja05hbWUsXG4gICAgICAgIGZvcmNlOiBhcmdzLmZvcmNlLFxuICAgICAgICB2YWxpZGF0ZUJvb3RzdHJhcFZlcnNpb246IGFyZ3MudmFsaWRhdGVCb290c3RyYXBWZXJzaW9uLFxuICAgICAgICBvcnBoYW46IGFyZ3Mub3JwaGFuLFxuICAgICAgICBTVEFDS1M6IGFyZ3MuU1RBQ0tTLFxuICAgICAgfTtcbiAgICAgIGJyZWFrO1xuXG4gICAgY2FzZSAnaW1wb3J0JzpcbiAgICAgIGNvbW1hbmRPcHRpb25zID0ge1xuICAgICAgICBleGVjdXRlOiBhcmdzLmV4ZWN1dGUsXG4gICAgICAgIGNoYW5nZVNldE5hbWU6IGFyZ3MuY2hhbmdlU2V0TmFtZSxcbiAgICAgICAgdG9vbGtpdFN0YWNrTmFtZTogYXJncy50b29sa2l0U3RhY2tOYW1lLFxuICAgICAgICByb2xsYmFjazogYXJncy5yb2xsYmFjayxcbiAgICAgICAgZm9yY2U6IGFyZ3MuZm9yY2UsXG4gICAgICAgIHJlY29yZFJlc291cmNlTWFwcGluZzogYXJncy5yZWNvcmRSZXNvdXJjZU1hcHBpbmcsXG4gICAgICAgIHJlc291cmNlTWFwcGluZzogYXJncy5yZXNvdXJjZU1hcHBpbmcsXG4gICAgICAgIFNUQUNLOiBhcmdzLlNUQUNLLFxuICAgICAgfTtcbiAgICAgIGJyZWFrO1xuXG4gICAgY2FzZSAnd2F0Y2gnOlxuICAgICAgY29tbWFuZE9wdGlvbnMgPSB7XG4gICAgICAgIGJ1aWxkRXhjbHVkZTogYXJncy5idWlsZEV4Y2x1ZGUsXG4gICAgICAgIGV4Y2x1c2l2ZWx5OiBhcmdzLmV4Y2x1c2l2ZWx5LFxuICAgICAgICBjaGFuZ2VTZXROYW1lOiBhcmdzLmNoYW5nZVNldE5hbWUsXG4gICAgICAgIGZvcmNlOiBhcmdzLmZvcmNlLFxuICAgICAgICB0b29sa2l0U3RhY2tOYW1lOiBhcmdzLnRvb2xraXRTdGFja05hbWUsXG4gICAgICAgIHByb2dyZXNzOiBhcmdzLnByb2dyZXNzLFxuICAgICAgICByb2xsYmFjazogYXJncy5yb2xsYmFjayxcbiAgICAgICAgaG90c3dhcDogYXJncy5ob3Rzd2FwLFxuICAgICAgICBob3Rzd2FwRmFsbGJhY2s6IGFyZ3MuaG90c3dhcEZhbGxiYWNrLFxuICAgICAgICBsb2dzOiBhcmdzLmxvZ3MsXG4gICAgICAgIGNvbmN1cnJlbmN5OiBhcmdzLmNvbmN1cnJlbmN5LFxuICAgICAgICBTVEFDS1M6IGFyZ3MuU1RBQ0tTLFxuICAgICAgfTtcbiAgICAgIGJyZWFrO1xuXG4gICAgY2FzZSAnZGVzdHJveSc6XG4gICAgICBjb21tYW5kT3B0aW9ucyA9IHtcbiAgICAgICAgYWxsOiBhcmdzLmFsbCxcbiAgICAgICAgZXhjbHVzaXZlbHk6IGFyZ3MuZXhjbHVzaXZlbHksXG4gICAgICAgIGZvcmNlOiBhcmdzLmZvcmNlLFxuICAgICAgICBTVEFDS1M6IGFyZ3MuU1RBQ0tTLFxuICAgICAgfTtcbiAgICAgIGJyZWFrO1xuXG4gICAgY2FzZSAnZGlmZic6XG4gICAgICBjb21tYW5kT3B0aW9ucyA9IHtcbiAgICAgICAgZXhjbHVzaXZlbHk6IGFyZ3MuZXhjbHVzaXZlbHksXG4gICAgICAgIGNvbnRleHRMaW5lczogYXJncy5jb250ZXh0TGluZXMsXG4gICAgICAgIHRlbXBsYXRlOiBhcmdzLnRlbXBsYXRlLFxuICAgICAgICBzdHJpY3Q6IGFyZ3Muc3RyaWN0LFxuICAgICAgICBzZWN1cml0eU9ubHk6IGFyZ3Muc2VjdXJpdHlPbmx5LFxuICAgICAgICBmYWlsOiBhcmdzLmZhaWwsXG4gICAgICAgIHByb2Nlc3NlZDogYXJncy5wcm9jZXNzZWQsXG4gICAgICAgIHF1aWV0OiBhcmdzLnF1aWV0LFxuICAgICAgICBjaGFuZ2VTZXQ6IGFyZ3MuY2hhbmdlU2V0LFxuICAgICAgICBTVEFDS1M6IGFyZ3MuU1RBQ0tTLFxuICAgICAgfTtcbiAgICAgIGJyZWFrO1xuXG4gICAgY2FzZSAnbWV0YWRhdGEnOlxuICAgICAgY29tbWFuZE9wdGlvbnMgPSB7XG4gICAgICAgIFNUQUNLOiBhcmdzLlNUQUNLLFxuICAgICAgfTtcbiAgICAgIGJyZWFrO1xuXG4gICAgY2FzZSAnYWNrbm93bGVkZ2UnOlxuICAgIGNhc2UgJ2Fjayc6XG4gICAgICBjb21tYW5kT3B0aW9ucyA9IHtcbiAgICAgICAgSUQ6IGFyZ3MuSUQsXG4gICAgICB9O1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlICdub3RpY2VzJzpcbiAgICAgIGNvbW1hbmRPcHRpb25zID0ge1xuICAgICAgICB1bmFja25vd2xlZGdlZDogYXJncy51bmFja25vd2xlZGdlZCxcbiAgICAgIH07XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ2luaXQnOlxuICAgICAgY29tbWFuZE9wdGlvbnMgPSB7XG4gICAgICAgIGxhbmd1YWdlOiBhcmdzLmxhbmd1YWdlLFxuICAgICAgICBsaXN0OiBhcmdzLmxpc3QsXG4gICAgICAgIGdlbmVyYXRlT25seTogYXJncy5nZW5lcmF0ZU9ubHksXG4gICAgICAgIGxpYlZlcnNpb246IGFyZ3MubGliVmVyc2lvbixcbiAgICAgICAgVEVNUExBVEU6IGFyZ3MuVEVNUExBVEUsXG4gICAgICB9O1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlICdtaWdyYXRlJzpcbiAgICAgIGNvbW1hbmRPcHRpb25zID0ge1xuICAgICAgICBzdGFja05hbWU6IGFyZ3Muc3RhY2tOYW1lLFxuICAgICAgICBsYW5ndWFnZTogYXJncy5sYW5ndWFnZSxcbiAgICAgICAgYWNjb3VudDogYXJncy5hY2NvdW50LFxuICAgICAgICByZWdpb246IGFyZ3MucmVnaW9uLFxuICAgICAgICBmcm9tUGF0aDogYXJncy5mcm9tUGF0aCxcbiAgICAgICAgZnJvbVN0YWNrOiBhcmdzLmZyb21TdGFjayxcbiAgICAgICAgb3V0cHV0UGF0aDogYXJncy5vdXRwdXRQYXRoLFxuICAgICAgICBmcm9tU2NhbjogYXJncy5mcm9tU2NhbixcbiAgICAgICAgZmlsdGVyOiBhcmdzLmZpbHRlcixcbiAgICAgICAgY29tcHJlc3M6IGFyZ3MuY29tcHJlc3MsXG4gICAgICB9O1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlICdjb250ZXh0JzpcbiAgICAgIGNvbW1hbmRPcHRpb25zID0ge1xuICAgICAgICByZXNldDogYXJncy5yZXNldCxcbiAgICAgICAgZm9yY2U6IGFyZ3MuZm9yY2UsXG4gICAgICAgIGNsZWFyOiBhcmdzLmNsZWFyLFxuICAgICAgfTtcbiAgICAgIGJyZWFrO1xuXG4gICAgY2FzZSAnZG9jcyc6XG4gICAgY2FzZSAnZG9jJzpcbiAgICAgIGNvbW1hbmRPcHRpb25zID0ge1xuICAgICAgICBicm93c2VyOiBhcmdzLmJyb3dzZXIsXG4gICAgICB9O1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlICdkb2N0b3InOlxuICAgICAgY29tbWFuZE9wdGlvbnMgPSB7fTtcbiAgICAgIGJyZWFrO1xuICB9XG4gIGNvbnN0IHVzZXJJbnB1dDogVXNlcklucHV0ID0ge1xuICAgIGNvbW1hbmQ6IGFyZ3MuX1swXSxcbiAgICBnbG9iYWxPcHRpb25zLFxuICAgIFthcmdzLl9bMF1dOiBjb21tYW5kT3B0aW9ucyxcbiAgfTtcblxuICByZXR1cm4gdXNlcklucHV0O1xufVxuXG4vLyBAdHMtaWdub3JlIFRTNjEzM1xuZXhwb3J0IGZ1bmN0aW9uIGNvbnZlcnRDb25maWdUb1VzZXJJbnB1dChjb25maWc6IGFueSk6IFVzZXJJbnB1dCB7XG4gIGNvbnN0IGdsb2JhbE9wdGlvbnM6IEdsb2JhbE9wdGlvbnMgPSB7XG4gICAgYXBwOiBjb25maWcuYXBwLFxuICAgIGJ1aWxkOiBjb25maWcuYnVpbGQsXG4gICAgY29udGV4dDogY29uZmlnLmNvbnRleHQsXG4gICAgcGx1Z2luOiBjb25maWcucGx1Z2luLFxuICAgIHRyYWNlOiBjb25maWcudHJhY2UsXG4gICAgc3RyaWN0OiBjb25maWcuc3RyaWN0LFxuICAgIGxvb2t1cHM6IGNvbmZpZy5sb29rdXBzLFxuICAgIGlnbm9yZUVycm9yczogY29uZmlnLmlnbm9yZUVycm9ycyxcbiAgICBqc29uOiBjb25maWcuanNvbixcbiAgICB2ZXJib3NlOiBjb25maWcudmVyYm9zZSxcbiAgICBkZWJ1ZzogY29uZmlnLmRlYnVnLFxuICAgIHByb2ZpbGU6IGNvbmZpZy5wcm9maWxlLFxuICAgIHByb3h5OiBjb25maWcucHJveHksXG4gICAgY2FCdW5kbGVQYXRoOiBjb25maWcuY2FCdW5kbGVQYXRoLFxuICAgIGVjMmNyZWRzOiBjb25maWcuZWMyY3JlZHMsXG4gICAgdmVyc2lvblJlcG9ydGluZzogY29uZmlnLnZlcnNpb25SZXBvcnRpbmcsXG4gICAgcGF0aE1ldGFkYXRhOiBjb25maWcucGF0aE1ldGFkYXRhLFxuICAgIGFzc2V0TWV0YWRhdGE6IGNvbmZpZy5hc3NldE1ldGFkYXRhLFxuICAgIHJvbGVBcm46IGNvbmZpZy5yb2xlQXJuLFxuICAgIHN0YWdpbmc6IGNvbmZpZy5zdGFnaW5nLFxuICAgIG91dHB1dDogY29uZmlnLm91dHB1dCxcbiAgICBub3RpY2VzOiBjb25maWcubm90aWNlcyxcbiAgICBub0NvbG9yOiBjb25maWcubm9Db2xvcixcbiAgICBjaTogY29uZmlnLmNpLFxuICAgIHVuc3RhYmxlOiBjb25maWcudW5zdGFibGUsXG4gIH07XG4gIGNvbnN0IGxpc3RPcHRpb25zID0ge1xuICAgIGxvbmc6IGNvbmZpZy5saXN0Py5sb25nLFxuICAgIHNob3dEZXBlbmRlbmNpZXM6IGNvbmZpZy5saXN0Py5zaG93RGVwZW5kZW5jaWVzLFxuICB9O1xuICBjb25zdCBzeW50aE9wdGlvbnMgPSB7XG4gICAgZXhjbHVzaXZlbHk6IGNvbmZpZy5zeW50aD8uZXhjbHVzaXZlbHksXG4gICAgdmFsaWRhdGlvbjogY29uZmlnLnN5bnRoPy52YWxpZGF0aW9uLFxuICAgIHF1aWV0OiBjb25maWcuc3ludGg/LnF1aWV0LFxuICB9O1xuICBjb25zdCBib290c3RyYXBPcHRpb25zID0ge1xuICAgIGJvb3RzdHJhcEJ1Y2tldE5hbWU6IGNvbmZpZy5ib290c3RyYXA/LmJvb3RzdHJhcEJ1Y2tldE5hbWUsXG4gICAgYm9vdHN0cmFwS21zS2V5SWQ6IGNvbmZpZy5ib290c3RyYXA/LmJvb3RzdHJhcEttc0tleUlkLFxuICAgIGV4YW1wbGVQZXJtaXNzaW9uc0JvdW5kYXJ5OiBjb25maWcuYm9vdHN0cmFwPy5leGFtcGxlUGVybWlzc2lvbnNCb3VuZGFyeSxcbiAgICBjdXN0b21QZXJtaXNzaW9uc0JvdW5kYXJ5OiBjb25maWcuYm9vdHN0cmFwPy5jdXN0b21QZXJtaXNzaW9uc0JvdW5kYXJ5LFxuICAgIGJvb3RzdHJhcEN1c3RvbWVyS2V5OiBjb25maWcuYm9vdHN0cmFwPy5ib290c3RyYXBDdXN0b21lcktleSxcbiAgICBxdWFsaWZpZXI6IGNvbmZpZy5ib290c3RyYXA/LnF1YWxpZmllcixcbiAgICBwdWJsaWNBY2Nlc3NCbG9ja0NvbmZpZ3VyYXRpb246IGNvbmZpZy5ib290c3RyYXA/LnB1YmxpY0FjY2Vzc0Jsb2NrQ29uZmlndXJhdGlvbixcbiAgICB0YWdzOiBjb25maWcuYm9vdHN0cmFwPy50YWdzLFxuICAgIGV4ZWN1dGU6IGNvbmZpZy5ib290c3RyYXA/LmV4ZWN1dGUsXG4gICAgdHJ1c3Q6IGNvbmZpZy5ib290c3RyYXA/LnRydXN0LFxuICAgIHRydXN0Rm9yTG9va3VwOiBjb25maWcuYm9vdHN0cmFwPy50cnVzdEZvckxvb2t1cCxcbiAgICB1bnRydXN0OiBjb25maWcuYm9vdHN0cmFwPy51bnRydXN0LFxuICAgIGNsb3VkZm9ybWF0aW9uRXhlY3V0aW9uUG9saWNpZXM6IGNvbmZpZy5ib290c3RyYXA/LmNsb3VkZm9ybWF0aW9uRXhlY3V0aW9uUG9saWNpZXMsXG4gICAgZm9yY2U6IGNvbmZpZy5ib290c3RyYXA/LmZvcmNlLFxuICAgIHRlcm1pbmF0aW9uUHJvdGVjdGlvbjogY29uZmlnLmJvb3RzdHJhcD8udGVybWluYXRpb25Qcm90ZWN0aW9uLFxuICAgIHNob3dUZW1wbGF0ZTogY29uZmlnLmJvb3RzdHJhcD8uc2hvd1RlbXBsYXRlLFxuICAgIHRvb2xraXRTdGFja05hbWU6IGNvbmZpZy5ib290c3RyYXA/LnRvb2xraXRTdGFja05hbWUsXG4gICAgdGVtcGxhdGU6IGNvbmZpZy5ib290c3RyYXA/LnRlbXBsYXRlLFxuICAgIHByZXZpb3VzUGFyYW1ldGVyczogY29uZmlnLmJvb3RzdHJhcD8ucHJldmlvdXNQYXJhbWV0ZXJzLFxuICB9O1xuICBjb25zdCBnY09wdGlvbnMgPSB7XG4gICAgYWN0aW9uOiBjb25maWcuZ2M/LmFjdGlvbixcbiAgICB0eXBlOiBjb25maWcuZ2M/LnR5cGUsXG4gICAgcm9sbGJhY2tCdWZmZXJEYXlzOiBjb25maWcuZ2M/LnJvbGxiYWNrQnVmZmVyRGF5cyxcbiAgICBjcmVhdGVkQnVmZmVyRGF5czogY29uZmlnLmdjPy5jcmVhdGVkQnVmZmVyRGF5cyxcbiAgICBjb25maXJtOiBjb25maWcuZ2M/LmNvbmZpcm0sXG4gICAgYm9vdHN0cmFwU3RhY2tOYW1lOiBjb25maWcuZ2M/LmJvb3RzdHJhcFN0YWNrTmFtZSxcbiAgfTtcbiAgY29uc3QgZGVwbG95T3B0aW9ucyA9IHtcbiAgICBhbGw6IGNvbmZpZy5kZXBsb3k/LmFsbCxcbiAgICBidWlsZEV4Y2x1ZGU6IGNvbmZpZy5kZXBsb3k/LmJ1aWxkRXhjbHVkZSxcbiAgICBleGNsdXNpdmVseTogY29uZmlnLmRlcGxveT8uZXhjbHVzaXZlbHksXG4gICAgcmVxdWlyZUFwcHJvdmFsOiBjb25maWcuZGVwbG95Py5yZXF1aXJlQXBwcm92YWwsXG4gICAgbm90aWZpY2F0aW9uQXJuczogY29uZmlnLmRlcGxveT8ubm90aWZpY2F0aW9uQXJucyxcbiAgICB0YWdzOiBjb25maWcuZGVwbG95Py50YWdzLFxuICAgIGV4ZWN1dGU6IGNvbmZpZy5kZXBsb3k/LmV4ZWN1dGUsXG4gICAgY2hhbmdlU2V0TmFtZTogY29uZmlnLmRlcGxveT8uY2hhbmdlU2V0TmFtZSxcbiAgICBtZXRob2Q6IGNvbmZpZy5kZXBsb3k/Lm1ldGhvZCxcbiAgICBpbXBvcnRFeGlzdGluZ1Jlc291cmNlczogY29uZmlnLmRlcGxveT8uaW1wb3J0RXhpc3RpbmdSZXNvdXJjZXMsXG4gICAgZm9yY2U6IGNvbmZpZy5kZXBsb3k/LmZvcmNlLFxuICAgIHBhcmFtZXRlcnM6IGNvbmZpZy5kZXBsb3k/LnBhcmFtZXRlcnMsXG4gICAgb3V0cHV0c0ZpbGU6IGNvbmZpZy5kZXBsb3k/Lm91dHB1dHNGaWxlLFxuICAgIHByZXZpb3VzUGFyYW1ldGVyczogY29uZmlnLmRlcGxveT8ucHJldmlvdXNQYXJhbWV0ZXJzLFxuICAgIHRvb2xraXRTdGFja05hbWU6IGNvbmZpZy5kZXBsb3k/LnRvb2xraXRTdGFja05hbWUsXG4gICAgcHJvZ3Jlc3M6IGNvbmZpZy5kZXBsb3k/LnByb2dyZXNzLFxuICAgIHJvbGxiYWNrOiBjb25maWcuZGVwbG95Py5yb2xsYmFjayxcbiAgICBob3Rzd2FwOiBjb25maWcuZGVwbG95Py5ob3Rzd2FwLFxuICAgIGhvdHN3YXBGYWxsYmFjazogY29uZmlnLmRlcGxveT8uaG90c3dhcEZhbGxiYWNrLFxuICAgIHdhdGNoOiBjb25maWcuZGVwbG95Py53YXRjaCxcbiAgICBsb2dzOiBjb25maWcuZGVwbG95Py5sb2dzLFxuICAgIGNvbmN1cnJlbmN5OiBjb25maWcuZGVwbG95Py5jb25jdXJyZW5jeSxcbiAgICBhc3NldFBhcmFsbGVsaXNtOiBjb25maWcuZGVwbG95Py5hc3NldFBhcmFsbGVsaXNtLFxuICAgIGFzc2V0UHJlYnVpbGQ6IGNvbmZpZy5kZXBsb3k/LmFzc2V0UHJlYnVpbGQsXG4gICAgaWdub3JlTm9TdGFja3M6IGNvbmZpZy5kZXBsb3k/Lmlnbm9yZU5vU3RhY2tzLFxuICB9O1xuICBjb25zdCByb2xsYmFja09wdGlvbnMgPSB7XG4gICAgYWxsOiBjb25maWcucm9sbGJhY2s/LmFsbCxcbiAgICB0b29sa2l0U3RhY2tOYW1lOiBjb25maWcucm9sbGJhY2s/LnRvb2xraXRTdGFja05hbWUsXG4gICAgZm9yY2U6IGNvbmZpZy5yb2xsYmFjaz8uZm9yY2UsXG4gICAgdmFsaWRhdGVCb290c3RyYXBWZXJzaW9uOiBjb25maWcucm9sbGJhY2s/LnZhbGlkYXRlQm9vdHN0cmFwVmVyc2lvbixcbiAgICBvcnBoYW46IGNvbmZpZy5yb2xsYmFjaz8ub3JwaGFuLFxuICB9O1xuICBjb25zdCBpbXBvcnRPcHRpb25zID0ge1xuICAgIGV4ZWN1dGU6IGNvbmZpZy5pbXBvcnQ/LmV4ZWN1dGUsXG4gICAgY2hhbmdlU2V0TmFtZTogY29uZmlnLmltcG9ydD8uY2hhbmdlU2V0TmFtZSxcbiAgICB0b29sa2l0U3RhY2tOYW1lOiBjb25maWcuaW1wb3J0Py50b29sa2l0U3RhY2tOYW1lLFxuICAgIHJvbGxiYWNrOiBjb25maWcuaW1wb3J0Py5yb2xsYmFjayxcbiAgICBmb3JjZTogY29uZmlnLmltcG9ydD8uZm9yY2UsXG4gICAgcmVjb3JkUmVzb3VyY2VNYXBwaW5nOiBjb25maWcuaW1wb3J0Py5yZWNvcmRSZXNvdXJjZU1hcHBpbmcsXG4gICAgcmVzb3VyY2VNYXBwaW5nOiBjb25maWcuaW1wb3J0Py5yZXNvdXJjZU1hcHBpbmcsXG4gIH07XG4gIGNvbnN0IHdhdGNoT3B0aW9ucyA9IHtcbiAgICBidWlsZEV4Y2x1ZGU6IGNvbmZpZy53YXRjaD8uYnVpbGRFeGNsdWRlLFxuICAgIGV4Y2x1c2l2ZWx5OiBjb25maWcud2F0Y2g/LmV4Y2x1c2l2ZWx5LFxuICAgIGNoYW5nZVNldE5hbWU6IGNvbmZpZy53YXRjaD8uY2hhbmdlU2V0TmFtZSxcbiAgICBmb3JjZTogY29uZmlnLndhdGNoPy5mb3JjZSxcbiAgICB0b29sa2l0U3RhY2tOYW1lOiBjb25maWcud2F0Y2g/LnRvb2xraXRTdGFja05hbWUsXG4gICAgcHJvZ3Jlc3M6IGNvbmZpZy53YXRjaD8ucHJvZ3Jlc3MsXG4gICAgcm9sbGJhY2s6IGNvbmZpZy53YXRjaD8ucm9sbGJhY2ssXG4gICAgaG90c3dhcDogY29uZmlnLndhdGNoPy5ob3Rzd2FwLFxuICAgIGhvdHN3YXBGYWxsYmFjazogY29uZmlnLndhdGNoPy5ob3Rzd2FwRmFsbGJhY2ssXG4gICAgbG9nczogY29uZmlnLndhdGNoPy5sb2dzLFxuICAgIGNvbmN1cnJlbmN5OiBjb25maWcud2F0Y2g/LmNvbmN1cnJlbmN5LFxuICB9O1xuICBjb25zdCBkZXN0cm95T3B0aW9ucyA9IHtcbiAgICBhbGw6IGNvbmZpZy5kZXN0cm95Py5hbGwsXG4gICAgZXhjbHVzaXZlbHk6IGNvbmZpZy5kZXN0cm95Py5leGNsdXNpdmVseSxcbiAgICBmb3JjZTogY29uZmlnLmRlc3Ryb3k/LmZvcmNlLFxuICB9O1xuICBjb25zdCBkaWZmT3B0aW9ucyA9IHtcbiAgICBleGNsdXNpdmVseTogY29uZmlnLmRpZmY/LmV4Y2x1c2l2ZWx5LFxuICAgIGNvbnRleHRMaW5lczogY29uZmlnLmRpZmY/LmNvbnRleHRMaW5lcyxcbiAgICB0ZW1wbGF0ZTogY29uZmlnLmRpZmY/LnRlbXBsYXRlLFxuICAgIHN0cmljdDogY29uZmlnLmRpZmY/LnN0cmljdCxcbiAgICBzZWN1cml0eU9ubHk6IGNvbmZpZy5kaWZmPy5zZWN1cml0eU9ubHksXG4gICAgZmFpbDogY29uZmlnLmRpZmY/LmZhaWwsXG4gICAgcHJvY2Vzc2VkOiBjb25maWcuZGlmZj8ucHJvY2Vzc2VkLFxuICAgIHF1aWV0OiBjb25maWcuZGlmZj8ucXVpZXQsXG4gICAgY2hhbmdlU2V0OiBjb25maWcuZGlmZj8uY2hhbmdlU2V0LFxuICB9O1xuICBjb25zdCBtZXRhZGF0YU9wdGlvbnMgPSB7fTtcbiAgY29uc3QgYWNrbm93bGVkZ2VPcHRpb25zID0ge307XG4gIGNvbnN0IG5vdGljZXNPcHRpb25zID0ge1xuICAgIHVuYWNrbm93bGVkZ2VkOiBjb25maWcubm90aWNlcz8udW5hY2tub3dsZWRnZWQsXG4gIH07XG4gIGNvbnN0IGluaXRPcHRpb25zID0ge1xuICAgIGxhbmd1YWdlOiBjb25maWcuaW5pdD8ubGFuZ3VhZ2UsXG4gICAgbGlzdDogY29uZmlnLmluaXQ/Lmxpc3QsXG4gICAgZ2VuZXJhdGVPbmx5OiBjb25maWcuaW5pdD8uZ2VuZXJhdGVPbmx5LFxuICAgIGxpYlZlcnNpb246IGNvbmZpZy5pbml0Py5saWJWZXJzaW9uLFxuICB9O1xuICBjb25zdCBtaWdyYXRlT3B0aW9ucyA9IHtcbiAgICBzdGFja05hbWU6IGNvbmZpZy5taWdyYXRlPy5zdGFja05hbWUsXG4gICAgbGFuZ3VhZ2U6IGNvbmZpZy5taWdyYXRlPy5sYW5ndWFnZSxcbiAgICBhY2NvdW50OiBjb25maWcubWlncmF0ZT8uYWNjb3VudCxcbiAgICByZWdpb246IGNvbmZpZy5taWdyYXRlPy5yZWdpb24sXG4gICAgZnJvbVBhdGg6IGNvbmZpZy5taWdyYXRlPy5mcm9tUGF0aCxcbiAgICBmcm9tU3RhY2s6IGNvbmZpZy5taWdyYXRlPy5mcm9tU3RhY2ssXG4gICAgb3V0cHV0UGF0aDogY29uZmlnLm1pZ3JhdGU/Lm91dHB1dFBhdGgsXG4gICAgZnJvbVNjYW46IGNvbmZpZy5taWdyYXRlPy5mcm9tU2NhbixcbiAgICBmaWx0ZXI6IGNvbmZpZy5taWdyYXRlPy5maWx0ZXIsXG4gICAgY29tcHJlc3M6IGNvbmZpZy5taWdyYXRlPy5jb21wcmVzcyxcbiAgfTtcbiAgY29uc3QgY29udGV4dE9wdGlvbnMgPSB7XG4gICAgcmVzZXQ6IGNvbmZpZy5jb250ZXh0Py5yZXNldCxcbiAgICBmb3JjZTogY29uZmlnLmNvbnRleHQ/LmZvcmNlLFxuICAgIGNsZWFyOiBjb25maWcuY29udGV4dD8uY2xlYXIsXG4gIH07XG4gIGNvbnN0IGRvY3NPcHRpb25zID0ge1xuICAgIGJyb3dzZXI6IGNvbmZpZy5kb2NzPy5icm93c2VyLFxuICB9O1xuICBjb25zdCBkb2N0b3JPcHRpb25zID0ge307XG4gIGNvbnN0IHVzZXJJbnB1dDogVXNlcklucHV0ID0ge1xuICAgIGdsb2JhbE9wdGlvbnMsXG4gICAgbGlzdDogbGlzdE9wdGlvbnMsXG4gICAgc3ludGg6IHN5bnRoT3B0aW9ucyxcbiAgICBib290c3RyYXA6IGJvb3RzdHJhcE9wdGlvbnMsXG4gICAgZ2M6IGdjT3B0aW9ucyxcbiAgICBkZXBsb3k6IGRlcGxveU9wdGlvbnMsXG4gICAgcm9sbGJhY2s6IHJvbGxiYWNrT3B0aW9ucyxcbiAgICBpbXBvcnQ6IGltcG9ydE9wdGlvbnMsXG4gICAgd2F0Y2g6IHdhdGNoT3B0aW9ucyxcbiAgICBkZXN0cm95OiBkZXN0cm95T3B0aW9ucyxcbiAgICBkaWZmOiBkaWZmT3B0aW9ucyxcbiAgICBtZXRhZGF0YTogbWV0YWRhdGFPcHRpb25zLFxuICAgIGFja25vd2xlZGdlOiBhY2tub3dsZWRnZU9wdGlvbnMsXG4gICAgbm90aWNlczogbm90aWNlc09wdGlvbnMsXG4gICAgaW5pdDogaW5pdE9wdGlvbnMsXG4gICAgbWlncmF0ZTogbWlncmF0ZU9wdGlvbnMsXG4gICAgY29udGV4dDogY29udGV4dE9wdGlvbnMsXG4gICAgZG9jczogZG9jc09wdGlvbnMsXG4gICAgZG9jdG9yOiBkb2N0b3JPcHRpb25zLFxuICB9O1xuXG4gIHJldHVybiB1c2VySW5wdXQ7XG59XG4iXX0=
|
|
436
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydC10by11c2VyLWlucHV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY29udmVydC10by11c2VyLWlucHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBU0EsMERBNFBDO0FBR0QsNERBaU1DO0FBamNELG9CQUFvQjtBQUNwQixTQUFnQix1QkFBdUIsQ0FBQyxJQUFTO0lBQy9DLE1BQU0sYUFBYSxHQUFrQjtRQUNuQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7UUFDYixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7UUFDakIsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1FBQ3JCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtRQUNuQixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7UUFDakIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1FBQ25CLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztRQUNyQixZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7UUFDL0IsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1FBQ2YsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1FBQ3JCLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztRQUNqQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87UUFDckIsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1FBQ2pCLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtRQUMvQixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7UUFDdkIsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLGdCQUFnQjtRQUN2QyxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7UUFDL0IsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1FBQ2pDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztRQUNyQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87UUFDckIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1FBQ25CLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztR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UUFDckIsS0FBSyxFQUFFLE9BQUEsTUFBTSxDQUFDLE9BQU8sNENBQUUsS0FBSztRQUM1QixLQUFLLEVBQUUsT0FBQSxNQUFNLENBQUMsT0FBTyw0Q0FBRSxLQUFLO1FBQzVCLEtBQUssRUFBRSxPQUFBLE1BQU0sQ0FBQyxPQUFPLDRDQUFFLEtBQUs7S0FDN0IsQ0FBQztJQUNGLE1BQU0sV0FBVyxHQUFHO1FBQ2xCLE9BQU8sRUFBRSxPQUFBLE1BQU0sQ0FBQyxJQUFJLDRDQUFFLE9BQU87S0FDOUIsQ0FBQztJQUNGLE1BQU0sYUFBYSxHQUFHLEVBQUUsQ0FBQztJQUN6QixNQUFNLFNBQVMsR0FBYztRQUMzQixhQUFhO1FBQ2IsSUFBSSxFQUFFLFdBQVc7UUFDakIsS0FBSyxFQUFFLFlBQVk7UUFDbkIsU0FBUyxFQUFFLGdCQUFnQjtRQUMzQixFQUFFLEVBQUUsU0FBUztRQUNiLE1BQU0sRUFBRSxhQUFhO1FBQ3JCLFFBQVEsRUFBRSxlQUFlO1FBQ3pCLE1BQU0sRUFBRSxhQUFhO1FBQ3JCLEtBQUssRUFBRSxZQUFZO1FBQ25CLE9BQU8sRUFBRSxjQUFjO1FBQ3ZCLElBQUksRUFBRSxXQUFXO1FBQ2pCLFFBQVEsRUFBRSxlQUFlO1FBQ3pCLFdBQVcsRUFBRSxrQkFBa0I7UUFDL0IsT0FBTyxFQUFFLGNBQWM7UUFDdkIsSUFBSSxFQUFFLFdBQVc7UUFDakIsT0FBTyxFQUFFLGNBQWM7UUFDdkIsT0FBTyxFQUFFLGNBQWM7UUFDdkIsSUFBSSxFQUFFLFdBQVc7UUFDakIsTUFBTSxFQUFFLGFBQWE7S0FDdEIsQ0FBQztJQUVGLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBHRU5FUkFURUQgRlJPTSBwYWNrYWdlcy9hd3MtY2RrL2xpYi9jbGkvY2xpLWNvbmZpZy50cy5cbi8vIERvIG5vdCBlZGl0IGJ5IGhhbmQ7IGFsbCBjaGFuZ2VzIHdpbGwgYmUgb3ZlcndyaXR0ZW4gYXQgYnVpbGQgdGltZSBmcm9tIHRoZSBjb25maWcgZmlsZS5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8qIGVzbGludC1kaXNhYmxlIEBzdHlsaXN0aWMvbWF4LWxlbiwgQHR5cGVzY3JpcHQtZXNsaW50L2NvbnNpc3RlbnQtdHlwZS1pbXBvcnRzICovXG5pbXBvcnQgeyBDb21tYW5kIH0gZnJvbSAnLi91c2VyLWNvbmZpZ3VyYXRpb24nO1xuaW1wb3J0IHsgVXNlcklucHV0LCBHbG9iYWxPcHRpb25zIH0gZnJvbSAnLi91c2VyLWlucHV0JztcblxuLy8gQHRzLWlnbm9yZSBUUzYxMzNcbmV4cG9ydCBmdW5jdGlvbiBjb252ZXJ0WWFyZ3NUb1VzZXJJbnB1dChhcmdzOiBhbnkpOiBVc2VySW5wdXQge1xuICBjb25zdCBnbG9iYWxPcHRpb25zOiBHbG9iYWxPcHRpb25zID0ge1xuICAgIGFwcDogYXJncy5hcHAsXG4gICAgYnVpbGQ6IGFyZ3MuYnVpbGQsXG4gICAgY29udGV4dDogYXJncy5jb250ZXh0LFxuICAgIHBsdWdpbjogYXJncy5wbHVnaW4sXG4gICAgdHJhY2U6IGFyZ3MudHJhY2UsXG4gICAgc3RyaWN0OiBhcmdzLnN0cmljdCxcbiAgICBsb29rdXBzOiBhcmdzLmxvb2t1cHMsXG4gICAgaWdub3JlRXJyb3JzOiBhcmdzLmlnbm9yZUVycm9ycyxcbiAgICBqc29uOiBhcmdzLmpzb24sXG4gICAgdmVyYm9zZTogYXJncy52ZXJib3NlLFxuICAgIGRlYnVnOiBhcmdzLmRlYnVnLFxuICAgIHByb2ZpbGU6IGFyZ3MucHJvZmlsZSxcbiAgICBwcm94eTogYXJncy5wcm94eSxcbiAgICBjYUJ1bmRsZVBhdGg6IGFyZ3MuY2FCdW5kbGVQYXRoLFxuICAgIGVjMmNyZWRzOiBhcmdzLmVjMmNyZWRzLFxuICAgIHZlcnNpb25SZXBvcnRpbmc6IGFyZ3MudmVyc2lvblJlcG9ydGluZyxcbiAgICBwYXRoTWV0YWRhdGE6IGFyZ3MucGF0aE1ldGFkYXRhLFxuICAgIGFzc2V0TWV0YWRhdGE6IGFyZ3MuYXNzZXRNZXRhZGF0YSxcbiAgICByb2xlQXJuOiBhcmdzLnJvbGVBcm4sXG4gICAgc3RhZ2luZzogYXJncy5zdGFnaW5nLFxuICAgIG91dHB1dDogYXJncy5vdXRwdXQsXG4gICAgbm90aWNlczogYXJncy5ub3RpY2VzLFxuICAgIG5vQ29sb3I6IGFyZ3Mubm9Db2xvcixcbiAgICBjaTogYXJncy5jaSxcbiAgICB1bnN0YWJsZTogYXJncy51bnN0YWJsZSxcbiAgfTtcbiAgbGV0IGNvbW1hbmRPcHRpb25zO1xuICBzd2l0Y2ggKGFyZ3MuX1swXSBhcyBDb21tYW5kKSB7XG4gICAgY2FzZSAnbGlzdCc6XG4gICAgY2FzZSAnbHMnOlxuICAgICAgY29tbWFuZE9wdGlvbnMgPSB7XG4gICAgICAgIGxvbmc6IGFyZ3MubG9uZyxcbiAgICAgICAgc2hvd0RlcGVuZGVuY2llczogYXJncy5zaG93RGVwZW5kZW5jaWVzLFxuICAgICAgICBTVEFDS1M6IGFyZ3MuU1RBQ0tTLFxuICAgICAgfTtcbiAgICAgIGJyZWFrO1xuXG4gICAgY2FzZSAnc3ludGgnOlxuICAgIGNhc2UgJ3N5bnRoZXNpemUnOlxuICAgICAgY29tbWFuZE9wdGlvbnMgPSB7XG4gICAgICAgIGV4Y2x1c2l2ZWx5OiBhcmdzLmV4Y2x1c2l2ZWx5LFxuICAgICAgICB2YWxpZGF0aW9uOiBhcmdzLnZhbGlkYXRpb24sXG4gICAgICAgIHF1aWV0OiBhcmdzLnF1aWV0LFxuICAgICAgICBTVEFDS1M6IGFyZ3MuU1RBQ0tTLFxuICAgICAgfTtcbiAgICAgIGJyZWFrO1xuXG4gICAgY2FzZSAnYm9vdHN0cmFwJzpcbiAgICAgIGNvbW1hbmRPcHRpb25zID0ge1xuICAgICAgICBib290c3RyYXBCdWNrZXROYW1lOiBhcmdzLmJvb3RzdHJhcEJ1Y2tldE5hbWUsXG4gICAgICAgIGJvb3RzdHJhcEttc0tleUlkOiBhcmdzLmJvb3RzdHJhcEttc0tleUlkLFxuICAgICAgICBleGFtcGxlUGVybWlzc2lvbnNCb3VuZGFyeTogYXJncy5leGFtcGxlUGVybWlzc2lvbnNCb3VuZGFyeSxcbiAgICAgICAgY3VzdG9tUGVybWlzc2lvbnNCb3VuZGFyeTogYXJncy5jdXN0b21QZXJtaXNzaW9uc0JvdW5kYXJ5LFxuICAgICAgICBib290c3RyYXBDdXN0b21lcktleTogYXJncy5ib290c3RyYXBDdXN0b21lcktleSxcbiAgICAgICAgcXVhbGlmaWVyOiBhcmdzLnF1YWxpZmllcixcbiAgICAgICAgcHVibGljQWNjZXNzQmxvY2tDb25maWd1cmF0aW9uOiBhcmdzLnB1YmxpY0FjY2Vzc0Jsb2NrQ29uZmlndXJhdGlvbixcbiAgICAgICAgdGFnczogYXJncy50YWdzLFxuICAgICAgICBleGVjdXRlOiBhcmdzLmV4ZWN1dGUsXG4gICAgICAgIHRydXN0OiBhcmdzLnRydXN0LFxuICAgICAgICB0cnVzdEZvckxvb2t1cDogYXJncy50cnVzdEZvckxvb2t1cCxcbiAgICAgICAgdW50cnVzdDogYXJncy51bnRydXN0LFxuICAgICAgICBjbG91ZGZvcm1hdGlvbkV4ZWN1dGlvblBvbGljaWVzOiBhcmdzLmNsb3VkZm9ybWF0aW9uRXhlY3V0aW9uUG9saWNpZXMsXG4gICAgICAgIGZvcmNlOiBhcmdzLmZvcmNlLFxuICAgICAgICB0ZXJtaW5hdGlvblByb3RlY3Rpb246IGFyZ3MudGVybWluYXRpb25Qcm90ZWN0aW9uLFxuICAgICAgICBzaG93VGVtcGxhdGU6IGFyZ3Muc2hvd1RlbXBsYXRlLFxuICAgICAgICB0b29sa2l0U3RhY2tOYW1lOiBhcmdzLnRvb2xraXRTdGFja05hbWUsXG4gICAgICAgIHRlbXBsYXRlOiBhcmdzLnRlbXBsYXRlLFxuICAgICAgICBwcmV2aW91c1BhcmFtZXRlcnM6IGFyZ3MucHJldmlvdXNQYXJhbWV0ZXJzLFxuICAgICAgICBFTlZJUk9OTUVOVFM6IGFyZ3MuRU5WSVJPTk1FTlRTLFxuICAgICAgfTtcbiAgICAgIGJyZWFrO1xuXG4gICAgY2FzZSAnZ2MnOlxuICAgICAgY29tbWFuZE9wdGlvbnMgPSB7XG4gICAgICAgIGFjdGlvbjogYXJncy5hY3Rpb24sXG4gICAgICAgIHR5cGU6IGFyZ3MudHlwZSxcbiAgICAgICAgcm9sbGJhY2tCdWZmZXJEYXlzOiBhcmdzLnJvbGxiYWNrQnVmZmVyRGF5cyxcbiAgICAgICAgY3JlYXRlZEJ1ZmZlckRheXM6IGFyZ3MuY3JlYXRlZEJ1ZmZlckRheXMsXG4gICAgICAgIGNvbmZpcm06IGFyZ3MuY29uZmlybSxcbiAgICAgICAgYm9vdHN0cmFwU3RhY2tOYW1lOiBhcmdzLmJvb3RzdHJhcFN0YWNrTmFtZSxcbiAgICAgICAgRU5WSVJPTk1FTlRTOiBhcmdzLkVOVklST05NRU5UUyxcbiAgICAgIH07XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ2RlcGxveSc6XG4gICAgICBjb21tYW5kT3B0aW9ucyA9IHtcbiAgICAgICAgYWxsOiBhcmdzLmFsbCxcbiAgICAgICAgYnVpbGRFeGNsdWRlOiBhcmdzLmJ1aWxkRXhjbHVkZSxcbiAgICAgICAgZXhjbHVzaXZlbHk6IGFyZ3MuZXhjbHVzaXZlbHksXG4gICAgICAgIHJlcXVpcmVBcHByb3ZhbDogYXJncy5yZXF1aXJlQXBwcm92YWwsXG4gICAgICAgIG5vdGlmaWNhdGlvbkFybnM6IGFyZ3Mubm90aWZpY2F0aW9uQXJucyxcbiAgICAgICAgdGFnczogYXJncy50YWdzLFxuICAgICAgICBleGVjdXRlOiBhcmdzLmV4ZWN1dGUsXG4gICAgICAgIGNoYW5nZVNldE5hbWU6IGFyZ3MuY2hhbmdlU2V0TmFtZSxcbiAgICAgICAgbWV0aG9kOiBhcmdzLm1ldGhvZCxcbiAgICAgICAgaW1wb3J0RXhpc3RpbmdSZXNvdXJjZXM6IGFyZ3MuaW1wb3J0RXhpc3RpbmdSZXNvdXJjZXMsXG4gICAgICAgIGZvcmNlOiBhcmdzLmZvcmNlLFxuICAgICAgICBwYXJhbWV0ZXJzOiBhcmdzLnBhcmFtZXRlcnMsXG4gICAgICAgIG91dHB1dHNGaWxlOiBhcmdzLm91dHB1dHNGaWxlLFxuICAgICAgICBwcmV2aW91c1BhcmFtZXRlcnM6IGFyZ3MucHJldmlvdXNQYXJhbWV0ZXJzLFxuICAgICAgICB0b29sa2l0U3RhY2tOYW1lOiBhcmdzLnRvb2xraXRTdGFja05hbWUsXG4gICAgICAgIHByb2dyZXNzOiBhcmdzLnByb2dyZXNzLFxuICAgICAgICByb2xsYmFjazogYXJncy5yb2xsYmFjayxcbiAgICAgICAgaG90c3dhcDogYXJncy5ob3Rzd2FwLFxuICAgICAgICBob3Rzd2FwRmFsbGJhY2s6IGFyZ3MuaG90c3dhcEZhbGxiYWNrLFxuICAgICAgICB3YXRjaDogYXJncy53YXRjaCxcbiAgICAgICAgbG9nczogYXJncy5sb2dzLFxuICAgICAgICBjb25jdXJyZW5jeTogYXJncy5jb25jdXJyZW5jeSxcbiAgICAgICAgYXNzZXRQYXJhbGxlbGlzbTogYXJncy5hc3NldFBhcmFsbGVsaXNtLFxuICAgICAgICBhc3NldFByZWJ1aWxkOiBhcmdzLmFzc2V0UHJlYnVpbGQsXG4gICAgICAgIGlnbm9yZU5vU3RhY2tzOiBhcmdzLmlnbm9yZU5vU3RhY2tzLFxuICAgICAgICBTVEFDS1M6IGFyZ3MuU1RBQ0tTLFxuICAgICAgfTtcbiAgICAgIGJyZWFrO1xuXG4gICAgY2FzZSAncm9sbGJhY2snOlxuICAgICAgY29tbWFuZE9wdGlvbnMgPSB7XG4gICAgICAgIGFsbDogYXJncy5hbGwsXG4gICAgICAgIHRvb2xraXRTdGFja05hbWU6IGFyZ3MudG9vbGtpdFN0YWNrTmFtZSxcbiAgICAgICAgZm9yY2U6IGFyZ3MuZm9yY2UsXG4gICAgICAgIHZhbGlkYXRlQm9vdHN0cmFwVmVyc2lvbjogYXJncy52YWxpZGF0ZUJvb3RzdHJhcFZlcnNpb24sXG4gICAgICAgIG9ycGhhbjogYXJncy5vcnBoYW4sXG4gICAgICAgIFNUQUNLUzogYXJncy5TVEFDS1MsXG4gICAgICB9O1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlICdpbXBvcnQnOlxuICAgICAgY29tbWFuZE9wdGlvbnMgPSB7XG4gICAgICAgIGV4ZWN1dGU6IGFyZ3MuZXhlY3V0ZSxcbiAgICAgICAgY2hhbmdlU2V0TmFtZTogYXJncy5jaGFuZ2VTZXROYW1lLFxuICAgICAgICB0b29sa2l0U3RhY2tOYW1lOiBhcmdzLnRvb2xraXRTdGFja05hbWUsXG4gICAgICAgIHJvbGxiYWNrOiBhcmdzLnJvbGxiYWNrLFxuICAgICAgICBmb3JjZTogYXJncy5mb3JjZSxcbiAgICAgICAgcmVjb3JkUmVzb3VyY2VNYXBwaW5nOiBhcmdzLnJlY29yZFJlc291cmNlTWFwcGluZyxcbiAgICAgICAgcmVzb3VyY2VNYXBwaW5nOiBhcmdzLnJlc291cmNlTWFwcGluZyxcbiAgICAgICAgU1RBQ0s6IGFyZ3MuU1RBQ0ssXG4gICAgICB9O1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlICd3YXRjaCc6XG4gICAgICBjb21tYW5kT3B0aW9ucyA9IHtcbiAgICAgICAgYnVpbGRFeGNsdWRlOiBhcmdzLmJ1aWxkRXhjbHVkZSxcbiAgICAgICAgZXhjbHVzaXZlbHk6IGFyZ3MuZXhjbHVzaXZlbHksXG4gICAgICAgIGNoYW5nZVNldE5hbWU6IGFyZ3MuY2hhbmdlU2V0TmFtZSxcbiAgICAgICAgZm9yY2U6IGFyZ3MuZm9yY2UsXG4gICAgICAgIHRvb2xraXRTdGFja05hbWU6IGFyZ3MudG9vbGtpdFN0YWNrTmFtZSxcbiAgICAgICAgcHJvZ3Jlc3M6IGFyZ3MucHJvZ3Jlc3MsXG4gICAgICAgIHJvbGxiYWNrOiBhcmdzLnJvbGxiYWNrLFxuICAgICAgICBob3Rzd2FwOiBhcmdzLmhvdHN3YXAsXG4gICAgICAgIGhvdHN3YXBGYWxsYmFjazogYXJncy5ob3Rzd2FwRmFsbGJhY2ssXG4gICAgICAgIGxvZ3M6IGFyZ3MubG9ncyxcbiAgICAgICAgY29uY3VycmVuY3k6IGFyZ3MuY29uY3VycmVuY3ksXG4gICAgICAgIFNUQUNLUzogYXJncy5TVEFDS1MsXG4gICAgICB9O1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlICdkZXN0cm95JzpcbiAgICAgIGNvbW1hbmRPcHRpb25zID0ge1xuICAgICAgICBhbGw6IGFyZ3MuYWxsLFxuICAgICAgICBleGNsdXNpdmVseTogYXJncy5leGNsdXNpdmVseSxcbiAgICAgICAgZm9yY2U6IGFyZ3MuZm9yY2UsXG4gICAgICAgIFNUQUNLUzogYXJncy5TVEFDS1MsXG4gICAgICB9O1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlICdkaWZmJzpcbiAgICAgIGNvbW1hbmRPcHRpb25zID0ge1xuICAgICAgICBleGNsdXNpdmVseTogYXJncy5leGNsdXNpdmVseSxcbiAgICAgICAgY29udGV4dExpbmVzOiBhcmdzLmNvbnRleHRMaW5lcyxcbiAgICAgICAgdGVtcGxhdGU6IGFyZ3MudGVtcGxhdGUsXG4gICAgICAgIHN0cmljdDogYXJncy5zdHJpY3QsXG4gICAgICAgIHNlY3VyaXR5T25seTogYXJncy5zZWN1cml0eU9ubHksXG4gICAgICAgIGZhaWw6IGFyZ3MuZmFpbCxcbiAgICAgICAgcHJvY2Vzc2VkOiBhcmdzLnByb2Nlc3NlZCxcbiAgICAgICAgcXVpZXQ6IGFyZ3MucXVpZXQsXG4gICAgICAgIGNoYW5nZVNldDogYXJncy5jaGFuZ2VTZXQsXG4gICAgICAgIFNUQUNLUzogYXJncy5TVEFDS1MsXG4gICAgICB9O1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlICdtZXRhZGF0YSc6XG4gICAgICBjb21tYW5kT3B0aW9ucyA9IHtcbiAgICAgICAgU1RBQ0s6IGFyZ3MuU1RBQ0ssXG4gICAgICB9O1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlICdhY2tub3dsZWRnZSc6XG4gICAgY2FzZSAnYWNrJzpcbiAgICAgIGNvbW1hbmRPcHRpb25zID0ge1xuICAgICAgICBJRDogYXJncy5JRCxcbiAgICAgIH07XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ25vdGljZXMnOlxuICAgICAgY29tbWFuZE9wdGlvbnMgPSB7XG4gICAgICAgIHVuYWNrbm93bGVkZ2VkOiBhcmdzLnVuYWNrbm93bGVkZ2VkLFxuICAgICAgfTtcbiAgICAgIGJyZWFrO1xuXG4gICAgY2FzZSAnaW5pdCc6XG4gICAgICBjb21tYW5kT3B0aW9ucyA9IHtcbiAgICAgICAgbGFuZ3VhZ2U6IGFyZ3MubGFuZ3VhZ2UsXG4gICAgICAgIGxpc3Q6IGFyZ3MubGlzdCxcbiAgICAgICAgZ2VuZXJhdGVPbmx5OiBhcmdzLmdlbmVyYXRlT25seSxcbiAgICAgICAgbGliVmVyc2lvbjogYXJncy5saWJWZXJzaW9uLFxuICAgICAgICBURU1QTEFURTogYXJncy5URU1QTEFURSxcbiAgICAgIH07XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ21pZ3JhdGUnOlxuICAgICAgY29tbWFuZE9wdGlvbnMgPSB7XG4gICAgICAgIHN0YWNrTmFtZTogYXJncy5zdGFja05hbWUsXG4gICAgICAgIGxhbmd1YWdlOiBhcmdzLmxhbmd1YWdlLFxuICAgICAgICBhY2NvdW50OiBhcmdzLmFjY291bnQsXG4gICAgICAgIHJlZ2lvbjogYXJncy5yZWdpb24sXG4gICAgICAgIGZyb21QYXRoOiBhcmdzLmZyb21QYXRoLFxuICAgICAgICBmcm9tU3RhY2s6IGFyZ3MuZnJvbVN0YWNrLFxuICAgICAgICBvdXRwdXRQYXRoOiBhcmdzLm91dHB1dFBhdGgsXG4gICAgICAgIGZyb21TY2FuOiBhcmdzLmZyb21TY2FuLFxuICAgICAgICBmaWx0ZXI6IGFyZ3MuZmlsdGVyLFxuICAgICAgICBjb21wcmVzczogYXJncy5jb21wcmVzcyxcbiAgICAgIH07XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ2NvbnRleHQnOlxuICAgICAgY29tbWFuZE9wdGlvbnMgPSB7XG4gICAgICAgIHJlc2V0OiBhcmdzLnJlc2V0LFxuICAgICAgICBmb3JjZTogYXJncy5mb3JjZSxcbiAgICAgICAgY2xlYXI6IGFyZ3MuY2xlYXIsXG4gICAgICB9O1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlICdkb2NzJzpcbiAgICBjYXNlICdkb2MnOlxuICAgICAgY29tbWFuZE9wdGlvbnMgPSB7XG4gICAgICAgIGJyb3dzZXI6IGFyZ3MuYnJvd3NlcixcbiAgICAgIH07XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ2RvY3Rvcic6XG4gICAgICBjb21tYW5kT3B0aW9ucyA9IHt9O1xuICAgICAgYnJlYWs7XG4gIH1cbiAgY29uc3QgdXNlcklucHV0OiBVc2VySW5wdXQgPSB7XG4gICAgY29tbWFuZDogYXJncy5fWzBdLFxuICAgIGdsb2JhbE9wdGlvbnMsXG4gICAgW2FyZ3MuX1swXV06IGNvbW1hbmRPcHRpb25zLFxuICB9O1xuXG4gIHJldHVybiB1c2VySW5wdXQ7XG59XG5cbi8vIEB0cy1pZ25vcmUgVFM2MTMzXG5leHBvcnQgZnVuY3Rpb24gY29udmVydENvbmZpZ1RvVXNlcklucHV0KGNvbmZpZzogYW55KTogVXNlcklucHV0IHtcbiAgY29uc3QgZ2xvYmFsT3B0aW9uczogR2xvYmFsT3B0aW9ucyA9IHtcbiAgICBhcHA6IGNvbmZpZy5hcHAsXG4gICAgYnVpbGQ6IGNvbmZpZy5idWlsZCxcbiAgICBjb250ZXh0OiBjb25maWcuY29udGV4dCxcbiAgICBwbHVnaW46IGNvbmZpZy5wbHVnaW4sXG4gICAgdHJhY2U6IGNvbmZpZy50cmFjZSxcbiAgICBzdHJpY3Q6IGNvbmZpZy5zdHJpY3QsXG4gICAgbG9va3VwczogY29uZmlnLmxvb2t1cHMsXG4gICAgaWdub3JlRXJyb3JzOiBjb25maWcuaWdub3JlRXJyb3JzLFxuICAgIGpzb246IGNvbmZpZy5qc29uLFxuICAgIHZlcmJvc2U6IGNvbmZpZy52ZXJib3NlLFxuICAgIGRlYnVnOiBjb25maWcuZGVidWcsXG4gICAgcHJvZmlsZTogY29uZmlnLnByb2ZpbGUsXG4gICAgcHJveHk6IGNvbmZpZy5wcm94eSxcbiAgICBjYUJ1bmRsZVBhdGg6IGNvbmZpZy5jYUJ1bmRsZVBhdGgsXG4gICAgZWMyY3JlZHM6IGNvbmZpZy5lYzJjcmVkcyxcbiAgICB2ZXJzaW9uUmVwb3J0aW5nOiBjb25maWcudmVyc2lvblJlcG9ydGluZyxcbiAgICBwYXRoTWV0YWRhdGE6IGNvbmZpZy5wYXRoTWV0YWRhdGEsXG4gICAgYXNzZXRNZXRhZGF0YTogY29uZmlnLmFzc2V0TWV0YWRhdGEsXG4gICAgcm9sZUFybjogY29uZmlnLnJvbGVBcm4sXG4gICAgc3RhZ2luZzogY29uZmlnLnN0YWdpbmcsXG4gICAgb3V0cHV0OiBjb25maWcub3V0cHV0LFxuICAgIG5vdGljZXM6IGNvbmZpZy5ub3RpY2VzLFxuICAgIG5vQ29sb3I6IGNvbmZpZy5ub0NvbG9yLFxuICAgIGNpOiBjb25maWcuY2ksXG4gICAgdW5zdGFibGU6IGNvbmZpZy51bnN0YWJsZSxcbiAgfTtcbiAgY29uc3QgbGlzdE9wdGlvbnMgPSB7XG4gICAgbG9uZzogY29uZmlnLmxpc3Q/LmxvbmcsXG4gICAgc2hvd0RlcGVuZGVuY2llczogY29uZmlnLmxpc3Q/LnNob3dEZXBlbmRlbmNpZXMsXG4gIH07XG4gIGNvbnN0IHN5bnRoT3B0aW9ucyA9IHtcbiAgICBleGNsdXNpdmVseTogY29uZmlnLnN5bnRoPy5leGNsdXNpdmVseSxcbiAgICB2YWxpZGF0aW9uOiBjb25maWcuc3ludGg/LnZhbGlkYXRpb24sXG4gICAgcXVpZXQ6IGNvbmZpZy5zeW50aD8ucXVpZXQsXG4gIH07XG4gIGNvbnN0IGJvb3RzdHJhcE9wdGlvbnMgPSB7XG4gICAgYm9vdHN0cmFwQnVja2V0TmFtZTogY29uZmlnLmJvb3RzdHJhcD8uYm9vdHN0cmFwQnVja2V0TmFtZSxcbiAgICBib290c3RyYXBLbXNLZXlJZDogY29uZmlnLmJvb3RzdHJhcD8uYm9vdHN0cmFwS21zS2V5SWQsXG4gICAgZXhhbXBsZVBlcm1pc3Npb25zQm91bmRhcnk6IGNvbmZpZy5ib290c3RyYXA/LmV4YW1wbGVQZXJtaXNzaW9uc0JvdW5kYXJ5LFxuICAgIGN1c3RvbVBlcm1pc3Npb25zQm91bmRhcnk6IGNvbmZpZy5ib290c3RyYXA/LmN1c3RvbVBlcm1pc3Npb25zQm91bmRhcnksXG4gICAgYm9vdHN0cmFwQ3VzdG9tZXJLZXk6IGNvbmZpZy5ib290c3RyYXA/LmJvb3RzdHJhcEN1c3RvbWVyS2V5LFxuICAgIHF1YWxpZmllcjogY29uZmlnLmJvb3RzdHJhcD8ucXVhbGlmaWVyLFxuICAgIHB1YmxpY0FjY2Vzc0Jsb2NrQ29uZmlndXJhdGlvbjogY29uZmlnLmJvb3RzdHJhcD8ucHVibGljQWNjZXNzQmxvY2tDb25maWd1cmF0aW9uLFxuICAgIHRhZ3M6IGNvbmZpZy5ib290c3RyYXA/LnRhZ3MsXG4gICAgZXhlY3V0ZTogY29uZmlnLmJvb3RzdHJhcD8uZXhlY3V0ZSxcbiAgICB0cnVzdDogY29uZmlnLmJvb3RzdHJhcD8udHJ1c3QsXG4gICAgdHJ1c3RGb3JMb29rdXA6IGNvbmZpZy5ib290c3RyYXA/LnRydXN0Rm9yTG9va3VwLFxuICAgIHVudHJ1c3Q6IGNvbmZpZy5ib290c3RyYXA/LnVudHJ1c3QsXG4gICAgY2xvdWRmb3JtYXRpb25FeGVjdXRpb25Qb2xpY2llczogY29uZmlnLmJvb3RzdHJhcD8uY2xvdWRmb3JtYXRpb25FeGVjdXRpb25Qb2xpY2llcyxcbiAgICBmb3JjZTogY29uZmlnLmJvb3RzdHJhcD8uZm9yY2UsXG4gICAgdGVybWluYXRpb25Qcm90ZWN0aW9uOiBjb25maWcuYm9vdHN0cmFwPy50ZXJtaW5hdGlvblByb3RlY3Rpb24sXG4gICAgc2hvd1RlbXBsYXRlOiBjb25maWcuYm9vdHN0cmFwPy5zaG93VGVtcGxhdGUsXG4gICAgdG9vbGtpdFN0YWNrTmFtZTogY29uZmlnLmJvb3RzdHJhcD8udG9vbGtpdFN0YWNrTmFtZSxcbiAgICB0ZW1wbGF0ZTogY29uZmlnLmJvb3RzdHJhcD8udGVtcGxhdGUsXG4gICAgcHJldmlvdXNQYXJhbWV0ZXJzOiBjb25maWcuYm9vdHN0cmFwPy5wcmV2aW91c1BhcmFtZXRlcnMsXG4gIH07XG4gIGNvbnN0IGdjT3B0aW9ucyA9IHtcbiAgICBhY3Rpb246IGNvbmZpZy5nYz8uYWN0aW9uLFxuICAgIHR5cGU6IGNvbmZpZy5nYz8udHlwZSxcbiAgICByb2xsYmFja0J1ZmZlckRheXM6IGNvbmZpZy5nYz8ucm9sbGJhY2tCdWZmZXJEYXlzLFxuICAgIGNyZWF0ZWRCdWZmZXJEYXlzOiBjb25maWcuZ2M/LmNyZWF0ZWRCdWZmZXJEYXlzLFxuICAgIGNvbmZpcm06IGNvbmZpZy5nYz8uY29uZmlybSxcbiAgICBib290c3RyYXBTdGFja05hbWU6IGNvbmZpZy5nYz8uYm9vdHN0cmFwU3RhY2tOYW1lLFxuICB9O1xuICBjb25zdCBkZXBsb3lPcHRpb25zID0ge1xuICAgIGFsbDogY29uZmlnLmRlcGxveT8uYWxsLFxuICAgIGJ1aWxkRXhjbHVkZTogY29uZmlnLmRlcGxveT8uYnVpbGRFeGNsdWRlLFxuICAgIGV4Y2x1c2l2ZWx5OiBjb25maWcuZGVwbG95Py5leGNsdXNpdmVseSxcbiAgICByZXF1aXJlQXBwcm92YWw6IGNvbmZpZy5kZXBsb3k/LnJlcXVpcmVBcHByb3ZhbCxcbiAgICBub3RpZmljYXRpb25Bcm5zOiBjb25maWcuZGVwbG95Py5ub3RpZmljYXRpb25Bcm5zLFxuICAgIHRhZ3M6IGNvbmZpZy5kZXBsb3k/LnRhZ3MsXG4gICAgZXhlY3V0ZTogY29uZmlnLmRlcGxveT8uZXhlY3V0ZSxcbiAgICBjaGFuZ2VTZXROYW1lOiBjb25maWcuZGVwbG95Py5jaGFuZ2VTZXROYW1lLFxuICAgIG1ldGhvZDogY29uZmlnLmRlcGxveT8ubWV0aG9kLFxuICAgIGltcG9ydEV4aXN0aW5nUmVzb3VyY2VzOiBjb25maWcuZGVwbG95Py5pbXBvcnRFeGlzdGluZ1Jlc291cmNlcyxcbiAgICBmb3JjZTogY29uZmlnLmRlcGxveT8uZm9yY2UsXG4gICAgcGFyYW1ldGVyczogY29uZmlnLmRlcGxveT8ucGFyYW1ldGVycyxcbiAgICBvdXRwdXRzRmlsZTogY29uZmlnLmRlcGxveT8ub3V0cHV0c0ZpbGUsXG4gICAgcHJldmlvdXNQYXJhbWV0ZXJzOiBjb25maWcuZGVwbG95Py5wcmV2aW91c1BhcmFtZXRlcnMsXG4gICAgdG9vbGtpdFN0YWNrTmFtZTogY29uZmlnLmRlcGxveT8udG9vbGtpdFN0YWNrTmFtZSxcbiAgICBwcm9ncmVzczogY29uZmlnLmRlcGxveT8ucHJvZ3Jlc3MsXG4gICAgcm9sbGJhY2s6IGNvbmZpZy5kZXBsb3k/LnJvbGxiYWNrLFxuICAgIGhvdHN3YXA6IGNvbmZpZy5kZXBsb3k/LmhvdHN3YXAsXG4gICAgaG90c3dhcEZhbGxiYWNrOiBjb25maWcuZGVwbG95Py5ob3Rzd2FwRmFsbGJhY2ssXG4gICAgd2F0Y2g6IGNvbmZpZy5kZXBsb3k/LndhdGNoLFxuICAgIGxvZ3M6IGNvbmZpZy5kZXBsb3k/LmxvZ3MsXG4gICAgY29uY3VycmVuY3k6IGNvbmZpZy5kZXBsb3k/LmNvbmN1cnJlbmN5LFxuICAgIGFzc2V0UGFyYWxsZWxpc206IGNvbmZpZy5kZXBsb3k/LmFzc2V0UGFyYWxsZWxpc20sXG4gICAgYXNzZXRQcmVidWlsZDogY29uZmlnLmRlcGxveT8uYXNzZXRQcmVidWlsZCxcbiAgICBpZ25vcmVOb1N0YWNrczogY29uZmlnLmRlcGxveT8uaWdub3JlTm9TdGFja3MsXG4gIH07XG4gIGNvbnN0IHJvbGxiYWNrT3B0aW9ucyA9IHtcbiAgICBhbGw6IGNvbmZpZy5yb2xsYmFjaz8uYWxsLFxuICAgIHRvb2xraXRTdGFja05hbWU6IGNvbmZpZy5yb2xsYmFjaz8udG9vbGtpdFN0YWNrTmFtZSxcbiAgICBmb3JjZTogY29uZmlnLnJvbGxiYWNrPy5mb3JjZSxcbiAgICB2YWxpZGF0ZUJvb3RzdHJhcFZlcnNpb246IGNvbmZpZy5yb2xsYmFjaz8udmFsaWRhdGVCb290c3RyYXBWZXJzaW9uLFxuICAgIG9ycGhhbjogY29uZmlnLnJvbGxiYWNrPy5vcnBoYW4sXG4gIH07XG4gIGNvbnN0IGltcG9ydE9wdGlvbnMgPSB7XG4gICAgZXhlY3V0ZTogY29uZmlnLmltcG9ydD8uZXhlY3V0ZSxcbiAgICBjaGFuZ2VTZXROYW1lOiBjb25maWcuaW1wb3J0Py5jaGFuZ2VTZXROYW1lLFxuICAgIHRvb2xraXRTdGFja05hbWU6IGNvbmZpZy5pbXBvcnQ/LnRvb2xraXRTdGFja05hbWUsXG4gICAgcm9sbGJhY2s6IGNvbmZpZy5pbXBvcnQ/LnJvbGxiYWNrLFxuICAgIGZvcmNlOiBjb25maWcuaW1wb3J0Py5mb3JjZSxcbiAgICByZWNvcmRSZXNvdXJjZU1hcHBpbmc6IGNvbmZpZy5pbXBvcnQ/LnJlY29yZFJlc291cmNlTWFwcGluZyxcbiAgICByZXNvdXJjZU1hcHBpbmc6IGNvbmZpZy5pbXBvcnQ/LnJlc291cmNlTWFwcGluZyxcbiAgfTtcbiAgY29uc3Qgd2F0Y2hPcHRpb25zID0ge1xuICAgIGJ1aWxkRXhjbHVkZTogY29uZmlnLndhdGNoPy5idWlsZEV4Y2x1ZGUsXG4gICAgZXhjbHVzaXZlbHk6IGNvbmZpZy53YXRjaD8uZXhjbHVzaXZlbHksXG4gICAgY2hhbmdlU2V0TmFtZTogY29uZmlnLndhdGNoPy5jaGFuZ2VTZXROYW1lLFxuICAgIGZvcmNlOiBjb25maWcud2F0Y2g/LmZvcmNlLFxuICAgIHRvb2xraXRTdGFja05hbWU6IGNvbmZpZy53YXRjaD8udG9vbGtpdFN0YWNrTmFtZSxcbiAgICBwcm9ncmVzczogY29uZmlnLndhdGNoPy5wcm9ncmVzcyxcbiAgICByb2xsYmFjazogY29uZmlnLndhdGNoPy5yb2xsYmFjayxcbiAgICBob3Rzd2FwOiBjb25maWcud2F0Y2g/LmhvdHN3YXAsXG4gICAgaG90c3dhcEZhbGxiYWNrOiBjb25maWcud2F0Y2g/LmhvdHN3YXBGYWxsYmFjayxcbiAgICBsb2dzOiBjb25maWcud2F0Y2g/LmxvZ3MsXG4gICAgY29uY3VycmVuY3k6IGNvbmZpZy53YXRjaD8uY29uY3VycmVuY3ksXG4gIH07XG4gIGNvbnN0IGRlc3Ryb3lPcHRpb25zID0ge1xuICAgIGFsbDogY29uZmlnLmRlc3Ryb3k/LmFsbCxcbiAgICBleGNsdXNpdmVseTogY29uZmlnLmRlc3Ryb3k/LmV4Y2x1c2l2ZWx5LFxuICAgIGZvcmNlOiBjb25maWcuZGVzdHJveT8uZm9yY2UsXG4gIH07XG4gIGNvbnN0IGRpZmZPcHRpb25zID0ge1xuICAgIGV4Y2x1c2l2ZWx5OiBjb25maWcuZGlmZj8uZXhjbHVzaXZlbHksXG4gICAgY29udGV4dExpbmVzOiBjb25maWcuZGlmZj8uY29udGV4dExpbmVzLFxuICAgIHRlbXBsYXRlOiBjb25maWcuZGlmZj8udGVtcGxhdGUsXG4gICAgc3RyaWN0OiBjb25maWcuZGlmZj8uc3RyaWN0LFxuICAgIHNlY3VyaXR5T25seTogY29uZmlnLmRpZmY/LnNlY3VyaXR5T25seSxcbiAgICBmYWlsOiBjb25maWcuZGlmZj8uZmFpbCxcbiAgICBwcm9jZXNzZWQ6IGNvbmZpZy5kaWZmPy5wcm9jZXNzZWQsXG4gICAgcXVpZXQ6IGNvbmZpZy5kaWZmPy5xdWlldCxcbiAgICBjaGFuZ2VTZXQ6IGNvbmZpZy5kaWZmPy5jaGFuZ2VTZXQsXG4gIH07XG4gIGNvbnN0IG1ldGFkYXRhT3B0aW9ucyA9IHt9O1xuICBjb25zdCBhY2tub3dsZWRnZU9wdGlvbnMgPSB7fTtcbiAgY29uc3Qgbm90aWNlc09wdGlvbnMgPSB7XG4gICAgdW5hY2tub3dsZWRnZWQ6IGNvbmZpZy5ub3RpY2VzPy51bmFja25vd2xlZGdlZCxcbiAgfTtcbiAgY29uc3QgaW5pdE9wdGlvbnMgPSB7XG4gICAgbGFuZ3VhZ2U6IGNvbmZpZy5pbml0Py5sYW5ndWFnZSxcbiAgICBsaXN0OiBjb25maWcuaW5pdD8ubGlzdCxcbiAgICBnZW5lcmF0ZU9ubHk6IGNvbmZpZy5pbml0Py5nZW5lcmF0ZU9ubHksXG4gICAgbGliVmVyc2lvbjogY29uZmlnLmluaXQ/LmxpYlZlcnNpb24sXG4gIH07XG4gIGNvbnN0IG1pZ3JhdGVPcHRpb25zID0ge1xuICAgIHN0YWNrTmFtZTogY29uZmlnLm1pZ3JhdGU/LnN0YWNrTmFtZSxcbiAgICBsYW5ndWFnZTogY29uZmlnLm1pZ3JhdGU/Lmxhbmd1YWdlLFxuICAgIGFjY291bnQ6IGNvbmZpZy5taWdyYXRlPy5hY2NvdW50LFxuICAgIHJlZ2lvbjogY29uZmlnLm1pZ3JhdGU/LnJlZ2lvbixcbiAgICBmcm9tUGF0aDogY29uZmlnLm1pZ3JhdGU/LmZyb21QYXRoLFxuICAgIGZyb21TdGFjazogY29uZmlnLm1pZ3JhdGU/LmZyb21TdGFjayxcbiAgICBvdXRwdXRQYXRoOiBjb25maWcubWlncmF0ZT8ub3V0cHV0UGF0aCxcbiAgICBmcm9tU2NhbjogY29uZmlnLm1pZ3JhdGU/LmZyb21TY2FuLFxuICAgIGZpbHRlcjogY29uZmlnLm1pZ3JhdGU/LmZpbHRlcixcbiAgICBjb21wcmVzczogY29uZmlnLm1pZ3JhdGU/LmNvbXByZXNzLFxuICB9O1xuICBjb25zdCBjb250ZXh0T3B0aW9ucyA9IHtcbiAgICByZXNldDogY29uZmlnLmNvbnRleHQ/LnJlc2V0LFxuICAgIGZvcmNlOiBjb25maWcuY29udGV4dD8uZm9yY2UsXG4gICAgY2xlYXI6IGNvbmZpZy5jb250ZXh0Py5jbGVhcixcbiAgfTtcbiAgY29uc3QgZG9jc09wdGlvbnMgPSB7XG4gICAgYnJvd3NlcjogY29uZmlnLmRvY3M/LmJyb3dzZXIsXG4gIH07XG4gIGNvbnN0IGRvY3Rvck9wdGlvbnMgPSB7fTtcbiAgY29uc3QgdXNlcklucHV0OiBVc2VySW5wdXQgPSB7XG4gICAgZ2xvYmFsT3B0aW9ucyxcbiAgICBsaXN0OiBsaXN0T3B0aW9ucyxcbiAgICBzeW50aDogc3ludGhPcHRpb25zLFxuICAgIGJvb3RzdHJhcDogYm9vdHN0cmFwT3B0aW9ucyxcbiAgICBnYzogZ2NPcHRpb25zLFxuICAgIGRlcGxveTogZGVwbG95T3B0aW9ucyxcbiAgICByb2xsYmFjazogcm9sbGJhY2tPcHRpb25zLFxuICAgIGltcG9ydDogaW1wb3J0T3B0aW9ucyxcbiAgICB3YXRjaDogd2F0Y2hPcHRpb25zLFxuICAgIGRlc3Ryb3k6IGRlc3Ryb3lPcHRpb25zLFxuICAgIGRpZmY6IGRpZmZPcHRpb25zLFxuICAgIG1ldGFkYXRhOiBtZXRhZGF0YU9wdGlvbnMsXG4gICAgYWNrbm93bGVkZ2U6IGFja25vd2xlZGdlT3B0aW9ucyxcbiAgICBub3RpY2VzOiBub3RpY2VzT3B0aW9ucyxcbiAgICBpbml0OiBpbml0T3B0aW9ucyxcbiAgICBtaWdyYXRlOiBtaWdyYXRlT3B0aW9ucyxcbiAgICBjb250ZXh0OiBjb250ZXh0T3B0aW9ucyxcbiAgICBkb2NzOiBkb2NzT3B0aW9ucyxcbiAgICBkb2N0b3I6IGRvY3Rvck9wdGlvbnMsXG4gIH07XG5cbiAgcmV0dXJuIHVzZXJJbnB1dDtcbn1cbiJdfQ==
|
package/lib/cli/messages.d.ts
CHANGED
|
@@ -1,17 +1,19 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { ActionLessMessage } from '../../../@aws-cdk/tmp-toolkit-helpers/src/api/io/private';
|
|
2
|
+
import type { IoMessageCodeCategory } from '../logging';
|
|
3
|
+
import type { IoMessageCode } from '../toolkit/cli-io-host';
|
|
2
4
|
type Optional<T, K extends keyof T> = Pick<Partial<T>, K> & Omit<T, K>;
|
|
3
|
-
type SimplifiedMessage<T> = Omit<
|
|
5
|
+
type SimplifiedMessage<T> = Omit<ActionLessMessage<T>, 'time'>;
|
|
4
6
|
/**
|
|
5
7
|
* Internal helper that processes log inputs into a consistent format.
|
|
6
8
|
* Handles string interpolation, format strings, and object parameter styles.
|
|
7
9
|
* Applies optional styling and prepares the final message for logging.
|
|
8
10
|
*/
|
|
9
|
-
export declare function formatMessage<T>(msg: Optional<SimplifiedMessage<T>, 'code'>, category?: IoMessageCodeCategory):
|
|
11
|
+
export declare function formatMessage<T>(msg: Optional<SimplifiedMessage<T>, 'code'>, category?: IoMessageCodeCategory): ActionLessMessage<T>;
|
|
10
12
|
/**
|
|
11
13
|
* Creates an error level message.
|
|
12
14
|
* Errors must always have a unique code.
|
|
13
15
|
*/
|
|
14
|
-
export declare const error: <T>(
|
|
16
|
+
export declare const error: <T>(message: string, code: IoMessageCode, payload?: T) => ActionLessMessage<T | undefined>;
|
|
15
17
|
/**
|
|
16
18
|
* Creates a result level message and represents the most important message for a given action.
|
|
17
19
|
*
|
|
@@ -19,21 +21,21 @@ export declare const error: <T>(action: ToolkitAction, message: string, code: Io
|
|
|
19
21
|
* However actions that operate on Cloud Assemblies might include a result per Stack.
|
|
20
22
|
* Unlike other messages, results must always have a code and a payload.
|
|
21
23
|
*/
|
|
22
|
-
export declare const result: <T>(
|
|
24
|
+
export declare const result: <T>(message: string, code: IoMessageCode, payload: T) => ActionLessMessage<T>;
|
|
23
25
|
/**
|
|
24
26
|
* Creates a warning level message.
|
|
25
27
|
*/
|
|
26
|
-
export declare const warn: <T>(
|
|
28
|
+
export declare const warn: <T>(message: string, code?: IoMessageCode, payload?: T) => ActionLessMessage<T | undefined>;
|
|
27
29
|
/**
|
|
28
30
|
* Creates an info level message.
|
|
29
31
|
*/
|
|
30
|
-
export declare const info: <T>(
|
|
32
|
+
export declare const info: <T>(message: string, code?: IoMessageCode, payload?: T) => ActionLessMessage<T | undefined>;
|
|
31
33
|
/**
|
|
32
34
|
* Creates a debug level message.
|
|
33
35
|
*/
|
|
34
|
-
export declare const debug: <T>(
|
|
36
|
+
export declare const debug: <T>(message: string, code?: IoMessageCode, payload?: T) => ActionLessMessage<T | undefined>;
|
|
35
37
|
/**
|
|
36
38
|
* Creates a trace level message.
|
|
37
39
|
*/
|
|
38
|
-
export declare const trace: <T>(
|
|
40
|
+
export declare const trace: <T>(message: string, code?: IoMessageCode, payload?: T) => ActionLessMessage<T | undefined>;
|
|
39
41
|
export {};
|
package/lib/cli/messages.js
CHANGED
|
@@ -12,7 +12,6 @@ function formatMessage(msg, category = 'TOOLKIT') {
|
|
|
12
12
|
return {
|
|
13
13
|
time: new Date(),
|
|
14
14
|
level: msg.level,
|
|
15
|
-
action: msg.action,
|
|
16
15
|
code: (_a = msg.code) !== null && _a !== void 0 ? _a : defaultMessageCode(msg.level, category),
|
|
17
16
|
message: msg.message,
|
|
18
17
|
data: msg.data,
|
|
@@ -32,10 +31,9 @@ function defaultMessageCode(level, category = 'TOOLKIT') {
|
|
|
32
31
|
* Creates an error level message.
|
|
33
32
|
* Errors must always have a unique code.
|
|
34
33
|
*/
|
|
35
|
-
const error = (
|
|
34
|
+
const error = (message, code, payload) => {
|
|
36
35
|
return formatMessage({
|
|
37
36
|
level: 'error',
|
|
38
|
-
action,
|
|
39
37
|
code,
|
|
40
38
|
message,
|
|
41
39
|
data: payload,
|
|
@@ -49,10 +47,9 @@ exports.error = error;
|
|
|
49
47
|
* However actions that operate on Cloud Assemblies might include a result per Stack.
|
|
50
48
|
* Unlike other messages, results must always have a code and a payload.
|
|
51
49
|
*/
|
|
52
|
-
const result = (
|
|
50
|
+
const result = (message, code, payload) => {
|
|
53
51
|
return formatMessage({
|
|
54
52
|
level: 'result',
|
|
55
|
-
action,
|
|
56
53
|
code,
|
|
57
54
|
message,
|
|
58
55
|
data: payload,
|
|
@@ -62,10 +59,9 @@ exports.result = result;
|
|
|
62
59
|
/**
|
|
63
60
|
* Creates a warning level message.
|
|
64
61
|
*/
|
|
65
|
-
const warn = (
|
|
62
|
+
const warn = (message, code, payload) => {
|
|
66
63
|
return formatMessage({
|
|
67
64
|
level: 'warn',
|
|
68
|
-
action,
|
|
69
65
|
code,
|
|
70
66
|
message,
|
|
71
67
|
data: payload,
|
|
@@ -75,10 +71,9 @@ exports.warn = warn;
|
|
|
75
71
|
/**
|
|
76
72
|
* Creates an info level message.
|
|
77
73
|
*/
|
|
78
|
-
const info = (
|
|
74
|
+
const info = (message, code, payload) => {
|
|
79
75
|
return formatMessage({
|
|
80
76
|
level: 'info',
|
|
81
|
-
action,
|
|
82
77
|
code,
|
|
83
78
|
message,
|
|
84
79
|
data: payload,
|
|
@@ -88,10 +83,9 @@ exports.info = info;
|
|
|
88
83
|
/**
|
|
89
84
|
* Creates a debug level message.
|
|
90
85
|
*/
|
|
91
|
-
const debug = (
|
|
86
|
+
const debug = (message, code, payload) => {
|
|
92
87
|
return formatMessage({
|
|
93
88
|
level: 'debug',
|
|
94
|
-
action,
|
|
95
89
|
code,
|
|
96
90
|
message,
|
|
97
91
|
data: payload,
|
|
@@ -101,14 +95,13 @@ exports.debug = debug;
|
|
|
101
95
|
/**
|
|
102
96
|
* Creates a trace level message.
|
|
103
97
|
*/
|
|
104
|
-
const trace = (
|
|
98
|
+
const trace = (message, code, payload) => {
|
|
105
99
|
return formatMessage({
|
|
106
100
|
level: 'trace',
|
|
107
|
-
action,
|
|
108
101
|
code,
|
|
109
102
|
message,
|
|
110
103
|
data: payload,
|
|
111
104
|
});
|
|
112
105
|
};
|
|
113
106
|
exports.trace = trace;
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
107
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJtZXNzYWdlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFnQkEsc0NBUUM7QUFiRDs7OztHQUlHO0FBQ0gsU0FBZ0IsYUFBYSxDQUFJLEdBQTJDLEVBQUUsV0FBa0MsU0FBUzs7SUFDdkgsT0FBTztRQUNMLElBQUksRUFBRSxJQUFJLElBQUksRUFBRTtRQUNoQixLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUs7UUFDaEIsSUFBSSxFQUFFLE1BQUEsR0FBRyxDQUFDLElBQUksbUNBQUksa0JBQWtCLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUM7UUFDekQsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSTtLQUNmLENBQUM7QUFDSixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyxrQkFBa0IsQ0FBQyxLQUFxQixFQUFFLFdBQWtDLFNBQVM7SUFDNUYsTUFBTSxjQUFjLEdBQUcsS0FBSyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDOUMsS0FBSyxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDdEIsR0FBRyxDQUFDO0lBQ1IsT0FBTyxPQUFPLFFBQVEsSUFBSSxjQUFjLE1BQU0sQ0FBQztBQUNqRCxDQUFDO0FBRUQ7OztHQUdHO0FBQ0ksTUFBTSxLQUFLLEdBQUcsQ0FBSSxPQUFlLEVBQUUsSUFBbUIsRUFBRSxPQUFXLEVBQUUsRUFBRTtJQUM1RSxPQUFPLGFBQWEsQ0FBQztRQUNuQixLQUFLLEVBQUUsT0FBTztRQUNkLElBQUk7UUFDSixPQUFPO1FBQ1AsSUFBSSxFQUFFLE9BQU87S0FDZCxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFQVyxRQUFBLEtBQUssU0FPaEI7QUFFRjs7Ozs7O0dBTUc7QUFDSSxNQUFNLE1BQU0sR0FBRyxDQUFJLE9BQWUsRUFBRSxJQUFtQixFQUFFLE9BQVUsRUFBRSxFQUFFO0lBQzVFLE9BQU8sYUFBYSxDQUFDO1FBQ25CLEtBQUssRUFBRSxRQUFRO1FBQ2YsSUFBSTtRQUNKLE9BQU87UUFDUCxJQUFJLEVBQUUsT0FBTztLQUNkLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQVBXLFFBQUEsTUFBTSxVQU9qQjtBQUVGOztHQUVHO0FBQ0ksTUFBTSxJQUFJLEdBQUcsQ0FBSSxPQUFlLEVBQUUsSUFBb0IsRUFBRSxPQUFXLEVBQUUsRUFBRTtJQUM1RSxPQUFPLGFBQWEsQ0FBQztRQUNuQixLQUFLLEVBQUUsTUFBTTtRQUNiLElBQUk7UUFDSixPQUFPO1FBQ1AsSUFBSSxFQUFFLE9BQU87S0FDZCxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFQVyxRQUFBLElBQUksUUFPZjtBQUVGOztHQUVHO0FBQ0ksTUFBTSxJQUFJLEdBQUcsQ0FBSSxPQUFlLEVBQUUsSUFBb0IsRUFBRSxPQUFXLEVBQUUsRUFBRTtJQUM1RSxPQUFPLGFBQWEsQ0FBQztRQUNuQixLQUFLLEVBQUUsTUFBTTtRQUNiLElBQUk7UUFDSixPQUFPO1FBQ1AsSUFBSSxFQUFFLE9BQU87S0FDZCxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFQVyxRQUFBLElBQUksUUFPZjtBQUVGOztHQUVHO0FBQ0ksTUFBTSxLQUFLLEdBQUcsQ0FBSSxPQUFlLEVBQUUsSUFBb0IsRUFBRSxPQUFXLEVBQUUsRUFBRTtJQUM3RSxPQUFPLGFBQWEsQ0FBQztRQUNuQixLQUFLLEVBQUUsT0FBTztRQUNkLElBQUk7UUFDSixPQUFPO1FBQ1AsSUFBSSxFQUFFLE9BQU87S0FDZCxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFQVyxRQUFBLEtBQUssU0FPaEI7QUFFRjs7R0FFRztBQUNJLE1BQU0sS0FBSyxHQUFHLENBQUksT0FBZSxFQUFFLElBQW9CLEVBQUUsT0FBVyxFQUFFLEVBQUU7SUFDN0UsT0FBTyxhQUFhLENBQUM7UUFDbkIsS0FBSyxFQUFFLE9BQU87UUFDZCxJQUFJO1FBQ0osT0FBTztRQUNQLElBQUksRUFBRSxPQUFPO0tBQ2QsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBUFcsUUFBQSxLQUFLLFNBT2hCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gVGhpcyBmaWxlIGlzIGEgYmFja3BvcnQgZnJvbSBAYXdzLWNkay90b29sa2l0LlxuLy8gVGhlIENMSSBjYW5ub3QgZGVwZW5kIG9uIHRoZSB0b29sa2l0IHlldCwgYmVjYXVzZSB0aGUgdG9vbGtpdCBjdXJyZW50bHkgZGVwZW5kcyBvbiB0aGUgQ0xJLlxuLy8gT25jZSB3ZSBoYXZlIGNvbXBsZXRlIHRoZSByZXBvIHNwbGl0LCB3ZSB3aWxsIGNyZWF0ZSBhIHRlbXBvcmFyeSwgcHJpdmF0ZSBsaWJyYXJ5IHBhY2thZ2Vcbi8vIGZvciBhbGwgY29kZSB0aGF0IGlzIHNoYXJlZCBiZXR3ZWVuIENMSSBhbmQgdG9vbGtpdC4gVGhpcyBpcyB3aGVyZSB0aGlzIGZpbGUgd2lsbCB0aGVuIGxpdmUuXG5pbXBvcnQgdHlwZSB7IEFjdGlvbkxlc3NNZXNzYWdlIH0gZnJvbSAnLi4vLi4vLi4vQGF3cy1jZGsvdG1wLXRvb2xraXQtaGVscGVycy9zcmMvYXBpL2lvL3ByaXZhdGUnO1xuaW1wb3J0IHR5cGUgeyBJb01lc3NhZ2VDb2RlQ2F0ZWdvcnkgfSBmcm9tICcuLi9sb2dnaW5nJztcbmltcG9ydCB0eXBlIHsgSW9NZXNzYWdlQ29kZSwgSW9NZXNzYWdlTGV2ZWwgfSBmcm9tICcuLi90b29sa2l0L2NsaS1pby1ob3N0JztcblxudHlwZSBPcHRpb25hbDxULCBLIGV4dGVuZHMga2V5b2YgVD4gPSBQaWNrPFBhcnRpYWw8VD4sIEs+ICYgT21pdDxULCBLPjtcbnR5cGUgU2ltcGxpZmllZE1lc3NhZ2U8VD4gPSBPbWl0PEFjdGlvbkxlc3NNZXNzYWdlPFQ+LCAndGltZSc+O1xuXG4vKipcbiAqIEludGVybmFsIGhlbHBlciB0aGF0IHByb2Nlc3NlcyBsb2cgaW5wdXRzIGludG8gYSBjb25zaXN0ZW50IGZvcm1hdC5cbiAqIEhhbmRsZXMgc3RyaW5nIGludGVycG9sYXRpb24sIGZvcm1hdCBzdHJpbmdzLCBhbmQgb2JqZWN0IHBhcmFtZXRlciBzdHlsZXMuXG4gKiBBcHBsaWVzIG9wdGlvbmFsIHN0eWxpbmcgYW5kIHByZXBhcmVzIHRoZSBmaW5hbCBtZXNzYWdlIGZvciBsb2dnaW5nLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0TWVzc2FnZTxUPihtc2c6IE9wdGlvbmFsPFNpbXBsaWZpZWRNZXNzYWdlPFQ+LCAnY29kZSc+LCBjYXRlZ29yeTogSW9NZXNzYWdlQ29kZUNhdGVnb3J5ID0gJ1RPT0xLSVQnKTogQWN0aW9uTGVzc01lc3NhZ2U8VD4ge1xuICByZXR1cm4ge1xuICAgIHRpbWU6IG5ldyBEYXRlKCksXG4gICAgbGV2ZWw6IG1zZy5sZXZlbCxcbiAgICBjb2RlOiBtc2cuY29kZSA/PyBkZWZhdWx0TWVzc2FnZUNvZGUobXNnLmxldmVsLCBjYXRlZ29yeSksXG4gICAgbWVzc2FnZTogbXNnLm1lc3NhZ2UsXG4gICAgZGF0YTogbXNnLmRhdGEsXG4gIH07XG59XG5cbi8qKlxuICogQnVpbGQgYSBtZXNzYWdlIGNvZGUgZnJvbSBsZXZlbCBhbmQgY2F0ZWdvcnkuIFRoZSBjb2RlIG11c3QgYmUgdmFsaWQgZm9yIHRoaXMgZnVuY3Rpb24gdG8gcGFzcy5cbiAqIE90aGVyd2lzZSBpdCByZXR1cm5zIGEgVG9vbGtpdEVycm9yLlxuICovXG5mdW5jdGlvbiBkZWZhdWx0TWVzc2FnZUNvZGUobGV2ZWw6IElvTWVzc2FnZUxldmVsLCBjYXRlZ29yeTogSW9NZXNzYWdlQ29kZUNhdGVnb3J5ID0gJ1RPT0xLSVQnKTogSW9NZXNzYWdlQ29kZSB7XG4gIGNvbnN0IGxldmVsSW5kaWNhdG9yID0gbGV2ZWwgPT09ICdlcnJvcicgPyAnRScgOlxuICAgIGxldmVsID09PSAnd2FybicgPyAnVycgOlxuICAgICAgJ0knO1xuICByZXR1cm4gYENES18ke2NhdGVnb3J5fV8ke2xldmVsSW5kaWNhdG9yfTAwMDBgO1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYW4gZXJyb3IgbGV2ZWwgbWVzc2FnZS5cbiAqIEVycm9ycyBtdXN0IGFsd2F5cyBoYXZlIGEgdW5pcXVlIGNvZGUuXG4gKi9cbmV4cG9ydCBjb25zdCBlcnJvciA9IDxUPihtZXNzYWdlOiBzdHJpbmcsIGNvZGU6IElvTWVzc2FnZUNvZGUsIHBheWxvYWQ/OiBUKSA9PiB7XG4gIHJldHVybiBmb3JtYXRNZXNzYWdlKHtcbiAgICBsZXZlbDogJ2Vycm9yJyxcbiAgICBjb2RlLFxuICAgIG1lc3NhZ2UsXG4gICAgZGF0YTogcGF5bG9hZCxcbiAgfSk7XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgYSByZXN1bHQgbGV2ZWwgbWVzc2FnZSBhbmQgcmVwcmVzZW50cyB0aGUgbW9zdCBpbXBvcnRhbnQgbWVzc2FnZSBmb3IgYSBnaXZlbiBhY3Rpb24uXG4gKlxuICogVGhleSBzaG91bGQgYmUgdXNlZCBzcGFyc2VseSwgd2l0aCBhbiBhY3Rpb24gdXN1YWxseSBoYXZpbmcgbm8gb3IgZXhhY3RseSBvbmUgcmVzdWx0LlxuICogSG93ZXZlciBhY3Rpb25zIHRoYXQgb3BlcmF0ZSBvbiBDbG91ZCBBc3NlbWJsaWVzIG1pZ2h0IGluY2x1ZGUgYSByZXN1bHQgcGVyIFN0YWNrLlxuICogVW5saWtlIG90aGVyIG1lc3NhZ2VzLCByZXN1bHRzIG11c3QgYWx3YXlzIGhhdmUgYSBjb2RlIGFuZCBhIHBheWxvYWQuXG4gKi9cbmV4cG9ydCBjb25zdCByZXN1bHQgPSA8VD4obWVzc2FnZTogc3RyaW5nLCBjb2RlOiBJb01lc3NhZ2VDb2RlLCBwYXlsb2FkOiBUKSA9PiB7XG4gIHJldHVybiBmb3JtYXRNZXNzYWdlKHtcbiAgICBsZXZlbDogJ3Jlc3VsdCcsXG4gICAgY29kZSxcbiAgICBtZXNzYWdlLFxuICAgIGRhdGE6IHBheWxvYWQsXG4gIH0pO1xufTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgd2FybmluZyBsZXZlbCBtZXNzYWdlLlxuICovXG5leHBvcnQgY29uc3Qgd2FybiA9IDxUPihtZXNzYWdlOiBzdHJpbmcsIGNvZGU/OiBJb01lc3NhZ2VDb2RlLCBwYXlsb2FkPzogVCkgPT4ge1xuICByZXR1cm4gZm9ybWF0TWVzc2FnZSh7XG4gICAgbGV2ZWw6ICd3YXJuJyxcbiAgICBjb2RlLFxuICAgIG1lc3NhZ2UsXG4gICAgZGF0YTogcGF5bG9hZCxcbiAgfSk7XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgYW4gaW5mbyBsZXZlbCBtZXNzYWdlLlxuICovXG5leHBvcnQgY29uc3QgaW5mbyA9IDxUPihtZXNzYWdlOiBzdHJpbmcsIGNvZGU/OiBJb01lc3NhZ2VDb2RlLCBwYXlsb2FkPzogVCkgPT4ge1xuICByZXR1cm4gZm9ybWF0TWVzc2FnZSh7XG4gICAgbGV2ZWw6ICdpbmZvJyxcbiAgICBjb2RlLFxuICAgIG1lc3NhZ2UsXG4gICAgZGF0YTogcGF5bG9hZCxcbiAgfSk7XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgYSBkZWJ1ZyBsZXZlbCBtZXNzYWdlLlxuICovXG5leHBvcnQgY29uc3QgZGVidWcgPSA8VD4obWVzc2FnZTogc3RyaW5nLCBjb2RlPzogSW9NZXNzYWdlQ29kZSwgcGF5bG9hZD86IFQpID0+IHtcbiAgcmV0dXJuIGZvcm1hdE1lc3NhZ2Uoe1xuICAgIGxldmVsOiAnZGVidWcnLFxuICAgIGNvZGUsXG4gICAgbWVzc2FnZSxcbiAgICBkYXRhOiBwYXlsb2FkLFxuICB9KTtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhIHRyYWNlIGxldmVsIG1lc3NhZ2UuXG4gKi9cbmV4cG9ydCBjb25zdCB0cmFjZSA9IDxUPihtZXNzYWdlOiBzdHJpbmcsIGNvZGU/OiBJb01lc3NhZ2VDb2RlLCBwYXlsb2FkPzogVCkgPT4ge1xuICByZXR1cm4gZm9ybWF0TWVzc2FnZSh7XG4gICAgbGV2ZWw6ICd0cmFjZScsXG4gICAgY29kZSxcbiAgICBtZXNzYWdlLFxuICAgIGRhdGE6IHBheWxvYWQsXG4gIH0pO1xufTtcblxuIl19
|