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

@aws-cdk/aws-s3

Package Overview
Dependencies
Maintainers
4
Versions
288
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

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

Comparing version 0.9.2 to 0.10.0

2

lib/bucket-policy.js

@@ -27,2 +27,2 @@ "use strict";

exports.BucketPolicy = BucketPolicy;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVja2V0LXBvbGljeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImJ1Y2tldC1wb2xpY3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzQ0FBeUQ7QUFFekQsaURBQWdEO0FBU2hEOztHQUVHO0FBQ0gsTUFBYSxZQUFhLFNBQVEsZUFBUztJQVN2QyxZQUFZLE1BQWlCLEVBQUUsSUFBWSxFQUFFLEtBQXdCO1FBQ2pFLEtBQUssQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFSeEI7Ozs7V0FJRztRQUNhLGFBQVEsR0FBRyxJQUFJLG9CQUFjLEVBQUUsQ0FBQztRQUs1QyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUU7WUFDMUIsTUFBTSxJQUFJLEtBQUssQ0FBQywyQ0FBMkMsQ0FBQyxDQUFDO1NBQ2hFO1FBRUQsSUFBSSw2QkFBYyxDQUFDLG9CQUFvQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDdEQsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVTtZQUMvQixjQUFjLEVBQUUsSUFBSSxDQUFDLFFBQVE7U0FDaEMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztDQUNKO0FBckJELG9DQXFCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCwgUG9saWN5RG9jdW1lbnQgfSBmcm9tICdAYXdzLWNkay9jZGsnO1xuaW1wb3J0IHsgQnVja2V0UmVmIH0gZnJvbSAnLi9idWNrZXQnO1xuaW1wb3J0IHsgY2xvdWRmb3JtYXRpb24gfSBmcm9tICcuL3MzLmdlbmVyYXRlZCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVja2V0UG9saWN5UHJvcHMge1xuICAgIC8qKlxuICAgICAqIFRoZSBBbWF6b24gUzMgYnVja2V0IHRoYXQgdGhlIHBvbGljeSBhcHBsaWVzIHRvLlxuICAgICAqL1xuICAgIGJ1Y2tldDogQnVja2V0UmVmO1xufVxuXG4vKipcbiAqIEFwcGxpZXMgYW4gQW1hem9uIFMzIGJ1Y2tldCBwb2xpY3kgdG8gYW4gQW1hem9uIFMzIGJ1Y2tldC5cbiAqL1xuZXhwb3J0IGNsYXNzIEJ1Y2tldFBvbGljeSBleHRlbmRzIENvbnN0cnVjdCB7XG5cbiAgICAvKipcbiAgICAgKiBBIHBvbGljeSBkb2N1bWVudCBjb250YWluaW5nIHBlcm1pc3Npb25zIHRvIGFkZCB0byB0aGUgc3BlY2lmaWVkIGJ1Y2tldC5cbiAgICAgKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIEFjY2VzcyBQb2xpY3kgTGFuZ3VhZ2UgT3ZlcnZpZXcgaW4gdGhlIEFtYXpvblxuICAgICAqIFNpbXBsZSBTdG9yYWdlIFNlcnZpY2UgRGV2ZWxvcGVyIEd1aWRlLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBkb2N1bWVudCA9IG5ldyBQb2xpY3lEb2N1bWVudCgpO1xuXG4gICAgY29uc3RydWN0b3IocGFyZW50OiBDb25zdHJ1Y3QsIG5hbWU6IHN0cmluZywgcHJvcHM6IEJ1Y2tldFBvbGljeVByb3BzKSB7XG4gICAgICAgIHN1cGVyKHBhcmVudCwgbmFtZSk7XG5cbiAgICAgICAgaWYgKCFwcm9wcy5idWNrZXQuYnVja2V0TmFtZSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdCdWNrZXQgZG9lc25cXCd0IGhhdmUgYSBidWNrZXROYW1lIGRlZmluZWQnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIG5ldyBjbG91ZGZvcm1hdGlvbi5CdWNrZXRQb2xpY3lSZXNvdXJjZSh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICAgICAgICBidWNrZXQ6IHByb3BzLmJ1Y2tldC5idWNrZXROYW1lLFxuICAgICAgICAgICAgcG9saWN5RG9jdW1lbnQ6IHRoaXMuZG9jdW1lbnQsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVja2V0LXBvbGljeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImJ1Y2tldC1wb2xpY3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzQ0FBeUQ7QUFFekQsaURBQWdEO0FBU2hEOztHQUVHO0FBQ0gsTUFBYSxZQUFhLFNBQVEsZUFBUztJQVN6QyxZQUFZLE1BQWlCLEVBQUUsSUFBWSxFQUFFLEtBQXdCO1FBQ25FLEtBQUssQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFSdEI7Ozs7V0FJRztRQUNhLGFBQVEsR0FBRyxJQUFJLG9CQUFjLEVBQUUsQ0FBQztRQUs5QyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUU7WUFDNUIsTUFBTSxJQUFJLEtBQUssQ0FBQywyQ0FBMkMsQ0FBQyxDQUFDO1NBQzlEO1FBRUQsSUFBSSw2QkFBYyxDQUFDLG9CQUFvQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDeEQsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVTtZQUMvQixjQUFjLEVBQUUsSUFBSSxDQUFDLFFBQVE7U0FDOUIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBckJELG9DQXFCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCwgUG9saWN5RG9jdW1lbnQgfSBmcm9tICdAYXdzLWNkay9jZGsnO1xuaW1wb3J0IHsgQnVja2V0UmVmIH0gZnJvbSAnLi9idWNrZXQnO1xuaW1wb3J0IHsgY2xvdWRmb3JtYXRpb24gfSBmcm9tICcuL3MzLmdlbmVyYXRlZCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVja2V0UG9saWN5UHJvcHMge1xuICAvKipcbiAgICogVGhlIEFtYXpvbiBTMyBidWNrZXQgdGhhdCB0aGUgcG9saWN5IGFwcGxpZXMgdG8uXG4gICAqL1xuICBidWNrZXQ6IEJ1Y2tldFJlZjtcbn1cblxuLyoqXG4gKiBBcHBsaWVzIGFuIEFtYXpvbiBTMyBidWNrZXQgcG9saWN5IHRvIGFuIEFtYXpvbiBTMyBidWNrZXQuXG4gKi9cbmV4cG9ydCBjbGFzcyBCdWNrZXRQb2xpY3kgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuXG4gIC8qKlxuICAgKiBBIHBvbGljeSBkb2N1bWVudCBjb250YWluaW5nIHBlcm1pc3Npb25zIHRvIGFkZCB0byB0aGUgc3BlY2lmaWVkIGJ1Y2tldC5cbiAgICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSBBY2Nlc3MgUG9saWN5IExhbmd1YWdlIE92ZXJ2aWV3IGluIHRoZSBBbWF6b25cbiAgICogU2ltcGxlIFN0b3JhZ2UgU2VydmljZSBEZXZlbG9wZXIgR3VpZGUuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZG9jdW1lbnQgPSBuZXcgUG9saWN5RG9jdW1lbnQoKTtcblxuICBjb25zdHJ1Y3RvcihwYXJlbnQ6IENvbnN0cnVjdCwgbmFtZTogc3RyaW5nLCBwcm9wczogQnVja2V0UG9saWN5UHJvcHMpIHtcbiAgICBzdXBlcihwYXJlbnQsIG5hbWUpO1xuXG4gICAgaWYgKCFwcm9wcy5idWNrZXQuYnVja2V0TmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdCdWNrZXQgZG9lc25cXCd0IGhhdmUgYSBidWNrZXROYW1lIGRlZmluZWQnKTtcbiAgICB9XG5cbiAgICBuZXcgY2xvdWRmb3JtYXRpb24uQnVja2V0UG9saWN5UmVzb3VyY2UodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgYnVja2V0OiBwcm9wcy5idWNrZXQuYnVja2V0TmFtZSxcbiAgICAgIHBvbGljeURvY3VtZW50OiB0aGlzLmRvY3VtZW50LFxuICAgIH0pO1xuICB9XG59XG4iXX0=

@@ -7,3 +7,3 @@ import actions = require('@aws-cdk/aws-codepipeline-api');

import { BucketPolicy } from './bucket-policy';
import { CommonPipelineSourceProps, PipelineSource } from './pipeline-action';
import { CommonPipelineSourceActionProps, PipelineSourceAction } from './pipeline-action';
import { LifecycleRule } from './rule';

@@ -34,12 +34,12 @@ /**

*
* new Bucket(this, 'MyBucket', { props });
* new Bucket(this, 'MyBucket', { props });
*
* Or imported from an existing bucket:
*
* BucketRef.import(this, 'MyImportedBucket', { bucketArn: ... });
* BucketRef.import(this, 'MyImportedBucket', { bucketArn: ... });
*
* You can also export a bucket and import it into another stack:
*
* const ref = myBucket.export();
* BucketRef.import(this, 'MyImportedBucket', ref);
* const ref = myBucket.export();
* BucketRef.import(this, 'MyImportedBucket', ref);
*

@@ -86,3 +86,3 @@ */

/**
* Convenience method for creating a new {@link PipelineSource} Action,
* Convenience method for creating a new {@link PipelineSourceAction},
* and adding it to the given Stage.

@@ -93,5 +93,5 @@ *

* @param props the properties of the new Action
* @returns the newly created {@link PipelineSource} Action
* @returns the newly created {@link PipelineSourceAction}
*/
addToPipeline(stage: actions.IStage, name: string, props: CommonPipelineSourceProps): PipelineSource;
addToPipeline(stage: actions.IStage, name: string, props: CommonPipelineSourceActionProps): PipelineSourceAction;
/**

@@ -116,3 +116,3 @@ * Adds a statement to the resource policy for a principal (i.e.

* @param key The S3 key of the object. If not specified, the URL of the
* bucket is returned.
* bucket is returned.
* @returns an ObjectS3Url token

@@ -127,3 +127,3 @@ */

*
* arnForObjects('home/', team, '/', user, '/*')
* arnForObjects('home/', team, '/', user, '/*')
*

@@ -267,3 +267,3 @@ */

*
* bucket.onEvent(EventType.OnObjectCreated, myLambda, 'home/myusername/*')
* bucket.onEvent(EventType.OnObjectCreated, myLambda, 'home/myusername/*')
*

@@ -270,0 +270,0 @@ * @see

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

__export(require("./notifications-resource"));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDhDQUF5QyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9ucy1yZXNvdXJjZSc7Il19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDhDQUF5QyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9ucy1yZXNvdXJjZSc7XG4iXX0=

@@ -142,2 +142,2 @@ "use strict";

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy1yZXNvdXJjZS1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibm90aWZpY2F0aW9ucy1yZXNvdXJjZS1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsd0NBQXlDO0FBQ3pDLG9DQUFxQztBQUVyQzs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQUNILE1BQWEsNEJBQTZCLFNBQVEsR0FBRyxDQUFDLFNBQVM7SUFDM0Q7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQXNCO1FBQzFDLE1BQU0sSUFBSSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXJDLHFEQUFxRDtRQUNyRCxNQUFNLFNBQVMsR0FBRyw0REFBNEQsQ0FBQztRQUMvRSxJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBaUMsQ0FBQztRQUMxRSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsTUFBTSxHQUFHLElBQUksNEJBQTRCLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1NBQzlEO1FBRUQsT0FBTyxNQUFNLENBQUMsV0FBVyxDQUFDO0lBQzlCLENBQUM7SUFRRCxZQUFZLE1BQXFCLEVBQUUsRUFBVTtRQUN6QyxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWxCLE1BQU0sSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFO1lBQ3BDLFNBQVMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxzQkFBc0IsQ0FBQztZQUMzRCxpQkFBaUIsRUFBRTtnQkFDZixHQUFHLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQztvQkFDeEIsT0FBTyxFQUFFLEtBQUs7b0JBQ2QsTUFBTSxFQUFFLEVBQUU7b0JBQ1YsT0FBTyxFQUFFLEtBQUs7b0JBQ2QsUUFBUSxFQUFF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RyxFQUFFLENBQUM7SUFDbEIsQ0FBQztBQUNMLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBpYW0gPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtaWFtJyk7XG5pbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5cbi8qKlxuICogQSBMYW1iZGEtYmFzZWQgY3VzdG9tIHJlc291cmNlIGhhbmRsZXIgdGhhdCBwcm92aXNpb25zIFMzIGJ1Y2tldFxuICogbm90aWZpY2F0aW9ucyBmb3IgYSBidWNrZXQuXG4gKlxuICogVGhlIHJlc291cmNlIHByb3BlcnR5IHNjaGVtYSBpczpcbiAqXG4gKiB7XG4gKiAgIEJ1Y2tldE5hbWU6IHN0cmluZywgTm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbjogeyBzZWVcbiAqICAgUHV0QnVja2V0Tm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbiB9XG4gKiB9XG4gKlxuICogRm9yICdEZWxldGUnIG9wZXJhdGlvbnMsIHdlIHNlbmQgYW4gZW1wdHkgTm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbiBhc1xuICogcmVxdWlyZWQuIFdlIHByb3BhZ2F0ZSBlcnJvcnMgYW5kIHJlc3VsdHMgYXMtaXMuXG4gKlxuICogU2FkbHksIHdlIGNhbid0IHVzZSBAYXdzLWNkay9hd3MtbGFtYmRhIGFzIGl0IHdpbGwgaW50cm9kdWNlIGEgZGVwZW5kZW5jeVxuICogY3ljbGUsIHNvIHRoaXMgdXNlcyByYXcgYGNkay5SZXNvdXJjZWBzLlxuICovXG5leHBvcnQgY2xhc3MgTm90aWZpY2F0aW9uc1Jlc291cmNlSGFuZGxlciBleHRlbmRzIGNkay5Db25zdHJ1Y3Qge1xuICAgIC8qKlxuICAgICAqIERlZmluZXMgYSBzdGFjay1zaW5nbGV0b24gbGFtYmRhIGZ1bmN0aW9uIHdpdGggdGhlIGxvZ2ljIGZvciBhIENsb3VkRm9ybWF0aW9uIGN1c3RvbVxuICAgICAqIHJlc291cmNlIHRoYXQgcHJvdmlzaW9ucyBidWNrZXQgbm90aWZpY2F0aW9uIGNvbmZpZ3VyYXRpb24gZm9yIGEgYnVja2V0LlxuICAgICAqXG4gICAgICogQHJldHVybnMgVGhlIEFSTiBvZiB0aGUgY3VzdG9tIHJlc291cmNlIGxhbWJkYSBmdW5jdGlvbi5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIHNpbmdsZXRvbihjb250ZXh0OiBjZGsuQ29uc3RydWN0KSB7XG4gICAgICAgIGNvbnN0IHJvb3QgPSBjZGsuU3RhY2suZmluZChjb250ZXh0KTtcblxuICAgICAgICAvLyB3ZWxsLWtub3duIGxvZ2ljYWwgaWQgdG8gZW5zdXJlIHN0YWNrIHNpbmdsZXRvbml0eVxuICAgICAgICBjb25zdCBsb2dpY2FsSWQgPSAnQnVja2V0Tm90aWZpY2F0aW9uc0hhbmRsZXIwNTBhMDU4N2I3NTQ0NTQ3YmYzMjVmMDk0YTNkYjgzNCc7XG4gICAgICAgIGxldCBsYW1iZGEgPSByb290LnRyeUZpbmRDaGlsZChsb2dpY2FsSWQpIGFzIE5vdGlmaWNhdGlvbnNSZXNvdXJjZUhhbmRsZXI7XG4gICAgICAgIGlmICghbGFtYmRhKSB7XG4gICAgICAgICAgICBsYW1iZGEgPSBuZXcgTm90aWZpY2F0aW9uc1Jlc291cmNlSGFuZGxlcihyb290LCBsb2dpY2FsSWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGxhbWJkYS5mdW5jdGlvbkFybjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGUgQVJOIG9mIHRoZSBoYW5kbGVyJ3MgbGFtYmRhIGZ1bmN0aW9uLiBVc2VkIGFzIGEgc2VydmljZSB0b2tlbiBpbiB0aGVcbiAgICAgKiBjdXN0b20gcmVzb3VyY2UuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGZ1bmN0aW9uQXJuOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcihwYXJlbnQ6IGNkay5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcpIHtcbiAgICAgICAgc3VwZXIocGFyZW50LCBpZCk7XG5cbiAgICAgICAgY29uc3Qgcm9sZSA9IG5ldyBpYW0uUm9sZSh0aGlzLCAnUm9sZScsIHtcbiAgICAgICAgICAgIGFzc3VtZWRCeTogbmV3IGNkay5TZXJ2aWNlUHJpbmNpcGFsKCdsYW1iZGEuYW1hem9uYXdzLmNvbScpLFxuICAgICAgICAgICAgbWFuYWdlZFBvbGljeUFybnM6IFtcbiAgICAgICAgICAgICAgICBjZGsuQXJuVXRpbHMuZnJvbUNvbXBvbmVudHMoe1xuICAgICAgICAgICAgICAgICAgICBzZXJ2aWNlOiAnaWFtJyxcbiAgICAgICAgICAgICAgICAgICAgcmVnaW9uOiAnJywgLy8gbm8gcmVnaW9uIGZvciBtYW5hZ2VkIHBvbGljeVxuICAgICAgICAgICAgICAgICAgICBhY2NvdW50OiAnYXdzJywgLy8gdGhlIGFjY291bnQgZm9yIGEgbWFuYWdlZCBwb2xpY3kgaXMgJ2F3cydcbiAgICAgICAgICAgICAgICAgICAgcmVzb3VyY2U6ICdwb2xpY3knLFxuICAgICAgICAgICAgICAgICAgICByZXNvdXJjZU5hbWU6ICdzZXJ2aWNlLXJvbGUvQVdTTGFtYmRhQmFzaWNFeGVjdXRpb25Sb2xlJyxcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgXVxuICAgICAgICB9KTtcblxuICAgICAgICAvLyBoYW5kbGVyIGFsbG93cyB0byBwdXQgYnVja2V0IG5vdGlmaWNhdGlvbiBvbiBzMyBidWNrZXRzLlxuICAgICAgICByb2xlLmFkZFRvUG9saWN5KG5ldyBjZGsuUG9saWN5U3RhdGVtZW50KClcbiAgICAgICAgICAgIC5hZGRBY3Rpb24oJ3MzOlB1dEJ1Y2tldE5vdGlmaWNhdGlvbicpXG4gICAgICAgICAgICAuYWRkQWxsUmVzb3VyY2VzKCkpO1xuXG4gICAgICAgIGNvbnN0IHJlc291cmNlID0gbmV3IGNkay5SZXNvdXJjZSh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICAgICAgICB0eXBlOiAnQVdTOjpMYW1iZGE6OkZ1bmN0aW9uJyxcbiAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICBEZXNjcmlwdGlvbjogJ0FXUyBDbG91ZEZvcm1hdGlvbiBoYW5kbGVyIGZvciBcIkN1c3RvbTo6UzNCdWNrZXROb3RpZmljYXRpb25zXCIgcmVzb3VyY2VzIChAYXdzLWNkay9hd3MtczMpJyxcbiAgICAgICAgICAgICAgICBDb2RlOiB7IFppcEZpbGU6IGBleHBvcnRzLmhhbmRsZXIgPSAke2hhbmRsZXIudG9TdHJpbmcoKX07YCB9LFxuICAgICAgICAgICAgICAgIEhhbmRsZXI6ICdpbmRleC5oYW5kbGVyJyxcbiAgICAgICAgICAgICAgICBSb2xlOiByb2xlLnJvbGVBcm4sXG4gICAgICAgICAgICAgICAgUnVudGltZTogJ25vZGVqczguMTAnLFxuICAgICAgICAgICAgICAgIFRpbWVvdXQ6IDMwMCxcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5mdW5jdGlvbkFybiA9IHJlc291cmNlLmdldEF0dCgnQXJuJykudG9TdHJpbmcoKTtcbiAgICB9XG59XG5cbi8vIHRzbGludDpkaXNhYmxlOm5vLWNvbnNvbGVcblxuLyoqXG4gKiBMYW1iZGEgZXZlbnQgaGFuZGxlciBmb3IgdGhlIGN1c3RvbSByZXNvdXJjZS4gQmVhciBpbiBtaW5kIHRoYXQgd2UgYXJlIGdvaW5nXG4gKiB0byAudG9TdHJpbmcoKSB0aGlzIGZ1bmN0aW9uIGFuZCBpbmxpbmUgaXQgYXMgTGFtYmRhIGNvZGUuXG4gKlxuICogVGhlIGZ1bmN0aW9uIHdpbGwgaXNzdWUgYSBwdXRCdWNrZXROb3RpZmljYXRpb25Db25maWd1cmF0aW9uIHJlcXVlc3QgZm9yIHRoZVxuICogc3BlY2lmaWVkIGJ1Y2tldC5cbiAqL1xuY29uc3QgaGFuZGxlciA9IChldmVudDogYW55LCBjb250ZXh0OiBhbnkpID0+IHtcbiAgICBjb25zdCBzMyA9IG5ldyAocmVxdWlyZSgnYXdzLXNkaycpLlMzKSgpO1xuICAgIGNvbnN0IGh0dHBzID0gcmVxdWlyZShcImh0dHBzXCIpO1xuICAgIGNvbnN0IHVybCA9IHJlcXVpcmUoXCJ1cmxcIik7XG5cbiAgICBsb2coSlNPTi5zdHJpbmdpZnkoZXZlbnQsIHVuZGVmaW5lZCwgMikpO1xuXG4gICAgY29uc3QgcHJvcHMgPSBldmVudC5SZXNvdXJjZVByb3BlcnRpZXM7XG5cbiAgICBpZiAoZXZlbnQuUmVxdWVzdFR5cGUgPT09ICdEZWxldGUnKSB7XG4gICAgICAgIHByb3BzLk5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb24gPSB7IH07IC8vIHRoaXMgaXMgaG93IHlvdSBjbGVhbiBvdXQgbm90aWZpY2F0aW9uc1xuICAgIH1cblxuICAgIGNvbnN0IHJlcSA9IHtcbiAgICAgICAgQnVja2V0OiBwcm9wcy5CdWNrZXROYW1lLFxuICAgICAgICBOb3RpZmljYXRpb25Db25maWd1cmF0aW9uOiBwcm9wcy5Ob3RpZmljYXRpb25Db25maWd1cmF0aW9uXG4gICAgfTtcblxuICAgIHJldHVybiBzMy5wdXRCdWNrZXROb3RpZmljYXRpb25Db25maWd1cmF0aW9uKHJlcSwgKGVycjogYW55LCBkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgbG9nKHsgZXJyLCBkYXRhIH0pO1xuICAgICAgICBpZiAoZXJyKSB7XG4gICAgICAgICAgICByZXR1cm4gc3VibWl0UmVzcG9uc2UoXCJGQUlMRURcIiwgZXJyLm1lc3NhZ2UgKyBgXFxuTW9yZSBpbmZvcm1hdGlvbiBpbiBDbG91ZFdhdGNoIExvZyBTdHJlYW06ICR7Y29udGV4dC5sb2dTdHJlYW1OYW1lfWApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHN1Ym1pdFJlc3BvbnNlKFwiU1VDQ0VTU1wiKTtcbiAgICAgICAgfVxuICAgIH0pO1xuXG4gICAgZnVuY3Rpb24gbG9nKG9iajogYW55KSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoZXZlbnQuUmVxdWVzdElkLCBldmVudC5TdGFja0lkLCBldmVudC5Mb2dpY2FsUmVzb3VyY2VJZCwgb2JqKTtcbiAgICB9XG5cbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bWF4LWxpbmUtbGVuZ3RoXG4gICAgLy8gYWRhcHRlZCBmcm9tIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BV1NDbG91ZEZvcm1hdGlvbi9sYXRlc3QvVXNlckd1aWRlL2F3cy1wcm9wZXJ0aWVzLWxhbWJkYS1mdW5jdGlvbi1jb2RlLmh0bWwjY2ZuLWxhbWJkYS1mdW5jdGlvbi1jb2RlLWNmbnJlc3BvbnNlbW9kdWxlXG4gICAgLy8gdG8gYWxsb3cgc2VuZGluZyBhbiBlcnJvciBtZXNzZ2UgYXMgYSByZWFzb24uXG4gICAgZnVuY3Rpb24gc3VibWl0UmVzcG9uc2UocmVzcG9uc2VTdGF0dXM6IHN0cmluZywgcmVhc29uPzogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlQm9keSA9IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgICAgIFN0YXR1czogcmVzcG9uc2VTdGF0dXMsXG4gICAgICAgICAgICBSZWFzb246IHJlYXNvbiB8fCBcIlNlZSB0aGUgZGV0YWlscyBpbiBDbG91ZFdhdGNoIExvZyBTdHJlYW06IFwiICsgY29udGV4dC5sb2dTdHJlYW1OYW1lLFxuICAgICAgICAgICAgUGh5c2ljYWxSZXNvdXJjZUlkOiBjb250ZXh0LmxvZ1N0cmVhbU5hbWUsXG4gICAgICAgICAgICBTdGFja0lkOiBldmVudC5TdGFja0lkLFxuICAgICAgICAgICAgUmVxdWVzdElkOiBldmVudC5SZXF1ZXN0SWQsXG4gICAgICAgICAgICBMb2dpY2FsUmVzb3VyY2VJZDogZXZlbnQuTG9naWNhbFJlc291cmNlSWQsXG4gICAgICAgICAgICBOb0VjaG86IGZhbHNlLFxuICAgICAgICB9KTtcblxuICAgICAgICBsb2coeyByZXNwb25zZUJvZHkgfSk7XG5cbiAgICAgICAgY29uc3QgcGFyc2VkVXJsID0gdXJsLnBhcnNlKGV2ZW50LlJlc3BvbnNlVVJMKTtcbiAgICAgICAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICAgICAgICAgIGhvc3RuYW1lOiBwYXJzZWRVcmwuaG9zdG5hbWUsXG4gICAgICAgICAgICBwb3J0OiA0NDMsXG4gICAgICAgICAgICBwYXRoOiBwYXJzZWRVcmwucGF0aCxcbiAgICAgICAgICAgIG1ldGhvZDogXCJQVVRcIixcbiAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICBcImNvbnRlbnQtdHlwZVwiOiBcIlwiLFxuICAgICAgICAgICAgICAgIFwiY29udGVudC1sZW5ndGhcIjogcmVzcG9uc2VCb2R5Lmxlbmd0aFxuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSBodHRwcy5yZXF1ZXN0KG9wdGlvbnMsIChyOiBhbnkpID0+IHtcbiAgICAgICAgICAgIGxvZyh7IHN0YXR1c0NvZGU6IHIuc3RhdHVzQ29kZSwgc3RhdHVzTWVzc2FnZTogci5zdGF0dXNNZXNzYWdlIH0pO1xuICAgICAgICAgICAgY29udGV4dC5kb25lKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJlcXVlc3Qub24oXCJlcnJvclwiLCAoZXJyb3I6IGFueSkgPT4ge1xuICAgICAgICAgICAgbG9nKHsgc2VuZEVycm9yOiBlcnJvciB9KTtcbiAgICAgICAgICAgIGNvbnRleHQuZG9uZSgpO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXF1ZXN0LndyaXRlKHJlc3BvbnNlQm9keSk7XG4gICAgICAgIHJlcXVlc3QuZW5kKCk7XG4gICAgfVxufTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy1yZXNvdXJjZS1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibm90aWZpY2F0aW9ucy1yZXNvdXJjZS1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsd0NBQXlDO0FBQ3pDLG9DQUFxQztBQUVyQzs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQUNILE1BQWEsNEJBQTZCLFNBQVEsR0FBRyxDQUFDLFNBQVM7SUFDN0Q7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQXNCO1FBQzVDLE1BQU0sSUFBSSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXJDLHFEQUFxRDtRQUNyRCxNQUFNLFNBQVMsR0FBRyw0REFBNEQsQ0FBQztRQUMvRSxJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBaUMsQ0FBQztRQUMxRSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1gsTUFBTSxHQUFHLElBQUksNEJBQTRCLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1NBQzVEO1FBRUQsT0FBTyxNQUFNLENBQUMsV0FBVyxDQUFDO0lBQzVCLENBQUM7SUFRRCxZQUFZLE1BQXFCLEVBQUUsRUFBVTtRQUMzQyxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWxCLE1BQU0sSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFO1lBQ3RDLFNBQVMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxzQkFBc0IsQ0FBQztZQUMzRCxpQkFBaUIsRUFBRTtnQkFDakIsR0FBRyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUM7b0JBQzFCLE9BQU8sRUFBRSxLQUFLO29CQUNkLE1BQU0sRUFBRSxFQUFFO29CQUNWLE9BQU8sRUFBRSxLQUFLO29CQUNkLFFBQVEsRUFB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RyxFQUFFLENBQUM7SUFDaEIsQ0FBQztBQUNILENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBpYW0gPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtaWFtJyk7XG5pbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5cbi8qKlxuICogQSBMYW1iZGEtYmFzZWQgY3VzdG9tIHJlc291cmNlIGhhbmRsZXIgdGhhdCBwcm92aXNpb25zIFMzIGJ1Y2tldFxuICogbm90aWZpY2F0aW9ucyBmb3IgYSBidWNrZXQuXG4gKlxuICogVGhlIHJlc291cmNlIHByb3BlcnR5IHNjaGVtYSBpczpcbiAqXG4gKiB7XG4gKiAgIEJ1Y2tldE5hbWU6IHN0cmluZywgTm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbjogeyBzZWVcbiAqICAgUHV0QnVja2V0Tm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbiB9XG4gKiB9XG4gKlxuICogRm9yICdEZWxldGUnIG9wZXJhdGlvbnMsIHdlIHNlbmQgYW4gZW1wdHkgTm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbiBhc1xuICogcmVxdWlyZWQuIFdlIHByb3BhZ2F0ZSBlcnJvcnMgYW5kIHJlc3VsdHMgYXMtaXMuXG4gKlxuICogU2FkbHksIHdlIGNhbid0IHVzZSBAYXdzLWNkay9hd3MtbGFtYmRhIGFzIGl0IHdpbGwgaW50cm9kdWNlIGEgZGVwZW5kZW5jeVxuICogY3ljbGUsIHNvIHRoaXMgdXNlcyByYXcgYGNkay5SZXNvdXJjZWBzLlxuICovXG5leHBvcnQgY2xhc3MgTm90aWZpY2F0aW9uc1Jlc291cmNlSGFuZGxlciBleHRlbmRzIGNkay5Db25zdHJ1Y3Qge1xuICAvKipcbiAgICogRGVmaW5lcyBhIHN0YWNrLXNpbmdsZXRvbiBsYW1iZGEgZnVuY3Rpb24gd2l0aCB0aGUgbG9naWMgZm9yIGEgQ2xvdWRGb3JtYXRpb24gY3VzdG9tXG4gICAqIHJlc291cmNlIHRoYXQgcHJvdmlzaW9ucyBidWNrZXQgbm90aWZpY2F0aW9uIGNvbmZpZ3VyYXRpb24gZm9yIGEgYnVja2V0LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgQVJOIG9mIHRoZSBjdXN0b20gcmVzb3VyY2UgbGFtYmRhIGZ1bmN0aW9uLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBzaW5nbGV0b24oY29udGV4dDogY2RrLkNvbnN0cnVjdCkge1xuICAgIGNvbnN0IHJvb3QgPSBjZGsuU3RhY2suZmluZChjb250ZXh0KTtcblxuICAgIC8vIHdlbGwta25vd24gbG9naWNhbCBpZCB0byBlbnN1cmUgc3RhY2sgc2luZ2xldG9uaXR5XG4gICAgY29uc3QgbG9naWNhbElkID0gJ0J1Y2tldE5vdGlmaWNhdGlvbnNIYW5kbGVyMDUwYTA1ODdiNzU0NDU0N2JmMzI1ZjA5NGEzZGI4MzQnO1xuICAgIGxldCBsYW1iZGEgPSByb290LnRyeUZpbmRDaGlsZChsb2dpY2FsSWQpIGFzIE5vdGlmaWNhdGlvbnNSZXNvdXJjZUhhbmRsZXI7XG4gICAgaWYgKCFsYW1iZGEpIHtcbiAgICAgIGxhbWJkYSA9IG5ldyBOb3RpZmljYXRpb25zUmVzb3VyY2VIYW5kbGVyKHJvb3QsIGxvZ2ljYWxJZCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGxhbWJkYS5mdW5jdGlvbkFybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBoYW5kbGVyJ3MgbGFtYmRhIGZ1bmN0aW9uLiBVc2VkIGFzIGEgc2VydmljZSB0b2tlbiBpbiB0aGVcbiAgICogY3VzdG9tIHJlc291cmNlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGZ1bmN0aW9uQXJuOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocGFyZW50OiBjZGsuQ29uc3RydWN0LCBpZDogc3RyaW5nKSB7XG4gICAgc3VwZXIocGFyZW50LCBpZCk7XG5cbiAgICBjb25zdCByb2xlID0gbmV3IGlhbS5Sb2xlKHRoaXMsICdSb2xlJywge1xuICAgICAgYXNzdW1lZEJ5OiBuZXcgY2RrLlNlcnZpY2VQcmluY2lwYWwoJ2xhbWJkYS5hbWF6b25hd3MuY29tJyksXG4gICAgICBtYW5hZ2VkUG9saWN5QXJuczogW1xuICAgICAgICBjZGsuQXJuVXRpbHMuZnJvbUNvbXBvbmVudHMoe1xuICAgICAgICAgIHNlcnZpY2U6ICdpYW0nLFxuICAgICAgICAgIHJlZ2lvbjogJycsIC8vIG5vIHJlZ2lvbiBmb3IgbWFuYWdlZCBwb2xpY3lcbiAgICAgICAgICBhY2NvdW50OiAnYXdzJywgLy8gdGhlIGFjY291bnQgZm9yIGEgbWFuYWdlZCBwb2xpY3kgaXMgJ2F3cydcbiAgICAgICAgICByZXNvdXJjZTogJ3BvbGljeScsXG4gICAgICAgICAgcmVzb3VyY2VOYW1lOiAnc2VydmljZS1yb2xlL0FXU0xhbWJkYUJhc2ljRXhlY3V0aW9uUm9sZScsXG4gICAgICAgIH0pXG4gICAgICBdXG4gICAgfSk7XG5cbiAgICAvLyBoYW5kbGVyIGFsbG93cyB0byBwdXQgYnVja2V0IG5vdGlmaWNhdGlvbiBvbiBzMyBidWNrZXRzLlxuICAgIHJvbGUuYWRkVG9Qb2xpY3kobmV3IGNkay5Qb2xpY3lTdGF0ZW1lbnQoKVxuICAgICAgLmFkZEFjdGlvbignczM6UHV0QnVja2V0Tm90aWZpY2F0aW9uJylcbiAgICAgIC5hZGRBbGxSZXNvdXJjZXMoKSk7XG5cbiAgICBjb25zdCByZXNvdXJjZSA9IG5ldyBjZGsuUmVzb3VyY2UodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgdHlwZTogJ0FXUzo6TGFtYmRhOjpGdW5jdGlvbicsXG4gICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgIERlc2NyaXB0aW9uOiAnQVdTIENsb3VkRm9ybWF0aW9uIGhhbmRsZXIgZm9yIFwiQ3VzdG9tOjpTM0J1Y2tldE5vdGlmaWNhdGlvbnNcIiByZXNvdXJjZXMgKEBhd3MtY2RrL2F3cy1zMyknLFxuICAgICAgICBDb2RlOiB7IFppcEZpbGU6IGBleHBvcnRzLmhhbmRsZXIgPSAke2hhbmRsZXIudG9TdHJpbmcoKX07YCB9LFxuICAgICAgICBIYW5kbGVyOiAnaW5kZXguaGFuZGxlcicsXG4gICAgICAgIFJvbGU6IHJvbGUucm9sZUFybixcbiAgICAgICAgUnVudGltZTogJ25vZGVqczguMTAnLFxuICAgICAgICBUaW1lb3V0OiAzMDAsXG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLmZ1bmN0aW9uQXJuID0gcmVzb3VyY2UuZ2V0QXR0KCdBcm4nKS50b1N0cmluZygpO1xuICB9XG59XG5cbi8vIHRzbGludDpkaXNhYmxlOm5vLWNvbnNvbGVcblxuLyoqXG4gKiBMYW1iZGEgZXZlbnQgaGFuZGxlciBmb3IgdGhlIGN1c3RvbSByZXNvdXJjZS4gQmVhciBpbiBtaW5kIHRoYXQgd2UgYXJlIGdvaW5nXG4gKiB0byAudG9TdHJpbmcoKSB0aGlzIGZ1bmN0aW9uIGFuZCBpbmxpbmUgaXQgYXMgTGFtYmRhIGNvZGUuXG4gKlxuICogVGhlIGZ1bmN0aW9uIHdpbGwgaXNzdWUgYSBwdXRCdWNrZXROb3RpZmljYXRpb25Db25maWd1cmF0aW9uIHJlcXVlc3QgZm9yIHRoZVxuICogc3BlY2lmaWVkIGJ1Y2tldC5cbiAqL1xuY29uc3QgaGFuZGxlciA9IChldmVudDogYW55LCBjb250ZXh0OiBhbnkpID0+IHtcbiAgY29uc3QgczMgPSBuZXcgKHJlcXVpcmUoJ2F3cy1zZGsnKS5TMykoKTtcbiAgY29uc3QgaHR0cHMgPSByZXF1aXJlKFwiaHR0cHNcIik7XG4gIGNvbnN0IHVybCA9IHJlcXVpcmUoXCJ1cmxcIik7XG5cbiAgbG9nKEpTT04uc3RyaW5naWZ5KGV2ZW50LCB1bmRlZmluZWQsIDIpKTtcblxuICBjb25zdCBwcm9wcyA9IGV2ZW50LlJlc291cmNlUHJvcGVydGllcztcblxuICBpZiAoZXZlbnQuUmVxdWVzdFR5cGUgPT09ICdEZWxldGUnKSB7XG4gICAgcHJvcHMuTm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbiA9IHsgfTsgLy8gdGhpcyBpcyBob3cgeW91IGNsZWFuIG91dCBub3RpZmljYXRpb25zXG4gIH1cblxuICBjb25zdCByZXEgPSB7XG4gICAgQnVja2V0OiBwcm9wcy5CdWNrZXROYW1lLFxuICAgIE5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb246IHByb3BzLk5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb25cbiAgfTtcblxuICByZXR1cm4gczMucHV0QnVja2V0Tm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbihyZXEsIChlcnI6IGFueSwgZGF0YTogYW55KSA9PiB7XG4gICAgbG9nKHsgZXJyLCBkYXRhIH0pO1xuICAgIGlmIChlcnIpIHtcbiAgICAgIHJldHVybiBzdWJtaXRSZXNwb25zZShcIkZBSUxFRFwiLCBlcnIubWVzc2FnZSArIGBcXG5Nb3JlIGluZm9ybWF0aW9uIGluIENsb3VkV2F0Y2ggTG9nIFN0cmVhbTogJHtjb250ZXh0LmxvZ1N0cmVhbU5hbWV9YCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBzdWJtaXRSZXNwb25zZShcIlNVQ0NFU1NcIik7XG4gICAgfVxuICB9KTtcblxuICBmdW5jdGlvbiBsb2cob2JqOiBhbnkpIHtcbiAgICBjb25zb2xlLmVycm9yKGV2ZW50LlJlcXVlc3RJZCwgZXZlbnQuU3RhY2tJZCwgZXZlbnQuTG9naWNhbFJlc291cmNlSWQsIG9iaik7XG4gIH1cblxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bWF4LWxpbmUtbGVuZ3RoXG4gIC8vIGFkYXB0ZWQgZnJvbSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQVdTQ2xvdWRGb3JtYXRpb24vbGF0ZXN0L1VzZXJHdWlkZS9hd3MtcHJvcGVydGllcy1sYW1iZGEtZnVuY3Rpb24tY29kZS5odG1sI2Nmbi1sYW1iZGEtZnVuY3Rpb24tY29kZS1jZm5yZXNwb25zZW1vZHVsZVxuICAvLyB0byBhbGxvdyBzZW5kaW5nIGFuIGVycm9yIG1lc3NnZSBhcyBhIHJlYXNvbi5cbiAgZnVuY3Rpb24gc3VibWl0UmVzcG9uc2UocmVzcG9uc2VTdGF0dXM6IHN0cmluZywgcmVhc29uPzogc3RyaW5nKSB7XG4gICAgY29uc3QgcmVzcG9uc2VCb2R5ID0gSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgU3RhdHVzOiByZXNwb25zZVN0YXR1cyxcbiAgICAgIFJlYXNvbjogcmVhc29uIHx8IFwiU2VlIHRoZSBkZXRhaWxzIGluIENsb3VkV2F0Y2ggTG9nIFN0cmVhbTogXCIgKyBjb250ZXh0LmxvZ1N0cmVhbU5hbWUsXG4gICAgICBQaHlzaWNhbFJlc291cmNlSWQ6IGNvbnRleHQubG9nU3RyZWFtTmFtZSxcbiAgICAgIFN0YWNrSWQ6IGV2ZW50LlN0YWNrSWQsXG4gICAgICBSZXF1ZXN0SWQ6IGV2ZW50LlJlcXVlc3RJZCxcbiAgICAgIExvZ2ljYWxSZXNvdXJjZUlkOiBldmVudC5Mb2dpY2FsUmVzb3VyY2VJZCxcbiAgICAgIE5vRWNobzogZmFsc2UsXG4gICAgfSk7XG5cbiAgICBsb2coeyByZXNwb25zZUJvZHkgfSk7XG5cbiAgICBjb25zdCBwYXJzZWRVcmwgPSB1cmwucGFyc2UoZXZlbnQuUmVzcG9uc2VVUkwpO1xuICAgIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgICBob3N0bmFtZTogcGFyc2VkVXJsLmhvc3RuYW1lLFxuICAgICAgcG9ydDogNDQzLFxuICAgICAgcGF0aDogcGFyc2VkVXJsLnBhdGgsXG4gICAgICBtZXRob2Q6IFwiUFVUXCIsXG4gICAgICBoZWFkZXJzOiB7XG4gICAgICAgIFwiY29udGVudC10eXBlXCI6IFwiXCIsXG4gICAgICAgIFwiY29udGVudC1sZW5ndGhcIjogcmVzcG9uc2VCb2R5Lmxlbmd0aFxuICAgICAgfVxuICAgIH07XG5cbiAgICBjb25zdCByZXF1ZXN0ID0gaHR0cHMucmVxdWVzdChvcHRpb25zLCAocjogYW55KSA9PiB7XG4gICAgICBsb2coeyBzdGF0dXNDb2RlOiByLnN0YXR1c0NvZGUsIHN0YXR1c01lc3NhZ2U6IHIuc3RhdHVzTWVzc2FnZSB9KTtcbiAgICAgIGNvbnRleHQuZG9uZSgpO1xuICAgIH0pO1xuXG4gICAgcmVxdWVzdC5vbihcImVycm9yXCIsIChlcnJvcjogYW55KSA9PiB7XG4gICAgICBsb2coeyBzZW5kRXJyb3I6IGVycm9yIH0pO1xuICAgICAgY29udGV4dC5kb25lKCk7XG4gICAgfSk7XG5cbiAgICByZXF1ZXN0LndyaXRlKHJlc3BvbnNlQm9keSk7XG4gICAgcmVxdWVzdC5lbmQoKTtcbiAgfVxufTtcbiJdfQ==

@@ -117,2 +117,2 @@ "use strict";

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy1yZXNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm5vdGlmaWNhdGlvbnMtcmVzb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSx3RUFBa0g7QUFDbEgsb0NBQXFDO0FBRXJDLHFGQUFnRjtBQVloRjs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE1BQWEsbUJBQW9CLFNBQVEsR0FBRyxDQUFDLFNBQVM7SUFPbEQsWUFBWSxNQUFxQixFQUFFLEVBQVUsRUFBRSxLQUF5QjtRQUNwRSxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBUEwsd0JBQW1CLEdBQUcsSUFBSSxLQUFLLEVBQStCLENBQUM7UUFDL0QsdUJBQWtCLEdBQUcsSUFBSSxLQUFLLEVBQXNCLENBQUM7UUFDckQsdUJBQWtCLEdBQUcsSUFBSSxLQUFLLEVBQXNCLENBQUM7UUFNbEUsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO0lBQy9CLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ksZUFBZSxDQUFDLEtBQWdCLEVBQUUsTUFBc0MsRUFBRSxHQUFHLE9BQWdDO1FBQ2hILE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBRTNDLGtGQUFrRjtRQUNsRixpREFBaUQ7UUFDakQsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLCtCQUErQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEcsTUFBTSxZQUFZLEdBQXdCO1lBQ3RDLE1BQU0sRUFBRSxDQUFFLEtBQUssQ0FBRTtZQUNqQixNQUFNLEVBQUUsYUFBYSxDQUFDLE9BQU8sQ0FBQztTQUNqQyxDQUFDO1FBRUYsNkVBQTZFO1FBQzdFLHdGQUF3RjtRQUN4RiwyREFBMkQ7UUFDM0QsSUFBSSxXQUFXLENBQUMsWUFBWSxFQUFFO1lBQzFC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LE1BQU0sRUFBRSxDQUFDLENBQUM7U0FDOUQ7UUFFRCxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDYixhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7U0FDOUQ7S0FDSjtJQUVELE9BQU87UUFDSCxHQUFHLEVBQUU7WUFDRCxXQUFXLEVBQUUsYUFBYTtTQUM3QjtLQUNKLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25UeXBlLCBJQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb24gfSBmcm9tICdAYXdzLWNkay9hd3MtczMtbm90aWZpY2F0aW9ucyc7XG5pbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5pbXBvcnQgeyBCdWNrZXQsIEV2ZW50VHlwZSwgTm90aWZpY2F0aW9uS2V5RmlsdGVyIH0gZnJvbSAnLi4vYnVja2V0JztcbmltcG9ydCB7IE5vdGlmaWNhdGlvbnNSZXNvdXJjZUhhbmRsZXIgfSBmcm9tICcuL25vdGlmaWNhdGlvbnMtcmVzb3VyY2UtaGFuZGxlcic7XG5cbmludGVyZmFjZSBOb3RpZmljYXRpb25zUHJvcHMge1xuICAgIC8qKlxuICAgICAqIFRoZSBidWNrZXQgdG8gbWFuYWdlIG5vdGlmaWNhdGlvbnMgZm9yLlxuICAgICAqXG4gICAgICogVGhpcyBjYW5ub3QgYmUgYSBgQnVja2V0UmVmYCBiZWNhdXNlIHRoZSBidWNrZXQgbWFpbnRhaW5zIHRoZSAxOjFcbiAgICAgKiByZWxhdGlvbnNoaXAgd2l0aCB0aGlzIHJlc291cmNlLlxuICAgICAqL1xuICAgIGJ1Y2tldDogQnVja2V0O1xufVxuXG4vKipcbiAqIEEgY3VzdG9tIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHRoYXQgdXBkYXRlcyBidWNrZXQgbm90aWZpY2F0aW9ucyBmb3IgYVxuICogYnVja2V0LiBUaGUgcmVhc29uIHdlIG5lZWQgaXQgaXMgYmVjYXVzZSB0aGUgQVdTOjpTMzo6QnVja2V0IG5vdGlmaWNhdGlvblxuICogY29uZmlndXJhdGlvbiBpcyBkZWZpbmVkIG9uIHRoZSBidWNrZXQgaXRzZWxmLCB3aGljaCBtYWtlcyBpdCBpbXBvc3NpYmxlIHRvXG4gKiBwcm92aXNpb24gbm90aWZpY2F0aW9ucyBhdCB0aGUgc2FtZSB0aW1lIGFzIHRoZSB0YXJnZXQgKHNpbmNlXG4gKiBQdXRCdWNrZXROb3RpZmljYXRpb25zIHZhbGlkYXRlcyB0aGUgdGFyZ2V0cykuXG4gKlxuICogU2luY2Ugb25seSBhIHNpbmdsZSBCdWNrZXROb3RpZmljYXRpb25zIHJlc291cmNlIGlzIGFsbG93ZWQgZm9yIGVhY2ggQnVja2V0LFxuICogdGhpcyBjb25zdHJ1Y3QgaXMgbm90IGV4cG9ydGVkIGluIHRoZSBwdWJsaWMgQVBJIG9mIHRoaXMgbW9kdWxlLiBJbnN0ZWFkLCBpdFxuICogaXMgY3JlYXRlZCBqdXN0LWluLXRpbWUgYnkgYHMzLkJ1Y2tldC5vbkV2ZW50YCwgc28gYSAxOjEgcmVsYXRpb25zaGlwIGlzXG4gKiBlbnN1cmVkLlxuICpcbiAqIEBzZWVcbiAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BV1NDbG91ZEZvcm1hdGlvbi9sYXRlc3QvVXNlckd1aWRlL2F3cy1wcm9wZXJ0aWVzLXMzLWJ1Y2tldC1ub3RpZmljYXRpb25jb25maWcuaHRtbFxuICovXG5leHBvcnQgY2xhc3MgQnVja2V0Tm90aWZpY2F0aW9ucyBleHRlbmRzIGNkay5Db25zdHJ1Y3Qge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgbGFtYmRhTm90aWZpY2F0aW9ucyA9IG5ldyBBcnJheTxMYW1iZGFGdW5jdGlvbkNvbmZpZ3VyYXRpb24+KCk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBxdWV1ZU5vdGlmaWNhdGlvbnMgPSBuZXcgQXJyYXk8UXVldWVDb25maWd1cmF0aW9uPigpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdG9waWNOb3RpZmljYXRpb25zID0gbmV3IEFycmF5PFRvcGljQ29uZmlndXJhdGlvbj4oKTtcbiAgICBwcml2YXRlIHJlc291cmNlPzogY2RrLlJlc291cmNlO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYnVja2V0OiBCdWNrZXQ7XG5cbiAgICBjb25zdHJ1Y3RvcihwYXJlbnQ6IGNkay5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBOb3RpZmljYXRpb25zUHJvcHMpIHtcbiAgICAgICAgc3VwZXIocGFyZW50LCBpZCk7XG4gICAgICAgIHRoaXMuYnVja2V0ID0gcHJvcHMuYnVja2V0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZHMgYSBub3RpZmljYXRpb24gc3Vic2NyaXB0aW9uIGZvciB0aGlzIGJ1Y2tldC5cbiAgICAgKiBJZiB0aGlzIGlzIHRoZSBmaXJzdCBub3RpZmljYXRpb24sIGEgQnVja2V0Tm90aWZpY2F0aW9uIHJlc291cmNlIGlzIGFkZGVkIHRvIHRoZSBzdGFjay5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBldmVudCBUaGUgdHlwZSBvZiBldmVudFxuICAgICAqIEBwYXJhbSB0YXJnZXQgVGhlIHRhcmdldCBjb25zdHJ1Y3RcbiAgICAgKiBAcGFyYW0gZmlsdGVycyBBIHNldCBvZiBTMyBrZXkgZmlsdGVyc1xuICAgICAqL1xuICAgIHB1YmxpYyBhZGROb3RpZmljYXRpb24oZXZlbnQ6IEV2ZW50VHlwZSwgdGFyZ2V0OiBJQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb24sIC4uLmZpbHRlcnM6IE5vdGlmaWNhdGlvbktleUZpbHRlcltdKSB7XG4gICAgICAgIGNvbnN0IHJlc291cmNlID0gdGhpcy5jcmVhdGVSZXNvdXJjZU9uY2UoKTtcblxuICAgICAgICAvLyByZXNvbHZlIHRhcmdldC4gdGhpcyBhbHNvIHByb3ZpZGVzIGFuIG9wcG9ydHVuaXR5IGZvciB0aGUgdGFyZ2V0IHRvIGUuZy4gdXBkYXRlXG4gICAgICAgIC8vIHBvbGljaWVzIHRvIGFsbG93IHRoaXMgbm90aWZpY2F0aW9uIHRvIGhhcHBlbi5cbiAgICAgICAgY29uc3QgdGFyZ2V0UHJvcHMgPSB0YXJnZXQuYXNCdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvbih0aGlzLmJ1Y2tldC5idWNrZXRBcm4sIHRoaXMuYnVja2V0LnVuaXF1ZUlkKTtcbiAgICAgICAgY29uc3QgY29tbW9uQ29uZmlnOiBDb21tb25Db25maWd1cmF0aW9uID0ge1xuICAgICAgICAgICAgRXZlbnRzOiBbIGV2ZW50IF0sXG4gICAgICAgICAgICBGaWx0ZXI6IHJlbmRlckZpbHRlcnMoZmlsdGVycyksXG4gICAgICAgIH07XG5cbiAgICAgICAgLy8gaWYgdGhlIHRhcmdldCBzcGVjaWZpZXMgYW55IGRlcGVuZGVuY2llcywgYWRkIHRoZW0gdG8gdGhlIGN1c3RvbSByZXNvdXJjZS5cbiAgICAgICAgLy8gZm9yIGV4YW1wbGUsIHRoZSBTTlMgdG9waWMgcG9saWN5IG11c3QgYmUgY3JlYXRlZCAvYmVmb3JlLyB0aGUgbm90aWZpY2F0aW9uIHJlc291cmNlLlxuICAgICAgICAvLyBvdGhlcndpc2UsIFMzIHdvbid0IGJlIGFibGUgdG8gY29uZmlybSB0aGUgc3Vic2NyaXB0aW9uLlxuICAgICAgICBpZiAodGFyZ2V0UHJvcHMuZGVwZW5kZW5jaWVzKSB7XG4gICAgICAgICAgICByZXNvdXJjZS5hZGREZXBlbmRlbmN5KC4uLnRhcmdldFByb3BzLmRlcGVuZGVuY2llcyk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBiYXNlZCBvbiB0aGUgdGFyZ2V0IHR5cGUsIGFkZCB0aGUgdGhlIGNvcnJlY3QgY29uZmlndXJhdGlvbnMgYXJyYXlcbiAgICAgICAgc3dpdGNoICh0YXJnZXRQcm9wcy50eXBlKSB7XG4gICAgICAgICAgICBjYXNlIEJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uVHlwZS5MYW1iZGE6XG4gICAgICAgICAgICAgICAgdGhpcy5sYW1iZGFOb3RpZmljYXRpb25zLnB1c2goeyAuLi5jb21tb25Db25maWcsIExhbWJkYUZ1bmN0aW9uQXJuOiB0YXJnZXRQcm9wcy5hcm4gfSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25UeXBlLlF1ZXVlOlxuICAgICAgICAgICAgICAgIHRoaXMucXVldWVOb3RpZmljYXRpb25zLnB1c2goeyAuLi5jb21tb25Db25maWcsIFF1ZXVlQXJuOiB0YXJnZXRQcm9wcy5hcm4gfSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25UeXBlLlRvcGljOlxuICAgICAgICAgICAgICAgIHRoaXMudG9waWNOb3RpZmljYXRpb25zLnB1c2goeyAuLi5jb21tb25Db25maWcsIFRvcGljQXJuOiB0YXJnZXRQcm9wcy5hcm4gfSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbnN1cHBvcnRlZCBub3RpZmljYXRpb24gdGFyZ2V0IHR5cGU6JyArIEJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uVHlwZVt0YXJnZXRQcm9wcy50eXBlXSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbmRlck5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb24oKTogTm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBMYW1iZGFGdW5jdGlvbkNvbmZpZ3VyYXRpb25zOiB0aGlzLmxhbWJkYU5vdGlmaWNhdGlvbnMubGVuZ3RoID4gMCA/IHRoaXMubGFtYmRhTm90aWZpY2F0aW9ucyA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIFF1ZXVlQ29uZmlndXJhdGlvbnM6IHRoaXMucXVldWVOb3RpZmljYXRpb25zLmxlbmd0aCA+IDAgPyB0aGlzLnF1ZXVlTm90aWZpY2F0aW9ucyA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIFRvcGljQ29uZmlndXJhdGlvbnM6IHRoaXMudG9waWNOb3RpZmljYXRpb25zLmxlbmd0aCA+IDAgPyB0aGlzLnRvcGljTm90aWZpY2F0aW9ucyA6IHVuZGVmaW5lZFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERlZmluZXMgdGhlIGJ1Y2tldCBub3RpZmljYXRpb25zIHJlc291cmNlcyBpbiB0aGUgc3RhY2sgb25seSBvbmNlLlxuICAgICAqIFRoaXMgaXMgY2FsbGVkIGxhemlseSBhcyB3ZSBhZGQgbm90aWZpY2F0aW9ucywgc28gdGhhdCBpZiBub3RpZmljYXRpb25zIGFyZSBub3QgYWRkZWQsXG4gICAgICogdGhlcmUgaXMgbm8gbm90aWZpY2F0aW9ucyByZXNvdXJjZS5cbiAgICAgKi9cbiAgICBwcml2YXRlIGNyZWF0ZVJlc291cmNlT25jZSgpIHtcbiAgICAgICAgaWYgKCF0aGlzLnJlc291cmNlKSB7XG4gICAgICAgICAgICBjb25zdCBoYW5kbGVyQXJuID0gTm90aWZpY2F0aW9uc1Jlc291cmNlSGFuZGxlci5zaW5nbGV0b24odGhpcyk7XG5cbiAgICAgICAgICAgIHRoaXMucmVzb3VyY2UgPSBuZXcgY2RrLlJlc291cmNlKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgICAgICAgICAgICB0eXBlOiAnQ3VzdG9tOjpTM0J1Y2tldE5vdGlmaWNhdGlvbnMnLFxuICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgU2VydmljZVRva2VuOiBoYW5kbGVyQXJuLFxuICAgICAgICAgICAgICAgICAgICBCdWNrZXROYW1lOiB0aGlzLmJ1Y2tldC5idWNrZXROYW1lLFxuICAgICAgICAgICAgICAgICAgICBOb3RpZmljYXRpb25Db25maWd1cmF0aW9uOiBuZXcgY2RrLlRva2VuKCgpID0+IHRoaXMucmVuZGVyTm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbigpKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMucmVzb3VyY2U7XG4gICAgfVxufVxuXG5mdW5jdGlvbiByZW5kZXJGaWx0ZXJzKGZpbHRlcnM/OiBOb3RpZmljYXRpb25LZXlGaWx0ZXJbXSk6IEZpbHRlciB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCFmaWx0ZXJzIHx8IGZpbHRlcnMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgY29uc3QgcmVuZGVyZWRSdWxlcyA9IG5ldyBBcnJheTxGaWx0ZXJSdWxlPigpO1xuXG4gICAgZm9yIChjb25zdCBydWxlIG9mIGZpbHRlcnMpIHtcbiAgICAgICAgaWYgKCFydWxlLnN1ZmZpeCAmJiAhcnVsZS5wcmVmaXgpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignTm90aWZpY2F0aW9uS2V5RmlsdGVyIG11c3Qgc3BlY2lmeSBgcHJlZml4YCBhbmQvb3IgYHN1ZmZpeGAnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChydWxlLnN1ZmZpeCkge1xuICAgICAgICAgICAgcmVuZGVyZWRSdWxlcy5wdXNoKHsgTmFtZTogJ3N1ZmZpeCcsIFZhbHVlOiBydWxlLnN1ZmZpeCB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChydWxlLnByZWZpeCkge1xuICAgICAgICAgICAgcmVuZGVyZWRSdWxlcy5wdXNoKHsgTmFtZTogJ3ByZWZpeCcsIFZhbHVlOiBydWxlLnByZWZpeCB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAgIEtleToge1xuICAgICAgICAgICAgRmlsdGVyUnVsZXM6IHJlbmRlcmVkUnVsZXNcbiAgICAgICAgfVxuICAgIH07XG59XG5cbmludGVyZmFjZSBOb3RpZmljYXRpb25Db25maWd1cmF0aW9uIHtcbiAgICBMYW1iZGFGdW5jdGlvbkNvbmZpZ3VyYXRpb25zPzogTGFtYmRhRnVuY3Rpb25Db25maWd1cmF0aW9uW107XG4gICAgUXVldWVDb25maWd1cmF0aW9ucz86IFF1ZXVlQ29uZmlndXJhdGlvbltdO1xuICAgIFRvcGljQ29uZmlndXJhdGlvbnM/OiBUb3BpY0NvbmZpZ3VyYXRpb25bXTtcbn1cblxuaW50ZXJmYWNlIENvbW1vbkNvbmZpZ3VyYXRpb24ge1xuICAgIElkPzogc3RyaW5nO1xuICAgIEV2ZW50czogRXZlbnRUeXBlW107XG4gICAgRmlsdGVyPzogRmlsdGVyXG59XG5cbmludGVyZmFjZSBMYW1iZGFGdW5jdGlvbkNvbmZpZ3VyYXRpb24gZXh0ZW5kcyBDb21tb25Db25maWd1cmF0aW9uIHtcbiAgICBMYW1iZGFGdW5jdGlvbkFybjogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgUXVldWVDb25maWd1cmF0aW9uIGV4dGVuZHMgQ29tbW9uQ29uZmlndXJhdGlvbiB7XG4gICAgUXVldWVBcm46IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIFRvcGljQ29uZmlndXJhdGlvbiBleHRlbmRzIENvbW1vbkNvbmZpZ3VyYXRpb24ge1xuICAgIFRvcGljQXJuOiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBGaWx0ZXJSdWxlIHtcbiAgICBOYW1lOiAncHJlZml4JyB8ICdzdWZmaXgnO1xuICAgIFZhbHVlOiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBGaWx0ZXIge1xuICAgIEtleTogeyBGaWx0ZXJSdWxlczogRmlsdGVyUnVsZVtdIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy1yZXNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm5vdGlmaWNhdGlvbnMtcmVzb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSx3RUFBa0g7QUFDbEgsb0NBQXFDO0FBRXJDLHFGQUFnRjtBQVloRjs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE1BQWEsbUJBQW9CLFNBQVEsR0FBRyxDQUFDLFNBQVM7SUFPcEQsWUFBWSxNQUFxQixFQUFFLEVBQVUsRUFBRSxLQUF5QjtRQUN0RSxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBUEgsd0JBQW1CLEdBQUcsSUFBSSxLQUFLLEVBQStCLENBQUM7UUFDL0QsdUJBQWtCLEdBQUcsSUFBSSxLQUFLLEVBQXNCLENBQUM7UUFDckQsdUJBQWtCLEdBQUcsSUFBSSxLQUFLLEVBQXNCLENBQUM7UUFNcEUsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO0lBQzdCLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ksZUFBZSxDQUFDLEtBQWdCLEVBQUUsTUFBc0MsRUFBRSxHQUFHLE9BQWdDO1FBQ2xILE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBRTNDLGtGQUFrRjtRQUNsRixpREFBaUQ7UUFDakQsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLCtCQUErQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEcsTUFBTSxZQUFZLEdBQXdCO1lBQ3hDLE1BQU0sRUFBRSxDQUFFLEtBQUssQ0FBRTtZQUNqQixNQUFNLEVBQUUsYUFBYSxDQUFDLE9BQU8sQ0FBQztTQUMvQixDQUFDO1FBRUYsNkVBQTZFO1FBQzdFLHdGQUF3RjtRQUN4RiwyREFBMkQ7UUFDM0QsSUFBSSxXQUFXLENBQUMsWUFBWSxFQUFFO1lBQzVC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LE1BQU0sRUFBRSxDQUFDLENBQUM7U0FDNUQ7UUFFRCxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDZixhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7U0FDNUQ7S0FDRjtJQUVELE9BQU87UUFDTCxHQUFHLEVBQUU7WUFDSCxXQUFXLEVBQUUsYUFBYTtTQUMzQjtLQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25UeXBlLCBJQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb24gfSBmcm9tICdAYXdzLWNkay9hd3MtczMtbm90aWZpY2F0aW9ucyc7XG5pbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5pbXBvcnQgeyBCdWNrZXQsIEV2ZW50VHlwZSwgTm90aWZpY2F0aW9uS2V5RmlsdGVyIH0gZnJvbSAnLi4vYnVja2V0JztcbmltcG9ydCB7IE5vdGlmaWNhdGlvbnNSZXNvdXJjZUhhbmRsZXIgfSBmcm9tICcuL25vdGlmaWNhdGlvbnMtcmVzb3VyY2UtaGFuZGxlcic7XG5cbmludGVyZmFjZSBOb3RpZmljYXRpb25zUHJvcHMge1xuICAvKipcbiAgICogVGhlIGJ1Y2tldCB0byBtYW5hZ2Ugbm90aWZpY2F0aW9ucyBmb3IuXG4gICAqXG4gICAqIFRoaXMgY2Fubm90IGJlIGEgYEJ1Y2tldFJlZmAgYmVjYXVzZSB0aGUgYnVja2V0IG1haW50YWlucyB0aGUgMToxXG4gICAqIHJlbGF0aW9uc2hpcCB3aXRoIHRoaXMgcmVzb3VyY2UuXG4gICAqL1xuICBidWNrZXQ6IEJ1Y2tldDtcbn1cblxuLyoqXG4gKiBBIGN1c3RvbSBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0aGF0IHVwZGF0ZXMgYnVja2V0IG5vdGlmaWNhdGlvbnMgZm9yIGFcbiAqIGJ1Y2tldC4gVGhlIHJlYXNvbiB3ZSBuZWVkIGl0IGlzIGJlY2F1c2UgdGhlIEFXUzo6UzM6OkJ1Y2tldCBub3RpZmljYXRpb25cbiAqIGNvbmZpZ3VyYXRpb24gaXMgZGVmaW5lZCBvbiB0aGUgYnVja2V0IGl0c2VsZiwgd2hpY2ggbWFrZXMgaXQgaW1wb3NzaWJsZSB0b1xuICogcHJvdmlzaW9uIG5vdGlmaWNhdGlvbnMgYXQgdGhlIHNhbWUgdGltZSBhcyB0aGUgdGFyZ2V0IChzaW5jZVxuICogUHV0QnVja2V0Tm90aWZpY2F0aW9ucyB2YWxpZGF0ZXMgdGhlIHRhcmdldHMpLlxuICpcbiAqIFNpbmNlIG9ubHkgYSBzaW5nbGUgQnVja2V0Tm90aWZpY2F0aW9ucyByZXNvdXJjZSBpcyBhbGxvd2VkIGZvciBlYWNoIEJ1Y2tldCxcbiAqIHRoaXMgY29uc3RydWN0IGlzIG5vdCBleHBvcnRlZCBpbiB0aGUgcHVibGljIEFQSSBvZiB0aGlzIG1vZHVsZS4gSW5zdGVhZCwgaXRcbiAqIGlzIGNyZWF0ZWQganVzdC1pbi10aW1lIGJ5IGBzMy5CdWNrZXQub25FdmVudGAsIHNvIGEgMToxIHJlbGF0aW9uc2hpcCBpc1xuICogZW5zdXJlZC5cbiAqXG4gKiBAc2VlXG4gKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQVdTQ2xvdWRGb3JtYXRpb24vbGF0ZXN0L1VzZXJHdWlkZS9hd3MtcHJvcGVydGllcy1zMy1idWNrZXQtbm90aWZpY2F0aW9uY29uZmlnLmh0bWxcbiAqL1xuZXhwb3J0IGNsYXNzIEJ1Y2tldE5vdGlmaWNhdGlvbnMgZXh0ZW5kcyBjZGsuQ29uc3RydWN0IHtcbiAgcHJpdmF0ZSByZWFkb25seSBsYW1iZGFOb3RpZmljYXRpb25zID0gbmV3IEFycmF5PExhbWJkYUZ1bmN0aW9uQ29uZmlndXJhdGlvbj4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBxdWV1ZU5vdGlmaWNhdGlvbnMgPSBuZXcgQXJyYXk8UXVldWVDb25maWd1cmF0aW9uPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IHRvcGljTm90aWZpY2F0aW9ucyA9IG5ldyBBcnJheTxUb3BpY0NvbmZpZ3VyYXRpb24+KCk7XG4gIHByaXZhdGUgcmVzb3VyY2U/OiBjZGsuUmVzb3VyY2U7XG4gIHByaXZhdGUgcmVhZG9ubHkgYnVja2V0OiBCdWNrZXQ7XG5cbiAgY29uc3RydWN0b3IocGFyZW50OiBjZGsuQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTm90aWZpY2F0aW9uc1Byb3BzKSB7XG4gICAgc3VwZXIocGFyZW50LCBpZCk7XG4gICAgdGhpcy5idWNrZXQgPSBwcm9wcy5idWNrZXQ7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhIG5vdGlmaWNhdGlvbiBzdWJzY3JpcHRpb24gZm9yIHRoaXMgYnVja2V0LlxuICAgKiBJZiB0aGlzIGlzIHRoZSBmaXJzdCBub3RpZmljYXRpb24sIGEgQnVja2V0Tm90aWZpY2F0aW9uIHJlc291cmNlIGlzIGFkZGVkIHRvIHRoZSBzdGFjay5cbiAgICpcbiAgICogQHBhcmFtIGV2ZW50IFRoZSB0eXBlIG9mIGV2ZW50XG4gICAqIEBwYXJhbSB0YXJnZXQgVGhlIHRhcmdldCBjb25zdHJ1Y3RcbiAgICogQHBhcmFtIGZpbHRlcnMgQSBzZXQgb2YgUzMga2V5IGZpbHRlcnNcbiAgICovXG4gIHB1YmxpYyBhZGROb3RpZmljYXRpb24oZXZlbnQ6IEV2ZW50VHlwZSwgdGFyZ2V0OiBJQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb24sIC4uLmZpbHRlcnM6IE5vdGlmaWNhdGlvbktleUZpbHRlcltdKSB7XG4gICAgY29uc3QgcmVzb3VyY2UgPSB0aGlzLmNyZWF0ZVJlc291cmNlT25jZSgpO1xuXG4gICAgLy8gcmVzb2x2ZSB0YXJnZXQuIHRoaXMgYWxzbyBwcm92aWRlcyBhbiBvcHBvcnR1bml0eSBmb3IgdGhlIHRhcmdldCB0byBlLmcuIHVwZGF0ZVxuICAgIC8vIHBvbGljaWVzIHRvIGFsbG93IHRoaXMgbm90aWZpY2F0aW9uIHRvIGhhcHBlbi5cbiAgICBjb25zdCB0YXJnZXRQcm9wcyA9IHRhcmdldC5hc0J1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uKHRoaXMuYnVja2V0LmJ1Y2tldEFybiwgdGhpcy5idWNrZXQudW5pcXVlSWQpO1xuICAgIGNvbnN0IGNvbW1vbkNvbmZpZzogQ29tbW9uQ29uZmlndXJhdGlvbiA9IHtcbiAgICAgIEV2ZW50czogWyBldmVudCBdLFxuICAgICAgRmlsdGVyOiByZW5kZXJGaWx0ZXJzKGZpbHRlcnMpLFxuICAgIH07XG5cbiAgICAvLyBpZiB0aGUgdGFyZ2V0IHNwZWNpZmllcyBhbnkgZGVwZW5kZW5jaWVzLCBhZGQgdGhlbSB0byB0aGUgY3VzdG9tIHJlc291cmNlLlxuICAgIC8vIGZvciBleGFtcGxlLCB0aGUgU05TIHRvcGljIHBvbGljeSBtdXN0IGJlIGNyZWF0ZWQgL2JlZm9yZS8gdGhlIG5vdGlmaWNhdGlvbiByZXNvdXJjZS5cbiAgICAvLyBvdGhlcndpc2UsIFMzIHdvbid0IGJlIGFibGUgdG8gY29uZmlybSB0aGUgc3Vic2NyaXB0aW9uLlxuICAgIGlmICh0YXJnZXRQcm9wcy5kZXBlbmRlbmNpZXMpIHtcbiAgICAgIHJlc291cmNlLmFkZERlcGVuZGVuY3koLi4udGFyZ2V0UHJvcHMuZGVwZW5kZW5jaWVzKTtcbiAgICB9XG5cbiAgICAvLyBiYXNlZCBvbiB0aGUgdGFyZ2V0IHR5cGUsIGFkZCB0aGUgdGhlIGNvcnJlY3QgY29uZmlndXJhdGlvbnMgYXJyYXlcbiAgICBzd2l0Y2ggKHRhcmdldFByb3BzLnR5cGUpIHtcbiAgICAgIGNhc2UgQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25UeXBlLkxhbWJkYTpcbiAgICAgICAgdGhpcy5sYW1iZGFOb3RpZmljYXRpb25zLnB1c2goeyAuLi5jb21tb25Db25maWcsIExhbWJkYUZ1bmN0aW9uQXJuOiB0YXJnZXRQcm9wcy5hcm4gfSk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIEJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uVHlwZS5RdWV1ZTpcbiAgICAgICAgdGhpcy5xdWV1ZU5vdGlmaWNhdGlvbnMucHVzaCh7IC4uLmNvbW1vbkNvbmZpZywgUXVldWVBcm46IHRhcmdldFByb3BzLmFybiB9KTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25UeXBlLlRvcGljOlxuICAgICAgICB0aGlzLnRvcGljTm90aWZpY2F0aW9ucy5wdXNoKHsgLi4uY29tbW9uQ29uZmlnLCBUb3BpY0FybjogdGFyZ2V0UHJvcHMuYXJuIH0pO1xuICAgICAgICBicmVhaztcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbnN1cHBvcnRlZCBub3RpZmljYXRpb24gdGFyZ2V0IHR5cGU6JyArIEJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uVHlwZVt0YXJnZXRQcm9wcy50eXBlXSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZW5kZXJOb3RpZmljYXRpb25Db25maWd1cmF0aW9uKCk6IE5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb24ge1xuICAgIHJldHVybiB7XG4gICAgICBMYW1iZGFGdW5jdGlvbkNvbmZpZ3VyYXRpb25zOiB0aGlzLmxhbWJkYU5vdGlmaWNhdGlvbnMubGVuZ3RoID4gMCA/IHRoaXMubGFtYmRhTm90aWZpY2F0aW9ucyA6IHVuZGVmaW5lZCxcbiAgICAgIFF1ZXVlQ29uZmlndXJhdGlvbnM6IHRoaXMucXVldWVOb3RpZmljYXRpb25zLmxlbmd0aCA+IDAgPyB0aGlzLnF1ZXVlTm90aWZpY2F0aW9ucyA6IHVuZGVmaW5lZCxcbiAgICAgIFRvcGljQ29uZmlndXJhdGlvbnM6IHRoaXMudG9waWNOb3RpZmljYXRpb25zLmxlbmd0aCA+IDAgPyB0aGlzLnRvcGljTm90aWZpY2F0aW9ucyA6IHVuZGVmaW5lZFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogRGVmaW5lcyB0aGUgYnVja2V0IG5vdGlmaWNhdGlvbnMgcmVzb3VyY2VzIGluIHRoZSBzdGFjayBvbmx5IG9uY2UuXG4gICAqIFRoaXMgaXMgY2FsbGVkIGxhemlseSBhcyB3ZSBhZGQgbm90aWZpY2F0aW9ucywgc28gdGhhdCBpZiBub3RpZmljYXRpb25zIGFyZSBub3QgYWRkZWQsXG4gICAqIHRoZXJlIGlzIG5vIG5vdGlmaWNhdGlvbnMgcmVzb3VyY2UuXG4gICAqL1xuICBwcml2YXRlIGNyZWF0ZVJlc291cmNlT25jZSgpIHtcbiAgICBpZiAoIXRoaXMucmVzb3VyY2UpIHtcbiAgICAgIGNvbnN0IGhhbmRsZXJBcm4gPSBOb3RpZmljYXRpb25zUmVzb3VyY2VIYW5kbGVyLnNpbmdsZXRvbih0aGlzKTtcblxuICAgICAgdGhpcy5yZXNvdXJjZSA9IG5ldyBjZGsuUmVzb3VyY2UodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgICB0eXBlOiAnQ3VzdG9tOjpTM0J1Y2tldE5vdGlmaWNhdGlvbnMnLFxuICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgU2VydmljZVRva2VuOiBoYW5kbGVyQXJuLFxuICAgICAgICAgIEJ1Y2tldE5hbWU6IHRoaXMuYnVja2V0LmJ1Y2tldE5hbWUsXG4gICAgICAgICAgTm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbjogbmV3IGNkay5Ub2tlbigoKSA9PiB0aGlzLnJlbmRlck5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb24oKSlcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMucmVzb3VyY2U7XG4gIH1cbn1cblxuZnVuY3Rpb24gcmVuZGVyRmlsdGVycyhmaWx0ZXJzPzogTm90aWZpY2F0aW9uS2V5RmlsdGVyW10pOiBGaWx0ZXIgfCB1bmRlZmluZWQge1xuICBpZiAoIWZpbHRlcnMgfHwgZmlsdGVycy5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgY29uc3QgcmVuZGVyZWRSdWxlcyA9IG5ldyBBcnJheTxGaWx0ZXJSdWxlPigpO1xuXG4gIGZvciAoY29uc3QgcnVsZSBvZiBmaWx0ZXJzKSB7XG4gICAgaWYgKCFydWxlLnN1ZmZpeCAmJiAhcnVsZS5wcmVmaXgpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm90aWZpY2F0aW9uS2V5RmlsdGVyIG11c3Qgc3BlY2lmeSBgcHJlZml4YCBhbmQvb3IgYHN1ZmZpeGAnKTtcbiAgICB9XG5cbiAgICBpZiAocnVsZS5zdWZmaXgpIHtcbiAgICAgIHJlbmRlcmVkUnVsZXMucHVzaCh7IE5hbWU6ICdzdWZmaXgnLCBWYWx1ZTogcnVsZS5zdWZmaXggfSk7XG4gICAgfVxuXG4gICAgaWYgKHJ1bGUucHJlZml4KSB7XG4gICAgICByZW5kZXJlZFJ1bGVzLnB1c2goeyBOYW1lOiAncHJlZml4JywgVmFsdWU6IHJ1bGUucHJlZml4IH0pO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB7XG4gICAgS2V5OiB7XG4gICAgICBGaWx0ZXJSdWxlczogcmVuZGVyZWRSdWxlc1xuICAgIH1cbiAgfTtcbn1cblxuaW50ZXJmYWNlIE5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb24ge1xuICBMYW1iZGFGdW5jdGlvbkNvbmZpZ3VyYXRpb25zPzogTGFtYmRhRnVuY3Rpb25Db25maWd1cmF0aW9uW107XG4gIFF1ZXVlQ29uZmlndXJhdGlvbnM/OiBRdWV1ZUNvbmZpZ3VyYXRpb25bXTtcbiAgVG9waWNDb25maWd1cmF0aW9ucz86IFRvcGljQ29uZmlndXJhdGlvbltdO1xufVxuXG5pbnRlcmZhY2UgQ29tbW9uQ29uZmlndXJhdGlvbiB7XG4gIElkPzogc3RyaW5nO1xuICBFdmVudHM6IEV2ZW50VHlwZVtdO1xuICBGaWx0ZXI/OiBGaWx0ZXJcbn1cblxuaW50ZXJmYWNlIExhbWJkYUZ1bmN0aW9uQ29uZmlndXJhdGlvbiBleHRlbmRzIENvbW1vbkNvbmZpZ3VyYXRpb24ge1xuICBMYW1iZGFGdW5jdGlvbkFybjogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgUXVldWVDb25maWd1cmF0aW9uIGV4dGVuZHMgQ29tbW9uQ29uZmlndXJhdGlvbiB7XG4gIFF1ZXVlQXJuOiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBUb3BpY0NvbmZpZ3VyYXRpb24gZXh0ZW5kcyBDb21tb25Db25maWd1cmF0aW9uIHtcbiAgVG9waWNBcm46IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIEZpbHRlclJ1bGUge1xuICBOYW1lOiAncHJlZml4JyB8ICdzdWZmaXgnO1xuICBWYWx1ZTogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgRmlsdGVyIHtcbiAgS2V5OiB7IEZpbHRlclJ1bGVzOiBGaWx0ZXJSdWxlW10gfVxufVxuIl19

@@ -28,2 +28,2 @@ "use strict";

];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJwZXJtcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFhLFFBQUEsbUJBQW1CLEdBQUc7SUFDL0IsZUFBZTtJQUNmLGVBQWU7SUFDZixVQUFVO0NBQ2IsQ0FBQztBQUVXLFFBQUEsa0JBQWtCLEdBQUc7SUFDOUIsZUFBZTtJQUNmLFdBQVc7Q0FDZCxDQUFDO0FBRVcsUUFBQSxxQkFBcUIsR0FBRztJQUNqQyxrQkFBa0I7Q0FDckIsQ0FBQztBQUVXLFFBQUEsb0JBQW9CLEdBQUc7SUFDaEMsR0FBRyw2QkFBcUI7SUFDeEIsR0FBRywwQkFBa0I7Q0FDeEIsQ0FBQztBQUVXLFFBQUEsZ0JBQWdCLEdBQUc7SUFDNUIsYUFBYTtJQUNiLGlCQUFpQjtDQUNwQixDQUFDO0FBRVcsUUFBQSxpQkFBaUIsR0FBRztJQUM3QixhQUFhO0lBQ2IsZ0JBQWdCO0lBQ2hCLHNCQUFzQjtDQUN6QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEJVQ0tFVF9SRUFEX0FDVElPTlMgPSBbXG4gICAgJ3MzOkdldE9iamVjdConLFxuICAgICdzMzpHZXRCdWNrZXQqJyxcbiAgICAnczM6TGlzdConLFxuXTtcblxuZXhwb3J0IGNvbnN0IEJVQ0tFVF9QVVRfQUNUSU9OUyA9IFtcbiAgICAnczM6UHV0T2JqZWN0KicsXG4gICAgJ3MzOkFib3J0Kidcbl07XG5cbmV4cG9ydCBjb25zdCBCVUNLRVRfREVMRVRFX0FDVElPTlMgPSBbXG4gICAgJ3MzOkRlbGV0ZU9iamVjdConXG5dO1xuXG5leHBvcnQgY29uc3QgQlVDS0VUX1dSSVRFX0FDVElPTlMgPSBbXG4gICAgLi4uQlVDS0VUX0RFTEVURV9BQ1RJT05TLFxuICAgIC4uLkJVQ0tFVF9QVVRfQUNUSU9OU1xuXTtcblxuZXhwb3J0IGNvbnN0IEtFWV9SRUFEX0FDVElPTlMgPSBbXG4gICAgJ2ttczpEZWNyeXB0JyxcbiAgICAna21zOkRlc2NyaWJlS2V5Jyxcbl07XG5cbmV4cG9ydCBjb25zdCBLRVlfV1JJVEVfQUNUSU9OUyA9IFtcbiAgICAna21zOkVuY3J5cHQnLFxuICAgICdrbXM6UmVFbmNyeXB0KicsXG4gICAgJ2ttczpHZW5lcmF0ZURhdGFLZXkqJyxcbl07XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJwZXJtcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFhLFFBQUEsbUJBQW1CLEdBQUc7SUFDakMsZUFBZTtJQUNmLGVBQWU7SUFDZixVQUFVO0NBQ1gsQ0FBQztBQUVXLFFBQUEsa0JBQWtCLEdBQUc7SUFDaEMsZUFBZTtJQUNmLFdBQVc7Q0FDWixDQUFDO0FBRVcsUUFBQSxxQkFBcUIsR0FBRztJQUNuQyxrQkFBa0I7Q0FDbkIsQ0FBQztBQUVXLFFBQUEsb0JBQW9CLEdBQUc7SUFDbEMsR0FBRyw2QkFBcUI7SUFDeEIsR0FBRywwQkFBa0I7Q0FDdEIsQ0FBQztBQUVXLFFBQUEsZ0JBQWdCLEdBQUc7SUFDOUIsYUFBYTtJQUNiLGlCQUFpQjtDQUNsQixDQUFDO0FBRVcsUUFBQSxpQkFBaUIsR0FBRztJQUMvQixhQUFhO0lBQ2IsZ0JBQWdCO0lBQ2hCLHNCQUFzQjtDQUN2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEJVQ0tFVF9SRUFEX0FDVElPTlMgPSBbXG4gICdzMzpHZXRPYmplY3QqJyxcbiAgJ3MzOkdldEJ1Y2tldConLFxuICAnczM6TGlzdConLFxuXTtcblxuZXhwb3J0IGNvbnN0IEJVQ0tFVF9QVVRfQUNUSU9OUyA9IFtcbiAgJ3MzOlB1dE9iamVjdConLFxuICAnczM6QWJvcnQqJ1xuXTtcblxuZXhwb3J0IGNvbnN0IEJVQ0tFVF9ERUxFVEVfQUNUSU9OUyA9IFtcbiAgJ3MzOkRlbGV0ZU9iamVjdConXG5dO1xuXG5leHBvcnQgY29uc3QgQlVDS0VUX1dSSVRFX0FDVElPTlMgPSBbXG4gIC4uLkJVQ0tFVF9ERUxFVEVfQUNUSU9OUyxcbiAgLi4uQlVDS0VUX1BVVF9BQ1RJT05TXG5dO1xuXG5leHBvcnQgY29uc3QgS0VZX1JFQURfQUNUSU9OUyA9IFtcbiAgJ2ttczpEZWNyeXB0JyxcbiAgJ2ttczpEZXNjcmliZUtleScsXG5dO1xuXG5leHBvcnQgY29uc3QgS0VZX1dSSVRFX0FDVElPTlMgPSBbXG4gICdrbXM6RW5jcnlwdCcsXG4gICdrbXM6UmVFbmNyeXB0KicsXG4gICdrbXM6R2VuZXJhdGVEYXRhS2V5KicsXG5dO1xuIl19

@@ -5,7 +5,7 @@ import actions = require('@aws-cdk/aws-codepipeline-api');

