Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@aws-cdk/aws-servicediscovery

Package Overview
Dependencies
Maintainers
5
Versions
288
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@aws-cdk/aws-servicediscovery - npm Package Compare versions

Comparing version 0.31.0 to 0.32.0

6

lib/alias-target-instance.d.ts

@@ -14,2 +14,8 @@ import cdk = require('@aws-cdk/cdk');

}
/**
* Instance that uses Route 53 Alias record type. Currently, the only resource types supported are Elastic Load
* Balancers.
*
* @resource AWS::ServiceDiscovery::Instance
*/
export declare class AliasTargetInstance extends InstanceBase {

@@ -16,0 +22,0 @@ /**

6

lib/alias-target-instance.js

@@ -7,5 +7,7 @@ "use strict";

const servicediscovery_generated_1 = require("./servicediscovery.generated");
/*
/**
* Instance that uses Route 53 Alias record type. Currently, the only resource types supported are Elastic Load
* Balancers.
*
* @resource AWS::ServiceDiscovery::Instance
*/

@@ -42,2 +44,2 @@ class AliasTargetInstance extends instance_1.InstanceBase {

exports.AliasTargetInstance = AliasTargetInstance;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxpYXMtdGFyZ2V0LWluc3RhbmNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYWxpYXMtdGFyZ2V0LWluc3RhbmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EseUNBQTZEO0FBQzdELDJDQUE0QztBQUM1Qyx1Q0FBbUU7QUFDbkUsNkVBQTJEO0FBaUIzRDs7O0dBR0c7QUFDSCxNQUFhLG1CQUFvQixTQUFRLHVCQUFZO0lBZ0JuRCxZQUFZLEtBQW9CLEVBQUUsRUFBVSxFQUFFLEtBQStCO1FBQzNFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEtBQUsseUJBQWEsQ0FBQyxJQUFJLEVBQUU7WUFDdkQsTUFBTSxJQUFJLEtBQUssQ0FBQyw0REFBNEQsQ0FBQyxDQUFDO1NBQy9FO1FBRUQscUhBQXFIO1FBQ3JILE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDO1FBQ2xELElBQUksYUFBYSxLQUFLLHVCQUFhLENBQUMsQ0FBQztlQUNoQyxhQUFhLEtBQUssdUJBQWEsQ0FBQyxJQUFJO2VBQ3BDLGFBQWEsS0FBSyx1QkFBYSxDQUFDLE1BQU0sRUFBRTtZQUMzQyxNQUFNLElBQUksS0FBSyxDQUFDLDBFQUEwRSxDQUFDLENBQUM7U0FDN0Y7UUFFRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsYUFBYSxLQUFLLHVCQUFhLENBQUMsUUFBUSxFQUFFO1lBQzFELE1BQU0sSUFBSSxLQUFLLENBQUMsNkNBQTZDLENBQUMsQ0FBQztTQUNoRTtRQUVELE1BQU0sUUFBUSxHQUFHLElBQUksd0NBQVcsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ2pELGtCQUFrQixFQUFFO2dCQUNsQixrQkFBa0IsRUFBRSxLQUFLLENBQUMsT0FBTztnQkFDakMsR0FBRyxLQUFLLENBQUMsZ0JBQWdCO2FBQzFCO1lBQ0QsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQ2xELFNBQVMsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVM7U0FDbkMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQzdCLElBQUksQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQztRQUN0QyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7SUFDL0IsQ0FBQztDQUNGO0FBaERELGtEQWdEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCB7IEJhc2VJbnN0YW5jZVByb3BzLCBJbnN0YW5jZUJhc2UgfSBmcm9tICcuL2luc3RhbmNlJztcbmltcG9ydCB7IE5hbWVzcGFjZVR5cGUgfSBmcm9tICcuL25hbWVzcGFjZSc7XG5pbXBvcnQgeyBEbnNSZWNvcmRUeXBlLCBJU2VydmljZSwgUm91dGluZ1BvbGljeSB9IGZyb20gJy4vc2VydmljZSc7XG5pbXBvcnQgeyBDZm5JbnN0YW5jZSB9IGZyb20gJy4vc2VydmljZWRpc2NvdmVyeS5nZW5lcmF0ZWQnO1xuXG4vKlxuICogUHJvcGVydGllcyBmb3IgYW4gQWxpYXNUYXJnZXRJbnN0YW5jZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFsaWFzVGFyZ2V0SW5zdGFuY2VQcm9wcyBleHRlbmRzIEJhc2VJbnN0YW5jZVByb3BzIHtcbiAgLyoqXG4gICAqIEROUyBuYW1lIG9mIHRoZSB0YXJnZXRcbiAgICovXG4gIHJlYWRvbmx5IGRuc05hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIENsb3VkbWFwIHNlcnZpY2UgdGhpcyByZXNvdXJjZSBpcyByZWdpc3RlcmVkIHRvLlxuICAgKi9cbiAgcmVhZG9ubHkgc2VydmljZTogSVNlcnZpY2U7XG59XG5cbi8qXG4gKiBJbnN0YW5jZSB0aGF0IHVzZXMgUm91dGUgNTMgQWxpYXMgcmVjb3JkIHR5cGUuIEN1cnJlbnRseSwgdGhlIG9ubHkgcmVzb3VyY2UgdHlwZXMgc3VwcG9ydGVkIGFyZSBFbGFzdGljIExvYWRcbiAqIEJhbGFuY2Vycy5cbiAqL1xuZXhwb3J0IGNsYXNzIEFsaWFzVGFyZ2V0SW5zdGFuY2UgZXh0ZW5kcyBJbnN0YW5jZUJhc2Uge1xuICAvKipcbiAgICogVGhlIElkIG9mIHRoZSBpbnN0YW5jZVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGluc3RhbmNlSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIENsb3VkbWFwIHNlcnZpY2UgdG8gd2hpY2ggdGhlIGluc3RhbmNlIGlzIHJlZ2lzdGVyZWQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgc2VydmljZTogSVNlcnZpY2U7XG5cbiAgLyoqXG4gICAqIFRoZSBSb3V0ZTUzIEROUyBuYW1lIG9mIHRoZSBhbGlhcyB0YXJnZXRcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBkbnNOYW1lOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IGNkay5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBBbGlhc1RhcmdldEluc3RhbmNlUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgaWYgKHByb3BzLnNlcnZpY2UubmFtZXNwYWNlLnR5cGUgPT09IE5hbWVzcGFjZVR5cGUuSHR0cCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdOYW1lc3BhY2UgYXNzb2NpYXRlZCB3aXRoIFNlcnZpY2UgbXVzdCBiZSBhIEROUyBOYW1lc3BhY2UuJyk7XG4gICAgfVxuXG4gICAgLy8gU2hvdWxkIGFscmVhZHkgYmUgZW5mb3JjZWQgd2hlbiBjcmVhdGluZyBzZXJ2aWNlLCBidXQgdmFsaWRhdGVzIGlmIHNlcnZpY2UgaXMgbm90IGluc3RhbnRpYXRlZCB3aXRoICNjcmVhdGVTZXJ2aWNlXG4gICAgY29uc3QgZG5zUmVjb3JkVHlwZSA9IHByb3BzLnNlcnZpY2UuZG5zUmVjb3JkVHlwZTtcbiAgICBpZiAoZG5zUmVjb3JkVHlwZSAhPT0gRG5zUmVjb3JkVHlwZS5BXG4gICAgICAmJiBkbnNSZWNvcmRUeXBlICE9PSBEbnNSZWNvcmRUeXBlLkFBQUFcbiAgICAgICYmIGRuc1JlY29yZFR5cGUgIT09IERuc1JlY29yZFR5cGUuQV9BQUFBKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1NlcnZpY2UgbXVzdCB1c2UgYEFgIG9yIGBBQUFBYCByZWNvcmRzIHRvIHJlZ2lzdGVyIGFuIEFsaWFzUmVjb3JkVGFyZ2V0LicpO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5zZXJ2aWNlLnJvdXRpbmdQb2xpY3kgIT09IFJvdXRpbmdQb2xpY3kuV2VpZ2h0ZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignU2VydmljZSBtdXN0IHVzZSBgV0VJR0hURURgIHJvdXRpbmcgcG9saWN5LicpO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc291cmNlID0gbmV3IENmbkluc3RhbmNlKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIGluc3RhbmNlQXR0cmlidXRlczoge1xuICAgICAgICBBV1NfQUxJQVNfRE5TX05BTUU6IHByb3BzLmRuc05hbWUsXG4gICAgICAgIC4uLnByb3BzLmN1c3RvbUF0dHJpYnV0ZXNcbiAgICAgIH0sXG4gICAgICBpbnN0YW5jZUlkOiBwcm9wcy5pbnN0YW5jZUlkIHx8IHRoaXMubm9kZS51bmlxdWVJZCxcbiAgICAgIHNlcnZpY2VJZDogcHJvcHMuc2VydmljZS5zZXJ2aWNlSWRcbiAgICB9KTtcblxuICAgIHRoaXMuc2VydmljZSA9IHByb3BzLnNlcnZpY2U7XG4gICAgdGhpcy5pbnN0YW5jZUlkID0gcmVzb3VyY2UuaW5zdGFuY2VJZDtcbiAgICB0aGlzLmRuc05hbWUgPSBwcm9wcy5kbnNOYW1lO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxpYXMtdGFyZ2V0LWluc3RhbmNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYWxpYXMtdGFyZ2V0LWluc3RhbmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EseUNBQTZEO0FBQzdELDJDQUE0QztBQUM1Qyx1Q0FBbUU7QUFDbkUsNkVBQTJEO0FBaUIzRDs7Ozs7R0FLRztBQUNILE1BQWEsbUJBQW9CLFNBQVEsdUJBQVk7SUFnQm5ELFlBQVksS0FBb0IsRUFBRSxFQUFVLEVBQUUsS0FBK0I7UUFDM0UsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksS0FBSyx5QkFBYSxDQUFDLElBQUksRUFBRTtZQUN2RCxNQUFNLElBQUksS0FBSyxDQUFDLDREQUE0RCxDQUFDLENBQUM7U0FDL0U7UUFFRCxxSEFBcUg7UUFDckgsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUM7UUFDbEQsSUFBSSxhQUFhLEtBQUssdUJBQWEsQ0FBQyxDQUFDO2VBQ2hDLGFBQWEsS0FBSyx1QkFBYSxDQUFDLElBQUk7ZUFDcEMsYUFBYSxLQUFLLHVCQUFhLENBQUMsTUFBTSxFQUFFO1lBQzNDLE1BQU0sSUFBSSxLQUFLLENBQUMsMEVBQTBFLENBQUMsQ0FBQztTQUM3RjtRQUVELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxhQUFhLEtBQUssdUJBQWEsQ0FBQyxRQUFRLEVBQUU7WUFDMUQsTUFBTSxJQUFJLEtBQUssQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO1NBQ2hFO1FBRUQsTUFBTSxRQUFRLEdBQUcsSUFBSSx3Q0FBVyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDakQsa0JBQWtCLEVBQUU7Z0JBQ2xCLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxPQUFPO2dCQUNqQyxHQUFHLEtBQUssQ0FBQyxnQkFBZ0I7YUFDMUI7WUFDRCxVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVE7WUFDbEQsU0FBUyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUztTQUNuQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDN0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztJQUMvQixDQUFDO0NBQ0Y7QUFoREQsa0RBZ0RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNkayA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2NkaycpO1xuaW1wb3J0IHsgQmFzZUluc3RhbmNlUHJvcHMsIEluc3RhbmNlQmFzZSB9IGZyb20gJy4vaW5zdGFuY2UnO1xuaW1wb3J0IHsgTmFtZXNwYWNlVHlwZSB9IGZyb20gJy4vbmFtZXNwYWNlJztcbmltcG9ydCB7IERuc1JlY29yZFR5cGUsIElTZXJ2aWNlLCBSb3V0aW5nUG9saWN5IH0gZnJvbSAnLi9zZXJ2aWNlJztcbmltcG9ydCB7IENmbkluc3RhbmNlIH0gZnJvbSAnLi9zZXJ2aWNlZGlzY292ZXJ5LmdlbmVyYXRlZCc7XG5cbi8qXG4gKiBQcm9wZXJ0aWVzIGZvciBhbiBBbGlhc1RhcmdldEluc3RhbmNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWxpYXNUYXJnZXRJbnN0YW5jZVByb3BzIGV4dGVuZHMgQmFzZUluc3RhbmNlUHJvcHMge1xuICAvKipcbiAgICogRE5TIG5hbWUgb2YgdGhlIHRhcmdldFxuICAgKi9cbiAgcmVhZG9ubHkgZG5zTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRtYXAgc2VydmljZSB0aGlzIHJlc291cmNlIGlzIHJlZ2lzdGVyZWQgdG8uXG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlOiBJU2VydmljZTtcbn1cblxuLyoqXG4gKiBJbnN0YW5jZSB0aGF0IHVzZXMgUm91dGUgNTMgQWxpYXMgcmVjb3JkIHR5cGUuIEN1cnJlbnRseSwgdGhlIG9ubHkgcmVzb3VyY2UgdHlwZXMgc3VwcG9ydGVkIGFyZSBFbGFzdGljIExvYWRcbiAqIEJhbGFuY2Vycy5cbiAqXG4gKiBAcmVzb3VyY2UgQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpJbnN0YW5jZVxuICovXG5leHBvcnQgY2xhc3MgQWxpYXNUYXJnZXRJbnN0YW5jZSBleHRlbmRzIEluc3RhbmNlQmFzZSB7XG4gIC8qKlxuICAgKiBUaGUgSWQgb2YgdGhlIGluc3RhbmNlXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaW5zdGFuY2VJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRtYXAgc2VydmljZSB0byB3aGljaCB0aGUgaW5zdGFuY2UgaXMgcmVnaXN0ZXJlZC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzZXJ2aWNlOiBJU2VydmljZTtcblxuICAvKipcbiAgICogVGhlIFJvdXRlNTMgRE5TIG5hbWUgb2YgdGhlIGFsaWFzIHRhcmdldFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRuc05hbWU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogY2RrLkNvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEFsaWFzVGFyZ2V0SW5zdGFuY2VQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBpZiAocHJvcHMuc2VydmljZS5uYW1lc3BhY2UudHlwZSA9PT0gTmFtZXNwYWNlVHlwZS5IdHRwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05hbWVzcGFjZSBhc3NvY2lhdGVkIHdpdGggU2VydmljZSBtdXN0IGJlIGEgRE5TIE5hbWVzcGFjZS4nKTtcbiAgICB9XG5cbiAgICAvLyBTaG91bGQgYWxyZWFkeSBiZSBlbmZvcmNlZCB3aGVuIGNyZWF0aW5nIHNlcnZpY2UsIGJ1dCB2YWxpZGF0ZXMgaWYgc2VydmljZSBpcyBub3QgaW5zdGFudGlhdGVkIHdpdGggI2NyZWF0ZVNlcnZpY2VcbiAgICBjb25zdCBkbnNSZWNvcmRUeXBlID0gcHJvcHMuc2VydmljZS5kbnNSZWNvcmRUeXBlO1xuICAgIGlmIChkbnNSZWNvcmRUeXBlICE9PSBEbnNSZWNvcmRUeXBlLkFcbiAgICAgICYmIGRuc1JlY29yZFR5cGUgIT09IERuc1JlY29yZFR5cGUuQUFBQVxuICAgICAgJiYgZG5zUmVjb3JkVHlwZSAhPT0gRG5zUmVjb3JkVHlwZS5BX0FBQUEpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignU2VydmljZSBtdXN0IHVzZSBgQWAgb3IgYEFBQUFgIHJlY29yZHMgdG8gcmVnaXN0ZXIgYW4gQWxpYXNSZWNvcmRUYXJnZXQuJyk7XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLnNlcnZpY2Uucm91dGluZ1BvbGljeSAhPT0gUm91dGluZ1BvbGljeS5XZWlnaHRlZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdTZXJ2aWNlIG11c3QgdXNlIGBXRUlHSFRFRGAgcm91dGluZyBwb2xpY3kuJyk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzb3VyY2UgPSBuZXcgQ2ZuSW5zdGFuY2UodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgaW5zdGFuY2VBdHRyaWJ1dGVzOiB7XG4gICAgICAgIEFXU19BTElBU19ETlNfTkFNRTogcHJvcHMuZG5zTmFtZSxcbiAgICAgICAgLi4ucHJvcHMuY3VzdG9tQXR0cmlidXRlc1xuICAgICAgfSxcbiAgICAgIGluc3RhbmNlSWQ6IHByb3BzLmluc3RhbmNlSWQgfHwgdGhpcy5ub2RlLnVuaXF1ZUlkLFxuICAgICAgc2VydmljZUlkOiBwcm9wcy5zZXJ2aWNlLnNlcnZpY2VJZFxuICAgIH0pO1xuXG4gICAgdGhpcy5zZXJ2aWNlID0gcHJvcHMuc2VydmljZTtcbiAgICB0aGlzLmluc3RhbmNlSWQgPSByZXNvdXJjZS5pbnN0YW5jZUlkO1xuICAgIHRoaXMuZG5zTmFtZSA9IHByb3BzLmRuc05hbWU7XG4gIH1cbn1cbiJdfQ==

@@ -18,2 +18,6 @@ import cdk = require('@aws-cdk/cdk');

}
/**
* Instance that is accessible using a domain name (CNAME).
* @resource AWS::ServiceDiscovery::Instance
*/
export declare class CnameInstance extends InstanceBase {

@@ -31,4 +35,4 @@ /**

*/
readonly instanceCname: string;
readonly cname: string;
constructor(scope: cdk.Construct, id: string, props: CnameInstanceProps);
}

@@ -7,3 +7,3 @@ "use strict";

const servicediscovery_generated_1 = require("./servicediscovery.generated");
/*
/**
* Instance that is accessible using a domain name (CNAME).

@@ -31,6 +31,6 @@ * @resource AWS::ServiceDiscovery::Instance

this.instanceId = resource.instanceId;
this.instanceCname = props.instanceCname;
this.cname = props.instanceCname;
}
}
exports.CnameInstance = CnameInstance;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY25hbWUtaW5zdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJjbmFtZS1pbnN0YW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUNBLHlDQUE2RDtBQUM3RCwyQ0FBNEM7QUFDNUMsdUNBQW9EO0FBQ3BELDZFQUEyRDtBQXdCM0Q7OztHQUdHO0FBQ0gsTUFBYSxhQUFjLFNBQVEsdUJBQVk7SUFnQjdDLFlBQVksS0FBb0IsRUFBRSxFQUFVLEVBQUUsS0FBeUI7UUFDckUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksS0FBSyx5QkFBYSxDQUFDLElBQUksRUFBRTtZQUN2RCxNQUFNLElBQUksS0FBSyxDQUFDLDREQUE0RCxDQUFDLENBQUM7U0FDL0U7UUFFRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsYUFBYSxLQUFLLHVCQUFhLENBQUMsS0FBSyxFQUFFO1lBQ3ZELE1BQU0sSUFBSSxLQUFLLENBQUMsMEVBQTBFLENBQUMsQ0FBQztTQUM3RjtRQUVELE1BQU0sUUFBUSxHQUFHLElBQUksd0NBQVcsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ2pELFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUN2RCxTQUFTLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTO1lBQ2xDLGtCQUFrQixFQUFFO2dCQUNsQixrQkFBa0IsRUFBRSxLQUFLLENBQUMsYUFBYTtnQkFDdkMsR0FBRyxLQUFLLENBQUMsZ0JBQWdCO2FBQzFCO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQzdCLElBQUksQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQztRQUN0QyxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7SUFDM0MsQ0FBQztDQUNGO0FBeENELHNDQXdDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCB7IEJhc2VJbnN0YW5jZVByb3BzLCBJbnN0YW5jZUJhc2UgfSBmcm9tICcuL2luc3RhbmNlJztcbmltcG9ydCB7IE5hbWVzcGFjZVR5cGUgfSBmcm9tICcuL25hbWVzcGFjZSc7XG5pbXBvcnQgeyBEbnNSZWNvcmRUeXBlLCBJU2VydmljZSB9IGZyb20gJy4vc2VydmljZSc7XG5pbXBvcnQgeyBDZm5JbnN0YW5jZSB9IGZyb20gJy4vc2VydmljZWRpc2NvdmVyeS5nZW5lcmF0ZWQnO1xuXG4vKlxuICogUHJvcGVydGllcyBmb3IgYSBDbmFtZUluc3RhbmNlIHVzZWQgZm9yIHNlcnZpY2UjcmVnaXN0ZXJDbmFtZUluc3RhbmNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ25hbWVJbnN0YW5jZUJhc2VQcm9wcyBleHRlbmRzIEJhc2VJbnN0YW5jZVByb3BzIHtcbiAgLyoqXG4gICAqIElmIHRoZSBzZXJ2aWNlIGNvbmZpZ3VyYXRpb24gaW5jbHVkZXMgYSBDTkFNRSByZWNvcmQsIHRoZSBkb21haW4gbmFtZSB0aGF0IHlvdSB3YW50IFJvdXRlIDUzIHRvXG4gICAqIHJldHVybiBpbiByZXNwb25zZSB0byBETlMgcXVlcmllcywgZm9yIGV4YW1wbGUsIGV4YW1wbGUuY29tLiBUaGlzIHZhbHVlIGlzIHJlcXVpcmVkIGlmIHRoZVxuICAgKiBzZXJ2aWNlIHNwZWNpZmllZCBieSBTZXJ2aWNlSWQgaW5jbHVkZXMgc2V0dGluZ3MgZm9yIGFuIENOQU1FIHJlY29yZC5cbiAgICovXG4gIHJlYWRvbmx5IGluc3RhbmNlQ25hbWU6IHN0cmluZztcbn1cblxuLypcbiAqIFByb3BlcnRpZXMgZm9yIGEgQ25hbWVJbnN0YW5jZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIENuYW1lSW5zdGFuY2VQcm9wcyBleHRlbmRzIENuYW1lSW5zdGFuY2VCYXNlUHJvcHMge1xuICAvKipcbiAgICogVGhlIENsb3VkbWFwIHNlcnZpY2UgdGhpcyByZXNvdXJjZSBpcyByZWdpc3RlcmVkIHRvLlxuICAgKi9cbiAgcmVhZG9ubHkgc2VydmljZTogSVNlcnZpY2U7XG59XG5cbi8qXG4gKiBJbnN0YW5jZSB0aGF0IGlzIGFjY2Vzc2libGUgdXNpbmcgYSBkb21haW4gbmFtZSAoQ05BTUUpLlxuICogQHJlc291cmNlIEFXUzo6U2VydmljZURpc2NvdmVyeTo6SW5zdGFuY2VcbiAqL1xuZXhwb3J0IGNsYXNzIENuYW1lSW5zdGFuY2UgZXh0ZW5kcyBJbnN0YW5jZUJhc2Uge1xuICAvKipcbiAgICogVGhlIElkIG9mIHRoZSBpbnN0YW5jZVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGluc3RhbmNlSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIENsb3VkbWFwIHNlcnZpY2UgdG8gd2hpY2ggdGhlIGluc3RhbmNlIGlzIHJlZ2lzdGVyZWQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgc2VydmljZTogSVNlcnZpY2U7XG5cbiAgLyoqXG4gICAqIFRoZSBkb21haW4gbmFtZSByZXR1cm5lZCBieSBETlMgcXVlcmllcyBmb3IgdGhlIGluc3RhbmNlXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaW5zdGFuY2VDbmFtZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBjZGsuQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQ25hbWVJbnN0YW5jZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGlmIChwcm9wcy5zZXJ2aWNlLm5hbWVzcGFjZS50eXBlID09PSBOYW1lc3BhY2VUeXBlLkh0dHApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTmFtZXNwYWNlIGFzc29jaWF0ZWQgd2l0aCBTZXJ2aWNlIG11c3QgYmUgYSBETlMgTmFtZXNwYWNlLicpO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5zZXJ2aWNlLmRuc1JlY29yZFR5cGUgIT09IERuc1JlY29yZFR5cGUuQ05BTUUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQSBgQ25hbWVJbnRhbmNlYCBjYW4gb25seSBiZSB1c2VkIHdpdGggYSBzZXJ2aWNlIHVzaW5nIGEgYENOQU1FYCByZWNvcmQuJyk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzb3VyY2UgPSBuZXcgQ2ZuSW5zdGFuY2UodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgaW5zdGFuY2VJZDogcHJvcHMuaW5zdGFuY2VJZCB8fCB0aGlzLnVuaXF1ZUluc3RhbmNlSWQoKSxcbiAgICAgIHNlcnZpY2VJZDogcHJvcHMuc2VydmljZS5zZXJ2aWNlSWQsXG4gICAgICBpbnN0YW5jZUF0dHJpYnV0ZXM6IHtcbiAgICAgICAgQVdTX0lOU1RBTkNFX0NOQU1FOiBwcm9wcy5pbnN0YW5jZUNuYW1lLFxuICAgICAgICAuLi5wcm9wcy5jdXN0b21BdHRyaWJ1dGVzXG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLnNlcnZpY2UgPSBwcm9wcy5zZXJ2aWNlO1xuICAgIHRoaXMuaW5zdGFuY2VJZCA9IHJlc291cmNlLmluc3RhbmNlSWQ7XG4gICAgdGhpcy5pbnN0YW5jZUNuYW1lID0gcHJvcHMuaW5zdGFuY2VDbmFtZTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY25hbWUtaW5zdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJjbmFtZS1pbnN0YW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUNBLHlDQUE2RDtBQUM3RCwyQ0FBNEM7QUFDNUMsdUNBQW9EO0FBQ3BELDZFQUEyRDtBQXdCM0Q7OztHQUdHO0FBQ0gsTUFBYSxhQUFjLFNBQVEsdUJBQVk7SUFnQjdDLFlBQVksS0FBb0IsRUFBRSxFQUFVLEVBQUUsS0FBeUI7UUFDckUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksS0FBSyx5QkFBYSxDQUFDLElBQUksRUFBRTtZQUN2RCxNQUFNLElBQUksS0FBSyxDQUFDLDREQUE0RCxDQUFDLENBQUM7U0FDL0U7UUFFRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsYUFBYSxLQUFLLHVCQUFhLENBQUMsS0FBSyxFQUFFO1lBQ3ZELE1BQU0sSUFBSSxLQUFLLENBQUMsMEVBQTBFLENBQUMsQ0FBQztTQUM3RjtRQUVELE1BQU0sUUFBUSxHQUFHLElBQUksd0NBQVcsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ2pELFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUN2RCxTQUFTLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTO1lBQ2xDLGtCQUFrQixFQUFFO2dCQUNsQixrQkFBa0IsRUFBRSxLQUFLLENBQUMsYUFBYTtnQkFDdkMsR0FBRyxLQUFLLENBQUMsZ0JBQWdCO2FBQzFCO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQzdCLElBQUksQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQztRQUN0QyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7SUFDbkMsQ0FBQztDQUNGO0FBeENELHNDQXdDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCB7IEJhc2VJbnN0YW5jZVByb3BzLCBJbnN0YW5jZUJhc2UgfSBmcm9tICcuL2luc3RhbmNlJztcbmltcG9ydCB7IE5hbWVzcGFjZVR5cGUgfSBmcm9tICcuL25hbWVzcGFjZSc7XG5pbXBvcnQgeyBEbnNSZWNvcmRUeXBlLCBJU2VydmljZSB9IGZyb20gJy4vc2VydmljZSc7XG5pbXBvcnQgeyBDZm5JbnN0YW5jZSB9IGZyb20gJy4vc2VydmljZWRpc2NvdmVyeS5nZW5lcmF0ZWQnO1xuXG4vKlxuICogUHJvcGVydGllcyBmb3IgYSBDbmFtZUluc3RhbmNlIHVzZWQgZm9yIHNlcnZpY2UjcmVnaXN0ZXJDbmFtZUluc3RhbmNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ25hbWVJbnN0YW5jZUJhc2VQcm9wcyBleHRlbmRzIEJhc2VJbnN0YW5jZVByb3BzIHtcbiAgLyoqXG4gICAqIElmIHRoZSBzZXJ2aWNlIGNvbmZpZ3VyYXRpb24gaW5jbHVkZXMgYSBDTkFNRSByZWNvcmQsIHRoZSBkb21haW4gbmFtZSB0aGF0IHlvdSB3YW50IFJvdXRlIDUzIHRvXG4gICAqIHJldHVybiBpbiByZXNwb25zZSB0byBETlMgcXVlcmllcywgZm9yIGV4YW1wbGUsIGV4YW1wbGUuY29tLiBUaGlzIHZhbHVlIGlzIHJlcXVpcmVkIGlmIHRoZVxuICAgKiBzZXJ2aWNlIHNwZWNpZmllZCBieSBTZXJ2aWNlSWQgaW5jbHVkZXMgc2V0dGluZ3MgZm9yIGFuIENOQU1FIHJlY29yZC5cbiAgICovXG4gIHJlYWRvbmx5IGluc3RhbmNlQ25hbWU6IHN0cmluZztcbn1cblxuLypcbiAqIFByb3BlcnRpZXMgZm9yIGEgQ25hbWVJbnN0YW5jZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIENuYW1lSW5zdGFuY2VQcm9wcyBleHRlbmRzIENuYW1lSW5zdGFuY2VCYXNlUHJvcHMge1xuICAvKipcbiAgICogVGhlIENsb3VkbWFwIHNlcnZpY2UgdGhpcyByZXNvdXJjZSBpcyByZWdpc3RlcmVkIHRvLlxuICAgKi9cbiAgcmVhZG9ubHkgc2VydmljZTogSVNlcnZpY2U7XG59XG5cbi8qKlxuICogSW5zdGFuY2UgdGhhdCBpcyBhY2Nlc3NpYmxlIHVzaW5nIGEgZG9tYWluIG5hbWUgKENOQU1FKS5cbiAqIEByZXNvdXJjZSBBV1M6OlNlcnZpY2VEaXNjb3Zlcnk6Okluc3RhbmNlXG4gKi9cbmV4cG9ydCBjbGFzcyBDbmFtZUluc3RhbmNlIGV4dGVuZHMgSW5zdGFuY2VCYXNlIHtcbiAgLyoqXG4gICAqIFRoZSBJZCBvZiB0aGUgaW5zdGFuY2VcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBpbnN0YW5jZUlkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBDbG91ZG1hcCBzZXJ2aWNlIHRvIHdoaWNoIHRoZSBpbnN0YW5jZSBpcyByZWdpc3RlcmVkLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNlcnZpY2U6IElTZXJ2aWNlO1xuXG4gIC8qKlxuICAgKiBUaGUgZG9tYWluIG5hbWUgcmV0dXJuZWQgYnkgRE5TIHF1ZXJpZXMgZm9yIHRoZSBpbnN0YW5jZVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNuYW1lOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IGNkay5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBDbmFtZUluc3RhbmNlUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgaWYgKHByb3BzLnNlcnZpY2UubmFtZXNwYWNlLnR5cGUgPT09IE5hbWVzcGFjZVR5cGUuSHR0cCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdOYW1lc3BhY2UgYXNzb2NpYXRlZCB3aXRoIFNlcnZpY2UgbXVzdCBiZSBhIEROUyBOYW1lc3BhY2UuJyk7XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLnNlcnZpY2UuZG5zUmVjb3JkVHlwZSAhPT0gRG5zUmVjb3JkVHlwZS5DTkFNRSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBIGBDbmFtZUludGFuY2VgIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCBhIHNlcnZpY2UgdXNpbmcgYSBgQ05BTUVgIHJlY29yZC4nKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXNvdXJjZSA9IG5ldyBDZm5JbnN0YW5jZSh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICBpbnN0YW5jZUlkOiBwcm9wcy5pbnN0YW5jZUlkIHx8IHRoaXMudW5pcXVlSW5zdGFuY2VJZCgpLFxuICAgICAgc2VydmljZUlkOiBwcm9wcy5zZXJ2aWNlLnNlcnZpY2VJZCxcbiAgICAgIGluc3RhbmNlQXR0cmlidXRlczoge1xuICAgICAgICBBV1NfSU5TVEFOQ0VfQ05BTUU6IHByb3BzLmluc3RhbmNlQ25hbWUsXG4gICAgICAgIC4uLnByb3BzLmN1c3RvbUF0dHJpYnV0ZXNcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMuc2VydmljZSA9IHByb3BzLnNlcnZpY2U7XG4gICAgdGhpcy5pbnN0YW5jZUlkID0gcmVzb3VyY2UuaW5zdGFuY2VJZDtcbiAgICB0aGlzLmNuYW1lID0gcHJvcHMuaW5zdGFuY2VDbmFtZTtcbiAgfVxufVxuIl19

@@ -1,3 +0,3 @@

import { Construct } from '@aws-cdk/cdk';
import { BaseNamespaceProps, INamespace, NamespaceBase, NamespaceType } from './namespace';
import { Construct, Resource } from '@aws-cdk/cdk';
import { BaseNamespaceProps, INamespace, NamespaceType } from './namespace';
import { BaseServiceProps, Service } from './service';

@@ -7,13 +7,16 @@ export interface HttpNamespaceProps extends BaseNamespaceProps {

export interface IHttpNamespace extends INamespace {
}
export interface HttpNamespaceAttributes {
/**
* The Amazon Resource Name (ARN) of the namespace, such as
* arn:aws:service-discovery:us-east-1:123456789012:http-namespace/http-namespace-a1bzhi.
* @attribute
* A name for the Namespace.
*/
readonly httpNamespaceArn: string;
readonly namespaceName: string;
/**
* The ID of the namespace.
* @attribute
* Namespace Id for the Namespace.
*/
readonly httpNamespaceId: string;
readonly namespaceId: string;
/**
* Namespace ARN for the Namespace.
*/
readonly namespaceArn: string;
}

@@ -23,3 +26,4 @@ /**

*/
export declare class HttpNamespace extends NamespaceBase implements IHttpNamespace {
export declare class HttpNamespace extends Resource implements IHttpNamespace {
static fromHttpNamespaceAttributes(scope: Construct, id: string, attrs: HttpNamespaceAttributes): IHttpNamespace;
/**

@@ -42,3 +46,7 @@ * A name for the namespace.

constructor(scope: Construct, id: string, props: HttpNamespaceProps);
/** @attribute */
readonly httpNamespaceArn: string;
/** @attribute */
readonly httpNamespaceName: string;
/** @attribute */
readonly httpNamespaceId: string;

@@ -45,0 +53,0 @@ /**

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const cdk_1 = require("@aws-cdk/cdk");
const namespace_1 = require("./namespace");

@@ -9,3 +10,15 @@ const service_1 = require("./service");

*/
class HttpNamespace extends namespace_1.NamespaceBase {
class HttpNamespace extends cdk_1.Resource {
static fromHttpNamespaceAttributes(scope, id, attrs) {
class Import extends cdk_1.Resource {
constructor() {
super(...arguments);
this.namespaceName = attrs.namespaceName;
this.namespaceId = attrs.namespaceId;
this.namespaceArn = attrs.namespaceArn;
this.type = namespace_1.NamespaceType.Http;
}
}
return new Import(scope, id);
}
constructor(scope, id, props) {

@@ -22,3 +35,7 @@ super(scope, id);

}
/** @attribute */
get httpNamespaceArn() { return this.namespaceArn; }
/** @attribute */
get httpNamespaceName() { return this.namespaceName; }
/** @attribute */
get httpNamespaceId() { return this.namespaceId; }

@@ -36,2 +53,2 @@ /**

exports.HttpNamespace = HttpNamespace;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1uYW1lc3BhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJodHRwLW5hbWVzcGFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUNBLDJDQUEyRjtBQUMzRix1Q0FBc0Q7QUFDdEQsNkVBQWdFO0FBbUJoRTs7R0FFRztBQUNILE1BQWEsYUFBYyxTQUFRLHlCQUFhO0lBcUI5QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXlCO1FBQ2pFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsTUFBTSxFQUFFLEdBQUcsSUFBSSw2Q0FBZ0IsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ2hELElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7U0FDL0IsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FBQztRQUN0QyxJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztRQUN4QyxJQUFJLENBQUMsSUFBSSxHQUFHLHlCQUFhLENBQUMsSUFBSSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFXLGdCQUFnQixLQUFLLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7SUFDM0QsSUFBVyxlQUFlLEtBQUssT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUV6RDs7T0FFRztJQUNJLGFBQWEsQ0FBQyxFQUFVLEVBQUUsS0FBd0I7UUFDdkQsT0FBTyxJQUFJLGlCQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRTtZQUMzQixTQUFTLEVBQUUsSUFBSTtZQUNmLEdBQUcsS0FBSztTQUNULENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQS9DRCxzQ0ErQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdAYXdzLWNkay9jZGsnO1xuaW1wb3J0IHsgQmFzZU5hbWVzcGFjZVByb3BzLCBJTmFtZXNwYWNlLCBOYW1lc3BhY2VCYXNlLCBOYW1lc3BhY2VUeXBlIH0gZnJvbSAnLi9uYW1lc3BhY2UnO1xuaW1wb3J0IHsgQmFzZVNlcnZpY2VQcm9wcywgU2VydmljZSB9IGZyb20gJy4vc2VydmljZSc7XG5pbXBvcnQgeyBDZm5IdHRwTmFtZXNwYWNlIH0gZnJvbSAnLi9zZXJ2aWNlZGlzY292ZXJ5LmdlbmVyYXRlZCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSHR0cE5hbWVzcGFjZVByb3BzIGV4dGVuZHMgQmFzZU5hbWVzcGFjZVByb3BzIHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUh0dHBOYW1lc3BhY2UgZXh0ZW5kcyBJTmFtZXNwYWNlIHtcbiAgLyoqXG4gICAqIFRoZSBBbWF6b24gUmVzb3VyY2UgTmFtZSAoQVJOKSBvZiB0aGUgbmFtZXNwYWNlLCBzdWNoIGFzXG4gICAqIGFybjphd3M6c2VydmljZS1kaXNjb3Zlcnk6dXMtZWFzdC0xOjEyMzQ1Njc4OTAxMjpodHRwLW5hbWVzcGFjZS9odHRwLW5hbWVzcGFjZS1hMWJ6aGkuXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGh0dHBOYW1lc3BhY2VBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIElEIG9mIHRoZSBuYW1lc3BhY2UuXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGh0dHBOYW1lc3BhY2VJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIERlZmluZSBhbiBIVFRQIE5hbWVzcGFjZVxuICovXG5leHBvcnQgY2xhc3MgSHR0cE5hbWVzcGFjZSBleHRlbmRzIE5hbWVzcGFjZUJhc2UgaW1wbGVtZW50cyBJSHR0cE5hbWVzcGFjZSB7XG4gIC8qKlxuICAgKiBBIG5hbWUgZm9yIHRoZSBuYW1lc3BhY2UuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbmFtZXNwYWNlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lc3BhY2UgSWQgZm9yIHRoZSBuYW1lc3BhY2UuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbmFtZXNwYWNlSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZXNwYWNlIEFybiBmb3IgdGhlIG5hbWVzcGFjZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBuYW1lc3BhY2VBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVHlwZSBvZiB0aGUgbmFtZXNwYWNlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHR5cGU6IE5hbWVzcGFjZVR5cGU7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEh0dHBOYW1lc3BhY2VQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBjb25zdCBucyA9IG5ldyBDZm5IdHRwTmFtZXNwYWNlKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIG5hbWU6IHByb3BzLm5hbWUsXG4gICAgICBkZXNjcmlwdGlvbjogcHJvcHMuZGVzY3JpcHRpb25cbiAgICB9KTtcblxuICAgIHRoaXMubmFtZXNwYWNlTmFtZSA9IHByb3BzLm5hbWU7XG4gICAgdGhpcy5uYW1lc3BhY2VJZCA9IG5zLmh0dHBOYW1lc3BhY2VJZDtcbiAgICB0aGlzLm5hbWVzcGFjZUFybiA9IG5zLmh0dHBOYW1lc3BhY2VBcm47XG4gICAgdGhpcy50eXBlID0gTmFtZXNwYWNlVHlwZS5IdHRwO1xuICB9XG5cbiAgcHVibGljIGdldCBodHRwTmFtZXNwYWNlQXJuKCkgeyByZXR1cm4gdGhpcy5uYW1lc3BhY2VBcm47IH1cbiAgcHVibGljIGdldCBodHRwTmFtZXNwYWNlSWQoKSB7IHJldHVybiB0aGlzLm5hbWVzcGFjZUlkOyB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJ2aWNlIHdpdGhpbiB0aGUgbmFtZXNwYWNlXG4gICAqL1xuICBwdWJsaWMgY3JlYXRlU2VydmljZShpZDogc3RyaW5nLCBwcm9wcz86IEJhc2VTZXJ2aWNlUHJvcHMpOiBTZXJ2aWNlIHtcbiAgICByZXR1cm4gbmV3IFNlcnZpY2UodGhpcywgaWQsIHtcbiAgICAgIG5hbWVzcGFjZTogdGhpcyxcbiAgICAgIC4uLnByb3BzXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1uYW1lc3BhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJodHRwLW5hbWVzcGFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHNDQUFtRDtBQUNuRCwyQ0FBNEU7QUFDNUUsdUNBQXNEO0FBQ3RELDZFQUFnRTtBQXFCaEU7O0dBRUc7QUFDSCxNQUFhLGFBQWMsU0FBUSxjQUFRO0lBRWxDLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUE4QjtRQUNwRyxNQUFNLE1BQU8sU0FBUSxjQUFRO1lBQTdCOztnQkFDUyxrQkFBYSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7Z0JBQ3BDLGdCQUFXLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQztnQkFDaEMsaUJBQVksR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDO2dCQUNsQyxTQUFJLEdBQUcseUJBQWEsQ0FBQyxJQUFJLENBQUM7WUFDbkMsQ0FBQztTQUFBO1FBQ0QsT0FBTyxJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQXNCRCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXlCO1FBQ2pFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsTUFBTSxFQUFFLEdBQUcsSUFBSSw2Q0FBZ0IsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ2hELElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7U0FDL0IsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FBQztRQUN0QyxJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztRQUN4QyxJQUFJLENBQUMsSUFBSSxHQUFHLHlCQUFhLENBQUMsSUFBSSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxpQkFBaUI7SUFDakIsSUFBVyxnQkFBZ0IsS0FBSyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBRTNELGlCQUFpQjtJQUNqQixJQUFXLGlCQUFpQixLQUFLLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFFN0QsaUJBQWlCO0lBQ2pCLElBQVcsZUFBZSxLQUFLLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFFekQ7O09BRUc7SUFDSSxhQUFhLENBQUMsRUFBVSxFQUFFLEtBQXdCO1FBQ3ZELE9BQU8sSUFBSSxpQkFBTyxDQUFDLElBQUksRUFBRSxFQUFFLEVBQUU7WUFDM0IsU0FBUyxFQUFFLElBQUk7WUFDZixHQUFHLEtBQUs7U0FDVCxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFoRUQsc0NBZ0VDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uc3RydWN0LCBSZXNvdXJjZSB9IGZyb20gJ0Bhd3MtY2RrL2Nkayc7XG5pbXBvcnQgeyBCYXNlTmFtZXNwYWNlUHJvcHMsIElOYW1lc3BhY2UsIE5hbWVzcGFjZVR5cGUgfSBmcm9tICcuL25hbWVzcGFjZSc7XG5pbXBvcnQgeyBCYXNlU2VydmljZVByb3BzLCBTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlJztcbmltcG9ydCB7IENmbkh0dHBOYW1lc3BhY2UgfSBmcm9tICcuL3NlcnZpY2VkaXNjb3ZlcnkuZ2VuZXJhdGVkJztcblxuZXhwb3J0IGludGVyZmFjZSBIdHRwTmFtZXNwYWNlUHJvcHMgZXh0ZW5kcyBCYXNlTmFtZXNwYWNlUHJvcHMge31cbmV4cG9ydCBpbnRlcmZhY2UgSUh0dHBOYW1lc3BhY2UgZXh0ZW5kcyBJTmFtZXNwYWNlIHsgfVxuZXhwb3J0IGludGVyZmFjZSBIdHRwTmFtZXNwYWNlQXR0cmlidXRlcyB7XG4gIC8qKlxuICAgKiBBIG5hbWUgZm9yIHRoZSBOYW1lc3BhY2UuXG4gICAqL1xuICByZWFkb25seSBuYW1lc3BhY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWVzcGFjZSBJZCBmb3IgdGhlIE5hbWVzcGFjZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWVzcGFjZUlkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWVzcGFjZSBBUk4gZm9yIHRoZSBOYW1lc3BhY2UuXG4gICAqL1xuICByZWFkb25seSBuYW1lc3BhY2VBcm46IHN0cmluZztcbn1cblxuLyoqXG4gKiBEZWZpbmUgYW4gSFRUUCBOYW1lc3BhY2VcbiAqL1xuZXhwb3J0IGNsYXNzIEh0dHBOYW1lc3BhY2UgZXh0ZW5kcyBSZXNvdXJjZSBpbXBsZW1lbnRzIElIdHRwTmFtZXNwYWNlIHtcblxuICBwdWJsaWMgc3RhdGljIGZyb21IdHRwTmFtZXNwYWNlQXR0cmlidXRlcyhzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBhdHRyczogSHR0cE5hbWVzcGFjZUF0dHJpYnV0ZXMpOiBJSHR0cE5hbWVzcGFjZSB7XG4gICAgY2xhc3MgSW1wb3J0IGV4dGVuZHMgUmVzb3VyY2UgaW1wbGVtZW50cyBJSHR0cE5hbWVzcGFjZSB7XG4gICAgICBwdWJsaWMgbmFtZXNwYWNlTmFtZSA9IGF0dHJzLm5hbWVzcGFjZU5hbWU7XG4gICAgICBwdWJsaWMgbmFtZXNwYWNlSWQgPSBhdHRycy5uYW1lc3BhY2VJZDtcbiAgICAgIHB1YmxpYyBuYW1lc3BhY2VBcm4gPSBhdHRycy5uYW1lc3BhY2VBcm47XG4gICAgICBwdWJsaWMgdHlwZSA9IE5hbWVzcGFjZVR5cGUuSHR0cDtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBJbXBvcnQoc2NvcGUsIGlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIG5hbWUgZm9yIHRoZSBuYW1lc3BhY2UuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbmFtZXNwYWNlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lc3BhY2UgSWQgZm9yIHRoZSBuYW1lc3BhY2UuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbmFtZXNwYWNlSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZXNwYWNlIEFybiBmb3IgdGhlIG5hbWVzcGFjZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBuYW1lc3BhY2VBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVHlwZSBvZiB0aGUgbmFtZXNwYWNlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHR5cGU6IE5hbWVzcGFjZVR5cGU7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEh0dHBOYW1lc3BhY2VQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBjb25zdCBucyA9IG5ldyBDZm5IdHRwTmFtZXNwYWNlKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIG5hbWU6IHByb3BzLm5hbWUsXG4gICAgICBkZXNjcmlwdGlvbjogcHJvcHMuZGVzY3JpcHRpb25cbiAgICB9KTtcblxuICAgIHRoaXMubmFtZXNwYWNlTmFtZSA9IHByb3BzLm5hbWU7XG4gICAgdGhpcy5uYW1lc3BhY2VJZCA9IG5zLmh0dHBOYW1lc3BhY2VJZDtcbiAgICB0aGlzLm5hbWVzcGFjZUFybiA9IG5zLmh0dHBOYW1lc3BhY2VBcm47XG4gICAgdGhpcy50eXBlID0gTmFtZXNwYWNlVHlwZS5IdHRwO1xuICB9XG5cbiAgLyoqIEBhdHRyaWJ1dGUgKi9cbiAgcHVibGljIGdldCBodHRwTmFtZXNwYWNlQXJuKCkgeyByZXR1cm4gdGhpcy5uYW1lc3BhY2VBcm47IH1cblxuICAvKiogQGF0dHJpYnV0ZSAqL1xuICBwdWJsaWMgZ2V0IGh0dHBOYW1lc3BhY2VOYW1lKCkgeyByZXR1cm4gdGhpcy5uYW1lc3BhY2VOYW1lOyB9XG5cbiAgLyoqIEBhdHRyaWJ1dGUgKi9cbiAgcHVibGljIGdldCBodHRwTmFtZXNwYWNlSWQoKSB7IHJldHVybiB0aGlzLm5hbWVzcGFjZUlkOyB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJ2aWNlIHdpdGhpbiB0aGUgbmFtZXNwYWNlXG4gICAqL1xuICBwdWJsaWMgY3JlYXRlU2VydmljZShpZDogc3RyaW5nLCBwcm9wcz86IEJhc2VTZXJ2aWNlUHJvcHMpOiBTZXJ2aWNlIHtcbiAgICByZXR1cm4gbmV3IFNlcnZpY2UodGhpcywgaWQsIHtcbiAgICAgIG5hbWVzcGFjZTogdGhpcyxcbiAgICAgIC4uLnByb3BzXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==

@@ -1,6 +0,7 @@

import cdk = require('@aws-cdk/cdk');
import { IResource, Resource } from '@aws-cdk/cdk';
import { IService } from './service';
export interface IInstance extends cdk.IConstruct {
export interface IInstance extends IResource {
/**
* The id of the instance resource
* @attribute
*/

@@ -33,3 +34,3 @@ readonly instanceId: string;

}
export declare abstract class InstanceBase extends cdk.Construct implements IInstance {
export declare abstract class InstanceBase extends Resource implements IInstance {
/**

@@ -36,0 +37,0 @@ * The Id of the instance

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const cdk = require("@aws-cdk/cdk");
class InstanceBase extends cdk.Construct {
const cdk_1 = require("@aws-cdk/cdk");
class InstanceBase extends cdk_1.Resource {
/**

@@ -15,2 +15,2 @@ * Generate a unique instance Id that is safe to pass to CloudMap

exports.InstanceBase = InstanceBase;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbnN0YW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLG9DQUFxQztBQW1DckMsTUFBc0IsWUFBYSxTQUFRLEdBQUcsQ0FBQyxTQUFTO0lBV3REOztPQUVHO0lBQ08sZ0JBQWdCO1FBQ3hCLGdEQUFnRDtRQUNoRCxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUM5QixPQUFPLEVBQUUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsTUFBTSxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDOUQsQ0FBQztDQUNGO0FBbkJELG9DQW1CQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCB7IElTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBJSW5zdGFuY2UgZXh0ZW5kcyBjZGsuSUNvbnN0cnVjdCB7XG4gIC8qKlxuICAgKiBUaGUgaWQgb2YgdGhlIGluc3RhbmNlIHJlc291cmNlXG4gICAqL1xuICByZWFkb25seSBpbnN0YW5jZUlkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBDbG91ZG1hcCBzZXJ2aWNlIHRoaXMgcmVzb3VyY2UgaXMgcmVnaXN0ZXJlZCB0by5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2U6IElTZXJ2aWNlO1xufVxuXG4vKipcbiAqIFVzZWQgd2hlbiB0aGUgcmVzb3VyY2UgdGhhdCdzIGFzc29jaWF0ZWQgd2l0aCB0aGUgc2VydmljZSBpbnN0YW5jZSBpcyBhY2Nlc3NpYmxlIHVzaW5nIHZhbHVlcyBvdGhlciB0aGFuIGFuIElQXG4gKiBhZGRyZXNzIG9yIGEgZG9tYWluIG5hbWUgKENOQU1FKSwgaS5lLiBmb3Igbm9uLWlwLWluc3RhbmNlc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEJhc2VJbnN0YW5jZVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBpZCBvZiB0aGUgaW5zdGFuY2UgcmVzb3VyY2VcbiAgICpcbiAgICogQGRlZmF1bHQgQXV0b21hdGljYWxseSBnZW5lcmF0ZWQgbmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgaW5zdGFuY2VJZD86IHN0cmluZztcblxuICAvKipcbiAgICogQ3VzdG9tIGF0dHJpYnV0ZXMgb2YgdGhlIGluc3RhbmNlLlxuICAgKlxuICAgKiBAZGVmYXVsdCBub25lXG4gICAqL1xuICByZWFkb25seSBjdXN0b21BdHRyaWJ1dGVzPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEluc3RhbmNlQmFzZSBleHRlbmRzIGNkay5Db25zdHJ1Y3QgaW1wbGVtZW50cyBJSW5zdGFuY2Uge1xuICAvKipcbiAgICogVGhlIElkIG9mIHRoZSBpbnN0YW5jZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGluc3RhbmNlSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIENsb3VkbWFwIHNlcnZpY2UgdG8gd2hpY2ggdGhlIGluc3RhbmNlIGlzIHJlZ2lzdGVyZWQuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgc2VydmljZTogSVNlcnZpY2U7XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlIGEgdW5pcXVlIGluc3RhbmNlIElkIHRoYXQgaXMgc2FmZSB0byBwYXNzIHRvIENsb3VkTWFwXG4gICAqL1xuICBwcm90ZWN0ZWQgdW5pcXVlSW5zdGFuY2VJZCgpIHtcbiAgICAvLyBNYXggbGVuZ3RoIG9mIDY0IGNoYXJzLCBnZXQgdGhlIGxhc3QgNjQgY2hhcnNcbiAgICBjb25zdCBpZCA9IHRoaXMubm9kZS51bmlxdWVJZDtcbiAgICByZXR1cm4gaWQuc3Vic3RyaW5nKE1hdGgubWF4KGlkLmxlbmd0aCAtIDY0LCAwKSwgaWQubGVuZ3RoKTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbnN0YW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHNDQUFtRDtBQW9DbkQsTUFBc0IsWUFBYSxTQUFRLGNBQVE7SUFXakQ7O09BRUc7SUFDTyxnQkFBZ0I7UUFDeEIsZ0RBQWdEO1FBQ2hELE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQzlCLE9BQU8sRUFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxNQUFNLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM5RCxDQUFDO0NBQ0Y7QUFuQkQsb0NBbUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVJlc291cmNlLCBSZXNvdXJjZSB9IGZyb20gJ0Bhd3MtY2RrL2Nkayc7XG5pbXBvcnQgeyBJU2VydmljZSB9IGZyb20gJy4vc2VydmljZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUluc3RhbmNlIGV4dGVuZHMgSVJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBpZCBvZiB0aGUgaW5zdGFuY2UgcmVzb3VyY2VcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgaW5zdGFuY2VJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRtYXAgc2VydmljZSB0aGlzIHJlc291cmNlIGlzIHJlZ2lzdGVyZWQgdG8uXG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlOiBJU2VydmljZTtcbn1cblxuLyoqXG4gKiBVc2VkIHdoZW4gdGhlIHJlc291cmNlIHRoYXQncyBhc3NvY2lhdGVkIHdpdGggdGhlIHNlcnZpY2UgaW5zdGFuY2UgaXMgYWNjZXNzaWJsZSB1c2luZyB2YWx1ZXMgb3RoZXIgdGhhbiBhbiBJUFxuICogYWRkcmVzcyBvciBhIGRvbWFpbiBuYW1lIChDTkFNRSksIGkuZS4gZm9yIG5vbi1pcC1pbnN0YW5jZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCYXNlSW5zdGFuY2VQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgaWQgb2YgdGhlIGluc3RhbmNlIHJlc291cmNlXG4gICAqXG4gICAqIEBkZWZhdWx0IEF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIG5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGluc3RhbmNlSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEN1c3RvbSBhdHRyaWJ1dGVzIG9mIHRoZSBpbnN0YW5jZS5cbiAgICpcbiAgICogQGRlZmF1bHQgbm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgY3VzdG9tQXR0cmlidXRlcz86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBJbnN0YW5jZUJhc2UgZXh0ZW5kcyBSZXNvdXJjZSBpbXBsZW1lbnRzIElJbnN0YW5jZSB7XG4gIC8qKlxuICAgKiBUaGUgSWQgb2YgdGhlIGluc3RhbmNlXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgaW5zdGFuY2VJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRtYXAgc2VydmljZSB0byB3aGljaCB0aGUgaW5zdGFuY2UgaXMgcmVnaXN0ZXJlZC5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBzZXJ2aWNlOiBJU2VydmljZTtcblxuICAvKipcbiAgICogR2VuZXJhdGUgYSB1bmlxdWUgaW5zdGFuY2UgSWQgdGhhdCBpcyBzYWZlIHRvIHBhc3MgdG8gQ2xvdWRNYXBcbiAgICovXG4gIHByb3RlY3RlZCB1bmlxdWVJbnN0YW5jZUlkKCkge1xuICAgIC8vIE1heCBsZW5ndGggb2YgNjQgY2hhcnMsIGdldCB0aGUgbGFzdCA2NCBjaGFyc1xuICAgIGNvbnN0IGlkID0gdGhpcy5ub2RlLnVuaXF1ZUlkO1xuICAgIHJldHVybiBpZC5zdWJzdHJpbmcoTWF0aC5tYXgoaWQubGVuZ3RoIC0gNjQsIDApLCBpZC5sZW5ndGgpO1xuICB9XG59XG4iXX0=

@@ -34,2 +34,7 @@ import cdk = require('@aws-cdk/cdk');

}
/**
* Instance that is accessible using an IP address.
*
* @resource AWS::ServiceDiscovery::Instance
*/
export declare class IpInstance extends InstanceBase {

@@ -36,0 +41,0 @@ /**

@@ -6,3 +6,3 @@ "use strict";

const servicediscovery_generated_1 = require("./servicediscovery.generated");
/*
/**
* Instance that is accessible using an IP address.

@@ -53,2 +53,2 @@ *

exports.IpInstance = IpInstance;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXAtaW5zdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpcC1pbnN0YW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUNBLHlDQUE2RDtBQUM3RCx1Q0FBb0Q7QUFDcEQsNkVBQTJEO0FBMEMzRDs7OztHQUlHO0FBQ0gsTUFBYSxVQUFXLFNBQVEsdUJBQVk7SUEwQjFDLFlBQVksS0FBb0IsRUFBRSxFQUFVLEVBQUUsS0FBc0I7UUFDbEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQztRQUVsRCxJQUFJLGFBQWEsS0FBSyx1QkFBYSxDQUFDLEtBQUssRUFBRTtZQUN2QyxNQUFNLElBQUksS0FBSyxDQUFDLG1GQUFtRixDQUFDLENBQUM7U0FDeEc7UUFDRCxJQUFJLGFBQWEsS0FBSyx1QkFBYSxDQUFDLEdBQUcsRUFBRTtZQUN2QyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRTtnQkFDZixNQUFNLElBQUksS0FBSyxDQUFDLGdFQUFnRSxDQUFDLENBQUM7YUFDbkY7WUFFRCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUU7Z0JBQzlCLE1BQU0sSUFBSSxLQUFLLENBQUMsaUZBQWlGLENBQUMsQ0FBQzthQUNwRztTQUNGO1FBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxhQUFhLEtBQUssdUJBQWEsQ0FBQyxDQUFDLElBQUksYUFBYSxLQUFLLHVCQUFhLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDaEcsTUFBTSxJQUFJLEtBQUssQ0FBQywrREFBK0QsQ0FBQyxDQUFDO1NBQ2xGO1FBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJO1lBQ2IsQ0FBQyxhQUFhLEtBQUssdUJBQWEsQ0FBQyxJQUFJLElBQUksYUFBYSxLQUFLLHVCQUFhLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDbEYsTUFBTSxJQUFJLEtBQUssQ0FBQyxrRUFBa0UsQ0FBQyxDQUFDO1NBQ3JGO1FBRUQsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7UUFFOUIsTUFBTSxRQUFRLEdBQUcsSUFBSSx3Q0FBVyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDakQsa0JBQWtCLEVBQUU7Z0JBQ2xCLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxJQUFJO2dCQUM3QixpQkFBaUIsRUFBRSxLQUFLLENBQUMsSUFBSTtnQkFDN0IsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRTtnQkFDbEMsR0FBRyxLQUFLLENBQUMsZ0JBQWdCO2FBQzFCO1lBQ0QsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQ3ZELFNBQVMsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVM7U0FDbkMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQzdCLElBQUksQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQztRQUN0QyxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQztDQUNGO0FBdkVELGdDQXVFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCB7IEJhc2VJbnN0YW5jZVByb3BzLCBJbnN0YW5jZUJhc2UgfSBmcm9tICcuL2luc3RhbmNlJztcbmltcG9ydCB7IERuc1JlY29yZFR5cGUsIElTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlJztcbmltcG9ydCB7IENmbkluc3RhbmNlIH0gZnJvbSAnLi9zZXJ2aWNlZGlzY292ZXJ5LmdlbmVyYXRlZCc7XG5cbi8qXG4gKiBQcm9wZXJ0aWVzIGZvciBhIElwSW5zdGFuY2UgdXNlZCBmb3Igc2VydmljZSNyZWdpc3RlcklwSW5zdGFuY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJcEluc3RhbmNlQmFzZVByb3BzIGV4dGVuZHMgQmFzZUluc3RhbmNlUHJvcHMge1xuICAvKipcbiAgICogVGhlIHBvcnQgb24gdGhlIGVuZHBvaW50IHRoYXQgeW91IHdhbnQgQVdTIENsb3VkIE1hcCB0byBwZXJmb3JtIGhlYWx0aCBjaGVja3Mgb24uIFRoaXMgdmFsdWUgaXMgYWxzbyB1c2VkIGZvclxuICAgKiB0aGUgcG9ydCB2YWx1ZSBpbiBhbiBTUlYgcmVjb3JkIGlmIHRoZSBzZXJ2aWNlIHRoYXQgeW91IHNwZWNpZnkgaW5jbHVkZXMgYW4gU1JWIHJlY29yZC4gWW91IGNhbiBhbHNvIHNwZWNpZnkgYVxuICAgKiBkZWZhdWx0IHBvcnQgdGhhdCBpcyBhcHBsaWVkIHRvIGFsbCBpbnN0YW5jZXMgaW4gdGhlIFNlcnZpY2UgY29uZmlndXJhdGlvbi5cbiAgICpcbiAgICogQGRlZmF1bHQgODBcbiAgICovXG4gIHJlYWRvbmx5IHBvcnQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqICBJZiB0aGUgc2VydmljZSB0aGF0IHlvdSBzcGVjaWZ5IGNvbnRhaW5zIGEgdGVtcGxhdGUgZm9yIGFuIEEgcmVjb3JkLCB0aGUgSVB2NCBhZGRyZXNzIHRoYXQgeW91IHdhbnQgQVdTIENsb3VkXG4gICAqICBNYXAgdG8gdXNlIGZvciB0aGUgdmFsdWUgb2YgdGhlIEEgcmVjb3JkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBub25lXG4gICAqL1xuICByZWFkb25seSBpcHY0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiAgSWYgdGhlIHNlcnZpY2UgdGhhdCB5b3Ugc3BlY2lmeSBjb250YWlucyBhIHRlbXBsYXRlIGZvciBhbiBBQUFBIHJlY29yZCwgdGhlIElQdjYgYWRkcmVzcyB0aGF0IHlvdSB3YW50IEFXUyBDbG91ZFxuICAgKiAgTWFwIHRvIHVzZSBmb3IgdGhlIHZhbHVlIG9mIHRoZSBBQUFBIHJlY29yZC5cbiAgICpcbiAgICogQGRlZmF1bHQgbm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgaXB2Nj86IHN0cmluZztcbn1cblxuLypcbiAqIFByb3BlcnRpZXMgZm9yIGFuIElwSW5zdGFuY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJcEluc3RhbmNlUHJvcHMgZXh0ZW5kcyBJcEluc3RhbmNlQmFzZVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZG1hcCBzZXJ2aWNlIHRoaXMgcmVzb3VyY2UgaXMgcmVnaXN0ZXJlZCB0by5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2U6IElTZXJ2aWNlO1xufVxuXG4vKlxuICogSW5zdGFuY2UgdGhhdCBpcyBhY2Nlc3NpYmxlIHVzaW5nIGFuIElQIGFkZHJlc3MuXG4gKlxuICogQHJlc291cmNlIEFXUzo6U2VydmljZURpc2NvdmVyeTo6SW5zdGFuY2VcbiAqL1xuZXhwb3J0IGNsYXNzIElwSW5zdGFuY2UgZXh0ZW5kcyBJbnN0YW5jZUJhc2Uge1xuICAvKipcbiAgICogVGhlIElkIG9mIHRoZSBpbnN0YW5jZVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGluc3RhbmNlSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIENsb3VkbWFwIHNlcnZpY2UgdG8gd2hpY2ggdGhlIGluc3RhbmNlIGlzIHJlZ2lzdGVyZWQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgc2VydmljZTogSVNlcnZpY2U7XG5cbiAgLyoqXG4gICAqIFRoZSBJcHY0IGFkZHJlc3Mgb2YgdGhlIGluc3RhbmNlLCBvciBibGFuayBzdHJpbmcgaWYgbm9uZSBhdmFpbGFibGVcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBpcHY0OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBJcHY2IGFkZHJlc3Mgb2YgdGhlIGluc3RhbmNlLCBvciBibGFuayBzdHJpbmcgaWYgbm9uZSBhdmFpbGFibGVcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBpcHY2OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBleHBvc2VkIHBvcnQgb2YgdGhlIGluc3RhbmNlXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcG9ydDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBjZGsuQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogSXBJbnN0YW5jZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICBjb25zdCBkbnNSZWNvcmRUeXBlID0gcHJvcHMuc2VydmljZS5kbnNSZWNvcmRUeXBlO1xuXG4gICAgaWYgKGRuc1JlY29yZFR5cGUgPT09IERuc1JlY29yZFR5cGUuQ05BTUUpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdTZXJ2aWNlIG11c3Qgc3VwcG9ydCBgQWAsIGBBQUFBYCBvciBgU1JWYCByZWNvcmRzIHRvIHJlZ2lzdGVyIHRoaXMgaW5zdGFuY2UgdHlwZS4nKTtcbiAgICB9XG4gICAgaWYgKGRuc1JlY29yZFR5cGUgPT09IERuc1JlY29yZFR5cGUuU1JWKSB7XG4gICAgICBpZiAoIXByb3BzLnBvcnQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdBIGBwb3J0YCBtdXN0IGJlIHNwZWNpZmllZCBmb3IgYSBzZXJ2aWNlIHVzaW5nIGEgYFNSVmAgcmVjb3JkLicpO1xuICAgICAgfVxuXG4gICAgICBpZiAoIXByb3BzLmlwdjQgJiYgIXByb3BzLmlwdjYpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdBdCBsZWFzdCBgaXB2NGAgb3IgYGlwdjZgIG11c3QgYmUgc3BlY2lmaWVkIGZvciBhIHNlcnZpY2UgdXNpbmcgYSBgU1JWYCByZWNvcmQuJyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKCFwcm9wcy5pcHY0ICYmIChkbnNSZWNvcmRUeXBlID09PSBEbnNSZWNvcmRUeXBlLkEgfHwgZG5zUmVjb3JkVHlwZSA9PT0gRG5zUmVjb3JkVHlwZS5BX0FBQUEpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FuIGBpcHY0YCBtdXN0IGJlIHNwZWNpZmllZCBmb3IgYSBzZXJ2aWNlIHVzaW5nIGEgYEFgIHJlY29yZC4nKTtcbiAgICB9XG5cbiAgICBpZiAoIXByb3BzLmlwdjYgJiZcbiAgICAgIChkbnNSZWNvcmRUeXBlID09PSBEbnNSZWNvcmRUeXBlLkFBQUEgfHwgZG5zUmVjb3JkVHlwZSA9PT0gRG5zUmVjb3JkVHlwZS5BX0FBQUEpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FuIGBpcHY2YCBtdXN0IGJlIHNwZWNpZmllZCBmb3IgYSBzZXJ2aWNlIHVzaW5nIGEgYEFBQUFgIHJlY29yZC4nKTtcbiAgICB9XG5cbiAgICBjb25zdCBwb3J0ID0gcHJvcHMucG9ydCB8fCA4MDtcblxuICAgIGNvbnN0IHJlc291cmNlID0gbmV3IENmbkluc3RhbmNlKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIGluc3RhbmNlQXR0cmlidXRlczoge1xuICAgICAgICBBV1NfSU5TVEFOQ0VfSVBWNDogcHJvcHMuaXB2NCxcbiAgICAgICAgQVdTX0lOU1RBTkNFX0lQVjY6IHByb3BzLmlwdjYsXG4gICAgICAgIEFXU19JTlNUQU5DRV9QT1JUOiBwb3J0LnRvU3RyaW5nKCksXG4gICAgICAgIC4uLnByb3BzLmN1c3RvbUF0dHJpYnV0ZXNcbiAgICAgIH0sXG4gICAgICBpbnN0YW5jZUlkOiBwcm9wcy5pbnN0YW5jZUlkIHx8IHRoaXMudW5pcXVlSW5zdGFuY2VJZCgpLFxuICAgICAgc2VydmljZUlkOiBwcm9wcy5zZXJ2aWNlLnNlcnZpY2VJZFxuICAgIH0pO1xuXG4gICAgdGhpcy5zZXJ2aWNlID0gcHJvcHMuc2VydmljZTtcbiAgICB0aGlzLmluc3RhbmNlSWQgPSByZXNvdXJjZS5pbnN0YW5jZUlkO1xuICAgIHRoaXMuaXB2NCA9IHByb3BzLmlwdjQgfHwgJyc7XG4gICAgdGhpcy5pcHY2ID0gcHJvcHMuaXB2NiB8fCAnJztcbiAgICB0aGlzLnBvcnQgPSBwb3J0O1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXAtaW5zdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpcC1pbnN0YW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUNBLHlDQUE2RDtBQUM3RCx1Q0FBb0Q7QUFDcEQsNkVBQTJEO0FBMEMzRDs7OztHQUlHO0FBQ0gsTUFBYSxVQUFXLFNBQVEsdUJBQVk7SUEwQjFDLFlBQVksS0FBb0IsRUFBRSxFQUFVLEVBQUUsS0FBc0I7UUFDbEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQztRQUVsRCxJQUFJLGFBQWEsS0FBSyx1QkFBYSxDQUFDLEtBQUssRUFBRTtZQUN2QyxNQUFNLElBQUksS0FBSyxDQUFDLG1GQUFtRixDQUFDLENBQUM7U0FDeEc7UUFDRCxJQUFJLGFBQWEsS0FBSyx1QkFBYSxDQUFDLEdBQUcsRUFBRTtZQUN2QyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRTtnQkFDZixNQUFNLElBQUksS0FBSyxDQUFDLGdFQUFnRSxDQUFDLENBQUM7YUFDbkY7WUFFRCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUU7Z0JBQzlCLE1BQU0sSUFBSSxLQUFLLENBQUMsaUZBQWlGLENBQUMsQ0FBQzthQUNwRztTQUNGO1FBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxhQUFhLEtBQUssdUJBQWEsQ0FBQyxDQUFDLElBQUksYUFBYSxLQUFLLHVCQUFhLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDaEcsTUFBTSxJQUFJLEtBQUssQ0FBQywrREFBK0QsQ0FBQyxDQUFDO1NBQ2xGO1FBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJO1lBQ2IsQ0FBQyxhQUFhLEtBQUssdUJBQWEsQ0FBQyxJQUFJLElBQUksYUFBYSxLQUFLLHVCQUFhLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDbEYsTUFBTSxJQUFJLEtBQUssQ0FBQyxrRUFBa0UsQ0FBQyxDQUFDO1NBQ3JGO1FBRUQsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7UUFFOUIsTUFBTSxRQUFRLEdBQUcsSUFBSSx3Q0FBVyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDakQsa0JBQWtCLEVBQUU7Z0JBQ2xCLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxJQUFJO2dCQUM3QixpQkFBaUIsRUFBRSxLQUFLLENBQUMsSUFBSTtnQkFDN0IsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRTtnQkFDbEMsR0FBRyxLQUFLLENBQUMsZ0JBQWdCO2FBQzFCO1lBQ0QsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQ3ZELFNBQVMsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVM7U0FDbkMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQzdCLElBQUksQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQztRQUN0QyxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQztDQUNGO0FBdkVELGdDQXVFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCB7IEJhc2VJbnN0YW5jZVByb3BzLCBJbnN0YW5jZUJhc2UgfSBmcm9tICcuL2luc3RhbmNlJztcbmltcG9ydCB7IERuc1JlY29yZFR5cGUsIElTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlJztcbmltcG9ydCB7IENmbkluc3RhbmNlIH0gZnJvbSAnLi9zZXJ2aWNlZGlzY292ZXJ5LmdlbmVyYXRlZCc7XG5cbi8qXG4gKiBQcm9wZXJ0aWVzIGZvciBhIElwSW5zdGFuY2UgdXNlZCBmb3Igc2VydmljZSNyZWdpc3RlcklwSW5zdGFuY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJcEluc3RhbmNlQmFzZVByb3BzIGV4dGVuZHMgQmFzZUluc3RhbmNlUHJvcHMge1xuICAvKipcbiAgICogVGhlIHBvcnQgb24gdGhlIGVuZHBvaW50IHRoYXQgeW91IHdhbnQgQVdTIENsb3VkIE1hcCB0byBwZXJmb3JtIGhlYWx0aCBjaGVja3Mgb24uIFRoaXMgdmFsdWUgaXMgYWxzbyB1c2VkIGZvclxuICAgKiB0aGUgcG9ydCB2YWx1ZSBpbiBhbiBTUlYgcmVjb3JkIGlmIHRoZSBzZXJ2aWNlIHRoYXQgeW91IHNwZWNpZnkgaW5jbHVkZXMgYW4gU1JWIHJlY29yZC4gWW91IGNhbiBhbHNvIHNwZWNpZnkgYVxuICAgKiBkZWZhdWx0IHBvcnQgdGhhdCBpcyBhcHBsaWVkIHRvIGFsbCBpbnN0YW5jZXMgaW4gdGhlIFNlcnZpY2UgY29uZmlndXJhdGlvbi5cbiAgICpcbiAgICogQGRlZmF1bHQgODBcbiAgICovXG4gIHJlYWRvbmx5IHBvcnQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqICBJZiB0aGUgc2VydmljZSB0aGF0IHlvdSBzcGVjaWZ5IGNvbnRhaW5zIGEgdGVtcGxhdGUgZm9yIGFuIEEgcmVjb3JkLCB0aGUgSVB2NCBhZGRyZXNzIHRoYXQgeW91IHdhbnQgQVdTIENsb3VkXG4gICAqICBNYXAgdG8gdXNlIGZvciB0aGUgdmFsdWUgb2YgdGhlIEEgcmVjb3JkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBub25lXG4gICAqL1xuICByZWFkb25seSBpcHY0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiAgSWYgdGhlIHNlcnZpY2UgdGhhdCB5b3Ugc3BlY2lmeSBjb250YWlucyBhIHRlbXBsYXRlIGZvciBhbiBBQUFBIHJlY29yZCwgdGhlIElQdjYgYWRkcmVzcyB0aGF0IHlvdSB3YW50IEFXUyBDbG91ZFxuICAgKiAgTWFwIHRvIHVzZSBmb3IgdGhlIHZhbHVlIG9mIHRoZSBBQUFBIHJlY29yZC5cbiAgICpcbiAgICogQGRlZmF1bHQgbm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgaXB2Nj86IHN0cmluZztcbn1cblxuLypcbiAqIFByb3BlcnRpZXMgZm9yIGFuIElwSW5zdGFuY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJcEluc3RhbmNlUHJvcHMgZXh0ZW5kcyBJcEluc3RhbmNlQmFzZVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZG1hcCBzZXJ2aWNlIHRoaXMgcmVzb3VyY2UgaXMgcmVnaXN0ZXJlZCB0by5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2U6IElTZXJ2aWNlO1xufVxuXG4vKipcbiAqIEluc3RhbmNlIHRoYXQgaXMgYWNjZXNzaWJsZSB1c2luZyBhbiBJUCBhZGRyZXNzLlxuICpcbiAqIEByZXNvdXJjZSBBV1M6OlNlcnZpY2VEaXNjb3Zlcnk6Okluc3RhbmNlXG4gKi9cbmV4cG9ydCBjbGFzcyBJcEluc3RhbmNlIGV4dGVuZHMgSW5zdGFuY2VCYXNlIHtcbiAgLyoqXG4gICAqIFRoZSBJZCBvZiB0aGUgaW5zdGFuY2VcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBpbnN0YW5jZUlkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBDbG91ZG1hcCBzZXJ2aWNlIHRvIHdoaWNoIHRoZSBpbnN0YW5jZSBpcyByZWdpc3RlcmVkLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNlcnZpY2U6IElTZXJ2aWNlO1xuXG4gIC8qKlxuICAgKiBUaGUgSXB2NCBhZGRyZXNzIG9mIHRoZSBpbnN0YW5jZSwgb3IgYmxhbmsgc3RyaW5nIGlmIG5vbmUgYXZhaWxhYmxlXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaXB2NDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgSXB2NiBhZGRyZXNzIG9mIHRoZSBpbnN0YW5jZSwgb3IgYmxhbmsgc3RyaW5nIGlmIG5vbmUgYXZhaWxhYmxlXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaXB2Njogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZXhwb3NlZCBwb3J0IG9mIHRoZSBpbnN0YW5jZVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHBvcnQ6IG51bWJlcjtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogY2RrLkNvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IElwSW5zdGFuY2VQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgY29uc3QgZG5zUmVjb3JkVHlwZSA9IHByb3BzLnNlcnZpY2UuZG5zUmVjb3JkVHlwZTtcblxuICAgIGlmIChkbnNSZWNvcmRUeXBlID09PSBEbnNSZWNvcmRUeXBlLkNOQU1FKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignU2VydmljZSBtdXN0IHN1cHBvcnQgYEFgLCBgQUFBQWAgb3IgYFNSVmAgcmVjb3JkcyB0byByZWdpc3RlciB0aGlzIGluc3RhbmNlIHR5cGUuJyk7XG4gICAgfVxuICAgIGlmIChkbnNSZWNvcmRUeXBlID09PSBEbnNSZWNvcmRUeXBlLlNSVikge1xuICAgICAgaWYgKCFwcm9wcy5wb3J0KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignQSBgcG9ydGAgbXVzdCBiZSBzcGVjaWZpZWQgZm9yIGEgc2VydmljZSB1c2luZyBhIGBTUlZgIHJlY29yZC4nKTtcbiAgICAgIH1cblxuICAgICAgaWYgKCFwcm9wcy5pcHY0ICYmICFwcm9wcy5pcHY2KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignQXQgbGVhc3QgYGlwdjRgIG9yIGBpcHY2YCBtdXN0IGJlIHNwZWNpZmllZCBmb3IgYSBzZXJ2aWNlIHVzaW5nIGEgYFNSVmAgcmVjb3JkLicpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICghcHJvcHMuaXB2NCAmJiAoZG5zUmVjb3JkVHlwZSA9PT0gRG5zUmVjb3JkVHlwZS5BIHx8IGRuc1JlY29yZFR5cGUgPT09IERuc1JlY29yZFR5cGUuQV9BQUFBKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBbiBgaXB2NGAgbXVzdCBiZSBzcGVjaWZpZWQgZm9yIGEgc2VydmljZSB1c2luZyBhIGBBYCByZWNvcmQuJyk7XG4gICAgfVxuXG4gICAgaWYgKCFwcm9wcy5pcHY2ICYmXG4gICAgICAoZG5zUmVjb3JkVHlwZSA9PT0gRG5zUmVjb3JkVHlwZS5BQUFBIHx8IGRuc1JlY29yZFR5cGUgPT09IERuc1JlY29yZFR5cGUuQV9BQUFBKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBbiBgaXB2NmAgbXVzdCBiZSBzcGVjaWZpZWQgZm9yIGEgc2VydmljZSB1c2luZyBhIGBBQUFBYCByZWNvcmQuJyk7XG4gICAgfVxuXG4gICAgY29uc3QgcG9ydCA9IHByb3BzLnBvcnQgfHwgODA7XG5cbiAgICBjb25zdCByZXNvdXJjZSA9IG5ldyBDZm5JbnN0YW5jZSh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICBpbnN0YW5jZUF0dHJpYnV0ZXM6IHtcbiAgICAgICAgQVdTX0lOU1RBTkNFX0lQVjQ6IHByb3BzLmlwdjQsXG4gICAgICAgIEFXU19JTlNUQU5DRV9JUFY2OiBwcm9wcy5pcHY2LFxuICAgICAgICBBV1NfSU5TVEFOQ0VfUE9SVDogcG9ydC50b1N0cmluZygpLFxuICAgICAgICAuLi5wcm9wcy5jdXN0b21BdHRyaWJ1dGVzXG4gICAgICB9LFxuICAgICAgaW5zdGFuY2VJZDogcHJvcHMuaW5zdGFuY2VJZCB8fCB0aGlzLnVuaXF1ZUluc3RhbmNlSWQoKSxcbiAgICAgIHNlcnZpY2VJZDogcHJvcHMuc2VydmljZS5zZXJ2aWNlSWRcbiAgICB9KTtcblxuICAgIHRoaXMuc2VydmljZSA9IHByb3BzLnNlcnZpY2U7XG4gICAgdGhpcy5pbnN0YW5jZUlkID0gcmVzb3VyY2UuaW5zdGFuY2VJZDtcbiAgICB0aGlzLmlwdjQgPSBwcm9wcy5pcHY0IHx8ICcnO1xuICAgIHRoaXMuaXB2NiA9IHByb3BzLmlwdjYgfHwgJyc7XG4gICAgdGhpcy5wb3J0ID0gcG9ydDtcbiAgfVxufVxuIl19

@@ -1,5 +0,6 @@

import { Construct, IResource, Resource } from '@aws-cdk/cdk';
import { IResource } from '@aws-cdk/cdk';
export interface INamespace extends IResource {
/**
* A name for the Namespace.
* @attribute
*/

@@ -9,2 +10,3 @@ readonly namespaceName: string;

* Namespace Id for the Namespace.
* @attribute
*/

@@ -14,2 +16,3 @@ readonly namespaceId: string;

* Namespace ARN for the Namespace.
* @attribute
*/

@@ -21,6 +24,2 @@ readonly namespaceArn: string;

readonly type: NamespaceType;
/**
* Export the namespace properties
*/
export(): NamespaceImportProps;
}

@@ -39,3 +38,3 @@ export interface BaseNamespaceProps {

}
export interface NamespaceImportProps {
export interface NamespaceAttributes {
/**

@@ -74,18 +73,1 @@ * A name for the Namespace.

}
export declare abstract class NamespaceBase extends Resource implements INamespace {
abstract readonly namespaceId: string;
abstract readonly namespaceArn: string;
abstract readonly namespaceName: string;
abstract readonly type: NamespaceType;
export(): NamespaceImportProps;
}
/**
* Static Namespace class
*/
export declare class Namespace {
/**
* Import a namespace
*/
static import(scope: Construct, id: string, props: NamespaceImportProps): INamespace;
private constructor();
}
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const cdk_1 = require("@aws-cdk/cdk");
var NamespaceType;

@@ -21,40 +20,2 @@ (function (NamespaceType) {

})(NamespaceType = exports.NamespaceType || (exports.NamespaceType = {}));
class NamespaceBase extends cdk_1.Resource {
export() {
return {
namespaceName: new cdk_1.CfnOutput(this, 'NamespaceName', { value: this.namespaceArn }).makeImportValue().toString(),
namespaceArn: new cdk_1.CfnOutput(this, 'NamespaceArn', { value: this.namespaceArn }).makeImportValue().toString(),
namespaceId: new cdk_1.CfnOutput(this, 'NamespaceId', { value: this.namespaceId }).makeImportValue().toString(),
type: this.type,
};
}
}
exports.NamespaceBase = NamespaceBase;
// The class below exists purely so that users can still type Namespace.import().
// It does not make sense to have HttpNamespace.import({ ..., type: NamespaceType.PublicDns }),
// but at the same time ecs.Cluster wants a type-generic export()/import(). Hence, we put
// it in Namespace.
/**
* Static Namespace class
*/
class Namespace {
/**
* Import a namespace
*/
static import(scope, id, props) {
return new ImportedNamespace(scope, id, props);
}
constructor() {
}
}
exports.Namespace = Namespace;
class ImportedNamespace extends NamespaceBase {
constructor(scope, id, props) {
super(scope, id);
this.namespaceId = props.namespaceId;
this.namespaceArn = props.namespaceArn;
this.namespaceName = props.namespaceName;
this.type = props.type;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFtZXNwYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibmFtZXNwYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsc0NBQXlFO0FBaUV6RSxJQUFZLGFBaUJYO0FBakJELFdBQVksYUFBYTtJQUN2Qjs7T0FFRztJQUNILDhCQUFhLENBQUE7SUFFYjs7O09BR0c7SUFDSCwyQ0FBMEIsQ0FBQTtJQUUxQjs7O09BR0c7SUFDSCx5Q0FBd0IsQ0FBQTtBQUMxQixDQUFDLEVBakJXLGFBQWEsR0FBYixxQkFBYSxLQUFiLHFCQUFhLFFBaUJ4QjtBQUVELE1BQXNCLGFBQWMsU0FBUSxjQUFRO0lBTTNDLE1BQU07UUFDWCxPQUFPO1lBQ0wsYUFBYSxFQUFFLElBQUksZUFBUyxDQUFDLElBQUksRUFBRSxlQUFlLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxFQUFFO1lBQzlHLFlBQVksRUFBRSxJQUFJLGVBQVMsQ0FBQyxJQUFJLEVBQUUsY0FBYyxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsRUFBRTtZQUM1RyxXQUFXLEVBQUUsSUFBSSxlQUFTLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLEVBQUU7WUFDekcsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1NBQ2hCLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFkRCxzQ0FjQztBQUVELGlGQUFpRjtBQUNqRiwrRkFBK0Y7QUFDL0YseUZBQXlGO0FBQ3pGLG1CQUFtQjtBQUVuQjs7R0FFRztBQUNILE1BQWEsU0FBUztJQUNwQjs7T0FFRztJQUNJLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBMkI7UUFDNUUsT0FBTyxJQUFJLGlCQUFpQixDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVEO0lBQ0EsQ0FBQztDQUNGO0FBVkQsOEJBVUM7QUFFRCxNQUFNLGlCQUFrQixTQUFRLGFBQWE7SUFNM0MsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUEyQjtRQUNuRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQztRQUNyQyxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7UUFDdkMsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDO1FBQ3pDLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQztJQUN6QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZm5PdXRwdXQsIENvbnN0cnVjdCwgSVJlc291cmNlLCBSZXNvdXJjZSB9IGZyb20gJ0Bhd3MtY2RrL2Nkayc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU5hbWVzcGFjZSBleHRlbmRzIElSZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBBIG5hbWUgZm9yIHRoZSBOYW1lc3BhY2UuXG4gICAqL1xuICByZWFkb25seSBuYW1lc3BhY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWVzcGFjZSBJZCBmb3IgdGhlIE5hbWVzcGFjZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWVzcGFjZUlkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWVzcGFjZSBBUk4gZm9yIHRoZSBOYW1lc3BhY2UuXG4gICAqL1xuICByZWFkb25seSBuYW1lc3BhY2VBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVHlwZSBvZiBOYW1lc3BhY2VcbiAgICovXG4gIHJlYWRvbmx5IHR5cGU6IE5hbWVzcGFjZVR5cGU7XG5cbiAgLyoqXG4gICAqIEV4cG9ydCB0aGUgbmFtZXNwYWNlIHByb3BlcnRpZXNcbiAgICovXG4gIGV4cG9ydCgpOiBOYW1lc3BhY2VJbXBvcnRQcm9wcztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCYXNlTmFtZXNwYWNlUHJvcHMge1xuICAvKipcbiAgICogQSBuYW1lIGZvciB0aGUgTmFtZXNwYWNlLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIGRlc2NyaXB0aW9uIG9mIHRoZSBOYW1lc3BhY2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vbmVcbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5hbWVzcGFjZUltcG9ydFByb3BzIHtcbiAgLyoqXG4gICAqIEEgbmFtZSBmb3IgdGhlIE5hbWVzcGFjZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWVzcGFjZU5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZXNwYWNlIElkIGZvciB0aGUgTmFtZXNwYWNlLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZXNwYWNlSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZXNwYWNlIEFSTiBmb3IgdGhlIE5hbWVzcGFjZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWVzcGFjZUFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUeXBlIG9mIE5hbWVzcGFjZS4gVmFsaWQgdmFsdWVzOiBIVFRQLCBETlNfUFVCTElDLCBvciBETlNfUFJJVkFURVxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZTogTmFtZXNwYWNlVHlwZTtcbn1cblxuZXhwb3J0IGVudW0gTmFtZXNwYWNlVHlwZSB7XG4gIC8qKlxuICAgKiBDaG9vc2UgdGhpcyBvcHRpb24gaWYgeW91IHdhbnQgeW91ciBhcHBsaWNhdGlvbiB0byB1c2Ugb25seSBBUEkgY2FsbHMgdG8gZGlzY292ZXIgcmVnaXN0ZXJlZCBpbnN0YW5jZXMuXG4gICAqL1xuICBIdHRwID0gXCJIVFRQXCIsXG5cbiAgLyoqXG4gICAqIENob29zZSB0aGlzIG9wdGlvbiBpZiB5b3Ugd2FudCB5b3VyIGFwcGxpY2F0aW9uIHRvIGJlIGFibGUgdG8gZGlzY292ZXIgaW5zdGFuY2VzIHVzaW5nIGVpdGhlciBBUEkgY2FsbHMgb3IgdXNpbmdcbiAgICogRE5TIHF1ZXJpZXMgaW4gYSBWUEMuXG4gICAqL1xuICBEbnNQcml2YXRlID0gXCJETlNfUFJJVkFURVwiLFxuXG4gIC8qKlxuICAgKiBDaG9vc2UgdGhpcyBvcHRpb24gaWYgeW91IHdhbnQgeW91ciBhcHBsaWNhdGlvbiB0byBiZSBhYmxlIHRvIGRpc2NvdmVyIGluc3RhbmNlcyB1c2luZyBlaXRoZXIgQVBJIGNhbGxzIG9yIHVzaW5nXG4gICAqIHB1YmxpYyBETlMgcXVlcmllcy4gWW91IGFyZW4ndCByZXF1aXJlZCB0byB1c2UgYm90aCBtZXRob2RzLlxuICAgKi9cbiAgRG5zUHVibGljID0gXCJETlNfUFVCTElDXCIsXG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBOYW1lc3BhY2VCYXNlIGV4dGVuZHMgUmVzb3VyY2UgaW1wbGVtZW50cyBJTmFtZXNwYWNlIHtcbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IG5hbWVzcGFjZUlkOiBzdHJpbmc7XG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBuYW1lc3BhY2VBcm46IHN0cmluZztcbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IG5hbWVzcGFjZU5hbWU6IHN0cmluZztcbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IHR5cGU6IE5hbWVzcGFjZVR5cGU7XG5cbiAgcHVibGljIGV4cG9ydCgpOiBOYW1lc3BhY2VJbXBvcnRQcm9wcyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5hbWVzcGFjZU5hbWU6IG5ldyBDZm5PdXRwdXQodGhpcywgJ05hbWVzcGFjZU5hbWUnLCB7IHZhbHVlOiB0aGlzLm5hbWVzcGFjZUFybiB9KS5tYWtlSW1wb3J0VmFsdWUoKS50b1N0cmluZygpLFxuICAgICAgbmFtZXNwYWNlQXJuOiBuZXcgQ2ZuT3V0cHV0KHRoaXMsICdOYW1lc3BhY2VBcm4nLCB7IHZhbHVlOiB0aGlzLm5hbWVzcGFjZUFybiB9KS5tYWtlSW1wb3J0VmFsdWUoKS50b1N0cmluZygpLFxuICAgICAgbmFtZXNwYWNlSWQ6IG5ldyBDZm5PdXRwdXQodGhpcywgJ05hbWVzcGFjZUlkJywgeyB2YWx1ZTogdGhpcy5uYW1lc3BhY2VJZCB9KS5tYWtlSW1wb3J0VmFsdWUoKS50b1N0cmluZygpLFxuICAgICAgdHlwZTogdGhpcy50eXBlLFxuICAgIH07XG4gIH1cbn1cblxuLy8gVGhlIGNsYXNzIGJlbG93IGV4aXN0cyBwdXJlbHkgc28gdGhhdCB1c2VycyBjYW4gc3RpbGwgdHlwZSBOYW1lc3BhY2UuaW1wb3J0KCkuXG4vLyBJdCBkb2VzIG5vdCBtYWtlIHNlbnNlIHRvIGhhdmUgSHR0cE5hbWVzcGFjZS5pbXBvcnQoeyAuLi4sIHR5cGU6IE5hbWVzcGFjZVR5cGUuUHVibGljRG5zIH0pLFxuLy8gYnV0IGF0IHRoZSBzYW1lIHRpbWUgZWNzLkNsdXN0ZXIgd2FudHMgYSB0eXBlLWdlbmVyaWMgZXhwb3J0KCkvaW1wb3J0KCkuIEhlbmNlLCB3ZSBwdXRcbi8vIGl0IGluIE5hbWVzcGFjZS5cblxuLyoqXG4gKiBTdGF0aWMgTmFtZXNwYWNlIGNsYXNzXG4gKi9cbmV4cG9ydCBjbGFzcyBOYW1lc3BhY2Uge1xuICAvKipcbiAgICogSW1wb3J0IGEgbmFtZXNwYWNlXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGltcG9ydChzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTmFtZXNwYWNlSW1wb3J0UHJvcHMpOiBJTmFtZXNwYWNlIHtcbiAgICByZXR1cm4gbmV3IEltcG9ydGVkTmFtZXNwYWNlKHNjb3BlLCBpZCwgcHJvcHMpO1xuICB9XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcigpIHtcbiAgfVxufVxuXG5jbGFzcyBJbXBvcnRlZE5hbWVzcGFjZSBleHRlbmRzIE5hbWVzcGFjZUJhc2Uge1xuICBwdWJsaWMgbmFtZXNwYWNlSWQ6IHN0cmluZztcbiAgcHVibGljIG5hbWVzcGFjZUFybjogc3RyaW5nO1xuICBwdWJsaWMgbmFtZXNwYWNlTmFtZTogc3RyaW5nO1xuICBwdWJsaWMgdHlwZTogTmFtZXNwYWNlVHlwZTtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTmFtZXNwYWNlSW1wb3J0UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIHRoaXMubmFtZXNwYWNlSWQgPSBwcm9wcy5uYW1lc3BhY2VJZDtcbiAgICB0aGlzLm5hbWVzcGFjZUFybiA9IHByb3BzLm5hbWVzcGFjZUFybjtcbiAgICB0aGlzLm5hbWVzcGFjZU5hbWUgPSBwcm9wcy5uYW1lc3BhY2VOYW1lO1xuICAgIHRoaXMudHlwZSA9IHByb3BzLnR5cGU7XG4gIH1cbn0iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFtZXNwYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibmFtZXNwYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBK0RBLElBQVksYUFpQlg7QUFqQkQsV0FBWSxhQUFhO0lBQ3ZCOztPQUVHO0lBQ0gsOEJBQWEsQ0FBQTtJQUViOzs7T0FHRztJQUNILDJDQUEwQixDQUFBO0lBRTFCOzs7T0FHRztJQUNILHlDQUF3QixDQUFBO0FBQzFCLENBQUMsRUFqQlcsYUFBYSxHQUFiLHFCQUFhLEtBQWIscUJBQWEsUUFpQnhCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVJlc291cmNlIH0gZnJvbSAnQGF3cy1jZGsvY2RrJztcblxuZXhwb3J0IGludGVyZmFjZSBJTmFtZXNwYWNlIGV4dGVuZHMgSVJlc291cmNlIHtcbiAgLyoqXG4gICAqIEEgbmFtZSBmb3IgdGhlIE5hbWVzcGFjZS5cbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZXNwYWNlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lc3BhY2UgSWQgZm9yIHRoZSBOYW1lc3BhY2UuXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IG5hbWVzcGFjZUlkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWVzcGFjZSBBUk4gZm9yIHRoZSBOYW1lc3BhY2UuXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IG5hbWVzcGFjZUFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUeXBlIG9mIE5hbWVzcGFjZVxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZTogTmFtZXNwYWNlVHlwZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCYXNlTmFtZXNwYWNlUHJvcHMge1xuICAvKipcbiAgICogQSBuYW1lIGZvciB0aGUgTmFtZXNwYWNlLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIGRlc2NyaXB0aW9uIG9mIHRoZSBOYW1lc3BhY2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vbmVcbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5hbWVzcGFjZUF0dHJpYnV0ZXMge1xuICAvKipcbiAgICogQSBuYW1lIGZvciB0aGUgTmFtZXNwYWNlLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZXNwYWNlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lc3BhY2UgSWQgZm9yIHRoZSBOYW1lc3BhY2UuXG4gICAqL1xuICByZWFkb25seSBuYW1lc3BhY2VJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lc3BhY2UgQVJOIGZvciB0aGUgTmFtZXNwYWNlLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZXNwYWNlQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFR5cGUgb2YgTmFtZXNwYWNlLiBWYWxpZCB2YWx1ZXM6IEhUVFAsIEROU19QVUJMSUMsIG9yIEROU19QUklWQVRFXG4gICAqL1xuICByZWFkb25seSB0eXBlOiBOYW1lc3BhY2VUeXBlO1xufVxuXG5leHBvcnQgZW51bSBOYW1lc3BhY2VUeXBlIHtcbiAgLyoqXG4gICAqIENob29zZSB0aGlzIG9wdGlvbiBpZiB5b3Ugd2FudCB5b3VyIGFwcGxpY2F0aW9uIHRvIHVzZSBvbmx5IEFQSSBjYWxscyB0byBkaXNjb3ZlciByZWdpc3RlcmVkIGluc3RhbmNlcy5cbiAgICovXG4gIEh0dHAgPSBcIkhUVFBcIixcblxuICAvKipcbiAgICogQ2hvb3NlIHRoaXMgb3B0aW9uIGlmIHlvdSB3YW50IHlvdXIgYXBwbGljYXRpb24gdG8gYmUgYWJsZSB0byBkaXNjb3ZlciBpbnN0YW5jZXMgdXNpbmcgZWl0aGVyIEFQSSBjYWxscyBvciB1c2luZ1xuICAgKiBETlMgcXVlcmllcyBpbiBhIFZQQy5cbiAgICovXG4gIERuc1ByaXZhdGUgPSBcIkROU19QUklWQVRFXCIsXG5cbiAgLyoqXG4gICAqIENob29zZSB0aGlzIG9wdGlvbiBpZiB5b3Ugd2FudCB5b3VyIGFwcGxpY2F0aW9uIHRvIGJlIGFibGUgdG8gZGlzY292ZXIgaW5zdGFuY2VzIHVzaW5nIGVpdGhlciBBUEkgY2FsbHMgb3IgdXNpbmdcbiAgICogcHVibGljIEROUyBxdWVyaWVzLiBZb3UgYXJlbid0IHJlcXVpcmVkIHRvIHVzZSBib3RoIG1ldGhvZHMuXG4gICAqL1xuICBEbnNQdWJsaWMgPSBcIkROU19QVUJMSUNcIixcbn1cbiJdfQ==

@@ -12,2 +12,8 @@ import cdk = require('@aws-cdk/cdk');

}
/**
* Instance accessible using values other than an IP address or a domain name (CNAME).
* Specify the other values in Custom attributes.
*
* @resource AWS::ServiceDiscovery::Instance
*/
export declare class NonIpInstance extends InstanceBase {

@@ -14,0 +20,0 @@ /**

@@ -6,3 +6,3 @@ "use strict";

const servicediscovery_generated_1 = require("./servicediscovery.generated");
/*
/**
* Instance accessible using values other than an IP address or a domain name (CNAME).

@@ -34,2 +34,2 @@ * Specify the other values in Custom attributes.

exports.NonIpInstance = NonIpInstance;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9uLWlwLWluc3RhbmNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibm9uLWlwLWluc3RhbmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EseUNBQTZEO0FBQzdELDJDQUE0QztBQUU1Qyw2RUFBMkQ7QUFnQjNEOzs7OztHQUtHO0FBQ0gsTUFBYSxhQUFjLFNBQVEsdUJBQVk7SUFXN0MsWUFBWSxLQUFvQixFQUFFLEVBQVUsRUFBRSxLQUF5QjtRQUNyRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxLQUFLLHlCQUFhLENBQUMsSUFBSSxFQUFFO1lBQ3ZELE1BQU0sSUFBSSxLQUFLLENBQUMsbUVBQW1FLENBQUMsQ0FBQztTQUN0RjtRQUVELElBQUksS0FBSyxDQUFDLGdCQUFnQixLQUFLLFNBQVMsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDNUYsTUFBTSxJQUFJLEtBQUssQ0FBQyx3RUFBd0UsQ0FBQyxDQUFDO1NBQzNGO1FBRUQsTUFBTSxRQUFRLEdBQUcsSUFBSSx3Q0FBVyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDakQsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQ3ZELFNBQVMsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVM7WUFDbEMsa0JBQWtCLEVBQUU7Z0JBQ2xCLEdBQUcsS0FBSyxDQUFDLGdCQUFnQjthQUMxQjtTQUNGLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUM3QixJQUFJLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQyxVQUFVLENBQUM7SUFDeEMsQ0FBQztDQUNGO0FBakNELHNDQWlDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCB7IEJhc2VJbnN0YW5jZVByb3BzLCBJbnN0YW5jZUJhc2UgfSBmcm9tICcuL2luc3RhbmNlJztcbmltcG9ydCB7IE5hbWVzcGFjZVR5cGUgfSBmcm9tICcuL25hbWVzcGFjZSc7XG5pbXBvcnQgeyBJU2VydmljZSB9IGZyb20gJy4vc2VydmljZSc7XG5pbXBvcnQgeyBDZm5JbnN0YW5jZSB9IGZyb20gJy4vc2VydmljZWRpc2NvdmVyeS5nZW5lcmF0ZWQnO1xuXG4vLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tZW1wdHktaW50ZXJmYWNlXG5leHBvcnQgaW50ZXJmYWNlIE5vbklwSW5zdGFuY2VCYXNlUHJvcHMgZXh0ZW5kcyBCYXNlSW5zdGFuY2VQcm9wcyB7XG59XG5cbi8qXG4gKiBQcm9wZXJ0aWVzIGZvciBhIE5vbklwSW5zdGFuY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOb25JcEluc3RhbmNlUHJvcHMgZXh0ZW5kcyBOb25JcEluc3RhbmNlQmFzZVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZG1hcCBzZXJ2aWNlIHRoaXMgcmVzb3VyY2UgaXMgcmVnaXN0ZXJlZCB0by5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2U6IElTZXJ2aWNlO1xufVxuXG4vKlxuICogSW5zdGFuY2UgYWNjZXNzaWJsZSB1c2luZyB2YWx1ZXMgb3RoZXIgdGhhbiBhbiBJUCBhZGRyZXNzIG9yIGEgZG9tYWluIG5hbWUgKENOQU1FKS5cbiAqIFNwZWNpZnkgdGhlIG90aGVyIHZhbHVlcyBpbiBDdXN0b20gYXR0cmlidXRlcy5cbiAqXG4gKiBAcmVzb3VyY2UgQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpJbnN0YW5jZVxuICovXG5leHBvcnQgY2xhc3MgTm9uSXBJbnN0YW5jZSBleHRlbmRzIEluc3RhbmNlQmFzZSB7XG4gIC8qKlxuICAgKiBUaGUgSWQgb2YgdGhlIGluc3RhbmNlXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaW5zdGFuY2VJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRtYXAgc2VydmljZSB0byB3aGljaCB0aGUgaW5zdGFuY2UgaXMgcmVnaXN0ZXJlZC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzZXJ2aWNlOiBJU2VydmljZTtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogY2RrLkNvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IE5vbklwSW5zdGFuY2VQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBpZiAocHJvcHMuc2VydmljZS5uYW1lc3BhY2UudHlwZSAhPT0gTmFtZXNwYWNlVHlwZS5IdHRwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoaXMgdHlwZSBvZiBpbnN0YW5jZSBjYW4gb25seSBiZSByZWdpc3RlcmVkIGZvciBIVFRQIG5hbWVzcGFjZXMuJyk7XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLmN1c3RvbUF0dHJpYnV0ZXMgPT09IHVuZGVmaW5lZCB8fCBPYmplY3Qua2V5cyhwcm9wcy5jdXN0b21BdHRyaWJ1dGVzKS5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignWW91IG11c3Qgc3BlY2lmeSBhdCBsZWFzdCBvbmUgY3VzdG9tIGF0dHJpYnV0ZSBmb3IgdGhpcyBpbnN0YW5jZSB0eXBlLicpO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc291cmNlID0gbmV3IENmbkluc3RhbmNlKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIGluc3RhbmNlSWQ6IHByb3BzLmluc3RhbmNlSWQgfHwgdGhpcy51bmlxdWVJbnN0YW5jZUlkKCksXG4gICAgICBzZXJ2aWNlSWQ6IHByb3BzLnNlcnZpY2Uuc2VydmljZUlkLFxuICAgICAgaW5zdGFuY2VBdHRyaWJ1dGVzOiB7XG4gICAgICAgIC4uLnByb3BzLmN1c3RvbUF0dHJpYnV0ZXNcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMuc2VydmljZSA9IHByb3BzLnNlcnZpY2U7XG4gICAgdGhpcy5pbnN0YW5jZUlkID0gcmVzb3VyY2UuaW5zdGFuY2VJZDtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9uLWlwLWluc3RhbmNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibm9uLWlwLWluc3RhbmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EseUNBQTZEO0FBQzdELDJDQUE0QztBQUU1Qyw2RUFBMkQ7QUFnQjNEOzs7OztHQUtHO0FBQ0gsTUFBYSxhQUFjLFNBQVEsdUJBQVk7SUFXN0MsWUFBWSxLQUFvQixFQUFFLEVBQVUsRUFBRSxLQUF5QjtRQUNyRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxLQUFLLHlCQUFhLENBQUMsSUFBSSxFQUFFO1lBQ3ZELE1BQU0sSUFBSSxLQUFLLENBQUMsbUVBQW1FLENBQUMsQ0FBQztTQUN0RjtRQUVELElBQUksS0FBSyxDQUFDLGdCQUFnQixLQUFLLFNBQVMsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDNUYsTUFBTSxJQUFJLEtBQUssQ0FBQyx3RUFBd0UsQ0FBQyxDQUFDO1NBQzNGO1FBRUQsTUFBTSxRQUFRLEdBQUcsSUFBSSx3Q0FBVyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDakQsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQ3ZELFNBQVMsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVM7WUFDbEMsa0JBQWtCLEVBQUU7Z0JBQ2xCLEdBQUcsS0FBSyxDQUFDLGdCQUFnQjthQUMxQjtTQUNGLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUM3QixJQUFJLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQyxVQUFVLENBQUM7SUFDeEMsQ0FBQztDQUNGO0FBakNELHNDQWlDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCB7IEJhc2VJbnN0YW5jZVByb3BzLCBJbnN0YW5jZUJhc2UgfSBmcm9tICcuL2luc3RhbmNlJztcbmltcG9ydCB7IE5hbWVzcGFjZVR5cGUgfSBmcm9tICcuL25hbWVzcGFjZSc7XG5pbXBvcnQgeyBJU2VydmljZSB9IGZyb20gJy4vc2VydmljZSc7XG5pbXBvcnQgeyBDZm5JbnN0YW5jZSB9IGZyb20gJy4vc2VydmljZWRpc2NvdmVyeS5nZW5lcmF0ZWQnO1xuXG4vLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tZW1wdHktaW50ZXJmYWNlXG5leHBvcnQgaW50ZXJmYWNlIE5vbklwSW5zdGFuY2VCYXNlUHJvcHMgZXh0ZW5kcyBCYXNlSW5zdGFuY2VQcm9wcyB7XG59XG5cbi8qXG4gKiBQcm9wZXJ0aWVzIGZvciBhIE5vbklwSW5zdGFuY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOb25JcEluc3RhbmNlUHJvcHMgZXh0ZW5kcyBOb25JcEluc3RhbmNlQmFzZVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZG1hcCBzZXJ2aWNlIHRoaXMgcmVzb3VyY2UgaXMgcmVnaXN0ZXJlZCB0by5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2U6IElTZXJ2aWNlO1xufVxuXG4vKipcbiAqIEluc3RhbmNlIGFjY2Vzc2libGUgdXNpbmcgdmFsdWVzIG90aGVyIHRoYW4gYW4gSVAgYWRkcmVzcyBvciBhIGRvbWFpbiBuYW1lIChDTkFNRSkuXG4gKiBTcGVjaWZ5IHRoZSBvdGhlciB2YWx1ZXMgaW4gQ3VzdG9tIGF0dHJpYnV0ZXMuXG4gKlxuICogQHJlc291cmNlIEFXUzo6U2VydmljZURpc2NvdmVyeTo6SW5zdGFuY2VcbiAqL1xuZXhwb3J0IGNsYXNzIE5vbklwSW5zdGFuY2UgZXh0ZW5kcyBJbnN0YW5jZUJhc2Uge1xuICAvKipcbiAgICogVGhlIElkIG9mIHRoZSBpbnN0YW5jZVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGluc3RhbmNlSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIENsb3VkbWFwIHNlcnZpY2UgdG8gd2hpY2ggdGhlIGluc3RhbmNlIGlzIHJlZ2lzdGVyZWQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgc2VydmljZTogSVNlcnZpY2U7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IGNkay5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBOb25JcEluc3RhbmNlUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgaWYgKHByb3BzLnNlcnZpY2UubmFtZXNwYWNlLnR5cGUgIT09IE5hbWVzcGFjZVR5cGUuSHR0cCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGlzIHR5cGUgb2YgaW5zdGFuY2UgY2FuIG9ubHkgYmUgcmVnaXN0ZXJlZCBmb3IgSFRUUCBuYW1lc3BhY2VzLicpO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5jdXN0b21BdHRyaWJ1dGVzID09PSB1bmRlZmluZWQgfHwgT2JqZWN0LmtleXMocHJvcHMuY3VzdG9tQXR0cmlidXRlcykubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1lvdSBtdXN0IHNwZWNpZnkgYXQgbGVhc3Qgb25lIGN1c3RvbSBhdHRyaWJ1dGUgZm9yIHRoaXMgaW5zdGFuY2UgdHlwZS4nKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXNvdXJjZSA9IG5ldyBDZm5JbnN0YW5jZSh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICBpbnN0YW5jZUlkOiBwcm9wcy5pbnN0YW5jZUlkIHx8IHRoaXMudW5pcXVlSW5zdGFuY2VJZCgpLFxuICAgICAgc2VydmljZUlkOiBwcm9wcy5zZXJ2aWNlLnNlcnZpY2VJZCxcbiAgICAgIGluc3RhbmNlQXR0cmlidXRlczoge1xuICAgICAgICAuLi5wcm9wcy5jdXN0b21BdHRyaWJ1dGVzXG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLnNlcnZpY2UgPSBwcm9wcy5zZXJ2aWNlO1xuICAgIHRoaXMuaW5zdGFuY2VJZCA9IHJlc291cmNlLmluc3RhbmNlSWQ7XG4gIH1cbn1cbiJdfQ==
import ec2 = require('@aws-cdk/aws-ec2');
import { Construct } from '@aws-cdk/cdk';
import { BaseNamespaceProps, INamespace, NamespaceBase, NamespaceType } from './namespace';
import { Construct, Resource } from '@aws-cdk/cdk';
import { BaseNamespaceProps, INamespace, NamespaceType } from './namespace';
import { DnsServiceProps, Service } from './service';

@@ -9,15 +9,19 @@ export interface PrivateDnsNamespaceProps extends BaseNamespaceProps {

*/
readonly vpc: ec2.IVpcNetwork;
readonly vpc: ec2.IVpc;
}
export interface IPrivateDnsNamespace extends INamespace {
}
export interface PrivateDnsNamespaceAttributes {
/**
* The ID of the private namespace.
* @attribute
* A name for the Namespace.
*/
readonly privateDnsNamespaceId: string;
readonly namespaceName: string;
/**
* The Amazon Resource Name (ARN) of the private namespace.
* @attribute
* Namespace Id for the Namespace.
*/
readonly privateDnsNamespaceArn: string;
readonly namespaceId: string;
/**
* Namespace ARN for the Namespace.
*/
readonly namespaceArn: string;
}

@@ -27,3 +31,4 @@ /**

*/
export declare class PrivateDnsNamespace extends NamespaceBase implements IPrivateDnsNamespace {
export declare class PrivateDnsNamespace extends Resource implements IPrivateDnsNamespace {
static fromPrivateDnsNamespaceAttributes(scope: Construct, id: string, attrs: PrivateDnsNamespaceAttributes): IPrivateDnsNamespace;
/**

@@ -46,3 +51,7 @@ * The name of the PrivateDnsNamespace.

constructor(scope: Construct, id: string, props: PrivateDnsNamespaceProps);
/** @attribute */
readonly privateDnsNamespaceArn: string;
/** @attribute */
readonly privateDnsNamespaceName: string;
/** @attribute */
readonly privateDnsNamespaceId: string;

@@ -49,0 +58,0 @@ /**

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const cdk_1 = require("@aws-cdk/cdk");
const namespace_1 = require("./namespace");

@@ -9,3 +10,15 @@ const service_1 = require("./service");

*/
class PrivateDnsNamespace extends namespace_1.NamespaceBase {
class PrivateDnsNamespace extends cdk_1.Resource {
static fromPrivateDnsNamespaceAttributes(scope, id, attrs) {
class Import extends cdk_1.Resource {
constructor() {
super(...arguments);
this.namespaceName = attrs.namespaceName;
this.namespaceId = attrs.namespaceId;
this.namespaceArn = attrs.namespaceArn;
this.type = namespace_1.NamespaceType.DnsPrivate;
}
}
return new Import(scope, id);
}
constructor(scope, id, props) {

@@ -26,3 +39,7 @@ super(scope, id);

}
/** @attribute */
get privateDnsNamespaceArn() { return this.namespaceArn; }
/** @attribute */
get privateDnsNamespaceName() { return this.namespaceName; }
/** @attribute */
get privateDnsNamespaceId() { return this.namespaceId; }

@@ -40,2 +57,2 @@ /**

exports.PrivateDnsNamespace = PrivateDnsNamespace;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZS1kbnMtbmFtZXNwYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsicHJpdmF0ZS1kbnMtbmFtZXNwYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUEsMkNBQTJGO0FBQzNGLHVDQUFxRDtBQUNyRCw2RUFBcUU7QUF1QnJFOztHQUVHO0FBQ0gsTUFBYSxtQkFBb0IsU0FBUSx5QkFBYTtJQXFCcEQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUErQjtRQUN2RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxTQUFTLEVBQUU7WUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxnREFBZ0QsQ0FBQyxDQUFDO1NBQ25FO1FBRUQsTUFBTSxFQUFFLEdBQUcsSUFBSSxtREFBc0IsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ3RELElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7WUFDOUIsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSztTQUNyQixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUMscUJBQXFCLENBQUM7UUFDNUMsSUFBSSxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUMsc0JBQXNCLENBQUM7UUFDOUMsSUFBSSxDQUFDLElBQUksR0FBRyx5QkFBYSxDQUFDLFVBQVUsQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFBVyxzQkFBc0IsS0FBSyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQ2pFLElBQVcscUJBQXFCLEtBQUssT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUUvRDs7T0FFRztJQUNJLGFBQWEsQ0FBQyxFQUFVLEVBQUUsS0FBdUI7UUFDdEQsT0FBTyxJQUFJLGlCQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRTtZQUMzQixTQUFTLEVBQUUsSUFBSTtZQUNmLEdBQUcsS0FBSztTQUNULENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQW5ERCxrREFtREMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZWMyID0gcmVxdWlyZSgnQGF3cy1jZGsvYXdzLWVjMicpO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnQGF3cy1jZGsvY2RrJztcbmltcG9ydCB7IEJhc2VOYW1lc3BhY2VQcm9wcywgSU5hbWVzcGFjZSwgTmFtZXNwYWNlQmFzZSwgTmFtZXNwYWNlVHlwZSB9IGZyb20gJy4vbmFtZXNwYWNlJztcbmltcG9ydCB7IERuc1NlcnZpY2VQcm9wcywgU2VydmljZSB9IGZyb20gJy4vc2VydmljZSc7XG5pbXBvcnQgeyBDZm5Qcml2YXRlRG5zTmFtZXNwYWNlfSBmcm9tICcuL3NlcnZpY2VkaXNjb3ZlcnkuZ2VuZXJhdGVkJztcblxuZXhwb3J0IGludGVyZmFjZSBQcml2YXRlRG5zTmFtZXNwYWNlUHJvcHMgZXh0ZW5kcyBCYXNlTmFtZXNwYWNlUHJvcHMge1xuICAvKipcbiAgICogVGhlIEFtYXpvbiBWUEMgdGhhdCB5b3Ugd2FudCB0byBhc3NvY2lhdGUgdGhlIG5hbWVzcGFjZSB3aXRoLlxuICAgKi9cbiAgcmVhZG9ubHkgdnBjOiBlYzIuSVZwY05ldHdvcms7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVByaXZhdGVEbnNOYW1lc3BhY2UgZXh0ZW5kcyBJTmFtZXNwYWNlIHtcbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgcHJpdmF0ZSBuYW1lc3BhY2UuXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IHByaXZhdGVEbnNOYW1lc3BhY2VJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQW1hem9uIFJlc291cmNlIE5hbWUgKEFSTikgb2YgdGhlIHByaXZhdGUgbmFtZXNwYWNlLlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBwcml2YXRlRG5zTmFtZXNwYWNlQXJuOiBzdHJpbmc7XG59XG5cbi8qKlxuICogRGVmaW5lIGEgU2VydmljZSBEaXNjb3ZlcnkgSFRUUCBOYW1lc3BhY2VcbiAqL1xuZXhwb3J0IGNsYXNzIFByaXZhdGVEbnNOYW1lc3BhY2UgZXh0ZW5kcyBOYW1lc3BhY2VCYXNlIGltcGxlbWVudHMgSVByaXZhdGVEbnNOYW1lc3BhY2Uge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIFByaXZhdGVEbnNOYW1lc3BhY2UuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbmFtZXNwYWNlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lc3BhY2UgSWQgb2YgdGhlIFByaXZhdGVEbnNOYW1lc3BhY2UuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbmFtZXNwYWNlSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZXNwYWNlIEFybiBvZiB0aGUgbmFtZXNwYWNlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG5hbWVzcGFjZUFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUeXBlIG9mIHRoZSBuYW1lc3BhY2UuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdHlwZTogTmFtZXNwYWNlVHlwZTtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogUHJpdmF0ZURuc05hbWVzcGFjZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICBpZiAocHJvcHMudnBjID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVlBDIG11c3QgYmUgc3BlY2lmaWVkIGZvciBQcml2YXRlRE5TTmFtZXNwYWNlc2ApO1xuICAgIH1cblxuICAgIGNvbnN0IG5zID0gbmV3IENmblByaXZhdGVEbnNOYW1lc3BhY2UodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgbmFtZTogcHJvcHMubmFtZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBwcm9wcy5kZXNjcmlwdGlvbixcbiAgICAgIHZwYzogcHJvcHMudnBjLnZwY0lkXG4gICAgfSk7XG5cbiAgICB0aGlzLm5hbWVzcGFjZU5hbWUgPSBwcm9wcy5uYW1lO1xuICAgIHRoaXMubmFtZXNwYWNlSWQgPSBucy5wcml2YXRlRG5zTmFtZXNwYWNlSWQ7XG4gICAgdGhpcy5uYW1lc3BhY2VBcm4gPSBucy5wcml2YXRlRG5zTmFtZXNwYWNlQXJuO1xuICAgIHRoaXMudHlwZSA9IE5hbWVzcGFjZVR5cGUuRG5zUHJpdmF0ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcHJpdmF0ZURuc05hbWVzcGFjZUFybigpIHsgcmV0dXJuIHRoaXMubmFtZXNwYWNlQXJuOyB9XG4gIHB1YmxpYyBnZXQgcHJpdmF0ZURuc05hbWVzcGFjZUlkKCkgeyByZXR1cm4gdGhpcy5uYW1lc3BhY2VJZDsgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgc2VydmljZSB3aXRoaW4gdGhlIG5hbWVzcGFjZVxuICAgKi9cbiAgcHVibGljIGNyZWF0ZVNlcnZpY2UoaWQ6IHN0cmluZywgcHJvcHM/OiBEbnNTZXJ2aWNlUHJvcHMpOiBTZXJ2aWNlIHtcbiAgICByZXR1cm4gbmV3IFNlcnZpY2UodGhpcywgaWQsIHtcbiAgICAgIG5hbWVzcGFjZTogdGhpcyxcbiAgICAgIC4uLnByb3BzXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZS1kbnMtbmFtZXNwYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsicHJpdmF0ZS1kbnMtbmFtZXNwYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0Esc0NBQW1EO0FBQ25ELDJDQUE0RTtBQUM1RSx1Q0FBcUQ7QUFDckQsNkVBQXFFO0FBNEJyRTs7R0FFRztBQUNILE1BQWEsbUJBQW9CLFNBQVEsY0FBUTtJQUV4QyxNQUFNLENBQUMsaUNBQWlDLENBQUMsS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBb0M7UUFDaEgsTUFBTSxNQUFPLFNBQVEsY0FBUTtZQUE3Qjs7Z0JBQ1Msa0JBQWEsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDO2dCQUNwQyxnQkFBVyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUM7Z0JBQ2hDLGlCQUFZLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQztnQkFDbEMsU0FBSSxHQUFHLHlCQUFhLENBQUMsVUFBVSxDQUFDO1lBQ3pDLENBQUM7U0FBQTtRQUNELE9BQU8sSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFzQkQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUErQjtRQUN2RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxTQUFTLEVBQUU7WUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxnREFBZ0QsQ0FBQyxDQUFDO1NBQ25FO1FBRUQsTUFBTSxFQUFFLEdBQUcsSUFBSSxtREFBc0IsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ3RELElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7WUFDOUIsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSztTQUNyQixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUMscUJBQXFCLENBQUM7UUFDNUMsSUFBSSxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUMsc0JBQXNCLENBQUM7UUFDOUMsSUFBSSxDQUFDLElBQUksR0FBRyx5QkFBYSxDQUFDLFVBQVUsQ0FBQztJQUN2QyxDQUFDO0lBRUQsaUJBQWlCO0lBQ2pCLElBQVcsc0JBQXNCLEtBQUssT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztJQUVqRSxpQkFBaUI7SUFDakIsSUFBVyx1QkFBdUIsS0FBSyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBRW5FLGlCQUFpQjtJQUNqQixJQUFXLHFCQUFxQixLQUFLLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFFL0Q7O09BRUc7SUFDSSxhQUFhLENBQUMsRUFBVSxFQUFFLEtBQXVCO1FBQ3RELE9BQU8sSUFBSSxpQkFBTyxDQUFDLElBQUksRUFBRSxFQUFFLEVBQUU7WUFDM0IsU0FBUyxFQUFFLElBQUk7WUFDZixHQUFHLEtBQUs7U0FDVCxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFwRUQsa0RBb0VDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGVjMiA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2F3cy1lYzInKTtcbmltcG9ydCB7IENvbnN0cnVjdCwgUmVzb3VyY2UgfSBmcm9tICdAYXdzLWNkay9jZGsnO1xuaW1wb3J0IHsgQmFzZU5hbWVzcGFjZVByb3BzLCBJTmFtZXNwYWNlLCBOYW1lc3BhY2VUeXBlIH0gZnJvbSAnLi9uYW1lc3BhY2UnO1xuaW1wb3J0IHsgRG5zU2VydmljZVByb3BzLCBTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlJztcbmltcG9ydCB7IENmblByaXZhdGVEbnNOYW1lc3BhY2V9IGZyb20gJy4vc2VydmljZWRpc2NvdmVyeS5nZW5lcmF0ZWQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFByaXZhdGVEbnNOYW1lc3BhY2VQcm9wcyBleHRlbmRzIEJhc2VOYW1lc3BhY2VQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgQW1hem9uIFZQQyB0aGF0IHlvdSB3YW50IHRvIGFzc29jaWF0ZSB0aGUgbmFtZXNwYWNlIHdpdGguXG4gICAqL1xuICByZWFkb25seSB2cGM6IGVjMi5JVnBjO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElQcml2YXRlRG5zTmFtZXNwYWNlIGV4dGVuZHMgSU5hbWVzcGFjZSB7IH1cblxuZXhwb3J0IGludGVyZmFjZSBQcml2YXRlRG5zTmFtZXNwYWNlQXR0cmlidXRlcyB7XG4gIC8qKlxuICAgKiBBIG5hbWUgZm9yIHRoZSBOYW1lc3BhY2UuXG4gICAqL1xuICByZWFkb25seSBuYW1lc3BhY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWVzcGFjZSBJZCBmb3IgdGhlIE5hbWVzcGFjZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWVzcGFjZUlkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWVzcGFjZSBBUk4gZm9yIHRoZSBOYW1lc3BhY2UuXG4gICAqL1xuICByZWFkb25seSBuYW1lc3BhY2VBcm46IHN0cmluZztcbn1cblxuLyoqXG4gKiBEZWZpbmUgYSBTZXJ2aWNlIERpc2NvdmVyeSBIVFRQIE5hbWVzcGFjZVxuICovXG5leHBvcnQgY2xhc3MgUHJpdmF0ZURuc05hbWVzcGFjZSBleHRlbmRzIFJlc291cmNlIGltcGxlbWVudHMgSVByaXZhdGVEbnNOYW1lc3BhY2Uge1xuXG4gIHB1YmxpYyBzdGF0aWMgZnJvbVByaXZhdGVEbnNOYW1lc3BhY2VBdHRyaWJ1dGVzKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIGF0dHJzOiBQcml2YXRlRG5zTmFtZXNwYWNlQXR0cmlidXRlcyk6IElQcml2YXRlRG5zTmFtZXNwYWNlIHtcbiAgICBjbGFzcyBJbXBvcnQgZXh0ZW5kcyBSZXNvdXJjZSBpbXBsZW1lbnRzIElQcml2YXRlRG5zTmFtZXNwYWNlIHtcbiAgICAgIHB1YmxpYyBuYW1lc3BhY2VOYW1lID0gYXR0cnMubmFtZXNwYWNlTmFtZTtcbiAgICAgIHB1YmxpYyBuYW1lc3BhY2VJZCA9IGF0dHJzLm5hbWVzcGFjZUlkO1xuICAgICAgcHVibGljIG5hbWVzcGFjZUFybiA9IGF0dHJzLm5hbWVzcGFjZUFybjtcbiAgICAgIHB1YmxpYyB0eXBlID0gTmFtZXNwYWNlVHlwZS5EbnNQcml2YXRlO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IEltcG9ydChzY29wZSwgaWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBQcml2YXRlRG5zTmFtZXNwYWNlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG5hbWVzcGFjZU5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZXNwYWNlIElkIG9mIHRoZSBQcml2YXRlRG5zTmFtZXNwYWNlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG5hbWVzcGFjZUlkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWVzcGFjZSBBcm4gb2YgdGhlIG5hbWVzcGFjZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBuYW1lc3BhY2VBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVHlwZSBvZiB0aGUgbmFtZXNwYWNlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHR5cGU6IE5hbWVzcGFjZVR5cGU7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFByaXZhdGVEbnNOYW1lc3BhY2VQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgaWYgKHByb3BzLnZwYyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFZQQyBtdXN0IGJlIHNwZWNpZmllZCBmb3IgUHJpdmF0ZUROU05hbWVzcGFjZXNgKTtcbiAgICB9XG5cbiAgICBjb25zdCBucyA9IG5ldyBDZm5Qcml2YXRlRG5zTmFtZXNwYWNlKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIG5hbWU6IHByb3BzLm5hbWUsXG4gICAgICBkZXNjcmlwdGlvbjogcHJvcHMuZGVzY3JpcHRpb24sXG4gICAgICB2cGM6IHByb3BzLnZwYy52cGNJZFxuICAgIH0pO1xuXG4gICAgdGhpcy5uYW1lc3BhY2VOYW1lID0gcHJvcHMubmFtZTtcbiAgICB0aGlzLm5hbWVzcGFjZUlkID0gbnMucHJpdmF0ZURuc05hbWVzcGFjZUlkO1xuICAgIHRoaXMubmFtZXNwYWNlQXJuID0gbnMucHJpdmF0ZURuc05hbWVzcGFjZUFybjtcbiAgICB0aGlzLnR5cGUgPSBOYW1lc3BhY2VUeXBlLkRuc1ByaXZhdGU7XG4gIH1cblxuICAvKiogQGF0dHJpYnV0ZSAqL1xuICBwdWJsaWMgZ2V0IHByaXZhdGVEbnNOYW1lc3BhY2VBcm4oKSB7IHJldHVybiB0aGlzLm5hbWVzcGFjZUFybjsgfVxuXG4gIC8qKiBAYXR0cmlidXRlICovXG4gIHB1YmxpYyBnZXQgcHJpdmF0ZURuc05hbWVzcGFjZU5hbWUoKSB7IHJldHVybiB0aGlzLm5hbWVzcGFjZU5hbWU7IH1cblxuICAvKiogQGF0dHJpYnV0ZSAqL1xuICBwdWJsaWMgZ2V0IHByaXZhdGVEbnNOYW1lc3BhY2VJZCgpIHsgcmV0dXJuIHRoaXMubmFtZXNwYWNlSWQ7IH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHNlcnZpY2Ugd2l0aGluIHRoZSBuYW1lc3BhY2VcbiAgICovXG4gIHB1YmxpYyBjcmVhdGVTZXJ2aWNlKGlkOiBzdHJpbmcsIHByb3BzPzogRG5zU2VydmljZVByb3BzKTogU2VydmljZSB7XG4gICAgcmV0dXJuIG5ldyBTZXJ2aWNlKHRoaXMsIGlkLCB7XG4gICAgICBuYW1lc3BhY2U6IHRoaXMsXG4gICAgICAuLi5wcm9wc1xuICAgIH0pO1xuICB9XG59XG4iXX0=

@@ -1,3 +0,3 @@

import { Construct } from '@aws-cdk/cdk';
import { BaseNamespaceProps, INamespace, NamespaceBase, NamespaceType } from './namespace';
import { Construct, Resource } from '@aws-cdk/cdk';
import { BaseNamespaceProps, INamespace, NamespaceType } from './namespace';
import { DnsServiceProps, Service } from './service';

@@ -7,12 +7,16 @@ export interface PublicDnsNamespaceProps extends BaseNamespaceProps {

export interface IPublicDnsNamespace extends INamespace {
}
export interface PublicDnsNamespaceAttributes {
/**
* The ID of the public namespace.
* @attribute
* A name for the Namespace.
*/
readonly publicDnsNamespaceId: string;
readonly namespaceName: string;
/**
* The Amazon Resource Name (ARN) of the public namespace.
* @attribute
* Namespace Id for the Namespace.
*/
readonly publicDnsNamespaceArn: string;
readonly namespaceId: string;
/**
* Namespace ARN for the Namespace.
*/
readonly namespaceArn: string;
}

@@ -22,3 +26,4 @@ /**

*/
export declare class PublicDnsNamespace extends NamespaceBase implements IPublicDnsNamespace {
export declare class PublicDnsNamespace extends Resource implements IPublicDnsNamespace {
static fromPublicDnsNamespaceAttributes(scope: Construct, id: string, attrs: PublicDnsNamespaceAttributes): IPublicDnsNamespace;
/**

@@ -41,3 +46,7 @@ * A name for the namespace.

constructor(scope: Construct, id: string, props: PublicDnsNamespaceProps);
/** @attribute */
readonly publicDnsNamespaceArn: string;
/** @attribute */
readonly publicDnsNamespaceName: string;
/** @attribute */
readonly publicDnsNamespaceId: string;

@@ -44,0 +53,0 @@ /**

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const cdk_1 = require("@aws-cdk/cdk");
const namespace_1 = require("./namespace");

@@ -9,3 +10,15 @@ const service_1 = require("./service");

*/
class PublicDnsNamespace extends namespace_1.NamespaceBase {
class PublicDnsNamespace extends cdk_1.Resource {
static fromPublicDnsNamespaceAttributes(scope, id, attrs) {
class Import extends cdk_1.Resource {
constructor() {
super(...arguments);
this.namespaceName = attrs.namespaceName;
this.namespaceId = attrs.namespaceId;
this.namespaceArn = attrs.namespaceArn;
this.type = namespace_1.NamespaceType.DnsPublic;
}
}
return new Import(scope, id);
}
constructor(scope, id, props) {

@@ -22,3 +35,7 @@ super(scope, id);

}
/** @attribute */
get publicDnsNamespaceArn() { return this.namespaceArn; }
/** @attribute */
get publicDnsNamespaceName() { return this.namespaceName; }
/** @attribute */
get publicDnsNamespaceId() { return this.namespaceId; }

@@ -36,2 +53,2 @@ /**

exports.PublicDnsNamespace = PublicDnsNamespace;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWRucy1uYW1lc3BhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJwdWJsaWMtZG5zLW5hbWVzcGFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUNBLDJDQUEyRjtBQUMzRix1Q0FBcUQ7QUFDckQsNkVBQW9FO0FBa0JwRTs7R0FFRztBQUNILE1BQWEsa0JBQW1CLFNBQVEseUJBQWE7SUFxQm5ELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBOEI7UUFDdEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixNQUFNLEVBQUUsR0FBRyxJQUFJLGtEQUFxQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDckQsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO1lBQ2hCLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztTQUMvQixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUM7UUFDM0MsSUFBSSxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUMscUJBQXFCLENBQUM7UUFDN0MsSUFBSSxDQUFDLElBQUksR0FBRyx5QkFBYSxDQUFDLFNBQVMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBVyxxQkFBcUIsS0FBSyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQ2hFLElBQVcsb0JBQW9CLEtBQUssT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUU5RDs7T0FFRztJQUNJLGFBQWEsQ0FBQyxFQUFVLEVBQUUsS0FBdUI7UUFDdEQsT0FBTyxJQUFJLGlCQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRTtZQUMzQixTQUFTLEVBQUUsSUFBSTtZQUNmLEdBQUcsS0FBSztTQUNULENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQS9DRCxnREErQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdAYXdzLWNkay9jZGsnO1xuaW1wb3J0IHsgQmFzZU5hbWVzcGFjZVByb3BzLCBJTmFtZXNwYWNlLCBOYW1lc3BhY2VCYXNlLCBOYW1lc3BhY2VUeXBlIH0gZnJvbSAnLi9uYW1lc3BhY2UnO1xuaW1wb3J0IHsgRG5zU2VydmljZVByb3BzLCBTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlJztcbmltcG9ydCB7IENmblB1YmxpY0Ruc05hbWVzcGFjZX0gZnJvbSAnLi9zZXJ2aWNlZGlzY292ZXJ5LmdlbmVyYXRlZCc7XG5cbi8vIHRzbGludDpkaXNhYmxlOm5vLWVtcHR5LWludGVyZmFjZVxuZXhwb3J0IGludGVyZmFjZSBQdWJsaWNEbnNOYW1lc3BhY2VQcm9wcyBleHRlbmRzIEJhc2VOYW1lc3BhY2VQcm9wcyB7fVxuXG5leHBvcnQgaW50ZXJmYWNlIElQdWJsaWNEbnNOYW1lc3BhY2UgZXh0ZW5kcyBJTmFtZXNwYWNlIHtcbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgcHVibGljIG5hbWVzcGFjZS5cbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgcHVibGljRG5zTmFtZXNwYWNlSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFtYXpvbiBSZXNvdXJjZSBOYW1lIChBUk4pIG9mIHRoZSBwdWJsaWMgbmFtZXNwYWNlLlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBwdWJsaWNEbnNOYW1lc3BhY2VBcm46IHN0cmluZztcbn1cbi8qKlxuICogRGVmaW5lIGEgUHVibGljIEROUyBOYW1lc3BhY2VcbiAqL1xuZXhwb3J0IGNsYXNzIFB1YmxpY0Ruc05hbWVzcGFjZSBleHRlbmRzIE5hbWVzcGFjZUJhc2UgaW1wbGVtZW50cyBJUHVibGljRG5zTmFtZXNwYWNlIHtcbiAgLyoqXG4gICAqIEEgbmFtZSBmb3IgdGhlIG5hbWVzcGFjZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBuYW1lc3BhY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWVzcGFjZSBJZCBmb3IgdGhlIG5hbWVzcGFjZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBuYW1lc3BhY2VJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lc3BhY2UgQXJuIGZvciB0aGUgbmFtZXNwYWNlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG5hbWVzcGFjZUFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUeXBlIG9mIHRoZSBuYW1lc3BhY2UuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdHlwZTogTmFtZXNwYWNlVHlwZTtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogUHVibGljRG5zTmFtZXNwYWNlUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgY29uc3QgbnMgPSBuZXcgQ2ZuUHVibGljRG5zTmFtZXNwYWNlKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIG5hbWU6IHByb3BzLm5hbWUsXG4gICAgICBkZXNjcmlwdGlvbjogcHJvcHMuZGVzY3JpcHRpb24sXG4gICAgfSk7XG5cbiAgICB0aGlzLm5hbWVzcGFjZU5hbWUgPSBwcm9wcy5uYW1lO1xuICAgIHRoaXMubmFtZXNwYWNlSWQgPSBucy5wdWJsaWNEbnNOYW1lc3BhY2VJZDtcbiAgICB0aGlzLm5hbWVzcGFjZUFybiA9IG5zLnB1YmxpY0Ruc05hbWVzcGFjZUFybjtcbiAgICB0aGlzLnR5cGUgPSBOYW1lc3BhY2VUeXBlLkRuc1B1YmxpYztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcHVibGljRG5zTmFtZXNwYWNlQXJuKCkgeyByZXR1cm4gdGhpcy5uYW1lc3BhY2VBcm47IH1cbiAgcHVibGljIGdldCBwdWJsaWNEbnNOYW1lc3BhY2VJZCgpIHsgcmV0dXJuIHRoaXMubmFtZXNwYWNlSWQ7IH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHNlcnZpY2Ugd2l0aGluIHRoZSBuYW1lc3BhY2VcbiAgICovXG4gIHB1YmxpYyBjcmVhdGVTZXJ2aWNlKGlkOiBzdHJpbmcsIHByb3BzPzogRG5zU2VydmljZVByb3BzKTogU2VydmljZSB7XG4gICAgcmV0dXJuIG5ldyBTZXJ2aWNlKHRoaXMsIGlkLCB7XG4gICAgICBuYW1lc3BhY2U6IHRoaXMsXG4gICAgICAuLi5wcm9wc1xuICAgIH0pO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWRucy1uYW1lc3BhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJwdWJsaWMtZG5zLW5hbWVzcGFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHNDQUFtRDtBQUNuRCwyQ0FBNEU7QUFDNUUsdUNBQXFEO0FBQ3JELDZFQUFvRTtBQXFCcEU7O0dBRUc7QUFDSCxNQUFhLGtCQUFtQixTQUFRLGNBQVE7SUFFdkMsTUFBTSxDQUFDLGdDQUFnQyxDQUFDLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQW1DO1FBQzlHLE1BQU0sTUFBTyxTQUFRLGNBQVE7WUFBN0I7O2dCQUNTLGtCQUFhLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQztnQkFDcEMsZ0JBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDO2dCQUNoQyxpQkFBWSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7Z0JBQ2xDLFNBQUksR0FBRyx5QkFBYSxDQUFDLFNBQVMsQ0FBQztZQUN4QyxDQUFDO1NBQUE7UUFDRCxPQUFPLElBQUksTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBc0JELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBOEI7UUFDdEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixNQUFNLEVBQUUsR0FBRyxJQUFJLGtEQUFxQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDckQsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO1lBQ2hCLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztTQUMvQixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUM7UUFDM0MsSUFBSSxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUMscUJBQXFCLENBQUM7UUFDN0MsSUFBSSxDQUFDLElBQUksR0FBRyx5QkFBYSxDQUFDLFNBQVMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsaUJBQWlCO0lBQ2pCLElBQVcscUJBQXFCLEtBQUssT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztJQUVoRSxpQkFBaUI7SUFDakIsSUFBVyxzQkFBc0IsS0FBSyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBRWxFLGlCQUFpQjtJQUNqQixJQUFXLG9CQUFvQixLQUFLLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFFOUQ7O09BRUc7SUFDSSxhQUFhLENBQUMsRUFBVSxFQUFFLEtBQXVCO1FBQ3RELE9BQU8sSUFBSSxpQkFBTyxDQUFDLElBQUksRUFBRSxFQUFFLEVBQUU7WUFDM0IsU0FBUyxFQUFFLElBQUk7WUFDZixHQUFHLEtBQUs7U0FDVCxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFoRUQsZ0RBZ0VDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uc3RydWN0LCBSZXNvdXJjZSB9IGZyb20gJ0Bhd3MtY2RrL2Nkayc7XG5pbXBvcnQgeyBCYXNlTmFtZXNwYWNlUHJvcHMsIElOYW1lc3BhY2UsIE5hbWVzcGFjZVR5cGUgfSBmcm9tICcuL25hbWVzcGFjZSc7XG5pbXBvcnQgeyBEbnNTZXJ2aWNlUHJvcHMsIFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2UnO1xuaW1wb3J0IHsgQ2ZuUHVibGljRG5zTmFtZXNwYWNlfSBmcm9tICcuL3NlcnZpY2VkaXNjb3ZlcnkuZ2VuZXJhdGVkJztcblxuZXhwb3J0IGludGVyZmFjZSBQdWJsaWNEbnNOYW1lc3BhY2VQcm9wcyBleHRlbmRzIEJhc2VOYW1lc3BhY2VQcm9wcyB7fVxuZXhwb3J0IGludGVyZmFjZSBJUHVibGljRG5zTmFtZXNwYWNlIGV4dGVuZHMgSU5hbWVzcGFjZSB7IH1cbmV4cG9ydCBpbnRlcmZhY2UgUHVibGljRG5zTmFtZXNwYWNlQXR0cmlidXRlcyB7XG4gIC8qKlxuICAgKiBBIG5hbWUgZm9yIHRoZSBOYW1lc3BhY2UuXG4gICAqL1xuICByZWFkb25seSBuYW1lc3BhY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWVzcGFjZSBJZCBmb3IgdGhlIE5hbWVzcGFjZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWVzcGFjZUlkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWVzcGFjZSBBUk4gZm9yIHRoZSBOYW1lc3BhY2UuXG4gICAqL1xuICByZWFkb25seSBuYW1lc3BhY2VBcm46IHN0cmluZztcbiB9XG5cbi8qKlxuICogRGVmaW5lIGEgUHVibGljIEROUyBOYW1lc3BhY2VcbiAqL1xuZXhwb3J0IGNsYXNzIFB1YmxpY0Ruc05hbWVzcGFjZSBleHRlbmRzIFJlc291cmNlIGltcGxlbWVudHMgSVB1YmxpY0Ruc05hbWVzcGFjZSB7XG5cbiAgcHVibGljIHN0YXRpYyBmcm9tUHVibGljRG5zTmFtZXNwYWNlQXR0cmlidXRlcyhzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBhdHRyczogUHVibGljRG5zTmFtZXNwYWNlQXR0cmlidXRlcyk6IElQdWJsaWNEbnNOYW1lc3BhY2Uge1xuICAgIGNsYXNzIEltcG9ydCBleHRlbmRzIFJlc291cmNlIGltcGxlbWVudHMgSVB1YmxpY0Ruc05hbWVzcGFjZSB7XG4gICAgICBwdWJsaWMgbmFtZXNwYWNlTmFtZSA9IGF0dHJzLm5hbWVzcGFjZU5hbWU7XG4gICAgICBwdWJsaWMgbmFtZXNwYWNlSWQgPSBhdHRycy5uYW1lc3BhY2VJZDtcbiAgICAgIHB1YmxpYyBuYW1lc3BhY2VBcm4gPSBhdHRycy5uYW1lc3BhY2VBcm47XG4gICAgICBwdWJsaWMgdHlwZSA9IE5hbWVzcGFjZVR5cGUuRG5zUHVibGljO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IEltcG9ydChzY29wZSwgaWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgbmFtZSBmb3IgdGhlIG5hbWVzcGFjZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBuYW1lc3BhY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWVzcGFjZSBJZCBmb3IgdGhlIG5hbWVzcGFjZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBuYW1lc3BhY2VJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lc3BhY2UgQXJuIGZvciB0aGUgbmFtZXNwYWNlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG5hbWVzcGFjZUFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUeXBlIG9mIHRoZSBuYW1lc3BhY2UuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdHlwZTogTmFtZXNwYWNlVHlwZTtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogUHVibGljRG5zTmFtZXNwYWNlUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgY29uc3QgbnMgPSBuZXcgQ2ZuUHVibGljRG5zTmFtZXNwYWNlKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIG5hbWU6IHByb3BzLm5hbWUsXG4gICAgICBkZXNjcmlwdGlvbjogcHJvcHMuZGVzY3JpcHRpb24sXG4gICAgfSk7XG5cbiAgICB0aGlzLm5hbWVzcGFjZU5hbWUgPSBwcm9wcy5uYW1lO1xuICAgIHRoaXMubmFtZXNwYWNlSWQgPSBucy5wdWJsaWNEbnNOYW1lc3BhY2VJZDtcbiAgICB0aGlzLm5hbWVzcGFjZUFybiA9IG5zLnB1YmxpY0Ruc05hbWVzcGFjZUFybjtcbiAgICB0aGlzLnR5cGUgPSBOYW1lc3BhY2VUeXBlLkRuc1B1YmxpYztcbiAgfVxuXG4gIC8qKiBAYXR0cmlidXRlICovXG4gIHB1YmxpYyBnZXQgcHVibGljRG5zTmFtZXNwYWNlQXJuKCkgeyByZXR1cm4gdGhpcy5uYW1lc3BhY2VBcm47IH1cblxuICAvKiogQGF0dHJpYnV0ZSAqL1xuICBwdWJsaWMgZ2V0IHB1YmxpY0Ruc05hbWVzcGFjZU5hbWUoKSB7IHJldHVybiB0aGlzLm5hbWVzcGFjZU5hbWU7IH1cblxuICAvKiogQGF0dHJpYnV0ZSAqL1xuICBwdWJsaWMgZ2V0IHB1YmxpY0Ruc05hbWVzcGFjZUlkKCkgeyByZXR1cm4gdGhpcy5uYW1lc3BhY2VJZDsgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgc2VydmljZSB3aXRoaW4gdGhlIG5hbWVzcGFjZVxuICAgKi9cbiAgcHVibGljIGNyZWF0ZVNlcnZpY2UoaWQ6IHN0cmluZywgcHJvcHM/OiBEbnNTZXJ2aWNlUHJvcHMpOiBTZXJ2aWNlIHtcbiAgICByZXR1cm4gbmV3IFNlcnZpY2UodGhpcywgaWQsIHtcbiAgICAgIG5hbWVzcGFjZTogdGhpcyxcbiAgICAgIC4uLnByb3BzXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==

@@ -1,2 +0,2 @@

import route53 = require('@aws-cdk/aws-route53');
import elbv2 = require('@aws-cdk/aws-elasticloadbalancingv2');
import { Construct, IResource, Resource } from '@aws-cdk/cdk';

@@ -161,3 +161,3 @@ import { CnameInstanceBaseProps } from './cname-instance';

*/
registerLoadBalancer(id: string, loadBalancer: route53.IAliasRecordTarget, customAttributes?: {
registerLoadBalancer(id: string, loadBalancer: elbv2.ILoadBalancerV2, customAttributes?: {
[key: string]: string;

@@ -164,0 +164,0 @@ }): IInstance;

@@ -108,3 +108,3 @@ "use strict";

service: this,
dnsName: loadBalancer.asAliasRecordTarget().dnsName,
dnsName: loadBalancer.loadBalancerDnsName,
customAttributes

@@ -212,2 +212,2 @@ });

})(HealthCheckType = exports.HealthCheckType || (exports.HealthCheckType = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFDQSxzQ0FBOEQ7QUFDOUQsbUVBQThEO0FBQzlELHFEQUEwRTtBQUUxRSwrQ0FBZ0U7QUFDaEUsMkNBQXdEO0FBQ3hELHVEQUEwRTtBQUMxRSw2RUFBMEQ7QUEwSDFELE1BQWUsV0FBWSxTQUFRLGNBQVE7Q0FPMUM7QUFVRDs7R0FFRztBQUNILE1BQWEsT0FBUSxTQUFRLFdBQVc7SUFFL0IsTUFBTSxDQUFDLHFCQUFxQixDQUFDLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXdCO1FBQ3hGLE1BQU0sTUFBTyxTQUFRLFdBQVc7WUFBaEM7O2dCQUVTLGNBQVMsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDO2dCQUM1QixlQUFVLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQztnQkFDOUIsa0JBQWEsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDO2dCQUNwQyxrQkFBYSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7Z0JBQ3BDLGdCQUFXLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQztZQUN6QyxDQUFDO1NBQUE7UUFFRCxPQUFPLElBQUksTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBZ0NELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBbUI7UUFDM0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztRQUUzQyxjQUFjO1FBQ2QsSUFBSSxhQUFhLEtBQUsseUJBQWEsQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxJQUFJLEtBQUssQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUN4RixNQUFNLElBQUksS0FBSyxDQUFDLDZFQUE2RSxDQUFDLENBQUM7U0FDaEc7UUFFRCxJQUFJ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O0FBbkJELFdBQVksZUFBZTtJQUN6Qjs7O09BR0c7SUFDSCxnQ0FBYSxDQUFBO0lBRWI7Ozs7T0FJRztJQUNILGtDQUFlLENBQUE7SUFFZjs7O09BR0c7SUFDSCw4QkFBVyxDQUFBO0FBQ2IsQ0FBQyxFQW5CVyxlQUFlLEdBQWYsdUJBQWUsS0FBZix1QkFBZSxRQW1CMUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgcm91dGU1MyA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2F3cy1yb3V0ZTUzJyk7XG5pbXBvcnQgeyBDb25zdHJ1Y3QsIElSZXNvdXJjZSwgUmVzb3VyY2UgfSBmcm9tICdAYXdzLWNkay9jZGsnO1xuaW1wb3J0IHsgQWxpYXNUYXJnZXRJbnN0YW5jZSB9IGZyb20gJy4vYWxpYXMtdGFyZ2V0LWluc3RhbmNlJztcbmltcG9ydCB7IENuYW1lSW5zdGFuY2UsIENuYW1lSW5zdGFuY2VCYXNlUHJvcHMgIH0gZnJvbSAnLi9jbmFtZS1pbnN0YW5jZSc7XG5pbXBvcnQgeyBJSW5zdGFuY2UgfSBmcm9tICcuL2luc3RhbmNlJztcbmltcG9ydCB7IElwSW5zdGFuY2UsIElwSW5zdGFuY2VCYXNlUHJvcHMgfSBmcm9tICcuL2lwLWluc3RhbmNlJztcbmltcG9ydCB7IElOYW1lc3BhY2UsIE5hbWVzcGFjZVR5cGUgfSBmcm9tICcuL25hbWVzcGFjZSc7XG5pbXBvcnQgeyBOb25JcEluc3RhbmNlLCBOb25JcEluc3RhbmNlQmFzZVByb3BzIH0gZnJvbSAnLi9ub24taXAtaW5zdGFuY2UnO1xuaW1wb3J0IHsgQ2ZuU2VydmljZSB9IGZyb20gJy4vc2VydmljZWRpc2NvdmVyeS5nZW5lcmF0ZWQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElTZXJ2aWNlIGV4dGVuZHMgSVJlc291cmNlIHtcbiAgLyoqXG4gICAqIEEgbmFtZSBmb3IgdGhlIENsb3VkbWFwIFNlcnZpY2UuXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqICBUaGUgbmFtZXNwYWNlIGZvciB0aGUgQ2xvdWRtYXAgU2VydmljZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWVzcGFjZTogSU5hbWVzcGFjZTtcblxuICAvKipcbiAgICogVGhlIElEIG9mIHRoZSBuYW1lc3BhY2UgdGhhdCB5b3Ugd2FudCB0byB1c2UgZm9yIEROUyBjb25maWd1cmF0aW9uLlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFybiBvZiB0aGUgbmFtZXNwYWNlIHRoYXQgeW91IHdhbnQgdG8gdXNlIGZvciBETlMgY29uZmlndXJhdGlvbi5cbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgc2VydmljZUFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgRG5zUmVjb3JkVHlwZSB1c2VkIGJ5IHRoZSBzZXJ2aWNlXG4gICAqL1xuICByZWFkb25seSBkbnNSZWNvcmRUeXBlOiBEbnNSZWNvcmRUeXBlO1xuXG4gIC8qKlxuICAgKiBUaGUgUm91dGluZyBQb2xpY3kgdXNlZCBieSB0aGUgc2VydmljZVxuICAgKi9cbiAgcmVhZG9ubHkgcm91dGluZ1BvbGljeTogUm91dGluZ1BvbGljeTtcbn1cblxuLyoqXG4gKiBCYXNpYyBwcm9wcyBuZWVkZWQgdG8gY3JlYXRlIGEgc2VydmljZSBpbiBhIGdpdmVuIG5hbWVzcGFjZS4gVXNlZCBieSBIdHRwTmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCYXNlU2VydmljZVByb3BzIHtcbiAgLyoqXG4gICAqIEEgbmFtZSBmb3IgdGhlIFNlcnZpY2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IENsb3VkRm9ybWF0aW9uLWdlbmVyYXRlZCBuYW1lXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIGRlc2NyaXB0aW9uIG9mIHRoZSBzZXJ2aWNlLlxuICAgKlxuICAgKiBAZGVmYXVsdCBub25lXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogU2V0dGluZ3MgZm9yIGFuIG9wdGlvbmFsIGhlYWx0aCBjaGVjay4gIElmIHlvdSBzcGVjaWZ5IGhlYWx0aCBjaGVjayBzZXR0aW5ncywgQVdTIENsb3VkIE1hcCBhc3NvY2lhdGVzIHRoZSBoZWFsdGhcbiAgICogY2hlY2sgd2l0aCB0aGUgcmVjb3JkcyB0aGF0IHlvdSBzcGVjaWZ5IGluIERuc0NvbmZpZy4gT25seSBvbmUgb2YgaGVhbHRoQ2hlY2tDb25maWcgb3IgaGVhbHRoQ2hlY2tDdXN0b21Db25maWcgY2FuXG4gICAqIGJlIHNwZWNpZmllZC4gTm90IHZhbGlkIGZvciBQcml2YXRlRG5zTmFtZXNwYWNlcy4gSWYgeW91IHVzZSBoZWFsdGhDaGVjaywgeW91IGNhbiBvbmx5IHJlZ2lzdGVyIElQIGluc3RhbmNlcyB0b1xuICAgKiB0aGlzIHNlcnZpY2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vbmVcbiAgICovXG4gIHJlYWRvbmx5IGhlYWx0aENoZWNrPzogSGVhbHRoQ2hlY2tDb25maWc7XG5cbiAgLyoqXG4gICAqIFN0cnVjdHVyZSBjb250YWluaW5nIGZhaWx1cmUgdGhyZXNob2xkIGZvciBhIGN1c3RvbSBoZWFsdGggY2hlY2tlci5cbiAgICogT25seSBvbmUgb2YgaGVhbHRoQ2hlY2tDb25maWcgb3IgaGVhbHRoQ2hlY2tDdXN0b21Db25maWcgY2FuIGJlIHNwZWNpZmllZC5cbiAgICogU2VlOiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vY2xvdWQtbWFwL2xhdGVzdC9hcGkvQVBJX0hlYWx0aENoZWNrQ3VzdG9tQ29uZmlnLmh0bWxcbiAgICpcbiAgICogQGRlZmF1bHQgbm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgY3VzdG9tSGVhbHRoQ2hlY2s/OiBIZWFsdGhDaGVja0N1c3RvbUNvbmZpZztcbn1cblxuLyoqXG4gKiBTZXJ2aWNlIHByb3BzIG5lZWRlZCB0byBjcmVhdGUgYSBzZXJ2aWNlIGluIGEgZ2l2ZW4gbmFtZXNwYWNlLiBVc2VkIGJ5IGNyZWF0ZVNlcnZpY2UoKSBmb3IgUHJpdmF0ZURuc05hbWVzcGFjZSBhbmRcbiAqIFB1YmxpY0Ruc05hbWVzcGFjZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIERuc1NlcnZpY2VQcm9wcyBleHRlbmRzIEJhc2VTZXJ2aWNlUHJvcHMge1xuICAvKipcbiAgICogVGhlIEROUyB0eXBlIG9mIHRoZSByZWNvcmQgdGhhdCB5b3Ugd2FudCBBV1MgQ2xvdWQgTWFwIHRvIGNyZWF0ZS4gU3VwcG9ydGVkIHJlY29yZCB0eXBlc1xuICAgKiBpbmNsdWRlIEEsIEFBQUEsIEEgYW5kIEFBQUEgKEFfQUFBQSksIENOQU1FLCBhbmQgU1JWLlxuICAgKlxuICAgKiBAZGVmYXVsdCBBXG4gICAqL1xuICByZWFkb25seSBkbnNSZWNvcmRUeXBlPzogRG5zUmVjb3JkVHlwZTtcblxuICAvKipcbiAgICogVGhlIGFtb3VudCBvZiB0aW1lLCBpbiBzZWNvbmRzLCB0aGF0IHlvdSB3YW50IEROUyByZXNvbHZlcnMgdG8gY2FjaGUgdGhlIHNldHRpbmdzIGZvciB0aGlzXG4gICAqIHJlY29yZC5cbiAgICpcbiAgICogQGRlZmF1bHQgNjBcbiAgICovXG4gIHJlYWRvbmx5IGRuc1R0bFNlYz86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIHJvdXRpbmcgcG9saWN5IHRoYXQgeW91IHdhbnQgdG8gYXBwbHkgdG8gYWxsIEROUyByZWNvcmRzIHRoYXQgQVdTIENsb3VkIE1hcCBjcmVhdGVzIHdoZW4geW91XG4gICAqIHJlZ2lzdGVyIGFuIGluc3RhbmNlIGFuZCBzcGVjaWZ5IHRoaXMgc2VydmljZS5cbiAgICpcbiAgICogQGRlZmF1bHQgV0VJR0hURUQgZm9yIENOQU1FIHJlY29yZHMgYW5kIHdoZW4gbG9hZEJhbGFuY2VyIGlzIHRydWUsIE1VTFRJVkFMVUUgb3RoZXJ3aXNlXG4gICAqL1xuICByZWFkb25seSByb3V0aW5nUG9saWN5PzogUm91dGluZ1BvbGljeTtcblxuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdGhpcyBzZXJ2aWNlIHdpbGwgaGF2ZSBhbiBFbGFzdGljIExvYWRCYWxhbmNlciByZWdpc3RlcmVkIHRvIGl0IGFzIGFuIEFsaWFzVGFyZ2V0SW5zdGFuY2UuXG4gICAqXG4gICAqIFNldHRpbmcgdGhpcyB0byBgdHJ1ZWAgY29ycmVjdGx5IGNvbmZpZ3VyZXMgdGhlIGByb3V0aW5nUG9saWN5YFxuICAgKiBhbmQgcGVyZm9ybXMgc29tZSBhZGRpdGlvbmFsIHZhbGlkYXRpb24uXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBsb2FkQmFsYW5jZXI/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZpY2VQcm9wcyBleHRlbmRzIERuc1NlcnZpY2VQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgSUQgb2YgdGhlIG5hbWVzcGFjZSB0aGF0IHlvdSB3YW50IHRvIHVzZSBmb3IgRE5TIGNvbmZpZ3VyYXRpb24uXG4gICAqL1xuICByZWFkb25seSBuYW1lc3BhY2U6IElOYW1lc3BhY2U7XG59XG5cbmFic3RyYWN0IGNsYXNzIFNlcnZpY2VCYXNlIGV4dGVuZHMgUmVzb3VyY2UgaW1wbGVtZW50cyBJU2VydmljZSB7XG4gIHB1YmxpYyBhYnN0cmFjdCBuYW1lc3BhY2U6IElOYW1lc3BhY2U7XG4gIHB1YmxpYyBhYnN0cmFjdCBzZXJ2aWNlSWQ6IHN0cmluZztcbiAgcHVibGljIGFic3RyYWN0IHNlcnZpY2VBcm46IHN0cmluZztcbiAgcHVibGljIGFic3RyYWN0IGRuc1JlY29yZFR5cGU6IERuc1JlY29yZFR5cGU7XG4gIHB1YmxpYyBhYnN0cmFjdCByb3V0aW5nUG9saWN5OiBSb3V0aW5nUG9saWN5O1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgc2VydmljZU5hbWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZXJ2aWNlQXR0cmlidXRlcyB7XG4gIHJlYWRvbmx5IHNlcnZpY2VOYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHNlcnZpY2VJZDogc3RyaW5nO1xuICByZWFkb25seSBzZXJ2aWNlQXJuOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGRuc1JlY29yZFR5cGU6IERuc1JlY29yZFR5cGU7XG4gIHJlYWRvbmx5IHJvdXRpbmdQb2xpY3k6IFJvdXRpbmdQb2xpY3k7XG59XG5cbi8qKlxuICogRGVmaW5lIGEgQ2xvdWRNYXAgU2VydmljZVxuICovXG5leHBvcnQgY2xhc3MgU2VydmljZSBleHRlbmRzIFNlcnZpY2VCYXNlIHtcblxuICBwdWJsaWMgc3RhdGljIGZyb21TZXJ2aWNlQXR0cmlidXRlcyhzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBhdHRyczogU2VydmljZUF0dHJpYnV0ZXMpOiBJU2VydmljZSB7XG4gICAgY2xhc3MgSW1wb3J0IGV4dGVuZHMgU2VydmljZUJhc2Uge1xuICAgICAgcHVibGljIG5hbWVzcGFjZTogSU5hbWVzcGFjZTtcbiAgICAgIHB1YmxpYyBzZXJ2aWNlSWQgPSBhdHRycy5zZXJ2aWNlSWQ7XG4gICAgICBwdWJsaWMgc2VydmljZUFybiA9IGF0dHJzLnNlcnZpY2VBcm47XG4gICAgICBwdWJsaWMgZG5zUmVjb3JkVHlwZSA9IGF0dHJzLmRuc1JlY29yZFR5cGU7XG4gICAgICBwdWJsaWMgcm91dGluZ1BvbGljeSA9IGF0dHJzLnJvdXRpbmdQb2xpY3k7XG4gICAgICBwdWJsaWMgc2VydmljZU5hbWUgPSBhdHRycy5zZXJ2aWNlTmFtZTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IEltcG9ydChzY29wZSwgaWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgbmFtZSBmb3IgdGhlIENsb3VkbWFwIFNlcnZpY2UuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgc2VydmljZU5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogIFRoZSBuYW1lc3BhY2UgZm9yIHRoZSBDbG91ZG1hcCBTZXJ2aWNlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG5hbWVzcGFjZTogSU5hbWVzcGFjZTtcblxuICAvKipcbiAgICogVGhlIElEIG9mIHRoZSBuYW1lc3BhY2UgdGhhdCB5b3Ugd2FudCB0byB1c2UgZm9yIEROUyBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNlcnZpY2VJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQXJuIG9mIHRoZSBuYW1lc3BhY2UgdGhhdCB5b3Ugd2FudCB0byB1c2UgZm9yIEROUyBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNlcnZpY2VBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIERuc1JlY29yZFR5cGUgdXNlZCBieSB0aGUgc2VydmljZVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRuc1JlY29yZFR5cGU6IERuc1JlY29yZFR5cGU7XG5cbiAgLyoqXG4gICAqIFRoZSBSb3V0aW5nIFBvbGljeSB1c2VkIGJ5IHRoZSBzZXJ2aWNlXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcm91dGluZ1BvbGljeTogUm91dGluZ1BvbGljeTtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogU2VydmljZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IG5hbWVzcGFjZVR5cGUgPSBwcm9wcy5uYW1lc3BhY2UudHlwZTtcblxuICAgIC8vIFZhbGlkYXRpb25zXG4gICAgaWYgKG5hbWVzcGFjZVR5cGUgPT09IE5hbWVzcGFjZVR5cGUuSHR0cCAmJiAocHJvcHMucm91dGluZ1BvbGljeSB8fCBwcm9wcy5kbnNSZWNvcmRUeXBlKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3Qgc3BlY2lmeSBgcm91dGluZ1BvbGljeWAgb3IgYGRuc1JlY29yZGAgd2hlbiB1c2luZyBhbiBIVFRQIG5hbWVzcGFjZS4nKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMuaGVhbHRoQ2hlY2sgJiYgcHJvcHMuY3VzdG9tSGVhbHRoQ2hlY2spIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQ2Fubm90IHNwZWNpZnkgYm90aCBgaGVhbHRoQ2hlY2tDb25maWdgIGFuZCBgaGVhbHRoQ2hlY2tDdXN0b21Db25maWdgLicpO1xuICAgIH1cblxuICAgIGlmIChuYW1lc3BhY2VUeXBlID09PSBOYW1lc3BhY2VUeXBlLkRuc1ByaXZhdGUgJiYgcHJvcHMuaGVhbHRoQ2hlY2spIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQ2Fubm90IHNwZWNpZnkgYGhlYWx0aENoZWNrQ29uZmlnYCBmb3IgYSBQcml2YXRlIEROUyBuYW1lc3BhY2UuJyk7XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLnJvdXRpbmdQb2xpY3kgPT09IFJvdXRpbmdQb2xpY3kuTXVsdGl2YWx1ZVxuICAgICAgICAmJiBwcm9wcy5kbnNSZWNvcmRUeXBlID09PSBEbnNSZWNvcmRUeXBlLkNOQU1FKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCB1c2UgYENOQU1FYCByZWNvcmQgd2hlbiByb3V0aW5nIHBvbGljeSBpcyBgTXVsdGl2YWx1ZWAuJyk7XG4gICAgfVxuXG4gICAgLy8gQWRkaXRpb25hbCB2YWxpZGF0aW9uIGZvciBldmVudHVhbCBhdHRhY2htZW50IG9mIExCc1xuICAgIC8vIFRoZSBzYW1lIHZhbGlkYXRpb24gaGFwcGVucyBsYXRlciBvbiBkdXJpbmcgdGhlIGFjdHVhbCBhdHRhY2htZW50XG4gICAgLy8gb2YgTEJzLCBidXQgd2UgbmVlZCB0aGUgcHJvcGVydHkgZm9yIHRoZSBjb3JyZWN0IGNvbmZpZ3VyYXRpb24gb2ZcbiAgICAvLyByb3V0aW5nUG9saWN5IGFueXdheSwgc28gbWlnaHQgYXMgd2VsbCBkbyB0aGUgdmFsaWRhdGlvbiBhcyB3ZWxsLlxuICAgIGlmIChwcm9wcy5yb3V0aW5nUG9saWN5ID09PSBSb3V0aW5nUG9saWN5Lk11bHRpdmFsdWVcbiAgICAgICAgJiYgcHJvcHMubG9hZEJhbGFuY2VyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCByZWdpc3RlciBsb2FkYmFsYW5jZXJzIHdoZW4gcm91dGluZyBwb2xpY3kgaXMgYE11bHRpdmFsdWVgLicpO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5oZWFsdGhDaGVja1xuICAgICAgICAmJiBwcm9wcy5oZWFsdGhDaGVjay50eXBlID09PSBIZWFsdGhDaGVja1R5cGUuVGNwXG4gICAgICAgICYmIHByb3BzLmhlYWx0aENoZWNrLnJlc291cmNlUGF0aCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ2Fubm90IHNwZWNpZnkgYHJlc291cmNlUGF0aGAgd2hlbiB1c2luZyBhIGBUQ1BgIGhlYWx0aCBjaGVjay4nKTtcbiAgICB9XG5cbiAgICAvLyBTZXQgZGVmYXVsdHMgd2hlcmUgbmVjZXNzYXJ5XG4gICAgY29uc3Qgcm91dGluZ1BvbGljeSA9IChwcm9wcy5kbnNSZWNvcmRUeXBlID09PSBEbnNSZWNvcmRUeXBlLkNOQU1FKSB8fCBwcm9wcy5sb2FkQmFsYW5jZXJcbiAgICAgID8gUm91dGluZ1BvbGljeS5XZWlnaHRlZFxuICAgICAgOiBSb3V0aW5nUG9saWN5Lk11bHRpdmFsdWU7XG5cbiAgICBjb25zdCBkbnNSZWNvcmRUeXBlID0gcHJvcHMuZG5zUmVjb3JkVHlwZSB8fCBEbnNSZWNvcmRUeXBlLkE7XG5cbiAgICBpZiAocHJvcHMubG9hZEJhbGFuY2VyXG4gICAgICAmJiAoIShkbnNSZWNvcmRUeXBlID09PSBEbnNSZWNvcmRUeXBlLkFcbiAgICAgICAgfHwgZG5zUmVjb3JkVHlwZSA9PT0gRG5zUmVjb3JkVHlwZS5BQUFBXG4gICAgICAgIHx8IGRuc1JlY29yZFR5cGUgPT09IERuc1JlY29yZFR5cGUuQV9BQUFBKSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTXVzdCBzdXBwb3J0IGBBYCBvciBgQUFBQWAgcmVjb3JkcyB0byByZWdpc3RlciBsb2FkYmFsYW5jZXJzLicpO1xuICAgIH1cblxuICAgIGNvbnN0IGRuc0NvbmZpZzogQ2ZuU2VydmljZS5EbnNDb25maWdQcm9wZXJ0eSB8IHVuZGVmaW5lZCA9IHByb3BzLm5hbWVzcGFjZS50eXBlID09PSBOYW1lc3BhY2VUeXBlLkh0dHBcbiAgICAgID8gdW5kZWZpbmVkXG4gICAgICA6IHtcbiAgICAgICAgICBkbnNSZWNvcmRzOiByZW5kZXJEbnNSZWNvcmRzKGRuc1JlY29yZFR5cGUsIHByb3BzLmRuc1R0bFNlYyksXG4gICAgICAgICAgbmFtZXNwYWNlSWQ6IHByb3BzLm5hbWVzcGFjZS5uYW1lc3BhY2VJZCxcbiAgICAgICAgICByb3V0aW5nUG9saWN5LFxuICAgICAgICB9O1xuXG4gICAgY29uc3QgaGVhbHRoQ2hlY2tDb25maWdEZWZhdWx0cyA9IHtcbiAgICAgIHR5cGU6IEhlYWx0aENoZWNrVHlwZS5IdHRwLFxuICAgICAgZmFpbHVyZVRocmVzaG9sZDogMSxcbiAgICAgIHJlc291cmNlUGF0aDogcHJvcHMuaGVhbHRoQ2hlY2sgJiYgcHJvcHMuaGVhbHRoQ2hlY2sudHlwZSAhPT0gSGVhbHRoQ2hlY2tUeXBlLlRjcFxuICAgICAgICA/ICcvJ1xuICAgICAgICA6IHVuZGVmaW5lZFxuICAgIH07XG5cbiAgICBjb25zdCBoZWFsdGhDaGVja0NvbmZpZyA9IHByb3BzLmhlYWx0aENoZWNrICYmIHsgLi4uaGVhbHRoQ2hlY2tDb25maWdEZWZhdWx0cywgLi4ucHJvcHMuaGVhbHRoQ2hlY2sgfTtcbiAgICBjb25zdCBoZWFsdGhDaGVja0N1c3RvbUNvbmZpZyA9IHByb3BzLmN1c3RvbUhlYWx0aENoZWNrO1xuXG4gICAgLy8gQ3JlYXRlIHNlcnZpY2VcbiAgICBjb25zdCBzZXJ2aWNlID0gbmV3IENmblNlcnZpY2UodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgbmFtZTogcHJvcHMubmFtZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBwcm9wcy5kZXNjcmlwdGlvbixcbiAgICAgIGRuc0NvbmZpZyxcbiAgICAgIGhlYWx0aENoZWNrQ29uZmlnLFxuICAgICAgaGVhbHRoQ2hlY2tDdXN0b21Db25maWcsXG4gICAgICBuYW1lc3BhY2VJZDogcHJvcHMubmFtZXNwYWNlLm5hbWVzcGFjZUlkXG4gICAgfSk7XG5cbiAgICB0aGlzLnNlcnZpY2VOYW1lID0gc2VydmljZS5zZXJ2aWNlTmFtZTtcbiAgICB0aGlzLnNlcnZpY2VBcm4gPSBzZXJ2aWNlLnNlcnZpY2VBcm47XG4gICAgdGhpcy5zZXJ2aWNlSWQgPSBzZXJ2aWNlLnNlcnZpY2VJZDtcbiAgICB0aGlzLm5hbWVzcGFjZSA9IHByb3BzLm5hbWVzcGFjZTtcbiAgICB0aGlzLmRuc1JlY29yZFR5cGUgPSBkbnNSZWNvcmRUeXBlO1xuICAgIHRoaXMucm91dGluZ1BvbGljeSA9IHJvdXRpbmdQb2xpY3k7XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXJzIGFuIEVMQiBhcyBhIG5ldyBpbnN0YW5jZSB3aXRoIHVuaXF1ZSBuYW1lIGluc3RhbmNlSWQgaW4gdGhpcyBzZXJ2aWNlLlxuICAgKi9cbiAgcHVibGljIHJlZ2lzdGVyTG9hZEJhbGFuY2VyKGlkOiBzdHJpbmcsIGxvYWRCYWxhbmNlcjogcm91dGU1My5JQWxpYXNSZWNvcmRUYXJnZXQsIGN1c3RvbUF0dHJpYnV0ZXM/OiB7W2tleTogc3RyaW5nXTogc3RyaW5nfSk6IElJbnN0YW5jZSB7XG4gICAgcmV0dXJuIG5ldyBBbGlhc1RhcmdldEluc3RhbmNlKHRoaXMsIGlkLCB7XG4gICAgICBzZXJ2aWNlOiB0aGlzLFxuICAgICAgZG5zTmFtZTogbG9hZEJhbGFuY2VyLmFzQWxpYXNSZWNvcmRUYXJnZXQoKS5kbnNOYW1lLFxuICAgICAgY3VzdG9tQXR0cmlidXRlc1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIHJlc291cmNlIHRoYXQgaXMgYWNjZXNzaWJsZSB1c2luZyB2YWx1ZXMgb3RoZXIgdGhhbiBhbiBJUCBhZGRyZXNzIG9yIGEgZG9tYWluIG5hbWUgKENOQU1FKS5cbiAgICovXG4gIHB1YmxpYyByZWdpc3Rlck5vbklwSW5zdGFuY2UoaWQ6IHN0cmluZywgcHJvcHM6IE5vbklwSW5zdGFuY2VCYXNlUHJvcHMpOiBJSW5zdGFuY2Uge1xuICAgIHJldHVybiBuZXcgTm9uSXBJbnN0YW5jZSh0aGlzLCBpZCwge1xuICAgICAgc2VydmljZTogdGhpcyxcbiAgICAgIC4uLnByb3BzXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXJzIGEgcmVzb3VyY2UgdGhhdCBpcyBhY2Nlc3NpYmxlIHVzaW5nIGFuIElQIGFkZHJlc3MuXG4gICAqL1xuICBwdWJsaWMgcmVnaXN0ZXJJcEluc3RhbmNlKGlkOiBzdHJpbmcsIHByb3BzOiBJcEluc3RhbmNlQmFzZVByb3BzKTogSUluc3RhbmNlIHtcbiAgICByZXR1cm4gbmV3IElwSW5zdGFuY2UodGhpcywgaWQsIHtcbiAgICAgIHNlcnZpY2U6IHRoaXMsXG4gICAgICAuLi5wcm9wc1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIHJlc291cmNlIHRoYXQgaXMgYWNjZXNzaWJsZSB1c2luZyBhIENOQU1FLlxuICAgKi9cbiAgcHVibGljIHJlZ2lzdGVyQ25hbWVJbnN0YW5jZShpZDogc3RyaW5nLCBwcm9wczogQ25hbWVJbnN0YW5jZUJhc2VQcm9wcyk6IElJbnN0YW5jZSB7XG4gICAgcmV0dXJuIG5ldyBDbmFtZUluc3RhbmNlKHRoaXMsIGlkLCB7XG4gICAgICBzZXJ2aWNlOiB0aGlzLFxuICAgICAgLi4ucHJvcHNcbiAgICB9KTtcbiAgfVxufVxuXG5mdW5jdGlvbiByZW5kZXJEbnNSZWNvcmRzKGRuc1JlY29yZFR5cGU6IERuc1JlY29yZFR5cGUsIGRuc1R0bFNlYz86IG51bWJlcik6IENmblNlcnZpY2UuRG5zUmVjb3JkUHJvcGVydHlbXSB7XG4gIGNvbnN0IHR0bCA9IGRuc1R0bFNlYyAhPT0gdW5kZWZpbmVkID8gZG5zVHRsU2VjIDogNjA7XG5cbiAgaWYgKGRuc1JlY29yZFR5cGUgPT09IERuc1JlY29yZFR5cGUuQV9BQUFBKSB7XG4gICAgcmV0dXJuIFt7XG4gICAgICB0eXBlOiBEbnNSZWNvcmRUeXBlLkEsXG4gICAgICB0dGxcbiAgICB9LCB7XG4gICAgICB0eXBlOiBEbnNSZWNvcmRUeXBlLkFBQUEsXG4gICAgICB0dGwsXG4gICAgfV07XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIFt7IHR5cGU6IGRuc1JlY29yZFR5cGUsIHR0bCB9XTtcbiAgfVxufVxuXG4vKipcbiAqIFNldHRpbmdzIGZvciBhbiBvcHRpb25hbCBBbWF6b24gUm91dGUgNTMgaGVhbHRoIGNoZWNrLiBJZiB5b3Ugc3BlY2lmeSBzZXR0aW5ncyBmb3IgYSBoZWFsdGggY2hlY2ssIEFXUyBDbG91ZCBNYXBcbiAqIGFzc29jaWF0ZXMgdGhlIGhlYWx0aCBjaGVjayB3aXRoIGFsbCB0aGUgcmVjb3JkcyB0aGF0IHlvdSBzcGVjaWZ5IGluIERuc0NvbmZpZy4gT25seSB2YWxpZCB3aXRoIGEgUHVibGljRG5zTmFtZXNwYWNlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEhlYWx0aENoZWNrQ29uZmlnIHtcbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIGhlYWx0aCBjaGVjayB0aGF0IHlvdSB3YW50IHRvIGNyZWF0ZSwgd2hpY2ggaW5kaWNhdGVzIGhvdyBSb3V0ZSA1MyBkZXRlcm1pbmVzIHdoZXRoZXIgYW4gZW5kcG9pbnQgaXNcbiAgICogaGVhbHRoeS4gQ2Fubm90IGJlIG1vZGlmaWVkIG9uY2UgY3JlYXRlZC4gU3VwcG9ydGVkIHZhbHVlcyBhcmUgSFRUUCwgSFRUUFMsIGFuZCBUQ1AuXG4gICAqXG4gICAqIEBkZWZhdWx0IEhUVFBcbiAgICovXG4gIHJlYWRvbmx5IHR5cGU/OiBIZWFsdGhDaGVja1R5cGU7XG5cbiAgLyoqXG4gICAqIFRoZSBwYXRoIHRoYXQgeW91IHdhbnQgUm91dGUgNTMgdG8gcmVxdWVzdCB3aGVuIHBlcmZvcm1pbmcgaGVhbHRoIGNoZWNrcy4gRG8gbm90IHVzZSB3aGVuIGhlYWx0aCBjaGVjayB0eXBlIGlzIFRDUC5cbiAgICpcbiAgICogQGRlZmF1bHQgJy8nXG4gICAqL1xuICByZWFkb25seSByZXNvdXJjZVBhdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgY29uc2VjdXRpdmUgaGVhbHRoIGNoZWNrcyB0aGF0IGFuIGVuZHBvaW50IG11c3QgcGFzcyBvciBmYWlsIGZvciBSb3V0ZSA1MyB0byBjaGFuZ2UgdGhlIGN1cnJlbnRcbiAgICogc3RhdHVzIG9mIHRoZSBlbmRwb2ludCBmcm9tIHVuaGVhbHRoeSB0byBoZWFsdGh5IG9yIHZpY2UgdmVyc2EuXG4gICAqXG4gICAqIEBkZWZhdWx0IDFcbiAgICovXG4gIHJlYWRvbmx5IGZhaWx1cmVUaHJlc2hvbGQ/OiBudW1iZXI7XG59XG5cbi8qKlxuICogU3BlY2lmaWVzIGluZm9ybWF0aW9uIGFib3V0IGFuIG9wdGlvbmFsIGN1c3RvbSBoZWFsdGggY2hlY2suXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSGVhbHRoQ2hlY2tDdXN0b21Db25maWcge1xuICAvKipcbiAgICogVGhlIG51bWJlciBvZiAzMC1zZWNvbmQgaW50ZXJ2YWxzIHRoYXQgeW91IHdhbnQgQ2xvdWQgTWFwIHRvIHdhaXQgYWZ0ZXIgcmVjZWl2aW5nIGFuXG4gICAqIFVwZGF0ZUluc3RhbmNlQ3VzdG9tSGVhbHRoU3RhdHVzIHJlcXVlc3QgYmVmb3JlIGl0IGNoYW5nZXMgdGhlIGhlYWx0aCBzdGF0dXMgb2YgYSBzZXJ2aWNlIGluc3RhbmNlLlxuICAgKlxuICAgKiBAZGVmYXVsdCAxXG4gICAqL1xuICByZWFkb25seSBmYWlsdXJlVGhyZXNob2xkPzogbnVtYmVyO1xufVxuXG5leHBvcnQgZW51bSBEbnNSZWNvcmRUeXBlIHtcbiAgLyoqXG4gICAqIEFuIEEgcmVjb3JkXG4gICAqL1xuICBBID0gXCJBXCIsXG5cbiAgLyoqXG4gICAqIEFuIEFBQUEgcmVjb3JkXG4gICAqL1xuICBBQUFBID0gXCJBQUFBXCIsXG5cbiAgLyoqXG4gICAqIEJvdGggYW4gQSBhbmQgQUFBQSByZWNvcmRcbiAgICovXG4gIEFfQUFBQSA9IFwiQSwgQUFBQVwiLFxuXG4gIC8qKlxuICAgKiBBIFNydiByZWNvcmRcbiAgICovXG4gIFNSViA9IFwiU1JWXCIsXG5cbiAgLyoqXG4gICAqIEEgQ05BTUUgcmVjb3JkXG4gICAqL1xuICBDTkFNRSA9IFwiQ05BTUVcIixcbn1cblxuZXhwb3J0IGVudW0gUm91dGluZ1BvbGljeSB7XG4gIC8qKlxuICAgKiBSb3V0ZSA1MyByZXR1cm5zIHRoZSBhcHBsaWNhYmxlIHZhbHVlIGZyb20gb25lIHJhbmRvbWx5IHNlbGVjdGVkIGluc3RhbmNlIGZyb20gYW1vbmcgdGhlIGluc3RhbmNlcyB0aGF0IHlvdVxuICAgKiByZWdpc3RlcmVkIHVzaW5nIHRoZSBzYW1lIHNlcnZpY2UuXG4gICAqL1xuICBXZWlnaHRlZCA9IFwiV0VJR0hURURcIixcblxuICAvKipcbiAgICogSWYgeW91IGRlZmluZSBhIGhlYWx0aCBjaGVjayBmb3IgdGhlIHNlcnZpY2UgYW5kIHRoZSBoZWFsdGggY2hlY2sgaXMgaGVhbHRoeSwgUm91dGUgNTMgcmV0dXJucyB0aGUgYXBwbGljYWJsZSB2YWx1ZVxuICAgKiBmb3IgdXAgdG8gZWlnaHQgaW5zdGFuY2VzLlxuICAgKi9cbiAgTXVsdGl2YWx1ZSA9IFwiTVVMVElWQUxVRVwiLFxufVxuXG5leHBvcnQgZW51bSBIZWFsdGhDaGVja1R5cGUge1xuICAvKipcbiAgICogUm91dGUgNTMgdHJpZXMgdG8gZXN0YWJsaXNoIGEgVENQIGNvbm5lY3Rpb24uIElmIHN1Y2Nlc3NmdWwsIFJvdXRlIDUzIHN1Ym1pdHMgYW4gSFRUUCByZXF1ZXN0IGFuZCB3YWl0cyBmb3IgYW4gSFRUUFxuICAgKiBzdGF0dXMgY29kZSBvZiAyMDAgb3IgZ3JlYXRlciBhbmQgbGVzcyB0aGFuIDQwMC5cbiAgICovXG4gIEh0dHAgPSBcIkhUVFBcIixcblxuICAvKipcbiAgICogUm91dGUgNTMgdHJpZXMgdG8gZXN0YWJsaXNoIGEgVENQIGNvbm5lY3Rpb24uIElmIHN1Y2Nlc3NmdWwsIFJvdXRlIDUzIHN1Ym1pdHMgYW4gSFRUUFMgcmVxdWVzdCBhbmQgd2FpdHMgZm9yIGFuXG4gICAqIEhUVFAgc3RhdHVzIGNvZGUgb2YgMjAwIG9yIGdyZWF0ZXIgYW5kIGxlc3MgdGhhbiA0MDAuICBJZiB5b3Ugc3BlY2lmeSBIVFRQUyBmb3IgdGhlIHZhbHVlIG9mIFR5cGUsIHRoZSBlbmRwb2ludFxuICAgKiBtdXN0IHN1cHBvcnQgVExTIHYxLjAgb3IgbGF0ZXIuXG4gICAqL1xuICBIdHRwcyA9IFwiSFRUUFNcIixcblxuICAvKipcbiAgICogUm91dGUgNTMgdHJpZXMgdG8gZXN0YWJsaXNoIGEgVENQIGNvbm5lY3Rpb24uXG4gICAqIElmIHlvdSBzcGVjaWZ5IFRDUCBmb3IgVHlwZSwgZG9uJ3Qgc3BlY2lmeSBhIHZhbHVlIGZvciBSZXNvdXJjZVBhdGguXG4gICAqL1xuICBUY3AgPSBcIlRDUFwiLFxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFDQSxzQ0FBOEQ7QUFDOUQsbUVBQThEO0FBQzlELHFEQUEwRTtBQUUxRSwrQ0FBZ0U7QUFDaEUsMkNBQXdEO0FBQ3hELHVEQUEwRTtBQUMxRSw2RUFBMEQ7QUEwSDFELE1BQWUsV0FBWSxTQUFRLGNBQVE7Q0FPMUM7QUFVRDs7R0FFRztBQUNILE1BQWEsT0FBUSxTQUFRLFdBQVc7SUFFL0IsTUFBTSxDQUFDLHFCQUFxQixDQUFDLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXdCO1FBQ3hGLE1BQU0sTUFBTyxTQUFRLFdBQVc7WUFBaEM7O2dCQUVTLGNBQVMsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDO2dCQUM1QixlQUFVLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQztnQkFDOUIsa0JBQWEsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDO2dCQUNwQyxrQkFBYSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7Z0JBQ3BDLGdCQUFXLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQztZQUN6QyxDQUFDO1NBQUE7UUFFRCxPQUFPLElBQUksTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBZ0NELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBbUI7UUFDM0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztRQUUzQyxjQUFjO1FBQ2QsSUFBSSxhQUFhLEtBQUsseUJBQWEsQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxJQUFJLEtBQUssQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUN4RixNQUFNLElBQUksS0FBSyxDQUFDLDZFQUE2RSxDQUFDLENBQUM7U0FDaEc7UUFFRCxJQUFJ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ZTtJQUN6Qjs7O09BR0c7SUFDSCxnQ0FBYSxDQUFBO0lBRWI7Ozs7T0FJRztJQUNILGtDQUFlLENBQUE7SUFFZjs7O09BR0c7SUFDSCw4QkFBVyxDQUFBO0FBQ2IsQ0FBQyxFQW5CVyxlQUFlLEdBQWYsdUJBQWUsS0FBZix1QkFBZSxRQW1CMUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZWxidjIgPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2MicpO1xuaW1wb3J0IHsgQ29uc3RydWN0LCBJUmVzb3VyY2UsIFJlc291cmNlIH0gZnJvbSAnQGF3cy1jZGsvY2RrJztcbmltcG9ydCB7IEFsaWFzVGFyZ2V0SW5zdGFuY2UgfSBmcm9tICcuL2FsaWFzLXRhcmdldC1pbnN0YW5jZSc7XG5pbXBvcnQgeyBDbmFtZUluc3RhbmNlLCBDbmFtZUluc3RhbmNlQmFzZVByb3BzICB9IGZyb20gJy4vY25hbWUtaW5zdGFuY2UnO1xuaW1wb3J0IHsgSUluc3RhbmNlIH0gZnJvbSAnLi9pbnN0YW5jZSc7XG5pbXBvcnQgeyBJcEluc3RhbmNlLCBJcEluc3RhbmNlQmFzZVByb3BzIH0gZnJvbSAnLi9pcC1pbnN0YW5jZSc7XG5pbXBvcnQgeyBJTmFtZXNwYWNlLCBOYW1lc3BhY2VUeXBlIH0gZnJvbSAnLi9uYW1lc3BhY2UnO1xuaW1wb3J0IHsgTm9uSXBJbnN0YW5jZSwgTm9uSXBJbnN0YW5jZUJhc2VQcm9wcyB9IGZyb20gJy4vbm9uLWlwLWluc3RhbmNlJztcbmltcG9ydCB7IENmblNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VkaXNjb3ZlcnkuZ2VuZXJhdGVkJztcblxuZXhwb3J0IGludGVyZmFjZSBJU2VydmljZSBleHRlbmRzIElSZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBBIG5hbWUgZm9yIHRoZSBDbG91ZG1hcCBTZXJ2aWNlLlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiAgVGhlIG5hbWVzcGFjZSBmb3IgdGhlIENsb3VkbWFwIFNlcnZpY2UuXG4gICAqL1xuICByZWFkb25seSBuYW1lc3BhY2U6IElOYW1lc3BhY2U7XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgbmFtZXNwYWNlIHRoYXQgeW91IHdhbnQgdG8gdXNlIGZvciBETlMgY29uZmlndXJhdGlvbi5cbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgc2VydmljZUlkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBcm4gb2YgdGhlIG5hbWVzcGFjZSB0aGF0IHlvdSB3YW50IHRvIHVzZSBmb3IgRE5TIGNvbmZpZ3VyYXRpb24uXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIERuc1JlY29yZFR5cGUgdXNlZCBieSB0aGUgc2VydmljZVxuICAgKi9cbiAgcmVhZG9ubHkgZG5zUmVjb3JkVHlwZTogRG5zUmVjb3JkVHlwZTtcblxuICAvKipcbiAgICogVGhlIFJvdXRpbmcgUG9saWN5IHVzZWQgYnkgdGhlIHNlcnZpY2VcbiAgICovXG4gIHJlYWRvbmx5IHJvdXRpbmdQb2xpY3k6IFJvdXRpbmdQb2xpY3k7XG59XG5cbi8qKlxuICogQmFzaWMgcHJvcHMgbmVlZGVkIHRvIGNyZWF0ZSBhIHNlcnZpY2UgaW4gYSBnaXZlbiBuYW1lc3BhY2UuIFVzZWQgYnkgSHR0cE5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZVNlcnZpY2VQcm9wcyB7XG4gIC8qKlxuICAgKiBBIG5hbWUgZm9yIHRoZSBTZXJ2aWNlLlxuICAgKlxuICAgKiBAZGVmYXVsdCBDbG91ZEZvcm1hdGlvbi1nZW5lcmF0ZWQgbmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQSBkZXNjcmlwdGlvbiBvZiB0aGUgc2VydmljZS5cbiAgICpcbiAgICogQGRlZmF1bHQgbm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNldHRpbmdzIGZvciBhbiBvcHRpb25hbCBoZWFsdGggY2hlY2suICBJZiB5b3Ugc3BlY2lmeSBoZWFsdGggY2hlY2sgc2V0dGluZ3MsIEFXUyBDbG91ZCBNYXAgYXNzb2NpYXRlcyB0aGUgaGVhbHRoXG4gICAqIGNoZWNrIHdpdGggdGhlIHJlY29yZHMgdGhhdCB5b3Ugc3BlY2lmeSBpbiBEbnNDb25maWcuIE9ubHkgb25lIG9mIGhlYWx0aENoZWNrQ29uZmlnIG9yIGhlYWx0aENoZWNrQ3VzdG9tQ29uZmlnIGNhblxuICAgKiBiZSBzcGVjaWZpZWQuIE5vdCB2YWxpZCBmb3IgUHJpdmF0ZURuc05hbWVzcGFjZXMuIElmIHlvdSB1c2UgaGVhbHRoQ2hlY2ssIHlvdSBjYW4gb25seSByZWdpc3RlciBJUCBpbnN0YW5jZXMgdG9cbiAgICogdGhpcyBzZXJ2aWNlLlxuICAgKlxuICAgKiBAZGVmYXVsdCBub25lXG4gICAqL1xuICByZWFkb25seSBoZWFsdGhDaGVjaz86IEhlYWx0aENoZWNrQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBTdHJ1Y3R1cmUgY29udGFpbmluZyBmYWlsdXJlIHRocmVzaG9sZCBmb3IgYSBjdXN0b20gaGVhbHRoIGNoZWNrZXIuXG4gICAqIE9ubHkgb25lIG9mIGhlYWx0aENoZWNrQ29uZmlnIG9yIGhlYWx0aENoZWNrQ3VzdG9tQ29uZmlnIGNhbiBiZSBzcGVjaWZpZWQuXG4gICAqIFNlZTogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2Nsb3VkLW1hcC9sYXRlc3QvYXBpL0FQSV9IZWFsdGhDaGVja0N1c3RvbUNvbmZpZy5odG1sXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vbmVcbiAgICovXG4gIHJlYWRvbmx5IGN1c3RvbUhlYWx0aENoZWNrPzogSGVhbHRoQ2hlY2tDdXN0b21Db25maWc7XG59XG5cbi8qKlxuICogU2VydmljZSBwcm9wcyBuZWVkZWQgdG8gY3JlYXRlIGEgc2VydmljZSBpbiBhIGdpdmVuIG5hbWVzcGFjZS4gVXNlZCBieSBjcmVhdGVTZXJ2aWNlKCkgZm9yIFByaXZhdGVEbnNOYW1lc3BhY2UgYW5kXG4gKiBQdWJsaWNEbnNOYW1lc3BhY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEbnNTZXJ2aWNlUHJvcHMgZXh0ZW5kcyBCYXNlU2VydmljZVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBETlMgdHlwZSBvZiB0aGUgcmVjb3JkIHRoYXQgeW91IHdhbnQgQVdTIENsb3VkIE1hcCB0byBjcmVhdGUuIFN1cHBvcnRlZCByZWNvcmQgdHlwZXNcbiAgICogaW5jbHVkZSBBLCBBQUFBLCBBIGFuZCBBQUFBIChBX0FBQUEpLCBDTkFNRSwgYW5kIFNSVi5cbiAgICpcbiAgICogQGRlZmF1bHQgQVxuICAgKi9cbiAgcmVhZG9ubHkgZG5zUmVjb3JkVHlwZT86IERuc1JlY29yZFR5cGU7XG5cbiAgLyoqXG4gICAqIFRoZSBhbW91bnQgb2YgdGltZSwgaW4gc2Vjb25kcywgdGhhdCB5b3Ugd2FudCBETlMgcmVzb2x2ZXJzIHRvIGNhY2hlIHRoZSBzZXR0aW5ncyBmb3IgdGhpc1xuICAgKiByZWNvcmQuXG4gICAqXG4gICAqIEBkZWZhdWx0IDYwXG4gICAqL1xuICByZWFkb25seSBkbnNUdGxTZWM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSByb3V0aW5nIHBvbGljeSB0aGF0IHlvdSB3YW50IHRvIGFwcGx5IHRvIGFsbCBETlMgcmVjb3JkcyB0aGF0IEFXUyBDbG91ZCBNYXAgY3JlYXRlcyB3aGVuIHlvdVxuICAgKiByZWdpc3RlciBhbiBpbnN0YW5jZSBhbmQgc3BlY2lmeSB0aGlzIHNlcnZpY2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IFdFSUdIVEVEIGZvciBDTkFNRSByZWNvcmRzIGFuZCB3aGVuIGxvYWRCYWxhbmNlciBpcyB0cnVlLCBNVUxUSVZBTFVFIG90aGVyd2lzZVxuICAgKi9cbiAgcmVhZG9ubHkgcm91dGluZ1BvbGljeT86IFJvdXRpbmdQb2xpY3k7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRoaXMgc2VydmljZSB3aWxsIGhhdmUgYW4gRWxhc3RpYyBMb2FkQmFsYW5jZXIgcmVnaXN0ZXJlZCB0byBpdCBhcyBhbiBBbGlhc1RhcmdldEluc3RhbmNlLlxuICAgKlxuICAgKiBTZXR0aW5nIHRoaXMgdG8gYHRydWVgIGNvcnJlY3RseSBjb25maWd1cmVzIHRoZSBgcm91dGluZ1BvbGljeWBcbiAgICogYW5kIHBlcmZvcm1zIHNvbWUgYWRkaXRpb25hbCB2YWxpZGF0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgbG9hZEJhbGFuY2VyPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZXJ2aWNlUHJvcHMgZXh0ZW5kcyBEbnNTZXJ2aWNlUHJvcHMge1xuICAvKipcbiAgICogVGhlIElEIG9mIHRoZSBuYW1lc3BhY2UgdGhhdCB5b3Ugd2FudCB0byB1c2UgZm9yIEROUyBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZXNwYWNlOiBJTmFtZXNwYWNlO1xufVxuXG5hYnN0cmFjdCBjbGFzcyBTZXJ2aWNlQmFzZSBleHRlbmRzIFJlc291cmNlIGltcGxlbWVudHMgSVNlcnZpY2Uge1xuICBwdWJsaWMgYWJzdHJhY3QgbmFtZXNwYWNlOiBJTmFtZXNwYWNlO1xuICBwdWJsaWMgYWJzdHJhY3Qgc2VydmljZUlkOiBzdHJpbmc7XG4gIHB1YmxpYyBhYnN0cmFjdCBzZXJ2aWNlQXJuOiBzdHJpbmc7XG4gIHB1YmxpYyBhYnN0cmFjdCBkbnNSZWNvcmRUeXBlOiBEbnNSZWNvcmRUeXBlO1xuICBwdWJsaWMgYWJzdHJhY3Qgcm91dGluZ1BvbGljeTogUm91dGluZ1BvbGljeTtcbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IHNlcnZpY2VOYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VydmljZUF0dHJpYnV0ZXMge1xuICByZWFkb25seSBzZXJ2aWNlTmFtZTogc3RyaW5nO1xuICByZWFkb25seSBzZXJ2aWNlSWQ6IHN0cmluZztcbiAgcmVhZG9ubHkgc2VydmljZUFybjogc3RyaW5nO1xuICByZWFkb25seSBkbnNSZWNvcmRUeXBlOiBEbnNSZWNvcmRUeXBlO1xuICByZWFkb25seSByb3V0aW5nUG9saWN5OiBSb3V0aW5nUG9saWN5O1xufVxuXG4vKipcbiAqIERlZmluZSBhIENsb3VkTWFwIFNlcnZpY2VcbiAqL1xuZXhwb3J0IGNsYXNzIFNlcnZpY2UgZXh0ZW5kcyBTZXJ2aWNlQmFzZSB7XG5cbiAgcHVibGljIHN0YXRpYyBmcm9tU2VydmljZUF0dHJpYnV0ZXMoc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgYXR0cnM6IFNlcnZpY2VBdHRyaWJ1dGVzKTogSVNlcnZpY2Uge1xuICAgIGNsYXNzIEltcG9ydCBleHRlbmRzIFNlcnZpY2VCYXNlIHtcbiAgICAgIHB1YmxpYyBuYW1lc3BhY2U6IElOYW1lc3BhY2U7XG4gICAgICBwdWJsaWMgc2VydmljZUlkID0gYXR0cnMuc2VydmljZUlkO1xuICAgICAgcHVibGljIHNlcnZpY2VBcm4gPSBhdHRycy5zZXJ2aWNlQXJuO1xuICAgICAgcHVibGljIGRuc1JlY29yZFR5cGUgPSBhdHRycy5kbnNSZWNvcmRUeXBlO1xuICAgICAgcHVibGljIHJvdXRpbmdQb2xpY3kgPSBhdHRycy5yb3V0aW5nUG9saWN5O1xuICAgICAgcHVibGljIHNlcnZpY2VOYW1lID0gYXR0cnMuc2VydmljZU5hbWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBJbXBvcnQoc2NvcGUsIGlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIG5hbWUgZm9yIHRoZSBDbG91ZG1hcCBTZXJ2aWNlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNlcnZpY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqICBUaGUgbmFtZXNwYWNlIGZvciB0aGUgQ2xvdWRtYXAgU2VydmljZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBuYW1lc3BhY2U6IElOYW1lc3BhY2U7XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgbmFtZXNwYWNlIHRoYXQgeW91IHdhbnQgdG8gdXNlIGZvciBETlMgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzZXJ2aWNlSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFybiBvZiB0aGUgbmFtZXNwYWNlIHRoYXQgeW91IHdhbnQgdG8gdXNlIGZvciBETlMgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzZXJ2aWNlQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBEbnNSZWNvcmRUeXBlIHVzZWQgYnkgdGhlIHNlcnZpY2VcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBkbnNSZWNvcmRUeXBlOiBEbnNSZWNvcmRUeXBlO1xuXG4gIC8qKlxuICAgKiBUaGUgUm91dGluZyBQb2xpY3kgdXNlZCBieSB0aGUgc2VydmljZVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHJvdXRpbmdQb2xpY3k6IFJvdXRpbmdQb2xpY3k7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFNlcnZpY2VQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2VUeXBlID0gcHJvcHMubmFtZXNwYWNlLnR5cGU7XG5cbiAgICAvLyBWYWxpZGF0aW9uc1xuICAgIGlmIChuYW1lc3BhY2VUeXBlID09PSBOYW1lc3BhY2VUeXBlLkh0dHAgJiYgKHByb3BzLnJvdXRpbmdQb2xpY3kgfHwgcHJvcHMuZG5zUmVjb3JkVHlwZSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQ2Fubm90IHNwZWNpZnkgYHJvdXRpbmdQb2xpY3lgIG9yIGBkbnNSZWNvcmRgIHdoZW4gdXNpbmcgYW4gSFRUUCBuYW1lc3BhY2UuJyk7XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLmhlYWx0aENoZWNrICYmIHByb3BzLmN1c3RvbUhlYWx0aENoZWNrKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBzcGVjaWZ5IGJvdGggYGhlYWx0aENoZWNrQ29uZmlnYCBhbmQgYGhlYWx0aENoZWNrQ3VzdG9tQ29uZmlnYC4nKTtcbiAgICB9XG5cbiAgICBpZiAobmFtZXNwYWNlVHlwZSA9PT0gTmFtZXNwYWNlVHlwZS5EbnNQcml2YXRlICYmIHByb3BzLmhlYWx0aENoZWNrKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBzcGVjaWZ5IGBoZWFsdGhDaGVja0NvbmZpZ2AgZm9yIGEgUHJpdmF0ZSBETlMgbmFtZXNwYWNlLicpO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5yb3V0aW5nUG9saWN5ID09PSBSb3V0aW5nUG9saWN5Lk11bHRpdmFsdWVcbiAgICAgICAgJiYgcHJvcHMuZG5zUmVjb3JkVHlwZSA9PT0gRG5zUmVjb3JkVHlwZS5DTkFNRSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgdXNlIGBDTkFNRWAgcmVjb3JkIHdoZW4gcm91dGluZyBwb2xpY3kgaXMgYE11bHRpdmFsdWVgLicpO1xuICAgIH1cblxuICAgIC8vIEFkZGl0aW9uYWwgdmFsaWRhdGlvbiBmb3IgZXZlbnR1YWwgYXR0YWNobWVudCBvZiBMQnNcbiAgICAvLyBUaGUgc2FtZSB2YWxpZGF0aW9uIGhhcHBlbnMgbGF0ZXIgb24gZHVyaW5nIHRoZSBhY3R1YWwgYXR0YWNobWVudFxuICAgIC8vIG9mIExCcywgYnV0IHdlIG5lZWQgdGhlIHByb3BlcnR5IGZvciB0aGUgY29ycmVjdCBjb25maWd1cmF0aW9uIG9mXG4gICAgLy8gcm91dGluZ1BvbGljeSBhbnl3YXksIHNvIG1pZ2h0IGFzIHdlbGwgZG8gdGhlIHZhbGlkYXRpb24gYXMgd2VsbC5cbiAgICBpZiAocHJvcHMucm91dGluZ1BvbGljeSA9PT0gUm91dGluZ1BvbGljeS5NdWx0aXZhbHVlXG4gICAgICAgICYmIHByb3BzLmxvYWRCYWxhbmNlcikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgcmVnaXN0ZXIgbG9hZGJhbGFuY2VycyB3aGVuIHJvdXRpbmcgcG9saWN5IGlzIGBNdWx0aXZhbHVlYC4nKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMuaGVhbHRoQ2hlY2tcbiAgICAgICAgJiYgcHJvcHMuaGVhbHRoQ2hlY2sudHlwZSA9PT0gSGVhbHRoQ2hlY2tUeXBlLlRjcFxuICAgICAgICAmJiBwcm9wcy5oZWFsdGhDaGVjay5yZXNvdXJjZVBhdGgpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBzcGVjaWZ5IGByZXNvdXJjZVBhdGhgIHdoZW4gdXNpbmcgYSBgVENQYCBoZWFsdGggY2hlY2suJyk7XG4gICAgfVxuXG4gICAgLy8gU2V0IGRlZmF1bHRzIHdoZXJlIG5lY2Vzc2FyeVxuICAgIGNvbnN0IHJvdXRpbmdQb2xpY3kgPSAocHJvcHMuZG5zUmVjb3JkVHlwZSA9PT0gRG5zUmVjb3JkVHlwZS5DTkFNRSkgfHwgcHJvcHMubG9hZEJhbGFuY2VyXG4gICAgICA/IFJvdXRpbmdQb2xpY3kuV2VpZ2h0ZWRcbiAgICAgIDogUm91dGluZ1BvbGljeS5NdWx0aXZhbHVlO1xuXG4gICAgY29uc3QgZG5zUmVjb3JkVHlwZSA9IHByb3BzLmRuc1JlY29yZFR5cGUgfHwgRG5zUmVjb3JkVHlwZS5BO1xuXG4gICAgaWYgKHByb3BzLmxvYWRCYWxhbmNlclxuICAgICAgJiYgKCEoZG5zUmVjb3JkVHlwZSA9PT0gRG5zUmVjb3JkVHlwZS5BXG4gICAgICAgIHx8IGRuc1JlY29yZFR5cGUgPT09IERuc1JlY29yZFR5cGUuQUFBQVxuICAgICAgICB8fCBkbnNSZWNvcmRUeXBlID09PSBEbnNSZWNvcmRUeXBlLkFfQUFBQSkpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ011c3Qgc3VwcG9ydCBgQWAgb3IgYEFBQUFgIHJlY29yZHMgdG8gcmVnaXN0ZXIgbG9hZGJhbGFuY2Vycy4nKTtcbiAgICB9XG5cbiAgICBjb25zdCBkbnNDb25maWc6IENmblNlcnZpY2UuRG5zQ29uZmlnUHJvcGVydHkgfCB1bmRlZmluZWQgPSBwcm9wcy5uYW1lc3BhY2UudHlwZSA9PT0gTmFtZXNwYWNlVHlwZS5IdHRwXG4gICAgICA/IHVuZGVmaW5lZFxuICAgICAgOiB7XG4gICAgICAgICAgZG5zUmVjb3JkczogcmVuZGVyRG5zUmVjb3JkcyhkbnNSZWNvcmRUeXBlLCBwcm9wcy5kbnNUdGxTZWMpLFxuICAgICAgICAgIG5hbWVzcGFjZUlkOiBwcm9wcy5uYW1lc3BhY2UubmFtZXNwYWNlSWQsXG4gICAgICAgICAgcm91dGluZ1BvbGljeSxcbiAgICAgICAgfTtcblxuICAgIGNvbnN0IGhlYWx0aENoZWNrQ29uZmlnRGVmYXVsdHMgPSB7XG4gICAgICB0eXBlOiBIZWFsdGhDaGVja1R5cGUuSHR0cCxcbiAgICAgIGZhaWx1cmVUaHJlc2hvbGQ6IDEsXG4gICAgICByZXNvdXJjZVBhdGg6IHByb3BzLmhlYWx0aENoZWNrICYmIHByb3BzLmhlYWx0aENoZWNrLnR5cGUgIT09IEhlYWx0aENoZWNrVHlwZS5UY3BcbiAgICAgICAgPyAnLydcbiAgICAgICAgOiB1bmRlZmluZWRcbiAgICB9O1xuXG4gICAgY29uc3QgaGVhbHRoQ2hlY2tDb25maWcgPSBwcm9wcy5oZWFsdGhDaGVjayAmJiB7IC4uLmhlYWx0aENoZWNrQ29uZmlnRGVmYXVsdHMsIC4uLnByb3BzLmhlYWx0aENoZWNrIH07XG4gICAgY29uc3QgaGVhbHRoQ2hlY2tDdXN0b21Db25maWcgPSBwcm9wcy5jdXN0b21IZWFsdGhDaGVjaztcblxuICAgIC8vIENyZWF0ZSBzZXJ2aWNlXG4gICAgY29uc3Qgc2VydmljZSA9IG5ldyBDZm5TZXJ2aWNlKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIG5hbWU6IHByb3BzLm5hbWUsXG4gICAgICBkZXNjcmlwdGlvbjogcHJvcHMuZGVzY3JpcHRpb24sXG4gICAgICBkbnNDb25maWcsXG4gICAgICBoZWFsdGhDaGVja0NvbmZpZyxcbiAgICAgIGhlYWx0aENoZWNrQ3VzdG9tQ29uZmlnLFxuICAgICAgbmFtZXNwYWNlSWQ6IHByb3BzLm5hbWVzcGFjZS5uYW1lc3BhY2VJZFxuICAgIH0pO1xuXG4gICAgdGhpcy5zZXJ2aWNlTmFtZSA9IHNlcnZpY2Uuc2VydmljZU5hbWU7XG4gICAgdGhpcy5zZXJ2aWNlQXJuID0gc2VydmljZS5zZXJ2aWNlQXJuO1xuICAgIHRoaXMuc2VydmljZUlkID0gc2VydmljZS5zZXJ2aWNlSWQ7XG4gICAgdGhpcy5uYW1lc3BhY2UgPSBwcm9wcy5uYW1lc3BhY2U7XG4gICAgdGhpcy5kbnNSZWNvcmRUeXBlID0gZG5zUmVjb3JkVHlwZTtcbiAgICB0aGlzLnJvdXRpbmdQb2xpY3kgPSByb3V0aW5nUG9saWN5O1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhbiBFTEIgYXMgYSBuZXcgaW5zdGFuY2Ugd2l0aCB1bmlxdWUgbmFtZSBpbnN0YW5jZUlkIGluIHRoaXMgc2VydmljZS5cbiAgICovXG4gIHB1YmxpYyByZWdpc3RlckxvYWRCYWxhbmNlcihpZDogc3RyaW5nLCBsb2FkQmFsYW5jZXI6IGVsYnYyLklMb2FkQmFsYW5jZXJWMiwgY3VzdG9tQXR0cmlidXRlcz86IHtba2V5OiBzdHJpbmddOiBzdHJpbmd9KTogSUluc3RhbmNlIHtcbiAgICByZXR1cm4gbmV3IEFsaWFzVGFyZ2V0SW5zdGFuY2UodGhpcywgaWQsIHtcbiAgICAgIHNlcnZpY2U6IHRoaXMsXG4gICAgICBkbnNOYW1lOiBsb2FkQmFsYW5jZXIubG9hZEJhbGFuY2VyRG5zTmFtZSxcbiAgICAgIGN1c3RvbUF0dHJpYnV0ZXNcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlcnMgYSByZXNvdXJjZSB0aGF0IGlzIGFjY2Vzc2libGUgdXNpbmcgdmFsdWVzIG90aGVyIHRoYW4gYW4gSVAgYWRkcmVzcyBvciBhIGRvbWFpbiBuYW1lIChDTkFNRSkuXG4gICAqL1xuICBwdWJsaWMgcmVnaXN0ZXJOb25JcEluc3RhbmNlKGlkOiBzdHJpbmcsIHByb3BzOiBOb25JcEluc3RhbmNlQmFzZVByb3BzKTogSUluc3RhbmNlIHtcbiAgICByZXR1cm4gbmV3IE5vbklwSW5zdGFuY2UodGhpcywgaWQsIHtcbiAgICAgIHNlcnZpY2U6IHRoaXMsXG4gICAgICAuLi5wcm9wc1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIHJlc291cmNlIHRoYXQgaXMgYWNjZXNzaWJsZSB1c2luZyBhbiBJUCBhZGRyZXNzLlxuICAgKi9cbiAgcHVibGljIHJlZ2lzdGVySXBJbnN0YW5jZShpZDogc3RyaW5nLCBwcm9wczogSXBJbnN0YW5jZUJhc2VQcm9wcyk6IElJbnN0YW5jZSB7XG4gICAgcmV0dXJuIG5ldyBJcEluc3RhbmNlKHRoaXMsIGlkLCB7XG4gICAgICBzZXJ2aWNlOiB0aGlzLFxuICAgICAgLi4ucHJvcHNcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlcnMgYSByZXNvdXJjZSB0aGF0IGlzIGFjY2Vzc2libGUgdXNpbmcgYSBDTkFNRS5cbiAgICovXG4gIHB1YmxpYyByZWdpc3RlckNuYW1lSW5zdGFuY2UoaWQ6IHN0cmluZywgcHJvcHM6IENuYW1lSW5zdGFuY2VCYXNlUHJvcHMpOiBJSW5zdGFuY2Uge1xuICAgIHJldHVybiBuZXcgQ25hbWVJbnN0YW5jZSh0aGlzLCBpZCwge1xuICAgICAgc2VydmljZTogdGhpcyxcbiAgICAgIC4uLnByb3BzXG4gICAgfSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gcmVuZGVyRG5zUmVjb3JkcyhkbnNSZWNvcmRUeXBlOiBEbnNSZWNvcmRUeXBlLCBkbnNUdGxTZWM/OiBudW1iZXIpOiBDZm5TZXJ2aWNlLkRuc1JlY29yZFByb3BlcnR5W10ge1xuICBjb25zdCB0dGwgPSBkbnNUdGxTZWMgIT09IHVuZGVmaW5lZCA/IGRuc1R0bFNlYyA6IDYwO1xuXG4gIGlmIChkbnNSZWNvcmRUeXBlID09PSBEbnNSZWNvcmRUeXBlLkFfQUFBQSkge1xuICAgIHJldHVybiBbe1xuICAgICAgdHlwZTogRG5zUmVjb3JkVHlwZS5BLFxuICAgICAgdHRsXG4gICAgfSwge1xuICAgICAgdHlwZTogRG5zUmVjb3JkVHlwZS5BQUFBLFxuICAgICAgdHRsLFxuICAgIH1dO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBbeyB0eXBlOiBkbnNSZWNvcmRUeXBlLCB0dGwgfV07XG4gIH1cbn1cblxuLyoqXG4gKiBTZXR0aW5ncyBmb3IgYW4gb3B0aW9uYWwgQW1hem9uIFJvdXRlIDUzIGhlYWx0aCBjaGVjay4gSWYgeW91IHNwZWNpZnkgc2V0dGluZ3MgZm9yIGEgaGVhbHRoIGNoZWNrLCBBV1MgQ2xvdWQgTWFwXG4gKiBhc3NvY2lhdGVzIHRoZSBoZWFsdGggY2hlY2sgd2l0aCBhbGwgdGhlIHJlY29yZHMgdGhhdCB5b3Ugc3BlY2lmeSBpbiBEbnNDb25maWcuIE9ubHkgdmFsaWQgd2l0aCBhIFB1YmxpY0Ruc05hbWVzcGFjZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBIZWFsdGhDaGVja0NvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvZiBoZWFsdGggY2hlY2sgdGhhdCB5b3Ugd2FudCB0byBjcmVhdGUsIHdoaWNoIGluZGljYXRlcyBob3cgUm91dGUgNTMgZGV0ZXJtaW5lcyB3aGV0aGVyIGFuIGVuZHBvaW50IGlzXG4gICAqIGhlYWx0aHkuIENhbm5vdCBiZSBtb2RpZmllZCBvbmNlIGNyZWF0ZWQuIFN1cHBvcnRlZCB2YWx1ZXMgYXJlIEhUVFAsIEhUVFBTLCBhbmQgVENQLlxuICAgKlxuICAgKiBAZGVmYXVsdCBIVFRQXG4gICAqL1xuICByZWFkb25seSB0eXBlPzogSGVhbHRoQ2hlY2tUeXBlO1xuXG4gIC8qKlxuICAgKiBUaGUgcGF0aCB0aGF0IHlvdSB3YW50IFJvdXRlIDUzIHRvIHJlcXVlc3Qgd2hlbiBwZXJmb3JtaW5nIGhlYWx0aCBjaGVja3MuIERvIG5vdCB1c2Ugd2hlbiBoZWFsdGggY2hlY2sgdHlwZSBpcyBUQ1AuXG4gICAqXG4gICAqIEBkZWZhdWx0ICcvJ1xuICAgKi9cbiAgcmVhZG9ubHkgcmVzb3VyY2VQYXRoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIGNvbnNlY3V0aXZlIGhlYWx0aCBjaGVja3MgdGhhdCBhbiBlbmRwb2ludCBtdXN0IHBhc3Mgb3IgZmFpbCBmb3IgUm91dGUgNTMgdG8gY2hhbmdlIHRoZSBjdXJyZW50XG4gICAqIHN0YXR1cyBvZiB0aGUgZW5kcG9pbnQgZnJvbSB1bmhlYWx0aHkgdG8gaGVhbHRoeSBvciB2aWNlIHZlcnNhLlxuICAgKlxuICAgKiBAZGVmYXVsdCAxXG4gICAqL1xuICByZWFkb25seSBmYWlsdXJlVGhyZXNob2xkPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIFNwZWNpZmllcyBpbmZvcm1hdGlvbiBhYm91dCBhbiBvcHRpb25hbCBjdXN0b20gaGVhbHRoIGNoZWNrLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEhlYWx0aENoZWNrQ3VzdG9tQ29uZmlnIHtcbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgMzAtc2Vjb25kIGludGVydmFscyB0aGF0IHlvdSB3YW50IENsb3VkIE1hcCB0byB3YWl0IGFmdGVyIHJlY2VpdmluZyBhblxuICAgKiBVcGRhdGVJbnN0YW5jZUN1c3RvbUhlYWx0aFN0YXR1cyByZXF1ZXN0IGJlZm9yZSBpdCBjaGFuZ2VzIHRoZSBoZWFsdGggc3RhdHVzIG9mIGEgc2VydmljZSBpbnN0YW5jZS5cbiAgICpcbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgcmVhZG9ubHkgZmFpbHVyZVRocmVzaG9sZD86IG51bWJlcjtcbn1cblxuZXhwb3J0IGVudW0gRG5zUmVjb3JkVHlwZSB7XG4gIC8qKlxuICAgKiBBbiBBIHJlY29yZFxuICAgKi9cbiAgQSA9IFwiQVwiLFxuXG4gIC8qKlxuICAgKiBBbiBBQUFBIHJlY29yZFxuICAgKi9cbiAgQUFBQSA9IFwiQUFBQVwiLFxuXG4gIC8qKlxuICAgKiBCb3RoIGFuIEEgYW5kIEFBQUEgcmVjb3JkXG4gICAqL1xuICBBX0FBQUEgPSBcIkEsIEFBQUFcIixcblxuICAvKipcbiAgICogQSBTcnYgcmVjb3JkXG4gICAqL1xuICBTUlYgPSBcIlNSVlwiLFxuXG4gIC8qKlxuICAgKiBBIENOQU1FIHJlY29yZFxuICAgKi9cbiAgQ05BTUUgPSBcIkNOQU1FXCIsXG59XG5cbmV4cG9ydCBlbnVtIFJvdXRpbmdQb2xpY3kge1xuICAvKipcbiAgICogUm91dGUgNTMgcmV0dXJucyB0aGUgYXBwbGljYWJsZSB2YWx1ZSBmcm9tIG9uZSByYW5kb21seSBzZWxlY3RlZCBpbnN0YW5jZSBmcm9tIGFtb25nIHRoZSBpbnN0YW5jZXMgdGhhdCB5b3VcbiAgICogcmVnaXN0ZXJlZCB1c2luZyB0aGUgc2FtZSBzZXJ2aWNlLlxuICAgKi9cbiAgV2VpZ2h0ZWQgPSBcIldFSUdIVEVEXCIsXG5cbiAgLyoqXG4gICAqIElmIHlvdSBkZWZpbmUgYSBoZWFsdGggY2hlY2sgZm9yIHRoZSBzZXJ2aWNlIGFuZCB0aGUgaGVhbHRoIGNoZWNrIGlzIGhlYWx0aHksIFJvdXRlIDUzIHJldHVybnMgdGhlIGFwcGxpY2FibGUgdmFsdWVcbiAgICogZm9yIHVwIHRvIGVpZ2h0IGluc3RhbmNlcy5cbiAgICovXG4gIE11bHRpdmFsdWUgPSBcIk1VTFRJVkFMVUVcIixcbn1cblxuZXhwb3J0IGVudW0gSGVhbHRoQ2hlY2tUeXBlIHtcbiAgLyoqXG4gICAqIFJvdXRlIDUzIHRyaWVzIHRvIGVzdGFibGlzaCBhIFRDUCBjb25uZWN0aW9uLiBJZiBzdWNjZXNzZnVsLCBSb3V0ZSA1MyBzdWJtaXRzIGFuIEhUVFAgcmVxdWVzdCBhbmQgd2FpdHMgZm9yIGFuIEhUVFBcbiAgICogc3RhdHVzIGNvZGUgb2YgMjAwIG9yIGdyZWF0ZXIgYW5kIGxlc3MgdGhhbiA0MDAuXG4gICAqL1xuICBIdHRwID0gXCJIVFRQXCIsXG5cbiAgLyoqXG4gICAqIFJvdXRlIDUzIHRyaWVzIHRvIGVzdGFibGlzaCBhIFRDUCBjb25uZWN0aW9uLiBJZiBzdWNjZXNzZnVsLCBSb3V0ZSA1MyBzdWJtaXRzIGFuIEhUVFBTIHJlcXVlc3QgYW5kIHdhaXRzIGZvciBhblxuICAgKiBIVFRQIHN0YXR1cyBjb2RlIG9mIDIwMCBvciBncmVhdGVyIGFuZCBsZXNzIHRoYW4gNDAwLiAgSWYgeW91IHNwZWNpZnkgSFRUUFMgZm9yIHRoZSB2YWx1ZSBvZiBUeXBlLCB0aGUgZW5kcG9pbnRcbiAgICogbXVzdCBzdXBwb3J0IFRMUyB2MS4wIG9yIGxhdGVyLlxuICAgKi9cbiAgSHR0cHMgPSBcIkhUVFBTXCIsXG5cbiAgLyoqXG4gICAqIFJvdXRlIDUzIHRyaWVzIHRvIGVzdGFibGlzaCBhIFRDUCBjb25uZWN0aW9uLlxuICAgKiBJZiB5b3Ugc3BlY2lmeSBUQ1AgZm9yIFR5cGUsIGRvbid0IHNwZWNpZnkgYSB2YWx1ZSBmb3IgUmVzb3VyY2VQYXRoLlxuICAgKi9cbiAgVGNwID0gXCJUQ1BcIixcbn1cbiJdfQ==
{
"name": "@aws-cdk/aws-servicediscovery",
"version": "0.31.0",
"version": "0.32.0",
"description": "The CDK Construct Library for AWS::ServiceDiscovery",

@@ -43,3 +43,5 @@ "main": "lib/index.js",

"awslint": "cdk-awslint",
"cfn2ts": "cfn2ts"
"cfn2ts": "cfn2ts",
"build+test+package": "npm run build+test && npm run package",
"build+test": "npm run build && npm test"
},

@@ -62,42 +64,24 @@ "cdk-build": {

"devDependencies": {
"@aws-cdk/assert": "^0.31.0",
"cdk-build-tools": "^0.31.0",
"cdk-integ-tools": "^0.31.0",
"cfn2ts": "^0.31.0",
"pkglint": "^0.31.0"
"@aws-cdk/assert": "^0.32.0",
"cdk-build-tools": "^0.32.0",
"cdk-integ-tools": "^0.32.0",
"cfn2ts": "^0.32.0",
"pkglint": "^0.32.0"
},
"dependencies": {
"@aws-cdk/aws-ec2": "^0.31.0",
"@aws-cdk/aws-elasticloadbalancingv2": "^0.31.0",
"@aws-cdk/aws-route53": "^0.31.0",
"@aws-cdk/cdk": "^0.31.0"
"@aws-cdk/aws-ec2": "^0.32.0",
"@aws-cdk/aws-elasticloadbalancingv2": "^0.32.0",
"@aws-cdk/aws-route53": "^0.32.0",
"@aws-cdk/cdk": "^0.32.0"
},
"homepage": "https://github.com/awslabs/aws-cdk",
"peerDependencies": {
"@aws-cdk/aws-ec2": "^0.31.0",
"@aws-cdk/aws-elasticloadbalancingv2": "^0.31.0",
"@aws-cdk/aws-route53": "^0.31.0",
"@aws-cdk/cdk": "^0.31.0"
"@aws-cdk/aws-ec2": "^0.32.0",
"@aws-cdk/aws-elasticloadbalancingv2": "^0.32.0",
"@aws-cdk/aws-route53": "^0.32.0",
"@aws-cdk/cdk": "^0.32.0"
},
"engines": {
"node": ">= 8.10.0"
},
"awslint": {
"exclude": [
"from-attributes:fromPrivateDnsNamespaceAttributes",
"from-arn:Service.fromServiceArn",
"from-arn:HttpNamespace.fromHttpNamespaceArn",
"from-attributes:fromHttpNamespaceAttributes",
"from-method:@aws-cdk/aws-servicediscovery.PrivateDnsNamespace",
"from-arn:PrivateDnsNamespace.fromPrivateDnsNamespaceArn",
"from-method:@aws-cdk/aws-servicediscovery.HttpNamespace",
"from-method:@aws-cdk/aws-servicediscovery.PublicDnsNamespace",
"from-arn:PublicDnsNamespace.fromPublicDnsNamespaceArn",
"from-attributes:fromPublicDnsNamespaceAttributes",
"from-method:@aws-cdk/aws-servicediscovery.Service",
"from-attributes:@aws-cdk/aws-servicediscovery.HttpNamespace.fromHttpNamespaceAttributes",
"from-attributes:@aws-cdk/aws-servicediscovery.PrivateDnsNamespace.fromPrivateDnsNamespaceAttributes",
"from-attributes:@aws-cdk/aws-servicediscovery.PublicDnsNamespace.fromPublicDnsNamespaceAttributes"
]
}
}

@@ -9,3 +9,3 @@ "use strict";

const stack = new cdk.Stack(app, 'aws-servicediscovery-integ');
const vpc = new ec2.VpcNetwork(stack, 'Vpc', { maxAZs: 2 });
const vpc = new ec2.Vpc(stack, 'Vpc', { maxAZs: 2 });
const namespace = new servicediscovery.PrivateDnsNamespace(stack, 'Namespace', {

@@ -23,2 +23,2 @@ name: 'boobar.com',

app.run();
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWcuc2VydmljZS13aXRoLXByaXZhdGUtZG5zLW5hbWVzcGFjZS5saXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbnRlZy5zZXJ2aWNlLXdpdGgtcHJpdmF0ZS1kbnMtbmFtZXNwYWNlLmxpdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHdDQUF5QztBQUN6Qyw2REFBOEQ7QUFDOUQsb0NBQXFDO0FBQ3JDLDJDQUE0QztBQUU1QyxNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztBQUMxQixNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLDRCQUE0QixDQUFDLENBQUM7QUFFL0QsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUU1RCxNQUFNLFNBQVMsR0FBRyxJQUFJLGdCQUFnQixDQUFDLG1CQUFtQixDQUFDLEtBQUssRUFBRSxXQUFXLEVBQUU7SUFDN0UsSUFBSSxFQUFFLFlBQVk7SUFDbEIsR0FBRztDQUNKLENBQUMsQ0FBQztBQUVILE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxhQUFhLENBQUMsU0FBUyxFQUFFO0lBQ2pELGFBQWEsRUFBRSxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsTUFBTTtJQUNwRCxTQUFTLEVBQUUsRUFBRTtJQUNiLFlBQVksRUFBRSxJQUFJO0NBQ25CLENBQUMsQ0FBQztBQUVILE1BQU0sWUFBWSxHQUFHLElBQUksS0FBSyxDQUFDLHVCQUF1QixDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxHQUFHLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7QUFFbkcsT0FBTyxDQUFDLG9CQUFvQixDQUFDLGNBQWMsRUFBRSxZQUFZLENBQUMsQ0FBQztBQUUzRCxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZWMyID0gcmVxdWlyZSgnQGF3cy1jZGsvYXdzLWVjMicpO1xuaW1wb3J0IGVsYnYyID0gcmVxdWlyZSgnQGF3cy1jZGsvYXdzLWVsYXN0aWNsb2FkYmFsYW5jaW5ndjInKTtcbmltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCBzZXJ2aWNlZGlzY292ZXJ5ID0gcmVxdWlyZSgnLi4vbGliJyk7XG5cbmNvbnN0IGFwcCA9IG5ldyBjZGsuQXBwKCk7XG5jb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soYXBwLCAnYXdzLXNlcnZpY2VkaXNjb3ZlcnktaW50ZWcnKTtcblxuY29uc3QgdnBjID0gbmV3IGVjMi5WcGNOZXR3b3JrKHN0YWNrLCAnVnBjJywgeyBtYXhBWnM6IDIgfSk7XG5cbmNvbnN0IG5hbWVzcGFjZSA9IG5ldyBzZXJ2aWNlZGlzY292ZXJ5LlByaXZhdGVEbnNOYW1lc3BhY2Uoc3RhY2ssICdOYW1lc3BhY2UnLCB7XG4gIG5hbWU6ICdib29iYXIuY29tJyxcbiAgdnBjLFxufSk7XG5cbmNvbnN0IHNlcnZpY2UgPSBuYW1lc3BhY2UuY3JlYXRlU2VydmljZSgnU2VydmljZScsIHtcbiAgZG5zUmVjb3JkVHlwZTogc2VydmljZWRpc2NvdmVyeS5EbnNSZWNvcmRUeXBlLkFfQUFBQSxcbiAgZG5zVHRsU2VjOiAzMCxcbiAgbG9hZEJhbGFuY2VyOiB0cnVlXG59KTtcblxuY29uc3QgbG9hZGJhbGFuY2VyID0gbmV3IGVsYnYyLkFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyKHN0YWNrLCAnTEInLCB7IHZwYywgaW50ZXJuZXRGYWNpbmc6IHRydWUgfSk7XG5cbnNlcnZpY2UucmVnaXN0ZXJMb2FkQmFsYW5jZXIoXCJMb2FkYmFsYW5jZXJcIiwgbG9hZGJhbGFuY2VyKTtcblxuYXBwLnJ1bigpO1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWcuc2VydmljZS13aXRoLXByaXZhdGUtZG5zLW5hbWVzcGFjZS5saXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbnRlZy5zZXJ2aWNlLXdpdGgtcHJpdmF0ZS1kbnMtbmFtZXNwYWNlLmxpdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHdDQUF5QztBQUN6Qyw2REFBOEQ7QUFDOUQsb0NBQXFDO0FBQ3JDLDJDQUE0QztBQUU1QyxNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztBQUMxQixNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLDRCQUE0QixDQUFDLENBQUM7QUFFL0QsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUVyRCxNQUFNLFNBQVMsR0FBRyxJQUFJLGdCQUFnQixDQUFDLG1CQUFtQixDQUFDLEtBQUssRUFBRSxXQUFXLEVBQUU7SUFDN0UsSUFBSSxFQUFFLFlBQVk7SUFDbEIsR0FBRztDQUNKLENBQUMsQ0FBQztBQUVILE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxhQUFhLENBQUMsU0FBUyxFQUFFO0lBQ2pELGFBQWEsRUFBRSxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsTUFBTTtJQUNwRCxTQUFTLEVBQUUsRUFBRTtJQUNiLFlBQVksRUFBRSxJQUFJO0NBQ25CLENBQUMsQ0FBQztBQUVILE1BQU0sWUFBWSxHQUFHLElBQUksS0FBSyxDQUFDLHVCQUF1QixDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxHQUFHLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7QUFFbkcsT0FBTyxDQUFDLG9CQUFvQixDQUFDLGNBQWMsRUFBRSxZQUFZLENBQUMsQ0FBQztBQUUzRCxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZWMyID0gcmVxdWlyZSgnQGF3cy1jZGsvYXdzLWVjMicpO1xuaW1wb3J0IGVsYnYyID0gcmVxdWlyZSgnQGF3cy1jZGsvYXdzLWVsYXN0aWNsb2FkYmFsYW5jaW5ndjInKTtcbmltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCBzZXJ2aWNlZGlzY292ZXJ5ID0gcmVxdWlyZSgnLi4vbGliJyk7XG5cbmNvbnN0IGFwcCA9IG5ldyBjZGsuQXBwKCk7XG5jb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soYXBwLCAnYXdzLXNlcnZpY2VkaXNjb3ZlcnktaW50ZWcnKTtcblxuY29uc3QgdnBjID0gbmV3IGVjMi5WcGMoc3RhY2ssICdWcGMnLCB7IG1heEFaczogMiB9KTtcblxuY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHJpdmF0ZURuc05hbWVzcGFjZShzdGFjaywgJ05hbWVzcGFjZScsIHtcbiAgbmFtZTogJ2Jvb2Jhci5jb20nLFxuICB2cGMsXG59KTtcblxuY29uc3Qgc2VydmljZSA9IG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdTZXJ2aWNlJywge1xuICBkbnNSZWNvcmRUeXBlOiBzZXJ2aWNlZGlzY292ZXJ5LkRuc1JlY29yZFR5cGUuQV9BQUFBLFxuICBkbnNUdGxTZWM6IDMwLFxuICBsb2FkQmFsYW5jZXI6IHRydWVcbn0pO1xuXG5jb25zdCBsb2FkYmFsYW5jZXIgPSBuZXcgZWxidjIuQXBwbGljYXRpb25Mb2FkQmFsYW5jZXIoc3RhY2ssICdMQicsIHsgdnBjLCBpbnRlcm5ldEZhY2luZzogdHJ1ZSB9KTtcblxuc2VydmljZS5yZWdpc3RlckxvYWRCYWxhbmNlcihcIkxvYWRiYWxhbmNlclwiLCBsb2FkYmFsYW5jZXIpO1xuXG5hcHAucnVuKCk7XG4iXX0=

@@ -74,3 +74,3 @@ "use strict";

const stack = new cdk.Stack();
const vpc = new ec2.VpcNetwork(stack, 'MyVpc');
const vpc = new ec2.Vpc(stack, 'MyVpc');
const namespace = new servicediscovery.PrivateDnsNamespace(stack, 'MyNamespace', {

@@ -199,3 +199,3 @@ name: 'public',

const stack = new cdk.Stack();
const vpc = new ec2.VpcNetwork(stack, 'MyVPC');
const vpc = new ec2.Vpc(stack, 'MyVPC');
const alb = new elbv2.ApplicationLoadBalancer(stack, 'MyALB', { vpc });

@@ -242,3 +242,3 @@ const namespace = new servicediscovery.PrivateDnsNamespace(stack, 'MyNamespace', {

});
const vpc = new ec2.VpcNetwork(stack, 'MyVPC');
const vpc = new ec2.Vpc(stack, 'MyVPC');
const alb = new elbv2.ApplicationLoadBalancer(stack, 'MyALB', { vpc });

@@ -261,3 +261,3 @@ // THEN

});
const vpc = new ec2.VpcNetwork(stack, 'MyVPC');
const vpc = new ec2.Vpc(stack, 'MyVPC');
const alb = new elbv2.ApplicationLoadBalancer(stack, 'MyALB', { vpc });

@@ -406,2 +406,2 @@ // THEN

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5pbnN0YW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRlc3QuaW5zdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDRDQUF1RTtBQUN2RSx3Q0FBeUM7QUFDekMsNkRBQThEO0FBQzlELG9DQUFxQztBQUVyQywyQ0FBNEM7QUFFNUMsaUJBQVM7SUFDUCwwQ0FBMEMsQ0FBQyxJQUFVO1FBQ25ELFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUU5QixNQUFNLFNBQVMsR0FBRyxJQUFJLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsYUFBYSxFQUFFO1lBQ3pFLElBQUksRUFBRSxNQUFNO1NBQ2IsQ0FBQyxDQUFDO1FBRUgsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUU7WUFDbkQsSUFBSSxFQUFFLFNBQVM7U0FDaEIsQ0FBQyxDQUFDO1FBRUgsT0FBTyxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRTtZQUN2QyxJQUFJLEVBQUUsVUFBVTtZQUNoQixJQUFJLEVBQUUsc0JBQXNCO1lBQzVCLElBQUksRUFBRSxHQUFHO1NBQ1YsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxpQ0FBaUMsRUFBRTtZQUMvRCxrQkFBa0IsRUFBRTtnQkFDbEIsaUJBQWlCLEVBQUUsVUFBVTtnQkFDN0IsaUJBQWlCLEVBQUUsc0JBQXNCO2dCQUN6QyxpQkFBaUIsRUFBRSxLQUFLO2FBQ3pCO1lBQ0QsU0FBUyxFQUFFO2dCQUNULFlBQVksRUFBRTtvQkFDWiw4QkFBOEI7b0JBQzlCLElBQUk7aUJBQ0w7YUFDRjtZQUNELFVBQVUsRUFBRSx3Q0FBd0M7U0FDckQsQ0FBQyxDQUFDLENBQUM7UUFFSixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDZCxDQUFDO0lB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Qyx1QkFBYyxDQUFDLGlDQUFpQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFdkUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2QsQ0FBQztDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb3VudFJlc291cmNlcywgZXhwZWN0LCBoYXZlUmVzb3VyY2UgfSBmcm9tICdAYXdzLWNkay9hc3NlcnQnO1xuaW1wb3J0IGVjMiA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2F3cy1lYzInKTtcbmltcG9ydCBlbGJ2MiA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2F3cy1lbGFzdGljbG9hZGJhbGFuY2luZ3YyJyk7XG5pbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5pbXBvcnQgeyBUZXN0IH0gZnJvbSAnbm9kZXVuaXQnO1xuaW1wb3J0IHNlcnZpY2VkaXNjb3ZlcnkgPSByZXF1aXJlKCcuLi9saWInKTtcblxuZXhwb3J0ID0ge1xuICAnSXBJbnN0YW5jZSBmb3Igc2VydmljZSBpbiBIVFRQIG5hbWVzcGFjZScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5IdHRwTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnaHR0cCcsXG4gICAgfSk7XG5cbiAgICBjb25zdCBzZXJ2aWNlID0gbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScsIHtcbiAgICAgIG5hbWU6ICdzZXJ2aWNlJyxcbiAgICB9KTtcblxuICAgIHNlcnZpY2UucmVnaXN0ZXJJcEluc3RhbmNlKCdJcEluc3RhbmNlJywge1xuICAgICAgaXB2NDogJzEwLjAuMC4wJyxcbiAgICAgIGlwdjY6ICcwOjA6MDowOjA6ZmZmZjphMDA6MCcsXG4gICAgICBwb3J0OiA0NDNcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICBleHBlY3Qoc3RhY2spLnRvKGhhdmVSZXNvdXJjZSgnQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpJbnN0YW5jZScsIHtcbiAgICAgIEluc3RhbmNlQXR0cmlidXRlczoge1xuICAgICAgICBBV1NfSU5TVEFOQ0VfSVBWNDogJzEwLjAuMC4wJyxcbiAgICAgICAgQVdTX0lOU1RBTkNFX0lQVjY6ICcwOjA6MDowOjA6ZmZmZjphMDA6MCcsXG4gICAgICAgIEFXU19JTlNUQU5DRV9QT1JUOiAnNDQzJ1xuICAgICAgfSxcbiAgICAgIFNlcnZpY2VJZDoge1xuICAgICAgICAnRm46OkdldEF0dCc6IFtcbiAgICAgICAgICAnTXlOYW1lc3BhY2VNeVNlcnZpY2UzNjVFMjQ3MCcsXG4gICAgICAgICAgJ0lkJ1xuICAgICAgICBdXG4gICAgICB9LFxuICAgICAgSW5zdGFuY2VJZDogJ015TmFtZXNwYWNlTXlTZXJ2aWNlSXBJbnN0YW5jZUJBQ0VCOUQyJ1xuICAgIH0pKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdJcEluc3RhbmNlIGZvciBzZXJ2aWNlIGluIFB1YmxpY0Ruc05hbWVzcGFjZScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5QdWJsaWNEbnNOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdwdWJsaWMnLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc2VydmljZSA9IG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnLCB7XG4gICAgICBuYW1lOiAnc2VydmljZScsXG4gICAgICBkbnNSZWNvcmRUeXBlOiBzZXJ2aWNlZGlzY292ZXJ5LkRuc1JlY29yZFR5cGUuQV9BQUFBXG4gICAgfSk7XG5cbiAgICBzZXJ2aWNlLnJlZ2lzdGVySXBJbnN0YW5jZSgnSXBJbnN0YW5jZScsIHtcbiAgICAgIGlwdjQ6ICc1NC4yMzkuMjUuMTkyJyxcbiAgICAgIGlwdjY6ICcwOjA6MDowOjA6ZmZmZjphMDA6MCcsXG4gICAgICBwb3J0OiA0NDNcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICBleHBlY3Qoc3RhY2spLnRvKGhhdmVSZXNvdXJjZSgnQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpJbnN0YW5jZScsIHtcbiAgICAgIEluc3RhbmNlQXR0cmlidXRlczoge1xuICAgICAgICBBV1NfSU5TVEFOQ0VfSVBWNDogJzU0LjIzOS4yNS4xOTInLFxuICAgICAgICBBV1NfSU5TVEFOQ0VfSVBWNjogJzA6MDowOjA6MDpmZmZmOmEwMDowJyxcbiAgICAgICAgQVdTX0lOU1RBTkNFX1BPUlQ6ICc0NDMnXG4gICAgICB9LFxuICAgICAgU2VydmljZUlkOiB7XG4gICAgICAgICdGbjo6R2V0QXR0JzogW1xuICAgICAgICAgICdNeU5hbWVzcGFjZU15U2VydmljZTM2NUUyNDcwJyxcbiAgICAgICAgICAnSWQnXG4gICAgICAgIF1cbiAgICAgIH0sXG4gICAgICBJbnN0YW5jZUlkOiAnTXlOYW1lc3BhY2VNeVNlcnZpY2VJcEluc3RhbmNlQkFDRUI5RDInXG4gICAgfSkpO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ0lwSW5zdGFuY2UgZm9yIHNlcnZpY2UgaW4gUHJpdmF0ZURuc05hbWVzcGFjZScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG4gICAgY29uc3QgdnBjID0gbmV3IGVjMi5WcGNOZXR3b3JrKHN0YWNrLCAnTXlWcGMnKTtcblxuICAgIGNvbnN0IG5hbWVzcGFjZSA9IG5ldyBzZXJ2aWNlZGlzY292ZXJ5LlByaXZhdGVEbnNOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdwdWJsaWMnLFxuICAgICAgdnBjXG4gICAgfSk7XG5cbiAgICBjb25zdCBzZXJ2aWNlID0gbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScsIHtcbiAgICAgIG5hbWU6ICdzZXJ2aWNlJyxcbiAgICAgIGRuc1JlY29yZFR5cGU6IHNlcnZpY2VkaXNjb3ZlcnkuRG5zUmVjb3JkVHlwZS5BX0FBQUFcbiAgICB9KTtcblxuICAgIHNlcnZpY2UucmVnaXN0ZXJJcEluc3RhbmNlKCdJcEluc3RhbmNlJywge1xuICAgICAgaXB2NDogJzEwLjAuMC4wJyxcbiAgICAgIGlwdjY6ICcwOjA6MDowOjA6ZmZmZjphMDA6MCcsXG4gICAgICBwb3J0OiA0NDNcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICBleHBlY3Qoc3RhY2spLnRvKGhhdmVSZXNvdXJjZSgnQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpJbnN0YW5jZScsIHtcbiAgICAgIEluc3RhbmNlQXR0cmlidXRlczoge1xuICAgICAgICBBV1NfSU5TVEFOQ0VfSVBWNDogJzEwLjAuMC4wJyxcbiAgICAgICAgQVdTX0lOU1RBTkNFX0lQVjY6ICcwOjA6MDowOjA6ZmZmZjphMDA6MCcsXG4gICAgICAgIEFXU19JTlNUQU5DRV9QT1JUOiAnNDQzJ1xuICAgICAgfSxcbiAgICAgIFNlcnZpY2VJZDoge1xuICAgICAgICAnRm46OkdldEF0dCc6IFtcbiAgICAgICAgICAnTXlOYW1lc3BhY2VNeVNlcnZpY2UzNjVFMjQ3MCcsXG4gICAgICAgICAgJ0lkJ1xuICAgICAgICBdXG4gICAgICB9LFxuICAgICAgSW5zdGFuY2VJZDogJ015TmFtZXNwYWNlTXlTZXJ2aWNlSXBJbnN0YW5jZUJBQ0VCOUQyJ1xuICAgIH0pKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdSZWdpc3RlcmluZyBJcEluc3RhbmNlIHRocm93cyB3aGVuIG9taXR0aW5nIHBvcnQgZm9yIGEgc2VydmljZSB1c2luZyBTUlYnKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAncHVibGljJyxcbiAgICB9KTtcblxuICAgIGNvbnN0IHNlcnZpY2UgPSBuYW1lc3BhY2UuY3JlYXRlU2VydmljZSgnTXlTZXJ2aWNlJywge1xuICAgICAgbmFtZTogJ3NlcnZpY2UnLFxuICAgICAgZG5zUmVjb3JkVHlwZTogc2VydmljZWRpc2NvdmVyeS5EbnNSZWNvcmRUeXBlLlNSVlxuICAgIH0pO1xuXG4gICAgLy8gVEhFTlxuICAgIHRlc3QudGhyb3dzKCgpID0+IHtcbiAgICAgIHNlcnZpY2UucmVnaXN0ZXJJcEluc3RhbmNlKCdJcEluc3RhbmNlJywge1xuICAgICAgICBpbnN0YW5jZUlkOiAnaWQnLFxuICAgICAgfSk7XG4gICAgfSwgL0EgYHBvcnRgIG11c3QgYmUgc3BlY2lmaWVkIGZvciBhIHNlcnZpY2UgdXNpbmcgYSBgU1JWYCByZWNvcmQuLyk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICAnUmVnaXN0ZXJpbmcgSXBJbnN0YW5jZSB0aHJvd3Mgd2hlbiBvbWl0dGluZyBpcHY0IGFuZCBpcHY2IGZvciBhIHNlcnZpY2UgdXNpbmcgU1JWJyh0ZXN0OiBUZXN0KSB7XG4gICAgLy8gR0lWRU5cbiAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcblxuICAgIGNvbnN0IG5hbWVzcGFjZSA9IG5ldyBzZXJ2aWNlZGlzY292ZXJ5LlB1YmxpY0Ruc05hbWVzcGFjZShzdGFjaywgJ015TmFtZXNwYWNlJywge1xuICAgICAgbmFtZTogJ2RucycsXG4gICAgfSk7XG5cbiAgICBjb25zdCBzZXJ2aWNlID0gbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScsIHtcbiAgICAgIG5hbWU6ICdzZXJ2aWNlJyxcbiAgICAgIGRuc1JlY29yZFR5cGU6IHNlcnZpY2VkaXNjb3ZlcnkuRG5zUmVjb3JkVHlwZS5TUlZcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICBzZXJ2aWNlLnJlZ2lzdGVySXBJbnN0YW5jZSgnSXBJbnN0YW5jZScsIHtcbiAgICAgICAgcG9ydDogMzMwNlxuICAgICAgfSk7XG4gICAgfSwgL0F0IGxlYXN0IGBpcHY0YCBvciBgaXB2NmAgbXVzdCBiZSBzcGVjaWZpZWQgZm9yIGEgc2VydmljZSB1c2luZyBhIGBTUlZgIHJlY29yZC4vKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdSZWdpc3RlcmluZyBJcEluc3RhbmNlIHRocm93cyB3aGVuIG9taXR0aW5nIGlwdjQgZm9yIGEgc2VydmljZSB1c2luZyBBIHJlY29yZHMnKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnZG5zJyxcbiAgICB9KTtcblxuICAgIGNvbnN0IHNlcnZpY2UgPSBuYW1lc3BhY2UuY3JlYXRlU2VydmljZSgnTXlTZXJ2aWNlJywge1xuICAgICAgbmFtZTogJ3NlcnZpY2UnLFxuICAgICAgZG5zUmVjb3JkVHlwZTogc2VydmljZWRpc2NvdmVyeS5EbnNSZWNvcmRUeXBlLkFcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICBzZXJ2aWNlLnJlZ2lzdGVySXBJbnN0YW5jZSgnSXBJbnN0YW5jZScsIHtcbiAgICAgICAgcG9ydDogMzMwNlxuICAgICAgfSk7XG4gICAgfSwgL0FuIGBpcHY0YCBtdXN0IGJlIHNwZWNpZmllZCBmb3IgYSBzZXJ2aWNlIHVzaW5nIGEgYEFgIHJlY29yZC4vKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdSZWdpc3RlcmluZyBJcEluc3RhbmNlIHRocm93cyB3aGVuIG9taXR0aW5nIGlwdjYgZm9yIGEgc2VydmljZSB1c2luZyBBQUFBIHJlY29yZHMnKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnZG5zJyxcbiAgICB9KTtcblxuICAgIGNvbnN0IHNlcnZpY2UgPSBuYW1lc3BhY2UuY3JlYXRlU2VydmljZSgnTXlTZXJ2aWNlJywge1xuICAgICAgbmFtZTogJ3NlcnZpY2UnLFxuICAgICAgZG5zUmVjb3JkVHlwZTogc2VydmljZWRpc2NvdmVyeS5EbnNSZWNvcmRUeXBlLkFBQUFcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICBzZXJ2aWNlLnJlZ2lzdGVySXBJbnN0YW5jZSgnSXBJbnN0YW5jZScsIHtcbiAgICAgICAgcG9ydDogMzMwNlxuICAgICAgfSk7XG4gICAgfSwgL0FuIGBpcHY2YCBtdXN0IGJlIHNwZWNpZmllZCBmb3IgYSBzZXJ2aWNlIHVzaW5nIGEgYEFBQUFgIHJlY29yZC4vKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdSZWdpc3RlcmluZyBJcEluc3RhbmNlIHRocm93cyB3aXRoIHdyb25nIEROUyByZWNvcmQgdHlwZScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5QdWJsaWNEbnNOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdkbnMnLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc2VydmljZSA9IG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnLCB7XG4gICAgICBuYW1lOiAnc2VydmljZScsXG4gICAgICBkbnNSZWNvcmRUeXBlOiBzZXJ2aWNlZGlzY292ZXJ5LkRuc1JlY29yZFR5cGUuQ05BTUVcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICBzZXJ2aWNlLnJlZ2lzdGVySXBJbnN0YW5jZSgnSXBJbnN0YW5jZScsIHtcbiAgICAgICAgcG9ydDogMzMwNlxuICAgICAgfSk7XG4gICAgfSwgL1NlcnZpY2UgbXVzdCBzdXBwb3J0IGBBYCwgYEFBQUFgIG9yIGBTUlZgIHJlY29yZHMgdG8gcmVnaXN0ZXIgdGhpcyBpbnN0YW5jZSB0eXBlLi8pO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1JlZ2lzdGVyaW5nIEFsaWFzVGFyZ2V0SW5zdGFuY2UnKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgdnBjID0gbmV3IGVjMi5WcGNOZXR3b3JrKHN0YWNrLCAnTXlWUEMnKTtcbiAgICBjb25zdCBhbGIgPSBuZXcgZWxidjIuQXBwbGljYXRpb25Mb2FkQmFsYW5jZXIoc3RhY2ssICdNeUFMQicsIHsgdnBjIH0pO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHJpdmF0ZURuc05hbWVzcGFjZShzdGFjaywgJ015TmFtZXNwYWNlJywge1xuICAgICAgbmFtZTogJ2RucycsXG4gICAgICB2cGNcbiAgICB9KTtcblxuICAgIGNvbnN0IHNlcnZpY2UgPSBuYW1lc3BhY2UuY3JlYXRlU2VydmljZSgnTXlTZXJ2aWNlJywge1xuICAgICAgbmFtZTogJ3NlcnZpY2UnLFxuICAgICAgbG9hZEJhbGFuY2VyOiB0cnVlLFxuICAgIH0pO1xuICAgIGNvbnN0IGN1c3RvbUF0dHJpYnV0ZXMgPSB7IGZvbzogJ2JhcicgfTtcblxuICAgIHNlcnZpY2UucmVnaXN0ZXJMb2FkQmFsYW5jZXIoXCJMb2FkYmFsYW5jZXJcIiwgYWxiLCBjdXN0b21BdHRyaWJ1dGVzKTtcblxuICAgIC8vIFRIRU5cbiAgICBleHBlY3Qoc3RhY2spLnRvKGhhdmVSZXNvdXJjZSgnQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpJbnN0YW5jZScsIHtcbiAgICAgIEluc3RhbmNlQXR0cmlidXRlczoge1xuICAgICAgICBBV1NfQUxJQVNfRE5TX05BTUU6IHtcbiAgICAgICAgICAnRm46OkdldEF0dCc6IFtcbiAgICAgICAgICAgICdNeUFMQjkxMUE4NTU2JyxcbiAgICAgICAgICAgICdETlNOYW1lJ1xuICAgICAgICAgIF1cbiAgICAgICAgfSxcbiAgICAgICAgZm9vOiAnYmFyJ1xuICAgICAgfSxcbiAgICAgIFNlcnZpY2VJZDoge1xuICAgICAgICAnRm46OkdldEF0dCc6IFtcbiAgICAgICAgICAnTXlOYW1lc3BhY2VNeVNlcnZpY2UzNjVFMjQ3MCcsXG4gICAgICAgICAgJ0lkJ1xuICAgICAgICBdXG4gICAgICB9LFxuICAgICAgSW5zdGFuY2VJZDogJ015TmFtZXNwYWNlTXlTZXJ2aWNlTG9hZGJhbGFuY2VyRDExMTJBNzYnXG4gICAgfSkpO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1Rocm93cyB3aGVuIHJlZ2lzdGVyaW5nIEFsaWFzVGFyZ2V0SW5zdGFuY2Ugd2l0aCBIdHRwIE5hbWVzcGFjZScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5IdHRwTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnaHR0cCcsXG4gICAgfSk7XG5cbiAgICBjb25zdCBzZXJ2aWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuU2VydmljZShzdGFjaywgJ015U2VydmljZScsIHtcbiAgICAgIG5hbWVzcGFjZSxcbiAgICB9KTtcblxuICAgIGNvbnN0IHZwYyA9IG5ldyBlYzIuVnBjTmV0d29yayhzdGFjaywgJ015VlBDJyk7XG4gICAgY29uc3QgYWxiID0gbmV3IGVsYnYyLkFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyKHN0YWNrLCAnTXlBTEInLCB7IHZwYyB9KTtcblxuICAgIC8vIFRIRU5cbiAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICBzZXJ2aWNlLnJlZ2lzdGVyTG9hZEJhbGFuY2VyKFwiTG9hZGJhbGFuY2VyXCIsIGFsYik7XG4gICAgfSwgL05hbWVzcGFjZSBhc3NvY2lhdGVkIHdpdGggU2VydmljZSBtdXN0IGJlIGEgRE5TIE5hbWVzcGFjZS4vKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gIC8vIFRPRE8gc2hvdWxkbid0IGJlIGFsbG93ZWQgdG8gZG8gdGhpcyBpZiBsb2FkYmFsYW5jZXIgb24gU2VydmljZVByb3BzIGlzIG5vdCBzZXQgdG8gdHJ1ZS5cbiAgJ1Rocm93cyB3aGVuIHJlZ2lzdGVyaW5nIEFsaWFzVGFyZ2V0SW5zdGFuY2Ugd2l0aCB3cm9uZyBSb3V0aW5nIFBvbGljeScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5QdWJsaWNEbnNOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdodHRwJyxcbiAgICB9KTtcblxuICAgIGNvbnN0IHNlcnZpY2UgPSBuYW1lc3BhY2UuY3JlYXRlU2VydmljZSgnTXlTZXJ2aWNlJywge1xuICAgICAgcm91dGluZ1BvbGljeTogc2VydmljZWRpc2NvdmVyeS5Sb3V0aW5nUG9saWN5Lk11bHRpdmFsdWVcbiAgICB9KTtcblxuICAgIGNvbnN0IHZwYyA9IG5ldyBlYzIuVnBjTmV0d29yayhzdGFjaywgJ015VlBDJyk7XG4gICAgY29uc3QgYWxiID0gbmV3IGVsYnYyLkFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyKHN0YWNrLCAnTXlBTEInLCB7IHZwYyB9KTtcblxuICAgIC8vIFRIRU5cbiAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICBzZXJ2aWNlLnJlZ2lzdGVyTG9hZEJhbGFuY2VyKFwiTG9hZGJhbGFuY2VyXCIsIGFsYik7XG4gICAgfSwgL1NlcnZpY2UgbXVzdCB1c2UgYFdFSUdIVEVEYCByb3V0aW5nIHBvbGljeS4vKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdSZWdpc3RlciBDbmFtZUluc3RhbmNlJyh0ZXN0OiBUZXN0KSB7XG4gICAgLy8gR0lWRU5cbiAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcblxuICAgIGNvbnN0IG5hbWVzcGFjZSA9IG5ldyBzZXJ2aWNlZGlzY292ZXJ5LlB1YmxpY0Ruc05hbWVzcGFjZShzdGFjaywgJ015TmFtZXNwYWNlJywge1xuICAgICAgbmFtZTogJ2RucycsXG4gICAgfSk7XG5cbiAgICBjb25zdCBzZXJ2aWNlID0gbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScsIHtcbiAgICAgIGRuc1JlY29yZFR5cGU6IHNlcnZpY2VkaXNjb3ZlcnkuRG5zUmVjb3JkVHlwZS5DTkFNRVxuICAgIH0pO1xuXG4gICAgc2VydmljZS5yZWdpc3RlckNuYW1lSW5zdGFuY2UoJ0NuYW1lSW5zdGFuY2UnLCB7XG4gICAgICBpbnN0YW5jZUNuYW1lOiAnZm9vLmNvbScsXG4gICAgICBjdXN0b21BdHRyaWJ1dGVzOiB7IGRvZ3M6ICdnb29kJyB9XG4gICAgfSk7XG5cbiAgICAvLyBUSEVOXG4gICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0FXUzo6U2VydmljZURpc2NvdmVyeTo6SW5zdGFuY2UnLCB7XG4gICAgICBJbnN0YW5jZUF0dHJpYnV0ZXM6IHtcbiAgICAgICAgQVdTX0lOU1RBTkNFX0NOQU1FOiAnZm9vLmNvbScsXG4gICAgICAgIGRvZ3M6ICdnb29kJ1xuICAgICAgfSxcbiAgICAgIFNlcnZpY2VJZDoge1xuICAgICAgICAnRm46OkdldEF0dCc6IFtcbiAgICAgICAgICAnTXlOYW1lc3BhY2VNeVNlcnZpY2UzNjVFMjQ3MCcsXG4gICAgICAgICAgJ0lkJ1xuICAgICAgICBdXG4gICAgICB9LFxuICAgICAgSW5zdGFuY2VJZDogJ015TmFtZXNwYWNlTXlTZXJ2aWNlQ25hbWVJbnN0YW5jZTBFQjFDOThEJ1xuICAgIH0pKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdUaHJvd3Mgd2hlbiByZWdpc3RlcmluZyBDbmFtZUluc3RhbmNlIGZvciBhbiBIVFRQIG5hbWVzcGFjZScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5IdHRwTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnaHR0cCcsXG4gICAgfSk7XG5cbiAgICBjb25zdCBzZXJ2aWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuU2VydmljZShzdGFjaywgJ015U2VydmljZScsIHtcbiAgICAgIG5hbWVzcGFjZSxcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICBzZXJ2aWNlLnJlZ2lzdGVyQ25hbWVJbnN0YW5jZSgnQ25hbWVJbnN0YW5jZScsIHtcbiAgICAgICAgaW5zdGFuY2VDbmFtZTogJ2Zvby5jb20nLFxuICAgICAgfSk7XG4gICAgfSwgL05hbWVzcGFjZSBhc3NvY2lhdGVkIHdpdGggU2VydmljZSBtdXN0IGJlIGEgRE5TIE5hbWVzcGFjZS8pO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1JlZ2lzdGVyIE5vbklwSW5zdGFuY2UnKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuSHR0cE5hbWVzcGFjZShzdGFjaywgJ015TmFtZXNwYWNlJywge1xuICAgICAgbmFtZTogJ2h0dHAnLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc2VydmljZSA9IG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnKTtcblxuICAgIHNlcnZpY2UucmVnaXN0ZXJOb25JcEluc3RhbmNlKCdOb25JcEluc3RhbmNlJywge1xuICAgICAgY3VzdG9tQXR0cmlidXRlczogeyBkb2dzOiAnZ29vZCcgfVxuICAgIH0pO1xuXG4gICAgLy8gVEhFTlxuICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdBV1M6OlNlcnZpY2VEaXNjb3Zlcnk6Okluc3RhbmNlJywge1xuICAgICAgSW5zdGFuY2VBdHRyaWJ1dGVzOiB7XG4gICAgICAgIGRvZ3M6ICdnb29kJ1xuICAgICAgfSxcbiAgICAgIFNlcnZpY2VJZDoge1xuICAgICAgICAnRm46OkdldEF0dCc6IFtcbiAgICAgICAgICAnTXlOYW1lc3BhY2VNeVNlcnZpY2UzNjVFMjQ3MCcsXG4gICAgICAgICAgJ0lkJ1xuICAgICAgICBdXG4gICAgICB9LFxuICAgICAgSW5zdGFuY2VJZDogJ015TmFtZXNwYWNlTXlTZXJ2aWNlTm9uSXBJbnN0YW5jZTdFRkQ3MDNBJ1xuICAgIH0pKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdUaHJvd3Mgd2hlbiByZWdpc3RlcmluZyBOb25JcEluc3RhbmNlIGZvciBhbiBQdWJsaWMgbmFtZXNwYWNlJyh0ZXN0OiBUZXN0KSB7XG4gICAgLy8gR0lWRU5cbiAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcblxuICAgIGNvbnN0IG5hbWVzcGFjZSA9IG5ldyBzZXJ2aWNlZGlzY292ZXJ5LlB1YmxpY0Ruc05hbWVzcGFjZShzdGFjaywgJ015TmFtZXNwYWNlJywge1xuICAgICAgbmFtZTogJ2h0dHAnLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc2VydmljZSA9IG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnKTtcblxuICAgIC8vIFRIRU5cbiAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICBzZXJ2aWNlLnJlZ2lzdGVyTm9uSXBJbnN0YW5jZSgnTm9uSXBJbnN0YW5jZScsIHtcbiAgICAgICAgaW5zdGFuY2VJZDogJ25vbklwJyxcbiAgICAgIH0pO1xuICAgIH0sIC9UaGlzIHR5cGUgb2YgaW5zdGFuY2UgY2FuIG9ubHkgYmUgcmVnaXN0ZXJlZCBmb3IgSFRUUCBuYW1lc3BhY2VzLi8pO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1Rocm93cyB3aGVuIG5vIGN1c3RvbSBhdHRyaWJ1ZXMgc3BlY2lmaWVkIGZvciBOb25JcEluc3RhbmNlJyh0ZXN0OiBUZXN0KSB7XG4gICAgLy8gR0lWRU5cbiAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcblxuICAgIGNvbnN0IG5hbWVzcGFjZSA9IG5ldyBzZXJ2aWNlZGlzY292ZXJ5Lkh0dHBOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdodHRwJyxcbiAgICB9KTtcblxuICAgIGNvbnN0IHNlcnZpY2UgPSBuYW1lc3BhY2UuY3JlYXRlU2VydmljZSgnTXlTZXJ2aWNlJyk7XG5cbiAgICAvLyBUSEVOXG4gICAgdGVzdC50aHJvd3MoKCkgPT4ge1xuICAgICAgc2VydmljZS5yZWdpc3Rlck5vbklwSW5zdGFuY2UoJ05vbklwSW5zdGFuY2UnLCB7XG4gICAgICAgIGluc3RhbmNlSWQ6ICdub25JcCcsXG4gICAgICB9KTtcbiAgICB9LCAvWW91IG11c3Qgc3BlY2lmeSBhdCBsZWFzdCBvbmUgY3VzdG9tIGF0dHJpYnV0ZSBmb3IgdGhpcyBpbnN0YW5jZSB0eXBlLi8pO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1Rocm93cyB3aGVuIGN1c3RvbSBhdHRyaWJ1ZXMgYXJlIGVtcHR5Zm9yIE5vbklwSW5zdGFuY2UnKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuSHR0cE5hbWVzcGFjZShzdGFjaywgJ015TmFtZXNwYWNlJywge1xuICAgICAgbmFtZTogJ2h0dHAnLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc2VydmljZSA9IG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnKTtcblxuICAgIC8vIFRIRU5cbiAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICBzZXJ2aWNlLnJlZ2lzdGVyTm9uSXBJbnN0YW5jZSgnTm9uSXBJbnN0YW5jZScsIHtcbiAgICAgICAgaW5zdGFuY2VJZDogJ25vbklwJyxcbiAgICAgICAgY3VzdG9tQXR0cmlidXRlczoge31cbiAgICAgIH0pO1xuICAgIH0sIC9Zb3UgbXVzdCBzcGVjaWZ5IGF0IGxlYXN0IG9uZSBjdXN0b20gYXR0cmlidXRlIGZvciB0aGlzIGluc3RhbmNlIHR5cGUuLyk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICAnUmVnaXN0ZXIgbXVsdGlwbGUgaW5zdGFuY2VzIG9uIHRoZSBzYW1lIHNlcnZpY2UnKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAncHVibGljJyxcbiAgICB9KTtcblxuICAgIGNvbnN0IHNlcnZpY2UgPSBuYW1lc3BhY2UuY3JlYXRlU2VydmljZSgnTXlTZXJ2aWNlJyk7XG5cbiAgICAvLyBXSEVOXG4gICAgc2VydmljZS5yZWdpc3RlcklwSW5zdGFuY2UoJ0ZpcnN0Jywge1xuICAgICAgaXB2NDogJzEwLjAuMC4wJ1xuICAgIH0pO1xuXG4gICAgc2VydmljZS5yZWdpc3RlcklwSW5zdGFuY2UoJ1NlY29uZCcsIHtcbiAgICAgIGlwdjQ6ICcxMC4wLjAuMSdcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICBleHBlY3Qoc3RhY2spLnRvKGNvdW50UmVzb3VyY2VzKCdBV1M6OlNlcnZpY2VEaXNjb3Zlcnk6Okluc3RhbmNlJywgMikpO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH1cbn07XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5pbnN0YW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRlc3QuaW5zdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDRDQUF1RTtBQUN2RSx3Q0FBeUM7QUFDekMsNkRBQThEO0FBQzlELG9DQUFxQztBQUVyQywyQ0FBNEM7QUFFNUMsaUJBQVM7SUFDUCwwQ0FBMEMsQ0FBQyxJQUFVO1FBQ25ELFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUU5QixNQUFNLFNBQVMsR0FBRyxJQUFJLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsYUFBYSxFQUFFO1lBQ3pFLElBQUksRUFBRSxNQUFNO1NBQ2IsQ0FBQyxDQUFDO1FBRUgsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUU7WUFDbkQsSUFBSSxFQUFFLFNBQVM7U0FDaEIsQ0FBQyxDQUFDO1FBRUgsT0FBTyxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRTtZQUN2QyxJQUFJLEVBQUUsVUFBVTtZQUNoQixJQUFJLEVBQUUsc0JBQXNCO1lBQzVCLElBQUksRUFBRSxHQUFHO1NBQ1YsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxpQ0FBaUMsRUFBRTtZQUMvRCxrQkFBa0IsRUFBRTtnQkFDbEIsaUJBQWlCLEVBQUUsVUFBVTtnQkFDN0IsaUJBQWlCLEVBQUUsc0JBQXNCO2dCQUN6QyxpQkFBaUIsRUFBRSxLQUFLO2FBQ3pCO1lBQ0QsU0FBUyxFQUFFO2dCQUNULFlBQVksRUFBRTtvQkFDWiw4QkFBOEI7b0JBQzlCLElBQUk7aUJBQ0w7YUFDRjtZQUNELFVBQVUsRUFBRSx3Q0FBd0M7U0FDckQsQ0FBQyxDQUFDLENBQUM7UUFFSixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDZCxDQUFDO0lB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Qyx1QkFBYyxDQUFDLGlDQUFpQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFdkUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2QsQ0FBQztDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb3VudFJlc291cmNlcywgZXhwZWN0LCBoYXZlUmVzb3VyY2UgfSBmcm9tICdAYXdzLWNkay9hc3NlcnQnO1xuaW1wb3J0IGVjMiA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2F3cy1lYzInKTtcbmltcG9ydCBlbGJ2MiA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2F3cy1lbGFzdGljbG9hZGJhbGFuY2luZ3YyJyk7XG5pbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5pbXBvcnQgeyBUZXN0IH0gZnJvbSAnbm9kZXVuaXQnO1xuaW1wb3J0IHNlcnZpY2VkaXNjb3ZlcnkgPSByZXF1aXJlKCcuLi9saWInKTtcblxuZXhwb3J0ID0ge1xuICAnSXBJbnN0YW5jZSBmb3Igc2VydmljZSBpbiBIVFRQIG5hbWVzcGFjZScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5IdHRwTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnaHR0cCcsXG4gICAgfSk7XG5cbiAgICBjb25zdCBzZXJ2aWNlID0gbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScsIHtcbiAgICAgIG5hbWU6ICdzZXJ2aWNlJyxcbiAgICB9KTtcblxuICAgIHNlcnZpY2UucmVnaXN0ZXJJcEluc3RhbmNlKCdJcEluc3RhbmNlJywge1xuICAgICAgaXB2NDogJzEwLjAuMC4wJyxcbiAgICAgIGlwdjY6ICcwOjA6MDowOjA6ZmZmZjphMDA6MCcsXG4gICAgICBwb3J0OiA0NDNcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICBleHBlY3Qoc3RhY2spLnRvKGhhdmVSZXNvdXJjZSgnQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpJbnN0YW5jZScsIHtcbiAgICAgIEluc3RhbmNlQXR0cmlidXRlczoge1xuICAgICAgICBBV1NfSU5TVEFOQ0VfSVBWNDogJzEwLjAuMC4wJyxcbiAgICAgICAgQVdTX0lOU1RBTkNFX0lQVjY6ICcwOjA6MDowOjA6ZmZmZjphMDA6MCcsXG4gICAgICAgIEFXU19JTlNUQU5DRV9QT1JUOiAnNDQzJ1xuICAgICAgfSxcbiAgICAgIFNlcnZpY2VJZDoge1xuICAgICAgICAnRm46OkdldEF0dCc6IFtcbiAgICAgICAgICAnTXlOYW1lc3BhY2VNeVNlcnZpY2UzNjVFMjQ3MCcsXG4gICAgICAgICAgJ0lkJ1xuICAgICAgICBdXG4gICAgICB9LFxuICAgICAgSW5zdGFuY2VJZDogJ015TmFtZXNwYWNlTXlTZXJ2aWNlSXBJbnN0YW5jZUJBQ0VCOUQyJ1xuICAgIH0pKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdJcEluc3RhbmNlIGZvciBzZXJ2aWNlIGluIFB1YmxpY0Ruc05hbWVzcGFjZScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5QdWJsaWNEbnNOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdwdWJsaWMnLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc2VydmljZSA9IG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnLCB7XG4gICAgICBuYW1lOiAnc2VydmljZScsXG4gICAgICBkbnNSZWNvcmRUeXBlOiBzZXJ2aWNlZGlzY292ZXJ5LkRuc1JlY29yZFR5cGUuQV9BQUFBXG4gICAgfSk7XG5cbiAgICBzZXJ2aWNlLnJlZ2lzdGVySXBJbnN0YW5jZSgnSXBJbnN0YW5jZScsIHtcbiAgICAgIGlwdjQ6ICc1NC4yMzkuMjUuMTkyJyxcbiAgICAgIGlwdjY6ICcwOjA6MDowOjA6ZmZmZjphMDA6MCcsXG4gICAgICBwb3J0OiA0NDNcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICBleHBlY3Qoc3RhY2spLnRvKGhhdmVSZXNvdXJjZSgnQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpJbnN0YW5jZScsIHtcbiAgICAgIEluc3RhbmNlQXR0cmlidXRlczoge1xuICAgICAgICBBV1NfSU5TVEFOQ0VfSVBWNDogJzU0LjIzOS4yNS4xOTInLFxuICAgICAgICBBV1NfSU5TVEFOQ0VfSVBWNjogJzA6MDowOjA6MDpmZmZmOmEwMDowJyxcbiAgICAgICAgQVdTX0lOU1RBTkNFX1BPUlQ6ICc0NDMnXG4gICAgICB9LFxuICAgICAgU2VydmljZUlkOiB7XG4gICAgICAgICdGbjo6R2V0QXR0JzogW1xuICAgICAgICAgICdNeU5hbWVzcGFjZU15U2VydmljZTM2NUUyNDcwJyxcbiAgICAgICAgICAnSWQnXG4gICAgICAgIF1cbiAgICAgIH0sXG4gICAgICBJbnN0YW5jZUlkOiAnTXlOYW1lc3BhY2VNeVNlcnZpY2VJcEluc3RhbmNlQkFDRUI5RDInXG4gICAgfSkpO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ0lwSW5zdGFuY2UgZm9yIHNlcnZpY2UgaW4gUHJpdmF0ZURuc05hbWVzcGFjZScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG4gICAgY29uc3QgdnBjID0gbmV3IGVjMi5WcGMoc3RhY2ssICdNeVZwYycpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHJpdmF0ZURuc05hbWVzcGFjZShzdGFjaywgJ015TmFtZXNwYWNlJywge1xuICAgICAgbmFtZTogJ3B1YmxpYycsXG4gICAgICB2cGNcbiAgICB9KTtcblxuICAgIGNvbnN0IHNlcnZpY2UgPSBuYW1lc3BhY2UuY3JlYXRlU2VydmljZSgnTXlTZXJ2aWNlJywge1xuICAgICAgbmFtZTogJ3NlcnZpY2UnLFxuICAgICAgZG5zUmVjb3JkVHlwZTogc2VydmljZWRpc2NvdmVyeS5EbnNSZWNvcmRUeXBlLkFfQUFBQVxuICAgIH0pO1xuXG4gICAgc2VydmljZS5yZWdpc3RlcklwSW5zdGFuY2UoJ0lwSW5zdGFuY2UnLCB7XG4gICAgICBpcHY0OiAnMTAuMC4wLjAnLFxuICAgICAgaXB2NjogJzA6MDowOjA6MDpmZmZmOmEwMDowJyxcbiAgICAgIHBvcnQ6IDQ0M1xuICAgIH0pO1xuXG4gICAgLy8gVEhFTlxuICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdBV1M6OlNlcnZpY2VEaXNjb3Zlcnk6Okluc3RhbmNlJywge1xuICAgICAgSW5zdGFuY2VBdHRyaWJ1dGVzOiB7XG4gICAgICAgIEFXU19JTlNUQU5DRV9JUFY0OiAnMTAuMC4wLjAnLFxuICAgICAgICBBV1NfSU5TVEFOQ0VfSVBWNjogJzA6MDowOjA6MDpmZmZmOmEwMDowJyxcbiAgICAgICAgQVdTX0lOU1RBTkNFX1BPUlQ6ICc0NDMnXG4gICAgICB9LFxuICAgICAgU2VydmljZUlkOiB7XG4gICAgICAgICdGbjo6R2V0QXR0JzogW1xuICAgICAgICAgICdNeU5hbWVzcGFjZU15U2VydmljZTM2NUUyNDcwJyxcbiAgICAgICAgICAnSWQnXG4gICAgICAgIF1cbiAgICAgIH0sXG4gICAgICBJbnN0YW5jZUlkOiAnTXlOYW1lc3BhY2VNeVNlcnZpY2VJcEluc3RhbmNlQkFDRUI5RDInXG4gICAgfSkpO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1JlZ2lzdGVyaW5nIElwSW5zdGFuY2UgdGhyb3dzIHdoZW4gb21pdHRpbmcgcG9ydCBmb3IgYSBzZXJ2aWNlIHVzaW5nIFNSVicodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5QdWJsaWNEbnNOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdwdWJsaWMnLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc2VydmljZSA9IG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnLCB7XG4gICAgICBuYW1lOiAnc2VydmljZScsXG4gICAgICBkbnNSZWNvcmRUeXBlOiBzZXJ2aWNlZGlzY292ZXJ5LkRuc1JlY29yZFR5cGUuU1JWXG4gICAgfSk7XG5cbiAgICAvLyBUSEVOXG4gICAgdGVzdC50aHJvd3MoKCkgPT4ge1xuICAgICAgc2VydmljZS5yZWdpc3RlcklwSW5zdGFuY2UoJ0lwSW5zdGFuY2UnLCB7XG4gICAgICAgIGluc3RhbmNlSWQ6ICdpZCcsXG4gICAgICB9KTtcbiAgICB9LCAvQSBgcG9ydGAgbXVzdCBiZSBzcGVjaWZpZWQgZm9yIGEgc2VydmljZSB1c2luZyBhIGBTUlZgIHJlY29yZC4vKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdSZWdpc3RlcmluZyBJcEluc3RhbmNlIHRocm93cyB3aGVuIG9taXR0aW5nIGlwdjQgYW5kIGlwdjYgZm9yIGEgc2VydmljZSB1c2luZyBTUlYnKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnZG5zJyxcbiAgICB9KTtcblxuICAgIGNvbnN0IHNlcnZpY2UgPSBuYW1lc3BhY2UuY3JlYXRlU2VydmljZSgnTXlTZXJ2aWNlJywge1xuICAgICAgbmFtZTogJ3NlcnZpY2UnLFxuICAgICAgZG5zUmVjb3JkVHlwZTogc2VydmljZWRpc2NvdmVyeS5EbnNSZWNvcmRUeXBlLlNSVlxuICAgIH0pO1xuXG4gICAgLy8gVEhFTlxuICAgIHRlc3QudGhyb3dzKCgpID0+IHtcbiAgICAgIHNlcnZpY2UucmVnaXN0ZXJJcEluc3RhbmNlKCdJcEluc3RhbmNlJywge1xuICAgICAgICBwb3J0OiAzMzA2XG4gICAgICB9KTtcbiAgICB9LCAvQXQgbGVhc3QgYGlwdjRgIG9yIGBpcHY2YCBtdXN0IGJlIHNwZWNpZmllZCBmb3IgYSBzZXJ2aWNlIHVzaW5nIGEgYFNSVmAgcmVjb3JkLi8pO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1JlZ2lzdGVyaW5nIElwSW5zdGFuY2UgdGhyb3dzIHdoZW4gb21pdHRpbmcgaXB2NCBmb3IgYSBzZXJ2aWNlIHVzaW5nIEEgcmVjb3JkcycodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5QdWJsaWNEbnNOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdkbnMnLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc2VydmljZSA9IG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnLCB7XG4gICAgICBuYW1lOiAnc2VydmljZScsXG4gICAgICBkbnNSZWNvcmRUeXBlOiBzZXJ2aWNlZGlzY292ZXJ5LkRuc1JlY29yZFR5cGUuQVxuICAgIH0pO1xuXG4gICAgLy8gVEhFTlxuICAgIHRlc3QudGhyb3dzKCgpID0+IHtcbiAgICAgIHNlcnZpY2UucmVnaXN0ZXJJcEluc3RhbmNlKCdJcEluc3RhbmNlJywge1xuICAgICAgICBwb3J0OiAzMzA2XG4gICAgICB9KTtcbiAgICB9LCAvQW4gYGlwdjRgIG11c3QgYmUgc3BlY2lmaWVkIGZvciBhIHNlcnZpY2UgdXNpbmcgYSBgQWAgcmVjb3JkLi8pO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1JlZ2lzdGVyaW5nIElwSW5zdGFuY2UgdGhyb3dzIHdoZW4gb21pdHRpbmcgaXB2NiBmb3IgYSBzZXJ2aWNlIHVzaW5nIEFBQUEgcmVjb3JkcycodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5QdWJsaWNEbnNOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdkbnMnLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc2VydmljZSA9IG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnLCB7XG4gICAgICBuYW1lOiAnc2VydmljZScsXG4gICAgICBkbnNSZWNvcmRUeXBlOiBzZXJ2aWNlZGlzY292ZXJ5LkRuc1JlY29yZFR5cGUuQUFBQVxuICAgIH0pO1xuXG4gICAgLy8gVEhFTlxuICAgIHRlc3QudGhyb3dzKCgpID0+IHtcbiAgICAgIHNlcnZpY2UucmVnaXN0ZXJJcEluc3RhbmNlKCdJcEluc3RhbmNlJywge1xuICAgICAgICBwb3J0OiAzMzA2XG4gICAgICB9KTtcbiAgICB9LCAvQW4gYGlwdjZgIG11c3QgYmUgc3BlY2lmaWVkIGZvciBhIHNlcnZpY2UgdXNpbmcgYSBgQUFBQWAgcmVjb3JkLi8pO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1JlZ2lzdGVyaW5nIElwSW5zdGFuY2UgdGhyb3dzIHdpdGggd3JvbmcgRE5TIHJlY29yZCB0eXBlJyh0ZXN0OiBUZXN0KSB7XG4gICAgLy8gR0lWRU5cbiAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcblxuICAgIGNvbnN0IG5hbWVzcGFjZSA9IG5ldyBzZXJ2aWNlZGlzY292ZXJ5LlB1YmxpY0Ruc05hbWVzcGFjZShzdGFjaywgJ015TmFtZXNwYWNlJywge1xuICAgICAgbmFtZTogJ2RucycsXG4gICAgfSk7XG5cbiAgICBjb25zdCBzZXJ2aWNlID0gbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScsIHtcbiAgICAgIG5hbWU6ICdzZXJ2aWNlJyxcbiAgICAgIGRuc1JlY29yZFR5cGU6IHNlcnZpY2VkaXNjb3ZlcnkuRG5zUmVjb3JkVHlwZS5DTkFNRVxuICAgIH0pO1xuXG4gICAgLy8gVEhFTlxuICAgIHRlc3QudGhyb3dzKCgpID0+IHtcbiAgICAgIHNlcnZpY2UucmVnaXN0ZXJJcEluc3RhbmNlKCdJcEluc3RhbmNlJywge1xuICAgICAgICBwb3J0OiAzMzA2XG4gICAgICB9KTtcbiAgICB9LCAvU2VydmljZSBtdXN0IHN1cHBvcnQgYEFgLCBgQUFBQWAgb3IgYFNSVmAgcmVjb3JkcyB0byByZWdpc3RlciB0aGlzIGluc3RhbmNlIHR5cGUuLyk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICAnUmVnaXN0ZXJpbmcgQWxpYXNUYXJnZXRJbnN0YW5jZScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCB2cGMgPSBuZXcgZWMyLlZwYyhzdGFjaywgJ015VlBDJyk7XG4gICAgY29uc3QgYWxiID0gbmV3IGVsYnYyLkFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyKHN0YWNrLCAnTXlBTEInLCB7IHZwYyB9KTtcblxuICAgIGNvbnN0IG5hbWVzcGFjZSA9IG5ldyBzZXJ2aWNlZGlzY292ZXJ5LlByaXZhdGVEbnNOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdkbnMnLFxuICAgICAgdnBjXG4gICAgfSk7XG5cbiAgICBjb25zdCBzZXJ2aWNlID0gbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScsIHtcbiAgICAgIG5hbWU6ICdzZXJ2aWNlJyxcbiAgICAgIGxvYWRCYWxhbmNlcjogdHJ1ZSxcbiAgICB9KTtcbiAgICBjb25zdCBjdXN0b21BdHRyaWJ1dGVzID0geyBmb286ICdiYXInIH07XG5cbiAgICBzZXJ2aWNlLnJlZ2lzdGVyTG9hZEJhbGFuY2VyKFwiTG9hZGJhbGFuY2VyXCIsIGFsYiwgY3VzdG9tQXR0cmlidXRlcyk7XG5cbiAgICAvLyBUSEVOXG4gICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0FXUzo6U2VydmljZURpc2NvdmVyeTo6SW5zdGFuY2UnLCB7XG4gICAgICBJbnN0YW5jZUF0dHJpYnV0ZXM6IHtcbiAgICAgICAgQVdTX0FMSUFTX0ROU19OQU1FOiB7XG4gICAgICAgICAgJ0ZuOjpHZXRBdHQnOiBbXG4gICAgICAgICAgICAnTXlBTEI5MTFBODU1NicsXG4gICAgICAgICAgICAnRE5TTmFtZSdcbiAgICAgICAgICBdXG4gICAgICAgIH0sXG4gICAgICAgIGZvbzogJ2JhcidcbiAgICAgIH0sXG4gICAgICBTZXJ2aWNlSWQ6IHtcbiAgICAgICAgJ0ZuOjpHZXRBdHQnOiBbXG4gICAgICAgICAgJ015TmFtZXNwYWNlTXlTZXJ2aWNlMzY1RTI0NzAnLFxuICAgICAgICAgICdJZCdcbiAgICAgICAgXVxuICAgICAgfSxcbiAgICAgIEluc3RhbmNlSWQ6ICdNeU5hbWVzcGFjZU15U2VydmljZUxvYWRiYWxhbmNlckQxMTEyQTc2J1xuICAgIH0pKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdUaHJvd3Mgd2hlbiByZWdpc3RlcmluZyBBbGlhc1RhcmdldEluc3RhbmNlIHdpdGggSHR0cCBOYW1lc3BhY2UnKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuSHR0cE5hbWVzcGFjZShzdGFjaywgJ015TmFtZXNwYWNlJywge1xuICAgICAgbmFtZTogJ2h0dHAnLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc2VydmljZSA9IG5ldyBzZXJ2aWNlZGlzY292ZXJ5LlNlcnZpY2Uoc3RhY2ssICdNeVNlcnZpY2UnLCB7XG4gICAgICBuYW1lc3BhY2UsXG4gICAgfSk7XG5cbiAgICBjb25zdCB2cGMgPSBuZXcgZWMyLlZwYyhzdGFjaywgJ015VlBDJyk7XG4gICAgY29uc3QgYWxiID0gbmV3IGVsYnYyLkFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyKHN0YWNrLCAnTXlBTEInLCB7IHZwYyB9KTtcblxuICAgIC8vIFRIRU5cbiAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICBzZXJ2aWNlLnJlZ2lzdGVyTG9hZEJhbGFuY2VyKFwiTG9hZGJhbGFuY2VyXCIsIGFsYik7XG4gICAgfSwgL05hbWVzcGFjZSBhc3NvY2lhdGVkIHdpdGggU2VydmljZSBtdXN0IGJlIGEgRE5TIE5hbWVzcGFjZS4vKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gIC8vIFRPRE8gc2hvdWxkbid0IGJlIGFsbG93ZWQgdG8gZG8gdGhpcyBpZiBsb2FkYmFsYW5jZXIgb24gU2VydmljZVByb3BzIGlzIG5vdCBzZXQgdG8gdHJ1ZS5cbiAgJ1Rocm93cyB3aGVuIHJlZ2lzdGVyaW5nIEFsaWFzVGFyZ2V0SW5zdGFuY2Ugd2l0aCB3cm9uZyBSb3V0aW5nIFBvbGljeScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5QdWJsaWNEbnNOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdodHRwJyxcbiAgICB9KTtcblxuICAgIGNvbnN0IHNlcnZpY2UgPSBuYW1lc3BhY2UuY3JlYXRlU2VydmljZSgnTXlTZXJ2aWNlJywge1xuICAgICAgcm91dGluZ1BvbGljeTogc2VydmljZWRpc2NvdmVyeS5Sb3V0aW5nUG9saWN5Lk11bHRpdmFsdWVcbiAgICB9KTtcblxuICAgIGNvbnN0IHZwYyA9IG5ldyBlYzIuVnBjKHN0YWNrLCAnTXlWUEMnKTtcbiAgICBjb25zdCBhbGIgPSBuZXcgZWxidjIuQXBwbGljYXRpb25Mb2FkQmFsYW5jZXIoc3RhY2ssICdNeUFMQicsIHsgdnBjIH0pO1xuXG4gICAgLy8gVEhFTlxuICAgIHRlc3QudGhyb3dzKCgpID0+IHtcbiAgICAgIHNlcnZpY2UucmVnaXN0ZXJMb2FkQmFsYW5jZXIoXCJMb2FkYmFsYW5jZXJcIiwgYWxiKTtcbiAgICB9LCAvU2VydmljZSBtdXN0IHVzZSBgV0VJR0hURURgIHJvdXRpbmcgcG9saWN5Li8pO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1JlZ2lzdGVyIENuYW1lSW5zdGFuY2UnKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnZG5zJyxcbiAgICB9KTtcblxuICAgIGNvbnN0IHNlcnZpY2UgPSBuYW1lc3BhY2UuY3JlYXRlU2VydmljZSgnTXlTZXJ2aWNlJywge1xuICAgICAgZG5zUmVjb3JkVHlwZTogc2VydmljZWRpc2NvdmVyeS5EbnNSZWNvcmRUeXBlLkNOQU1FXG4gICAgfSk7XG5cbiAgICBzZXJ2aWNlLnJlZ2lzdGVyQ25hbWVJbnN0YW5jZSgnQ25hbWVJbnN0YW5jZScsIHtcbiAgICAgIGluc3RhbmNlQ25hbWU6ICdmb28uY29tJyxcbiAgICAgIGN1c3RvbUF0dHJpYnV0ZXM6IHsgZG9nczogJ2dvb2QnIH1cbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICBleHBlY3Qoc3RhY2spLnRvKGhhdmVSZXNvdXJjZSgnQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpJbnN0YW5jZScsIHtcbiAgICAgIEluc3RhbmNlQXR0cmlidXRlczoge1xuICAgICAgICBBV1NfSU5TVEFOQ0VfQ05BTUU6ICdmb28uY29tJyxcbiAgICAgICAgZG9nczogJ2dvb2QnXG4gICAgICB9LFxuICAgICAgU2VydmljZUlkOiB7XG4gICAgICAgICdGbjo6R2V0QXR0JzogW1xuICAgICAgICAgICdNeU5hbWVzcGFjZU15U2VydmljZTM2NUUyNDcwJyxcbiAgICAgICAgICAnSWQnXG4gICAgICAgIF1cbiAgICAgIH0sXG4gICAgICBJbnN0YW5jZUlkOiAnTXlOYW1lc3BhY2VNeVNlcnZpY2VDbmFtZUluc3RhbmNlMEVCMUM5OEQnXG4gICAgfSkpO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1Rocm93cyB3aGVuIHJlZ2lzdGVyaW5nIENuYW1lSW5zdGFuY2UgZm9yIGFuIEhUVFAgbmFtZXNwYWNlJyh0ZXN0OiBUZXN0KSB7XG4gICAgLy8gR0lWRU5cbiAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcblxuICAgIGNvbnN0IG5hbWVzcGFjZSA9IG5ldyBzZXJ2aWNlZGlzY292ZXJ5Lkh0dHBOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdodHRwJyxcbiAgICB9KTtcblxuICAgIGNvbnN0IHNlcnZpY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5TZXJ2aWNlKHN0YWNrLCAnTXlTZXJ2aWNlJywge1xuICAgICAgbmFtZXNwYWNlLFxuICAgIH0pO1xuXG4gICAgLy8gVEhFTlxuICAgIHRlc3QudGhyb3dzKCgpID0+IHtcbiAgICAgIHNlcnZpY2UucmVnaXN0ZXJDbmFtZUluc3RhbmNlKCdDbmFtZUluc3RhbmNlJywge1xuICAgICAgICBpbnN0YW5jZUNuYW1lOiAnZm9vLmNvbScsXG4gICAgICB9KTtcbiAgICB9LCAvTmFtZXNwYWNlIGFzc29jaWF0ZWQgd2l0aCBTZXJ2aWNlIG11c3QgYmUgYSBETlMgTmFtZXNwYWNlLyk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICAnUmVnaXN0ZXIgTm9uSXBJbnN0YW5jZScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5IdHRwTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnaHR0cCcsXG4gICAgfSk7XG5cbiAgICBjb25zdCBzZXJ2aWNlID0gbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScpO1xuXG4gICAgc2VydmljZS5yZWdpc3Rlck5vbklwSW5zdGFuY2UoJ05vbklwSW5zdGFuY2UnLCB7XG4gICAgICBjdXN0b21BdHRyaWJ1dGVzOiB7IGRvZ3M6ICdnb29kJyB9XG4gICAgfSk7XG5cbiAgICAvLyBUSEVOXG4gICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0FXUzo6U2VydmljZURpc2NvdmVyeTo6SW5zdGFuY2UnLCB7XG4gICAgICBJbnN0YW5jZUF0dHJpYnV0ZXM6IHtcbiAgICAgICAgZG9nczogJ2dvb2QnXG4gICAgICB9LFxuICAgICAgU2VydmljZUlkOiB7XG4gICAgICAgICdGbjo6R2V0QXR0JzogW1xuICAgICAgICAgICdNeU5hbWVzcGFjZU15U2VydmljZTM2NUUyNDcwJyxcbiAgICAgICAgICAnSWQnXG4gICAgICAgIF1cbiAgICAgIH0sXG4gICAgICBJbnN0YW5jZUlkOiAnTXlOYW1lc3BhY2VNeVNlcnZpY2VOb25JcEluc3RhbmNlN0VGRDcwM0EnXG4gICAgfSkpO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1Rocm93cyB3aGVuIHJlZ2lzdGVyaW5nIE5vbklwSW5zdGFuY2UgZm9yIGFuIFB1YmxpYyBuYW1lc3BhY2UnKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnaHR0cCcsXG4gICAgfSk7XG5cbiAgICBjb25zdCBzZXJ2aWNlID0gbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScpO1xuXG4gICAgLy8gVEhFTlxuICAgIHRlc3QudGhyb3dzKCgpID0+IHtcbiAgICAgIHNlcnZpY2UucmVnaXN0ZXJOb25JcEluc3RhbmNlKCdOb25JcEluc3RhbmNlJywge1xuICAgICAgICBpbnN0YW5jZUlkOiAnbm9uSXAnLFxuICAgICAgfSk7XG4gICAgfSwgL1RoaXMgdHlwZSBvZiBpbnN0YW5jZSBjYW4gb25seSBiZSByZWdpc3RlcmVkIGZvciBIVFRQIG5hbWVzcGFjZXMuLyk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICAnVGhyb3dzIHdoZW4gbm8gY3VzdG9tIGF0dHJpYnVlcyBzcGVjaWZpZWQgZm9yIE5vbklwSW5zdGFuY2UnKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuSHR0cE5hbWVzcGFjZShzdGFjaywgJ015TmFtZXNwYWNlJywge1xuICAgICAgbmFtZTogJ2h0dHAnLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc2VydmljZSA9IG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnKTtcblxuICAgIC8vIFRIRU5cbiAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICBzZXJ2aWNlLnJlZ2lzdGVyTm9uSXBJbnN0YW5jZSgnTm9uSXBJbnN0YW5jZScsIHtcbiAgICAgICAgaW5zdGFuY2VJZDogJ25vbklwJyxcbiAgICAgIH0pO1xuICAgIH0sIC9Zb3UgbXVzdCBzcGVjaWZ5IGF0IGxlYXN0IG9uZSBjdXN0b20gYXR0cmlidXRlIGZvciB0aGlzIGluc3RhbmNlIHR5cGUuLyk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICAnVGhyb3dzIHdoZW4gY3VzdG9tIGF0dHJpYnVlcyBhcmUgZW1wdHlmb3IgTm9uSXBJbnN0YW5jZScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5IdHRwTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnaHR0cCcsXG4gICAgfSk7XG5cbiAgICBjb25zdCBzZXJ2aWNlID0gbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScpO1xuXG4gICAgLy8gVEhFTlxuICAgIHRlc3QudGhyb3dzKCgpID0+IHtcbiAgICAgIHNlcnZpY2UucmVnaXN0ZXJOb25JcEluc3RhbmNlKCdOb25JcEluc3RhbmNlJywge1xuICAgICAgICBpbnN0YW5jZUlkOiAnbm9uSXAnLFxuICAgICAgICBjdXN0b21BdHRyaWJ1dGVzOiB7fVxuICAgICAgfSk7XG4gICAgfSwgL1lvdSBtdXN0IHNwZWNpZnkgYXQgbGVhc3Qgb25lIGN1c3RvbSBhdHRyaWJ1dGUgZm9yIHRoaXMgaW5zdGFuY2UgdHlwZS4vKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdSZWdpc3RlciBtdWx0aXBsZSBpbnN0YW5jZXMgb24gdGhlIHNhbWUgc2VydmljZScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5QdWJsaWNEbnNOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdwdWJsaWMnLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc2VydmljZSA9IG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnKTtcblxuICAgIC8vIFdIRU5cbiAgICBzZXJ2aWNlLnJlZ2lzdGVySXBJbnN0YW5jZSgnRmlyc3QnLCB7XG4gICAgICBpcHY0OiAnMTAuMC4wLjAnXG4gICAgfSk7XG5cbiAgICBzZXJ2aWNlLnJlZ2lzdGVySXBJbnN0YW5jZSgnU2Vjb25kJywge1xuICAgICAgaXB2NDogJzEwLjAuMC4xJ1xuICAgIH0pO1xuXG4gICAgLy8gVEhFTlxuICAgIGV4cGVjdChzdGFjaykudG8oY291bnRSZXNvdXJjZXMoJ0FXUzo6U2VydmljZURpc2NvdmVyeTo6SW5zdGFuY2UnLCAyKSk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfVxufTtcbiJdfQ==

@@ -43,3 +43,3 @@ "use strict";

const stack = new cdk.Stack();
const vpc = new ec2.VpcNetwork(stack, 'MyVpc');
const vpc = new ec2.Vpc(stack, 'MyVpc');
new servicediscovery.PrivateDnsNamespace(stack, 'MyNamespace', {

@@ -58,2 +58,2 @@ name: 'foobar.com',

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5uYW1lc3BhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0ZXN0Lm5hbWVzcGFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsNENBQXVEO0FBQ3ZELHdDQUF5QztBQUN6QyxvQ0FBcUM7QUFFckMsMkNBQTRDO0FBRTVDLGlCQUFTO0lBQ1AsZ0JBQWdCLENBQUMsSUFBVTtRQUN6QixNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUU5QixJQUFJLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsYUFBYSxFQUFFO1lBQ3ZELElBQUksRUFBRSxZQUFZO1NBQ25CLENBQUMsQ0FBQztRQUVILGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUM7WUFDcEIsU0FBUyxFQUFFO2dCQUNULG1CQUFtQixFQUFFO29CQUNuQixJQUFJLEVBQUUsc0NBQXNDO29CQUM1QyxVQUFVLEVBQUU7d0JBQ1YsSUFBSSxFQUFFLFlBQVk7cUJBQ25CO2lCQUNGO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDZCxDQUFDO0lBRUQsc0JBQXNCLENBQUMsSUFBVTtRQUMvQixNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUU5QixJQUFJLGdCQUFnQixDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxhQUFhLEVBQUU7WUFDNUQsSUFBSSxFQUFFLFlBQVk7U0FDbkIsQ0FBQyxDQUFDO1FBRUgsZUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQztZQUNwQixTQUFTLEVBQUU7Z0JBQ1QsbUJBQW1CLEVBQUU7b0JBQ25CLElBQUksRUFBRSwyQ0FBMkM7b0JBQ2pELFVBQVUsRUFBRTt3QkFDVixJQUFJLEVBQUUsWUFBWTtxQkFDbkI7aUJBQ0Y7YUFDRjtTQUNGLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxJQUFVO1FBQ2hDLE1BQU0sS0FBSyxHQUFHLElBQUksR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzlCLE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFL0MsSUFBSSxnQkFBZ0IsQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsYUFBYSxFQUFFO1lBQzdELElBQUksRUFBRSxZQUFZO1lBQ2xCLEdBQUc7U0FDSixDQUFDLENBQUM7UUFFSCxlQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLHFCQUFZLENBQUMsNENBQTRDLEVBQUU7WUFDMUUsSUFBSSxFQUFFLFlBQVk7WUFDbEIsR0FBRyxFQUFFO2dCQUNILEdBQUcsRUFBRSxlQUFlO2FBQ3JCO1NBQ0YsQ0FBQyxDQUFDLENBQUM7UUFFSixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDZCxDQUFDO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4cGVjdCwgaGF2ZVJlc291cmNlIH0gZnJvbSAnQGF3cy1jZGsvYXNzZXJ0JztcbmltcG9ydCBlYzIgPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtZWMyJyk7XG5pbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5pbXBvcnQgeyBUZXN0IH0gZnJvbSAnbm9kZXVuaXQnO1xuaW1wb3J0IHNlcnZpY2VkaXNjb3ZlcnkgPSByZXF1aXJlKCcuLi9saWInKTtcblxuZXhwb3J0ID0ge1xuICAnSFRUUCBuYW1lc3BhY2UnKHRlc3Q6IFRlc3QpIHtcbiAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcblxuICAgIG5ldyBzZXJ2aWNlZGlzY292ZXJ5Lkh0dHBOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdmb29iYXIuY29tJyxcbiAgICB9KTtcblxuICAgIGV4cGVjdChzdGFjaykudG9NYXRjaCh7XG4gICAgICBSZXNvdXJjZXM6IHtcbiAgICAgICAgTXlOYW1lc3BhY2VEMEJCODU1ODoge1xuICAgICAgICAgIFR5cGU6IFwiQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpIdHRwTmFtZXNwYWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgTmFtZTogXCJmb29iYXIuY29tXCJcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdQdWJsaWMgRE5TIG5hbWVzcGFjZScodGVzdDogVGVzdCkge1xuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnZm9vYmFyLmNvbScsXG4gICAgfSk7XG5cbiAgICBleHBlY3Qoc3RhY2spLnRvTWF0Y2goe1xuICAgICAgUmVzb3VyY2VzOiB7XG4gICAgICAgIE15TmFtZXNwYWNlRDBCQjg1NTg6IHtcbiAgICAgICAgICBUeXBlOiBcIkFXUzo6U2VydmljZURpc2NvdmVyeTo6UHVibGljRG5zTmFtZXNwYWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgTmFtZTogXCJmb29iYXIuY29tXCJcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdQcml2YXRlIEROUyBuYW1lc3BhY2UnKHRlc3Q6IFRlc3QpIHtcbiAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcbiAgICBjb25zdCB2cGMgPSBuZXcgZWMyLlZwY05ldHdvcmsoc3RhY2ssICdNeVZwYycpO1xuXG4gICAgbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHJpdmF0ZURuc05hbWVzcGFjZShzdGFjaywgJ015TmFtZXNwYWNlJywge1xuICAgICAgbmFtZTogJ2Zvb2Jhci5jb20nLFxuICAgICAgdnBjXG4gICAgfSk7XG5cbiAgICBleHBlY3Qoc3RhY2spLnRvKGhhdmVSZXNvdXJjZSgnQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpQcml2YXRlRG5zTmFtZXNwYWNlJywge1xuICAgICAgTmFtZTogXCJmb29iYXIuY29tXCIsXG4gICAgICBWcGM6IHtcbiAgICAgICAgUmVmOiBcIk15VnBjRjlGMENBNkZcIlxuICAgICAgfVxuICAgIH0pKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9XG59O1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5uYW1lc3BhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0ZXN0Lm5hbWVzcGFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsNENBQXVEO0FBQ3ZELHdDQUF5QztBQUN6QyxvQ0FBcUM7QUFFckMsMkNBQTRDO0FBRTVDLGlCQUFTO0lBQ1AsZ0JBQWdCLENBQUMsSUFBVTtRQUN6QixNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUU5QixJQUFJLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsYUFBYSxFQUFFO1lBQ3ZELElBQUksRUFBRSxZQUFZO1NBQ25CLENBQUMsQ0FBQztRQUVILGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUM7WUFDcEIsU0FBUyxFQUFFO2dCQUNULG1CQUFtQixFQUFFO29CQUNuQixJQUFJLEVBQUUsc0NBQXNDO29CQUM1QyxVQUFVLEVBQUU7d0JBQ1YsSUFBSSxFQUFFLFlBQVk7cUJBQ25CO2lCQUNGO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDZCxDQUFDO0lBRUQsc0JBQXNCLENBQUMsSUFBVTtRQUMvQixNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUU5QixJQUFJLGdCQUFnQixDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxhQUFhLEVBQUU7WUFDNUQsSUFBSSxFQUFFLFlBQVk7U0FDbkIsQ0FBQyxDQUFDO1FBRUgsZUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQztZQUNwQixTQUFTLEVBQUU7Z0JBQ1QsbUJBQW1CLEVBQUU7b0JBQ25CLElBQUksRUFBRSwyQ0FBMkM7b0JBQ2pELFVBQVUsRUFBRTt3QkFDVixJQUFJLEVBQUUsWUFBWTtxQkFDbkI7aUJBQ0Y7YUFDRjtTQUNGLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxJQUFVO1FBQ2hDLE1BQU0sS0FBSyxHQUFHLElBQUksR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzlCLE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFeEMsSUFBSSxnQkFBZ0IsQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsYUFBYSxFQUFFO1lBQzdELElBQUksRUFBRSxZQUFZO1lBQ2xCLEdBQUc7U0FDSixDQUFDLENBQUM7UUFFSCxlQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLHFCQUFZLENBQUMsNENBQTRDLEVBQUU7WUFDMUUsSUFBSSxFQUFFLFlBQVk7WUFDbEIsR0FBRyxFQUFFO2dCQUNILEdBQUcsRUFBRSxlQUFlO2FBQ3JCO1NBQ0YsQ0FBQyxDQUFDLENBQUM7UUFFSixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDZCxDQUFDO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4cGVjdCwgaGF2ZVJlc291cmNlIH0gZnJvbSAnQGF3cy1jZGsvYXNzZXJ0JztcbmltcG9ydCBlYzIgPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtZWMyJyk7XG5pbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5pbXBvcnQgeyBUZXN0IH0gZnJvbSAnbm9kZXVuaXQnO1xuaW1wb3J0IHNlcnZpY2VkaXNjb3ZlcnkgPSByZXF1aXJlKCcuLi9saWInKTtcblxuZXhwb3J0ID0ge1xuICAnSFRUUCBuYW1lc3BhY2UnKHRlc3Q6IFRlc3QpIHtcbiAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcblxuICAgIG5ldyBzZXJ2aWNlZGlzY292ZXJ5Lkh0dHBOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdmb29iYXIuY29tJyxcbiAgICB9KTtcblxuICAgIGV4cGVjdChzdGFjaykudG9NYXRjaCh7XG4gICAgICBSZXNvdXJjZXM6IHtcbiAgICAgICAgTXlOYW1lc3BhY2VEMEJCODU1ODoge1xuICAgICAgICAgIFR5cGU6IFwiQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpIdHRwTmFtZXNwYWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgTmFtZTogXCJmb29iYXIuY29tXCJcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdQdWJsaWMgRE5TIG5hbWVzcGFjZScodGVzdDogVGVzdCkge1xuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnZm9vYmFyLmNvbScsXG4gICAgfSk7XG5cbiAgICBleHBlY3Qoc3RhY2spLnRvTWF0Y2goe1xuICAgICAgUmVzb3VyY2VzOiB7XG4gICAgICAgIE15TmFtZXNwYWNlRDBCQjg1NTg6IHtcbiAgICAgICAgICBUeXBlOiBcIkFXUzo6U2VydmljZURpc2NvdmVyeTo6UHVibGljRG5zTmFtZXNwYWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgTmFtZTogXCJmb29iYXIuY29tXCJcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdQcml2YXRlIEROUyBuYW1lc3BhY2UnKHRlc3Q6IFRlc3QpIHtcbiAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcbiAgICBjb25zdCB2cGMgPSBuZXcgZWMyLlZwYyhzdGFjaywgJ015VnBjJyk7XG5cbiAgICBuZXcgc2VydmljZWRpc2NvdmVyeS5Qcml2YXRlRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnZm9vYmFyLmNvbScsXG4gICAgICB2cGNcbiAgICB9KTtcblxuICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdBV1M6OlNlcnZpY2VEaXNjb3Zlcnk6OlByaXZhdGVEbnNOYW1lc3BhY2UnLCB7XG4gICAgICBOYW1lOiBcImZvb2Jhci5jb21cIixcbiAgICAgIFZwYzoge1xuICAgICAgICBSZWY6IFwiTXlWcGNGOUYwQ0E2RlwiXG4gICAgICB9XG4gICAgfSkpO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH1cbn07XG4iXX0=

@@ -272,3 +272,3 @@ "use strict";

const stack = new cdk.Stack();
const vpc = new ec2.VpcNetwork(stack, 'MyVpc');
const vpc = new ec2.Vpc(stack, 'MyVpc');
const namespace = new servicediscovery.PrivateDnsNamespace(stack, 'MyNamespace', {

@@ -359,3 +359,3 @@ name: 'name',

const stack = new cdk.Stack();
const vpc = new ec2.VpcNetwork(stack, 'MyVpc');
const vpc = new ec2.Vpc(stack, 'MyVpc');
const namespace = new servicediscovery.PrivateDnsNamespace(stack, 'MyNamespace', {

@@ -401,2 +401,2 @@ name: 'private',

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidGVzdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw0Q0FBdUQ7QUFDdkQsd0NBQXlDO0FBQ3pDLG9DQUFxQztBQUVyQywyQ0FBNEM7QUFFNUMsaUJBQVM7SUFDUCxxREFBcUQsQ0FBQyxJQUFVO1FBQzlELFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUU5QixNQUFNLFNBQVMsR0FBRyxJQUFJLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsYUFBYSxFQUFFO1lBQ3pFLElBQUksRUFBRSxNQUFNO1NBQ2IsQ0FBQyxDQUFDO1FBRUgsU0FBUyxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUU7WUFDbkMsSUFBSSxFQUFFLFNBQVM7WUFDZixXQUFXLEVBQUUscUJBQXFCO1lBQ2xDLGlCQUFpQixFQUFFO2dCQUNqQixnQkFBZ0IsRUFBRSxDQUFDO2FBQ3BCO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUM7WUFDcEIsU0FBUyxFQUFFO2dCQUNULG1CQUFtQixFQUFFO29CQUNuQixJQUFJLEVBQUUsc0NBQXNDO29CQUM1QyxVQUFVLEVBQUU7d0JBQ1YsSUFBSSxFQUFFLE1BQU07cUJBQ2I7aUJBQ0Y7Z0JBQ0QsNEJBQTRCLEVBQUU7b0JBQzVCLElBQUksRUFBRSxnQ0FBZ0M7b0JBQ3RDLFVBQVUsRUFBRTt3QkFDVixXQUFXLEVBQUUscUJBQXFCO3dCQUNsQyx1QkFBdUIsRUFBRTs0QkFDdkIsZ0JBQWdCLEVBQUUsQ0FBQzt5QkFDcEI7d0JBQ0QsSUFBSSxFQUFFLFNBQVM7d0JBQ2YsV0FBVyxFQUFFOzRCQUNYLFlBQVksRUFBRTtnQ0FDWixxQkFBcUI7Z0NBQ3JCLElBQUk7NkJBQ0w7eUJBQ0Y7cUJBQ0Y7aUJBQ0Y7YUFDRjtTQUNG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b0JBQ1oscUJBQXFCO29CQUNyQixJQUFJO2lCQUNMO2FBQ0Y7U0FDRixDQUFDLENBQUMsQ0FBQztRQUVKLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZXhwZWN0LCBoYXZlUmVzb3VyY2UgfSBmcm9tICdAYXdzLWNkay9hc3NlcnQnO1xuaW1wb3J0IGVjMiA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2F3cy1lYzInKTtcbmltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCB7IFRlc3QgfSBmcm9tICdub2RldW5pdCc7XG5pbXBvcnQgc2VydmljZWRpc2NvdmVyeSA9IHJlcXVpcmUoJy4uL2xpYicpO1xuXG5leHBvcnQgPSB7XG4gICdTZXJ2aWNlIGZvciBIVFRQIG5hbWVzcGFjZSB3aXRoIGN1c3RvbSBoZWFsdGggY2hlY2snKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuSHR0cE5hbWVzcGFjZShzdGFjaywgJ015TmFtZXNwYWNlJywge1xuICAgICAgbmFtZTogJ2h0dHAnLFxuICAgIH0pO1xuXG4gICAgbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScsIHtcbiAgICAgIG5hbWU6ICdzZXJ2aWNlJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnc2VydmljZSBkZXNjcmlwdGlvbicsXG4gICAgICBjdXN0b21IZWFsdGhDaGVjazoge1xuICAgICAgICBmYWlsdXJlVGhyZXNob2xkOiAzLFxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgLy8gVEhFTlxuICAgIGV4cGVjdChzdGFjaykudG9NYXRjaCh7XG4gICAgICBSZXNvdXJjZXM6IHtcbiAgICAgICAgTXlOYW1lc3BhY2VEMEJCODU1ODoge1xuICAgICAgICAgIFR5cGU6IFwiQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpIdHRwTmFtZXNwYWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgTmFtZTogXCJodHRwXCJcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBNeU5hbWVzcGFjZU15U2VydmljZTM2NUUyNDcwOiB7XG4gICAgICAgICAgVHlwZTogXCJBV1M6OlNlcnZpY2VEaXNjb3Zlcnk6OlNlcnZpY2VcIixcbiAgICAgICAgICBQcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICBEZXNjcmlwdGlvbjogXCJzZXJ2aWNlIGRlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICBIZWFsdGhDaGVja0N1c3RvbUNvbmZpZzoge1xuICAgICAgICAgICAgICBGYWlsdXJlVGhyZXNob2xkOiAzLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIE5hbWU6IFwic2VydmljZVwiLFxuICAgICAgICAgICAgTmFtZXNwYWNlSWQ6IHtcbiAgICAgICAgICAgICAgXCJGbjo6R2V0QXR0XCI6IFtcbiAgICAgICAgICAgICAgICBcIk15TmFtZXNwYWNlRDBCQjg1NThcIixcbiAgICAgICAgICAgICAgICBcIklkXCJcbiAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1NlcnZpY2UgZm9yIEhUVFAgbmFtZXNwYWNlIHdpdGggaGVhbHRoIGNoZWNrJyh0ZXN0OiBUZXN0KSB7XG4gICAgLy8gR0lWRU5cbiAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcblxuICAgIGNvbnN0IG5hbWVzcGFjZSA9IG5ldyBzZXJ2aWNlZGlzY292ZXJ5Lkh0dHBOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdodHRwJyxcbiAgICB9KTtcblxuICAgIG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnLCB7XG4gICAgICBuYW1lOiAnc2VydmljZScsXG4gICAgICBkZXNjcmlwdGlvbjogJ3NlcnZpY2UgZGVzY3JpcHRpb24nLFxuICAgICAgaGVhbHRoQ2hlY2s6IHtcbiAgICAgICAgdHlwZTogc2VydmljZWRpc2NvdmVyeS5IZWFsdGhDaGVja1R5cGUuSHR0cCxcbiAgICAgICAgcmVzb3VyY2VQYXRoOiAnL2NoZWNrJ1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgLy8gVEhFTlxuICAgIGV4cGVjdChzdGFjaykudG9NYXRjaCh7XG4gICAgICBSZXNvdXJjZXM6IHtcbiAgICAgICAgTXlOYW1lc3BhY2VEMEJCODU1ODoge1xuICAgICAgICAgIFR5cGU6IFwiQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpIdHRwTmFtZXNwYWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgTmFtZTogXCJodHRwXCJcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBNeU5hbWVzcGFjZU15U2VydmljZTM2NUUyNDcwOiB7XG4gICAgICAgICAgVHlwZTogXCJBV1M6OlNlcnZpY2VEaXNjb3Zlcnk6OlNlcnZpY2VcIixcbiAgICAgICAgICBQcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICBEZXNjcmlwdGlvbjogXCJzZXJ2aWNlIGRlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICBIZWFsdGhDaGVja0NvbmZpZzoge1xuICAgICAgICAgICAgICBGYWlsdXJlVGhyZXNob2xkOiAxLFxuICAgICAgICAgICAgICBSZXNvdXJjZVBhdGg6IFwiL2NoZWNrXCIsXG4gICAgICAgICAgICAgIFR5cGU6IFwiSFRUUFwiXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgTmFtZTogXCJzZXJ2aWNlXCIsXG4gICAgICAgICAgICBOYW1lc3BhY2VJZDoge1xuICAgICAgICAgICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICAgICAgICAgIFwiTXlOYW1lc3BhY2VEMEJCODU1OFwiLFxuICAgICAgICAgICAgICAgIFwiSWRcIlxuICAgICAgICAgICAgICBdXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICAnU2VydmljZSBmb3IgUHVibGljIEROUyBuYW1lc3BhY2UnKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnZG5zJyxcbiAgICB9KTtcblxuICAgIG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnLCB7XG4gICAgICBuYW1lOiAnc2VydmljZScsXG4gICAgICBkZXNjcmlwdGlvbjogJ3NlcnZpY2UgZGVzY3JpcHRpb24nLFxuICAgICAgY3VzdG9tSGVhbHRoQ2hlY2s6IHtcbiAgICAgICAgZmFpbHVyZVRocmVzaG9sZDogMyxcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICBleHBlY3Qoc3RhY2spLnRvTWF0Y2goe1xuICAgICAgUmVzb3VyY2VzOiB7XG4gICAgICAgIE15TmFtZXNwYWNlRDBCQjg1NTg6IHtcbiAgICAgICAgICBUeXBlOiBcIkFXUzo6U2VydmljZURpc2NvdmVyeTo6UHVibGljRG5zTmFtZXNwYWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgTmFtZTogXCJkbnNcIlxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgTXlOYW1lc3BhY2VNeVNlcnZpY2UzNjVFMjQ3MDoge1xuICAgICAgICAgIFR5cGU6IFwiQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpTZXJ2aWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgRGVzY3JpcHRpb246IFwic2VydmljZSBkZXNjcmlwdGlvblwiLFxuICAgICAgICAgICAgRG5zQ29uZmlnOiB7XG4gICAgICAgICAgICAgIERuc1JlY29yZHM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBUVEw6IDYwLFxuICAgICAgICAgICAgICAgICAgVHlwZTogXCJBXCJcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIE5hbWVzcGFjZUlkOiB7XG4gICAgICAgICAgICAgICAgXCJGbjo6R2V0QXR0XCI6IFtcbiAgICAgICAgICAgICAgICAgIFwiTXlOYW1lc3BhY2VEMEJCODU1OFwiLFxuICAgICAgICAgICAgICAgICAgXCJJZFwiXG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBSb3V0aW5nUG9saWN5OiBcIk1VTFRJVkFMVUVcIlxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIEhlYWx0aENoZWNrQ3VzdG9tQ29uZmlnOiB7XG4gICAgICAgICAgICAgIEZhaWx1cmVUaHJlc2hvbGQ6IDNcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBOYW1lOiBcInNlcnZpY2VcIixcbiAgICAgICAgICAgIE5hbWVzcGFjZUlkOiB7XG4gICAgICAgICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgICAgICAgXCJNeU5hbWVzcGFjZUQwQkI4NTU4XCIsXG4gICAgICAgICAgICAgICAgXCJJZFwiXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdTZXJ2aWNlIGZvciBQdWJsaWMgRE5TIG5hbWVzcGFjZSB3aXRoIEEgYW5kIEFBQUEgcmVjb3JkcycodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5QdWJsaWNEbnNOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdkbnMnLFxuICAgIH0pO1xuXG4gICAgbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScsIHtcbiAgICAgIGRuc1JlY29yZFR5cGU6IHNlcnZpY2VkaXNjb3ZlcnkuRG5zUmVjb3JkVHlwZS5BX0FBQUFcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICBleHBlY3Qoc3RhY2spLnRvTWF0Y2goe1xuICAgICAgUmVzb3VyY2VzOiB7XG4gICAgICAgIE15TmFtZXNwYWNlRDBCQjg1NTg6IHtcbiAgICAgICAgICBUeXBlOiBcIkFXUzo6U2VydmljZURpc2NvdmVyeTo6UHVibGljRG5zTmFtZXNwYWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgTmFtZTogXCJkbnNcIlxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgTXlOYW1lc3BhY2VNeVNlcnZpY2UzNjVFMjQ3MDoge1xuICAgICAgICAgIFR5cGU6IFwiQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpTZXJ2aWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgRG5zQ29uZmlnOiB7XG4gICAgICAgICAgICAgIERuc1JlY29yZHM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBUVEw6IDYwLFxuICAgICAgICAgICAgICAgICAgVHlwZTogXCJBXCJcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIFRUTDogNjAsXG4gICAgICAgICAgICAgICAgICBUeXBlOiBcIkFBQUFcIlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgTmFtZXNwYWNlSWQ6IHtcbiAgICAgICAgICAgICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICAgICAgICAgICAgXCJNeU5hbWVzcGFjZUQwQkI4NTU4XCIsXG4gICAgICAgICAgICAgICAgICBcIklkXCJcbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIFJvdXRpbmdQb2xpY3k6IFwiTVVMVElWQUxVRVwiLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIE5hbWVzcGFjZUlkOiB7XG4gICAgICAgICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgICAgICAgXCJNeU5hbWVzcGFjZUQwQkI4NTU4XCIsXG4gICAgICAgICAgICAgICAgXCJJZFwiXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdEZWZhdWx0cyB0byBXRUlHSFRFRCByb3V0aW5nIHBvbGljeSBmb3IgQ05BTUUnKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnZG5zJyxcbiAgICB9KTtcblxuICAgIG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnLCB7XG4gICAgICBkbnNSZWNvcmRUeXBlOiBzZXJ2aWNlZGlzY292ZXJ5LkRuc1JlY29yZFR5cGUuQ05BTUVcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICBleHBlY3Qoc3RhY2spLnRvTWF0Y2goe1xuICAgICAgUmVzb3VyY2VzOiB7XG4gICAgICAgIE15TmFtZXNwYWNlRDBCQjg1NTg6IHtcbiAgICAgICAgICBUeXBlOiBcIkFXUzo6U2VydmljZURpc2NvdmVyeTo6UHVibGljRG5zTmFtZXNwYWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgTmFtZTogXCJkbnNcIlxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgTXlOYW1lc3BhY2VNeVNlcnZpY2UzNjVFMjQ3MDoge1xuICAgICAgICAgIFR5cGU6IFwiQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpTZXJ2aWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgRG5zQ29uZmlnOiB7XG4gICAgICAgICAgICAgIERuc1JlY29yZHM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBUVEw6IDYwLFxuICAgICAgICAgICAgICAgICAgVHlwZTogXCJDTkFNRVwiXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBOYW1lc3BhY2VJZDoge1xuICAgICAgICAgICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgICAgICAgICBcIk15TmFtZXNwYWNlRDBCQjg1NThcIixcbiAgICAgICAgICAgICAgICAgIFwiSWRcIlxuICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgUm91dGluZ1BvbGljeTogXCJXRUlHSFRFRFwiLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIE5hbWVzcGFjZUlkOiB7XG4gICAgICAgICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgICAgICAgXCJNeU5hbWVzcGFjZUQwQkI4NTU4XCIsXG4gICAgICAgICAgICAgICAgXCJJZFwiXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdUaHJvd3Mgd2hlbiBzcGVjaWZ5aW5nIGJvdGggaGVhbHRoQ2hlY2tDb25maWcgYW5kIGhlYWx0aENoZWNrQ3VzdG9tQ29uZmlnIG9uIFB1YmxpY0Ruc05hbWVzcGFjZScodGVzdDogVGVzdCkge1xuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnbmFtZScsXG4gICAgfSk7XG5cbiAgICAvLyBUSEVOXG4gICAgdGVzdC50aHJvd3MoKCkgPT4ge1xuICAgICAgbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScsIHtcbiAgICAgICAgbmFtZTogJ3NlcnZpY2UnLFxuICAgICAgICBoZWFsdGhDaGVjazoge1xuICAgICAgICAgIHJlc291cmNlUGF0aDogJy8nXG4gICAgICAgIH0sXG4gICAgICAgIGN1c3RvbUhlYWx0aENoZWNrOiB7XG4gICAgICAgICAgZmFpbHVyZVRocmVzaG9sZDogMVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9LCAvYGhlYWx0aENoZWNrQ29uZmlnYC4rYGhlYWx0aENoZWNrQ3VzdG9tQ29uZmlnYC8pO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1Rocm93cyB3aGVuIHNwZWNpZnlpbmcgaGVhbHRoQ2hlY2tDb25maWcgb24gUHJpdmF0ZURuc05hbWVzcGFjZScodGVzdDogVGVzdCkge1xuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuICAgIGNvbnN0IHZwYyA9IG5ldyBlYzIuVnBjTmV0d29yayhzdGFjaywgJ015VnBjJyk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5Qcml2YXRlRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnbmFtZScsXG4gICAgICB2cGNcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICBuYW1lc3BhY2UuY3JlYXRlU2VydmljZSgnTXlTZXJ2aWNlJywge1xuICAgICAgICBuYW1lOiAnc2VydmljZScsXG4gICAgICAgIGhlYWx0aENoZWNrOiB7XG4gICAgICAgICAgcmVzb3VyY2VQYXRoOiAnLydcbiAgICAgICAgfSxcbiAgICAgICAgY3VzdG9tSGVhbHRoQ2hlY2s6IHtcbiAgICAgICAgICBmYWlsdXJlVGhyZXNob2xkOiAxXG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sIC9gaGVhbHRoQ2hlY2tDb25maWdgLitgaGVhbHRoQ2hlY2tDdXN0b21Db25maWdgLyk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICAnVGhyb3dzIHdoZW4gdXNpbmcgQ05BTUUgYW5kIE11bHRpdmFsdWUgcm91dGluZyBwb2xpY3knKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnbmFtZScsXG4gICAgfSk7XG5cbiAgICAvLyBUSEVOXG4gICAgdGVzdC50aHJvd3MoKCkgPT4ge1xuICAgICAgbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScsIHtcbiAgICAgICAgbmFtZTogJ3NlcnZpY2UnLFxuICAgICAgICBkbnNSZWNvcmRUeXBlOiBzZXJ2aWNlZGlzY292ZXJ5LkRuc1JlY29yZFR5cGUuQ05BTUUsXG4gICAgICAgIHJvdXRpbmdQb2xpY3k6IHNlcnZpY2VkaXNjb3ZlcnkuUm91dGluZ1BvbGljeS5NdWx0aXZhbHVlLFxuICAgICAgfSk7XG4gICAgfSwgL0Nhbm5vdCB1c2UgYENOQU1FYCByZWNvcmQgd2hlbiByb3V0aW5nIHBvbGljeSBpcyBgTXVsdGl2YWx1ZWAuLyk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICAnVGhyb3dzIHdoZW4gc3BlY2lmeWluZyByZXNvdXJjZVBhdGggd2l0aCBUQ1AnKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnbmFtZScsXG4gICAgfSk7XG5cbiAgICAvLyBUSEVOXG4gICAgdGVzdC50aHJvd3MoKCkgPT4ge1xuICAgICAgbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScsIHtcbiAgICAgICAgbmFtZTogJ3NlcnZpY2UnLFxuICAgICAgICBoZWFsdGhDaGVjazoge1xuICAgICAgICAgIHR5cGU6IHNlcnZpY2VkaXNjb3ZlcnkuSGVhbHRoQ2hlY2tUeXBlLlRjcCxcbiAgICAgICAgICByZXNvdXJjZVBhdGg6ICcvY2hlY2snXG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sIC9gcmVzb3VyY2VQYXRoYC4rYFRDUGAvKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdUaHJvd3Mgd2hlbiBzcGVjaWZ5aW5nIGxvYWRiYWxhbmNlciB3aXRoIHdyb25nIERuc1JlY29yZFR5cGUnKHRlc3Q6IFRlc3QpIHtcbiAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcblxuICAgIGNvbnN0IG5hbWVzcGFjZSA9IG5ldyBzZXJ2aWNlZGlzY292ZXJ5LlB1YmxpY0Ruc05hbWVzcGFjZShzdGFjaywgJ015TmFtZXNwYWNlJywge1xuICAgICAgbmFtZTogJ25hbWUnLFxuICAgIH0pO1xuXG4gICAgLy8gVEhFTlxuICAgIHRlc3QudGhyb3dzKCgpID0+IHtcbiAgICAgIG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnLCB7XG4gICAgICAgIG5hbWU6ICdzZXJ2aWNlJyxcbiAgICAgICAgZG5zUmVjb3JkVHlwZTogc2VydmljZWRpc2NvdmVyeS5EbnNSZWNvcmRUeXBlLkNOQU1FLFxuICAgICAgICBsb2FkQmFsYW5jZXI6IHRydWVcbiAgICAgIH0pO1xuICAgIH0sIC9NdXN0IHN1cHBvcnQgYEFgIG9yIGBBQUFBYCByZWNvcmRzIHRvIHJlZ2lzdGVyIGxvYWRiYWxhbmNlcnMvKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdUaHJvd3Mgd2hlbiBzcGVjaWZ5aW5nIGxvYWRiYWxhbmNlciB3aXRoIE11bHRpdmFsdWUgcm91dGluZyBQb2xpY3knKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnaHR0cCcsXG4gICAgfSk7XG5cbiAgICAvLyBUSEVOXG4gICAgdGVzdC50aHJvd3MoKCkgPT4ge1xuICAgICAgbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScsIHtcbiAgICAgICAgbG9hZEJhbGFuY2VyOiB0cnVlLFxuICAgICAgICByb3V0aW5nUG9saWN5OiBzZXJ2aWNlZGlzY292ZXJ5LlJvdXRpbmdQb2xpY3kuTXVsdGl2YWx1ZVxuICAgICAgfSk7XG4gICAgfSwgL0Nhbm5vdCByZWdpc3RlciBsb2FkYmFsYW5jZXJzIHdoZW4gcm91dGluZyBwb2xpY3kgaXMgYE11bHRpdmFsdWVgLi8pO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1NlcnZpY2UgZm9yIFByaXZhdGUgRE5TIG5hbWVzcGFjZScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG4gICAgY29uc3QgdnBjID0gbmV3IGVjMi5WcGNOZXR3b3JrKHN0YWNrLCAnTXlWcGMnKTtcblxuICAgIGNvbnN0IG5hbWVzcGFjZSA9IG5ldyBzZXJ2aWNlZGlzY292ZXJ5LlByaXZhdGVEbnNOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdwcml2YXRlJyxcbiAgICAgIHZwY1xuICAgIH0pO1xuXG4gICAgbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScsIHtcbiAgICAgIG5hbWU6ICdzZXJ2aWNlJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnc2VydmljZSBkZXNjcmlwdGlvbicsXG4gICAgfSk7XG5cbiAgICAvLyBUSEVOXG4gICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0FXUzo6U2VydmljZURpc2NvdmVyeTo6UHJpdmF0ZURuc05hbWVzcGFjZScsIHtcbiAgICAgIE5hbWU6IFwicHJpdmF0ZVwiXG4gICAgfSkpO1xuXG4gICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0FXUzo6U2VydmljZURpc2NvdmVyeTo6U2VydmljZScsIHtcbiAgICAgIERlc2NyaXB0aW9uOiBcInNlcnZpY2UgZGVzY3JpcHRpb25cIixcbiAgICAgIERuc0NvbmZpZzoge1xuICAgICAgICBEbnNSZWNvcmRzOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgVFRMOiA2MCxcbiAgICAgICAgICAgIFR5cGU6IFwiQVwiXG4gICAgICAgICAgfVxuICAgICAgICBdLFxuICAgICAgICBOYW1lc3BhY2VJZDoge1xuICAgICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgICBcIk15TmFtZXNwYWNlRDBCQjg1NThcIixcbiAgICAgICAgICAgIFwiSWRcIlxuICAgICAgICAgIF1cbiAgICAgICAgfSxcbiAgICAgICAgUm91dGluZ1BvbGljeTogXCJNVUxUSVZBTFVFXCJcbiAgICAgIH0sXG4gICAgICBOYW1lOiBcInNlcnZpY2VcIixcbiAgICAgIE5hbWVzcGFjZUlkOiB7XG4gICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgXCJNeU5hbWVzcGFjZUQwQkI4NTU4XCIsXG4gICAgICAgICAgXCJJZFwiXG4gICAgICAgIF1cbiAgICAgIH1cbiAgICB9KSk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcbn07XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidGVzdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw0Q0FBdUQ7QUFDdkQsd0NBQXlDO0FBQ3pDLG9DQUFxQztBQUVyQywyQ0FBNEM7QUFFNUMsaUJBQVM7SUFDUCxxREFBcUQsQ0FBQyxJQUFVO1FBQzlELFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUU5QixNQUFNLFNBQVMsR0FBRyxJQUFJLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsYUFBYSxFQUFFO1lBQ3pFLElBQUksRUFBRSxNQUFNO1NBQ2IsQ0FBQyxDQUFDO1FBRUgsU0FBUyxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUU7WUFDbkMsSUFBSSxFQUFFLFNBQVM7WUFDZixXQUFXLEVBQUUscUJBQXFCO1lBQ2xDLGlCQUFpQixFQUFFO2dCQUNqQixnQkFBZ0IsRUFBRSxDQUFDO2FBQ3BCO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUM7WUFDcEIsU0FBUyxFQUFFO2dCQUNULG1CQUFtQixFQUFFO29CQUNuQixJQUFJLEVBQUUsc0NBQXNDO29CQUM1QyxVQUFVLEVBQUU7d0JBQ1YsSUFBSSxFQUFFLE1BQU07cUJBQ2I7aUJBQ0Y7Z0JBQ0QsNEJBQTRCLEVBQUU7b0JBQzVCLElBQUksRUFBRSxnQ0FBZ0M7b0JBQ3RDLFVBQVUsRUFBRTt3QkFDVixXQUFXLEVBQUUscUJBQXFCO3dCQUNsQyx1QkFBdUIsRUFBRTs0QkFDdkIsZ0JBQWdCLEVBQUUsQ0FBQzt5QkFDcEI7d0JBQ0QsSUFBSSxFQUFFLFNBQVM7d0JBQ2YsV0FBVyxFQUFFOzRCQUNYLFlBQVksRUFBRTtnQ0FDWixxQkFBcUI7Z0NBQ3JCLElBQUk7NkJBQ0w7eUJBQ0Y7cUJBQ0Y7aUJBQ0Y7YUFDRjtTQUNG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b0JBQ1oscUJBQXFCO29CQUNyQixJQUFJO2lCQUNMO2FBQ0Y7U0FDRixDQUFDLENBQUMsQ0FBQztRQUVKLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZXhwZWN0LCBoYXZlUmVzb3VyY2UgfSBmcm9tICdAYXdzLWNkay9hc3NlcnQnO1xuaW1wb3J0IGVjMiA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2F3cy1lYzInKTtcbmltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCB7IFRlc3QgfSBmcm9tICdub2RldW5pdCc7XG5pbXBvcnQgc2VydmljZWRpc2NvdmVyeSA9IHJlcXVpcmUoJy4uL2xpYicpO1xuXG5leHBvcnQgPSB7XG4gICdTZXJ2aWNlIGZvciBIVFRQIG5hbWVzcGFjZSB3aXRoIGN1c3RvbSBoZWFsdGggY2hlY2snKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuSHR0cE5hbWVzcGFjZShzdGFjaywgJ015TmFtZXNwYWNlJywge1xuICAgICAgbmFtZTogJ2h0dHAnLFxuICAgIH0pO1xuXG4gICAgbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScsIHtcbiAgICAgIG5hbWU6ICdzZXJ2aWNlJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnc2VydmljZSBkZXNjcmlwdGlvbicsXG4gICAgICBjdXN0b21IZWFsdGhDaGVjazoge1xuICAgICAgICBmYWlsdXJlVGhyZXNob2xkOiAzLFxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgLy8gVEhFTlxuICAgIGV4cGVjdChzdGFjaykudG9NYXRjaCh7XG4gICAgICBSZXNvdXJjZXM6IHtcbiAgICAgICAgTXlOYW1lc3BhY2VEMEJCODU1ODoge1xuICAgICAgICAgIFR5cGU6IFwiQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpIdHRwTmFtZXNwYWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgTmFtZTogXCJodHRwXCJcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBNeU5hbWVzcGFjZU15U2VydmljZTM2NUUyNDcwOiB7XG4gICAgICAgICAgVHlwZTogXCJBV1M6OlNlcnZpY2VEaXNjb3Zlcnk6OlNlcnZpY2VcIixcbiAgICAgICAgICBQcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICBEZXNjcmlwdGlvbjogXCJzZXJ2aWNlIGRlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICBIZWFsdGhDaGVja0N1c3RvbUNvbmZpZzoge1xuICAgICAgICAgICAgICBGYWlsdXJlVGhyZXNob2xkOiAzLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIE5hbWU6IFwic2VydmljZVwiLFxuICAgICAgICAgICAgTmFtZXNwYWNlSWQ6IHtcbiAgICAgICAgICAgICAgXCJGbjo6R2V0QXR0XCI6IFtcbiAgICAgICAgICAgICAgICBcIk15TmFtZXNwYWNlRDBCQjg1NThcIixcbiAgICAgICAgICAgICAgICBcIklkXCJcbiAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1NlcnZpY2UgZm9yIEhUVFAgbmFtZXNwYWNlIHdpdGggaGVhbHRoIGNoZWNrJyh0ZXN0OiBUZXN0KSB7XG4gICAgLy8gR0lWRU5cbiAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcblxuICAgIGNvbnN0IG5hbWVzcGFjZSA9IG5ldyBzZXJ2aWNlZGlzY292ZXJ5Lkh0dHBOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdodHRwJyxcbiAgICB9KTtcblxuICAgIG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnLCB7XG4gICAgICBuYW1lOiAnc2VydmljZScsXG4gICAgICBkZXNjcmlwdGlvbjogJ3NlcnZpY2UgZGVzY3JpcHRpb24nLFxuICAgICAgaGVhbHRoQ2hlY2s6IHtcbiAgICAgICAgdHlwZTogc2VydmljZWRpc2NvdmVyeS5IZWFsdGhDaGVja1R5cGUuSHR0cCxcbiAgICAgICAgcmVzb3VyY2VQYXRoOiAnL2NoZWNrJ1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgLy8gVEhFTlxuICAgIGV4cGVjdChzdGFjaykudG9NYXRjaCh7XG4gICAgICBSZXNvdXJjZXM6IHtcbiAgICAgICAgTXlOYW1lc3BhY2VEMEJCODU1ODoge1xuICAgICAgICAgIFR5cGU6IFwiQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpIdHRwTmFtZXNwYWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgTmFtZTogXCJodHRwXCJcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBNeU5hbWVzcGFjZU15U2VydmljZTM2NUUyNDcwOiB7XG4gICAgICAgICAgVHlwZTogXCJBV1M6OlNlcnZpY2VEaXNjb3Zlcnk6OlNlcnZpY2VcIixcbiAgICAgICAgICBQcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICBEZXNjcmlwdGlvbjogXCJzZXJ2aWNlIGRlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICBIZWFsdGhDaGVja0NvbmZpZzoge1xuICAgICAgICAgICAgICBGYWlsdXJlVGhyZXNob2xkOiAxLFxuICAgICAgICAgICAgICBSZXNvdXJjZVBhdGg6IFwiL2NoZWNrXCIsXG4gICAgICAgICAgICAgIFR5cGU6IFwiSFRUUFwiXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgTmFtZTogXCJzZXJ2aWNlXCIsXG4gICAgICAgICAgICBOYW1lc3BhY2VJZDoge1xuICAgICAgICAgICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICAgICAgICAgIFwiTXlOYW1lc3BhY2VEMEJCODU1OFwiLFxuICAgICAgICAgICAgICAgIFwiSWRcIlxuICAgICAgICAgICAgICBdXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICAnU2VydmljZSBmb3IgUHVibGljIEROUyBuYW1lc3BhY2UnKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnZG5zJyxcbiAgICB9KTtcblxuICAgIG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnLCB7XG4gICAgICBuYW1lOiAnc2VydmljZScsXG4gICAgICBkZXNjcmlwdGlvbjogJ3NlcnZpY2UgZGVzY3JpcHRpb24nLFxuICAgICAgY3VzdG9tSGVhbHRoQ2hlY2s6IHtcbiAgICAgICAgZmFpbHVyZVRocmVzaG9sZDogMyxcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICBleHBlY3Qoc3RhY2spLnRvTWF0Y2goe1xuICAgICAgUmVzb3VyY2VzOiB7XG4gICAgICAgIE15TmFtZXNwYWNlRDBCQjg1NTg6IHtcbiAgICAgICAgICBUeXBlOiBcIkFXUzo6U2VydmljZURpc2NvdmVyeTo6UHVibGljRG5zTmFtZXNwYWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgTmFtZTogXCJkbnNcIlxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgTXlOYW1lc3BhY2VNeVNlcnZpY2UzNjVFMjQ3MDoge1xuICAgICAgICAgIFR5cGU6IFwiQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpTZXJ2aWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgRGVzY3JpcHRpb246IFwic2VydmljZSBkZXNjcmlwdGlvblwiLFxuICAgICAgICAgICAgRG5zQ29uZmlnOiB7XG4gICAgICAgICAgICAgIERuc1JlY29yZHM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBUVEw6IDYwLFxuICAgICAgICAgICAgICAgICAgVHlwZTogXCJBXCJcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIE5hbWVzcGFjZUlkOiB7XG4gICAgICAgICAgICAgICAgXCJGbjo6R2V0QXR0XCI6IFtcbiAgICAgICAgICAgICAgICAgIFwiTXlOYW1lc3BhY2VEMEJCODU1OFwiLFxuICAgICAgICAgICAgICAgICAgXCJJZFwiXG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBSb3V0aW5nUG9saWN5OiBcIk1VTFRJVkFMVUVcIlxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIEhlYWx0aENoZWNrQ3VzdG9tQ29uZmlnOiB7XG4gICAgICAgICAgICAgIEZhaWx1cmVUaHJlc2hvbGQ6IDNcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBOYW1lOiBcInNlcnZpY2VcIixcbiAgICAgICAgICAgIE5hbWVzcGFjZUlkOiB7XG4gICAgICAgICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgICAgICAgXCJNeU5hbWVzcGFjZUQwQkI4NTU4XCIsXG4gICAgICAgICAgICAgICAgXCJJZFwiXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdTZXJ2aWNlIGZvciBQdWJsaWMgRE5TIG5hbWVzcGFjZSB3aXRoIEEgYW5kIEFBQUEgcmVjb3JkcycodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5QdWJsaWNEbnNOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdkbnMnLFxuICAgIH0pO1xuXG4gICAgbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScsIHtcbiAgICAgIGRuc1JlY29yZFR5cGU6IHNlcnZpY2VkaXNjb3ZlcnkuRG5zUmVjb3JkVHlwZS5BX0FBQUFcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICBleHBlY3Qoc3RhY2spLnRvTWF0Y2goe1xuICAgICAgUmVzb3VyY2VzOiB7XG4gICAgICAgIE15TmFtZXNwYWNlRDBCQjg1NTg6IHtcbiAgICAgICAgICBUeXBlOiBcIkFXUzo6U2VydmljZURpc2NvdmVyeTo6UHVibGljRG5zTmFtZXNwYWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgTmFtZTogXCJkbnNcIlxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgTXlOYW1lc3BhY2VNeVNlcnZpY2UzNjVFMjQ3MDoge1xuICAgICAgICAgIFR5cGU6IFwiQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpTZXJ2aWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgRG5zQ29uZmlnOiB7XG4gICAgICAgICAgICAgIERuc1JlY29yZHM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBUVEw6IDYwLFxuICAgICAgICAgICAgICAgICAgVHlwZTogXCJBXCJcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIFRUTDogNjAsXG4gICAgICAgICAgICAgICAgICBUeXBlOiBcIkFBQUFcIlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgTmFtZXNwYWNlSWQ6IHtcbiAgICAgICAgICAgICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICAgICAgICAgICAgXCJNeU5hbWVzcGFjZUQwQkI4NTU4XCIsXG4gICAgICAgICAgICAgICAgICBcIklkXCJcbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIFJvdXRpbmdQb2xpY3k6IFwiTVVMVElWQUxVRVwiLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIE5hbWVzcGFjZUlkOiB7XG4gICAgICAgICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgICAgICAgXCJNeU5hbWVzcGFjZUQwQkI4NTU4XCIsXG4gICAgICAgICAgICAgICAgXCJJZFwiXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdEZWZhdWx0cyB0byBXRUlHSFRFRCByb3V0aW5nIHBvbGljeSBmb3IgQ05BTUUnKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnZG5zJyxcbiAgICB9KTtcblxuICAgIG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnLCB7XG4gICAgICBkbnNSZWNvcmRUeXBlOiBzZXJ2aWNlZGlzY292ZXJ5LkRuc1JlY29yZFR5cGUuQ05BTUVcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICBleHBlY3Qoc3RhY2spLnRvTWF0Y2goe1xuICAgICAgUmVzb3VyY2VzOiB7XG4gICAgICAgIE15TmFtZXNwYWNlRDBCQjg1NTg6IHtcbiAgICAgICAgICBUeXBlOiBcIkFXUzo6U2VydmljZURpc2NvdmVyeTo6UHVibGljRG5zTmFtZXNwYWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgTmFtZTogXCJkbnNcIlxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgTXlOYW1lc3BhY2VNeVNlcnZpY2UzNjVFMjQ3MDoge1xuICAgICAgICAgIFR5cGU6IFwiQVdTOjpTZXJ2aWNlRGlzY292ZXJ5OjpTZXJ2aWNlXCIsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgRG5zQ29uZmlnOiB7XG4gICAgICAgICAgICAgIERuc1JlY29yZHM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBUVEw6IDYwLFxuICAgICAgICAgICAgICAgICAgVHlwZTogXCJDTkFNRVwiXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBOYW1lc3BhY2VJZDoge1xuICAgICAgICAgICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgICAgICAgICBcIk15TmFtZXNwYWNlRDBCQjg1NThcIixcbiAgICAgICAgICAgICAgICAgIFwiSWRcIlxuICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgUm91dGluZ1BvbGljeTogXCJXRUlHSFRFRFwiLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIE5hbWVzcGFjZUlkOiB7XG4gICAgICAgICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgICAgICAgXCJNeU5hbWVzcGFjZUQwQkI4NTU4XCIsXG4gICAgICAgICAgICAgICAgXCJJZFwiXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdUaHJvd3Mgd2hlbiBzcGVjaWZ5aW5nIGJvdGggaGVhbHRoQ2hlY2tDb25maWcgYW5kIGhlYWx0aENoZWNrQ3VzdG9tQ29uZmlnIG9uIFB1YmxpY0Ruc05hbWVzcGFjZScodGVzdDogVGVzdCkge1xuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnbmFtZScsXG4gICAgfSk7XG5cbiAgICAvLyBUSEVOXG4gICAgdGVzdC50aHJvd3MoKCkgPT4ge1xuICAgICAgbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScsIHtcbiAgICAgICAgbmFtZTogJ3NlcnZpY2UnLFxuICAgICAgICBoZWFsdGhDaGVjazoge1xuICAgICAgICAgIHJlc291cmNlUGF0aDogJy8nXG4gICAgICAgIH0sXG4gICAgICAgIGN1c3RvbUhlYWx0aENoZWNrOiB7XG4gICAgICAgICAgZmFpbHVyZVRocmVzaG9sZDogMVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9LCAvYGhlYWx0aENoZWNrQ29uZmlnYC4rYGhlYWx0aENoZWNrQ3VzdG9tQ29uZmlnYC8pO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1Rocm93cyB3aGVuIHNwZWNpZnlpbmcgaGVhbHRoQ2hlY2tDb25maWcgb24gUHJpdmF0ZURuc05hbWVzcGFjZScodGVzdDogVGVzdCkge1xuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuICAgIGNvbnN0IHZwYyA9IG5ldyBlYzIuVnBjKHN0YWNrLCAnTXlWcGMnKTtcblxuICAgIGNvbnN0IG5hbWVzcGFjZSA9IG5ldyBzZXJ2aWNlZGlzY292ZXJ5LlByaXZhdGVEbnNOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgIHZwY1xuICAgIH0pO1xuXG4gICAgLy8gVEhFTlxuICAgIHRlc3QudGhyb3dzKCgpID0+IHtcbiAgICAgIG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnLCB7XG4gICAgICAgIG5hbWU6ICdzZXJ2aWNlJyxcbiAgICAgICAgaGVhbHRoQ2hlY2s6IHtcbiAgICAgICAgICByZXNvdXJjZVBhdGg6ICcvJ1xuICAgICAgICB9LFxuICAgICAgICBjdXN0b21IZWFsdGhDaGVjazoge1xuICAgICAgICAgIGZhaWx1cmVUaHJlc2hvbGQ6IDFcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSwgL2BoZWFsdGhDaGVja0NvbmZpZ2AuK2BoZWFsdGhDaGVja0N1c3RvbUNvbmZpZ2AvKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdUaHJvd3Mgd2hlbiB1c2luZyBDTkFNRSBhbmQgTXVsdGl2YWx1ZSByb3V0aW5nIHBvbGljeScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5QdWJsaWNEbnNOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICduYW1lJyxcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICBuYW1lc3BhY2UuY3JlYXRlU2VydmljZSgnTXlTZXJ2aWNlJywge1xuICAgICAgICBuYW1lOiAnc2VydmljZScsXG4gICAgICAgIGRuc1JlY29yZFR5cGU6IHNlcnZpY2VkaXNjb3ZlcnkuRG5zUmVjb3JkVHlwZS5DTkFNRSxcbiAgICAgICAgcm91dGluZ1BvbGljeTogc2VydmljZWRpc2NvdmVyeS5Sb3V0aW5nUG9saWN5Lk11bHRpdmFsdWUsXG4gICAgICB9KTtcbiAgICB9LCAvQ2Fubm90IHVzZSBgQ05BTUVgIHJlY29yZCB3aGVuIHJvdXRpbmcgcG9saWN5IGlzIGBNdWx0aXZhbHVlYC4vKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdUaHJvd3Mgd2hlbiBzcGVjaWZ5aW5nIHJlc291cmNlUGF0aCB3aXRoIFRDUCcodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5QdWJsaWNEbnNOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICduYW1lJyxcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICBuYW1lc3BhY2UuY3JlYXRlU2VydmljZSgnTXlTZXJ2aWNlJywge1xuICAgICAgICBuYW1lOiAnc2VydmljZScsXG4gICAgICAgIGhlYWx0aENoZWNrOiB7XG4gICAgICAgICAgdHlwZTogc2VydmljZWRpc2NvdmVyeS5IZWFsdGhDaGVja1R5cGUuVGNwLFxuICAgICAgICAgIHJlc291cmNlUGF0aDogJy9jaGVjaydcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSwgL2ByZXNvdXJjZVBhdGhgLitgVENQYC8pO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1Rocm93cyB3aGVuIHNwZWNpZnlpbmcgbG9hZGJhbGFuY2VyIHdpdGggd3JvbmcgRG5zUmVjb3JkVHlwZScodGVzdDogVGVzdCkge1xuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IHNlcnZpY2VkaXNjb3ZlcnkuUHVibGljRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAnbmFtZScsXG4gICAgfSk7XG5cbiAgICAvLyBUSEVOXG4gICAgdGVzdC50aHJvd3MoKCkgPT4ge1xuICAgICAgbmFtZXNwYWNlLmNyZWF0ZVNlcnZpY2UoJ015U2VydmljZScsIHtcbiAgICAgICAgbmFtZTogJ3NlcnZpY2UnLFxuICAgICAgICBkbnNSZWNvcmRUeXBlOiBzZXJ2aWNlZGlzY292ZXJ5LkRuc1JlY29yZFR5cGUuQ05BTUUsXG4gICAgICAgIGxvYWRCYWxhbmNlcjogdHJ1ZVxuICAgICAgfSk7XG4gICAgfSwgL011c3Qgc3VwcG9ydCBgQWAgb3IgYEFBQUFgIHJlY29yZHMgdG8gcmVnaXN0ZXIgbG9hZGJhbGFuY2Vycy8pO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ1Rocm93cyB3aGVuIHNwZWNpZnlpbmcgbG9hZGJhbGFuY2VyIHdpdGggTXVsdGl2YWx1ZSByb3V0aW5nIFBvbGljeScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5QdWJsaWNEbnNOYW1lc3BhY2Uoc3RhY2ssICdNeU5hbWVzcGFjZScsIHtcbiAgICAgIG5hbWU6ICdodHRwJyxcbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICBuYW1lc3BhY2UuY3JlYXRlU2VydmljZSgnTXlTZXJ2aWNlJywge1xuICAgICAgICBsb2FkQmFsYW5jZXI6IHRydWUsXG4gICAgICAgIHJvdXRpbmdQb2xpY3k6IHNlcnZpY2VkaXNjb3ZlcnkuUm91dGluZ1BvbGljeS5NdWx0aXZhbHVlXG4gICAgICB9KTtcbiAgICB9LCAvQ2Fubm90IHJlZ2lzdGVyIGxvYWRiYWxhbmNlcnMgd2hlbiByb3V0aW5nIHBvbGljeSBpcyBgTXVsdGl2YWx1ZWAuLyk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICAnU2VydmljZSBmb3IgUHJpdmF0ZSBETlMgbmFtZXNwYWNlJyh0ZXN0OiBUZXN0KSB7XG4gICAgLy8gR0lWRU5cbiAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcbiAgICBjb25zdCB2cGMgPSBuZXcgZWMyLlZwYyhzdGFjaywgJ015VnBjJyk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgc2VydmljZWRpc2NvdmVyeS5Qcml2YXRlRG5zTmFtZXNwYWNlKHN0YWNrLCAnTXlOYW1lc3BhY2UnLCB7XG4gICAgICBuYW1lOiAncHJpdmF0ZScsXG4gICAgICB2cGNcbiAgICB9KTtcblxuICAgIG5hbWVzcGFjZS5jcmVhdGVTZXJ2aWNlKCdNeVNlcnZpY2UnLCB7XG4gICAgICBuYW1lOiAnc2VydmljZScsXG4gICAgICBkZXNjcmlwdGlvbjogJ3NlcnZpY2UgZGVzY3JpcHRpb24nLFxuICAgIH0pO1xuXG4gICAgLy8gVEhFTlxuICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdBV1M6OlNlcnZpY2VEaXNjb3Zlcnk6OlByaXZhdGVEbnNOYW1lc3BhY2UnLCB7XG4gICAgICBOYW1lOiBcInByaXZhdGVcIlxuICAgIH0pKTtcblxuICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdBV1M6OlNlcnZpY2VEaXNjb3Zlcnk6OlNlcnZpY2UnLCB7XG4gICAgICBEZXNjcmlwdGlvbjogXCJzZXJ2aWNlIGRlc2NyaXB0aW9uXCIsXG4gICAgICBEbnNDb25maWc6IHtcbiAgICAgICAgRG5zUmVjb3JkczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIFRUTDogNjAsXG4gICAgICAgICAgICBUeXBlOiBcIkFcIlxuICAgICAgICAgIH1cbiAgICAgICAgXSxcbiAgICAgICAgTmFtZXNwYWNlSWQ6IHtcbiAgICAgICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICAgICAgXCJNeU5hbWVzcGFjZUQwQkI4NTU4XCIsXG4gICAgICAgICAgICBcIklkXCJcbiAgICAgICAgICBdXG4gICAgICAgIH0sXG4gICAgICAgIFJvdXRpbmdQb2xpY3k6IFwiTVVMVElWQUxVRVwiXG4gICAgICB9LFxuICAgICAgTmFtZTogXCJzZXJ2aWNlXCIsXG4gICAgICBOYW1lc3BhY2VJZDoge1xuICAgICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICAgIFwiTXlOYW1lc3BhY2VEMEJCODU1OFwiLFxuICAgICAgICAgIFwiSWRcIlxuICAgICAgICBdXG4gICAgICB9XG4gICAgfSkpO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG59O1xuIl19

@@ -51,2 +51,8 @@ {

"path": "../assert"
},
{
"path": "../../../tools/cdk-build-tools"
},
{
"path": "../../../tools/pkglint"
}

@@ -53,0 +59,0 @@ ],

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc