terraconstructs 0.1.7 → 0.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +1602 -1223
- package/go.mod +83 -77
- package/go.sum +175 -159
- package/lib/asset-staging.js +1 -1
- package/lib/aws/arn.js +1 -1
- package/lib/aws/aws-asset-manager.js +1 -1
- package/lib/aws/aws-construct.js +1 -1
- package/lib/aws/aws-stack.js +1 -1
- package/lib/aws/aws-tags.js +2 -2
- package/lib/aws/cloudwatch/actions/appscaling.js +1 -1
- package/lib/aws/cloudwatch/actions/ec2.js +1 -1
- package/lib/aws/cloudwatch/actions/lambda.js +1 -1
- package/lib/aws/cloudwatch/actions/sns.js +1 -1
- package/lib/aws/cloudwatch/actions/ssm.js +2 -2
- package/lib/aws/cloudwatch/alarm-base.js +1 -1
- package/lib/aws/cloudwatch/alarm-rule.js +1 -1
- package/lib/aws/cloudwatch/alarm-status-widget.js +1 -1
- package/lib/aws/cloudwatch/alarm.js +9 -8
- package/lib/aws/cloudwatch/composite-alarm.js +1 -1
- package/lib/aws/cloudwatch/dashboard.js +1 -1
- package/lib/aws/cloudwatch/data-protection-policy.js +3 -3
- package/lib/aws/cloudwatch/graph.js +8 -8
- package/lib/aws/cloudwatch/layout.js +3 -3
- package/lib/aws/cloudwatch/log-destinations/kinesis.js +1 -1
- package/lib/aws/cloudwatch/log-destinations/lambda.js +1 -1
- package/lib/aws/cloudwatch/log-group.js +1 -1
- package/lib/aws/cloudwatch/log-query.js +1 -1
- package/lib/aws/cloudwatch/log-stream.js +1 -1
- package/lib/aws/cloudwatch/metric-filter.js +1 -1
- package/lib/aws/cloudwatch/metric.js +2 -2
- package/lib/aws/cloudwatch/pattern.js +3 -3
- package/lib/aws/cloudwatch/policy.js +1 -1
- package/lib/aws/cloudwatch/query-definition.js +2 -2
- package/lib/aws/cloudwatch/stats.js +1 -1
- package/lib/aws/cloudwatch/subscription-filter.js +1 -1
- package/lib/aws/cloudwatch/text.js +1 -1
- package/lib/aws/cloudwatch/variable.js +3 -3
- package/lib/aws/cloudwatch/widget.js +1 -1
- package/lib/aws/compute/access-log.js +9 -7
- package/lib/aws/compute/activity.js +1 -1
- package/lib/aws/compute/alb/application-listener-action.js +1 -1
- package/lib/aws/compute/alb/application-listener-certificate.js +1 -1
- package/lib/aws/compute/alb/application-listener-rule.js +1 -1
- package/lib/aws/compute/alb/application-listener.js +1 -1
- package/lib/aws/compute/alb/application-load-balancer.js +1 -1
- package/lib/aws/compute/alb/application-target-group.js +1 -1
- package/lib/aws/compute/alb/conditions.js +1 -1
- package/lib/aws/compute/alb/trust-store-revocation.js +1 -1
- package/lib/aws/compute/alb/trust-store.js +1 -1
- package/lib/aws/compute/api-definition.d.ts +1 -1
- package/lib/aws/compute/api-definition.js +11 -16
- package/lib/aws/compute/api-key.js +7 -8
- package/lib/aws/compute/apigateway-util.js +10 -21
- package/lib/aws/compute/architecture.js +1 -1
- package/lib/aws/compute/aspects/require-imdsv2-aspect.js +2 -2
- package/lib/aws/compute/authorizer.js +1 -1
- package/lib/aws/compute/authorizers/identity-source.js +4 -5
- package/lib/aws/compute/authorizers/lambda.js +8 -11
- package/lib/aws/compute/autoscaling-common/interval-utils.js +7 -11
- package/lib/aws/compute/base-path-mapping.js +6 -8
- package/lib/aws/compute/base-scalable-attribute.js +1 -1
- package/lib/aws/compute/bastion-host.js +1 -1
- package/lib/aws/compute/chain.js +1 -1
- package/lib/aws/compute/client-vpn-authorization-rule.js +1 -1
- package/lib/aws/compute/client-vpn-endpoint.js +2 -2
- package/lib/aws/compute/client-vpn-route.js +2 -2
- package/lib/aws/compute/code.js +23 -40
- package/lib/aws/compute/condition.js +1 -1
- package/lib/aws/compute/connections.js +1 -1
- package/lib/aws/compute/cors.js +1 -1
- package/lib/aws/compute/deployment.js +1 -1
- package/lib/aws/compute/domain-name.js +9 -8
- package/lib/aws/compute/event-invoke-config.js +1 -1
- package/lib/aws/compute/event-source-filter.js +2 -2
- package/lib/aws/compute/event-source-mapping.js +1 -1
- package/lib/aws/compute/event-sources/s3-onfailure-destination.js +1 -1
- package/lib/aws/compute/event-sources/s3.js +1 -1
- package/lib/aws/compute/event-sources/sqs-dlq.js +1 -1
- package/lib/aws/compute/event-sources/sqs.js +1 -1
- package/lib/aws/compute/fields.js +4 -4
- package/lib/aws/compute/function-alias.js +1 -1
- package/lib/aws/compute/function-base.js +12 -12
- package/lib/aws/compute/function-destinations/event-bridge.js +1 -1
- package/lib/aws/compute/function-destinations/function.js +1 -1
- package/lib/aws/compute/function-destinations/sqs.js +1 -1
- package/lib/aws/compute/function-nodejs/function.js +1 -1
- package/lib/aws/compute/function-url.js +1 -1
- package/lib/aws/compute/function-vpc-config.generated.d.ts +3 -3
- package/lib/aws/compute/function-vpc-config.generated.js +1 -1
- package/lib/aws/compute/function.js +4 -3
- package/lib/aws/compute/gateway-response.js +2 -2
- package/lib/aws/compute/handler.js +1 -1
- package/lib/aws/compute/instance-types.js +1 -1
- package/lib/aws/compute/instance.js +1 -1
- package/lib/aws/compute/integration.js +10 -16
- package/lib/aws/compute/integrations/aws.js +4 -4
- package/lib/aws/compute/integrations/http.js +1 -1
- package/lib/aws/compute/integrations/lambda.js +1 -1
- package/lib/aws/compute/integrations/mock.js +1 -1
- package/lib/aws/compute/integrations/stepfunctions.js +4 -5
- package/lib/aws/compute/ip-addresses.js +2 -2
- package/lib/aws/compute/ipam.js +1 -1
- package/lib/aws/compute/key-pair.js +1 -1
- package/lib/aws/compute/lambda-api.js +7 -10
- package/lib/aws/compute/launch-template.js +2 -2
- package/lib/aws/compute/lb-shared/base-listener.js +1 -1
- package/lib/aws/compute/lb-shared/base-load-balancer.js +2 -2
- package/lib/aws/compute/lb-shared/base-target-group.js +1 -1
- package/lib/aws/compute/lb-shared/lb-listener-config.generated.d.ts +37 -31
- package/lib/aws/compute/lb-shared/lb-listener-config.generated.js +1 -1
- package/lib/aws/compute/lb-shared/lb-target-group-attachment-config.generated.d.ts +10 -4
- package/lib/aws/compute/lb-shared/lb-target-group-attachment-config.generated.js +1 -1
- package/lib/aws/compute/lb-shared/listener-certificate.js +1 -1
- package/lib/aws/compute/lb-shared/load-balancer-targets.js +2 -2
- package/lib/aws/compute/lb-targets/alb-target.js +3 -3
- package/lib/aws/compute/lb-targets/instance-target.js +2 -2
- package/lib/aws/compute/lb-targets/ip-target.js +1 -1
- package/lib/aws/compute/lb-targets/lambda-target.js +1 -1
- package/lib/aws/compute/load-balancer.js +3 -3
- package/lib/aws/compute/machine-image/amazon-linux-2022.js +2 -2
- package/lib/aws/compute/machine-image/amazon-linux-2023.js +2 -2
- package/lib/aws/compute/machine-image/amazon-linux2.js +2 -2
- package/lib/aws/compute/machine-image/common.js +1 -1
- package/lib/aws/compute/machine-image/machine-image.js +8 -8
- package/lib/aws/compute/method.js +1 -1
- package/lib/aws/compute/model.js +3 -3
- package/lib/aws/compute/nat.js +5 -5
- package/lib/aws/compute/network-acl-types.js +2 -2
- package/lib/aws/compute/network-acl.js +3 -3
- package/lib/aws/compute/nlb/network-listener-action.js +1 -1
- package/lib/aws/compute/nlb/network-listener.js +1 -1
- package/lib/aws/compute/nlb/network-load-balancer.js +1 -1
- package/lib/aws/compute/nlb/network-target-group.js +1 -1
- package/lib/aws/compute/peer.js +1 -1
- package/lib/aws/compute/placement-group.js +1 -1
- package/lib/aws/compute/port.js +1 -1
- package/lib/aws/compute/prefix-list.js +1 -1
- package/lib/aws/compute/requestvalidator.js +1 -1
- package/lib/aws/compute/resource.js +3 -3
- package/lib/aws/compute/restapi.js +9 -10
- package/lib/aws/compute/route.js +10 -10
- package/lib/aws/compute/runtime.d.ts +8 -0
- package/lib/aws/compute/runtime.js +20 -7
- package/lib/aws/compute/scalable-target.js +1 -1
- package/lib/aws/compute/schedule.js +6 -12
- package/lib/aws/compute/security-group.js +1 -1
- package/lib/aws/compute/stage.js +8 -11
- package/lib/aws/compute/state-graph.js +1 -1
- package/lib/aws/compute/state-machine-fragment.js +1 -1
- package/lib/aws/compute/state-machine.js +4 -4
- package/lib/aws/compute/states/choice.js +1 -1
- package/lib/aws/compute/states/custom-state.js +1 -1
- package/lib/aws/compute/states/distributed-map/item-batcher.js +1 -1
- package/lib/aws/compute/states/distributed-map/item-reader.js +5 -5
- package/lib/aws/compute/states/distributed-map/result-writer.js +1 -1
- package/lib/aws/compute/states/distributed-map.js +1 -1
- package/lib/aws/compute/states/fail.js +1 -1
- package/lib/aws/compute/states/map-base.js +1 -1
- package/lib/aws/compute/states/map.js +1 -1
- package/lib/aws/compute/states/parallel.js +1 -1
- package/lib/aws/compute/states/pass.js +2 -2
- package/lib/aws/compute/states/state.js +1 -1
- package/lib/aws/compute/states/succeed.js +1 -1
- package/lib/aws/compute/states/task-base.js +2 -2
- package/lib/aws/compute/states/task.js +1 -1
- package/lib/aws/compute/states/wait.js +2 -2
- package/lib/aws/compute/step-scaling-action.js +1 -1
- package/lib/aws/compute/step-scaling-policy.js +9 -14
- package/lib/aws/compute/stepfunctions-api.js +5 -6
- package/lib/aws/compute/subnet-v2.js +2 -2
- package/lib/aws/compute/subnet.js +1 -1
- package/lib/aws/compute/target-tracking-scaling-policy.js +9 -12
- package/lib/aws/compute/task-credentials.js +1 -1
- package/lib/aws/compute/task-input.js +1 -1
- package/lib/aws/compute/tasks/aws-sdk/call-aws-service.js +1 -1
- package/lib/aws/compute/tasks/eventbridge/put-events.js +1 -1
- package/lib/aws/compute/tasks/http/invoke.js +1 -1
- package/lib/aws/compute/tasks/lambda/invoke.js +1 -1
- package/lib/aws/compute/tasks/sqs/send-message.js +1 -1
- package/lib/aws/compute/tasks/stepfunctions/invoke-activity.js +1 -1
- package/lib/aws/compute/tasks/stepfunctions/start-execution.js +1 -1
- package/lib/aws/compute/types.js +1 -1
- package/lib/aws/compute/usage-plan.js +1 -1
- package/lib/aws/compute/user-data.js +3 -3
- package/lib/aws/compute/volume.js +2 -2
- package/lib/aws/compute/vpc-endpoint-service.js +1 -1
- package/lib/aws/compute/vpc-endpoint.js +6 -6
- package/lib/aws/compute/vpc-flow-logs.js +8 -6
- package/lib/aws/compute/vpc-link.js +1 -1
- package/lib/aws/compute/vpc-v2-base.js +1 -1
- package/lib/aws/compute/vpc-v2.js +2 -2
- package/lib/aws/compute/vpc.js +4 -4
- package/lib/aws/compute/vpn.js +3 -3
- package/lib/aws/edge/certificate.js +1 -1
- package/lib/aws/edge/distribution.js +3 -3
- package/lib/aws/edge/dns-alias-record-targets.js +6 -6
- package/lib/aws/edge/dns-record.js +13 -13
- package/lib/aws/edge/dns-zone.d.ts +1 -1
- package/lib/aws/edge/dns-zone.js +8 -7
- package/lib/aws/edge/function.js +2 -2
- package/lib/aws/edge/key-value-store.js +4 -4
- package/lib/aws/edge/origin.js +3 -3
- package/lib/aws/edge/response-headers-policy.js +1 -1
- package/lib/aws/encryption/alias.js +1 -1
- package/lib/aws/encryption/key.js +1 -1
- package/lib/aws/encryption/via-service-principal.js +1 -1
- package/lib/aws/iam/grant.js +2 -2
- package/lib/aws/iam/group.js +1 -1
- package/lib/aws/iam/instance-profile.js +1 -1
- package/lib/aws/iam/managed-policy.js +1 -1
- package/lib/aws/iam/oidc-provider.js +1 -1
- package/lib/aws/iam/policy-document-config.generated.d.ts +8 -8
- package/lib/aws/iam/policy-document-config.generated.js +1 -1
- package/lib/aws/iam/policy-document.js +1 -1
- package/lib/aws/iam/policy-statement-props.generated.d.ts +8 -8
- package/lib/aws/iam/policy-statement-props.generated.js +1 -1
- package/lib/aws/iam/policy-statement.js +1 -1
- package/lib/aws/iam/policy.js +1 -1
- package/lib/aws/iam/principals.js +20 -20
- package/lib/aws/iam/role.js +1 -1
- package/lib/aws/iam/saml-provider.js +2 -2
- package/lib/aws/iam/unknown-principal.js +1 -1
- package/lib/aws/iam/user.js +1 -1
- package/lib/aws/network/simple-ipv4-vpc.js +1 -1
- package/lib/aws/network/subnet-group.js +3 -3
- package/lib/aws/network/subnet.js +4 -4
- package/lib/aws/notify/archive.js +1 -1
- package/lib/aws/notify/connection.js +3 -3
- package/lib/aws/notify/event-bus.d.ts +19 -0
- package/lib/aws/notify/event-bus.js +22 -26
- package/lib/aws/notify/event-pattern.js +1 -1
- package/lib/aws/notify/input.js +2 -2
- package/lib/aws/notify/kinesis-stream.js +1 -1
- package/lib/aws/notify/notification-rule.js +1 -1
- package/lib/aws/notify/policy.js +1 -1
- package/lib/aws/notify/queue-config.generated.d.ts +18 -12
- package/lib/aws/notify/queue-config.generated.js +1 -1
- package/lib/aws/notify/queue-policy.js +1 -1
- package/lib/aws/notify/queue.js +1 -1
- package/lib/aws/notify/resource-policy.js +1 -1
- package/lib/aws/notify/rule.js +1 -1
- package/lib/aws/notify/schedule.js +1 -1
- package/lib/aws/notify/subscription-filter.js +7 -8
- package/lib/aws/notify/subscription.js +23 -25
- package/lib/aws/notify/subscriptions/email.js +1 -1
- package/lib/aws/notify/subscriptions/lambda.js +1 -1
- package/lib/aws/notify/subscriptions/sms.js +1 -1
- package/lib/aws/notify/subscriptions/sqs.js +1 -1
- package/lib/aws/notify/subscriptions/url.js +1 -1
- package/lib/aws/notify/targets/event-bus.js +1 -1
- package/lib/aws/notify/targets/function.js +1 -1
- package/lib/aws/notify/targets/log-group.js +2 -2
- package/lib/aws/notify/targets/sqs.js +1 -1
- package/lib/aws/notify/targets/state-machine.js +1 -1
- package/lib/aws/notify/topic-base.js +4 -4
- package/lib/aws/notify/topic.js +1 -1
- package/lib/aws/provider-config.generated.d.ts +41 -33
- package/lib/aws/provider-config.generated.js +1 -1
- package/lib/aws/storage/assets/image-asset.js +8 -12
- package/lib/aws/storage/assets/s3.js +4 -4
- package/lib/aws/storage/auth-token.js +2 -2
- package/lib/aws/storage/billing.js +1 -1
- package/lib/aws/storage/bucket-notifications.js +1 -1
- package/lib/aws/storage/bucket-policy.js +1 -1
- package/lib/aws/storage/bucket-source.js +1 -1
- package/lib/aws/storage/bucket.js +2 -2
- package/lib/aws/storage/capacity.js +1 -1
- package/lib/aws/storage/cors-config.generated.d.ts +9 -3
- package/lib/aws/storage/cors-config.generated.js +1 -1
- package/lib/aws/storage/cors-rule-config.generated.d.ts +5 -5
- package/lib/aws/storage/cors-rule-config.generated.js +1 -1
- package/lib/aws/storage/ecr-repository.js +19 -32
- package/lib/aws/storage/encryption.js +1 -1
- package/lib/aws/storage/lifecycle-config.generated.d.ts +7 -7
- package/lib/aws/storage/lifecycle-config.generated.js +1 -1
- package/lib/aws/storage/notification-targets/function.js +1 -1
- package/lib/aws/storage/notification-targets/queue.js +1 -1
- package/lib/aws/storage/origin-access-identity.js +1 -1
- package/lib/aws/storage/parameter.js +2 -2
- package/lib/aws/storage/table.js +50 -101
- package/lib/aws/storage/website-config.generated.d.ts +11 -5
- package/lib/aws/storage/website-config.generated.js +1 -1
- package/lib/bundling.js +7 -6
- package/lib/construct-base.js +2 -2
- package/lib/duration.js +1 -1
- package/lib/errors.js +5 -3
- package/lib/expiration.js +1 -1
- package/lib/fs/ignore.js +4 -4
- package/lib/fs/index.js +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js +2 -1
- package/lib/private/asset-staging.js +3 -2
- package/lib/size.js +1 -1
- package/lib/stack-base.js +1 -1
- package/lib/terra-func.js +1 -1
- package/lib/time-zone.js +1 -1
- package/package.json +3 -3
|
@@ -68,7 +68,7 @@ class Values {
|
|
|
68
68
|
}
|
|
69
69
|
exports.Values = Values;
|
|
70
70
|
_a = JSII_RTTI_SYMBOL_1;
|
|
71
|
-
Values[_a] = { fqn: "terraconstructs.aws.cloudwatch.Values", version: "0.1.
|
|
71
|
+
Values[_a] = { fqn: "terraconstructs.aws.cloudwatch.Values", version: "0.1.9" };
|
|
72
72
|
class StaticValues extends Values {
|
|
73
73
|
constructor(values) {
|
|
74
74
|
super();
|
|
@@ -119,7 +119,7 @@ class DefaultValue {
|
|
|
119
119
|
}
|
|
120
120
|
exports.DefaultValue = DefaultValue;
|
|
121
121
|
_b = JSII_RTTI_SYMBOL_1;
|
|
122
|
-
DefaultValue[_b] = { fqn: "terraconstructs.aws.cloudwatch.DefaultValue", version: "0.1.
|
|
122
|
+
DefaultValue[_b] = { fqn: "terraconstructs.aws.cloudwatch.DefaultValue", version: "0.1.9" };
|
|
123
123
|
/**
|
|
124
124
|
* A special value for use with search expressions to have the default value be the first value returned from search
|
|
125
125
|
*/
|
|
@@ -152,5 +152,5 @@ class DashboardVariable {
|
|
|
152
152
|
}
|
|
153
153
|
exports.DashboardVariable = DashboardVariable;
|
|
154
154
|
_c = JSII_RTTI_SYMBOL_1;
|
|
155
|
-
DashboardVariable[_c] = { fqn: "terraconstructs.aws.cloudwatch.DashboardVariable", version: "0.1.
|
|
155
|
+
DashboardVariable[_c] = { fqn: "terraconstructs.aws.cloudwatch.DashboardVariable", version: "0.1.9" };
|
|
156
156
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFyaWFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXdzL2Nsb3Vkd2F0Y2gvdmFyaWFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxtR0FBbUc7QUFFbkcsSUFBWSxpQkFlWDtBQWZELFdBQVksaUJBQWlCO0lBQzNCOztPQUVHO0lBQ0gsb0NBQWUsQ0FBQTtJQUVmOztPQUVHO0lBQ0gsb0NBQWUsQ0FBQTtJQUVmOztPQUVHO0lBQ0gsc0NBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQWZXLGlCQUFpQixpQ0FBakIsaUJBQWlCLFFBZTVCO0FBRUQsSUFBWSxZQVVYO0FBVkQsV0FBWSxZQUFZO0lBQ3RCOztPQUVHO0lBQ0gscUNBQXFCLENBQUE7SUFFckI7O09BRUc7SUFDSCxtQ0FBbUIsQ0FBQTtBQUNyQixDQUFDLEVBVlcsWUFBWSw0QkFBWixZQUFZLFFBVXZCO0FBbUREOztHQUVHO0FBQ0gsTUFBc0IsTUFBTTtJQUMxQjs7T0FFRztJQUNJLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxVQUE0QjtRQUM3RCxJQUFJLFVBQVUsQ0FBQyxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3ZDLE1BQU0sSUFBSSxLQUFLLENBQ2Isa0VBQWtFLENBQ25FLENBQUM7UUFDSixDQUFDO1FBQ0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDO1lBQzdELE1BQU0sSUFBSSxLQUFLLENBQ2IsaUJBQWlCLFVBQVUsQ0FBQyxZQUFZLGdDQUFnQyxDQUN6RSxDQUFDO1FBQ0osQ0FBQztRQUNELE1BQU0sWUFBWSxHQUFHLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxHQUFHLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN0RSxPQUFPLE1BQU0sQ0FBQyxVQUFVLENBQ3RCLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxHQUFH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RTtZQUNuQixZQUFZLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsR0FBRztZQUM1QyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPO1lBQzdCLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUs7WUFDekIsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUU7U0FDakMsQ0FBQztJQUNKLENBQUM7O0FBekJILDhDQTBCQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9ibG9iL3YyLjE3MC4wL3BhY2thZ2VzL2F3cy1jZGstbGliL2F3cy1jbG91ZHdhdGNoL2xpYi92YXJpYWJsZS50c1xuXG5leHBvcnQgZW51bSBWYXJpYWJsZUlucHV0VHlwZSB7XG4gIC8qKlxuICAgKiBGcmVlZm9ybSB0ZXh0IGlucHV0IGJveFxuICAgKi9cbiAgSU5QVVQgPSBcImlucHV0XCIsXG5cbiAgLyoqXG4gICAqIEEgZHJvcGRvd24gb2YgcHJlLWRlZmluZWQgdmFsdWVzLCBvciB2YWx1ZXMgZmlsbGVkIGluIGZyb20gYSBtZXRyaWMgc2VhcmNoIHF1ZXJ5XG4gICAqL1xuICBSQURJTyA9IFwicmFkaW9cIixcblxuICAvKipcbiAgICogQSBzZXQgb2YgcHJlLWRlZmluZWQgcmFkaW8gYnV0dG9ucywgd2hpY2ggY2FuIGFsc28gYmUgZGVmaW5lZCBmcm9tIGEgbWV0cmljIHNlYXJjaCBxdWVyeVxuICAgKi9cbiAgU0VMRUNUID0gXCJzZWxlY3RcIixcbn1cblxuZXhwb3J0IGVudW0gVmFyaWFibGVUeXBlIHtcbiAgLyoqXG4gICAqIEEgcHJvcGVydHkgdmFyaWFibGUgY2hhbmdlcyB0aGUgdmFsdWVzIG9mIGFsbCBpbnN0YW5jZXMgb2YgYSBwcm9wZXJ0eSBpbiB0aGUgbGlzdCBvZiB3aWRnZXRzIGluIHRoZSBkYXNoYm9hcmQuXG4gICAqL1xuICBQUk9QRVJUWSA9IFwicHJvcGVydHlcIixcblxuICAvKipcbiAgICogQSBwYXR0ZXJuIHZhcmlhYmxlIGlzIG9uZSB0aGF0IGNoYW5nZXMgYSByZWdleCBwYXR0ZXJuIGFjcm9zcyB0aGUgZGFzaGJvYXJkIEpTT05cbiAgICovXG4gIFBBVFRFUk4gPSBcInBhdHRlcm5cIixcbn1cblxuLyoqXG4gKiBBIHNpbmdsZSBkYXNoYm9hcmQgdmFyaWFibGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJVmFyaWFibGUge1xuICAvKipcbiAgICogUmV0dXJuIHRoZSB2YXJpYWJsZSBKU09OIGZvciB1c2UgaW4gdGhlIGRhc2hib2FyZFxuICAgKi9cbiAgdG9Kc29uKCk6IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWYXJpYWJsZVZhbHVlIHtcbiAgLyoqXG4gICAqIE9wdGlvbmFsIGxhYmVsIGZvciB0aGUgc2VsZWN0ZWQgaXRlbVxuICAgKlxuICAgKiBAZGVmYXVsdCAtIHRoZSB2YXJpYWJsZSdzIHZhbHVlXG4gICAqL1xuICByZWFkb25seSBsYWJlbD86IHN0cmluZztcblxuICAvKipcbiAgICogVmFsdWUgb2YgdGhlIHNlbGVjdGVkIGl0ZW1cbiAgICovXG4gIHJlYWRvbmx5IHZhbHVlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogU2VhcmNoIGNvbXBvbmVudHMgZm9yIHVzZSB3aXRoIHtAbGluayBWYWx1ZXMuZnJvbVNlYXJjaENvbXBvbmVudHN9XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VhcmNoQ29tcG9uZW50cyB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZXNwYWNlIHRvIGJlIHVzZWQgaW4gdGhlIHNlYXJjaCBleHByZXNzaW9uXG4gICAqL1xuICByZWFkb25seSBuYW1lc3BhY2U6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGxpc3Qgb2YgZGltZW5zaW9ucyB0byBiZSB1c2VkIGluIHRoZSBzZWFyY2ggZXhwcmVzc2lvblxuICAgKi9cbiAgcmVhZG9ubHkgZGltZW5zaW9uczogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFRoZSBtZXRyaWMgbmFtZSB0byBiZSB1c2VkIGluIHRoZSBzZWFyY2ggZXhwcmVzc2lvblxuICAgKi9cbiAgcmVhZG9ubHkgbWV0cmljTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZGltZW5zaW9uIG5hbWUsIHRoYXQgdGhlIHNlYXJjaCBleHByZXNzaW9uIHJldHJpZXZlcywgd2hvc2UgdmFsdWVzIHdpbGwgYmUgdXNlZCB0byBwb3B1bGF0ZSB0aGUgdmFsdWVzIHRvIGNob29zZSBmcm9tXG4gICAqL1xuICByZWFkb25seSBwb3B1bGF0ZUZyb206IHN0cmluZztcbn1cblxuLyoqXG4gKiBBIGNsYXNzIGZvciBwcm92aWRpbmcgdmFsdWVzIGZvciB1c2Ugd2l0aCB7QGxpbmsgVmFyaWFibGVJbnB1dFR5cGUuU0VMRUNUfSBhbmQge0BsaW5rIFZhcmlhYmxlSW5wdXRUeXBlLlJBRElPfSBkYXNoYm9hcmQgdmFyaWFibGVzXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBWYWx1ZXMge1xuICAvKipcbiAgICogQ3JlYXRlIHZhbHVlcyBmcm9tIHRoZSBjb21wb25lbnRzIG9mIHNlYXJjaCBleHByZXNzaW9uXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21TZWFyY2hDb21wb25lbnRzKGNvbXBvbmVudHM6IFNlYXJjaENvbXBvbmVudHMpOiBWYWx1ZXMge1xuICAgIGlmIChjb21wb25lbnRzLmRpbWVuc2lvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiRW1wdHkgZGltZW5zaW9ucyBwcm92aWRlZC4gUGxlYXNlIHNwZWNpZnkgb25lIGRpbWVuc2lvbiBhdCBsZWFzdFwiLFxuICAgICAgKTtcbiAgICB9XG4gICAgaWYgKCFjb21wb25lbnRzLmRpbWVuc2lvbnMuaW5jbHVkZXMoY29tcG9uZW50cy5wb3B1bGF0ZUZyb20pKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBwb3B1bGF0ZUZyb20gKCR7Y29tcG9uZW50cy5wb3B1bGF0ZUZyb219KSBpcyBub3QgcHJlc2VudCBpbiBkaW1lbnNpb25zYCxcbiAgICAgICk7XG4gICAgfVxuICAgIGNvbnN0IG1ldHJpY1NjaGVtYSA9IFtjb21wb25lbnRzLm5hbWVzcGFjZSwgLi4uY29tcG9uZW50cy5kaW1lbnNpb25zXTtcbiAgICByZXR1cm4gVmFsdWVzLmZyb21TZWFyY2goXG4gICAgICBgeyR7bWV0cmljU2NoZW1hLmpvaW4oXCIsXCIpfX0gTWV0cmljTmFtZT1cXFwiJHtjb21wb25lbnRzLm1ldHJpY05hbWV9XFxcImAsXG4gICAgICBjb21wb25lbnRzLnBvcHVsYXRlRnJvbSxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSB2YWx1ZXMgZnJvbSBhIHNlYXJjaCBleHByZXNzaW9uXG4gICAqXG4gICAqIEBwYXJhbSBleHByZXNzaW9uIHNlYXJjaCBleHByZXNzaW9uIHRoYXQgc3BlY2lmaWVzIGEgbmFtZXNwYWNlLCBkaW1lbnNpb24gbmFtZShzKSBhbmQgYSBtZXRyaWMgbmFtZS4gRm9yIGV4YW1wbGUgYHtBV1MvRUMyLEluc3RhbmNlSWR9IE1ldHJpY05hbWU9XFxcIkNQVVV0aWxpemF0aW9uXFxcImBcbiAgICogQHBhcmFtIHBvcHVsYXRlRnJvbSBkaW1lbnNpb24gdGhlIGRpbWVuc2lvbiBuYW1lLCB0aGF0IHRoZSBzZWFyY2ggZXhwcmVzc2lvbiByZXRyaWV2ZXMsIHdob3NlIHZhbHVlcyB3aWxsIGJlIHVzZWQgdG8gcG9wdWxhdGUgdGhlIHZhbHVlcyB0byBjaG9vc2UgZnJvbS4gRm9yIGV4YW1wbGUgYEluc3RhbmNlSWRgXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21TZWFyY2goZXhwcmVzc2lvbjogc3RyaW5nLCBwb3B1bGF0ZUZyb206IHN0cmluZyk6IFZhbHVlcyB7XG4gICAgcmV0dXJuIG5ldyBTZWFyY2hWYWx1ZXMoZXhwcmVzc2lvbiwgcG9wdWxhdGVGcm9tKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgdmFsdWVzIGZyb20gYW4gYXJyYXkgb2YgcG9zc2libGUgdmFyaWFibGUgdmFsdWVzXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21WYWx1ZXMoLi4udmFsdWVzOiBWYXJpYWJsZVZhbHVlW10pOiBWYWx1ZXMge1xuICAgIGlmICh2YWx1ZXMubGVuZ3RoID09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkVtcHR5IHZhbHVlcyBpcyBub3QgYWxsb3dlZFwiKTtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBTdGF0aWNWYWx1ZXModmFsdWVzKTtcbiAgfVxuXG4gIHB1YmxpYyBhYnN0cmFjdCB0b0pzb24oKTogYW55O1xufVxuXG5jbGFzcyBTdGF0aWNWYWx1ZXMgZXh0ZW5kcyBWYWx1ZXMge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHZhbHVlczogVmFyaWFibGVWYWx1ZVtdKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHRvSnNvbigpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICB2YWx1ZXM6IHRoaXMudmFsdWVzLm1hcCgodmFsdWUpID0+ICh7XG4gICAgICAgIGxhYmVsOiB2YWx1ZS5sYWJlbCxcbiAgICAgICAgdmFsdWU6IHZhbHVlLnZhbHVlLFxuICAgICAgfSkpLFxuICAgIH07XG4gIH1cbn1cblxuY2xhc3MgU2VhcmNoVmFsdWVzIGV4dGVuZHMgVmFsdWVzIHtcbiAgLyoqXG4gICAqIENyZWF0ZSBhIHNlYXJjaCBleHByZXNzaW9uIGZvciB1c2VcbiAgICpcbiAgICogQHBhcmFtIGV4cHJlc3Npb24gc2VhcmNoIGV4cHJlc3Npb24gdGhhdCBzcGVjaWZpZXMgYSBuYW1lc3BhY2UsIGRpbWVuc2lvbiBuYW1lKHMpIGFuZCBhIG1ldHJpYyBuYW1lLiBGb3IgZXhhbXBsZSBge0FXUy9FQzIsSW5zdGFuY2VJZH0gTWV0cmljTmFtZT1cXFwiQ1BVVXRpbGl6YXRpb25cXFwiYFxuICAgKiBAcGFyYW0gcG9wdWxhdGVGcm9tIGRpbWVuc2lvbiB0aGUgZGltZW5zaW9uIG5hbWUsIHRoYXQgdGhlIHNlYXJjaCBleHByZXNzaW9uIHJldHJpZXZlcywgd2hvc2UgdmFsdWVzIHdpbGwgYmUgdXNlZCB0byBwb3B1bGF0ZSB0aGUgdmFsdWVzIHRvIGNob29zZSBmcm9tLiBGb3IgZXhhbXBsZSBgSW5zdGFuY2VJZGBcbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgZXhwcmVzc2lvbjogc3RyaW5nLFxuICAgIHB1YmxpYyByZWFkb25seSBwb3B1bGF0ZUZyb206IHN0cmluZyxcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHRvSnNvbigpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICBzZWFyY2g6IHRoaXMuZXhwcmVzc2lvbixcbiAgICAgIHBvcHVsYXRlRnJvbTogdGhpcy5wb3B1bGF0ZUZyb20sXG4gICAgfTtcbiAgfVxufVxuXG4vKipcbiAqIERlZmF1bHQgdmFsdWUgZm9yIHVzZSBpbiB7QGxpbmsgRGFzaGJvYXJkVmFyaWFibGVPcHRpb25zfVxuICovXG5leHBvcnQgY2xhc3MgRGVmYXVsdFZhbHVlIHtcbiAgLyoqXG4gICAqIEEgc3BlY2lhbCB2YWx1ZSBmb3IgdXNlIHdpdGggc2VhcmNoIGV4cHJlc3Npb25zIHRvIGhhdmUgdGhlIGRlZmF1bHQgdmFsdWUgYmUgdGhlIGZpcnN0IHZhbHVlIHJldHVybmVkIGZyb20gc2VhcmNoXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEZJUlNUID0gbmV3IERlZmF1bHRWYWx1ZShcIl9fRklSU1RcIik7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGRlZmF1bHQgdmFsdWVcbiAgICogQHBhcmFtIHZhbHVlIHRoZSB2YWx1ZSB0byBiZSB1c2VkIGFzIGRlZmF1bHRcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgdmFsdWUodmFsdWU6IGFueSkge1xuICAgIHJldHVybiBuZXcgRGVmYXVsdFZhbHVlKHZhbHVlKTtcbiAgfVxuXG4gIHByaXZhdGUgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IHZhbDogYW55KSB7fVxufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHtAbGluayBEYXNoYm9hcmRWYXJpYWJsZX1cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXNoYm9hcmRWYXJpYWJsZU9wdGlvbnMge1xuICAvKipcbiAgICogVHlwZSBvZiB0aGUgdmFyaWFibGVcbiAgICovXG4gIHJlYWRvbmx5IHR5cGU6IFZhcmlhYmxlVHlwZTtcblxuICAvKipcbiAgICogVGhlIHdheSB0aGUgdmFyaWFibGUgdmFsdWUgaXMgc2VsZWN0ZWRcbiAgICovXG4gIHJlYWRvbmx5IGlucHV0VHlwZTogVmFyaWFibGVJbnB1dFR5cGU7XG5cbiAgLyoqXG4gICAqIFBhdHRlcm4gb3IgcHJvcGVydHkgdmFsdWUgdG8gcmVwbGFjZVxuICAgKi9cbiAgcmVhZG9ubHkgdmFsdWU6IHN0cmluZztcblxuICAvKipcbiAgICogVW5pcXVlIGlkXG4gICAqL1xuICByZWFkb25seSBpZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBsYWJlbCBpbiB0aGUgdG9vbGJhclxuICAgKlxuICAgKiBAZGVmYXVsdCAtIHRoZSB2YXJpYWJsZSdzIHZhbHVlXG4gICAqL1xuICByZWFkb25seSBsYWJlbD86IHN0cmluZztcblxuICAvKipcbiAgICogT3B0aW9uYWwgdmFsdWVzIChyZXF1aXJlZCBmb3Ige0BsaW5rIFZhcmlhYmxlSW5wdXRUeXBlLlJBRElPfSBhbmQge0BsaW5rIFZhcmlhYmxlSW5wdXRUeXBlLlNFTEVDVH0gZGFzaGJvYXJkIHZhcmlhYmxlcykuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gdmFsdWVzXG4gICAqL1xuICByZWFkb25seSB2YWx1ZXM/OiBWYWx1ZXM7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGRlZmF1bHQgdmFsdWVcbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBkZWZhdWx0IHZhbHVlIGlzIHNldFxuICAgKi9cbiAgcmVhZG9ubHkgZGVmYXVsdFZhbHVlPzogRGVmYXVsdFZhbHVlO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSB2YXJpYWJsZSBpcyB2aXNpYmxlXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgdmlzaWJsZT86IGJvb2xlYW47XG59XG5cbi8qKlxuICogRGFzaGJvYXJkIFZhcmlhYmxlXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXNoYm9hcmRWYXJpYWJsZSBpbXBsZW1lbnRzIElWYXJpYWJsZSB7XG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IERhc2hib2FyZFZhcmlhYmxlT3B0aW9ucykge1xuICAgIGlmIChvcHRpb25zLmlucHV0VHlwZSAhPT0gVmFyaWFibGVJbnB1dFR5cGUuSU5QVVQgJiYgIW9wdGlvbnMudmFsdWVzKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBWYXJpYWJsZSB3aXRoIGlucHV0VHlwZSAoJHtvcHRpb25zLmlucHV0VHlwZX0pIHJlcXVpcmVzIHZhbHVlcyB0byBiZSBzZXRgLFxuICAgICAgKTtcbiAgICB9XG4gICAgaWYgKG9wdGlvbnMuaW5wdXRUeXBlID09IFZhcmlhYmxlSW5wdXRUeXBlLklOUFVUICYmIG9wdGlvbnMudmFsdWVzKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiaW5wdXRUeXBlIElOUFVUIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIHZhbHVlcy4gUGxlYXNlIGNob29zZSBlaXRoZXIgU0VMRUNUIG9yIFJBRElPIG9yIHJlbW92ZSAndmFsdWVzJyBmcm9tIG9wdGlvbnMuXCIsXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHRvSnNvbigpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICBbdGhpcy5vcHRpb25zLnR5cGVdOiB0aGlzLm9wdGlvbnMudmFsdWUsXG4gICAgICB0eXBlOiB0aGlzLm9wdGlvbnMudHlwZSxcbiAgICAgIGlucHV0VHlwZTogdGhpcy5vcHRpb25zLmlucHV0VHlwZSxcbiAgICAgIGlkOiB0aGlzLm9wdGlvbnMuaWQsXG4gICAgICBkZWZhdWx0VmFsdWU6IHRoaXMub3B0aW9ucy5kZWZhdWx0VmFsdWU/LnZhbCxcbiAgICAgIHZpc2libGU6IHRoaXMub3B0aW9ucy52aXNpYmxlLFxuICAgICAgbGFiZWw6IHRoaXMub3B0aW9ucy5sYWJlbCxcbiAgICAgIC4uLnRoaXMub3B0aW9ucy52YWx1ZXM/LnRvSnNvbigpLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
|
@@ -41,5 +41,5 @@ class ConcreteWidget {
|
|
|
41
41
|
}
|
|
42
42
|
exports.ConcreteWidget = ConcreteWidget;
|
|
43
43
|
_a = JSII_RTTI_SYMBOL_1;
|
|
44
|
-
ConcreteWidget[_a] = { fqn: "terraconstructs.aws.cloudwatch.ConcreteWidget", version: "0.1.
|
|
44
|
+
ConcreteWidget[_a] = { fqn: "terraconstructs.aws.cloudwatch.ConcreteWidget", version: "0.1.9" };
|
|
45
45
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F3cy9jbG91ZHdhdGNoL3dpZGdldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUVBLDRDQUF3QztBQUd4Qzs7R0FFRztBQUNVLFFBQUEsVUFBVSxHQUFHLEVBQUUsQ0FBQztBQXNDN0I7Ozs7R0FJRztBQUNILE1BQXNCLGNBQWM7SUFVbEMsWUFBWSxLQUFnQixFQUFFLEtBQWEsRUFBRSxNQUFjO1FBSDNDLGFBQVEsR0FBeUIsRUFBRSxDQUFDO1FBQ3BDLGVBQVUsR0FBeUMsRUFBRSxDQUFDO1FBR3BFLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsb0JBQVEsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFNUMsSUFBSSxJQUFJLENBQUMsS0FBSyxHQUFHLGtCQUFVLEVBQUUsQ0FBQztZQUM1QixNQUFNLElBQUksS0FBSyxDQUFDLDJCQUEyQixrQkFBVSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3pFLENBQUM7SUFDSCxDQUFDO0lBRU0sUUFBUSxDQUFDLENBQVMsRUFBRSxDQUFTO1FBQ2xDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ1gsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDYixDQUFDO0lBSUQ7O09BRUc7SUFDTyxrQkFBa0IsQ0FBQyxHQUFHLEVBQWE7UUFDM0MsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ2YsS0FBSyxNQUFNLENBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFVBQVUsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDO2dCQUMvRCxJQUFJLENBQUMsVUFBVyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQztZQUNqQyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztBQXBDSCx3Q0FxQ0MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNzAuMC9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaC9saWIvd2lkZ2V0LnRzXG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgQXdzU3RhY2sgfSBmcm9tIFwiLi4vYXdzLXN0YWNrXCI7XG5pbXBvcnQgeyBJTWV0cmljIH0gZnJvbSBcIi4vbWV0cmljLXR5cGVzXCI7XG5cbi8qKlxuICogVGhlIHdpZHRoIG9mIHRoZSBncmlkIHdlJ3JlIGZpbGxpbmdcbiAqL1xuZXhwb3J0IGNvbnN0IEdSSURfV0lEVEggPSAyNDtcblxuLyoqXG4gKiBBIHNpbmdsZSBkYXNoYm9hcmQgd2lkZ2V0XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSVdpZGdldCB7XG4gIC8qKlxuICAgKiBUaGUgYW1vdW50IG9mIGhvcml6b250YWwgZ3JpZCB1bml0cyB0aGUgd2lkZ2V0IHdpbGwgdGFrZSB1cFxuICAgKi9cbiAgcmVhZG9ubHkgd2lkdGg6IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIGFtb3VudCBvZiB2ZXJ0aWNhbCBncmlkIHVuaXRzIHRoZSB3aWRnZXQgd2lsbCB0YWtlIHVwXG4gICAqL1xuICByZWFkb25seSBoZWlnaHQ6IG51bWJlcjtcblxuICAvKipcbiAgICogQW55IHdhcm5pbmdzIHRoYXQgYXJlIHByb2R1Y2VkIGFzIGEgcmVzdWx0IG9mIHB1dHRpbmcgdG9nZXRoZXIgdGhpcyB3aWRnZXRcbiAgICogQGRlcHJlY2F0ZWQgLSB1c2Ugd2FybmluZ3NWMlxuICAgKi9cbiAgcmVhZG9ubHkgd2FybmluZ3M/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQW55IHdhcm5pbmdzIHRoYXQgYXJlIHByb2R1Y2VkIGFzIGEgcmVzdWx0IG9mIHB1dHRpbmcgdG9nZXRoZXIgdGhpcyB3aWRnZXRcbiAgICovXG4gIHJlYWRvbmx5IHdhcm5pbmdzVjI/OiB7IFtpZDogc3RyaW5nXTogc3RyaW5nIH07XG5cbiAgLyoqXG4gICAqIFBsYWNlIHRoZSB3aWRnZXQgYXQgYSBnaXZlbiBwb3NpdGlvblxuICAgKi9cbiAgcG9zaXRpb24oeDogbnVtYmVyLCB5OiBudW1iZXIpOiB2b2lkO1xuXG4gIC8qKlxuICAgKiBSZXR1cm4gdGhlIHdpZGdldCBKU09OIGZvciB1c2UgaW4gdGhlIGRhc2hib2FyZFxuICAgKi9cbiAgdG9Kc29uKCk6IGFueVtdO1xufVxuXG4vKipcbiAqIEEgcmVhbCBDbG91ZFdhdGNoIHdpZGdldCB0aGF0IGhhcyBpdHMgb3duIGZpeGVkIHNpemUgYW5kIHJlbWVtYmVycyBpdHMgcG9zaXRpb25cbiAqXG4gKiBUaGlzIGlzIGluIGNvbnRyYXN0IHRvIG90aGVyIHdpZGdldHMgd2hpY2ggZXhpc3QgZm9yIGxheW91dCBwdXJwb3Nlcy5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIENvbmNyZXRlV2lkZ2V0IGltcGxlbWVudHMgSVdpZGdldCB7XG4gIHB1YmxpYyByZWFkb25seSB3aWR0aDogbnVtYmVyO1xuICBwdWJsaWMgcmVhZG9ubHkgaGVpZ2h0OiBudW1iZXI7XG4gIHByb3RlY3RlZCB4PzogbnVtYmVyO1xuICBwcm90ZWN0ZWQgeT86IG51bWJlcjtcbiAgcHJvdGVjdGVkIHN0YWNrOiBBd3NTdGFjaztcblxuICBwdWJsaWMgcmVhZG9ubHkgd2FybmluZ3M6IHN0cmluZ1tdIHwgdW5kZWZpbmVkID0gW107XG4gIHB1YmxpYyByZWFkb25seSB3YXJuaW5nc1YyOiB7IFtpZDogc3RyaW5nXTogc3RyaW5nIH0gfCB1bmRlZmluZWQgPSB7fTtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCB3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlcikge1xuICAgIHRoaXMud2lkdGggPSB3aWR0aDtcbiAgICB0aGlzLmhlaWdodCA9IGhlaWdodDtcbiAgICB0aGlzLnN0YWNrID0gQXdzU3RhY2sub2ZBd3NDb25zdHJ1Y3Qoc2NvcGUpO1xuXG4gICAgaWYgKHRoaXMud2lkdGggPiBHUklEX1dJRFRIKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFdpZGdldCBpcyB0b28gd2lkZSwgbWF4ICR7R1JJRF9XSURUSH0gdW5pdHMgYWxsb3dlZGApO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBwb3NpdGlvbih4OiBudW1iZXIsIHk6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMueCA9IHg7XG4gICAgdGhpcy55ID0geTtcbiAgfVxuXG4gIHB1YmxpYyBhYnN0cmFjdCB0b0pzb24oKTogYW55W107XG5cbiAgLyoqXG4gICAqIENvcHkgdGhlIHdhcm5pbmdzIGZyb20gdGhlIGdpdmVuIG1ldHJpY1xuICAgKi9cbiAgcHJvdGVjdGVkIGNvcHlNZXRyaWNXYXJuaW5ncyguLi5tczogSU1ldHJpY1tdKSB7XG4gICAgbXMuZm9yRWFjaCgobSkgPT4ge1xuICAgICAgZm9yIChjb25zdCBbaWQsIG1lc3NhZ2VdIG9mIE9iamVjdC5lbnRyaWVzKG0ud2FybmluZ3NWMiA/PyB7fSkpIHtcbiAgICAgICAgdGhpcy53YXJuaW5nc1YyIVtpZF0gPSBtZXNzYWdlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -3,6 +3,9 @@ var _a, _b, _c, _d;
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.AccessLogFormat = exports.AccessLogField = exports.FirehoseLogDestination = exports.LogGroupLogDestination = void 0;
|
|
5
5
|
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
// import * as firehose from "../../aws-kinesisfirehose";
|
|
7
|
+
// import * as firehose from "../notify/firehose";
|
|
8
|
+
const errors_1 = require("../../errors");
|
|
6
9
|
/**
|
|
7
10
|
* Use CloudWatch Logs as a custom access log destination for API Gateway.
|
|
8
11
|
*/
|
|
@@ -21,7 +24,7 @@ class LogGroupLogDestination {
|
|
|
21
24
|
}
|
|
22
25
|
exports.LogGroupLogDestination = LogGroupLogDestination;
|
|
23
26
|
_a = JSII_RTTI_SYMBOL_1;
|
|
24
|
-
LogGroupLogDestination[_a] = { fqn: "terraconstructs.aws.compute.LogGroupLogDestination", version: "0.1.
|
|
27
|
+
LogGroupLogDestination[_a] = { fqn: "terraconstructs.aws.compute.LogGroupLogDestination", version: "0.1.9" };
|
|
25
28
|
/**
|
|
26
29
|
* Use a Firehose delivery stream as a custom access log destination for API Gateway.
|
|
27
30
|
*/
|
|
@@ -34,8 +37,7 @@ class FirehoseLogDestination {
|
|
|
34
37
|
*/
|
|
35
38
|
bind(_stage) {
|
|
36
39
|
if (!this.stream.nameInput?.startsWith("amazon-apigateway-")) {
|
|
37
|
-
|
|
38
|
-
throw new Error(`Firehose delivery stream name for access log destination must begin with 'amazon-apigateway-', got '${this.stream.nameInput}'`);
|
|
40
|
+
throw new errors_1.ValidationError(`Firehose delivery stream name for access log destination must begin with 'amazon-apigateway-', got '${this.stream.nameInput}'`, _stage);
|
|
39
41
|
}
|
|
40
42
|
return {
|
|
41
43
|
destinationArn: this.stream.arn,
|
|
@@ -44,7 +46,7 @@ class FirehoseLogDestination {
|
|
|
44
46
|
}
|
|
45
47
|
exports.FirehoseLogDestination = FirehoseLogDestination;
|
|
46
48
|
_b = JSII_RTTI_SYMBOL_1;
|
|
47
|
-
FirehoseLogDestination[_b] = { fqn: "terraconstructs.aws.compute.FirehoseLogDestination", version: "0.1.
|
|
49
|
+
FirehoseLogDestination[_b] = { fqn: "terraconstructs.aws.compute.FirehoseLogDestination", version: "0.1.9" };
|
|
48
50
|
/**
|
|
49
51
|
* $context variables that can be used to customize access log pattern.
|
|
50
52
|
*/
|
|
@@ -548,7 +550,7 @@ class AccessLogField {
|
|
|
548
550
|
}
|
|
549
551
|
exports.AccessLogField = AccessLogField;
|
|
550
552
|
_c = JSII_RTTI_SYMBOL_1;
|
|
551
|
-
AccessLogField[_c] = { fqn: "terraconstructs.aws.compute.AccessLogField", version: "0.1.
|
|
553
|
+
AccessLogField[_c] = { fqn: "terraconstructs.aws.compute.AccessLogField", version: "0.1.9" };
|
|
552
554
|
/**
|
|
553
555
|
* factory methods for access log format.
|
|
554
556
|
*/
|
|
@@ -645,5 +647,5 @@ class AccessLogFormat {
|
|
|
645
647
|
}
|
|
646
648
|
exports.AccessLogFormat = AccessLogFormat;
|
|
647
649
|
_d = JSII_RTTI_SYMBOL_1;
|
|
648
|
-
AccessLogFormat[_d] = { fqn: "terraconstructs.aws.compute.AccessLogFormat", version: "0.1.
|
|
649
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjZXNzLWxvZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hd3MvY29tcHV0ZS9hY2Nlc3MtbG9nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBK0JBOztHQUVHO0FBQ0gsTUFBYSxzQkFBc0I7SUFDakMsWUFBNkIsUUFBbUI7UUFBbkIsYUFBUSxHQUFSLFFBQVEsQ0FBVztJQUFHLENBQUM7SUFFcEQ7O09BRUc7SUFDSSxJQUFJLENBQUMsTUFBYztRQUN4QixPQUFPO1lBQ0wsY0FBYyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVztTQUMxQyxDQUFDO0lBQ0osQ0FBQzs7QUFWSCx3REFXQzs7O0FBRUQ7O0dBRUc7QUFDSCxNQUFhLHNCQUFzQjtJQUNqQyxZQUNtQixNQUFtRTtRQUFuRSxXQUFNLEdBQU4sTUFBTSxDQUE2RDtJQUNuRixDQUFDO0lBRUo7O09BRUc7SUFDSSxJQUFJLENBQUMsTUFBYztRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFDLG9CQUFvQixDQUFDLEVBQUUsQ0FBQztZQUM3RCw2QkFBNkI7WUFDN0IsTUFBTSxJQUFJLEtBQUssQ0FDYix1R0FBdUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEdBQUcsQ0FFaEksQ0FBQztRQUNKLENBQUM7UUFDRCxPQUFPO1lBQ0wsY0FBYyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRztTQUNoQyxDQUFDO0lBQ0osQ0FBQzs7QUFuQkgsd0RBb0JDOzs7QUFFRDs7R0FFRztBQUNILE1BQWEsY0FBYztJQUN6Qjs7O09BR0c7SUFDSSxNQUFNLENBQUMsZ0JBQWdCO1FBQzVCLE9BQU8sNkJBQTZCLENBQUM7SUFDdkMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLHNCQUFzQjtRQUNsQyxPQUFPLDZCQUE2QixDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxx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ckMsQ0FBQyxDQUFDLFNBQVM7WUFDYixVQUFVLEVBQUUsTUFBTSxDQUFDLFVBQVU7Z0JBQzNCLENBQUMsQ0FBQyxjQUFjLENBQUMsaUJBQWlCLEVBQUU7Z0JBQ3BDLENBQUMsQ0FBQyxTQUFTO1lBQ2IsWUFBWSxFQUFFLE1BQU0sQ0FBQyxZQUFZO2dCQUMvQixDQUFDLENBQUMsY0FBYyxDQUFDLG1CQUFtQixFQUFFO2dCQUN0QyxDQUFDLENBQUMsU0FBUztZQUNiLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDbEUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFRO2dCQUN2QixDQUFDLENBQUMsY0FBYyxDQUFDLGVBQWUsRUFBRTtnQkFDbEMsQ0FBQyxDQUFDLFNBQVM7WUFDYixjQUFjLEVBQUUsTUFBTSxDQUFDLGNBQWM7Z0JBQ25DLENBQUMsQ0FBQyxjQUFjLENBQUMscUJBQXFCLEVBQUU7Z0JBQ3hDLENBQUMsQ0FBQyxTQUFTO1NBQ2QsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBT0QsWUFBb0IsTUFBYztRQUNoQyxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUN2QixDQUFDO0lBRUQ7O09BRUc7SUFDSSxRQUFRO1FBQ2IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7O0FBekdILDBDQTBHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGtpbmVzaXNGaXJlaG9zZURlbGl2ZXJ5U3RyZWFtIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1hd3NcIjtcbmltcG9ydCB7IElTdGFnZSB9IGZyb20gXCIuL3N0YWdlXCI7XG4vLyBpbXBvcnQgKiBhcyBmaXJlaG9zZSBmcm9tIFwiLi4vLi4vYXdzLWtpbmVzaXNmaXJlaG9zZVwiO1xuLy8gaW1wb3J0ICogYXMgZmlyZWhvc2UgZnJvbSBcIi4uL25vdGlmeS9maXJlaG9zZVwiO1xuaW1wb3J0IHsgSUxvZ0dyb3VwIH0gZnJvbSBcIi4uL2Nsb3Vkd2F0Y2hcIjtcblxuLy8gVE9ETzogQWRvcHQgVW5zY29wZWRWYWxpZGF0aW9uRXJyb3Jcbi8vIC0gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL3B1bGwvMzMzODIvXG4vLyAtIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9wdWxsLzMzMDQ1XG4vLyBpbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3IgfSBmcm9tICcuLi8uLi9jb3JlL2xpYi9lcnJvcnMnO1xuXG4vKipcbiAqIEFjY2VzcyBsb2cgZGVzdGluYXRpb24gZm9yIGEgUmVzdEFwaSBTdGFnZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQWNjZXNzTG9nRGVzdGluYXRpb24ge1xuICAvKipcbiAgICogQmluZHMgdGhpcyBkZXN0aW5hdGlvbiB0byB0aGUgUmVzdEFwaSBTdGFnZS5cbiAgICovXG4gIGJpbmQoc3RhZ2U6IElTdGFnZSk6IEFjY2Vzc0xvZ0Rlc3RpbmF0aW9uQ29uZmlnO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgd2hlbiBiaW5kaW5nIGEgbG9nIGRlc3RpbmF0aW9uIHRvIGEgUmVzdEFwaSBTdGFnZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBY2Nlc3NMb2dEZXN0aW5hdGlvbkNvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUgQW1hem9uIFJlc291cmNlIE5hbWUgKEFSTikgb2YgdGhlIGRlc3RpbmF0aW9uIHJlc291cmNlXG4gICAqL1xuICByZWFkb25seSBkZXN0aW5hdGlvbkFybjogc3RyaW5nO1xufVxuXG4vKipcbiAqIFVzZSBDbG91ZFdhdGNoIExvZ3MgYXMgYSBjdXN0b20gYWNjZXNzIGxvZyBkZXN0aW5hdGlvbiBmb3IgQVBJIEdhdGV3YXkuXG4gKi9cbmV4cG9ydCBjbGFzcyBMb2dHcm91cExvZ0Rlc3RpbmF0aW9uIGltcGxlbWVudHMgSUFjY2Vzc0xvZ0Rlc3RpbmF0aW9uIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBsb2dHcm91cDogSUxvZ0dyb3VwKSB7fVxuXG4gIC8qKlxuICAgKiBCaW5kcyB0aGlzIGRlc3RpbmF0aW9uIHRvIHRoZSBDbG91ZFdhdGNoIExvZ3MuXG4gICAqL1xuICBwdWJsaWMgYmluZChfc3RhZ2U6IElTdGFnZSk6IEFjY2Vzc0xvZ0Rlc3RpbmF0aW9uQ29uZmlnIHtcbiAgICByZXR1cm4ge1xuICAgICAgZGVzdGluYXRpb25Bcm46IHRoaXMubG9nR3JvdXAubG9nR3JvdXBBcm4sXG4gICAgfTtcbiAgfVxufVxuXG4vKipcbiAqIFVzZSBhIEZpcmVob3NlIGRlbGl2ZXJ5IHN0cmVhbSBhcyBhIGN1c3RvbSBhY2Nlc3MgbG9nIGRlc3RpbmF0aW9uIGZvciBBUEkgR2F0ZXdheS5cbiAqL1xuZXhwb3J0IGNsYXNzIEZpcmVob3NlTG9nRGVzdGluYXRpb24gaW1wbGVtZW50cyBJQWNjZXNzTG9nRGVzdGluYXRpb24ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0cmVhbToga2luZXNpc0ZpcmVob3NlRGVsaXZlcnlTdHJlYW0uS2luZXNpc0ZpcmVob3NlRGVsaXZlcnlTdHJlYW0sXG4gICkge31cblxuICAvKipcbiAgICogQmluZHMgdGhpcyBkZXN0aW5hdGlvbiB0byB0aGUgRmlyZWhvc2UgZGVsaXZlcnkgc3RyZWFtLlxuICAgKi9cbiAgcHVibGljIGJpbmQoX3N0YWdlOiBJU3RhZ2UpOiBBY2Nlc3NMb2dEZXN0aW5hdGlvbkNvbmZpZyB7XG4gICAgaWYgKCF0aGlzLnN0cmVhbS5uYW1lSW5wdXQ/LnN0YXJ0c1dpdGgoXCJhbWF6b24tYXBpZ2F0ZXdheS1cIikpIHtcbiAgICAgIC8vIHRocm93IG5ldyBWYWxpZGF0aW9uRXJyb3IoXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBGaXJlaG9zZSBkZWxpdmVyeSBzdHJlYW0gbmFtZSBmb3IgYWNjZXNzIGxvZyBkZXN0aW5hdGlvbiBtdXN0IGJlZ2luIHdpdGggJ2FtYXpvbi1hcGlnYXRld2F5LScsIGdvdCAnJHt0aGlzLnN0cmVhbS5uYW1lSW5wdXR9J2AsXG4gICAgICAgIC8vIF9zdGFnZSxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBkZXN0aW5hdGlvbkFybjogdGhpcy5zdHJlYW0uYXJuLFxuICAgIH07XG4gIH1cbn1cblxuLyoqXG4gKiAkY29udGV4dCB2YXJpYWJsZXMgdGhhdCBjYW4gYmUgdXNlZCB0byBjdXN0b21pemUgYWNjZXNzIGxvZyBwYXR0ZXJuLlxuICovXG5leHBvcnQgY2xhc3MgQWNjZXNzTG9nRmllbGQge1xuICAvKipcbiAgICogVGhlIEFQSSBjYWxsZXJzIEFXUyBhY2NvdW50IElELlxuICAgKiBAZGVwcmVjYXRlZCBVc2UgYGNvbnRleHRDYWxsZXJBY2NvdW50SWRgIG9yIGBjb250ZXh0T3duZXJBY2NvdW50SWRgIGluc3RlYWRcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dEFjY291bnRJZCgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pZGVudGl0eS5hY2NvdW50SWRcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQVBJIGNhbGxlcnMgQVdTIGFjY291bnQgSUQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRDYWxsZXJBY2NvdW50SWQoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuaWRlbnRpdHkuYWNjb3VudElkXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFQSSBvd25lcidzIEFXUyBhY2NvdW50IElELlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0T3duZXJBY2NvdW50SWQoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuYWNjb3VudElkXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGlkZW50aWZpZXIgQVBJIEdhdGV3YXkgYXNzaWducyB0byB5b3VyIEFQSS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dEFwaUlkKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmFwaUlkXCI7XG4gIH1cblxuICAvKipcbiAgICogQSBwcm9wZXJ0eSBvZiB0aGUgY2xhaW1zIHJldHVybmVkIGZyb20gdGhlIEFtYXpvbiBDb2duaXRvIHVzZXIgcG9vbCBhZnRlciB0aGUgbWV0aG9kIGNhbGxlciBpcyBzdWNjZXNzZnVsbHkgYXV0aGVudGljYXRlZC5cbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXBpZ2F0ZXdheS9sYXRlc3QvZGV2ZWxvcGVyZ3VpZGUvYXBpZ2F0ZXdheS1pbnRlZ3JhdGUtd2l0aC1jb2duaXRvLmh0bWxcbiAgICpcbiAgICogQHBhcmFtIHByb3BlcnR5IEEgcHJvcGVydHkga2V5IG9mIHRoZSBjbGFpbXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRBdXRob3JpemVyQ2xhaW1zKHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gYCRjb250ZXh0LmF1dGhvcml6ZXIuY2xhaW1zLiR7cHJvcGVydHl9YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgcHJpbmNpcGFsIHVzZXIgaWRlbnRpZmljYXRpb24gYXNzb2NpYXRlZCB3aXRoIHRoZSB0b2tlbiBzZW50IGJ5IHRoZSBjbGllbnQgYW5kIHJldHVybmVkXG4gICAqIGZyb20gYW4gQVBJIEdhdGV3YXkgTGFtYmRhIGF1dGhvcml6ZXIgKGZvcm1lcmx5IGtub3duIGFzIGEgY3VzdG9tIGF1dGhvcml6ZXIpLlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hcGlnYXRld2F5L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9hcGlnYXRld2F5LXVzZS1sYW1iZGEtYXV0aG9yaXplci5odG1sXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRBdXRob3JpemVyUHJpbmNpcGFsSWQoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuYXV0aG9yaXplci5wcmluY2lwYWxJZFwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBzdHJpbmdpZmllZCB2YWx1ZSBvZiB0aGUgc3BlY2lmaWVkIGtleS12YWx1ZSBwYWlyIG9mIHRoZSBgY29udGV4dGAgbWFwIHJldHVybmVkIGZyb20gYW4gQVBJIEdhdGV3YXkgTGFtYmRhIGF1dGhvcml6ZXIgZnVuY3Rpb24uXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FwaWdhdGV3YXkvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2FwaWdhdGV3YXktdXNlLWxhbWJkYS1hdXRob3JpemVyLmh0bWxcbiAgICogQHBhcmFtIHByb3BlcnR5IGtleSBvZiB0aGUgY29udGV4dCBtYXAuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRBdXRob3JpemVyKHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gYCRjb250ZXh0LmF1dGhvcml6ZXIuJHtwcm9wZXJ0eX1gO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBBV1MgZW5kcG9pbnQncyByZXF1ZXN0IElELlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0QXdzRW5kcG9pbnRSZXF1ZXN0SWQoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuYXdzRW5kcG9pbnRSZXF1ZXN0SWRcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZnVsbCBkb21haW4gbmFtZSB1c2VkIHRvIGludm9rZSB0aGUgQVBJLiBUaGlzIHNob3VsZCBiZSB0aGUgc2FtZSBhcyB0aGUgaW5jb21pbmcgYEhvc3RgIGhlYWRlci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dERvbWFpbk5hbWUoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuZG9tYWluTmFtZVwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBmaXJzdCBsYWJlbCBvZiB0aGUgYCRjb250ZXh0LmRvbWFpbk5hbWVgLiBUaGlzIGlzIG9mdGVuIHVzZWQgYXMgYSBjYWxsZXIvY3VzdG9tZXIgaWRlbnRpZmllci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dERvbWFpblByZWZpeCgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5kb21haW5QcmVmaXhcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIHN0cmluZyBjb250YWluaW5nIGFuIEFQSSBHYXRld2F5IGVycm9yIG1lc3NhZ2UuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRFcnJvck1lc3NhZ2UoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuZXJyb3IubWVzc2FnZVwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBxdW90ZWQgdmFsdWUgb2YgJGNvbnRleHQuZXJyb3IubWVzc2FnZSwgbmFtZWx5IFwiJGNvbnRleHQuZXJyb3IubWVzc2FnZVwiLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0RXJyb3JNZXNzYWdlU3RyaW5nKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmVycm9yLm1lc3NhZ2VTdHJpbmdcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIHR5cGUgb2YgR2F0ZXdheVJlc3BvbnNlLiBUaGlzIHZhcmlhYmxlIGNhbiBvbmx5IGJlIHVzZWQgZm9yIHNpbXBsZSB2YXJpYWJsZSBzdWJzdGl0dXRpb24gaW4gYSBHYXRld2F5UmVzcG9uc2UgYm9keS1tYXBwaW5nIHRlbXBsYXRlLFxuICAgKiB3aGljaCBpcyBub3QgcHJvY2Vzc2VkIGJ5IHRoZSBWZWxvY2l0eSBUZW1wbGF0ZSBMYW5ndWFnZSBlbmdpbmUsIGFuZCBpbiBhY2Nlc3MgbG9nZ2luZy5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXBpZ2F0ZXdheS9sYXRlc3QvZGV2ZWxvcGVyZ3VpZGUvYXBpZ2F0ZXdheS13ZWJzb2NrZXQtYXBpLWxvZ2dpbmcuaHRtbFxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hcGlnYXRld2F5L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9jdXN0b21pemUtZ2F0ZXdheS1yZXNwb25zZXMuaHRtbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0RXJyb3JSZXNwb25zZVR5cGUoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuZXJyb3IucmVzcG9uc2VUeXBlXCI7XG4gIH1cblxuICAvKipcbiAgICogQSBzdHJpbmcgY29udGFpbmluZyBhIGRldGFpbGVkIHZhbGlkYXRpb24gZXJyb3IgbWVzc2FnZS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dEVycm9yVmFsaWRhdGlvbkVycm9yU3RyaW5nKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmVycm9yLnZhbGlkYXRpb25FcnJvclN0cmluZ1wiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBleHRlbmRlZCBJRCB0aGF0IEFQSSBHYXRld2F5IGFzc2lnbnMgdG8gdGhlIEFQSSByZXF1ZXN0LCB3aGljaCBjb250YWlucyBtb3JlIHVzZWZ1bCBpbmZvcm1hdGlvbiBmb3IgZGVidWdnaW5nL3Ryb3VibGVzaG9vdGluZy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dEV4dGVuZGVkUmVxdWVzdElkKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmV4dGVuZGVkUmVxdWVzdElkXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEhUVFAgbWV0aG9kIHVzZWQuIFZhbGlkIHZhbHVlcyBpbmNsdWRlOiBgREVMRVRFYCwgYEdFVGAsIGBIRUFEYCwgYE9QVElPTlNgLCBgUEFUQ0hgLCBgUE9TVGAsIGFuZCBgUFVUYC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dEh0dHBNZXRob2QoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuaHR0cE1ldGhvZFwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBBV1MgYWNjb3VudCBJRCBhc3NvY2lhdGVkIHdpdGggdGhlIHJlcXVlc3QuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRJZGVudGl0eUFjY291bnRJZCgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pZGVudGl0eS5hY2NvdW50SWRcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBGb3IgQVBJIG1ldGhvZHMgdGhhdCByZXF1aXJlIGFuIEFQSSBrZXksIHRoaXMgdmFyaWFibGUgaXMgdGhlIEFQSSBrZXkgYXNzb2NpYXRlZCB3aXRoIHRoZSBtZXRob2QgcmVxdWVzdC5cbiAgICogRm9yIG1ldGhvZHMgdGhhdCBkb24ndCByZXF1aXJlIGFuIEFQSSBrZXksIHRoaXMgdmFyaWFibGUgaXNcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXBpZ2F0ZXdheS9sYXRlc3QvZGV2ZWxvcGVyZ3VpZGUvYXBpLWdhdGV3YXktYXBpLXVzYWdlLXBsYW5zLmh0bWxcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dElkZW50aXR5QXBpS2V5KCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmlkZW50aXR5LmFwaUtleVwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBBUEkga2V5IElEIGFzc29jaWF0ZWQgd2l0aCBhbiBBUEkgcmVxdWVzdCB0aGF0IHJlcXVpcmVzIGFuIEFQSSBrZXkuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRJZGVudGl0eUFwaUtleUlkKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmlkZW50aXR5LmFwaUtleUlkXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHByaW5jaXBhbCBpZGVudGlmaWVyIG9mIHRoZSBjYWxsZXIgbWFraW5nIHRoZSByZXF1ZXN0LlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0SWRlbnRpdHlDYWxsZXIoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuaWRlbnRpdHkuY2FsbGVyXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFtYXpvbiBDb2duaXRvIGF1dGhlbnRpY2F0aW9uIHByb3ZpZGVyIHVzZWQgYnkgdGhlIGNhbGxlciBtYWtpbmcgdGhlIHJlcXVlc3QuXG4gICAqIEF2YWlsYWJsZSBvbmx5IGlmIHRoZSByZXF1ZXN0IHdhcyBzaWduZWQgd2l0aCBBbWF6b24gQ29nbml0byBjcmVkZW50aWFscy5cbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vY29nbml0by9sYXRlc3QvZGV2ZWxvcGVyZ3VpZGUvY29nbml0by1pZGVudGl0eS5odG1sXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRJZGVudGl0eUNvZ25pdG9BdXRoZW50aWNhdGlvblByb3ZpZGVyKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmlkZW50aXR5LmNvZ25pdG9BdXRoZW50aWNhdGlvblByb3ZpZGVyXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFtYXpvbiBDb2duaXRvIGF1dGhlbnRpY2F0aW9uIHR5cGUgb2YgdGhlIGNhbGxlciBtYWtpbmcgdGhlIHJlcXVlc3QuXG4gICAqIEF2YWlsYWJsZSBvbmx5IGlmIHRoZSByZXF1ZXN0IHdhcyBzaWduZWQgd2l0aCBBbWF6b24gQ29nbml0byBjcmVkZW50aWFscy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dElkZW50aXR5Q29nbml0b0F1dGhlbnRpY2F0aW9uVHlwZSgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pZGVudGl0eS5jb2duaXRvQXV0aGVudGljYXRpb25UeXBlXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFtYXpvbiBDb2duaXRvIGlkZW50aXR5IElEIG9mIHRoZSBjYWxsZXIgbWFraW5nIHRoZSByZXF1ZXN0LiBBdmFpbGFibGUgb25seSBpZiB0aGUgcmVxdWVzdCB3YXMgc2lnbmVkIHdpdGggQW1hem9uIENvZ25pdG8gY3JlZGVudGlhbHMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRJZGVudGl0eUNvZ25pdG9JZGVudGl0eUlkKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmlkZW50aXR5LmNvZ25pdG9JZGVudGl0eUlkXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFtYXpvbiBDb2duaXRvIGlkZW50aXR5IHBvb2wgSUQgb2YgdGhlIGNhbGxlciBtYWtpbmcgdGhlIHJlcXVlc3QuXG4gICAqIEF2YWlsYWJsZSBvbmx5IGlmIHRoZSByZXF1ZXN0IHdhcyBzaWduZWQgd2l0aCBBbWF6b24gQ29nbml0byBjcmVkZW50aWFscy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dElkZW50aXR5Q29nbml0b0lkZW50aXR5UG9vbElkKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmlkZW50aXR5LmNvZ25pdG9JZGVudGl0eVBvb2xJZFwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBBV1Mgb3JnYW5pemF0aW9uIElELlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0SWRlbnRpdHlQcmluY2lwYWxPcmdJZCgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pZGVudGl0eS5wcmluY2lwYWxPcmdJZFwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBzb3VyY2UgSVAgYWRkcmVzcyBvZiB0aGUgVENQIGNvbm5lY3Rpb24gbWFraW5nIHRoZSByZXF1ZXN0IHRvIEFQSSBHYXRld2F5LlxuICAgKiBXYXJuaW5nOiBZb3Ugc2hvdWxkIG5vdCB0cnVzdCB0aGlzIHZhbHVlIGlmIHRoZXJlIGlzIGFueSBjaGFuY2UgdGhhdCB0aGUgYFgtRm9yd2FyZGVkLUZvcmAgaGVhZGVyIGNvdWxkIGJlIGZvcmdlZC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dElkZW50aXR5U291cmNlSXAoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuaWRlbnRpdHkuc291cmNlSXBcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgUEVNLWVuY29kZWQgY2xpZW50IGNlcnRpZmljYXRlIHRoYXQgdGhlIGNsaWVudCBwcmVzZW50ZWQgZHVyaW5nIG11dHVhbCBUTFMgYXV0aGVudGljYXRpb24uXG4gICAqIFByZXNlbnQgd2hlbiBhIGNsaWVudCBhY2Nlc3NlcyBhbiBBUEkgYnkgdXNpbmcgYSBjdXN0b20gZG9tYWluIG5hbWUgdGhhdCBoYXMgbXV0dWFsIFRMUyBlbmFibGVkLlxuICAgKiBQcmVzZW50IG9ubHkgaW4gYWNjZXNzIGxvZ3MgaWYgbXV0dWFsIFRMUyBhdXRoZW50aWNhdGlvbiBmYWlscy5cbiAgICovXG5cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0SWRlbnRpdHlDbGllbnRDZXJ0UGVtKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmlkZW50aXR5LmNsaWVudENlcnQuY2xpZW50Q2VydFBlbVwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBkaXN0aW5ndWlzaGVkIG5hbWUgb2YgdGhlIHN1YmplY3Qgb2YgdGhlIGNlcnRpZmljYXRlIHRoYXQgYSBjbGllbnQgcHJlc2VudHMuXG4gICAqIFByZXNlbnQgd2hlbiBhIGNsaWVudCBhY2Nlc3NlcyBhbiBBUEkgYnkgdXNpbmcgYSBjdXN0b20gZG9tYWluIG5hbWUgdGhhdCBoYXMgbXV0dWFsIFRMUyBlbmFibGVkLlxuICAgKiBQcmVzZW50IG9ubHkgaW4gYWNjZXNzIGxvZ3MgaWYgbXV0dWFsIFRMUyBhdXRoZW50aWNhdGlvbiBmYWlscy5cbiAgICovXG5cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0SWRlbnRpdHlDbGllbnRDZXJ0U3ViamVjdEROKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmlkZW50aXR5LmNsaWVudENlcnQuc3ViamVjdEROXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGRpc3Rpbmd1aXNoZWQgbmFtZSBvZiB0aGUgaXNzdWVyIG9mIHRoZSBjZXJ0aWZpY2F0ZSB0aGF0IGEgY2xpZW50IHByZXNlbnRzLlxuICAgKiBQcmVzZW50IHdoZW4gYSBjbGllbnQgYWNjZXNzZXMgYW4gQVBJIGJ5IHVzaW5nIGEgY3VzdG9tIGRvbWFpbiBuYW1lIHRoYXQgaGFzIG11dHVhbCBUTFMgZW5hYmxlZC5cbiAgICogUHJlc2VudCBvbmx5IGluIGFjY2VzcyBsb2dzIGlmIG11dHVhbCBUTFMgYXV0aGVudGljYXRpb24gZmFpbHMuXG4gICAqL1xuXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dElkZW50aXR5Q2xpZW50Q2VydElzc3VuZXJETigpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pZGVudGl0eS5jbGllbnRDZXJ0Lmlzc3VlckROXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHNlcmlhbCBudW1iZXIgb2YgdGhlIGNlcnRpZmljYXRlLlxuICAgKiBQcmVzZW50IHdoZW4gYSBjbGllbnQgYWNjZXNzZXMgYW4gQVBJIGJ5IHVzaW5nIGEgY3VzdG9tIGRvbWFpbiBuYW1lIHRoYXQgaGFzIG11dHVhbCBUTFMgZW5hYmxlZC5cbiAgICogUHJlc2VudCBvbmx5IGluIGFjY2VzcyBsb2dzIGlmIG11dHVhbCBUTFMgYXV0aGVudGljYXRpb24gZmFpbHMuXG4gICAqL1xuXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dElkZW50aXR5Q2xpZW50Q2VydFNlcmlhbE51bWJlcigpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pZGVudGl0eS5jbGllbnRDZXJ0LnNlcmlhbE51bWJlclwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBkYXRlIGJlZm9yZSB3aGljaCB0aGUgY2VydGlmaWNhdGUgaXMgaW52YWxpZC5cbiAgICogUHJlc2VudCB3aGVuIGEgY2xpZW50IGFjY2Vzc2VzIGFuIEFQSSBieSB1c2luZyBhIGN1c3RvbSBkb21haW4gbmFtZSB0aGF0IGhhcyBtdXR1YWwgVExTIGVuYWJsZWQuXG4gICAqIFByZXNlbnQgb25seSBpbiBhY2Nlc3MgbG9ncyBpZiBtdXR1YWwgVExTIGF1dGhlbnRpY2F0aW9uIGZhaWxzLlxuICAgKi9cblxuICBwdWJsaWMgc3RhdGljIGNvbnRleHRJZGVudGl0eUNsaWVudENlcnRWYWxpZGl0eU5vdEJlZm9yZSgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pZGVudGl0eS5jbGllbnRDZXJ0LnZhbGlkaXR5Lm5vdEJlZm9yZVwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBkYXRlIGFmdGVyIHdoaWNoIHRoZSBjZXJ0aWZpY2F0ZSBpcyBpbnZhbGlkLlxuICAgKiBQcmVzZW50IHdoZW4gYSBjbGllbnQgYWNjZXNzZXMgYW4gQVBJIGJ5IHVzaW5nIGEgY3VzdG9tIGRvbWFpbiBuYW1lIHRoYXQgaGFzIG11dHVhbCBUTFMgZW5hYmxlZC5cbiAgICogUHJlc2VudCBvbmx5IGluIGFjY2VzcyBsb2dzIGlmIG11dHVhbCBUTFMgYXV0aGVudGljYXRpb24gZmFpbHMuXG4gICAqL1xuXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dElkZW50aXR5Q2xpZW50Q2VydFZhbGlkaXR5Tm90QWZ0ZXIoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuaWRlbnRpdHkuY2xpZW50Q2VydC52YWxpZGl0eS5ub3RBZnRlclwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBwcmluY2lwYWwgaWRlbnRpZmllciBvZiB0aGUgdXNlciBtYWtpbmcgdGhlIHJlcXVlc3QuIFVzZWQgaW4gTGFtYmRhIGF1dGhvcml6ZXJzLlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hcGlnYXRld2F5L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9hcGktZ2F0ZXdheS1sYW1iZGEtYXV0aG9yaXplci1vdXRwdXQuaHRtbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0SWRlbnRpdHlVc2VyKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmlkZW50aXR5LnVzZXJcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgVXNlci1BZ2VudCBoZWFkZXIgb2YgdGhlIEFQSSBjYWxsZXIuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRJZGVudGl0eVVzZXJBZ2VudCgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pZGVudGl0eS51c2VyQWdlbnRcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQW1hem9uIFJlc291cmNlIE5hbWUgKEFSTikgb2YgdGhlIGVmZmVjdGl2ZSB1c2VyIGlkZW50aWZpZWQgYWZ0ZXIgYXV0aGVudGljYXRpb24uXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0lBTS9sYXRlc3QvVXNlckd1aWRlL2lkX3VzZXJzLmh0bWxcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dElkZW50aXR5VXNlckFybigpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pZGVudGl0eS51c2VyQXJuXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHJlcXVlc3QgcGF0aC5cbiAgICogRm9yIGV4YW1wbGUsIGZvciBhIG5vbi1wcm94eSByZXF1ZXN0IFVSTCBvZiBodHRwczovL3tyZXN0LWFwaS1pZC5leGVjdXRlLWFwaS57cmVnaW9ufS5hbWF6b25hd3MuY29tL3tzdGFnZX0vcm9vdC9jaGlsZCxcbiAgICogdGhpcyB2YWx1ZSBpcyAve3N0YWdlfS9yb290L2NoaWxkLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0UGF0aCgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5wYXRoXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHJlcXVlc3QgcHJvdG9jb2wsIGZvciBleGFtcGxlLCBIVFRQLzEuMS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dFByb3RvY29sKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LnByb3RvY29sXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIElEIHRoYXQgQVBJIEdhdGV3YXkgYXNzaWducyB0byB0aGUgQVBJIHJlcXVlc3QuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRSZXF1ZXN0SWQoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQucmVxdWVzdElkXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHJlcXVlc3QgaGVhZGVyIG92ZXJyaWRlLlxuICAgKiBJZiB0aGlzIHBhcmFtZXRlciBpcyBkZWZpbmVkLCBpdCBjb250YWlucyB0aGUgaGVhZGVycyB0byBiZSB1c2VkIGluc3RlYWQgb2YgdGhlIEhUVFAgSGVhZGVycyB0aGF0IGFyZSBkZWZpbmVkIGluIHRoZSBJbnRlZ3JhdGlvbiBSZXF1ZXN0IHBhbmUuXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FwaWdhdGV3YXkvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2FwaWdhdGV3YXktb3ZlcnJpZGUtcmVxdWVzdC1yZXNwb25zZS1wYXJhbWV0ZXJzLmh0bWxcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dFJlcXVlc3RPdmVycmlkZUhlYWRlcihoZWFkZXJOYW1lOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gYCRjb250ZXh0LnJlcXVlc3RPdmVycmlkZS5oZWFkZXIuJHtoZWFkZXJOYW1lfWA7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHJlcXVlc3QgcGF0aCBvdmVycmlkZS4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgZGVmaW5lZCxcbiAgICogaXQgY29udGFpbnMgdGhlIHJlcXVlc3QgcGF0aCB0byBiZSB1c2VkIGluc3RlYWQgb2YgdGhlIFVSTCBQYXRoIFBhcmFtZXRlcnMgdGhhdCBhcmUgZGVmaW5lZCBpbiB0aGUgSW50ZWdyYXRpb24gUmVxdWVzdCBwYW5lLlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hcGlnYXRld2F5L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9hcGlnYXRld2F5LW92ZXJyaWRlLXJlcXVlc3QtcmVzcG9uc2UtcGFyYW1ldGVycy5odG1sXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRSZXF1ZXN0T3ZlcnJpZGVQYXRoKHBhdGhOYW1lOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gYCRjb250ZXh0LnJlcXVlc3RPdmVycmlkZS5wYXRoLiR7cGF0aE5hbWV9YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgcmVxdWVzdCBxdWVyeSBzdHJpbmcgb3ZlcnJpZGUuXG4gICAqIElmIHRoaXMgcGFyYW1ldGVyIGlzIGRlZmluZWQsIGl0IGNvbnRhaW5zIHRoZSByZXF1ZXN0IHF1ZXJ5IHN0cmluZ3MgdG8gYmUgdXNlZCBpbnN0ZWFkXG4gICAqIG9mIHRoZSBVUkwgUXVlcnkgU3RyaW5nIFBhcmFtZXRlcnMgdGhhdCBhcmUgZGVmaW5lZCBpbiB0aGUgSW50ZWdyYXRpb24gUmVxdWVzdCBwYW5lLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0UmVxdWVzdE92ZXJyaWRlUXVlcnlzdHJpbmcocXVlcnlzdHJpbmdOYW1lOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gYCRjb250ZXh0LnJlcXVlc3RPdmVycmlkZS5xdWVyeXN0cmluZy4ke3F1ZXJ5c3RyaW5nTmFtZX1gO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSByZXNwb25zZSBoZWFkZXIgb3ZlcnJpZGUuXG4gICAqIElmIHRoaXMgcGFyYW1ldGVyIGlzIGRlZmluZWQsIGl0IGNvbnRhaW5zIHRoZSBoZWFkZXIgdG8gYmUgcmV0dXJuZWQgaW5zdGVhZCBvZiB0aGUgUmVzcG9uc2UgaGVhZGVyXG4gICAqIHRoYXQgaXMgZGVmaW5lZCBhcyB0aGUgRGVmYXVsdCBtYXBwaW5nIGluIHRoZSBJbnRlZ3JhdGlvbiBSZXNwb25zZSBwYW5lLlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hcGlnYXRld2F5L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9hcGlnYXRld2F5LW92ZXJyaWRlLXJlcXVlc3QtcmVzcG9uc2UtcGFyYW1ldGVycy5odG1sXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRSZXNwb25zZU92ZXJyaWRlSGVhZGVyKGhlYWRlck5hbWU6IHN0cmluZykge1xuICAgIHJldHVybiBgJGNvbnRleHQucmVzcG9uc2VPdmVycmlkZS5oZWFkZXIuJHtoZWFkZXJOYW1lfWA7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHJlc3BvbnNlIHN0YXR1cyBjb2RlIG92ZXJyaWRlLlxuICAgKiBJZiB0aGlzIHBhcmFtZXRlciBpcyBkZWZpbmVkLCBpdCBjb250YWlucyB0aGUgc3RhdHVzIGNvZGUgdG8gYmUgcmV0dXJuZWQgaW5zdGVhZCBvZiB0aGUgTWV0aG9kIHJlc3BvbnNlIHN0YXR1c1xuICAgKiB0aGF0IGlzIGRlZmluZWQgYXMgdGhlIERlZmF1bHQgbWFwcGluZyBpbiB0aGUgSW50ZWdyYXRpb24gUmVzcG9uc2UgcGFuZS5cbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXBpZ2F0ZXdheS9sYXRlc3QvZGV2ZWxvcGVyZ3VpZGUvYXBpZ2F0ZXdheS1vdmVycmlkZS1yZXF1ZXN0LXJlc3BvbnNlLXBhcmFtZXRlcnMuaHRtbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0UmVzcG9uc2VPdmVycmlkZVN0YXR1cygpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5yZXNwb25zZU92ZXJyaWRlLnN0YXR1c1wiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBDTEYtZm9ybWF0dGVkIHJlcXVlc3QgdGltZSAoZGQvTU1NL3l5eXk6SEg6bW06c3MgKy1oaG1tKS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dFJlcXVlc3RUaW1lKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LnJlcXVlc3RUaW1lXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEVwb2NoLWZvcm1hdHRlZCByZXF1ZXN0IHRpbWUuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRSZXF1ZXN0VGltZUVwb2NoKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LnJlcXVlc3RUaW1lRXBvY2hcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgaWRlbnRpZmllciB0aGF0IEFQSSBHYXRld2F5IGFzc2lnbnMgdG8geW91ciByZXNvdXJjZS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dFJlc291cmNlSWQoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQucmVzb3VyY2VJZFwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBwYXRoIHRvIHlvdXIgcmVzb3VyY2UuXG4gICAqIEZvciBleGFtcGxlLCBmb3IgdGhlIG5vbi1wcm94eSByZXF1ZXN0IFVSSSBvZiBgaHR0cHM6Ly97cmVzdC1hcGktaWQuZXhlY3V0ZS1hcGkue3JlZ2lvbn0uYW1hem9uYXdzLmNvbS97c3RhZ2V9L3Jvb3QvY2hpbGRgLFxuICAgKiBUaGUgJGNvbnRleHQucmVzb3VyY2VQYXRoIHZhbHVlIGlzIGAvcm9vdC9jaGlsZGAuXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FwaWdhdGV3YXkvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2FwaS1nYXRld2F5LWNyZWF0ZS1hcGktc3RlcC1ieS1zdGVwLmh0bWxcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dFJlc291cmNlUGF0aCgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5yZXNvdXJjZVBhdGhcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZGVwbG95bWVudCBzdGFnZSBvZiB0aGUgQVBJIHJlcXVlc3QgKGZvciBleGFtcGxlLCBgQmV0YWAgb3IgYFByb2RgKS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dFN0YWdlKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LnN0YWdlXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHJlc3BvbnNlIHJlY2VpdmVkIGZyb20gQVdTIFdBRjogYFdBRl9BTExPV2Agb3IgYFdBRl9CTE9DS2AuIFdpbGwgbm90IGJlIHNldCBpZiB0aGUgc3RhZ2UgaXMgbm90IGFzc29jaWF0ZWQgd2l0aCBhIHdlYiBBQ0wuXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FwaWdhdGV3YXkvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2FwaWdhdGV3YXktY29udHJvbC1hY2Nlc3MtYXdzLXdhZi5odG1sXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRXYWZSZXNwb25zZUNvZGUoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQud2FmUmVzcG9uc2VDb2RlXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGNvbXBsZXRlIEFSTiBvZiB0aGUgd2ViIEFDTCB0aGF0IGlzIHVzZWQgdG8gZGVjaWRlIHdoZXRoZXIgdG8gYWxsb3cgb3IgYmxvY2sgdGhlIHJlcXVlc3QuXG4gICAqIFdpbGwgbm90IGJlIHNldCBpZiB0aGUgc3RhZ2UgaXMgbm90IGFzc29jaWF0ZWQgd2l0aCBhIHdlYiBBQ0wuXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FwaWdhdGV3YXkvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2FwaWdhdGV3YXktY29udHJvbC1hY2Nlc3MtYXdzLXdhZi5odG1sXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRXZWJhY2xBcm4oKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQud2ViYWNsQXJuXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHRyYWNlIElEIGZvciB0aGUgWC1SYXkgdHJhY2UuXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FwaWdhdGV3YXkvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2FwaWdhdGV3YXktZW5hYmxpbmcteHJheS5odG1sXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRYcmF5VHJhY2VJZCgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC54cmF5VHJhY2VJZFwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBhdXRob3JpemVyIGxhdGVuY3kgaW4gbXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRBdXRob3JpemVySW50ZWdyYXRpb25MYXRlbmN5KCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmF1dGhvcml6ZXIuaW50ZWdyYXRpb25MYXRlbmN5XCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGludGVncmF0aW9uIGxhdGVuY3kgaW4gbXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRJbnRlZ3JhdGlvbkxhdGVuY3koKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuaW50ZWdyYXRpb25MYXRlbmN5XCI7XG4gIH1cblxuICAvKipcbiAgICogRm9yIExhbWJkYSBwcm94eSBpbnRlZ3JhdGlvbiwgdGhpcyBwYXJhbWV0ZXIgcmVwcmVzZW50cyB0aGUgc3RhdHVzIGNvZGUgcmV0dXJuZWQgZnJvbSBBV1MgTGFtYmRhLFxuICAgKiBub3QgZnJvbSB0aGUgYmFja2VuZCBMYW1iZGEgZnVuY3Rpb24uXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRJbnRlZ3JhdGlvblN0YXR1cygpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pbnRlZ3JhdGlvblN0YXR1c1wiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSByZXNwb25zZSBsYXRlbmN5IGluIG1zLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0UmVzcG9uc2VMYXRlbmN5KCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LnJlc3BvbnNlTGF0ZW5jeVwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSByZXNwb25zZSBwYXlsb2FkIGxlbmd0aC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dFJlc3BvbnNlTGVuZ3RoKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LnJlc3BvbnNlTGVuZ3RoXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG1ldGhvZCByZXNwb25zZSBzdGF0dXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRTdGF0dXMoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuc3RhdHVzXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGF1dGhvcml6YXRpb24gZXJyb3IgbWVzc2FnZS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dEF1dGhvcml6ZUVycm9yKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmF1dGhvcml6ZS5lcnJvclwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBhdXRob3JpemF0aW9uIGxhdGVuY3kgaW4gbXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRBdXRob3JpemVMYXRlbmN5KCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmF1dGhvcml6ZS5sYXRlbmN5XCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHN0YXR1cyBjb2RlIHJldHVybmVkIGZyb20gYW4gYXV0aG9yaXphdGlvbiBhdHRlbXB0LlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0QXV0aG9yaXplU3RhdHVzKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmF1dGhvcml6ZS5zdGF0dXNcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZXJyb3IgbWVzc2FnZSByZXR1cm5lZCBmcm9tIGFuIGF1dGhvcml6ZXIuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRBdXRob3JpemVyRXJyb3IoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuYXV0aG9yaXplci5lcnJvclwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBzdGF0dXMgY29kZSByZXR1cm5lZCBmcm9tIGEgTGFtYmRhIGF1dGhvcml6ZXIuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRBdXRob3JpemVySW50ZWdyYXRpb25TdGF0dXMoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuYXV0aG9yaXplci5pbnRlZ3JhdGlvblN0YXR1c1wiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBhdXRob3JpemVyIGxhdGVuY3kgaW4gbXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRBdXRob3JpemVyTGF0ZW5jeSgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5hdXRob3JpemVyLmxhdGVuY3lcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQVdTIGVuZHBvaW50J3MgcmVxdWVzdCBJRC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dEF1dGhvcml6ZXJSZXF1ZXN0SWQoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuYXV0aG9yaXplci5yZXF1ZXN0SWRcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgc3RhdHVzIGNvZGUgcmV0dXJuZWQgZnJvbSBhbiBhdXRob3JpemVyLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0QXV0aG9yaXplclN0YXR1cygpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5hdXRob3JpemVyLnN0YXR1c1wiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBlcnJvciBtZXNzYWdlIHJldHVybmVkIGZyb20gYW4gYXV0aGVudGljYXRpb24gYXR0ZW1wdC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dEF1dGhlbnRpY2F0ZUVycm9yKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmF1dGhlbnRpY2F0ZS5lcnJvclwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBhdXRoZW50aWNhdGlvbiBsYXRlbmN5IGluIG1zLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0QXV0aGVudGljYXRlTGF0ZW5jeSgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5hdXRoZW50aWNhdGUubGF0ZW5jeVwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBzdGF0dXMgY29kZSByZXR1cm5lZCBmcm9tIGFuIGF1dGhlbnRpY2F0aW9uIGF0dGVtcHQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRBdXRoZW50aWNhdGVTdGF0dXMoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuYXV0aGVudGljYXRlLnN0YXR1c1wiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBwYXRoIGZvciBhbiBBUEkgbWFwcGluZyB0aGF0IGFuIGluY29taW5nIHJlcXVlc3QgbWF0Y2hlZC5cbiAgICogQXBwbGljYWJsZSB3aGVuIGEgY2xpZW50IHVzZXMgYSBjdXN0b20gZG9tYWluIG5hbWUgdG8gYWNjZXNzIGFuIEFQSS4gRm9yIGV4YW1wbGUgaWYgYSBjbGllbnQgc2VuZHMgYSByZXF1ZXN0IHRvXG4gICAqIGh0dHBzOi8vYXBpLmV4YW1wbGUuY29tL3YxL29yZGVycy8xMjM0LCBhbmQgdGhlIHJlcXVlc3QgbWF0Y2hlcyB0aGUgQVBJIG1hcHBpbmcgd2l0aCB0aGUgcGF0aCB2MS9vcmRlcnMsIHRoZSB2YWx1ZSBpcyB2MS9vcmRlcnMuXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2VuX2pwL2FwaWdhdGV3YXkvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL3Jlc3QtYXBpLW1hcHBpbmdzLmh0bWxcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dEN1c3RvbURvbWFpbkJhc2VQYXRoTWF0Y2hlZCgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5jdXN0b21Eb21haW4uYmFzZVBhdGhNYXRjaGVkXCI7XG4gIH1cblxuICAvKipcbiAgICogQSBzdHJpbmcgdGhhdCBjb250YWlucyBhbiBpbnRlZ3JhdGlvbiBlcnJvciBtZXNzYWdlLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0SW50ZWdyYXRpb25FcnJvck1lc3NhZ2UoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuaW50ZWdyYXRpb25FcnJvck1lc3NhZ2VcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZXJyb3IgbWVzc2FnZSByZXR1cm5lZCBmcm9tIEFXUyBXQUYuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRXYWZFcnJvcigpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC53YWYuZXJyb3JcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQVdTIFdBRiBsYXRlbmN5IGluIG1zLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0V2FmTGF0ZW5jeSgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC53YWYubGF0ZW5jeVwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBzdGF0dXMgY29kZSByZXR1cm5lZCBmcm9tIEFXUyBXQUYuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRXYWZTdGF0dXMoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQud2FmLnN0YXR1c1wiO1xuICB9XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgY29udHJvbGxpbmcgaXRlbXMgb3V0cHV0IGluIEpTT04gc3RhbmRhcmQgZm9ybWF0XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSnNvbldpdGhTdGFuZGFyZEZpZWxkUHJvcHMge1xuICAvKipcbiAgICogSWYgdGhpcyBmbGFnIGlzIGVuYWJsZWQsIHRoZSBzb3VyY2UgSVAgb2YgcmVxdWVzdCB3aWxsIGJlIG91dHB1dCB0byB0aGUgbG9nXG4gICAqL1xuICByZWFkb25seSBpcDogYm9vbGVhbjtcbiAgLyoqXG4gICAqIElmIHRoaXMgZmxhZyBpcyBlbmFibGVkLCB0aGUgcHJpbmNpcGFsIGlkZW50aWZpZXIgb2YgdGhlIGNhbGxlciB3aWxsIGJlIG91dHB1dCB0byB0aGUgbG9nXG4gICAqL1xuICByZWFkb25seSBjYWxsZXI6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJZiB0aGlzIGZsYWcgaXMgZW5hYmxlZCwgdGhlIHByaW5jaXBhbCBpZGVudGlmaWVyIG9mIHRoZSB1c2VyIHdpbGwgYmUgb3V0cHV0IHRvIHRoZSBsb2dcbiAgICovXG4gIHJlYWRvbmx5IHVzZXI6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJZiB0aGlzIGZsYWcgaXMgZW5hYmxlZCwgdGhlIENMRi1mb3JtYXR0ZWQgcmVxdWVzdCB0aW1lKChkZC9NTU0veXl5eTpISDptbTpzcyArLWhobW0pIHdpbGwgYmUgb3V0cHV0IHRvIHRoZSBsb2dcbiAgICovXG4gIHJlYWRvbmx5IHJlcXVlc3RUaW1lOiBib29sZWFuO1xuICAvKipcbiAgICogSWYgdGhpcyBmbGFnIGlzIGVuYWJsZWQsIHRoZSBodHRwIG1ldGhvZCB3aWxsIGJlIG91dHB1dCB0byB0aGUgbG9nXG4gICAqL1xuICByZWFkb25seSBodHRwTWV0aG9kOiBib29sZWFuO1xuICAvKipcbiAgICogSWYgdGhpcyBmbGFnIGlzIGVuYWJsZWQsIHRoZSBwYXRoIHRvIHlvdXIgcmVzb3VyY2Ugd2lsbCBiZSBvdXRwdXQgdG8gdGhlIGxvZ1xuICAgKi9cbiAgcmVhZG9ubHkgcmVzb3VyY2VQYXRoOiBib29sZWFuO1xuICAvKipcbiAgICogSWYgdGhpcyBmbGFnIGlzIGVuYWJsZWQsIHRoZSBtZXRob2QgcmVzcG9uc2Ugc3RhdHVzIHdpbGwgYmUgb3V0cHV0IHRvIHRoZSBsb2dcbiAgICovXG4gIHJlYWRvbmx5IHN0YXR1czogYm9vbGVhbjtcbiAgLyoqXG4gICAqIElmIHRoaXMgZmxhZyBpcyBlbmFibGVkLCB0aGUgcmVxdWVzdCBwcm90b2NvbCB3aWxsIGJlIG91dHB1dCB0byB0aGUgbG9nXG4gICAqL1xuICByZWFkb25seSBwcm90b2NvbDogYm9vbGVhbjtcbiAgLyoqXG4gICAqIElmIHRoaXMgZmxhZyBpcyBlbmFibGVkLCB0aGUgcmVzcG9uc2UgcGF5bG9hZCBsZW5ndGggd2lsbCBiZSBvdXRwdXQgdG8gdGhlIGxvZ1xuICAgKi9cbiAgcmVhZG9ubHkgcmVzcG9uc2VMZW5ndGg6IGJvb2xlYW47XG59XG5cbi8qKlxuICogZmFjdG9yeSBtZXRob2RzIGZvciBhY2Nlc3MgbG9nIGZvcm1hdC5cbiAqL1xuZXhwb3J0IGNsYXNzIEFjY2Vzc0xvZ0Zvcm1hdCB7XG4gIC8qKlxuICAgKiBDdXN0b20gbG9nIGZvcm1hdC5cbiAgICogWW91IGNhbiBjcmVhdGUgYW55IGxvZyBmb3JtYXQgc3RyaW5nLiBZb3UgY2FuIGVhc2lseSBnZXQgdGhlICQgY29udGV4dCB2YXJpYWJsZSBieSB1c2luZyB0aGUgbWV0aG9kcyBvZiBBY2Nlc3NMb2dGaWVsZC5cbiAgICogQGV4YW1wbGVcbiAgICpcbiAgICogIGFwaWdhdGV3YXkuQWNjZXNzTG9nRm9ybWF0LmN1c3RvbShKU09OLnN0cmluZ2lmeSh7XG4gICAqICAgICAgcmVxdWVzdElkOiBhcGlnYXRld2F5LkFjY2Vzc0xvZ0ZpZWxkLmNvbnRleHRSZXF1ZXN0SWQoKSxcbiAgICogICAgICBzb3VyY2VJcDogYXBpZ2F0ZXdheS5BY2Nlc3NMb2dGaWVsZC5jb250ZXh0SWRlbnRpdHlTb3VyY2VJcCgpLFxuICAgKiAgICAgIG1ldGhvZDogYXBpZ2F0ZXdheS5BY2Nlc3NMb2dGaWVsZC5jb250ZXh0SHR0cE1ldGhvZCgpLFxuICAgKiAgICAgIHVzZXJDb250ZXh0OiB7XG4gICAqICAgICAgICBzdWI6IGFwaWdhdGV3YXkuQWNjZXNzTG9nRmllbGQuY29udGV4dEF1dGhvcml6ZXJDbGFpbXMoJ3N1YicpLFxuICAgKiAgICAgICAgZW1haWw6IGFwaWdhdGV3YXkuQWNjZXNzTG9nRmllbGQuY29udGV4dEF1dGhvcml6ZXJDbGFpbXMoJ2VtYWlsJylcbiAgICogICAgICB9XG4gICAqICAgfSkpXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGN1c3RvbShmb3JtYXQ6IHN0cmluZyk6IEFjY2Vzc0xvZ0Zvcm1hdCB7XG4gICAgcmV0dXJuIG5ldyBBY2Nlc3NMb2dGb3JtYXQoZm9ybWF0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBDb21tb24gTG9nIEZvcm1hdC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY2xmKCk6IEFjY2Vzc0xvZ0Zvcm1hdCB7XG4gICAgY29uc3QgcmVxdWVzdGVyID0gW1xuICAgICAgQWNjZXNzTG9nRmllbGQuY29udGV4dElkZW50aXR5U291cmNlSXAoKSxcbiAgICAgIEFjY2Vzc0xvZ0ZpZWxkLmNvbnRleHRJZGVudGl0eUNhbGxlcigpLFxuICAgICAgQWNjZXNzTG9nRmllbGQuY29udGV4dElkZW50aXR5VXNlcigpLFxuICAgIF0uam9pbihcIiBcIik7XG4gICAgY29uc3QgcmVxdWVzdFRpbWUgPSBBY2Nlc3NMb2dGaWVsZC5jb250ZXh0UmVxdWVzdFRpbWUoKTtcbiAgICBjb25zdCByZXF1ZXN0ID0gW1xuICAgICAgQWNjZXNzTG9nRmllbGQuY29udGV4dEh0dHBNZXRob2QoKSxcbiAgICAgIEFjY2Vzc0xvZ0ZpZWxkLmNvbnRleHRSZXNvdXJjZVBhdGgoKSxcbiAgICAgIEFjY2Vzc0xvZ0ZpZWxkLmNvbnRleHRQcm90b2NvbCgpLFxuICAgIF0uam9pbihcIiBcIik7XG4gICAgY29uc3Qgc3RhdHVzID0gW1xuICAgICAgQWNjZXNzTG9nRmllbGQuY29udGV4dFN0YXR1cygpLFxuICAgICAgQWNjZXNzTG9nRmllbGQuY29udGV4dFJlc3BvbnNlTGVuZ3RoKCksXG4gICAgICBBY2Nlc3NMb2dGaWVsZC5jb250ZXh0UmVxdWVzdElkKCksXG4gICAgXS5qb2luKFwiIFwiKTtcblxuICAgIHJldHVybiBuZXcgQWNjZXNzTG9nRm9ybWF0KFxuICAgICAgYCR7cmVxdWVzdGVyfSBbJHtyZXF1ZXN0VGltZX1dIFwiJHtyZXF1ZXN0fVwiICR7c3RhdHVzfWAsXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBY2Nlc3MgbG9nIHdpbGwgYmUgcHJvZHVjZWQgaW4gdGhlIEpTT04gZm9ybWF0IHdpdGggYSBzZXQgb2YgZmllbGRzIG1vc3QgdXNlZnVsIGluIHRoZSBhY2Nlc3MgbG9nLiBBbGwgZmllbGRzIGFyZSB0dXJuZWQgb24gYnkgZGVmYXVsdCB3aXRoIHRoZVxuICAgKiBvcHRpb24gdG8gdHVybiBvZmYgc3BlY2lmaWMgZmllbGRzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBqc29uV2l0aFN0YW5kYXJkRmllbGRzKFxuICAgIGZpZWxkczogSnNvbldpdGhTdGFuZGFyZEZpZWxkUHJvcHMgPSB7XG4gICAgICBpcDogdHJ1ZSxcbiAgICAgIHVzZXI6IHRydWUsXG4gICAgICBjYWxsZXI6IHRydWUsXG4gICAgICByZXF1ZXN0VGltZTogdHJ1ZSxcbiAgICAgIGh0dHBNZXRob2Q6IHRydWUsXG4gICAgICByZXNvdXJjZVBhdGg6IHRydWUsXG4gICAgICBzdGF0dXM6IHRydWUsXG4gICAgICBwcm90b2NvbDogdHJ1ZSxcbiAgICAgIHJlc3BvbnNlTGVuZ3RoOiB0cnVlLFxuICAgIH0sXG4gICk6IEFjY2Vzc0xvZ0Zvcm1hdCB7XG4gICAgcmV0dXJuIHRoaXMuY3VzdG9tKFxuICAgICAgSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICByZXF1ZXN0SWQ6IEFjY2Vzc0xvZ0ZpZWxkLmNvbnRleHRSZXF1ZXN0SWQoKSxcbiAgICAgICAgaXA6IGZpZWxkcy5pcCA/IEFjY2Vzc0xvZ0ZpZWxkLmNvbnRleHRJZGVudGl0eVNvdXJjZUlwKCkgOiB1bmRlZmluZWQsXG4gICAgICAgIHVzZXI6IGZpZWxkcy51c2VyID8gQWNjZXNzTG9nRmllbGQuY29udGV4dElkZW50aXR5VXNlcigpIDogdW5kZWZpbmVkLFxuICAgICAgICBjYWxsZXI6IGZpZWxkcy5jYWxsZXJcbiAgICAgICAgICA/IEFjY2Vzc0xvZ0ZpZWxkLmNvbnRleHRJZGVudGl0eUNhbGxlcigpXG4gICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICAgIHJlcXVlc3RUaW1lOiBmaWVsZHMucmVxdWVzdFRpbWVcbiAgICAgICAgICA/IEFjY2Vzc0xvZ0ZpZWxkLmNvbnRleHRSZXF1ZXN0VGltZSgpXG4gICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICAgIGh0dHBNZXRob2Q6IGZpZWxkcy5odHRwTWV0aG9kXG4gICAgICAgICAgPyBBY2Nlc3NMb2dGaWVsZC5jb250ZXh0SHR0cE1ldGhvZCgpXG4gICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICAgIHJlc291cmNlUGF0aDogZmllbGRzLnJlc291cmNlUGF0aFxuICAgICAgICAgID8gQWNjZXNzTG9nRmllbGQuY29udGV4dFJlc291cmNlUGF0aCgpXG4gICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICAgIHN0YXR1czogZmllbGRzLnN0YXR1cyA/IEFjY2Vzc0xvZ0ZpZWxkLmNvbnRleHRTdGF0dXMoKSA6IHVuZGVmaW5lZCxcbiAgICAgICAgcHJvdG9jb2w6IGZpZWxkcy5wcm90b2NvbFxuICAgICAgICAgID8gQWNjZXNzTG9nRmllbGQuY29udGV4dFByb3RvY29sKClcbiAgICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgICAgcmVzcG9uc2VMZW5ndGg6IGZpZWxkcy5yZXNwb25zZUxlbmd0aFxuICAgICAgICAgID8gQWNjZXNzTG9nRmllbGQuY29udGV4dFJlc3BvbnNlTGVuZ3RoKClcbiAgICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQSBBUEkgR2F0ZXdheSBjdXN0b20gYWNjZXNzIGxvZyBmb3JtYXRcbiAgICovXG4gIHByaXZhdGUgcmVhZG9ubHkgZm9ybWF0OiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3Rvcihmb3JtYXQ6IHN0cmluZykge1xuICAgIHRoaXMuZm9ybWF0ID0gZm9ybWF0O1xuICB9XG5cbiAgLyoqXG4gICAqIE91dHB1dCBhIGZvcm1hdCBzdHJpbmcgdG8gYmUgdXNlZCB3aXRoIENsb3VkRm9ybWF0aW9uLlxuICAgKi9cbiAgcHVibGljIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybWF0O1xuICB9XG59XG4iXX0=
|
|
650
|
+
AccessLogFormat[_d] = { fqn: "terraconstructs.aws.compute.AccessLogFormat", version: "0.1.9" };
|
|
651
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjZXNzLWxvZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hd3MvY29tcHV0ZS9hY2Nlc3MtbG9nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBRUEseURBQXlEO0FBQ3pELGtEQUFrRDtBQUNsRCx5Q0FBK0M7QUF1Qi9DOztHQUVHO0FBQ0gsTUFBYSxzQkFBc0I7SUFDakMsWUFBNkIsUUFBbUI7UUFBbkIsYUFBUSxHQUFSLFFBQVEsQ0FBVztJQUFHLENBQUM7SUFFcEQ7O09BRUc7SUFDSSxJQUFJLENBQUMsTUFBYztRQUN4QixPQUFPO1lBQ0wsY0FBYyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVztTQUMxQyxDQUFDO0lBQ0osQ0FBQzs7QUFWSCx3REFXQzs7O0FBRUQ7O0dBRUc7QUFDSCxNQUFhLHNCQUFzQjtJQUNqQyxZQUNtQixNQUFtRTtRQUFuRSxXQUFNLEdBQU4sTUFBTSxDQUE2RDtJQUNuRixDQUFDO0lBRUo7O09BRUc7SUFDSSxJQUFJLENBQUMsTUFBYztRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFDLG9CQUFvQixDQUFDLEVBQUUsQ0FBQztZQUM3RCxNQUFNLElBQUksd0JBQWUsQ0FDdkIsdUdBQXVHLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxHQUFHLEVBQy9ILE1BQU0sQ0FDUCxDQUFDO1FBQ0osQ0FBQztRQUNELE9BQU87WUFDTCxjQUFjLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHO1NBQ2hDLENBQUM7SUFDSixDQUFDOztBQWxCSCx3REFtQkM7OztBQUVEOztHQUVHO0FBQ0gsTUFBYSxjQUFjO0lBQ3pCOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxnQkFBZ0I7UUFDNUIsT0FBTyw2QkFBNkIsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsc0JBQXNCO1FBQ2xDLE9BQU8sNkJBQTZCLENBQUM7SUFDdkMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLHFCQUFxQjtRQUNqQyxPQUFPLG9CQUFvQixDQUFDO0lBQzlCLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxZQUFZO1FBQ3hCLE9BQU8sZ0JBQWdCLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLHVCQUF1QixDQUFDLFFBQWdCO1FBQ3BELE9BQU8sOEJBQThCLFFBQVEsRUFBRSxDQUFDO0lBQ2xELENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLDRCQUE0QjtRQUN4QyxPQUFPLGlDQUFpQyxDQUFDO0lBQzNDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLGlCQUFpQixDQUFDLFFBQWdCO1FBQzlDLE9BQU8sdUJBQXVCLFFBQVEsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQywyQkFBMkI7UUFDdkMsT0FBTywrQkFBK0IsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsaUJBQWlCO1FBQzdCLE9BQU8scUJBQXFCLENBQUM7SUFDL0IsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLG1CQUFtQjtRQUMvQixPQUFPLHVCQUF1QixDQUFDO0lBQ2pDLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxtQkFBbUI7UUFDL0IsT0FBTyx3QkFBd0IsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMseUJBQXlCO1FBQ3JDLE9BQU8sOEJBQThCLENBQUM7SUFDeEMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyx3QkFBd0I7UUFDcEMsT0FBTyw2QkFBNkIsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsaUNBQWlDO1FBQzdDLE9BQU8sc0NBQXNDLENBQUM7SUFDaEQsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLHdCQUF3QjtRQUNwQyxPQUFPLDRCQUE0QixDQUFDO0lBQ3RDLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxpQkFBaUI7UUFDN0IsT0FBTyxxQkFBcUIsQ0FBQztJQUMvQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsd0JBQXdCO1FBQ3BDLE9BQU8sNkJBQTZCLENBQUM7SUFDdkMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMscUJBQXFCO1FBQ2pDLE9BQU8sMEJBQTBCLENBQUM7SUFDcEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLHVCQUF1QjtRQUNuQyxPQUFPLDRCQUE0QixDQUFDO0lBQ3RDLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxxQkFBcUI7UUFDakMsT0FBTywwQkFBMEIsQ0FBQztJQUNwQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyw0Q0FBNEM7UUFDeEQsT0FBTyxpREFBaUQsQ0FBQztJQUMzRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLHdDQUF3QztRQUNwRCxPQUFPLDZDQUE2QyxDQUFDO0lBQ3ZELENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxnQ0FBZ0M7UUFDNUMsT0FBTyxxQ0FBcUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLG9DQUFvQztRQUNoRCxPQUFPLHlDQUF5QyxDQUFDO0lBQ25ELENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyw2QkFBNkI7UUFDekMsT0FBTyxrQ0FBa0MsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLHVCQUF1QjtRQUNuQyxPQUFPLDRCQUE0QixDQUFDO0lBQ3RDLENBQUM7SUFFRDs7OztPQUlHO0lBRUksTUFBTSxDQUFDLDRCQUE0QjtRQUN4QyxPQUFPLDRDQUE0QyxDQUFDO0lBQ3RELENBQUM7SUFFRDs7OztPQUlHO0lBRUksTUFBTSxDQUFDLGtDQUFrQztRQUM5QyxPQUFPLHdDQUF3QyxDQUFDO0lBQ2xELENBQUM7SUFFRDs7OztPQUlHO0lBRUksTUFBTSxDQUFDLGtDQUFrQztRQUM5QyxPQUFPLHVDQUF1QyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7OztPQUlHO0lBRUksTUFBTSxDQUFDLHFDQUFxQztRQUNqRCxPQUFPLDJDQUEyQyxDQUFDO0lBQ3JELENBQUM7SUFFRDs7OztPQUlHO0lBRUksTUFBTSxDQUFDLDBDQUEwQztRQUN0RCxPQUFPLGlEQUFpRCxDQUFDO0lBQzNELENBQUM7SUFFRDs7OztPQUlHO0lBRUksTUFBTSxDQUFDLHlDQUF5QztRQUNyRCxPQUFPLGdEQUFnRCxDQUFDO0lBQzFELENBQUM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsbUJBQW1CO1FBQy9CLE9BQU8sd0JBQXdCLENBQUM7SUFDbEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLHdCQUF3QjtRQUNwQyxPQUFPLDZCQUE2QixDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsc0JBQXNCO1FBQ2xDLE9BQU8sMkJBQTJCLENBQUM7SUFDckMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsV0FBVztRQUN2QixPQUFPLGVBQWUsQ0FBQztJQUN6QixDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsZUFBZTtRQUMzQixPQUFPLG1CQUFtQixDQUFDO0lBQzdCLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxnQkFBZ0I7UUFDNUIsT0FBTyxvQkFBb0IsQ0FBQztJQUM5QixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxVQUFrQjtRQUMzRCxPQUFPLG1DQUFtQyxVQUFVLEVBQUUsQ0FBQztJQUN6RCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxRQUFnQjtRQUN2RCxPQUFPLGlDQUFpQyxRQUFRLEVBQUUsQ0FBQztJQUNyRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyxpQ0FBaUMsQ0FBQyxlQUF1QjtRQUNyRSxPQUFPLHdDQUF3QyxlQUFlLEVBQUUsQ0FBQztJQUNuRSxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsNkJBQTZCLENBQUMsVUFBa0I7UUFDNUQsT0FBTyxvQ0FBb0MsVUFBVSxFQUFFLENBQUM7SUFDMUQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLDZCQUE2QjtRQUN6QyxPQUFPLGtDQUFrQyxDQUFDO0lBQzVDLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxrQkFBa0I7UUFDOUIsT0FBTyxzQkFBc0IsQ0FBQztJQUNoQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsdUJBQXVCO1FBQ25DLE9BQU8sMkJBQTJCLENBQUM7SUFDckMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLGlCQUFpQjtRQUM3QixPQUFPLHFCQUFxQixDQUFDO0lBQy9CLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLE1BQU0sQ0FBQyxtQkFBbUI7UUFDL0IsT0FBTyx1QkFBdUIsQ0FBQztJQUNqQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsWUFBWTtRQUN4QixPQUFPLGdCQUFnQixDQUFDO0lBQzFCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsc0JBQXNCO1FBQ2xDLE9BQU8sMEJBQTBCLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsZ0JBQWdCO1FBQzVCLE9BQU8sb0JBQW9CLENBQUM7SUFDOUIsQ0FBQztJQUVEOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxrQkFBa0I7UUFDOUIsT0FBTyxzQkFBc0IsQ0FBQztJQUNoQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsbUNBQW1DO1FBQy9DLE9BQU8sd0NBQXdDLENBQUM7SUFDbEQsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLHlCQUF5QjtRQUNyQyxPQUFPLDZCQUE2QixDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsd0JBQXdCO1FBQ3BDLE9BQU8sNEJBQTRCLENBQUM7SUFDdEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLHNCQUFzQjtRQUNsQyxPQUFPLDBCQUEwQixDQUFDO0lBQ3BDLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxxQkFBcUI7UUFDakMsT0FBTyx5QkFBeUIsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsYUFBYTtRQUN6QixPQUFPLGlCQUFpQixDQUFDO0lBQzNCLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxxQkFBcUI7UUFDakMsT0FBTywwQkFBMEIsQ0FBQztJQUNwQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsdUJBQXVCO1FBQ25DLE9BQU8sNEJBQTRCLENBQUM7SUFDdEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLHNCQUFzQjtRQUNsQyxPQUFPLDJCQUEyQixDQUFDO0lBQ3JDLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxzQkFBc0I7UUFDbEMsT0FBTywyQkFBMkIsQ0FBQztJQUNyQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsa0NBQWtDO1FBQzlDLE9BQU8sdUNBQXVDLENBQUM7SUFDakQsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLHdCQUF3QjtRQUNwQyxPQUFPLDZCQUE2QixDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQywwQkFBMEI7UUFDdEMsT0FBTywrQkFBK0IsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsdUJBQXVCO1FBQ25DLE9BQU8sNEJBQTRCLENBQUM7SUFDdEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLHdCQUF3QjtRQUNwQyxPQUFPLDZCQUE2QixDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQywwQkFBMEI7UUFDdEMsT0FBTywrQkFBK0IsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMseUJBQXlCO1FBQ3JDLE9BQU8sOEJBQThCLENBQUM7SUFDeEMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLGtDQUFrQztRQUM5QyxPQUFPLHVDQUF1QyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyw4QkFBOEI7UUFDMUMsT0FBTyxrQ0FBa0MsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsZUFBZTtRQUMzQixPQUFPLG9CQUFvQixDQUFDO0lBQzlCLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxpQkFBaUI7UUFDN0IsT0FBTyxzQkFBc0IsQ0FBQztJQUNoQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsZ0JBQWdCO1FBQzVCLE9BQU8scUJBQXFCLENBQUM7SUFDL0IsQ0FBQzs7QUE5akJILHdDQStqQkM7OztBQTRDRDs7R0FFRztBQUNILE1BQWEsZUFBZTtJQUMxQjs7Ozs7Ozs7Ozs7Ozs7T0FjRztJQUNJLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBYztRQUNqQyxPQUFPLElBQUksZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxHQUFHO1FBQ2YsTUFBTSxTQUFTLEdBQUc7WUFDaEIsY0FBYyxDQUFDLHVCQUF1QixFQUFFO1lBQ3hDLGNBQWMsQ0FBQyxxQkFBcUIsRUFBRTtZQUN0QyxjQUFjLENBQUMsbUJBQW1CLEVBQUU7U0FDckMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDWixNQUFNLFdBQVcsR0FBRyxjQUFjLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUN4RCxNQUFNLE9BQU8sR0FBRztZQUNkLGNBQWMsQ0FBQyxpQkFBaUIsRUFBRTtZQUNsQyxjQUFjLENBQUMsbUJBQW1CLEVBQUU7WUFDcEMsY0FBYyxDQUFDLGVBQWUsRUFBRTtTQUNqQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNaLE1BQU0sTUFBTSxHQUFHO1lBQ2IsY0FBYyxDQUFDLGFBQWEsRUFBRTtZQUM5QixjQUFjLENBQUMscUJBQXFCLEVBQUU7WUFDdEMsY0FBYyxDQUFDLGdCQUFnQixFQUFFO1NBQ2xDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRVosT0FBTyxJQUFJLGVBQWUsQ0FDeEIsR0FBRyxTQUFTLEtBQUssV0FBVyxNQUFNLE9BQU8sS0FBSyxNQUFNLEVBQUUsQ0FDdkQsQ0FBQztJQUNKLENBQUM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsc0JBQXNCLENBQ2xDLFNBQXFDO1FBQ25DLEVBQUUsRUFBRSxJQUFJO1FBQ1IsSUFBSSxFQUFFLElBQUk7UUFDVixNQUFNLEVBQUUsSUFBSTtRQUNaLFdBQVcsRUFBRSxJQUFJO1FBQ2pCLFVBQVUsRUFBRSxJQUFJO1FBQ2hCLFlBQVksRUFBRSxJQUFJO1FBQ2xCLE1BQU0sRUFBRSxJQUFJO1FBQ1osUUFBUSxFQUFFLElBQUk7UUFDZCxjQUFjLEVBQUUsSUFBSTtLQUNyQjtRQUVELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FDaEIsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNiLFNBQVMsRUFBRSxjQUFjLENBQUMsZ0JBQWdCLEVBQUU7WUFDNUMsRUFBRSxFQUFFLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTO1lBQ3BFLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztZQUNwRSxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07Z0JBQ25CLENBQUMsQ0FBQyxjQUFjLENBQUMscUJBQXFCLEVBQUU7Z0JBQ3hDLENBQUMsQ0FBQyxTQUFTO1lBQ2IsV0FBVyxFQUFFLE1BQU0sQ0FBQyxXQUFXO2dCQUM3QixDQUFDLENBQUMsY0FBYyxDQUFDLGtCQUFrQixFQUFFO2dCQUNyQyxDQUFDLENBQUMsU0FBUztZQUNiLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVTtnQkFDM0IsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsRUFBRTtnQkFDcEMsQ0FBQyxDQUFDLFNBQVM7WUFDYixZQUFZLEVBQUUsTUFBTSxDQUFDLFlBQVk7Z0JBQy9CLENBQUMsQ0FBQyxjQUFjLENBQUMsbUJBQW1CLEVBQUU7Z0JBQ3RDLENBQUMsQ0FBQyxTQUFTO1lBQ2IsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztZQUNsRSxRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVE7Z0JBQ3ZCLENBQUMsQ0FBQyxjQUFjLENBQUMsZUFBZSxFQUFFO2dCQUNsQyxDQUFDLENBQUMsU0FBUztZQUNiLGNBQWMsRUFBRSxNQUFNLENBQUMsY0FBYztnQkFDbkMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxxQkFBcUIsRUFBRTtnQkFDeEMsQ0FBQyxDQUFDLFNBQVM7U0FDZCxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFPRCxZQUFvQixNQUFjO1FBQ2hDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7T0FFRztJQUNJLFFBQVE7UUFDYixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQzs7QUF6R0gsMENBMEdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsga2luZXNpc0ZpcmVob3NlRGVsaXZlcnlTdHJlYW0gfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF3c1wiO1xuaW1wb3J0IHsgSVN0YWdlIH0gZnJvbSBcIi4vc3RhZ2VcIjtcbi8vIGltcG9ydCAqIGFzIGZpcmVob3NlIGZyb20gXCIuLi8uLi9hd3Mta2luZXNpc2ZpcmVob3NlXCI7XG4vLyBpbXBvcnQgKiBhcyBmaXJlaG9zZSBmcm9tIFwiLi4vbm90aWZ5L2ZpcmVob3NlXCI7XG5pbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3IgfSBmcm9tIFwiLi4vLi4vZXJyb3JzXCI7XG5pbXBvcnQgeyBJTG9nR3JvdXAgfSBmcm9tIFwiLi4vY2xvdWR3YXRjaFwiO1xuXG4vKipcbiAqIEFjY2VzcyBsb2cgZGVzdGluYXRpb24gZm9yIGEgUmVzdEFwaSBTdGFnZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQWNjZXNzTG9nRGVzdGluYXRpb24ge1xuICAvKipcbiAgICogQmluZHMgdGhpcyBkZXN0aW5hdGlvbiB0byB0aGUgUmVzdEFwaSBTdGFnZS5cbiAgICovXG4gIGJpbmQoc3RhZ2U6IElTdGFnZSk6IEFjY2Vzc0xvZ0Rlc3RpbmF0aW9uQ29uZmlnO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgd2hlbiBiaW5kaW5nIGEgbG9nIGRlc3RpbmF0aW9uIHRvIGEgUmVzdEFwaSBTdGFnZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBY2Nlc3NMb2dEZXN0aW5hdGlvbkNvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUgQW1hem9uIFJlc291cmNlIE5hbWUgKEFSTikgb2YgdGhlIGRlc3RpbmF0aW9uIHJlc291cmNlXG4gICAqL1xuICByZWFkb25seSBkZXN0aW5hdGlvbkFybjogc3RyaW5nO1xufVxuXG4vKipcbiAqIFVzZSBDbG91ZFdhdGNoIExvZ3MgYXMgYSBjdXN0b20gYWNjZXNzIGxvZyBkZXN0aW5hdGlvbiBmb3IgQVBJIEdhdGV3YXkuXG4gKi9cbmV4cG9ydCBjbGFzcyBMb2dHcm91cExvZ0Rlc3RpbmF0aW9uIGltcGxlbWVudHMgSUFjY2Vzc0xvZ0Rlc3RpbmF0aW9uIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBsb2dHcm91cDogSUxvZ0dyb3VwKSB7fVxuXG4gIC8qKlxuICAgKiBCaW5kcyB0aGlzIGRlc3RpbmF0aW9uIHRvIHRoZSBDbG91ZFdhdGNoIExvZ3MuXG4gICAqL1xuICBwdWJsaWMgYmluZChfc3RhZ2U6IElTdGFnZSk6IEFjY2Vzc0xvZ0Rlc3RpbmF0aW9uQ29uZmlnIHtcbiAgICByZXR1cm4ge1xuICAgICAgZGVzdGluYXRpb25Bcm46IHRoaXMubG9nR3JvdXAubG9nR3JvdXBBcm4sXG4gICAgfTtcbiAgfVxufVxuXG4vKipcbiAqIFVzZSBhIEZpcmVob3NlIGRlbGl2ZXJ5IHN0cmVhbSBhcyBhIGN1c3RvbSBhY2Nlc3MgbG9nIGRlc3RpbmF0aW9uIGZvciBBUEkgR2F0ZXdheS5cbiAqL1xuZXhwb3J0IGNsYXNzIEZpcmVob3NlTG9nRGVzdGluYXRpb24gaW1wbGVtZW50cyBJQWNjZXNzTG9nRGVzdGluYXRpb24ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0cmVhbToga2luZXNpc0ZpcmVob3NlRGVsaXZlcnlTdHJlYW0uS2luZXNpc0ZpcmVob3NlRGVsaXZlcnlTdHJlYW0sXG4gICkge31cblxuICAvKipcbiAgICogQmluZHMgdGhpcyBkZXN0aW5hdGlvbiB0byB0aGUgRmlyZWhvc2UgZGVsaXZlcnkgc3RyZWFtLlxuICAgKi9cbiAgcHVibGljIGJpbmQoX3N0YWdlOiBJU3RhZ2UpOiBBY2Nlc3NMb2dEZXN0aW5hdGlvbkNvbmZpZyB7XG4gICAgaWYgKCF0aGlzLnN0cmVhbS5uYW1lSW5wdXQ/LnN0YXJ0c1dpdGgoXCJhbWF6b24tYXBpZ2F0ZXdheS1cIikpIHtcbiAgICAgIHRocm93IG5ldyBWYWxpZGF0aW9uRXJyb3IoXG4gICAgICAgIGBGaXJlaG9zZSBkZWxpdmVyeSBzdHJlYW0gbmFtZSBmb3IgYWNjZXNzIGxvZyBkZXN0aW5hdGlvbiBtdXN0IGJlZ2luIHdpdGggJ2FtYXpvbi1hcGlnYXRld2F5LScsIGdvdCAnJHt0aGlzLnN0cmVhbS5uYW1lSW5wdXR9J2AsXG4gICAgICAgIF9zdGFnZSxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBkZXN0aW5hdGlvbkFybjogdGhpcy5zdHJlYW0uYXJuLFxuICAgIH07XG4gIH1cbn1cblxuLyoqXG4gKiAkY29udGV4dCB2YXJpYWJsZXMgdGhhdCBjYW4gYmUgdXNlZCB0byBjdXN0b21pemUgYWNjZXNzIGxvZyBwYXR0ZXJuLlxuICovXG5leHBvcnQgY2xhc3MgQWNjZXNzTG9nRmllbGQge1xuICAvKipcbiAgICogVGhlIEFQSSBjYWxsZXJzIEFXUyBhY2NvdW50IElELlxuICAgKiBAZGVwcmVjYXRlZCBVc2UgYGNvbnRleHRDYWxsZXJBY2NvdW50SWRgIG9yIGBjb250ZXh0T3duZXJBY2NvdW50SWRgIGluc3RlYWRcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dEFjY291bnRJZCgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pZGVudGl0eS5hY2NvdW50SWRcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQVBJIGNhbGxlcnMgQVdTIGFjY291bnQgSUQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRDYWxsZXJBY2NvdW50SWQoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuaWRlbnRpdHkuYWNjb3VudElkXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFQSSBvd25lcidzIEFXUyBhY2NvdW50IElELlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0T3duZXJBY2NvdW50SWQoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuYWNjb3VudElkXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGlkZW50aWZpZXIgQVBJIEdhdGV3YXkgYXNzaWducyB0byB5b3VyIEFQSS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dEFwaUlkKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmFwaUlkXCI7XG4gIH1cblxuICAvKipcbiAgICogQSBwcm9wZXJ0eSBvZiB0aGUgY2xhaW1zIHJldHVybmVkIGZyb20gdGhlIEFtYXpvbiBDb2duaXRvIHVzZXIgcG9vbCBhZnRlciB0aGUgbWV0aG9kIGNhbGxlciBpcyBzdWNjZXNzZnVsbHkgYXV0aGVudGljYXRlZC5cbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXBpZ2F0ZXdheS9sYXRlc3QvZGV2ZWxvcGVyZ3VpZGUvYXBpZ2F0ZXdheS1pbnRlZ3JhdGUtd2l0aC1jb2duaXRvLmh0bWxcbiAgICpcbiAgICogQHBhcmFtIHByb3BlcnR5IEEgcHJvcGVydHkga2V5IG9mIHRoZSBjbGFpbXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRBdXRob3JpemVyQ2xhaW1zKHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gYCRjb250ZXh0LmF1dGhvcml6ZXIuY2xhaW1zLiR7cHJvcGVydHl9YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgcHJpbmNpcGFsIHVzZXIgaWRlbnRpZmljYXRpb24gYXNzb2NpYXRlZCB3aXRoIHRoZSB0b2tlbiBzZW50IGJ5IHRoZSBjbGllbnQgYW5kIHJldHVybmVkXG4gICAqIGZyb20gYW4gQVBJIEdhdGV3YXkgTGFtYmRhIGF1dGhvcml6ZXIgKGZvcm1lcmx5IGtub3duIGFzIGEgY3VzdG9tIGF1dGhvcml6ZXIpLlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hcGlnYXRld2F5L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9hcGlnYXRld2F5LXVzZS1sYW1iZGEtYXV0aG9yaXplci5odG1sXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRBdXRob3JpemVyUHJpbmNpcGFsSWQoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuYXV0aG9yaXplci5wcmluY2lwYWxJZFwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBzdHJpbmdpZmllZCB2YWx1ZSBvZiB0aGUgc3BlY2lmaWVkIGtleS12YWx1ZSBwYWlyIG9mIHRoZSBgY29udGV4dGAgbWFwIHJldHVybmVkIGZyb20gYW4gQVBJIEdhdGV3YXkgTGFtYmRhIGF1dGhvcml6ZXIgZnVuY3Rpb24uXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FwaWdhdGV3YXkvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2FwaWdhdGV3YXktdXNlLWxhbWJkYS1hdXRob3JpemVyLmh0bWxcbiAgICogQHBhcmFtIHByb3BlcnR5IGtleSBvZiB0aGUgY29udGV4dCBtYXAuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRBdXRob3JpemVyKHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gYCRjb250ZXh0LmF1dGhvcml6ZXIuJHtwcm9wZXJ0eX1gO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBBV1MgZW5kcG9pbnQncyByZXF1ZXN0IElELlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0QXdzRW5kcG9pbnRSZXF1ZXN0SWQoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuYXdzRW5kcG9pbnRSZXF1ZXN0SWRcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZnVsbCBkb21haW4gbmFtZSB1c2VkIHRvIGludm9rZSB0aGUgQVBJLiBUaGlzIHNob3VsZCBiZSB0aGUgc2FtZSBhcyB0aGUgaW5jb21pbmcgYEhvc3RgIGhlYWRlci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dERvbWFpbk5hbWUoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuZG9tYWluTmFtZVwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBmaXJzdCBsYWJlbCBvZiB0aGUgYCRjb250ZXh0LmRvbWFpbk5hbWVgLiBUaGlzIGlzIG9mdGVuIHVzZWQgYXMgYSBjYWxsZXIvY3VzdG9tZXIgaWRlbnRpZmllci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dERvbWFpblByZWZpeCgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5kb21haW5QcmVmaXhcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIHN0cmluZyBjb250YWluaW5nIGFuIEFQSSBHYXRld2F5IGVycm9yIG1lc3NhZ2UuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRFcnJvck1lc3NhZ2UoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuZXJyb3IubWVzc2FnZVwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBxdW90ZWQgdmFsdWUgb2YgJGNvbnRleHQuZXJyb3IubWVzc2FnZSwgbmFtZWx5IFwiJGNvbnRleHQuZXJyb3IubWVzc2FnZVwiLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0RXJyb3JNZXNzYWdlU3RyaW5nKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmVycm9yLm1lc3NhZ2VTdHJpbmdcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIHR5cGUgb2YgR2F0ZXdheVJlc3BvbnNlLiBUaGlzIHZhcmlhYmxlIGNhbiBvbmx5IGJlIHVzZWQgZm9yIHNpbXBsZSB2YXJpYWJsZSBzdWJzdGl0dXRpb24gaW4gYSBHYXRld2F5UmVzcG9uc2UgYm9keS1tYXBwaW5nIHRlbXBsYXRlLFxuICAgKiB3aGljaCBpcyBub3QgcHJvY2Vzc2VkIGJ5IHRoZSBWZWxvY2l0eSBUZW1wbGF0ZSBMYW5ndWFnZSBlbmdpbmUsIGFuZCBpbiBhY2Nlc3MgbG9nZ2luZy5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXBpZ2F0ZXdheS9sYXRlc3QvZGV2ZWxvcGVyZ3VpZGUvYXBpZ2F0ZXdheS13ZWJzb2NrZXQtYXBpLWxvZ2dpbmcuaHRtbFxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hcGlnYXRld2F5L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9jdXN0b21pemUtZ2F0ZXdheS1yZXNwb25zZXMuaHRtbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0RXJyb3JSZXNwb25zZVR5cGUoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuZXJyb3IucmVzcG9uc2VUeXBlXCI7XG4gIH1cblxuICAvKipcbiAgICogQSBzdHJpbmcgY29udGFpbmluZyBhIGRldGFpbGVkIHZhbGlkYXRpb24gZXJyb3IgbWVzc2FnZS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dEVycm9yVmFsaWRhdGlvbkVycm9yU3RyaW5nKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmVycm9yLnZhbGlkYXRpb25FcnJvclN0cmluZ1wiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBleHRlbmRlZCBJRCB0aGF0IEFQSSBHYXRld2F5IGFzc2lnbnMgdG8gdGhlIEFQSSByZXF1ZXN0LCB3aGljaCBjb250YWlucyBtb3JlIHVzZWZ1bCBpbmZvcm1hdGlvbiBmb3IgZGVidWdnaW5nL3Ryb3VibGVzaG9vdGluZy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dEV4dGVuZGVkUmVxdWVzdElkKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmV4dGVuZGVkUmVxdWVzdElkXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEhUVFAgbWV0aG9kIHVzZWQuIFZhbGlkIHZhbHVlcyBpbmNsdWRlOiBgREVMRVRFYCwgYEdFVGAsIGBIRUFEYCwgYE9QVElPTlNgLCBgUEFUQ0hgLCBgUE9TVGAsIGFuZCBgUFVUYC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dEh0dHBNZXRob2QoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuaHR0cE1ldGhvZFwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBBV1MgYWNjb3VudCBJRCBhc3NvY2lhdGVkIHdpdGggdGhlIHJlcXVlc3QuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRJZGVudGl0eUFjY291bnRJZCgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pZGVudGl0eS5hY2NvdW50SWRcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBGb3IgQVBJIG1ldGhvZHMgdGhhdCByZXF1aXJlIGFuIEFQSSBrZXksIHRoaXMgdmFyaWFibGUgaXMgdGhlIEFQSSBrZXkgYXNzb2NpYXRlZCB3aXRoIHRoZSBtZXRob2QgcmVxdWVzdC5cbiAgICogRm9yIG1ldGhvZHMgdGhhdCBkb24ndCByZXF1aXJlIGFuIEFQSSBrZXksIHRoaXMgdmFyaWFibGUgaXNcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXBpZ2F0ZXdheS9sYXRlc3QvZGV2ZWxvcGVyZ3VpZGUvYXBpLWdhdGV3YXktYXBpLXVzYWdlLXBsYW5zLmh0bWxcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dElkZW50aXR5QXBpS2V5KCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmlkZW50aXR5LmFwaUtleVwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBBUEkga2V5IElEIGFzc29jaWF0ZWQgd2l0aCBhbiBBUEkgcmVxdWVzdCB0aGF0IHJlcXVpcmVzIGFuIEFQSSBrZXkuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRJZGVudGl0eUFwaUtleUlkKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmlkZW50aXR5LmFwaUtleUlkXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHByaW5jaXBhbCBpZGVudGlmaWVyIG9mIHRoZSBjYWxsZXIgbWFraW5nIHRoZSByZXF1ZXN0LlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0SWRlbnRpdHlDYWxsZXIoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuaWRlbnRpdHkuY2FsbGVyXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFtYXpvbiBDb2duaXRvIGF1dGhlbnRpY2F0aW9uIHByb3ZpZGVyIHVzZWQgYnkgdGhlIGNhbGxlciBtYWtpbmcgdGhlIHJlcXVlc3QuXG4gICAqIEF2YWlsYWJsZSBvbmx5IGlmIHRoZSByZXF1ZXN0IHdhcyBzaWduZWQgd2l0aCBBbWF6b24gQ29nbml0byBjcmVkZW50aWFscy5cbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vY29nbml0by9sYXRlc3QvZGV2ZWxvcGVyZ3VpZGUvY29nbml0by1pZGVudGl0eS5odG1sXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRJZGVudGl0eUNvZ25pdG9BdXRoZW50aWNhdGlvblByb3ZpZGVyKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmlkZW50aXR5LmNvZ25pdG9BdXRoZW50aWNhdGlvblByb3ZpZGVyXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFtYXpvbiBDb2duaXRvIGF1dGhlbnRpY2F0aW9uIHR5cGUgb2YgdGhlIGNhbGxlciBtYWtpbmcgdGhlIHJlcXVlc3QuXG4gICAqIEF2YWlsYWJsZSBvbmx5IGlmIHRoZSByZXF1ZXN0IHdhcyBzaWduZWQgd2l0aCBBbWF6b24gQ29nbml0byBjcmVkZW50aWFscy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dElkZW50aXR5Q29nbml0b0F1dGhlbnRpY2F0aW9uVHlwZSgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pZGVudGl0eS5jb2duaXRvQXV0aGVudGljYXRpb25UeXBlXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFtYXpvbiBDb2duaXRvIGlkZW50aXR5IElEIG9mIHRoZSBjYWxsZXIgbWFraW5nIHRoZSByZXF1ZXN0LiBBdmFpbGFibGUgb25seSBpZiB0aGUgcmVxdWVzdCB3YXMgc2lnbmVkIHdpdGggQW1hem9uIENvZ25pdG8gY3JlZGVudGlhbHMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRJZGVudGl0eUNvZ25pdG9JZGVudGl0eUlkKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmlkZW50aXR5LmNvZ25pdG9JZGVudGl0eUlkXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFtYXpvbiBDb2duaXRvIGlkZW50aXR5IHBvb2wgSUQgb2YgdGhlIGNhbGxlciBtYWtpbmcgdGhlIHJlcXVlc3QuXG4gICAqIEF2YWlsYWJsZSBvbmx5IGlmIHRoZSByZXF1ZXN0IHdhcyBzaWduZWQgd2l0aCBBbWF6b24gQ29nbml0byBjcmVkZW50aWFscy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dElkZW50aXR5Q29nbml0b0lkZW50aXR5UG9vbElkKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmlkZW50aXR5LmNvZ25pdG9JZGVudGl0eVBvb2xJZFwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBBV1Mgb3JnYW5pemF0aW9uIElELlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0SWRlbnRpdHlQcmluY2lwYWxPcmdJZCgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pZGVudGl0eS5wcmluY2lwYWxPcmdJZFwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBzb3VyY2UgSVAgYWRkcmVzcyBvZiB0aGUgVENQIGNvbm5lY3Rpb24gbWFraW5nIHRoZSByZXF1ZXN0IHRvIEFQSSBHYXRld2F5LlxuICAgKiBXYXJuaW5nOiBZb3Ugc2hvdWxkIG5vdCB0cnVzdCB0aGlzIHZhbHVlIGlmIHRoZXJlIGlzIGFueSBjaGFuY2UgdGhhdCB0aGUgYFgtRm9yd2FyZGVkLUZvcmAgaGVhZGVyIGNvdWxkIGJlIGZvcmdlZC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dElkZW50aXR5U291cmNlSXAoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuaWRlbnRpdHkuc291cmNlSXBcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgUEVNLWVuY29kZWQgY2xpZW50IGNlcnRpZmljYXRlIHRoYXQgdGhlIGNsaWVudCBwcmVzZW50ZWQgZHVyaW5nIG11dHVhbCBUTFMgYXV0aGVudGljYXRpb24uXG4gICAqIFByZXNlbnQgd2hlbiBhIGNsaWVudCBhY2Nlc3NlcyBhbiBBUEkgYnkgdXNpbmcgYSBjdXN0b20gZG9tYWluIG5hbWUgdGhhdCBoYXMgbXV0dWFsIFRMUyBlbmFibGVkLlxuICAgKiBQcmVzZW50IG9ubHkgaW4gYWNjZXNzIGxvZ3MgaWYgbXV0dWFsIFRMUyBhdXRoZW50aWNhdGlvbiBmYWlscy5cbiAgICovXG5cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0SWRlbnRpdHlDbGllbnRDZXJ0UGVtKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmlkZW50aXR5LmNsaWVudENlcnQuY2xpZW50Q2VydFBlbVwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBkaXN0aW5ndWlzaGVkIG5hbWUgb2YgdGhlIHN1YmplY3Qgb2YgdGhlIGNlcnRpZmljYXRlIHRoYXQgYSBjbGllbnQgcHJlc2VudHMuXG4gICAqIFByZXNlbnQgd2hlbiBhIGNsaWVudCBhY2Nlc3NlcyBhbiBBUEkgYnkgdXNpbmcgYSBjdXN0b20gZG9tYWluIG5hbWUgdGhhdCBoYXMgbXV0dWFsIFRMUyBlbmFibGVkLlxuICAgKiBQcmVzZW50IG9ubHkgaW4gYWNjZXNzIGxvZ3MgaWYgbXV0dWFsIFRMUyBhdXRoZW50aWNhdGlvbiBmYWlscy5cbiAgICovXG5cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0SWRlbnRpdHlDbGllbnRDZXJ0U3ViamVjdEROKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmlkZW50aXR5LmNsaWVudENlcnQuc3ViamVjdEROXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGRpc3Rpbmd1aXNoZWQgbmFtZSBvZiB0aGUgaXNzdWVyIG9mIHRoZSBjZXJ0aWZpY2F0ZSB0aGF0IGEgY2xpZW50IHByZXNlbnRzLlxuICAgKiBQcmVzZW50IHdoZW4gYSBjbGllbnQgYWNjZXNzZXMgYW4gQVBJIGJ5IHVzaW5nIGEgY3VzdG9tIGRvbWFpbiBuYW1lIHRoYXQgaGFzIG11dHVhbCBUTFMgZW5hYmxlZC5cbiAgICogUHJlc2VudCBvbmx5IGluIGFjY2VzcyBsb2dzIGlmIG11dHVhbCBUTFMgYXV0aGVudGljYXRpb24gZmFpbHMuXG4gICAqL1xuXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dElkZW50aXR5Q2xpZW50Q2VydElzc3VuZXJETigpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pZGVudGl0eS5jbGllbnRDZXJ0Lmlzc3VlckROXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHNlcmlhbCBudW1iZXIgb2YgdGhlIGNlcnRpZmljYXRlLlxuICAgKiBQcmVzZW50IHdoZW4gYSBjbGllbnQgYWNjZXNzZXMgYW4gQVBJIGJ5IHVzaW5nIGEgY3VzdG9tIGRvbWFpbiBuYW1lIHRoYXQgaGFzIG11dHVhbCBUTFMgZW5hYmxlZC5cbiAgICogUHJlc2VudCBvbmx5IGluIGFjY2VzcyBsb2dzIGlmIG11dHVhbCBUTFMgYXV0aGVudGljYXRpb24gZmFpbHMuXG4gICAqL1xuXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dElkZW50aXR5Q2xpZW50Q2VydFNlcmlhbE51bWJlcigpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pZGVudGl0eS5jbGllbnRDZXJ0LnNlcmlhbE51bWJlclwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBkYXRlIGJlZm9yZSB3aGljaCB0aGUgY2VydGlmaWNhdGUgaXMgaW52YWxpZC5cbiAgICogUHJlc2VudCB3aGVuIGEgY2xpZW50IGFjY2Vzc2VzIGFuIEFQSSBieSB1c2luZyBhIGN1c3RvbSBkb21haW4gbmFtZSB0aGF0IGhhcyBtdXR1YWwgVExTIGVuYWJsZWQuXG4gICAqIFByZXNlbnQgb25seSBpbiBhY2Nlc3MgbG9ncyBpZiBtdXR1YWwgVExTIGF1dGhlbnRpY2F0aW9uIGZhaWxzLlxuICAgKi9cblxuICBwdWJsaWMgc3RhdGljIGNvbnRleHRJZGVudGl0eUNsaWVudENlcnRWYWxpZGl0eU5vdEJlZm9yZSgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pZGVudGl0eS5jbGllbnRDZXJ0LnZhbGlkaXR5Lm5vdEJlZm9yZVwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBkYXRlIGFmdGVyIHdoaWNoIHRoZSBjZXJ0aWZpY2F0ZSBpcyBpbnZhbGlkLlxuICAgKiBQcmVzZW50IHdoZW4gYSBjbGllbnQgYWNjZXNzZXMgYW4gQVBJIGJ5IHVzaW5nIGEgY3VzdG9tIGRvbWFpbiBuYW1lIHRoYXQgaGFzIG11dHVhbCBUTFMgZW5hYmxlZC5cbiAgICogUHJlc2VudCBvbmx5IGluIGFjY2VzcyBsb2dzIGlmIG11dHVhbCBUTFMgYXV0aGVudGljYXRpb24gZmFpbHMuXG4gICAqL1xuXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dElkZW50aXR5Q2xpZW50Q2VydFZhbGlkaXR5Tm90QWZ0ZXIoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuaWRlbnRpdHkuY2xpZW50Q2VydC52YWxpZGl0eS5ub3RBZnRlclwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBwcmluY2lwYWwgaWRlbnRpZmllciBvZiB0aGUgdXNlciBtYWtpbmcgdGhlIHJlcXVlc3QuIFVzZWQgaW4gTGFtYmRhIGF1dGhvcml6ZXJzLlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hcGlnYXRld2F5L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9hcGktZ2F0ZXdheS1sYW1iZGEtYXV0aG9yaXplci1vdXRwdXQuaHRtbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0SWRlbnRpdHlVc2VyKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmlkZW50aXR5LnVzZXJcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgVXNlci1BZ2VudCBoZWFkZXIgb2YgdGhlIEFQSSBjYWxsZXIuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRJZGVudGl0eVVzZXJBZ2VudCgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pZGVudGl0eS51c2VyQWdlbnRcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQW1hem9uIFJlc291cmNlIE5hbWUgKEFSTikgb2YgdGhlIGVmZmVjdGl2ZSB1c2VyIGlkZW50aWZpZWQgYWZ0ZXIgYXV0aGVudGljYXRpb24uXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0lBTS9sYXRlc3QvVXNlckd1aWRlL2lkX3VzZXJzLmh0bWxcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dElkZW50aXR5VXNlckFybigpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pZGVudGl0eS51c2VyQXJuXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHJlcXVlc3QgcGF0aC5cbiAgICogRm9yIGV4YW1wbGUsIGZvciBhIG5vbi1wcm94eSByZXF1ZXN0IFVSTCBvZiBodHRwczovL3tyZXN0LWFwaS1pZC5leGVjdXRlLWFwaS57cmVnaW9ufS5hbWF6b25hd3MuY29tL3tzdGFnZX0vcm9vdC9jaGlsZCxcbiAgICogdGhpcyB2YWx1ZSBpcyAve3N0YWdlfS9yb290L2NoaWxkLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0UGF0aCgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5wYXRoXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHJlcXVlc3QgcHJvdG9jb2wsIGZvciBleGFtcGxlLCBIVFRQLzEuMS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dFByb3RvY29sKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LnByb3RvY29sXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIElEIHRoYXQgQVBJIEdhdGV3YXkgYXNzaWducyB0byB0aGUgQVBJIHJlcXVlc3QuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRSZXF1ZXN0SWQoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQucmVxdWVzdElkXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHJlcXVlc3QgaGVhZGVyIG92ZXJyaWRlLlxuICAgKiBJZiB0aGlzIHBhcmFtZXRlciBpcyBkZWZpbmVkLCBpdCBjb250YWlucyB0aGUgaGVhZGVycyB0byBiZSB1c2VkIGluc3RlYWQgb2YgdGhlIEhUVFAgSGVhZGVycyB0aGF0IGFyZSBkZWZpbmVkIGluIHRoZSBJbnRlZ3JhdGlvbiBSZXF1ZXN0IHBhbmUuXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FwaWdhdGV3YXkvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2FwaWdhdGV3YXktb3ZlcnJpZGUtcmVxdWVzdC1yZXNwb25zZS1wYXJhbWV0ZXJzLmh0bWxcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dFJlcXVlc3RPdmVycmlkZUhlYWRlcihoZWFkZXJOYW1lOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gYCRjb250ZXh0LnJlcXVlc3RPdmVycmlkZS5oZWFkZXIuJHtoZWFkZXJOYW1lfWA7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHJlcXVlc3QgcGF0aCBvdmVycmlkZS4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgZGVmaW5lZCxcbiAgICogaXQgY29udGFpbnMgdGhlIHJlcXVlc3QgcGF0aCB0byBiZSB1c2VkIGluc3RlYWQgb2YgdGhlIFVSTCBQYXRoIFBhcmFtZXRlcnMgdGhhdCBhcmUgZGVmaW5lZCBpbiB0aGUgSW50ZWdyYXRpb24gUmVxdWVzdCBwYW5lLlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hcGlnYXRld2F5L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9hcGlnYXRld2F5LW92ZXJyaWRlLXJlcXVlc3QtcmVzcG9uc2UtcGFyYW1ldGVycy5odG1sXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRSZXF1ZXN0T3ZlcnJpZGVQYXRoKHBhdGhOYW1lOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gYCRjb250ZXh0LnJlcXVlc3RPdmVycmlkZS5wYXRoLiR7cGF0aE5hbWV9YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgcmVxdWVzdCBxdWVyeSBzdHJpbmcgb3ZlcnJpZGUuXG4gICAqIElmIHRoaXMgcGFyYW1ldGVyIGlzIGRlZmluZWQsIGl0IGNvbnRhaW5zIHRoZSByZXF1ZXN0IHF1ZXJ5IHN0cmluZ3MgdG8gYmUgdXNlZCBpbnN0ZWFkXG4gICAqIG9mIHRoZSBVUkwgUXVlcnkgU3RyaW5nIFBhcmFtZXRlcnMgdGhhdCBhcmUgZGVmaW5lZCBpbiB0aGUgSW50ZWdyYXRpb24gUmVxdWVzdCBwYW5lLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0UmVxdWVzdE92ZXJyaWRlUXVlcnlzdHJpbmcocXVlcnlzdHJpbmdOYW1lOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gYCRjb250ZXh0LnJlcXVlc3RPdmVycmlkZS5xdWVyeXN0cmluZy4ke3F1ZXJ5c3RyaW5nTmFtZX1gO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSByZXNwb25zZSBoZWFkZXIgb3ZlcnJpZGUuXG4gICAqIElmIHRoaXMgcGFyYW1ldGVyIGlzIGRlZmluZWQsIGl0IGNvbnRhaW5zIHRoZSBoZWFkZXIgdG8gYmUgcmV0dXJuZWQgaW5zdGVhZCBvZiB0aGUgUmVzcG9uc2UgaGVhZGVyXG4gICAqIHRoYXQgaXMgZGVmaW5lZCBhcyB0aGUgRGVmYXVsdCBtYXBwaW5nIGluIHRoZSBJbnRlZ3JhdGlvbiBSZXNwb25zZSBwYW5lLlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hcGlnYXRld2F5L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9hcGlnYXRld2F5LW92ZXJyaWRlLXJlcXVlc3QtcmVzcG9uc2UtcGFyYW1ldGVycy5odG1sXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRSZXNwb25zZU92ZXJyaWRlSGVhZGVyKGhlYWRlck5hbWU6IHN0cmluZykge1xuICAgIHJldHVybiBgJGNvbnRleHQucmVzcG9uc2VPdmVycmlkZS5oZWFkZXIuJHtoZWFkZXJOYW1lfWA7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHJlc3BvbnNlIHN0YXR1cyBjb2RlIG92ZXJyaWRlLlxuICAgKiBJZiB0aGlzIHBhcmFtZXRlciBpcyBkZWZpbmVkLCBpdCBjb250YWlucyB0aGUgc3RhdHVzIGNvZGUgdG8gYmUgcmV0dXJuZWQgaW5zdGVhZCBvZiB0aGUgTWV0aG9kIHJlc3BvbnNlIHN0YXR1c1xuICAgKiB0aGF0IGlzIGRlZmluZWQgYXMgdGhlIERlZmF1bHQgbWFwcGluZyBpbiB0aGUgSW50ZWdyYXRpb24gUmVzcG9uc2UgcGFuZS5cbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXBpZ2F0ZXdheS9sYXRlc3QvZGV2ZWxvcGVyZ3VpZGUvYXBpZ2F0ZXdheS1vdmVycmlkZS1yZXF1ZXN0LXJlc3BvbnNlLXBhcmFtZXRlcnMuaHRtbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0UmVzcG9uc2VPdmVycmlkZVN0YXR1cygpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5yZXNwb25zZU92ZXJyaWRlLnN0YXR1c1wiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBDTEYtZm9ybWF0dGVkIHJlcXVlc3QgdGltZSAoZGQvTU1NL3l5eXk6SEg6bW06c3MgKy1oaG1tKS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dFJlcXVlc3RUaW1lKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LnJlcXVlc3RUaW1lXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEVwb2NoLWZvcm1hdHRlZCByZXF1ZXN0IHRpbWUuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRSZXF1ZXN0VGltZUVwb2NoKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LnJlcXVlc3RUaW1lRXBvY2hcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgaWRlbnRpZmllciB0aGF0IEFQSSBHYXRld2F5IGFzc2lnbnMgdG8geW91ciByZXNvdXJjZS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dFJlc291cmNlSWQoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQucmVzb3VyY2VJZFwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBwYXRoIHRvIHlvdXIgcmVzb3VyY2UuXG4gICAqIEZvciBleGFtcGxlLCBmb3IgdGhlIG5vbi1wcm94eSByZXF1ZXN0IFVSSSBvZiBgaHR0cHM6Ly97cmVzdC1hcGktaWQuZXhlY3V0ZS1hcGkue3JlZ2lvbn0uYW1hem9uYXdzLmNvbS97c3RhZ2V9L3Jvb3QvY2hpbGRgLFxuICAgKiBUaGUgJGNvbnRleHQucmVzb3VyY2VQYXRoIHZhbHVlIGlzIGAvcm9vdC9jaGlsZGAuXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FwaWdhdGV3YXkvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2FwaS1nYXRld2F5LWNyZWF0ZS1hcGktc3RlcC1ieS1zdGVwLmh0bWxcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dFJlc291cmNlUGF0aCgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5yZXNvdXJjZVBhdGhcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZGVwbG95bWVudCBzdGFnZSBvZiB0aGUgQVBJIHJlcXVlc3QgKGZvciBleGFtcGxlLCBgQmV0YWAgb3IgYFByb2RgKS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dFN0YWdlKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LnN0YWdlXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHJlc3BvbnNlIHJlY2VpdmVkIGZyb20gQVdTIFdBRjogYFdBRl9BTExPV2Agb3IgYFdBRl9CTE9DS2AuIFdpbGwgbm90IGJlIHNldCBpZiB0aGUgc3RhZ2UgaXMgbm90IGFzc29jaWF0ZWQgd2l0aCBhIHdlYiBBQ0wuXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FwaWdhdGV3YXkvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2FwaWdhdGV3YXktY29udHJvbC1hY2Nlc3MtYXdzLXdhZi5odG1sXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRXYWZSZXNwb25zZUNvZGUoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQud2FmUmVzcG9uc2VDb2RlXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGNvbXBsZXRlIEFSTiBvZiB0aGUgd2ViIEFDTCB0aGF0IGlzIHVzZWQgdG8gZGVjaWRlIHdoZXRoZXIgdG8gYWxsb3cgb3IgYmxvY2sgdGhlIHJlcXVlc3QuXG4gICAqIFdpbGwgbm90IGJlIHNldCBpZiB0aGUgc3RhZ2UgaXMgbm90IGFzc29jaWF0ZWQgd2l0aCBhIHdlYiBBQ0wuXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FwaWdhdGV3YXkvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2FwaWdhdGV3YXktY29udHJvbC1hY2Nlc3MtYXdzLXdhZi5odG1sXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRXZWJhY2xBcm4oKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQud2ViYWNsQXJuXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHRyYWNlIElEIGZvciB0aGUgWC1SYXkgdHJhY2UuXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FwaWdhdGV3YXkvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2FwaWdhdGV3YXktZW5hYmxpbmcteHJheS5odG1sXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRYcmF5VHJhY2VJZCgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC54cmF5VHJhY2VJZFwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBhdXRob3JpemVyIGxhdGVuY3kgaW4gbXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRBdXRob3JpemVySW50ZWdyYXRpb25MYXRlbmN5KCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmF1dGhvcml6ZXIuaW50ZWdyYXRpb25MYXRlbmN5XCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGludGVncmF0aW9uIGxhdGVuY3kgaW4gbXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRJbnRlZ3JhdGlvbkxhdGVuY3koKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuaW50ZWdyYXRpb25MYXRlbmN5XCI7XG4gIH1cblxuICAvKipcbiAgICogRm9yIExhbWJkYSBwcm94eSBpbnRlZ3JhdGlvbiwgdGhpcyBwYXJhbWV0ZXIgcmVwcmVzZW50cyB0aGUgc3RhdHVzIGNvZGUgcmV0dXJuZWQgZnJvbSBBV1MgTGFtYmRhLFxuICAgKiBub3QgZnJvbSB0aGUgYmFja2VuZCBMYW1iZGEgZnVuY3Rpb24uXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRJbnRlZ3JhdGlvblN0YXR1cygpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5pbnRlZ3JhdGlvblN0YXR1c1wiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSByZXNwb25zZSBsYXRlbmN5IGluIG1zLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0UmVzcG9uc2VMYXRlbmN5KCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LnJlc3BvbnNlTGF0ZW5jeVwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSByZXNwb25zZSBwYXlsb2FkIGxlbmd0aC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dFJlc3BvbnNlTGVuZ3RoKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LnJlc3BvbnNlTGVuZ3RoXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG1ldGhvZCByZXNwb25zZSBzdGF0dXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRTdGF0dXMoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuc3RhdHVzXCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGF1dGhvcml6YXRpb24gZXJyb3IgbWVzc2FnZS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dEF1dGhvcml6ZUVycm9yKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmF1dGhvcml6ZS5lcnJvclwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBhdXRob3JpemF0aW9uIGxhdGVuY3kgaW4gbXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRBdXRob3JpemVMYXRlbmN5KCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmF1dGhvcml6ZS5sYXRlbmN5XCI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHN0YXR1cyBjb2RlIHJldHVybmVkIGZyb20gYW4gYXV0aG9yaXphdGlvbiBhdHRlbXB0LlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0QXV0aG9yaXplU3RhdHVzKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmF1dGhvcml6ZS5zdGF0dXNcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZXJyb3IgbWVzc2FnZSByZXR1cm5lZCBmcm9tIGFuIGF1dGhvcml6ZXIuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRBdXRob3JpemVyRXJyb3IoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuYXV0aG9yaXplci5lcnJvclwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBzdGF0dXMgY29kZSByZXR1cm5lZCBmcm9tIGEgTGFtYmRhIGF1dGhvcml6ZXIuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRBdXRob3JpemVySW50ZWdyYXRpb25TdGF0dXMoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuYXV0aG9yaXplci5pbnRlZ3JhdGlvblN0YXR1c1wiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBhdXRob3JpemVyIGxhdGVuY3kgaW4gbXMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRBdXRob3JpemVyTGF0ZW5jeSgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5hdXRob3JpemVyLmxhdGVuY3lcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQVdTIGVuZHBvaW50J3MgcmVxdWVzdCBJRC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dEF1dGhvcml6ZXJSZXF1ZXN0SWQoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuYXV0aG9yaXplci5yZXF1ZXN0SWRcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgc3RhdHVzIGNvZGUgcmV0dXJuZWQgZnJvbSBhbiBhdXRob3JpemVyLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0QXV0aG9yaXplclN0YXR1cygpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5hdXRob3JpemVyLnN0YXR1c1wiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBlcnJvciBtZXNzYWdlIHJldHVybmVkIGZyb20gYW4gYXV0aGVudGljYXRpb24gYXR0ZW1wdC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dEF1dGhlbnRpY2F0ZUVycm9yKCkge1xuICAgIHJldHVybiBcIiRjb250ZXh0LmF1dGhlbnRpY2F0ZS5lcnJvclwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBhdXRoZW50aWNhdGlvbiBsYXRlbmN5IGluIG1zLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0QXV0aGVudGljYXRlTGF0ZW5jeSgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5hdXRoZW50aWNhdGUubGF0ZW5jeVwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBzdGF0dXMgY29kZSByZXR1cm5lZCBmcm9tIGFuIGF1dGhlbnRpY2F0aW9uIGF0dGVtcHQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRBdXRoZW50aWNhdGVTdGF0dXMoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuYXV0aGVudGljYXRlLnN0YXR1c1wiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBwYXRoIGZvciBhbiBBUEkgbWFwcGluZyB0aGF0IGFuIGluY29taW5nIHJlcXVlc3QgbWF0Y2hlZC5cbiAgICogQXBwbGljYWJsZSB3aGVuIGEgY2xpZW50IHVzZXMgYSBjdXN0b20gZG9tYWluIG5hbWUgdG8gYWNjZXNzIGFuIEFQSS4gRm9yIGV4YW1wbGUgaWYgYSBjbGllbnQgc2VuZHMgYSByZXF1ZXN0IHRvXG4gICAqIGh0dHBzOi8vYXBpLmV4YW1wbGUuY29tL3YxL29yZGVycy8xMjM0LCBhbmQgdGhlIHJlcXVlc3QgbWF0Y2hlcyB0aGUgQVBJIG1hcHBpbmcgd2l0aCB0aGUgcGF0aCB2MS9vcmRlcnMsIHRoZSB2YWx1ZSBpcyB2MS9vcmRlcnMuXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2VuX2pwL2FwaWdhdGV3YXkvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL3Jlc3QtYXBpLW1hcHBpbmdzLmh0bWxcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29udGV4dEN1c3RvbURvbWFpbkJhc2VQYXRoTWF0Y2hlZCgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC5jdXN0b21Eb21haW4uYmFzZVBhdGhNYXRjaGVkXCI7XG4gIH1cblxuICAvKipcbiAgICogQSBzdHJpbmcgdGhhdCBjb250YWlucyBhbiBpbnRlZ3JhdGlvbiBlcnJvciBtZXNzYWdlLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0SW50ZWdyYXRpb25FcnJvck1lc3NhZ2UoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQuaW50ZWdyYXRpb25FcnJvck1lc3NhZ2VcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZXJyb3IgbWVzc2FnZSByZXR1cm5lZCBmcm9tIEFXUyBXQUYuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRXYWZFcnJvcigpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC53YWYuZXJyb3JcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQVdTIFdBRiBsYXRlbmN5IGluIG1zLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb250ZXh0V2FmTGF0ZW5jeSgpIHtcbiAgICByZXR1cm4gXCIkY29udGV4dC53YWYubGF0ZW5jeVwiO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBzdGF0dXMgY29kZSByZXR1cm5lZCBmcm9tIEFXUyBXQUYuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvbnRleHRXYWZTdGF0dXMoKSB7XG4gICAgcmV0dXJuIFwiJGNvbnRleHQud2FmLnN0YXR1c1wiO1xuICB9XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgY29udHJvbGxpbmcgaXRlbXMgb3V0cHV0IGluIEpTT04gc3RhbmRhcmQgZm9ybWF0XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSnNvbldpdGhTdGFuZGFyZEZpZWxkUHJvcHMge1xuICAvKipcbiAgICogSWYgdGhpcyBmbGFnIGlzIGVuYWJsZWQsIHRoZSBzb3VyY2UgSVAgb2YgcmVxdWVzdCB3aWxsIGJlIG91dHB1dCB0byB0aGUgbG9nXG4gICAqL1xuICByZWFkb25seSBpcDogYm9vbGVhbjtcbiAgLyoqXG4gICAqIElmIHRoaXMgZmxhZyBpcyBlbmFibGVkLCB0aGUgcHJpbmNpcGFsIGlkZW50aWZpZXIgb2YgdGhlIGNhbGxlciB3aWxsIGJlIG91dHB1dCB0byB0aGUgbG9nXG4gICAqL1xuICByZWFkb25seSBjYWxsZXI6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJZiB0aGlzIGZsYWcgaXMgZW5hYmxlZCwgdGhlIHByaW5jaXBhbCBpZGVudGlmaWVyIG9mIHRoZSB1c2VyIHdpbGwgYmUgb3V0cHV0IHRvIHRoZSBsb2dcbiAgICovXG4gIHJlYWRvbmx5IHVzZXI6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJZiB0aGlzIGZsYWcgaXMgZW5hYmxlZCwgdGhlIENMRi1mb3JtYXR0ZWQgcmVxdWVzdCB0aW1lKChkZC9NTU0veXl5eTpISDptbTpzcyArLWhobW0pIHdpbGwgYmUgb3V0cHV0IHRvIHRoZSBsb2dcbiAgICovXG4gIHJlYWRvbmx5IHJlcXVlc3RUaW1lOiBib29sZWFuO1xuICAvKipcbiAgICogSWYgdGhpcyBmbGFnIGlzIGVuYWJsZWQsIHRoZSBodHRwIG1ldGhvZCB3aWxsIGJlIG91dHB1dCB0byB0aGUgbG9nXG4gICAqL1xuICByZWFkb25seSBodHRwTWV0aG9kOiBib29sZWFuO1xuICAvKipcbiAgICogSWYgdGhpcyBmbGFnIGlzIGVuYWJsZWQsIHRoZSBwYXRoIHRvIHlvdXIgcmVzb3VyY2Ugd2lsbCBiZSBvdXRwdXQgdG8gdGhlIGxvZ1xuICAgKi9cbiAgcmVhZG9ubHkgcmVzb3VyY2VQYXRoOiBib29sZWFuO1xuICAvKipcbiAgICogSWYgdGhpcyBmbGFnIGlzIGVuYWJsZWQsIHRoZSBtZXRob2QgcmVzcG9uc2Ugc3RhdHVzIHdpbGwgYmUgb3V0cHV0IHRvIHRoZSBsb2dcbiAgICovXG4gIHJlYWRvbmx5IHN0YXR1czogYm9vbGVhbjtcbiAgLyoqXG4gICAqIElmIHRoaXMgZmxhZyBpcyBlbmFibGVkLCB0aGUgcmVxdWVzdCBwcm90b2NvbCB3aWxsIGJlIG91dHB1dCB0byB0aGUgbG9nXG4gICAqL1xuICByZWFkb25seSBwcm90b2NvbDogYm9vbGVhbjtcbiAgLyoqXG4gICAqIElmIHRoaXMgZmxhZyBpcyBlbmFibGVkLCB0aGUgcmVzcG9uc2UgcGF5bG9hZCBsZW5ndGggd2lsbCBiZSBvdXRwdXQgdG8gdGhlIGxvZ1xuICAgKi9cbiAgcmVhZG9ubHkgcmVzcG9uc2VMZW5ndGg6IGJvb2xlYW47XG59XG5cbi8qKlxuICogZmFjdG9yeSBtZXRob2RzIGZvciBhY2Nlc3MgbG9nIGZvcm1hdC5cbiAqL1xuZXhwb3J0IGNsYXNzIEFjY2Vzc0xvZ0Zvcm1hdCB7XG4gIC8qKlxuICAgKiBDdXN0b20gbG9nIGZvcm1hdC5cbiAgICogWW91IGNhbiBjcmVhdGUgYW55IGxvZyBmb3JtYXQgc3RyaW5nLiBZb3UgY2FuIGVhc2lseSBnZXQgdGhlICQgY29udGV4dCB2YXJpYWJsZSBieSB1c2luZyB0aGUgbWV0aG9kcyBvZiBBY2Nlc3NMb2dGaWVsZC5cbiAgICogQGV4YW1wbGVcbiAgICpcbiAgICogIGFwaWdhdGV3YXkuQWNjZXNzTG9nRm9ybWF0LmN1c3RvbShKU09OLnN0cmluZ2lmeSh7XG4gICAqICAgICAgcmVxdWVzdElkOiBhcGlnYXRld2F5LkFjY2Vzc0xvZ0ZpZWxkLmNvbnRleHRSZXF1ZXN0SWQoKSxcbiAgICogICAgICBzb3VyY2VJcDogYXBpZ2F0ZXdheS5BY2Nlc3NMb2dGaWVsZC5jb250ZXh0SWRlbnRpdHlTb3VyY2VJcCgpLFxuICAgKiAgICAgIG1ldGhvZDogYXBpZ2F0ZXdheS5BY2Nlc3NMb2dGaWVsZC5jb250ZXh0SHR0cE1ldGhvZCgpLFxuICAgKiAgICAgIHVzZXJDb250ZXh0OiB7XG4gICAqICAgICAgICBzdWI6IGFwaWdhdGV3YXkuQWNjZXNzTG9nRmllbGQuY29udGV4dEF1dGhvcml6ZXJDbGFpbXMoJ3N1YicpLFxuICAgKiAgICAgICAgZW1haWw6IGFwaWdhdGV3YXkuQWNjZXNzTG9nRmllbGQuY29udGV4dEF1dGhvcml6ZXJDbGFpbXMoJ2VtYWlsJylcbiAgICogICAgICB9XG4gICAqICAgfSkpXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGN1c3RvbShmb3JtYXQ6IHN0cmluZyk6IEFjY2Vzc0xvZ0Zvcm1hdCB7XG4gICAgcmV0dXJuIG5ldyBBY2Nlc3NMb2dGb3JtYXQoZm9ybWF0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBDb21tb24gTG9nIEZvcm1hdC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY2xmKCk6IEFjY2Vzc0xvZ0Zvcm1hdCB7XG4gICAgY29uc3QgcmVxdWVzdGVyID0gW1xuICAgICAgQWNjZXNzTG9nRmllbGQuY29udGV4dElkZW50aXR5U291cmNlSXAoKSxcbiAgICAgIEFjY2Vzc0xvZ0ZpZWxkLmNvbnRleHRJZGVudGl0eUNhbGxlcigpLFxuICAgICAgQWNjZXNzTG9nRmllbGQuY29udGV4dElkZW50aXR5VXNlcigpLFxuICAgIF0uam9pbihcIiBcIik7XG4gICAgY29uc3QgcmVxdWVzdFRpbWUgPSBBY2Nlc3NMb2dGaWVsZC5jb250ZXh0UmVxdWVzdFRpbWUoKTtcbiAgICBjb25zdCByZXF1ZXN0ID0gW1xuICAgICAgQWNjZXNzTG9nRmllbGQuY29udGV4dEh0dHBNZXRob2QoKSxcbiAgICAgIEFjY2Vzc0xvZ0ZpZWxkLmNvbnRleHRSZXNvdXJjZVBhdGgoKSxcbiAgICAgIEFjY2Vzc0xvZ0ZpZWxkLmNvbnRleHRQcm90b2NvbCgpLFxuICAgIF0uam9pbihcIiBcIik7XG4gICAgY29uc3Qgc3RhdHVzID0gW1xuICAgICAgQWNjZXNzTG9nRmllbGQuY29udGV4dFN0YXR1cygpLFxuICAgICAgQWNjZXNzTG9nRmllbGQuY29udGV4dFJlc3BvbnNlTGVuZ3RoKCksXG4gICAgICBBY2Nlc3NMb2dGaWVsZC5jb250ZXh0UmVxdWVzdElkKCksXG4gICAgXS5qb2luKFwiIFwiKTtcblxuICAgIHJldHVybiBuZXcgQWNjZXNzTG9nRm9ybWF0KFxuICAgICAgYCR7cmVxdWVzdGVyfSBbJHtyZXF1ZXN0VGltZX1dIFwiJHtyZXF1ZXN0fVwiICR7c3RhdHVzfWAsXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBY2Nlc3MgbG9nIHdpbGwgYmUgcHJvZHVjZWQgaW4gdGhlIEpTT04gZm9ybWF0IHdpdGggYSBzZXQgb2YgZmllbGRzIG1vc3QgdXNlZnVsIGluIHRoZSBhY2Nlc3MgbG9nLiBBbGwgZmllbGRzIGFyZSB0dXJuZWQgb24gYnkgZGVmYXVsdCB3aXRoIHRoZVxuICAgKiBvcHRpb24gdG8gdHVybiBvZmYgc3BlY2lmaWMgZmllbGRzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBqc29uV2l0aFN0YW5kYXJkRmllbGRzKFxuICAgIGZpZWxkczogSnNvbldpdGhTdGFuZGFyZEZpZWxkUHJvcHMgPSB7XG4gICAgICBpcDogdHJ1ZSxcbiAgICAgIHVzZXI6IHRydWUsXG4gICAgICBjYWxsZXI6IHRydWUsXG4gICAgICByZXF1ZXN0VGltZTogdHJ1ZSxcbiAgICAgIGh0dHBNZXRob2Q6IHRydWUsXG4gICAgICByZXNvdXJjZVBhdGg6IHRydWUsXG4gICAgICBzdGF0dXM6IHRydWUsXG4gICAgICBwcm90b2NvbDogdHJ1ZSxcbiAgICAgIHJlc3BvbnNlTGVuZ3RoOiB0cnVlLFxuICAgIH0sXG4gICk6IEFjY2Vzc0xvZ0Zvcm1hdCB7XG4gICAgcmV0dXJuIHRoaXMuY3VzdG9tKFxuICAgICAgSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICByZXF1ZXN0SWQ6IEFjY2Vzc0xvZ0ZpZWxkLmNvbnRleHRSZXF1ZXN0SWQoKSxcbiAgICAgICAgaXA6IGZpZWxkcy5pcCA/IEFjY2Vzc0xvZ0ZpZWxkLmNvbnRleHRJZGVudGl0eVNvdXJjZUlwKCkgOiB1bmRlZmluZWQsXG4gICAgICAgIHVzZXI6IGZpZWxkcy51c2VyID8gQWNjZXNzTG9nRmllbGQuY29udGV4dElkZW50aXR5VXNlcigpIDogdW5kZWZpbmVkLFxuICAgICAgICBjYWxsZXI6IGZpZWxkcy5jYWxsZXJcbiAgICAgICAgICA/IEFjY2Vzc0xvZ0ZpZWxkLmNvbnRleHRJZGVudGl0eUNhbGxlcigpXG4gICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICAgIHJlcXVlc3RUaW1lOiBmaWVsZHMucmVxdWVzdFRpbWVcbiAgICAgICAgICA/IEFjY2Vzc0xvZ0ZpZWxkLmNvbnRleHRSZXF1ZXN0VGltZSgpXG4gICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICAgIGh0dHBNZXRob2Q6IGZpZWxkcy5odHRwTWV0aG9kXG4gICAgICAgICAgPyBBY2Nlc3NMb2dGaWVsZC5jb250ZXh0SHR0cE1ldGhvZCgpXG4gICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICAgIHJlc291cmNlUGF0aDogZmllbGRzLnJlc291cmNlUGF0aFxuICAgICAgICAgID8gQWNjZXNzTG9nRmllbGQuY29udGV4dFJlc291cmNlUGF0aCgpXG4gICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICAgIHN0YXR1czogZmllbGRzLnN0YXR1cyA/IEFjY2Vzc0xvZ0ZpZWxkLmNvbnRleHRTdGF0dXMoKSA6IHVuZGVmaW5lZCxcbiAgICAgICAgcHJvdG9jb2w6IGZpZWxkcy5wcm90b2NvbFxuICAgICAgICAgID8gQWNjZXNzTG9nRmllbGQuY29udGV4dFByb3RvY29sKClcbiAgICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgICAgcmVzcG9uc2VMZW5ndGg6IGZpZWxkcy5yZXNwb25zZUxlbmd0aFxuICAgICAgICAgID8gQWNjZXNzTG9nRmllbGQuY29udGV4dFJlc3BvbnNlTGVuZ3RoKClcbiAgICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQSBBUEkgR2F0ZXdheSBjdXN0b20gYWNjZXNzIGxvZyBmb3JtYXRcbiAgICovXG4gIHByaXZhdGUgcmVhZG9ubHkgZm9ybWF0OiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3Rvcihmb3JtYXQ6IHN0cmluZykge1xuICAgIHRoaXMuZm9ybWF0ID0gZm9ybWF0O1xuICB9XG5cbiAgLyoqXG4gICAqIE91dHB1dCBhIGZvcm1hdCBzdHJpbmcgdG8gYmUgdXNlZCB3aXRoIENsb3VkRm9ybWF0aW9uLlxuICAgKi9cbiAgcHVibGljIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybWF0O1xuICB9XG59XG4iXX0=
|
|
@@ -129,5 +129,5 @@ class Activity extends aws_construct_1.AwsConstructBase {
|
|
|
129
129
|
}
|
|
130
130
|
exports.Activity = Activity;
|
|
131
131
|
_a = JSII_RTTI_SYMBOL_1;
|
|
132
|
-
Activity[_a] = { fqn: "terraconstructs.aws.compute.Activity", version: "0.1.
|
|
132
|
+
Activity[_a] = { fqn: "terraconstructs.aws.compute.Activity", version: "0.1.9" };
|
|
133
133
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXdzL2NvbXB1dGUvYWN0aXZpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxzREFBa0Q7QUFDbEQsaUNBQTZCO0FBRTdCLDRHQUE0RztBQUM1Ryx3RUFBd0U7QUFDeEUsaUVBQWlFO0FBQ2pFLDRFQUE0RTtBQUM1RSxnQ0FHZ0I7QUFDaEIsb0RBSTBCO0FBQzFCLDRDQUF3QztBQUN4Qyw4QkFBOEI7QUFrRTlCOztHQUVHO0FBQ0gsTUFBYSxRQUFTLFNBQVEsZ0NBQWdCO0lBQzVDOztPQUVHO0lBQ0ksTUFBTSxDQUFDLGVBQWUsQ0FDM0IsS0FBZ0IsRUFDaEIsRUFBVSxFQUNWLFdBQW1CO1FBRW5CLE1BQU0sUUFBUyxTQUFRLGdDQUFnQjtZQUNyQyxJQUFXLGVBQWU7Z0JBQ3hCLE9BQU87b0JBQ0wsR0FBRyxFQUFFLElBQUksQ0FBQyxXQUFXO2lCQUN0QixDQUFDO1lBQ0osQ0FBQztZQUNELElBQVcsT0FBTztnQkFDaEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO1lBQzlCLENBQUM7WUFDRCxJQUFXLFdBQVc7Z0JBQ3BCLE9BQU8sV0FBVyxDQUFDO1lBQ3JCLENBQUM7WUFDRCxJQUFXLFlBQVk7Z0JBQ3JCLE9BQU8sQ0FDTCxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsZUFBUyxDQUFDLG1CQUFtQixDQUFDO3FCQUM1RCxZQUFZLElBQUksRUFBRSxDQUN0QixDQUFDO1lBQ0osQ0FBQztTQUNGO1FBRUQsT0FBTyxJQUFJLFFBQVEsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLGdCQUFnQixDQUM1QixLQUFnQixFQUNoQixFQUFVLEVBQ1YsWUFBb0I7UUFFcEIsT0FBTyxRQUFRLENBQUMsZUFBZSxDQUM3QixLQUFLLEVBQ0wsRUFBRSxFQUNGLG9CQUFRLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUN2QyxPQUFPLEVBQUUsUUFBUTtZQUNqQixRQUFRLEVBQUUsVUFBVTtZQUNwQixZQUFZLEVBQUUsWUFBWTtZQUMxQixTQUFTLEVBQUUsZUFBUyxDQUFDLG1CQUFtQjtTQUN6QyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFXLGVBQWU7UUFDeEIsT0FBTztZQUNMLEdBQUcsRUFBRSxJQUFJLENBQUMsV0FBVztTQUN0QixDQUFDO0lBQ0osQ0FBQztJQUNELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDOUIsQ0FBQztJQWFELE1BQU07SUFDTixnQkFBZ0I7SUFDaEIsTUFBTTtJQUNOLHFFQUFxRTtJQUVyRSxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLFFBQXVCLEVBQUU7UUFDakUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFeEI7OztXQUdHO1FBQ0gsTUFBTSxZQUFZLEdBQ2hCLEtBQUssQ0FBQyxZQUFZO1lBQ2xCLFlBQUksQ0FBQyxXQUFXLENBQUM7Z0JBQ2YsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUNaLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFO29CQUNsQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHO29CQUMzQixTQUFTLEVBQUUsRUFBRTtvQkFDYix3QkFBd0IsRUFBRSxJQUFJO2lCQUMvQixDQUFDO2FBQ0wsQ0FBQyxDQUFDO1FBRUwsZ0VBQWdFO1FBQ2hFLE9BQU87UUFDUCw2Q0FBNkM7UUFDN0MsMkNBQTJDO1FBQzNDLE1BQU07UUFDTiw4REFBOEQ7UUFDOUQsZ0NBQWdDO1FBQ2hDLDBCQUEwQjtRQUMxQix5REFBeUQ7UUFDekQsd0VBQXdFO1FBQ3hFLHFCQUFxQjtRQUNyQixZQUFZO1FBQ1osa0NBQWtDO1FBQ2xDLHNFQUFzRTtRQUN0RSxzQkFBc0I7UUFDdEIscUNBQXFDO1FBQ3JDLG1DQUFtQztRQUNuQyxzQ0FBc0M7UUFDdEMsMEJBQTBCO1FBQzFCLDhCQUE4QjtRQUM5QixrQkFBa0I7UUFDbEIsZUFBZTtRQUNmLGFBQWE7UUFDYixXQUFXO1FBQ1gsVUFBVTtRQUNWLE9BQU87UUFDUCxJQUFJO1FBRUosSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLDBCQUFXLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDNUQsSUFBSSxFQUFFLFlBQVk7WUFDbEIseURBQXlEO1lBQ3pELG1DQUFtQztZQUNuQyxLQUFLO1NBQ04sQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztRQUNwQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLEtBQUssQ0FBQyxRQUF3QixFQUFFLEdBQUcsT0FBaUI7UUFDekQsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQztZQUM5QixPQUFPLEVBQUUsUUFBUTtZQUNqQixPQUFPO1lBQ1AsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQztTQUNqQyxDQUFDLENBQUM7SUFDTCxDQUFDOztBQWxKSCw0QkFtSkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBzZm5BY3Rpdml0eSB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXdzXCI7XG5pbXBvcnQgeyBMYXp5IH0gZnJvbSBcImNka3RmXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuLy8gaW1wb3J0IHsgQ3VzdG9tZXJNYW5hZ2VkRW5jcnlwdGlvbkNvbmZpZ3VyYXRpb24gfSBmcm9tIFwiLi9jdXN0b21lci1tYW5hZ2VkLWtleS1lbmNyeXB0aW9uLWNvbmZpZ3VyYXRpb25cIjtcbi8vIGltcG9ydCB7IEVuY3J5cHRpb25Db25maWd1cmF0aW9uIH0gZnJvbSBcIi4vZW5jcnlwdGlvbi1jb25maWd1cmF0aW9uXCI7XG4vLyBpbXBvcnQgeyBidWlsZEVuY3J5cHRpb25Db25maWd1cmF0aW9uIH0gZnJvbSBcIi4vcHJpdmF0ZS91dGlsXCI7XG4vLyBpbXBvcnQgeyBTdGF0ZXNNZXRyaWNzIH0gZnJvbSBcIi4vc3RlcGZ1bmN0aW9ucy1jYW5uZWQtbWV0cmljcy5nZW5lcmF0ZWRcIjtcbmltcG9ydCB7XG4gIC8vIEFybixcbiAgQXJuRm9ybWF0LFxufSBmcm9tIFwiLi4vYXJuXCI7XG5pbXBvcnQge1xuICBBd3NDb25zdHJ1Y3RCYXNlLFxuICBJQXdzQ29uc3RydWN0LFxuICBBd3NDb25zdHJ1Y3RQcm9wcyxcbn0gZnJvbSBcIi4uL2F3cy1jb25zdHJ1Y3RcIjtcbmltcG9ydCB7IEF3c1N0YWNrIH0gZnJvbSBcIi4uL2F3cy1zdGFja1wiO1xuaW1wb3J0ICogYXMgaWFtIGZyb20gXCIuLi9pYW1cIjtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBkZWZpbmluZyBhIG5ldyBTdGVwIEZ1bmN0aW9ucyBBY3Rpdml0eVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5UHJvcHMgZXh0ZW5kcyBBd3NDb25zdHJ1Y3RQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBmb3IgdGhpcyBhY3Rpdml0eS5cbiAgICpcbiAgICogVGhpcyBuYW1lIG11c3QgYmUgdW5pcXVlIGZvciB5b3VyIEFXUyBhY2NvdW50IGFuZCByZWdpb24gZm9yIDkwIGRheXMuXG4gICAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgW0xpbWl0cyBSZWxhdGVkIHRvIFN0YXRlIE1hY2hpbmUgRXhlY3V0aW9uc11bMV0gaW4gdGhlIEFXUyBTdGVwIEZ1bmN0aW9ucyBEZXZlbG9wZXIgR3VpZGUuXG4gICAqXG4gICAqIFRvIGVuYWJsZSBsb2dnaW5nIHdpdGggQ2xvdWRXYXRjaCBMb2dzLCB0aGUgbmFtZSBzaG91bGQgb25seSBjb250YWluIDAtOSwgQS1aLCBhLXosIC0gYW5kIF8uXG4gICAqIExlbmd0aCBDb25zdHJhaW50czogTWluaW11bSBsZW5ndGggb2YgMS4gTWF4aW11bSBsZW5ndGggb2YgODAuXG4gICAqXG4gICAqIFsxXTogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL3N0ZXAtZnVuY3Rpb25zL2xhdGVzdC9kZy9saW1pdHMuaHRtbCNzZXJ2aWNlLWxpbWl0cy1zdGF0ZS1tYWNoaW5lLWV4ZWN1dGlvbnNcbiAgICpcbiAgICogQGRlZmF1bHQgLSBJZiBub3Qgc3VwcGxpZWQsIGEgbmFtZSBpcyBnZW5lcmF0ZWRcbiAgICovXG4gIHJlYWRvbmx5IGFjdGl2aXR5TmFtZT86IHN0cmluZztcblxuICAvLyAvKipcbiAgLy8gICogVGhlIGVuY3J5cHRpb25Db25maWd1cmF0aW9uIG9iamVjdCB1c2VkIGZvciBzZXJ2ZXItc2lkZSBlbmNyeXB0aW9uIG9mIHRoZSBhY3Rpdml0eSBpbnB1dHMuXG4gIC8vICAqXG4gIC8vICAqIEBkZWZhdWx0IC0gZGF0YSBpcyB0cmFuc3BhcmVudGx5IGVuY3J5cHRlZCB1c2luZyBhbiBBV1Mgb3duZWQga2V5XG4gIC8vICAqL1xuICAvLyByZWFkb25seSBlbmNyeXB0aW9uQ29uZmlndXJhdGlvbj86IEVuY3J5cHRpb25Db25maWd1cmF0aW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5T3V0cHV0cyB7XG4gIC8qKlxuICAgKiBUaGUgQW1hem9uIFJlc291cmNlIE5hbWUgKEFSTikgdGhhdCBpZGVudGlmaWVzIHRoZSBjcmVhdGVkIGFjdGl2aXR5LlxuICAgKi9cbiAgcmVhZG9ubHkgYXJuOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIFN0ZXAgRnVuY3Rpb25zIEFjdGl2aXR5XG4gKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vc3RlcC1mdW5jdGlvbnMvbGF0ZXN0L2RnL2NvbmNlcHRzLWFjdGl2aXRpZXMuaHRtbFxuICovXG5leHBvcnQgaW50ZXJmYWNlIElBY3Rpdml0eSBleHRlbmRzIElBd3NDb25zdHJ1Y3Qge1xuICAvKiogU3Ryb25nbHkgdHlwZWQgb3V0cHV0cyAqL1xuICByZWFkb25seSBhY3Rpdml0eU91dHB1dHM6IEFjdGl2aXR5T3V0cHV0cztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgYWN0aXZpdHlcbiAgICpcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgYWN0aXZpdHlBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGFjdGl2aXR5XG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGFjdGl2aXR5TmFtZTogc3RyaW5nO1xuXG4gIC8vIC8qKlxuICAvLyAgKiBUaGUgZW5jcnlwdGlvbkNvbmZpZ3VyYXRpb24gb2JqZWN0IHVzZWQgZm9yIHNlcnZlci1zaWRlIGVuY3J5cHRpb24gb2YgdGhlIGFjdGl2aXR5IGlucHV0c1xuICAvLyAgKlxuICAvLyAgKiBAYXR0cmlidXRlXG4gIC8vICAqL1xuICAvLyByZWFkb25seSBlbmNyeXB0aW9uQ29uZmlndXJhdGlvbj86IEVuY3J5cHRpb25Db25maWd1cmF0aW9uO1xufVxuXG4vKipcbiAqIERlZmluZSBhIG5ldyBTdGVwIEZ1bmN0aW9ucyBBY3Rpdml0eVxuICovXG5leHBvcnQgY2xhc3MgQWN0aXZpdHkgZXh0ZW5kcyBBd3NDb25zdHJ1Y3RCYXNlIGltcGxlbWVudHMgSUFjdGl2aXR5IHtcbiAgLyoqXG4gICAqIENvbnN0cnVjdCBhbiBBY3Rpdml0eSBmcm9tIGFuIGV4aXN0aW5nIEFjdGl2aXR5IEFSTlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tQWN0aXZpdHlBcm4oXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIGFjdGl2aXR5QXJuOiBzdHJpbmcsXG4gICk6IElBY3Rpdml0eSB7XG4gICAgY2xhc3MgSW1wb3J0ZWQgZXh0ZW5kcyBBd3NDb25zdHJ1Y3RCYXNlIGltcGxlbWVudHMgSUFjdGl2aXR5IHtcbiAgICAgIHB1YmxpYyBnZXQgYWN0aXZpdHlPdXRwdXRzKCk6IEFjdGl2aXR5T3V0cHV0cyB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgYXJuOiB0aGlzLmFjdGl2aXR5QXJuLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgcHVibGljIGdldCBvdXRwdXRzKCk6IFJlY29yZDxzdHJpbmcsIGFueT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hY3Rpdml0eU91dHB1dHM7XG4gICAgICB9XG4gICAgICBwdWJsaWMgZ2V0IGFjdGl2aXR5QXJuKCkge1xuICAgICAgICByZXR1cm4gYWN0aXZpdHlBcm47XG4gICAgICB9XG4gICAgICBwdWJsaWMgZ2V0IGFjdGl2aXR5TmFtZSgpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICB0aGlzLnN0YWNrLnNwbGl0QXJuKGFjdGl2aXR5QXJuLCBBcm5Gb3JtYXQuQ09MT05fUkVTT1VSQ0VfTkFNRSlcbiAgICAgICAgICAgIC5yZXNvdXJjZU5hbWUgfHwgXCJcIlxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBuZXcgSW1wb3J0ZWQoc2NvcGUsIGlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3QgYW4gQWN0aXZpdHkgZnJvbSBhbiBleGlzdGluZyBBY3Rpdml0eSBOYW1lXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21BY3Rpdml0eU5hbWUoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIGFjdGl2aXR5TmFtZTogc3RyaW5nLFxuICApOiBJQWN0aXZpdHkge1xuICAgIHJldHVybiBBY3Rpdml0eS5mcm9tQWN0aXZpdHlBcm4oXG4gICAgICBzY29wZSxcbiAgICAgIGlkLFxuICAgICAgQXdzU3RhY2sub2ZBd3NDb25zdHJ1Y3Qoc2NvcGUpLmZvcm1hdEFybih7XG4gICAgICAgIHNlcnZpY2U6IFwic3RhdGVzXCIsXG4gICAgICAgIHJlc291cmNlOiBcImFjdGl2aXR5XCIsXG4gICAgICAgIHJlc291cmNlTmFtZTogYWN0aXZpdHlOYW1lLFxuICAgICAgICBhcm5Gb3JtYXQ6IEFybkZvcm1hdC5DT0xPTl9SRVNPVVJDRV9OQU1FLFxuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYWN0aXZpdHlPdXRwdXRzKCk6IEFjdGl2aXR5T3V0cHV0cyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGFybjogdGhpcy5hY3Rpdml0eUFybixcbiAgICB9O1xuICB9XG4gIHB1YmxpYyBnZXQgb3V0cHV0cygpOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5hY3Rpdml0eU91dHB1dHM7XG4gIH1cbiAgcHVibGljIHJlYWRvbmx5IHJlc291cmNlOiBzZm5BY3Rpdml0eS5TZm5BY3Rpdml0eTtcblxuICAvKipcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGFjdGl2aXR5QXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhY3Rpdml0eU5hbWU6IHN0cmluZztcblxuICAvLyAvKipcbiAgLy8gICogQGF0dHJpYnV0ZVxuICAvLyAgKi9cbiAgLy8gcHVibGljIHJlYWRvbmx5IGVuY3J5cHRpb25Db25maWd1cmF0aW9uPzogRW5jcnlwdGlvbkNvbmZpZ3VyYXRpb247XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEFjdGl2aXR5UHJvcHMgPSB7fSkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuXG4gICAgLyoqXG4gICAgICogVG8gZW5hYmxlIGxvZ2dpbmcgd2l0aCBDbG91ZFdhdGNoIExvZ3MsIHRoZSBuYW1lIHNob3VsZCBvbmx5IGNvbnRhaW4gMC05LCBBLVosIGEteiwgLSBhbmQgXy5cbiAgICAgKiBMZW5ndGggQ29uc3RyYWludHM6IE1pbmltdW0gbGVuZ3RoIG9mIDEuIE1heGltdW0gbGVuZ3RoIG9mIDgwLlxuICAgICAqL1xuICAgIGNvbnN0IHJlc291cmNlTmFtZSA9XG4gICAgICBwcm9wcy5hY3Rpdml0eU5hbWUgfHxcbiAgICAgIExhenkuc3RyaW5nVmFsdWUoe1xuICAgICAgICBwcm9kdWNlOiAoKSA9PlxuICAgICAgICAgIHRoaXMuc3RhY2sudW5pcXVlUmVzb3VyY2VOYW1lKHRoaXMsIHtcbiAgICAgICAgICAgIHByZWZpeDogdGhpcy5ncmlkVVVJRCArIFwiLVwiLFxuICAgICAgICAgICAgbWF4TGVuZ3RoOiA4MCxcbiAgICAgICAgICAgIGFsbG93ZWRTcGVjaWFsQ2hhcmFjdGVyczogXCItX1wiLFxuICAgICAgICAgIH0pLFxuICAgICAgfSk7XG5cbiAgICAvLyB0aGlzLmVuY3J5cHRpb25Db25maWd1cmF0aW9uID0gcHJvcHMuZW5jcnlwdGlvbkNvbmZpZ3VyYXRpb247XG4gICAgLy8gaWYgKFxuICAgIC8vICAgcHJvcHMuZW5jcnlwdGlvbkNvbmZpZ3VyYXRpb24gaW5zdGFuY2VvZlxuICAgIC8vICAgQ3VzdG9tZXJNYW5hZ2VkRW5jcnlwdGlvbkNvbmZpZ3VyYXRpb25cbiAgICAvLyApIHtcbiAgICAvLyAgIHByb3BzLmVuY3J5cHRpb25Db25maWd1cmF0aW9uLmttc0tleS5hZGRUb1Jlc291cmNlUG9saWN5KFxuICAgIC8vICAgICBuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgLy8gICAgICAgcmVzb3VyY2VzOiBbXCIqXCJdLFxuICAgIC8vICAgICAgIGFjdGlvbnM6IFtcImttczpEZWNyeXB0XCIsIFwia21zOkdlbmVyYXRlRGF0YUtleVwiXSxcbiAgICAvLyAgICAgICBwcmluY2lwYWxzOiBbbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKFwic3RhdGVzLmFtYXpvbmF3cy5jb21cIildLFxuICAgIC8vICAgICAgIGNvbmRpdGlvbjogW1xuICAgIC8vICAgICAgICAge1xuICAgIC8vICAgICAgICAgICB0ZXN0OiBcIlN0cmluZ0VxdWFsc1wiLFxuICAgIC8vICAgICAgICAgICB2YXJpYWJsZTogXCJrbXM6RW5jcnlwdGlvbkNvbnRleHQ6YXdzOnN0YXRlczphY3Rpdml0eUFyblwiLFxuICAgIC8vICAgICAgICAgICB2YWx1ZXM6IFtcbiAgICAvLyAgICAgICAgICAgICB0aGlzLnN0YWNrLmZvcm1hdEFybih7XG4gICAgLy8gICAgICAgICAgICAgICBzZXJ2aWNlOiBcInN0YXRlc1wiLFxuICAgIC8vICAgICAgICAgICAgICAgcmVzb3VyY2U6IFwiYWN0aXZpdHlcIixcbiAgICAvLyAgICAgICAgICAgICAgIHNlcDogXCI6XCIsXG4gICAgLy8gICAgICAgICAgICAgICByZXNvdXJjZU5hbWUsXG4gICAgLy8gICAgICAgICAgICAgfSksXG4gICAgLy8gICAgICAgICAgIF0sXG4gICAgLy8gICAgICAgICB9LFxuICAgIC8vICAgICAgIF0sXG4gICAgLy8gICAgIH0pLFxuICAgIC8vICAgKTtcbiAgICAvLyB9XG5cbiAgICB0aGlzLnJlc291cmNlID0gbmV3IHNmbkFjdGl2aXR5LlNmbkFjdGl2aXR5KHRoaXMsIFwiUmVzb3VyY2VcIiwge1xuICAgICAgbmFtZTogcmVzb3VyY2VOYW1lLFxuICAgICAgLy8gZW5jcnlwdGlvbkNvbmZpZ3VyYXRpb246IGJ1aWxkRW5jcnlwdGlvbkNvbmZpZ3VyYXRpb24oXG4gICAgICAvLyAgIHByb3BzLmVuY3J5cHRpb25Db25maWd1cmF0aW9uLFxuICAgICAgLy8gKSxcbiAgICB9KTtcblxuICAgIHRoaXMuYWN0aXZpdHlBcm4gPSB0aGlzLnJlc291cmNlLmlkO1xuICAgIHRoaXMuYWN0aXZpdHlOYW1lID0gdGhpcy5yZXNvdXJjZS5uYW1lO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50IHRoZSBnaXZlbiBpZGVudGl0eSBwZXJtaXNzaW9ucyBvbiB0aGlzIEFjdGl2aXR5XG4gICAqXG4gICAqIEBwYXJhbSBpZGVudGl0eSBUaGUgcHJpbmNpcGFsXG4gICAqIEBwYXJhbSBhY3Rpb25zIFRoZSBsaXN0IG9mIGRlc2lyZWQgYWN0aW9uc1xuICAgKi9cbiAgcHVibGljIGdyYW50KGlkZW50aXR5OiBpYW0uSUdyYW50YWJsZSwgLi4uYWN0aW9uczogc3RyaW5nW10pIHtcbiAgICByZXR1cm4gaWFtLkdyYW50LmFkZFRvUHJpbmNpcGFsKHtcbiAgICAgIGdyYW50ZWU6IGlkZW50aXR5LFxuICAgICAgYWN0aW9ucyxcbiAgICAgIHJlc291cmNlQXJuczogW3RoaXMuYWN0aXZpdHlBcm5dLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -207,7 +207,7 @@ class ListenerAction {
|
|
|
207
207
|
}
|
|
208
208
|
exports.ListenerAction = ListenerAction;
|
|
209
209
|
_a = JSII_RTTI_SYMBOL_1;
|
|
210
|
-
ListenerAction[_a] = { fqn: "terraconstructs.aws.compute.ListenerAction", version: "0.1.
|
|
210
|
+
ListenerAction[_a] = { fqn: "terraconstructs.aws.compute.ListenerAction", version: "0.1.9" };
|
|
211
211
|
/**
|
|
212
212
|
* What to do with unauthenticated requests
|
|
213
213
|
*/
|
|
@@ -31,5 +31,5 @@ class ApplicationListenerCertificate extends constructs_1.Construct {
|
|
|
31
31
|
}
|
|
32
32
|
exports.ApplicationListenerCertificate = ApplicationListenerCertificate;
|
|
33
33
|
_a = JSII_RTTI_SYMBOL_1;
|
|
34
|
-
ApplicationListenerCertificate[_a] = { fqn: "terraconstructs.aws.compute.ApplicationListenerCertificate", version: "0.1.
|
|
34
|
+
ApplicationListenerCertificate[_a] = { fqn: "terraconstructs.aws.compute.ApplicationListenerCertificate", version: "0.1.9" };
|
|
35
35
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24tbGlzdGVuZXItY2VydGlmaWNhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXdzL2NvbXB1dGUvYWxiL2FwcGxpY2F0aW9uLWxpc3RlbmVyLWNlcnRpZmljYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMklBQTJJO0FBRTNJLHNEQUFxRjtBQUNyRiwyQ0FBdUM7QUFpQ3ZDOztHQUVHO0FBQ0gsTUFBYSw4QkFBK0IsU0FBUSxzQkFBUztJQUMzRCxZQUNFLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVixLQUEwQztRQUUxQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ2xELE1BQU0sSUFBSSxLQUFLLENBQ2IsaUVBQWlFLENBQ2xFLENBQUM7UUFDSixDQUFDO1FBRUQsTUFBTSxZQUFZLEdBQUc7WUFDbkIsR0FBRyxDQUFDLEtBQUssQ0FBQyxZQUFZLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUN4QyxjQUFjLEVBQUUsQ0FBQyxDQUFDLGNBQWM7YUFDakMsQ0FBQyxDQUFDO1lBQ0gsR0FBRyxDQUFDLEtBQUssQ0FBQyxlQUFlLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsY0FBYyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUN4RCxjQUFjO2FBQ2YsQ0FBQyxDQUFDO1NBQ0osQ0FBQztRQUVGLElBQUksb0NBQXFCLENBQUMscUJBQXFCLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUNoRSxXQUFXLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXO1lBQ3ZDLGNBQWMsRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYztTQUMvQyxDQUFDLENBQUM7SUFDTCxDQUFDOztBQTNCSCx3RUE0QkMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNzUuMS9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2Mi9saWIvYWxiL2FwcGxpY2F0aW9uLWxpc3RlbmVyLWNlcnRpZmljYXRlLnRzXG5cbmltcG9ydCB7IGxiTGlzdGVuZXJDZXJ0aWZpY2F0ZSBhcyB0Zkxpc3RlbmVyQ2VydGlmaWNhdGUgfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF3c1wiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IElBcHBsaWNhdGlvbkxpc3RlbmVyIH0gZnJvbSBcIi4vYXBwbGljYXRpb24tbGlzdGVuZXJcIjtcbmltcG9ydCB7IElMaXN0ZW5lckNlcnRpZmljYXRlIH0gZnJvbSBcIi4uL2xiLXNoYXJlZC9saXN0ZW5lci1jZXJ0aWZpY2F0ZVwiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGFkZGluZyBhIHNldCBvZiBjZXJ0aWZpY2F0ZXMgdG8gYSBsaXN0ZW5lclxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFwcGxpY2F0aW9uTGlzdGVuZXJDZXJ0aWZpY2F0ZVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBsaXN0ZW5lciB0byBhdHRhY2ggdGhlIHJ1bGUgdG9cbiAgICovXG4gIHJlYWRvbmx5IGxpc3RlbmVyOiBJQXBwbGljYXRpb25MaXN0ZW5lcjtcblxuICAvKipcbiAgICogQVJOcyBvZiBjZXJ0aWZpY2F0ZXMgdG8gYXR0YWNoXG4gICAqXG4gICAqIER1cGxpY2F0ZXMgYXJlIG5vdCBhbGxvd2VkLlxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCBVc2UgYGNlcnRpZmljYXRlc2AgaW5zdGVhZC5cbiAgICogQGRlZmF1bHQgLSBPbmUgb2YgJ2NlcnRpZmljYXRlcycgYW5kICdjZXJ0aWZpY2F0ZUFybnMnIGlzIHJlcXVpcmVkLlxuICAgKi9cbiAgcmVhZG9ubHkgY2VydGlmaWNhdGVBcm5zPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIENlcnRpZmljYXRlcyB0byBhdHRhY2hcbiAgICpcbiAgICogRHVwbGljYXRlcyBhcmUgbm90IGFsbG93ZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gT25lIG9mICdjZXJ0aWZpY2F0ZXMnIGFuZCAnY2VydGlmaWNhdGVBcm5zJyBpcyByZXF1aXJlZC5cbiAgICovXG4gIHJlYWRvbmx5IGNlcnRpZmljYXRlcz86IElMaXN0ZW5lckNlcnRpZmljYXRlW107XG59XG5cbi8qKlxuICogQWRkIGNlcnRpZmljYXRlcyB0byBhIGxpc3RlbmVyXG4gKi9cbmV4cG9ydCBjbGFzcyBBcHBsaWNhdGlvbkxpc3RlbmVyQ2VydGlmaWNhdGUgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IEFwcGxpY2F0aW9uTGlzdGVuZXJDZXJ0aWZpY2F0ZVByb3BzLFxuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgaWYgKCFwcm9wcy5jZXJ0aWZpY2F0ZUFybnMgJiYgIXByb3BzLmNlcnRpZmljYXRlcykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIkF0IGxlYXN0IG9uZSBvZiAnY2VydGlmaWNhdGVBcm5zJyBvciAnY2VydGlmaWNhdGVzJyBpcyByZXF1aXJlZFwiLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBjZXJ0aWZpY2F0ZXMgPSBbXG4gICAgICAuLi4ocHJvcHMuY2VydGlmaWNhdGVzIHx8IFtdKS5tYXAoKGMpID0+ICh7XG4gICAgICAgIGNlcnRpZmljYXRlQXJuOiBjLmNlcnRpZmljYXRlQXJuLFxuICAgICAgfSkpLFxuICAgICAgLi4uKHByb3BzLmNlcnRpZmljYXRlQXJucyB8fCBbXSkubWFwKChjZXJ0aWZpY2F0ZUFybikgPT4gKHtcbiAgICAgICAgY2VydGlmaWNhdGVBcm4sXG4gICAgICB9KSksXG4gICAgXTtcblxuICAgIG5ldyB0Zkxpc3RlbmVyQ2VydGlmaWNhdGUuTGJMaXN0ZW5lckNlcnRpZmljYXRlKHRoaXMsIFwiUmVzb3VyY2VcIiwge1xuICAgICAgbGlzdGVuZXJBcm46IHByb3BzLmxpc3RlbmVyLmxpc3RlbmVyQXJuLFxuICAgICAgY2VydGlmaWNhdGVBcm46IGNlcnRpZmljYXRlc1swXS5jZXJ0aWZpY2F0ZUFybixcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -187,7 +187,7 @@ class ApplicationListenerRule extends constructs_1.Construct {
|
|
|
187
187
|
}
|
|
188
188
|
exports.ApplicationListenerRule = ApplicationListenerRule;
|
|
189
189
|
_a = JSII_RTTI_SYMBOL_1;
|
|
190
|
-
ApplicationListenerRule[_a] = { fqn: "terraconstructs.aws.compute.ApplicationListenerRule", version: "0.1.
|
|
190
|
+
ApplicationListenerRule[_a] = { fqn: "terraconstructs.aws.compute.ApplicationListenerRule", version: "0.1.9" };
|
|
191
191
|
/**
|
|
192
192
|
* Validate the status code and message body of a fixed response
|
|
193
193
|
* @internal
|
|
@@ -381,7 +381,7 @@ class ApplicationListener extends base_listener_1.BaseListener {
|
|
|
381
381
|
}
|
|
382
382
|
exports.ApplicationListener = ApplicationListener;
|
|
383
383
|
_a = JSII_RTTI_SYMBOL_1;
|
|
384
|
-
ApplicationListener[_a] = { fqn: "terraconstructs.aws.compute.ApplicationListener", version: "0.1.
|
|
384
|
+
ApplicationListener[_a] = { fqn: "terraconstructs.aws.compute.ApplicationListener", version: "0.1.9" };
|
|
385
385
|
class ExternalApplicationListener extends aws_construct_1.AwsConstructBase {
|
|
386
386
|
get listenerOutputs() {
|
|
387
387
|
return {
|
|
@@ -540,7 +540,7 @@ class ApplicationLoadBalancer extends base_load_balancer_1.BaseLoadBalancer {
|
|
|
540
540
|
}
|
|
541
541
|
exports.ApplicationLoadBalancer = ApplicationLoadBalancer;
|
|
542
542
|
_a = JSII_RTTI_SYMBOL_1;
|
|
543
|
-
ApplicationLoadBalancer[_a] = { fqn: "terraconstructs.aws.compute.ApplicationLoadBalancer", version: "0.1.
|
|
543
|
+
ApplicationLoadBalancer[_a] = { fqn: "terraconstructs.aws.compute.ApplicationLoadBalancer", version: "0.1.9" };
|
|
544
544
|
class ApplicationLoadBalancerMetrics {
|
|
545
545
|
constructor(scope, loadBalancerFullName) {
|
|
546
546
|
this.scope = scope;
|
|
@@ -385,7 +385,7 @@ class ApplicationTargetGroup extends base_target_group_1.TargetGroupBase {
|
|
|
385
385
|
}
|
|
386
386
|
exports.ApplicationTargetGroup = ApplicationTargetGroup;
|
|
387
387
|
_a = JSII_RTTI_SYMBOL_1;
|
|
388
|
-
ApplicationTargetGroup[_a] = { fqn: "terraconstructs.aws.compute.ApplicationTargetGroup", version: "0.1.
|
|
388
|
+
ApplicationTargetGroup[_a] = { fqn: "terraconstructs.aws.compute.ApplicationTargetGroup", version: "0.1.9" };
|
|
389
389
|
/**
|
|
390
390
|
* An imported application target group
|
|
391
391
|
*/
|
|
@@ -61,7 +61,7 @@ class ListenerCondition {
|
|
|
61
61
|
}
|
|
62
62
|
exports.ListenerCondition = ListenerCondition;
|
|
63
63
|
_a = JSII_RTTI_SYMBOL_1;
|
|
64
|
-
ListenerCondition[_a] = { fqn: "terraconstructs.aws.compute.ListenerCondition", version: "0.1.
|
|
64
|
+
ListenerCondition[_a] = { fqn: "terraconstructs.aws.compute.ListenerCondition", version: "0.1.9" };
|
|
65
65
|
/**
|
|
66
66
|
* Host header config of the listener rule condition
|
|
67
67
|
*/
|
|
@@ -42,5 +42,5 @@ class TrustStoreRevocation extends aws_construct_1.AwsConstructBase {
|
|
|
42
42
|
}
|
|
43
43
|
exports.TrustStoreRevocation = TrustStoreRevocation;
|
|
44
44
|
_a = JSII_RTTI_SYMBOL_1;
|
|
45
|
-
TrustStoreRevocation[_a] = { fqn: "terraconstructs.aws.compute.TrustStoreRevocation", version: "0.1.
|
|
45
|
+
TrustStoreRevocation[_a] = { fqn: "terraconstructs.aws.compute.TrustStoreRevocation", version: "0.1.9" };
|
|
46
46
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1c3Qtc3RvcmUtcmV2b2NhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hd3MvY29tcHV0ZS9hbGIvdHJ1c3Qtc3RvcmUtcmV2b2NhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGlJQUFpSTtBQUVqSSxzREFBdUY7QUFHdkYsdURBQXVEO0FBK0N2RDs7R0FFRztBQUNILElBQVksY0FLWDtBQUxELFdBQVksY0FBYztJQUN4Qjs7T0FFRztJQUNILDZCQUFXLENBQUE7QUFDYixDQUFDLEVBTFcsY0FBYyw4QkFBZCxjQUFjLFFBS3pCO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLG9CQUFxQixTQUFRLGdDQUFnQjtJQUN4RCxJQUFXLE9BQU87UUFDaEIsT0FBTztZQUNMLGFBQWEsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQztTQUMzRCxDQUFDO0lBQ0osQ0FBQztJQUdELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBZ0M7UUFDeEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUhGLGdCQUFXLEdBQzFCLElBQUksS0FBSyxFQUFpRCxDQUFDO1FBRzNELEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUN4QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDbkIsSUFBSSxxQ0FBc0IsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO2dCQUNsRSxhQUFhLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxhQUFhO2dCQUM3QyxtSkFBbUo7Z0JBQ25KLDBDQUEwQztnQkFDMUMsbUJBQW1CLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxVQUFVO2dCQUM5QyxnQkFBZ0IsRUFBRSxPQUFPLENBQUMsR0FBRztnQkFDN0IsMEJBQTBCLEVBQUUsT0FBTyxDQUFDLE9BQU87YUFDNUMsQ0FBQyxDQUNILENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBdEJILG9EQXVCQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9ibG9iL3YyLjE3NS4xL3BhY2thZ2VzL2F3cy1jZGstbGliL2F3cy1lbGFzdGljbG9hZGJhbGFuY2luZ3YyL2xpYi9hbGIvdHJ1c3Qtc3RvcmUtcmV2b2NhdGlvbi50c1xuXG5pbXBvcnQgeyBsYlRydXN0U3RvcmVSZXZvY2F0aW9uIGFzIHRmVHJ1c3RTdG9yZVJldm9jYXRpb24gfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF3c1wiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IElUcnVzdFN0b3JlIH0gZnJvbSBcIi4vdHJ1c3Qtc3RvcmVcIjtcbmltcG9ydCB7IEF3c0NvbnN0cnVjdEJhc2UgfSBmcm9tIFwiLi4vLi4vYXdzLWNvbnN0cnVjdFwiO1xuaW1wb3J0IHsgSUJ1Y2tldCB9IGZyb20gXCIuLi8uLi9zdG9yYWdlXCI7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgdGhlIHRydXN0IHN0b3JlIHJldm9jYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUcnVzdFN0b3JlUmV2b2NhdGlvblByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSB0cnVzdCBzdG9yZVxuICAgKi9cbiAgcmVhZG9ubHkgdHJ1c3RTdG9yZTogSVRydXN0U3RvcmU7XG5cbiAgLyoqXG4gICAqIFRoZSByZXZvY2F0aW9uIGZpbGUgdG8gYWRkXG4gICAqL1xuICByZWFkb25seSByZXZvY2F0aW9uQ29udGVudHM6IFJldm9jYXRpb25Db250ZW50W107XG59XG5cbi8qKlxuICogSW5mb3JtYXRpb24gYWJvdXQgYSByZXZvY2F0aW9uIGZpbGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXZvY2F0aW9uQ29udGVudCB7XG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvZiByZXZvY2F0aW9uIGZpbGVcbiAgICpcbiAgICogQGRlZmF1bHQgUmV2b2NhdGlvblR5cGUuQ1JMXG4gICAqL1xuICByZWFkb25seSByZXZvY2F0aW9uVHlwZT86IFJldm9jYXRpb25UeXBlO1xuXG4gIC8qKlxuICAgKiBUaGUgQW1hem9uIFMzIGJ1Y2tldCBmb3IgdGhlIHJldm9jYXRpb24gZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgYnVja2V0OiBJQnVja2V0O1xuXG4gIC8qKlxuICAgKiBUaGUgQW1hem9uIFMzIHBhdGggZm9yIHRoZSByZXZvY2F0aW9uIGZpbGVcbiAgICovXG4gIHJlYWRvbmx5IGtleTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQW1hem9uIFMzIG9iamVjdCB2ZXJzaW9uIG9mIHRoZSByZXZvY2F0aW9uIGZpbGVcbiAgICpcbiAgICogQGRlZmF1bHQgLSBsYXRlc3QgdmVyc2lvblxuICAgKi9cbiAgcmVhZG9ubHkgdmVyc2lvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBUaGUgdHlwZSBvZiByZXZvY2F0aW9uIGZpbGVcbiAqL1xuZXhwb3J0IGVudW0gUmV2b2NhdGlvblR5cGUge1xuICAvKipcbiAgICogQSBzaWduZWQgbGlzdCBvZiByZXZva2VkIGNlcnRpZmljYXRlc1xuICAgKi9cbiAgQ1JMID0gXCJDUkxcIiwgLy8gT25seSBzdXBwb3J0ZWQgdmFsdWVcbn1cblxuLyoqXG4gKiBBIG5ldyBUcnVzdCBTdG9yZSBSZXZvY2F0aW9uXG4gKi9cbmV4cG9ydCBjbGFzcyBUcnVzdFN0b3JlUmV2b2NhdGlvbiBleHRlbmRzIEF3c0NvbnN0cnVjdEJhc2Uge1xuICBwdWJsaWMgZ2V0IG91dHB1dHMoKTogUmVjb3JkPHN0cmluZywgYW55PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHJldm9jYXRpb25JZHM6IHRoaXMucmV2b2NhdGlvbnMubWFwKChyKSA9PiByLnJldm9jYXRpb25JZCksXG4gICAgfTtcbiAgfVxuICBwcml2YXRlIHJlYWRvbmx5IHJldm9jYXRpb25zID1cbiAgICBuZXcgQXJyYXk8dGZUcnVzdFN0b3JlUmV2b2NhdGlvbi5MYlRydXN0U3RvcmVSZXZvY2F0aW9uPigpO1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogVHJ1c3RTdG9yZVJldm9jYXRpb25Qcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgcHJvcHMucmV2b2NhdGlvbkNvbnRlbnRzPy5tYXAoKGNvbnRlbnQpID0+IHtcbiAgICAgIHRoaXMucmV2b2NhdGlvbnMucHVzaChcbiAgICAgICAgbmV3IHRmVHJ1c3RTdG9yZVJldm9jYXRpb24uTGJUcnVzdFN0b3JlUmV2b2NhdGlvbih0aGlzLCBcIlJlc291cmNlXCIsIHtcbiAgICAgICAgICB0cnVzdFN0b3JlQXJuOiBwcm9wcy50cnVzdFN0b3JlLnRydXN0U3RvcmVBcm4sXG4gICAgICAgICAgLy8gaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FXU0Nsb3VkRm9ybWF0aW9uL2xhdGVzdC9Vc2VyR3VpZGUvYXdzLXByb3BlcnRpZXMtZWxhc3RpY2xvYWRiYWxhbmNpbmd2Mi10cnVzdHN0b3JlcmV2b2NhdGlvbi1yZXZvY2F0aW9uY29udGVudC5odG1sXG4gICAgICAgICAgLy8gcmV2b2NhdGlvblR5cGU6IGNvbnRlbnQucmV2b2NhdGlvblR5cGUsXG4gICAgICAgICAgcmV2b2NhdGlvbnNTM0J1Y2tldDogY29udGVudC5idWNrZXQuYnVja2V0TmFtZSxcbiAgICAgICAgICByZXZvY2F0aW9uc1MzS2V5OiBjb250ZW50LmtleSxcbiAgICAgICAgICByZXZvY2F0aW9uc1MzT2JqZWN0VmVyc2lvbjogY29udGVudC52ZXJzaW9uLFxuICAgICAgICB9KSxcbiAgICAgICk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -75,5 +75,5 @@ class TrustStore extends aws_construct_1.AwsConstructBase {
|
|
|
75
75
|
}
|
|
76
76
|
exports.TrustStore = TrustStore;
|
|
77
77
|
_a = JSII_RTTI_SYMBOL_1;
|
|
78
|
-
TrustStore[_a] = { fqn: "terraconstructs.aws.compute.TrustStore", version: "0.1.
|
|
78
|
+
TrustStore[_a] = { fqn: "terraconstructs.aws.compute.TrustStore", version: "0.1.9" };
|
|
79
79
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1c3Qtc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXdzL2NvbXB1dGUvYWxiL3RydXN0LXN0b3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsc0hBQXNIO0FBRXRILHNEQUFtRTtBQUNuRSxpQ0FBa0M7QUFFbEMsdURBSTZCO0FBcUU3Qjs7R0FFRztBQUNILE1BQWEsVUFBVyxTQUFRLGdDQUFnQjtJQUM5Qzs7T0FFRztJQUNJLE1BQU0sQ0FBQyxpQkFBaUIsQ0FDN0IsS0FBZ0IsRUFDaEIsRUFBVSxFQUNWLGFBQXFCO1FBRXJCLE1BQU0sYUFBYSxHQUFHLFVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBRW5ELE1BQU0sY0FBYyxHQUFHLFVBQUUsQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRXBELE1BQU0sTUFBTyxTQUFRLGdDQUFnQjtZQUFyQzs7Z0JBVWtCLGtCQUFhLEdBQUcsYUFBYSxDQUFDO2dCQUM5QixtQkFBYyxHQUFHLGNBQWMsQ0FBQztZQUNsRCxDQUFDO1lBWEMsSUFBVyxpQkFBaUI7Z0JBQzFCLE9BQU87b0JBQ0wsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO29CQUNuQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7aUJBQ2xDLENBQUM7WUFDSixDQUFDO1lBQ0QsSUFBVyxPQUFPO2dCQUNoQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztZQUNoQyxDQUFDO1NBR0Y7UUFDRCxPQUFPLElBQUksTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBVyxpQkFBaUI7UUFDMUIsT0FBTztZQUNMLGNBQWMsRUFBRSxJQUFJLENBQUMsY0FBYztZQUNuQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7U0FDbEMsQ0FBQztJQUNKLENBQUM7SUFDRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUM7SUFDaEMsQ0FBQztJQWlDRCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXNCO1FBQzlELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxZQUFZO1lBQ2YsS0FBSyxDQUFDLGNBQWM7Z0JBQ3BCLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFekQsSUFDRSxLQUFLLENBQUMsY0FBYyxLQUFLLFNBQVM7WUFDbEMsQ0FBQyxhQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsRUFDekMsQ0FBQztZQUNELElBQUksS0FBSyxDQUFDLGNBQWMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLEtBQUssQ0FBQyxjQUFjLENBQUMsTUFBTSxHQUFHLEVBQUUsRUFBRSxDQUFDO2dCQUN4RSxNQUFNLElBQUksS0FBSyxDQUNiLG1CQUFtQixLQUFLLENBQUMsY0FBYyxpQ0FBaUMsQ0FDekUsQ0FBQztZQUNKLENBQUM7WUFDRCxNQUFNLGNBQWMsR0FBRyxnQ0FBZ0MsQ0FBQztZQUN4RCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQztnQkFDL0MsTUFBTSxJQUFJLEtBQUssQ0FDYixtQkFBbUIsS0FBSyxDQUFDLGNBQWMsaUdBQWlHLENBQ3pJLENBQUM7WUFDSixDQUFDO1FBQ0gsQ0FBQztRQUVELE1BQU0sUUFBUSxHQUFHLElBQUksMkJBQVksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUMvRCxJQUFJLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDdkIsNEJBQTRCLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVO1lBQ3JELHlCQUF5QixFQUFFLEtBQUssQ0FBQyxHQUFHO1lBQ3BDLG1DQUFtQyxFQUFFLEtBQUssQ0FBQyxPQUFPO1NBQ25ELENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxjQUFjLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQztRQUNwQyxJQUFJLENBQUMsYUFBYSxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUM7UUFDbEMsMERBQTBEO1FBQzFELGlFQUFpRTtRQUNqRSwwQ0FBMEM7UUFDMUMsaUNBQWlDO0lBQ25DLENBQUM7O0FBMUdILGdDQTJHQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9ibG9iL3YyLjE3NS4xL3BhY2thZ2VzL2F3cy1jZGstbGliL2F3cy1lbGFzdGljbG9hZGJhbGFuY2luZ3YyL2xpYi9hbGIvdHJ1c3Qtc3RvcmUudHNcblxuaW1wb3J0IHsgbGJUcnVzdFN0b3JlIGFzIHRmVHJ1c3RTdG9yZSB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXdzXCI7XG5pbXBvcnQgeyBGbiwgVG9rZW4gfSBmcm9tIFwiY2RrdGZcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge1xuICBJQXdzQ29uc3RydWN0LFxuICBBd3NDb25zdHJ1Y3RCYXNlLFxuICBBd3NDb25zdHJ1Y3RQcm9wcyxcbn0gZnJvbSBcIi4uLy4uL2F3cy1jb25zdHJ1Y3RcIjtcbmltcG9ydCB7IElCdWNrZXQgfSBmcm9tIFwiLi4vLi4vc3RvcmFnZVwiO1xuXG4vKipcbiAqIE91dHB1dHMgd2hpY2ggbWF5IGJlIHJlZ2lzdGVyZWQgZm9yIG91dHB1dCB2aWEgdGhlIEdyaWQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJ1c3RTdG9yZU91dHB1dHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHRydXN0IHN0b3JlXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IHRydXN0U3RvcmVOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIHRydXN0IHN0b3JlXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IHRydXN0U3RvcmVBcm46IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgVHJ1c3QgU3RvcmVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJVHJ1c3RTdG9yZSBleHRlbmRzIElBd3NDb25zdHJ1Y3Qge1xuICAvKiogU3Ryb25nbHkgdHlwZWQgb3V0cHV0cyAqL1xuICByZWFkb25seSB0cnVzdFN0b3JlT3V0cHV0czogVHJ1c3RTdG9yZU91dHB1dHM7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgdHJ1c3Qgc3RvcmVcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgdHJ1c3RTdG9yZU5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgdHJ1c3Qgc3RvcmVcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgdHJ1c3RTdG9yZUFybjogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgdXNlZCBmb3IgdGhlIFRydXN0IFN0b3JlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJ1c3RTdG9yZVByb3BzIGV4dGVuZHMgQXdzQ29uc3RydWN0UHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHRydXN0IHN0b3JlXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gQXV0byBnZW5lcmF0ZWRcbiAgICovXG4gIHJlYWRvbmx5IHRydXN0U3RvcmVOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgYnVja2V0IHRoYXQgdGhlIHRydXN0IHN0b3JlIGlzIGhvc3RlZCBpblxuICAgKi9cbiAgcmVhZG9ubHkgYnVja2V0OiBJQnVja2V0O1xuXG4gIC8qKlxuICAgKiBUaGUga2V5IGluIFMzIHRvIGxvb2sgYXQgZm9yIHRoZSB0cnVzdCBzdG9yZVxuICAgKi9cbiAgcmVhZG9ubHkga2V5OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB2ZXJzaW9uIG9mIHRoZSBTMyBvYmplY3QgdGhhdCBjb250YWlucyB5b3VyIHRydXN0c3RvcmUuXG4gICAqIFRvIHNwZWNpZnkgYSB2ZXJzaW9uLCB5b3UgbXVzdCBoYXZlIHZlcnNpb25pbmcgZW5hYmxlZCBmb3IgdGhlIFMzIGJ1Y2tldC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBsYXRlc3QgdmVyc2lvblxuICAgKi9cbiAgcmVhZG9ubHkgdmVyc2lvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBBIG5ldyBUcnVzdCBTdG9yZVxuICovXG5leHBvcnQgY2xhc3MgVHJ1c3RTdG9yZSBleHRlbmRzIEF3c0NvbnN0cnVjdEJhc2UgaW1wbGVtZW50cyBJVHJ1c3RTdG9yZSB7XG4gIC8qKlxuICAgKiBJbXBvcnQgZnJvbSBBUk5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbVRydXN0U3RvcmVBcm4oXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHRydXN0U3RvcmVBcm46IHN0cmluZyxcbiAgKTogSVRydXN0U3RvcmUge1xuICAgIGNvbnN0IHJlc291cmNlUGFydHMgPSBGbi5zcGxpdChcIi9cIiwgdHJ1c3RTdG9yZUFybik7XG5cbiAgICBjb25zdCB0cnVzdFN0b3JlTmFtZSA9IEZuLmVsZW1lbnQocmVzb3VyY2VQYXJ0cywgMCk7XG5cbiAgICBjbGFzcyBJbXBvcnQgZXh0ZW5kcyBBd3NDb25zdHJ1Y3RCYXNlIGltcGxlbWVudHMgSVRydXN0U3RvcmUge1xuICAgICAgcHVibGljIGdldCB0cnVzdFN0b3JlT3V0cHV0cygpOiBUcnVzdFN0b3JlT3V0cHV0cyB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgdHJ1c3RTdG9yZU5hbWU6IHRoaXMudHJ1c3RTdG9yZU5hbWUsXG4gICAgICAgICAgdHJ1c3RTdG9yZUFybjogdGhpcy50cnVzdFN0b3JlQXJuLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgcHVibGljIGdldCBvdXRwdXRzKCk6IFJlY29yZDxzdHJpbmcsIGFueT4ge1xuICAgICAgICByZXR1cm4gdGhpcy50cnVzdFN0b3JlT3V0cHV0cztcbiAgICAgIH1cbiAgICAgIHB1YmxpYyByZWFkb25seSB0cnVzdFN0b3JlQXJuID0gdHJ1c3RTdG9yZUFybjtcbiAgICAgIHB1YmxpYyByZWFkb25seSB0cnVzdFN0b3JlTmFtZSA9IHRydXN0U3RvcmVOYW1lO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IEltcG9ydChzY29wZSwgaWQpO1xuICB9XG5cbiAgcHVibGljIGdldCB0cnVzdFN0b3JlT3V0cHV0cygpOiBUcnVzdFN0b3JlT3V0cHV0cyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRydXN0U3RvcmVOYW1lOiB0aGlzLnRydXN0U3RvcmVOYW1lLFxuICAgICAgdHJ1c3RTdG9yZUFybjogdGhpcy50cnVzdFN0b3JlQXJuLFxuICAgIH07XG4gIH1cbiAgcHVibGljIGdldCBvdXRwdXRzKCk6IFJlY29yZDxzdHJpbmcsIGFueT4ge1xuICAgIHJldHVybiB0aGlzLnRydXN0U3RvcmVPdXRwdXRzO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSB0cnVzdCBzdG9yZVxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdHJ1c3RTdG9yZU5hbWU6IHN0cmluZztcblxuICAvLyBUT0RPOiBwcm92aWRlci1hd3MgZG9lc24ndCBoYXZlIG51bWJlck9mQ2FDZXJ0aWZpY2F0ZXM/XG4gIC8vIC8qKlxuICAvLyAgKiBUaGUgbnVtYmVyIG9mIENBIGNlcnRpZmljYXRlcyBpbiB0aGUgdHJ1c3Qgc3RvcmVcbiAgLy8gICpcbiAgLy8gICogQGF0dHJpYnV0ZVxuICAvLyAgKi9cbiAgLy8gcHVibGljIHJlYWRvbmx5IG51bWJlck9mQ2FDZXJ0aWZpY2F0ZXM6IG51bWJlcjtcblxuICAvLyBUT0RPOiBwcm92aWRlci1hd3MgZG9lc24ndCBoYXZlIHN0YXR1cz9cbiAgLy8gLyoqXG4gIC8vICAqIFRoZSBzdGF0dXMgb2YgdGhlIHRydXN0IHN0b3JlXG4gIC8vICAqXG4gIC8vICAqIEBhdHRyaWJ1dGVcbiAgLy8gICovXG4gIC8vIHB1YmxpYyByZWFkb25seSBzdGF0dXM6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgdHJ1c3Qgc3RvcmVcbiAgICpcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHRydXN0U3RvcmVBcm46IHN0cmluZztcbiAgcHJpdmF0ZSBwaHlzaWNhbE5hbWU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogVHJ1c3RTdG9yZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCBwcm9wcyk7XG4gICAgdGhpcy5waHlzaWNhbE5hbWUgPVxuICAgICAgcHJvcHMudHJ1c3RTdG9yZU5hbWUgPz9cbiAgICAgIHRoaXMuc3RhY2sudW5pcXVlUmVzb3VyY2VOYW1lKHRoaXMsIHsgbWF4TGVuZ3RoOiAzMiB9KTtcblxuICAgIGlmIChcbiAgICAgIHByb3BzLnRydXN0U3RvcmVOYW1lICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICFUb2tlbi5pc1VucmVzb2x2ZWQocHJvcHMudHJ1c3RTdG9yZU5hbWUpXG4gICAgKSB7XG4gICAgICBpZiAocHJvcHMudHJ1c3RTdG9yZU5hbWUubGVuZ3RoIDwgMSB8fCBwcm9wcy50cnVzdFN0b3JlTmFtZS5sZW5ndGggPiAzMikge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgYHRydXN0U3RvcmVOYW1lICcke3Byb3BzLnRydXN0U3RvcmVOYW1lfScgbXVzdCBiZSAxLTMyIGNoYXJhY3RlcnMgbG9uZy5gLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgY29uc3QgdmFsaWROYW1lUmVnZXggPSAvXihbYS16QS1aMC05XSstKSpbYS16QS1aMC05XSskLztcbiAgICAgIGlmICghdmFsaWROYW1lUmVnZXgudGVzdChwcm9wcy50cnVzdFN0b3JlTmFtZSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgIGB0cnVzdFN0b3JlTmFtZSAnJHtwcm9wcy50cnVzdFN0b3JlTmFtZX0nIG11c3QgY29udGFpbiBvbmx5IGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGFuZCBoeXBoZW5zLCBhbmQgY2Fubm90IGJlZ2luIG9yIGVuZCB3aXRoIGEgaHlwaGVuLmAsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgcmVzb3VyY2UgPSBuZXcgdGZUcnVzdFN0b3JlLkxiVHJ1c3RTdG9yZSh0aGlzLCBcIlJlc291cmNlXCIsIHtcbiAgICAgIG5hbWU6IHRoaXMucGh5c2ljYWxOYW1lLFxuICAgICAgY2FDZXJ0aWZpY2F0ZXNCdW5kbGVTM0J1Y2tldDogcHJvcHMuYnVja2V0LmJ1Y2tldE5hbWUsXG4gICAgICBjYUNlcnRpZmljYXRlc0J1bmRsZVMzS2V5OiBwcm9wcy5rZXksXG4gICAgICBjYUNlcnRpZmljYXRlc0J1bmRsZVMzT2JqZWN0VmVyc2lvbjogcHJvcHMudmVyc2lvbixcbiAgICB9KTtcblxuICAgIHRoaXMudHJ1c3RTdG9yZU5hbWUgPSByZXNvdXJjZS5uYW1lO1xuICAgIHRoaXMudHJ1c3RTdG9yZUFybiA9IHJlc291cmNlLmFybjtcbiAgICAvLyBUT0RPOiBwcm92aWRlci1hd3MgZG9lc24ndCBoYXZlIG51bWJlck9mQ2FDZXJ0aWZpY2F0ZXM/XG4gICAgLy8gdGhpcy5udW1iZXJPZkNhQ2VydGlmaWNhdGVzID0gcmVzb3VyY2UubnVtYmVyT2ZDYUNlcnRpZmljYXRlcztcbiAgICAvLyBUT0RPOiBwcm92aWRlci1hd3MgZG9lc24ndCBoYXZlIHN0YXR1cz9cbiAgICAvLyB0aGlzLnN0YXR1cyA9IHJlc291cmNlLnN0YXR1cztcbiAgfVxufVxuIl19
|
|
@@ -102,5 +102,5 @@ export declare class AssetApiDefinition extends ApiDefinition {
|
|
|
102
102
|
private asset?;
|
|
103
103
|
constructor(path: string, options?: AssetOptions);
|
|
104
104
|
bind(scope: Construct): ApiDefinitionConfig;
|
|
105
|
-
bindAfterCreate(
|
|
105
|
+
bindAfterCreate(scope: Construct, _restApi: IRestApi): void;
|
|
106
106
|
}
|