/**
* Common properties for creating {@link PipelineSource} -
* Common properties for creating {@link PipelineSourceAction} -
* either directly, through its constructor,
* or through {@link BucketRef#addToPipeline}.
*/
export interface CommonPipelineSourceProps {
export interface CommonPipelineSourceActionProps {
/**

@@ -30,5 +30,5 @@ * The name of the source's output artifact. Output artifacts are used by CodePipeline as

/**
* Construction properties of the {@link PipelineSource S3 source Action}.
* Construction properties of the {@link PipelineSourceAction S3 source Action}.
*/
export interface PipelineSourceProps extends CommonPipelineSourceProps, actions.CommonActionProps {
export interface PipelineSourceActionProps extends CommonPipelineSourceActionProps, actions.CommonActionProps {
/**

@@ -42,4 +42,4 @@ * The Amazon S3 bucket that stores the source code

*/
export declare class PipelineSource extends actions.SourceAction {
constructor(parent: cdk.Construct, name: string, props: PipelineSourceProps);
export declare class PipelineSourceAction extends actions.SourceAction {
constructor(parent: cdk.Construct, name: string, props: PipelineSourceActionProps);
}

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

*/
class PipelineSource extends actions.SourceAction {
class PipelineSourceAction extends actions.SourceAction {
constructor(parent, name, props) {

@@ -24,3 +24,3 @@ super(parent, name, {

}
exports.PipelineSource = PipelineSource;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlwZWxpbmUtYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsicGlwZWxpbmUtYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEseURBQTBEO0FBMEMxRDs7R0FFRztBQUNILE1BQWEsY0FBZSxTQUFRLE9BQU8sQ0FBQyxZQUFZO0lBQ3BELFlBQVksTUFBcUIsRUFBRSxJQUFZLEVBQUUsS0FBMEI7UUFDdkUsS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUU7WUFDaEIsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO1lBQ2xCLFFBQVEsRUFBRSxJQUFJO1lBQ2QsYUFBYSxFQUFFO2dCQUNYLFFBQVEsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLFVBQVU7Z0JBQ2pDLFdBQVcsRUFBRSxLQUFLLENBQUMsU0FBUztnQkFDNUIsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLG9CQUFvQixJQUFJLElBQUk7YUFDM0Q7WUFDRCxZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVk7U0FDbkMsQ0FBQyxDQUFDO1FBRUgsd0RBQXdEO1FBQ3hELEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDckQsQ0FBQztDQUNKO0FBaEJELHdDQWdCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhY3Rpb25zID0gcmVxdWlyZSgnQGF3cy1jZGsvYXdzLWNvZGVwaXBlbGluZS1hcGknKTtcbmltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCB7IEJ1Y2tldFJlZiB9IGZyb20gJy4vYnVja2V0JztcblxuLyoqXG4gKiBDb21tb24gcHJvcGVydGllcyBmb3IgY3JlYXRpbmcge0BsaW5rIFBpcGVsaW5lU291cmNlfSAtXG4gKiBlaXRoZXIgZGlyZWN0bHksIHRocm91Z2ggaXRzIGNvbnN0cnVjdG9yLFxuICogb3IgdGhyb3VnaCB7QGxpbmsgQnVja2V0UmVmI2FkZFRvUGlwZWxpbmV9LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbW1vblBpcGVsaW5lU291cmNlUHJvcHMge1xuICAgIC8qKlxuICAgICAqIFRoZSBuYW1lIG9mIHRoZSBzb3VyY2UncyBvdXRwdXQgYXJ0aWZhY3QuIE91dHB1dCBhcnRpZmFjdHMgYXJlIHVzZWQgYnkgQ29kZVBpcGVsaW5lIGFzXG4gICAgICogaW5wdXRzIGludG8gb3RoZXIgYWN0aW9ucy5cbiAgICAgKi9cbiAgICBhcnRpZmFjdE5hbWU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSBrZXkgd2l0aGluIHRoZSBTMyBidWNrZXQgdGhhdCBzdG9yZXMgdGhlIHNvdXJjZSBjb2RlLlxuICAgICAqXG4gICAgICogQGV4YW1wbGUgJ3BhdGgvdG8vZmlsZS56aXAnXG4gICAgICovXG4gICAgYnVja2V0S2V5OiBzdHJpbmc7XG5cbiAgICAvLyBUT0RPOiB1c2UgQ2xvdWRXYXRjaCBldmVudHMgaW5zdGVhZFxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgb3Igbm90IEFXUyBDb2RlUGlwZWxpbmUgc2hvdWxkIHBvbGwgZm9yIHNvdXJjZSBjaGFuZ2VzXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCB0cnVlXG4gICAgICovXG4gICAgcG9sbEZvclNvdXJjZUNoYW5nZXM/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIENvbnN0cnVjdGlvbiBwcm9wZXJ0aWVzIG9mIHRoZSB7QGxpbmsgUGlwZWxpbmVTb3VyY2UgUzMgc291cmNlIEFjdGlvbn0uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGlwZWxpbmVTb3VyY2VQcm9wcyBleHRlbmRzIENvbW1vblBpcGVsaW5lU291cmNlUHJvcHMsIGFjdGlvbnMuQ29tbW9uQWN0aW9uUHJvcHMge1xuICAgIC8qKlxuICAgICAqIFRoZSBBbWF6b24gUzMgYnVja2V0IHRoYXQgc3RvcmVzIHRoZSBzb3VyY2UgY29kZVxuICAgICAqL1xuICAgIGJ1Y2tldDogQnVja2V0UmVmO1xufVxuXG4vKipcbiAqIFNvdXJjZSB0aGF0IGlzIHByb3ZpZGVkIGJ5IGEgc3BlY2lmaWMgQW1hem9uIFMzIG9iamVjdC5cbiAqL1xuZXhwb3J0IGNsYXNzIFBpcGVsaW5lU291cmNlIGV4dGVuZHMgYWN0aW9ucy5Tb3VyY2VBY3Rpb24ge1xuICAgIGNvbnN0cnVjdG9yKHBhcmVudDogY2RrLkNvbnN0cnVjdCwgbmFtZTogc3RyaW5nLCBwcm9wczogUGlwZWxpbmVTb3VyY2VQcm9wcykge1xuICAgICAgICBzdXBlcihwYXJlbnQsIG5hbWUsIHtcbiAgICAgICAgICAgIHN0YWdlOiBwcm9wcy5zdGFnZSxcbiAgICAgICAgICAgIHByb3ZpZGVyOiAnUzMnLFxuICAgICAgICAgICAgY29uZmlndXJhdGlvbjoge1xuICAgICAgICAgICAgICAgIFMzQnVja2V0OiBwcm9wcy5idWNrZXQuYnVja2V0TmFtZSxcbiAgICAgICAgICAgICAgICBTM09iamVjdEtleTogcHJvcHMuYnVja2V0S2V5LFxuICAgICAgICAgICAgICAgIFBvbGxGb3JTb3VyY2VDaGFuZ2VzOiBwcm9wcy5wb2xsRm9yU291cmNlQ2hhbmdlcyB8fCB0cnVlXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgYXJ0aWZhY3ROYW1lOiBwcm9wcy5hcnRpZmFjdE5hbWVcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gcGlwZWxpbmUgbmVlZHMgcGVybWlzc2lvbnMgdG8gcmVhZCBmcm9tIHRoZSBTMyBidWNrZXRcbiAgICAgICAgcHJvcHMuYnVja2V0LmdyYW50UmVhZChwcm9wcy5zdGFnZS5waXBlbGluZVJvbGUpO1xuICAgIH1cbn1cbiJdfQ==
exports.PipelineSourceAction = PipelineSourceAction;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlwZWxpbmUtYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsicGlwZWxpbmUtYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEseURBQTBEO0FBMEMxRDs7R0FFRztBQUNILE1BQWEsb0JBQXFCLFNBQVEsT0FBTyxDQUFDLFlBQVk7SUFDNUQsWUFBWSxNQUFxQixFQUFFLElBQVksRUFBRSxLQUFnQztRQUMvRSxLQUFLLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRTtZQUNsQixLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUs7WUFDbEIsUUFBUSxFQUFFLElBQUk7WUFDZCxhQUFhLEVBQUU7Z0JBQ2IsUUFBUSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVTtnQkFDakMsV0FBVyxFQUFFLEtBQUssQ0FBQyxTQUFTO2dCQUM1QixvQkFBb0IsRUFBRSxLQUFLLENBQUMsb0JBQW9CLElBQUksSUFBSTthQUN6RDtZQUNELFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWTtTQUNqQyxDQUFDLENBQUM7UUFFSCx3REFBd0Q7UUFDeEQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNuRCxDQUFDO0NBQ0Y7QUFoQkQsb0RBZ0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFjdGlvbnMgPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtY29kZXBpcGVsaW5lLWFwaScpO1xuaW1wb3J0IGNkayA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2NkaycpO1xuaW1wb3J0IHsgQnVja2V0UmVmIH0gZnJvbSAnLi9idWNrZXQnO1xuXG4vKipcbiAqIENvbW1vbiBwcm9wZXJ0aWVzIGZvciBjcmVhdGluZyB7QGxpbmsgUGlwZWxpbmVTb3VyY2VBY3Rpb259IC1cbiAqIGVpdGhlciBkaXJlY3RseSwgdGhyb3VnaCBpdHMgY29uc3RydWN0b3IsXG4gKiBvciB0aHJvdWdoIHtAbGluayBCdWNrZXRSZWYjYWRkVG9QaXBlbGluZX0uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29tbW9uUGlwZWxpbmVTb3VyY2VBY3Rpb25Qcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgc291cmNlJ3Mgb3V0cHV0IGFydGlmYWN0LiBPdXRwdXQgYXJ0aWZhY3RzIGFyZSB1c2VkIGJ5IENvZGVQaXBlbGluZSBhc1xuICAgKiBpbnB1dHMgaW50byBvdGhlciBhY3Rpb25zLlxuICAgKi9cbiAgYXJ0aWZhY3ROYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBrZXkgd2l0aGluIHRoZSBTMyBidWNrZXQgdGhhdCBzdG9yZXMgdGhlIHNvdXJjZSBjb2RlLlxuICAgKlxuICAgKiBAZXhhbXBsZSAncGF0aC90by9maWxlLnppcCdcbiAgICovXG4gIGJ1Y2tldEtleTogc3RyaW5nO1xuXG4gIC8vIFRPRE86IHVzZSBDbG91ZFdhdGNoIGV2ZW50cyBpbnN0ZWFkXG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCBBV1MgQ29kZVBpcGVsaW5lIHNob3VsZCBwb2xsIGZvciBzb3VyY2UgY2hhbmdlc1xuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICBwb2xsRm9yU291cmNlQ2hhbmdlcz86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQ29uc3RydWN0aW9uIHByb3BlcnRpZXMgb2YgdGhlIHtAbGluayBQaXBlbGluZVNvdXJjZUFjdGlvbiBTMyBzb3VyY2UgQWN0aW9ufS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQaXBlbGluZVNvdXJjZUFjdGlvblByb3BzIGV4dGVuZHMgQ29tbW9uUGlwZWxpbmVTb3VyY2VBY3Rpb25Qcm9wcywgYWN0aW9ucy5Db21tb25BY3Rpb25Qcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgQW1hem9uIFMzIGJ1Y2tldCB0aGF0IHN0b3JlcyB0aGUgc291cmNlIGNvZGVcbiAgICovXG4gIGJ1Y2tldDogQnVja2V0UmVmO1xufVxuXG4vKipcbiAqIFNvdXJjZSB0aGF0IGlzIHByb3ZpZGVkIGJ5IGEgc3BlY2lmaWMgQW1hem9uIFMzIG9iamVjdC5cbiAqL1xuZXhwb3J0IGNsYXNzIFBpcGVsaW5lU291cmNlQWN0aW9uIGV4dGVuZHMgYWN0aW9ucy5Tb3VyY2VBY3Rpb24ge1xuICBjb25zdHJ1Y3RvcihwYXJlbnQ6IGNkay5Db25zdHJ1Y3QsIG5hbWU6IHN0cmluZywgcHJvcHM6IFBpcGVsaW5lU291cmNlQWN0aW9uUHJvcHMpIHtcbiAgICBzdXBlcihwYXJlbnQsIG5hbWUsIHtcbiAgICAgIHN0YWdlOiBwcm9wcy5zdGFnZSxcbiAgICAgIHByb3ZpZGVyOiAnUzMnLFxuICAgICAgY29uZmlndXJhdGlvbjoge1xuICAgICAgICBTM0J1Y2tldDogcHJvcHMuYnVja2V0LmJ1Y2tldE5hbWUsXG4gICAgICAgIFMzT2JqZWN0S2V5OiBwcm9wcy5idWNrZXRLZXksXG4gICAgICAgIFBvbGxGb3JTb3VyY2VDaGFuZ2VzOiBwcm9wcy5wb2xsRm9yU291cmNlQ2hhbmdlcyB8fCB0cnVlXG4gICAgICB9LFxuICAgICAgYXJ0aWZhY3ROYW1lOiBwcm9wcy5hcnRpZmFjdE5hbWVcbiAgICB9KTtcblxuICAgIC8vIHBpcGVsaW5lIG5lZWRzIHBlcm1pc3Npb25zIHRvIHJlYWQgZnJvbSB0aGUgUzMgYnVja2V0XG4gICAgcHJvcHMuYnVja2V0LmdyYW50UmVhZChwcm9wcy5zdGFnZS5waXBlbGluZVJvbGUpO1xuICB9XG59XG4iXX0=

@@ -25,2 +25,2 @@ "use strict";

})(StorageClass = exports.StorageClass || (exports.StorageClass = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInJ1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFpSkE7O0dBRUc7QUFDSCxJQUFZLFlBbUJYO0FBbkJELFdBQVksWUFBWTtJQUNwQjs7OztPQUlHO0lBQ0gsZ0RBQWdDLENBQUE7SUFFaEM7Ozs7T0FJRztJQUNILHNEQUFzQyxDQUFBO0lBRXRDOztPQUVHO0lBQ0gsbUNBQW1CLENBQUE7QUFDdkIsQ0FBQyxFQW5CVyxZQUFZLEdBQVosb0JBQVksS0FBWixvQkFBWSxRQW1CdkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIERlY2xhcmF0aW9uIG9mIGEgTGlmZSBjeWNsZSBydWxlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGlmZWN5Y2xlUnVsZSB7XG4gICAgLyoqXG4gICAgICogQSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhpcyBydWxlLiBUaGUgdmFsdWUgY2Fubm90IGJlIG1vcmUgdGhhbiAyNTUgY2hhcmFjdGVycy5cbiAgICAgKi9cbiAgICBpZD86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhpcyBydWxlIGlzIGVuYWJsZWQuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCB0cnVlXG4gICAgICovXG4gICAgZW5hYmxlZD86IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiBTcGVjaWZpZXMgYSBsaWZlY3ljbGUgcnVsZSB0aGF0IGFib3J0cyBpbmNvbXBsZXRlIG11bHRpcGFydCB1cGxvYWRzIHRvIGFuIEFtYXpvbiBTMyBidWNrZXQuXG4gICAgICpcbiAgICAgKiBUaGUgQWJvcnRJbmNvbXBsZXRlTXVsdGlwYXJ0VXBsb2FkIHByb3BlcnR5IHR5cGUgY3JlYXRlcyBhIGxpZmVjeWNsZVxuICAgICAqIHJ1bGUgdGhhdCBhYm9ydHMgaW5jb21wbGV0ZSBtdWx0aXBhcnQgdXBsb2FkcyB0byBhbiBBbWF6b24gUzMgYnVja2V0LlxuICAgICAqIFdoZW4gQW1hem9uIFMzIGFib3J0cyBhIG11bHRpcGFydCB1cGxvYWQsIGl0IGRlbGV0ZXMgYWxsIHBhcnRzXG4gICAgICogYXNzb2NpYXRlZCB3aXRoIHRoZSBtdWx0aXBhcnQgdXBsb2FkLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgSW5jb21wbGV0ZSB1cGxvYWRzIGFyZSBuZXZlciBhYm9ydGVkXG4gICAgICovXG4gICAgYWJvcnRJbmNvbXBsZXRlTXVsdGlwYXJ0VXBsb2FkQWZ0ZXJEYXlzPzogbnVtYmVyO1xuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIHdoZW4gb2JqZWN0cyBhcmUgZGVsZXRlZCBmcm9tIEFtYXpvbiBTMyBhbmQgQW1hem9uIEdsYWNpZXIuXG4gICAgICpcbiAgICAgKiBUaGUgZGF0ZSB2YWx1ZSBtdXN0IGJlIGluIElTTyA4NjAxIGZvcm1hdC4gVGhlIHRpbWUgaXMgYWx3YXlzIG1pZG5pZ2h0IFVUQy5cbiAgICAgKlxuICAgICAqIElmIHlvdSBzcGVjaWZ5IGFuIGV4cGlyYXRpb24gYW5kIHRyYW5zaXRpb24gdGltZSwgeW91IG11c3QgdXNlIHRoZSBzYW1lXG4gICAgICogdGltZSB1bml0IGZvciBib3RoIHByb3BlcnRpZXMgKGVpdGhlciBpbiBkYXlzIG9yIGJ5IGRhdGUpLiBUaGVcbiAgICAgKiBleHBpcmF0aW9uIHRpbWUgbXVzdCBhbHNvIGJlIGxhdGVyIHRoYW4gdGhlIHRyYW5zaXRpb24gdGltZS5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IE5vIGV4cGlyYXRpb24gZGF0ZVxuICAgICAqL1xuICAgIGV4cGlyYXRpb25EYXRlPzogRGF0ZTtcblxuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyB0aGUgbnVtYmVyIG9mIGRheXMgYWZ0ZXIgY3JlYXRpb24gd2hlbiBvYmplY3RzIGFyZSBkZWxldGVkIGZyb20gQW1hem9uIFMzIGFuZCBBbWF6b24gR2xhY2llci5cbiAgICAgKlxuICAgICAqIElmIHlvdSBzcGVjaWZ5IGFuIGV4cGlyYXRpb24gYW5kIHRyYW5zaXRpb24gdGltZSwgeW91IG11c3QgdXNlIHRoZSBzYW1lXG4gICAgICogdGltZSB1bml0IGZvciBib3RoIHByb3BlcnRpZXMgKGVpdGhlciBpbiBkYXlzIG9yIGJ5IGRhdGUpLiBUaGVcbiAgICAgKiBleHBpcmF0aW9uIHRpbWUgbXVzdCBhbHNvIGJlIGxhdGVyIHRoYW4gdGhlIHRyYW5zaXRpb24gdGltZS5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IE5vIGV4cGlyYXRpb24gdGltZW91dFxuICAgICAqL1xuICAgIGV4cGlyYXRpb25JbkRheXM/OiBudW1iZXI7XG5cbiAgICAvKipcbiAgICAgKiBUaW1lIGJldHdlZW4gd2hlbiBhIG5ldyB2ZXJzaW9uIG9mIHRoZSBvYmplY3QgaXMgdXBsb2FkZWQgdG8gdGhlIGJ1Y2tldCBhbmQgd2hlbiBvbGQgdmVyc2lvbnMgb2YgdGhlIG9iamVjdCBleHBpcmUuXG4gICAgICpcbiAgICAgKiBGb3IgYnVja2V0cyB3aXRoIHZlcnNpb25pbmcgZW5hYmxlZCAob3Igc3VzcGVuZGVkKSwgc3BlY2lmaWVzIHRoZSB0aW1lLFxuICAgICAqIGluIGRheXMsIGJldHdlZW4gd2hlbiBhIG5ldyB2ZXJzaW9uIG9mIHRoZSBvYmplY3QgaXMgdXBsb2FkZWQgdG8gdGhlXG4gICAgICogYnVja2V0IGFuZCB3aGVuIG9sZCB2ZXJzaW9ucyBvZiB0aGUgb2JqZWN0IGV4cGlyZS4gV2hlbiBvYmplY3QgdmVyc2lvbnNcbiAgICAgKiBleHBpcmUsIEFtYXpvbiBTMyBwZXJtYW5lbnRseSBkZWxldGVzIHRoZW0uIElmIHlvdSBzcGVjaWZ5IGEgdHJhbnNpdGlvblxuICAgICAqIGFuZCBleHBpcmF0aW9uIHRpbWUsIHRoZSBleHBpcmF0aW9uIHRpbWUgbXVzdCBiZSBsYXRlciB0aGFuIHRoZVxuICAgICAqIHRyYW5zaXRpb24gdGltZS5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IE5vIG5vbmN1cnJlbnQgdmVyc2lvbiBleHBpcmF0aW9uXG4gICAgICovXG4gICAgbm9uY3VycmVudFZlcnNpb25FeHBpcmF0aW9uSW5EYXlzPzogbnVtYmVyO1xuXG4gICAgLyoqXG4gICAgICogT25lIG9yIG1vcmUgdHJhbnNpdGlvbiBydWxlcyB0aGF0IHNwZWNpZnkgd2hlbiBub24tY3VycmVudCBvYmplY3RzIHRyYW5zaXRpb24gdG8gYSBzcGVjaWZpZWQgc3RvcmFnZSBjbGFzcy5cbiAgICAgKlxuICAgICAqIE9ubHkgZm9yIGZvciBidWNrZXRzIHdpdGggdmVyc2lvbmluZyBlbmFibGVkIChvciBzdXNwZW5kZWQpLlxuICAgICAqXG4gICAgICogSWYgeW91IHNwZWNpZnkgYSB0cmFuc2l0aW9uIGFuZCBleHBpcmF0aW9uIHRpbWUsIHRoZSBleHBpcmF0aW9uIHRpbWVcbiAgICAgKiBtdXN0IGJlIGxhdGVyIHRoYW4gdGhlIHRyYW5zaXRpb24gdGltZS5cbiAgICAgKi9cbiAgICBub25jdXJyZW50VmVyc2lvblRyYW5zaXRpb25zPzogTm9uY3VycmVudFZlcnNpb25UcmFuc2l0aW9uW107XG5cbiAgICAvKipcbiAgICAgKiBPbmUgb3IgbW9yZSB0cmFuc2l0aW9uIHJ1bGVzIHRoYXQgc3BlY2lmeSB3aGVuIGFuIG9iamVjdCB0cmFuc2l0aW9ucyB0byBhIHNwZWNpZmllZCBzdG9yYWdlIGNsYXNzLlxuICAgICAqXG4gICAgICogSWYgeW91IHNwZWNpZnkgYW4gZXhwaXJhdGlvbiBhbmQgdHJhbnNpdGlvbiB0aW1lLCB5b3UgbXVzdCB1c2UgdGhlIHNhbWVcbiAgICAgKiB0aW1lIHVuaXQgZm9yIGJvdGggcHJvcGVydGllcyAoZWl0aGVyIGluIGRheXMgb3IgYnkgZGF0ZSkuIFRoZVxuICAgICAqIGV4cGlyYXRpb24gdGltZSBtdXN0IGFsc28gYmUgbGF0ZXIgdGhhbiB0aGUgdHJhbnNpdGlvbiB0aW1lLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgTm8gdHJhbnNpdGlvbiBydWxlc1xuICAgICAqL1xuICAgIHRyYW5zaXRpb25zPzogVHJhbnNpdGlvbltdO1xuXG4gICAgLyoqXG4gICAgICogT2JqZWN0IGtleSBwcmVmaXggdGhhdCBpZGVudGlmaWVzIG9uZSBvciBtb3JlIG9iamVjdHMgdG8gd2hpY2ggdGhpcyBydWxlIGFwcGxpZXMuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBSdWxlIGFwcGxpZXMgdG8gYWxsIG9iamVjdHNcbiAgICAgKi9cbiAgICBwcmVmaXg/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgVGFnRmlsdGVyIHByb3BlcnR5IHR5cGUgc3BlY2lmaWVzIHRhZ3MgdG8gdXNlIHRvIGlkZW50aWZ5IGEgc3Vic2V0IG9mIG9iamVjdHMgZm9yIGFuIEFtYXpvbiBTMyBidWNrZXQuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBSdWxlIGFwcGxpZXMgdG8gYWxsIG9iamVjdHNcbiAgICAgKi9cbiAgICB0YWdGaWx0ZXJzPzoge1t0YWc6IHN0cmluZ106IGFueX07XG59XG5cbi8qKlxuICogRGVzY3JpYmVzIHdoZW4gYW4gb2JqZWN0IHRyYW5zaXRpb25zIHRvIGEgc3BlY2lmaWVkIHN0b3JhZ2UgY2xhc3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNpdGlvbiB7XG4gICAgLyoqXG4gICAgICogVGhlIHN0b3JhZ2UgY2xhc3MgdG8gd2hpY2ggeW91IHdhbnQgdGhlIG9iamVjdCB0byB0cmFuc2l0aW9uLlxuICAgICAqL1xuICAgIHN0b3JhZ2VDbGFzczogU3RvcmFnZUNsYXNzO1xuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIHdoZW4gb2JqZWN0cyBhcmUgdHJhbnNpdGlvbmVkIHRvIHRoZSBzcGVjaWZpZWQgc3RvcmFnZSBjbGFzcy5cbiAgICAgKlxuICAgICAqIFRoZSBkYXRlIHZhbHVlIG11c3QgYmUgaW4gSVNPIDg2MDEgZm9ybWF0LiBUaGUgdGltZSBpcyBhbHdheXMgbWlkbmlnaHQgVVRDLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgTm8gdHJhbnNpdGlvbiBkYXRlLlxuICAgICAqL1xuICAgIHRyYW5zaXRpb25EYXRlPzogRGF0ZTtcblxuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyB0aGUgbnVtYmVyIG9mIGRheXMgYWZ0ZXIgY3JlYXRpb24gd2hlbiBvYmplY3RzIGFyZSB0cmFuc2l0aW9uZWQgdG8gdGhlIHNwZWNpZmllZCBzdG9yYWdlIGNsYXNzLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgTm8gdHJhbnNpdGlvbiBjb3VudC5cbiAgICAgKi9cbiAgICB0cmFuc2l0aW9uSW5EYXlzPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIERlc2NyaWJlcyB3aGVuIG5vbmN1cnJlbnQgdmVyc2lvbnMgdHJhbnNpdGlvbiB0byBhIHNwZWNpZmllZCBzdG9yYWdlIGNsYXNzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5vbmN1cnJlbnRWZXJzaW9uVHJhbnNpdGlvbiB7XG4gICAgLyoqXG4gICAgICogVGhlIHN0b3JhZ2UgY2xhc3MgdG8gd2hpY2ggeW91IHdhbnQgdGhlIG9iamVjdCB0byB0cmFuc2l0aW9uLlxuICAgICAqL1xuICAgIHN0b3JhZ2VDbGFzczogU3RvcmFnZUNsYXNzO1xuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIHRoZSBudW1iZXIgb2YgZGF5cyBhZnRlciBjcmVhdGlvbiB3aGVuIG9iamVjdHMgYXJlIHRyYW5zaXRpb25lZCB0byB0aGUgc3BlY2lmaWVkIHN0b3JhZ2UgY2xhc3MuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBObyB0cmFuc2l0aW9uIGNvdW50LlxuICAgICAqL1xuICAgIHRyYW5zaXRpb25JbkRheXM6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBTdG9yYWdlIGNsYXNzIHRvIG1vdmUgYW4gb2JqZWN0IHRvXG4gKi9cbmV4cG9ydCBlbnVtIFN0b3JhZ2VDbGFzcyB7XG4gICAgLyoqXG4gICAgICogU3RvcmFnZSBjbGFzcyBmb3IgZGF0YSB0aGF0IGlzIGFjY2Vzc2VkIGxlc3MgZnJlcXVlbnRseSwgYnV0IHJlcXVpcmVzIHJhcGlkIGFjY2VzcyB3aGVuIG5lZWRlZC5cbiAgICAgKlxuICAgICAqIEhhcyBsb3dlciBhdmFpbGFiaWxpdHkgdGhhbiBTdGFuZGFyZCBzdG9yYWdlLlxuICAgICAqL1xuICAgIEluZnJlcXVlbnRBY2Nlc3MgPSAnU1RBTkRBUkRfSUEnLFxuXG4gICAgLyoqXG4gICAgICogSW5mcmVxdWVudCBBY2Nlc3MgdGhhdCdzIG9ubHkgc3RvcmVkIGluIG9uZSBhdmFpbGFiaWxpdHkgem9uZS5cbiAgICAgKlxuICAgICAqIEhhcyBsb3dlciBhdmFpbGFiaWxpdHkgdGhhbiBzdGFuZGFyZCBJbmZyZXF1ZW50QWNjZXNzLlxuICAgICAqL1xuICAgIE9uZVpvbmVJbmZyZXF1ZW50QWNjZXNzID0gJ09ORVpPTkVfSUEnLFxuXG4gICAgLyoqXG4gICAgICogU3RvcmFnZSBjbGFzcyBmb3IgbG9uZy10ZXJtIGFyY2hpdmFsIHRoYXQgY2FuIHRha2UgYmV0d2VlbiBtaW51dGVzIGFuZCBob3VycyB0byBhY2Nlc3MuXG4gICAgICovXG4gICAgR2xhY2llciA9ICdHTEFDSUVSJ1xufSJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInJ1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFpSkE7O0dBRUc7QUFDSCxJQUFZLFlBbUJYO0FBbkJELFdBQVksWUFBWTtJQUN0Qjs7OztPQUlHO0lBQ0gsZ0RBQWdDLENBQUE7SUFFaEM7Ozs7T0FJRztJQUNILHNEQUFzQyxDQUFBO0lBRXRDOztPQUVHO0lBQ0gsbUNBQW1CLENBQUE7QUFDckIsQ0FBQyxFQW5CVyxZQUFZLEdBQVosb0JBQVksS0FBWixvQkFBWSxRQW1CdkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIERlY2xhcmF0aW9uIG9mIGEgTGlmZSBjeWNsZSBydWxlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGlmZWN5Y2xlUnVsZSB7XG4gIC8qKlxuICAgKiBBIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGlzIHJ1bGUuIFRoZSB2YWx1ZSBjYW5ub3QgYmUgbW9yZSB0aGFuIDI1NSBjaGFyYWN0ZXJzLlxuICAgKi9cbiAgaWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhpcyBydWxlIGlzIGVuYWJsZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIGVuYWJsZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYSBsaWZlY3ljbGUgcnVsZSB0aGF0IGFib3J0cyBpbmNvbXBsZXRlIG11bHRpcGFydCB1cGxvYWRzIHRvIGFuIEFtYXpvbiBTMyBidWNrZXQuXG4gICAqXG4gICAqIFRoZSBBYm9ydEluY29tcGxldGVNdWx0aXBhcnRVcGxvYWQgcHJvcGVydHkgdHlwZSBjcmVhdGVzIGEgbGlmZWN5Y2xlXG4gICAqIHJ1bGUgdGhhdCBhYm9ydHMgaW5jb21wbGV0ZSBtdWx0aXBhcnQgdXBsb2FkcyB0byBhbiBBbWF6b24gUzMgYnVja2V0LlxuICAgKiBXaGVuIEFtYXpvbiBTMyBhYm9ydHMgYSBtdWx0aXBhcnQgdXBsb2FkLCBpdCBkZWxldGVzIGFsbCBwYXJ0c1xuICAgKiBhc3NvY2lhdGVkIHdpdGggdGhlIG11bHRpcGFydCB1cGxvYWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IEluY29tcGxldGUgdXBsb2FkcyBhcmUgbmV2ZXIgYWJvcnRlZFxuICAgKi9cbiAgYWJvcnRJbmNvbXBsZXRlTXVsdGlwYXJ0VXBsb2FkQWZ0ZXJEYXlzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hlbiBvYmplY3RzIGFyZSBkZWxldGVkIGZyb20gQW1hem9uIFMzIGFuZCBBbWF6b24gR2xhY2llci5cbiAgICpcbiAgICogVGhlIGRhdGUgdmFsdWUgbXVzdCBiZSBpbiBJU08gODYwMSBmb3JtYXQuIFRoZSB0aW1lIGlzIGFsd2F5cyBtaWRuaWdodCBVVEMuXG4gICAqXG4gICAqIElmIHlvdSBzcGVjaWZ5IGFuIGV4cGlyYXRpb24gYW5kIHRyYW5zaXRpb24gdGltZSwgeW91IG11c3QgdXNlIHRoZSBzYW1lXG4gICAqIHRpbWUgdW5pdCBmb3IgYm90aCBwcm9wZXJ0aWVzIChlaXRoZXIgaW4gZGF5cyBvciBieSBkYXRlKS4gVGhlXG4gICAqIGV4cGlyYXRpb24gdGltZSBtdXN0IGFsc28gYmUgbGF0ZXIgdGhhbiB0aGUgdHJhbnNpdGlvbiB0aW1lLlxuICAgKlxuICAgKiBAZGVmYXVsdCBObyBleHBpcmF0aW9uIGRhdGVcbiAgICovXG4gIGV4cGlyYXRpb25EYXRlPzogRGF0ZTtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHRoZSBudW1iZXIgb2YgZGF5cyBhZnRlciBjcmVhdGlvbiB3aGVuIG9iamVjdHMgYXJlIGRlbGV0ZWQgZnJvbSBBbWF6b24gUzMgYW5kIEFtYXpvbiBHbGFjaWVyLlxuICAgKlxuICAgKiBJZiB5b3Ugc3BlY2lmeSBhbiBleHBpcmF0aW9uIGFuZCB0cmFuc2l0aW9uIHRpbWUsIHlvdSBtdXN0IHVzZSB0aGUgc2FtZVxuICAgKiB0aW1lIHVuaXQgZm9yIGJvdGggcHJvcGVydGllcyAoZWl0aGVyIGluIGRheXMgb3IgYnkgZGF0ZSkuIFRoZVxuICAgKiBleHBpcmF0aW9uIHRpbWUgbXVzdCBhbHNvIGJlIGxhdGVyIHRoYW4gdGhlIHRyYW5zaXRpb24gdGltZS5cbiAgICpcbiAgICogQGRlZmF1bHQgTm8gZXhwaXJhdGlvbiB0aW1lb3V0XG4gICAqL1xuICBleHBpcmF0aW9uSW5EYXlzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaW1lIGJldHdlZW4gd2hlbiBhIG5ldyB2ZXJzaW9uIG9mIHRoZSBvYmplY3QgaXMgdXBsb2FkZWQgdG8gdGhlIGJ1Y2tldCBhbmQgd2hlbiBvbGQgdmVyc2lvbnMgb2YgdGhlIG9iamVjdCBleHBpcmUuXG4gICAqXG4gICAqIEZvciBidWNrZXRzIHdpdGggdmVyc2lvbmluZyBlbmFibGVkIChvciBzdXNwZW5kZWQpLCBzcGVjaWZpZXMgdGhlIHRpbWUsXG4gICAqIGluIGRheXMsIGJldHdlZW4gd2hlbiBhIG5ldyB2ZXJzaW9uIG9mIHRoZSBvYmplY3QgaXMgdXBsb2FkZWQgdG8gdGhlXG4gICAqIGJ1Y2tldCBhbmQgd2hlbiBvbGQgdmVyc2lvbnMgb2YgdGhlIG9iamVjdCBleHBpcmUuIFdoZW4gb2JqZWN0IHZlcnNpb25zXG4gICAqIGV4cGlyZSwgQW1hem9uIFMzIHBlcm1hbmVudGx5IGRlbGV0ZXMgdGhlbS4gSWYgeW91IHNwZWNpZnkgYSB0cmFuc2l0aW9uXG4gICAqIGFuZCBleHBpcmF0aW9uIHRpbWUsIHRoZSBleHBpcmF0aW9uIHRpbWUgbXVzdCBiZSBsYXRlciB0aGFuIHRoZVxuICAgKiB0cmFuc2l0aW9uIHRpbWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IE5vIG5vbmN1cnJlbnQgdmVyc2lvbiBleHBpcmF0aW9uXG4gICAqL1xuICBub25jdXJyZW50VmVyc2lvbkV4cGlyYXRpb25JbkRheXM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE9uZSBvciBtb3JlIHRyYW5zaXRpb24gcnVsZXMgdGhhdCBzcGVjaWZ5IHdoZW4gbm9uLWN1cnJlbnQgb2JqZWN0cyB0cmFuc2l0aW9uIHRvIGEgc3BlY2lmaWVkIHN0b3JhZ2UgY2xhc3MuXG4gICAqXG4gICAqIE9ubHkgZm9yIGZvciBidWNrZXRzIHdpdGggdmVyc2lvbmluZyBlbmFibGVkIChvciBzdXNwZW5kZWQpLlxuICAgKlxuICAgKiBJZiB5b3Ugc3BlY2lmeSBhIHRyYW5zaXRpb24gYW5kIGV4cGlyYXRpb24gdGltZSwgdGhlIGV4cGlyYXRpb24gdGltZVxuICAgKiBtdXN0IGJlIGxhdGVyIHRoYW4gdGhlIHRyYW5zaXRpb24gdGltZS5cbiAgICovXG4gIG5vbmN1cnJlbnRWZXJzaW9uVHJhbnNpdGlvbnM/OiBOb25jdXJyZW50VmVyc2lvblRyYW5zaXRpb25bXTtcblxuICAvKipcbiAgICogT25lIG9yIG1vcmUgdHJhbnNpdGlvbiBydWxlcyB0aGF0IHNwZWNpZnkgd2hlbiBhbiBvYmplY3QgdHJhbnNpdGlvbnMgdG8gYSBzcGVjaWZpZWQgc3RvcmFnZSBjbGFzcy5cbiAgICpcbiAgICogSWYgeW91IHNwZWNpZnkgYW4gZXhwaXJhdGlvbiBhbmQgdHJhbnNpdGlvbiB0aW1lLCB5b3UgbXVzdCB1c2UgdGhlIHNhbWVcbiAgICogdGltZSB1bml0IGZvciBib3RoIHByb3BlcnRpZXMgKGVpdGhlciBpbiBkYXlzIG9yIGJ5IGRhdGUpLiBUaGVcbiAgICogZXhwaXJhdGlvbiB0aW1lIG11c3QgYWxzbyBiZSBsYXRlciB0aGFuIHRoZSB0cmFuc2l0aW9uIHRpbWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IE5vIHRyYW5zaXRpb24gcnVsZXNcbiAgICovXG4gIHRyYW5zaXRpb25zPzogVHJhbnNpdGlvbltdO1xuXG4gIC8qKlxuICAgKiBPYmplY3Qga2V5IHByZWZpeCB0aGF0IGlkZW50aWZpZXMgb25lIG9yIG1vcmUgb2JqZWN0cyB0byB3aGljaCB0aGlzIHJ1bGUgYXBwbGllcy5cbiAgICpcbiAgICogQGRlZmF1bHQgUnVsZSBhcHBsaWVzIHRvIGFsbCBvYmplY3RzXG4gICAqL1xuICBwcmVmaXg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBUYWdGaWx0ZXIgcHJvcGVydHkgdHlwZSBzcGVjaWZpZXMgdGFncyB0byB1c2UgdG8gaWRlbnRpZnkgYSBzdWJzZXQgb2Ygb2JqZWN0cyBmb3IgYW4gQW1hem9uIFMzIGJ1Y2tldC5cbiAgICpcbiAgICogQGRlZmF1bHQgUnVsZSBhcHBsaWVzIHRvIGFsbCBvYmplY3RzXG4gICAqL1xuICB0YWdGaWx0ZXJzPzoge1t0YWc6IHN0cmluZ106IGFueX07XG59XG5cbi8qKlxuICogRGVzY3JpYmVzIHdoZW4gYW4gb2JqZWN0IHRyYW5zaXRpb25zIHRvIGEgc3BlY2lmaWVkIHN0b3JhZ2UgY2xhc3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNpdGlvbiB7XG4gIC8qKlxuICAgKiBUaGUgc3RvcmFnZSBjbGFzcyB0byB3aGljaCB5b3Ugd2FudCB0aGUgb2JqZWN0IHRvIHRyYW5zaXRpb24uXG4gICAqL1xuICBzdG9yYWdlQ2xhc3M6IFN0b3JhZ2VDbGFzcztcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZW4gb2JqZWN0cyBhcmUgdHJhbnNpdGlvbmVkIHRvIHRoZSBzcGVjaWZpZWQgc3RvcmFnZSBjbGFzcy5cbiAgICpcbiAgICogVGhlIGRhdGUgdmFsdWUgbXVzdCBiZSBpbiBJU08gODYwMSBmb3JtYXQuIFRoZSB0aW1lIGlzIGFsd2F5cyBtaWRuaWdodCBVVEMuXG4gICAqXG4gICAqIEBkZWZhdWx0IE5vIHRyYW5zaXRpb24gZGF0ZS5cbiAgICovXG4gIHRyYW5zaXRpb25EYXRlPzogRGF0ZTtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHRoZSBudW1iZXIgb2YgZGF5cyBhZnRlciBjcmVhdGlvbiB3aGVuIG9iamVjdHMgYXJlIHRyYW5zaXRpb25lZCB0byB0aGUgc3BlY2lmaWVkIHN0b3JhZ2UgY2xhc3MuXG4gICAqXG4gICAqIEBkZWZhdWx0IE5vIHRyYW5zaXRpb24gY291bnQuXG4gICAqL1xuICB0cmFuc2l0aW9uSW5EYXlzPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIERlc2NyaWJlcyB3aGVuIG5vbmN1cnJlbnQgdmVyc2lvbnMgdHJhbnNpdGlvbiB0byBhIHNwZWNpZmllZCBzdG9yYWdlIGNsYXNzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5vbmN1cnJlbnRWZXJzaW9uVHJhbnNpdGlvbiB7XG4gIC8qKlxuICAgKiBUaGUgc3RvcmFnZSBjbGFzcyB0byB3aGljaCB5b3Ugd2FudCB0aGUgb2JqZWN0IHRvIHRyYW5zaXRpb24uXG4gICAqL1xuICBzdG9yYWdlQ2xhc3M6IFN0b3JhZ2VDbGFzcztcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHRoZSBudW1iZXIgb2YgZGF5cyBhZnRlciBjcmVhdGlvbiB3aGVuIG9iamVjdHMgYXJlIHRyYW5zaXRpb25lZCB0byB0aGUgc3BlY2lmaWVkIHN0b3JhZ2UgY2xhc3MuXG4gICAqXG4gICAqIEBkZWZhdWx0IE5vIHRyYW5zaXRpb24gY291bnQuXG4gICAqL1xuICB0cmFuc2l0aW9uSW5EYXlzOiBudW1iZXI7XG59XG5cbi8qKlxuICogU3RvcmFnZSBjbGFzcyB0byBtb3ZlIGFuIG9iamVjdCB0b1xuICovXG5leHBvcnQgZW51bSBTdG9yYWdlQ2xhc3Mge1xuICAvKipcbiAgICogU3RvcmFnZSBjbGFzcyBmb3IgZGF0YSB0aGF0IGlzIGFjY2Vzc2VkIGxlc3MgZnJlcXVlbnRseSwgYnV0IHJlcXVpcmVzIHJhcGlkIGFjY2VzcyB3aGVuIG5lZWRlZC5cbiAgICpcbiAgICogSGFzIGxvd2VyIGF2YWlsYWJpbGl0eSB0aGFuIFN0YW5kYXJkIHN0b3JhZ2UuXG4gICAqL1xuICBJbmZyZXF1ZW50QWNjZXNzID0gJ1NUQU5EQVJEX0lBJyxcblxuICAvKipcbiAgICogSW5mcmVxdWVudCBBY2Nlc3MgdGhhdCdzIG9ubHkgc3RvcmVkIGluIG9uZSBhdmFpbGFiaWxpdHkgem9uZS5cbiAgICpcbiAgICogSGFzIGxvd2VyIGF2YWlsYWJpbGl0eSB0aGFuIHN0YW5kYXJkIEluZnJlcXVlbnRBY2Nlc3MuXG4gICAqL1xuICBPbmVab25lSW5mcmVxdWVudEFjY2VzcyA9ICdPTkVaT05FX0lBJyxcblxuICAvKipcbiAgICogU3RvcmFnZSBjbGFzcyBmb3IgbG9uZy10ZXJtIGFyY2hpdmFsIHRoYXQgY2FuIHRha2UgYmV0d2VlbiBtaW51dGVzIGFuZCBob3VycyB0byBhY2Nlc3MuXG4gICAqL1xuICBHbGFjaWVyID0gJ0dMQUNJRVInXG59XG4iXX0=

@@ -111,8 +111,9 @@ import cdk = require('@aws-cdk/cdk');

*
* @param parent the ``cdk.Construct`` this ``BucketResource`` is a part of
* @param name the name of the resource in the ``cdk.Construct`` tree
* @param parent the ``cdk.Construct`` this ``BucketResource`` is a part of
* @param name the name of the resource in the ``cdk.Construct`` tree
* @param properties the properties of this ``BucketResource``
*/
constructor(parent: cdk.Construct, name: string, properties?: BucketResourceProps);
protected renderProperties(): {
readonly propertyOverrides: BucketResourceProps;
protected renderProperties(properties: any): {
[key: string]: any;

@@ -942,8 +943,9 @@ };

*
* @param parent the ``cdk.Construct`` this ``BucketPolicyResource`` is a part of
* @param name the name of the resource in the ``cdk.Construct`` tree
* @param parent the ``cdk.Construct`` this ``BucketPolicyResource`` is a part of
* @param name the name of the resource in the ``cdk.Construct`` tree
* @param properties the properties of this ``BucketPolicyResource``
*/
constructor(parent: cdk.Construct, name: string, properties: BucketPolicyResourceProps);
protected renderProperties(): {
readonly propertyOverrides: BucketPolicyResourceProps;
protected renderProperties(properties: any): {
[key: string]: any;

@@ -950,0 +952,0 @@ };

@@ -45,2 +45,2 @@ "use strict";

exports.parseBucketName = parseBucketName;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxvQ0FBcUM7QUFHckMsU0FBZ0IsY0FBYyxDQUFDLEtBQXFCO0lBRWhELDZDQUE2QztJQUM3QyxJQUFJLEtBQUssQ0FBQyxTQUFTLEVBQUU7UUFDakIsT0FBTyxLQUFLLENBQUMsU0FBUyxDQUFDO0tBQzFCO0lBRUQsSUFBSSxLQUFLLENBQUMsVUFBVSxFQUFFO1FBQ2xCLE9BQU8sR0FBRyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUM7WUFDL0Isc0RBQXNEO1lBQ3RELDZEQUE2RDtZQUM3RCxNQUFNLEVBQUUsRUFBRTtZQUNWLE9BQU8sRUFBRSxFQUFFO1lBQ1gsT0FBTyxFQUFFLElBQUk7WUFDYixRQUFRLEVBQUUsS0FBSyxDQUFDLFVBQVU7U0FDN0IsQ0FBQyxDQUFDO0tBQ047SUFFRCxNQUFNLElBQUksS0FBSyxDQUFDLDZFQUE2RSxDQUFDLENBQUM7QUFDbkcsQ0FBQztBQW5CRCx3Q0FtQkM7QUFFRCxTQUFnQixlQUFlLENBQUMsS0FBcUI7SUFFakQsOENBQThDO0lBQzlDLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRTtRQUNsQixPQUFPLEtBQUssQ0FBQyxVQUFVLENBQUM7S0FDM0I7SUFFRCxtRUFBbUU7SUFDbkUsSUFBSSxLQUFLLENBQUMsU0FBUyxFQUFFO1FBRWpCLE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzlDLElBQUksT0FBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLFFBQVEsRUFBRTtZQUMvQixNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNoRCxJQUFJLFVBQVUsQ0FBQyxPQUFPLEtBQUssSUFBSSxFQUFFO2dCQUM3QixNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxHQUFHLFFBQVEsQ0FBQyxDQUFDO2FBQ3RFO1lBQ0QsSUFBSSxVQUFVLENBQUMsWUFBWSxFQUFFO2dCQUN6QixNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7YUFDekQ7WUFDRCxPQUFPLFVBQVUsQ0FBQyxRQUFRLENBQUM7U0FDOUI7S0FDSjtJQUVELDhDQUE4QztJQUM5QyxPQUFPLFNBQVMsQ0FBQztBQUNyQixDQUFDO0FBekJELDBDQXlCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCB7IEJ1Y2tldFJlZlByb3BzIH0gZnJvbSAnLi9idWNrZXQnO1xuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VCdWNrZXRBcm4ocHJvcHM6IEJ1Y2tldFJlZlByb3BzKTogc3RyaW5nIHtcblxuICAgIC8vIGlmIHdlIGhhdmUgYW4gZXhwbGljaXQgYnVja2V0IEFSTiwgdXNlIGl0LlxuICAgIGlmIChwcm9wcy5idWNrZXRBcm4pIHtcbiAgICAgICAgcmV0dXJuIHByb3BzLmJ1Y2tldEFybjtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMuYnVja2V0TmFtZSkge1xuICAgICAgICByZXR1cm4gY2RrLkFyblV0aWxzLmZyb21Db21wb25lbnRzKHtcbiAgICAgICAgICAgIC8vIFMzIEJ1Y2tldCBuYW1lcyBhcmUgZ2xvYmFsbHkgdW5pcXVlIGluIGEgcGFydGl0aW9uLFxuICAgICAgICAgICAgLy8gYW5kIHNvIHRoZWlyIEFSTnMgaGF2ZSBlbXB0eSByZWdpb24gYW5kIGFjY291bnQgY29tcG9uZW50c1xuICAgICAgICAgICAgcmVnaW9uOiAnJyxcbiAgICAgICAgICAgIGFjY291bnQ6ICcnLFxuICAgICAgICAgICAgc2VydmljZTogJ3MzJyxcbiAgICAgICAgICAgIHJlc291cmNlOiBwcm9wcy5idWNrZXROYW1lXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGRldGVybWluZSBidWNrZXQgQVJOLiBBdCBsZWFzdCBgYnVja2V0QXJuYCBvciBgYnVja2V0TmFtZWAgaXMgbmVlZGVkJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUJ1Y2tldE5hbWUocHJvcHM6IEJ1Y2tldFJlZlByb3BzKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcblxuICAgIC8vIGlmIHdlIGhhdmUgYW4gZXhwbGljaXQgYnVja2V0IG5hbWUsIHVzZSBpdC5cbiAgICBpZiAocHJvcHMuYnVja2V0TmFtZSkge1xuICAgICAgICByZXR1cm4gcHJvcHMuYnVja2V0TmFtZTtcbiAgICB9XG5cbiAgICAvLyBpZiB3ZSBoYXZlIGEgc3RyaW5nIGFybiwgd2UgY2FuIGV4dHJhY3QgdGhlIGJ1Y2tldCBuYW1lIGZyb20gaXQuXG4gICAgaWYgKHByb3BzLmJ1Y2tldEFybikge1xuXG4gICAgICAgIGNvbnN0IHJlc29sdmVkID0gY2RrLnJlc29sdmUocHJvcHMuYnVja2V0QXJuKTtcbiAgICAgICAgaWYgKHR5cGVvZihyZXNvbHZlZCkgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICBjb25zdCBjb21wb25lbnRzID0gY2RrLkFyblV0aWxzLnBhcnNlKHJlc29sdmVkKTtcbiAgICAgICAgICAgIGlmIChjb21wb25lbnRzLnNlcnZpY2UgIT09ICdzMycpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgQVJOLiBFeHBlY3RpbmcgXCJzM1wiIHNlcnZpY2U6JyArIHJlc29sdmVkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChjb21wb25lbnRzLnJlc291cmNlTmFtZSkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQnVja2V0IEFSTiBtdXN0IG5vdCBjb250YWluIGEgcGF0aGApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGNvbXBvbmVudHMucmVzb3VyY2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBubyBidWNrZXQgbmFtZSBpcyBva2F5IHNpbmNlIGl0J3Mgb3B0aW9uYWwuXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxvQ0FBcUM7QUFHckMsU0FBZ0IsY0FBYyxDQUFDLEtBQXFCO0lBRWxELDZDQUE2QztJQUM3QyxJQUFJLEtBQUssQ0FBQyxTQUFTLEVBQUU7UUFDbkIsT0FBTyxLQUFLLENBQUMsU0FBUyxDQUFDO0tBQ3hCO0lBRUQsSUFBSSxLQUFLLENBQUMsVUFBVSxFQUFFO1FBQ3BCLE9BQU8sR0FBRyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUM7WUFDakMsc0RBQXNEO1lBQ3RELDZEQUE2RDtZQUM3RCxNQUFNLEVBQUUsRUFBRTtZQUNWLE9BQU8sRUFBRSxFQUFFO1lBQ1gsT0FBTyxFQUFFLElBQUk7WUFDYixRQUFRLEVBQUUsS0FBSyxDQUFDLFVBQVU7U0FDM0IsQ0FBQyxDQUFDO0tBQ0o7SUFFRCxNQUFNLElBQUksS0FBSyxDQUFDLDZFQUE2RSxDQUFDLENBQUM7QUFDakcsQ0FBQztBQW5CRCx3Q0FtQkM7QUFFRCxTQUFnQixlQUFlLENBQUMsS0FBcUI7SUFFbkQsOENBQThDO0lBQzlDLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRTtRQUNwQixPQUFPLEtBQUssQ0FBQyxVQUFVLENBQUM7S0FDekI7SUFFRCxtRUFBbUU7SUFDbkUsSUFBSSxLQUFLLENBQUMsU0FBUyxFQUFFO1FBRW5CLE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzlDLElBQUksT0FBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLFFBQVEsRUFBRTtZQUNqQyxNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNoRCxJQUFJLFVBQVUsQ0FBQyxPQUFPLEtBQUssSUFBSSxFQUFFO2dCQUMvQixNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxHQUFHLFFBQVEsQ0FBQyxDQUFDO2FBQ3BFO1lBQ0QsSUFBSSxVQUFVLENBQUMsWUFBWSxFQUFFO2dCQUMzQixNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7YUFDdkQ7WUFDRCxPQUFPLFVBQVUsQ0FBQyxRQUFRLENBQUM7U0FDNUI7S0FDRjtJQUVELDhDQUE4QztJQUM5QyxPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDO0FBekJELDBDQXlCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCB7IEJ1Y2tldFJlZlByb3BzIH0gZnJvbSAnLi9idWNrZXQnO1xuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VCdWNrZXRBcm4ocHJvcHM6IEJ1Y2tldFJlZlByb3BzKTogc3RyaW5nIHtcblxuICAvLyBpZiB3ZSBoYXZlIGFuIGV4cGxpY2l0IGJ1Y2tldCBBUk4sIHVzZSBpdC5cbiAgaWYgKHByb3BzLmJ1Y2tldEFybikge1xuICAgIHJldHVybiBwcm9wcy5idWNrZXRBcm47XG4gIH1cblxuICBpZiAocHJvcHMuYnVja2V0TmFtZSkge1xuICAgIHJldHVybiBjZGsuQXJuVXRpbHMuZnJvbUNvbXBvbmVudHMoe1xuICAgICAgLy8gUzMgQnVja2V0IG5hbWVzIGFyZSBnbG9iYWxseSB1bmlxdWUgaW4gYSBwYXJ0aXRpb24sXG4gICAgICAvLyBhbmQgc28gdGhlaXIgQVJOcyBoYXZlIGVtcHR5IHJlZ2lvbiBhbmQgYWNjb3VudCBjb21wb25lbnRzXG4gICAgICByZWdpb246ICcnLFxuICAgICAgYWNjb3VudDogJycsXG4gICAgICBzZXJ2aWNlOiAnczMnLFxuICAgICAgcmVzb3VyY2U6IHByb3BzLmJ1Y2tldE5hbWVcbiAgICB9KTtcbiAgfVxuXG4gIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGRldGVybWluZSBidWNrZXQgQVJOLiBBdCBsZWFzdCBgYnVja2V0QXJuYCBvciBgYnVja2V0TmFtZWAgaXMgbmVlZGVkJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUJ1Y2tldE5hbWUocHJvcHM6IEJ1Y2tldFJlZlByb3BzKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcblxuICAvLyBpZiB3ZSBoYXZlIGFuIGV4cGxpY2l0IGJ1Y2tldCBuYW1lLCB1c2UgaXQuXG4gIGlmIChwcm9wcy5idWNrZXROYW1lKSB7XG4gICAgcmV0dXJuIHByb3BzLmJ1Y2tldE5hbWU7XG4gIH1cblxuICAvLyBpZiB3ZSBoYXZlIGEgc3RyaW5nIGFybiwgd2UgY2FuIGV4dHJhY3QgdGhlIGJ1Y2tldCBuYW1lIGZyb20gaXQuXG4gIGlmIChwcm9wcy5idWNrZXRBcm4pIHtcblxuICAgIGNvbnN0IHJlc29sdmVkID0gY2RrLnJlc29sdmUocHJvcHMuYnVja2V0QXJuKTtcbiAgICBpZiAodHlwZW9mKHJlc29sdmVkKSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGNvbnN0IGNvbXBvbmVudHMgPSBjZGsuQXJuVXRpbHMucGFyc2UocmVzb2x2ZWQpO1xuICAgICAgaWYgKGNvbXBvbmVudHMuc2VydmljZSAhPT0gJ3MzJykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgQVJOLiBFeHBlY3RpbmcgXCJzM1wiIHNlcnZpY2U6JyArIHJlc29sdmVkKTtcbiAgICAgIH1cbiAgICAgIGlmIChjb21wb25lbnRzLnJlc291cmNlTmFtZSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEJ1Y2tldCBBUk4gbXVzdCBub3QgY29udGFpbiBhIHBhdGhgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBjb21wb25lbnRzLnJlc291cmNlO1xuICAgIH1cbiAgfVxuXG4gIC8vIG5vIGJ1Y2tldCBuYW1lIGlzIG9rYXkgc2luY2UgaXQncyBvcHRpb25hbC5cbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cbiJdfQ==
{
"name": "@aws-cdk/aws-s3",
"version": "0.9.2",
"version": "0.10.0",
"description": "CDK Constructs for AWS S3",

@@ -55,16 +55,16 @@ "main": "lib/index.js",

"devDependencies": {
"@aws-cdk/assert": "^0.9.2",
"cdk-build-tools": "^0.9.2",
"cdk-integ-tools": "^0.9.2",
"cfn2ts": "^0.9.2",
"pkglint": "^0.9.2"
"@aws-cdk/assert": "^0.10.0",
"cdk-build-tools": "^0.10.0",
"cdk-integ-tools": "^0.10.0",
"cfn2ts": "^0.10.0",
"pkglint": "^0.10.0"
},
"dependencies": {
"@aws-cdk/aws-codepipeline-api": "^0.9.2",
"@aws-cdk/aws-iam": "^0.9.2",
"@aws-cdk/aws-kms": "^0.9.2",
"@aws-cdk/aws-s3-notifications": "^0.9.2",
"@aws-cdk/cdk": "^0.9.2"
"@aws-cdk/aws-codepipeline-api": "^0.10.0",
"@aws-cdk/aws-iam": "^0.10.0",
"@aws-cdk/aws-kms": "^0.10.0",
"@aws-cdk/aws-s3-notifications": "^0.10.0",
"@aws-cdk/cdk": "^0.10.0"
},
"homepage": "https://github.com/awslabs/aws-cdk"
}

@@ -93,3 +93,3 @@ ## AWS S3 Construct Library

});
const sourceAction = new s3.PipelineSource(this, 'S3Source', {
const sourceAction = new s3.PipelineSourceAction(this, 'S3Source', {
stage: sourceStage,

@@ -96,0 +96,0 @@ bucket: sourceBucket,

@@ -42,2 +42,2 @@ "use strict";

process.stdout.write(app.run());
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVtby5pbXBvcnQtZXhwb3J0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZGVtby5pbXBvcnQtZXhwb3J0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsd0NBQXlDO0FBQ3pDLG9DQUFxQztBQUNyQyw2QkFBOEI7QUFFOUIsMEVBQTBFO0FBQzFFLHdFQUF3RTtBQUN4RSxtQkFBbUI7QUFFbkIsTUFBTSxRQUFTLFNBQVEsR0FBRyxDQUFDLEtBQUs7SUFHNUIsWUFBWSxNQUFlLEVBQUUsSUFBWTtRQUNyQyxLQUFLLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRXBCLE1BQU0sTUFBTSxHQUFHLElBQUksRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDL0MsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDdkMsQ0FBQztDQUNKO0FBTUQsTUFBTSxpQkFBa0IsU0FBUSxHQUFHLENBQUMsU0FBUztJQUN6QyxZQUFZLE1BQXFCLEVBQUUsSUFBWSxFQUFFLEtBQTZCO1FBQzFFLEtBQUssQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFcEIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUMvRSxDQUFDO0NBQ0o7QUFXRCxNQUFNLFFBQVMsU0FBUSxHQUFHLENBQUMsS0FBSztJQUM1QixZQUFZLE1BQWUsRUFBRSxJQUFZLEVBQUUsS0FBb0I7UUFDM0QsS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVwQixNQUFNLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzFDLE1BQU0sVUFBVSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxjQUFjLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRS9FLElBQUksaUJBQWlCLENBQUMsSUFBSSxFQUFFLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO1FBRXJFLFVBQVUsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEMsQ0FBQztDQUNKO0FBRUQsMERBQTBEO0FBQzFELDRFQUE0RTtBQUM1RSwyRUFBMkU7QUFDM0UsZ0ZBQWdGO0FBQ2hGLG9EQUFvRDtBQUVwRCxNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBRXRDLE1BQU0sUUFBUSxHQUFHLElBQUksUUFBUSxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsQ0FBQztBQUU5QyxJQUFJLFFBQVEsQ0FBQyxHQUFHLEVBQUUsU0FBUyxFQUFFO0lBQ3pCLGFBQWEsRUFBRSxRQUFRLENBQUMsV0FBVztDQUN0QyxDQUFDLENBQUM7QUFFSCxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBpYW0gPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtaWFtJyk7XG5pbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5pbXBvcnQgczMgPSByZXF1aXJlKCcuLi9saWInKTtcblxuLy8gRGVmaW5lIGEgc3RhY2sgd2l0aCBhbiBTMyBidWNrZXQgYW5kIGV4cG9ydCBpdCB1c2luZyBgYnVja2V0LmV4cG9ydCgpYC5cbi8vIGJ1Y2tldC5leHBvcnQgcmV0dXJucyBhIGBCdWNrZXRSZWZgIG9iamVjdCB3aGljaCBjYW4gbGF0ZXIgYmUgdXNlZCBpblxuLy8gYEJ1Y2tldC5pbXBvcnRgLlxuXG5jbGFzcyBQcm9kdWNlciBleHRlbmRzIGNkay5TdGFjayB7XG4gICAgcHVibGljIHJlYWRvbmx5IG15QnVja2V0UmVmOiBzMy5CdWNrZXRSZWZQcm9wcztcblxuICAgIGNvbnN0cnVjdG9yKHBhcmVudDogY2RrLkFwcCwgbmFtZTogc3RyaW5nKSB7XG4gICAgICAgIHN1cGVyKHBhcmVudCwgbmFtZSk7XG5cbiAgICAgICAgY29uc3QgYnVja2V0ID0gbmV3IHMzLkJ1Y2tldCh0aGlzLCAnTXlCdWNrZXQnKTtcbiAgICAgICAgdGhpcy5teUJ1Y2tldFJlZiA9IGJ1Y2tldC5leHBvcnQoKTtcbiAgICB9XG59XG5cbmludGVyZmFjZSBDb25zdW1lckNvbnN0cnVjdFByb3BzIHtcbiAgICBidWNrZXQ6IHMzLkJ1Y2tldFJlZjtcbn1cblxuY2xhc3MgQ29uc3VtZXJDb25zdHJ1Y3QgZXh0ZW5kcyBjZGsuQ29uc3RydWN0IHtcbiAgICBjb25zdHJ1Y3RvcihwYXJlbnQ6IGNkay5Db25zdHJ1Y3QsIG5hbWU6IHN0cmluZywgcHJvcHM6IENvbnN1bWVyQ29uc3RydWN0UHJvcHMpIHtcbiAgICAgICAgc3VwZXIocGFyZW50LCBuYW1lKTtcblxuICAgICAgICBwcm9wcy5idWNrZXQuYWRkVG9SZXNvdXJjZVBvbGljeShuZXcgY2RrLlBvbGljeVN0YXRlbWVudCgpLmFkZEFjdGlvbignKicpKTtcbiAgICB9XG59XG5cbi8vIERlZmluZSBhIHN0YWNrIHRoYXQgcmVxdWlyZXMgYSBCdWNrZXRSZWYgYXMgYW4gaW5wdXQgYW5kIHVzZXMgYEJ1Y2tldC5pbXBvcnRgXG4vLyB0byBjcmVhdGUgYSBgQnVja2V0YCBvYmplY3QgdGhhdCByZXByZXNlbnRzIHRoaXMgZXh0ZXJuYWwgYnVja2V0LiBHcmFudCBhXG4vLyB1c2VyIHByaW5jaXBhbCBjcmVhdGVkIHdpdGhpbiB0aGlzIGNvbnN1bWluZyBzdGFjayByZWFkL3dyaXRlIHBlcm1pc3Npb25zIHRvXG4vLyB0aGlzIGJ1Y2tldCBhbmQgY29udGVudHMuXG5cbmludGVyZmFjZSBDb25zdW1lclByb3BzIHtcbiAgICB1c2VyQnVja2V0UmVmOiBzMy5CdWNrZXRSZWZQcm9wcztcbn1cblxuY2xhc3MgQ29uc3VtZXIgZXh0ZW5kcyBjZGsuU3RhY2sge1xuICAgIGNvbnN0cnVjdG9yKHBhcmVudDogY2RrLkFwcCwgbmFtZTogc3RyaW5nLCBwcm9wczogQ29uc3VtZXJQcm9wcykge1xuICAgICAgICBzdXBlcihwYXJlbnQsIG5hbWUpO1xuXG4gICAgICAgIGNvbnN0IHVzZXIgPSBuZXcgaWFtLlVzZXIodGhpcywgJ015VXNlcicpO1xuICAgICAgICBjb25zdCB1c2VyQnVja2V0ID0gczMuQnVja2V0LmltcG9ydCh0aGlzLCAnSW1wb3J0QnVja2V0JywgcHJvcHMudXNlckJ1Y2tldFJlZik7XG5cbiAgICAgICAgbmV3IENvbnN1bWVyQ29uc3RydWN0KHRoaXMsICdTb21lQ29uc3RydWN0JywgeyBidWNrZXQ6IHVzZXJCdWNrZXQgfSk7XG5cbiAgICAgICAgdXNlckJ1Y2tldC5ncmFudFJlYWRXcml0ZSh1c2VyKTtcbiAgICB9XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE5PVEU6IFRvIGRlcGxveSB0aGlzLCBqdXN0IHJ1biBgY2RrIC1hIFwibm9kZSBmaWxlLmpzXCIgZGVwbG95YC4gVGhlIHN0YWNrc1xuLy8gd2lsbCBiZSBkZXBsb3llZCBJTi1PUkRFUiB3aGljaCBtZWFucyB0aGF0IHRoZSBwcm9kdWNlciB3aWxsIGJlIGRlcGxveWVkXG4vLyBmaXJzdC4gSW4gdGhlIGZ1dHVyZSB0aGUgdG9vbGtpdCB3aWxsIGJlIGFibGUgdG8gdW5kZXJzdGFuZCB0aGUgcmVsYXRpb25zaGlwc1xuLy8gYmV0d2VlbiB0aGUgc3RhY2tzIGFuZCB3aWxsIGRlcGxveSB0aGVtIGluIG9yZGVyLlxuXG5jb25zdCBhcHAgPSBuZXcgY2RrLkFwcChwcm9jZXNzLmFyZ3YpO1xuXG5jb25zdCBwcm9kdWNlciA9IG5ldyBQcm9kdWNlcihhcHAsICdwcm9kdWNlJyk7XG5cbm5ldyBDb25zdW1lcihhcHAsICdjb25zdW1lJywge1xuICAgIHVzZXJCdWNrZXRSZWY6IHByb2R1Y2VyLm15QnVja2V0UmVmXG59KTtcblxucHJvY2Vzcy5zdGRvdXQud3JpdGUoYXBwLnJ1bigpKTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVtby5pbXBvcnQtZXhwb3J0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZGVtby5pbXBvcnQtZXhwb3J0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsd0NBQXlDO0FBQ3pDLG9DQUFxQztBQUNyQyw2QkFBOEI7QUFFOUIsMEVBQTBFO0FBQzFFLHdFQUF3RTtBQUN4RSxtQkFBbUI7QUFFbkIsTUFBTSxRQUFTLFNBQVEsR0FBRyxDQUFDLEtBQUs7SUFHOUIsWUFBWSxNQUFlLEVBQUUsSUFBWTtRQUN2QyxLQUFLLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRXBCLE1BQU0sTUFBTSxHQUFHLElBQUksRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDL0MsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDckMsQ0FBQztDQUNGO0FBTUQsTUFBTSxpQkFBa0IsU0FBUSxHQUFHLENBQUMsU0FBUztJQUMzQyxZQUFZLE1BQXFCLEVBQUUsSUFBWSxFQUFFLEtBQTZCO1FBQzVFLEtBQUssQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFcEIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM3RSxDQUFDO0NBQ0Y7QUFXRCxNQUFNLFFBQVMsU0FBUSxHQUFHLENBQUMsS0FBSztJQUM5QixZQUFZLE1BQWUsRUFBRSxJQUFZLEVBQUUsS0FBb0I7UUFDN0QsS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVwQixNQUFNLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzFDLE1BQU0sVUFBVSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxjQUFjLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRS9FLElBQUksaUJBQWlCLENBQUMsSUFBSSxFQUFFLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO1FBRXJFLFVBQVUsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQztDQUNGO0FBRUQsMERBQTBEO0FBQzFELDRFQUE0RTtBQUM1RSwyRUFBMkU7QUFDM0UsZ0ZBQWdGO0FBQ2hGLG9EQUFvRDtBQUVwRCxNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBRXRDLE1BQU0sUUFBUSxHQUFHLElBQUksUUFBUSxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsQ0FBQztBQUU5QyxJQUFJLFFBQVEsQ0FBQyxHQUFHLEVBQUUsU0FBUyxFQUFFO0lBQzNCLGFBQWEsRUFBRSxRQUFRLENBQUMsV0FBVztDQUNwQyxDQUFDLENBQUM7QUFFSCxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBpYW0gPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtaWFtJyk7XG5pbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5pbXBvcnQgczMgPSByZXF1aXJlKCcuLi9saWInKTtcblxuLy8gRGVmaW5lIGEgc3RhY2sgd2l0aCBhbiBTMyBidWNrZXQgYW5kIGV4cG9ydCBpdCB1c2luZyBgYnVja2V0LmV4cG9ydCgpYC5cbi8vIGJ1Y2tldC5leHBvcnQgcmV0dXJucyBhIGBCdWNrZXRSZWZgIG9iamVjdCB3aGljaCBjYW4gbGF0ZXIgYmUgdXNlZCBpblxuLy8gYEJ1Y2tldC5pbXBvcnRgLlxuXG5jbGFzcyBQcm9kdWNlciBleHRlbmRzIGNkay5TdGFjayB7XG4gIHB1YmxpYyByZWFkb25seSBteUJ1Y2tldFJlZjogczMuQnVja2V0UmVmUHJvcHM7XG5cbiAgY29uc3RydWN0b3IocGFyZW50OiBjZGsuQXBwLCBuYW1lOiBzdHJpbmcpIHtcbiAgICBzdXBlcihwYXJlbnQsIG5hbWUpO1xuXG4gICAgY29uc3QgYnVja2V0ID0gbmV3IHMzLkJ1Y2tldCh0aGlzLCAnTXlCdWNrZXQnKTtcbiAgICB0aGlzLm15QnVja2V0UmVmID0gYnVja2V0LmV4cG9ydCgpO1xuICB9XG59XG5cbmludGVyZmFjZSBDb25zdW1lckNvbnN0cnVjdFByb3BzIHtcbiAgYnVja2V0OiBzMy5CdWNrZXRSZWY7XG59XG5cbmNsYXNzIENvbnN1bWVyQ29uc3RydWN0IGV4dGVuZHMgY2RrLkNvbnN0cnVjdCB7XG4gIGNvbnN0cnVjdG9yKHBhcmVudDogY2RrLkNvbnN0cnVjdCwgbmFtZTogc3RyaW5nLCBwcm9wczogQ29uc3VtZXJDb25zdHJ1Y3RQcm9wcykge1xuICAgIHN1cGVyKHBhcmVudCwgbmFtZSk7XG5cbiAgICBwcm9wcy5idWNrZXQuYWRkVG9SZXNvdXJjZVBvbGljeShuZXcgY2RrLlBvbGljeVN0YXRlbWVudCgpLmFkZEFjdGlvbignKicpKTtcbiAgfVxufVxuXG4vLyBEZWZpbmUgYSBzdGFjayB0aGF0IHJlcXVpcmVzIGEgQnVja2V0UmVmIGFzIGFuIGlucHV0IGFuZCB1c2VzIGBCdWNrZXQuaW1wb3J0YFxuLy8gdG8gY3JlYXRlIGEgYEJ1Y2tldGAgb2JqZWN0IHRoYXQgcmVwcmVzZW50cyB0aGlzIGV4dGVybmFsIGJ1Y2tldC4gR3JhbnQgYVxuLy8gdXNlciBwcmluY2lwYWwgY3JlYXRlZCB3aXRoaW4gdGhpcyBjb25zdW1pbmcgc3RhY2sgcmVhZC93cml0ZSBwZXJtaXNzaW9ucyB0b1xuLy8gdGhpcyBidWNrZXQgYW5kIGNvbnRlbnRzLlxuXG5pbnRlcmZhY2UgQ29uc3VtZXJQcm9wcyB7XG4gIHVzZXJCdWNrZXRSZWY6IHMzLkJ1Y2tldFJlZlByb3BzO1xufVxuXG5jbGFzcyBDb25zdW1lciBleHRlbmRzIGNkay5TdGFjayB7XG4gIGNvbnN0cnVjdG9yKHBhcmVudDogY2RrLkFwcCwgbmFtZTogc3RyaW5nLCBwcm9wczogQ29uc3VtZXJQcm9wcykge1xuICAgIHN1cGVyKHBhcmVudCwgbmFtZSk7XG5cbiAgICBjb25zdCB1c2VyID0gbmV3IGlhbS5Vc2VyKHRoaXMsICdNeVVzZXInKTtcbiAgICBjb25zdCB1c2VyQnVja2V0ID0gczMuQnVja2V0LmltcG9ydCh0aGlzLCAnSW1wb3J0QnVja2V0JywgcHJvcHMudXNlckJ1Y2tldFJlZik7XG5cbiAgICBuZXcgQ29uc3VtZXJDb25zdHJ1Y3QodGhpcywgJ1NvbWVDb25zdHJ1Y3QnLCB7IGJ1Y2tldDogdXNlckJ1Y2tldCB9KTtcblxuICAgIHVzZXJCdWNrZXQuZ3JhbnRSZWFkV3JpdGUodXNlcik7XG4gIH1cbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTk9URTogVG8gZGVwbG95IHRoaXMsIGp1c3QgcnVuIGBjZGsgLWEgXCJub2RlIGZpbGUuanNcIiBkZXBsb3lgLiBUaGUgc3RhY2tzXG4vLyB3aWxsIGJlIGRlcGxveWVkIElOLU9SREVSIHdoaWNoIG1lYW5zIHRoYXQgdGhlIHByb2R1Y2VyIHdpbGwgYmUgZGVwbG95ZWRcbi8vIGZpcnN0LiBJbiB0aGUgZnV0dXJlIHRoZSB0b29sa2l0IHdpbGwgYmUgYWJsZSB0byB1bmRlcnN0YW5kIHRoZSByZWxhdGlvbnNoaXBzXG4vLyBiZXR3ZWVuIHRoZSBzdGFja3MgYW5kIHdpbGwgZGVwbG95IHRoZW0gaW4gb3JkZXIuXG5cbmNvbnN0IGFwcCA9IG5ldyBjZGsuQXBwKHByb2Nlc3MuYXJndik7XG5cbmNvbnN0IHByb2R1Y2VyID0gbmV3IFByb2R1Y2VyKGFwcCwgJ3Byb2R1Y2UnKTtcblxubmV3IENvbnN1bWVyKGFwcCwgJ2NvbnN1bWUnLCB7XG4gIHVzZXJCdWNrZXRSZWY6IHByb2R1Y2VyLm15QnVja2V0UmVmXG59KTtcblxucHJvY2Vzcy5zdGRvdXQud3JpdGUoYXBwLnJ1bigpKTtcbiJdfQ==

@@ -19,2 +19,2 @@ #!/usr/bin/env node

process.stdout.write(app.run());
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWcuYnVja2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiaW50ZWcuYnVja2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHdDQUF5QztBQUN6QyxvQ0FBcUM7QUFDckMsNkJBQThCO0FBRTlCLE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7QUFFdEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxZQUFZLENBQUMsQ0FBQztBQUUvQyxNQUFNLE1BQU0sR0FBRyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRTtJQUM1QyxVQUFVLEVBQUUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLEdBQUc7Q0FDdEMsQ0FBQyxDQUFDO0FBRUgsTUFBTSx3QkFBd0IsR0FBRyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLGVBQWUsRUFBRTtJQUNuRSxVQUFVLEVBQUUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLFNBQVM7Q0FDNUMsQ0FBQyxDQUFDO0FBRUgsTUFBTSxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztBQUMzQyxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQzVCLHdCQUF3QixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUV6QyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIiMhL3Vzci9iaW4vZW52IG5vZGVcbmltcG9ydCBpYW0gPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtaWFtJyk7XG5pbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5pbXBvcnQgczMgPSByZXF1aXJlKCcuLi9saWInKTtcblxuY29uc3QgYXBwID0gbmV3IGNkay5BcHAocHJvY2Vzcy5hcmd2KTtcblxuY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKGFwcCwgJ2F3cy1jZGstczMnKTtcblxuY29uc3QgYnVja2V0ID0gbmV3IHMzLkJ1Y2tldChzdGFjaywgJ015QnVja2V0Jywge1xuICAgIGVuY3J5cHRpb246IHMzLkJ1Y2tldEVuY3J5cHRpb24uS21zXG59KTtcblxuY29uc3Qgb3RoZXJ3aXNlRW5jcnlwdGVkQnVja2V0ID0gbmV3IHMzLkJ1Y2tldChzdGFjaywgJ015T3RoZXJCdWNrZXQnLCB7XG4gICAgZW5jcnlwdGlvbjogczMuQnVja2V0RW5jcnlwdGlvbi5TM01hbmFnZWRcbn0pO1xuXG5jb25zdCB1c2VyID0gbmV3IGlhbS5Vc2VyKHN0YWNrLCAnTXlVc2VyJyk7XG5idWNrZXQuZ3JhbnRSZWFkV3JpdGUodXNlcik7XG5vdGhlcndpc2VFbmNyeXB0ZWRCdWNrZXQuZ3JhbnRSZWFkKHVzZXIpO1xuXG5wcm9jZXNzLnN0ZG91dC53cml0ZShhcHAucnVuKCkpO1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWcuYnVja2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiaW50ZWcuYnVja2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHdDQUF5QztBQUN6QyxvQ0FBcUM7QUFDckMsNkJBQThCO0FBRTlCLE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7QUFFdEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxZQUFZLENBQUMsQ0FBQztBQUUvQyxNQUFNLE1BQU0sR0FBRyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRTtJQUM5QyxVQUFVLEVBQUUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLEdBQUc7Q0FDcEMsQ0FBQyxDQUFDO0FBRUgsTUFBTSx3QkFBd0IsR0FBRyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLGVBQWUsRUFBRTtJQUNyRSxVQUFVLEVBQUUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLFNBQVM7Q0FDMUMsQ0FBQyxDQUFDO0FBRUgsTUFBTSxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztBQUMzQyxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQzVCLHdCQUF3QixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUV6QyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIiMhL3Vzci9iaW4vZW52IG5vZGVcbmltcG9ydCBpYW0gPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtaWFtJyk7XG5pbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5pbXBvcnQgczMgPSByZXF1aXJlKCcuLi9saWInKTtcblxuY29uc3QgYXBwID0gbmV3IGNkay5BcHAocHJvY2Vzcy5hcmd2KTtcblxuY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKGFwcCwgJ2F3cy1jZGstczMnKTtcblxuY29uc3QgYnVja2V0ID0gbmV3IHMzLkJ1Y2tldChzdGFjaywgJ015QnVja2V0Jywge1xuICBlbmNyeXB0aW9uOiBzMy5CdWNrZXRFbmNyeXB0aW9uLkttc1xufSk7XG5cbmNvbnN0IG90aGVyd2lzZUVuY3J5cHRlZEJ1Y2tldCA9IG5ldyBzMy5CdWNrZXQoc3RhY2ssICdNeU90aGVyQnVja2V0Jywge1xuICBlbmNyeXB0aW9uOiBzMy5CdWNrZXRFbmNyeXB0aW9uLlMzTWFuYWdlZFxufSk7XG5cbmNvbnN0IHVzZXIgPSBuZXcgaWFtLlVzZXIoc3RhY2ssICdNeVVzZXInKTtcbmJ1Y2tldC5ncmFudFJlYWRXcml0ZSh1c2VyKTtcbm90aGVyd2lzZUVuY3J5cHRlZEJ1Y2tldC5ncmFudFJlYWQodXNlcik7XG5cbnByb2Nlc3Muc3Rkb3V0LndyaXRlKGFwcC5ydW4oKSk7XG4iXX0=

@@ -18,2 +18,2 @@ "use strict";

process.stdout.write(app.run());
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWcuYnVja2V0LnVybC5saXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbnRlZy5idWNrZXQudXJsLmxpdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLG9DQUFxQztBQUNyQyw2QkFBOEI7QUFFOUIsTUFBTSxTQUFVLFNBQVEsR0FBRyxDQUFDLEtBQUs7SUFDN0IsWUFBWSxNQUFlLEVBQUUsRUFBVTtRQUNuQyxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWxCLFNBQVM7UUFDVCxNQUFNLE1BQU0sR0FBRyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRS9DLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsV0FBVyxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQy9ELElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsV0FBVyxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxZQUFZLENBQUMscUJBQXFCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDekYsU0FBUztJQUNiLENBQUM7Q0FDSjtBQUVELE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDdEMsSUFBSSxTQUFTLENBQUMsR0FBRyxFQUFFLGlCQUFpQixDQUFDLENBQUM7QUFDdEMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5pbXBvcnQgczMgPSByZXF1aXJlKCcuLi9saWInKTtcblxuY2xhc3MgVGVzdFN0YWNrIGV4dGVuZHMgY2RrLlN0YWNrIHtcbiAgICBjb25zdHJ1Y3RvcihwYXJlbnQ6IGNkay5BcHAsIGlkOiBzdHJpbmcpIHtcbiAgICAgICAgc3VwZXIocGFyZW50LCBpZCk7XG5cbiAgICAgICAgLy8vICFzaG93XG4gICAgICAgIGNvbnN0IGJ1Y2tldCA9IG5ldyBzMy5CdWNrZXQodGhpcywgJ015QnVja2V0Jyk7XG5cbiAgICAgICAgbmV3IGNkay5PdXRwdXQodGhpcywgJ0J1Y2tldFVSTCcsIHsgdmFsdWU6IGJ1Y2tldC5idWNrZXRVcmwgfSk7XG4gICAgICAgIG5ldyBjZGsuT3V0cHV0KHRoaXMsICdPYmplY3RVUkwnLCB7IHZhbHVlOiBidWNrZXQudXJsRm9yT2JqZWN0KCdteWZvbGRlci9teWZpbGUudHh0JykgfSk7XG4gICAgICAgIC8vLyAhaGlkZVxuICAgIH1cbn1cblxuY29uc3QgYXBwID0gbmV3IGNkay5BcHAocHJvY2Vzcy5hcmd2KTtcbm5ldyBUZXN0U3RhY2soYXBwLCAnYXdzLWNkay1zMy11cmxzJyk7XG5wcm9jZXNzLnN0ZG91dC53cml0ZShhcHAucnVuKCkpO1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWcuYnVja2V0LnVybC5saXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbnRlZy5idWNrZXQudXJsLmxpdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLG9DQUFxQztBQUNyQyw2QkFBOEI7QUFFOUIsTUFBTSxTQUFVLFNBQVEsR0FBRyxDQUFDLEtBQUs7SUFDL0IsWUFBWSxNQUFlLEVBQUUsRUFBVTtRQUNyQyxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWxCLFNBQVM7UUFDVCxNQUFNLE1BQU0sR0FBRyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRS9DLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsV0FBVyxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQy9ELElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsV0FBVyxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxZQUFZLENBQUMscUJBQXFCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDekYsU0FBUztJQUNYLENBQUM7Q0FDRjtBQUVELE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDdEMsSUFBSSxTQUFTLENBQUMsR0FBRyxFQUFFLGlCQUFpQixDQUFDLENBQUM7QUFDdEMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5pbXBvcnQgczMgPSByZXF1aXJlKCcuLi9saWInKTtcblxuY2xhc3MgVGVzdFN0YWNrIGV4dGVuZHMgY2RrLlN0YWNrIHtcbiAgY29uc3RydWN0b3IocGFyZW50OiBjZGsuQXBwLCBpZDogc3RyaW5nKSB7XG4gICAgc3VwZXIocGFyZW50LCBpZCk7XG5cbiAgICAvLy8gIXNob3dcbiAgICBjb25zdCBidWNrZXQgPSBuZXcgczMuQnVja2V0KHRoaXMsICdNeUJ1Y2tldCcpO1xuXG4gICAgbmV3IGNkay5PdXRwdXQodGhpcywgJ0J1Y2tldFVSTCcsIHsgdmFsdWU6IGJ1Y2tldC5idWNrZXRVcmwgfSk7XG4gICAgbmV3IGNkay5PdXRwdXQodGhpcywgJ09iamVjdFVSTCcsIHsgdmFsdWU6IGJ1Y2tldC51cmxGb3JPYmplY3QoJ215Zm9sZGVyL215ZmlsZS50eHQnKSB9KTtcbiAgICAvLy8gIWhpZGVcbiAgfVxufVxuXG5jb25zdCBhcHAgPSBuZXcgY2RrLkFwcChwcm9jZXNzLmFyZ3YpO1xubmV3IFRlc3RTdGFjayhhcHAsICdhd3MtY2RrLXMzLXVybHMnKTtcbnByb2Nlc3Muc3Rkb3V0LndyaXRlKGFwcC5ydW4oKSk7XG4iXX0=

@@ -14,2 +14,2 @@ "use strict";

process.stdout.write(app.run());
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWcubGlmZWN5Y2xlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiaW50ZWcubGlmZWN5Y2xlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsc0NBQTBDO0FBQzFDLGdDQUFnQztBQUVoQyxNQUFNLEdBQUcsR0FBRyxJQUFJLFNBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7QUFFbEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxXQUFLLENBQUMsR0FBRyxFQUFFLFlBQVksQ0FBQyxDQUFDO0FBRTNDLGdEQUFnRDtBQUNoRCxJQUFJLFlBQU0sQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFO0lBQzFCLGNBQWMsRUFBRSxDQUFDO1lBQ2IsY0FBYyxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQztTQUN6QyxDQUFDO0NBQ0wsQ0FBQyxDQUFDO0FBRUgsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcHAsIFN0YWNrIH0gZnJvbSAnQGF3cy1jZGsvY2RrJztcbmltcG9ydCB7IEJ1Y2tldCB9IGZyb20gJy4uL2xpYic7XG5cbmNvbnN0IGFwcCA9IG5ldyBBcHAocHJvY2Vzcy5hcmd2KTtcblxuY29uc3Qgc3RhY2sgPSBuZXcgU3RhY2soYXBwLCAnYXdzLWNkay1zMycpO1xuXG4vLyBUZXN0IGEgbGlmZWN5Y2xlIHJ1bGUgd2l0aCBhbiBleHBpcmF0aW9uIERBVEVcbm5ldyBCdWNrZXQoc3RhY2ssICdNeUJ1Y2tldCcsIHtcbiAgICBsaWZlY3ljbGVSdWxlczogW3tcbiAgICAgICAgZXhwaXJhdGlvbkRhdGU6IG5ldyBEYXRlKCcyMDE5LTEwLTAxJylcbiAgICB9XVxufSk7XG5cbnByb2Nlc3Muc3Rkb3V0LndyaXRlKGFwcC5ydW4oKSk7XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWcubGlmZWN5Y2xlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiaW50ZWcubGlmZWN5Y2xlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsc0NBQTBDO0FBQzFDLGdDQUFnQztBQUVoQyxNQUFNLEdBQUcsR0FBRyxJQUFJLFNBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7QUFFbEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxXQUFLLENBQUMsR0FBRyxFQUFFLFlBQVksQ0FBQyxDQUFDO0FBRTNDLGdEQUFnRDtBQUNoRCxJQUFJLFlBQU0sQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFO0lBQzVCLGNBQWMsRUFBRSxDQUFDO1lBQ2YsY0FBYyxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQztTQUN2QyxDQUFDO0NBQ0gsQ0FBQyxDQUFDO0FBRUgsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcHAsIFN0YWNrIH0gZnJvbSAnQGF3cy1jZGsvY2RrJztcbmltcG9ydCB7IEJ1Y2tldCB9IGZyb20gJy4uL2xpYic7XG5cbmNvbnN0IGFwcCA9IG5ldyBBcHAocHJvY2Vzcy5hcmd2KTtcblxuY29uc3Qgc3RhY2sgPSBuZXcgU3RhY2soYXBwLCAnYXdzLWNkay1zMycpO1xuXG4vLyBUZXN0IGEgbGlmZWN5Y2xlIHJ1bGUgd2l0aCBhbiBleHBpcmF0aW9uIERBVEVcbm5ldyBCdWNrZXQoc3RhY2ssICdNeUJ1Y2tldCcsIHtcbiAgbGlmZWN5Y2xlUnVsZXM6IFt7XG4gICAgZXhwaXJhdGlvbkRhdGU6IG5ldyBEYXRlKCcyMDE5LTEwLTAxJylcbiAgfV1cbn0pO1xuXG5wcm9jZXNzLnN0ZG91dC53cml0ZShhcHAucnVuKCkpO1xuIl19

@@ -17,2 +17,2 @@ "use strict";

process.stdout.write(app.run());
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWcubm90aWZpY2F0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImludGVnLm5vdGlmaWNhdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxvQ0FBcUM7QUFDckMsc0NBQXFDO0FBQ3JDLDZCQUE4QjtBQUM5Qiw2REFBNkM7QUFFN0MsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUV0QyxNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFFdkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztBQUM5QyxNQUFNLEtBQUssR0FBRyxJQUFJLDBCQUFLLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ3hDLE1BQU0sTUFBTSxHQUFHLElBQUksMEJBQUssQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFFMUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQ3JELE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLGtCQUFrQixFQUFFLENBQUMsQ0FBQztBQUVuRixNQUFNLE9BQU8sR0FBRyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ2hELE9BQU8sQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7QUFFMUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gJ0Bhd3MtY2RrL2Nkayc7XG5pbXBvcnQgczMgPSByZXF1aXJlKCcuLi9saWInKTtcbmltcG9ydCB7IFRvcGljIH0gZnJvbSAnLi9ub3RpZmljYXRpb24tZGVzdHMnO1xuXG5jb25zdCBhcHAgPSBuZXcgY2RrLkFwcChwcm9jZXNzLmFyZ3YpO1xuXG5jb25zdCBzdGFjayA9IG5ldyBTdGFjayhhcHAsICd0ZXN0LTMnKTtcblxuY29uc3QgYnVja2V0ID0gbmV3IHMzLkJ1Y2tldChzdGFjaywgJ0J1Y2tldCcpO1xuY29uc3QgdG9waWMgPSBuZXcgVG9waWMoc3RhY2ssICdUb3BpYycpO1xuY29uc3QgdG9waWMzID0gbmV3IFRvcGljKHN0YWNrLCAnVG9waWMzJyk7XG5cbmJ1Y2tldC5vbkV2ZW50KHMzLkV2ZW50VHlwZS5PYmplY3RDcmVhdGVkUHV0LCB0b3BpYyk7XG5idWNrZXQub25FdmVudChzMy5FdmVudFR5cGUuT2JqZWN0UmVtb3ZlZCwgdG9waWMzLCB7IHByZWZpeDogJ2hvbWUvbXl1c2VybmFtZS8nIH0pO1xuXG5jb25zdCBidWNrZXQyID0gbmV3IHMzLkJ1Y2tldChzdGFjaywgJ0J1Y2tldDInKTtcbmJ1Y2tldDIub25PYmplY3RSZW1vdmVkKHRvcGljMywgeyBwcmVmaXg6ICdmb28nIH0sIHsgc3VmZml4OiAnZm9vL2JhcicgfSk7XG5cbnByb2Nlc3Muc3Rkb3V0LndyaXRlKGFwcC5ydW4oKSk7Il19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWcubm90aWZpY2F0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImludGVnLm5vdGlmaWNhdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxvQ0FBcUM7QUFDckMsc0NBQXFDO0FBQ3JDLDZCQUE4QjtBQUM5Qiw2REFBNkM7QUFFN0MsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUV0QyxNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFFdkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztBQUM5QyxNQUFNLEtBQUssR0FBRyxJQUFJLDBCQUFLLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ3hDLE1BQU0sTUFBTSxHQUFHLElBQUksMEJBQUssQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFFMUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQ3JELE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLGtCQUFrQixFQUFFLENBQUMsQ0FBQztBQUVuRixNQUFNLE9BQU8sR0FBRyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ2hELE9BQU8sQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7QUFFMUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gJ0Bhd3MtY2RrL2Nkayc7XG5pbXBvcnQgczMgPSByZXF1aXJlKCcuLi9saWInKTtcbmltcG9ydCB7IFRvcGljIH0gZnJvbSAnLi9ub3RpZmljYXRpb24tZGVzdHMnO1xuXG5jb25zdCBhcHAgPSBuZXcgY2RrLkFwcChwcm9jZXNzLmFyZ3YpO1xuXG5jb25zdCBzdGFjayA9IG5ldyBTdGFjayhhcHAsICd0ZXN0LTMnKTtcblxuY29uc3QgYnVja2V0ID0gbmV3IHMzLkJ1Y2tldChzdGFjaywgJ0J1Y2tldCcpO1xuY29uc3QgdG9waWMgPSBuZXcgVG9waWMoc3RhY2ssICdUb3BpYycpO1xuY29uc3QgdG9waWMzID0gbmV3IFRvcGljKHN0YWNrLCAnVG9waWMzJyk7XG5cbmJ1Y2tldC5vbkV2ZW50KHMzLkV2ZW50VHlwZS5PYmplY3RDcmVhdGVkUHV0LCB0b3BpYyk7XG5idWNrZXQub25FdmVudChzMy5FdmVudFR5cGUuT2JqZWN0UmVtb3ZlZCwgdG9waWMzLCB7IHByZWZpeDogJ2hvbWUvbXl1c2VybmFtZS8nIH0pO1xuXG5jb25zdCBidWNrZXQyID0gbmV3IHMzLkJ1Y2tldChzdGFjaywgJ0J1Y2tldDInKTtcbmJ1Y2tldDIub25PYmplY3RSZW1vdmVkKHRvcGljMywgeyBwcmVmaXg6ICdmb28nIH0sIHsgc3VmZml4OiAnZm9vL2JhcicgfSk7XG5cbnByb2Nlc3Muc3Rkb3V0LndyaXRlKGFwcC5ydW4oKSk7XG4iXX0=

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

exports.Topic = Topic;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWRlc3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibm90aWZpY2F0aW9uLWRlc3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsaUVBQWtFO0FBQ2xFLG9DQUFxQztBQUVyQzs7O0dBR0c7QUFDSCxNQUFhLEtBQU0sU0FBUSxHQUFHLENBQUMsU0FBUztJQUtwQyxZQUFZLE1BQXFCLEVBQUUsRUFBVTtRQUN6QyxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBSkwsV0FBTSxHQUFHLElBQUksR0FBRyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ2xDLHlCQUFvQixHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7UUFLdEQsTUFBTSxRQUFRLEdBQUcsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDO1FBQ2pGLE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUM7UUFFOUIsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxRQUFRLEVBQUU7WUFDN0IsSUFBSSxFQUFFLHVCQUF1QjtZQUM3QixVQUFVLEVBQUU7Z0JBQ1IsTUFBTSxFQUFFLENBQUUsUUFBUSxDQUFFO2dCQUNwQixjQUFjLEVBQUUsSUFBSSxDQUFDLE1BQU07YUFDOUI7U0FDSixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUM3QixDQUFDO0lBRU0sK0JBQStCLENBQUMsU0FBaUIsRUFBRSxRQUFnQjtRQUV0RSx1Q0FBdUM7UUFDdkMsSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDMUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxHQUFHLENBQUMsZUFBZSxFQUFFO2lCQUM3QyxRQUFRLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO2lCQUM1QyxtQkFBbUIsQ0FBQyxrQkFBa0IsQ0FBQztpQkFDdkMsU0FBUyxDQUFDLGFBQWEsQ0FBQztpQkFDeEIsV0FBVyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7aUJBQzFCLFlBQVksQ0FBQyxTQUFTLEVBQUUsRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzlELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDM0M7UUFFRCxPQUFPO1lBQ0gsR0FBRyxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ2xCLElBQUksRUFBRSxlQUFlLENBQUMsaUNBQWlDLENBQUMsS0FBSztTQUNoRSxDQUFDO0lBQ04sQ0FBQztDQUNKO0FBeENELHNCQXdDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzM25vdGlmaWNhdGlvbnMgPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtczMtbm90aWZpY2F0aW9ucycpO1xuaW1wb3J0IGNkayA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2NkaycpO1xuXG4vKipcbiAqIFNpbmNlIHdlIGNhbid0IHRha2UgYSBkZXBlbmRlbmN5IG9uIEBhd3MtY2RrL3NucywgdGhpcyBpcyBhIHNpbXBsZSB3cmFwcGVyXG4gKiBmb3IgQVdTOjpTTlM6OlRvcGljIHdoaWNoIGltcGxlbWVudHMgSUJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uLlxuICovXG5leHBvcnQgY2xhc3MgVG9waWMgZXh0ZW5kcyBjZGsuQ29uc3RydWN0IGltcGxlbWVudHMgczNub3RpZmljYXRpb25zLklCdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvbiB7XG4gICAgcHVibGljIHJlYWRvbmx5IHRvcGljQXJuOiBzdHJpbmc7XG4gICAgcHJpdmF0ZSByZWFkb25seSBwb2xpY3kgPSBuZXcgY2RrLlBvbGljeURvY3VtZW50KCk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBub3RpZnlpbmdCdWNrZXRQYXRocyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuXG4gICAgY29uc3RydWN0b3IocGFyZW50OiBjZGsuQ29uc3RydWN0LCBpZDogc3RyaW5nKSB7XG4gICAgICAgIHN1cGVyKHBhcmVudCwgaWQpO1xuXG4gICAgICAgIGNvbnN0IHJlc291cmNlID0gbmV3IGNkay5SZXNvdXJjZSh0aGlzLCAnUmVzb3VyY2UnLCB7IHR5cGU6ICdBV1M6OlNOUzo6VG9waWMnIH0pO1xuICAgICAgICBjb25zdCB0b3BpY0FybiA9IHJlc291cmNlLnJlZjtcblxuICAgICAgICBuZXcgY2RrLlJlc291cmNlKHRoaXMsICdQb2xpY3knLCB7XG4gICAgICAgICAgICB0eXBlOiAnQVdTOjpTTlM6OlRvcGljUG9saWN5JyxcbiAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICBUb3BpY3M6IFsgdG9waWNBcm4gXSxcbiAgICAgICAgICAgICAgICBQb2xpY3lEb2N1bWVudDogdGhpcy5wb2xpY3lcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy50b3BpY0FybiA9IHRvcGljQXJuO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc0J1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uKGJ1Y2tldEFybjogc3RyaW5nLCBidWNrZXRJZDogc3RyaW5nKTogczNub3RpZmljYXRpb25zLkJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uUHJvcHMge1xuXG4gICAgICAgIC8vIGFkZCBwZXJtaXNzaW9uIHRvIGVhY2ggc291cmNlIGJ1Y2tldFxuICAgICAgICBpZiAoIXRoaXMubm90aWZ5aW5nQnVja2V0UGF0aHMuaGFzKGJ1Y2tldElkKSkge1xuICAgICAgICAgICAgdGhpcy5wb2xpY3kuYWRkU3RhdGVtZW50KG5ldyBjZGsuUG9saWN5U3RhdGVtZW50KClcbiAgICAgICAgICAgICAgICAuZGVzY3JpYmUoYHNpZCR7dGhpcy5wb2xpY3kuc3RhdGVtZW50Q291bnR9YClcbiAgICAgICAgICAgICAgICAuYWRkU2VydmljZVByaW5jaXBhbCgnczMuYW1hem9uYXdzLmNvbScpXG4gICAgICAgICAgICAgICAgLmFkZEFjdGlvbignc25zOlB1Ymxpc2gnKVxuICAgICAgICAgICAgICAgIC5hZGRSZXNvdXJjZSh0aGlzLnRvcGljQXJuKVxuICAgICAgICAgICAgICAgIC5hZGRDb25kaXRpb24oJ0Fybkxpa2UnLCB7IFwiYXdzOlNvdXJjZUFyblwiOiBidWNrZXRBcm4gfSkpO1xuICAgICAgICAgICAgdGhpcy5ub3RpZnlpbmdCdWNrZXRQYXRocy5hZGQoYnVja2V0SWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGFybjogdGhpcy50b3BpY0FybixcbiAgICAgICAgICAgIHR5cGU6IHMzbm90aWZpY2F0aW9ucy5CdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvblR5cGUuVG9waWNcbiAgICAgICAgfTtcbiAgICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWRlc3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibm90aWZpY2F0aW9uLWRlc3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsaUVBQWtFO0FBQ2xFLG9DQUFxQztBQUVyQzs7O0dBR0c7QUFDSCxNQUFhLEtBQU0sU0FBUSxHQUFHLENBQUMsU0FBUztJQUt0QyxZQUFZLE1BQXFCLEVBQUUsRUFBVTtRQUMzQyxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBSkgsV0FBTSxHQUFHLElBQUksR0FBRyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ2xDLHlCQUFvQixHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7UUFLeEQsTUFBTSxRQUFRLEdBQUcsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDO1FBQ2pGLE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUM7UUFFOUIsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxRQUFRLEVBQUU7WUFDL0IsSUFBSSxFQUFFLHVCQUF1QjtZQUM3QixVQUFVLEVBQUU7Z0JBQ1YsTUFBTSxFQUFFLENBQUUsUUFBUSxDQUFFO2dCQUNwQixjQUFjLEVBQUUsSUFBSSxDQUFDLE1BQU07YUFDNUI7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMzQixDQUFDO0lBRU0sK0JBQStCLENBQUMsU0FBaUIsRUFBRSxRQUFnQjtRQUV4RSx1Q0FBdUM7UUFDdkMsSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDNUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxHQUFHLENBQUMsZUFBZSxFQUFFO2lCQUMvQyxRQUFRLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO2lCQUM1QyxtQkFBbUIsQ0FBQyxrQkFBa0IsQ0FBQztpQkFDdkMsU0FBUyxDQUFDLGFBQWEsQ0FBQztpQkFDeEIsV0FBVyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7aUJBQzFCLFlBQVksQ0FBQyxTQUFTLEVBQUUsRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzVELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDekM7UUFFRCxPQUFPO1lBQ0wsR0FBRyxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ2xCLElBQUksRUFBRSxlQUFlLENBQUMsaUNBQWlDLENBQUMsS0FBSztTQUM5RCxDQUFDO0lBQ0osQ0FBQztDQUNGO0FBeENELHNCQXdDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzM25vdGlmaWNhdGlvbnMgPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtczMtbm90aWZpY2F0aW9ucycpO1xuaW1wb3J0IGNkayA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2NkaycpO1xuXG4vKipcbiAqIFNpbmNlIHdlIGNhbid0IHRha2UgYSBkZXBlbmRlbmN5IG9uIEBhd3MtY2RrL3NucywgdGhpcyBpcyBhIHNpbXBsZSB3cmFwcGVyXG4gKiBmb3IgQVdTOjpTTlM6OlRvcGljIHdoaWNoIGltcGxlbWVudHMgSUJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uLlxuICovXG5leHBvcnQgY2xhc3MgVG9waWMgZXh0ZW5kcyBjZGsuQ29uc3RydWN0IGltcGxlbWVudHMgczNub3RpZmljYXRpb25zLklCdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvbiB7XG4gIHB1YmxpYyByZWFkb25seSB0b3BpY0Fybjogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IHBvbGljeSA9IG5ldyBjZGsuUG9saWN5RG9jdW1lbnQoKTtcbiAgcHJpdmF0ZSByZWFkb25seSBub3RpZnlpbmdCdWNrZXRQYXRocyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuXG4gIGNvbnN0cnVjdG9yKHBhcmVudDogY2RrLkNvbnN0cnVjdCwgaWQ6IHN0cmluZykge1xuICAgIHN1cGVyKHBhcmVudCwgaWQpO1xuXG4gICAgY29uc3QgcmVzb3VyY2UgPSBuZXcgY2RrLlJlc291cmNlKHRoaXMsICdSZXNvdXJjZScsIHsgdHlwZTogJ0FXUzo6U05TOjpUb3BpYycgfSk7XG4gICAgY29uc3QgdG9waWNBcm4gPSByZXNvdXJjZS5yZWY7XG5cbiAgICBuZXcgY2RrLlJlc291cmNlKHRoaXMsICdQb2xpY3knLCB7XG4gICAgICB0eXBlOiAnQVdTOjpTTlM6OlRvcGljUG9saWN5JyxcbiAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgVG9waWNzOiBbIHRvcGljQXJuIF0sXG4gICAgICAgIFBvbGljeURvY3VtZW50OiB0aGlzLnBvbGljeVxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy50b3BpY0FybiA9IHRvcGljQXJuO1xuICB9XG5cbiAgcHVibGljIGFzQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb24oYnVja2V0QXJuOiBzdHJpbmcsIGJ1Y2tldElkOiBzdHJpbmcpOiBzM25vdGlmaWNhdGlvbnMuQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25Qcm9wcyB7XG5cbiAgICAvLyBhZGQgcGVybWlzc2lvbiB0byBlYWNoIHNvdXJjZSBidWNrZXRcbiAgICBpZiAoIXRoaXMubm90aWZ5aW5nQnVja2V0UGF0aHMuaGFzKGJ1Y2tldElkKSkge1xuICAgICAgdGhpcy5wb2xpY3kuYWRkU3RhdGVtZW50KG5ldyBjZGsuUG9saWN5U3RhdGVtZW50KClcbiAgICAgICAgLmRlc2NyaWJlKGBzaWQke3RoaXMucG9saWN5LnN0YXRlbWVudENvdW50fWApXG4gICAgICAgIC5hZGRTZXJ2aWNlUHJpbmNpcGFsKCdzMy5hbWF6b25hd3MuY29tJylcbiAgICAgICAgLmFkZEFjdGlvbignc25zOlB1Ymxpc2gnKVxuICAgICAgICAuYWRkUmVzb3VyY2UodGhpcy50b3BpY0FybilcbiAgICAgICAgLmFkZENvbmRpdGlvbignQXJuTGlrZScsIHsgXCJhd3M6U291cmNlQXJuXCI6IGJ1Y2tldEFybiB9KSk7XG4gICAgICB0aGlzLm5vdGlmeWluZ0J1Y2tldFBhdGhzLmFkZChidWNrZXRJZCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGFybjogdGhpcy50b3BpY0FybixcbiAgICAgIHR5cGU6IHMzbm90aWZpY2F0aW9ucy5CdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvblR5cGUuVG9waWNcbiAgICB9O1xuICB9XG59XG4iXX0=

@@ -260,2 +260,2 @@ "use strict";

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5ub3RpZmljYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidGVzdC5ub3RpZmljYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw0Q0FBdUQ7QUFDdkQscURBQXNEO0FBQ3RELG9DQUFxQztBQUNyQyxzQ0FBcUM7QUFFckMsNkJBQThCO0FBQzlCLDZEQUE2QztBQUs3QyxpQkFBUztJQUNMLDhCQUE4QixDQUFDLElBQVU7UUFDckMsTUFBTSxLQUFLLEdBQUcsSUFBSSxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFOUIsSUFBSSxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVqQyxlQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDO1lBQ3BCLFdBQVcsRUFBRTtnQkFDWCxrQkFBa0IsRUFBRTtvQkFDbEIsTUFBTSxFQUFFLGlCQUFpQjtpQkFDMUI7YUFDRjtTQUNGLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRUQseUZBQXlGLENBQUMsSUFBVTtRQUNoRyxNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUU5QixNQUFNLE1BQU0sR0FBRyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRWhELE1BQU0sS0FBSyxHQUFHLElBQUksMEJBQUssQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFFMUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUVsRCxlQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLHFCQUFZLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDO1FBQ2xELGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJB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SyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzlDLE1BQU0sU0FBUyxHQUFHLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUM7UUFDL0UsTUFBTSxJQUFJLEdBQXVDO1lBQzdDLCtCQUErQixFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7Z0JBQ3BDLEdBQUcsRUFBRSxLQUFLO2dCQUNWLElBQUksRUFBRSxHQUFHLENBQUMsaUNBQWlDLENBQUMsS0FBSztnQkFDakQsWUFBWSxFQUFFLENBQUUsU0FBUyxDQUFFO2FBQzlCLENBQUM7U0FDTCxDQUFDO1FBRUYsTUFBTSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUU3QixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLFNBQVMsQ0FBQywyQkFBMkIsRUFBRTtZQUMzRSxJQUFJLEVBQUUsK0JBQStCO1lBQ3JDLFVBQVUsRUFBRTtnQkFDUixZQUFZLEVBQUUsRUFBRSxZQUFZLEVBQUUsQ0FBRSxvRUFBb0UsRUFBRSxLQUFLLENBQUUsRUFBRTtnQkFDL0csVUFBVSxFQUFFLEVBQUUsR0FBRyxFQUFFLGdCQUFnQixFQUFFO2dCQUNyQyx5QkFBeUIsRUFBRSxFQUFFLG1CQUFtQixFQUFFLENBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBRSxvQkFBb0IsQ0FBRSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBRSxFQUFFO2FBQ2hIO1lBQ0QsU0FBUyxFQUFFLENBQUUsV0FBVyxDQUFFO1NBQzdCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQixDQUFDO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4cGVjdCwgaGF2ZVJlc291cmNlIH0gZnJvbSAnQGF3cy1jZGsvYXNzZXJ0JztcbmltcG9ydCBzM24gPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtczMtbm90aWZpY2F0aW9ucycpO1xuaW1wb3J0IGNkayA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2NkaycpO1xuaW1wb3J0IHsgU3RhY2sgfSBmcm9tICdAYXdzLWNkay9jZGsnO1xuaW1wb3J0IHsgVGVzdCB9IGZyb20gJ25vZGV1bml0JztcbmltcG9ydCBzMyA9IHJlcXVpcmUoJy4uL2xpYicpO1xuaW1wb3J0IHsgVG9waWMgfSBmcm9tICcuL25vdGlmaWNhdGlvbi1kZXN0cyc7XG5cbi8vIHRzbGludDpkaXNhYmxlOm9iamVjdC1saXRlcmFsLWtleS1xdW90ZXNcbi8vIHRzbGludDpkaXNhYmxlOm1heC1saW5lLWxlbmd0aFxuXG5leHBvcnQgPSB7XG4gICAgJ2J1Y2tldCB3aXRob3V0IG5vdGlmaWNhdGlvbnMnKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICAgICAgbmV3IHMzLkJ1Y2tldChzdGFjaywgJ015QnVja2V0Jyk7XG5cbiAgICAgICAgZXhwZWN0KHN0YWNrKS50b01hdGNoKHtcbiAgICAgICAgICBcIlJlc291cmNlc1wiOiB7XG4gICAgICAgICAgICBcIk15QnVja2V0RjY4RjNGRjBcIjoge1xuICAgICAgICAgICAgICBcIlR5cGVcIjogXCJBV1M6OlMzOjpCdWNrZXRcIlxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgfSxcblxuICAgICd3aGVuIG5vdGlmaWNhdGlvbiBhcmUgYWRkZWQsIGEgY3VzdG9tIHJlc291cmNlIGlzIHByb3Zpc2lvbmVkICsgYSBsYW1iZGEgaGFuZGxlciBmb3IgaXQnKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICAgICAgY29uc3QgYnVja2V0ID0gbmV3IHMzLkJ1Y2tldChzdGFjaywgJ015QnVja2V0Jyk7XG5cbiAgICAgICAgY29uc3QgdG9waWMgPSBuZXcgVG9waWMoc3RhY2ssICdNeVRvcGljJyk7XG5cbiAgICAgICAgYnVja2V0Lm9uRXZlbnQoczMuRXZlbnRUeXBlLk9iamVjdENyZWF0ZWQsIHRvcGljKTtcblxuICAgICAgICBleHBlY3Qoc3RhY2spLnRvKGhhdmVSZXNvdXJjZSgnQVdTOjpTMzo6QnVja2V0JykpO1xuICAgICAgICBleHBlY3Qoc3RhY2spLnRvKGhhdmVSZXNvdXJjZSgnQVdTOjpMYW1iZGE6OkZ1bmN0aW9uJywgeyBEZXNjcmlwdGlvbjogJ0FXUyBDbG91ZEZvcm1hdGlvbiBoYW5kbGVyIGZvciBcIkN1c3RvbTo6UzNCdWNrZXROb3RpZmljYXRpb25zXCIgcmVzb3VyY2VzIChAYXdzLWNkay9hd3MtczMpJyB9KSk7XG4gICAgICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdDdXN0b206OlMzQnVja2V0Tm90aWZpY2F0aW9ucycpKTtcblxuICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICB9LFxuXG4gICAgJ2J1Y2tldE5vdGlmaWNhdGlvblRhcmdldCBpcyBub3QgY2FsbGVkIGR1cmluZyBzeW50aGVzaXMnKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICAgICAgLy8gbm90aWNlIHRoZSBvcmRlciBoZXJlIC0gdG9waWMgaXMgZGVmaW5lZCBiZWZvcmUgYnVja2V0XG4gICAgICAgIC8vIGJ1dCB0aGlzIHNob3VsZG4ndCBpbXBhY3QgdGhlIGZhY3QgdGhhdCB0aGUgdG9waWMgcG9saWN5IGluY2x1ZGVzXG4gICAgICAgIC8vIHRoZSBidWNrZXQgaW5mb3JtYXRpb25cbiAgICAgICAgY29uc3QgdG9waWMgPSBuZXcgVG9waWMoc3RhY2ssICdUb3BpYycpO1xuICAgICAgICBjb25zdCBidWNrZXQgPSBuZXcgczMuQnVja2V0KHN0YWNrLCAnTXlCdWNrZXQnKTtcblxuICAgICAgICBidWNrZXQub25PYmplY3RDcmVhdGVkKHRvcGljKTtcblxuICAgICAgICBleHBlY3Qoc3RhY2spLnRvKGhhdmVSZXNvdXJjZSgnQVdTOjpTTlM6OlRvcGljUG9saWN5Jywge1xuICAgICAgICAgIFwiVG9waWNzXCI6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgXCJSZWZcIjogXCJUb3BpY0JGQzdBRjZFXCJcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBdLFxuICAgICAgICAgIFwiUG9saWN5RG9jdW1lbnRcIjoge1xuICAgICAgICAgICAgXCJTdGF0ZW1lbnRcIjogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgXCJBY3Rpb25cIjogXCJzbnM6UHVibGlzaFwiLFxuICAgICAgICAgICAgICAgIFwiQ29uZGl0aW9uXCI6IHtcbiAgICAgICAgICAgICAgICAgIFwiQXJuTGlrZVwiOiB7XG4gICAgICAgICAgICAgICAgICAgIFwiYXdzOlNvdXJjZUFyblwiOiB7XG4gICAgICAgICAgICAgICAgICAgICAgXCJGbjo6R2V0QXR0XCI6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiTXlCdWNrZXRGNjhGM0ZGMFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJBcm5cIlxuICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXCJFZmZlY3RcIjogXCJBbGxvd1wiLFxuICAgICAgICAgICAgICAgIFwiUHJpbmNpcGFsXCI6IHtcbiAgICAgICAgICAgICAgICAgIFwiU2VydmljZVwiOiBcInMzLmFtYXpvbmF3cy5jb21cIlxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXCJSZXNvdXJjZVwiOiB7XG4gICAgICAgICAgICAgICAgICBcIlJlZlwiOiBcIlRvcGljQkZDN0FGNkVcIlxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXCJTaWRcIjogXCJzaWQwXCJcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFwiVmVyc2lvblwiOiBcIjIwMTItMTAtMTdcIlxuICAgICAgICAgIH1cbiAgICAgICAgfSkpO1xuXG4gICAgICAgIHRlc3QuZG9uZSgpO1xuICAgIH0sXG5cbiAgICAnc3Vic2NyaXB0aW9uIHR5cGVzJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgICAgIGNvbnN0IGJ1Y2tldCA9IG5ldyBzMy5CdWNrZXQoc3RhY2ssICdUZXN0QnVja2V0Jyk7XG5cbiAgICAgICAgY29uc3QgcXVldWVUYXJnZXQ6IHMzbi5JQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb24gPSB7XG4gICAgICAgICAgICBhc0J1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uOiBfID0+ICh7XG4gICAgICAgICAgICAgICAgdHlwZTogczNuLkJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uVHlwZS5RdWV1ZSxcbiAgICAgICAgICAgICAgICBhcm46ICdhcm46YXdzOnNxczouLi4nXG4gICAgICAgICAgICB9KVxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IGxhbWJkYVRhcmdldDogczNuLklCdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvbiA9IHtcbiAgICAgICAgICAgIGFzQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb246IF8gPT4gKHtcbiAgICAgICAgICAgICAgICB0eXBlOiBzM24uQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25UeXBlLkxhbWJkYSxcbiAgICAgICAgICAgICAgICBhcm46ICdhcm46YXdzOmxhbWJkYTouLi4nXG4gICAgICAgICAgICB9KVxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IHRvcGljVGFyZ2V0OiBzM24uSUJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uID0ge1xuICAgICAgICAgICAgYXNCdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvbjogXyA9PiAoe1xuICAgICAgICAgICAgICAgIHR5cGU6IHMzbi5CdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvblR5cGUuVG9waWMsXG4gICAgICAgICAgICAgICAgYXJuOiAnYXJuOmF3czpzbnM6Li4uJ1xuICAgICAgICAgICAgfSlcbiAgICAgICAgfTtcblxuICAgICAgICBidWNrZXQub25FdmVudChzMy5FdmVudFR5cGUuT2JqZWN0Q3JlYXRlZCwgcXVldWVUYXJnZXQpO1xuICAgICAgICBidWNrZXQub25FdmVudChzMy5FdmVudFR5cGUuT2JqZWN0Q3JlYXRlZCwgbGFtYmRhVGFyZ2V0KTtcbiAgICAgICAgYnVja2V0Lm9uT2JqZWN0UmVtb3ZlZCh0b3BpY1RhcmdldCwgeyBwcmVmaXg6ICdwcmVmaXgnIH0pO1xuXG4gICAgICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdDdXN0b206OlMzQnVja2V0Tm90aWZpY2F0aW9ucycsIHtcbiAgICAgICAgICBcIlNlcnZpY2VUb2tlblwiOiB7XG4gICAgICAgICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICAgICAgICBcIkJ1Y2tldE5vdGlmaWNhdGlvbnNIYW5kbGVyMDUwYTA1ODdiNzU0NDU0N2JmMzI1ZjA5NGEzZGI4MzQ3RUNDMzY5MVwiLFxuICAgICAgICAgICAgICBcIkFyblwiXG4gICAgICAgICAgICBdXG4gICAgICAgICAgfSxcbiAgICAgICAgICBcIkJ1Y2tldE5hbWVcIjoge1xuICAgICAgICAgICAgXCJSZWZcIjogXCJUZXN0QnVja2V0NTYwQjgwQkNcIlxuICAgICAgICAgIH0sXG4gICAgICAgICAgXCJOb3RpZmljYXRpb25Db25maWd1cmF0aW9uXCI6IHtcbiAgICAgICAgICAgIFwiTGFtYmRhRnVuY3Rpb25Db25maWd1cmF0aW9uc1wiOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBcIkV2ZW50c1wiOiBbXG4gICAgICAgICAgICAgICAgICBcInMzOk9iamVjdENyZWF0ZWQ6KlwiXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBcIkxhbWJkYUZ1bmN0aW9uQXJuXCI6IFwiYXJuOmF3czpsYW1iZGE6Li4uXCJcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFwiUXVldWVDb25maWd1cmF0aW9uc1wiOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBcIkV2ZW50c1wiOiBbXG4gICAgICAgICAgICAgICAgICBcInMzOk9iamVjdENyZWF0ZWQ6KlwiXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBcIlF1ZXVlQXJuXCI6IFwiYXJuOmF3czpzcXM6Li4uXCJcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFwiVG9waWNDb25maWd1cmF0aW9uc1wiOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBcIkV2ZW50c1wiOiBbXG4gICAgICAgICAgICAgICAgICBcInMzOk9iamVjdFJlbW92ZWQ6KlwiXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBcIlRvcGljQXJuXCI6IFwiYXJuOmF3czpzbnM6Li4uXCIsXG4gICAgICAgICAgICAgICAgXCJGaWx0ZXJcIjoge1xuICAgICAgICAgICAgICAgICAgXCJLZXlcIjoge1xuICAgICAgICAgICAgICAgICAgICBcIkZpbHRlclJ1bGVzXCI6IFtcbiAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBcIk5hbWVcIjogXCJwcmVmaXhcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiVmFsdWVcIjogXCJwcmVmaXhcIlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICAgIH1cbiAgICAgICAgfSkpO1xuXG4gICAgICAgIHRlc3QuZG9uZSgpO1xuICAgIH0sXG5cbiAgICAnbXVsdGlwbGUgc3Vic2NyaXB0aW9ucyBvZiB0aGUgc2FtZSB0eXBlJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgICAgIGNvbnN0IGJ1Y2tldCA9IG5ldyBzMy5CdWNrZXQoc3RhY2ssICdUZXN0QnVja2V0Jyk7XG5cbiAgICAgICAgYnVja2V0Lm9uRXZlbnQoczMuRXZlbnRUeXBlLk9iamVjdFJlbW92ZWREZWxldGUsIHtcbiAgICAgICAgICAgIGFzQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb246IF8gPT4gKHtcbiAgICAgICAgICAgICAgICB0eXBlOiBzM24uQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25UeXBlLlF1ZXVlLFxuICAgICAgICAgICAgICAgIGFybjogJ2Fybjphd3M6c3FzOi4uLjpxdWV1ZTEnXG4gICAgICAgICAgICB9KVxuICAgICAgICB9KTtcblxuICAgICAgICBidWNrZXQub25FdmVudChzMy5FdmVudFR5cGUuT2JqZWN0UmVtb3ZlZERlbGV0ZSwge1xuICAgICAgICAgICAgYXNCdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvbjogXyA9PiAoe1xuICAgICAgICAgICAgICAgIHR5cGU6IHMzbi5CdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvblR5cGUuUXVldWUsXG4gICAgICAgICAgICAgICAgYXJuOiAnYXJuOmF3czpzcXM6Li4uOnF1ZXVlMidcbiAgICAgICAgICAgIH0pXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdDdXN0b206OlMzQnVja2V0Tm90aWZpY2F0aW9ucycsIHtcbiAgICAgICAgICBcIlNlcnZpY2VUb2tlblwiOiB7XG4gICAgICAgICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICAgICAgICBcIkJ1Y2tldE5vdGlmaWNhdGlvbnNIYW5kbGVyMDUwYTA1ODdiNzU0NDU0N2JmMzI1ZjA5NGEzZGI4MzQ3RUNDMzY5MVwiLFxuICAgICAgICAgICAgICBcIkFyblwiXG4gICAgICAgICAgICBdXG4gICAgICAgICAgfSxcbiAgICAgICAgICBcIkJ1Y2tldE5hbWVcIjoge1xuICAgICAgICAgICAgXCJSZWZcIjogXCJUZXN0QnVja2V0NTYwQjgwQkNcIlxuICAgICAgICAgIH0sXG4gICAgICAgICAgXCJOb3RpZmljYXRpb25Db25maWd1cmF0aW9uXCI6IHtcbiAgICAgICAgICAgIFwiUXVldWVDb25maWd1cmF0aW9uc1wiOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBcIkV2ZW50c1wiOiBbXG4gICAgICAgICAgICAgICAgICBcInMzOk9iamVjdFJlbW92ZWQ6RGVsZXRlXCJcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIFwiUXVldWVBcm5cIjogXCJhcm46YXdzOnNxczouLi46cXVldWUxXCJcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIFwiRXZlbnRzXCI6IFtcbiAgICAgICAgICAgICAgICAgIFwiczM6T2JqZWN0UmVtb3ZlZDpEZWxldGVcIlxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgXCJRdWV1ZUFyblwiOiBcImFybjphd3M6c3FzOi4uLjpxdWV1ZTJcIlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgICAgfVxuICAgICAgICB9KSk7XG5cbiAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgfSxcblxuICAgICdwcmVmaXgvc3VmZml4IGZpbHRlcnMnKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICAgICAgY29uc3QgYnVja2V0ID0gbmV3IHMzLkJ1Y2tldChzdGFjaywgJ1Rlc3RCdWNrZXQnKTtcblxuICAgICAgICBjb25zdCBidWNrZXROb3RpZmljYXRpb25UYXJnZXQgPSB7XG4gICAgICAgICAgICB0eXBlOiBzM24uQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25UeXBlLlF1ZXVlLFxuICAgICAgICAgICAgYXJuOiAnYXJuOmF3czpzcXM6Li4uJ1xuICAgICAgICB9O1xuXG4gICAgICAgIGJ1Y2tldC5vbkV2ZW50KHMzLkV2ZW50VHlwZS5PYmplY3RSZW1vdmVkRGVsZXRlLCB7IGFzQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb246IF8gPT4gYnVja2V0Tm90aWZpY2F0aW9uVGFyZ2V0IH0sIHsgcHJlZml4OiAnaW1hZ2VzLycsIHN1ZmZpeDogJy5qcGcnIH0pO1xuXG4gICAgICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdDdXN0b206OlMzQnVja2V0Tm90aWZpY2F0aW9ucycsIHtcbiAgICAgICAgICBcIlNlcnZpY2VUb2tlblwiOiB7XG4gICAgICAgICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICAgICAgICBcIkJ1Y2tldE5vdGlmaWNhdGlvbnNIYW5kbGVyMDUwYTA1ODdiNzU0NDU0N2JmMzI1ZjA5NGEzZGI4MzQ3RUNDMzY5MVwiLFxuICAgICAgICAgICAgICBcIkFyblwiXG4gICAgICAgICAgICBdXG4gICAgICAgICAgfSxcbiAgICAgICAgICBcIkJ1Y2tldE5hbWVcIjoge1xuICAgICAgICAgICAgXCJSZWZcIjogXCJUZXN0QnVja2V0NTYwQjgwQkNcIlxuICAgICAgICAgIH0sXG4gICAgICAgICAgXCJOb3RpZmljYXRpb25Db25maWd1cmF0aW9uXCI6IHtcbiAgICAgICAgICAgIFwiUXVldWVDb25maWd1cmF0aW9uc1wiOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBcIkV2ZW50c1wiOiBbXG4gICAgICAgICAgICAgICAgICBcInMzOk9iamVjdFJlbW92ZWQ6RGVsZXRlXCJcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIFwiRmlsdGVyXCI6IHtcbiAgICAgICAgICAgICAgICAgIFwiS2V5XCI6IHtcbiAgICAgICAgICAgICAgICAgICAgXCJGaWx0ZXJSdWxlc1wiOiBbXG4gICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJOYW1lXCI6IFwic3VmZml4XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBcIlZhbHVlXCI6IFwiLmpwZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBcIk5hbWVcIjogXCJwcmVmaXhcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiVmFsdWVcIjogXCJpbWFnZXMvXCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFwiUXVldWVBcm5cIjogXCJhcm46YXdzOnNxczouLi5cIlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgICAgfVxuICAgICAgICB9KSk7XG5cbiAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgfSxcblxuICAgICdhIG5vdGlmaWNhdGlvbiBkZXN0aW5hdGlvbiBjYW4gc3BlY2lmeSBhIHNldCBvZiBkZXBlbmRlbmNpZXMgdGhhdCBtdXN0IGJlIHJlc29sdmVkIGJlZm9yZSB0aGUgbm90aWZpY2F0aW9ucyByZXNvdXJjZSBpcyBjcmVhdGVkJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgIGNvbnN0IHN0YWNrID0gbmV3IFN0YWNrKCk7XG5cbiAgICAgICAgY29uc3QgYnVja2V0ID0gbmV3IHMzLkJ1Y2tldChzdGFjaywgJ0J1Y2tldCcpO1xuICAgICAgICBjb25zdCBkZXBlbmRlbnQgPSBuZXcgY2RrLlJlc291cmNlKHN0YWNrLCAnRGVwZW5kZW50JywgeyB0eXBlOiAnRGVwZW5kT25NZScgfSk7XG4gICAgICAgIGNvbnN0IGRlc3Q6IHMzbi5JQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb24gPSB7XG4gICAgICAgICAgICBhc0J1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uOiAoKSA9PiAoe1xuICAgICAgICAgICAgICAgIGFybjogJ2FybicsXG4gICAgICAgICAgICAgICAgdHlwZTogczNuLkJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uVHlwZS5RdWV1ZSxcbiAgICAgICAgICAgICAgICBkZXBlbmRlbmNpZXM6IFsgZGVwZW5kZW50IF1cbiAgICAgICAgICAgIH0pXG4gICAgICAgIH07XG5cbiAgICAgICAgYnVja2V0Lm9uT2JqZWN0Q3JlYXRlZChkZXN0KTtcblxuICAgICAgICB0ZXN0LmRlZXBFcXVhbChzdGFjay50b0Nsb3VkRm9ybWF0aW9uKCkuUmVzb3VyY2VzLkJ1Y2tldE5vdGlmaWNhdGlvbnM4RjJFMjU3RCwge1xuICAgICAgICAgICAgVHlwZTogJ0N1c3RvbTo6UzNCdWNrZXROb3RpZmljYXRpb25zJyxcbiAgICAgICAgICAgIFByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICBTZXJ2aWNlVG9rZW46IHsgJ0ZuOjpHZXRBdHQnOiBbICdCdWNrZXROb3RpZmljYXRpb25zSGFuZGxlcjA1MGEwNTg3Yjc1NDQ1NDdiZjMyNWYwOTRhM2RiODM0N0VDQzM2OTEnLCAnQXJuJyBdIH0sXG4gICAgICAgICAgICAgICAgQnVja2V0TmFtZTogeyBSZWY6ICdCdWNrZXQ4MzkwOEU3NycgfSxcbiAgICAgICAgICAgICAgICBOb3RpZmljYXRpb25Db25maWd1cmF0aW9uOiB7IFF1ZXVlQ29uZmlndXJhdGlvbnM6IFsgeyBFdmVudHM6IFsgJ3MzOk9iamVjdENyZWF0ZWQ6KicgXSwgUXVldWVBcm46ICdhcm4nIH0gXSB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgRGVwZW5kc09uOiBbICdEZXBlbmRlbnQnIF1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgfVxufTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5ub3RpZmljYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidGVzdC5ub3RpZmljYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw0Q0FBdUQ7QUFDdkQscURBQXNEO0FBQ3RELG9DQUFxQztBQUNyQyxzQ0FBcUM7QUFFckMsNkJBQThCO0FBQzlCLDZEQUE2QztBQUs3QyxpQkFBUztJQUNQLDhCQUE4QixDQUFDLElBQVU7UUFDdkMsTUFBTSxLQUFLLEdBQUcsSUFBSSxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFOUIsSUFBSSxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVqQyxlQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDO1lBQ3BCLFdBQVcsRUFBRTtnQkFDYixrQkFBa0IsRUFBRTtvQkFDbEIsTUFBTSxFQUFFLGlCQUFpQjtpQkFDMUI7YUFDQTtTQUNGLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFRCx5RkFBeUYsQ0FBQyxJQUFVO1FBQ2xHLE1BQU0sS0FBSyxHQUFHLElBQUksR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRTlCLE1BQU0sTUFBTSxHQUFHLElBQUksRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFaEQsTUFBTSxLQUFLLEdBQUcsSUFBSSwwQkFBSyxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQztRQUUxQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRWxELGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUM7UUFDbEQsZUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxxQkFB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QUUsUUFBUSxDQUFDLENBQUM7UUFDOUMsTUFBTSxTQUFTLEdBQUcsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxXQUFXLEVBQUUsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUMvRSxNQUFNLElBQUksR0FBdUM7WUFDL0MsK0JBQStCLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztnQkFDdEMsR0FBRyxFQUFFLEtBQUs7Z0JBQ1YsSUFBSSxFQUFFLEdBQUcsQ0FBQyxpQ0FBaUMsQ0FBQyxLQUFLO2dCQUNqRCxZQUFZLEVBQUUsQ0FBRSxTQUFTLENBQUU7YUFDNUIsQ0FBQztTQUNILENBQUM7UUFFRixNQUFNLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTdCLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLGdCQUFnQixFQUFFLENBQUMsU0FBUyxDQUFDLDJCQUEyQixFQUFFO1lBQzdFLElBQUksRUFBRSwrQkFBK0I7WUFDckMsVUFBVSxFQUFFO2dCQUNWLFlBQVksRUFBRSxFQUFFLFlBQVksRUFBRSxDQUFFLG9FQUFvRSxFQUFFLEtBQUssQ0FBRSxFQUFFO2dCQUMvRyxVQUFVLEVBQUUsRUFBRSxHQUFHLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBQ3JDLHlCQUF5QixFQUFFLEVBQUUsbUJBQW1CLEVBQUUsQ0FBRSxFQUFFLE1BQU0sRUFBRSxDQUFFLG9CQUFvQixDQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUFFLEVBQUU7YUFDOUc7WUFDRCxTQUFTLEVBQUUsQ0FBRSxXQUFXLENBQUU7U0FDM0IsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2QsQ0FBQztDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBleHBlY3QsIGhhdmVSZXNvdXJjZSB9IGZyb20gJ0Bhd3MtY2RrL2Fzc2VydCc7XG5pbXBvcnQgczNuID0gcmVxdWlyZSgnQGF3cy1jZGsvYXdzLXMzLW5vdGlmaWNhdGlvbnMnKTtcbmltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnQGF3cy1jZGsvY2RrJztcbmltcG9ydCB7IFRlc3QgfSBmcm9tICdub2RldW5pdCc7XG5pbXBvcnQgczMgPSByZXF1aXJlKCcuLi9saWInKTtcbmltcG9ydCB7IFRvcGljIH0gZnJvbSAnLi9ub3RpZmljYXRpb24tZGVzdHMnO1xuXG4vLyB0c2xpbnQ6ZGlzYWJsZTpvYmplY3QtbGl0ZXJhbC1rZXktcXVvdGVzXG4vLyB0c2xpbnQ6ZGlzYWJsZTptYXgtbGluZS1sZW5ndGhcblxuZXhwb3J0ID0ge1xuICAnYnVja2V0IHdpdGhvdXQgbm90aWZpY2F0aW9ucycodGVzdDogVGVzdCkge1xuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgbmV3IHMzLkJ1Y2tldChzdGFjaywgJ015QnVja2V0Jyk7XG5cbiAgICBleHBlY3Qoc3RhY2spLnRvTWF0Y2goe1xuICAgICAgXCJSZXNvdXJjZXNcIjoge1xuICAgICAgXCJNeUJ1Y2tldEY2OEYzRkYwXCI6IHtcbiAgICAgICAgXCJUeXBlXCI6IFwiQVdTOjpTMzo6QnVja2V0XCJcbiAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICd3aGVuIG5vdGlmaWNhdGlvbiBhcmUgYWRkZWQsIGEgY3VzdG9tIHJlc291cmNlIGlzIHByb3Zpc2lvbmVkICsgYSBsYW1iZGEgaGFuZGxlciBmb3IgaXQnKHRlc3Q6IFRlc3QpIHtcbiAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcblxuICAgIGNvbnN0IGJ1Y2tldCA9IG5ldyBzMy5CdWNrZXQoc3RhY2ssICdNeUJ1Y2tldCcpO1xuXG4gICAgY29uc3QgdG9waWMgPSBuZXcgVG9waWMoc3RhY2ssICdNeVRvcGljJyk7XG5cbiAgICBidWNrZXQub25FdmVudChzMy5FdmVudFR5cGUuT2JqZWN0Q3JlYXRlZCwgdG9waWMpO1xuXG4gICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0FXUzo6UzM6OkJ1Y2tldCcpKTtcbiAgICBleHBlY3Qoc3RhY2spLnRvKGhhdmVSZXNvdXJjZSgnQVdTOjpMYW1iZGE6OkZ1bmN0aW9uJywgeyBEZXNjcmlwdGlvbjogJ0FXUyBDbG91ZEZvcm1hdGlvbiBoYW5kbGVyIGZvciBcIkN1c3RvbTo6UzNCdWNrZXROb3RpZmljYXRpb25zXCIgcmVzb3VyY2VzIChAYXdzLWNkay9hd3MtczMpJyB9KSk7XG4gICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0N1c3RvbTo6UzNCdWNrZXROb3RpZmljYXRpb25zJykpO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ2J1Y2tldE5vdGlmaWNhdGlvblRhcmdldCBpcyBub3QgY2FsbGVkIGR1cmluZyBzeW50aGVzaXMnKHRlc3Q6IFRlc3QpIHtcbiAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcblxuICAgIC8vIG5vdGljZSB0aGUgb3JkZXIgaGVyZSAtIHRvcGljIGlzIGRlZmluZWQgYmVmb3JlIGJ1Y2tldFxuICAgIC8vIGJ1dCB0aGlzIHNob3VsZG4ndCBpbXBhY3QgdGhlIGZhY3QgdGhhdCB0aGUgdG9waWMgcG9saWN5IGluY2x1ZGVzXG4gICAgLy8gdGhlIGJ1Y2tldCBpbmZvcm1hdGlvblxuICAgIGNvbnN0IHRvcGljID0gbmV3IFRvcGljKHN0YWNrLCAnVG9waWMnKTtcbiAgICBjb25zdCBidWNrZXQgPSBuZXcgczMuQnVja2V0KHN0YWNrLCAnTXlCdWNrZXQnKTtcblxuICAgIGJ1Y2tldC5vbk9iamVjdENyZWF0ZWQodG9waWMpO1xuXG4gICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0FXUzo6U05TOjpUb3BpY1BvbGljeScsIHtcbiAgICAgIFwiVG9waWNzXCI6IFtcbiAgICAgIHtcbiAgICAgICAgXCJSZWZcIjogXCJUb3BpY0JGQzdBRjZFXCJcbiAgICAgIH1cbiAgICAgIF0sXG4gICAgICBcIlBvbGljeURvY3VtZW50XCI6IHtcbiAgICAgIFwiU3RhdGVtZW50XCI6IFtcbiAgICAgICAge1xuICAgICAgICBcIkFjdGlvblwiOiBcInNuczpQdWJsaXNoXCIsXG4gICAgICAgIFwiQ29uZGl0aW9uXCI6IHtcbiAgICAgICAgICBcIkFybkxpa2VcIjoge1xuICAgICAgICAgIFwiYXdzOlNvdXJjZUFyblwiOiB7XG4gICAgICAgICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICAgICAgXCJNeUJ1Y2tldEY2OEYzRkYwXCIsXG4gICAgICAgICAgICBcIkFyblwiXG4gICAgICAgICAgICBdXG4gICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgXCJFZmZlY3RcIjogXCJBbGxvd1wiLFxuICAgICAgICBcIlByaW5jaXBhbFwiOiB7XG4gICAgICAgICAgXCJTZXJ2aWNlXCI6IFwiczMuYW1hem9uYXdzLmNvbVwiXG4gICAgICAgIH0sXG4gICAgICAgIFwiUmVzb3VyY2VcIjoge1xuICAgICAgICAgIFwiUmVmXCI6IFwiVG9waWNCRkM3QUY2RVwiXG4gICAgICAgIH0sXG4gICAgICAgIFwiU2lkXCI6IFwic2lkMFwiXG4gICAgICAgIH1cbiAgICAgIF0sXG4gICAgICBcIlZlcnNpb25cIjogXCIyMDEyLTEwLTE3XCJcbiAgICAgIH1cbiAgICB9KSk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICAnc3Vic2NyaXB0aW9uIHR5cGVzJyh0ZXN0OiBUZXN0KSB7XG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBidWNrZXQgPSBuZXcgczMuQnVja2V0KHN0YWNrLCAnVGVzdEJ1Y2tldCcpO1xuXG4gICAgY29uc3QgcXVldWVUYXJnZXQ6IHMzbi5JQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb24gPSB7XG4gICAgICBhc0J1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uOiBfID0+ICh7XG4gICAgICAgIHR5cGU6IHMzbi5CdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvblR5cGUuUXVldWUsXG4gICAgICAgIGFybjogJ2Fybjphd3M6c3FzOi4uLidcbiAgICAgIH0pXG4gICAgfTtcblxuICAgIGNvbnN0IGxhbWJkYVRhcmdldDogczNuLklCdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvbiA9IHtcbiAgICAgIGFzQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb246IF8gPT4gKHtcbiAgICAgICAgdHlwZTogczNuLkJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uVHlwZS5MYW1iZGEsXG4gICAgICAgIGFybjogJ2Fybjphd3M6bGFtYmRhOi4uLidcbiAgICAgIH0pXG4gICAgfTtcblxuICAgIGNvbnN0IHRvcGljVGFyZ2V0OiBzM24uSUJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uID0ge1xuICAgICAgYXNCdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvbjogXyA9PiAoe1xuICAgICAgICB0eXBlOiBzM24uQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25UeXBlLlRvcGljLFxuICAgICAgICBhcm46ICdhcm46YXdzOnNuczouLi4nXG4gICAgICB9KVxuICAgIH07XG5cbiAgICBidWNrZXQub25FdmVudChzMy5FdmVudFR5cGUuT2JqZWN0Q3JlYXRlZCwgcXVldWVUYXJnZXQpO1xuICAgIGJ1Y2tldC5vbkV2ZW50KHMzLkV2ZW50VHlwZS5PYmplY3RDcmVhdGVkLCBsYW1iZGFUYXJnZXQpO1xuICAgIGJ1Y2tldC5vbk9iamVjdFJlbW92ZWQodG9waWNUYXJnZXQsIHsgcHJlZml4OiAncHJlZml4JyB9KTtcblxuICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdDdXN0b206OlMzQnVja2V0Tm90aWZpY2F0aW9ucycsIHtcbiAgICAgIFwiU2VydmljZVRva2VuXCI6IHtcbiAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgIFwiQnVja2V0Tm90aWZpY2F0aW9uc0hhbmRsZXIwNTBhMDU4N2I3NTQ0NTQ3YmYzMjVmMDk0YTNkYjgzNDdFQ0MzNjkxXCIsXG4gICAgICAgIFwiQXJuXCJcbiAgICAgIF1cbiAgICAgIH0sXG4gICAgICBcIkJ1Y2tldE5hbWVcIjoge1xuICAgICAgXCJSZWZcIjogXCJUZXN0QnVja2V0NTYwQjgwQkNcIlxuICAgICAgfSxcbiAgICAgIFwiTm90aWZpY2F0aW9uQ29uZmlndXJhdGlvblwiOiB7XG4gICAgICBcIkxhbWJkYUZ1bmN0aW9uQ29uZmlndXJhdGlvbnNcIjogW1xuICAgICAgICB7XG4gICAgICAgIFwiRXZlbnRzXCI6IFtcbiAgICAgICAgICBcInMzOk9iamVjdENyZWF0ZWQ6KlwiXG4gICAgICAgIF0sXG4gICAgICAgIFwiTGFtYmRhRnVuY3Rpb25Bcm5cIjogXCJhcm46YXdzOmxhbWJkYTouLi5cIlxuICAgICAgICB9XG4gICAgICBdLFxuICAgICAgXCJRdWV1ZUNvbmZpZ3VyYXRpb25zXCI6IFtcbiAgICAgICAge1xuICAgICAgICBcIkV2ZW50c1wiOiBbXG4gICAgICAgICAgXCJzMzpPYmplY3RDcmVhdGVkOipcIlxuICAgICAgICBdLFxuICAgICAgICBcIlF1ZXVlQXJuXCI6IFwiYXJuOmF3czpzcXM6Li4uXCJcbiAgICAgICAgfVxuICAgICAgXSxcbiAgICAgIFwiVG9waWNDb25maWd1cmF0aW9uc1wiOiBbXG4gICAgICAgIHtcbiAgICAgICAgXCJFdmVudHNcIjogW1xuICAgICAgICAgIFwiczM6T2JqZWN0UmVtb3ZlZDoqXCJcbiAgICAgICAgXSxcbiAgICAgICAgXCJUb3BpY0FyblwiOiBcImFybjphd3M6c25zOi4uLlwiLFxuICAgICAgICBcIkZpbHRlclwiOiB7XG4gICAgICAgICAgXCJLZXlcIjoge1xuICAgICAgICAgIFwiRmlsdGVyUnVsZXNcIjogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgXCJOYW1lXCI6IFwicHJlZml4XCIsXG4gICAgICAgICAgICBcIlZhbHVlXCI6IFwicHJlZml4XCJcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBdXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIF1cbiAgICAgIH1cbiAgICB9KSk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICAnbXVsdGlwbGUgc3Vic2NyaXB0aW9ucyBvZiB0aGUgc2FtZSB0eXBlJyh0ZXN0OiBUZXN0KSB7XG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICBjb25zdCBidWNrZXQgPSBuZXcgczMuQnVja2V0KHN0YWNrLCAnVGVzdEJ1Y2tldCcpO1xuXG4gICAgYnVja2V0Lm9uRXZlbnQoczMuRXZlbnRUeXBlLk9iamVjdFJlbW92ZWREZWxldGUsIHtcbiAgICAgIGFzQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb246IF8gPT4gKHtcbiAgICAgICAgdHlwZTogczNuLkJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uVHlwZS5RdWV1ZSxcbiAgICAgICAgYXJuOiAnYXJuOmF3czpzcXM6Li4uOnF1ZXVlMSdcbiAgICAgIH0pXG4gICAgfSk7XG5cbiAgICBidWNrZXQub25FdmVudChzMy5FdmVudFR5cGUuT2JqZWN0UmVtb3ZlZERlbGV0ZSwge1xuICAgICAgYXNCdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvbjogXyA9PiAoe1xuICAgICAgICB0eXBlOiBzM24uQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25UeXBlLlF1ZXVlLFxuICAgICAgICBhcm46ICdhcm46YXdzOnNxczouLi46cXVldWUyJ1xuICAgICAgfSlcbiAgICB9KTtcblxuICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdDdXN0b206OlMzQnVja2V0Tm90aWZpY2F0aW9ucycsIHtcbiAgICAgIFwiU2VydmljZVRva2VuXCI6IHtcbiAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgIFwiQnVja2V0Tm90aWZpY2F0aW9uc0hhbmRsZXIwNTBhMDU4N2I3NTQ0NTQ3YmYzMjVmMDk0YTNkYjgzNDdFQ0MzNjkxXCIsXG4gICAgICAgIFwiQXJuXCJcbiAgICAgIF1cbiAgICAgIH0sXG4gICAgICBcIkJ1Y2tldE5hbWVcIjoge1xuICAgICAgXCJSZWZcIjogXCJUZXN0QnVja2V0NTYwQjgwQkNcIlxuICAgICAgfSxcbiAgICAgIFwiTm90aWZpY2F0aW9uQ29uZmlndXJhdGlvblwiOiB7XG4gICAgICBcIlF1ZXVlQ29uZmlndXJhdGlvbnNcIjogW1xuICAgICAgICB7XG4gICAgICAgIFwiRXZlbnRzXCI6IFtcbiAgICAgICAgICBcInMzOk9iamVjdFJlbW92ZWQ6RGVsZXRlXCJcbiAgICAgICAgXSxcbiAgICAgICAgXCJRdWV1ZUFyblwiOiBcImFybjphd3M6c3FzOi4uLjpxdWV1ZTFcIlxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgIFwiRXZlbnRzXCI6IFtcbiAgICAgICAgICBcInMzOk9iamVjdFJlbW92ZWQ6RGVsZXRlXCJcbiAgICAgICAgXSxcbiAgICAgICAgXCJRdWV1ZUFyblwiOiBcImFybjphd3M6c3FzOi4uLjpxdWV1ZTJcIlxuICAgICAgICB9XG4gICAgICBdXG4gICAgICB9XG4gICAgfSkpO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ3ByZWZpeC9zdWZmaXggZmlsdGVycycodGVzdDogVGVzdCkge1xuICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgY29uc3QgYnVja2V0ID0gbmV3IHMzLkJ1Y2tldChzdGFjaywgJ1Rlc3RCdWNrZXQnKTtcblxuICAgIGNvbnN0IGJ1Y2tldE5vdGlmaWNhdGlvblRhcmdldCA9IHtcbiAgICAgIHR5cGU6IHMzbi5CdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvblR5cGUuUXVldWUsXG4gICAgICBhcm46ICdhcm46YXdzOnNxczouLi4nXG4gICAgfTtcblxuICAgIGJ1Y2tldC5vbkV2ZW50KHMzLkV2ZW50VHlwZS5PYmplY3RSZW1vdmVkRGVsZXRlLCB7IGFzQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb246IF8gPT4gYnVja2V0Tm90aWZpY2F0aW9uVGFyZ2V0IH0sIHsgcHJlZml4OiAnaW1hZ2VzLycsIHN1ZmZpeDogJy5qcGcnIH0pO1xuXG4gICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0N1c3RvbTo6UzNCdWNrZXROb3RpZmljYXRpb25zJywge1xuICAgICAgXCJTZXJ2aWNlVG9rZW5cIjoge1xuICAgICAgXCJGbjo6R2V0QXR0XCI6IFtcbiAgICAgICAgXCJCdWNrZXROb3RpZmljYXRpb25zSGFuZGxlcjA1MGEwNTg3Yjc1NDQ1NDdiZjMyNWYwOTRhM2RiODM0N0VDQzM2OTFcIixcbiAgICAgICAgXCJBcm5cIlxuICAgICAgXVxuICAgICAgfSxcbiAgICAgIFwiQnVja2V0TmFtZVwiOiB7XG4gICAgICBcIlJlZlwiOiBcIlRlc3RCdWNrZXQ1NjBCODBCQ1wiXG4gICAgICB9LFxuICAgICAgXCJOb3RpZmljYXRpb25Db25maWd1cmF0aW9uXCI6IHtcbiAgICAgIFwiUXVldWVDb25maWd1cmF0aW9uc1wiOiBbXG4gICAgICAgIHtcbiAgICAgICAgXCJFdmVudHNcIjogW1xuICAgICAgICAgIFwiczM6T2JqZWN0UmVtb3ZlZDpEZWxldGVcIlxuICAgICAgICBdLFxuICAgICAgICBcIkZpbHRlclwiOiB7XG4gICAgICAgICAgXCJLZXlcIjoge1xuICAgICAgICAgIFwiRmlsdGVyUnVsZXNcIjogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgXCJOYW1lXCI6IFwic3VmZml4XCIsXG4gICAgICAgICAgICBcIlZhbHVlXCI6IFwiLmpwZ1wiXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgXCJOYW1lXCI6IFwicHJlZml4XCIsXG4gICAgICAgICAgICBcIlZhbHVlXCI6IFwiaW1hZ2VzL1wiXG4gICAgICAgICAgICB9XG4gICAgICAgICAgXVxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgXCJRdWV1ZUFyblwiOiBcImFybjphd3M6c3FzOi4uLlwiXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICAgIH1cbiAgICB9KSk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICAnYSBub3RpZmljYXRpb24gZGVzdGluYXRpb24gY2FuIHNwZWNpZnkgYSBzZXQgb2YgZGVwZW5kZW5jaWVzIHRoYXQgbXVzdCBiZSByZXNvbHZlZCBiZWZvcmUgdGhlIG5vdGlmaWNhdGlvbnMgcmVzb3VyY2UgaXMgY3JlYXRlZCcodGVzdDogVGVzdCkge1xuICAgIGNvbnN0IHN0YWNrID0gbmV3IFN0YWNrKCk7XG5cbiAgICBjb25zdCBidWNrZXQgPSBuZXcgczMuQnVja2V0KHN0YWNrLCAnQnVja2V0Jyk7XG4gICAgY29uc3QgZGVwZW5kZW50ID0gbmV3IGNkay5SZXNvdXJjZShzdGFjaywgJ0RlcGVuZGVudCcsIHsgdHlwZTogJ0RlcGVuZE9uTWUnIH0pO1xuICAgIGNvbnN0IGRlc3Q6IHMzbi5JQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb24gPSB7XG4gICAgICBhc0J1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uOiAoKSA9PiAoe1xuICAgICAgICBhcm46ICdhcm4nLFxuICAgICAgICB0eXBlOiBzM24uQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25UeXBlLlF1ZXVlLFxuICAgICAgICBkZXBlbmRlbmNpZXM6IFsgZGVwZW5kZW50IF1cbiAgICAgIH0pXG4gICAgfTtcblxuICAgIGJ1Y2tldC5vbk9iamVjdENyZWF0ZWQoZGVzdCk7XG5cbiAgICB0ZXN0LmRlZXBFcXVhbChzdGFjay50b0Nsb3VkRm9ybWF0aW9uKCkuUmVzb3VyY2VzLkJ1Y2tldE5vdGlmaWNhdGlvbnM4RjJFMjU3RCwge1xuICAgICAgVHlwZTogJ0N1c3RvbTo6UzNCdWNrZXROb3RpZmljYXRpb25zJyxcbiAgICAgIFByb3BlcnRpZXM6IHtcbiAgICAgICAgU2VydmljZVRva2VuOiB7ICdGbjo6R2V0QXR0JzogWyAnQnVja2V0Tm90aWZpY2F0aW9uc0hhbmRsZXIwNTBhMDU4N2I3NTQ0NTQ3YmYzMjVmMDk0YTNkYjgzNDdFQ0MzNjkxJywgJ0FybicgXSB9LFxuICAgICAgICBCdWNrZXROYW1lOiB7IFJlZjogJ0J1Y2tldDgzOTA4RTc3JyB9LFxuICAgICAgICBOb3RpZmljYXRpb25Db25maWd1cmF0aW9uOiB7IFF1ZXVlQ29uZmlndXJhdGlvbnM6IFsgeyBFdmVudHM6IFsgJ3MzOk9iamVjdENyZWF0ZWQ6KicgXSwgUXVldWVBcm46ICdhcm4nIH0gXSB9XG4gICAgICB9LFxuICAgICAgRGVwZW5kc09uOiBbICdEZXBlbmRlbnQnIF1cbiAgICB9KTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9XG59O1xuIl19

@@ -112,2 +112,2 @@ "use strict";

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5ydWxlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRlc3QucnVsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDRDQUF1RDtBQUN2RCxzQ0FBcUM7QUFFckMsZ0NBQThDO0FBRTlDLGlCQUFTO0lBQ0wsNkJBQTZCLENBQUMsSUFBVTtRQUNwQyxRQUFRO1FBQ1IsTUFBTSxLQUFLLEdBQUcsSUFBSSxXQUFLLEVBQUUsQ0FBQztRQUUxQixPQUFPO1FBQ1AsSUFBSSxZQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRTtZQUN4QixjQUFjLEVBQUUsQ0FBQztvQkFDYixnQkFBZ0IsRUFBRSxFQUFFO2lCQUN2QixDQUFDO1NBQ0wsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxpQkFBaUIsRUFBRTtZQUM3QyxzQkFBc0IsRUFBRTtnQkFDcEIsS0FBSyxFQUFFLENBQUM7d0JBQ0osZ0JBQWdCLEVBQUUsRUFBRTt3QkFDcEIsTUFBTSxFQUFFLFNBQVM7cUJBQ3BCLENBQUM7YUFDTDtTQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxvREFBb0QsQ0FBQyxJQUFVO1FBQzNELFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBRTFCLE9BQU87UUFDUCxNQUFNLE1BQU0sR0FBRyxJQUFJLFlBQU0sQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDM0MsTUFBTSxDQUFDLGdCQUFnQixDQUFDO1lBQ3BCLGdCQUFnQixFQUFFLEVBQUU7U0FDdkIsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxpQkFBaUIsRUFBRTtZQUM3QyxzQkFBc0IsRUFBRTtnQkFDcEIsS0FBSyxFQUFFLENBQUM7d0JBQ0osZ0JBQWdCLEVBQUUsRUFBRTt3QkFDcEIsTUFBTSxFQUFFLFNBQVM7cUJBQ3BCLENBQUM7YUFDTDtTQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCw2QkFBNkIsQ0FBQyxJQUFVO1FBQ3BDLFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBRTFCLE9BQU87UUFDUCxJQUFJLFlBQU0sQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFO1lBQ3hCLGNBQWMsRUFBRSxDQUFDO29CQUNiLGNBQWMsRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUM7aUJBQ3pDLENBQUM7U0FDTCxDQUFDLENBQUM7UUFFSCxPQUFPO1FBQ1AsZUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxxQkFBWSxDQUFDLGlCQUFpQixFQUFFO1lBQzdDLHNCQUFzQixFQUFFO2dCQUNwQixLQUFLLEVBQUUsQ0FBQzt3QkFDSixjQUFjLEVBQUUscUJBQXFCO3dCQUNyQyxNQUFNLEVBQUUsU0FBUztxQkFDcEIsQ0FBQzthQUNMO1NBQ0osQ0FBQyxDQUFDLENBQUM7UUFFSixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVELDZCQUE2QixDQUFDLElBQVU7UUFDcEMsUUFBUTtRQUNSLE1BQU0sS0FBSyxHQUFHLElBQUksV0FBSyxFQUFFLENBQUM7UUFFMUIsT0FBTztRQUNQLElBQUksWUFBTSxDQUFDLEtBQUssRUFBRSxRQUFRLEVBQUU7WUFDeEIsY0FBYyxFQUFFLENBQUM7b0JBQ2IsV0FBVyxFQUFFLENBQUM7NEJBQ1YsWUFBWSxFQUFFLGtCQUFZLENBQUMsT0FBTzs0QkFDbEMsZ0JBQWdCLEVBQUUsRUFBRTt5QkFDdkIsQ0FBQztpQkFDTCxDQUFDO1NBQ0wsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxpQkFBaUIsRUFBRTtZQUM3QyxzQkFBc0IsRUFBRTtnQkFDcEIsS0FBSyxFQUFFLENBQUM7d0JBQ0osV0FBVyxFQUFFLENBQUM7Z0NBQ1YsWUFBWSxFQUFFLFNBQVM7Z0NBQ3ZCLGdCQUFnQixFQUFFLEVBQUU7NkJBQ3ZCLENBQUM7d0JBQ0YsTUFBTSxFQUFFLFNBQVM7cUJBQ3BCLENBQUM7YUFDTDtTQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCw4Q0FBOEMsQ0FBQyxJQUFVO1FBQ3JELFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBRTFCLDJDQUEyQztRQUMzQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNiLElBQUksWUFBTSxDQUFDLEtBQUssRUFBRSxTQUFTLEVBQUU7Z0JBQ3pCLGNBQWMsRUFBRSxDQUFDO3dCQUNiLGlDQUFpQyxFQUFFLEVBQUU7cUJBQ3hDLENBQUM7YUFDTCxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztRQUVILCtDQUErQztRQUMvQyxJQUFJLFlBQU0sQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFO1lBQ3pCLFNBQVMsRUFBRSxJQUFJO1lBQ2YsY0FBYyxFQUFFLENBQUM7b0JBQ2IsaUNBQWlDLEVBQUUsRUFBRTtpQkFDeEMsQ0FBQztTQUNMLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQixDQUFDO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4cGVjdCwgaGF2ZVJlc291cmNlIH0gZnJvbSAnQGF3cy1jZGsvYXNzZXJ0JztcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnQGF3cy1jZGsvY2RrJztcbmltcG9ydCB7IFRlc3QgfSBmcm9tICdub2RldW5pdCc7XG5pbXBvcnQgeyBCdWNrZXQsIFN0b3JhZ2VDbGFzcyB9IGZyb20gJy4uL2xpYic7XG5cbmV4cG9ydCA9IHtcbiAgICAnQnVja2V0IHdpdGggZXhwaXJhdGlvbiBkYXlzJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgIC8vIEdJVkVOXG4gICAgICAgIGNvbnN0IHN0YWNrID0gbmV3IFN0YWNrKCk7XG5cbiAgICAgICAgLy8gV0hFTlxuICAgICAgICBuZXcgQnVja2V0KHN0YWNrLCAnQnVja2V0Jywge1xuICAgICAgICAgICAgbGlmZWN5Y2xlUnVsZXM6IFt7XG4gICAgICAgICAgICAgICAgZXhwaXJhdGlvbkluRGF5czogMzBcbiAgICAgICAgICAgIH1dXG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIFRIRU5cbiAgICAgICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0FXUzo6UzM6OkJ1Y2tldCcsIHtcbiAgICAgICAgICAgIExpZmVjeWNsZUNvbmZpZ3VyYXRpb246IHtcbiAgICAgICAgICAgICAgICBSdWxlczogW3tcbiAgICAgICAgICAgICAgICAgICAgRXhwaXJhdGlvbkluRGF5czogMzAsXG4gICAgICAgICAgICAgICAgICAgIFN0YXR1czogXCJFbmFibGVkXCJcbiAgICAgICAgICAgICAgICB9XVxuICAgICAgICAgICAgfVxuICAgICAgICB9KSk7XG5cbiAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgfSxcblxuICAgICdDYW4gdXNlIGFkZExpZmVjeWNsZVJ1bGUoKSB0byBhZGQgYSBsaWZlY3ljbGUgcnVsZScodGVzdDogVGVzdCkge1xuICAgICAgICAvLyBHSVZFTlxuICAgICAgICBjb25zdCBzdGFjayA9IG5ldyBTdGFjaygpO1xuXG4gICAgICAgIC8vIFdIRU5cbiAgICAgICAgY29uc3QgYnVja2V0ID0gbmV3IEJ1Y2tldChzdGFjaywgJ0J1Y2tldCcpO1xuICAgICAgICBidWNrZXQuYWRkTGlmZWN5Y2xlUnVsZSh7XG4gICAgICAgICAgICBleHBpcmF0aW9uSW5EYXlzOiAzMFxuICAgICAgICB9KTtcblxuICAgICAgICAvLyBUSEVOXG4gICAgICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdBV1M6OlMzOjpCdWNrZXQnLCB7XG4gICAgICAgICAgICBMaWZlY3ljbGVDb25maWd1cmF0aW9uOiB7XG4gICAgICAgICAgICAgICAgUnVsZXM6IFt7XG4gICAgICAgICAgICAgICAgICAgIEV4cGlyYXRpb25JbkRheXM6IDMwLFxuICAgICAgICAgICAgICAgICAgICBTdGF0dXM6IFwiRW5hYmxlZFwiXG4gICAgICAgICAgICAgICAgfV1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSkpO1xuXG4gICAgICAgIHRlc3QuZG9uZSgpO1xuICAgIH0sXG5cbiAgICAnQnVja2V0IHdpdGggZXhwaXJhdGlvbiBkYXRlJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgIC8vIEdJVkVOXG4gICAgICAgIGNvbnN0IHN0YWNrID0gbmV3IFN0YWNrKCk7XG5cbiAgICAgICAgLy8gV0hFTlxuICAgICAgICBuZXcgQnVja2V0KHN0YWNrLCAnQnVja2V0Jywge1xuICAgICAgICAgICAgbGlmZWN5Y2xlUnVsZXM6IFt7XG4gICAgICAgICAgICAgICAgZXhwaXJhdGlvbkRhdGU6IG5ldyBEYXRlKCcyMDE4LTAxLTAxJylcbiAgICAgICAgICAgIH1dXG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIFRIRU5cbiAgICAgICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0FXUzo6UzM6OkJ1Y2tldCcsIHtcbiAgICAgICAgICAgIExpZmVjeWNsZUNvbmZpZ3VyYXRpb246IHtcbiAgICAgICAgICAgICAgICBSdWxlczogW3tcbiAgICAgICAgICAgICAgICAgICAgRXhwaXJhdGlvbkRhdGU6ICcyMDE4LTAxLTAxVDAwOjAwOjAwJyxcbiAgICAgICAgICAgICAgICAgICAgU3RhdHVzOiBcIkVuYWJsZWRcIlxuICAgICAgICAgICAgICAgIH1dXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pKTtcblxuICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICB9LFxuXG4gICAgJ0J1Y2tldCB3aXRoIHRyYW5zaXRpb24gcnVsZScodGVzdDogVGVzdCkge1xuICAgICAgICAvLyBHSVZFTlxuICAgICAgICBjb25zdCBzdGFjayA9IG5ldyBTdGFjaygpO1xuXG4gICAgICAgIC8vIFdIRU5cbiAgICAgICAgbmV3IEJ1Y2tldChzdGFjaywgJ0J1Y2tldCcsIHtcbiAgICAgICAgICAgIGxpZmVjeWNsZVJ1bGVzOiBbe1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb25zOiBbe1xuICAgICAgICAgICAgICAgICAgICBzdG9yYWdlQ2xhc3M6IFN0b3JhZ2VDbGFzcy5HbGFjaWVyLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uSW5EYXlzOiAzMFxuICAgICAgICAgICAgICAgIH1dXG4gICAgICAgICAgICB9XVxuICAgICAgICB9KTtcblxuICAgICAgICAvLyBUSEVOXG4gICAgICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdBV1M6OlMzOjpCdWNrZXQnLCB7XG4gICAgICAgICAgICBMaWZlY3ljbGVDb25maWd1cmF0aW9uOiB7XG4gICAgICAgICAgICAgICAgUnVsZXM6IFt7XG4gICAgICAgICAgICAgICAgICAgIFRyYW5zaXRpb25zOiBbe1xuICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmFnZUNsYXNzOiAnR0xBQ0lFUicsXG4gICAgICAgICAgICAgICAgICAgICAgICBUcmFuc2l0aW9uSW5EYXlzOiAzMFxuICAgICAgICAgICAgICAgICAgICB9XSxcbiAgICAgICAgICAgICAgICAgICAgU3RhdHVzOiBcIkVuYWJsZWRcIlxuICAgICAgICAgICAgICAgIH1dXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pKTtcblxuICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICB9LFxuXG4gICAgJ05vbmN1cnJlbnQgcnVsZSBvbiBub252ZXJzaW9uZWQgYnVja2V0IGZhaWxzJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgIC8vIEdJVkVOXG4gICAgICAgIGNvbnN0IHN0YWNrID0gbmV3IFN0YWNrKCk7XG5cbiAgICAgICAgLy8gV0hFTjogRmFpbCBiZWNhdXNlIG9mIGxhY2sgb2YgdmVyc2lvbmluZ1xuICAgICAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICAgICAgICBuZXcgQnVja2V0KHN0YWNrLCAnQnVja2V0MScsIHtcbiAgICAgICAgICAgICAgICBsaWZlY3ljbGVSdWxlczogW3tcbiAgICAgICAgICAgICAgICAgICAgbm9uY3VycmVudFZlcnNpb25FeHBpcmF0aW9uSW5EYXlzOiAxMFxuICAgICAgICAgICAgICAgIH1dXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gV0hFTjogU3VjY2VlZHMgYmVjYXVzZSB2ZXJzaW9uaW5nIGlzIGVuYWJsZWRcbiAgICAgICAgbmV3IEJ1Y2tldChzdGFjaywgJ0J1Y2tldDInLCB7XG4gICAgICAgICAgICB2ZXJzaW9uZWQ6IHRydWUsXG4gICAgICAgICAgICBsaWZlY3ljbGVSdWxlczogW3tcbiAgICAgICAgICAgICAgICBub25jdXJyZW50VmVyc2lvbkV4cGlyYXRpb25JbkRheXM6IDEwXG4gICAgICAgICAgICB9XVxuICAgICAgICB9KTtcblxuICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICB9LFxufTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5ydWxlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRlc3QucnVsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDRDQUF1RDtBQUN2RCxzQ0FBcUM7QUFFckMsZ0NBQThDO0FBRTlDLGlCQUFTO0lBQ1AsNkJBQTZCLENBQUMsSUFBVTtRQUN0QyxRQUFRO1FBQ1IsTUFBTSxLQUFLLEdBQUcsSUFBSSxXQUFLLEVBQUUsQ0FBQztRQUUxQixPQUFPO1FBQ1AsSUFBSSxZQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRTtZQUMxQixjQUFjLEVBQUUsQ0FBQztvQkFDZixnQkFBZ0IsRUFBRSxFQUFFO2lCQUNyQixDQUFDO1NBQ0gsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxpQkFBaUIsRUFBRTtZQUMvQyxzQkFBc0IsRUFBRTtnQkFDdEIsS0FBSyxFQUFFLENBQUM7d0JBQ04sZ0JBQWdCLEVBQUUsRUFBRTt3QkFDcEIsTUFBTSxFQUFFLFNBQVM7cUJBQ2xCLENBQUM7YUFDSDtTQUNGLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVELG9EQUFvRCxDQUFDLElBQVU7UUFDN0QsUUFBUTtRQUNSLE1BQU0sS0FBSyxHQUFHLElBQUksV0FBSyxFQUFFLENBQUM7UUFFMUIsT0FBTztRQUNQLE1BQU0sTUFBTSxHQUFHLElBQUksWUFBTSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztRQUMzQyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7WUFDdEIsZ0JBQWdCLEVBQUUsRUFBRTtTQUNyQixDQUFDLENBQUM7UUFFSCxPQUFPO1FBQ1AsZUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxxQkFBWSxDQUFDLGlCQUFpQixFQUFFO1lBQy9DLHNCQUFzQixFQUFFO2dCQUN0QixLQUFLLEVBQUUsQ0FBQzt3QkFDTixnQkFBZ0IsRUFBRSxFQUFFO3dCQUNwQixNQUFNLEVBQUUsU0FBUztxQkFDbEIsQ0FBQzthQUNIO1NBQ0YsQ0FBQyxDQUFDLENBQUM7UUFFSixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDZCxDQUFDO0lBRUQsNkJBQTZCLENBQUMsSUFBVTtRQUN0QyxRQUFRO1FBQ1IsTUFBTSxLQUFLLEdBQUcsSUFBSSxXQUFLLEVBQUUsQ0FBQztRQUUxQixPQUFPO1FBQ1AsSUFBSSxZQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRTtZQUMxQixjQUFjLEVBQUUsQ0FBQztvQkFDZixjQUFjLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDO2lCQUN2QyxDQUFDO1NBQ0gsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxpQkFBaUIsRUFBRTtZQUMvQyxzQkFBc0IsRUFBRTtnQkFDdEIsS0FBSyxFQUFFLENBQUM7d0JBQ04sY0FBYyxFQUFFLHFCQUFxQjt3QkFDckMsTUFBTSxFQUFFLFNBQVM7cUJBQ2xCLENBQUM7YUFDSDtTQUNGLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVELDZCQUE2QixDQUFDLElBQVU7UUFDdEMsUUFBUTtRQUNSLE1BQU0sS0FBSyxHQUFHLElBQUksV0FBSyxFQUFFLENBQUM7UUFFMUIsT0FBTztRQUNQLElBQUksWUFBTSxDQUFDLEtBQUssRUFBRSxRQUFRLEVBQUU7WUFDMUIsY0FBYyxFQUFFLENBQUM7b0JBQ2YsV0FBVyxFQUFFLENBQUM7NEJBQ1osWUFBWSxFQUFFLGtCQUFZLENBQUMsT0FBTzs0QkFDbEMsZ0JBQWdCLEVBQUUsRUFBRTt5QkFDckIsQ0FBQztpQkFDSCxDQUFDO1NBQ0gsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxpQkFBaUIsRUFBRTtZQUMvQyxzQkFBc0IsRUFBRTtnQkFDdEIsS0FBSyxFQUFFLENBQUM7d0JBQ04sV0FBVyxFQUFFLENBQUM7Z0NBQ1osWUFBWSxFQUFFLFNBQVM7Z0NBQ3ZCLGdCQUFnQixFQUFFLEVBQUU7NkJBQ3JCLENBQUM7d0JBQ0YsTUFBTSxFQUFFLFNBQVM7cUJBQ2xCLENBQUM7YUFDSDtTQUNGLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVELDhDQUE4QyxDQUFDLElBQVU7UUFDdkQsUUFBUTtRQUNSLE1BQU0sS0FBSyxHQUFHLElBQUksV0FBSyxFQUFFLENBQUM7UUFFMUIsMkNBQTJDO1FBQzNDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ2YsSUFBSSxZQUFNLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRTtnQkFDM0IsY0FBYyxFQUFFLENBQUM7d0JBQ2YsaUNBQWlDLEVBQUUsRUFBRTtxQkFDdEMsQ0FBQzthQUNILENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsK0NBQStDO1FBQy9DLElBQUksWUFBTSxDQUFDLEtBQUssRUFBRSxTQUFTLEVBQUU7WUFDM0IsU0FBUyxFQUFFLElBQUk7WUFDZixjQUFjLEVBQUUsQ0FBQztvQkFDZixpQ0FBaUMsRUFBRSxFQUFFO2lCQUN0QyxDQUFDO1NBQ0gsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2QsQ0FBQztDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBleHBlY3QsIGhhdmVSZXNvdXJjZSB9IGZyb20gJ0Bhd3MtY2RrL2Fzc2VydCc7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gJ0Bhd3MtY2RrL2Nkayc7XG5pbXBvcnQgeyBUZXN0IH0gZnJvbSAnbm9kZXVuaXQnO1xuaW1wb3J0IHsgQnVja2V0LCBTdG9yYWdlQ2xhc3MgfSBmcm9tICcuLi9saWInO1xuXG5leHBvcnQgPSB7XG4gICdCdWNrZXQgd2l0aCBleHBpcmF0aW9uIGRheXMnKHRlc3Q6IFRlc3QpIHtcbiAgICAvLyBHSVZFTlxuICAgIGNvbnN0IHN0YWNrID0gbmV3IFN0YWNrKCk7XG5cbiAgICAvLyBXSEVOXG4gICAgbmV3IEJ1Y2tldChzdGFjaywgJ0J1Y2tldCcsIHtcbiAgICAgIGxpZmVjeWNsZVJ1bGVzOiBbe1xuICAgICAgICBleHBpcmF0aW9uSW5EYXlzOiAzMFxuICAgICAgfV1cbiAgICB9KTtcblxuICAgIC8vIFRIRU5cbiAgICBleHBlY3Qoc3RhY2spLnRvKGhhdmVSZXNvdXJjZSgnQVdTOjpTMzo6QnVja2V0Jywge1xuICAgICAgTGlmZWN5Y2xlQ29uZmlndXJhdGlvbjoge1xuICAgICAgICBSdWxlczogW3tcbiAgICAgICAgICBFeHBpcmF0aW9uSW5EYXlzOiAzMCxcbiAgICAgICAgICBTdGF0dXM6IFwiRW5hYmxlZFwiXG4gICAgICAgIH1dXG4gICAgICB9XG4gICAgfSkpO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ0NhbiB1c2UgYWRkTGlmZWN5Y2xlUnVsZSgpIHRvIGFkZCBhIGxpZmVjeWNsZSBydWxlJyh0ZXN0OiBUZXN0KSB7XG4gICAgLy8gR0lWRU5cbiAgICBjb25zdCBzdGFjayA9IG5ldyBTdGFjaygpO1xuXG4gICAgLy8gV0hFTlxuICAgIGNvbnN0IGJ1Y2tldCA9IG5ldyBCdWNrZXQoc3RhY2ssICdCdWNrZXQnKTtcbiAgICBidWNrZXQuYWRkTGlmZWN5Y2xlUnVsZSh7XG4gICAgICBleHBpcmF0aW9uSW5EYXlzOiAzMFxuICAgIH0pO1xuXG4gICAgLy8gVEhFTlxuICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdBV1M6OlMzOjpCdWNrZXQnLCB7XG4gICAgICBMaWZlY3ljbGVDb25maWd1cmF0aW9uOiB7XG4gICAgICAgIFJ1bGVzOiBbe1xuICAgICAgICAgIEV4cGlyYXRpb25JbkRheXM6IDMwLFxuICAgICAgICAgIFN0YXR1czogXCJFbmFibGVkXCJcbiAgICAgICAgfV1cbiAgICAgIH1cbiAgICB9KSk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICAnQnVja2V0IHdpdGggZXhwaXJhdGlvbiBkYXRlJyh0ZXN0OiBUZXN0KSB7XG4gICAgLy8gR0lWRU5cbiAgICBjb25zdCBzdGFjayA9IG5ldyBTdGFjaygpO1xuXG4gICAgLy8gV0hFTlxuICAgIG5ldyBCdWNrZXQoc3RhY2ssICdCdWNrZXQnLCB7XG4gICAgICBsaWZlY3ljbGVSdWxlczogW3tcbiAgICAgICAgZXhwaXJhdGlvbkRhdGU6IG5ldyBEYXRlKCcyMDE4LTAxLTAxJylcbiAgICAgIH1dXG4gICAgfSk7XG5cbiAgICAvLyBUSEVOXG4gICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0FXUzo6UzM6OkJ1Y2tldCcsIHtcbiAgICAgIExpZmVjeWNsZUNvbmZpZ3VyYXRpb246IHtcbiAgICAgICAgUnVsZXM6IFt7XG4gICAgICAgICAgRXhwaXJhdGlvbkRhdGU6ICcyMDE4LTAxLTAxVDAwOjAwOjAwJyxcbiAgICAgICAgICBTdGF0dXM6IFwiRW5hYmxlZFwiXG4gICAgICAgIH1dXG4gICAgICB9XG4gICAgfSkpO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgJ0J1Y2tldCB3aXRoIHRyYW5zaXRpb24gcnVsZScodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgU3RhY2soKTtcblxuICAgIC8vIFdIRU5cbiAgICBuZXcgQnVja2V0KHN0YWNrLCAnQnVja2V0Jywge1xuICAgICAgbGlmZWN5Y2xlUnVsZXM6IFt7XG4gICAgICAgIHRyYW5zaXRpb25zOiBbe1xuICAgICAgICAgIHN0b3JhZ2VDbGFzczogU3RvcmFnZUNsYXNzLkdsYWNpZXIsXG4gICAgICAgICAgdHJhbnNpdGlvbkluRGF5czogMzBcbiAgICAgICAgfV1cbiAgICAgIH1dXG4gICAgfSk7XG5cbiAgICAvLyBUSEVOXG4gICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0FXUzo6UzM6OkJ1Y2tldCcsIHtcbiAgICAgIExpZmVjeWNsZUNvbmZpZ3VyYXRpb246IHtcbiAgICAgICAgUnVsZXM6IFt7XG4gICAgICAgICAgVHJhbnNpdGlvbnM6IFt7XG4gICAgICAgICAgICBTdG9yYWdlQ2xhc3M6ICdHTEFDSUVSJyxcbiAgICAgICAgICAgIFRyYW5zaXRpb25JbkRheXM6IDMwXG4gICAgICAgICAgfV0sXG4gICAgICAgICAgU3RhdHVzOiBcIkVuYWJsZWRcIlxuICAgICAgICB9XVxuICAgICAgfVxuICAgIH0pKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gICdOb25jdXJyZW50IHJ1bGUgb24gbm9udmVyc2lvbmVkIGJ1Y2tldCBmYWlscycodGVzdDogVGVzdCkge1xuICAgIC8vIEdJVkVOXG4gICAgY29uc3Qgc3RhY2sgPSBuZXcgU3RhY2soKTtcblxuICAgIC8vIFdIRU46IEZhaWwgYmVjYXVzZSBvZiBsYWNrIG9mIHZlcnNpb25pbmdcbiAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICBuZXcgQnVja2V0KHN0YWNrLCAnQnVja2V0MScsIHtcbiAgICAgICAgbGlmZWN5Y2xlUnVsZXM6IFt7XG4gICAgICAgICAgbm9uY3VycmVudFZlcnNpb25FeHBpcmF0aW9uSW5EYXlzOiAxMFxuICAgICAgICB9XVxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICAvLyBXSEVOOiBTdWNjZWVkcyBiZWNhdXNlIHZlcnNpb25pbmcgaXMgZW5hYmxlZFxuICAgIG5ldyBCdWNrZXQoc3RhY2ssICdCdWNrZXQyJywge1xuICAgICAgdmVyc2lvbmVkOiB0cnVlLFxuICAgICAgbGlmZWN5Y2xlUnVsZXM6IFt7XG4gICAgICAgIG5vbmN1cnJlbnRWZXJzaW9uRXhwaXJhdGlvbkluRGF5czogMTBcbiAgICAgIH1dXG4gICAgfSk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcbn07XG4iXX0=

@@ -65,2 +65,2 @@ "use strict";

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidGVzdC51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxvQ0FBcUM7QUFFckMsc0NBQThEO0FBRTlELGlCQUFTO0lBQ0wsY0FBYyxFQUFFO1FBQ1osY0FBYyxDQUFDLElBQVU7WUFDckIsTUFBTSxTQUFTLEdBQUcsZUFBZSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxTQUFTLENBQUMscUJBQWMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDekQsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hCLENBQUM7UUFFRCw4QkFBOEIsQ0FBQyxJQUFVO1lBQ3JDLE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQztZQUMzQixJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMscUJBQWMsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLFVBQVUsRUFDeEUsQ0FBRSxFQUFFO29CQUNGLENBQUUsS0FBSzt3QkFDTCxHQUFHO3dCQUNILEVBQUUsR0FBRyxFQUFFLGdCQUFnQixFQUFFO3dCQUN6QixHQUFHO3dCQUNILElBQUk7d0JBQ0osR0FBRzt3QkFDSCxFQUFFO3dCQUNGLEdBQUc7d0JBQ0gsRUFBRTt3QkFDRixHQUFHO3dCQUNILE9BQU8sQ0FBRSxDQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ25CLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNoQixDQUFDO1FBRUQsNENBQTRDLENBQUMsSUFBVTtZQUNuRCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLHFCQUFjLENBQUMsRUFBRSxDQUFDLEVBQUUsNkVBQTZFLENBQUMsQ0FBQztZQUNySCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEIsQ0FBQztLQUNKO0lBRUQsZUFBZSxFQUFFO1FBRWIsZUFBZSxDQUFDLElBQVU7WUFDdEIsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDO1lBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxzQkFBZSxDQUFDLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ3BFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNoQixDQUFDO1FBRUQscUNBQXFDLENBQUMsSUFBVTtZQUM1QyxNQUFNLFNBQVMsR0FBRyx3QkFBd0IsQ0FBQztZQUMzQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsc0JBQWUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQztZQUN6RSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEIsQ0FBQztRQUVELHdEQUF3RCxDQUFDLElBQVU7WUFDL0QsTUFBTSxTQUFTLEdBQUcsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLGVBQWUsRUFBRSxXQUFXLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM1RSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsc0JBQWUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUN2RSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEIsQ0FBQztRQUVELHNDQUFzQyxDQUFDLElBQVU7WUFDN0MsTUFBTSxTQUFTLEdBQUcsd0JBQXdCLENBQUM7WUFDM0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxzQkFBZSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxhQUFhLENBQUMsQ0FBQztZQUNqRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEIsQ0FBQztRQUVELGlDQUFpQyxDQUFDLElBQVU7WUFDeEMsTUFBTSxTQUFTLEdBQUcsYUFBYSxDQUFDO1lBQ2hDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsc0JBQWUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsc0NBQXNDLENBQUMsQ0FBQztZQUMxRixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEIsQ0FBQztRQUVELHVCQUF1QixDQUFDLElBQVU7WUFDOUIsTUFBTSxTQUFTLEdBQUcsNkJBQTZCLENBQUM7WUFDaEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxzQkFBZSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxvQ0FBb0MsQ0FBQyxDQUFDO1lBQ3hGLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNoQixDQUFDO0tBQ0o7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNkayA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2NkaycpO1xuaW1wb3J0IHsgVGVzdCB9IGZyb20gJ25vZGV1bml0JztcbmltcG9ydCB7IHBhcnNlQnVja2V0QXJuLCBwYXJzZUJ1Y2tldE5hbWUgfSBmcm9tICcuLi9saWIvdXRpbCc7XG5cbmV4cG9ydCA9IHtcbiAgICBwYXJzZUJ1Y2tldEFybjoge1xuICAgICAgICAnZXhwbGljaXQgYXJuJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgICAgICBjb25zdCBidWNrZXRBcm4gPSAnbXk6YnVja2V0OmFybic7XG4gICAgICAgICAgICB0ZXN0LmRlZXBFcXVhbChwYXJzZUJ1Y2tldEFybih7IGJ1Y2tldEFybiB9KSwgYnVja2V0QXJuKTtcbiAgICAgICAgICAgIHRlc3QuZG9uZSgpO1xuICAgICAgICB9LFxuXG4gICAgICAgICdwcm9kdWNlIGFybiBmcm9tIGJ1Y2tldCBuYW1lJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgICAgICBjb25zdCBidWNrZXROYW1lID0gJ2hlbGxvJztcbiAgICAgICAgICAgIHRlc3QuZGVlcEVxdWFsKGNkay5yZXNvbHZlKHBhcnNlQnVja2V0QXJuKHsgYnVja2V0TmFtZSB9KSksIHsgJ0ZuOjpKb2luJzpcbiAgICAgICAgICAgIFsgJycsXG4gICAgICAgICAgICAgIFsgJ2FybicsXG4gICAgICAgICAgICAgICAgJzonLFxuICAgICAgICAgICAgICAgIHsgUmVmOiAnQVdTOjpQYXJ0aXRpb24nIH0sXG4gICAgICAgICAgICAgICAgJzonLFxuICAgICAgICAgICAgICAgICdzMycsXG4gICAgICAgICAgICAgICAgJzonLFxuICAgICAgICAgICAgICAgICcnLFxuICAgICAgICAgICAgICAgICc6JyxcbiAgICAgICAgICAgICAgICAnJyxcbiAgICAgICAgICAgICAgICAnOicsXG4gICAgICAgICAgICAgICAgJ2hlbGxvJyBdIF0gfSk7XG4gICAgICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICAgICAgfSxcblxuICAgICAgICAnZmFpbHMgaWYgbmVpdGhlciBhcm4gbm9yIG5hbWUgYXJlIHByb3ZpZGVkJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgICAgICB0ZXN0LnRocm93cygoKSA9PiBwYXJzZUJ1Y2tldEFybih7fSksIC9DYW5ub3QgZGV0ZXJtaW5lIGJ1Y2tldCBBUk4uIEF0IGxlYXN0IGBidWNrZXRBcm5gIG9yIGBidWNrZXROYW1lYCBpcyBuZWVkZWQvKTtcbiAgICAgICAgICAgIHRlc3QuZG9uZSgpO1xuICAgICAgICB9XG4gICAgfSxcblxuICAgIHBhcnNlQnVja2V0TmFtZToge1xuXG4gICAgICAgICdleHBsaWNpdCBuYW1lJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgICAgICBjb25zdCBidWNrZXROYW1lID0gJ2Zvbyc7XG4gICAgICAgICAgICB0ZXN0LmRlZXBFcXVhbChjZGsucmVzb2x2ZShwYXJzZUJ1Y2tldE5hbWUoeyBidWNrZXROYW1lIH0pKSwgJ2ZvbycpO1xuICAgICAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgICAgIH0sXG5cbiAgICAgICAgJ2V4dHJhY3QgYnVja2V0IG5hbWUgZnJvbSBzdHJpbmcgYXJuJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgICAgICBjb25zdCBidWNrZXRBcm4gPSAnYXJuOmF3czpzMzo6Om15LWJ1Y2tldCc7XG4gICAgICAgICAgICB0ZXN0LmRlZXBFcXVhbChjZGsucmVzb2x2ZShwYXJzZUJ1Y2tldE5hbWUoeyBidWNrZXRBcm4gfSkpLCAnbXktYnVja2V0Jyk7XG4gICAgICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICAgICAgfSxcblxuICAgICAgICAndW5kZWZpbmVkIGlmIGNhbm5vdCBleHRyYWN0IG5hbWUgZnJvbSBhIG5vbi1zdHJpbmcgYXJuJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgICAgICBjb25zdCBidWNrZXRBcm4gPSBuZXcgY2RrLkZuQ29uY2F0KCdhcm46YXdzOnMzOjo6JywgJ215LWJ1Y2tldCcpLnRvU3RyaW5nKCk7XG4gICAgICAgICAgICB0ZXN0LmRlZXBFcXVhbChjZGsucmVzb2x2ZShwYXJzZUJ1Y2tldE5hbWUoeyBidWNrZXRBcm4gfSkpLCB1bmRlZmluZWQpO1xuICAgICAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgICAgIH0sXG5cbiAgICAgICAgJ2ZhaWxzIGlmIGFybiB1c2VzIGEgbm9uIFwiczNcIiBzZXJ2aWNlJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgICAgICBjb25zdCBidWNrZXRBcm4gPSAnYXJuOmF3czp4eDo6Om15LWJ1Y2tldCc7XG4gICAgICAgICAgICB0ZXN0LnRocm93cygoKSA9PiBwYXJzZUJ1Y2tldE5hbWUoeyBidWNrZXRBcm4gfSksIC9JbnZhbGlkIEFSTi8pO1xuICAgICAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgICAgIH0sXG5cbiAgICAgICAgJ2ZhaWxzIGlmIEFSTiBoYXMgaW52YWxpZCBmb3JtYXQnKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgICAgIGNvbnN0IGJ1Y2tldEFybiA9ICdpbnZhbGlkLWFybic7XG4gICAgICAgICAgICB0ZXN0LnRocm93cygoKSA9PiBwYXJzZUJ1Y2tldE5hbWUoeyBidWNrZXRBcm4gfSksIC9BUk5zIG11c3QgaGF2ZSBhdCBsZWFzdCA2IGNvbXBvbmVudHMvKTtcbiAgICAgICAgICAgIHRlc3QuZG9uZSgpO1xuICAgICAgICB9LFxuXG4gICAgICAgICdmYWlscyBpZiBBUk4gaGFzIHBhdGgnKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgICAgIGNvbnN0IGJ1Y2tldEFybiA9ICdhcm46YXdzOnMzOjo6bXktYnVja2V0L3BhdGgnO1xuICAgICAgICAgICAgdGVzdC50aHJvd3MoKCkgPT4gcGFyc2VCdWNrZXROYW1lKHsgYnVja2V0QXJuIH0pLCAvQnVja2V0IEFSTiBtdXN0IG5vdCBjb250YWluIGEgcGF0aC8pO1xuICAgICAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgICAgIH1cbiAgICB9LFxufTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidGVzdC51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxvQ0FBcUM7QUFFckMsc0NBQThEO0FBRTlELGlCQUFTO0lBQ1AsY0FBYyxFQUFFO1FBQ2QsY0FBYyxDQUFDLElBQVU7WUFDdkIsTUFBTSxTQUFTLEdBQUcsZUFBZSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxTQUFTLENBQUMscUJBQWMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDekQsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2QsQ0FBQztRQUVELDhCQUE4QixDQUFDLElBQVU7WUFDdkMsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDO1lBQzNCLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxxQkFBYyxDQUFDLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsVUFBVSxFQUN4RSxDQUFFLEVBQUU7b0JBQ0YsQ0FBRSxLQUFLO3dCQUNQLEdBQUc7d0JBQ0gsRUFBRSxHQUFHLEVBQUUsZ0JBQWdCLEVBQUU7d0JBQ3pCLEdBQUc7d0JBQ0gsSUFBSTt3QkFDSixHQUFHO3dCQUNILEVBQUU7d0JBQ0YsR0FBRzt3QkFDSCxFQUFFO3dCQUNGLEdBQUc7d0JBQ0gsT0FBTyxDQUFFLENBQUUsRUFBRSxDQUFDLENBQUM7WUFDakIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2QsQ0FBQztRQUVELDRDQUE0QyxDQUFDLElBQVU7WUFDckQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxxQkFBYyxDQUFDLEVBQUUsQ0FBQyxFQUFFLDZFQUE2RSxDQUFDLENBQUM7WUFDckgsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2QsQ0FBQztLQUNGO0lBRUQsZUFBZSxFQUFFO1FBRWYsZUFBZSxDQUFDLElBQVU7WUFDeEIsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDO1lBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxzQkFBZSxDQUFDLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ3BFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNkLENBQUM7UUFFRCxxQ0FBcUMsQ0FBQyxJQUFVO1lBQzlDLE1BQU0sU0FBUyxHQUFHLHdCQUF3QixDQUFDO1lBQzNDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxzQkFBZSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1lBQ3pFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNkLENBQUM7UUFFRCx3REFBd0QsQ0FBQyxJQUFVO1lBQ2pFLE1BQU0sU0FBUyxHQUFHLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsV0FBVyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDNUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLHNCQUFlLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDdkUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2QsQ0FBQztRQUVELHNDQUFzQyxDQUFDLElBQVU7WUFDL0MsTUFBTSxTQUFTLEdBQUcsd0JBQXdCLENBQUM7WUFDM0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxzQkFBZSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxhQUFhLENBQUMsQ0FBQztZQUNqRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDZCxDQUFDO1FBRUQsaUNBQWlDLENBQUMsSUFBVTtZQUMxQyxNQUFNLFNBQVMsR0FBRyxhQUFhLENBQUM7WUFDaEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxzQkFBZSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxzQ0FBc0MsQ0FBQyxDQUFDO1lBQzFGLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNkLENBQUM7UUFFRCx1QkFBdUIsQ0FBQyxJQUFVO1lBQ2hDLE1BQU0sU0FBUyxHQUFHLDZCQUE2QixDQUFDO1lBQ2hELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsc0JBQWUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsb0NBQW9DLENBQUMsQ0FBQztZQUN4RixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDZCxDQUFDO0tBQ0Y7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNkayA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2NkaycpO1xuaW1wb3J0IHsgVGVzdCB9IGZyb20gJ25vZGV1bml0JztcbmltcG9ydCB7IHBhcnNlQnVja2V0QXJuLCBwYXJzZUJ1Y2tldE5hbWUgfSBmcm9tICcuLi9saWIvdXRpbCc7XG5cbmV4cG9ydCA9IHtcbiAgcGFyc2VCdWNrZXRBcm46IHtcbiAgICAnZXhwbGljaXQgYXJuJyh0ZXN0OiBUZXN0KSB7XG4gICAgICBjb25zdCBidWNrZXRBcm4gPSAnbXk6YnVja2V0OmFybic7XG4gICAgICB0ZXN0LmRlZXBFcXVhbChwYXJzZUJ1Y2tldEFybih7IGJ1Y2tldEFybiB9KSwgYnVja2V0QXJuKTtcbiAgICAgIHRlc3QuZG9uZSgpO1xuICAgIH0sXG5cbiAgICAncHJvZHVjZSBhcm4gZnJvbSBidWNrZXQgbmFtZScodGVzdDogVGVzdCkge1xuICAgICAgY29uc3QgYnVja2V0TmFtZSA9ICdoZWxsbyc7XG4gICAgICB0ZXN0LmRlZXBFcXVhbChjZGsucmVzb2x2ZShwYXJzZUJ1Y2tldEFybih7IGJ1Y2tldE5hbWUgfSkpLCB7ICdGbjo6Sm9pbic6XG4gICAgICBbICcnLFxuICAgICAgICBbICdhcm4nLFxuICAgICAgICAnOicsXG4gICAgICAgIHsgUmVmOiAnQVdTOjpQYXJ0aXRpb24nIH0sXG4gICAgICAgICc6JyxcbiAgICAgICAgJ3MzJyxcbiAgICAgICAgJzonLFxuICAgICAgICAnJyxcbiAgICAgICAgJzonLFxuICAgICAgICAnJyxcbiAgICAgICAgJzonLFxuICAgICAgICAnaGVsbG8nIF0gXSB9KTtcbiAgICAgIHRlc3QuZG9uZSgpO1xuICAgIH0sXG5cbiAgICAnZmFpbHMgaWYgbmVpdGhlciBhcm4gbm9yIG5hbWUgYXJlIHByb3ZpZGVkJyh0ZXN0OiBUZXN0KSB7XG4gICAgICB0ZXN0LnRocm93cygoKSA9PiBwYXJzZUJ1Y2tldEFybih7fSksIC9DYW5ub3QgZGV0ZXJtaW5lIGJ1Y2tldCBBUk4uIEF0IGxlYXN0IGBidWNrZXRBcm5gIG9yIGBidWNrZXROYW1lYCBpcyBuZWVkZWQvKTtcbiAgICAgIHRlc3QuZG9uZSgpO1xuICAgIH1cbiAgfSxcblxuICBwYXJzZUJ1Y2tldE5hbWU6IHtcblxuICAgICdleHBsaWNpdCBuYW1lJyh0ZXN0OiBUZXN0KSB7XG4gICAgICBjb25zdCBidWNrZXROYW1lID0gJ2Zvbyc7XG4gICAgICB0ZXN0LmRlZXBFcXVhbChjZGsucmVzb2x2ZShwYXJzZUJ1Y2tldE5hbWUoeyBidWNrZXROYW1lIH0pKSwgJ2ZvbycpO1xuICAgICAgdGVzdC5kb25lKCk7XG4gICAgfSxcblxuICAgICdleHRyYWN0IGJ1Y2tldCBuYW1lIGZyb20gc3RyaW5nIGFybicodGVzdDogVGVzdCkge1xuICAgICAgY29uc3QgYnVja2V0QXJuID0gJ2Fybjphd3M6czM6OjpteS1idWNrZXQnO1xuICAgICAgdGVzdC5kZWVwRXF1YWwoY2RrLnJlc29sdmUocGFyc2VCdWNrZXROYW1lKHsgYnVja2V0QXJuIH0pKSwgJ215LWJ1Y2tldCcpO1xuICAgICAgdGVzdC5kb25lKCk7XG4gICAgfSxcblxuICAgICd1bmRlZmluZWQgaWYgY2Fubm90IGV4dHJhY3QgbmFtZSBmcm9tIGEgbm9uLXN0cmluZyBhcm4nKHRlc3Q6IFRlc3QpIHtcbiAgICAgIGNvbnN0IGJ1Y2tldEFybiA9IG5ldyBjZGsuRm5Db25jYXQoJ2Fybjphd3M6czM6OjonLCAnbXktYnVja2V0JykudG9TdHJpbmcoKTtcbiAgICAgIHRlc3QuZGVlcEVxdWFsKGNkay5yZXNvbHZlKHBhcnNlQnVja2V0TmFtZSh7IGJ1Y2tldEFybiB9KSksIHVuZGVmaW5lZCk7XG4gICAgICB0ZXN0LmRvbmUoKTtcbiAgICB9LFxuXG4gICAgJ2ZhaWxzIGlmIGFybiB1c2VzIGEgbm9uIFwiczNcIiBzZXJ2aWNlJyh0ZXN0OiBUZXN0KSB7XG4gICAgICBjb25zdCBidWNrZXRBcm4gPSAnYXJuOmF3czp4eDo6Om15LWJ1Y2tldCc7XG4gICAgICB0ZXN0LnRocm93cygoKSA9PiBwYXJzZUJ1Y2tldE5hbWUoeyBidWNrZXRBcm4gfSksIC9JbnZhbGlkIEFSTi8pO1xuICAgICAgdGVzdC5kb25lKCk7XG4gICAgfSxcblxuICAgICdmYWlscyBpZiBBUk4gaGFzIGludmFsaWQgZm9ybWF0Jyh0ZXN0OiBUZXN0KSB7XG4gICAgICBjb25zdCBidWNrZXRBcm4gPSAnaW52YWxpZC1hcm4nO1xuICAgICAgdGVzdC50aHJvd3MoKCkgPT4gcGFyc2VCdWNrZXROYW1lKHsgYnVja2V0QXJuIH0pLCAvQVJOcyBtdXN0IGhhdmUgYXQgbGVhc3QgNiBjb21wb25lbnRzLyk7XG4gICAgICB0ZXN0LmRvbmUoKTtcbiAgICB9LFxuXG4gICAgJ2ZhaWxzIGlmIEFSTiBoYXMgcGF0aCcodGVzdDogVGVzdCkge1xuICAgICAgY29uc3QgYnVja2V0QXJuID0gJ2Fybjphd3M6czM6OjpteS1idWNrZXQvcGF0aCc7XG4gICAgICB0ZXN0LnRocm93cygoKSA9PiBwYXJzZUJ1Y2tldE5hbWUoeyBidWNrZXRBcm4gfSksIC9CdWNrZXQgQVJOIG11c3Qgbm90IGNvbnRhaW4gYSBwYXRoLyk7XG4gICAgICB0ZXN0LmRvbmUoKTtcbiAgICB9XG4gIH0sXG59O1xuIl19

Sorry, the diff of this file is not supported yet

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

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

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