Socket
Socket
Sign inDemoInstall

@aws-sdk/credential-provider-web-identity

Package Overview
Dependencies
Maintainers
7
Versions
136
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@aws-sdk/credential-provider-web-identity - npm Package Compare versions

Comparing version 3.18.0 to 3.19.0

11

CHANGELOG.md

@@ -6,2 +6,13 @@ # Change Log

# [3.19.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.18.0...v3.19.0) (2021-06-24)
### Features
* **credential-provider-node:** throw cannot load credential error from credentail chain ([#2408](https://github.com/aws/aws-sdk-js-v3/issues/2408)) ([5e0a46a](https://github.com/aws/aws-sdk-js-v3/commit/5e0a46a9f4a35cdb200f7eccef09fb4c6ad76e9c))
# [3.18.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.17.0...v3.18.0) (2021-06-04)

@@ -8,0 +19,0 @@

4

dist/cjs/fromTokenFile.js

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

if (!webIdentityTokenFile || !roleArn) {
throw new property_provider_1.ProviderError("Web identity configuration not specified");
throw new property_provider_1.CredentialsProviderError("Web identity configuration not specified");
}

@@ -33,2 +33,2 @@ return fromWebToken_1.fromWebToken({

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbVRva2VuRmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mcm9tVG9rZW5GaWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGtFQUEyRDtBQUUzRCwyQkFBa0M7QUFFbEMsaURBQWdFO0FBRWhFLE1BQU0sY0FBYyxHQUFHLDZCQUE2QixDQUFDO0FBQ3JELE1BQU0sWUFBWSxHQUFHLGNBQWMsQ0FBQztBQUNwQyxNQUFNLHFCQUFxQixHQUFHLHVCQUF1QixDQUFDO0FBU3REOztHQUVHO0FBQ0ksTUFBTSxhQUFhLEdBQ3hCLENBQUMsT0FBMEIsRUFBRSxFQUFzQixFQUFFLENBQ3JELEtBQUssSUFBSSxFQUFFO0lBQ1QsT0FBTyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUNoQyxDQUFDLENBQUM7QUFKUyxRQUFBLGFBQWEsaUJBSXRCO0FBRUosTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLElBQXdCLEVBQXdCLEVBQUU7O0lBQzFFLE1BQU0sb0JBQW9CLEdBQUcsTUFBQSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsb0JBQW9CLG1DQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDdkYsTUFBTSxPQUFPLEdBQUcsTUFBQSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsT0FBTyxtQ0FBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzNELE1BQU0sZUFBZSxHQUFHLE1BQUEsSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLGVBQWUsbUNBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBRXBGLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLE9BQU8sRUFBRTtRQUNyQyxNQUFNLElBQUksaUNBQWEsQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO0tBQ3JFO0lBRUQsT0FBTywyQkFBWSxDQUFDO1FBQ2xCLEdBQUcsSUFBSTtRQUNQLGdCQUFnQixFQUFFLGlCQUFZLENBQUMsb0JBQW9CLEVBQUUsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLENBQUM7UUFDM0UsT0FBTztRQUNQLGVBQWU7S0FDaEIsQ0FBQyxFQUFFLENBQUM7QUFDUCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm92aWRlckVycm9yIH0gZnJvbSBcIkBhd3Mtc2RrL3Byb3BlcnR5LXByb3ZpZGVyXCI7XG5pbXBvcnQgeyBDcmVkZW50aWFsUHJvdmlkZXIsIENyZWRlbnRpYWxzIH0gZnJvbSBcIkBhd3Mtc2RrL3R5cGVzXCI7XG5pbXBvcnQgeyByZWFkRmlsZVN5bmMgfSBmcm9tIFwiZnNcIjtcblxuaW1wb3J0IHsgZnJvbVdlYlRva2VuLCBGcm9tV2ViVG9rZW5Jbml0IH0gZnJvbSBcIi4vZnJvbVdlYlRva2VuXCI7XG5cbmNvbnN0IEVOVl9UT0tFTl9GSUxFID0gXCJBV1NfV0VCX0lERU5USVRZX1RPS0VOX0ZJTEVcIjtcbmNvbnN0IEVOVl9ST0xFX0FSTiA9IFwiQVdTX1JPTEVfQVJOXCI7XG5jb25zdCBFTlZfUk9MRV9TRVNTSU9OX05BTUUgPSBcIkFXU19ST0xFX1NFU1NJT05fTkFNRVwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZyb21Ub2tlbkZpbGVJbml0IGV4dGVuZHMgUGFydGlhbDxPbWl0PEZyb21XZWJUb2tlbkluaXQsIFwid2ViSWRlbnRpdHlUb2tlblwiPj4ge1xuICAvKipcbiAgICogRmlsZSBsb2NhdGlvbiBvZiB3aGVyZSB0aGUgYE9JRENgIHRva2VuIGlzIHN0b3JlZC5cbiAgICovXG4gIHdlYklkZW50aXR5VG9rZW5GaWxlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgT0lEQyBjcmVkZW50aWFscyBmcm9tIGEgZmlsZSBvbiBkaXNrLlxuICovXG5leHBvcnQgY29uc3QgZnJvbVRva2VuRmlsZSA9XG4gIChpbml0OiBGcm9tVG9rZW5GaWxlSW5pdCA9IHt9KTogQ3JlZGVudGlhbFByb3ZpZGVyID0+XG4gIGFzeW5jICgpID0+IHtcbiAgICByZXR1cm4gcmVzb2x2ZVRva2VuRmlsZShpbml0KTtcbiAgfTtcblxuY29uc3QgcmVzb2x2ZVRva2VuRmlsZSA9IChpbml0PzogRnJvbVRva2VuRmlsZUluaXQpOiBQcm9taXNlPENyZWRlbnRpYWxzPiA9PiB7XG4gIGNvbnN0IHdlYklkZW50aXR5VG9rZW5GaWxlID0gaW5pdD8ud2ViSWRlbnRpdHlUb2tlbkZpbGUgPz8gcHJvY2Vzcy5lbnZbRU5WX1RPS0VOX0ZJTEVdO1xuICBjb25zdCByb2xlQXJuID0gaW5pdD8ucm9sZUFybiA/PyBwcm9jZXNzLmVudltFTlZfUk9MRV9BUk5dO1xuICBjb25zdCByb2xlU2Vzc2lvbk5hbWUgPSBpbml0Py5yb2xlU2Vzc2lvbk5hbWUgPz8gcHJvY2Vzcy5lbnZbRU5WX1JPTEVfU0VTU0lPTl9OQU1FXTtcblxuICBpZiAoIXdlYklkZW50aXR5VG9rZW5GaWxlIHx8ICFyb2xlQXJuKSB7XG4gICAgdGhyb3cgbmV3IFByb3ZpZGVyRXJyb3IoXCJXZWIgaWRlbnRpdHkgY29uZmlndXJhdGlvbiBub3Qgc3BlY2lmaWVkXCIpO1xuICB9XG5cbiAgcmV0dXJuIGZyb21XZWJUb2tlbih7XG4gICAgLi4uaW5pdCxcbiAgICB3ZWJJZGVudGl0eVRva2VuOiByZWFkRmlsZVN5bmMod2ViSWRlbnRpdHlUb2tlbkZpbGUsIHsgZW5jb2Rpbmc6IFwiYXNjaWlcIiB9KSxcbiAgICByb2xlQXJuLFxuICAgIHJvbGVTZXNzaW9uTmFtZSxcbiAgfSkoKTtcbn07XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbVRva2VuRmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mcm9tVG9rZW5GaWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGtFQUFzRTtBQUV0RSwyQkFBa0M7QUFFbEMsaURBQWdFO0FBRWhFLE1BQU0sY0FBYyxHQUFHLDZCQUE2QixDQUFDO0FBQ3JELE1BQU0sWUFBWSxHQUFHLGNBQWMsQ0FBQztBQUNwQyxNQUFNLHFCQUFxQixHQUFHLHVCQUF1QixDQUFDO0FBU3REOztHQUVHO0FBQ0ksTUFBTSxhQUFhLEdBQ3hCLENBQUMsT0FBMEIsRUFBRSxFQUFzQixFQUFFLENBQ3JELEtBQUssSUFBSSxFQUFFO0lBQ1QsT0FBTyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUNoQyxDQUFDLENBQUM7QUFKUyxRQUFBLGFBQWEsaUJBSXRCO0FBRUosTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLElBQXdCLEVBQXdCLEVBQUU7O0lBQzFFLE1BQU0sb0JBQW9CLEdBQUcsTUFBQSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsb0JBQW9CLG1DQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDdkYsTUFBTSxPQUFPLEdBQUcsTUFBQSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsT0FBTyxtQ0FBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzNELE1BQU0sZUFBZSxHQUFHLE1BQUEsSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLGVBQWUsbUNBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBRXBGLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLE9BQU8sRUFBRTtRQUNyQyxNQUFNLElBQUksNENBQXdCLENBQUMsMENBQTBDLENBQUMsQ0FBQztLQUNoRjtJQUVELE9BQU8sMkJBQVksQ0FBQztRQUNsQixHQUFHLElBQUk7UUFDUCxnQkFBZ0IsRUFBRSxpQkFBWSxDQUFDLG9CQUFvQixFQUFFLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxDQUFDO1FBQzNFLE9BQU87UUFDUCxlQUFlO0tBQ2hCLENBQUMsRUFBRSxDQUFDO0FBQ1AsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3JlZGVudGlhbHNQcm92aWRlckVycm9yIH0gZnJvbSBcIkBhd3Mtc2RrL3Byb3BlcnR5LXByb3ZpZGVyXCI7XG5pbXBvcnQgeyBDcmVkZW50aWFsUHJvdmlkZXIsIENyZWRlbnRpYWxzIH0gZnJvbSBcIkBhd3Mtc2RrL3R5cGVzXCI7XG5pbXBvcnQgeyByZWFkRmlsZVN5bmMgfSBmcm9tIFwiZnNcIjtcblxuaW1wb3J0IHsgZnJvbVdlYlRva2VuLCBGcm9tV2ViVG9rZW5Jbml0IH0gZnJvbSBcIi4vZnJvbVdlYlRva2VuXCI7XG5cbmNvbnN0IEVOVl9UT0tFTl9GSUxFID0gXCJBV1NfV0VCX0lERU5USVRZX1RPS0VOX0ZJTEVcIjtcbmNvbnN0IEVOVl9ST0xFX0FSTiA9IFwiQVdTX1JPTEVfQVJOXCI7XG5jb25zdCBFTlZfUk9MRV9TRVNTSU9OX05BTUUgPSBcIkFXU19ST0xFX1NFU1NJT05fTkFNRVwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZyb21Ub2tlbkZpbGVJbml0IGV4dGVuZHMgUGFydGlhbDxPbWl0PEZyb21XZWJUb2tlbkluaXQsIFwid2ViSWRlbnRpdHlUb2tlblwiPj4ge1xuICAvKipcbiAgICogRmlsZSBsb2NhdGlvbiBvZiB3aGVyZSB0aGUgYE9JRENgIHRva2VuIGlzIHN0b3JlZC5cbiAgICovXG4gIHdlYklkZW50aXR5VG9rZW5GaWxlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgT0lEQyBjcmVkZW50aWFscyBmcm9tIGEgZmlsZSBvbiBkaXNrLlxuICovXG5leHBvcnQgY29uc3QgZnJvbVRva2VuRmlsZSA9XG4gIChpbml0OiBGcm9tVG9rZW5GaWxlSW5pdCA9IHt9KTogQ3JlZGVudGlhbFByb3ZpZGVyID0+XG4gIGFzeW5jICgpID0+IHtcbiAgICByZXR1cm4gcmVzb2x2ZVRva2VuRmlsZShpbml0KTtcbiAgfTtcblxuY29uc3QgcmVzb2x2ZVRva2VuRmlsZSA9IChpbml0PzogRnJvbVRva2VuRmlsZUluaXQpOiBQcm9taXNlPENyZWRlbnRpYWxzPiA9PiB7XG4gIGNvbnN0IHdlYklkZW50aXR5VG9rZW5GaWxlID0gaW5pdD8ud2ViSWRlbnRpdHlUb2tlbkZpbGUgPz8gcHJvY2Vzcy5lbnZbRU5WX1RPS0VOX0ZJTEVdO1xuICBjb25zdCByb2xlQXJuID0gaW5pdD8ucm9sZUFybiA/PyBwcm9jZXNzLmVudltFTlZfUk9MRV9BUk5dO1xuICBjb25zdCByb2xlU2Vzc2lvbk5hbWUgPSBpbml0Py5yb2xlU2Vzc2lvbk5hbWUgPz8gcHJvY2Vzcy5lbnZbRU5WX1JPTEVfU0VTU0lPTl9OQU1FXTtcblxuICBpZiAoIXdlYklkZW50aXR5VG9rZW5GaWxlIHx8ICFyb2xlQXJuKSB7XG4gICAgdGhyb3cgbmV3IENyZWRlbnRpYWxzUHJvdmlkZXJFcnJvcihcIldlYiBpZGVudGl0eSBjb25maWd1cmF0aW9uIG5vdCBzcGVjaWZpZWRcIik7XG4gIH1cblxuICByZXR1cm4gZnJvbVdlYlRva2VuKHtcbiAgICAuLi5pbml0LFxuICAgIHdlYklkZW50aXR5VG9rZW46IHJlYWRGaWxlU3luYyh3ZWJJZGVudGl0eVRva2VuRmlsZSwgeyBlbmNvZGluZzogXCJhc2NpaVwiIH0pLFxuICAgIHJvbGVBcm4sXG4gICAgcm9sZVNlc3Npb25OYW1lLFxuICB9KSgpO1xufTtcbiJdfQ==

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

if (!roleAssumerWithWebIdentity) {
throw new property_provider_1.ProviderError(`Role Arn '${roleArn}' needs to be assumed with web identity,` +
throw new property_provider_1.CredentialsProviderError(`Role Arn '${roleArn}' needs to be assumed with web identity,` +
` but no role assumption callback was provided.`, false);

@@ -23,2 +23,2 @@ }

exports.fromWebToken = fromWebToken;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbVdlYlRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Zyb21XZWJUb2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxrRUFBMkQ7QUFpSXBELE1BQU0sWUFBWSxHQUN2QixDQUFDLElBQXNCLEVBQXNCLEVBQUUsQ0FDL0MsR0FBRyxFQUFFO0lBQ0gsTUFBTSxFQUNKLE9BQU8sRUFDUCxlQUFlLEVBQ2YsZ0JBQWdCLEVBQ2hCLFVBQVUsRUFDVixVQUFVLEVBQ1YsTUFBTSxFQUNOLGVBQWUsRUFDZiwwQkFBMEIsR0FDM0IsR0FBRyxJQUFJLENBQUM7SUFFVCxJQUFJLENBQUMsMEJBQTBCLEVBQUU7UUFDL0IsTUFBTSxJQUFJLGlDQUFhLENBQ3JCLGFBQWEsT0FBTywwQ0FBMEM7WUFDNUQsZ0RBQWdELEVBQ2xELEtBQUssQ0FDTixDQUFDO0tBQ0g7SUFFRCxPQUFPLDBCQUEwQixDQUFDO1FBQ2hDLE9BQU8sRUFBRSxPQUFPO1FBQ2hCLGVBQWUsRUFBRSxlQUFlLGFBQWYsZUFBZSxjQUFmLGVBQWUsR0FBSSxzQkFBc0IsSUFBSSxDQUFDLEdBQUcsRUFBRSxFQUFFO1FBQ3RFLGdCQUFnQixFQUFFLGdCQUFnQjtRQUNsQyxVQUFVLEVBQUUsVUFBVTtRQUN0QixVQUFVLEVBQUUsVUFBVTtRQUN0QixNQUFNLEVBQUUsTUFBTTtRQUNkLGVBQWUsRUFBRSxlQUFlO0tBQ2pDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQS9CUyxRQUFBLFlBQVksZ0JBK0JyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb3ZpZGVyRXJyb3IgfSBmcm9tIFwiQGF3cy1zZGsvcHJvcGVydHktcHJvdmlkZXJcIjtcbmltcG9ydCB7IENyZWRlbnRpYWxQcm92aWRlciwgQ3JlZGVudGlhbHMgfSBmcm9tIFwiQGF3cy1zZGsvdHlwZXNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBBc3N1bWVSb2xlV2l0aFdlYklkZW50aXR5UGFyYW1zIHtcbiAgLyoqXG4gICAqIDxwPlRoZSBBbWF6b24gUmVzb3VyY2UgTmFtZSAoQVJOKSBvZiB0aGUgcm9sZSB0aGF0IHRoZSBjYWxsZXIgaXMgYXNzdW1pbmcuPC9wPlxuICAgKi9cbiAgUm9sZUFybjogc3RyaW5nO1xuICAvKipcbiAgICogPHA+QW4gaWRlbnRpZmllciBmb3IgdGhlIGFzc3VtZWQgcm9sZSBzZXNzaW9uLiBUeXBpY2FsbHksIHlvdSBwYXNzIHRoZSBuYW1lIG9yIGlkZW50aWZpZXJcbiAgICogICAgICAgICAgdGhhdCBpcyBhc3NvY2lhdGVkIHdpdGggdGhlIHVzZXIgd2hvIGlzIHVzaW5nIHlvdXIgYXBwbGljYXRpb24uIFRoYXQgd2F5LCB0aGUgdGVtcG9yYXJ5XG4gICAqICAgICAgICAgIHNlY3VyaXR5IGNyZWRlbnRpYWxzIHRoYXQgeW91ciBhcHBsaWNhdGlvbiB3aWxsIHVzZSBhcmUgYXNzb2NpYXRlZCB3aXRoIHRoYXQgdXNlci4gVGhpc1xuICAgKiAgICAgICAgICBzZXNzaW9uIG5hbWUgaXMgaW5jbHVkZWQgYXMgcGFydCBvZiB0aGUgQVJOIGFuZCBhc3N1bWVkIHJvbGUgSUQgaW4gdGhlXG4gICAqICAgICAgICAgICAgIDxjb2RlPkFzc3VtZWRSb2xlVXNlcjwvY29kZT4gcmVzcG9uc2UgZWxlbWVudC48L3A+XG4gICAqICAgICAgICAgIDxwPlRoZSByZWdleCB1c2VkIHRvIHZhbGlkYXRlIHRoaXMgcGFyYW1ldGVyIGlzIGEgc3RyaW5nIG9mIGNoYXJhY3RlcnNcbiAgICogICAgIGNvbnNpc3Rpbmcgb2YgdXBwZXItIGFuZCBsb3dlci1jYXNlIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIHdpdGggbm8gc3BhY2VzLiBZb3UgY2FuXG4gICAqICAgICBhbHNvIGluY2x1ZGUgdW5kZXJzY29yZXMgb3IgYW55IG9mIHRoZSBmb2xsb3dpbmcgY2hhcmFjdGVyczogPSwuQC08L3A+XG4gICAqL1xuICBSb2xlU2Vzc2lvbk5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIDxwPlRoZSBPQXV0aCAyLjAgYWNjZXNzIHRva2VuIG9yIE9wZW5JRCBDb25uZWN0IElEIHRva2VuIHRoYXQgaXMgcHJvdmlkZWQgYnkgdGhlIGlkZW50aXR5XG4gICAqICAgICAgICAgIHByb3ZpZGVyLiBZb3VyIGFwcGxpY2F0aW9uIG11c3QgZ2V0IHRoaXMgdG9rZW4gYnkgYXV0aGVudGljYXRpbmcgdGhlIHVzZXIgd2hvIGlzIHVzaW5nIHlvdXJcbiAgICogICAgICAgICAgYXBwbGljYXRpb24gd2l0aCBhIHdlYiBpZGVudGl0eSBwcm92aWRlciBiZWZvcmUgdGhlIGFwcGxpY2F0aW9uIG1ha2VzIGFuXG4gICAqICAgICAgICAgICAgIDxjb2RlPkFzc3VtZVJvbGVXaXRoV2ViSWRlbnRpdHk8L2NvZGU+IGNhbGwuIDwvcD5cbiAgICovXG4gIFdlYklkZW50aXR5VG9rZW46IHN0cmluZztcblxuICAvKipcbiAgICogPHA+VGhlIGZ1bGx5IHF1YWxpZmllZCBob3N0IGNvbXBvbmVudCBvZiB0aGUgZG9tYWluIG5hbWUgb2YgdGhlIGlkZW50aXR5IHByb3ZpZGVyLjwvcD5cbiAgICogICAgICAgICAgPHA+U3BlY2lmeSB0aGlzIHZhbHVlIG9ubHkgZm9yIE9BdXRoIDIuMCBhY2Nlc3MgdG9rZW5zLiBDdXJyZW50bHlcbiAgICogICAgICAgICAgICAgPGNvZGU+d3d3LmFtYXpvbi5jb208L2NvZGU+IGFuZCA8Y29kZT5ncmFwaC5mYWNlYm9vay5jb208L2NvZGU+IGFyZSB0aGUgb25seSBzdXBwb3J0ZWRcbiAgICogICAgICAgICAgaWRlbnRpdHkgcHJvdmlkZXJzIGZvciBPQXV0aCAyLjAgYWNjZXNzIHRva2Vucy4gRG8gbm90IGluY2x1ZGUgVVJMIHNjaGVtZXMgYW5kIHBvcnRcbiAgICogICAgICAgICAgbnVtYmVycy48L3A+XG4gICAqICAgICAgICAgIDxwPkRvIG5vdCBzcGVjaWZ5IHRoaXMgdmFsdWUgZm9yIE9wZW5JRCBDb25uZWN0IElEIHRva2Vucy48L3A+XG4gICAqL1xuICBQcm92aWRlcklkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiA8cD5UaGUgQW1hem9uIFJlc291cmNlIE5hbWVzIChBUk5zKSBvZiB0aGUgSUFNIG1hbmFnZWQgcG9saWNpZXMgdGhhdCB5b3Ugd2FudCB0byB1c2UgYXNcbiAgICogICAgICAgICAgbWFuYWdlZCBzZXNzaW9uIHBvbGljaWVzLiBUaGUgcG9saWNpZXMgbXVzdCBleGlzdCBpbiB0aGUgc2FtZSBhY2NvdW50IGFzIHRoZSByb2xlLjwvcD5cbiAgICogICAgICAgICAgPHA+VGhpcyBwYXJhbWV0ZXIgaXMgb3B0aW9uYWwuIFlvdSBjYW4gcHJvdmlkZSB1cCB0byAxMCBtYW5hZ2VkIHBvbGljeSBBUk5zLiBIb3dldmVyLCB0aGVcbiAgICogICAgICAgICAgcGxhaW4gdGV4dCB0aGF0IHlvdSB1c2UgZm9yIGJvdGggaW5saW5lIGFuZCBtYW5hZ2VkIHNlc3Npb24gcG9saWNpZXMgY2FuJ3QgZXhjZWVkIDIsMDQ4XG4gICAqICAgICAgICAgIGNoYXJhY3RlcnMuIEZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IEFSTnMsIHNlZSA8YSBocmVmPVwiaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dlbmVyYWwvbGF0ZXN0L2dyL2F3cy1hcm5zLWFuZC1uYW1lc3BhY2VzLmh0bWxcIj5BbWF6b24gUmVzb3VyY2UgTmFtZXMgKEFSTnMpIGFuZCBBV1NcbiAgICogICAgICAgICAgICAgU2VydmljZSBOYW1lc3BhY2VzPC9hPiBpbiB0aGUgQVdTIEdlbmVyYWwgUmVmZXJlbmNlLjwvcD5cbiAgICogICAgICAgICAgPG5vdGU+XG4gICAqICAgICAgICAgICAgIDxwPkFuIEFXUyBjb252ZXJzaW9uIGNvbXByZXNzZXMgdGhlIHBhc3NlZCBzZXNzaW9uIHBvbGljaWVzIGFuZCBzZXNzaW9uIHRhZ3MgaW50byBhXG4gICAqICAgICAgICAgICAgIHBhY2tlZCBiaW5hcnkgZm9ybWF0IHRoYXQgaGFzIGEgc2VwYXJhdGUgbGltaXQuIFlvdXIgcmVxdWVzdCBjYW4gZmFpbCBmb3IgdGhpcyBsaW1pdFxuICAgKiAgICAgICAgICAgICBldmVuIGlmIHlvdXIgcGxhaW4gdGV4dCBtZWV0cyB0aGUgb3RoZXIgcmVxdWlyZW1lbnRzLiBUaGUgPGNvZGU+UGFja2VkUG9saWN5U2l6ZTwvY29kZT5cbiAgICogICAgICAgICAgICAgcmVzcG9uc2UgZWxlbWVudCBpbmRpY2F0ZXMgYnkgcGVyY2VudGFnZSBob3cgY2xvc2UgdGhlIHBvbGljaWVzIGFuZCB0YWdzIGZvciB5b3VyXG4gICAqICAgICAgICAgICAgIHJlcXVlc3QgYXJlIHRvIHRoZSB1cHBlciBzaXplIGxpbWl0LlxuICAgKiAgICAgICAgICAgICA8L3A+XG4gICAqICAgICAgICAgIDwvbm90ZT5cbiAgICpcbiAgICogICAgICAgICAgPHA+UGFzc2luZyBwb2xpY2llcyB0byB0aGlzIG9wZXJhdGlvbiByZXR1cm5zIG5ld1xuICAgKiAgICAgICAgICB0ZW1wb3JhcnkgY3JlZGVudGlhbHMuIFRoZSByZXN1bHRpbmcgc2Vzc2lvbidzIHBlcm1pc3Npb25zIGFyZSB0aGUgaW50ZXJzZWN0aW9uIG9mIHRoZVxuICAgKiAgICAgICAgICByb2xlJ3MgaWRlbnRpdHktYmFzZWQgcG9saWN5IGFuZCB0aGUgc2Vzc2lvbiBwb2xpY2llcy4gWW91IGNhbiB1c2UgdGhlIHJvbGUncyB0ZW1wb3JhcnlcbiAgICogICAgICAgICAgY3JlZGVudGlhbHMgaW4gc3Vic2VxdWVudCBBV1MgQVBJIGNhbGxzIHRvIGFjY2VzcyByZXNvdXJjZXMgaW4gdGhlIGFjY291bnQgdGhhdCBvd25zXG4gICAqICAgICAgICAgIHRoZSByb2xlLiBZb3UgY2Fubm90IHVzZSBzZXNzaW9uIHBvbGljaWVzIHRvIGdyYW50IG1vcmUgcGVybWlzc2lvbnMgdGhhbiB0aG9zZSBhbGxvd2VkXG4gICAqICAgICAgICAgIGJ5IHRoZSBpZGVudGl0eS1iYXNlZCBwb2xpY3kgb2YgdGhlIHJvbGUgdGhhdCBpcyBiZWluZyBhc3N1bWVkLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlXG4gICAqICAgICAgICAgICAgIDxhIGhyZWY9XCJodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvYWNjZXNzX3BvbGljaWVzLmh0bWwjcG9saWNpZXNfc2Vzc2lvblwiPlNlc3Npb25cbiAgICogICAgICAgICAgICAgUG9saWNpZXM8L2E+IGluIHRoZSA8aT5JQU0gVXNlciBHdWlkZTwvaT4uPC9wPlxuICAgKi9cbiAgUG9saWN5QXJucz86IHsgYXJuPzogc3RyaW5nIH1bXTtcblxuICAvKipcbiAgICogPHA+QW4gSUFNIHBvbGljeSBpbiBKU09OIGZvcm1hdCB0aGF0IHlvdSB3YW50IHRvIHVzZSBhcyBhbiBpbmxpbmUgc2Vzc2lvbiBwb2xpY3kuPC9wPlxuICAgKiAgICAgICAgICA8cD5UaGlzIHBhcmFtZXRlciBpcyBvcHRpb25hbC4gUGFzc2luZyBwb2xpY2llcyB0byB0aGlzIG9wZXJhdGlvbiByZXR1cm5zIG5ld1xuICAgKiAgICAgICAgICB0ZW1wb3JhcnkgY3JlZGVudGlhbHMuIFRoZSByZXN1bHRpbmcgc2Vzc2lvbidzIHBlcm1pc3Npb25zIGFyZSB0aGUgaW50ZXJzZWN0aW9uIG9mIHRoZVxuICAgKiAgICAgICAgICByb2xlJ3MgaWRlbnRpdHktYmFzZWQgcG9saWN5IGFuZCB0aGUgc2Vzc2lvbiBwb2xpY2llcy4gWW91IGNhbiB1c2UgdGhlIHJvbGUncyB0ZW1wb3JhcnlcbiAgICogICAgICAgICAgY3JlZGVudGlhbHMgaW4gc3Vic2VxdWVudCBBV1MgQVBJIGNhbGxzIHRvIGFjY2VzcyByZXNvdXJjZXMgaW4gdGhlIGFjY291bnQgdGhhdCBvd25zXG4gICAqICAgICAgICAgIHRoZSByb2xlLiBZb3UgY2Fubm90IHVzZSBzZXNzaW9uIHBvbGljaWVzIHRvIGdyYW50IG1vcmUgcGVybWlzc2lvbnMgdGhhbiB0aG9zZSBhbGxvd2VkXG4gICAqICAgICAgICAgIGJ5IHRoZSBpZGVudGl0eS1iYXNlZCBwb2xpY3kgb2YgdGhlIHJvbGUgdGhhdCBpcyBiZWluZyBhc3N1bWVkLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlXG4gICAqICAgICAgICAgICAgIDxhIGhyZWY9XCJodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvYWNjZXNzX3BvbGljaWVzLmh0bWwjcG9saWNpZXNfc2Vzc2lvblwiPlNlc3Npb25cbiAgICogICAgICAgICAgICAgUG9saWNpZXM8L2E+IGluIHRoZSA8aT5JQU0gVXNlciBHdWlkZTwvaT4uPC9wPlxuICAgKiAgICAgICAgICA8cD5UaGUgcGxhaW4gdGV4dCB0aGF0IHlvdSB1c2UgZm9yIGJvdGggaW5saW5lIGFuZCBtYW5hZ2VkIHNlc3Npb24gcG9saWNpZXMgY2FuJ3QgZXhjZWVkXG4gICAqICAgICAgICAgIDIsMDQ4IGNoYXJhY3RlcnMuIFRoZSBKU09OIHBvbGljeSBjaGFyYWN0ZXJzIGNhbiBiZSBhbnkgQVNDSUkgY2hhcmFjdGVyIGZyb20gdGhlIHNwYWNlXG4gICAqICAgICAgICAgIGNoYXJhY3RlciB0byB0aGUgZW5kIG9mIHRoZSB2YWxpZCBjaGFyYWN0ZXIgbGlzdCAoXFx1MDAyMCB0aHJvdWdoIFxcdTAwRkYpLiBJdCBjYW4gYWxzb1xuICAgKiAgICAgICAgICBpbmNsdWRlIHRoZSB0YWIgKFxcdTAwMDkpLCBsaW5lZmVlZCAoXFx1MDAwQSksIGFuZCBjYXJyaWFnZSByZXR1cm4gKFxcdTAwMEQpXG4gICAqICAgICAgICAgIGNoYXJhY3RlcnMuPC9wPlxuICAgKiAgICAgICAgICA8bm90ZT5cbiAgICogICAgICAgICAgICAgPHA+QW4gQVdTIGNvbnZlcnNpb24gY29tcHJlc3NlcyB0aGUgcGFzc2VkIHNlc3Npb24gcG9saWNpZXMgYW5kIHNlc3Npb24gdGFncyBpbnRvIGFcbiAgICogICAgICAgICAgICAgcGFja2VkIGJpbmFyeSBmb3JtYXQgdGhhdCBoYXMgYSBzZXBhcmF0ZSBsaW1pdC4gWW91ciByZXF1ZXN0IGNhbiBmYWlsIGZvciB0aGlzIGxpbWl0XG4gICAqICAgICAgICAgICAgIGV2ZW4gaWYgeW91ciBwbGFpbiB0ZXh0IG1lZXRzIHRoZSBvdGhlciByZXF1aXJlbWVudHMuIFRoZSA8Y29kZT5QYWNrZWRQb2xpY3lTaXplPC9jb2RlPlxuICAgKiAgICAgICAgICAgICByZXNwb25zZSBlbGVtZW50IGluZGljYXRlcyBieSBwZXJjZW50YWdlIGhvdyBjbG9zZSB0aGUgcG9saWNpZXMgYW5kIHRhZ3MgZm9yIHlvdXJcbiAgICogICAgICAgICAgICAgcmVxdWVzdCBhcmUgdG8gdGhlIHVwcGVyIHNpemUgbGltaXQuXG4gICAqICAgICAgICAgICAgIDwvcD5cbiAgICogICAgICAgICAgPC9ub3RlPlxuICAgKi9cbiAgUG9saWN5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiA8cD5UaGUgZHVyYXRpb24sIGluIHNlY29uZHMsIG9mIHRoZSByb2xlIHNlc3Npb24uIFRoZSB2YWx1ZSBjYW4gcmFuZ2UgZnJvbSA5MDAgc2Vjb25kcyAoMTVcbiAgICogICAgICAgICAgbWludXRlcykgdXAgdG8gdGhlIG1heGltdW0gc2Vzc2lvbiBkdXJhdGlvbiBzZXR0aW5nIGZvciB0aGUgcm9sZS4gVGhpcyBzZXR0aW5nIGNhbiBoYXZlIGFcbiAgICogICAgICAgICAgdmFsdWUgZnJvbSAxIGhvdXIgdG8gMTIgaG91cnMuIElmIHlvdSBzcGVjaWZ5IGEgdmFsdWUgaGlnaGVyIHRoYW4gdGhpcyBzZXR0aW5nLCB0aGVcbiAgICogICAgICAgICAgb3BlcmF0aW9uIGZhaWxzLiBGb3IgZXhhbXBsZSwgaWYgeW91IHNwZWNpZnkgYSBzZXNzaW9uIGR1cmF0aW9uIG9mIDEyIGhvdXJzLCBidXQgeW91clxuICAgKiAgICAgICAgICBhZG1pbmlzdHJhdG9yIHNldCB0aGUgbWF4aW11bSBzZXNzaW9uIGR1cmF0aW9uIHRvIDYgaG91cnMsIHlvdXIgb3BlcmF0aW9uIGZhaWxzLiBUbyBsZWFyblxuICAgKiAgICAgICAgICBob3cgdG8gdmlldyB0aGUgbWF4aW11bSB2YWx1ZSBmb3IgeW91ciByb2xlLCBzZWUgPGEgaHJlZj1cImh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9JQU0vbGF0ZXN0L1VzZXJHdWlkZS9pZF9yb2xlc191c2UuaHRtbCNpZF9yb2xlc191c2Vfdmlldy1yb2xlLW1heC1zZXNzaW9uXCI+VmlldyB0aGVcbiAgICogICAgICAgICAgICAgTWF4aW11bSBTZXNzaW9uIER1cmF0aW9uIFNldHRpbmcgZm9yIGEgUm9sZTwvYT4gaW4gdGhlXG4gICAqICAgICAgICAgICAgIDxpPklBTSBVc2VyIEd1aWRlPC9pPi48L3A+XG4gICAqICAgICAgICAgIDxwPkJ5IGRlZmF1bHQsIHRoZSB2YWx1ZSBpcyBzZXQgdG8gPGNvZGU+MzYwMDwvY29kZT4gc2Vjb25kcy4gPC9wPlxuICAgKiAgICAgICAgICA8bm90ZT5cbiAgICogICAgICAgICAgICAgPHA+VGhlIDxjb2RlPkR1cmF0aW9uU2Vjb25kczwvY29kZT4gcGFyYW1ldGVyIGlzIHNlcGFyYXRlIGZyb20gdGhlIGR1cmF0aW9uIG9mIGEgY29uc29sZVxuICAgKiAgICAgICAgICAgICBzZXNzaW9uIHRoYXQgeW91IG1pZ2h0IHJlcXVlc3QgdXNpbmcgdGhlIHJldHVybmVkIGNyZWRlbnRpYWxzLiBUaGUgcmVxdWVzdCB0byB0aGVcbiAgICogICAgICAgICAgICAgZmVkZXJhdGlvbiBlbmRwb2ludCBmb3IgYSBjb25zb2xlIHNpZ24taW4gdG9rZW4gdGFrZXMgYSA8Y29kZT5TZXNzaW9uRHVyYXRpb248L2NvZGU+XG4gICAqICAgICAgICAgICAgIHBhcmFtZXRlciB0aGF0IHNwZWNpZmllcyB0aGUgbWF4aW11bSBsZW5ndGggb2YgdGhlIGNvbnNvbGUgc2Vzc2lvbi4gRm9yIG1vcmVcbiAgICogICAgICAgICAgICAgaW5mb3JtYXRpb24sIHNlZSA8YSBocmVmPVwiaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0lBTS9sYXRlc3QvVXNlckd1aWRlL2lkX3JvbGVzX3Byb3ZpZGVyc19lbmFibGUtY29uc29sZS1jdXN0b20tdXJsLmh0bWxcIj5DcmVhdGluZyBhIFVSTFxuICAgKiAgICAgICAgICAgICAgICB0aGF0IEVuYWJsZXMgRmVkZXJhdGVkIFVzZXJzIHRvIEFjY2VzcyB0aGUgQVdTIE1hbmFnZW1lbnQgQ29uc29sZTwvYT4gaW4gdGhlXG4gICAqICAgICAgICAgICAgICAgIDxpPklBTSBVc2VyIEd1aWRlPC9pPi48L3A+XG4gICAqICAgICAgICAgIDwvbm90ZT5cbiAgICovXG4gIER1cmF0aW9uU2Vjb25kcz86IG51bWJlcjtcbn1cblxudHlwZSBMb3dlckNhc2VLZXk8VD4gPSB7IFtLIGluIGtleW9mIFQgYXMgYCR7VW5jYXBpdGFsaXplPHN0cmluZyAmIEs+fWBdOiBUW0tdIH07XG5leHBvcnQgaW50ZXJmYWNlIEZyb21XZWJUb2tlbkluaXQgZXh0ZW5kcyBPbWl0PExvd2VyQ2FzZUtleTxBc3N1bWVSb2xlV2l0aFdlYklkZW50aXR5UGFyYW1zPiwgXCJyb2xlU2Vzc2lvbk5hbWVcIj4ge1xuICAvKipcbiAgICogVGhlIElBTSBzZXNzaW9uIG5hbWUgdXNlZCB0byBkaXN0aW5ndWlzaCBzZXNzaW9ucy5cbiAgICovXG4gIHJvbGVTZXNzaW9uTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQSBmdW5jdGlvbiB0aGF0IGFzc3VtZXMgYSByb2xlIHdpdGggd2ViIGlkZW50aXR5IGFuZCByZXR1cm5zIGEgcHJvbWlzZSBmdWxmaWxsZWQgd2l0aFxuICAgKiBjcmVkZW50aWFscyBmb3IgdGhlIGFzc3VtZWQgcm9sZS5cbiAgICpcbiAgICogQHBhcmFtIHBhcmFtcyBpbnB1dCBwYXJhbWV0ZXIgb2Ygc3RzOkFzc3VtZVJvbGVXaXRoV2ViSWRlbnRpdHkgQVBJLlxuICAgKi9cbiAgcm9sZUFzc3VtZXJXaXRoV2ViSWRlbnRpdHk/OiAocGFyYW1zOiBBc3N1bWVSb2xlV2l0aFdlYklkZW50aXR5UGFyYW1zKSA9PiBQcm9taXNlPENyZWRlbnRpYWxzPjtcbn1cblxuZXhwb3J0IGNvbnN0IGZyb21XZWJUb2tlbiA9XG4gIChpbml0OiBGcm9tV2ViVG9rZW5Jbml0KTogQ3JlZGVudGlhbFByb3ZpZGVyID0+XG4gICgpID0+IHtcbiAgICBjb25zdCB7XG4gICAgICByb2xlQXJuLFxuICAgICAgcm9sZVNlc3Npb25OYW1lLFxuICAgICAgd2ViSWRlbnRpdHlUb2tlbixcbiAgICAgIHByb3ZpZGVySWQsXG4gICAgICBwb2xpY3lBcm5zLFxuICAgICAgcG9saWN5LFxuICAgICAgZHVyYXRpb25TZWNvbmRzLFxuICAgICAgcm9sZUFzc3VtZXJXaXRoV2ViSWRlbnRpdHksXG4gICAgfSA9IGluaXQ7XG5cbiAgICBpZiAoIXJvbGVBc3N1bWVyV2l0aFdlYklkZW50aXR5KSB7XG4gICAgICB0aHJvdyBuZXcgUHJvdmlkZXJFcnJvcihcbiAgICAgICAgYFJvbGUgQXJuICcke3JvbGVBcm59JyBuZWVkcyB0byBiZSBhc3N1bWVkIHdpdGggd2ViIGlkZW50aXR5LGAgK1xuICAgICAgICAgIGAgYnV0IG5vIHJvbGUgYXNzdW1wdGlvbiBjYWxsYmFjayB3YXMgcHJvdmlkZWQuYCxcbiAgICAgICAgZmFsc2VcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJvbGVBc3N1bWVyV2l0aFdlYklkZW50aXR5KHtcbiAgICAgIFJvbGVBcm46IHJvbGVBcm4sXG4gICAgICBSb2xlU2Vzc2lvbk5hbWU6IHJvbGVTZXNzaW9uTmFtZSA/PyBgYXdzLXNkay1qcy1zZXNzaW9uLSR7RGF0ZS5ub3coKX1gLFxuICAgICAgV2ViSWRlbnRpdHlUb2tlbjogd2ViSWRlbnRpdHlUb2tlbixcbiAgICAgIFByb3ZpZGVySWQ6IHByb3ZpZGVySWQsXG4gICAgICBQb2xpY3lBcm5zOiBwb2xpY3lBcm5zLFxuICAgICAgUG9saWN5OiBwb2xpY3ksXG4gICAgICBEdXJhdGlvblNlY29uZHM6IGR1cmF0aW9uU2Vjb25kcyxcbiAgICB9KTtcbiAgfTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbVdlYlRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Zyb21XZWJUb2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxrRUFBc0U7QUFpSS9ELE1BQU0sWUFBWSxHQUN2QixDQUFDLElBQXNCLEVBQXNCLEVBQUUsQ0FDL0MsR0FBRyxFQUFFO0lBQ0gsTUFBTSxFQUNKLE9BQU8sRUFDUCxlQUFlLEVBQ2YsZ0JBQWdCLEVBQ2hCLFVBQVUsRUFDVixVQUFVLEVBQ1YsTUFBTSxFQUNOLGVBQWUsRUFDZiwwQkFBMEIsR0FDM0IsR0FBRyxJQUFJLENBQUM7SUFFVCxJQUFJLENBQUMsMEJBQTBCLEVBQUU7UUFDL0IsTUFBTSxJQUFJLDRDQUF3QixDQUNoQyxhQUFhLE9BQU8sMENBQTBDO1lBQzVELGdEQUFnRCxFQUNsRCxLQUFLLENBQ04sQ0FBQztLQUNIO0lBRUQsT0FBTywwQkFBMEIsQ0FBQztRQUNoQyxPQUFPLEVBQUUsT0FBTztRQUNoQixlQUFlLEVBQUUsZUFBZSxhQUFmLGVBQWUsY0FBZixlQUFlLEdBQUksc0JBQXNCLElBQUksQ0FBQyxHQUFHLEVBQUUsRUFBRTtRQUN0RSxnQkFBZ0IsRUFBRSxnQkFBZ0I7UUFDbEMsVUFBVSxFQUFFLFVBQVU7UUFDdEIsVUFBVSxFQUFFLFVBQVU7UUFDdEIsTUFBTSxFQUFFLE1BQU07UUFDZCxlQUFlLEVBQUUsZUFBZTtLQUNqQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUEvQlMsUUFBQSxZQUFZLGdCQStCckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDcmVkZW50aWFsc1Byb3ZpZGVyRXJyb3IgfSBmcm9tIFwiQGF3cy1zZGsvcHJvcGVydHktcHJvdmlkZXJcIjtcbmltcG9ydCB7IENyZWRlbnRpYWxQcm92aWRlciwgQ3JlZGVudGlhbHMgfSBmcm9tIFwiQGF3cy1zZGsvdHlwZXNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBBc3N1bWVSb2xlV2l0aFdlYklkZW50aXR5UGFyYW1zIHtcbiAgLyoqXG4gICAqIDxwPlRoZSBBbWF6b24gUmVzb3VyY2UgTmFtZSAoQVJOKSBvZiB0aGUgcm9sZSB0aGF0IHRoZSBjYWxsZXIgaXMgYXNzdW1pbmcuPC9wPlxuICAgKi9cbiAgUm9sZUFybjogc3RyaW5nO1xuICAvKipcbiAgICogPHA+QW4gaWRlbnRpZmllciBmb3IgdGhlIGFzc3VtZWQgcm9sZSBzZXNzaW9uLiBUeXBpY2FsbHksIHlvdSBwYXNzIHRoZSBuYW1lIG9yIGlkZW50aWZpZXJcbiAgICogICAgICAgICAgdGhhdCBpcyBhc3NvY2lhdGVkIHdpdGggdGhlIHVzZXIgd2hvIGlzIHVzaW5nIHlvdXIgYXBwbGljYXRpb24uIFRoYXQgd2F5LCB0aGUgdGVtcG9yYXJ5XG4gICAqICAgICAgICAgIHNlY3VyaXR5IGNyZWRlbnRpYWxzIHRoYXQgeW91ciBhcHBsaWNhdGlvbiB3aWxsIHVzZSBhcmUgYXNzb2NpYXRlZCB3aXRoIHRoYXQgdXNlci4gVGhpc1xuICAgKiAgICAgICAgICBzZXNzaW9uIG5hbWUgaXMgaW5jbHVkZWQgYXMgcGFydCBvZiB0aGUgQVJOIGFuZCBhc3N1bWVkIHJvbGUgSUQgaW4gdGhlXG4gICAqICAgICAgICAgICAgIDxjb2RlPkFzc3VtZWRSb2xlVXNlcjwvY29kZT4gcmVzcG9uc2UgZWxlbWVudC48L3A+XG4gICAqICAgICAgICAgIDxwPlRoZSByZWdleCB1c2VkIHRvIHZhbGlkYXRlIHRoaXMgcGFyYW1ldGVyIGlzIGEgc3RyaW5nIG9mIGNoYXJhY3RlcnNcbiAgICogICAgIGNvbnNpc3Rpbmcgb2YgdXBwZXItIGFuZCBsb3dlci1jYXNlIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIHdpdGggbm8gc3BhY2VzLiBZb3UgY2FuXG4gICAqICAgICBhbHNvIGluY2x1ZGUgdW5kZXJzY29yZXMgb3IgYW55IG9mIHRoZSBmb2xsb3dpbmcgY2hhcmFjdGVyczogPSwuQC08L3A+XG4gICAqL1xuICBSb2xlU2Vzc2lvbk5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIDxwPlRoZSBPQXV0aCAyLjAgYWNjZXNzIHRva2VuIG9yIE9wZW5JRCBDb25uZWN0IElEIHRva2VuIHRoYXQgaXMgcHJvdmlkZWQgYnkgdGhlIGlkZW50aXR5XG4gICAqICAgICAgICAgIHByb3ZpZGVyLiBZb3VyIGFwcGxpY2F0aW9uIG11c3QgZ2V0IHRoaXMgdG9rZW4gYnkgYXV0aGVudGljYXRpbmcgdGhlIHVzZXIgd2hvIGlzIHVzaW5nIHlvdXJcbiAgICogICAgICAgICAgYXBwbGljYXRpb24gd2l0aCBhIHdlYiBpZGVudGl0eSBwcm92aWRlciBiZWZvcmUgdGhlIGFwcGxpY2F0aW9uIG1ha2VzIGFuXG4gICAqICAgICAgICAgICAgIDxjb2RlPkFzc3VtZVJvbGVXaXRoV2ViSWRlbnRpdHk8L2NvZGU+IGNhbGwuIDwvcD5cbiAgICovXG4gIFdlYklkZW50aXR5VG9rZW46IHN0cmluZztcblxuICAvKipcbiAgICogPHA+VGhlIGZ1bGx5IHF1YWxpZmllZCBob3N0IGNvbXBvbmVudCBvZiB0aGUgZG9tYWluIG5hbWUgb2YgdGhlIGlkZW50aXR5IHByb3ZpZGVyLjwvcD5cbiAgICogICAgICAgICAgPHA+U3BlY2lmeSB0aGlzIHZhbHVlIG9ubHkgZm9yIE9BdXRoIDIuMCBhY2Nlc3MgdG9rZW5zLiBDdXJyZW50bHlcbiAgICogICAgICAgICAgICAgPGNvZGU+d3d3LmFtYXpvbi5jb208L2NvZGU+IGFuZCA8Y29kZT5ncmFwaC5mYWNlYm9vay5jb208L2NvZGU+IGFyZSB0aGUgb25seSBzdXBwb3J0ZWRcbiAgICogICAgICAgICAgaWRlbnRpdHkgcHJvdmlkZXJzIGZvciBPQXV0aCAyLjAgYWNjZXNzIHRva2Vucy4gRG8gbm90IGluY2x1ZGUgVVJMIHNjaGVtZXMgYW5kIHBvcnRcbiAgICogICAgICAgICAgbnVtYmVycy48L3A+XG4gICAqICAgICAgICAgIDxwPkRvIG5vdCBzcGVjaWZ5IHRoaXMgdmFsdWUgZm9yIE9wZW5JRCBDb25uZWN0IElEIHRva2Vucy48L3A+XG4gICAqL1xuICBQcm92aWRlcklkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiA8cD5UaGUgQW1hem9uIFJlc291cmNlIE5hbWVzIChBUk5zKSBvZiB0aGUgSUFNIG1hbmFnZWQgcG9saWNpZXMgdGhhdCB5b3Ugd2FudCB0byB1c2UgYXNcbiAgICogICAgICAgICAgbWFuYWdlZCBzZXNzaW9uIHBvbGljaWVzLiBUaGUgcG9saWNpZXMgbXVzdCBleGlzdCBpbiB0aGUgc2FtZSBhY2NvdW50IGFzIHRoZSByb2xlLjwvcD5cbiAgICogICAgICAgICAgPHA+VGhpcyBwYXJhbWV0ZXIgaXMgb3B0aW9uYWwuIFlvdSBjYW4gcHJvdmlkZSB1cCB0byAxMCBtYW5hZ2VkIHBvbGljeSBBUk5zLiBIb3dldmVyLCB0aGVcbiAgICogICAgICAgICAgcGxhaW4gdGV4dCB0aGF0IHlvdSB1c2UgZm9yIGJvdGggaW5saW5lIGFuZCBtYW5hZ2VkIHNlc3Npb24gcG9saWNpZXMgY2FuJ3QgZXhjZWVkIDIsMDQ4XG4gICAqICAgICAgICAgIGNoYXJhY3RlcnMuIEZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IEFSTnMsIHNlZSA8YSBocmVmPVwiaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dlbmVyYWwvbGF0ZXN0L2dyL2F3cy1hcm5zLWFuZC1uYW1lc3BhY2VzLmh0bWxcIj5BbWF6b24gUmVzb3VyY2UgTmFtZXMgKEFSTnMpIGFuZCBBV1NcbiAgICogICAgICAgICAgICAgU2VydmljZSBOYW1lc3BhY2VzPC9hPiBpbiB0aGUgQVdTIEdlbmVyYWwgUmVmZXJlbmNlLjwvcD5cbiAgICogICAgICAgICAgPG5vdGU+XG4gICAqICAgICAgICAgICAgIDxwPkFuIEFXUyBjb252ZXJzaW9uIGNvbXByZXNzZXMgdGhlIHBhc3NlZCBzZXNzaW9uIHBvbGljaWVzIGFuZCBzZXNzaW9uIHRhZ3MgaW50byBhXG4gICAqICAgICAgICAgICAgIHBhY2tlZCBiaW5hcnkgZm9ybWF0IHRoYXQgaGFzIGEgc2VwYXJhdGUgbGltaXQuIFlvdXIgcmVxdWVzdCBjYW4gZmFpbCBmb3IgdGhpcyBsaW1pdFxuICAgKiAgICAgICAgICAgICBldmVuIGlmIHlvdXIgcGxhaW4gdGV4dCBtZWV0cyB0aGUgb3RoZXIgcmVxdWlyZW1lbnRzLiBUaGUgPGNvZGU+UGFja2VkUG9saWN5U2l6ZTwvY29kZT5cbiAgICogICAgICAgICAgICAgcmVzcG9uc2UgZWxlbWVudCBpbmRpY2F0ZXMgYnkgcGVyY2VudGFnZSBob3cgY2xvc2UgdGhlIHBvbGljaWVzIGFuZCB0YWdzIGZvciB5b3VyXG4gICAqICAgICAgICAgICAgIHJlcXVlc3QgYXJlIHRvIHRoZSB1cHBlciBzaXplIGxpbWl0LlxuICAgKiAgICAgICAgICAgICA8L3A+XG4gICAqICAgICAgICAgIDwvbm90ZT5cbiAgICpcbiAgICogICAgICAgICAgPHA+UGFzc2luZyBwb2xpY2llcyB0byB0aGlzIG9wZXJhdGlvbiByZXR1cm5zIG5ld1xuICAgKiAgICAgICAgICB0ZW1wb3JhcnkgY3JlZGVudGlhbHMuIFRoZSByZXN1bHRpbmcgc2Vzc2lvbidzIHBlcm1pc3Npb25zIGFyZSB0aGUgaW50ZXJzZWN0aW9uIG9mIHRoZVxuICAgKiAgICAgICAgICByb2xlJ3MgaWRlbnRpdHktYmFzZWQgcG9saWN5IGFuZCB0aGUgc2Vzc2lvbiBwb2xpY2llcy4gWW91IGNhbiB1c2UgdGhlIHJvbGUncyB0ZW1wb3JhcnlcbiAgICogICAgICAgICAgY3JlZGVudGlhbHMgaW4gc3Vic2VxdWVudCBBV1MgQVBJIGNhbGxzIHRvIGFjY2VzcyByZXNvdXJjZXMgaW4gdGhlIGFjY291bnQgdGhhdCBvd25zXG4gICAqICAgICAgICAgIHRoZSByb2xlLiBZb3UgY2Fubm90IHVzZSBzZXNzaW9uIHBvbGljaWVzIHRvIGdyYW50IG1vcmUgcGVybWlzc2lvbnMgdGhhbiB0aG9zZSBhbGxvd2VkXG4gICAqICAgICAgICAgIGJ5IHRoZSBpZGVudGl0eS1iYXNlZCBwb2xpY3kgb2YgdGhlIHJvbGUgdGhhdCBpcyBiZWluZyBhc3N1bWVkLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlXG4gICAqICAgICAgICAgICAgIDxhIGhyZWY9XCJodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvYWNjZXNzX3BvbGljaWVzLmh0bWwjcG9saWNpZXNfc2Vzc2lvblwiPlNlc3Npb25cbiAgICogICAgICAgICAgICAgUG9saWNpZXM8L2E+IGluIHRoZSA8aT5JQU0gVXNlciBHdWlkZTwvaT4uPC9wPlxuICAgKi9cbiAgUG9saWN5QXJucz86IHsgYXJuPzogc3RyaW5nIH1bXTtcblxuICAvKipcbiAgICogPHA+QW4gSUFNIHBvbGljeSBpbiBKU09OIGZvcm1hdCB0aGF0IHlvdSB3YW50IHRvIHVzZSBhcyBhbiBpbmxpbmUgc2Vzc2lvbiBwb2xpY3kuPC9wPlxuICAgKiAgICAgICAgICA8cD5UaGlzIHBhcmFtZXRlciBpcyBvcHRpb25hbC4gUGFzc2luZyBwb2xpY2llcyB0byB0aGlzIG9wZXJhdGlvbiByZXR1cm5zIG5ld1xuICAgKiAgICAgICAgICB0ZW1wb3JhcnkgY3JlZGVudGlhbHMuIFRoZSByZXN1bHRpbmcgc2Vzc2lvbidzIHBlcm1pc3Npb25zIGFyZSB0aGUgaW50ZXJzZWN0aW9uIG9mIHRoZVxuICAgKiAgICAgICAgICByb2xlJ3MgaWRlbnRpdHktYmFzZWQgcG9saWN5IGFuZCB0aGUgc2Vzc2lvbiBwb2xpY2llcy4gWW91IGNhbiB1c2UgdGhlIHJvbGUncyB0ZW1wb3JhcnlcbiAgICogICAgICAgICAgY3JlZGVudGlhbHMgaW4gc3Vic2VxdWVudCBBV1MgQVBJIGNhbGxzIHRvIGFjY2VzcyByZXNvdXJjZXMgaW4gdGhlIGFjY291bnQgdGhhdCBvd25zXG4gICAqICAgICAgICAgIHRoZSByb2xlLiBZb3UgY2Fubm90IHVzZSBzZXNzaW9uIHBvbGljaWVzIHRvIGdyYW50IG1vcmUgcGVybWlzc2lvbnMgdGhhbiB0aG9zZSBhbGxvd2VkXG4gICAqICAgICAgICAgIGJ5IHRoZSBpZGVudGl0eS1iYXNlZCBwb2xpY3kgb2YgdGhlIHJvbGUgdGhhdCBpcyBiZWluZyBhc3N1bWVkLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlXG4gICAqICAgICAgICAgICAgIDxhIGhyZWY9XCJodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvYWNjZXNzX3BvbGljaWVzLmh0bWwjcG9saWNpZXNfc2Vzc2lvblwiPlNlc3Npb25cbiAgICogICAgICAgICAgICAgUG9saWNpZXM8L2E+IGluIHRoZSA8aT5JQU0gVXNlciBHdWlkZTwvaT4uPC9wPlxuICAgKiAgICAgICAgICA8cD5UaGUgcGxhaW4gdGV4dCB0aGF0IHlvdSB1c2UgZm9yIGJvdGggaW5saW5lIGFuZCBtYW5hZ2VkIHNlc3Npb24gcG9saWNpZXMgY2FuJ3QgZXhjZWVkXG4gICAqICAgICAgICAgIDIsMDQ4IGNoYXJhY3RlcnMuIFRoZSBKU09OIHBvbGljeSBjaGFyYWN0ZXJzIGNhbiBiZSBhbnkgQVNDSUkgY2hhcmFjdGVyIGZyb20gdGhlIHNwYWNlXG4gICAqICAgICAgICAgIGNoYXJhY3RlciB0byB0aGUgZW5kIG9mIHRoZSB2YWxpZCBjaGFyYWN0ZXIgbGlzdCAoXFx1MDAyMCB0aHJvdWdoIFxcdTAwRkYpLiBJdCBjYW4gYWxzb1xuICAgKiAgICAgICAgICBpbmNsdWRlIHRoZSB0YWIgKFxcdTAwMDkpLCBsaW5lZmVlZCAoXFx1MDAwQSksIGFuZCBjYXJyaWFnZSByZXR1cm4gKFxcdTAwMEQpXG4gICAqICAgICAgICAgIGNoYXJhY3RlcnMuPC9wPlxuICAgKiAgICAgICAgICA8bm90ZT5cbiAgICogICAgICAgICAgICAgPHA+QW4gQVdTIGNvbnZlcnNpb24gY29tcHJlc3NlcyB0aGUgcGFzc2VkIHNlc3Npb24gcG9saWNpZXMgYW5kIHNlc3Npb24gdGFncyBpbnRvIGFcbiAgICogICAgICAgICAgICAgcGFja2VkIGJpbmFyeSBmb3JtYXQgdGhhdCBoYXMgYSBzZXBhcmF0ZSBsaW1pdC4gWW91ciByZXF1ZXN0IGNhbiBmYWlsIGZvciB0aGlzIGxpbWl0XG4gICAqICAgICAgICAgICAgIGV2ZW4gaWYgeW91ciBwbGFpbiB0ZXh0IG1lZXRzIHRoZSBvdGhlciByZXF1aXJlbWVudHMuIFRoZSA8Y29kZT5QYWNrZWRQb2xpY3lTaXplPC9jb2RlPlxuICAgKiAgICAgICAgICAgICByZXNwb25zZSBlbGVtZW50IGluZGljYXRlcyBieSBwZXJjZW50YWdlIGhvdyBjbG9zZSB0aGUgcG9saWNpZXMgYW5kIHRhZ3MgZm9yIHlvdXJcbiAgICogICAgICAgICAgICAgcmVxdWVzdCBhcmUgdG8gdGhlIHVwcGVyIHNpemUgbGltaXQuXG4gICAqICAgICAgICAgICAgIDwvcD5cbiAgICogICAgICAgICAgPC9ub3RlPlxuICAgKi9cbiAgUG9saWN5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiA8cD5UaGUgZHVyYXRpb24sIGluIHNlY29uZHMsIG9mIHRoZSByb2xlIHNlc3Npb24uIFRoZSB2YWx1ZSBjYW4gcmFuZ2UgZnJvbSA5MDAgc2Vjb25kcyAoMTVcbiAgICogICAgICAgICAgbWludXRlcykgdXAgdG8gdGhlIG1heGltdW0gc2Vzc2lvbiBkdXJhdGlvbiBzZXR0aW5nIGZvciB0aGUgcm9sZS4gVGhpcyBzZXR0aW5nIGNhbiBoYXZlIGFcbiAgICogICAgICAgICAgdmFsdWUgZnJvbSAxIGhvdXIgdG8gMTIgaG91cnMuIElmIHlvdSBzcGVjaWZ5IGEgdmFsdWUgaGlnaGVyIHRoYW4gdGhpcyBzZXR0aW5nLCB0aGVcbiAgICogICAgICAgICAgb3BlcmF0aW9uIGZhaWxzLiBGb3IgZXhhbXBsZSwgaWYgeW91IHNwZWNpZnkgYSBzZXNzaW9uIGR1cmF0aW9uIG9mIDEyIGhvdXJzLCBidXQgeW91clxuICAgKiAgICAgICAgICBhZG1pbmlzdHJhdG9yIHNldCB0aGUgbWF4aW11bSBzZXNzaW9uIGR1cmF0aW9uIHRvIDYgaG91cnMsIHlvdXIgb3BlcmF0aW9uIGZhaWxzLiBUbyBsZWFyblxuICAgKiAgICAgICAgICBob3cgdG8gdmlldyB0aGUgbWF4aW11bSB2YWx1ZSBmb3IgeW91ciByb2xlLCBzZWUgPGEgaHJlZj1cImh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9JQU0vbGF0ZXN0L1VzZXJHdWlkZS9pZF9yb2xlc191c2UuaHRtbCNpZF9yb2xlc191c2Vfdmlldy1yb2xlLW1heC1zZXNzaW9uXCI+VmlldyB0aGVcbiAgICogICAgICAgICAgICAgTWF4aW11bSBTZXNzaW9uIER1cmF0aW9uIFNldHRpbmcgZm9yIGEgUm9sZTwvYT4gaW4gdGhlXG4gICAqICAgICAgICAgICAgIDxpPklBTSBVc2VyIEd1aWRlPC9pPi48L3A+XG4gICAqICAgICAgICAgIDxwPkJ5IGRlZmF1bHQsIHRoZSB2YWx1ZSBpcyBzZXQgdG8gPGNvZGU+MzYwMDwvY29kZT4gc2Vjb25kcy4gPC9wPlxuICAgKiAgICAgICAgICA8bm90ZT5cbiAgICogICAgICAgICAgICAgPHA+VGhlIDxjb2RlPkR1cmF0aW9uU2Vjb25kczwvY29kZT4gcGFyYW1ldGVyIGlzIHNlcGFyYXRlIGZyb20gdGhlIGR1cmF0aW9uIG9mIGEgY29uc29sZVxuICAgKiAgICAgICAgICAgICBzZXNzaW9uIHRoYXQgeW91IG1pZ2h0IHJlcXVlc3QgdXNpbmcgdGhlIHJldHVybmVkIGNyZWRlbnRpYWxzLiBUaGUgcmVxdWVzdCB0byB0aGVcbiAgICogICAgICAgICAgICAgZmVkZXJhdGlvbiBlbmRwb2ludCBmb3IgYSBjb25zb2xlIHNpZ24taW4gdG9rZW4gdGFrZXMgYSA8Y29kZT5TZXNzaW9uRHVyYXRpb248L2NvZGU+XG4gICAqICAgICAgICAgICAgIHBhcmFtZXRlciB0aGF0IHNwZWNpZmllcyB0aGUgbWF4aW11bSBsZW5ndGggb2YgdGhlIGNvbnNvbGUgc2Vzc2lvbi4gRm9yIG1vcmVcbiAgICogICAgICAgICAgICAgaW5mb3JtYXRpb24sIHNlZSA8YSBocmVmPVwiaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0lBTS9sYXRlc3QvVXNlckd1aWRlL2lkX3JvbGVzX3Byb3ZpZGVyc19lbmFibGUtY29uc29sZS1jdXN0b20tdXJsLmh0bWxcIj5DcmVhdGluZyBhIFVSTFxuICAgKiAgICAgICAgICAgICAgICB0aGF0IEVuYWJsZXMgRmVkZXJhdGVkIFVzZXJzIHRvIEFjY2VzcyB0aGUgQVdTIE1hbmFnZW1lbnQgQ29uc29sZTwvYT4gaW4gdGhlXG4gICAqICAgICAgICAgICAgICAgIDxpPklBTSBVc2VyIEd1aWRlPC9pPi48L3A+XG4gICAqICAgICAgICAgIDwvbm90ZT5cbiAgICovXG4gIER1cmF0aW9uU2Vjb25kcz86IG51bWJlcjtcbn1cblxudHlwZSBMb3dlckNhc2VLZXk8VD4gPSB7IFtLIGluIGtleW9mIFQgYXMgYCR7VW5jYXBpdGFsaXplPHN0cmluZyAmIEs+fWBdOiBUW0tdIH07XG5leHBvcnQgaW50ZXJmYWNlIEZyb21XZWJUb2tlbkluaXQgZXh0ZW5kcyBPbWl0PExvd2VyQ2FzZUtleTxBc3N1bWVSb2xlV2l0aFdlYklkZW50aXR5UGFyYW1zPiwgXCJyb2xlU2Vzc2lvbk5hbWVcIj4ge1xuICAvKipcbiAgICogVGhlIElBTSBzZXNzaW9uIG5hbWUgdXNlZCB0byBkaXN0aW5ndWlzaCBzZXNzaW9ucy5cbiAgICovXG4gIHJvbGVTZXNzaW9uTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQSBmdW5jdGlvbiB0aGF0IGFzc3VtZXMgYSByb2xlIHdpdGggd2ViIGlkZW50aXR5IGFuZCByZXR1cm5zIGEgcHJvbWlzZSBmdWxmaWxsZWQgd2l0aFxuICAgKiBjcmVkZW50aWFscyBmb3IgdGhlIGFzc3VtZWQgcm9sZS5cbiAgICpcbiAgICogQHBhcmFtIHBhcmFtcyBpbnB1dCBwYXJhbWV0ZXIgb2Ygc3RzOkFzc3VtZVJvbGVXaXRoV2ViSWRlbnRpdHkgQVBJLlxuICAgKi9cbiAgcm9sZUFzc3VtZXJXaXRoV2ViSWRlbnRpdHk/OiAocGFyYW1zOiBBc3N1bWVSb2xlV2l0aFdlYklkZW50aXR5UGFyYW1zKSA9PiBQcm9taXNlPENyZWRlbnRpYWxzPjtcbn1cblxuZXhwb3J0IGNvbnN0IGZyb21XZWJUb2tlbiA9XG4gIChpbml0OiBGcm9tV2ViVG9rZW5Jbml0KTogQ3JlZGVudGlhbFByb3ZpZGVyID0+XG4gICgpID0+IHtcbiAgICBjb25zdCB7XG4gICAgICByb2xlQXJuLFxuICAgICAgcm9sZVNlc3Npb25OYW1lLFxuICAgICAgd2ViSWRlbnRpdHlUb2tlbixcbiAgICAgIHByb3ZpZGVySWQsXG4gICAgICBwb2xpY3lBcm5zLFxuICAgICAgcG9saWN5LFxuICAgICAgZHVyYXRpb25TZWNvbmRzLFxuICAgICAgcm9sZUFzc3VtZXJXaXRoV2ViSWRlbnRpdHksXG4gICAgfSA9IGluaXQ7XG5cbiAgICBpZiAoIXJvbGVBc3N1bWVyV2l0aFdlYklkZW50aXR5KSB7XG4gICAgICB0aHJvdyBuZXcgQ3JlZGVudGlhbHNQcm92aWRlckVycm9yKFxuICAgICAgICBgUm9sZSBBcm4gJyR7cm9sZUFybn0nIG5lZWRzIHRvIGJlIGFzc3VtZWQgd2l0aCB3ZWIgaWRlbnRpdHksYCArXG4gICAgICAgICAgYCBidXQgbm8gcm9sZSBhc3N1bXB0aW9uIGNhbGxiYWNrIHdhcyBwcm92aWRlZC5gLFxuICAgICAgICBmYWxzZVxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcm9sZUFzc3VtZXJXaXRoV2ViSWRlbnRpdHkoe1xuICAgICAgUm9sZUFybjogcm9sZUFybixcbiAgICAgIFJvbGVTZXNzaW9uTmFtZTogcm9sZVNlc3Npb25OYW1lID8/IGBhd3Mtc2RrLWpzLXNlc3Npb24tJHtEYXRlLm5vdygpfWAsXG4gICAgICBXZWJJZGVudGl0eVRva2VuOiB3ZWJJZGVudGl0eVRva2VuLFxuICAgICAgUHJvdmlkZXJJZDogcHJvdmlkZXJJZCxcbiAgICAgIFBvbGljeUFybnM6IHBvbGljeUFybnMsXG4gICAgICBQb2xpY3k6IHBvbGljeSxcbiAgICAgIER1cmF0aW9uU2Vjb25kczogZHVyYXRpb25TZWNvbmRzLFxuICAgIH0pO1xuICB9O1xuIl19
import { __assign, __awaiter, __generator } from "tslib";
import { ProviderError } from "@aws-sdk/property-provider";
import { CredentialsProviderError } from "@aws-sdk/property-provider";
import { readFileSync } from "fs";

@@ -25,3 +25,3 @@ import { fromWebToken } from "./fromWebToken";

if (!webIdentityTokenFile || !roleArn) {
throw new ProviderError("Web identity configuration not specified");
throw new CredentialsProviderError("Web identity configuration not specified");
}

@@ -31,2 +31,2 @@ return fromWebToken(__assign(__assign({}, init), { webIdentityToken: readFileSync(webIdentityTokenFile, { encoding: "ascii" }), roleArn: roleArn,

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbVRva2VuRmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mcm9tVG9rZW5GaWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLElBQUksQ0FBQztBQUVsQyxPQUFPLEVBQUUsWUFBWSxFQUFvQixNQUFNLGdCQUFnQixDQUFDO0FBRWhFLElBQU0sY0FBYyxHQUFHLDZCQUE2QixDQUFDO0FBQ3JELElBQU0sWUFBWSxHQUFHLGNBQWMsQ0FBQztBQUNwQyxJQUFNLHFCQUFxQixHQUFHLHVCQUF1QixDQUFDO0FBU3REOztHQUVHO0FBQ0gsTUFBTSxDQUFDLElBQU0sYUFBYSxHQUN4QixVQUFDLElBQTRCO0lBQTVCLHFCQUFBLEVBQUEsU0FBNEI7SUFDN0IsT0FBQTs7WUFDRSxzQkFBTyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBQzs7U0FDL0I7QUFGRCxDQUVDLENBQUM7QUFFSixJQUFNLGdCQUFnQixHQUFHLFVBQUMsSUFBd0I7O0lBQ2hELElBQU0sb0JBQW9CLEdBQUcsTUFBQSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsb0JBQW9CLG1DQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDdkYsSUFBTSxPQUFPLEdBQUcsTUFBQSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsT0FBTyxtQ0FBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzNELElBQU0sZUFBZSxHQUFHLE1BQUEsSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLGVBQWUsbUNBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBRXBGLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLE9BQU8sRUFBRTtRQUNyQyxNQUFNLElBQUksYUFBYSxDQUFDLDBDQUEwQyxDQUFDLENBQUM7S0FDckU7SUFFRCxPQUFPLFlBQVksdUJBQ2QsSUFBSSxLQUNQLGdCQUFnQixFQUFFLFlBQVksQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUMzRSxPQUFPLFNBQUE7UUFDUCxlQUFlLGlCQUFBLElBQ2YsRUFBRSxDQUFDO0FBQ1AsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvdmlkZXJFcnJvciB9IGZyb20gXCJAYXdzLXNkay9wcm9wZXJ0eS1wcm92aWRlclwiO1xuaW1wb3J0IHsgQ3JlZGVudGlhbFByb3ZpZGVyLCBDcmVkZW50aWFscyB9IGZyb20gXCJAYXdzLXNkay90eXBlc1wiO1xuaW1wb3J0IHsgcmVhZEZpbGVTeW5jIH0gZnJvbSBcImZzXCI7XG5cbmltcG9ydCB7IGZyb21XZWJUb2tlbiwgRnJvbVdlYlRva2VuSW5pdCB9IGZyb20gXCIuL2Zyb21XZWJUb2tlblwiO1xuXG5jb25zdCBFTlZfVE9LRU5fRklMRSA9IFwiQVdTX1dFQl9JREVOVElUWV9UT0tFTl9GSUxFXCI7XG5jb25zdCBFTlZfUk9MRV9BUk4gPSBcIkFXU19ST0xFX0FSTlwiO1xuY29uc3QgRU5WX1JPTEVfU0VTU0lPTl9OQU1FID0gXCJBV1NfUk9MRV9TRVNTSU9OX05BTUVcIjtcblxuZXhwb3J0IGludGVyZmFjZSBGcm9tVG9rZW5GaWxlSW5pdCBleHRlbmRzIFBhcnRpYWw8T21pdDxGcm9tV2ViVG9rZW5Jbml0LCBcIndlYklkZW50aXR5VG9rZW5cIj4+IHtcbiAgLyoqXG4gICAqIEZpbGUgbG9jYXRpb24gb2Ygd2hlcmUgdGhlIGBPSURDYCB0b2tlbiBpcyBzdG9yZWQuXG4gICAqL1xuICB3ZWJJZGVudGl0eVRva2VuRmlsZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIE9JREMgY3JlZGVudGlhbHMgZnJvbSBhIGZpbGUgb24gZGlzay5cbiAqL1xuZXhwb3J0IGNvbnN0IGZyb21Ub2tlbkZpbGUgPVxuICAoaW5pdDogRnJvbVRva2VuRmlsZUluaXQgPSB7fSk6IENyZWRlbnRpYWxQcm92aWRlciA9PlxuICBhc3luYyAoKSA9PiB7XG4gICAgcmV0dXJuIHJlc29sdmVUb2tlbkZpbGUoaW5pdCk7XG4gIH07XG5cbmNvbnN0IHJlc29sdmVUb2tlbkZpbGUgPSAoaW5pdD86IEZyb21Ub2tlbkZpbGVJbml0KTogUHJvbWlzZTxDcmVkZW50aWFscz4gPT4ge1xuICBjb25zdCB3ZWJJZGVudGl0eVRva2VuRmlsZSA9IGluaXQ/LndlYklkZW50aXR5VG9rZW5GaWxlID8/IHByb2Nlc3MuZW52W0VOVl9UT0tFTl9GSUxFXTtcbiAgY29uc3Qgcm9sZUFybiA9IGluaXQ/LnJvbGVBcm4gPz8gcHJvY2Vzcy5lbnZbRU5WX1JPTEVfQVJOXTtcbiAgY29uc3Qgcm9sZVNlc3Npb25OYW1lID0gaW5pdD8ucm9sZVNlc3Npb25OYW1lID8/IHByb2Nlc3MuZW52W0VOVl9ST0xFX1NFU1NJT05fTkFNRV07XG5cbiAgaWYgKCF3ZWJJZGVudGl0eVRva2VuRmlsZSB8fCAhcm9sZUFybikge1xuICAgIHRocm93IG5ldyBQcm92aWRlckVycm9yKFwiV2ViIGlkZW50aXR5IGNvbmZpZ3VyYXRpb24gbm90IHNwZWNpZmllZFwiKTtcbiAgfVxuXG4gIHJldHVybiBmcm9tV2ViVG9rZW4oe1xuICAgIC4uLmluaXQsXG4gICAgd2ViSWRlbnRpdHlUb2tlbjogcmVhZEZpbGVTeW5jKHdlYklkZW50aXR5VG9rZW5GaWxlLCB7IGVuY29kaW5nOiBcImFzY2lpXCIgfSksXG4gICAgcm9sZUFybixcbiAgICByb2xlU2Vzc2lvbk5hbWUsXG4gIH0pKCk7XG59O1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbVRva2VuRmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mcm9tVG9rZW5GaWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUV0RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBRWxDLE9BQU8sRUFBRSxZQUFZLEVBQW9CLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEUsSUFBTSxjQUFjLEdBQUcsNkJBQTZCLENBQUM7QUFDckQsSUFBTSxZQUFZLEdBQUcsY0FBYyxDQUFDO0FBQ3BDLElBQU0scUJBQXFCLEdBQUcsdUJBQXVCLENBQUM7QUFTdEQ7O0dBRUc7QUFDSCxNQUFNLENBQUMsSUFBTSxhQUFhLEdBQ3hCLFVBQUMsSUFBNEI7SUFBNUIscUJBQUEsRUFBQSxTQUE0QjtJQUM3QixPQUFBOztZQUNFLHNCQUFPLGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFDOztTQUMvQjtBQUZELENBRUMsQ0FBQztBQUVKLElBQU0sZ0JBQWdCLEdBQUcsVUFBQyxJQUF3Qjs7SUFDaEQsSUFBTSxvQkFBb0IsR0FBRyxNQUFBLElBQUksYUFBSixJQUFJLHVCQUFKLElBQUksQ0FBRSxvQkFBb0IsbUNBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN2RixJQUFNLE9BQU8sR0FBRyxNQUFBLElBQUksYUFBSixJQUFJLHVCQUFKLElBQUksQ0FBRSxPQUFPLG1DQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDM0QsSUFBTSxlQUFlLEdBQUcsTUFBQSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsZUFBZSxtQ0FBSSxPQUFPLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFFcEYsSUFBSSxDQUFDLG9CQUFvQixJQUFJLENBQUMsT0FBTyxFQUFFO1FBQ3JDLE1BQU0sSUFBSSx3QkFBd0IsQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO0tBQ2hGO0lBRUQsT0FBTyxZQUFZLHVCQUNkLElBQUksS0FDUCxnQkFBZ0IsRUFBRSxZQUFZLENBQUMsb0JBQW9CLEVBQUUsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFDM0UsT0FBTyxTQUFBO1FBQ1AsZUFBZSxpQkFBQSxJQUNmLEVBQUUsQ0FBQztBQUNQLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENyZWRlbnRpYWxzUHJvdmlkZXJFcnJvciB9IGZyb20gXCJAYXdzLXNkay9wcm9wZXJ0eS1wcm92aWRlclwiO1xuaW1wb3J0IHsgQ3JlZGVudGlhbFByb3ZpZGVyLCBDcmVkZW50aWFscyB9IGZyb20gXCJAYXdzLXNkay90eXBlc1wiO1xuaW1wb3J0IHsgcmVhZEZpbGVTeW5jIH0gZnJvbSBcImZzXCI7XG5cbmltcG9ydCB7IGZyb21XZWJUb2tlbiwgRnJvbVdlYlRva2VuSW5pdCB9IGZyb20gXCIuL2Zyb21XZWJUb2tlblwiO1xuXG5jb25zdCBFTlZfVE9LRU5fRklMRSA9IFwiQVdTX1dFQl9JREVOVElUWV9UT0tFTl9GSUxFXCI7XG5jb25zdCBFTlZfUk9MRV9BUk4gPSBcIkFXU19ST0xFX0FSTlwiO1xuY29uc3QgRU5WX1JPTEVfU0VTU0lPTl9OQU1FID0gXCJBV1NfUk9MRV9TRVNTSU9OX05BTUVcIjtcblxuZXhwb3J0IGludGVyZmFjZSBGcm9tVG9rZW5GaWxlSW5pdCBleHRlbmRzIFBhcnRpYWw8T21pdDxGcm9tV2ViVG9rZW5Jbml0LCBcIndlYklkZW50aXR5VG9rZW5cIj4+IHtcbiAgLyoqXG4gICAqIEZpbGUgbG9jYXRpb24gb2Ygd2hlcmUgdGhlIGBPSURDYCB0b2tlbiBpcyBzdG9yZWQuXG4gICAqL1xuICB3ZWJJZGVudGl0eVRva2VuRmlsZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIE9JREMgY3JlZGVudGlhbHMgZnJvbSBhIGZpbGUgb24gZGlzay5cbiAqL1xuZXhwb3J0IGNvbnN0IGZyb21Ub2tlbkZpbGUgPVxuICAoaW5pdDogRnJvbVRva2VuRmlsZUluaXQgPSB7fSk6IENyZWRlbnRpYWxQcm92aWRlciA9PlxuICBhc3luYyAoKSA9PiB7XG4gICAgcmV0dXJuIHJlc29sdmVUb2tlbkZpbGUoaW5pdCk7XG4gIH07XG5cbmNvbnN0IHJlc29sdmVUb2tlbkZpbGUgPSAoaW5pdD86IEZyb21Ub2tlbkZpbGVJbml0KTogUHJvbWlzZTxDcmVkZW50aWFscz4gPT4ge1xuICBjb25zdCB3ZWJJZGVudGl0eVRva2VuRmlsZSA9IGluaXQ/LndlYklkZW50aXR5VG9rZW5GaWxlID8/IHByb2Nlc3MuZW52W0VOVl9UT0tFTl9GSUxFXTtcbiAgY29uc3Qgcm9sZUFybiA9IGluaXQ/LnJvbGVBcm4gPz8gcHJvY2Vzcy5lbnZbRU5WX1JPTEVfQVJOXTtcbiAgY29uc3Qgcm9sZVNlc3Npb25OYW1lID0gaW5pdD8ucm9sZVNlc3Npb25OYW1lID8/IHByb2Nlc3MuZW52W0VOVl9ST0xFX1NFU1NJT05fTkFNRV07XG5cbiAgaWYgKCF3ZWJJZGVudGl0eVRva2VuRmlsZSB8fCAhcm9sZUFybikge1xuICAgIHRocm93IG5ldyBDcmVkZW50aWFsc1Byb3ZpZGVyRXJyb3IoXCJXZWIgaWRlbnRpdHkgY29uZmlndXJhdGlvbiBub3Qgc3BlY2lmaWVkXCIpO1xuICB9XG5cbiAgcmV0dXJuIGZyb21XZWJUb2tlbih7XG4gICAgLi4uaW5pdCxcbiAgICB3ZWJJZGVudGl0eVRva2VuOiByZWFkRmlsZVN5bmMod2ViSWRlbnRpdHlUb2tlbkZpbGUsIHsgZW5jb2Rpbmc6IFwiYXNjaWlcIiB9KSxcbiAgICByb2xlQXJuLFxuICAgIHJvbGVTZXNzaW9uTmFtZSxcbiAgfSkoKTtcbn07XG4iXX0=

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

import { ProviderError } from "@aws-sdk/property-provider";
import { CredentialsProviderError } from "@aws-sdk/property-provider";
export var fromWebToken = function (init) {

@@ -6,3 +6,3 @@ return function () {

if (!roleAssumerWithWebIdentity) {
throw new ProviderError("Role Arn '" + roleArn + "' needs to be assumed with web identity," +
throw new CredentialsProviderError("Role Arn '" + roleArn + "' needs to be assumed with web identity," +
" but no role assumption callback was provided.", false);

@@ -21,2 +21,2 @@ }

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbVdlYlRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Zyb21XZWJUb2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFpSTNELE1BQU0sQ0FBQyxJQUFNLFlBQVksR0FDdkIsVUFBQyxJQUFzQjtJQUN2QixPQUFBO1FBRUksSUFBQSxPQUFPLEdBUUwsSUFBSSxRQVJDLEVBQ1AsZUFBZSxHQU9iLElBQUksZ0JBUFMsRUFDZixnQkFBZ0IsR0FNZCxJQUFJLGlCQU5VLEVBQ2hCLFVBQVUsR0FLUixJQUFJLFdBTEksRUFDVixVQUFVLEdBSVIsSUFBSSxXQUpJLEVBQ1YsTUFBTSxHQUdKLElBQUksT0FIQSxFQUNOLGVBQWUsR0FFYixJQUFJLGdCQUZTLEVBQ2YsMEJBQTBCLEdBQ3hCLElBQUksMkJBRG9CLENBQ25CO1FBRVQsSUFBSSxDQUFDLDBCQUEwQixFQUFFO1lBQy9CLE1BQU0sSUFBSSxhQUFhLENBQ3JCLGVBQWEsT0FBTyw2Q0FBMEM7Z0JBQzVELGdEQUFnRCxFQUNsRCxLQUFLLENBQ04sQ0FBQztTQUNIO1FBRUQsT0FBTywwQkFBMEIsQ0FBQztZQUNoQyxPQUFPLEVBQUUsT0FBTztZQUNoQixlQUFlLEVBQUUsZUFBZSxhQUFmLGVBQWUsY0FBZixlQUFlLEdBQUksd0JBQXNCLElBQUksQ0FBQyxHQUFHLEVBQUk7WUFDdEUsZ0JBQWdCLEVBQUUsZ0JBQWdCO1lBQ2xDLFVBQVUsRUFBRSxVQUFVO1lBQ3RCLFVBQVUsRUFBRSxVQUFVO1lBQ3RCLE1BQU0sRUFBRSxNQUFNO1lBQ2QsZUFBZSxFQUFFLGVBQWU7U0FDakMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztBQTdCRCxDQTZCQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvdmlkZXJFcnJvciB9IGZyb20gXCJAYXdzLXNkay9wcm9wZXJ0eS1wcm92aWRlclwiO1xuaW1wb3J0IHsgQ3JlZGVudGlhbFByb3ZpZGVyLCBDcmVkZW50aWFscyB9IGZyb20gXCJAYXdzLXNkay90eXBlc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFzc3VtZVJvbGVXaXRoV2ViSWRlbnRpdHlQYXJhbXMge1xuICAvKipcbiAgICogPHA+VGhlIEFtYXpvbiBSZXNvdXJjZSBOYW1lIChBUk4pIG9mIHRoZSByb2xlIHRoYXQgdGhlIGNhbGxlciBpcyBhc3N1bWluZy48L3A+XG4gICAqL1xuICBSb2xlQXJuOiBzdHJpbmc7XG4gIC8qKlxuICAgKiA8cD5BbiBpZGVudGlmaWVyIGZvciB0aGUgYXNzdW1lZCByb2xlIHNlc3Npb24uIFR5cGljYWxseSwgeW91IHBhc3MgdGhlIG5hbWUgb3IgaWRlbnRpZmllclxuICAgKiAgICAgICAgICB0aGF0IGlzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdXNlciB3aG8gaXMgdXNpbmcgeW91ciBhcHBsaWNhdGlvbi4gVGhhdCB3YXksIHRoZSB0ZW1wb3JhcnlcbiAgICogICAgICAgICAgc2VjdXJpdHkgY3JlZGVudGlhbHMgdGhhdCB5b3VyIGFwcGxpY2F0aW9uIHdpbGwgdXNlIGFyZSBhc3NvY2lhdGVkIHdpdGggdGhhdCB1c2VyLiBUaGlzXG4gICAqICAgICAgICAgIHNlc3Npb24gbmFtZSBpcyBpbmNsdWRlZCBhcyBwYXJ0IG9mIHRoZSBBUk4gYW5kIGFzc3VtZWQgcm9sZSBJRCBpbiB0aGVcbiAgICogICAgICAgICAgICAgPGNvZGU+QXNzdW1lZFJvbGVVc2VyPC9jb2RlPiByZXNwb25zZSBlbGVtZW50LjwvcD5cbiAgICogICAgICAgICAgPHA+VGhlIHJlZ2V4IHVzZWQgdG8gdmFsaWRhdGUgdGhpcyBwYXJhbWV0ZXIgaXMgYSBzdHJpbmcgb2YgY2hhcmFjdGVyc1xuICAgKiAgICAgY29uc2lzdGluZyBvZiB1cHBlci0gYW5kIGxvd2VyLWNhc2UgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgd2l0aCBubyBzcGFjZXMuIFlvdSBjYW5cbiAgICogICAgIGFsc28gaW5jbHVkZSB1bmRlcnNjb3JlcyBvciBhbnkgb2YgdGhlIGZvbGxvd2luZyBjaGFyYWN0ZXJzOiA9LC5ALTwvcD5cbiAgICovXG4gIFJvbGVTZXNzaW9uTmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogPHA+VGhlIE9BdXRoIDIuMCBhY2Nlc3MgdG9rZW4gb3IgT3BlbklEIENvbm5lY3QgSUQgdG9rZW4gdGhhdCBpcyBwcm92aWRlZCBieSB0aGUgaWRlbnRpdHlcbiAgICogICAgICAgICAgcHJvdmlkZXIuIFlvdXIgYXBwbGljYXRpb24gbXVzdCBnZXQgdGhpcyB0b2tlbiBieSBhdXRoZW50aWNhdGluZyB0aGUgdXNlciB3aG8gaXMgdXNpbmcgeW91clxuICAgKiAgICAgICAgICBhcHBsaWNhdGlvbiB3aXRoIGEgd2ViIGlkZW50aXR5IHByb3ZpZGVyIGJlZm9yZSB0aGUgYXBwbGljYXRpb24gbWFrZXMgYW5cbiAgICogICAgICAgICAgICAgPGNvZGU+QXNzdW1lUm9sZVdpdGhXZWJJZGVudGl0eTwvY29kZT4gY2FsbC4gPC9wPlxuICAgKi9cbiAgV2ViSWRlbnRpdHlUb2tlbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiA8cD5UaGUgZnVsbHkgcXVhbGlmaWVkIGhvc3QgY29tcG9uZW50IG9mIHRoZSBkb21haW4gbmFtZSBvZiB0aGUgaWRlbnRpdHkgcHJvdmlkZXIuPC9wPlxuICAgKiAgICAgICAgICA8cD5TcGVjaWZ5IHRoaXMgdmFsdWUgb25seSBmb3IgT0F1dGggMi4wIGFjY2VzcyB0b2tlbnMuIEN1cnJlbnRseVxuICAgKiAgICAgICAgICAgICA8Y29kZT53d3cuYW1hem9uLmNvbTwvY29kZT4gYW5kIDxjb2RlPmdyYXBoLmZhY2Vib29rLmNvbTwvY29kZT4gYXJlIHRoZSBvbmx5IHN1cHBvcnRlZFxuICAgKiAgICAgICAgICBpZGVudGl0eSBwcm92aWRlcnMgZm9yIE9BdXRoIDIuMCBhY2Nlc3MgdG9rZW5zLiBEbyBub3QgaW5jbHVkZSBVUkwgc2NoZW1lcyBhbmQgcG9ydFxuICAgKiAgICAgICAgICBudW1iZXJzLjwvcD5cbiAgICogICAgICAgICAgPHA+RG8gbm90IHNwZWNpZnkgdGhpcyB2YWx1ZSBmb3IgT3BlbklEIENvbm5lY3QgSUQgdG9rZW5zLjwvcD5cbiAgICovXG4gIFByb3ZpZGVySWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIDxwPlRoZSBBbWF6b24gUmVzb3VyY2UgTmFtZXMgKEFSTnMpIG9mIHRoZSBJQU0gbWFuYWdlZCBwb2xpY2llcyB0aGF0IHlvdSB3YW50IHRvIHVzZSBhc1xuICAgKiAgICAgICAgICBtYW5hZ2VkIHNlc3Npb24gcG9saWNpZXMuIFRoZSBwb2xpY2llcyBtdXN0IGV4aXN0IGluIHRoZSBzYW1lIGFjY291bnQgYXMgdGhlIHJvbGUuPC9wPlxuICAgKiAgICAgICAgICA8cD5UaGlzIHBhcmFtZXRlciBpcyBvcHRpb25hbC4gWW91IGNhbiBwcm92aWRlIHVwIHRvIDEwIG1hbmFnZWQgcG9saWN5IEFSTnMuIEhvd2V2ZXIsIHRoZVxuICAgKiAgICAgICAgICBwbGFpbiB0ZXh0IHRoYXQgeW91IHVzZSBmb3IgYm90aCBpbmxpbmUgYW5kIG1hbmFnZWQgc2Vzc2lvbiBwb2xpY2llcyBjYW4ndCBleGNlZWQgMiwwNDhcbiAgICogICAgICAgICAgY2hhcmFjdGVycy4gRm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgQVJOcywgc2VlIDxhIGhyZWY9XCJodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2VuZXJhbC9sYXRlc3QvZ3IvYXdzLWFybnMtYW5kLW5hbWVzcGFjZXMuaHRtbFwiPkFtYXpvbiBSZXNvdXJjZSBOYW1lcyAoQVJOcykgYW5kIEFXU1xuICAgKiAgICAgICAgICAgICBTZXJ2aWNlIE5hbWVzcGFjZXM8L2E+IGluIHRoZSBBV1MgR2VuZXJhbCBSZWZlcmVuY2UuPC9wPlxuICAgKiAgICAgICAgICA8bm90ZT5cbiAgICogICAgICAgICAgICAgPHA+QW4gQVdTIGNvbnZlcnNpb24gY29tcHJlc3NlcyB0aGUgcGFzc2VkIHNlc3Npb24gcG9saWNpZXMgYW5kIHNlc3Npb24gdGFncyBpbnRvIGFcbiAgICogICAgICAgICAgICAgcGFja2VkIGJpbmFyeSBmb3JtYXQgdGhhdCBoYXMgYSBzZXBhcmF0ZSBsaW1pdC4gWW91ciByZXF1ZXN0IGNhbiBmYWlsIGZvciB0aGlzIGxpbWl0XG4gICAqICAgICAgICAgICAgIGV2ZW4gaWYgeW91ciBwbGFpbiB0ZXh0IG1lZXRzIHRoZSBvdGhlciByZXF1aXJlbWVudHMuIFRoZSA8Y29kZT5QYWNrZWRQb2xpY3lTaXplPC9jb2RlPlxuICAgKiAgICAgICAgICAgICByZXNwb25zZSBlbGVtZW50IGluZGljYXRlcyBieSBwZXJjZW50YWdlIGhvdyBjbG9zZSB0aGUgcG9saWNpZXMgYW5kIHRhZ3MgZm9yIHlvdXJcbiAgICogICAgICAgICAgICAgcmVxdWVzdCBhcmUgdG8gdGhlIHVwcGVyIHNpemUgbGltaXQuXG4gICAqICAgICAgICAgICAgIDwvcD5cbiAgICogICAgICAgICAgPC9ub3RlPlxuICAgKlxuICAgKiAgICAgICAgICA8cD5QYXNzaW5nIHBvbGljaWVzIHRvIHRoaXMgb3BlcmF0aW9uIHJldHVybnMgbmV3XG4gICAqICAgICAgICAgIHRlbXBvcmFyeSBjcmVkZW50aWFscy4gVGhlIHJlc3VsdGluZyBzZXNzaW9uJ3MgcGVybWlzc2lvbnMgYXJlIHRoZSBpbnRlcnNlY3Rpb24gb2YgdGhlXG4gICAqICAgICAgICAgIHJvbGUncyBpZGVudGl0eS1iYXNlZCBwb2xpY3kgYW5kIHRoZSBzZXNzaW9uIHBvbGljaWVzLiBZb3UgY2FuIHVzZSB0aGUgcm9sZSdzIHRlbXBvcmFyeVxuICAgKiAgICAgICAgICBjcmVkZW50aWFscyBpbiBzdWJzZXF1ZW50IEFXUyBBUEkgY2FsbHMgdG8gYWNjZXNzIHJlc291cmNlcyBpbiB0aGUgYWNjb3VudCB0aGF0IG93bnNcbiAgICogICAgICAgICAgdGhlIHJvbGUuIFlvdSBjYW5ub3QgdXNlIHNlc3Npb24gcG9saWNpZXMgdG8gZ3JhbnQgbW9yZSBwZXJtaXNzaW9ucyB0aGFuIHRob3NlIGFsbG93ZWRcbiAgICogICAgICAgICAgYnkgdGhlIGlkZW50aXR5LWJhc2VkIHBvbGljeSBvZiB0aGUgcm9sZSB0aGF0IGlzIGJlaW5nIGFzc3VtZWQuIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWVcbiAgICogICAgICAgICAgICAgPGEgaHJlZj1cImh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9JQU0vbGF0ZXN0L1VzZXJHdWlkZS9hY2Nlc3NfcG9saWNpZXMuaHRtbCNwb2xpY2llc19zZXNzaW9uXCI+U2Vzc2lvblxuICAgKiAgICAgICAgICAgICBQb2xpY2llczwvYT4gaW4gdGhlIDxpPklBTSBVc2VyIEd1aWRlPC9pPi48L3A+XG4gICAqL1xuICBQb2xpY3lBcm5zPzogeyBhcm4/OiBzdHJpbmcgfVtdO1xuXG4gIC8qKlxuICAgKiA8cD5BbiBJQU0gcG9saWN5IGluIEpTT04gZm9ybWF0IHRoYXQgeW91IHdhbnQgdG8gdXNlIGFzIGFuIGlubGluZSBzZXNzaW9uIHBvbGljeS48L3A+XG4gICAqICAgICAgICAgIDxwPlRoaXMgcGFyYW1ldGVyIGlzIG9wdGlvbmFsLiBQYXNzaW5nIHBvbGljaWVzIHRvIHRoaXMgb3BlcmF0aW9uIHJldHVybnMgbmV3XG4gICAqICAgICAgICAgIHRlbXBvcmFyeSBjcmVkZW50aWFscy4gVGhlIHJlc3VsdGluZyBzZXNzaW9uJ3MgcGVybWlzc2lvbnMgYXJlIHRoZSBpbnRlcnNlY3Rpb24gb2YgdGhlXG4gICAqICAgICAgICAgIHJvbGUncyBpZGVudGl0eS1iYXNlZCBwb2xpY3kgYW5kIHRoZSBzZXNzaW9uIHBvbGljaWVzLiBZb3UgY2FuIHVzZSB0aGUgcm9sZSdzIHRlbXBvcmFyeVxuICAgKiAgICAgICAgICBjcmVkZW50aWFscyBpbiBzdWJzZXF1ZW50IEFXUyBBUEkgY2FsbHMgdG8gYWNjZXNzIHJlc291cmNlcyBpbiB0aGUgYWNjb3VudCB0aGF0IG93bnNcbiAgICogICAgICAgICAgdGhlIHJvbGUuIFlvdSBjYW5ub3QgdXNlIHNlc3Npb24gcG9saWNpZXMgdG8gZ3JhbnQgbW9yZSBwZXJtaXNzaW9ucyB0aGFuIHRob3NlIGFsbG93ZWRcbiAgICogICAgICAgICAgYnkgdGhlIGlkZW50aXR5LWJhc2VkIHBvbGljeSBvZiB0aGUgcm9sZSB0aGF0IGlzIGJlaW5nIGFzc3VtZWQuIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWVcbiAgICogICAgICAgICAgICAgPGEgaHJlZj1cImh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9JQU0vbGF0ZXN0L1VzZXJHdWlkZS9hY2Nlc3NfcG9saWNpZXMuaHRtbCNwb2xpY2llc19zZXNzaW9uXCI+U2Vzc2lvblxuICAgKiAgICAgICAgICAgICBQb2xpY2llczwvYT4gaW4gdGhlIDxpPklBTSBVc2VyIEd1aWRlPC9pPi48L3A+XG4gICAqICAgICAgICAgIDxwPlRoZSBwbGFpbiB0ZXh0IHRoYXQgeW91IHVzZSBmb3IgYm90aCBpbmxpbmUgYW5kIG1hbmFnZWQgc2Vzc2lvbiBwb2xpY2llcyBjYW4ndCBleGNlZWRcbiAgICogICAgICAgICAgMiwwNDggY2hhcmFjdGVycy4gVGhlIEpTT04gcG9saWN5IGNoYXJhY3RlcnMgY2FuIGJlIGFueSBBU0NJSSBjaGFyYWN0ZXIgZnJvbSB0aGUgc3BhY2VcbiAgICogICAgICAgICAgY2hhcmFjdGVyIHRvIHRoZSBlbmQgb2YgdGhlIHZhbGlkIGNoYXJhY3RlciBsaXN0IChcXHUwMDIwIHRocm91Z2ggXFx1MDBGRikuIEl0IGNhbiBhbHNvXG4gICAqICAgICAgICAgIGluY2x1ZGUgdGhlIHRhYiAoXFx1MDAwOSksIGxpbmVmZWVkIChcXHUwMDBBKSwgYW5kIGNhcnJpYWdlIHJldHVybiAoXFx1MDAwRClcbiAgICogICAgICAgICAgY2hhcmFjdGVycy48L3A+XG4gICAqICAgICAgICAgIDxub3RlPlxuICAgKiAgICAgICAgICAgICA8cD5BbiBBV1MgY29udmVyc2lvbiBjb21wcmVzc2VzIHRoZSBwYXNzZWQgc2Vzc2lvbiBwb2xpY2llcyBhbmQgc2Vzc2lvbiB0YWdzIGludG8gYVxuICAgKiAgICAgICAgICAgICBwYWNrZWQgYmluYXJ5IGZvcm1hdCB0aGF0IGhhcyBhIHNlcGFyYXRlIGxpbWl0LiBZb3VyIHJlcXVlc3QgY2FuIGZhaWwgZm9yIHRoaXMgbGltaXRcbiAgICogICAgICAgICAgICAgZXZlbiBpZiB5b3VyIHBsYWluIHRleHQgbWVldHMgdGhlIG90aGVyIHJlcXVpcmVtZW50cy4gVGhlIDxjb2RlPlBhY2tlZFBvbGljeVNpemU8L2NvZGU+XG4gICAqICAgICAgICAgICAgIHJlc3BvbnNlIGVsZW1lbnQgaW5kaWNhdGVzIGJ5IHBlcmNlbnRhZ2UgaG93IGNsb3NlIHRoZSBwb2xpY2llcyBhbmQgdGFncyBmb3IgeW91clxuICAgKiAgICAgICAgICAgICByZXF1ZXN0IGFyZSB0byB0aGUgdXBwZXIgc2l6ZSBsaW1pdC5cbiAgICogICAgICAgICAgICAgPC9wPlxuICAgKiAgICAgICAgICA8L25vdGU+XG4gICAqL1xuICBQb2xpY3k/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIDxwPlRoZSBkdXJhdGlvbiwgaW4gc2Vjb25kcywgb2YgdGhlIHJvbGUgc2Vzc2lvbi4gVGhlIHZhbHVlIGNhbiByYW5nZSBmcm9tIDkwMCBzZWNvbmRzICgxNVxuICAgKiAgICAgICAgICBtaW51dGVzKSB1cCB0byB0aGUgbWF4aW11bSBzZXNzaW9uIGR1cmF0aW9uIHNldHRpbmcgZm9yIHRoZSByb2xlLiBUaGlzIHNldHRpbmcgY2FuIGhhdmUgYVxuICAgKiAgICAgICAgICB2YWx1ZSBmcm9tIDEgaG91ciB0byAxMiBob3Vycy4gSWYgeW91IHNwZWNpZnkgYSB2YWx1ZSBoaWdoZXIgdGhhbiB0aGlzIHNldHRpbmcsIHRoZVxuICAgKiAgICAgICAgICBvcGVyYXRpb24gZmFpbHMuIEZvciBleGFtcGxlLCBpZiB5b3Ugc3BlY2lmeSBhIHNlc3Npb24gZHVyYXRpb24gb2YgMTIgaG91cnMsIGJ1dCB5b3VyXG4gICAqICAgICAgICAgIGFkbWluaXN0cmF0b3Igc2V0IHRoZSBtYXhpbXVtIHNlc3Npb24gZHVyYXRpb24gdG8gNiBob3VycywgeW91ciBvcGVyYXRpb24gZmFpbHMuIFRvIGxlYXJuXG4gICAqICAgICAgICAgIGhvdyB0byB2aWV3IHRoZSBtYXhpbXVtIHZhbHVlIGZvciB5b3VyIHJvbGUsIHNlZSA8YSBocmVmPVwiaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0lBTS9sYXRlc3QvVXNlckd1aWRlL2lkX3JvbGVzX3VzZS5odG1sI2lkX3JvbGVzX3VzZV92aWV3LXJvbGUtbWF4LXNlc3Npb25cIj5WaWV3IHRoZVxuICAgKiAgICAgICAgICAgICBNYXhpbXVtIFNlc3Npb24gRHVyYXRpb24gU2V0dGluZyBmb3IgYSBSb2xlPC9hPiBpbiB0aGVcbiAgICogICAgICAgICAgICAgPGk+SUFNIFVzZXIgR3VpZGU8L2k+LjwvcD5cbiAgICogICAgICAgICAgPHA+QnkgZGVmYXVsdCwgdGhlIHZhbHVlIGlzIHNldCB0byA8Y29kZT4zNjAwPC9jb2RlPiBzZWNvbmRzLiA8L3A+XG4gICAqICAgICAgICAgIDxub3RlPlxuICAgKiAgICAgICAgICAgICA8cD5UaGUgPGNvZGU+RHVyYXRpb25TZWNvbmRzPC9jb2RlPiBwYXJhbWV0ZXIgaXMgc2VwYXJhdGUgZnJvbSB0aGUgZHVyYXRpb24gb2YgYSBjb25zb2xlXG4gICAqICAgICAgICAgICAgIHNlc3Npb24gdGhhdCB5b3UgbWlnaHQgcmVxdWVzdCB1c2luZyB0aGUgcmV0dXJuZWQgY3JlZGVudGlhbHMuIFRoZSByZXF1ZXN0IHRvIHRoZVxuICAgKiAgICAgICAgICAgICBmZWRlcmF0aW9uIGVuZHBvaW50IGZvciBhIGNvbnNvbGUgc2lnbi1pbiB0b2tlbiB0YWtlcyBhIDxjb2RlPlNlc3Npb25EdXJhdGlvbjwvY29kZT5cbiAgICogICAgICAgICAgICAgcGFyYW1ldGVyIHRoYXQgc3BlY2lmaWVzIHRoZSBtYXhpbXVtIGxlbmd0aCBvZiB0aGUgY29uc29sZSBzZXNzaW9uLiBGb3IgbW9yZVxuICAgKiAgICAgICAgICAgICBpbmZvcm1hdGlvbiwgc2VlIDxhIGhyZWY9XCJodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvaWRfcm9sZXNfcHJvdmlkZXJzX2VuYWJsZS1jb25zb2xlLWN1c3RvbS11cmwuaHRtbFwiPkNyZWF0aW5nIGEgVVJMXG4gICAqICAgICAgICAgICAgICAgIHRoYXQgRW5hYmxlcyBGZWRlcmF0ZWQgVXNlcnMgdG8gQWNjZXNzIHRoZSBBV1MgTWFuYWdlbWVudCBDb25zb2xlPC9hPiBpbiB0aGVcbiAgICogICAgICAgICAgICAgICAgPGk+SUFNIFVzZXIgR3VpZGU8L2k+LjwvcD5cbiAgICogICAgICAgICAgPC9ub3RlPlxuICAgKi9cbiAgRHVyYXRpb25TZWNvbmRzPzogbnVtYmVyO1xufVxuXG50eXBlIExvd2VyQ2FzZUtleTxUPiA9IHsgW0sgaW4ga2V5b2YgVCBhcyBgJHtVbmNhcGl0YWxpemU8c3RyaW5nICYgSz59YF06IFRbS10gfTtcbmV4cG9ydCBpbnRlcmZhY2UgRnJvbVdlYlRva2VuSW5pdCBleHRlbmRzIE9taXQ8TG93ZXJDYXNlS2V5PEFzc3VtZVJvbGVXaXRoV2ViSWRlbnRpdHlQYXJhbXM+LCBcInJvbGVTZXNzaW9uTmFtZVwiPiB7XG4gIC8qKlxuICAgKiBUaGUgSUFNIHNlc3Npb24gbmFtZSB1c2VkIHRvIGRpc3Rpbmd1aXNoIHNlc3Npb25zLlxuICAgKi9cbiAgcm9sZVNlc3Npb25OYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIGZ1bmN0aW9uIHRoYXQgYXNzdW1lcyBhIHJvbGUgd2l0aCB3ZWIgaWRlbnRpdHkgYW5kIHJldHVybnMgYSBwcm9taXNlIGZ1bGZpbGxlZCB3aXRoXG4gICAqIGNyZWRlbnRpYWxzIGZvciB0aGUgYXNzdW1lZCByb2xlLlxuICAgKlxuICAgKiBAcGFyYW0gcGFyYW1zIGlucHV0IHBhcmFtZXRlciBvZiBzdHM6QXNzdW1lUm9sZVdpdGhXZWJJZGVudGl0eSBBUEkuXG4gICAqL1xuICByb2xlQXNzdW1lcldpdGhXZWJJZGVudGl0eT86IChwYXJhbXM6IEFzc3VtZVJvbGVXaXRoV2ViSWRlbnRpdHlQYXJhbXMpID0+IFByb21pc2U8Q3JlZGVudGlhbHM+O1xufVxuXG5leHBvcnQgY29uc3QgZnJvbVdlYlRva2VuID1cbiAgKGluaXQ6IEZyb21XZWJUb2tlbkluaXQpOiBDcmVkZW50aWFsUHJvdmlkZXIgPT5cbiAgKCkgPT4ge1xuICAgIGNvbnN0IHtcbiAgICAgIHJvbGVBcm4sXG4gICAgICByb2xlU2Vzc2lvbk5hbWUsXG4gICAgICB3ZWJJZGVudGl0eVRva2VuLFxuICAgICAgcHJvdmlkZXJJZCxcbiAgICAgIHBvbGljeUFybnMsXG4gICAgICBwb2xpY3ksXG4gICAgICBkdXJhdGlvblNlY29uZHMsXG4gICAgICByb2xlQXNzdW1lcldpdGhXZWJJZGVudGl0eSxcbiAgICB9ID0gaW5pdDtcblxuICAgIGlmICghcm9sZUFzc3VtZXJXaXRoV2ViSWRlbnRpdHkpIHtcbiAgICAgIHRocm93IG5ldyBQcm92aWRlckVycm9yKFxuICAgICAgICBgUm9sZSBBcm4gJyR7cm9sZUFybn0nIG5lZWRzIHRvIGJlIGFzc3VtZWQgd2l0aCB3ZWIgaWRlbnRpdHksYCArXG4gICAgICAgICAgYCBidXQgbm8gcm9sZSBhc3N1bXB0aW9uIGNhbGxiYWNrIHdhcyBwcm92aWRlZC5gLFxuICAgICAgICBmYWxzZVxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcm9sZUFzc3VtZXJXaXRoV2ViSWRlbnRpdHkoe1xuICAgICAgUm9sZUFybjogcm9sZUFybixcbiAgICAgIFJvbGVTZXNzaW9uTmFtZTogcm9sZVNlc3Npb25OYW1lID8/IGBhd3Mtc2RrLWpzLXNlc3Npb24tJHtEYXRlLm5vdygpfWAsXG4gICAgICBXZWJJZGVudGl0eVRva2VuOiB3ZWJJZGVudGl0eVRva2VuLFxuICAgICAgUHJvdmlkZXJJZDogcHJvdmlkZXJJZCxcbiAgICAgIFBvbGljeUFybnM6IHBvbGljeUFybnMsXG4gICAgICBQb2xpY3k6IHBvbGljeSxcbiAgICAgIER1cmF0aW9uU2Vjb25kczogZHVyYXRpb25TZWNvbmRzLFxuICAgIH0pO1xuICB9O1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbVdlYlRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Zyb21XZWJUb2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQWlJdEUsTUFBTSxDQUFDLElBQU0sWUFBWSxHQUN2QixVQUFDLElBQXNCO0lBQ3ZCLE9BQUE7UUFFSSxJQUFBLE9BQU8sR0FRTCxJQUFJLFFBUkMsRUFDUCxlQUFlLEdBT2IsSUFBSSxnQkFQUyxFQUNmLGdCQUFnQixHQU1kLElBQUksaUJBTlUsRUFDaEIsVUFBVSxHQUtSLElBQUksV0FMSSxFQUNWLFVBQVUsR0FJUixJQUFJLFdBSkksRUFDVixNQUFNLEdBR0osSUFBSSxPQUhBLEVBQ04sZUFBZSxHQUViLElBQUksZ0JBRlMsRUFDZiwwQkFBMEIsR0FDeEIsSUFBSSwyQkFEb0IsQ0FDbkI7UUFFVCxJQUFJLENBQUMsMEJBQTBCLEVBQUU7WUFDL0IsTUFBTSxJQUFJLHdCQUF3QixDQUNoQyxlQUFhLE9BQU8sNkNBQTBDO2dCQUM1RCxnREFBZ0QsRUFDbEQsS0FBSyxDQUNOLENBQUM7U0FDSDtRQUVELE9BQU8sMEJBQTBCLENBQUM7WUFDaEMsT0FBTyxFQUFFLE9BQU87WUFDaEIsZUFBZSxFQUFFLGVBQWUsYUFBZixlQUFlLGNBQWYsZUFBZSxHQUFJLHdCQUFzQixJQUFJLENBQUMsR0FBRyxFQUFJO1lBQ3RFLGdCQUFnQixFQUFFLGdCQUFnQjtZQUNsQyxVQUFVLEVBQUUsVUFBVTtZQUN0QixVQUFVLEVBQUUsVUFBVTtZQUN0QixNQUFNLEVBQUUsTUFBTTtZQUNkLGVBQWUsRUFBRSxlQUFlO1NBQ2pDLENBQUMsQ0FBQztJQUNMLENBQUM7QUE3QkQsQ0E2QkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENyZWRlbnRpYWxzUHJvdmlkZXJFcnJvciB9IGZyb20gXCJAYXdzLXNkay9wcm9wZXJ0eS1wcm92aWRlclwiO1xuaW1wb3J0IHsgQ3JlZGVudGlhbFByb3ZpZGVyLCBDcmVkZW50aWFscyB9IGZyb20gXCJAYXdzLXNkay90eXBlc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFzc3VtZVJvbGVXaXRoV2ViSWRlbnRpdHlQYXJhbXMge1xuICAvKipcbiAgICogPHA+VGhlIEFtYXpvbiBSZXNvdXJjZSBOYW1lIChBUk4pIG9mIHRoZSByb2xlIHRoYXQgdGhlIGNhbGxlciBpcyBhc3N1bWluZy48L3A+XG4gICAqL1xuICBSb2xlQXJuOiBzdHJpbmc7XG4gIC8qKlxuICAgKiA8cD5BbiBpZGVudGlmaWVyIGZvciB0aGUgYXNzdW1lZCByb2xlIHNlc3Npb24uIFR5cGljYWxseSwgeW91IHBhc3MgdGhlIG5hbWUgb3IgaWRlbnRpZmllclxuICAgKiAgICAgICAgICB0aGF0IGlzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdXNlciB3aG8gaXMgdXNpbmcgeW91ciBhcHBsaWNhdGlvbi4gVGhhdCB3YXksIHRoZSB0ZW1wb3JhcnlcbiAgICogICAgICAgICAgc2VjdXJpdHkgY3JlZGVudGlhbHMgdGhhdCB5b3VyIGFwcGxpY2F0aW9uIHdpbGwgdXNlIGFyZSBhc3NvY2lhdGVkIHdpdGggdGhhdCB1c2VyLiBUaGlzXG4gICAqICAgICAgICAgIHNlc3Npb24gbmFtZSBpcyBpbmNsdWRlZCBhcyBwYXJ0IG9mIHRoZSBBUk4gYW5kIGFzc3VtZWQgcm9sZSBJRCBpbiB0aGVcbiAgICogICAgICAgICAgICAgPGNvZGU+QXNzdW1lZFJvbGVVc2VyPC9jb2RlPiByZXNwb25zZSBlbGVtZW50LjwvcD5cbiAgICogICAgICAgICAgPHA+VGhlIHJlZ2V4IHVzZWQgdG8gdmFsaWRhdGUgdGhpcyBwYXJhbWV0ZXIgaXMgYSBzdHJpbmcgb2YgY2hhcmFjdGVyc1xuICAgKiAgICAgY29uc2lzdGluZyBvZiB1cHBlci0gYW5kIGxvd2VyLWNhc2UgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgd2l0aCBubyBzcGFjZXMuIFlvdSBjYW5cbiAgICogICAgIGFsc28gaW5jbHVkZSB1bmRlcnNjb3JlcyBvciBhbnkgb2YgdGhlIGZvbGxvd2luZyBjaGFyYWN0ZXJzOiA9LC5ALTwvcD5cbiAgICovXG4gIFJvbGVTZXNzaW9uTmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogPHA+VGhlIE9BdXRoIDIuMCBhY2Nlc3MgdG9rZW4gb3IgT3BlbklEIENvbm5lY3QgSUQgdG9rZW4gdGhhdCBpcyBwcm92aWRlZCBieSB0aGUgaWRlbnRpdHlcbiAgICogICAgICAgICAgcHJvdmlkZXIuIFlvdXIgYXBwbGljYXRpb24gbXVzdCBnZXQgdGhpcyB0b2tlbiBieSBhdXRoZW50aWNhdGluZyB0aGUgdXNlciB3aG8gaXMgdXNpbmcgeW91clxuICAgKiAgICAgICAgICBhcHBsaWNhdGlvbiB3aXRoIGEgd2ViIGlkZW50aXR5IHByb3ZpZGVyIGJlZm9yZSB0aGUgYXBwbGljYXRpb24gbWFrZXMgYW5cbiAgICogICAgICAgICAgICAgPGNvZGU+QXNzdW1lUm9sZVdpdGhXZWJJZGVudGl0eTwvY29kZT4gY2FsbC4gPC9wPlxuICAgKi9cbiAgV2ViSWRlbnRpdHlUb2tlbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiA8cD5UaGUgZnVsbHkgcXVhbGlmaWVkIGhvc3QgY29tcG9uZW50IG9mIHRoZSBkb21haW4gbmFtZSBvZiB0aGUgaWRlbnRpdHkgcHJvdmlkZXIuPC9wPlxuICAgKiAgICAgICAgICA8cD5TcGVjaWZ5IHRoaXMgdmFsdWUgb25seSBmb3IgT0F1dGggMi4wIGFjY2VzcyB0b2tlbnMuIEN1cnJlbnRseVxuICAgKiAgICAgICAgICAgICA8Y29kZT53d3cuYW1hem9uLmNvbTwvY29kZT4gYW5kIDxjb2RlPmdyYXBoLmZhY2Vib29rLmNvbTwvY29kZT4gYXJlIHRoZSBvbmx5IHN1cHBvcnRlZFxuICAgKiAgICAgICAgICBpZGVudGl0eSBwcm92aWRlcnMgZm9yIE9BdXRoIDIuMCBhY2Nlc3MgdG9rZW5zLiBEbyBub3QgaW5jbHVkZSBVUkwgc2NoZW1lcyBhbmQgcG9ydFxuICAgKiAgICAgICAgICBudW1iZXJzLjwvcD5cbiAgICogICAgICAgICAgPHA+RG8gbm90IHNwZWNpZnkgdGhpcyB2YWx1ZSBmb3IgT3BlbklEIENvbm5lY3QgSUQgdG9rZW5zLjwvcD5cbiAgICovXG4gIFByb3ZpZGVySWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIDxwPlRoZSBBbWF6b24gUmVzb3VyY2UgTmFtZXMgKEFSTnMpIG9mIHRoZSBJQU0gbWFuYWdlZCBwb2xpY2llcyB0aGF0IHlvdSB3YW50IHRvIHVzZSBhc1xuICAgKiAgICAgICAgICBtYW5hZ2VkIHNlc3Npb24gcG9saWNpZXMuIFRoZSBwb2xpY2llcyBtdXN0IGV4aXN0IGluIHRoZSBzYW1lIGFjY291bnQgYXMgdGhlIHJvbGUuPC9wPlxuICAgKiAgICAgICAgICA8cD5UaGlzIHBhcmFtZXRlciBpcyBvcHRpb25hbC4gWW91IGNhbiBwcm92aWRlIHVwIHRvIDEwIG1hbmFnZWQgcG9saWN5IEFSTnMuIEhvd2V2ZXIsIHRoZVxuICAgKiAgICAgICAgICBwbGFpbiB0ZXh0IHRoYXQgeW91IHVzZSBmb3IgYm90aCBpbmxpbmUgYW5kIG1hbmFnZWQgc2Vzc2lvbiBwb2xpY2llcyBjYW4ndCBleGNlZWQgMiwwNDhcbiAgICogICAgICAgICAgY2hhcmFjdGVycy4gRm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgQVJOcywgc2VlIDxhIGhyZWY9XCJodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2VuZXJhbC9sYXRlc3QvZ3IvYXdzLWFybnMtYW5kLW5hbWVzcGFjZXMuaHRtbFwiPkFtYXpvbiBSZXNvdXJjZSBOYW1lcyAoQVJOcykgYW5kIEFXU1xuICAgKiAgICAgICAgICAgICBTZXJ2aWNlIE5hbWVzcGFjZXM8L2E+IGluIHRoZSBBV1MgR2VuZXJhbCBSZWZlcmVuY2UuPC9wPlxuICAgKiAgICAgICAgICA8bm90ZT5cbiAgICogICAgICAgICAgICAgPHA+QW4gQVdTIGNvbnZlcnNpb24gY29tcHJlc3NlcyB0aGUgcGFzc2VkIHNlc3Npb24gcG9saWNpZXMgYW5kIHNlc3Npb24gdGFncyBpbnRvIGFcbiAgICogICAgICAgICAgICAgcGFja2VkIGJpbmFyeSBmb3JtYXQgdGhhdCBoYXMgYSBzZXBhcmF0ZSBsaW1pdC4gWW91ciByZXF1ZXN0IGNhbiBmYWlsIGZvciB0aGlzIGxpbWl0XG4gICAqICAgICAgICAgICAgIGV2ZW4gaWYgeW91ciBwbGFpbiB0ZXh0IG1lZXRzIHRoZSBvdGhlciByZXF1aXJlbWVudHMuIFRoZSA8Y29kZT5QYWNrZWRQb2xpY3lTaXplPC9jb2RlPlxuICAgKiAgICAgICAgICAgICByZXNwb25zZSBlbGVtZW50IGluZGljYXRlcyBieSBwZXJjZW50YWdlIGhvdyBjbG9zZSB0aGUgcG9saWNpZXMgYW5kIHRhZ3MgZm9yIHlvdXJcbiAgICogICAgICAgICAgICAgcmVxdWVzdCBhcmUgdG8gdGhlIHVwcGVyIHNpemUgbGltaXQuXG4gICAqICAgICAgICAgICAgIDwvcD5cbiAgICogICAgICAgICAgPC9ub3RlPlxuICAgKlxuICAgKiAgICAgICAgICA8cD5QYXNzaW5nIHBvbGljaWVzIHRvIHRoaXMgb3BlcmF0aW9uIHJldHVybnMgbmV3XG4gICAqICAgICAgICAgIHRlbXBvcmFyeSBjcmVkZW50aWFscy4gVGhlIHJlc3VsdGluZyBzZXNzaW9uJ3MgcGVybWlzc2lvbnMgYXJlIHRoZSBpbnRlcnNlY3Rpb24gb2YgdGhlXG4gICAqICAgICAgICAgIHJvbGUncyBpZGVudGl0eS1iYXNlZCBwb2xpY3kgYW5kIHRoZSBzZXNzaW9uIHBvbGljaWVzLiBZb3UgY2FuIHVzZSB0aGUgcm9sZSdzIHRlbXBvcmFyeVxuICAgKiAgICAgICAgICBjcmVkZW50aWFscyBpbiBzdWJzZXF1ZW50IEFXUyBBUEkgY2FsbHMgdG8gYWNjZXNzIHJlc291cmNlcyBpbiB0aGUgYWNjb3VudCB0aGF0IG93bnNcbiAgICogICAgICAgICAgdGhlIHJvbGUuIFlvdSBjYW5ub3QgdXNlIHNlc3Npb24gcG9saWNpZXMgdG8gZ3JhbnQgbW9yZSBwZXJtaXNzaW9ucyB0aGFuIHRob3NlIGFsbG93ZWRcbiAgICogICAgICAgICAgYnkgdGhlIGlkZW50aXR5LWJhc2VkIHBvbGljeSBvZiB0aGUgcm9sZSB0aGF0IGlzIGJlaW5nIGFzc3VtZWQuIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWVcbiAgICogICAgICAgICAgICAgPGEgaHJlZj1cImh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9JQU0vbGF0ZXN0L1VzZXJHdWlkZS9hY2Nlc3NfcG9saWNpZXMuaHRtbCNwb2xpY2llc19zZXNzaW9uXCI+U2Vzc2lvblxuICAgKiAgICAgICAgICAgICBQb2xpY2llczwvYT4gaW4gdGhlIDxpPklBTSBVc2VyIEd1aWRlPC9pPi48L3A+XG4gICAqL1xuICBQb2xpY3lBcm5zPzogeyBhcm4/OiBzdHJpbmcgfVtdO1xuXG4gIC8qKlxuICAgKiA8cD5BbiBJQU0gcG9saWN5IGluIEpTT04gZm9ybWF0IHRoYXQgeW91IHdhbnQgdG8gdXNlIGFzIGFuIGlubGluZSBzZXNzaW9uIHBvbGljeS48L3A+XG4gICAqICAgICAgICAgIDxwPlRoaXMgcGFyYW1ldGVyIGlzIG9wdGlvbmFsLiBQYXNzaW5nIHBvbGljaWVzIHRvIHRoaXMgb3BlcmF0aW9uIHJldHVybnMgbmV3XG4gICAqICAgICAgICAgIHRlbXBvcmFyeSBjcmVkZW50aWFscy4gVGhlIHJlc3VsdGluZyBzZXNzaW9uJ3MgcGVybWlzc2lvbnMgYXJlIHRoZSBpbnRlcnNlY3Rpb24gb2YgdGhlXG4gICAqICAgICAgICAgIHJvbGUncyBpZGVudGl0eS1iYXNlZCBwb2xpY3kgYW5kIHRoZSBzZXNzaW9uIHBvbGljaWVzLiBZb3UgY2FuIHVzZSB0aGUgcm9sZSdzIHRlbXBvcmFyeVxuICAgKiAgICAgICAgICBjcmVkZW50aWFscyBpbiBzdWJzZXF1ZW50IEFXUyBBUEkgY2FsbHMgdG8gYWNjZXNzIHJlc291cmNlcyBpbiB0aGUgYWNjb3VudCB0aGF0IG93bnNcbiAgICogICAgICAgICAgdGhlIHJvbGUuIFlvdSBjYW5ub3QgdXNlIHNlc3Npb24gcG9saWNpZXMgdG8gZ3JhbnQgbW9yZSBwZXJtaXNzaW9ucyB0aGFuIHRob3NlIGFsbG93ZWRcbiAgICogICAgICAgICAgYnkgdGhlIGlkZW50aXR5LWJhc2VkIHBvbGljeSBvZiB0aGUgcm9sZSB0aGF0IGlzIGJlaW5nIGFzc3VtZWQuIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWVcbiAgICogICAgICAgICAgICAgPGEgaHJlZj1cImh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9JQU0vbGF0ZXN0L1VzZXJHdWlkZS9hY2Nlc3NfcG9saWNpZXMuaHRtbCNwb2xpY2llc19zZXNzaW9uXCI+U2Vzc2lvblxuICAgKiAgICAgICAgICAgICBQb2xpY2llczwvYT4gaW4gdGhlIDxpPklBTSBVc2VyIEd1aWRlPC9pPi48L3A+XG4gICAqICAgICAgICAgIDxwPlRoZSBwbGFpbiB0ZXh0IHRoYXQgeW91IHVzZSBmb3IgYm90aCBpbmxpbmUgYW5kIG1hbmFnZWQgc2Vzc2lvbiBwb2xpY2llcyBjYW4ndCBleGNlZWRcbiAgICogICAgICAgICAgMiwwNDggY2hhcmFjdGVycy4gVGhlIEpTT04gcG9saWN5IGNoYXJhY3RlcnMgY2FuIGJlIGFueSBBU0NJSSBjaGFyYWN0ZXIgZnJvbSB0aGUgc3BhY2VcbiAgICogICAgICAgICAgY2hhcmFjdGVyIHRvIHRoZSBlbmQgb2YgdGhlIHZhbGlkIGNoYXJhY3RlciBsaXN0IChcXHUwMDIwIHRocm91Z2ggXFx1MDBGRikuIEl0IGNhbiBhbHNvXG4gICAqICAgICAgICAgIGluY2x1ZGUgdGhlIHRhYiAoXFx1MDAwOSksIGxpbmVmZWVkIChcXHUwMDBBKSwgYW5kIGNhcnJpYWdlIHJldHVybiAoXFx1MDAwRClcbiAgICogICAgICAgICAgY2hhcmFjdGVycy48L3A+XG4gICAqICAgICAgICAgIDxub3RlPlxuICAgKiAgICAgICAgICAgICA8cD5BbiBBV1MgY29udmVyc2lvbiBjb21wcmVzc2VzIHRoZSBwYXNzZWQgc2Vzc2lvbiBwb2xpY2llcyBhbmQgc2Vzc2lvbiB0YWdzIGludG8gYVxuICAgKiAgICAgICAgICAgICBwYWNrZWQgYmluYXJ5IGZvcm1hdCB0aGF0IGhhcyBhIHNlcGFyYXRlIGxpbWl0LiBZb3VyIHJlcXVlc3QgY2FuIGZhaWwgZm9yIHRoaXMgbGltaXRcbiAgICogICAgICAgICAgICAgZXZlbiBpZiB5b3VyIHBsYWluIHRleHQgbWVldHMgdGhlIG90aGVyIHJlcXVpcmVtZW50cy4gVGhlIDxjb2RlPlBhY2tlZFBvbGljeVNpemU8L2NvZGU+XG4gICAqICAgICAgICAgICAgIHJlc3BvbnNlIGVsZW1lbnQgaW5kaWNhdGVzIGJ5IHBlcmNlbnRhZ2UgaG93IGNsb3NlIHRoZSBwb2xpY2llcyBhbmQgdGFncyBmb3IgeW91clxuICAgKiAgICAgICAgICAgICByZXF1ZXN0IGFyZSB0byB0aGUgdXBwZXIgc2l6ZSBsaW1pdC5cbiAgICogICAgICAgICAgICAgPC9wPlxuICAgKiAgICAgICAgICA8L25vdGU+XG4gICAqL1xuICBQb2xpY3k/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIDxwPlRoZSBkdXJhdGlvbiwgaW4gc2Vjb25kcywgb2YgdGhlIHJvbGUgc2Vzc2lvbi4gVGhlIHZhbHVlIGNhbiByYW5nZSBmcm9tIDkwMCBzZWNvbmRzICgxNVxuICAgKiAgICAgICAgICBtaW51dGVzKSB1cCB0byB0aGUgbWF4aW11bSBzZXNzaW9uIGR1cmF0aW9uIHNldHRpbmcgZm9yIHRoZSByb2xlLiBUaGlzIHNldHRpbmcgY2FuIGhhdmUgYVxuICAgKiAgICAgICAgICB2YWx1ZSBmcm9tIDEgaG91ciB0byAxMiBob3Vycy4gSWYgeW91IHNwZWNpZnkgYSB2YWx1ZSBoaWdoZXIgdGhhbiB0aGlzIHNldHRpbmcsIHRoZVxuICAgKiAgICAgICAgICBvcGVyYXRpb24gZmFpbHMuIEZvciBleGFtcGxlLCBpZiB5b3Ugc3BlY2lmeSBhIHNlc3Npb24gZHVyYXRpb24gb2YgMTIgaG91cnMsIGJ1dCB5b3VyXG4gICAqICAgICAgICAgIGFkbWluaXN0cmF0b3Igc2V0IHRoZSBtYXhpbXVtIHNlc3Npb24gZHVyYXRpb24gdG8gNiBob3VycywgeW91ciBvcGVyYXRpb24gZmFpbHMuIFRvIGxlYXJuXG4gICAqICAgICAgICAgIGhvdyB0byB2aWV3IHRoZSBtYXhpbXVtIHZhbHVlIGZvciB5b3VyIHJvbGUsIHNlZSA8YSBocmVmPVwiaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0lBTS9sYXRlc3QvVXNlckd1aWRlL2lkX3JvbGVzX3VzZS5odG1sI2lkX3JvbGVzX3VzZV92aWV3LXJvbGUtbWF4LXNlc3Npb25cIj5WaWV3IHRoZVxuICAgKiAgICAgICAgICAgICBNYXhpbXVtIFNlc3Npb24gRHVyYXRpb24gU2V0dGluZyBmb3IgYSBSb2xlPC9hPiBpbiB0aGVcbiAgICogICAgICAgICAgICAgPGk+SUFNIFVzZXIgR3VpZGU8L2k+LjwvcD5cbiAgICogICAgICAgICAgPHA+QnkgZGVmYXVsdCwgdGhlIHZhbHVlIGlzIHNldCB0byA8Y29kZT4zNjAwPC9jb2RlPiBzZWNvbmRzLiA8L3A+XG4gICAqICAgICAgICAgIDxub3RlPlxuICAgKiAgICAgICAgICAgICA8cD5UaGUgPGNvZGU+RHVyYXRpb25TZWNvbmRzPC9jb2RlPiBwYXJhbWV0ZXIgaXMgc2VwYXJhdGUgZnJvbSB0aGUgZHVyYXRpb24gb2YgYSBjb25zb2xlXG4gICAqICAgICAgICAgICAgIHNlc3Npb24gdGhhdCB5b3UgbWlnaHQgcmVxdWVzdCB1c2luZyB0aGUgcmV0dXJuZWQgY3JlZGVudGlhbHMuIFRoZSByZXF1ZXN0IHRvIHRoZVxuICAgKiAgICAgICAgICAgICBmZWRlcmF0aW9uIGVuZHBvaW50IGZvciBhIGNvbnNvbGUgc2lnbi1pbiB0b2tlbiB0YWtlcyBhIDxjb2RlPlNlc3Npb25EdXJhdGlvbjwvY29kZT5cbiAgICogICAgICAgICAgICAgcGFyYW1ldGVyIHRoYXQgc3BlY2lmaWVzIHRoZSBtYXhpbXVtIGxlbmd0aCBvZiB0aGUgY29uc29sZSBzZXNzaW9uLiBGb3IgbW9yZVxuICAgKiAgICAgICAgICAgICBpbmZvcm1hdGlvbiwgc2VlIDxhIGhyZWY9XCJodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvaWRfcm9sZXNfcHJvdmlkZXJzX2VuYWJsZS1jb25zb2xlLWN1c3RvbS11cmwuaHRtbFwiPkNyZWF0aW5nIGEgVVJMXG4gICAqICAgICAgICAgICAgICAgIHRoYXQgRW5hYmxlcyBGZWRlcmF0ZWQgVXNlcnMgdG8gQWNjZXNzIHRoZSBBV1MgTWFuYWdlbWVudCBDb25zb2xlPC9hPiBpbiB0aGVcbiAgICogICAgICAgICAgICAgICAgPGk+SUFNIFVzZXIgR3VpZGU8L2k+LjwvcD5cbiAgICogICAgICAgICAgPC9ub3RlPlxuICAgKi9cbiAgRHVyYXRpb25TZWNvbmRzPzogbnVtYmVyO1xufVxuXG50eXBlIExvd2VyQ2FzZUtleTxUPiA9IHsgW0sgaW4ga2V5b2YgVCBhcyBgJHtVbmNhcGl0YWxpemU8c3RyaW5nICYgSz59YF06IFRbS10gfTtcbmV4cG9ydCBpbnRlcmZhY2UgRnJvbVdlYlRva2VuSW5pdCBleHRlbmRzIE9taXQ8TG93ZXJDYXNlS2V5PEFzc3VtZVJvbGVXaXRoV2ViSWRlbnRpdHlQYXJhbXM+LCBcInJvbGVTZXNzaW9uTmFtZVwiPiB7XG4gIC8qKlxuICAgKiBUaGUgSUFNIHNlc3Npb24gbmFtZSB1c2VkIHRvIGRpc3Rpbmd1aXNoIHNlc3Npb25zLlxuICAgKi9cbiAgcm9sZVNlc3Npb25OYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIGZ1bmN0aW9uIHRoYXQgYXNzdW1lcyBhIHJvbGUgd2l0aCB3ZWIgaWRlbnRpdHkgYW5kIHJldHVybnMgYSBwcm9taXNlIGZ1bGZpbGxlZCB3aXRoXG4gICAqIGNyZWRlbnRpYWxzIGZvciB0aGUgYXNzdW1lZCByb2xlLlxuICAgKlxuICAgKiBAcGFyYW0gcGFyYW1zIGlucHV0IHBhcmFtZXRlciBvZiBzdHM6QXNzdW1lUm9sZVdpdGhXZWJJZGVudGl0eSBBUEkuXG4gICAqL1xuICByb2xlQXNzdW1lcldpdGhXZWJJZGVudGl0eT86IChwYXJhbXM6IEFzc3VtZVJvbGVXaXRoV2ViSWRlbnRpdHlQYXJhbXMpID0+IFByb21pc2U8Q3JlZGVudGlhbHM+O1xufVxuXG5leHBvcnQgY29uc3QgZnJvbVdlYlRva2VuID1cbiAgKGluaXQ6IEZyb21XZWJUb2tlbkluaXQpOiBDcmVkZW50aWFsUHJvdmlkZXIgPT5cbiAgKCkgPT4ge1xuICAgIGNvbnN0IHtcbiAgICAgIHJvbGVBcm4sXG4gICAgICByb2xlU2Vzc2lvbk5hbWUsXG4gICAgICB3ZWJJZGVudGl0eVRva2VuLFxuICAgICAgcHJvdmlkZXJJZCxcbiAgICAgIHBvbGljeUFybnMsXG4gICAgICBwb2xpY3ksXG4gICAgICBkdXJhdGlvblNlY29uZHMsXG4gICAgICByb2xlQXNzdW1lcldpdGhXZWJJZGVudGl0eSxcbiAgICB9ID0gaW5pdDtcblxuICAgIGlmICghcm9sZUFzc3VtZXJXaXRoV2ViSWRlbnRpdHkpIHtcbiAgICAgIHRocm93IG5ldyBDcmVkZW50aWFsc1Byb3ZpZGVyRXJyb3IoXG4gICAgICAgIGBSb2xlIEFybiAnJHtyb2xlQXJufScgbmVlZHMgdG8gYmUgYXNzdW1lZCB3aXRoIHdlYiBpZGVudGl0eSxgICtcbiAgICAgICAgICBgIGJ1dCBubyByb2xlIGFzc3VtcHRpb24gY2FsbGJhY2sgd2FzIHByb3ZpZGVkLmAsXG4gICAgICAgIGZhbHNlXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiByb2xlQXNzdW1lcldpdGhXZWJJZGVudGl0eSh7XG4gICAgICBSb2xlQXJuOiByb2xlQXJuLFxuICAgICAgUm9sZVNlc3Npb25OYW1lOiByb2xlU2Vzc2lvbk5hbWUgPz8gYGF3cy1zZGstanMtc2Vzc2lvbi0ke0RhdGUubm93KCl9YCxcbiAgICAgIFdlYklkZW50aXR5VG9rZW46IHdlYklkZW50aXR5VG9rZW4sXG4gICAgICBQcm92aWRlcklkOiBwcm92aWRlcklkLFxuICAgICAgUG9saWN5QXJuczogcG9saWN5QXJucyxcbiAgICAgIFBvbGljeTogcG9saWN5LFxuICAgICAgRHVyYXRpb25TZWNvbmRzOiBkdXJhdGlvblNlY29uZHMsXG4gICAgfSk7XG4gIH07XG4iXX0=
{
"name": "@aws-sdk/credential-provider-web-identity",
"version": "3.18.0",
"version": "3.19.0",
"description": "AWS credential provider that calls STS assumeRole for temporary AWS credentials",

@@ -24,3 +24,3 @@ "main": "./dist/cjs/index.js",

"dependencies": {
"@aws-sdk/property-provider": "3.18.0",
"@aws-sdk/property-provider": "3.19.0",
"@aws-sdk/types": "3.18.0",

@@ -27,0 +27,0 @@ "tslib": "^2.0.0"

@@ -12,3 +12,3 @@ import { readFileSync } from "fs";

import { ProviderError } from "@aws-sdk/property-provider";
import { CredentialsProviderError } from "@aws-sdk/property-provider";

@@ -127,3 +127,3 @@ jest.mock("fs");

} catch (error) {
expect(error).toBeInstanceOf(ProviderError);
expect(error).toBeInstanceOf(CredentialsProviderError);
expect(error.tryNextLink).toBe(true);

@@ -139,3 +139,3 @@ }

} catch (error) {
expect(error).toBeInstanceOf(ProviderError);
expect(error).toBeInstanceOf(CredentialsProviderError);
expect(error.tryNextLink).toBe(true);

@@ -142,0 +142,0 @@ }

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

import { ProviderError } from "@aws-sdk/property-provider";
import { CredentialsProviderError } from "@aws-sdk/property-provider";
import { CredentialProvider, Credentials } from "@aws-sdk/types";

@@ -33,3 +33,3 @@ import { readFileSync } from "fs";

if (!webIdentityTokenFile || !roleArn) {
throw new ProviderError("Web identity configuration not specified");
throw new CredentialsProviderError("Web identity configuration not specified");
}

@@ -36,0 +36,0 @@

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

import { ProviderError } from "@aws-sdk/property-provider";
import { CredentialsProviderError } from "@aws-sdk/property-provider";

@@ -32,3 +32,3 @@ import { fromWebToken } from "./fromWebToken";

expect(error).toEqual(
new ProviderError(
new CredentialsProviderError(
`Role Arn '${mockRoleArn}' needs to be assumed with web identity, but no role assumption callback was provided.`,

@@ -35,0 +35,0 @@ false

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

import { ProviderError } from "@aws-sdk/property-provider";
import { CredentialsProviderError } from "@aws-sdk/property-provider";
import { CredentialProvider, Credentials } from "@aws-sdk/types";

@@ -145,3 +145,3 @@

if (!roleAssumerWithWebIdentity) {
throw new ProviderError(
throw new CredentialsProviderError(
`Role Arn '${roleArn}' needs to be assumed with web identity,` +

@@ -148,0 +148,0 @@ ` but no role assumption callback was provided.`,

Sorry, the diff of this file is not supported yet

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