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

@aws-cdk/integ-runner

Package Overview
Dependencies
Maintainers
5
Versions
242
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@aws-cdk/integ-runner - npm Package Compare versions

Comparing version 1.159.0 to 1.160.0

3

lib/runner/runner-base.d.ts

@@ -43,2 +43,5 @@ import { TestCase, DefaultCdkOptions } from '@aws-cdk/cloud-assembly-schema';

/**
* The different components of a test name
*/
/**
* Represents an Integration test runner

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

5

lib/runner/runner-base.js

@@ -13,2 +13,5 @@ "use strict";

/**
* The different components of a test name
*/
/**
* Represents an Integration test runner

@@ -305,2 +308,2 @@ */

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVubmVyLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJydW5uZXItYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2QkFBNkI7QUFFN0IsNENBQW1LO0FBQ25LLHFEQUFzRDtBQUN0RCwrQkFBK0I7QUFDL0Isb0NBQW1DO0FBRW5DLHlEQUEwRTtBQUUxRSw2REFBaUY7QUFFakYsTUFBTSxtQkFBbUIsR0FBRyx3QkFBd0IsQ0FBQztBQXlDckQ7O0dBRUc7QUFDSCxNQUFzQixXQUFXO0lBdUUvQixZQUFZLE9BQTJCOztRQXJCdkM7O1dBRUc7UUFDZ0IsZ0JBQVcsR0FBc0I7WUFDbEQsWUFBWSxFQUFFLEtBQUs7WUFDbkIsYUFBYSxFQUFFLEtBQUs7WUFDcEIsZ0JBQWdCLEVBQUUsS0FBSztTQUN4QixDQUFBO1FBZUMsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDckMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUNuQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLGtCQUFrQixDQUFDLENBQUM7UUFFcEUsSUFBSSxDQUFDLEdBQUcsU0FBRyxPQUFPLENBQUMsR0FBRyxtQ0FBSSxJQUFJLCtCQUFhLENBQUM7WUFDMUMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLEdBQUcsRUFBRTtnQkFDSCxHQUFHLE9BQU8sQ0FBQyxHQUFHO2FBQ2Y7U0FDRixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsU0FBUyxTQUFHLE9BQU8sQ0FBQyxXQUFXLG1DQUFJLElBQUksQ0FBQyxJQUFJ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Q1AsQ0FBQywrQ0FBc0MsQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUM7UUFDaEcsd0RBQXdELEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsQ0FBQztRQUNoSCxvSEFBb0gsRUFBRSxVQUFVO1FBQ2hJLHFIQUFxSCxFQUFFLFVBQVU7UUFDakksK0dBQStHLEVBQUUsMEJBQTBCO1FBQzNJLG1DQUFtQztRQUNuQyxrSkFBa0osRUFBRSxVQUFVO1FBQzlKLHFHQUFxRyxFQUFFO1lBQ3JHLEtBQUssRUFBRSxjQUFjO1lBQ3JCLFlBQVksRUFBRTtnQkFDWjtvQkFDRSxJQUFJLEVBQUUsUUFBUTtvQkFDZCxJQUFJLEVBQUUsUUFBUTtvQkFDZCxPQUFPLEVBQUU7d0JBQ1A7NEJBQ0UsUUFBUSxFQUFFLGlCQUFpQjs0QkFDM0IsZ0JBQWdCLEVBQUUsWUFBWTs0QkFDOUIsWUFBWSxFQUFFLGNBQWM7eUJBQzdCO3dCQUNEOzRCQUNFLFFBQVEsRUFBRSxpQkFBaUI7NEJBQzNCLGdCQUFnQixFQUFFLFlBQVk7NEJBQzlCLFlBQVksRUFBRSxjQUFjO3lCQUM3Qjt3QkFDRDs0QkFDRSxRQUFRLEVBQUUsaUJBQWlCOzRCQUMzQixnQkFBZ0IsRUFBRSxZQUFZOzRCQUM5QixZQUFZLEVBQUUsY0FBYzt5QkFDN0I7cUJBQ0Y7aUJBQ0Y7YUFDRjtTQUNGO1FBRUQscUZBQXFGO1FBQ3JGLHVGQUF1RjtRQUN2RiwwRkFBMEY7UUFDMUYsZ0ZBQWdGO1FBQ2hGLENBQUMsMEJBQWlCLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUM7S0FDdkM7SUFDRCxHQUFHLEVBQUU7UUFDSCxpQkFBaUIsRUFBRSxVQUFVO1FBQzdCLGdCQUFnQixFQUFFLGFBQWE7S0FDaEM7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IFRlc3RDYXNlLCBEZWZhdWx0Q2RrT3B0aW9ucyB9IGZyb20gJ0Bhd3MtY2RrL2Nsb3VkLWFzc2VtYmx5LXNjaGVtYSc7XG5pbXBvcnQgeyBBVkFJTEFCSUxJVFlfWk9ORV9GQUxMQkFDS19DT05URVhUX0tFWSwgRlVUVVJFX0ZMQUdTLCBUQVJHRVRfUEFSVElUSU9OUywgRlVUVVJFX0ZMQUdTX0VYUElSRUQsIE5FV19TVFlMRV9TVEFDS19TWU5USEVTSVNfQ09OVEVYVCB9IGZyb20gJ0Bhd3MtY2RrL2N4LWFwaSc7XG5pbXBvcnQgeyBDZGtDbGlXcmFwcGVyLCBJQ2RrIH0gZnJvbSAnY2RrLWNsaS13cmFwcGVyJztcbmltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzLWV4dHJhJztcbmltcG9ydCB7IGZsYXR0ZW4gfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBEZXN0cnVjdGl2ZUNoYW5nZSB9IGZyb20gJy4uL3dvcmtlcnMvY29tbW9uJztcbmltcG9ydCB7IEludGVnVGVzdFN1aXRlLCBMZWdhY3lJbnRlZ1Rlc3RTdWl0ZSB9IGZyb20gJy4vaW50ZWctdGVzdC1zdWl0ZSc7XG5pbXBvcnQgeyBJbnRlZ1Rlc3QgfSBmcm9tICcuL2ludGVncmF0aW9uLXRlc3RzJztcbmltcG9ydCB7IEFzc2VtYmx5TWFuaWZlc3RSZWFkZXIsIE1hbmlmZXN0VHJhY2UgfSBmcm9tICcuL3ByaXZhdGUvY2xvdWQtYXNzZW1ibHknO1xuXG5jb25zdCBERVNUUlVDVElWRV9DSEFOR0VTID0gJyEhREVTVFJVQ1RJVkVfQ0hBTkdFUzonO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGNyZWF0aW5nIGFuIGludGVncmF0aW9uIHRlc3QgcnVubmVyXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW50ZWdSdW5uZXJPcHRpb25zIHtcbiAgLyoqXG4gICAqIEluZm9ybWF0aW9uIGFib3V0IHRoZSB0ZXN0IHRvIHJ1blxuICAgKi9cbiAgcmVhZG9ubHkgdGVzdDogSW50ZWdUZXN0O1xuXG4gIC8qKlxuICAgKiBUaGUgQVdTIHByb2ZpbGUgdG8gdXNlIHdoZW4gaW52b2tpbmcgdGhlIENESyBDTElcbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBwcm9maWxlIGlzIHBhc3NlZCwgdGhlIGRlZmF1bHQgcHJvZmlsZSBpcyB1c2VkXG4gICAqL1xuICByZWFkb25seSBwcm9maWxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBZGRpdGlvbmFsIGVudmlyb25tZW50IHZhcmlhYmxlcyB0aGF0IHdpbGwgYmUgYXZhaWxhYmxlXG4gICAqIHRvIHRoZSBDREsgQ0xJXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gYWRkaXRpb25hbCBlbnZpcm9ubWVudCB2YXJpYWJsZXNcbiAgICovXG4gIHJlYWRvbmx5IGVudj86IHsgW25hbWU6IHN0cmluZ106IHN0cmluZyB9LFxuXG4gIC8qKlxuICAgKiB0bXAgY2RrLm91dCBkaXJlY3RvcnlcbiAgICpcbiAgICogQGRlZmF1bHQgLSBkaXJlY3Rvcnkgd2lsbCBiZSBgY2RrLWludGVnLm91dC4ke3Rlc3ROYW1lfWBcbiAgICovXG4gIHJlYWRvbmx5IGludGVnT3V0RGlyPzogc3RyaW5nLFxuXG4gIC8qKlxuICAgKiBJbnN0YW5jZSBvZiB0aGUgQ0RLIENMSSB0byB1c2VcbiAgICpcbiAgICogQGRlZmF1bHQgLSBDZGtDbGlXcmFwcGVyXG4gICAqL1xuICByZWFkb25seSBjZGs/OiBJQ2RrO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYW4gSW50ZWdyYXRpb24gdGVzdCBydW5uZXJcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEludGVnUnVubmVyIHtcbiAgLyoqXG4gICAqIFRoZSBkaXJlY3Rvcnkgd2hlcmUgdGhlIHNuYXBzaG90IHdpbGwgYmUgc3RvcmVkXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgc25hcHNob3REaXI6IHN0cmluZztcblxuICAvKipcbiAgICogQW4gaW5zdGFuY2Ugb2YgdGhlIENESyAgQ0xJXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY2RrOiBJQ2RrO1xuXG4gIC8qKlxuICAgKiBQcmV0dHkgbmFtZSBvZiB0aGUgdGVzdFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHRlc3ROYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB2YWx1ZSB1c2VkIGluIHRoZSAnLS1hcHAnIENMSSBwYXJhbWV0ZXJcbiAgICpcbiAgICogUGF0aCB0byB0aGUgaW50ZWcgdGVzdCBzb3VyY2UgZmlsZSwgcmVsYXRpdmUgdG8gYHRoaXMuZGlyZWN0b3J5YC5cbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBjZGtBcHA6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHBhdGggd2hlcmUgdGhlIGBjZGsuY29udGV4dC5qc29uYCBmaWxlXG4gICAqIHdpbGwgYmUgY3JlYXRlZFxuICAgKi9cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGNka0NvbnRleHRQYXRoOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB0ZXN0IHN1aXRlIGZyb20gdGhlIGV4aXN0aW5nIHNuYXBzaG90XG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZXhwZWN0ZWRUZXN0U3VpdGU/OiBJbnRlZ1Rlc3RTdWl0ZSB8IExlZ2FjeUludGVnVGVzdFN1aXRlO1xuXG4gIC8qKlxuICAgKiBUaGUgdGVzdCBzdWl0ZSBmcm9tIHRoZSBuZXcgXCJhY3R1YWxcIiBzbmFwc2hvdFxuICAgKi9cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGFjdHVhbFRlc3RTdWl0ZTogSW50ZWdUZXN0U3VpdGUgfCBMZWdhY3lJbnRlZ1Rlc3RTdWl0ZTtcblxuICAvKipcbiAgICogVGhlIHdvcmtpbmcgZGlyZWN0b3J5IHRoYXQgdGhlIGludGVncmF0aW9uIHRlc3RzIHdpbGwgYmVcbiAgICogZXhlY3V0ZWQgZnJvbVxuICAgKi9cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRpcmVjdG9yeTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdGVzdCB0byBydW5cbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSB0ZXN0OiBJbnRlZ1Rlc3Q7XG5cbiAgLyoqXG4gICAqIERlZmF1bHQgb3B0aW9ucyB0byBwYXNzIHRvIHRoZSBDREsgQ0xJXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGVmYXVsdEFyZ3M6IERlZmF1bHRDZGtPcHRpb25zID0ge1xuICAgIHBhdGhNZXRhZGF0YTogZmFsc2UsXG4gICAgYXNzZXRNZXRhZGF0YTogZmFsc2UsXG4gICAgdmVyc2lvblJlcG9ydGluZzogZmFsc2UsXG4gIH1cblxuICAvKipcbiAgICogVGhlIGRpcmVjdG9yeSB3aGVyZSB0aGUgQ0RLIHdpbGwgYmUgc3ludGhlZCB0b1xuICAgKlxuICAgKiBSZWxhdGl2ZSB0byBjd2QuXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2RrT3V0RGlyOiBzdHJpbmc7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgcHJvdGVjdGVkIF9kZXN0cnVjdGl2ZUNoYW5nZXM/OiBEZXN0cnVjdGl2ZUNoYW5nZVtdO1xuICBwcml2YXRlIGxlZ2FjeUNvbnRleHQ/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEludGVnUnVubmVyT3B0aW9ucykge1xuICAgIHRoaXMudGVzdCA9IG9wdGlvbnMudGVzdDtcbiAgICB0aGlzLmRpcmVjdG9yeSA9IHRoaXMudGVzdC5kaXJlY3Rvcnk7XG4gICAgdGhpcy50ZXN0TmFtZSA9IHRoaXMudGVzdC50ZXN0TmFtZTtcbiAgICB0aGlzLnNuYXBzaG90RGlyID0gdGhpcy50ZXN0LnNuYXBzaG90RGlyO1xuICAgIHRoaXMuY2RrQ29udGV4dFBhdGggPSBwYXRoLmpvaW4odGhpcy5kaXJlY3RvcnksICdjZGsuY29udGV4dC5qc29uJyk7XG5cbiAgICB0aGlzLmNkayA9IG9wdGlvbnMuY2RrID8/IG5ldyBDZGtDbGlXcmFwcGVyKHtcbiAgICAgIGRpcmVjdG9yeTogdGhpcy5kaXJlY3RvcnksXG4gICAgICBlbnY6IHtcbiAgICAgICAgLi4ub3B0aW9ucy5lbnYsXG4gICAgICB9LFxuICAgIH0pO1xuICAgIHRoaXMuY2RrT3V0RGlyID0gb3B0aW9ucy5pbnRlZ091dERpciA/PyB0aGlzLnRlc3QudGVtcG9yYXJ5T3V0cHV0RGlyO1xuICAgIHRoaXMuY2RrQXBwID0gYG5vZGUgJHtwYXRoLnJlbGF0aXZlKHRoaXMuZGlyZWN0b3J5LCB0aGlzLnRlc3QuZmlsZU5hbWUpfWA7XG4gICAgdGhpcy5wcm9maWxlID0gb3B0aW9ucy5wcm9maWxlO1xuICAgIGlmICh0aGlzLmhhc1NuYXBzaG90KCkpIHtcbiAgICAgIHRoaXMuZXhwZWN0ZWRUZXN0U3VpdGUgPSB0aGlzLmxvYWRNYW5pZmVzdCgpO1xuICAgIH1cbiAgICB0aGlzLmFjdHVhbFRlc3RTdWl0ZSA9IHRoaXMuZ2VuZXJhdGVBY3R1YWxTbmFwc2hvdCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiB0aGUgbGlzdCBvZiBleHBlY3RlZCAoaS5lLiBleGlzdGluZykgdGVzdCBjYXNlcyBmb3IgdGhpcyBpbnRlZ3JhdGlvbiB0ZXN0XG4gICAqL1xuICBwdWJsaWMgZXhwZWN0ZWRUZXN0cygpOiB7IFt0ZXN0TmFtZTogc3RyaW5nXTogVGVzdENhc2UgfSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuZXhwZWN0ZWRUZXN0U3VpdGU/LnRlc3RTdWl0ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm4gdGhlIGxpc3Qgb2YgYWN0dWFsIChpLmUuIG5ldykgdGVzdCBjYXNlcyBmb3IgdGhpcyBpbnRlZ3JhdGlvbiB0ZXN0XG4gICAqL1xuICBwdWJsaWMgYWN0dWFsVGVzdHMoKTogeyBbdGVzdE5hbWU6IHN0cmluZ106IFRlc3RDYXNlIH0gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmFjdHVhbFRlc3RTdWl0ZS50ZXN0U3VpdGU7XG4gIH1cblxuICAvKipcbiAgICogR2VuZXJhdGUgYSBuZXcgXCJhY3R1YWxcIiBzbmFwc2hvdCB3aGljaCB3aWxsIGJlIGNvbXBhcmVkIHRvIHRoZVxuICAgKiBleGlzdGluZyBcImV4cGVjdGVkXCIgc25hcHNob3RcbiAgICogVGhpcyB3aWxsIHN5bnRoIGFuZCB0aGVuIGxvYWQgdGhlIGludGVncmF0aW9uIHRlc3QgbWFuaWZlc3RcbiAgICovXG4gIHB1YmxpYyBnZW5lcmF0ZUFjdHVhbFNuYXBzaG90KCk6IEludGVnVGVzdFN1aXRlIHwgTGVnYWN5SW50ZWdUZXN0U3VpdGUge1xuICAgIHRoaXMuY2RrLnN5bnRoRmFzdCh7XG4gICAgICBleGVjQ21kOiB0aGlzLmNka0FwcC5zcGxpdCgnICcpLFxuICAgICAgZW52OiB7XG4gICAgICAgIC4uLkRFRkFVTFRfU1lOVEhfT1BUSU9OUy5lbnYsXG4gICAgICAgIC8vIHdlIGRvbid0IGtub3cgdGhlIFwiYWN0dWFsXCIgY29udGV4dCB5ZXQgKHRoaXMgbWV0aG9kIGlzIHdoYXQgZ2VuZXJhdGVzIGl0KSBzbyBqdXN0XG4gICAgICAgIC8vIHVzZSB0aGUgXCJleHBlY3RlZFwiIGNvbnRleHQuIFRoaXMgaXMgb25seSBydW4gaW4gb3JkZXIgdG8gcmVhZCB0aGUgbWFuaWZlc3RcbiAgICAgICAgQ0RLX0NPTlRFWFRfSlNPTjogSlNPTi5zdHJpbmdpZnkodGhpcy5nZXRDb250ZXh0KHRoaXMuZXhwZWN0ZWRUZXN0U3VpdGU/LnN5bnRoQ29udGV4dCkpLFxuICAgICAgfSxcbiAgICAgIG91dHB1dDogcGF0aC5yZWxhdGl2ZSh0aGlzLmRpcmVjdG9yeSwgdGhpcy5jZGtPdXREaXIpLFxuICAgIH0pO1xuICAgIHJldHVybiB0aGlzLmxvYWRNYW5pZmVzdCh0aGlzLmNka091dERpcik7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0cnVlIGlmIGEgc25hcHNob3QgYWxyZWFkeSBleGlzdHMgZm9yIHRoaXMgdGVzdFxuICAgKi9cbiAgcHVibGljIGhhc1NuYXBzaG90KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmcy5leGlzdHNTeW5jKHRoaXMuc25hcHNob3REaXIpO1xuICB9XG5cbiAgLyoqXG4gICAqIExvYWQgdGhlIGludGVnIG1hbmlmZXN0IHdoaWNoIGNvbnRhaW5zIGluZm9ybWF0aW9uXG4gICAqIG9uIGhvdyB0byBleGVjdXRlIHRoZSB0ZXN0c1xuICAgKiBGaXJzdCB3ZSB0cnkgYW5kIGxvYWQgdGhlIG1hbmlmZXN0IGZyb20gdGhlIGludGVnIG1hbmlmZXN0IChpLmUuIGludGVnLmpzb24pXG4gICAqIGZyb20gdGhlIGNsb3VkIGFzc2VtYmx5LiBJZiBpdCBkb2Vzbid0IGV4aXN0LCB0aGVuIHdlIGZhbGxiYWNrIHRvIHRoZVxuICAgKiBcImxlZ2FjeSBtb2RlXCIgYW5kIGNyZWF0ZSBhIG1hbmlmZXN0IGZyb20gcHJhZ21hXG4gICAqL1xuICBwcm90ZWN0ZWQgbG9hZE1hbmlmZXN0KGRpcj86IHN0cmluZyk6IEludGVnVGVzdFN1aXRlIHwgTGVnYWN5SW50ZWdUZXN0U3VpdGUge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCB0ZXN0U3VpdGUgPSBJbnRlZ1Rlc3RTdWl0ZS5mcm9tUGF0aChkaXIgPz8gdGhpcy5zbmFwc2hvdERpcik7XG4gICAgICByZXR1cm4gdGVzdFN1aXRlO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnN0IHRlc3RDYXNlcyA9IExlZ2FjeUludGVnVGVzdFN1aXRlLmZyb21MZWdhY3koe1xuICAgICAgICBjZGs6IHRoaXMuY2RrLFxuICAgICAgICB0ZXN0TmFtZTogdGhpcy50ZXN0TmFtZSxcbiAgICAgICAgaW50ZWdTb3VyY2VGaWxlUGF0aDogdGhpcy50ZXN0LmZpbGVOYW1lLFxuICAgICAgICBsaXN0T3B0aW9uczoge1xuICAgICAgICAgIC4uLnRoaXMuZGVmYXVsdEFyZ3MsXG4gICAgICAgICAgYWxsOiB0cnVlLFxuICAgICAgICAgIGFwcDogdGhpcy5jZGtBcHAsXG4gICAgICAgICAgcHJvZmlsZTogdGhpcy5wcm9maWxlLFxuICAgICAgICAgIG91dHB1dDogcGF0aC5yZWxhdGl2ZSh0aGlzLmRpcmVjdG9yeSwgdGhpcy5jZGtPdXREaXIpLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICB0aGlzLmxlZ2FjeUNvbnRleHQgPSBMZWdhY3lJbnRlZ1Rlc3RTdWl0ZS5nZXRQcmFnbWFDb250ZXh0KHRoaXMudGVzdC5maWxlTmFtZSk7XG4gICAgICByZXR1cm4gdGVzdENhc2VzO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBjbGVhbnVwKCk6IHZvaWQge1xuICAgIGNvbnN0IGNka091dFBhdGggPSB0aGlzLmNka091dERpcjtcbiAgICBpZiAoZnMuZXhpc3RzU3luYyhjZGtPdXRQYXRoKSkge1xuICAgICAgZnMucmVtb3ZlU3luYyhjZGtPdXRQYXRoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogSWYgdGhlcmUgYXJlIGFueSBkZXN0cnVjdGl2ZSBjaGFuZ2VzIHRvIGEgc3RhY2sgdGhlbiB0aGlzIHdpbGwgcmVjb3JkXG4gICAqIHRob3NlIGluIHRoZSBtYW5pZmVzdC5qc29uIGZpbGVcbiAgICovXG4gIHByaXZhdGUgcmVuZGVyVHJhY2VEYXRhKCk6IE1hbmlmZXN0VHJhY2Uge1xuICAgIGNvbnN0IHRyYWNlRGF0YTogTWFuaWZlc3RUcmFjZSA9IG5ldyBNYXAoKTtcbiAgICBjb25zdCBkZXN0cnVjdGl2ZUNoYW5nZXMgPSB0aGlzLl9kZXN0cnVjdGl2ZUNoYW5nZXMgPz8gW107XG4gICAgZGVzdHJ1Y3RpdmVDaGFuZ2VzLmZvckVhY2goY2hhbmdlID0+IHtcbiAgICAgIGNvbnN0IHRyYWNlID0gdHJhY2VEYXRhLmdldChjaGFuZ2Uuc3RhY2tOYW1lKTtcbiAgICAgIGlmICh0cmFjZSkge1xuICAgICAgICB0cmFjZS5zZXQoY2hhbmdlLmxvZ2ljYWxJZCwgYCR7REVTVFJVQ1RJVkVfQ0hBTkdFU30gJHtjaGFuZ2UuaW1wYWN0fWApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdHJhY2VEYXRhLnNldChjaGFuZ2Uuc3RhY2tOYW1lLCBuZXcgTWFwKFtcbiAgICAgICAgICBbY2hhbmdlLmxvZ2ljYWxJZCwgYCR7REVTVFJVQ1RJVkVfQ0hBTkdFU30gJHtjaGFuZ2UuaW1wYWN0fWBdLFxuICAgICAgICBdKSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIHRyYWNlRGF0YTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbiBjYXNlcyB3aGVyZSB3ZSBkbyBub3Qgd2FudCB0byByZXRhaW4gdGhlIGFzc2V0cyxcbiAgICogZm9yIGV4YW1wbGUsIGlmIHRoZSBhc3NldHMgYXJlIHZlcnkgbGFyZ2UuXG4gICAqXG4gICAqIFNpbmNlIGl0IGlzIHBvc3NpYmxlIHRvIGRpc2FibGUgdGhlIHVwZGF0ZSB3b3JrZmxvdyBmb3IgaW5kaXZpZHVhbCB0ZXN0XG4gICAqIGNhc2VzLCB0aGlzIG5lZWRzIHRvIGZpcnN0IGdldCBhIGxpc3Qgb2Ygc3RhY2tzIHRoYXQgaGF2ZSB0aGUgdXBkYXRlIHdvcmtmbG93XG4gICAqIGRpc2FibGVkIGFuZCB0aGVuIGRlbGV0ZSBhc3NldHMgdGhhdCByZWxhdGUgdG8gdGhhdCBzdGFjay4gSXQgZG9lcyB0aGF0XG4gICAqIGJ5IHJlYWRpbmcgdGhlIGFzc2V0IG1hbmlmZXN0IGZvciB0aGUgc3RhY2sgYW5kIGRlbGV0aW5nIHRoZSBhc3NldCBzb3VyY2VcbiAgICovXG4gIHByb3RlY3RlZCByZW1vdmVBc3NldHNGcm9tU25hcHNob3QoKTogdm9pZCB7XG4gICAgY29uc3Qgc3RhY2tzID0gdGhpcy5hY3R1YWxUZXN0U3VpdGUuZ2V0U3RhY2tzV2l0aG91dFVwZGF0ZVdvcmtmbG93KCkgPz8gW107XG4gICAgY29uc3QgbWFuaWZlc3QgPSBBc3NlbWJseU1hbmlmZXN0UmVhZGVyLmZyb21QYXRoKHRoaXMuc25hcHNob3REaXIpO1xuICAgIGNvbnN0IGFzc2V0cyA9IGZsYXR0ZW4oc3RhY2tzLm1hcChzdGFjayA9PiB7XG4gICAgICByZXR1cm4gbWFuaWZlc3QuZ2V0QXNzZXRzRm9yU3RhY2soc3RhY2spID8/IFtdO1xuICAgIH0pKTtcblxuICAgIGFzc2V0cy5mb3JFYWNoKGFzc2V0ID0+IHtcbiAgICAgIGNvbnN0IGZpbGVOYW1lID0gcGF0aC5qb2luKHRoaXMuc25hcHNob3REaXIsIGFzc2V0KTtcbiAgICAgIGlmIChmcy5leGlzdHNTeW5jKGZpbGVOYW1lKSkge1xuICAgICAgICBpZiAoZnMubHN0YXRTeW5jKGZpbGVOYW1lKS5pc0RpcmVjdG9yeSgpKSB7XG4gICAgICAgICAgZnMucmVtb3ZlU3luYyhmaWxlTmFtZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZnMudW5saW5rU3luYyhmaWxlTmFtZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmUgdGhlIGFzc2V0IGNhY2hlICguY2FjaGUvKSBmaWxlcyBmcm9tIHRoZSBzbmFwc2hvdC5cbiAgICogVGhlc2UgYXJlIGEgY2FjaGUgb2YgdGhlIGFzc2V0IHppcHMsIGJ1dCB3ZSBhcmUgZmluZSB3aXRoXG4gICAqIHJlLXppcHBpbmcgb24gZGVwbG95XG4gICAqL1xuICBwcm90ZWN0ZWQgcmVtb3ZlQXNzZXRzQ2FjaGVGcm9tU25hcHNob3QoKTogdm9pZCB7XG4gICAgY29uc3QgZmlsZXMgPSBmcy5yZWFkZGlyU3luYyh0aGlzLnNuYXBzaG90RGlyKTtcbiAgICBmaWxlcy5mb3JFYWNoKGZpbGUgPT4ge1xuICAgICAgY29uc3QgZmlsZU5hbWUgPSBwYXRoLmpvaW4odGhpcy5zbmFwc2hvdERpciwgZmlsZSk7XG4gICAgICBpZiAoZnMubHN0YXRTeW5jKGZpbGVOYW1lKS5pc0RpcmVjdG9yeSgpICYmIGZpbGUgPT09ICcuY2FjaGUnKSB7XG4gICAgICAgIGZzLmVtcHR5RGlyU3luYyhmaWxlTmFtZSk7XG4gICAgICAgIGZzLnJtZGlyU3luYyhmaWxlTmFtZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIHRoZSBuZXcgc25hcHNob3QuXG4gICAqXG4gICAqIElmIGxvb2t1cHMgYXJlIGVuYWJsZWQsIHRoZW4gd2UgbmVlZCBjcmVhdGUgdGhlIHNuYXBzaG90IGJ5IHN5bnRoaW5nIGFnYWluXG4gICAqIHdpdGggdGhlIGR1bW15IGNvbnRleHQgc28gdGhhdCBlYWNoIHRpbWUgdGhlIHRlc3QgaXMgcnVuIG9uIGRpZmZlcmVudCBtYWNoaW5lc1xuICAgKiAoYW5kIHdpdGggZGlmZmVyZW50IGNvbnRleHQvZW52KSB0aGUgZGlmZiB3aWxsIG5vdCBjaGFuZ2UuXG4gICAqXG4gICAqIElmIGxvb2t1cHMgYXJlIGRpc2FibGVkICh3aGljaCBtZWFucyB0aGUgc3RhY2sgaXMgZW52IGFnbm9zdGljKSB0aGVuIGp1c3QgY29weVxuICAgKiB0aGUgYXNzZW1ibHkgdGhhdCB3YXMgb3V0cHV0IGJ5IHRoZSBkZXBsb3ltZW50XG4gICAqL1xuICBwcm90ZWN0ZWQgY3JlYXRlU25hcHNob3QoKTogdm9pZCB7XG4gICAgaWYgKGZzLmV4aXN0c1N5bmModGhpcy5zbmFwc2hvdERpcikpIHtcbiAgICAgIGZzLnJlbW92ZVN5bmModGhpcy5zbmFwc2hvdERpcik7XG4gICAgfVxuXG4gICAgLy8gaWYgbG9va3VwcyBhcmUgZW5hYmxlZCB0aGVuIHdlIG5lZWQgdG8gc3ludGggYWdhaW5cbiAgICAvLyB1c2luZyBkdW1teSBjb250ZXh0IGFuZCBzYXZlIHRoYXQgYXMgdGhlIHNuYXBzaG90XG4gICAgaWYgKHRoaXMuYWN0dWFsVGVzdFN1aXRlLmVuYWJsZUxvb2t1cHMpIHtcbiAgICAgIHRoaXMuY2RrLnN5bnRoRmFzdCh7XG4gICAgICAgIGV4ZWNDbWQ6IHRoaXMuY2RrQXBwLnNwbGl0KCcgJyksXG4gICAgICAgIGVudjoge1xuICAgICAgICAgIC4uLkRFRkFVTFRfU1lOVEhfT1BUSU9OUy5lbnYsXG4gICAgICAgICAgQ0RLX0NPTlRFWFRfSlNPTjogSlNPTi5zdHJpbmdpZnkodGhpcy5nZXRDb250ZXh0KCkpLFxuICAgICAgICB9LFxuICAgICAgICBvdXRwdXQ6IHBhdGgucmVsYXRpdmUodGhpcy5kaXJlY3RvcnksIHRoaXMuc25hcHNob3REaXIpLFxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGZzLm1vdmVTeW5jKHRoaXMuY2RrT3V0RGlyLCB0aGlzLnNuYXBzaG90RGlyLCB7IG92ZXJ3cml0ZTogdHJ1ZSB9KTtcbiAgICB9XG5cbiAgICB0aGlzLmNsZWFudXBTbmFwc2hvdCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFBlcmZvcm0gc29tZSBjbGVhbnVwIHN0ZXBzIGFmdGVyIHRoZSBzbmFwc2hvdCBpcyBjcmVhdGVkXG4gICAqIEFueXRpbWUgdGhlIHNuYXBzaG90IG5lZWRzIHRvIGJlIG1vZGlmaWVkIGFmdGVyIGNyZWF0aW9uXG4gICAqIHRoZSBsb2dpYyBzaG91bGQgbGl2ZSBoZXJlLlxuICAgKi9cbiAgcHJpdmF0ZSBjbGVhbnVwU25hcHNob3QoKTogdm9pZCB7XG4gICAgaWYgKGZzLmV4aXN0c1N5bmModGhpcy5zbmFwc2hvdERpcikpIHtcbiAgICAgIHRoaXMucmVtb3ZlQXNzZXRzRnJvbVNuYXBzaG90KCk7XG4gICAgICB0aGlzLnJlbW92ZUFzc2V0c0NhY2hlRnJvbVNuYXBzaG90KCk7XG4gICAgICBjb25zdCBhc3NlbWJseSA9IEFzc2VtYmx5TWFuaWZlc3RSZWFkZXIuZnJvbVBhdGgodGhpcy5zbmFwc2hvdERpcik7XG4gICAgICBhc3NlbWJseS5jbGVhbk1hbmlmZXN0KCk7XG4gICAgICBhc3NlbWJseS5yZWNvcmRUcmFjZSh0aGlzLnJlbmRlclRyYWNlRGF0YSgpKTtcbiAgICB9XG5cbiAgICAvLyBpZiB0aGlzIGlzIGEgbGVnYWN5IHRlc3QgdGhlbiBjcmVhdGUgYW4gaW50ZWcgbWFuaWZlc3RcbiAgICAvLyBpbiB0aGUgc25hcHNob3QgZGlyZWN0b3J5IHdoaWNoIGNhbiBiZSB1c2VkIGZvciB0aGVcbiAgICAvLyB1cGRhdGUgd29ya2Zsb3cuIFNhdmUgYW55IGxlZ2FjeUNvbnRleHQgYXMgd2VsbCBzbyB0aGF0IGl0IGNhbiBiZSByZWFkXG4gICAgLy8gdGhlIG5leHQgdGltZVxuICAgIGlmICh0aGlzLmFjdHVhbFRlc3RTdWl0ZS50eXBlID09PSAnbGVnYWN5LXRlc3Qtc3VpdGUnKSB7XG4gICAgICAodGhpcy5hY3R1YWxUZXN0U3VpdGUgYXMgTGVnYWN5SW50ZWdUZXN0U3VpdGUpLnNhdmVNYW5pZmVzdCh0aGlzLnNuYXBzaG90RGlyLCB0aGlzLmxlZ2FjeUNvbnRleHQpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRDb250ZXh0KGFkZGl0aW9uYWxDb250ZXh0PzogUmVjb3JkPHN0cmluZywgYW55Pik6IFJlY29yZDxzdHJpbmcsIGFueT4ge1xuICAgIGNvbnN0IGZ1dHVyZUZsYWdzOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge307XG4gICAgT2JqZWN0LmVudHJpZXMoRlVUVVJFX0ZMQUdTKVxuICAgICAgLmZpbHRlcigoW2ssIF9dKSA9PiAhRlVUVVJFX0ZMQUdTX0VYUElSRUQuaW5jbHVkZXMoaykpXG4gICAgICAuZm9yRWFjaCgoW2ssIHZdKSA9PiBmdXR1cmVGbGFnc1trXSA9IHYpO1xuXG4gICAgY29uc3QgZW5hYmxlTG9va3VwcyA9ICh0aGlzLmFjdHVhbFRlc3RTdWl0ZSA/PyB0aGlzLmV4cGVjdGVkVGVzdFN1aXRlKT8uZW5hYmxlTG9va3VwcztcbiAgICByZXR1cm4ge1xuICAgICAgLy8gaWYgbG9va3VwcyBhcmUgZW5hYmxlZCB0aGVuIHdlIG5lZWQgdG8gc3ludGhcbiAgICAgIC8vIHdpdGggdGhlIFwiZHVtbXlcIiBjb250ZXh0XG4gICAgICAuLi5lbmFibGVMb29rdXBzID8gREVGQVVMVF9TWU5USF9PUFRJT05TLmNvbnRleHQgOiB7fSxcbiAgICAgIC8vIFRoaXMgaXMgbmVlZGVkIHNvIHRoYXQgdGhlcmUgYXJlIG5vIGRpZmZlcmVuY2VzIGJldHdlZW5cbiAgICAgIC8vIHJ1bm5pbmcgb24gdjEgdnMgdjJcbiAgICAgIFtORVdfU1RZTEVfU1RBQ0tfU1lOVEhFU0lTX0NPTlRFWFRdOiAnJyxcbiAgICAgIC4uLmZ1dHVyZUZsYWdzLFxuICAgICAgLi4udGhpcy5sZWdhY3lDb250ZXh0LFxuICAgICAgLi4uYWRkaXRpb25hbENvbnRleHQsXG4gICAgfTtcbiAgfVxufVxuXG5cbi8vIERlZmF1bHQgY29udGV4dCB3ZSBydW4gYWxsIGludGVnIHRlc3RzIHdpdGgsIHNvIHRoZXkgZG9uJ3QgZGVwZW5kIG9uIHRoZVxuLy8gYWNjb3VudCBvZiB0aGUgZXhlcmNpc2luZyB1c2VyLlxuZXhwb3J0IGNvbnN0IERFRkFVTFRfU1lOVEhfT1BUSU9OUyA9IHtcbiAgY29udGV4dDoge1xuICAgIFtBVkFJTEFCSUxJVFlfWk9ORV9GQUxMQkFDS19DT05URVhUX0tFWV06IFsndGVzdC1yZWdpb24tMWEnLCAndGVzdC1yZWdpb24tMWInLCAndGVzdC1yZWdpb24tMWMnXSxcbiAgICAnYXZhaWxhYmlsaXR5LXpvbmVzOmFjY291bnQ9MTIzNDU2Nzg6cmVnaW9uPXRlc3QtcmVnaW9uJzogWyd0ZXN0LXJlZ2lvbi0xYScsICd0ZXN0LXJlZ2lvbi0xYicsICd0ZXN0LXJlZ2lvbi0xYyddLFxuICAgICdzc206YWNjb3VudD0xMjM0NTY3ODpwYXJhbWV0ZXJOYW1lPS9hd3Mvc2VydmljZS9hbWktYW1hem9uLWxpbnV4LWxhdGVzdC9hbXpuLWFtaS1odm0teDg2XzY0LWdwMjpyZWdpb249dGVzdC1yZWdpb24nOiAnYW1pLTEyMzQnLFxuICAgICdzc206YWNjb3VudD0xMjM0NTY3ODpwYXJhbWV0ZXJOYW1lPS9hd3Mvc2VydmljZS9hbWktYW1hem9uLWxpbnV4LWxhdGVzdC9hbXpuMi1hbWktaHZtLXg4Nl82NC1ncDI6cmVnaW9uPXRlc3QtcmVnaW9uJzogJ2FtaS0xMjM0JyxcbiAgICAnc3NtOmFjY291bnQ9MTIzNDU2Nzg6cGFyYW1ldGVyTmFtZT0vYXdzL3NlcnZpY2UvZWNzL29wdGltaXplZC1hbWkvYW1hem9uLWxpbnV4L3JlY29tbWVuZGVkOnJlZ2lvbj10ZXN0LXJlZ2lvbic6ICd7XCJpbWFnZV9pZFwiOiBcImFtaS0xMjM0XCJ9JyxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbWF4LWxlblxuICAgICdhbWk6YWNjb3VudD0xMjM0NTY3ODpmaWx0ZXJzLmltYWdlLXR5cGUuMD1tYWNoaW5lOmZpbHRlcnMubmFtZS4wPWFtem4tYW1pLXZwYy1uYXQtKjpmaWx0ZXJzLnN0YXRlLjA9YXZhaWxhYmxlOm93bmVycy4wPWFtYXpvbjpyZWdpb249dGVzdC1yZWdpb24nOiAnYW1pLTEyMzQnLFxuICAgICd2cGMtcHJvdmlkZXI6YWNjb3VudD0xMjM0NTY3ODpmaWx0ZXIuaXNEZWZhdWx0PXRydWU6cmVnaW9uPXRlc3QtcmVnaW9uOnJldHVybkFzeW1tZXRyaWNTdWJuZXRzPXRydWUnOiB7XG4gICAgICB2cGNJZDogJ3ZwYy02MDkwMDkwNScsXG4gICAgICBzdWJuZXRHcm91cHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdQdWJsaWMnLFxuICAgICAgICAgIG5hbWU6ICdQdWJsaWMnLFxuICAgICAgICAgIHN1Ym5ldHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgc3VibmV0SWQ6ICdzdWJuZXQtZTE5NDU1Y2EnLFxuICAgICAgICAgICAgICBhdmFpbGFiaWxpdHlab25lOiAndXMtZWFzdC0xYScsXG4gICAgICAgICAgICAgIHJvdXRlVGFibGVJZDogJ3J0Yi1lMTk0NTVjYScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBzdWJuZXRJZDogJ3N1Ym5ldC1lMGMyNDc5NycsXG4gICAgICAgICAgICAgIGF2YWlsYWJpbGl0eVpvbmU6ICd1cy1lYXN0LTFiJyxcbiAgICAgICAgICAgICAgcm91dGVUYWJsZUlkOiAncnRiLWUwYzI0Nzk3JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHN1Ym5ldElkOiAnc3VibmV0LWNjZDc3Mzk1JyxcbiAgICAgICAgICAgICAgYXZhaWxhYmlsaXR5Wm9uZTogJ3VzLWVhc3QtMWMnLFxuICAgICAgICAgICAgICByb3V0ZVRhYmxlSWQ6ICdydGItY2NkNzczOTUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuXG4gICAgLy8gUmVzdHJpY3RpbmcgdG8gdGhlc2UgdGFyZ2V0IHBhcnRpdGlvbnMgbWFrZXMgbW9zdCBzZXJ2aWNlIHByaW5jaXBhbHMgc3ludGhlc2l6ZSB0b1xuICAgIC8vIGBzZXJ2aWNlLiR7VVJMX1NVRkZJWH1gLCB3aGljaCBpcyB0ZWNobmljYWxseSAqaW5jb3JyZWN0KiAoaXQncyBvbmx5IGBhbWF6b25hd3MuY29tYFxuICAgIC8vIG9yIGBhbWF6b25hd3MuY29tLmNuYCwgbmV2ZXIgVXJsU3VmZml4IGZvciBhbnkgb2YgdGhlIHJlc3RyaWN0ZWQgcmVnaW9ucykgYnV0IGl0J3Mgd2hhdFxuICAgIC8vIG1vc3QgZXhpc3RpbmcgaW50ZWcgdGVzdHMgY29udGFpbiwgYW5kIHdlIHdhbnQgdG8gZGlzdHVyYiBhcyBmZXcgYXMgcG9zc2libGUuXG4gICAgW1RBUkdFVF9QQVJUSVRJT05TXTogWydhd3MnLCAnYXdzLWNuJ10sXG4gIH0sXG4gIGVudjoge1xuICAgIENES19JTlRFR19BQ0NPVU5UOiAnMTIzNDU2NzgnLFxuICAgIENES19JTlRFR19SRUdJT046ICd0ZXN0LXJlZ2lvbicsXG4gIH0sXG59O1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVubmVyLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJydW5uZXItYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2QkFBNkI7QUFFN0IsNENBQW1LO0FBQ25LLHFEQUFzRDtBQUN0RCwrQkFBK0I7QUFDL0Isb0NBQW1DO0FBRW5DLHlEQUEwRTtBQUUxRSw2REFBaUY7QUFFakYsTUFBTSxtQkFBbUIsR0FBRyx3QkFBd0IsQ0FBQztBQXlDckQ7O0dBRUc7QUFDSDs7R0FFRztBQUNILE1BQXNCLFdBQVc7SUF1RS9CLFlBQVksT0FBMkI7O1FBckJ2Qzs7V0FFRztRQUNnQixnQkFBVyxHQUFzQjtZQUNsRCxZQUFZLEVBQUUsS0FBSztZQUNuQixhQUFhLEVBQUUsS0FBSztZQUNwQixnQkFBZ0IsRUFBRSxLQUFLO1NBQ3hCLENBQUE7UUFlQyxJQUFJLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUM7UUFDekIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNyQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQ25DLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDekMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUVwRSxJQUFJLENBQUMsR0FBRyxTQUFHLE9BQU8sQ0FBQyxHQUFHLG1DQUFJLElBQUksK0JBQWEsQ0FBQztZQUMxQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDekIsR0FBRyxFQUFFO2dCQUNILEdBQUcsT0FBTyxDQUFDLEdBQUc7YUFDZjtTQUNGLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxTQUFTLFNBQUcsT0FBTyxDQUFDLFdBQVcsbUNBQUksSUFB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QUFPLEVBQUU7UUFDUCxDQUFDLCtDQUFzQyxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsQ0FBQztRQUNoRyx3REFBd0QsRUFBRSxDQUFDLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLGdCQUFnQixDQUFDO1FBQ2hILG9IQUFvSCxFQUFFLFVBQVU7UUFDaEkscUhBQXFILEVBQUUsVUFBVTtRQUNqSSwrR0FBK0csRUFBRSwwQkFBMEI7UUFDM0ksbUNBQW1DO1FBQ25DLGtKQUFrSixFQUFFLFVBQVU7UUFDOUoscUdBQXFHLEVBQUU7WUFDckcsS0FBSyxFQUFFLGNBQWM7WUFDckIsWUFBWSxFQUFFO2dCQUNaO29CQUNFLElBQUksRUFBRSxRQUFRO29CQUNkLElBQUksRUFBRSxRQUFRO29CQUNkLE9BQU8sRUFBRTt3QkFDUDs0QkFDRSxRQUFRLEVBQUUsaUJBQWlCOzRCQUMzQixnQkFBZ0IsRUFBRSxZQUFZOzRCQUM5QixZQUFZLEVBQUUsY0FBYzt5QkFDN0I7d0JBQ0Q7NEJBQ0UsUUFBUSxFQUFFLGlCQUFpQjs0QkFDM0IsZ0JBQWdCLEVBQUUsWUFBWTs0QkFDOUIsWUFBWSxFQUFFLGNBQWM7eUJBQzdCO3dCQUNEOzRCQUNFLFFBQVEsRUFBRSxpQkFBaUI7NEJBQzNCLGdCQUFnQixFQUFFLFlBQVk7NEJBQzlCLFlBQVksRUFBRSxjQUFjO3lCQUM3QjtxQkFDRjtpQkFDRjthQUNGO1NBQ0Y7UUFFRCxxRkFBcUY7UUFDckYsdUZBQXVGO1FBQ3ZGLDBGQUEwRjtRQUMxRixnRkFBZ0Y7UUFDaEYsQ0FBQywwQkFBaUIsQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQztLQUN2QztJQUNELEdBQUcsRUFBRTtRQUNILGlCQUFpQixFQUFFLFVBQVU7UUFDN0IsZ0JBQWdCLEVBQUUsYUFBYTtLQUNoQztDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgVGVzdENhc2UsIERlZmF1bHRDZGtPcHRpb25zIH0gZnJvbSAnQGF3cy1jZGsvY2xvdWQtYXNzZW1ibHktc2NoZW1hJztcbmltcG9ydCB7IEFWQUlMQUJJTElUWV9aT05FX0ZBTExCQUNLX0NPTlRFWFRfS0VZLCBGVVRVUkVfRkxBR1MsIFRBUkdFVF9QQVJUSVRJT05TLCBGVVRVUkVfRkxBR1NfRVhQSVJFRCwgTkVXX1NUWUxFX1NUQUNLX1NZTlRIRVNJU19DT05URVhUIH0gZnJvbSAnQGF3cy1jZGsvY3gtYXBpJztcbmltcG9ydCB7IENka0NsaVdyYXBwZXIsIElDZGsgfSBmcm9tICdjZGstY2xpLXdyYXBwZXInO1xuaW1wb3J0ICogYXMgZnMgZnJvbSAnZnMtZXh0cmEnO1xuaW1wb3J0IHsgZmxhdHRlbiB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IERlc3RydWN0aXZlQ2hhbmdlIH0gZnJvbSAnLi4vd29ya2Vycy9jb21tb24nO1xuaW1wb3J0IHsgSW50ZWdUZXN0U3VpdGUsIExlZ2FjeUludGVnVGVzdFN1aXRlIH0gZnJvbSAnLi9pbnRlZy10ZXN0LXN1aXRlJztcbmltcG9ydCB7IEludGVnVGVzdCB9IGZyb20gJy4vaW50ZWdyYXRpb24tdGVzdHMnO1xuaW1wb3J0IHsgQXNzZW1ibHlNYW5pZmVzdFJlYWRlciwgTWFuaWZlc3RUcmFjZSB9IGZyb20gJy4vcHJpdmF0ZS9jbG91ZC1hc3NlbWJseSc7XG5cbmNvbnN0IERFU1RSVUNUSVZFX0NIQU5HRVMgPSAnISFERVNUUlVDVElWRV9DSEFOR0VTOic7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgY3JlYXRpbmcgYW4gaW50ZWdyYXRpb24gdGVzdCBydW5uZXJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnRlZ1J1bm5lck9wdGlvbnMge1xuICAvKipcbiAgICogSW5mb3JtYXRpb24gYWJvdXQgdGhlIHRlc3QgdG8gcnVuXG4gICAqL1xuICByZWFkb25seSB0ZXN0OiBJbnRlZ1Rlc3Q7XG5cbiAgLyoqXG4gICAqIFRoZSBBV1MgcHJvZmlsZSB0byB1c2Ugd2hlbiBpbnZva2luZyB0aGUgQ0RLIENMSVxuICAgKlxuICAgKiBAZGVmYXVsdCAtIG5vIHByb2ZpbGUgaXMgcGFzc2VkLCB0aGUgZGVmYXVsdCBwcm9maWxlIGlzIHVzZWRcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFkZGl0aW9uYWwgZW52aXJvbm1lbnQgdmFyaWFibGVzIHRoYXQgd2lsbCBiZSBhdmFpbGFibGVcbiAgICogdG8gdGhlIENESyBDTElcbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBhZGRpdGlvbmFsIGVudmlyb25tZW50IHZhcmlhYmxlc1xuICAgKi9cbiAgcmVhZG9ubHkgZW52PzogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIH0sXG5cbiAgLyoqXG4gICAqIHRtcCBjZGsub3V0IGRpcmVjdG9yeVxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGRpcmVjdG9yeSB3aWxsIGJlIGBjZGstaW50ZWcub3V0LiR7dGVzdE5hbWV9YFxuICAgKi9cbiAgcmVhZG9ubHkgaW50ZWdPdXREaXI/OiBzdHJpbmcsXG5cbiAgLyoqXG4gICAqIEluc3RhbmNlIG9mIHRoZSBDREsgQ0xJIHRvIHVzZVxuICAgKlxuICAgKiBAZGVmYXVsdCAtIENka0NsaVdyYXBwZXJcbiAgICovXG4gIHJlYWRvbmx5IGNkaz86IElDZGs7XG59XG5cbi8qKlxuICogVGhlIGRpZmZlcmVudCBjb21wb25lbnRzIG9mIGEgdGVzdCBuYW1lXG4gKi9cbi8qKlxuICogUmVwcmVzZW50cyBhbiBJbnRlZ3JhdGlvbiB0ZXN0IHJ1bm5lclxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgSW50ZWdSdW5uZXIge1xuICAvKipcbiAgICogVGhlIGRpcmVjdG9yeSB3aGVyZSB0aGUgc25hcHNob3Qgd2lsbCBiZSBzdG9yZWRcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzbmFwc2hvdERpcjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBbiBpbnN0YW5jZSBvZiB0aGUgQ0RLICBDTElcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjZGs6IElDZGs7XG5cbiAgLyoqXG4gICAqIFByZXR0eSBuYW1lIG9mIHRoZSB0ZXN0XG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdGVzdE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHZhbHVlIHVzZWQgaW4gdGhlICctLWFwcCcgQ0xJIHBhcmFtZXRlclxuICAgKlxuICAgKiBQYXRoIHRvIHRoZSBpbnRlZyB0ZXN0IHNvdXJjZSBmaWxlLCByZWxhdGl2ZSB0byBgdGhpcy5kaXJlY3RvcnlgLlxuICAgKi9cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGNka0FwcDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcGF0aCB3aGVyZSB0aGUgYGNkay5jb250ZXh0Lmpzb25gIGZpbGVcbiAgICogd2lsbCBiZSBjcmVhdGVkXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2RrQ29udGV4dFBhdGg6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHRlc3Qgc3VpdGUgZnJvbSB0aGUgZXhpc3Rpbmcgc25hcHNob3RcbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBleHBlY3RlZFRlc3RTdWl0ZT86IEludGVnVGVzdFN1aXRlIHwgTGVnYWN5SW50ZWdUZXN0U3VpdGU7XG5cbiAgLyoqXG4gICAqIFRoZSB0ZXN0IHN1aXRlIGZyb20gdGhlIG5ldyBcImFjdHVhbFwiIHNuYXBzaG90XG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYWN0dWFsVGVzdFN1aXRlOiBJbnRlZ1Rlc3RTdWl0ZSB8IExlZ2FjeUludGVnVGVzdFN1aXRlO1xuXG4gIC8qKlxuICAgKiBUaGUgd29ya2luZyBkaXJlY3RvcnkgdGhhdCB0aGUgaW50ZWdyYXRpb24gdGVzdHMgd2lsbCBiZVxuICAgKiBleGVjdXRlZCBmcm9tXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGlyZWN0b3J5OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB0ZXN0IHRvIHJ1blxuICAgKi9cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHRlc3Q6IEludGVnVGVzdDtcblxuICAvKipcbiAgICogRGVmYXVsdCBvcHRpb25zIHRvIHBhc3MgdG8gdGhlIENESyBDTElcbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBkZWZhdWx0QXJnczogRGVmYXVsdENka09wdGlvbnMgPSB7XG4gICAgcGF0aE1ldGFkYXRhOiBmYWxzZSxcbiAgICBhc3NldE1ldGFkYXRhOiBmYWxzZSxcbiAgICB2ZXJzaW9uUmVwb3J0aW5nOiBmYWxzZSxcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZGlyZWN0b3J5IHdoZXJlIHRoZSBDREsgd2lsbCBiZSBzeW50aGVkIHRvXG4gICAqXG4gICAqIFJlbGF0aXZlIHRvIGN3ZC5cbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBjZGtPdXREaXI6IHN0cmluZztcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcHJvZmlsZT86IHN0cmluZztcblxuICBwcm90ZWN0ZWQgX2Rlc3RydWN0aXZlQ2hhbmdlcz86IERlc3RydWN0aXZlQ2hhbmdlW107XG4gIHByaXZhdGUgbGVnYWN5Q29udGV4dD86IFJlY29yZDxzdHJpbmcsIGFueT47XG5cbiAgY29uc3RydWN0b3Iob3B0aW9uczogSW50ZWdSdW5uZXJPcHRpb25zKSB7XG4gICAgdGhpcy50ZXN0ID0gb3B0aW9ucy50ZXN0O1xuICAgIHRoaXMuZGlyZWN0b3J5ID0gdGhpcy50ZXN0LmRpcmVjdG9yeTtcbiAgICB0aGlzLnRlc3ROYW1lID0gdGhpcy50ZXN0LnRlc3ROYW1lO1xuICAgIHRoaXMuc25hcHNob3REaXIgPSB0aGlzLnRlc3Quc25hcHNob3REaXI7XG4gICAgdGhpcy5jZGtDb250ZXh0UGF0aCA9IHBhdGguam9pbih0aGlzLmRpcmVjdG9yeSwgJ2Nkay5jb250ZXh0Lmpzb24nKTtcblxuICAgIHRoaXMuY2RrID0gb3B0aW9ucy5jZGsgPz8gbmV3IENka0NsaVdyYXBwZXIoe1xuICAgICAgZGlyZWN0b3J5OiB0aGlzLmRpcmVjdG9yeSxcbiAgICAgIGVudjoge1xuICAgICAgICAuLi5vcHRpb25zLmVudixcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgdGhpcy5jZGtPdXREaXIgPSBvcHRpb25zLmludGVnT3V0RGlyID8/IHRoaXMudGVzdC50ZW1wb3JhcnlPdXRwdXREaXI7XG4gICAgdGhpcy5jZGtBcHAgPSBgbm9kZSAke3BhdGgucmVsYXRpdmUodGhpcy5kaXJlY3RvcnksIHRoaXMudGVzdC5maWxlTmFtZSl9YDtcbiAgICB0aGlzLnByb2ZpbGUgPSBvcHRpb25zLnByb2ZpbGU7XG4gICAgaWYgKHRoaXMuaGFzU25hcHNob3QoKSkge1xuICAgICAgdGhpcy5leHBlY3RlZFRlc3RTdWl0ZSA9IHRoaXMubG9hZE1hbmlmZXN0KCk7XG4gICAgfVxuICAgIHRoaXMuYWN0dWFsVGVzdFN1aXRlID0gdGhpcy5nZW5lcmF0ZUFjdHVhbFNuYXBzaG90KCk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBsaXN0IG9mIGV4cGVjdGVkIChpLmUuIGV4aXN0aW5nKSB0ZXN0IGNhc2VzIGZvciB0aGlzIGludGVncmF0aW9uIHRlc3RcbiAgICovXG4gIHB1YmxpYyBleHBlY3RlZFRlc3RzKCk6IHsgW3Rlc3ROYW1lOiBzdHJpbmddOiBUZXN0Q2FzZSB9IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5leHBlY3RlZFRlc3RTdWl0ZT8udGVzdFN1aXRlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiB0aGUgbGlzdCBvZiBhY3R1YWwgKGkuZS4gbmV3KSB0ZXN0IGNhc2VzIGZvciB0aGlzIGludGVncmF0aW9uIHRlc3RcbiAgICovXG4gIHB1YmxpYyBhY3R1YWxUZXN0cygpOiB7IFt0ZXN0TmFtZTogc3RyaW5nXTogVGVzdENhc2UgfSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuYWN0dWFsVGVzdFN1aXRlLnRlc3RTdWl0ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhIG5ldyBcImFjdHVhbFwiIHNuYXBzaG90IHdoaWNoIHdpbGwgYmUgY29tcGFyZWQgdG8gdGhlXG4gICAqIGV4aXN0aW5nIFwiZXhwZWN0ZWRcIiBzbmFwc2hvdFxuICAgKiBUaGlzIHdpbGwgc3ludGggYW5kIHRoZW4gbG9hZCB0aGUgaW50ZWdyYXRpb24gdGVzdCBtYW5pZmVzdFxuICAgKi9cbiAgcHVibGljIGdlbmVyYXRlQWN0dWFsU25hcHNob3QoKTogSW50ZWdUZXN0U3VpdGUgfCBMZWdhY3lJbnRlZ1Rlc3RTdWl0ZSB7XG4gICAgdGhpcy5jZGsuc3ludGhGYXN0KHtcbiAgICAgIGV4ZWNDbWQ6IHRoaXMuY2RrQXBwLnNwbGl0KCcgJyksXG4gICAgICBlbnY6IHtcbiAgICAgICAgLi4uREVGQVVMVF9TWU5USF9PUFRJT05TLmVudixcbiAgICAgICAgLy8gd2UgZG9uJ3Qga25vdyB0aGUgXCJhY3R1YWxcIiBjb250ZXh0IHlldCAodGhpcyBtZXRob2QgaXMgd2hhdCBnZW5lcmF0ZXMgaXQpIHNvIGp1c3RcbiAgICAgICAgLy8gdXNlIHRoZSBcImV4cGVjdGVkXCIgY29udGV4dC4gVGhpcyBpcyBvbmx5IHJ1biBpbiBvcmRlciB0byByZWFkIHRoZSBtYW5pZmVzdFxuICAgICAgICBDREtfQ09OVEVYVF9KU09OOiBKU09OLnN0cmluZ2lmeSh0aGlzLmdldENvbnRleHQodGhpcy5leHBlY3RlZFRlc3RTdWl0ZT8uc3ludGhDb250ZXh0KSksXG4gICAgICB9LFxuICAgICAgb3V0cHV0OiBwYXRoLnJlbGF0aXZlKHRoaXMuZGlyZWN0b3J5LCB0aGlzLmNka091dERpciksXG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXMubG9hZE1hbmlmZXN0KHRoaXMuY2RrT3V0RGlyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRydWUgaWYgYSBzbmFwc2hvdCBhbHJlYWR5IGV4aXN0cyBmb3IgdGhpcyB0ZXN0XG4gICAqL1xuICBwdWJsaWMgaGFzU25hcHNob3QoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZzLmV4aXN0c1N5bmModGhpcy5zbmFwc2hvdERpcik7XG4gIH1cblxuICAvKipcbiAgICogTG9hZCB0aGUgaW50ZWcgbWFuaWZlc3Qgd2hpY2ggY29udGFpbnMgaW5mb3JtYXRpb25cbiAgICogb24gaG93IHRvIGV4ZWN1dGUgdGhlIHRlc3RzXG4gICAqIEZpcnN0IHdlIHRyeSBhbmQgbG9hZCB0aGUgbWFuaWZlc3QgZnJvbSB0aGUgaW50ZWcgbWFuaWZlc3QgKGkuZS4gaW50ZWcuanNvbilcbiAgICogZnJvbSB0aGUgY2xvdWQgYXNzZW1ibHkuIElmIGl0IGRvZXNuJ3QgZXhpc3QsIHRoZW4gd2UgZmFsbGJhY2sgdG8gdGhlXG4gICAqIFwibGVnYWN5IG1vZGVcIiBhbmQgY3JlYXRlIGEgbWFuaWZlc3QgZnJvbSBwcmFnbWFcbiAgICovXG4gIHByb3RlY3RlZCBsb2FkTWFuaWZlc3QoZGlyPzogc3RyaW5nKTogSW50ZWdUZXN0U3VpdGUgfCBMZWdhY3lJbnRlZ1Rlc3RTdWl0ZSB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHRlc3RTdWl0ZSA9IEludGVnVGVzdFN1aXRlLmZyb21QYXRoKGRpciA/PyB0aGlzLnNuYXBzaG90RGlyKTtcbiAgICAgIHJldHVybiB0ZXN0U3VpdGU7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgY29uc3QgdGVzdENhc2VzID0gTGVnYWN5SW50ZWdUZXN0U3VpdGUuZnJvbUxlZ2FjeSh7XG4gICAgICAgIGNkazogdGhpcy5jZGssXG4gICAgICAgIHRlc3ROYW1lOiB0aGlzLnRlc3ROYW1lLFxuICAgICAgICBpbnRlZ1NvdXJjZUZpbGVQYXRoOiB0aGlzLnRlc3QuZmlsZU5hbWUsXG4gICAgICAgIGxpc3RPcHRpb25zOiB7XG4gICAgICAgICAgLi4udGhpcy5kZWZhdWx0QXJncyxcbiAgICAgICAgICBhbGw6IHRydWUsXG4gICAgICAgICAgYXBwOiB0aGlzLmNka0FwcCxcbiAgICAgICAgICBwcm9maWxlOiB0aGlzLnByb2ZpbGUsXG4gICAgICAgICAgb3V0cHV0OiBwYXRoLnJlbGF0aXZlKHRoaXMuZGlyZWN0b3J5LCB0aGlzLmNka091dERpciksXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICAgIHRoaXMubGVnYWN5Q29udGV4dCA9IExlZ2FjeUludGVnVGVzdFN1aXRlLmdldFByYWdtYUNvbnRleHQodGhpcy50ZXN0LmZpbGVOYW1lKTtcbiAgICAgIHJldHVybiB0ZXN0Q2FzZXM7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGNsZWFudXAoKTogdm9pZCB7XG4gICAgY29uc3QgY2RrT3V0UGF0aCA9IHRoaXMuY2RrT3V0RGlyO1xuICAgIGlmIChmcy5leGlzdHNTeW5jKGNka091dFBhdGgpKSB7XG4gICAgICBmcy5yZW1vdmVTeW5jKGNka091dFBhdGgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBJZiB0aGVyZSBhcmUgYW55IGRlc3RydWN0aXZlIGNoYW5nZXMgdG8gYSBzdGFjayB0aGVuIHRoaXMgd2lsbCByZWNvcmRcbiAgICogdGhvc2UgaW4gdGhlIG1hbmlmZXN0Lmpzb24gZmlsZVxuICAgKi9cbiAgcHJpdmF0ZSByZW5kZXJUcmFjZURhdGEoKTogTWFuaWZlc3RUcmFjZSB7XG4gICAgY29uc3QgdHJhY2VEYXRhOiBNYW5pZmVzdFRyYWNlID0gbmV3IE1hcCgpO1xuICAgIGNvbnN0IGRlc3RydWN0aXZlQ2hhbmdlcyA9IHRoaXMuX2Rlc3RydWN0aXZlQ2hhbmdlcyA/PyBbXTtcbiAgICBkZXN0cnVjdGl2ZUNoYW5nZXMuZm9yRWFjaChjaGFuZ2UgPT4ge1xuICAgICAgY29uc3QgdHJhY2UgPSB0cmFjZURhdGEuZ2V0KGNoYW5nZS5zdGFja05hbWUpO1xuICAgICAgaWYgKHRyYWNlKSB7XG4gICAgICAgIHRyYWNlLnNldChjaGFuZ2UubG9naWNhbElkLCBgJHtERVNUUlVDVElWRV9DSEFOR0VTfSAke2NoYW5nZS5pbXBhY3R9YCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0cmFjZURhdGEuc2V0KGNoYW5nZS5zdGFja05hbWUsIG5ldyBNYXAoW1xuICAgICAgICAgIFtjaGFuZ2UubG9naWNhbElkLCBgJHtERVNUUlVDVElWRV9DSEFOR0VTfSAke2NoYW5nZS5pbXBhY3R9YF0sXG4gICAgICAgIF0pKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gdHJhY2VEYXRhO1xuICB9XG5cbiAgLyoqXG4gICAqIEluIGNhc2VzIHdoZXJlIHdlIGRvIG5vdCB3YW50IHRvIHJldGFpbiB0aGUgYXNzZXRzLFxuICAgKiBmb3IgZXhhbXBsZSwgaWYgdGhlIGFzc2V0cyBhcmUgdmVyeSBsYXJnZS5cbiAgICpcbiAgICogU2luY2UgaXQgaXMgcG9zc2libGUgdG8gZGlzYWJsZSB0aGUgdXBkYXRlIHdvcmtmbG93IGZvciBpbmRpdmlkdWFsIHRlc3RcbiAgICogY2FzZXMsIHRoaXMgbmVlZHMgdG8gZmlyc3QgZ2V0IGEgbGlzdCBvZiBzdGFja3MgdGhhdCBoYXZlIHRoZSB1cGRhdGUgd29ya2Zsb3dcbiAgICogZGlzYWJsZWQgYW5kIHRoZW4gZGVsZXRlIGFzc2V0cyB0aGF0IHJlbGF0ZSB0byB0aGF0IHN0YWNrLiBJdCBkb2VzIHRoYXRcbiAgICogYnkgcmVhZGluZyB0aGUgYXNzZXQgbWFuaWZlc3QgZm9yIHRoZSBzdGFjayBhbmQgZGVsZXRpbmcgdGhlIGFzc2V0IHNvdXJjZVxuICAgKi9cbiAgcHJvdGVjdGVkIHJlbW92ZUFzc2V0c0Zyb21TbmFwc2hvdCgpOiB2b2lkIHtcbiAgICBjb25zdCBzdGFja3MgPSB0aGlzLmFjdHVhbFRlc3RTdWl0ZS5nZXRTdGFja3NXaXRob3V0VXBkYXRlV29ya2Zsb3coKSA/PyBbXTtcbiAgICBjb25zdCBtYW5pZmVzdCA9IEFzc2VtYmx5TWFuaWZlc3RSZWFkZXIuZnJvbVBhdGgodGhpcy5zbmFwc2hvdERpcik7XG4gICAgY29uc3QgYXNzZXRzID0gZmxhdHRlbihzdGFja3MubWFwKHN0YWNrID0+IHtcbiAgICAgIHJldHVybiBtYW5pZmVzdC5nZXRBc3NldHNGb3JTdGFjayhzdGFjaykgPz8gW107XG4gICAgfSkpO1xuXG4gICAgYXNzZXRzLmZvckVhY2goYXNzZXQgPT4ge1xuICAgICAgY29uc3QgZmlsZU5hbWUgPSBwYXRoLmpvaW4odGhpcy5zbmFwc2hvdERpciwgYXNzZXQpO1xuICAgICAgaWYgKGZzLmV4aXN0c1N5bmMoZmlsZU5hbWUpKSB7XG4gICAgICAgIGlmIChmcy5sc3RhdFN5bmMoZmlsZU5hbWUpLmlzRGlyZWN0b3J5KCkpIHtcbiAgICAgICAgICBmcy5yZW1vdmVTeW5jKGZpbGVOYW1lKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBmcy51bmxpbmtTeW5jKGZpbGVOYW1lKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgYXNzZXQgY2FjaGUgKC5jYWNoZS8pIGZpbGVzIGZyb20gdGhlIHNuYXBzaG90LlxuICAgKiBUaGVzZSBhcmUgYSBjYWNoZSBvZiB0aGUgYXNzZXQgemlwcywgYnV0IHdlIGFyZSBmaW5lIHdpdGhcbiAgICogcmUtemlwcGluZyBvbiBkZXBsb3lcbiAgICovXG4gIHByb3RlY3RlZCByZW1vdmVBc3NldHNDYWNoZUZyb21TbmFwc2hvdCgpOiB2b2lkIHtcbiAgICBjb25zdCBmaWxlcyA9IGZzLnJlYWRkaXJTeW5jKHRoaXMuc25hcHNob3REaXIpO1xuICAgIGZpbGVzLmZvckVhY2goZmlsZSA9PiB7XG4gICAgICBjb25zdCBmaWxlTmFtZSA9IHBhdGguam9pbih0aGlzLnNuYXBzaG90RGlyLCBmaWxlKTtcbiAgICAgIGlmIChmcy5sc3RhdFN5bmMoZmlsZU5hbWUpLmlzRGlyZWN0b3J5KCkgJiYgZmlsZSA9PT0gJy5jYWNoZScpIHtcbiAgICAgICAgZnMuZW1wdHlEaXJTeW5jKGZpbGVOYW1lKTtcbiAgICAgICAgZnMucm1kaXJTeW5jKGZpbGVOYW1lKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgdGhlIG5ldyBzbmFwc2hvdC5cbiAgICpcbiAgICogSWYgbG9va3VwcyBhcmUgZW5hYmxlZCwgdGhlbiB3ZSBuZWVkIGNyZWF0ZSB0aGUgc25hcHNob3QgYnkgc3ludGhpbmcgYWdhaW5cbiAgICogd2l0aCB0aGUgZHVtbXkgY29udGV4dCBzbyB0aGF0IGVhY2ggdGltZSB0aGUgdGVzdCBpcyBydW4gb24gZGlmZmVyZW50IG1hY2hpbmVzXG4gICAqIChhbmQgd2l0aCBkaWZmZXJlbnQgY29udGV4dC9lbnYpIHRoZSBkaWZmIHdpbGwgbm90IGNoYW5nZS5cbiAgICpcbiAgICogSWYgbG9va3VwcyBhcmUgZGlzYWJsZWQgKHdoaWNoIG1lYW5zIHRoZSBzdGFjayBpcyBlbnYgYWdub3N0aWMpIHRoZW4ganVzdCBjb3B5XG4gICAqIHRoZSBhc3NlbWJseSB0aGF0IHdhcyBvdXRwdXQgYnkgdGhlIGRlcGxveW1lbnRcbiAgICovXG4gIHByb3RlY3RlZCBjcmVhdGVTbmFwc2hvdCgpOiB2b2lkIHtcbiAgICBpZiAoZnMuZXhpc3RzU3luYyh0aGlzLnNuYXBzaG90RGlyKSkge1xuICAgICAgZnMucmVtb3ZlU3luYyh0aGlzLnNuYXBzaG90RGlyKTtcbiAgICB9XG5cbiAgICAvLyBpZiBsb29rdXBzIGFyZSBlbmFibGVkIHRoZW4gd2UgbmVlZCB0byBzeW50aCBhZ2FpblxuICAgIC8vIHVzaW5nIGR1bW15IGNvbnRleHQgYW5kIHNhdmUgdGhhdCBhcyB0aGUgc25hcHNob3RcbiAgICBpZiAodGhpcy5hY3R1YWxUZXN0U3VpdGUuZW5hYmxlTG9va3Vwcykge1xuICAgICAgdGhpcy5jZGsuc3ludGhGYXN0KHtcbiAgICAgICAgZXhlY0NtZDogdGhpcy5jZGtBcHAuc3BsaXQoJyAnKSxcbiAgICAgICAgZW52OiB7XG4gICAgICAgICAgLi4uREVGQVVMVF9TWU5USF9PUFRJT05TLmVudixcbiAgICAgICAgICBDREtfQ09OVEVYVF9KU09OOiBKU09OLnN0cmluZ2lmeSh0aGlzLmdldENvbnRleHQoKSksXG4gICAgICAgIH0sXG4gICAgICAgIG91dHB1dDogcGF0aC5yZWxhdGl2ZSh0aGlzLmRpcmVjdG9yeSwgdGhpcy5zbmFwc2hvdERpciksXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgZnMubW92ZVN5bmModGhpcy5jZGtPdXREaXIsIHRoaXMuc25hcHNob3REaXIsIHsgb3ZlcndyaXRlOiB0cnVlIH0pO1xuICAgIH1cblxuICAgIHRoaXMuY2xlYW51cFNuYXBzaG90KCk7XG4gIH1cblxuICAvKipcbiAgICogUGVyZm9ybSBzb21lIGNsZWFudXAgc3RlcHMgYWZ0ZXIgdGhlIHNuYXBzaG90IGlzIGNyZWF0ZWRcbiAgICogQW55dGltZSB0aGUgc25hcHNob3QgbmVlZHMgdG8gYmUgbW9kaWZpZWQgYWZ0ZXIgY3JlYXRpb25cbiAgICogdGhlIGxvZ2ljIHNob3VsZCBsaXZlIGhlcmUuXG4gICAqL1xuICBwcml2YXRlIGNsZWFudXBTbmFwc2hvdCgpOiB2b2lkIHtcbiAgICBpZiAoZnMuZXhpc3RzU3luYyh0aGlzLnNuYXBzaG90RGlyKSkge1xuICAgICAgdGhpcy5yZW1vdmVBc3NldHNGcm9tU25hcHNob3QoKTtcbiAgICAgIHRoaXMucmVtb3ZlQXNzZXRzQ2FjaGVGcm9tU25hcHNob3QoKTtcbiAgICAgIGNvbnN0IGFzc2VtYmx5ID0gQXNzZW1ibHlNYW5pZmVzdFJlYWRlci5mcm9tUGF0aCh0aGlzLnNuYXBzaG90RGlyKTtcbiAgICAgIGFzc2VtYmx5LmNsZWFuTWFuaWZlc3QoKTtcbiAgICAgIGFzc2VtYmx5LnJlY29yZFRyYWNlKHRoaXMucmVuZGVyVHJhY2VEYXRhKCkpO1xuICAgIH1cblxuICAgIC8vIGlmIHRoaXMgaXMgYSBsZWdhY3kgdGVzdCB0aGVuIGNyZWF0ZSBhbiBpbnRlZyBtYW5pZmVzdFxuICAgIC8vIGluIHRoZSBzbmFwc2hvdCBkaXJlY3Rvcnkgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIHRoZVxuICAgIC8vIHVwZGF0ZSB3b3JrZmxvdy4gU2F2ZSBhbnkgbGVnYWN5Q29udGV4dCBhcyB3ZWxsIHNvIHRoYXQgaXQgY2FuIGJlIHJlYWRcbiAgICAvLyB0aGUgbmV4dCB0aW1lXG4gICAgaWYgKHRoaXMuYWN0dWFsVGVzdFN1aXRlLnR5cGUgPT09ICdsZWdhY3ktdGVzdC1zdWl0ZScpIHtcbiAgICAgICh0aGlzLmFjdHVhbFRlc3RTdWl0ZSBhcyBMZWdhY3lJbnRlZ1Rlc3RTdWl0ZSkuc2F2ZU1hbmlmZXN0KHRoaXMuc25hcHNob3REaXIsIHRoaXMubGVnYWN5Q29udGV4dCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGdldENvbnRleHQoYWRkaXRpb25hbENvbnRleHQ/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogUmVjb3JkPHN0cmluZywgYW55PiB7XG4gICAgY29uc3QgZnV0dXJlRmxhZ3M6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPSB7fTtcbiAgICBPYmplY3QuZW50cmllcyhGVVRVUkVfRkxBR1MpXG4gICAgICAuZmlsdGVyKChbaywgX10pID0+ICFGVVRVUkVfRkxBR1NfRVhQSVJFRC5pbmNsdWRlcyhrKSlcbiAgICAgIC5mb3JFYWNoKChbaywgdl0pID0+IGZ1dHVyZUZsYWdzW2tdID0gdik7XG5cbiAgICBjb25zdCBlbmFibGVMb29rdXBzID0gKHRoaXMuYWN0dWFsVGVzdFN1aXRlID8/IHRoaXMuZXhwZWN0ZWRUZXN0U3VpdGUpPy5lbmFibGVMb29rdXBzO1xuICAgIHJldHVybiB7XG4gICAgICAvLyBpZiBsb29rdXBzIGFyZSBlbmFibGVkIHRoZW4gd2UgbmVlZCB0byBzeW50aFxuICAgICAgLy8gd2l0aCB0aGUgXCJkdW1teVwiIGNvbnRleHRcbiAgICAgIC4uLmVuYWJsZUxvb2t1cHMgPyBERUZBVUxUX1NZTlRIX09QVElPTlMuY29udGV4dCA6IHt9LFxuICAgICAgLy8gVGhpcyBpcyBuZWVkZWQgc28gdGhhdCB0aGVyZSBhcmUgbm8gZGlmZmVyZW5jZXMgYmV0d2VlblxuICAgICAgLy8gcnVubmluZyBvbiB2MSB2cyB2MlxuICAgICAgW05FV19TVFlMRV9TVEFDS19TWU5USEVTSVNfQ09OVEVYVF06ICcnLFxuICAgICAgLi4uZnV0dXJlRmxhZ3MsXG4gICAgICAuLi50aGlzLmxlZ2FjeUNvbnRleHQsXG4gICAgICAuLi5hZGRpdGlvbmFsQ29udGV4dCxcbiAgICB9O1xuICB9XG59XG5cblxuLy8gRGVmYXVsdCBjb250ZXh0IHdlIHJ1biBhbGwgaW50ZWcgdGVzdHMgd2l0aCwgc28gdGhleSBkb24ndCBkZXBlbmQgb24gdGhlXG4vLyBhY2NvdW50IG9mIHRoZSBleGVyY2lzaW5nIHVzZXIuXG5leHBvcnQgY29uc3QgREVGQVVMVF9TWU5USF9PUFRJT05TID0ge1xuICBjb250ZXh0OiB7XG4gICAgW0FWQUlMQUJJTElUWV9aT05FX0ZBTExCQUNLX0NPTlRFWFRfS0VZXTogWyd0ZXN0LXJlZ2lvbi0xYScsICd0ZXN0LXJlZ2lvbi0xYicsICd0ZXN0LXJlZ2lvbi0xYyddLFxuICAgICdhdmFpbGFiaWxpdHktem9uZXM6YWNjb3VudD0xMjM0NTY3ODpyZWdpb249dGVzdC1yZWdpb24nOiBbJ3Rlc3QtcmVnaW9uLTFhJywgJ3Rlc3QtcmVnaW9uLTFiJywgJ3Rlc3QtcmVnaW9uLTFjJ10sXG4gICAgJ3NzbTphY2NvdW50PTEyMzQ1Njc4OnBhcmFtZXRlck5hbWU9L2F3cy9zZXJ2aWNlL2FtaS1hbWF6b24tbGludXgtbGF0ZXN0L2Ftem4tYW1pLWh2bS14ODZfNjQtZ3AyOnJlZ2lvbj10ZXN0LXJlZ2lvbic6ICdhbWktMTIzNCcsXG4gICAgJ3NzbTphY2NvdW50PTEyMzQ1Njc4OnBhcmFtZXRlck5hbWU9L2F3cy9zZXJ2aWNlL2FtaS1hbWF6b24tbGludXgtbGF0ZXN0L2Ftem4yLWFtaS1odm0teDg2XzY0LWdwMjpyZWdpb249dGVzdC1yZWdpb24nOiAnYW1pLTEyMzQnLFxuICAgICdzc206YWNjb3VudD0xMjM0NTY3ODpwYXJhbWV0ZXJOYW1lPS9hd3Mvc2VydmljZS9lY3Mvb3B0aW1pemVkLWFtaS9hbWF6b24tbGludXgvcmVjb21tZW5kZWQ6cmVnaW9uPXRlc3QtcmVnaW9uJzogJ3tcImltYWdlX2lkXCI6IFwiYW1pLTEyMzRcIn0nLFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBtYXgtbGVuXG4gICAgJ2FtaTphY2NvdW50PTEyMzQ1Njc4OmZpbHRlcnMuaW1hZ2UtdHlwZS4wPW1hY2hpbmU6ZmlsdGVycy5uYW1lLjA9YW16bi1hbWktdnBjLW5hdC0qOmZpbHRlcnMuc3RhdGUuMD1hdmFpbGFibGU6b3duZXJzLjA9YW1hem9uOnJlZ2lvbj10ZXN0LXJlZ2lvbic6ICdhbWktMTIzNCcsXG4gICAgJ3ZwYy1wcm92aWRlcjphY2NvdW50PTEyMzQ1Njc4OmZpbHRlci5pc0RlZmF1bHQ9dHJ1ZTpyZWdpb249dGVzdC1yZWdpb246cmV0dXJuQXN5bW1ldHJpY1N1Ym5ldHM9dHJ1ZSc6IHtcbiAgICAgIHZwY0lkOiAndnBjLTYwOTAwOTA1JyxcbiAgICAgIHN1Ym5ldEdyb3VwczogW1xuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogJ1B1YmxpYycsXG4gICAgICAgICAgbmFtZTogJ1B1YmxpYycsXG4gICAgICAgICAgc3VibmV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBzdWJuZXRJZDogJ3N1Ym5ldC1lMTk0NTVjYScsXG4gICAgICAgICAgICAgIGF2YWlsYWJpbGl0eVpvbmU6ICd1cy1lYXN0LTFhJyxcbiAgICAgICAgICAgICAgcm91dGVUYWJsZUlkOiAncnRiLWUxOTQ1NWNhJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHN1Ym5ldElkOiAnc3VibmV0LWUwYzI0Nzk3JyxcbiAgICAgICAgICAgICAgYXZhaWxhYmlsaXR5Wm9uZTogJ3VzLWVhc3QtMWInLFxuICAgICAgICAgICAgICByb3V0ZVRhYmxlSWQ6ICdydGItZTBjMjQ3OTcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgc3VibmV0SWQ6ICdzdWJuZXQtY2NkNzczOTUnLFxuICAgICAgICAgICAgICBhdmFpbGFiaWxpdHlab25lOiAndXMtZWFzdC0xYycsXG4gICAgICAgICAgICAgIHJvdXRlVGFibGVJZDogJ3J0Yi1jY2Q3NzM5NScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG5cbiAgICAvLyBSZXN0cmljdGluZyB0byB0aGVzZSB0YXJnZXQgcGFydGl0aW9ucyBtYWtlcyBtb3N0IHNlcnZpY2UgcHJpbmNpcGFscyBzeW50aGVzaXplIHRvXG4gICAgLy8gYHNlcnZpY2UuJHtVUkxfU1VGRklYfWAsIHdoaWNoIGlzIHRlY2huaWNhbGx5ICppbmNvcnJlY3QqIChpdCdzIG9ubHkgYGFtYXpvbmF3cy5jb21gXG4gICAgLy8gb3IgYGFtYXpvbmF3cy5jb20uY25gLCBuZXZlciBVcmxTdWZmaXggZm9yIGFueSBvZiB0aGUgcmVzdHJpY3RlZCByZWdpb25zKSBidXQgaXQncyB3aGF0XG4gICAgLy8gbW9zdCBleGlzdGluZyBpbnRlZyB0ZXN0cyBjb250YWluLCBhbmQgd2Ugd2FudCB0byBkaXN0dXJiIGFzIGZldyBhcyBwb3NzaWJsZS5cbiAgICBbVEFSR0VUX1BBUlRJVElPTlNdOiBbJ2F3cycsICdhd3MtY24nXSxcbiAgfSxcbiAgZW52OiB7XG4gICAgQ0RLX0lOVEVHX0FDQ09VTlQ6ICcxMjM0NTY3OCcsXG4gICAgQ0RLX0lOVEVHX1JFR0lPTjogJ3Rlc3QtcmVnaW9uJyxcbiAgfSxcbn07XG4iXX0=
{
"name": "@aws-cdk/integ-runner",
"description": "CDK Integration Testing Tool",
"version": "1.159.0",
"version": "1.160.0",
"private": false,

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

"devDependencies": {
"@aws-cdk/cdk-build-tools": "1.159.0",
"@aws-cdk/cdk-build-tools": "1.160.0",
"@types/mock-fs": "^4.13.1",
"mock-fs": "^4.14.0",
"@aws-cdk/pkglint": "1.159.0",
"@aws-cdk/pkglint": "1.160.0",
"@types/fs-extra": "^8.1.2",
"@types/jest": "^27.5.0",
"@types/jest": "^27.5.2",
"@types/node": "^10.17.60",

@@ -66,8 +66,8 @@ "@types/workerpool": "^6.1.0",

"jest": "^27.5.1",
"@aws-cdk/cloud-assembly-schema": "1.159.0",
"@aws-cdk/cloudformation-diff": "1.159.0",
"@aws-cdk/cx-api": "1.159.0",
"cdk-assets": "1.159.0",
"cdk-cli-wrapper": "1.159.0",
"aws-cdk": "1.159.0",
"@aws-cdk/cloud-assembly-schema": "1.160.0",
"@aws-cdk/cloudformation-diff": "1.160.0",
"@aws-cdk/cx-api": "1.160.0",
"cdk-assets": "1.160.0",
"cdk-cli-wrapper": "1.160.0",
"aws-cdk": "1.160.0",
"chalk": "^4",

@@ -79,3 +79,3 @@ "fs-extra": "^9.1.0",

"dependencies": {
"aws-cdk": "1.159.0"
"aws-cdk": "1.160.0"
},

@@ -93,3 +93,3 @@ "repository": {

"engines": {
"node": ">= 10.13.0 <13 || >=13.7.0"
"node": ">= 14.15.0"
},

@@ -96,0 +96,0 @@ "nozem": {

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 not supported yet

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