cdklabs-projen-project-types 0.3.11 → 0.3.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +830 -681
- package/API.md +315 -27
- package/lib/cdk-construct-library-options.d.ts +16 -3
- package/lib/cdk-construct-library-options.js +1 -1
- package/lib/cdk-jsii-options.d.ts +16 -3
- package/lib/cdk-jsii-options.js +1 -1
- package/lib/cdk.js +2 -2
- package/lib/cdklabs.js +3 -3
- package/lib/common-options.js +2 -2
- package/lib/jsii.js +1 -1
- package/lib/rosetta.js +1 -1
- package/lib/upgrade-cdklabs-projen-project-types.d.ts +1 -1
- package/lib/upgrade-cdklabs-projen-project-types.js +4 -2
- package/lib/yarn/monorepo-options.d.ts +16 -3
- package/lib/yarn/monorepo-options.js +1 -1
- package/lib/yarn/monorepo-release.js +1 -1
- package/lib/yarn/monorepo.js +2 -2
- package/lib/yarn/typescript-workspace-options.d.ts +16 -3
- package/lib/yarn/typescript-workspace-options.js +1 -1
- package/lib/yarn/typescript-workspace-release.js +1 -1
- package/lib/yarn/typescript-workspace.js +18 -13
- package/package.json +6 -6
package/lib/cdk.js
CHANGED
|
@@ -55,7 +55,7 @@ class CdkConstructLibrary extends projen_1.awscdk.AwsCdkConstructLibrary {
|
|
|
55
55
|
}
|
|
56
56
|
exports.CdkConstructLibrary = CdkConstructLibrary;
|
|
57
57
|
_a = JSII_RTTI_SYMBOL_1;
|
|
58
|
-
CdkConstructLibrary[_a] = { fqn: "cdklabs-projen-project-types.CdkConstructLibrary", version: "0.3.
|
|
58
|
+
CdkConstructLibrary[_a] = { fqn: "cdklabs-projen-project-types.CdkConstructLibrary", version: "0.3.13" };
|
|
59
59
|
/**
|
|
60
60
|
* Create a Cdk TypeScript Project
|
|
61
61
|
*
|
|
@@ -71,5 +71,5 @@ class CdkTypeScriptProject extends projen_1.typescript.TypeScriptProject {
|
|
|
71
71
|
}
|
|
72
72
|
exports.CdkTypeScriptProject = CdkTypeScriptProject;
|
|
73
73
|
_b = JSII_RTTI_SYMBOL_1;
|
|
74
|
-
CdkTypeScriptProject[_b] = { fqn: "cdklabs-projen-project-types.CdkTypeScriptProject", version: "0.3.
|
|
74
|
+
CdkTypeScriptProject[_b] = { fqn: "cdklabs-projen-project-types.CdkTypeScriptProject", version: "0.3.13" };
|
|
75
75
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2Nkay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG1DQUFpRDtBQUdqRCxxREFBd0Y7QUFDeEYsaURBQTZDO0FBQzdDLHVDQUFvQztBQUdwQzs7OztHQUlHO0FBQ0gsTUFBYSxtQkFBb0IsU0FBUSxlQUFNLENBQUMsc0JBQXNCO0lBQzVELE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxPQUFtQztRQUN0RSxNQUFNLE1BQU0sR0FBYSxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUMzQixNQUFNLENBQUMsSUFBSSxDQUFDLCtEQUErRCxDQUFDLENBQUM7UUFDL0UsQ0FBQztRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDNUIsTUFBTSxDQUFDLElBQUksQ0FBQyw4REFBOEQsQ0FBQyxDQUFDO1FBQzlFLENBQUM7UUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQzVCLE1BQU0sQ0FBQyxJQUFJLENBQUMsOERBQThELENBQUMsQ0FBQztRQUM5RSxDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN6QixNQUFNLENBQUMsSUFBSSxDQUFDLDJEQUEyRCxDQUFDLENBQUM7UUFDM0UsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFJRCxZQUFZLE9BQW1DO1FBQzdDLElBQUksT0FBTyxDQUFDLFNBQVMsS0FBSyxZQUFHLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQy9DLE1BQU0sTUFBTSxHQUFHLG1CQUFtQixDQUFDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2xFLElBQUksTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxvRkFBb0YsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDN0gsQ0FBQztRQUNILENBQUM7UUFFRCxNQUFNLElBQUksR0FBRyxJQUFBLDBDQUF5QixFQUFDO1lBQ3JDLEdBQUcsT0FBTztZQUNWLGtEQUFrRDtZQUNsRCxVQUFVLEVBQUUsT0FBTyxDQUFDLFVBQVUsSUFBSSxPQUFPLENBQUMsYUFBYTtTQUN4RCxDQUFDLENBQUM7UUFFSCxLQUFLLENBQUM7WUFDSixTQUFTLEVBQUUsWUFBRyxDQUFDLFNBQVMsQ0FBQyxZQUFZO1lBQ3JDLHNEQUFzRDtZQUN0RCxhQUFhLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDOUIsR0FBRyxJQUFJO1NBQ1IsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBRTVCLElBQUksaUJBQU8sQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzFDLElBQUksMEJBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV0QixJQUFBLDBDQUF5QixFQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN4QyxDQUFDOztBQTlDSCxrREErQ0M7OztBQUlEOzs7O0dBSUc7QUFDSCxNQUFhLG9CQUFxQixTQUFRLG1CQUFVLENBQUMsaUJBQWlCO0lBR3BFLFlBQVksT0FBb0M7UUFDOUMsTUFBTSxJQUFJLEdBQUcsSUFBQSwwQ0FBeUIsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUNoRCxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDWixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFFNUIsSUFBQSwwQ0FBeUIsRUFBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDeEMsQ0FBQzs7QUFUSCxvREFVQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGF3c2NkaywgY2RrLCB0eXBlc2NyaXB0IH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IENka0NvbW1vbk9wdGlvbnMgfSBmcm9tICcuL2Nkay1jb21tb24tb3B0aW9ucyc7XG5pbXBvcnQgeyBDZGtDb25zdHJ1Y3RMaWJyYXJ5T3B0aW9ucyB9IGZyb20gJy4vY2RrLWNvbnN0cnVjdC1saWJyYXJ5LW9wdGlvbnMnO1xuaW1wb3J0IHsgY29uZmlndXJlQ29tbW9uQ29tcG9uZW50cywgd2l0aENvbW1vbk9wdGlvbnNEZWZhdWx0cyB9IGZyb20gJy4vY29tbW9uLW9wdGlvbnMnO1xuaW1wb3J0IHsgSW50ZWdSdW5uZXIgfSBmcm9tICcuL2ludGVnLXJ1bm5lcic7XG5pbXBvcnQgeyBSb3NldHRhIH0gZnJvbSAnLi9yb3NldHRhJztcblxuXG4vKipcbiAqIENyZWF0ZSBhIENkayBDb25zdHJ1Y3QgTGlicmFyeSBQcm9qZWN0XG4gKlxuICogQHBqaWQgY2RrLWNvbnN0cnVjdC1saWJcbiAqL1xuZXhwb3J0IGNsYXNzIENka0NvbnN0cnVjdExpYnJhcnkgZXh0ZW5kcyBhd3NjZGsuQXdzQ2RrQ29uc3RydWN0TGlicmFyeSB7XG4gIHByaXZhdGUgc3RhdGljIHN0YWJpbGl0eVJlcXVpcmVtZW50cyhvcHRpb25zOiBDZGtDb25zdHJ1Y3RMaWJyYXJ5T3B0aW9ucyk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBlcnJvcnM6IHN0cmluZ1tdID0gW107XG4gICAgaWYgKCFvcHRpb25zLnB1Ymxpc2hUb1B5cGkpIHtcbiAgICAgIGVycm9ycy5wdXNoKCdQdWJsaXNoaW5nIEVycm9yOiBwcm9qZWN0IG5vdCBjb25maWd1cmVkIHRvIHB1Ymxpc2ggdG8gUHl0aG9uJyk7XG4gICAgfVxuICAgIGlmICghb3B0aW9ucy5wdWJsaXNoVG9NYXZlbikge1xuICAgICAgZXJyb3JzLnB1c2goJ1B1Ymxpc2hpbmcgRXJyb3I6IHByb2plY3Qgbm90IGNvbmZpZ3VyZWQgdG8gcHVibGlzaCB0byBNYXZlbicpO1xuICAgIH1cbiAgICBpZiAoIW9wdGlvbnMucHVibGlzaFRvTnVnZXQpIHtcbiAgICAgIGVycm9ycy5wdXNoKCdQdWJsaXNoaW5nIEVycm9yOiBwcm9qZWN0IG5vdCBjb25maWd1cmVkIHRvIHB1Ymxpc2ggdG8gTnVnZXQnKTtcbiAgICB9XG4gICAgaWYgKCFvcHRpb25zLnB1Ymxpc2hUb0dvKSB7XG4gICAgICBlcnJvcnMucHVzaCgnUHVibGlzaGluZyBFcnJvcjogcHJvamVjdCBub3QgY29uZmlndXJlZCB0byBwdWJsaXNoIHRvIEdvJyk7XG4gICAgfVxuICAgIHJldHVybiBlcnJvcnM7XG4gIH1cblxuICBwdWJsaWMgcmVhZG9ubHkgcHJpdmF0ZTogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBDZGtDb25zdHJ1Y3RMaWJyYXJ5T3B0aW9ucykge1xuICAgIGlmIChvcHRpb25zLnN0YWJpbGl0eSA9PT0gY2RrLlN0YWJpbGl0eS5TVEFCTEUpIHtcbiAgICAgIGNvbnN0IGVycm9ycyA9IENka0NvbnN0cnVjdExpYnJhcnkuc3RhYmlsaXR5UmVxdWlyZW1lbnRzKG9wdGlvbnMpO1xuICAgICAgaWYgKGVycm9ycy5sZW5ndGggPiAwKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgVGhlIHByb2plY3QgZG9lcyBub3QgcGFzcyBzdGFiaWxpdHkgcmVxdWlyZW1lbnRzIGR1ZSB0byB0aGUgZm9sbG93aW5nIGVycm9yczpcXG4gICR7ZXJyb3JzLmpvaW4oJ1xcbiAgJyl9YCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3Qgb3B0cyA9IHdpdGhDb21tb25PcHRpb25zRGVmYXVsdHMoe1xuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIC8vIGFsc28gYWNjZXB0IHRoZSBkZXByZWNhdGVkIHJlcG9zaXRvcnlVcmwgb3B0aW9uXG4gICAgICByZXBvc2l0b3J5OiBvcHRpb25zLnJlcG9zaXRvcnkgPz8gb3B0aW9ucy5yZXBvc2l0b3J5VXJsLFxuICAgIH0pO1xuXG4gICAgc3VwZXIoe1xuICAgICAgc3RhYmlsaXR5OiBjZGsuU3RhYmlsaXR5LkVYUEVSSU1FTlRBTCxcbiAgICAgIC8vIHVwc3RyZWFtIEpzaWlQcm9qZWN0IHVzZXMgYSBkaWZmZXJlbnQgbmFtZSBmb3IgdGhpc1xuICAgICAgcmVwb3NpdG9yeVVybDogb3B0cy5yZXBvc2l0b3J5LFxuICAgICAgLi4ub3B0cyxcbiAgICB9KTtcbiAgICB0aGlzLnByaXZhdGUgPSBvcHRzLnByaXZhdGU7XG5cbiAgICBuZXcgUm9zZXR0YSh0aGlzLCBvcHRpb25zLnJvc2V0dGFPcHRpb25zKTtcbiAgICBuZXcgSW50ZWdSdW5uZXIodGhpcyk7XG5cbiAgICBjb25maWd1cmVDb21tb25Db21wb25lbnRzKHRoaXMsIG9wdHMpO1xuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2RrVHlwZVNjcmlwdFByb2plY3RPcHRpb25zIGV4dGVuZHMgdHlwZXNjcmlwdC5UeXBlU2NyaXB0UHJvamVjdE9wdGlvbnMsIENka0NvbW1vbk9wdGlvbnMgeyB9XG5cbi8qKlxuICogQ3JlYXRlIGEgQ2RrIFR5cGVTY3JpcHQgUHJvamVjdFxuICpcbiAqIEBwamlkIGNkay10cy1wcm9qXG4gKi9cbmV4cG9ydCBjbGFzcyBDZGtUeXBlU2NyaXB0UHJvamVjdCBleHRlbmRzIHR5cGVzY3JpcHQuVHlwZVNjcmlwdFByb2plY3Qge1xuICBwdWJsaWMgcmVhZG9ubHkgcHJpdmF0ZTogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBDZGtUeXBlU2NyaXB0UHJvamVjdE9wdGlvbnMpIHtcbiAgICBjb25zdCBvcHRzID0gd2l0aENvbW1vbk9wdGlvbnNEZWZhdWx0cyhvcHRpb25zKTtcbiAgICBzdXBlcihvcHRzKTtcbiAgICB0aGlzLnByaXZhdGUgPSBvcHRzLnByaXZhdGU7XG5cbiAgICBjb25maWd1cmVDb21tb25Db21wb25lbnRzKHRoaXMsIG9wdHMpO1xuICB9XG59XG4iXX0=
|
package/lib/cdklabs.js
CHANGED
|
@@ -129,7 +129,7 @@ class CdklabsConstructLibrary extends cdk_1.CdkConstructLibrary {
|
|
|
129
129
|
}
|
|
130
130
|
exports.CdklabsConstructLibrary = CdklabsConstructLibrary;
|
|
131
131
|
_a = JSII_RTTI_SYMBOL_1;
|
|
132
|
-
CdklabsConstructLibrary[_a] = { fqn: "cdklabs-projen-project-types.CdklabsConstructLibrary", version: "0.3.
|
|
132
|
+
CdklabsConstructLibrary[_a] = { fqn: "cdklabs-projen-project-types.CdklabsConstructLibrary", version: "0.3.13" };
|
|
133
133
|
/**
|
|
134
134
|
* Create a Cdklabs TypeScript Project
|
|
135
135
|
*
|
|
@@ -150,7 +150,7 @@ class CdklabsTypeScriptProject extends cdk_1.CdkTypeScriptProject {
|
|
|
150
150
|
}
|
|
151
151
|
exports.CdklabsTypeScriptProject = CdklabsTypeScriptProject;
|
|
152
152
|
_b = JSII_RTTI_SYMBOL_1;
|
|
153
|
-
CdklabsTypeScriptProject[_b] = { fqn: "cdklabs-projen-project-types.CdklabsTypeScriptProject", version: "0.3.
|
|
153
|
+
CdklabsTypeScriptProject[_b] = { fqn: "cdklabs-projen-project-types.CdklabsTypeScriptProject", version: "0.3.13" };
|
|
154
154
|
/**
|
|
155
155
|
* Create a Cdklabs Jsii Project
|
|
156
156
|
*
|
|
@@ -173,5 +173,5 @@ class CdklabsJsiiProject extends jsii_1.CdkJsiiProject {
|
|
|
173
173
|
}
|
|
174
174
|
exports.CdklabsJsiiProject = CdklabsJsiiProject;
|
|
175
175
|
_c = JSII_RTTI_SYMBOL_1;
|
|
176
|
-
CdklabsJsiiProject[_c] = { fqn: "cdklabs-projen-project-types.CdklabsJsiiProject", version: "0.3.
|
|
176
|
+
CdklabsJsiiProject[_c] = { fqn: "cdklabs-projen-project-types.CdklabsJsiiProject", version: "0.3.13" };
|
|
177
177
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrbGFicy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jZGtsYWJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0JBQWdDO0FBQ2hDLHNEQUF1RDtBQUN2RCwwQ0FBNEM7QUFFNUMsSUFBWSxZQUtYO0FBTEQsV0FBWSxZQUFZO0lBQ3RCLG1EQUFNLENBQUE7SUFDTiwrQ0FBSSxDQUFBO0lBQ0osbURBQU0sQ0FBQTtJQUNOLDJDQUFFLENBQUE7QUFDSixDQUFDLEVBTFcsWUFBWSw0QkFBWixZQUFZLFFBS3ZCO0FBQUEsQ0FBQztBQUVGLCtCQUllO0FBR2YsaUNBQXdDO0FBQ3hDLHdDQUF3QztBQUN4QyxtQ0FBMkM7QUFFM0Msd0VBQXdFO0FBQ3hFLE1BQU0sa0JBQWtCLEdBQUc7SUFDekIsTUFBTSxFQUFFLHFCQUFxQjtJQUM3QixVQUFVLEVBQUUscUJBQXFCO0lBQ2pDLGFBQWEsRUFBRSx3QkFBd0I7SUFDdkMsV0FBVyxFQUFFLHdCQUF3QjtJQUNyQyxrQkFBa0IsRUFBRSxJQUFJO0NBQ3pCLENBQUM7QUFFRixNQUFNLG1CQUFtQixHQUE0QztJQUNuRSxtQkFBbUIsRUFBRSxJQUFJO0lBQ3pCLGNBQWMsRUFBRSxTQUFTO0lBQ3pCLG1CQUFtQixFQUFFLE9BQU87SUFDNUIsV0FBVyxFQUFFO1FBQ1gsY0FBYyxFQUFFLDJCQUFjLENBQUMsTUFBTTtLQUN0QztJQUNELG9CQUFvQixFQUFFLE1BQU07SUFDNUIsbUZBQW1GO0lBQ25GLHdGQUF3RjtJQUN4RixvREFBb0Q7SUFDcEQsaUJBQWlCLEVBQUUsMEJBQWlCLENBQUMsZ0JBQWdCLEVBQUU7SUFDdkQsV0FBVyxFQUFFLE1BQU07Q0FDcEIsQ0FBQztBQUVGLFNBQVMsK0JBQStCLENBQUMsY0FBc0IsRUFBRSxLQUFzQjtJQUNyRixNQUFNLGVBQWUsR0FBRyxJQUFBLGVBQVEsRUFBQyxjQUFjLENBQUMsQ0FBQztJQUVqRCxPQUFPLHdCQUF3QixDQUFDLFNBQVMsRUFB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QWtDO1FBQzVDLE1BQU0sNkJBQTZCLEdBQXdCLENBQUMsT0FBTyxDQUFDLHlCQUF5QixJQUFJLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDdEcsK0JBQStCLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ2xGLDJEQUEyRDtRQUMzRCxNQUFNLGFBQWEsR0FBRyxJQUFBLGdCQUFTLEVBQUM7WUFDOUIsRUFBRTtZQUNGLG1CQUFtQjtZQUNuQiw2QkFBNkI7WUFDN0IsT0FBTztZQUNQLGtCQUFrQjtTQUNuQixDQUE4QixDQUFDO1FBRWhDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN2QixDQUFDOztBQWRILGdEQWVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYmFzZW5hbWUgfSBmcm9tICdwYXRoJztcbmltcG9ydCB7IFVwZGF0ZVNuYXBzaG90IH0gZnJvbSAncHJvamVuL2xpYi9qYXZhc2NyaXB0JztcbmltcG9ydCB7IGRlZXBNZXJnZSB9IGZyb20gJ3Byb2plbi9saWIvdXRpbCc7XG5cbmV4cG9ydCBlbnVtIEpzaWlMYW5ndWFnZSB7XG4gIFBZVEhPTixcbiAgSkFWQSxcbiAgRE9UTkVULFxuICBHTyxcbn07XG5cbmltcG9ydCB7XG4gIENka0NvbnN0cnVjdExpYnJhcnksXG4gIENka1R5cGVTY3JpcHRQcm9qZWN0LFxuICBDZGtUeXBlU2NyaXB0UHJvamVjdE9wdGlvbnMsXG59IGZyb20gJy4vY2RrJztcbmltcG9ydCB7IENka0NvbnN0cnVjdExpYnJhcnlPcHRpb25zIH0gZnJvbSAnLi9jZGstY29uc3RydWN0LWxpYnJhcnktb3B0aW9ucyc7XG5pbXBvcnQgeyBDZGtKc2lpUHJvamVjdE9wdGlvbnMgfSBmcm9tICcuL2Nkay1qc2lpLW9wdGlvbnMnO1xuaW1wb3J0IHsgQ2RrSnNpaVByb2plY3QgfSBmcm9tICcuL2pzaWknO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9vcmRlclxuaW1wb3J0IHsgUmVsZWFzYWJsZUNvbW1pdHMgfSBmcm9tICdwcm9qZW4nO1xuXG4vLyBvdmVycmlkZSB0aGVzZSBwcm9wZXJ0aWVzIG5vIG1hdHRlciB3aGF0IHZhbHVlcyBhcmUgZ2l2ZW4gY2xpZW50LXNpZGVcbmNvbnN0IGNka2xhYnNGb3JjZWRQcm9wcyA9IHtcbiAgYXV0aG9yOiAnQW1hem9uIFdlYiBTZXJ2aWNlcycsXG4gIGF1dGhvck5hbWU6ICdBbWF6b24gV2ViIFNlcnZpY2VzJyxcbiAgYXV0aG9yQWRkcmVzczogJ2F3cy1jZGstZGV2QGFtYXpvbi5jb20nLFxuICBhdXRob3JFbWFpbDogJ2F3cy1jZGstZGV2QGFtYXpvbi5jb20nLFxuICBhdXRob3JPcmdhbml6YXRpb246IHRydWUsXG59O1xuXG5jb25zdCBjZGtsYWJzRGVmYXVsdFByb3BzOiBQYXJ0aWFsPENka2xhYnNDb25zdHJ1Y3RMaWJyYXJ5T3B0aW9ucz4gPSB7XG4gIGF1dG9BcHByb3ZlVXBncmFkZXM6IHRydWUsXG4gIG1pbk5vZGVWZXJzaW9uOiAnMTguMTIuMCcsXG4gIHdvcmtmbG93Tm9kZVZlcnNpb246ICdsdHMvKicsXG4gIGplc3RPcHRpb25zOiB7XG4gICAgdXBkYXRlU25hcHNob3Q6IFVwZGF0ZVNuYXBzaG90LkFMV0FZUyxcbiAgfSxcbiAgZGVmYXVsdFJlbGVhc2VCcmFuY2g6ICdtYWluJyxcbiAgLy8gRGVmYXVsdCBpcyB0byByZWxlYXNlIG9ubHkgZmVhdHVyZXMgYW5kIGZpeGVzLiBJZiB3ZSBkb24ndCBkbyB0aGlzLCBldmVyeSBwcm9qZW5cbiAgLy8gcHJvamVjdCB3aWxsIGJhc2ljYWxseSByZWxlYXNlIGV2ZXJ5IGRheSwgYmVjYXVzZSBpdCB3aWxsIHNlZSBkZXZEZXBlbmRlbmNpZXMgdXBkYXRlc1xuICAvLyBldmVyeSBkYXksIGV2ZW4gdGhvdWdoIHRob3NlIGFyZSBub3QgaW50ZXJlc3RpbmcuXG4gIHJlbGVhc2FibGVDb21taXRzOiBSZWxlYXNhYmxlQ29tbWl0cy5mZWF0dXJlc0FuZEZpeGVzKCksXG4gIGpzaWlWZXJzaW9uOiAnfjUuNycsXG59O1xuXG5mdW5jdGlvbiBjcmVhdGVDZGtsYWJzUHVibGlzaGluZ0RlZmF1bHRzKG5wbVBhY2thZ2VOYW1lOiBzdHJpbmcsIGxhbmdzPzogSnNpaUxhbmd1YWdlW10pIHtcbiAgY29uc3QgcGFja2FnZUJhc2VuYW1lID0gYmFzZW5hbWUobnBtUGFja2FnZU5hbWUpO1xuXG4gIHJldHVybiBjcmVhdGVQdWJsaXNoaW5nRGVmYXVsdHMoJ2Nka2xhYnMnLCBwYWNrYWdlQmFzZW5hbWUsIEJvb2xlYW4ocGFja2FnZUJhc2VuYW1lICE9PSBucG1QYWNrYWdlTmFtZSksIGxhbmdzKTtcbn07XG5cbmZ1bmN0aW9uIGNyZWF0ZVB1Ymxpc2hpbmdEZWZhdWx0cyhuYW1lc3BhY2U6IHN0cmluZywgcGFja2FnZUJhc2VuYW1lOiBzdHJpbmcsIGFsd2F5c1VzZU5hbWVzcGFjZSA9IHRydWUsIGxhbmdzPzogSnNpaUxhbmd1YWdlW10pIHtcbiAgY29uc3QgcGlQeVByZWZpeCA9IGFsd2F5c1VzZU5hbWVzcGFjZSA/IGAke25hbWVzcGFjZX0uYCA6ICcnO1xuICBjb25zdCBudWdldFByZWZpeCA9IGFsd2F5c1VzZU5hbWVzcGFjZSA/IGAke3VwcGVyQ2FzZU5hbWUobmFtZXNwYWNlKX0uYCA6IGAke3VwcGVyQ2FzZU5hbWUobmFtZXNwYWNlKX1gO1xuXG4gIHJldHVybiB7XG4gICAgLi4uY3JlYXRlTnBtUHVibGlzaGluZ0RlZmF1bHRzKCksXG4gICAgLi4ucHVibGlzaExhbmd1YWdlV3JhcHBlcihKc2lpTGFuZ3VhZ2UuUFlUSE9OLCB7XG4gICAgICBwdWJsaXNoVG9QeXBpOiB7XG4gICAgICAgIHRydXN0ZWRQdWJsaXNoaW5nOiAxLFxuICAgICAgICBkaXN0TmFtZTogYCR7cGlQeVByZWZpeH0ke3BhY2thZ2VCYXNlbmFtZX1gLFxuICAgICAgICBtb2R1bGU6IGAke3BpUHlQcmVmaXh9JHtjaGFuZ2VEZWxpbWl0ZXIocGFja2FnZUJhc2VuYW1lLCAnXycpfWAsXG4gICAgICB9LFxuICAgIH0pLFxuICAgIC4uLnB1Ymxpc2hMYW5ndWFnZVdyYXBwZXIoSnNpaUxhbmd1YWdlLkpBVkEsIHtcbiAgICAgIHB1Ymxpc2hUb01hdmVuOiB7XG4gICAgICAgIGphdmFQYWNrYWdlOiBgaW8uZ2l0aHViLiR7bmFtZXNwYWNlfS4ke2NoYW5nZURlbGltaXRlcihwYWNrYWdlQmFzZW5hbWUsICcuJyl9YCxcbiAgICAgICAgbWF2ZW5Hcm91cElkOiBgaW8uZ2l0aHViLiR7bmFtZXNwYWNlfWAsXG4gICAgICAgIG1hdmVuQXJ0aWZhY3RJZDogcGFja2FnZUJhc2VuYW1lLFxuICAgICAgICBtYXZlblNlcnZlcklkOiAnY2VudHJhbC1vc3NyaCcsXG4gICAgICB9LFxuICAgIH0pLFxuICAgIC4uLnB1Ymxpc2hMYW5ndWFnZVdyYXBwZXIoSnNpaUxhbmd1YWdlLkRPVE5FVCwge1xuICAgICAgcHVibGlzaFRvTnVnZXQ6IHtcbiAgICAgICAgdHJ1c3RlZFB1Ymxpc2hpbmc6IDEsXG4gICAgICAgIGRvdE5ldE5hbWVzcGFjZTogYCR7bnVnZXRQcmVmaXh9JHt1cHBlckNhc2VOYW1lKHBhY2thZ2VCYXNlbmFtZSl9YCxcbiAgICAgICAgcGFja2FnZUlkOiBgJHtudWdldFByZWZpeH0ke3VwcGVyQ2FzZU5hbWUocGFja2FnZUJhc2VuYW1lKX1gLFxuICAgICAgfSxcbiAgICB9KSxcbiAgICAuLi5wdWJsaXNoTGFuZ3VhZ2VXcmFwcGVyKEpzaWlMYW5ndWFnZS5HTywge1xuICAgICAgcHVibGlzaFRvR286IHtcbiAgICAgICAgbW9kdWxlTmFtZTogYGdpdGh1Yi5jb20vJHtuYW1lc3BhY2V9LyR7cGFja2FnZUJhc2VuYW1lfS1nb2AsXG4gICAgICB9LFxuICAgIH0pLFxuICB9O1xuXG4gIGZ1bmN0aW9uIHB1Ymxpc2hMYW5ndWFnZVdyYXBwZXIobGFuZzogSnNpaUxhbmd1YWdlLCBvYmo6IFJlY29yZDxzdHJpbmcsIGFueT4pIHtcbiAgICByZXR1cm4gcHVibGlzaExhbmd1YWdlKGxhbmcpID8gb2JqIDoge307XG4gIH1cblxuICBmdW5jdGlvbiBwdWJsaXNoTGFuZ3VhZ2UobGFuZzogSnNpaUxhbmd1YWdlKTogYm9vbGVhbiB7XG4gICAgLy8gbGFuZ3Mgbm90IHNwZWNpZmllZCA9PT0gYWxsIGxhbmd1YWdlcyBwdWJsaXNoZWRcbiAgICBpZiAoIWxhbmdzKSB7IHJldHVybiB0cnVlOyB9XG4gICAgaWYgKGxhbmdzLmluY2x1ZGVzKGxhbmcpKSB7IHJldHVybiB0cnVlOyB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgZnVuY3Rpb24gdXBwZXJDYXNlTmFtZShzdHI6IHN0cmluZykge1xuICAgIGxldCB3b3JkcyA9IHN0ci5zcGxpdCgnLScpO1xuICAgIHdvcmRzID0gd29yZHMubWFwKCh3KSA9PiB3WzBdLnRvVXBwZXJDYXNlKCkgKyB3LnN1YnN0cmluZygxKSk7XG4gICAgcmV0dXJuIHdvcmRzLmpvaW4oJycpO1xuICB9XG5cbiAgZnVuY3Rpb24gY2hhbmdlRGVsaW1pdGVyKHN0cjogc3RyaW5nLCBkZWxpbTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHN0ci5zcGxpdCgnLScpLmpvaW4oZGVsaW0pO1xuICB9XG59O1xuXG5mdW5jdGlvbiBjcmVhdGVOcG1QdWJsaXNoaW5nRGVmYXVsdHMoKSB7XG4gIHJldHVybiB7XG4gICAgbnBtVHJ1c3RlZFB1Ymxpc2hpbmc6IHRydWUsXG4gICAgcmVsZWFzZUVudmlyb25tZW50OiAncmVsZWFzZScsXG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2RrbGFic1B1Ymxpc2hpbmdQcm9qZWN0T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBTZXQgZGVmYXVsdCBwdWJsaXNoaW5nIHByb3BlcnRpZXMuIFNldHRpbmcgdGhpcyBwcm9wZXJ0eSBndWFyYW50ZWVzXG4gICAqIHRoYXQgeW91ciBwcm9qZWN0IHdpbGwgaGF2ZSByZWFzb25hYmxlIHB1Ymxpc2hpbmcgbmFtZXMuIFlvdSBjYW4gY2hvb3NlXG4gICAqIHRvIG1vZGlmeSB0aGVtIGhvd2V2ZXIgeW91IHdpc2ggd2l0aCB0aGUgdHJhZGl0aW9uYWwgYHB1Ymxpc2hUb1B5cGlgLFxuICAgKiBgcHVibGlzaFRvTWF2ZW5gLCBgcHVibGlzaFRvTnVnZXRgLCBhbmQgYHB1Ymxpc2hUb0dvYCBwcm9wZXJ0aWVzLCBhbmRcbiAgICogeW91ciBjb25maWd1cmF0aW9uIHdpbGwgYmUgcmVzcGVjdGVkLlxuICAgKlxuICAgKiBUaGlzIHNob3VsZCBiZSBzZXQgdG8gZmFsc2Ugb25seSBpZiB5b3UgZG8gbm90IHBsYW4gb24gcmVsZWFzaW5nIHRoZSBwYWNrYWdlLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBjZGtsYWJzUHVibGlzaGluZ0RlZmF1bHRzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogU3BlY2lmeSBzcGVjaWZpYyBsYW5ndWFnZXMgdG8gcHVibGlzaCB0by4gVGhpcyBjYW4gYmUgdXNlZCB3aGVuIHRoZSBsaWJyYXJ5XG4gICAqIGlzIGV4cGVyaW1lbnRhbCBvbmx5LCBiZWNhdXNlIHN0YWJsZSBsaWJyYXJpZXMgbXVzdCBwdWJsaXNoIHRvIGFsbCBqc2lpIGxhbmd1YWdlcy5cbiAgICogVGhpcyBzaG91bGQgYmUgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGBjZGtsYWJzUHVibGlzaGluZ0RlZmF1bHRzOiB0cnVlYDsgb3RoZXJ3aXNlXG4gICAqIGl0IGlzIGEgbm8tb3AuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gYWxsIGpzaWkgdGFyZ2V0IGxhbmd1YWdlc1xuICAgKi9cbiAgcmVhZG9ubHkganNpaVRhcmdldExhbmd1YWdlcz86IEpzaWlMYW5ndWFnZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENka2xhYnNDb25zdHJ1Y3RMaWJyYXJ5T3B0aW9ucyBleHRlbmRzIENka0NvbnN0cnVjdExpYnJhcnlPcHRpb25zLCBDZGtsYWJzUHVibGlzaGluZ1Byb2plY3RPcHRpb25zIHsgfVxuXG4vKipcbiAqIENyZWF0ZSBhIENka2xhYnMgQ29uc3RydWN0IExpYnJhcnkgUHJvamVjdFxuICpcbiAqIEBwamlkIGNka2xhYnMtY29uc3RydWN0LWxpYlxuICovXG5leHBvcnQgY2xhc3MgQ2RrbGFic0NvbnN0cnVjdExpYnJhcnkgZXh0ZW5kcyBDZGtDb25zdHJ1Y3RMaWJyYXJ5IHtcbiAgY29uc3RydWN0b3Iob3B0aW9uczogQ2RrbGFic0NvbnN0cnVjdExpYnJhcnlPcHRpb25zKSB7XG4gICAgY29uc3QgY2RrbGFic1B1Ymxpc2hpbmdEZWZhdWx0UHJvcHM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSAob3B0aW9ucy5jZGtsYWJzUHVibGlzaGluZ0RlZmF1bHRzID8/IHRydWUpID9cbiAgICAgIGNyZWF0ZUNka2xhYnNQdWJsaXNoaW5nRGVmYXVsdHMob3B0aW9ucy5uYW1lLCBvcHRpb25zLmpzaWlUYXJnZXRMYW5ndWFnZXMpIDoge307XG5cbiAgICAvLyB0aGUgbGVmdG1vc3Qgb2JqZWN0IGlzIG11dGF0ZWQgYW5kIHJldHVybmVkIGJ5IGRlZXBNZXJnZVxuICAgIGNvbnN0IG1lcmdlZE9wdGlvbnMgPSBkZWVwTWVyZ2UoW1xuICAgICAge30sXG4gICAgICBjZGtsYWJzRGVmYXVsdFByb3BzLFxuICAgICAgY2RrbGFic1B1Ymxpc2hpbmdEZWZhdWx0UHJvcHMsXG4gICAgICBvcHRpb25zLFxuICAgICAgY2RrbGFic0ZvcmNlZFByb3BzLFxuICAgIF0pIGFzIENka0NvbnN0cnVjdExpYnJhcnlPcHRpb25zO1xuXG4gICAgc3VwZXIobWVyZ2VkT3B0aW9ucyk7XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBDZGtsYWJzVHlwZVNjcmlwdFByb2plY3RPcHRpb25zIGV4dGVuZHMgQ2RrVHlwZVNjcmlwdFByb2plY3RPcHRpb25zIHsgfVxuXG4vKipcbiAqIENyZWF0ZSBhIENka2xhYnMgVHlwZVNjcmlwdCBQcm9qZWN0XG4gKlxuICogQHBqaWQgY2RrbGFicy10cy1wcm9qXG4gKi9cbmV4cG9ydCBjbGFzcyBDZGtsYWJzVHlwZVNjcmlwdFByb2plY3QgZXh0ZW5kcyBDZGtUeXBlU2NyaXB0UHJvamVjdCB7XG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IENka2xhYnNUeXBlU2NyaXB0UHJvamVjdE9wdGlvbnMpIHtcbiAgICAvLyB0aGUgbGVmdG1vc3Qgb2JqZWN0IGlzIG11dGF0ZWQgYW5kIHJldHVybmVkIGJ5IGRlZXBNZXJnZVxuICAgIGNvbnN0IG1lcmdlZE9wdGlvbnMgPSBkZWVwTWVyZ2UoW1xuICAgICAge30sXG4gICAgICBjZGtsYWJzRGVmYXVsdFByb3BzLFxuICAgICAgY3JlYXRlTnBtUHVibGlzaGluZ0RlZmF1bHRzKCksXG4gICAgICBvcHRpb25zLFxuICAgICAgY2RrbGFic0ZvcmNlZFByb3BzLFxuICAgIF0pIGFzIENka0NvbnN0cnVjdExpYnJhcnlPcHRpb25zO1xuXG4gICAgc3VwZXIobWVyZ2VkT3B0aW9ucyk7XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBDZGtsYWJzSnNpaVByb2plY3RPcHRpb25zIGV4dGVuZHMgQ2RrSnNpaVByb2plY3RPcHRpb25zLCBDZGtsYWJzUHVibGlzaGluZ1Byb2plY3RPcHRpb25zIHsgfVxuXG4vKipcbiAqIENyZWF0ZSBhIENka2xhYnMgSnNpaSBQcm9qZWN0XG4gKlxuICogQHBqaWQgY2RrbGFicy1qc2lpLXByb2pcbiAqL1xuZXhwb3J0IGNsYXNzIENka2xhYnNKc2lpUHJvamVjdCBleHRlbmRzIENka0pzaWlQcm9qZWN0IHtcbiAgY29uc3RydWN0b3Iob3B0aW9uczogQ2RrbGFic0pzaWlQcm9qZWN0T3B0aW9ucykge1xuICAgIGNvbnN0IGNka2xhYnNQdWJsaXNoaW5nRGVmYXVsdFByb3BzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0gKG9wdGlvbnMuY2RrbGFic1B1Ymxpc2hpbmdEZWZhdWx0cyA/PyB0cnVlKSA/XG4gICAgICBjcmVhdGVDZGtsYWJzUHVibGlzaGluZ0RlZmF1bHRzKG9wdGlvbnMubmFtZSwgb3B0aW9ucy5qc2lpVGFyZ2V0TGFuZ3VhZ2VzKSA6IHt9O1xuICAgIC8vIHRoZSBsZWZ0bW9zdCBvYmplY3QgaXMgbXV0YXRlZCBhbmQgcmV0dXJuZWQgYnkgZGVlcE1lcmdlXG4gICAgY29uc3QgbWVyZ2VkT3B0aW9ucyA9IGRlZXBNZXJnZShbXG4gICAgICB7fSxcbiAgICAgIGNka2xhYnNEZWZhdWx0UHJvcHMsXG4gICAgICBjZGtsYWJzUHVibGlzaGluZ0RlZmF1bHRQcm9wcyxcbiAgICAgIG9wdGlvbnMsXG4gICAgICBjZGtsYWJzRm9yY2VkUHJvcHMsXG4gICAgXSkgYXMgQ2RrbGFic0pzaWlQcm9qZWN0T3B0aW9ucztcblxuICAgIHN1cGVyKG1lcmdlZE9wdGlvbnMpO1xuICB9XG59XG4iXX0=
|
package/lib/common-options.js
CHANGED
|
@@ -62,7 +62,7 @@ function configureCommonComponents(project, opts) {
|
|
|
62
62
|
});
|
|
63
63
|
}
|
|
64
64
|
if (opts.upgradeCdklabsProjenProjectTypes) {
|
|
65
|
-
new upgrade_cdklabs_projen_project_types_1.UpgradeCdklabsProjenProjectTypes(project);
|
|
65
|
+
new upgrade_cdklabs_projen_project_types_1.UpgradeCdklabsProjenProjectTypes(project, opts.depsUpgradeOptions);
|
|
66
66
|
}
|
|
67
67
|
if (opts.upgradeRuntimeDepsAsFix) {
|
|
68
68
|
const exclude = opts.upgradeCdklabsProjenProjectTypes ? upgrade_cdklabs_projen_project_types_1.UpgradeCdklabsProjenProjectTypes.deps : [];
|
|
@@ -112,4 +112,4 @@ function automationUserForOrg(tenancy) {
|
|
|
112
112
|
return 'cdklabs-automation';
|
|
113
113
|
}
|
|
114
114
|
}
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLW9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY29tbW9uLW9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBd0JBLDhEQXlDQztBQUVELDhEQTREQztBQS9IRCxtQ0FBd0U7QUFDeEUsMENBQTRDO0FBRTVDLHVDQUFvQztBQUNwQyxxREFBa0Q7QUFDbEQsaUdBQTBGO0FBRTFGLElBQVksVUFHWDtBQUhELFdBQVksVUFBVTtJQUNwQixpQ0FBbUIsQ0FBQTtJQUNuQix5QkFBVyxDQUFBO0FBQ2IsQ0FBQyxFQUhXLFVBQVUsMEJBQVYsVUFBVSxRQUdyQjtBQWNELFNBQWdCLHlCQUF5QixDQUEyQixPQUFVO0lBQzVFLE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDO0lBQzFDLE1BQU0saUJBQWlCLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixJQUFJLFNBQVMsQ0FBQztJQUNqRSxNQUFNLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyxrQkFBa0IsSUFBSTtRQUN2RCxpQkFBaUIsRUFBRSxlQUFNLENBQUMsaUJBQWlCLENBQUMsdUJBQXVCLENBQUMsRUFBRSxNQUFNLEVBQUUscUJBQXFCLEVBQUUsQ0FBQztLQUN2RyxDQUFDO0lBQ0YsTUFBTSxhQUFhLEdBQXlCO1FBQzFDLE9BQU8sRUFBRSxDQUFDLGlCQUFpQjtLQUM1QixDQUFDO0lBQ0YsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsbUJBQVUsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxtQkFBVSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNuSCxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FB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QUFDO1FBQ2hCLEtBQUssVUFBVSxDQUFDLEdBQUc7WUFDakIsT0FBTyxvQkFBb0IsQ0FBQztRQUM5QixLQUFLLFVBQVUsQ0FBQyxPQUFPLENBQUM7UUFDeEI7WUFDRSxPQUFPLG9CQUFvQixDQUFDO0lBQ2hDLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVwZW5kZW5jeVR5cGUsIGdpdGh1YiwgamF2YXNjcmlwdCwgdHlwZXNjcmlwdCB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBkZWVwTWVyZ2UgfSBmcm9tICdwcm9qZW4vbGliL3V0aWwnO1xuaW1wb3J0IHsgQ2RrQ29tbW9uT3B0aW9ucyB9IGZyb20gJy4vY2RrLWNvbW1vbi1vcHRpb25zJztcbmltcG9ydCB7IFByaXZhdGUgfSBmcm9tICcuL3ByaXZhdGUnO1xuaW1wb3J0IHsgUmV0cnlBdXRvTWVyZ2UgfSBmcm9tICcuL3JldHJ5YXV0b21lcmdlJztcbmltcG9ydCB7IFVwZ3JhZGVDZGtsYWJzUHJvamVuUHJvamVjdFR5cGVzIH0gZnJvbSAnLi91cGdyYWRlLWNka2xhYnMtcHJvamVuLXByb2plY3QtdHlwZXMnO1xuXG5leHBvcnQgZW51bSBPcmdUZW5hbmN5IHtcbiAgQ0RLTEFCUyA9ICdjZGtsYWJzJyxcbiAgQVdTID0gJ2F3cycsXG59XG5cbnR5cGUgUHJvamVjdE9wdGlvbnMgPSBDZGtDb21tb25PcHRpb25zICYgdHlwZXNjcmlwdC5UeXBlU2NyaXB0UHJvamVjdE9wdGlvbnM7XG50eXBlIENvbmZpZ3VyZWRUeXBlU2NyaXB0T3B0aW9ucyA9IFBpY2s8dHlwZXNjcmlwdC5UeXBlU2NyaXB0UHJvamVjdE9wdGlvbnMsXG58ICdnaXRodWJPcHRpb25zJ1xufCAnbnBtQWNjZXNzJ1xufCAnYXV0b0FwcHJvdmVPcHRpb25zJ1xufCAnYXV0b0FwcHJvdmVVcGdyYWRlcydcbnwgJ2RlcHNVcGdyYWRlJ1xufCAncmVwb3NpdG9yeSdcbnwgJ3dvcmtmbG93Tm9kZVZlcnNpb24nXG4+O1xudHlwZSBDb25maWd1cmVkQ29tbW9uT3B0aW9ucyA9IFJlcXVpcmVkPENka0NvbW1vbk9wdGlvbnMgJkNvbmZpZ3VyZWRUeXBlU2NyaXB0T3B0aW9ucz47XG5cbmV4cG9ydCBmdW5jdGlvbiB3aXRoQ29tbW9uT3B0aW9uc0RlZmF1bHRzPFQgZXh0ZW5kcyBQcm9qZWN0T3B0aW9ucz4ob3B0aW9uczogVCk6IFQgJiBDb25maWd1cmVkQ29tbW9uT3B0aW9ucyB7XG4gIGNvbnN0IGlzUHJpdmF0ZSA9IG9wdGlvbnMucHJpdmF0ZSA/PyB0cnVlO1xuICBjb25zdCBlbmFibGVQUkF1dG9NZXJnZSA9IG9wdGlvbnMuZW5hYmxlUFJBdXRvTWVyZ2UgPz8gaXNQcml2YXRlO1xuICBjb25zdCBnaEF1dG9NZXJnZU9wdGlvbnMgPSBvcHRpb25zLmdoQXV0b01lcmdlT3B0aW9ucyA/PyB7XG4gICAgcHJvamVuQ3JlZGVudGlhbHM6IGdpdGh1Yi5HaXRodWJDcmVkZW50aWFscy5mcm9tUGVyc29uYWxBY2Nlc3NUb2tlbih7IHNlY3JldDogJ1BST0pFTl9HSVRIVUJfVE9LRU4nIH0pLFxuICB9O1xuICBjb25zdCBnaXRodWJPcHRpb25zOiBnaXRodWIuR2l0SHViT3B0aW9ucyA9IHtcbiAgICBtZXJnaWZ5OiAhZW5hYmxlUFJBdXRvTWVyZ2UsXG4gIH07XG4gIGNvbnN0IG5wbUFjY2VzcyA9IG9wdGlvbnMubnBtQWNjZXNzID8/IChpc1ByaXZhdGUgPyBqYXZhc2NyaXB0Lk5wbUFjY2Vzcy5SRVNUUklDVEVEIDogamF2YXNjcmlwdC5OcG1BY2Nlc3MuUFVCTElDKTtcbiAgY29uc3QgdGVuYW5jeSA9IG9wdGlvbnMudGVuYW5jeSA/PyAob3B0aW9ucy5uYW1lLnN0YXJ0c1dpdGgoJ0Bhd3MtY2RrLycpID8gT3JnVGVuYW5jeS5BV1MgOiBPcmdUZW5hbmN5LkNES0xBQlMpO1xuICBjb25zdCBzaG9ydG5hbWUgPSAob3B0aW9ucy5uYW1lLnN0YXJ0c1dpdGgoJ0AnKSAmJiBvcHRpb25zLm5hbWUuc3BsaXQoJy8nKVsxXSkgfHwgb3B0aW9ucy5uYW1lO1xuICBjb25zdCByZXBvc2l0b3J5ID0gb3B0aW9ucy5yZXBvc2l0b3J5ID8/IGBodHRwczovL2dpdGh1Yi5jb20vJHt0ZW5hbmN5fS8ke3Nob3J0bmFtZX0uZ2l0YDtcbiAgY29uc3QgYXV0b0FwcHJvdmVPcHRpb25zID0ge1xuICAgIGFsbG93ZWRVc2VybmFtZXM6IFthdXRvbWF0aW9uVXNlckZvck9yZyh0ZW5hbmN5KSwgJ2RlcGVuZGFib3RbYm90XSddLFxuICAgIHNlY3JldDogJ0dJVEhVQl9UT0tFTicsXG4gIH07XG4gIGNvbnN0IHVwZ3JhZGVSdW50aW1lRGVwc0FzRml4ID0gb3B0aW9ucy51cGdyYWRlUnVudGltZURlcHNBc0ZpeCA/PyB0cnVlO1xuXG4gIGNvbnN0IGNvbW1vbjogQ29uZmlndXJlZENvbW1vbk9wdGlvbnMgPSB7XG4gICAgcHJpdmF0ZTogaXNQcml2YXRlLFxuICAgIGVuYWJsZVBSQXV0b01lcmdlLFxuICAgIGdoQXV0b01lcmdlT3B0aW9ucyxcbiAgICBnaXRodWJPcHRpb25zLFxuICAgIHNldE5vZGVFbmdpbmVWZXJzaW9uOiBvcHRpb25zLnNldE5vZGVFbmdpbmVWZXJzaW9uID8/IHRydWUsXG4gICAgbnBtQWNjZXNzLFxuICAgIHRlbmFuY3ksXG4gICAgYXV0b0FwcHJvdmVPcHRpb25zLFxuICAgIGF1dG9BcHByb3ZlVXBncmFkZXM6IG9wdGlvbnMuYXV0b0FwcHJvdmVVcGdyYWRlcyA/PyB0cnVlLFxuICAgIGRlcHNVcGdyYWRlOiAhdXBncmFkZVJ1bnRpbWVEZXBzQXNGaXgsXG4gICAgdXBncmFkZVJ1bnRpbWVEZXBzQXNGaXgsXG4gICAgcmVwb3NpdG9yeSxcbiAgICB1cGdyYWRlQ2RrbGFic1Byb2plblByb2plY3RUeXBlczpcbiAgICAgIG9wdGlvbnMudXBncmFkZUNka2xhYnNQcm9qZW5Qcm9qZWN0VHlwZXMgPz8gdHJ1ZSxcblxuICAgIC8vIERldmlhdGlvbiBmcm9tIHVwc3RyZWFtIHByb2plbjogdXBzdHJlYW0gcHJvamVuIGRlZmF1bHRzIHRvIG1pbk5vZGVWZXJzaW9uLCBidXQgd2UgaGF2ZSB0b28gbWFueSB3b3JrZmxvd3NcbiAgICAvLyB0aGF0IHVzZSB0b29scyB0aGF0IHdhbnQgYSByZWNlbnQgTm9kZSB2ZXJzaW9uLCBzbyBkZWZhdWx0IHRvIGEgcmVhc29uYWJsZSBmbG9hdGluZyB2ZXJzaW9uLlxuICAgIHdvcmtmbG93Tm9kZVZlcnNpb246IG9wdGlvbnMud29ya2Zsb3dOb2RlVmVyc2lvbiA/PyAnbHRzLyonLFxuICB9O1xuXG4gIHJldHVybiBkZWVwTWVyZ2UoW3t9LCBvcHRpb25zLCBjb21tb25dKSBhcyBUICYgQ29uZmlndXJlZENvbW1vbk9wdGlvbnM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb25maWd1cmVDb21tb25Db21wb25lbnRzKHByb2plY3Q6IHR5cGVzY3JpcHQuVHlwZVNjcmlwdFByb2plY3QsIG9wdHM6IENka0NvbW1vbk9wdGlvbnMgJiBQaWNrPGphdmFzY3JpcHQuTm9kZVByb2plY3RPcHRpb25zLCAnYXV0b0FwcHJvdmVVcGdyYWRlcycgfCAnYXV0b0FwcHJvdmVPcHRpb25zJyB8ICdkZXBzVXBncmFkZU9wdGlvbnMnPikge1xuICBuZXcgUmV0cnlBdXRvTWVyZ2UocHJvamVjdCk7XG5cbiAgaWYgKG9wdHMucHJpdmF0ZSkge1xuICAgIG5ldyBQcml2YXRlKHByb2plY3QpO1xuICB9XG5cbiAgaWYgKG9wdHMuZW5hYmxlUFJBdXRvTWVyZ2UpIHtcbiAgICBuZXcgZ2l0aHViLk1lcmdlUXVldWUocHJvamVjdCwge1xuICAgICAgYXV0b1F1ZXVlT3B0aW9uczogb3B0cy5naEF1dG9NZXJnZU9wdGlvbnMsXG4gICAgfSk7XG4gIH1cblxuICBpZiAob3B0cy51cGdyYWRlQ2RrbGFic1Byb2plblByb2plY3RUeXBlcykge1xuICAgIG5ldyBVcGdyYWRlQ2RrbGFic1Byb2plblByb2plY3RUeXBlcyhwcm9qZWN0KTtcbiAgfVxuXG4gIGlmIChvcHRzLnVwZ3JhZGVSdW50aW1lRGVwc0FzRml4KSB7XG4gICAgY29uc3QgZXhjbHVkZSA9IG9wdHMudXBncmFkZUNka2xhYnNQcm9qZW5Qcm9qZWN0VHlwZXMgPyBVcGdyYWRlQ2RrbGFic1Byb2plblByb2plY3RUeXBlcy5kZXBzIDogW107XG4gICAgY29uc3QgbGFiZWxzID0gb3B0cy5hdXRvQXBwcm92ZVVwZ3JhZGVzID8gW29wdHMuYXV0b0FwcHJvdmVPcHRpb25zPy5sYWJlbCA/PyAnYXV0by1hcHByb3ZlJ10gOiBbXTtcblxuICAgIC8vIEdldCBicmFuY2ggY29uZmlndXJhdGlvbiBmcm9tIGRlcHNVcGdyYWRlT3B0aW9ucyBpZiBhdmFpbGFibGVcbiAgICBjb25zdCB3b3JrZmxvd09wdGlvbnMgPSAoY3Jvbjogc3RyaW5nKSA9PiAoe1xuICAgICAgbGFiZWxzLFxuICAgICAgc2NoZWR1bGU6IGphdmFzY3JpcHQuVXBncmFkZURlcGVuZGVuY2llc1NjaGVkdWxlLmV4cHJlc3Npb25zKFtjcm9uXSksXG4gICAgICAuLi4ob3B0cy5kZXBzVXBncmFkZU9wdGlvbnM/LndvcmtmbG93T3B0aW9ucyA/PyB7fSksXG4gICAgfSk7XG5cbiAgICBuZXcgamF2YXNjcmlwdC5VcGdyYWRlRGVwZW5kZW5jaWVzKHByb2plY3QsIHtcbiAgICAgIHRhc2tOYW1lOiAndXBncmFkZScsXG4gICAgICAvLyBOT1RFOiB3ZSBleHBsaWNpdGx5IGRvIE5PVCB1cGdyYWRlIFBFRVIgZGVwZW5kZW5jaWVzLiBXZSB3YW50IHRoZSB3aWRlc3QgcmFuZ2Ugb2YgY29tcGF0aWJpbGl0eSBwb3NzaWJsZSxcbiAgICAgIC8vIGFuZCBieSBidW1waW5nIHBlZXIgZGVwZW5kZW5jaWVzIHdlIGZvcmNlIHRoZSBjdXN0b21lciB0byBhbHNvIHVubmVjZXNzYXJpbHkgdXBncmFkZSwgd2hpY2ggdGhleSBtYXkgbm90IHdhbnRcbiAgICAgIC8vIHRvIGRvLiBOZXZlciBtaW5kIHRoYXQgcGVlckRlcGVuZGVuY2llcyBhcmUgdXN1YWxseSBhbHNvIGRldkRlcGVuZGVuY2llcywgc28gaXQgZG9lc24ndCBtYWtlIHNlbnNlIHRvIHVwZ3JhZGVcbiAgICAgIC8vIHRoZW0gd2l0aG91dCBhbHNvIHVwZ3JhZGluZyBkZXZEZXBlbmRlbmNpZXMuXG4gICAgICB0eXBlczogW0RlcGVuZGVuY3lUeXBlLlJVTlRJTUUsIERlcGVuZGVuY3lUeXBlLkJVTkRMRURdLFxuICAgICAgZXhjbHVkZSxcbiAgICAgIHNlbWFudGljQ29tbWl0OiAnZml4JyxcbiAgICAgIC8vIFJ1biBhdCAxODowMFogZXZlcnkgTW9uZGF5XG4gICAgICB3b3JrZmxvd09wdGlvbnM6IHdvcmtmbG93T3B0aW9ucygnMCAxOCAqICogMScpLFxuICAgIH0pO1xuXG4gICAgbmV3IGphdmFzY3JpcHQuVXBncmFkZURlcGVuZGVuY2llcyhwcm9qZWN0LCB7XG4gICAgICB0YXNrTmFtZTogJ3VwZ3JhZGUtZGV2LWRlcHMnLFxuICAgICAgdHlwZXM6IFtEZXBlbmRlbmN5VHlwZS5CVUlMRCwgRGVwZW5kZW5jeVR5cGUuREVWRU5WLCBEZXBlbmRlbmN5VHlwZS5URVNUXSxcbiAgICAgIGV4Y2x1ZGUsXG4gICAgICBzZW1hbnRpY0NvbW1pdDogJ2Nob3JlJyxcbiAgICAgIHB1bGxSZXF1ZXN0VGl0bGU6ICd1cGdyYWRlIGRldiBkZXBlbmRlbmNpZXMnLFxuICAgICAgLy8gUnVuIGF0IDIyOjAwWiBldmVyeSBNb25kYXksIHRoaXMgaXMgZGVsaWJlcmF0ZWx5IGFmdGVyIHByb2QgdXBkYXRlcyB0byBhdm9pZCBjb25mbGljdHNcbiAgICAgIHdvcmtmbG93T3B0aW9uczogd29ya2Zsb3dPcHRpb25zKCcwIDIyICogKiAxJyksXG4gICAgfSk7XG4gIH1cblxuICBpZiAob3B0cy5zZXROb2RlRW5naW5lVmVyc2lvbiA9PT0gZmFsc2UpIHtcbiAgICBwcm9qZWN0LnBhY2thZ2UuZmlsZS5hZGRPdmVycmlkZSgnZW5naW5lcy5ub2RlJywgdW5kZWZpbmVkKTtcbiAgfVxuXG4gIC8vIElmIGNka2xhYnMtcHJvamVuLXByb2plY3QtdHlwZXMgaXMgbm90IGFkZGVkIGV4cGxpY2l0bHksIGFkZCBpdCBub3dcbiAgaWYgKCFwcm9qZWN0LmRlcHMuYWxsLnNvbWUoZGVwID0+IGRlcC5uYW1lID09PSAnY2RrbGFicy1wcm9qZW4tcHJvamVjdC10eXBlcycpKSB7XG4gICAgcHJvamVjdC5hZGREZXZEZXBzKCdjZGtsYWJzLXByb2plbi1wcm9qZWN0LXR5cGVzJyk7XG4gIH1cbn1cblxuZnVuY3Rpb24gYXV0b21hdGlvblVzZXJGb3JPcmcodGVuYW5jeTogT3JnVGVuYW5jeSkge1xuICBzd2l0Y2ggKHRlbmFuY3kpIHtcbiAgICBjYXNlIE9yZ1RlbmFuY3kuQVdTOlxuICAgICAgcmV0dXJuICdhd3MtY2RrLWF1dG9tYXRpb24nO1xuICAgIGNhc2UgT3JnVGVuYW5jeS5DREtMQUJTOlxuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gJ2Nka2xhYnMtYXV0b21hdGlvbic7XG4gIH1cbn1cbiJdfQ==
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLW9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY29tbW9uLW9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBd0JBLDhEQXlDQztBQUVELDhEQTREQztBQS9IRCxtQ0FBd0U7QUFDeEUsMENBQTRDO0FBRTVDLHVDQUFvQztBQUNwQyxxREFBa0Q7QUFDbEQsaUdBQTBGO0FBRTFGLElBQVksVUFHWDtBQUhELFdBQVksVUFBVTtJQUNwQixpQ0FBbUIsQ0FBQTtJQUNuQix5QkFBVyxDQUFBO0FBQ2IsQ0FBQyxFQUhXLFVBQVUsMEJBQVYsVUFBVSxRQUdyQjtBQWNELFNBQWdCLHlCQUF5QixDQUEyQixPQUFVO0lBQzVFLE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDO0lBQzFDLE1BQU0saUJBQWlCLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixJQUFJLFNBQVMsQ0FBQztJQUNqRSxNQUFNLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyxrQkFBa0IsSUFBSTtRQUN2RCxpQkFBaUIsRUFBRSxlQUFNLENBQUMsaUJBQWlCLENBQUMsdUJBQXVCLENBQUMsRUFBRSxNQUFNLEVBQUUscUJBQXFCLEVBQUUsQ0FBQztLQUN2RyxDQUFDO0lBQ0YsTUFBTSxhQUFhLEdBQXlCO1FBQzFDLE9BQU8sRUFBRSxDQUFDLGlCQUFpQjtLQUM1QixDQUFDO0lBQ0YsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsbUJBQVUsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxtQkFBVSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNuSCxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FB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SUFDL0MsUUFBUSxPQUFPLEVBQUUsQ0FBQztRQUNoQixLQUFLLFVBQVUsQ0FBQyxHQUFHO1lBQ2pCLE9BQU8sb0JBQW9CLENBQUM7UUFDOUIsS0FBSyxVQUFVLENBQUMsT0FBTyxDQUFDO1FBQ3hCO1lBQ0UsT0FBTyxvQkFBb0IsQ0FBQztJQUNoQyxDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlcGVuZGVuY3lUeXBlLCBnaXRodWIsIGphdmFzY3JpcHQsIHR5cGVzY3JpcHQgfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHsgZGVlcE1lcmdlIH0gZnJvbSAncHJvamVuL2xpYi91dGlsJztcbmltcG9ydCB7IENka0NvbW1vbk9wdGlvbnMgfSBmcm9tICcuL2Nkay1jb21tb24tb3B0aW9ucyc7XG5pbXBvcnQgeyBQcml2YXRlIH0gZnJvbSAnLi9wcml2YXRlJztcbmltcG9ydCB7IFJldHJ5QXV0b01lcmdlIH0gZnJvbSAnLi9yZXRyeWF1dG9tZXJnZSc7XG5pbXBvcnQgeyBVcGdyYWRlQ2RrbGFic1Byb2plblByb2plY3RUeXBlcyB9IGZyb20gJy4vdXBncmFkZS1jZGtsYWJzLXByb2plbi1wcm9qZWN0LXR5cGVzJztcblxuZXhwb3J0IGVudW0gT3JnVGVuYW5jeSB7XG4gIENES0xBQlMgPSAnY2RrbGFicycsXG4gIEFXUyA9ICdhd3MnLFxufVxuXG50eXBlIFByb2plY3RPcHRpb25zID0gQ2RrQ29tbW9uT3B0aW9ucyAmIHR5cGVzY3JpcHQuVHlwZVNjcmlwdFByb2plY3RPcHRpb25zO1xudHlwZSBDb25maWd1cmVkVHlwZVNjcmlwdE9wdGlvbnMgPSBQaWNrPHR5cGVzY3JpcHQuVHlwZVNjcmlwdFByb2plY3RPcHRpb25zLFxufCAnZ2l0aHViT3B0aW9ucydcbnwgJ25wbUFjY2VzcydcbnwgJ2F1dG9BcHByb3ZlT3B0aW9ucydcbnwgJ2F1dG9BcHByb3ZlVXBncmFkZXMnXG58ICdkZXBzVXBncmFkZSdcbnwgJ3JlcG9zaXRvcnknXG58ICd3b3JrZmxvd05vZGVWZXJzaW9uJ1xuPjtcbnR5cGUgQ29uZmlndXJlZENvbW1vbk9wdGlvbnMgPSBSZXF1aXJlZDxDZGtDb21tb25PcHRpb25zICZDb25maWd1cmVkVHlwZVNjcmlwdE9wdGlvbnM+O1xuXG5leHBvcnQgZnVuY3Rpb24gd2l0aENvbW1vbk9wdGlvbnNEZWZhdWx0czxUIGV4dGVuZHMgUHJvamVjdE9wdGlvbnM+KG9wdGlvbnM6IFQpOiBUICYgQ29uZmlndXJlZENvbW1vbk9wdGlvbnMge1xuICBjb25zdCBpc1ByaXZhdGUgPSBvcHRpb25zLnByaXZhdGUgPz8gdHJ1ZTtcbiAgY29uc3QgZW5hYmxlUFJBdXRvTWVyZ2UgPSBvcHRpb25zLmVuYWJsZVBSQXV0b01lcmdlID8/IGlzUHJpdmF0ZTtcbiAgY29uc3QgZ2hBdXRvTWVyZ2VPcHRpb25zID0gb3B0aW9ucy5naEF1dG9NZXJnZU9wdGlvbnMgPz8ge1xuICAgIHByb2plbkNyZWRlbnRpYWxzOiBnaXRodWIuR2l0aHViQ3JlZGVudGlhbHMuZnJvbVBlcnNvbmFsQWNjZXNzVG9rZW4oeyBzZWNyZXQ6ICdQUk9KRU5fR0lUSFVCX1RPS0VOJyB9KSxcbiAgfTtcbiAgY29uc3QgZ2l0aHViT3B0aW9uczogZ2l0aHViLkdpdEh1Yk9wdGlvbnMgPSB7XG4gICAgbWVyZ2lmeTogIWVuYWJsZVBSQXV0b01lcmdlLFxuICB9O1xuICBjb25zdCBucG1BY2Nlc3MgPSBvcHRpb25zLm5wbUFjY2VzcyA/PyAoaXNQcml2YXRlID8gamF2YXNjcmlwdC5OcG1BY2Nlc3MuUkVTVFJJQ1RFRCA6IGphdmFzY3JpcHQuTnBtQWNjZXNzLlBVQkxJQyk7XG4gIGNvbnN0IHRlbmFuY3kgPSBvcHRpb25zLnRlbmFuY3kgPz8gKG9wdGlvbnMubmFtZS5zdGFydHNXaXRoKCdAYXdzLWNkay8nKSA/IE9yZ1RlbmFuY3kuQVdTIDogT3JnVGVuYW5jeS5DREtMQUJTKTtcbiAgY29uc3Qgc2hvcnRuYW1lID0gKG9wdGlvbnMubmFtZS5zdGFydHNXaXRoKCdAJykgJiYgb3B0aW9ucy5uYW1lLnNwbGl0KCcvJylbMV0pIHx8IG9wdGlvbnMubmFtZTtcbiAgY29uc3QgcmVwb3NpdG9yeSA9IG9wdGlvbnMucmVwb3NpdG9yeSA/PyBgaHR0cHM6Ly9naXRodWIuY29tLyR7dGVuYW5jeX0vJHtzaG9ydG5hbWV9LmdpdGA7XG4gIGNvbnN0IGF1dG9BcHByb3ZlT3B0aW9ucyA9IHtcbiAgICBhbGxvd2VkVXNlcm5hbWVzOiBbYXV0b21hdGlvblVzZXJGb3JPcmcodGVuYW5jeSksICdkZXBlbmRhYm90W2JvdF0nXSxcbiAgICBzZWNyZXQ6ICdHSVRIVUJfVE9LRU4nLFxuICB9O1xuICBjb25zdCB1cGdyYWRlUnVudGltZURlcHNBc0ZpeCA9IG9wdGlvbnMudXBncmFkZVJ1bnRpbWVEZXBzQXNGaXggPz8gdHJ1ZTtcblxuICBjb25zdCBjb21tb246IENvbmZpZ3VyZWRDb21tb25PcHRpb25zID0ge1xuICAgIHByaXZhdGU6IGlzUHJpdmF0ZSxcbiAgICBlbmFibGVQUkF1dG9NZXJnZSxcbiAgICBnaEF1dG9NZXJnZU9wdGlvbnMsXG4gICAgZ2l0aHViT3B0aW9ucyxcbiAgICBzZXROb2RlRW5naW5lVmVyc2lvbjogb3B0aW9ucy5zZXROb2RlRW5naW5lVmVyc2lvbiA/PyB0cnVlLFxuICAgIG5wbUFjY2VzcyxcbiAgICB0ZW5hbmN5LFxuICAgIGF1dG9BcHByb3ZlT3B0aW9ucyxcbiAgICBhdXRvQXBwcm92ZVVwZ3JhZGVzOiBvcHRpb25zLmF1dG9BcHByb3ZlVXBncmFkZXMgPz8gdHJ1ZSxcbiAgICBkZXBzVXBncmFkZTogIXVwZ3JhZGVSdW50aW1lRGVwc0FzRml4LFxuICAgIHVwZ3JhZGVSdW50aW1lRGVwc0FzRml4LFxuICAgIHJlcG9zaXRvcnksXG4gICAgdXBncmFkZUNka2xhYnNQcm9qZW5Qcm9qZWN0VHlwZXM6XG4gICAgICBvcHRpb25zLnVwZ3JhZGVDZGtsYWJzUHJvamVuUHJvamVjdFR5cGVzID8/IHRydWUsXG5cbiAgICAvLyBEZXZpYXRpb24gZnJvbSB1cHN0cmVhbSBwcm9qZW46IHVwc3RyZWFtIHByb2plbiBkZWZhdWx0cyB0byBtaW5Ob2RlVmVyc2lvbiwgYnV0IHdlIGhhdmUgdG9vIG1hbnkgd29ya2Zsb3dzXG4gICAgLy8gdGhhdCB1c2UgdG9vbHMgdGhhdCB3YW50IGEgcmVjZW50IE5vZGUgdmVyc2lvbiwgc28gZGVmYXVsdCB0byBhIHJlYXNvbmFibGUgZmxvYXRpbmcgdmVyc2lvbi5cbiAgICB3b3JrZmxvd05vZGVWZXJzaW9uOiBvcHRpb25zLndvcmtmbG93Tm9kZVZlcnNpb24gPz8gJ2x0cy8qJyxcbiAgfTtcblxuICByZXR1cm4gZGVlcE1lcmdlKFt7fSwgb3B0aW9ucywgY29tbW9uXSkgYXMgVCAmIENvbmZpZ3VyZWRDb21tb25PcHRpb25zO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY29uZmlndXJlQ29tbW9uQ29tcG9uZW50cyhwcm9qZWN0OiB0eXBlc2NyaXB0LlR5cGVTY3JpcHRQcm9qZWN0LCBvcHRzOiBDZGtDb21tb25PcHRpb25zICYgUGljazxqYXZhc2NyaXB0Lk5vZGVQcm9qZWN0T3B0aW9ucywgJ2F1dG9BcHByb3ZlVXBncmFkZXMnIHwgJ2F1dG9BcHByb3ZlT3B0aW9ucycgfCAnZGVwc1VwZ3JhZGVPcHRpb25zJz4pIHtcbiAgbmV3IFJldHJ5QXV0b01lcmdlKHByb2plY3QpO1xuXG4gIGlmIChvcHRzLnByaXZhdGUpIHtcbiAgICBuZXcgUHJpdmF0ZShwcm9qZWN0KTtcbiAgfVxuXG4gIGlmIChvcHRzLmVuYWJsZVBSQXV0b01lcmdlKSB7XG4gICAgbmV3IGdpdGh1Yi5NZXJnZVF1ZXVlKHByb2plY3QsIHtcbiAgICAgIGF1dG9RdWV1ZU9wdGlvbnM6IG9wdHMuZ2hBdXRvTWVyZ2VPcHRpb25zLFxuICAgIH0pO1xuICB9XG5cbiAgaWYgKG9wdHMudXBncmFkZUNka2xhYnNQcm9qZW5Qcm9qZWN0VHlwZXMpIHtcbiAgICBuZXcgVXBncmFkZUNka2xhYnNQcm9qZW5Qcm9qZWN0VHlwZXMocHJvamVjdCwgb3B0cy5kZXBzVXBncmFkZU9wdGlvbnMpO1xuICB9XG5cbiAgaWYgKG9wdHMudXBncmFkZVJ1bnRpbWVEZXBzQXNGaXgpIHtcbiAgICBjb25zdCBleGNsdWRlID0gb3B0cy51cGdyYWRlQ2RrbGFic1Byb2plblByb2plY3RUeXBlcyA/IFVwZ3JhZGVDZGtsYWJzUHJvamVuUHJvamVjdFR5cGVzLmRlcHMgOiBbXTtcbiAgICBjb25zdCBsYWJlbHMgPSBvcHRzLmF1dG9BcHByb3ZlVXBncmFkZXMgPyBbb3B0cy5hdXRvQXBwcm92ZU9wdGlvbnM/LmxhYmVsID8/ICdhdXRvLWFwcHJvdmUnXSA6IFtdO1xuXG4gICAgLy8gR2V0IGJyYW5jaCBjb25maWd1cmF0aW9uIGZyb20gZGVwc1VwZ3JhZGVPcHRpb25zIGlmIGF2YWlsYWJsZVxuICAgIGNvbnN0IHdvcmtmbG93T3B0aW9ucyA9IChjcm9uOiBzdHJpbmcpID0+ICh7XG4gICAgICBsYWJlbHMsXG4gICAgICBzY2hlZHVsZTogamF2YXNjcmlwdC5VcGdyYWRlRGVwZW5kZW5jaWVzU2NoZWR1bGUuZXhwcmVzc2lvbnMoW2Nyb25dKSxcbiAgICAgIC4uLihvcHRzLmRlcHNVcGdyYWRlT3B0aW9ucz8ud29ya2Zsb3dPcHRpb25zID8/IHt9KSxcbiAgICB9KTtcblxuICAgIG5ldyBqYXZhc2NyaXB0LlVwZ3JhZGVEZXBlbmRlbmNpZXMocHJvamVjdCwge1xuICAgICAgdGFza05hbWU6ICd1cGdyYWRlJyxcbiAgICAgIC8vIE5PVEU6IHdlIGV4cGxpY2l0bHkgZG8gTk9UIHVwZ3JhZGUgUEVFUiBkZXBlbmRlbmNpZXMuIFdlIHdhbnQgdGhlIHdpZGVzdCByYW5nZSBvZiBjb21wYXRpYmlsaXR5IHBvc3NpYmxlLFxuICAgICAgLy8gYW5kIGJ5IGJ1bXBpbmcgcGVlciBkZXBlbmRlbmNpZXMgd2UgZm9yY2UgdGhlIGN1c3RvbWVyIHRvIGFsc28gdW5uZWNlc3NhcmlseSB1cGdyYWRlLCB3aGljaCB0aGV5IG1heSBub3Qgd2FudFxuICAgICAgLy8gdG8gZG8uIE5ldmVyIG1pbmQgdGhhdCBwZWVyRGVwZW5kZW5jaWVzIGFyZSB1c3VhbGx5IGFsc28gZGV2RGVwZW5kZW5jaWVzLCBzbyBpdCBkb2Vzbid0IG1ha2Ugc2Vuc2UgdG8gdXBncmFkZVxuICAgICAgLy8gdGhlbSB3aXRob3V0IGFsc28gdXBncmFkaW5nIGRldkRlcGVuZGVuY2llcy5cbiAgICAgIHR5cGVzOiBbRGVwZW5kZW5jeVR5cGUuUlVOVElNRSwgRGVwZW5kZW5jeVR5cGUuQlVORExFRF0sXG4gICAgICBleGNsdWRlLFxuICAgICAgc2VtYW50aWNDb21taXQ6ICdmaXgnLFxuICAgICAgLy8gUnVuIGF0IDE4OjAwWiBldmVyeSBNb25kYXlcbiAgICAgIHdvcmtmbG93T3B0aW9uczogd29ya2Zsb3dPcHRpb25zKCcwIDE4ICogKiAxJyksXG4gICAgfSk7XG5cbiAgICBuZXcgamF2YXNjcmlwdC5VcGdyYWRlRGVwZW5kZW5jaWVzKHByb2plY3QsIHtcbiAgICAgIHRhc2tOYW1lOiAndXBncmFkZS1kZXYtZGVwcycsXG4gICAgICB0eXBlczogW0RlcGVuZGVuY3lUeXBlLkJVSUxELCBEZXBlbmRlbmN5VHlwZS5ERVZFTlYsIERlcGVuZGVuY3lUeXBlLlRFU1RdLFxuICAgICAgZXhjbHVkZSxcbiAgICAgIHNlbWFudGljQ29tbWl0OiAnY2hvcmUnLFxuICAgICAgcHVsbFJlcXVlc3RUaXRsZTogJ3VwZ3JhZGUgZGV2IGRlcGVuZGVuY2llcycsXG4gICAgICAvLyBSdW4gYXQgMjI6MDBaIGV2ZXJ5IE1vbmRheSwgdGhpcyBpcyBkZWxpYmVyYXRlbHkgYWZ0ZXIgcHJvZCB1cGRhdGVzIHRvIGF2b2lkIGNvbmZsaWN0c1xuICAgICAgd29ya2Zsb3dPcHRpb25zOiB3b3JrZmxvd09wdGlvbnMoJzAgMjIgKiAqIDEnKSxcbiAgICB9KTtcbiAgfVxuXG4gIGlmIChvcHRzLnNldE5vZGVFbmdpbmVWZXJzaW9uID09PSBmYWxzZSkge1xuICAgIHByb2plY3QucGFja2FnZS5maWxlLmFkZE92ZXJyaWRlKCdlbmdpbmVzLm5vZGUnLCB1bmRlZmluZWQpO1xuICB9XG5cbiAgLy8gSWYgY2RrbGFicy1wcm9qZW4tcHJvamVjdC10eXBlcyBpcyBub3QgYWRkZWQgZXhwbGljaXRseSwgYWRkIGl0IG5vd1xuICBpZiAoIXByb2plY3QuZGVwcy5hbGwuc29tZShkZXAgPT4gZGVwLm5hbWUgPT09ICdjZGtsYWJzLXByb2plbi1wcm9qZWN0LXR5cGVzJykpIHtcbiAgICBwcm9qZWN0LmFkZERldkRlcHMoJ2Nka2xhYnMtcHJvamVuLXByb2plY3QtdHlwZXMnKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBhdXRvbWF0aW9uVXNlckZvck9yZyh0ZW5hbmN5OiBPcmdUZW5hbmN5KSB7XG4gIHN3aXRjaCAodGVuYW5jeSkge1xuICAgIGNhc2UgT3JnVGVuYW5jeS5BV1M6XG4gICAgICByZXR1cm4gJ2F3cy1jZGstYXV0b21hdGlvbic7XG4gICAgY2FzZSBPcmdUZW5hbmN5LkNES0xBQlM6XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiAnY2RrbGFicy1hdXRvbWF0aW9uJztcbiAgfVxufVxuIl19
|
package/lib/jsii.js
CHANGED
|
@@ -28,5 +28,5 @@ class CdkJsiiProject extends projen_1.cdk.JsiiProject {
|
|
|
28
28
|
}
|
|
29
29
|
exports.CdkJsiiProject = CdkJsiiProject;
|
|
30
30
|
_a = JSII_RTTI_SYMBOL_1;
|
|
31
|
-
CdkJsiiProject[_a] = { fqn: "cdklabs-projen-project-types.CdkJsiiProject", version: "0.3.
|
|
31
|
+
CdkJsiiProject[_a] = { fqn: "cdklabs-projen-project-types.CdkJsiiProject", version: "0.3.13" };
|
|
32
32
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNpaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9qc2lpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsbUNBQTZCO0FBRTdCLHFEQUF3RjtBQUV4Rjs7OztHQUlHO0FBQ0gsTUFBYSxjQUFlLFNBQVEsWUFBRyxDQUFDLFdBQVc7SUFHakQsWUFBWSxPQUE4QjtRQUN4QyxNQUFNLElBQUksR0FBRyxJQUFBLDBDQUF5QixFQUFDO1lBQ3JDLEdBQUcsT0FBTztZQUNWLGtEQUFrRDtZQUNsRCxVQUFVLEVBQUUsT0FBTyxDQUFDLFVBQVUsSUFBSSxPQUFPLENBQUMsYUFBYTtTQUN4RCxDQUFDLENBQUM7UUFDSCxLQUFLLENBQUM7WUFDSixHQUFHLElBQUk7WUFDUCxzREFBc0Q7WUFDdEQsYUFBYSxFQUFFLElBQUksQ0FBQyxVQUFVO1NBQy9CLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUU1QixJQUFBLDBDQUF5QixFQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN4QyxDQUFDOztBQWpCSCx3Q0FrQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjZGsgfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHsgQ2RrSnNpaVByb2plY3RPcHRpb25zIH0gZnJvbSAnLi9jZGstanNpaS1vcHRpb25zJztcbmltcG9ydCB7IGNvbmZpZ3VyZUNvbW1vbkNvbXBvbmVudHMsIHdpdGhDb21tb25PcHRpb25zRGVmYXVsdHMgfSBmcm9tICcuL2NvbW1vbi1vcHRpb25zJztcblxuLyoqXG4gKiBDcmVhdGUgYSBDZGsgSnNpaSBKc2lpIHByb2plY3RcbiAqXG4gKiBAcGppZCBjZGstanNpaS1wcm9qXG4gKi9cbmV4cG9ydCBjbGFzcyBDZGtKc2lpUHJvamVjdCBleHRlbmRzIGNkay5Kc2lpUHJvamVjdCB7XG4gIHB1YmxpYyByZWFkb25seSBwcml2YXRlOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IENka0pzaWlQcm9qZWN0T3B0aW9ucykge1xuICAgIGNvbnN0IG9wdHMgPSB3aXRoQ29tbW9uT3B0aW9uc0RlZmF1bHRzKHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAvLyBhbHNvIGFjY2VwdCB0aGUgZGVwcmVjYXRlZCByZXBvc2l0b3J5VXJsIG9wdGlvblxuICAgICAgcmVwb3NpdG9yeTogb3B0aW9ucy5yZXBvc2l0b3J5ID8/IG9wdGlvbnMucmVwb3NpdG9yeVVybCxcbiAgICB9KTtcbiAgICBzdXBlcih7XG4gICAgICAuLi5vcHRzLFxuICAgICAgLy8gdXBzdHJlYW0gSnNpaVByb2plY3QgdXNlcyBhIGRpZmZlcmVudCBuYW1lIGZvciB0aGlzXG4gICAgICByZXBvc2l0b3J5VXJsOiBvcHRzLnJlcG9zaXRvcnksXG4gICAgfSk7XG4gICAgdGhpcy5wcml2YXRlID0gb3B0cy5wcml2YXRlO1xuXG4gICAgY29uZmlndXJlQ29tbW9uQ29tcG9uZW50cyh0aGlzLCBvcHRzKTtcbiAgfVxufVxuIl19
|
package/lib/rosetta.js
CHANGED
|
@@ -48,5 +48,5 @@ class Rosetta extends projen_1.Component {
|
|
|
48
48
|
}
|
|
49
49
|
exports.Rosetta = Rosetta;
|
|
50
50
|
_a = JSII_RTTI_SYMBOL_1;
|
|
51
|
-
Rosetta[_a] = { fqn: "cdklabs-projen-project-types.Rosetta", version: "0.3.
|
|
51
|
+
Rosetta[_a] = { fqn: "cdklabs-projen-project-types.Rosetta", version: "0.3.13" };
|
|
52
52
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9zZXR0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9yb3NldHRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsbUNBQW9EO0FBa0JwRDs7Ozs7R0FLRztBQUNILE1BQWEsT0FBUSxTQUFRLGtCQUFTO0lBQ3BDLFlBQVksT0FBd0IsRUFBRSxVQUEwQixFQUFFO1FBQ2hFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVmLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDO1FBRXRDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNaLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHVHQUF1RyxDQUFDLENBQUM7UUFDL0gsQ0FBQztRQUVELGFBQWE7UUFDYixNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUM7UUFDeEYsT0FBTyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUUvQixNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFO1lBQ3JELFdBQVcsRUFBRSxzQkFBc0I7WUFDbkMsSUFBSSxFQUFFLHNDQUFzQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxFQUFFO1NBQzlFLENBQUMsQ0FBQztRQUNILE9BQU8sQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzNDLE9BQU8sQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUN4QyxJQUFJLG1CQUFVLENBQUMsT0FBTyxFQUFFLDRCQUE0QixFQUFFO1lBQ3BELFFBQVEsRUFBRTtnQkFDUixxREFBcUQ7Z0JBQ3JELHlDQUF5QztnQkFDekMsVUFBVTtnQkFDVixVQUFVO2dCQUNWLHVCQUF1QjtnQkFDdkIsRUFBRTtnQkFDRiwrQkFBK0I7Z0JBQy9CLCtDQUErQztnQkFDL0MsdUJBQXVCO2dCQUN2QixFQUFFO2dCQUNGLGNBQWM7Z0JBQ2QsS0FBSztnQkFDTCxHQUFHO2FBQ0osQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1NBQ2IsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxDQUFDLFlBQVksQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7O0FBdENILDBCQXVDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgU2FtcGxlRmlsZSwgY2RrIH0gZnJvbSAncHJvamVuJztcblxuZXhwb3J0IGludGVyZmFjZSBSb3NldHRhT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBFbmFibGUgb3IgZGlzYWJsZSBzdHJpY3QgbW9kZS5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgc3RyaWN0PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogU2V0IGFuIGV4cGxpY2l0IHZlcnNpb24gb2Ygcm9zZXR0YS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyB2ZXJzaW9uIGlzIHNldCwgdXNlIGF1dG9tYXRpYyBkZXRlY3Rpb25cbiAgICovXG4gIHJlYWRvbmx5IHZlcnNpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogVGhlIFJvc2V0dGEgY29tcG9uZW50IGFkZHMgYnVpbHRpbiByb3NldHRhIHN1cHBvcnRcbiAqIGZvciBhIGNvbnN0cnVjdCBsaWJyYXJ5LiBTaW5jZSBDb25zdHJ1Y3RIdWIgd2lsbCBydW5cbiAqIHJvc2V0dGEgZm9yIHJlYWwsIHRoaXMganVzdCBhZGRzIGEgY2hlY2sgdG8gdGhlIGJ1aWxkIHRvXG4gKiBlbnN1cmUgdGhhdCByb3NldHRhIHdpbGwgcnVuIHN1Y2Nlc3NmdWxseVxuICovXG5leHBvcnQgY2xhc3MgUm9zZXR0YSBleHRlbmRzIENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IGNkay5Kc2lpUHJvamVjdCwgb3B0aW9uczogUm9zZXR0YU9wdGlvbnMgPSB7fSkge1xuICAgIHN1cGVyKHByb2plY3QpO1xuXG4gICAgY29uc3Qgc3RyaWN0ID0gb3B0aW9ucy5zdHJpY3QgPz8gdHJ1ZTtcblxuICAgIGlmICghc3RyaWN0KSB7XG4gICAgICBwcm9qZWN0LmxvZ2dlci53YXJuKCdSb3NldHRhIGlzIE5PVCBvcGVyYXRpbmcgaW4gc3RyaWN0IG1vZGUuIFdlIGFyZSBnb2luZyB0byBlbmZvcmNlIHRoaXMgc29vbi5cXG5QbGVhc2UgZml4IGFueSBleGFtcGxlcy4nKTtcbiAgICB9XG5cbiAgICAvLyBBZGQgRGV2RGVwXG4gICAgY29uc3Qgcm9zZXR0YURlcCA9IG9wdGlvbnMudmVyc2lvbiA/IGBqc2lpLXJvc2V0dGFAJHtvcHRpb25zLnZlcnNpb259YCA6ICdqc2lpLXJvc2V0dGEnO1xuICAgIHByb2plY3QuYWRkRGV2RGVwcyhyb3NldHRhRGVwKTtcblxuICAgIGNvbnN0IHJvc2V0dGFUYXNrID0gcHJvamVjdC5hZGRUYXNrKCdyb3NldHRhOmV4dHJhY3QnLCB7XG4gICAgICBkZXNjcmlwdGlvbjogJ1Rlc3Qgcm9zZXR0YSBleHRyYWN0JyxcbiAgICAgIGV4ZWM6IGB5YXJuIC0tc2lsZW50IGpzaWktcm9zZXR0YSBleHRyYWN0ICR7c3RyaWN0ID8gJy0tc3RyaWN0JyA6ICcnfWAudHJpbSgpLFxuICAgIH0pO1xuICAgIHByb2plY3QucG9zdENvbXBpbGVUYXNrLnNwYXduKHJvc2V0dGFUYXNrKTtcbiAgICBwcm9qZWN0LmFkZEdpdElnbm9yZSgnLmpzaWkudGFibC5qc29uJyk7XG4gICAgbmV3IFNhbXBsZUZpbGUocHJvamVjdCwgJ3Jvc2V0dGEvZGVmYXVsdC50cy1maXh0dXJlJywge1xuICAgICAgY29udGVudHM6IFtcbiAgICAgICAgJy8vIEZpeHR1cmUgd2l0aCBwYWNrYWdlcyBpbXBvcnRlZCwgYnV0IG5vdGhpbmcgZWxzZScsXG4gICAgICAgIFwiaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XCIsXG4gICAgICAgICdpbXBvcnQgeycsXG4gICAgICAgICcgIFN0YWNrLCcsXG4gICAgICAgIFwifSBmcm9tICdhd3MtY2RrLWxpYic7XCIsXG4gICAgICAgICcnLFxuICAgICAgICAnY2xhc3MgRml4dHVyZSBleHRlbmRzIFN0YWNrIHsnLFxuICAgICAgICAnICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nKSB7JyxcbiAgICAgICAgJyAgICBzdXBlcihzY29wZSwgaWQpOycsXG4gICAgICAgICcnLFxuICAgICAgICAnICAgIC8vLyBoZXJlJyxcbiAgICAgICAgJyAgfScsXG4gICAgICAgICd9JyxcbiAgICAgIF0uam9pbignXFxuJyksXG4gICAgfSk7XG4gICAgcHJvamVjdC5hZGRHaXRJZ25vcmUoJyEvcm9zZXR0YS9kZWZhdWx0LnRzLWZpeHR1cmUnKTtcbiAgfVxufVxuIl19
|
|
@@ -7,5 +7,5 @@ import { Component, javascript } from 'projen';
|
|
|
7
7
|
export declare class UpgradeCdklabsProjenProjectTypes extends Component {
|
|
8
8
|
readonly project: javascript.NodeProject;
|
|
9
9
|
static deps: string[];
|
|
10
|
-
constructor(project: javascript.NodeProject);
|
|
10
|
+
constructor(project: javascript.NodeProject, depsUpgradeOptions?: javascript.UpgradeDependenciesOptions);
|
|
11
11
|
}
|
|
@@ -8,7 +8,7 @@ const projen_1 = require("projen");
|
|
|
8
8
|
* us to push out updates to all of our projects via this workflow.
|
|
9
9
|
*/
|
|
10
10
|
class UpgradeCdklabsProjenProjectTypes extends projen_1.Component {
|
|
11
|
-
constructor(project) {
|
|
11
|
+
constructor(project, depsUpgradeOptions) {
|
|
12
12
|
super(project, 'UpgradeCdklabsProjenProjectTypes');
|
|
13
13
|
this.project = project;
|
|
14
14
|
const taskName = 'upgrade-cdklabs-projen-project-types';
|
|
@@ -20,6 +20,8 @@ class UpgradeCdklabsProjenProjectTypes extends projen_1.Component {
|
|
|
20
20
|
workflowOptions: {
|
|
21
21
|
labels: ['auto-approve'],
|
|
22
22
|
schedule: projen_1.javascript.UpgradeDependenciesSchedule.NEVER,
|
|
23
|
+
// Inherit branch configuration from depsUpgradeOptions if available
|
|
24
|
+
...(depsUpgradeOptions?.workflowOptions ?? {}),
|
|
23
25
|
},
|
|
24
26
|
});
|
|
25
27
|
for (const workflow of upgrade.workflows) {
|
|
@@ -34,4 +36,4 @@ UpgradeCdklabsProjenProjectTypes.deps = [
|
|
|
34
36
|
'cdklabs-projen-project-types',
|
|
35
37
|
'projen',
|
|
36
38
|
];
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBncmFkZS1jZGtsYWJzLXByb2plbi1wcm9qZWN0LXR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3VwZ3JhZGUtY2RrbGFicy1wcm9qZW4tcHJvamVjdC10eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBMEQ7QUFFMUQ7Ozs7R0FJRztBQUNILE1BQWEsZ0NBQWlDLFNBQVEsa0JBQVM7SUFNN0QsWUFDa0IsT0FBK0IsRUFDL0Msa0JBQTBEO1FBRTFELEtBQUssQ0FBQyxPQUFPLEVBQUUsa0NBQWtDLENBQUMsQ0FBQztRQUhuQyxZQUFPLEdBQVAsT0FBTyxDQUF3QjtRQUsvQyxNQUFNLFFBQVEsR0FBRyxzQ0FBc0MsQ0FBQztRQUV4RCxNQUFNLE9BQU8sR0FBRyxJQUFJLG1CQUFVLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFO1lBQzFELFFBQVE7WUFDUixNQUFNLEVBQUUsUUFBUTtZQUNoQixnQkFBZ0IsRUFBRSxzQ0FBc0M7WUFDeEQsT0FBTyxFQUFFLGdDQUFnQyxDQUFDLElBQUk7WUFDOUMsZUFBZSxFQUFFO2dCQUNmLE1BQU0sRUFBRSxDQUFDLGNBQWMsQ0FBQztnQkFDeEIsUUFBUSxFQUFFLG1CQUFVLENBQUMsMkJBQTJCLENBQUMsS0FBSztnQkFDdEQsb0VBQW9FO2dCQUNwRSxHQUFHLENBQUMsa0JBQWtCLEVBQUUsZUFBZSxJQUFJLEVBQUUsQ0FBQzthQUMvQztTQUNGLENBQUMsQ0FBQztRQUVILEtBQUssTUFBTSxRQUFRLElBQUksT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3pDLDRDQUE0QztZQUM1QyxxR0FBcUc7WUFDckcsUUFBUSxDQUFDLElBQUksRUFBRSxLQUFLLENBQ2xCLGtCQUFTLENBQUMsSUFBSSxDQUFDLDRCQUE0QixFQUFFLGVBQWUsQ0FBQyxFQUM3RCxrQkFBUyxDQUFDLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxDQUMvQyxDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7O0FBbkNILDRFQW9DQztBQW5DZSxxQ0FBSSxHQUFhO0lBQzdCLDhCQUE4QjtJQUM5QixRQUFRO0NBQ1QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSnNvblBhdGNoLCBqYXZhc2NyaXB0IH0gZnJvbSAncHJvamVuJztcblxuLyoqXG4gKiBUaGUgZ29hbCBvZiB0aGlzIHdvcmtmbG93IGlzIHRvIGhhdmUgYSBzZXBhcmF0ZSB3b3JrZmxvdyB0aGF0IF9vbmx5X1xuICogdXBncmFkZXMgdGhlIGNka2xhYnMtcHJvamVuLXByb2plY3QtdHlwZXMgZGVwZW5kZW5jeS4gVGhpcyB3aWxsIGVuYWJsZVxuICogdXMgdG8gcHVzaCBvdXQgdXBkYXRlcyB0byBhbGwgb2Ygb3VyIHByb2plY3RzIHZpYSB0aGlzIHdvcmtmbG93LlxuICovXG5leHBvcnQgY2xhc3MgVXBncmFkZUNka2xhYnNQcm9qZW5Qcm9qZWN0VHlwZXMgZXh0ZW5kcyBDb21wb25lbnQge1xuICBwdWJsaWMgc3RhdGljIGRlcHM6IHN0cmluZ1tdID0gW1xuICAgICdjZGtsYWJzLXByb2plbi1wcm9qZWN0LXR5cGVzJyxcbiAgICAncHJvamVuJyxcbiAgXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgcHJvamVjdDogamF2YXNjcmlwdC5Ob2RlUHJvamVjdCxcbiAgICBkZXBzVXBncmFkZU9wdGlvbnM/OiBqYXZhc2NyaXB0LlVwZ3JhZGVEZXBlbmRlbmNpZXNPcHRpb25zLFxuICApIHtcbiAgICBzdXBlcihwcm9qZWN0LCAnVXBncmFkZUNka2xhYnNQcm9qZW5Qcm9qZWN0VHlwZXMnKTtcblxuICAgIGNvbnN0IHRhc2tOYW1lID0gJ3VwZ3JhZGUtY2RrbGFicy1wcm9qZW4tcHJvamVjdC10eXBlcyc7XG5cbiAgICBjb25zdCB1cGdyYWRlID0gbmV3IGphdmFzY3JpcHQuVXBncmFkZURlcGVuZGVuY2llcyhwcm9qZWN0LCB7XG4gICAgICB0YXNrTmFtZSxcbiAgICAgIHRhcmdldDogJ2xhdGVzdCcsXG4gICAgICBwdWxsUmVxdWVzdFRpdGxlOiAndXBncmFkZSBjZGtsYWJzLXByb2plbi1wcm9qZWN0LXR5cGVzJyxcbiAgICAgIGluY2x1ZGU6IFVwZ3JhZGVDZGtsYWJzUHJvamVuUHJvamVjdFR5cGVzLmRlcHMsXG4gICAgICB3b3JrZmxvd09wdGlvbnM6IHtcbiAgICAgICAgbGFiZWxzOiBbJ2F1dG8tYXBwcm92ZSddLFxuICAgICAgICBzY2hlZHVsZTogamF2YXNjcmlwdC5VcGdyYWRlRGVwZW5kZW5jaWVzU2NoZWR1bGUuTkVWRVIsXG4gICAgICAgIC8vIEluaGVyaXQgYnJhbmNoIGNvbmZpZ3VyYXRpb24gZnJvbSBkZXBzVXBncmFkZU9wdGlvbnMgaWYgYXZhaWxhYmxlXG4gICAgICAgIC4uLihkZXBzVXBncmFkZU9wdGlvbnM/LndvcmtmbG93T3B0aW9ucyA/PyB7fSksXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgZm9yIChjb25zdCB3b3JrZmxvdyBvZiB1cGdyYWRlLndvcmtmbG93cykge1xuICAgICAgLy8gUmVtb3ZlIHRoZSBleHBsaWNpdCB3b3JrZmxvdyBub2RlIHZlcnNpb25cbiAgICAgIC8vIFRoaXMgdXBncmFkZSBuZWVkcyB0byBhbHdheXMgdXNlIHRoZSBsYXRlc3QgTm9kZSB2ZXJzaW9uLCBpbiBjYXNlIHRoZSBtaW5pbXVtIG5vZGUgdmVyc2lvbiBjaGFuZ2VzXG4gICAgICB3b3JrZmxvdy5maWxlPy5wYXRjaChcbiAgICAgICAgSnNvblBhdGNoLnRlc3QoJy9qb2JzL3VwZ3JhZGUvc3RlcHMvMS9uYW1lJywgJ1NldHVwIE5vZGUuanMnKSxcbiAgICAgICAgSnNvblBhdGNoLnJlbW92ZSgnL2pvYnMvdXBncmFkZS9zdGVwcy8xL3dpdGgnKSxcbiAgICAgICk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { javascript, github, IgnoreFileOptions, GitOptions, LoggerOptions, Project, ProjectType, ProjenrcJsonOptions, typescript, SampleReadmeProps, ReleasableCommits, release, RenovatebotOptions, GroupRunnerOptions } from 'projen';
|
|
2
2
|
import { yarn } from '../';
|
|
3
3
|
/**
|
|
4
4
|
* MonorepoOptions
|
|
@@ -16,6 +16,19 @@ export interface MonorepoOptions {
|
|
|
16
16
|
* @default "dist"
|
|
17
17
|
*/
|
|
18
18
|
readonly artifactsDirectory?: string;
|
|
19
|
+
/**
|
|
20
|
+
* Run security audit on dependencies.
|
|
21
|
+
* When enabled, creates an "audit" task that checks for known security vulnerabilities
|
|
22
|
+
* in dependencies. By default, runs during every build and checks for "high" severity
|
|
23
|
+
* vulnerabilities or above in all dependencies (including dev dependencies).
|
|
24
|
+
* @default false
|
|
25
|
+
*/
|
|
26
|
+
readonly auditDeps?: boolean;
|
|
27
|
+
/**
|
|
28
|
+
* Security audit options.
|
|
29
|
+
* @default - default options
|
|
30
|
+
*/
|
|
31
|
+
readonly auditDepsOptions?: javascript.AuditOptions;
|
|
19
32
|
/**
|
|
20
33
|
* Author's e-mail.
|
|
21
34
|
*/
|
|
@@ -38,7 +51,7 @@ export interface MonorepoOptions {
|
|
|
38
51
|
*/
|
|
39
52
|
readonly autoApproveOptions?: github.AutoApproveOptions;
|
|
40
53
|
/**
|
|
41
|
-
* Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if
|
|
54
|
+
* Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configured).
|
|
42
55
|
* Throw if set to true but `autoApproveOptions` are not defined.
|
|
43
56
|
* @default - true
|
|
44
57
|
*/
|
|
@@ -209,7 +222,7 @@ export interface MonorepoOptions {
|
|
|
209
222
|
/**
|
|
210
223
|
* Use tasks and github workflows to handle dependency upgrades.
|
|
211
224
|
* Cannot be used in conjunction with `dependabot`.
|
|
212
|
-
* @default true
|
|
225
|
+
* @default - `true` for root projects, `false` for subprojects
|
|
213
226
|
*/
|
|
214
227
|
readonly depsUpgrade?: boolean;
|
|
215
228
|
/**
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ub3JlcG8tb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy95YXJuL21vbm9yZXBvLW9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8vIH5+IEdlbmVyYXRlZCBieSBwcm9qZW4uIFRvIG1vZGlmeSwgZWRpdCAucHJvamVucmMudHMgYW5kIHJ1biBcIm5weCBwcm9qZW5cIi5cbmltcG9ydCB7IGdpdGh1YiwgamF2YXNjcmlwdCwgSWdub3JlRmlsZU9wdGlvbnMsIEdpdE9wdGlvbnMsIExvZ2dlck9wdGlvbnMsIFByb2plY3QsIFByb2plY3RUeXBlLCBQcm9qZW5yY0pzb25PcHRpb25zLCB0eXBlc2NyaXB0LCBTYW1wbGVSZWFkbWVQcm9wcywgUmVsZWFzYWJsZUNvbW1pdHMsIHJlbGVhc2UsIFJlbm92YXRlYm90T3B0aW9ucywgR3JvdXBSdW5uZXJPcHRpb25zIH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IHlhcm4gfSBmcm9tICcuLi8nO1xuXG4vKipcbiAqIE1vbm9yZXBvT3B0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIE1vbm9yZXBvT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBBbGxvdyB0aGUgcHJvamVjdCB0byBpbmNsdWRlIGBwZWVyRGVwZW5kZW5jaWVzYCBhbmQgYGJ1bmRsZWREZXBlbmRlbmNpZXNgLlxuICAgKiBUaGlzIGlzIG5vcm1hbGx5IG9ubHkgYWxsb3dlZCBmb3IgbGlicmFyaWVzLiBGb3IgYXBwcywgdGhlcmUncyBubyBtZWFuaW5nXG4gICAqIGZvciBzcGVjaWZ5aW5nIHRoZXNlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBhbGxvd0xpYnJhcnlEZXBlbmRlbmNpZXM/OiBib29sZWFuO1xuICAvKipcbiAgICogQSBkaXJlY3Rvcnkgd2hpY2ggd2lsbCBjb250YWluIGJ1aWxkIGFydGlmYWN0cy5cbiAgICogQGRlZmF1bHQgXCJkaXN0XCJcbiAgICovXG4gIHJlYWRvbmx5IGFydGlmYWN0c0RpcmVjdG9yeT86IHN0cmluZztcbiAgLyoqXG4gICAqIEF1dGhvcidzIGUtbWFpbC5cbiAgICovXG4gIHJlYWRvbmx5IGF1dGhvckVtYWlsPzogc3RyaW5nO1xuICAvKipcbiAgICogQXV0aG9yJ3MgbmFtZS5cbiAgICovXG4gIHJlYWRvbmx5IGF1dGhvck5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJcyB0aGUgYXV0aG9yIGFuIG9yZ2FuaXphdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGF1dGhvck9yZ2FuaXphdGlvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBdXRob3IncyBVUkwgLyBXZWJzaXRlLlxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yVXJsPzogc3RyaW5nO1xuICAvKipcbiAgICogRW5hYmxlIGFuZCBjb25maWd1cmUgdGhlICdhdXRvIGFwcHJvdmUnIHdvcmtmbG93LlxuICAgKiBAZGVmYXVsdCAtIGF1dG8gYXBwcm92ZSBpcyBkaXNhYmxlZFxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b0FwcHJvdmVPcHRpb25zPzogZ2l0aHViLkF1dG9BcHByb3ZlT3B0aW9ucztcbiAgLyoqXG4gICAqIEF1dG9tYXRpY2FsbHkgYXBwcm92ZSBkZXBzIHVwZ3JhZGUgUFJzLCBhbGxvd2luZyB0aGVtIHRvIGJlIG1lcmdlZCBieSBtZXJnaWZ5IChpZiBjb25maWd1ZWQpLlxuICAgKiBUaHJvdyBpZiBzZXQgdG8gdHJ1ZSBidXQgYGF1dG9BcHByb3ZlT3B0aW9uc2AgYXJlIG5vdCBkZWZpbmVkLlxuICAgKiBAZGVmYXVsdCAtIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGF1dG9BcHByb3ZlVXBncmFkZXM/OiBib29sZWFuO1xuICAvKipcbiAgICogQXV0b21hdGljYWxseSBhZGQgYWxsIGV4ZWN1dGFibGVzIHVuZGVyIHRoZSBgYmluYCBkaXJlY3RvcnkgdG8geW91ciBgcGFja2FnZS5qc29uYCBmaWxlIHVuZGVyIHRoZSBgYmluYCBzZWN0aW9uLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBhdXRvRGV0ZWN0QmluPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEVuYWJsZSBhdXRvbWF0aWMgbWVyZ2luZyBvbiBHaXRIdWIuXG4gICAqIEhhcyBubyBlZmZlY3QgaWYgYGdpdGh1Yi5tZXJnaWZ5YFxuICAgKiBpcyBzZXQgdG8gZmFsc2UuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGF1dG9NZXJnZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb25maWd1cmUgb3B0aW9ucyBmb3IgYXV0b21hdGljIG1lcmdpbmcgb24gR2l0SHViLlxuICAgKiBIYXMgbm8gZWZmZWN0IGlmXG4gICAqIGBnaXRodWIubWVyZ2lmeWAgb3IgYGF1dG9NZXJnZWAgaXMgc2V0IHRvIGZhbHNlLlxuICAgKiBAZGVmYXVsdCAtIHNlZSBkZWZhdWx0cyBpbiBgQXV0b01lcmdlT3B0aW9uc2BcbiAgICovXG4gIHJlYWRvbmx5IGF1dG9NZXJnZU9wdGlvbnM/OiBnaXRodWIuQXV0b01lcmdlT3B0aW9ucztcbiAgLyoqXG4gICAqIEJpbmFyeSBwcm9ncmFtcyB2ZW5kZWQgd2l0aCB5b3VyIG1vZHVsZS5cbiAgICogWW91IGNhbiB1c2UgdGhpcyBvcHRpb24gdG8gYWRkL2N1c3RvbWl6ZSBob3cgYmluYXJpZXMgYXJlIHJlcHJlc2VudGVkIGluXG4gICAqIHlvdXIgYHBhY2thZ2UuanNvbmAsIGJ1dCB1bmxlc3MgYGF1dG9EZXRlY3RCaW5gIGlzIGBmYWxzZWAsIGV2ZXJ5XG4gICAqIGV4ZWN1dGFibGUgZmlsZSB1bmRlciBgYmluYCB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgYWRkZWQgdG8gdGhpcyBzZWN0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgYmluPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgLyoqXG4gICAqIFNldHVwIEJpb21lLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgYmlvbWU/OiBib29sZWFuO1xuICAvKipcbiAgICogQmlvbWUgb3B0aW9ucy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IGJpb21lT3B0aW9ucz86IGphdmFzY3JpcHQuQmlvbWVPcHRpb25zO1xuICAvKipcbiAgICogVGhlIGVtYWlsIGFkZHJlc3MgdG8gd2hpY2ggaXNzdWVzIHNob3VsZCBiZSByZXBvcnRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGJ1Z3NFbWFpbD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSB1cmwgdG8geW91ciBwcm9qZWN0J3MgaXNzdWUgdHJhY2tlci5cbiAgICovXG4gIHJlYWRvbmx5IGJ1Z3NVcmw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBXaGVuIE54IGlzIGVuYWJsZWQsIGFsd2F5cyBidWlsZCB0aGUgbW9ub3JlcG8gdXNpbmcgTnhcbiAgICogV2lsbCBidWlsZCBwcm9qZWN0cyBpbiBwYXJhbGxlbCBhbmQgY2FuIGltcHJvdmUgYnVpbGQgcGVyZm9ybWFuY2VcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGJ1aWxkV2l0aE54PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERlZmluZSBhIEdpdEh1YiB3b3JrZmxvdyBmb3IgYnVpbGRpbmcgUFJzLlxuICAgKiBAZGVmYXVsdCAtIHRydWUgaWYgbm90IGEgc3VicHJvamVjdFxuICAgKi9cbiAgcmVhZG9ubHkgYnVpbGRXb3JrZmxvdz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBQUiBidWlsZCB3b3JrZmxvdy5cbiAgICovXG4gIHJlYWRvbmx5IGJ1aWxkV29ya2Zsb3dPcHRpb25zPzogamF2YXNjcmlwdC5CdWlsZFdvcmtmbG93T3B0aW9ucztcbiAgLyoqXG4gICAqIEJ1aWxkIHdvcmtmbG93IHRyaWdnZXJzLlxuICAgKiBAZGVmYXVsdCBcInsgcHVsbFJlcXVlc3Q6IHt9LCB3b3JrZmxvd0Rpc3BhdGNoOiB7fSB9XCJcbiAgICogQGRlcHJlY2F0ZWQgLSBVc2UgYGJ1aWxkV29ya2Zsb3dPcHRpb25zLndvcmtmbG93VHJpZ2dlcnNgXG4gICAqL1xuICByZWFkb25seSBidWlsZFdvcmtmbG93VHJpZ2dlcnM/OiBnaXRodWIud29ya2Zsb3dzLlRyaWdnZXJzO1xuICAvKipcbiAgICogVGhlIGBjb21taXQtYW5kLXRhZy12ZXJzaW9uYCBjb21wYXRpYmxlIHBhY2thZ2UgdXNlZCB0byBidW1wIHRoZSBwYWNrYWdlIHZlcnNpb24sIGFzIGEgZGVwZW5kZW5jeSBzdHJpbmcuXG4gICAqIFRoaXMgY2FuIGJlIGFueSBjb21wYXRpYmxlIHBhY2thZ2UgdmVyc2lvbiwgaW5jbHVkaW5nIHRoZSBkZXByZWNhdGVkIGBzdGFuZGFyZC12ZXJzaW9uQDlgLlxuICAgKiBAZGVmYXVsdCAtIEEgcmVjZW50IHZlcnNpb24gb2YgXCJjb21taXQtYW5kLXRhZy12ZXJzaW9uXCJcbiAgICovXG4gIHJlYWRvbmx5IGJ1bXBQYWNrYWdlPzogc3RyaW5nO1xuICAvKipcbiAgICogTGlzdCBvZiBkZXBlbmRlbmNpZXMgdG8gYnVuZGxlIGludG8gdGhpcyBtb2R1bGUuXG4gICAqIFRoZXNlIG1vZHVsZXMgd2lsbCBiZVxuICAgKiBhZGRlZCBib3RoIHRvIHRoZSBgZGVwZW5kZW5jaWVzYCBzZWN0aW9uIGFuZCBgYnVuZGxlZERlcGVuZGVuY2llc2Agc2VjdGlvbiBvZlxuICAgKiB5b3VyIGBwYWNrYWdlLmpzb25gLlxuICAgKlxuICAgKiBUaGUgcmVjb21tZW5kYXRpb24gaXMgdG8gb25seSBzcGVjaWZ5IHRoZSBtb2R1bGUgbmFtZSBoZXJlIChlLmcuXG4gICAqIGBleHByZXNzYCkuIFRoaXMgd2lsbCBiZWhhdmUgc2ltaWxhciB0byBgeWFybiBhZGRgIG9yIGBucG0gaW5zdGFsbGAgaW4gdGhlXG4gICAqIHNlbnNlIHRoYXQgaXQgd2lsbCBhZGQgdGhlIG1vZHVsZSBhcyBhIGRlcGVuZGVuY3kgdG8geW91ciBgcGFja2FnZS5qc29uYFxuICAgKiBmaWxlIHdpdGggdGhlIGxhdGVzdCB2ZXJzaW9uIChgXmApLiBZb3UgY2FuIHNwZWNpZnkgc2VtdmVyIHJlcXVpcmVtZW50cyBpblxuICAgKiB0aGUgc2FtZSBzeW50YXggcGFzc2VkIHRvIGBucG0gaWAgb3IgYHlhcm4gYWRkYCAoZS5nLiBgZXhwcmVzc0BeMmApIGFuZFxuICAgKiB0aGlzIHdpbGwgYmUgd2hhdCB5b3UgYHBhY2thZ2UuanNvbmAgd2lsbCBldmVudHVhbGx5IGluY2x1ZGUuXG4gICAqL1xuICByZWFkb25seSBidW5kbGVkRGVwcz86IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBgQnVuZGxlcmAuXG4gICAqL1xuICByZWFkb25seSBidW5kbGVyT3B0aW9ucz86IGphdmFzY3JpcHQuQnVuZGxlck9wdGlvbnM7XG4gIC8qKlxuICAgKiBUaGUgdmVyc2lvbiBvZiBCdW4gdG8gdXNlIGlmIHVzaW5nIEJ1biBhcyBhIHBhY2thZ2UgbWFuYWdlci5cbiAgICogQGRlZmF1bHQgXCJsYXRlc3RcIlxuICAgKi9cbiAgcmVhZG9ubHkgYnVuVmVyc2lvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIENvbmZpZ3VyZSB3aGljaCBsaWNlbnNlcyBzaG91bGQgYmUgZGVlbWVkIGFjY2VwdGFibGUgZm9yIHVzZSBieSBkZXBlbmRlbmNpZXMuXG4gICAqIFRoaXMgc2V0dGluZyB3aWxsIGNhdXNlIHRoZSBidWlsZCB0byBmYWlsLCBpZiBhbnkgcHJvaGliaXRlZCBvciBub3QgYWxsb3dlZCBsaWNlbnNlcyBhcmVzIGVuY291bnRlcmVkLlxuICAgKiBAZGVmYXVsdCAtIG5vIGxpY2Vuc2UgY2hlY2tzIGFyZSBydW4gZHVyaW5nIHRoZSBidWlsZCBhbmQgYWxsIGxpY2Vuc2VzIHdpbGwgYmUgYWNjZXB0ZWRcbiAgICovXG4gIHJlYWRvbmx5IGNoZWNrTGljZW5zZXM/OiBqYXZhc2NyaXB0LkxpY2Vuc2VDaGVja2VyT3B0aW9ucztcbiAgLyoqXG4gICAqIEFkZCBhIGBjbG9iYmVyYCB0YXNrIHdoaWNoIHJlc2V0cyB0aGUgcmVwbyB0byBvcmlnaW4uXG4gICAqIEBkZWZhdWx0IC0gdHJ1ZSwgYnV0IGZhbHNlIGZvciBzdWJwcm9qZWN0c1xuICAgKi9cbiAgcmVhZG9ubHkgY2xvYmJlcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBucG0gcGFja2FnZXMgdXNpbmcgQVdTIENvZGVBcnRpZmFjdC5cbiAgICogVGhpcyBpcyByZXF1aXJlZCBpZiBwdWJsaXNoaW5nIHBhY2thZ2VzIHRvLCBvciBpbnN0YWxsaW5nIHNjb3BlZCBwYWNrYWdlcyBmcm9tIEFXUyBDb2RlQXJ0aWZhY3RcbiAgICogQGRlZmF1bHQgLSB1bmRlZmluZWRcbiAgICovXG4gIHJlYWRvbmx5IGNvZGVBcnRpZmFjdE9wdGlvbnM/OiBqYXZhc2NyaXB0LkNvZGVBcnRpZmFjdE9wdGlvbnM7XG4gIC8qKlxuICAgKiBEZWZpbmUgYSBHaXRIdWIgd29ya2Zsb3cgc3RlcCBmb3Igc2VuZGluZyBjb2RlIGNvdmVyYWdlIG1ldHJpY3MgdG8gaHR0cHM6Ly9jb2RlY292LmlvLyBVc2VzIGNvZGVjb3YvY29kZWNvdi1hY3Rpb25AdjUgQnkgZGVmYXVsdCwgT0lEQyBhdXRoIGlzIHVzZWQuIEFsdGVybmF0aXZlbHkgYSB0b2tlbiBjYW4gYmUgcHJvdmlkZWQgdmlhIGBjb2RlQ292VG9rZW5TZWNyZXRgLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgY29kZUNvdj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBEZWZpbmUgdGhlIHNlY3JldCBuYW1lIGZvciBhIHNwZWNpZmllZCBodHRwczovL2NvZGVjb3YuaW8vIHRva2VuLlxuICAgKiBAZGVmYXVsdCAtIE9JREMgYXV0aCBpcyB1c2VkXG4gICAqL1xuICByZWFkb25seSBjb2RlQ292VG9rZW5TZWNyZXQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGNvbW1pdCB0aGUgbWFuYWdlZCBmaWxlcyBieSBkZWZhdWx0LlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBjb21taXRHZW5lcmF0ZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogTGljZW5zZSBjb3B5cmlnaHQgb3duZXIuXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdHMgdG8gdGhlIHZhbHVlIG9mIGF1dGhvck5hbWUgb3IgXCJcIiBpZiBgYXV0aG9yTmFtZWAgaXMgdW5kZWZpbmVkLlxuICAgKi9cbiAgcmVhZG9ubHkgY29weXJpZ2h0T3duZXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgY29weXJpZ2h0IHllYXJzIHRvIHB1dCBpbiB0aGUgTElDRU5TRSBmaWxlLlxuICAgKiBAZGVmYXVsdCAtIGN1cnJlbnQgeWVhclxuICAgKi9cbiAgcmVhZG9ubHkgY29weXJpZ2h0UGVyaW9kPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIG1haW4gcmVsZWFzZSBicmFuY2guXG4gICAqIEBkZWZhdWx0IFwibWFpblwiXG4gICAqL1xuICByZWFkb25seSBkZWZhdWx0UmVsZWFzZUJyYW5jaDogc3RyaW5nO1xuICAvKipcbiAgICogVXNlIGRlcGVuZGFib3QgdG8gaGFuZGxlIGRlcGVuZGVuY3kgdXBncmFkZXMuXG4gICAqIENhbm5vdCBiZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggYGRlcHNVcGdyYWRlYC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGRlcGVuZGFib3Q/OiBib29sZWFuO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgZGVwZW5kYWJvdC5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IGRlcGVuZGFib3RPcHRpb25zPzogZ2l0aHViLkRlcGVuZGFib3RPcHRpb25zO1xuICAvKipcbiAgICogUnVudGltZSBkZXBlbmRlbmNpZXMgb2YgdGhpcyBtb2R1bGUuXG4gICAqIFRoZSByZWNvbW1lbmRhdGlvbiBpcyB0byBvbmx5IHNwZWNpZnkgdGhlIG1vZHVsZSBuYW1lIGhlcmUgKGUuZy5cbiAgICogYGV4cHJlc3NgKS4gVGhpcyB3aWxsIGJlaGF2ZSBzaW1pbGFyIHRvIGB5YXJuIGFkZGAgb3IgYG5wbSBpbnN0YWxsYCBpbiB0aGVcbiAgICogc2Vuc2UgdGhhdCBpdCB3aWxsIGFkZCB0aGUgbW9kdWxlIGFzIGEgZGVwZW5kZW5jeSB0byB5b3VyIGBwYWNrYWdlLmpzb25gXG4gICAqIGZpbGUgd2l0aCB0aGUgbGF0ZXN0IHZlcnNpb24gKGBeYCkuIFlvdSBjYW4gc3BlY2lmeSBzZW12ZXIgcmVxdWlyZW1lbnRzIGluXG4gICAqIHRoZSBzYW1lIHN5bnRheCBwYXNzZWQgdG8gYG5wbSBpYCBvciBgeWFybiBhZGRgIChlLmcuIGBleHByZXNzQF4yYCkgYW5kXG4gICAqIHRoaXMgd2lsbCBiZSB3aGF0IHlvdSBgcGFja2FnZS5qc29uYCB3aWxsIGV2ZW50dWFsbHkgaW5jbHVkZS5cbiAgICogQGRlZmF1bHQgW11cbiAgICovXG4gIHJlYWRvbmx5IGRlcHM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogVXNlIHRhc2tzIGFuZCBnaXRodWIgd29ya2Zsb3dzIHRvIGhhbmRsZSBkZXBlbmRlbmN5IHVwZ3JhZGVzLlxuICAgKiBDYW5ub3QgYmUgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGBkZXBlbmRhYm90YC5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVwc1VwZ3JhZGU/OiBib29sZWFuO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgYFVwZ3JhZGVEZXBlbmRlbmNpZXNgLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgZGVwc1VwZ3JhZGVPcHRpb25zPzogamF2YXNjcmlwdC5VcGdyYWRlRGVwZW5kZW5jaWVzT3B0aW9ucztcbiAgLyoqXG4gICAqIFRoZSBkZXNjcmlwdGlvbiBpcyBqdXN0IGEgc3RyaW5nIHRoYXQgaGVscHMgcGVvcGxlIHVuZGVyc3RhbmQgdGhlIHB1cnBvc2Ugb2YgdGhlIHBhY2thZ2UuXG4gICAqIEl0IGNhbiBiZSB1c2VkIHdoZW4gc2VhcmNoaW5nIGZvciBwYWNrYWdlcyBpbiBhIHBhY2thZ2UgbWFuYWdlciBhcyB3ZWxsLlxuICAgKiBTZWUgaHR0cHM6Ly9jbGFzc2ljLnlhcm5wa2cuY29tL2VuL2RvY3MvcGFja2FnZS1qc29uLyN0b2MtZGVzY3JpcHRpb25cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogQWRkIGEgVlNDb2RlIGRldmVsb3BtZW50IGVudmlyb25tZW50ICh1c2VkIGZvciBHaXRIdWIgQ29kZXNwYWNlcykuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBkZXZDb250YWluZXI/OiBib29sZWFuO1xuICAvKipcbiAgICogQnVpbGQgZGVwZW5kZW5jaWVzIGZvciB0aGlzIG1vZHVsZS5cbiAgICogVGhlc2UgZGVwZW5kZW5jaWVzIHdpbGwgb25seSBiZVxuICAgKiBhdmFpbGFibGUgaW4geW91ciBidWlsZCBlbnZpcm9ubWVudCBidXQgd2lsbCBub3QgYmUgZmV0Y2hlZCB3aGVuIHRoaXNcbiAgICogbW9kdWxlIGlzIGNvbnN1bWVkLlxuICAgKlxuICAgKiBUaGUgcmVjb21tZW5kYXRpb24gaXMgdG8gb25seSBzcGVjaWZ5IHRoZSBtb2R1bGUgbmFtZSBoZXJlIChlLmcuXG4gICAqIGBleHByZXNzYCkuIFRoaXMgd2lsbCBiZWhhdmUgc2ltaWxhciB0byBgeWFybiBhZGRgIG9yIGBucG0gaW5zdGFsbGAgaW4gdGhlXG4gICAqIHNlbnNlIHRoYXQgaXQgd2lsbCBhZGQgdGhlIG1vZHVsZSBhcyBhIGRlcGVuZGVuY3kgdG8geW91ciBgcGFja2FnZS5qc29uYFxuICAgKiBmaWxlIHdpdGggdGhlIGxhdGVzdCB2ZXJzaW9uIChgXmApLiBZb3UgY2FuIHNwZWNpZnkgc2VtdmVyIHJlcXVpcmVtZW50cyBpblxuICAgKiB0aGUgc2FtZSBzeW50YXggcGFzc2VkIHRvIGBucG0gaWAgb3IgYHlhcm4gYWRkYCAoZS5nLiBgZXhwcmVzc0BeMmApIGFuZFxuICAgKiB0aGlzIHdpbGwgYmUgd2hhdCB5b3UgYHBhY2thZ2UuanNvbmAgd2lsbCBldmVudHVhbGx5IGluY2x1ZGUuXG4gICAqIEBkZWZhdWx0IFtdXG4gICAqL1xuICByZWFkb25seSBkZXZEZXBzPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIERvIG5vdCBnZW5lcmF0ZSBhIGB0c2NvbmZpZy5qc29uYCBmaWxlICh1c2VkIGJ5IGpzaWkgcHJvamVjdHMgc2luY2UgdHNjb25maWcuanNvbiBpcyBnZW5lcmF0ZWQgYnkgdGhlIGpzaWkgY29tcGlsZXIpLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYWJsZVRzY29uZmlnPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERvIG5vdCBnZW5lcmF0ZSBhIGB0c2NvbmZpZy5kZXYuanNvbmAgZmlsZS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVUc2NvbmZpZ0Rldj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBEb2NnZW4gYnkgVHlwZWRvYy5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGRvY2dlbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBEb2NzIGRpcmVjdG9yeS5cbiAgICogQGRlZmF1bHQgXCJkb2NzXCJcbiAgICovXG4gIHJlYWRvbmx5IGRvY3NEaXJlY3Rvcnk/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBNb2R1bGUgZW50cnlwb2ludCAoYG1haW5gIGluIGBwYWNrYWdlLmpzb25gKS5cbiAgICogU2V0IHRvIGFuIGVtcHR5IHN0cmluZyB0byBub3QgaW5jbHVkZSBgbWFpbmAgaW4geW91ciBwYWNrYWdlLmpzb25cbiAgICogQGRlZmF1bHQgXCJsaWIvaW5kZXguanNcIlxuICAgKi9cbiAgcmVhZG9ubHkgZW50cnlwb2ludD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSAuZC50cyBmaWxlIHRoYXQgaW5jbHVkZXMgdGhlIHR5cGUgZGVjbGFyYXRpb25zIGZvciB0aGlzIG1vZHVsZS5cbiAgICogQGRlZmF1bHQgLSAuZC50cyBmaWxlIGRlcml2ZWQgZnJvbSB0aGUgcHJvamVjdCdzIGVudHJ5cG9pbnQgKHVzdWFsbHkgbGliL2luZGV4LmQudHMpXG4gICAqL1xuICByZWFkb25seSBlbnRyeXBvaW50VHlwZXM/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBFc2xpbnQgb3B0aW9ucy5cbiAgICogQGRlZmF1bHQgLSBvcGluaW9uYXRlZCBkZWZhdWx0IG9wdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IGVzbGludE9wdGlvbnM/OiBqYXZhc2NyaXB0LkVzbGludE9wdGlvbnM7XG4gIC8qKlxuICAgKiBFbmFibGUgR2l0SHViIGludGVncmF0aW9uLlxuICAgKiBFbmFibGVkIGJ5IGRlZmF1bHQgZm9yIHJvb3QgcHJvamVjdHMuIERpc2FibGVkIGZvciBub24tcm9vdCBwcm9qZWN0cy5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0aHViPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIEdpdEh1YiBpbnRlZ3JhdGlvbi5cbiAgICogQGRlZmF1bHQgLSBzZWUgR2l0SHViT3B0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgZ2l0aHViT3B0aW9ucz86IGdpdGh1Yi5HaXRIdWJPcHRpb25zO1xuICAvKipcbiAgICogQWRkaXRpb25hbCBlbnRyaWVzIHRvIC5naXRpZ25vcmUuXG4gICAqL1xuICByZWFkb25seSBnaXRpZ25vcmU/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciAuZ2l0aWdub3JlIGZpbGUuXG4gICAqL1xuICByZWFkb25seSBnaXRJZ25vcmVPcHRpb25zPzogSWdub3JlRmlsZU9wdGlvbnM7XG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIGdpdC5cbiAgICovXG4gIHJlYWRvbmx5IGdpdE9wdGlvbnM/OiBHaXRPcHRpb25zO1xuICAvKipcbiAgICogQWRkIGEgR2l0cG9kIGRldmVsb3BtZW50IGVudmlyb25tZW50LlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0cG9kPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFBhY2thZ2UncyBIb21lcGFnZSAvIFdlYnNpdGUuXG4gICAqL1xuICByZWFkb25seSBob21lcGFnZT86IHN0cmluZztcbiAgLyoqXG4gICAqIFZlcnNpb24gcmVxdWlyZW1lbnQgb2YgYHB1YmxpYmAgd2hpY2ggaXMgdXNlZCB0byBwdWJsaXNoIG1vZHVsZXMgdG8gbnBtLlxuICAgKiBAZGVmYXVsdCBcImxhdGVzdFwiXG4gICAqL1xuICByZWFkb25seSBqc2lpUmVsZWFzZVZlcnNpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBLZXl3b3JkcyB0byBpbmNsdWRlIGluIGBwYWNrYWdlLmpzb25gLlxuICAgKi9cbiAgcmVhZG9ubHkga2V5d29yZHM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogVHlwZXNjcmlwdCAgYXJ0aWZhY3RzIG91dHB1dCBkaXJlY3RvcnkuXG4gICAqIEBkZWZhdWx0IFwibGliXCJcbiAgICovXG4gIHJlYWRvbmx5IGxpYmRpcj86IHN0cmluZztcbiAgLyoqXG4gICAqIExpY2Vuc2UncyBTUERYIGlkZW50aWZpZXIuXG4gICAqIFNlZSBodHRwczovL2dpdGh1Yi5jb20vcHJvamVuL3Byb2plbi90cmVlL21haW4vbGljZW5zZS10ZXh0IGZvciBhIGxpc3Qgb2Ygc3VwcG9ydGVkIGxpY2Vuc2VzLlxuICAgKiBVc2UgdGhlIGBsaWNlbnNlZGAgb3B0aW9uIGlmIHlvdSB3YW50IHRvIG5vIGxpY2Vuc2UgdG8gYmUgc3BlY2lmaWVkLlxuICAgKiBAZGVmYXVsdCBcIkFwYWNoZS0yLjBcIlxuICAgKi9cbiAgcmVhZG9ubHkgbGljZW5zZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiBhIGxpY2Vuc2Ugc2hvdWxkIGJlIGFkZGVkLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBsaWNlbnNlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb25maWd1cmUgbG9nZ2luZyBvcHRpb25zIHN1Y2ggYXMgdmVyYm9zaXR5LlxuICAgKiBAZGVmYXVsdCB7fVxuICAgKi9cbiAgcmVhZG9ubHkgbG9nZ2luZz86IExvZ2dlck9wdGlvbnM7XG4gIC8qKlxuICAgKiBNYWpvciB2ZXJzaW9uIHRvIHJlbGVhc2UgZnJvbSB0aGUgZGVmYXVsdCBicmFuY2guXG4gICAqIElmIHRoaXMgaXMgc3BlY2lmaWVkLCB3ZSBidW1wIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIG1ham9yIHZlcnNpb24gbGluZS5cbiAgICogSWYgbm90IHNwZWNpZmllZCwgd2UgYnVtcCB0aGUgZ2xvYmFsIGxhdGVzdCB2ZXJzaW9uLlxuICAgKiBAZGVmYXVsdCAtIE1ham9yIHZlcnNpb24gaXMgbm90IGVuZm9yY2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgbWFqb3JWZXJzaW9uPzogbnVtYmVyO1xuICAvKipcbiAgICogVGhlIG1heGltdW0gbm9kZSB2ZXJzaW9uIHN1cHBvcnRlZCBieSB0aGlzIHBhY2thZ2UuIE1vc3QgcHJvamVjdHMgc2hvdWxkIG5vdCB1c2UgdGhpcyBvcHRpb24uXG4gICAqIFRoZSB2YWx1ZSBpbmRpY2F0ZXMgdGhhdCB0aGUgcGFja2FnZSBpcyBpbmNvbXBhdGlibGUgd2l0aCBhbnkgbmV3ZXIgdmVyc2lvbnMgb2Ygbm9kZS5cbiAgICogVGhpcyByZXF1aXJlbWVudCBpcyBlbmZvcmNlZCB2aWEgdGhlIGVuZ2luZXMgZmllbGQuXG4gICAqXG4gICAqIFlvdSB3aWxsIG5vcm1hbGx5IG5vdCBuZWVkIHRvIHNldCB0aGlzIG9wdGlvbi5cbiAgICogQ29uc2lkZXIgdGhpcyBvcHRpb24gb25seSBpZiB5b3VyIHBhY2thZ2UgaXMga25vd24gdG8gbm90IGZ1bmN0aW9uIHdpdGggbmV3ZXIgdmVyc2lvbnMgb2Ygbm9kZS5cbiAgICogQGRlZmF1bHQgLSBubyBtYXhpbXVtIHZlcnNpb24gaXMgZW5mb3JjZWRcbiAgICovXG4gIHJlYWRvbmx5IG1heE5vZGVWZXJzaW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogV2hldGhlciBtZXJnaWZ5IHNob3VsZCBiZSBlbmFibGVkIG9uIHRoaXMgcmVwb3NpdG9yeSBvciBub3QuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQGRlcHJlY2F0ZWQgdXNlIGBnaXRodWJPcHRpb25zLm1lcmdpZnlgIGluc3RlYWRcbiAgICovXG4gIHJlYWRvbmx5IG1lcmdpZnk/OiBib29sZWFuO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgbWVyZ2lmeS5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQGRlcHJlY2F0ZWQgdXNlIGBnaXRodWJPcHRpb25zLm1lcmdpZnlPcHRpb25zYCBpbnN0ZWFkXG4gICAqL1xuICByZWFkb25seSBtZXJnaWZ5T3B0aW9ucz86IGdpdGh1Yi5NZXJnaWZ5T3B0aW9ucztcbiAgLyoqXG4gICAqIE1pbmltYWwgTWFqb3IgdmVyc2lvbiB0byByZWxlYXNlLlxuICAgKiBUaGlzIGNhbiBiZSB1c2VmdWwgdG8gc2V0IHRvIDEsIGFzIGJyZWFraW5nIGNoYW5nZXMgYmVmb3JlIHRoZSAxLnggbWFqb3JcbiAgICogcmVsZWFzZSBhcmUgbm90IGluY3JlbWVudGluZyB0aGUgbWFqb3IgdmVyc2lvbiBudW1iZXIuXG4gICAqXG4gICAqIENhbiBub3QgYmUgc2V0IHRvZ2V0aGVyIHdpdGggYG1ham9yVmVyc2lvbmAuXG4gICAqIEBkZWZhdWx0IC0gTm8gbWluaW11bSB2ZXJzaW9uIGlzIGJlaW5nIGVuZm9yY2VkXG4gICAqL1xuICByZWFkb25seSBtaW5NYWpvclZlcnNpb24/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBNaW5pbXVtIE5vZGUuanMgdmVyc2lvbiB0byByZXF1aXJlIHZpYSBwYWNrYWdlLmpzb24gYGVuZ2luZXNgIChpbmNsdXNpdmUpLlxuICAgKlxuICAgKiBPbmx5IHNldCB0aGlzIGlmIHlvdXIgcGFja2FnZSB3aWxsIG5vdCB3b3JrIHByb3Blcmx5IG9uIHNwZWNpZmljIChvbGRlcj8pXG4gICAqIE5vZGUgdmVyc2lvbnMuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gXCJlbmdpbmVzXCIgc3BlY2lmaWVkXG4gICAqL1xuICByZWFkb25seSBtaW5Ob2RlVmVyc2lvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIEF1dG9tYXRpY2FsbHkgdXBkYXRlIGZpbGVzIG1vZGlmaWVkIGR1cmluZyBidWlsZHMgdG8gcHVsbC1yZXF1ZXN0IGJyYW5jaGVzLlxuICAgKiBUaGlzIG1lYW5zXG4gICAqIHRoYXQgYW55IGZpbGVzIHN5bnRoZXNpemVkIGJ5IHByb2plbiBvciBlLmcuIHRlc3Qgc25hcHNob3RzIHdpbGwgYWx3YXlzIGJlIHVwLXRvLWRhdGVcbiAgICogYmVmb3JlIGEgUFIgaXMgbWVyZ2VkLlxuICAgKlxuICAgKiBJbXBsaWVzIHRoYXQgUFIgYnVpbGRzIGRvIG5vdCBoYXZlIGFudGktdGFtcGVyIGNoZWNrcy5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAZGVwcmVjYXRlZCAtIFVzZSBgYnVpbGRXb3JrZmxvd09wdGlvbnMubXV0YWJsZUJ1aWxkYFxuICAgKi9cbiAgcmVhZG9ubHkgbXV0YWJsZUJ1aWxkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoaXMgaXMgdGhlIG5hbWUgb2YgeW91ciBwcm9qZWN0LlxuICAgKiBAZGVmYXVsdCAkQkFTRURJUlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogQSBzaGVsbCBjb21tYW5kIHRvIGNvbnRyb2wgdGhlIG5leHQgdmVyc2lvbiB0byByZWxlYXNlLlxuICAgKiBJZiBwcmVzZW50LCB0aGlzIHNoZWxsIGNvbW1hbmQgd2lsbCBiZSBydW4gYmVmb3JlIHRoZSBidW1wIGlzIGV4ZWN1dGVkLCBhbmRcbiAgICogaXQgZGV0ZXJtaW5lcyB3aGF0IHZlcnNpb24gdG8gcmVsZWFzZS4gSXQgd2lsbCBiZSBleGVjdXRlZCBpbiB0aGUgZm9sbG93aW5nXG4gICAqIGVudmlyb25tZW50OlxuICAgKlxuICAgKiAtIFdvcmtpbmcgZGlyZWN0b3J5OiB0aGUgcHJvamVjdCBkaXJlY3RvcnkuXG4gICAqIC0gYCRWRVJTSU9OYDogdGhlIGN1cnJlbnQgdmVyc2lvbi4gTG9va3MgbGlrZSBgMS4yLjNgLlxuICAgKiAtIGAkTEFURVNUX1RBR2A6IHRoZSBtb3N0IHJlY2VudCB0YWcuIExvb2tzIGxpa2UgYHByZWZpeC12MS4yLjNgLCBvciBtYXkgYmUgdW5zZXQuXG4gICAqIC0gYCRTVUdHRVNURURfQlVNUGA6IHRoZSBzdWdnZXN0ZWQgYnVtcCBhY3Rpb24gYmFzZWQgb24gY29tbWl0cy4gT25lIG9mIGBtYWpvcnxtaW5vcnxwYXRjaHxub25lYC5cbiAgICpcbiAgICogVGhlIGNvbW1hbmQgc2hvdWxkIHByaW50IG9uZSBvZiB0aGUgZm9sbG93aW5nIHRvIGBzdGRvdXRgOlxuICAgKlxuICAgKiAtIE5vdGhpbmc6IHRoZSBuZXh0IHZlcnNpb24gbnVtYmVyIHdpbGwgYmUgZGV0ZXJtaW5lZCBiYXNlZCBvbiBjb21taXQgaGlzdG9yeS5cbiAgICogLSBgeC55LnpgOiB0aGUgbmV4dCB2ZXJzaW9uIG51bWJlciB3aWxsIGJlIGB4LnkuemAuXG4gICAqIC0gYG1ham9yfG1pbm9yfHBhdGNoYDogdGhlIG5leHQgdmVyc2lvbiBudW1iZXIgd2lsbCBiZSB0aGUgY3VycmVudCB2ZXJzaW9uIG51bWJlclxuICAgKiAgIHdpdGggdGhlIGluZGljYXRlZCBjb21wb25lbnQgYnVtcGVkLlxuICAgKlxuICAgKiBUaGlzIHNldHRpbmcgY2Fubm90IGJlIHNwZWNpZmllZCB0b2dldGhlciB3aXRoIGBtaW5NYWpvclZlcnNpb25gOyB0aGUgaW52b2tlZFxuICAgKiBzY3JpcHQgY2FuIGJlIHVzZWQgdG8gYWNoaWV2ZSB0aGUgZWZmZWN0cyBvZiBgbWluTWFqb3JWZXJzaW9uYC5cbiAgICogQGRlZmF1bHQgLSBUaGUgbmV4dCB2ZXJzaW9uIHdpbGwgYmUgZGV0ZXJtaW5lZCBiYXNlZCBvbiB0aGUgY29tbWl0IGhpc3RvcnkgYW5kIHByb2plY3Qgc2V0dGluZ3MuXG4gICAqL1xuICByZWFkb25seSBuZXh0VmVyc2lvbkNvbW1hbmQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBY2Nlc3MgbGV2ZWwgb2YgdGhlIG5wbSBwYWNrYWdlLlxuICAgKiBAZGVmYXVsdCAtIGZvciBzY29wZWQgcGFja2FnZXMgKGUuZy4gYGZvb0BiYXJgKSwgdGhlIGRlZmF1bHQgaXNcbmBOcG1BY2Nlc3MuUkVTVFJJQ1RFRGAsIGZvciBub24tc2NvcGVkIHBhY2thZ2VzLCB0aGUgZGVmYXVsdCBpc1xuYE5wbUFjY2Vzcy5QVUJMSUNgLlxuICAgKi9cbiAgcmVhZG9ubHkgbnBtQWNjZXNzPzogamF2YXNjcmlwdC5OcG1BY2Nlc3M7XG4gIC8qKlxuICAgKiBUaGUgbnBtRGlzdFRhZyB0byB1c2Ugd2hlbiBwdWJsaXNoaW5nIGZyb20gdGhlIGRlZmF1bHQgYnJhbmNoLlxuICAgKiBUbyBzZXQgdGhlIG5wbSBkaXN0LXRhZyBmb3IgcmVsZWFzZSBicmFuY2hlcywgc2V0IHRoZSBgbnBtRGlzdFRhZ2AgcHJvcGVydHlcbiAgICogZm9yIGVhY2ggYnJhbmNoLlxuICAgKiBAZGVmYXVsdCBcImxhdGVzdFwiXG4gICAqL1xuICByZWFkb25seSBucG1EaXN0VGFnPzogc3RyaW5nO1xuICAvKipcbiAgICogQWRkaXRpb25hbCBlbnRyaWVzIHRvIC5ucG1pZ25vcmUuXG4gICAqIEBkZXByZWNhdGVkIC0gdXNlIGBwcm9qZWN0LmFkZFBhY2thZ2VJZ25vcmVgXG4gICAqL1xuICByZWFkb25seSBucG1pZ25vcmU/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogRGVmaW5lcyBhbiAubnBtaWdub3JlIGZpbGUuIE5vcm1hbGx5IHRoaXMgaXMgb25seSBuZWVkZWQgZm9yIGxpYnJhcmllcyB0aGF0IGFyZSBwYWNrYWdlZCBhcyB0YXJiYWxscy5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgbnBtaWdub3JlRW5hYmxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIC5ucG1pZ25vcmUgZmlsZS5cbiAgICovXG4gIHJlYWRvbmx5IG5wbUlnbm9yZU9wdGlvbnM/OiBJZ25vcmVGaWxlT3B0aW9ucztcbiAgLyoqXG4gICAqIFNob3VsZCBwcm92ZW5hbmNlIHN0YXRlbWVudHMgYmUgZ2VuZXJhdGVkIHdoZW4gdGhlIHBhY2thZ2UgaXMgcHVibGlzaGVkLlxuICAgKiBBIHN1cHBvcnRlZCBwYWNrYWdlIG1hbmFnZXIgaXMgcmVxdWlyZWQgdG8gcHVibGlzaCBhIHBhY2thZ2Ugd2l0aCBucG0gcHJvdmVuYW5jZSBzdGF0ZW1lbnRzIGFuZFxuICAgKiB5b3Ugd2lsbCBuZWVkIHRvIHVzZSBhIHN1cHBvcnRlZCBDSS9DRCBwcm92aWRlci5cbiAgICpcbiAgICogTm90ZSB0aGF0IHRoZSBwcm9qZW4gYFJlbGVhc2VgIGFuZCBgUHVibGlzaGVyYCBjb21wb25lbnRzIGFyZSB1c2luZyBgcHVibGliYCB0byBwdWJsaXNoIHBhY2thZ2VzLFxuICAgKiB3aGljaCBpcyB1c2luZyBucG0gaW50ZXJuYWxseSBhbmQgc3VwcG9ydHMgcHJvdmVuYW5jZSBzdGF0ZW1lbnRzIGluZGVwZW5kZW50bHkgb2YgdGhlIHBhY2thZ2UgbWFuYWdlciB1c2VkLlxuICAgKiBAZGVmYXVsdCAtIHRydWUgZm9yIHB1YmxpYyBwYWNrYWdlcywgZmFsc2Ugb3RoZXJ3aXNlXG4gICAqL1xuICByZWFkb25seSBucG1Qcm92ZW5hbmNlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSBob3N0IG5hbWUgb2YgdGhlIG5wbSByZWdpc3RyeSB0byBwdWJsaXNoIHRvLlxuICAgKiBDYW5ub3QgYmUgc2V0IHRvZ2V0aGVyIHdpdGggYG5wbVJlZ2lzdHJ5VXJsYC5cbiAgICogQGRlcHJlY2F0ZWQgdXNlIGBucG1SZWdpc3RyeVVybGAgaW5zdGVhZFxuICAgKi9cbiAgcmVhZG9ubHkgbnBtUmVnaXN0cnk/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgYmFzZSBVUkwgb2YgdGhlIG5wbSBwYWNrYWdlIHJlZ2lzdHJ5LlxuICAgKiBNdXN0IGJlIGEgVVJMIChlLmcuIHN0YXJ0IHdpdGggXCJodHRwczovL1wiIG9yIFwiaHR0cDovL1wiKVxuICAgKiBAZGVmYXVsdCBcImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnXCJcbiAgICovXG4gIHJlYWRvbmx5IG5wbVJlZ2lzdHJ5VXJsPzogc3RyaW5nO1xuICAvKipcbiAgICogR2l0SHViIHNlY3JldCB3aGljaCBjb250YWlucyB0aGUgTlBNIHRva2VuIHRvIHVzZSB3aGVuIHB1Ymxpc2hpbmcgcGFja2FnZXMuXG4gICAqIEBkZWZhdWx0IFwiTlBNX1RPS0VOXCJcbiAgICovXG4gIHJlYWRvbmx5IG5wbVRva2VuU2VjcmV0Pzogc3RyaW5nO1xuICAvKipcbiAgICogVXNlIHRydXN0ZWQgcHVibGlzaGluZyBmb3IgcHVibGlzaGluZyB0byBucG1qcy5jb20gTmVlZHMgdG8gYmUgcHJlLWNvbmZpZ3VyZWQgb24gbnBtLmpzIHRvIHdvcmsuXG4gICAqIEBkZWZhdWx0IC0gZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IG5wbVRydXN0ZWRQdWJsaXNoaW5nPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEVuYWJsZSB0aGUgaW50ZWdyYXRpb24gd2l0aCBOeCBpbiB0aGUgbW9ub3JlcG9cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IG54PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgcHJvamVjdC5cbiAgICogUmVsYXRpdmUgdG8gdGhpcyBkaXJlY3RvcnksIGFsbCBmaWxlcyBhcmUgc3ludGhlc2l6ZWQuXG4gICAqXG4gICAqIElmIHRoaXMgcHJvamVjdCBoYXMgYSBwYXJlbnQsIHRoaXMgZGlyZWN0b3J5IGlzIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgICogZGlyZWN0b3J5IGFuZCBpdCBjYW5ub3QgYmUgdGhlIHNhbWUgYXMgdGhlIHBhcmVudCBvciBhbnkgb2YgaXQncyBvdGhlclxuICAgKiBzdWJwcm9qZWN0cy5cbiAgICogQGRlZmF1bHQgXCIuXCJcbiAgICovXG4gIHJlYWRvbmx5IG91dGRpcj86IHN0cmluZztcbiAgLyoqXG4gICAqIERlZmluZXMgYSBgcGFja2FnZWAgdGFzayB0aGF0IHdpbGwgcHJvZHVjZSBhbiBucG0gdGFyYmFsbCB1bmRlciB0aGUgYXJ0aWZhY3RzIGRpcmVjdG9yeSAoZS5nLiBgZGlzdGApLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBwYWNrYWdlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSBcIm5hbWVcIiBpbiBwYWNrYWdlLmpzb24uXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdHMgdG8gcHJvamVjdCBuYW1lXG4gICAqL1xuICByZWFkb25seSBwYWNrYWdlTmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBwYXJlbnQgcHJvamVjdCwgaWYgdGhpcyBwcm9qZWN0IGlzIHBhcnQgb2YgYSBiaWdnZXIgcHJvamVjdC5cbiAgICovXG4gIHJlYWRvbmx5IHBhcmVudD86IFByb2plY3Q7XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBgcGVlckRlcHNgLlxuICAgKi9cbiAgcmVhZG9ubHkgcGVlckRlcGVuZGVuY3lPcHRpb25zPzogamF2YXNjcmlwdC5QZWVyRGVwZW5kZW5jeU9wdGlvbnM7XG4gIC8qKlxuICAgKiBQZWVyIGRlcGVuZGVuY2llcyBmb3IgdGhpcyBtb2R1bGUuXG4gICAqIERlcGVuZGVuY2llcyBsaXN0ZWQgaGVyZSBhcmUgcmVxdWlyZWQgdG9cbiAgICogYmUgaW5zdGFsbGVkIChhbmQgc2F0aXNmaWVkKSBieSB0aGUgX2NvbnN1bWVyXyBvZiB0aGlzIGxpYnJhcnkuIFVzaW5nIHBlZXJcbiAgICogZGVwZW5kZW5jaWVzIGFsbG93cyB5b3UgdG8gZW5zdXJlIHRoYXQgb25seSBhIHNpbmdsZSBtb2R1bGUgb2YgYSBjZXJ0YWluXG4gICAqIGxpYnJhcnkgZXhpc3RzIGluIHRoZSBgbm9kZV9tb2R1bGVzYCB0cmVlIG9mIHlvdXIgY29uc3VtZXJzLlxuICAgKlxuICAgKiBOb3RlIHRoYXQgcHJpb3IgdG8gbnBtQDcsIHBlZXIgZGVwZW5kZW5jaWVzIGFyZSBfbm90XyBhdXRvbWF0aWNhbGx5XG4gICAqIGluc3RhbGxlZCwgd2hpY2ggbWVhbnMgdGhhdCBhZGRpbmcgcGVlciBkZXBlbmRlbmNpZXMgdG8gYSBsaWJyYXJ5IHdpbGwgYmUgYVxuICAgKiBicmVha2luZyBjaGFuZ2UgZm9yIHlvdXIgY3VzdG9tZXJzLlxuICAgKlxuICAgKiBVbmxlc3MgYHBlZXJEZXBlbmRlbmN5T3B0aW9ucy5waW5uZWREZXZEZXBlbmRlbmN5YCBpcyBkaXNhYmxlZCAoaXQgaXNcbiAgICogZW5hYmxlZCBieSBkZWZhdWx0KSwgcHJvamVuIHdpbGwgYXV0b21hdGljYWxseSBhZGQgYSBkZXYgZGVwZW5kZW5jeSB3aXRoIGFcbiAgICogcGlubmVkIHZlcnNpb24gZm9yIGVhY2ggcGVlciBkZXBlbmRlbmN5LiBUaGlzIHdpbGwgZW5zdXJlIHRoYXQgeW91IGJ1aWxkICZcbiAgICogdGVzdCB5b3VyIG1vZHVsZSBhZ2FpbnN0IHRoZSBsb3dlc3QgcGVlciB2ZXJzaW9uIHJlcXVpcmVkLlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKi9cbiAgcmVhZG9ubHkgcGVlckRlcHM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogVGhlIHZlcnNpb24gb2YgUE5QTSB0byB1c2UgaWYgdXNpbmcgUE5QTSBhcyBhIHBhY2thZ2UgbWFuYWdlci5cbiAgICogQGRlZmF1bHQgXCI5XCJcbiAgICovXG4gIHJlYWRvbmx5IHBucG1WZXJzaW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogU3RlcHMgdG8gZXhlY3V0ZSBhZnRlciBidWlsZCBhcyBwYXJ0IG9mIHRoZSByZWxlYXNlIHdvcmtmbG93LlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKi9cbiAgcmVhZG9ubHkgcG9zdEJ1aWxkU3RlcHM/OiBBcnJheTxnaXRodWIud29ya2Zsb3dzLkpvYlN0ZXA+O1xuICAvKipcbiAgICogQnVtcCB2ZXJzaW9ucyBmcm9tIHRoZSBkZWZhdWx0IGJyYW5jaCBhcyBwcmUtcmVsZWFzZXMgKGUuZy4gXCJiZXRhXCIsIFwiYWxwaGFcIiwgXCJwcmVcIikuXG4gICAqIEBkZWZhdWx0IC0gbm9ybWFsIHNlbWFudGljIHZlcnNpb25zXG4gICAqL1xuICByZWFkb25seSBwcmVyZWxlYXNlPzogc3RyaW5nO1xuICAvKipcbiAgICogU2V0dXAgcHJldHRpZXIuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBwcmV0dGllcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQcmV0dGllciBvcHRpb25zLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgcHJldHRpZXJPcHRpb25zPzogamF2YXNjcmlwdC5QcmV0dGllck9wdGlvbnM7XG4gIC8qKlxuICAgKiBXaGljaCB0eXBlIG9mIHByb2plY3QgdGhpcyBpcyAobGlicmFyeS9hcHApLlxuICAgKiBAZGVmYXVsdCBQcm9qZWN0VHlwZS5VTktOT1dOXG4gICAqIEBkZXByZWNhdGVkIG5vIGxvbmdlciBzdXBwb3J0ZWQgYXQgdGhlIGJhc2UgcHJvamVjdCBsZXZlbFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdFR5cGU/OiBQcm9qZWN0VHlwZTtcbiAgLyoqXG4gICAqIFRoZSBzaGVsbCBjb21tYW5kIHRvIHVzZSBpbiBvcmRlciB0byBydW4gdGhlIHByb2plbiBDTEkuXG4gICAqIENhbiBiZSB1c2VkIHRvIGN1c3RvbWl6ZSBpbiBzcGVjaWFsIGVudmlyb25tZW50cy5cbiAgICogQGRlZmF1bHQgXCJucHggcHJvamVuXCJcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbkNvbW1hbmQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBDaG9vc2UgYSBtZXRob2Qgb2YgcHJvdmlkaW5nIEdpdEh1YiBBUEkgYWNjZXNzIGZvciBwcm9qZW4gd29ya2Zsb3dzLlxuICAgKiBAZGVmYXVsdCAtIHVzZSBhIHBlcnNvbmFsIGFjY2VzcyB0b2tlbiBuYW1lZCBQUk9KRU5fR0lUSFVCX1RPS0VOXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5DcmVkZW50aWFscz86IGdpdGh1Yi5HaXRodWJDcmVkZW50aWFscztcbiAgLyoqXG4gICAqIEluZGljYXRlcyBvZiBcInByb2plblwiIHNob3VsZCBiZSBpbnN0YWxsZWQgYXMgYSBkZXZEZXBlbmRlbmN5LlxuICAgKiBAZGVmYXVsdCAtIHRydWUgaWYgbm90IGEgc3VicHJvamVjdFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVuRGV2RGVwZW5kZW5jeT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBHZW5lcmF0ZSAob25jZSkgLnByb2plbnJjLmpzIChpbiBKYXZhU2NyaXB0KS4gU2V0IHRvIGBmYWxzZWAgaW4gb3JkZXIgdG8gZGlzYWJsZSAucHJvamVucmMuanMgZ2VuZXJhdGlvbi5cbiAgICogQGRlZmF1bHQgLSB0cnVlIGlmIHByb2plbnJjSnNvbiBpcyBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVucmNKcz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBHZW5lcmF0ZSAob25jZSkgLnByb2plbnJjLmpzb24gKGluIEpTT04pLiBTZXQgdG8gYGZhbHNlYCBpbiBvcmRlciB0byBkaXNhYmxlIC5wcm9qZW5yYy5qc29uIGdlbmVyYXRpb24uXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY0pzb24/OiBib29sZWFuO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgLnByb2plbnJjLmpzb24uXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBvcHRpb25zXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY0pzb25PcHRpb25zPzogUHJvamVucmNKc29uT3B0aW9ucztcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIC5wcm9qZW5yYy5qcy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjSnNPcHRpb25zPzogamF2YXNjcmlwdC5Qcm9qZW5yY09wdGlvbnM7XG4gIC8qKlxuICAgKiBVc2UgVHlwZVNjcmlwdCBmb3IgeW91ciBwcm9qZW5yYyBmaWxlIChgLnByb2plbnJjLnRzYCkuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY1RzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIC5wcm9qZW5yYy50cy5cbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjVHNPcHRpb25zPzogdHlwZXNjcmlwdC5Qcm9qZW5yY09wdGlvbnM7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiBhIHNlY3JldCB3aGljaCBpbmNsdWRlcyBhIEdpdEh1YiBQZXJzb25hbCBBY2Nlc3MgVG9rZW4gdG8gYmUgdXNlZCBieSBwcm9qZW4gd29ya2Zsb3dzLlxuICAgKiBUaGlzIHRva2VuIG5lZWRzIHRvIGhhdmUgdGhlIGByZXBvYCwgYHdvcmtmbG93c2BcbiAgICogYW5kIGBwYWNrYWdlc2Agc2NvcGUuXG4gICAqIEBkZWZhdWx0IFwiUFJPSkVOX0dJVEhVQl9UT0tFTlwiXG4gICAqIEBkZXByZWNhdGVkIHVzZSBgcHJvamVuQ3JlZGVudGlhbHNgXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5Ub2tlblNlY3JldD86IHN0cmluZztcbiAgLyoqXG4gICAqIFZlcnNpb24gb2YgcHJvamVuIHRvIGluc3RhbGwuXG4gICAqIEBkZWZhdWx0IC0gRGVmYXVsdHMgdG8gdGhlIGxhdGVzdCB2ZXJzaW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVuVmVyc2lvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIEluc3RlYWQgb2YgYWN0dWFsbHkgcHVibGlzaGluZyB0byBwYWNrYWdlIG1hbmFnZXJzLCBqdXN0IHByaW50IHRoZSBwdWJsaXNoaW5nIGNvbW1hbmQuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBwdWJsaXNoRHJ5UnVuPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERlZmluZSBwdWJsaXNoaW5nIHRhc2tzIHRoYXQgY2FuIGJlIGV4ZWN1dGVkIG1hbnVhbGx5IGFzIHdlbGwgYXMgd29ya2Zsb3dzLlxuICAgKiBOb3JtYWxseSwgcHVibGlzaGluZyBvbmx5IGhhcHBlbnMgd2l0aGluIGF1dG9tYXRlZCB3b3JrZmxvd3MuIEVuYWJsZSB0aGlzXG4gICAqIGluIG9yZGVyIHRvIGNyZWF0ZSBhIHB1Ymxpc2hpbmcgdGFzayBmb3IgZWFjaCBwdWJsaXNoaW5nIGFjdGl2aXR5LlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgcHVibGlzaFRhc2tzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluY2x1ZGUgYSBHaXRIdWIgcHVsbCByZXF1ZXN0IHRlbXBsYXRlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBwdWxsUmVxdWVzdFRlbXBsYXRlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSBjb250ZW50cyBvZiB0aGUgcHVsbCByZXF1ZXN0IHRlbXBsYXRlLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgY29udGVudFxuICAgKi9cbiAgcmVhZG9ubHkgcHVsbFJlcXVlc3RUZW1wbGF0ZUNvbnRlbnRzPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIFRoZSBSRUFETUUgc2V0dXAuXG4gICAqIEBkZWZhdWx0IC0geyBmaWxlbmFtZTogJ1JFQURNRS5tZCcsIGNvbnRlbnRzOiAnIyByZXBsYWNlIHRoaXMnIH1cbiAgICovXG4gIHJlYWRvbmx5IHJlYWRtZT86IFNhbXBsZVJlYWRtZVByb3BzO1xuICAvKipcbiAgICogRmluZCBjb21taXRzIHRoYXQgc2hvdWxkIGJlIGNvbnNpZGVyZWQgcmVsZWFzYWJsZSBVc2VkIHRvIGRlY2lkZSBpZiBhIHJlbGVhc2UgaXMgcmVxdWlyZWQuXG4gICAqIEBkZWZhdWx0IFJlbGVhc2FibGVDb21taXRzLmV2ZXJ5Q29tbWl0KClcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2FibGVDb21taXRzPzogUmVsZWFzYWJsZUNvbW1pdHM7XG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byBhZGQgcmVsZWFzZSB3b3JrZmxvd3MgZm9yIHRoaXMgcmVwb3NpdG9yeVxuICAgKiBAZGVmYXVsdCAtIE5vIHJlbGVhc2VcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2U/OiBib29sZWFuO1xuICAvKipcbiAgICogRGVmaW5lcyBhZGRpdGlvbmFsIHJlbGVhc2UgYnJhbmNoZXMuXG4gICAqIEEgd29ya2Zsb3cgd2lsbCBiZSBjcmVhdGVkIGZvciBlYWNoXG4gICAqIHJlbGVhc2UgYnJhbmNoIHdoaWNoIHdpbGwgcHVibGlzaCByZWxlYXNlcyBmcm9tIGNvbW1pdHMgaW4gdGhpcyBicmFuY2guXG4gICAqIEVhY2ggcmVsZWFzZSBicmFuY2ggX211c3RfIGJlIGFzc2lnbmVkIGEgbWFqb3IgdmVyc2lvbiBudW1iZXIgd2hpY2ggaXMgdXNlZFxuICAgKiB0byBlbmZvcmNlIHRoYXQgdmVyc2lvbnMgcHVibGlzaGVkIGZyb20gdGhhdCBicmFuY2ggYWx3YXlzIHVzZSB0aGF0IG1ham9yXG4gICAqIHZlcnNpb24uIElmIG11bHRpcGxlIGJyYW5jaGVzIGFyZSB1c2VkLCB0aGUgYG1ham9yVmVyc2lvbmAgZmllbGQgbXVzdCBhbHNvXG4gICAqIGJlIHByb3ZpZGVkIGZvciB0aGUgZGVmYXVsdCBicmFuY2guXG4gICAqIEBkZWZhdWx0IC0gbm8gYWRkaXRpb25hbCBicmFuY2hlcyBhcmUgdXNlZCBmb3IgcmVsZWFzZS4geW91IGNhbiB1c2VcbmBhZGRCcmFuY2goKWAgdG8gYWRkIGFkZGl0aW9uYWwgYnJhbmNoZXMuXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlQnJhbmNoZXM/OiBSZWNvcmQ8c3RyaW5nLCByZWxlYXNlLkJyYW5jaE9wdGlvbnM+O1xuICAvKipcbiAgICogVGhlIEdpdEh1YiBBY3Rpb25zIGVudmlyb25tZW50IHVzZWQgZm9yIHRoZSByZWxlYXNlLlxuICAgKiBUaGlzIGNhbiBiZSB1c2VkIHRvIGFkZCBhbiBleHBsaWNpdCBhcHByb3ZhbCBzdGVwIHRvIHRoZSByZWxlYXNlXG4gICAqIG9yIGxpbWl0IHdobyBjYW4gaW5pdGlhdGUgYSByZWxlYXNlIHRocm91Z2ggZW52aXJvbm1lbnQgcHJvdGVjdGlvbiBydWxlcy5cbiAgICpcbiAgICogV2hlbiBtdWx0aXBsZSBhcnRpZmFjdHMgYXJlIHJlbGVhc2VkLCB0aGUgZW52aXJvbm1lbnQgY2FuIGJlIG92ZXJ3cml0dGVuXG4gICAqIG9uIGEgcGVyIGFydGlmYWN0IGJhc2lzLlxuICAgKiBAZGVmYXVsdCAtIG5vIGVudmlyb25tZW50IHVzZWQsIHVubGVzcyBzZXQgYXQgdGhlIGFydGlmYWN0IGxldmVsXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlRW52aXJvbm1lbnQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdXRvbWF0aWNhbGx5IHJlbGVhc2UgbmV3IHZlcnNpb25zIGV2ZXJ5IGNvbW1pdCB0byBvbmUgb2YgYnJhbmNoZXMgaW4gYHJlbGVhc2VCcmFuY2hlc2AuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQGRlcHJlY2F0ZWQgVXNlIGByZWxlYXNlVHJpZ2dlcjogUmVsZWFzZVRyaWdnZXIuY29udGludW91cygpYCBpbnN0ZWFkXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlRXZlcnlDb21taXQ/OiBib29sZWFuO1xuICAvKipcbiAgICogQ3JlYXRlIGEgZ2l0aHViIGlzc3VlIG9uIGV2ZXJ5IGZhaWxlZCBwdWJsaXNoaW5nIHRhc2suXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlRmFpbHVyZUlzc3VlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSBsYWJlbCB0byBhcHBseSB0byBpc3N1ZXMgaW5kaWNhdGluZyBwdWJsaXNoIGZhaWx1cmVzLlxuICAgKiBPbmx5IGFwcGxpZXMgaWYgYHJlbGVhc2VGYWlsdXJlSXNzdWVgIGlzIHRydWUuXG4gICAqIEBkZWZhdWx0IFwiZmFpbGVkLXJlbGVhc2VcIlxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZUZhaWx1cmVJc3N1ZUxhYmVsPzogc3RyaW5nO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgdGhlIHJlbGVhc2Ugd29ya2Zsb3dzXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlT3B0aW9ucz86IHlhcm4uTW9ub3JlcG9SZWxlYXNlT3B0aW9ucztcbiAgLyoqXG4gICAqIENST04gc2NoZWR1bGUgdG8gdHJpZ2dlciBuZXcgcmVsZWFzZXMuXG4gICAqIEBkZWZhdWx0IC0gbm8gc2NoZWR1bGVkIHJlbGVhc2VzXG4gICAqIEBkZXByZWNhdGVkIFVzZSBgcmVsZWFzZVRyaWdnZXI6IFJlbGVhc2VUcmlnZ2VyLnNjaGVkdWxlZCgpYCBpbnN0ZWFkXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlU2NoZWR1bGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdXRvbWF0aWNhbGx5IGFkZCB0aGUgZ2l2ZW4gcHJlZml4IHRvIHJlbGVhc2UgdGFncy4gVXNlZnVsIGlmIHlvdSBhcmUgcmVsZWFzaW5nIG9uIG11bHRpcGxlIGJyYW5jaGVzIHdpdGggb3ZlcmxhcHBpbmcgdmVyc2lvbiBudW1iZXJzLlxuICAgKiBOb3RlOiB0aGlzIHByZWZpeCBpcyB1c2VkIHRvIGRldGVjdCB0aGUgbGF0ZXN0IHRhZ2dlZCB2ZXJzaW9uXG4gICAqIHdoZW4gYnVtcGluZywgc28gaWYgeW91IGNoYW5nZSB0aGlzIG9uIGEgcHJvamVjdCB3aXRoIGFuIGV4aXN0aW5nIHZlcnNpb25cbiAgICogaGlzdG9yeSwgeW91IG1heSBuZWVkIHRvIG1hbnVhbGx5IHRhZyB5b3VyIGxhdGVzdCByZWxlYXNlXG4gICAqIHdpdGggdGhlIG5ldyBwcmVmaXguXG4gICAqIEBkZWZhdWx0IFwidlwiXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlVGFnUHJlZml4Pzogc3RyaW5nO1xuICAvKipcbiAgICogQXV0b21hdGljYWxseSByZWxlYXNlIHRvIG5wbSB3aGVuIG5ldyB2ZXJzaW9ucyBhcmUgaW50cm9kdWNlZC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VUb05wbT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgcmVsZWFzZSB0cmlnZ2VyIHRvIHVzZS5cbiAgICogQGRlZmF1bHQgLSBDb250aW51b3VzIHJlbGVhc2VzIChgUmVsZWFzZVRyaWdnZXIuY29udGludW91cygpYClcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VUcmlnZ2VyPzogcmVsZWFzZS5SZWxlYXNlVHJpZ2dlcjtcbiAgLyoqXG4gICAqIERFUFJFQ0FURUQ6IHJlbmFtZWQgdG8gYHJlbGVhc2VgLlxuICAgKiBAZGVmYXVsdCAtIHRydWUgaWYgbm90IGEgc3VicHJvamVjdFxuICAgKiBAZGVwcmVjYXRlZCBzZWUgYHJlbGVhc2VgLlxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZVdvcmtmbG93PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEJ1aWxkIGVudmlyb25tZW50IHZhcmlhYmxlcyBmb3IgcmVsZWFzZSB3b3JrZmxvd3MuXG4gICAqIEBkZWZhdWx0IHt9XG4gICAqL1xuICByZWFkb25seSByZWxlYXNlV29ya2Zsb3dFbnY/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGRlZmF1bHQgcmVsZWFzZSB3b3JrZmxvdy5cbiAgICogQGRlZmF1bHQgXCJyZWxlYXNlXCJcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VXb3JrZmxvd05hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBIHNldCBvZiB3b3JrZmxvdyBzdGVwcyB0byBleGVjdXRlIGluIG9yZGVyIHRvIHNldHVwIHRoZSB3b3JrZmxvdyBjb250YWluZXIuXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlV29ya2Zsb3dTZXR1cFN0ZXBzPzogQXJyYXk8Z2l0aHViLndvcmtmbG93cy5Kb2JTdGVwPjtcbiAgLyoqXG4gICAqIFVzZSByZW5vdmF0ZWJvdCB0byBoYW5kbGUgZGVwZW5kZW5jeSB1cGdyYWRlcy5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHJlbm92YXRlYm90PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHJlbm92YXRlYm90LlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgcmVub3ZhdGVib3RPcHRpb25zPzogUmVub3ZhdGVib3RPcHRpb25zO1xuICAvKipcbiAgICogVGhlIHJlcG9zaXRvcnkgaXMgdGhlIGxvY2F0aW9uIHdoZXJlIHRoZSBhY3R1YWwgY29kZSBmb3IgeW91ciBwYWNrYWdlIGxpdmVzLlxuICAgKiBTZWUgaHR0cHM6Ly9jbGFzc2ljLnlhcm5wa2cuY29tL2VuL2RvY3MvcGFja2FnZS1qc29uLyN0b2MtcmVwb3NpdG9yeVxuICAgKi9cbiAgcmVhZG9ubHkgcmVwb3NpdG9yeT86IHN0cmluZztcbiAgLyoqXG4gICAqIElmIHRoZSBwYWNrYWdlLmpzb24gZm9yIHlvdXIgcGFja2FnZSBpcyBub3QgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IChmb3IgZXhhbXBsZSBpZiBpdCBpcyBwYXJ0IG9mIGEgbW9ub3JlcG8pLCB5b3UgY2FuIHNwZWNpZnkgdGhlIGRpcmVjdG9yeSBpbiB3aGljaCBpdCBsaXZlcy5cbiAgICovXG4gIHJlYWRvbmx5IHJlcG9zaXRvcnlEaXJlY3Rvcnk/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBwcml2YXRlbHkgaG9zdGVkIHNjb3BlZCBwYWNrYWdlcy5cbiAgICogQGRlZmF1bHQgLSBmZXRjaCBhbGwgc2NvcGVkIHBhY2thZ2VzIGZyb20gdGhlIHB1YmxpYyBucG0gcmVnaXN0cnlcbiAgICovXG4gIHJlYWRvbmx5IHNjb3BlZFBhY2thZ2VzT3B0aW9ucz86IEFycmF5PGphdmFzY3JpcHQuU2NvcGVkUGFja2FnZXNPcHRpb25zPjtcbiAgLyoqXG4gICAqIG5wbSBzY3JpcHRzIHRvIGluY2x1ZGUuXG4gICAqIElmIGEgc2NyaXB0IGhhcyB0aGUgc2FtZSBuYW1lIGFzIGEgc3RhbmRhcmQgc2NyaXB0LFxuICAgKiB0aGUgc3RhbmRhcmQgc2NyaXB0IHdpbGwgYmUgb3ZlcndyaXR0ZW4uXG4gICAqIEFsc28gYWRkcyB0aGUgc2NyaXB0IGFzIGEgdGFzay5cbiAgICogQGRlZmF1bHQge31cbiAgICogQGRlcHJlY2F0ZWQgdXNlIGBwcm9qZWN0LmFkZFRhc2soKWAgb3IgYHBhY2thZ2Uuc2V0U2NyaXB0KClgXG4gICAqL1xuICByZWFkb25seSBzY3JpcHRzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgLyoqXG4gICAqIFR5cGVzY3JpcHQgc291cmNlcyBkaXJlY3RvcnkuXG4gICAqIEBkZWZhdWx0IFwic3JjXCJcbiAgICovXG4gIHJlYWRvbmx5IHNyY2Rpcj86IHN0cmluZztcbiAgLyoqXG4gICAqIFBhY2thZ2UncyBTdGFiaWxpdHkuXG4gICAqL1xuICByZWFkb25seSBzdGFiaWxpdHk/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdXRvLWNsb3NlIG9mIHN0YWxlIGlzc3VlcyBhbmQgcHVsbCByZXF1ZXN0LlxuICAgKiBTZWUgYHN0YWxlT3B0aW9uc2AgZm9yIG9wdGlvbnMuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBzdGFsZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBdXRvLWNsb3NlIHN0YWxlIGlzc3VlcyBhbmQgcHVsbCByZXF1ZXN0cy5cbiAgICogVG8gZGlzYWJsZSBzZXQgYHN0YWxlYCB0byBgZmFsc2VgLlxuICAgKiBAZGVmYXVsdCAtIHNlZSBkZWZhdWx0cyBpbiBgU3RhbGVPcHRpb25zYFxuICAgKi9cbiAgcmVhZG9ubHkgc3RhbGVPcHRpb25zPzogZ2l0aHViLlN0YWxlT3B0aW9ucztcbiAgLyoqXG4gICAqIEplc3QgdGVzdHMgZGlyZWN0b3J5LiBUZXN0cyBmaWxlcyBzaG91bGQgYmUgbmFtZWQgYHh4eC50ZXN0LnRzYC5cbiAgICogSWYgdGhpcyBkaXJlY3RvcnkgaXMgdW5kZXIgYHNyY2RpcmAgKGUuZy4gYHNyYy90ZXN0YCwgYHNyYy9fX3Rlc3RzX19gKSxcbiAgICogdGhlbiB0ZXN0cyBhcmUgZ29pbmcgdG8gYmUgY29tcGlsZWQgaW50byBgbGliL2AgYW5kIGV4ZWN1dGVkIGFzIGphdmFzY3JpcHQuXG4gICAqIElmIHRoZSB0ZXN0IGRpcmVjdG9yeSBpcyBvdXRzaWRlIG9mIGBzcmNgLCB0aGVuIHdlIGNvbmZpZ3VyZSBqZXN0IHRvXG4gICAqIGNvbXBpbGUgdGhlIGNvZGUgaW4tbWVtb3J5LlxuICAgKiBAZGVmYXVsdCBcInRlc3RcIlxuICAgKi9cbiAgcmVhZG9ubHkgdGVzdGRpcj86IHN0cmluZztcbiAgLyoqXG4gICAqIEN1c3RvbSBUU0NvbmZpZy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IHRzY29uZmlnPzogamF2YXNjcmlwdC5UeXBlc2NyaXB0Q29uZmlnT3B0aW9ucztcbiAgLyoqXG4gICAqIEN1c3RvbSB0c2NvbmZpZyBvcHRpb25zIGZvciB0aGUgZGV2ZWxvcG1lbnQgdHNjb25maWcuanNvbiBmaWxlICh1c2VkIGZvciB0ZXN0aW5nKS5cbiAgICogQGRlZmF1bHQgLSB1c2UgdGhlIHByb2R1Y3Rpb24gdHNjb25maWcgb3B0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgdHNjb25maWdEZXY/OiBqYXZhc2NyaXB0LlR5cGVzY3JpcHRDb25maWdPcHRpb25zO1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGRldmVsb3BtZW50IHRzY29uZmlnLmpzb24gZmlsZS5cbiAgICogQGRlZmF1bHQgXCJ0c2NvbmZpZy5kZXYuanNvblwiXG4gICAqL1xuICByZWFkb25seSB0c2NvbmZpZ0RldkZpbGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciB0cy1qZXN0LlxuICAgKi9cbiAgcmVhZG9ubHkgdHNKZXN0T3B0aW9ucz86IHR5cGVzY3JpcHQuVHNKZXN0T3B0aW9ucztcbiAgLyoqXG4gICAqIFR5cGVTY3JpcHQgdmVyc2lvbiB0byB1c2UuXG4gICAqIE5PVEU6IFR5cGVzY3JpcHQgaXMgbm90IHNlbWFudGljYWxseSB2ZXJzaW9uZWQgYW5kIHNob3VsZCByZW1haW4gb24gdGhlXG4gICAqIHNhbWUgbWlub3IsIHNvIHdlIHJlY29tbWVuZCB1c2luZyBhIGB+YCBkZXBlbmRlbmN5IChlLmcuIGB+MS4yLjNgKS5cbiAgICogQGRlZmF1bHQgXCJsYXRlc3RcIlxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZXNjcmlwdFZlcnNpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBDdXN0b20gY29uZmlndXJhdGlvbiB1c2VkIHdoZW4gY3JlYXRpbmcgY2hhbmdlbG9nIHdpdGggY29tbWl0LWFuZC10YWctdmVyc2lvbiBwYWNrYWdlLlxuICAgKiBHaXZlbiB2YWx1ZXMgZWl0aGVyIGFwcGVuZCB0byBkZWZhdWx0IGNvbmZpZ3VyYXRpb24gb3Igb3ZlcndyaXRlIHZhbHVlcyBpbiBpdC5cbiAgICogQGRlZmF1bHQgLSBzdGFuZGFyZCBjb25maWd1cmF0aW9uIGFwcGxpY2FibGUgZm9yIEdpdEh1YiByZXBvc2l0b3JpZXNcbiAgICovXG4gIHJlYWRvbmx5IHZlcnNpb25yY09wdGlvbnM/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xuICAvKipcbiAgICogRW5hYmxlIFZTQ29kZSBpbnRlZ3JhdGlvbi5cbiAgICogRW5hYmxlZCBieSBkZWZhdWx0IGZvciByb290IHByb2plY3RzLiBEaXNhYmxlZCBmb3Igbm9uLXJvb3QgcHJvamVjdHMuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHZzY29kZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDcmVhdGUgYSBWU0NvZGUgbXVsdGktcm9vdCB3b3Jrc3BhY2UgZmlsZSBmb3IgYWxsIG1vbm9yZXBvIHdvcmtzcGFjZXNcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHZzY29kZVdvcmtzcGFjZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIHRoZSBWU0NvZGUgbXVsdGktcm9vdCB3b3Jrc3BhY2UgZmlsZVxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgY29uZmlndXJhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgdnNjb2RlV29ya3NwYWNlT3B0aW9ucz86IHlhcm4uVnNDb2RlV29ya3NwYWNlT3B0aW9ucztcbiAgLyoqXG4gICAqIFdvcmtmbG93IHN0ZXBzIHRvIHVzZSBpbiBvcmRlciB0byBib290c3RyYXAgdGhpcyByZXBvLlxuICAgKiBAZGVmYXVsdCBcInlhcm4gaW5zdGFsbCAtLWZyb3plbi1sb2NrZmlsZSAmJiB5YXJuIHByb2plblwiXG4gICAqL1xuICByZWFkb25seSB3b3JrZmxvd0Jvb3RzdHJhcFN0ZXBzPzogQXJyYXk8Z2l0aHViLndvcmtmbG93cy5Kb2JTdGVwPjtcbiAgLyoqXG4gICAqIENvbnRhaW5lciBpbWFnZSB0byB1c2UgZm9yIEdpdEh1YiB3b3JrZmxvd3MuXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBpbWFnZVxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dDb250YWluZXJJbWFnZT86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBnaXQgaWRlbnRpdHkgdG8gdXNlIGluIHdvcmtmbG93cy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IEdpdEh1YiBBY3Rpb25zIHVzZXJcbiAgICovXG4gIHJlYWRvbmx5IHdvcmtmbG93R2l0SWRlbnRpdHk/OiBnaXRodWIuR2l0SWRlbnRpdHk7XG4gIC8qKlxuICAgKiBUaGUgbm9kZSB2ZXJzaW9uIHRvIHVzZSBpbiBHaXRIdWIgd29ya2Zsb3dzLlxuICAgKiBAZGVmYXVsdCAnbHRzLyonXG4gICAqL1xuICByZWFkb25seSB3b3JrZmxvd05vZGVWZXJzaW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogRW5hYmxlIE5vZGUuanMgcGFja2FnZSBjYWNoZSBpbiBHaXRIdWIgd29ya2Zsb3dzLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dQYWNrYWdlQ2FjaGU/OiBib29sZWFuO1xuICAvKipcbiAgICogR2l0aHViIFJ1bm5lciBzZWxlY3Rpb24gbGFiZWxzLlxuICAgKiBAZGVmYXVsdCBbXCJ1YnVudHUtbGF0ZXN0XCJdXG4gICAqL1xuICByZWFkb25seSB3b3JrZmxvd1J1bnNPbj86IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBHaXRodWIgUnVubmVyIEdyb3VwIHNlbGVjdGlvbiBvcHRpb25zLlxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dSdW5zT25Hcm91cD86IEdyb3VwUnVubmVyT3B0aW9ucztcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIFlhcm4gQmVycnkuXG4gICAqIEBkZWZhdWx0IC0gWWFybiBCZXJyeSB2NCB3aXRoIGFsbCBkZWZhdWx0IG9wdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IHlhcm5CZXJyeU9wdGlvbnM/OiBqYXZhc2NyaXB0Lllhcm5CZXJyeU9wdGlvbnM7XG59XG4iXX0=
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ub3JlcG8tb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy95YXJuL21vbm9yZXBvLW9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8vIH5+IEdlbmVyYXRlZCBieSBwcm9qZW4uIFRvIG1vZGlmeSwgZWRpdCAucHJvamVucmMudHMgYW5kIHJ1biBcIm5weCBwcm9qZW5cIi5cbmltcG9ydCB7IGphdmFzY3JpcHQsIGdpdGh1YiwgSWdub3JlRmlsZU9wdGlvbnMsIEdpdE9wdGlvbnMsIExvZ2dlck9wdGlvbnMsIFByb2plY3QsIFByb2plY3RUeXBlLCBQcm9qZW5yY0pzb25PcHRpb25zLCB0eXBlc2NyaXB0LCBTYW1wbGVSZWFkbWVQcm9wcywgUmVsZWFzYWJsZUNvbW1pdHMsIHJlbGVhc2UsIFJlbm92YXRlYm90T3B0aW9ucywgR3JvdXBSdW5uZXJPcHRpb25zIH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IHlhcm4gfSBmcm9tICcuLi8nO1xuXG4vKipcbiAqIE1vbm9yZXBvT3B0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIE1vbm9yZXBvT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBBbGxvdyB0aGUgcHJvamVjdCB0byBpbmNsdWRlIGBwZWVyRGVwZW5kZW5jaWVzYCBhbmQgYGJ1bmRsZWREZXBlbmRlbmNpZXNgLlxuICAgKiBUaGlzIGlzIG5vcm1hbGx5IG9ubHkgYWxsb3dlZCBmb3IgbGlicmFyaWVzLiBGb3IgYXBwcywgdGhlcmUncyBubyBtZWFuaW5nXG4gICAqIGZvciBzcGVjaWZ5aW5nIHRoZXNlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBhbGxvd0xpYnJhcnlEZXBlbmRlbmNpZXM/OiBib29sZWFuO1xuICAvKipcbiAgICogQSBkaXJlY3Rvcnkgd2hpY2ggd2lsbCBjb250YWluIGJ1aWxkIGFydGlmYWN0cy5cbiAgICogQGRlZmF1bHQgXCJkaXN0XCJcbiAgICovXG4gIHJlYWRvbmx5IGFydGlmYWN0c0RpcmVjdG9yeT86IHN0cmluZztcbiAgLyoqXG4gICAqIFJ1biBzZWN1cml0eSBhdWRpdCBvbiBkZXBlbmRlbmNpZXMuXG4gICAqIFdoZW4gZW5hYmxlZCwgY3JlYXRlcyBhbiBcImF1ZGl0XCIgdGFzayB0aGF0IGNoZWNrcyBmb3Iga25vd24gc2VjdXJpdHkgdnVsbmVyYWJpbGl0aWVzXG4gICAqIGluIGRlcGVuZGVuY2llcy4gQnkgZGVmYXVsdCwgcnVucyBkdXJpbmcgZXZlcnkgYnVpbGQgYW5kIGNoZWNrcyBmb3IgXCJoaWdoXCIgc2V2ZXJpdHlcbiAgICogdnVsbmVyYWJpbGl0aWVzIG9yIGFib3ZlIGluIGFsbCBkZXBlbmRlbmNpZXMgKGluY2x1ZGluZyBkZXYgZGVwZW5kZW5jaWVzKS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGF1ZGl0RGVwcz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTZWN1cml0eSBhdWRpdCBvcHRpb25zLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgYXVkaXREZXBzT3B0aW9ucz86IGphdmFzY3JpcHQuQXVkaXRPcHRpb25zO1xuICAvKipcbiAgICogQXV0aG9yJ3MgZS1tYWlsLlxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yRW1haWw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdXRob3IncyBuYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yTmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIElzIHRoZSBhdXRob3IgYW4gb3JnYW5pemF0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yT3JnYW5pemF0aW9uPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEF1dGhvcidzIFVSTCAvIFdlYnNpdGUuXG4gICAqL1xuICByZWFkb25seSBhdXRob3JVcmw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBFbmFibGUgYW5kIGNvbmZpZ3VyZSB0aGUgJ2F1dG8gYXBwcm92ZScgd29ya2Zsb3cuXG4gICAqIEBkZWZhdWx0IC0gYXV0byBhcHByb3ZlIGlzIGRpc2FibGVkXG4gICAqL1xuICByZWFkb25seSBhdXRvQXBwcm92ZU9wdGlvbnM/OiBnaXRodWIuQXV0b0FwcHJvdmVPcHRpb25zO1xuICAvKipcbiAgICogQXV0b21hdGljYWxseSBhcHByb3ZlIGRlcHMgdXBncmFkZSBQUnMsIGFsbG93aW5nIHRoZW0gdG8gYmUgbWVyZ2VkIGJ5IG1lcmdpZnkgKGlmIGNvbmZpZ3VyZWQpLlxuICAgKiBUaHJvdyBpZiBzZXQgdG8gdHJ1ZSBidXQgYGF1dG9BcHByb3ZlT3B0aW9uc2AgYXJlIG5vdCBkZWZpbmVkLlxuICAgKiBAZGVmYXVsdCAtIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGF1dG9BcHByb3ZlVXBncmFkZXM/OiBib29sZWFuO1xuICAvKipcbiAgICogQXV0b21hdGljYWxseSBhZGQgYWxsIGV4ZWN1dGFibGVzIHVuZGVyIHRoZSBgYmluYCBkaXJlY3RvcnkgdG8geW91ciBgcGFja2FnZS5qc29uYCBmaWxlIHVuZGVyIHRoZSBgYmluYCBzZWN0aW9uLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBhdXRvRGV0ZWN0QmluPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEVuYWJsZSBhdXRvbWF0aWMgbWVyZ2luZyBvbiBHaXRIdWIuXG4gICAqIEhhcyBubyBlZmZlY3QgaWYgYGdpdGh1Yi5tZXJnaWZ5YFxuICAgKiBpcyBzZXQgdG8gZmFsc2UuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGF1dG9NZXJnZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb25maWd1cmUgb3B0aW9ucyBmb3IgYXV0b21hdGljIG1lcmdpbmcgb24gR2l0SHViLlxuICAgKiBIYXMgbm8gZWZmZWN0IGlmXG4gICAqIGBnaXRodWIubWVyZ2lmeWAgb3IgYGF1dG9NZXJnZWAgaXMgc2V0IHRvIGZhbHNlLlxuICAgKiBAZGVmYXVsdCAtIHNlZSBkZWZhdWx0cyBpbiBgQXV0b01lcmdlT3B0aW9uc2BcbiAgICovXG4gIHJlYWRvbmx5IGF1dG9NZXJnZU9wdGlvbnM/OiBnaXRodWIuQXV0b01lcmdlT3B0aW9ucztcbiAgLyoqXG4gICAqIEJpbmFyeSBwcm9ncmFtcyB2ZW5kZWQgd2l0aCB5b3VyIG1vZHVsZS5cbiAgICogWW91IGNhbiB1c2UgdGhpcyBvcHRpb24gdG8gYWRkL2N1c3RvbWl6ZSBob3cgYmluYXJpZXMgYXJlIHJlcHJlc2VudGVkIGluXG4gICAqIHlvdXIgYHBhY2thZ2UuanNvbmAsIGJ1dCB1bmxlc3MgYGF1dG9EZXRlY3RCaW5gIGlzIGBmYWxzZWAsIGV2ZXJ5XG4gICAqIGV4ZWN1dGFibGUgZmlsZSB1bmRlciBgYmluYCB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgYWRkZWQgdG8gdGhpcyBzZWN0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgYmluPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgLyoqXG4gICAqIFNldHVwIEJpb21lLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgYmlvbWU/OiBib29sZWFuO1xuICAvKipcbiAgICogQmlvbWUgb3B0aW9ucy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IGJpb21lT3B0aW9ucz86IGphdmFzY3JpcHQuQmlvbWVPcHRpb25zO1xuICAvKipcbiAgICogVGhlIGVtYWlsIGFkZHJlc3MgdG8gd2hpY2ggaXNzdWVzIHNob3VsZCBiZSByZXBvcnRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGJ1Z3NFbWFpbD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSB1cmwgdG8geW91ciBwcm9qZWN0J3MgaXNzdWUgdHJhY2tlci5cbiAgICovXG4gIHJlYWRvbmx5IGJ1Z3NVcmw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBXaGVuIE54IGlzIGVuYWJsZWQsIGFsd2F5cyBidWlsZCB0aGUgbW9ub3JlcG8gdXNpbmcgTnhcbiAgICogV2lsbCBidWlsZCBwcm9qZWN0cyBpbiBwYXJhbGxlbCBhbmQgY2FuIGltcHJvdmUgYnVpbGQgcGVyZm9ybWFuY2VcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGJ1aWxkV2l0aE54PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERlZmluZSBhIEdpdEh1YiB3b3JrZmxvdyBmb3IgYnVpbGRpbmcgUFJzLlxuICAgKiBAZGVmYXVsdCAtIHRydWUgaWYgbm90IGEgc3VicHJvamVjdFxuICAgKi9cbiAgcmVhZG9ubHkgYnVpbGRXb3JrZmxvdz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBQUiBidWlsZCB3b3JrZmxvdy5cbiAgICovXG4gIHJlYWRvbmx5IGJ1aWxkV29ya2Zsb3dPcHRpb25zPzogamF2YXNjcmlwdC5CdWlsZFdvcmtmbG93T3B0aW9ucztcbiAgLyoqXG4gICAqIEJ1aWxkIHdvcmtmbG93IHRyaWdnZXJzLlxuICAgKiBAZGVmYXVsdCBcInsgcHVsbFJlcXVlc3Q6IHt9LCB3b3JrZmxvd0Rpc3BhdGNoOiB7fSB9XCJcbiAgICogQGRlcHJlY2F0ZWQgLSBVc2UgYGJ1aWxkV29ya2Zsb3dPcHRpb25zLndvcmtmbG93VHJpZ2dlcnNgXG4gICAqL1xuICByZWFkb25seSBidWlsZFdvcmtmbG93VHJpZ2dlcnM/OiBnaXRodWIud29ya2Zsb3dzLlRyaWdnZXJzO1xuICAvKipcbiAgICogVGhlIGBjb21taXQtYW5kLXRhZy12ZXJzaW9uYCBjb21wYXRpYmxlIHBhY2thZ2UgdXNlZCB0byBidW1wIHRoZSBwYWNrYWdlIHZlcnNpb24sIGFzIGEgZGVwZW5kZW5jeSBzdHJpbmcuXG4gICAqIFRoaXMgY2FuIGJlIGFueSBjb21wYXRpYmxlIHBhY2thZ2UgdmVyc2lvbiwgaW5jbHVkaW5nIHRoZSBkZXByZWNhdGVkIGBzdGFuZGFyZC12ZXJzaW9uQDlgLlxuICAgKiBAZGVmYXVsdCAtIEEgcmVjZW50IHZlcnNpb24gb2YgXCJjb21taXQtYW5kLXRhZy12ZXJzaW9uXCJcbiAgICovXG4gIHJlYWRvbmx5IGJ1bXBQYWNrYWdlPzogc3RyaW5nO1xuICAvKipcbiAgICogTGlzdCBvZiBkZXBlbmRlbmNpZXMgdG8gYnVuZGxlIGludG8gdGhpcyBtb2R1bGUuXG4gICAqIFRoZXNlIG1vZHVsZXMgd2lsbCBiZVxuICAgKiBhZGRlZCBib3RoIHRvIHRoZSBgZGVwZW5kZW5jaWVzYCBzZWN0aW9uIGFuZCBgYnVuZGxlZERlcGVuZGVuY2llc2Agc2VjdGlvbiBvZlxuICAgKiB5b3VyIGBwYWNrYWdlLmpzb25gLlxuICAgKlxuICAgKiBUaGUgcmVjb21tZW5kYXRpb24gaXMgdG8gb25seSBzcGVjaWZ5IHRoZSBtb2R1bGUgbmFtZSBoZXJlIChlLmcuXG4gICAqIGBleHByZXNzYCkuIFRoaXMgd2lsbCBiZWhhdmUgc2ltaWxhciB0byBgeWFybiBhZGRgIG9yIGBucG0gaW5zdGFsbGAgaW4gdGhlXG4gICAqIHNlbnNlIHRoYXQgaXQgd2lsbCBhZGQgdGhlIG1vZHVsZSBhcyBhIGRlcGVuZGVuY3kgdG8geW91ciBgcGFja2FnZS5qc29uYFxuICAgKiBmaWxlIHdpdGggdGhlIGxhdGVzdCB2ZXJzaW9uIChgXmApLiBZb3UgY2FuIHNwZWNpZnkgc2VtdmVyIHJlcXVpcmVtZW50cyBpblxuICAgKiB0aGUgc2FtZSBzeW50YXggcGFzc2VkIHRvIGBucG0gaWAgb3IgYHlhcm4gYWRkYCAoZS5nLiBgZXhwcmVzc0BeMmApIGFuZFxuICAgKiB0aGlzIHdpbGwgYmUgd2hhdCB5b3UgYHBhY2thZ2UuanNvbmAgd2lsbCBldmVudHVhbGx5IGluY2x1ZGUuXG4gICAqL1xuICByZWFkb25seSBidW5kbGVkRGVwcz86IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBgQnVuZGxlcmAuXG4gICAqL1xuICByZWFkb25seSBidW5kbGVyT3B0aW9ucz86IGphdmFzY3JpcHQuQnVuZGxlck9wdGlvbnM7XG4gIC8qKlxuICAgKiBUaGUgdmVyc2lvbiBvZiBCdW4gdG8gdXNlIGlmIHVzaW5nIEJ1biBhcyBhIHBhY2thZ2UgbWFuYWdlci5cbiAgICogQGRlZmF1bHQgXCJsYXRlc3RcIlxuICAgKi9cbiAgcmVhZG9ubHkgYnVuVmVyc2lvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIENvbmZpZ3VyZSB3aGljaCBsaWNlbnNlcyBzaG91bGQgYmUgZGVlbWVkIGFjY2VwdGFibGUgZm9yIHVzZSBieSBkZXBlbmRlbmNpZXMuXG4gICAqIFRoaXMgc2V0dGluZyB3aWxsIGNhdXNlIHRoZSBidWlsZCB0byBmYWlsLCBpZiBhbnkgcHJvaGliaXRlZCBvciBub3QgYWxsb3dlZCBsaWNlbnNlcyBhcmVzIGVuY291bnRlcmVkLlxuICAgKiBAZGVmYXVsdCAtIG5vIGxpY2Vuc2UgY2hlY2tzIGFyZSBydW4gZHVyaW5nIHRoZSBidWlsZCBhbmQgYWxsIGxpY2Vuc2VzIHdpbGwgYmUgYWNjZXB0ZWRcbiAgICovXG4gIHJlYWRvbmx5IGNoZWNrTGljZW5zZXM/OiBqYXZhc2NyaXB0LkxpY2Vuc2VDaGVja2VyT3B0aW9ucztcbiAgLyoqXG4gICAqIEFkZCBhIGBjbG9iYmVyYCB0YXNrIHdoaWNoIHJlc2V0cyB0aGUgcmVwbyB0byBvcmlnaW4uXG4gICAqIEBkZWZhdWx0IC0gdHJ1ZSwgYnV0IGZhbHNlIGZvciBzdWJwcm9qZWN0c1xuICAgKi9cbiAgcmVhZG9ubHkgY2xvYmJlcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBucG0gcGFja2FnZXMgdXNpbmcgQVdTIENvZGVBcnRpZmFjdC5cbiAgICogVGhpcyBpcyByZXF1aXJlZCBpZiBwdWJsaXNoaW5nIHBhY2thZ2VzIHRvLCBvciBpbnN0YWxsaW5nIHNjb3BlZCBwYWNrYWdlcyBmcm9tIEFXUyBDb2RlQXJ0aWZhY3RcbiAgICogQGRlZmF1bHQgLSB1bmRlZmluZWRcbiAgICovXG4gIHJlYWRvbmx5IGNvZGVBcnRpZmFjdE9wdGlvbnM/OiBqYXZhc2NyaXB0LkNvZGVBcnRpZmFjdE9wdGlvbnM7XG4gIC8qKlxuICAgKiBEZWZpbmUgYSBHaXRIdWIgd29ya2Zsb3cgc3RlcCBmb3Igc2VuZGluZyBjb2RlIGNvdmVyYWdlIG1ldHJpY3MgdG8gaHR0cHM6Ly9jb2RlY292LmlvLyBVc2VzIGNvZGVjb3YvY29kZWNvdi1hY3Rpb25AdjUgQnkgZGVmYXVsdCwgT0lEQyBhdXRoIGlzIHVzZWQuIEFsdGVybmF0aXZlbHkgYSB0b2tlbiBjYW4gYmUgcHJvdmlkZWQgdmlhIGBjb2RlQ292VG9rZW5TZWNyZXRgLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgY29kZUNvdj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBEZWZpbmUgdGhlIHNlY3JldCBuYW1lIGZvciBhIHNwZWNpZmllZCBodHRwczovL2NvZGVjb3YuaW8vIHRva2VuLlxuICAgKiBAZGVmYXVsdCAtIE9JREMgYXV0aCBpcyB1c2VkXG4gICAqL1xuICByZWFkb25seSBjb2RlQ292VG9rZW5TZWNyZXQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGNvbW1pdCB0aGUgbWFuYWdlZCBmaWxlcyBieSBkZWZhdWx0LlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBjb21taXRHZW5lcmF0ZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogTGljZW5zZSBjb3B5cmlnaHQgb3duZXIuXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdHMgdG8gdGhlIHZhbHVlIG9mIGF1dGhvck5hbWUgb3IgXCJcIiBpZiBgYXV0aG9yTmFtZWAgaXMgdW5kZWZpbmVkLlxuICAgKi9cbiAgcmVhZG9ubHkgY29weXJpZ2h0T3duZXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgY29weXJpZ2h0IHllYXJzIHRvIHB1dCBpbiB0aGUgTElDRU5TRSBmaWxlLlxuICAgKiBAZGVmYXVsdCAtIGN1cnJlbnQgeWVhclxuICAgKi9cbiAgcmVhZG9ubHkgY29weXJpZ2h0UGVyaW9kPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIG1haW4gcmVsZWFzZSBicmFuY2guXG4gICAqIEBkZWZhdWx0IFwibWFpblwiXG4gICAqL1xuICByZWFkb25seSBkZWZhdWx0UmVsZWFzZUJyYW5jaDogc3RyaW5nO1xuICAvKipcbiAgICogVXNlIGRlcGVuZGFib3QgdG8gaGFuZGxlIGRlcGVuZGVuY3kgdXBncmFkZXMuXG4gICAqIENhbm5vdCBiZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggYGRlcHNVcGdyYWRlYC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGRlcGVuZGFib3Q/OiBib29sZWFuO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgZGVwZW5kYWJvdC5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IGRlcGVuZGFib3RPcHRpb25zPzogZ2l0aHViLkRlcGVuZGFib3RPcHRpb25zO1xuICAvKipcbiAgICogUnVudGltZSBkZXBlbmRlbmNpZXMgb2YgdGhpcyBtb2R1bGUuXG4gICAqIFRoZSByZWNvbW1lbmRhdGlvbiBpcyB0byBvbmx5IHNwZWNpZnkgdGhlIG1vZHVsZSBuYW1lIGhlcmUgKGUuZy5cbiAgICogYGV4cHJlc3NgKS4gVGhpcyB3aWxsIGJlaGF2ZSBzaW1pbGFyIHRvIGB5YXJuIGFkZGAgb3IgYG5wbSBpbnN0YWxsYCBpbiB0aGVcbiAgICogc2Vuc2UgdGhhdCBpdCB3aWxsIGFkZCB0aGUgbW9kdWxlIGFzIGEgZGVwZW5kZW5jeSB0byB5b3VyIGBwYWNrYWdlLmpzb25gXG4gICAqIGZpbGUgd2l0aCB0aGUgbGF0ZXN0IHZlcnNpb24gKGBeYCkuIFlvdSBjYW4gc3BlY2lmeSBzZW12ZXIgcmVxdWlyZW1lbnRzIGluXG4gICAqIHRoZSBzYW1lIHN5bnRheCBwYXNzZWQgdG8gYG5wbSBpYCBvciBgeWFybiBhZGRgIChlLmcuIGBleHByZXNzQF4yYCkgYW5kXG4gICAqIHRoaXMgd2lsbCBiZSB3aGF0IHlvdSBgcGFja2FnZS5qc29uYCB3aWxsIGV2ZW50dWFsbHkgaW5jbHVkZS5cbiAgICogQGRlZmF1bHQgW11cbiAgICovXG4gIHJlYWRvbmx5IGRlcHM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogVXNlIHRhc2tzIGFuZCBnaXRodWIgd29ya2Zsb3dzIHRvIGhhbmRsZSBkZXBlbmRlbmN5IHVwZ3JhZGVzLlxuICAgKiBDYW5ub3QgYmUgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGBkZXBlbmRhYm90YC5cbiAgICogQGRlZmF1bHQgLSBgdHJ1ZWAgZm9yIHJvb3QgcHJvamVjdHMsIGBmYWxzZWAgZm9yIHN1YnByb2plY3RzXG4gICAqL1xuICByZWFkb25seSBkZXBzVXBncmFkZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBgVXBncmFkZURlcGVuZGVuY2llc2AuXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBvcHRpb25zXG4gICAqL1xuICByZWFkb25seSBkZXBzVXBncmFkZU9wdGlvbnM/OiBqYXZhc2NyaXB0LlVwZ3JhZGVEZXBlbmRlbmNpZXNPcHRpb25zO1xuICAvKipcbiAgICogVGhlIGRlc2NyaXB0aW9uIGlzIGp1c3QgYSBzdHJpbmcgdGhhdCBoZWxwcyBwZW9wbGUgdW5kZXJzdGFuZCB0aGUgcHVycG9zZSBvZiB0aGUgcGFja2FnZS5cbiAgICogSXQgY2FuIGJlIHVzZWQgd2hlbiBzZWFyY2hpbmcgZm9yIHBhY2thZ2VzIGluIGEgcGFja2FnZSBtYW5hZ2VyIGFzIHdlbGwuXG4gICAqIFNlZSBodHRwczovL2NsYXNzaWMueWFybnBrZy5jb20vZW4vZG9jcy9wYWNrYWdlLWpzb24vI3RvYy1kZXNjcmlwdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBZGQgYSBWU0NvZGUgZGV2ZWxvcG1lbnQgZW52aXJvbm1lbnQgKHVzZWQgZm9yIEdpdEh1YiBDb2Rlc3BhY2VzKS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGRldkNvbnRhaW5lcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBCdWlsZCBkZXBlbmRlbmNpZXMgZm9yIHRoaXMgbW9kdWxlLlxuICAgKiBUaGVzZSBkZXBlbmRlbmNpZXMgd2lsbCBvbmx5IGJlXG4gICAqIGF2YWlsYWJsZSBpbiB5b3VyIGJ1aWxkIGVudmlyb25tZW50IGJ1dCB3aWxsIG5vdCBiZSBmZXRjaGVkIHdoZW4gdGhpc1xuICAgKiBtb2R1bGUgaXMgY29uc3VtZWQuXG4gICAqXG4gICAqIFRoZSByZWNvbW1lbmRhdGlvbiBpcyB0byBvbmx5IHNwZWNpZnkgdGhlIG1vZHVsZSBuYW1lIGhlcmUgKGUuZy5cbiAgICogYGV4cHJlc3NgKS4gVGhpcyB3aWxsIGJlaGF2ZSBzaW1pbGFyIHRvIGB5YXJuIGFkZGAgb3IgYG5wbSBpbnN0YWxsYCBpbiB0aGVcbiAgICogc2Vuc2UgdGhhdCBpdCB3aWxsIGFkZCB0aGUgbW9kdWxlIGFzIGEgZGVwZW5kZW5jeSB0byB5b3VyIGBwYWNrYWdlLmpzb25gXG4gICAqIGZpbGUgd2l0aCB0aGUgbGF0ZXN0IHZlcnNpb24gKGBeYCkuIFlvdSBjYW4gc3BlY2lmeSBzZW12ZXIgcmVxdWlyZW1lbnRzIGluXG4gICAqIHRoZSBzYW1lIHN5bnRheCBwYXNzZWQgdG8gYG5wbSBpYCBvciBgeWFybiBhZGRgIChlLmcuIGBleHByZXNzQF4yYCkgYW5kXG4gICAqIHRoaXMgd2lsbCBiZSB3aGF0IHlvdSBgcGFja2FnZS5qc29uYCB3aWxsIGV2ZW50dWFsbHkgaW5jbHVkZS5cbiAgICogQGRlZmF1bHQgW11cbiAgICovXG4gIHJlYWRvbmx5IGRldkRlcHM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogRG8gbm90IGdlbmVyYXRlIGEgYHRzY29uZmlnLmpzb25gIGZpbGUgKHVzZWQgYnkganNpaSBwcm9qZWN0cyBzaW5jZSB0c2NvbmZpZy5qc29uIGlzIGdlbmVyYXRlZCBieSB0aGUganNpaSBjb21waWxlcikuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBkaXNhYmxlVHNjb25maWc/OiBib29sZWFuO1xuICAvKipcbiAgICogRG8gbm90IGdlbmVyYXRlIGEgYHRzY29uZmlnLmRldi5qc29uYCBmaWxlLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYWJsZVRzY29uZmlnRGV2PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERvY2dlbiBieSBUeXBlZG9jLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZG9jZ2VuPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERvY3MgZGlyZWN0b3J5LlxuICAgKiBAZGVmYXVsdCBcImRvY3NcIlxuICAgKi9cbiAgcmVhZG9ubHkgZG9jc0RpcmVjdG9yeT86IHN0cmluZztcbiAgLyoqXG4gICAqIE1vZHVsZSBlbnRyeXBvaW50IChgbWFpbmAgaW4gYHBhY2thZ2UuanNvbmApLlxuICAgKiBTZXQgdG8gYW4gZW1wdHkgc3RyaW5nIHRvIG5vdCBpbmNsdWRlIGBtYWluYCBpbiB5b3VyIHBhY2thZ2UuanNvblxuICAgKiBAZGVmYXVsdCBcImxpYi9pbmRleC5qc1wiXG4gICAqL1xuICByZWFkb25seSBlbnRyeXBvaW50Pzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIC5kLnRzIGZpbGUgdGhhdCBpbmNsdWRlcyB0aGUgdHlwZSBkZWNsYXJhdGlvbnMgZm9yIHRoaXMgbW9kdWxlLlxuICAgKiBAZGVmYXVsdCAtIC5kLnRzIGZpbGUgZGVyaXZlZCBmcm9tIHRoZSBwcm9qZWN0J3MgZW50cnlwb2ludCAodXN1YWxseSBsaWIvaW5kZXguZC50cylcbiAgICovXG4gIHJlYWRvbmx5IGVudHJ5cG9pbnRUeXBlcz86IHN0cmluZztcbiAgLyoqXG4gICAqIEVzbGludCBvcHRpb25zLlxuICAgKiBAZGVmYXVsdCAtIG9waW5pb25hdGVkIGRlZmF1bHQgb3B0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgZXNsaW50T3B0aW9ucz86IGphdmFzY3JpcHQuRXNsaW50T3B0aW9ucztcbiAgLyoqXG4gICAqIEVuYWJsZSBHaXRIdWIgaW50ZWdyYXRpb24uXG4gICAqIEVuYWJsZWQgYnkgZGVmYXVsdCBmb3Igcm9vdCBwcm9qZWN0cy4gRGlzYWJsZWQgZm9yIG5vbi1yb290IHByb2plY3RzLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBnaXRodWI/OiBib29sZWFuO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgR2l0SHViIGludGVncmF0aW9uLlxuICAgKiBAZGVmYXVsdCAtIHNlZSBHaXRIdWJPcHRpb25zXG4gICAqL1xuICByZWFkb25seSBnaXRodWJPcHRpb25zPzogZ2l0aHViLkdpdEh1Yk9wdGlvbnM7XG4gIC8qKlxuICAgKiBBZGRpdGlvbmFsIGVudHJpZXMgdG8gLmdpdGlnbm9yZS5cbiAgICovXG4gIHJlYWRvbmx5IGdpdGlnbm9yZT86IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIC5naXRpZ25vcmUgZmlsZS5cbiAgICovXG4gIHJlYWRvbmx5IGdpdElnbm9yZU9wdGlvbnM/OiBJZ25vcmVGaWxlT3B0aW9ucztcbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgZ2l0LlxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0T3B0aW9ucz86IEdpdE9wdGlvbnM7XG4gIC8qKlxuICAgKiBBZGQgYSBHaXRwb2QgZGV2ZWxvcG1lbnQgZW52aXJvbm1lbnQuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBnaXRwb2Q/OiBib29sZWFuO1xuICAvKipcbiAgICogUGFja2FnZSdzIEhvbWVwYWdlIC8gV2Vic2l0ZS5cbiAgICovXG4gIHJlYWRvbmx5IGhvbWVwYWdlPzogc3RyaW5nO1xuICAvKipcbiAgICogVmVyc2lvbiByZXF1aXJlbWVudCBvZiBgcHVibGliYCB3aGljaCBpcyB1c2VkIHRvIHB1Ymxpc2ggbW9kdWxlcyB0byBucG0uXG4gICAqIEBkZWZhdWx0IFwibGF0ZXN0XCJcbiAgICovXG4gIHJlYWRvbmx5IGpzaWlSZWxlYXNlVmVyc2lvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIEtleXdvcmRzIHRvIGluY2x1ZGUgaW4gYHBhY2thZ2UuanNvbmAuXG4gICAqL1xuICByZWFkb25seSBrZXl3b3Jkcz86IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBUeXBlc2NyaXB0ICBhcnRpZmFjdHMgb3V0cHV0IGRpcmVjdG9yeS5cbiAgICogQGRlZmF1bHQgXCJsaWJcIlxuICAgKi9cbiAgcmVhZG9ubHkgbGliZGlyPzogc3RyaW5nO1xuICAvKipcbiAgICogTGljZW5zZSdzIFNQRFggaWRlbnRpZmllci5cbiAgICogU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9wcm9qZW4vcHJvamVuL3RyZWUvbWFpbi9saWNlbnNlLXRleHQgZm9yIGEgbGlzdCBvZiBzdXBwb3J0ZWQgbGljZW5zZXMuXG4gICAqIFVzZSB0aGUgYGxpY2Vuc2VkYCBvcHRpb24gaWYgeW91IHdhbnQgdG8gbm8gbGljZW5zZSB0byBiZSBzcGVjaWZpZWQuXG4gICAqIEBkZWZhdWx0IFwiQXBhY2hlLTIuMFwiXG4gICAqL1xuICByZWFkb25seSBsaWNlbnNlPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIGEgbGljZW5zZSBzaG91bGQgYmUgYWRkZWQuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGxpY2Vuc2VkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbmZpZ3VyZSBsb2dnaW5nIG9wdGlvbnMgc3VjaCBhcyB2ZXJib3NpdHkuXG4gICAqIEBkZWZhdWx0IHt9XG4gICAqL1xuICByZWFkb25seSBsb2dnaW5nPzogTG9nZ2VyT3B0aW9ucztcbiAgLyoqXG4gICAqIE1ham9yIHZlcnNpb24gdG8gcmVsZWFzZSBmcm9tIHRoZSBkZWZhdWx0IGJyYW5jaC5cbiAgICogSWYgdGhpcyBpcyBzcGVjaWZpZWQsIHdlIGJ1bXAgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbWFqb3IgdmVyc2lvbiBsaW5lLlxuICAgKiBJZiBub3Qgc3BlY2lmaWVkLCB3ZSBidW1wIHRoZSBnbG9iYWwgbGF0ZXN0IHZlcnNpb24uXG4gICAqIEBkZWZhdWx0IC0gTWFqb3IgdmVyc2lvbiBpcyBub3QgZW5mb3JjZWQuXG4gICAqL1xuICByZWFkb25seSBtYWpvclZlcnNpb24/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBub2RlIHZlcnNpb24gc3VwcG9ydGVkIGJ5IHRoaXMgcGFja2FnZS4gTW9zdCBwcm9qZWN0cyBzaG91bGQgbm90IHVzZSB0aGlzIG9wdGlvbi5cbiAgICogVGhlIHZhbHVlIGluZGljYXRlcyB0aGF0IHRoZSBwYWNrYWdlIGlzIGluY29tcGF0aWJsZSB3aXRoIGFueSBuZXdlciB2ZXJzaW9ucyBvZiBub2RlLlxuICAgKiBUaGlzIHJlcXVpcmVtZW50IGlzIGVuZm9yY2VkIHZpYSB0aGUgZW5naW5lcyBmaWVsZC5cbiAgICpcbiAgICogWW91IHdpbGwgbm9ybWFsbHkgbm90IG5lZWQgdG8gc2V0IHRoaXMgb3B0aW9uLlxuICAgKiBDb25zaWRlciB0aGlzIG9wdGlvbiBvbmx5IGlmIHlvdXIgcGFja2FnZSBpcyBrbm93biB0byBub3QgZnVuY3Rpb24gd2l0aCBuZXdlciB2ZXJzaW9ucyBvZiBub2RlLlxuICAgKiBAZGVmYXVsdCAtIG5vIG1heGltdW0gdmVyc2lvbiBpcyBlbmZvcmNlZFxuICAgKi9cbiAgcmVhZG9ubHkgbWF4Tm9kZVZlcnNpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBXaGV0aGVyIG1lcmdpZnkgc2hvdWxkIGJlIGVuYWJsZWQgb24gdGhpcyByZXBvc2l0b3J5IG9yIG5vdC5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAZGVwcmVjYXRlZCB1c2UgYGdpdGh1Yk9wdGlvbnMubWVyZ2lmeWAgaW5zdGVhZFxuICAgKi9cbiAgcmVhZG9ubHkgbWVyZ2lmeT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBtZXJnaWZ5LlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAZGVwcmVjYXRlZCB1c2UgYGdpdGh1Yk9wdGlvbnMubWVyZ2lmeU9wdGlvbnNgIGluc3RlYWRcbiAgICovXG4gIHJlYWRvbmx5IG1lcmdpZnlPcHRpb25zPzogZ2l0aHViLk1lcmdpZnlPcHRpb25zO1xuICAvKipcbiAgICogTWluaW1hbCBNYWpvciB2ZXJzaW9uIHRvIHJlbGVhc2UuXG4gICAqIFRoaXMgY2FuIGJlIHVzZWZ1bCB0byBzZXQgdG8gMSwgYXMgYnJlYWtpbmcgY2hhbmdlcyBiZWZvcmUgdGhlIDEueCBtYWpvclxuICAgKiByZWxlYXNlIGFyZSBub3QgaW5jcmVtZW50aW5nIHRoZSBtYWpvciB2ZXJzaW9uIG51bWJlci5cbiAgICpcbiAgICogQ2FuIG5vdCBiZSBzZXQgdG9nZXRoZXIgd2l0aCBgbWFqb3JWZXJzaW9uYC5cbiAgICogQGRlZmF1bHQgLSBObyBtaW5pbXVtIHZlcnNpb24gaXMgYmVpbmcgZW5mb3JjZWRcbiAgICovXG4gIHJlYWRvbmx5IG1pbk1ham9yVmVyc2lvbj86IG51bWJlcjtcbiAgLyoqXG4gICAqIE1pbmltdW0gTm9kZS5qcyB2ZXJzaW9uIHRvIHJlcXVpcmUgdmlhIHBhY2thZ2UuanNvbiBgZW5naW5lc2AgKGluY2x1c2l2ZSkuXG4gICAqXG4gICAqIE9ubHkgc2V0IHRoaXMgaWYgeW91ciBwYWNrYWdlIHdpbGwgbm90IHdvcmsgcHJvcGVybHkgb24gc3BlY2lmaWMgKG9sZGVyPylcbiAgICogTm9kZSB2ZXJzaW9ucy5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBcImVuZ2luZXNcIiBzcGVjaWZpZWRcbiAgICovXG4gIHJlYWRvbmx5IG1pbk5vZGVWZXJzaW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogQXV0b21hdGljYWxseSB1cGRhdGUgZmlsZXMgbW9kaWZpZWQgZHVyaW5nIGJ1aWxkcyB0byBwdWxsLXJlcXVlc3QgYnJhbmNoZXMuXG4gICAqIFRoaXMgbWVhbnNcbiAgICogdGhhdCBhbnkgZmlsZXMgc3ludGhlc2l6ZWQgYnkgcHJvamVuIG9yIGUuZy4gdGVzdCBzbmFwc2hvdHMgd2lsbCBhbHdheXMgYmUgdXAtdG8tZGF0ZVxuICAgKiBiZWZvcmUgYSBQUiBpcyBtZXJnZWQuXG4gICAqXG4gICAqIEltcGxpZXMgdGhhdCBQUiBidWlsZHMgZG8gbm90IGhhdmUgYW50aS10YW1wZXIgY2hlY2tzLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBkZXByZWNhdGVkIC0gVXNlIGBidWlsZFdvcmtmbG93T3B0aW9ucy5tdXRhYmxlQnVpbGRgXG4gICAqL1xuICByZWFkb25seSBtdXRhYmxlQnVpbGQ/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhpcyBpcyB0aGUgbmFtZSBvZiB5b3VyIHByb2plY3QuXG4gICAqIEBkZWZhdWx0ICRCQVNFRElSXG4gICAqL1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBIHNoZWxsIGNvbW1hbmQgdG8gY29udHJvbCB0aGUgbmV4dCB2ZXJzaW9uIHRvIHJlbGVhc2UuXG4gICAqIElmIHByZXNlbnQsIHRoaXMgc2hlbGwgY29tbWFuZCB3aWxsIGJlIHJ1biBiZWZvcmUgdGhlIGJ1bXAgaXMgZXhlY3V0ZWQsIGFuZFxuICAgKiBpdCBkZXRlcm1pbmVzIHdoYXQgdmVyc2lvbiB0byByZWxlYXNlLiBJdCB3aWxsIGJlIGV4ZWN1dGVkIGluIHRoZSBmb2xsb3dpbmdcbiAgICogZW52aXJvbm1lbnQ6XG4gICAqXG4gICAqIC0gV29ya2luZyBkaXJlY3Rvcnk6IHRoZSBwcm9qZWN0IGRpcmVjdG9yeS5cbiAgICogLSBgJFZFUlNJT05gOiB0aGUgY3VycmVudCB2ZXJzaW9uLiBMb29rcyBsaWtlIGAxLjIuM2AuXG4gICAqIC0gYCRMQVRFU1RfVEFHYDogdGhlIG1vc3QgcmVjZW50IHRhZy4gTG9va3MgbGlrZSBgcHJlZml4LXYxLjIuM2AsIG9yIG1heSBiZSB1bnNldC5cbiAgICogLSBgJFNVR0dFU1RFRF9CVU1QYDogdGhlIHN1Z2dlc3RlZCBidW1wIGFjdGlvbiBiYXNlZCBvbiBjb21taXRzLiBPbmUgb2YgYG1ham9yfG1pbm9yfHBhdGNofG5vbmVgLlxuICAgKlxuICAgKiBUaGUgY29tbWFuZCBzaG91bGQgcHJpbnQgb25lIG9mIHRoZSBmb2xsb3dpbmcgdG8gYHN0ZG91dGA6XG4gICAqXG4gICAqIC0gTm90aGluZzogdGhlIG5leHQgdmVyc2lvbiBudW1iZXIgd2lsbCBiZSBkZXRlcm1pbmVkIGJhc2VkIG9uIGNvbW1pdCBoaXN0b3J5LlxuICAgKiAtIGB4LnkuemA6IHRoZSBuZXh0IHZlcnNpb24gbnVtYmVyIHdpbGwgYmUgYHgueS56YC5cbiAgICogLSBgbWFqb3J8bWlub3J8cGF0Y2hgOiB0aGUgbmV4dCB2ZXJzaW9uIG51bWJlciB3aWxsIGJlIHRoZSBjdXJyZW50IHZlcnNpb24gbnVtYmVyXG4gICAqICAgd2l0aCB0aGUgaW5kaWNhdGVkIGNvbXBvbmVudCBidW1wZWQuXG4gICAqXG4gICAqIFRoaXMgc2V0dGluZyBjYW5ub3QgYmUgc3BlY2lmaWVkIHRvZ2V0aGVyIHdpdGggYG1pbk1ham9yVmVyc2lvbmA7IHRoZSBpbnZva2VkXG4gICAqIHNjcmlwdCBjYW4gYmUgdXNlZCB0byBhY2hpZXZlIHRoZSBlZmZlY3RzIG9mIGBtaW5NYWpvclZlcnNpb25gLlxuICAgKiBAZGVmYXVsdCAtIFRoZSBuZXh0IHZlcnNpb24gd2lsbCBiZSBkZXRlcm1pbmVkIGJhc2VkIG9uIHRoZSBjb21taXQgaGlzdG9yeSBhbmQgcHJvamVjdCBzZXR0aW5ncy5cbiAgICovXG4gIHJlYWRvbmx5IG5leHRWZXJzaW9uQ29tbWFuZD86IHN0cmluZztcbiAgLyoqXG4gICAqIEFjY2VzcyBsZXZlbCBvZiB0aGUgbnBtIHBhY2thZ2UuXG4gICAqIEBkZWZhdWx0IC0gZm9yIHNjb3BlZCBwYWNrYWdlcyAoZS5nLiBgZm9vQGJhcmApLCB0aGUgZGVmYXVsdCBpc1xuYE5wbUFjY2Vzcy5SRVNUUklDVEVEYCwgZm9yIG5vbi1zY29wZWQgcGFja2FnZXMsIHRoZSBkZWZhdWx0IGlzXG5gTnBtQWNjZXNzLlBVQkxJQ2AuXG4gICAqL1xuICByZWFkb25seSBucG1BY2Nlc3M/OiBqYXZhc2NyaXB0Lk5wbUFjY2VzcztcbiAgLyoqXG4gICAqIFRoZSBucG1EaXN0VGFnIHRvIHVzZSB3aGVuIHB1Ymxpc2hpbmcgZnJvbSB0aGUgZGVmYXVsdCBicmFuY2guXG4gICAqIFRvIHNldCB0aGUgbnBtIGRpc3QtdGFnIGZvciByZWxlYXNlIGJyYW5jaGVzLCBzZXQgdGhlIGBucG1EaXN0VGFnYCBwcm9wZXJ0eVxuICAgKiBmb3IgZWFjaCBicmFuY2guXG4gICAqIEBkZWZhdWx0IFwibGF0ZXN0XCJcbiAgICovXG4gIHJlYWRvbmx5IG5wbURpc3RUYWc/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBZGRpdGlvbmFsIGVudHJpZXMgdG8gLm5wbWlnbm9yZS5cbiAgICogQGRlcHJlY2F0ZWQgLSB1c2UgYHByb2plY3QuYWRkUGFja2FnZUlnbm9yZWBcbiAgICovXG4gIHJlYWRvbmx5IG5wbWlnbm9yZT86IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBEZWZpbmVzIGFuIC5ucG1pZ25vcmUgZmlsZS4gTm9ybWFsbHkgdGhpcyBpcyBvbmx5IG5lZWRlZCBmb3IgbGlicmFyaWVzIHRoYXQgYXJlIHBhY2thZ2VkIGFzIHRhcmJhbGxzLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBucG1pZ25vcmVFbmFibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgLm5wbWlnbm9yZSBmaWxlLlxuICAgKi9cbiAgcmVhZG9ubHkgbnBtSWdub3JlT3B0aW9ucz86IElnbm9yZUZpbGVPcHRpb25zO1xuICAvKipcbiAgICogU2hvdWxkIHByb3ZlbmFuY2Ugc3RhdGVtZW50cyBiZSBnZW5lcmF0ZWQgd2hlbiB0aGUgcGFja2FnZSBpcyBwdWJsaXNoZWQuXG4gICAqIEEgc3VwcG9ydGVkIHBhY2thZ2UgbWFuYWdlciBpcyByZXF1aXJlZCB0byBwdWJsaXNoIGEgcGFja2FnZSB3aXRoIG5wbSBwcm92ZW5hbmNlIHN0YXRlbWVudHMgYW5kXG4gICAqIHlvdSB3aWxsIG5lZWQgdG8gdXNlIGEgc3VwcG9ydGVkIENJL0NEIHByb3ZpZGVyLlxuICAgKlxuICAgKiBOb3RlIHRoYXQgdGhlIHByb2plbiBgUmVsZWFzZWAgYW5kIGBQdWJsaXNoZXJgIGNvbXBvbmVudHMgYXJlIHVzaW5nIGBwdWJsaWJgIHRvIHB1Ymxpc2ggcGFja2FnZXMsXG4gICAqIHdoaWNoIGlzIHVzaW5nIG5wbSBpbnRlcm5hbGx5IGFuZCBzdXBwb3J0cyBwcm92ZW5hbmNlIHN0YXRlbWVudHMgaW5kZXBlbmRlbnRseSBvZiB0aGUgcGFja2FnZSBtYW5hZ2VyIHVzZWQuXG4gICAqIEBkZWZhdWx0IC0gdHJ1ZSBmb3IgcHVibGljIHBhY2thZ2VzLCBmYWxzZSBvdGhlcndpc2VcbiAgICovXG4gIHJlYWRvbmx5IG5wbVByb3ZlbmFuY2U/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIGhvc3QgbmFtZSBvZiB0aGUgbnBtIHJlZ2lzdHJ5IHRvIHB1Ymxpc2ggdG8uXG4gICAqIENhbm5vdCBiZSBzZXQgdG9nZXRoZXIgd2l0aCBgbnBtUmVnaXN0cnlVcmxgLlxuICAgKiBAZGVwcmVjYXRlZCB1c2UgYG5wbVJlZ2lzdHJ5VXJsYCBpbnN0ZWFkXG4gICAqL1xuICByZWFkb25seSBucG1SZWdpc3RyeT86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBiYXNlIFVSTCBvZiB0aGUgbnBtIHBhY2thZ2UgcmVnaXN0cnkuXG4gICAqIE11c3QgYmUgYSBVUkwgKGUuZy4gc3RhcnQgd2l0aCBcImh0dHBzOi8vXCIgb3IgXCJodHRwOi8vXCIpXG4gICAqIEBkZWZhdWx0IFwiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmdcIlxuICAgKi9cbiAgcmVhZG9ubHkgbnBtUmVnaXN0cnlVcmw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBHaXRIdWIgc2VjcmV0IHdoaWNoIGNvbnRhaW5zIHRoZSBOUE0gdG9rZW4gdG8gdXNlIHdoZW4gcHVibGlzaGluZyBwYWNrYWdlcy5cbiAgICogQGRlZmF1bHQgXCJOUE1fVE9LRU5cIlxuICAgKi9cbiAgcmVhZG9ubHkgbnBtVG9rZW5TZWNyZXQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBVc2UgdHJ1c3RlZCBwdWJsaXNoaW5nIGZvciBwdWJsaXNoaW5nIHRvIG5wbWpzLmNvbSBOZWVkcyB0byBiZSBwcmUtY29uZmlndXJlZCBvbiBucG0uanMgdG8gd29yay5cbiAgICogQGRlZmF1bHQgLSBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgbnBtVHJ1c3RlZFB1Ymxpc2hpbmc/OiBib29sZWFuO1xuICAvKipcbiAgICogRW5hYmxlIHRoZSBpbnRlZ3JhdGlvbiB3aXRoIE54IGluIHRoZSBtb25vcmVwb1xuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgbng/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoZSBwcm9qZWN0LlxuICAgKiBSZWxhdGl2ZSB0byB0aGlzIGRpcmVjdG9yeSwgYWxsIGZpbGVzIGFyZSBzeW50aGVzaXplZC5cbiAgICpcbiAgICogSWYgdGhpcyBwcm9qZWN0IGhhcyBhIHBhcmVudCwgdGhpcyBkaXJlY3RvcnkgaXMgcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICAgKiBkaXJlY3RvcnkgYW5kIGl0IGNhbm5vdCBiZSB0aGUgc2FtZSBhcyB0aGUgcGFyZW50IG9yIGFueSBvZiBpdCdzIG90aGVyXG4gICAqIHN1YnByb2plY3RzLlxuICAgKiBAZGVmYXVsdCBcIi5cIlxuICAgKi9cbiAgcmVhZG9ubHkgb3V0ZGlyPzogc3RyaW5nO1xuICAvKipcbiAgICogRGVmaW5lcyBhIGBwYWNrYWdlYCB0YXNrIHRoYXQgd2lsbCBwcm9kdWNlIGFuIG5wbSB0YXJiYWxsIHVuZGVyIHRoZSBhcnRpZmFjdHMgZGlyZWN0b3J5IChlLmcuIGBkaXN0YCkuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHBhY2thZ2U/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIFwibmFtZVwiIGluIHBhY2thZ2UuanNvbi5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0cyB0byBwcm9qZWN0IG5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHBhY2thZ2VOYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIHBhcmVudCBwcm9qZWN0LCBpZiB0aGlzIHByb2plY3QgaXMgcGFydCBvZiBhIGJpZ2dlciBwcm9qZWN0LlxuICAgKi9cbiAgcmVhZG9ubHkgcGFyZW50PzogUHJvamVjdDtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIGBwZWVyRGVwc2AuXG4gICAqL1xuICByZWFkb25seSBwZWVyRGVwZW5kZW5jeU9wdGlvbnM/OiBqYXZhc2NyaXB0LlBlZXJEZXBlbmRlbmN5T3B0aW9ucztcbiAgLyoqXG4gICAqIFBlZXIgZGVwZW5kZW5jaWVzIGZvciB0aGlzIG1vZHVsZS5cbiAgICogRGVwZW5kZW5jaWVzIGxpc3RlZCBoZXJlIGFyZSByZXF1aXJlZCB0b1xuICAgKiBiZSBpbnN0YWxsZWQgKGFuZCBzYXRpc2ZpZWQpIGJ5IHRoZSBfY29uc3VtZXJfIG9mIHRoaXMgbGlicmFyeS4gVXNpbmcgcGVlclxuICAgKiBkZXBlbmRlbmNpZXMgYWxsb3dzIHlvdSB0byBlbnN1cmUgdGhhdCBvbmx5IGEgc2luZ2xlIG1vZHVsZSBvZiBhIGNlcnRhaW5cbiAgICogbGlicmFyeSBleGlzdHMgaW4gdGhlIGBub2RlX21vZHVsZXNgIHRyZWUgb2YgeW91ciBjb25zdW1lcnMuXG4gICAqXG4gICAqIE5vdGUgdGhhdCBwcmlvciB0byBucG1ANywgcGVlciBkZXBlbmRlbmNpZXMgYXJlIF9ub3RfIGF1dG9tYXRpY2FsbHlcbiAgICogaW5zdGFsbGVkLCB3aGljaCBtZWFucyB0aGF0IGFkZGluZyBwZWVyIGRlcGVuZGVuY2llcyB0byBhIGxpYnJhcnkgd2lsbCBiZSBhXG4gICAqIGJyZWFraW5nIGNoYW5nZSBmb3IgeW91ciBjdXN0b21lcnMuXG4gICAqXG4gICAqIFVubGVzcyBgcGVlckRlcGVuZGVuY3lPcHRpb25zLnBpbm5lZERldkRlcGVuZGVuY3lgIGlzIGRpc2FibGVkIChpdCBpc1xuICAgKiBlbmFibGVkIGJ5IGRlZmF1bHQpLCBwcm9qZW4gd2lsbCBhdXRvbWF0aWNhbGx5IGFkZCBhIGRldiBkZXBlbmRlbmN5IHdpdGggYVxuICAgKiBwaW5uZWQgdmVyc2lvbiBmb3IgZWFjaCBwZWVyIGRlcGVuZGVuY3kuIFRoaXMgd2lsbCBlbnN1cmUgdGhhdCB5b3UgYnVpbGQgJlxuICAgKiB0ZXN0IHlvdXIgbW9kdWxlIGFnYWluc3QgdGhlIGxvd2VzdCBwZWVyIHZlcnNpb24gcmVxdWlyZWQuXG4gICAqIEBkZWZhdWx0IFtdXG4gICAqL1xuICByZWFkb25seSBwZWVyRGVwcz86IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBUaGUgdmVyc2lvbiBvZiBQTlBNIHRvIHVzZSBpZiB1c2luZyBQTlBNIGFzIGEgcGFja2FnZSBtYW5hZ2VyLlxuICAgKiBAZGVmYXVsdCBcIjlcIlxuICAgKi9cbiAgcmVhZG9ubHkgcG5wbVZlcnNpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTdGVwcyB0byBleGVjdXRlIGFmdGVyIGJ1aWxkIGFzIHBhcnQgb2YgdGhlIHJlbGVhc2Ugd29ya2Zsb3cuXG4gICAqIEBkZWZhdWx0IFtdXG4gICAqL1xuICByZWFkb25seSBwb3N0QnVpbGRTdGVwcz86IEFycmF5PGdpdGh1Yi53b3JrZmxvd3MuSm9iU3RlcD47XG4gIC8qKlxuICAgKiBCdW1wIHZlcnNpb25zIGZyb20gdGhlIGRlZmF1bHQgYnJhbmNoIGFzIHByZS1yZWxlYXNlcyAoZS5nLiBcImJldGFcIiwgXCJhbHBoYVwiLCBcInByZVwiKS5cbiAgICogQGRlZmF1bHQgLSBub3JtYWwgc2VtYW50aWMgdmVyc2lvbnNcbiAgICovXG4gIHJlYWRvbmx5IHByZXJlbGVhc2U/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTZXR1cCBwcmV0dGllci5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHByZXR0aWVyPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFByZXR0aWVyIG9wdGlvbnMuXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBvcHRpb25zXG4gICAqL1xuICByZWFkb25seSBwcmV0dGllck9wdGlvbnM/OiBqYXZhc2NyaXB0LlByZXR0aWVyT3B0aW9ucztcbiAgLyoqXG4gICAqIFdoaWNoIHR5cGUgb2YgcHJvamVjdCB0aGlzIGlzIChsaWJyYXJ5L2FwcCkuXG4gICAqIEBkZWZhdWx0IFByb2plY3RUeXBlLlVOS05PV05cbiAgICogQGRlcHJlY2F0ZWQgbm8gbG9uZ2VyIHN1cHBvcnRlZCBhdCB0aGUgYmFzZSBwcm9qZWN0IGxldmVsXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0VHlwZT86IFByb2plY3RUeXBlO1xuICAvKipcbiAgICogVGhlIHNoZWxsIGNvbW1hbmQgdG8gdXNlIGluIG9yZGVyIHRvIHJ1biB0aGUgcHJvamVuIENMSS5cbiAgICogQ2FuIGJlIHVzZWQgdG8gY3VzdG9taXplIGluIHNwZWNpYWwgZW52aXJvbm1lbnRzLlxuICAgKiBAZGVmYXVsdCBcIm5weCBwcm9qZW5cIlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVuQ29tbWFuZD86IHN0cmluZztcbiAgLyoqXG4gICAqIENob29zZSBhIG1ldGhvZCBvZiBwcm92aWRpbmcgR2l0SHViIEFQSSBhY2Nlc3MgZm9yIHByb2plbiB3b3JrZmxvd3MuXG4gICAqIEBkZWZhdWx0IC0gdXNlIGEgcGVyc29uYWwgYWNjZXNzIHRva2VuIG5hbWVkIFBST0pFTl9HSVRIVUJfVE9LRU5cbiAgICovXG4gIHJlYWRvbmx5IHByb2plbkNyZWRlbnRpYWxzPzogZ2l0aHViLkdpdGh1YkNyZWRlbnRpYWxzO1xuICAvKipcbiAgICogSW5kaWNhdGVzIG9mIFwicHJvamVuXCIgc2hvdWxkIGJlIGluc3RhbGxlZCBhcyBhIGRldkRlcGVuZGVuY3kuXG4gICAqIEBkZWZhdWx0IC0gdHJ1ZSBpZiBub3QgYSBzdWJwcm9qZWN0XG4gICAqL1xuICByZWFkb25seSBwcm9qZW5EZXZEZXBlbmRlbmN5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEdlbmVyYXRlIChvbmNlKSAucHJvamVucmMuanMgKGluIEphdmFTY3JpcHQpLiBTZXQgdG8gYGZhbHNlYCBpbiBvcmRlciB0byBkaXNhYmxlIC5wcm9qZW5yYy5qcyBnZW5lcmF0aW9uLlxuICAgKiBAZGVmYXVsdCAtIHRydWUgaWYgcHJvamVucmNKc29uIGlzIGZhbHNlXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY0pzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEdlbmVyYXRlIChvbmNlKSAucHJvamVucmMuanNvbiAoaW4gSlNPTikuIFNldCB0byBgZmFsc2VgIGluIG9yZGVyIHRvIGRpc2FibGUgLnByb2plbnJjLmpzb24gZ2VuZXJhdGlvbi5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjSnNvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciAucHJvamVucmMuanNvbi5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjSnNvbk9wdGlvbnM/OiBQcm9qZW5yY0pzb25PcHRpb25zO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgLnByb2plbnJjLmpzLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVucmNKc09wdGlvbnM/OiBqYXZhc2NyaXB0LlByb2plbnJjT3B0aW9ucztcbiAgLyoqXG4gICAqIFVzZSBUeXBlU2NyaXB0IGZvciB5b3VyIHByb2plbnJjIGZpbGUgKGAucHJvamVucmMudHNgKS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjVHM/OiBib29sZWFuO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgLnByb2plbnJjLnRzLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVucmNUc09wdGlvbnM/OiB0eXBlc2NyaXB0LlByb2plbnJjT3B0aW9ucztcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIGEgc2VjcmV0IHdoaWNoIGluY2x1ZGVzIGEgR2l0SHViIFBlcnNvbmFsIEFjY2VzcyBUb2tlbiB0byBiZSB1c2VkIGJ5IHByb2plbiB3b3JrZmxvd3MuXG4gICAqIFRoaXMgdG9rZW4gbmVlZHMgdG8gaGF2ZSB0aGUgYHJlcG9gLCBgd29ya2Zsb3dzYFxuICAgKiBhbmQgYHBhY2thZ2VzYCBzY29wZS5cbiAgICogQGRlZmF1bHQgXCJQUk9KRU5fR0lUSFVCX1RPS0VOXCJcbiAgICogQGRlcHJlY2F0ZWQgdXNlIGBwcm9qZW5DcmVkZW50aWFsc2BcbiAgICovXG4gIHJlYWRvbmx5IHByb2plblRva2VuU2VjcmV0Pzogc3RyaW5nO1xuICAvKipcbiAgICogVmVyc2lvbiBvZiBwcm9qZW4gdG8gaW5zdGFsbC5cbiAgICogQGRlZmF1bHQgLSBEZWZhdWx0cyB0byB0aGUgbGF0ZXN0IHZlcnNpb24uXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5WZXJzaW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5zdGVhZCBvZiBhY3R1YWxseSBwdWJsaXNoaW5nIHRvIHBhY2thZ2UgbWFuYWdlcnMsIGp1c3QgcHJpbnQgdGhlIHB1Ymxpc2hpbmcgY29tbWFuZC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHB1Ymxpc2hEcnlSdW4/OiBib29sZWFuO1xuICAvKipcbiAgICogRGVmaW5lIHB1Ymxpc2hpbmcgdGFza3MgdGhhdCBjYW4gYmUgZXhlY3V0ZWQgbWFudWFsbHkgYXMgd2VsbCBhcyB3b3JrZmxvd3MuXG4gICAqIE5vcm1hbGx5LCBwdWJsaXNoaW5nIG9ubHkgaGFwcGVucyB3aXRoaW4gYXV0b21hdGVkIHdvcmtmbG93cy4gRW5hYmxlIHRoaXNcbiAgICogaW4gb3JkZXIgdG8gY3JlYXRlIGEgcHVibGlzaGluZyB0YXNrIGZvciBlYWNoIHB1Ymxpc2hpbmcgYWN0aXZpdHkuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBwdWJsaXNoVGFza3M/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5jbHVkZSBhIEdpdEh1YiBwdWxsIHJlcXVlc3QgdGVtcGxhdGUuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHB1bGxSZXF1ZXN0VGVtcGxhdGU/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIGNvbnRlbnRzIG9mIHRoZSBwdWxsIHJlcXVlc3QgdGVtcGxhdGUuXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBjb250ZW50XG4gICAqL1xuICByZWFkb25seSBwdWxsUmVxdWVzdFRlbXBsYXRlQ29udGVudHM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogVGhlIFJFQURNRSBzZXR1cC5cbiAgICogQGRlZmF1bHQgLSB7IGZpbGVuYW1lOiAnUkVBRE1FLm1kJywgY29udGVudHM6ICcjIHJlcGxhY2UgdGhpcycgfVxuICAgKi9cbiAgcmVhZG9ubHkgcmVhZG1lPzogU2FtcGxlUmVhZG1lUHJvcHM7XG4gIC8qKlxuICAgKiBGaW5kIGNvbW1pdHMgdGhhdCBzaG91bGQgYmUgY29uc2lkZXJlZCByZWxlYXNhYmxlIFVzZWQgdG8gZGVjaWRlIGlmIGEgcmVsZWFzZSBpcyByZXF1aXJlZC5cbiAgICogQGRlZmF1bHQgUmVsZWFzYWJsZUNvbW1pdHMuZXZlcnlDb21taXQoKVxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzYWJsZUNvbW1pdHM/OiBSZWxlYXNhYmxlQ29tbWl0cztcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIGFkZCByZWxlYXNlIHdvcmtmbG93cyBmb3IgdGhpcyByZXBvc2l0b3J5XG4gICAqIEBkZWZhdWx0IC0gTm8gcmVsZWFzZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBEZWZpbmVzIGFkZGl0aW9uYWwgcmVsZWFzZSBicmFuY2hlcy5cbiAgICogQSB3b3JrZmxvdyB3aWxsIGJlIGNyZWF0ZWQgZm9yIGVhY2hcbiAgICogcmVsZWFzZSBicmFuY2ggd2hpY2ggd2lsbCBwdWJsaXNoIHJlbGVhc2VzIGZyb20gY29tbWl0cyBpbiB0aGlzIGJyYW5jaC5cbiAgICogRWFjaCByZWxlYXNlIGJyYW5jaCBfbXVzdF8gYmUgYXNzaWduZWQgYSBtYWpvciB2ZXJzaW9uIG51bWJlciB3aGljaCBpcyB1c2VkXG4gICAqIHRvIGVuZm9yY2UgdGhhdCB2ZXJzaW9ucyBwdWJsaXNoZWQgZnJvbSB0aGF0IGJyYW5jaCBhbHdheXMgdXNlIHRoYXQgbWFqb3JcbiAgICogdmVyc2lvbi4gSWYgbXVsdGlwbGUgYnJhbmNoZXMgYXJlIHVzZWQsIHRoZSBgbWFqb3JWZXJzaW9uYCBmaWVsZCBtdXN0IGFsc29cbiAgICogYmUgcHJvdmlkZWQgZm9yIHRoZSBkZWZhdWx0IGJyYW5jaC5cbiAgICogQGRlZmF1bHQgLSBubyBhZGRpdGlvbmFsIGJyYW5jaGVzIGFyZSB1c2VkIGZvciByZWxlYXNlLiB5b3UgY2FuIHVzZVxuYGFkZEJyYW5jaCgpYCB0byBhZGQgYWRkaXRpb25hbCBicmFuY2hlcy5cbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VCcmFuY2hlcz86IFJlY29yZDxzdHJpbmcsIHJlbGVhc2UuQnJhbmNoT3B0aW9ucz47XG4gIC8qKlxuICAgKiBUaGUgR2l0SHViIEFjdGlvbnMgZW52aXJvbm1lbnQgdXNlZCBmb3IgdGhlIHJlbGVhc2UuXG4gICAqIFRoaXMgY2FuIGJlIHVzZWQgdG8gYWRkIGFuIGV4cGxpY2l0IGFwcHJvdmFsIHN0ZXAgdG8gdGhlIHJlbGVhc2VcbiAgICogb3IgbGltaXQgd2hvIGNhbiBpbml0aWF0ZSBhIHJlbGVhc2UgdGhyb3VnaCBlbnZpcm9ubWVudCBwcm90ZWN0aW9uIHJ1bGVzLlxuICAgKlxuICAgKiBXaGVuIG11bHRpcGxlIGFydGlmYWN0cyBhcmUgcmVsZWFzZWQsIHRoZSBlbnZpcm9ubWVudCBjYW4gYmUgb3ZlcndyaXR0ZW5cbiAgICogb24gYSBwZXIgYXJ0aWZhY3QgYmFzaXMuXG4gICAqIEBkZWZhdWx0IC0gbm8gZW52aXJvbm1lbnQgdXNlZCwgdW5sZXNzIHNldCBhdCB0aGUgYXJ0aWZhY3QgbGV2ZWxcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VFbnZpcm9ubWVudD86IHN0cmluZztcbiAgLyoqXG4gICAqIEF1dG9tYXRpY2FsbHkgcmVsZWFzZSBuZXcgdmVyc2lvbnMgZXZlcnkgY29tbWl0IHRvIG9uZSBvZiBicmFuY2hlcyBpbiBgcmVsZWFzZUJyYW5jaGVzYC5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAZGVwcmVjYXRlZCBVc2UgYHJlbGVhc2VUcmlnZ2VyOiBSZWxlYXNlVHJpZ2dlci5jb250aW51b3VzKClgIGluc3RlYWRcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VFdmVyeUNvbW1pdD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDcmVhdGUgYSBnaXRodWIgaXNzdWUgb24gZXZlcnkgZmFpbGVkIHB1Ymxpc2hpbmcgdGFzay5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VGYWlsdXJlSXNzdWU/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIGxhYmVsIHRvIGFwcGx5IHRvIGlzc3VlcyBpbmRpY2F0aW5nIHB1Ymxpc2ggZmFpbHVyZXMuXG4gICAqIE9ubHkgYXBwbGllcyBpZiBgcmVsZWFzZUZhaWx1cmVJc3N1ZWAgaXMgdHJ1ZS5cbiAgICogQGRlZmF1bHQgXCJmYWlsZWQtcmVsZWFzZVwiXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlRmFpbHVyZUlzc3VlTGFiZWw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciB0aGUgcmVsZWFzZSB3b3JrZmxvd3NcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VPcHRpb25zPzogeWFybi5Nb25vcmVwb1JlbGVhc2VPcHRpb25zO1xuICAvKipcbiAgICogQ1JPTiBzY2hlZHVsZSB0byB0cmlnZ2VyIG5ldyByZWxlYXNlcy5cbiAgICogQGRlZmF1bHQgLSBubyBzY2hlZHVsZWQgcmVsZWFzZXNcbiAgICogQGRlcHJlY2F0ZWQgVXNlIGByZWxlYXNlVHJpZ2dlcjogUmVsZWFzZVRyaWdnZXIuc2NoZWR1bGVkKClgIGluc3RlYWRcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VTY2hlZHVsZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEF1dG9tYXRpY2FsbHkgYWRkIHRoZSBnaXZlbiBwcmVmaXggdG8gcmVsZWFzZSB0YWdzLiBVc2VmdWwgaWYgeW91IGFyZSByZWxlYXNpbmcgb24gbXVsdGlwbGUgYnJhbmNoZXMgd2l0aCBvdmVybGFwcGluZyB2ZXJzaW9uIG51bWJlcnMuXG4gICAqIE5vdGU6IHRoaXMgcHJlZml4IGlzIHVzZWQgdG8gZGV0ZWN0IHRoZSBsYXRlc3QgdGFnZ2VkIHZlcnNpb25cbiAgICogd2hlbiBidW1waW5nLCBzbyBpZiB5b3UgY2hhbmdlIHRoaXMgb24gYSBwcm9qZWN0IHdpdGggYW4gZXhpc3RpbmcgdmVyc2lvblxuICAgKiBoaXN0b3J5LCB5b3UgbWF5IG5lZWQgdG8gbWFudWFsbHkgdGFnIHlvdXIgbGF0ZXN0IHJlbGVhc2VcbiAgICogd2l0aCB0aGUgbmV3IHByZWZpeC5cbiAgICogQGRlZmF1bHQgXCJ2XCJcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VUYWdQcmVmaXg/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdXRvbWF0aWNhbGx5IHJlbGVhc2UgdG8gbnBtIHdoZW4gbmV3IHZlcnNpb25zIGFyZSBpbnRyb2R1Y2VkLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZVRvTnBtPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSByZWxlYXNlIHRyaWdnZXIgdG8gdXNlLlxuICAgKiBAZGVmYXVsdCAtIENvbnRpbnVvdXMgcmVsZWFzZXMgKGBSZWxlYXNlVHJpZ2dlci5jb250aW51b3VzKClgKVxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZVRyaWdnZXI/OiByZWxlYXNlLlJlbGVhc2VUcmlnZ2VyO1xuICAvKipcbiAgICogREVQUkVDQVRFRDogcmVuYW1lZCB0byBgcmVsZWFzZWAuXG4gICAqIEBkZWZhdWx0IC0gdHJ1ZSBpZiBub3QgYSBzdWJwcm9qZWN0XG4gICAqIEBkZXByZWNhdGVkIHNlZSBgcmVsZWFzZWAuXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlV29ya2Zsb3c/OiBib29sZWFuO1xuICAvKipcbiAgICogQnVpbGQgZW52aXJvbm1lbnQgdmFyaWFibGVzIGZvciByZWxlYXNlIHdvcmtmbG93cy5cbiAgICogQGRlZmF1bHQge31cbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VXb3JrZmxvd0Vudj86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgZGVmYXVsdCByZWxlYXNlIHdvcmtmbG93LlxuICAgKiBAZGVmYXVsdCBcInJlbGVhc2VcIlxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZVdvcmtmbG93TmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEEgc2V0IG9mIHdvcmtmbG93IHN0ZXBzIHRvIGV4ZWN1dGUgaW4gb3JkZXIgdG8gc2V0dXAgdGhlIHdvcmtmbG93IGNvbnRhaW5lci5cbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VXb3JrZmxvd1NldHVwU3RlcHM/OiBBcnJheTxnaXRodWIud29ya2Zsb3dzLkpvYlN0ZXA+O1xuICAvKipcbiAgICogVXNlIHJlbm92YXRlYm90IHRvIGhhbmRsZSBkZXBlbmRlbmN5IHVwZ3JhZGVzLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVub3ZhdGVib3Q/OiBib29sZWFuO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgcmVub3ZhdGVib3QuXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBvcHRpb25zXG4gICAqL1xuICByZWFkb25seSByZW5vdmF0ZWJvdE9wdGlvbnM/OiBSZW5vdmF0ZWJvdE9wdGlvbnM7XG4gIC8qKlxuICAgKiBUaGUgcmVwb3NpdG9yeSBpcyB0aGUgbG9jYXRpb24gd2hlcmUgdGhlIGFjdHVhbCBjb2RlIGZvciB5b3VyIHBhY2thZ2UgbGl2ZXMuXG4gICAqIFNlZSBodHRwczovL2NsYXNzaWMueWFybnBrZy5jb20vZW4vZG9jcy9wYWNrYWdlLWpzb24vI3RvYy1yZXBvc2l0b3J5XG4gICAqL1xuICByZWFkb25seSByZXBvc2l0b3J5Pzogc3RyaW5nO1xuICAvKipcbiAgICogSWYgdGhlIHBhY2thZ2UuanNvbiBmb3IgeW91ciBwYWNrYWdlIGlzIG5vdCBpbiB0aGUgcm9vdCBkaXJlY3RvcnkgKGZvciBleGFtcGxlIGlmIGl0IGlzIHBhcnQgb2YgYSBtb25vcmVwbyksIHlvdSBjYW4gc3BlY2lmeSB0aGUgZGlyZWN0b3J5IGluIHdoaWNoIGl0IGxpdmVzLlxuICAgKi9cbiAgcmVhZG9ubHkgcmVwb3NpdG9yeURpcmVjdG9yeT86IHN0cmluZztcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHByaXZhdGVseSBob3N0ZWQgc2NvcGVkIHBhY2thZ2VzLlxuICAgKiBAZGVmYXVsdCAtIGZldGNoIGFsbCBzY29wZWQgcGFja2FnZXMgZnJvbSB0aGUgcHVibGljIG5wbSByZWdpc3RyeVxuICAgKi9cbiAgcmVhZG9ubHkgc2NvcGVkUGFja2FnZXNPcHRpb25zPzogQXJyYXk8amF2YXNjcmlwdC5TY29wZWRQYWNrYWdlc09wdGlvbnM+O1xuICAvKipcbiAgICogbnBtIHNjcmlwdHMgdG8gaW5jbHVkZS5cbiAgICogSWYgYSBzY3JpcHQgaGFzIHRoZSBzYW1lIG5hbWUgYXMgYSBzdGFuZGFyZCBzY3JpcHQsXG4gICAqIHRoZSBzdGFuZGFyZCBzY3JpcHQgd2lsbCBiZSBvdmVyd3JpdHRlbi5cbiAgICogQWxzbyBhZGRzIHRoZSBzY3JpcHQgYXMgYSB0YXNrLlxuICAgKiBAZGVmYXVsdCB7fVxuICAgKiBAZGVwcmVjYXRlZCB1c2UgYHByb2plY3QuYWRkVGFzaygpYCBvciBgcGFja2FnZS5zZXRTY3JpcHQoKWBcbiAgICovXG4gIHJlYWRvbmx5IHNjcmlwdHM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAvKipcbiAgICogVHlwZXNjcmlwdCBzb3VyY2VzIGRpcmVjdG9yeS5cbiAgICogQGRlZmF1bHQgXCJzcmNcIlxuICAgKi9cbiAgcmVhZG9ubHkgc3JjZGlyPzogc3RyaW5nO1xuICAvKipcbiAgICogUGFja2FnZSdzIFN0YWJpbGl0eS5cbiAgICovXG4gIHJlYWRvbmx5IHN0YWJpbGl0eT86IHN0cmluZztcbiAgLyoqXG4gICAqIEF1dG8tY2xvc2Ugb2Ygc3RhbGUgaXNzdWVzIGFuZCBwdWxsIHJlcXVlc3QuXG4gICAqIFNlZSBgc3RhbGVPcHRpb25zYCBmb3Igb3B0aW9ucy5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHN0YWxlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEF1dG8tY2xvc2Ugc3RhbGUgaXNzdWVzIGFuZCBwdWxsIHJlcXVlc3RzLlxuICAgKiBUbyBkaXNhYmxlIHNldCBgc3RhbGVgIHRvIGBmYWxzZWAuXG4gICAqIEBkZWZhdWx0IC0gc2VlIGRlZmF1bHRzIGluIGBTdGFsZU9wdGlvbnNgXG4gICAqL1xuICByZWFkb25seSBzdGFsZU9wdGlvbnM/OiBnaXRodWIuU3RhbGVPcHRpb25zO1xuICAvKipcbiAgICogSmVzdCB0ZXN0cyBkaXJlY3RvcnkuIFRlc3RzIGZpbGVzIHNob3VsZCBiZSBuYW1lZCBgeHh4LnRlc3QudHNgLlxuICAgKiBJZiB0aGlzIGRpcmVjdG9yeSBpcyB1bmRlciBgc3JjZGlyYCAoZS5nLiBgc3JjL3Rlc3RgLCBgc3JjL19fdGVzdHNfX2ApLFxuICAgKiB0aGVuIHRlc3RzIGFyZSBnb2luZyB0byBiZSBjb21waWxlZCBpbnRvIGBsaWIvYCBhbmQgZXhlY3V0ZWQgYXMgamF2YXNjcmlwdC5cbiAgICogSWYgdGhlIHRlc3QgZGlyZWN0b3J5IGlzIG91dHNpZGUgb2YgYHNyY2AsIHRoZW4gd2UgY29uZmlndXJlIGplc3QgdG9cbiAgICogY29tcGlsZSB0aGUgY29kZSBpbi1tZW1vcnkuXG4gICAqIEBkZWZhdWx0IFwidGVzdFwiXG4gICAqL1xuICByZWFkb25seSB0ZXN0ZGlyPzogc3RyaW5nO1xuICAvKipcbiAgICogQ3VzdG9tIFRTQ29uZmlnLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgdHNjb25maWc/OiBqYXZhc2NyaXB0LlR5cGVzY3JpcHRDb25maWdPcHRpb25zO1xuICAvKipcbiAgICogQ3VzdG9tIHRzY29uZmlnIG9wdGlvbnMgZm9yIHRoZSBkZXZlbG9wbWVudCB0c2NvbmZpZy5qc29uIGZpbGUgKHVzZWQgZm9yIHRlc3RpbmcpLlxuICAgKiBAZGVmYXVsdCAtIHVzZSB0aGUgcHJvZHVjdGlvbiB0c2NvbmZpZyBvcHRpb25zXG4gICAqL1xuICByZWFkb25seSB0c2NvbmZpZ0Rldj86IGphdmFzY3JpcHQuVHlwZXNjcmlwdENvbmZpZ09wdGlvbnM7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgZGV2ZWxvcG1lbnQgdHNjb25maWcuanNvbiBmaWxlLlxuICAgKiBAZGVmYXVsdCBcInRzY29uZmlnLmRldi5qc29uXCJcbiAgICovXG4gIHJlYWRvbmx5IHRzY29uZmlnRGV2RmlsZT86IHN0cmluZztcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHRzLWplc3QuXG4gICAqL1xuICByZWFkb25seSB0c0plc3RPcHRpb25zPzogdHlwZXNjcmlwdC5Uc0plc3RPcHRpb25zO1xuICAvKipcbiAgICogVHlwZVNjcmlwdCB2ZXJzaW9uIHRvIHVzZS5cbiAgICogTk9URTogVHlwZXNjcmlwdCBpcyBub3Qgc2VtYW50aWNhbGx5IHZlcnNpb25lZCBhbmQgc2hvdWxkIHJlbWFpbiBvbiB0aGVcbiAgICogc2FtZSBtaW5vciwgc28gd2UgcmVjb21tZW5kIHVzaW5nIGEgYH5gIGRlcGVuZGVuY3kgKGUuZy4gYH4xLjIuM2ApLlxuICAgKiBAZGVmYXVsdCBcImxhdGVzdFwiXG4gICAqL1xuICByZWFkb25seSB0eXBlc2NyaXB0VmVyc2lvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIEN1c3RvbSBjb25maWd1cmF0aW9uIHVzZWQgd2hlbiBjcmVhdGluZyBjaGFuZ2Vsb2cgd2l0aCBjb21taXQtYW5kLXRhZy12ZXJzaW9uIHBhY2thZ2UuXG4gICAqIEdpdmVuIHZhbHVlcyBlaXRoZXIgYXBwZW5kIHRvIGRlZmF1bHQgY29uZmlndXJhdGlvbiBvciBvdmVyd3JpdGUgdmFsdWVzIGluIGl0LlxuICAgKiBAZGVmYXVsdCAtIHN0YW5kYXJkIGNvbmZpZ3VyYXRpb24gYXBwbGljYWJsZSBmb3IgR2l0SHViIHJlcG9zaXRvcmllc1xuICAgKi9cbiAgcmVhZG9ubHkgdmVyc2lvbnJjT3B0aW9ucz86IFJlY29yZDxzdHJpbmcsIGFueT47XG4gIC8qKlxuICAgKiBFbmFibGUgVlNDb2RlIGludGVncmF0aW9uLlxuICAgKiBFbmFibGVkIGJ5IGRlZmF1bHQgZm9yIHJvb3QgcHJvamVjdHMuIERpc2FibGVkIGZvciBub24tcm9vdCBwcm9qZWN0cy5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgdnNjb2RlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENyZWF0ZSBhIFZTQ29kZSBtdWx0aS1yb290IHdvcmtzcGFjZSBmaWxlIGZvciBhbGwgbW9ub3JlcG8gd29ya3NwYWNlc1xuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgdnNjb2RlV29ya3NwYWNlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIFZTQ29kZSBtdWx0aS1yb290IHdvcmtzcGFjZSBmaWxlXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBjb25maWd1cmF0aW9uXG4gICAqL1xuICByZWFkb25seSB2c2NvZGVXb3Jrc3BhY2VPcHRpb25zPzogeWFybi5Wc0NvZGVXb3Jrc3BhY2VPcHRpb25zO1xuICAvKipcbiAgICogV29ya2Zsb3cgc3RlcHMgdG8gdXNlIGluIG9yZGVyIHRvIGJvb3RzdHJhcCB0aGlzIHJlcG8uXG4gICAqIEBkZWZhdWx0IFwieWFybiBpbnN0YWxsIC0tZnJvemVuLWxvY2tmaWxlICYmIHlhcm4gcHJvamVuXCJcbiAgICovXG4gIHJlYWRvbmx5IHdvcmtmbG93Qm9vdHN0cmFwU3RlcHM/OiBBcnJheTxnaXRodWIud29ya2Zsb3dzLkpvYlN0ZXA+O1xuICAvKipcbiAgICogQ29udGFpbmVyIGltYWdlIHRvIHVzZSBmb3IgR2l0SHViIHdvcmtmbG93cy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IGltYWdlXG4gICAqL1xuICByZWFkb25seSB3b3JrZmxvd0NvbnRhaW5lckltYWdlPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIGdpdCBpZGVudGl0eSB0byB1c2UgaW4gd29ya2Zsb3dzLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgR2l0SHViIEFjdGlvbnMgdXNlclxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dHaXRJZGVudGl0eT86IGdpdGh1Yi5HaXRJZGVudGl0eTtcbiAgLyoqXG4gICAqIFRoZSBub2RlIHZlcnNpb24gdG8gdXNlIGluIEdpdEh1YiB3b3JrZmxvd3MuXG4gICAqIEBkZWZhdWx0ICdsdHMvKidcbiAgICovXG4gIHJlYWRvbmx5IHdvcmtmbG93Tm9kZVZlcnNpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBFbmFibGUgTm9kZS5qcyBwYWNrYWdlIGNhY2hlIGluIEdpdEh1YiB3b3JrZmxvd3MuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSB3b3JrZmxvd1BhY2thZ2VDYWNoZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBHaXRodWIgUnVubmVyIHNlbGVjdGlvbiBsYWJlbHMuXG4gICAqIEBkZWZhdWx0IFtcInVidW50dS1sYXRlc3RcIl1cbiAgICovXG4gIHJlYWRvbmx5IHdvcmtmbG93UnVuc09uPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIEdpdGh1YiBSdW5uZXIgR3JvdXAgc2VsZWN0aW9uIG9wdGlvbnMuXG4gICAqL1xuICByZWFkb25seSB3b3JrZmxvd1J1bnNPbkdyb3VwPzogR3JvdXBSdW5uZXJPcHRpb25zO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgWWFybiBCZXJyeS5cbiAgICogQGRlZmF1bHQgLSBZYXJuIEJlcnJ5IHY0IHdpdGggYWxsIGRlZmF1bHQgb3B0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgeWFybkJlcnJ5T3B0aW9ucz86IGphdmFzY3JpcHQuWWFybkJlcnJ5T3B0aW9ucztcbn1cbiJdfQ==
|
|
@@ -283,7 +283,7 @@ class MonorepoRelease extends projen_1.Component {
|
|
|
283
283
|
}
|
|
284
284
|
exports.MonorepoRelease = MonorepoRelease;
|
|
285
285
|
_a = JSII_RTTI_SYMBOL_1;
|
|
286
|
-
MonorepoRelease[_a] = { fqn: "cdklabs-projen-project-types.yarn.MonorepoRelease", version: "0.3.
|
|
286
|
+
MonorepoRelease[_a] = { fqn: "cdklabs-projen-project-types.yarn.MonorepoRelease", version: "0.3.13" };
|
|
287
287
|
function slugify(x) {
|
|
288
288
|
return x.replace(/[^a-zA-Z0-9_-]/g, '-').replace(/^[0-9-]+/, '');
|
|
289
289
|
}
|
package/lib/yarn/monorepo.js
CHANGED
|
@@ -223,7 +223,7 @@ class Monorepo extends projen_1.typescript.TypeScriptProject {
|
|
|
223
223
|
}
|
|
224
224
|
exports.Monorepo = Monorepo;
|
|
225
225
|
_a = JSII_RTTI_SYMBOL_1;
|
|
226
|
-
Monorepo[_a] = { fqn: "cdklabs-projen-project-types.yarn.Monorepo", version: "0.3.
|
|
226
|
+
Monorepo[_a] = { fqn: "cdklabs-projen-project-types.yarn.Monorepo", version: "0.3.13" };
|
|
227
227
|
function getObjFromFile(project, file) {
|
|
228
228
|
return project.tryFindObjectFile(file)?.obj;
|
|
229
229
|
}
|
|
@@ -258,5 +258,5 @@ class CdkLabsMonorepo extends Monorepo {
|
|
|
258
258
|
}
|
|
259
259
|
exports.CdkLabsMonorepo = CdkLabsMonorepo;
|
|
260
260
|
_b = JSII_RTTI_SYMBOL_1;
|
|
261
|
-
CdkLabsMonorepo[_b] = { fqn: "cdklabs-projen-project-types.yarn.CdkLabsMonorepo", version: "0.3.
|
|
261
|
+
CdkLabsMonorepo[_b] = { fqn: "cdklabs-projen-project-types.yarn.CdkLabsMonorepo", version: "0.3.13" };
|
|
262
262
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ub3JlcG8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMveWFybi9tb25vcmVwby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQUE2QztBQUM3QyxtQ0FBc0c7QUFFdEcseURBQXFEO0FBQ3JELDZCQUEwQjtBQUcxQixNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLDRDQUE0QyxDQUFDLENBQUM7QUFFOUU7O0dBRUc7QUFDSCxNQUFhLFFBQVMsU0FBUSxtQkFBVSxDQUFDLGlCQUFpQjtJQUNqRCxNQUFNLENBQUMsVUFBVSxDQUFDLENBQVU7UUFDakMsT0FBTyxPQUFPLENBQUMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxLQUFLLFFBQVEsSUFBSSxZQUFZLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQWVELFlBQTRCLE9BQXdCO1FBQ2xELEtBQUssQ0FBQztZQUNKLEdBQUcsT0FBTztZQUNWLGNBQWMsRUFBRSxtQkFBVSxDQUFDLGtCQUFrQixDQUFDLFlBQVk7WUFDMUQsVUFBVSxFQUFFLEtBQUs7WUFDakIsSUFBSSxFQUFFLEtBQUs7WUFDWCxNQUFNLEVBQUUsS0FBSztZQUNiLE9BQU8sRUFBRSxLQUFLO1NBQ2YsQ0FBQyxDQUFDO1FBUnVCLFlBQU8sR0FBUCxPQUFPLENBQWlCO1FBSDVDLGFBQVEsR0FBRyxJQUFJLEtBQUssRUFBdUIsQ0FBQztRQUM1Qyw0QkFBdUIsR0FBRyxJQUFJLEtBQUssRUFBaUIsQ0FBQztRQVkzRCxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUUzRCxJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUM7UUFDeEMsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLElBQUksT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRS9E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QUFnQixTQUFRLFFBQVE7SUFDM0MsWUFBWSxPQUErQjtRQUN6QyxLQUFLLENBQUM7WUFDSixVQUFVLEVBQUUsSUFBSTtZQUVoQixtQkFBbUIsRUFBRSxJQUFJO1lBQ3pCLGtCQUFrQixFQUFFO2dCQUNsQixnQkFBZ0IsRUFBRSxDQUFDLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsQ0FBQztnQkFDekUsTUFBTSxFQUFFLGNBQWM7YUFDdkI7WUFDRCxHQUFHLE9BQU87WUFDVixhQUFhLEVBQUU7Z0JBQ2IsR0FBRyxPQUFPLENBQUMsYUFBYTtnQkFDeEIsT0FBTyxFQUFFLEtBQUs7YUFDZjtZQUNELDZHQUE2RztZQUM3RywrRkFBK0Y7WUFDL0YsbUJBQW1CLEVBQUUsT0FBTyxDQUFDLG1CQUFtQixJQUFJLE9BQU87U0FDNUQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxlQUFNLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRTtZQUMxQixnQkFBZ0IsRUFBRTtnQkFDaEIsaUJBQWlCLEVBQUUsZUFBTSxDQUFDLGlCQUFpQixDQUFDLHVCQUF1QixDQUFDLEVBQUUsTUFBTSxFQUFFLHFCQUFxQixFQUFFLENBQUM7YUFDdkc7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDOztBQXpCSCwwQ0EwQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBwYXRoUG9zaXggZnJvbSAnbm9kZTpwYXRoL3Bvc2l4JztcbmltcG9ydCB7IEpzb25GaWxlLCBQcm9qZWN0LCBqYXZhc2NyaXB0LCB0eXBlc2NyaXB0LCBnaXRodWIsIERlcGVuZGVuY3lUeXBlLCBKc29uUGF0Y2ggfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHsgTW9ub3JlcG9PcHRpb25zIH0gZnJvbSAnLi9tb25vcmVwby1vcHRpb25zJztcbmltcG9ydCB7IE1vbm9yZXBvUmVsZWFzZSB9IGZyb20gJy4vbW9ub3JlcG8tcmVsZWFzZSc7XG5pbXBvcnQgeyBOeCB9IGZyb20gJy4vbngnO1xuaW1wb3J0IHsgVHlwZVNjcmlwdFdvcmtzcGFjZSB9IGZyb20gJy4vdHlwZXNjcmlwdC13b3Jrc3BhY2UnO1xuXG5jb25zdCBNT05PUkVQT19TWU0gPSBTeW1ib2wuZm9yKCdjZGtsYWJzLXByb2plbi1wcm9qZWN0LXR5cGVzLnlhcm4uTW9ub3JlcG8nKTtcblxuLyoqXG4gKiBBIG1vbm9yZXBvIHVzaW5nIHlhcm4gd29ya3NwYWNlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIE1vbm9yZXBvIGV4dGVuZHMgdHlwZXNjcmlwdC5UeXBlU2NyaXB0UHJvamVjdCB7XG4gIHB1YmxpYyBzdGF0aWMgaXNNb25vcmVwbyh4OiBQcm9qZWN0KTogeCBpcyBNb25vcmVwbyB7XG4gICAgcmV0dXJuIEJvb2xlYW4oeCAmJiB0eXBlb2YgeCA9PT0gJ29iamVjdCcgJiYgTU9OT1JFUE9fU1lNIGluIHgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBNb25vcmVwbyBSZWxlYXNlIGNvbXBvbmVudFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG1vbm9yZXBvUmVsZWFzZT86IE1vbm9yZXBvUmVsZWFzZTtcblxuICAvKipcbiAgICogVGhlIFVSTCB3aGVyZSB0aGUgYWN0dWFsIGNvZGUgZm9yIHRoZSBwYWNrYWdlIGxpdmVzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHJlcG9zaXRvcnlVcmw/OiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBwcm9qZWN0cyA9IG5ldyBBcnJheTxUeXBlU2NyaXB0V29ya3NwYWNlPigpO1xuICBwcml2YXRlIHBvc3RJbnN0YWxsRGVwZW5kZW5jaWVzID0gbmV3IEFycmF5PCgpID0+IGJvb2xlYW4+KCk7XG5cbiAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IG9wdGlvbnM6IE1vbm9yZXBvT3B0aW9ucykge1xuICAgIHN1cGVyKHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBwYWNrYWdlTWFuYWdlcjogamF2YXNjcmlwdC5Ob2RlUGFja2FnZU1hbmFnZXIuWUFSTl9DTEFTU0lDLFxuICAgICAgc2FtcGxlQ29kZTogZmFsc2UsXG4gICAgICBqZXN0OiBmYWxzZSxcbiAgICAgIGVzbGludDogZmFsc2UsXG4gICAgICByZWxlYXNlOiBmYWxzZSxcbiAgICB9KTtcblxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBNT05PUkVQT19TWU0sIHsgdmFsdWU6IHRydWUgfSk7XG5cbiAgICB0aGlzLnJlcG9zaXRvcnlVcmwgPSBvcHRpb25zLnJlcG9zaXRvcnk7XG4gICAgY29uc3QgYnVpbGRXaXRoTnggPSBCb29sZWFuKG9wdGlvbnMubnggJiYgb3B0aW9ucy5idWlsZFdpdGhOeCk7XG5cbiAgICAvKipcbiAgICAgKiBQcmV0dGllciBmb3JtYXR0aW5nXG4gICAgICovXG4gICAgaWYgKG9wdGlvbnMucHJldHRpZXIpIHtcbiAgICAgIHRoaXMuYWRkRGV2RGVwcygnZXNsaW50LWNvbmZpZy1wcmV0dGllcicsICdlc2xpbnQtcGx1Z2luLXByZXR0aWVyJyk7XG4gICAgICBuZXcgSnNvbkZpbGUodGhpcywgJy5lc2xpbnRyYy5qc29uJywge1xuICAgICAgICBhbGxvd0NvbW1lbnRzOiB0cnVlLFxuICAgICAgICBvYmo6IHtcbiAgICAgICAgICBwbHVnaW5zOiBbJ0B0eXBlc2NyaXB0LWVzbGludCcsICdwcmV0dGllciddLFxuICAgICAgICAgIHBhcnNlcjogJ0B0eXBlc2NyaXB0LWVzbGludC9wYXJzZXInLFxuICAgICAgICAgIHBhcnNlck9wdGlvbnM6IHtcbiAgICAgICAgICAgIGVjbWFWZXJzaW9uOiAyMDE4LFxuICAgICAgICAgICAgc291cmNlVHlwZTogJ21vZHVsZScsXG4gICAgICAgICAgICBwcm9qZWN0OiAnLi90c2NvbmZpZy5kZXYuanNvbicsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBpZ25vcmVQYXR0ZXJuczogWychLnByb2plbnJjLnRzJ10sXG4gICAgICAgICAgZXh0ZW5kczogWydwbHVnaW46cHJldHRpZXIvcmVjb21tZW5kZWQnXSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgICAgdGhpcy50YXNrcy5hZGRUYXNrKCdmbXQnLCB7IGV4ZWM6ICdlc2xpbnQgLS1leHQgLnRzIC0tZml4IC0tbm8tZXJyb3Itb24tdW5tYXRjaGVkLXBhdHRlcm4gcHJvamVucmMgLnByb2plbnJjLnRzJyB9KTtcblxuICAgICAgdGhpcy52c2NvZGU/LmV4dGVuc2lvbnMuYWRkUmVjb21tZW5kYXRpb25zKCdlc2JlbnAucHJldHRpZXItdnNjb2RlJywgJ2RiYWV1bWVyLnZzY29kZS1lc2xpbnQnKTtcbiAgICAgIHRoaXMudnNjb2RlPy5zZXR0aW5ncy5hZGRTZXR0aW5nKCdlZGl0b3IuZGVmYXVsdEZvcm1hdHRlcicsICdlc2JlbnAucHJldHRpZXItdnNjb2RlJyk7XG4gICAgICB0aGlzLnZzY29kZT8uc2V0dGluZ3MuYWRkU2V0dGluZygnZXNsaW50LmZvcm1hdC5lbmFibGUnLCB0cnVlKTtcbiAgICAgIHRoaXMudnNjb2RlPy5zZXR0aW5ncy5hZGRTZXR0aW5ncyh7ICdlZGl0b3IuZGVmYXVsdEZvcm1hdHRlcic6ICdkYmFldW1lci52c2NvZGUtZXNsaW50JyB9LCBbXG4gICAgICAgICdqYXZhc2NyaXB0JyxcbiAgICAgICAgJ3R5cGVzY3JpcHQnLFxuICAgICAgXSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlIGEgVlNDb2RlIFdvcmtzcGFjZVxuICAgICAqL1xuICAgIGlmIChvcHRpb25zLnZzY29kZVdvcmtzcGFjZSkge1xuICAgICAgY29uc3Qgd29ya3NwYWNlRmlsZSA9IGAke3RoaXMubmFtZX0uY29kZS13b3Jrc3BhY2VgO1xuICAgICAgbmV3IEpzb25GaWxlKHRoaXMsIHdvcmtzcGFjZUZpbGUsIHtcbiAgICAgICAgYWxsb3dDb21tZW50czogdHJ1ZSxcbiAgICAgICAgb2JqOiAoKSA9PiAoe1xuICAgICAgICAgIGZvbGRlcnM6ICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGZvbGRlcnM6IEFycmF5PHtcbiAgICAgICAgICAgICAgcGF0aDogc3RyaW5nO1xuICAgICAgICAgICAgICBuYW1lPzogc3RyaW5nO1xuICAgICAgICAgICAgfT4gPSB0aGlzLnByb2plY3RzXG4gICAgICAgICAgICAgIC5zb3J0KChwMSwgcDIpID0+IHAxLm5hbWUubG9jYWxlQ29tcGFyZShwMi5uYW1lKSlcbiAgICAgICAgICAgICAgLm1hcCgocCkgPT4gKHsgcGF0aDogcC53b3Jrc3BhY2VEaXJlY3RvcnkgfSkpO1xuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy52c2NvZGVXb3Jrc3BhY2VPcHRpb25zPy5pbmNsdWRlUm9vdFdvcmtzcGFjZSkge1xuICAgICAgICAgICAgICBmb2xkZXJzLnVuc2hpZnQoeyBwYXRoOiAnLicsIG5hbWU6IG9wdGlvbnMudnNjb2RlV29ya3NwYWNlT3B0aW9ucz8ucm9vdFdvcmtzcGFjZU5hbWUgPz8gJzxyb290PicgfSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBmb2xkZXJzO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgc2V0dGluZ3M6ICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHNldHRpbmdzID0gKGdldE9iakZyb21GaWxlKHRoaXMsICcudnNjb2RlL3NldHRpbmdzLmpzb24nKSA/PyB7fSkgYXMgYW55O1xuICAgICAgICAgICAgaWYgKG9wdGlvbnMudnNjb2RlV29ya3NwYWNlT3B0aW9ucz8uaW5jbHVkZVJvb3RXb3Jrc3BhY2UgJiYgdGhpcy5wcm9qZWN0cy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgc2V0dGluZ3NbJ2ZpbGVzLmV4Y2x1ZGUnXSA9IHRoaXMucHJvamVjdHMucmVkdWNlKChleGNsdWRlcywgcCkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAuLi5leGNsdWRlcyxcbiAgICAgICAgICAgICAgICAgIFtwLndvcmtzcGFjZURpcmVjdG9yeS5zcGxpdChwYXRoUG9zaXguc2VwKVswXV06IHRydWUsXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgfSwgc2V0dGluZ3NbJ2ZpbGVzLmV4Y2x1ZGUnXSA/PyB7fSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gc2V0dGluZ3M7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBleHRlbnNpb25zOiAoKSA9PiBnZXRPYmpGcm9tRmlsZSh0aGlzLCAnLnZzY29kZS9leHRlbnNpb25zLmpzb24nKSxcbiAgICAgICAgfSksXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUYXNrc1xuICAgICAqL1xuICAgIC8vIGJ1aWxkIHRhc2tcbiAgICB0aGlzLnRhc2tzLnJlbW92ZVRhc2soJ2J1aWxkJyk7XG4gICAgY29uc3QgZm10VGFzayA9IHRoaXMudGFza3MudHJ5RmluZCgnZm10Jyk7XG4gICAgY29uc3QgYnVpbGRUYXNrID0gdGhpcy50YXNrcy5hZGRUYXNrKCdidWlsZCcpO1xuICAgIGlmICh0aGlzLmRlZmF1bHRUYXNrKSB7XG4gICAgICBidWlsZFRhc2suc3Bhd24odGhpcy5kZWZhdWx0VGFzayk7XG4gICAgfVxuICAgIGlmIChmbXRUYXNrKSB7XG4gICAgICBidWlsZFRhc2suc3Bhd24oZm10VGFzayk7XG4gICAgfVxuICAgIGlmIChidWlsZFdpdGhOeCkge1xuICAgICAgYnVpbGRUYXNrLmV4ZWMoJ254IHJ1bi1tYW55IC10IGJ1aWxkJyk7XG4gICAgICB0aGlzLmdpdGh1Yj8udHJ5RmluZFdvcmtmbG93KCdidWlsZCcpPy5maWxlPy5wYXRjaChcbiAgICAgICAgSnNvblBhdGNoLmFkZCgnL2pvYnMvYnVpbGQvZW52L05YX1NLSVBfTlhfQ0FDSEUnLCAndHJ1ZScpLFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgYnVpbGRUYXNrLmV4ZWMoJ3lhcm4gd29ya3NwYWNlcyBydW4gYnVpbGQnKTtcbiAgICB9XG5cbiAgICAvLyBSdW4gaW4gYWxsIHdvcmtzcGFjZXMgdGFza3NcbiAgICB0aGlzLnRhc2tzLnRyeUZpbmQoJ2NvbXBpbGUnKT8ucmVzZXQoJ3lhcm4gd29ya3NwYWNlcyBydW4gY29tcGlsZScpO1xuICAgIHRoaXMudGFza3MudHJ5RmluZCgncGFja2FnZScpPy5yZXNldCgneWFybiB3b3Jrc3BhY2VzIHJ1biBwYWNrYWdlJyk7XG4gICAgdGhpcy50YXNrcy50cnlGaW5kKCd0ZXN0Jyk/LnJlc2V0KCd5YXJuIHdvcmtzcGFjZXMgcnVuIHRlc3QnKTtcbiAgICB0aGlzLmFkZFRhc2soJ3J1bicsIHtcbiAgICAgIGV4ZWM6ICd5YXJuIHdvcmtzcGFjZXMgcnVuJyxcbiAgICAgIHJlY2VpdmVBcmdzOiB0cnVlLFxuICAgIH0pO1xuXG4gICAgLy8gVXBncmFkZSBhbGwgcGFja2FnZXNcbiAgICB0aGlzLnRhc2tzLnJlbW92ZVRhc2soJ3VwZ3JhZGUnKTtcbiAgICB0aGlzLnRhc2tzLmFkZFRhc2soJ3VwZ3JhZGUnLCB7XG4gICAgICBlbnY6IHsgQ0k6ICcwJyB9LFxuICAgICAgZGVzY3JpcHRpb246ICdVcGdyYWRlIGRlcGVuZGVuY2llcyBpbiBhbGwgd29ya3NwYWNlcycsXG4gICAgICBzdGVwczogW1xuICAgICAgICAvLyBJdCBpcyBub3Qgc2FmZSBhbnltb3JlIHRvIGhhdmUgJ25wbS1jaGVjay11cGRhdGVzJyBpbiBhIFlhcm4gMSBkZXBlbmRlbmN5IHRyZWUsIHNvIHJ1biBpdCBpbiBhIHNlcGFyYXRlXG4gICAgICAgIC8vIHRyZWUgYnkgdXNpbmcgbnB4LlxuICAgICAgICB7IGV4ZWM6ICducHggbnBtLWNoZWNrLXVwZGF0ZXNAMTYgLS1kZXA9ZGV2LG9wdGlvbmFsLHBlZXIscHJvZCxidW5kbGUgLS11cGdyYWRlIC0tdGFyZ2V0PW1pbm9yJyB9LFxuICAgICAgICB7IGV4ZWM6ICd5YXJuIHdvcmtzcGFjZXMgcnVuIGNoZWNrLWZvci11cGRhdGVzJyB9LFxuICAgICAgICB7IGV4ZWM6ICd5YXJuIGluc3RhbGwgLS1jaGVjay1maWxlcycgfSxcbiAgICAgICAgeyBleGVjOiAneWFybiB1cGdyYWRlJyB9LFxuICAgICAgICB7IHNwYXduOiAnZGVmYXVsdCcgfSxcbiAgICAgICAgeyBzcGF3bjogJ3Bvc3QtdXBncmFkZScgfSxcbiAgICAgIF0sXG4gICAgfSk7XG5cbiAgICAvLyBDbGVhbiB1cCB0YXNrcyBub3QgcmVxdWlyZWQgYXQgdG9wLWxldmVsXG4gICAgdGhpcy50YXNrcy5yZW1vdmVUYXNrKCdlamVjdCcpO1xuICAgIHRoaXMudGFza3MucmVtb3ZlVGFzaygnd2F0Y2gnKTtcbiAgICB0aGlzLnRhc2tzLnJlbW92ZVRhc2soJ3ByZS1jb21waWxlJyk7XG4gICAgdGhpcy50YXNrcy5yZW1vdmVUYXNrKCdwb3N0LWNvbXBpbGUnKTtcblxuICAgIC8vIE54XG4gICAgaWYgKG9wdGlvbnMubngpIHtcbiAgICAgIG5ldyBOeCh0aGlzLCB7XG4gICAgICAgIGRlZmF1bHRCYXNlOiBvcHRpb25zLmRlZmF1bHRSZWxlYXNlQnJhbmNoLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gUmVsZWFzZSBXb3JrZmxvd1xuICAgIGlmIChvcHRpb25zLnJlbGVhc2UpIHtcbiAgICAgIHRoaXMubW9ub3JlcG9SZWxlYXNlID0gbmV3IE1vbm9yZXBvUmVsZWFzZSh0aGlzLCB7XG4gICAgICAgIHdvcmtmbG93UnVuc09uOiBvcHRpb25zLndvcmtmbG93UnVuc09uLFxuICAgICAgICBidWlsZFdpdGhOeCxcbiAgICAgICAgLi4ub3B0aW9ucy5yZWxlYXNlT3B0aW9ucyxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyByZWdpc3Rlcihwcm9qZWN0OiBUeXBlU2NyaXB0V29ya3NwYWNlKSB7XG4gICAgdGhpcy5wcm9qZWN0cy5wdXNoKHByb2plY3QpO1xuICB9XG5cbiAgcHVibGljIHN5bnRoKCkge1xuICAgIHRoaXMuZmluYWxFc2NhcGVIYXRjaGVzKCk7XG4gICAgc3VwZXIuc3ludGgoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBbGxvd3MgYSBzdWIgcHJvamVjdCB0byByZXF1ZXN0IGluc3RhbGxhdGlvbiBvZiBkZXBlbmRlbmN5IGF0IHRoZSBNb25vcmVwbyByb290XG4gICAqIFRoZXkgbXVzdCBwcm92aWRlIGEgZnVuY3Rpb24gdGhhdCBpcyBleGVjdXRlZCBhZnRlciBkZXBlbmRlbmNpZXMgaGF2ZSBiZWVuIGluc3RhbGxlZFxuICAgKiBJZiB0aGlzIGZ1bmN0aW9uIHJldHVybnMgdHJ1ZSwgdGhlIGluc3RhbGwgY29tbWFuZCBpcyBydW4gZm9yIGEgc2Vjb25kIHRpbWUgYWZ0ZXIgYWxsIHN1YiBwcm9qZWN0IHJlcXVlc3RzIGhhdmUgcnVuLlxuICAgKiBUaGlzIGlzIHVzZWQgdG8gcmVzb2x2ZSBkZXBlbmRlbmN5IHZlcnNpb25zIGZyb20gYCpgIHRvIGEgY29uY3JldGUgdmVyc2lvbiBjb25zdHJhaW50LlxuICAgKi9cbiAgcHVibGljIHJlcXVlc3RJbnN0YWxsRGVwZW5kZW5jaWVzKHJlc29sdmVyOiBJRGVwZW5kZW5jeVJlc29sdmVyKSB7XG4gICAgdGhpcy5wb3N0SW5zdGFsbERlcGVuZGVuY2llcy5wdXNoKHJlc29sdmVyLnJlc29sdmVEZXBzQW5kV3JpdGVQYWNrYWdlSnNvbik7XG4gIH1cblxuICAvKipcbiAgICogQ29kZSB0aGF0IG5lZWRzIHRvIHJ1biBqdXN0IGJlZm9yZSBzeW50aCwgYnV0IGFmdGVyIGFsbCBvdGhlciBjb2RlXG4gICAqL1xuICBwcml2YXRlIGZpbmFsRXNjYXBlSGF0Y2hlcygpIHtcbiAgICAvLyBHZXQgdGhlIE9iamVjdEZpbGVcbiAgICB0aGlzLnBhY2thZ2UuYWRkRmllbGQoJ3ByaXZhdGUnLCB0cnVlKTtcbiAgICB0aGlzLnBhY2thZ2UuYWRkRmllbGQoJ3dvcmtzcGFjZXMnLCB7XG4gICAgICBwYWNrYWdlczogdGhpcy5wcm9qZWN0cy5tYXAoKHApID0+IHAud29ya3NwYWNlRGlyZWN0b3J5KSxcbiAgICAgIC4uLnRoaXMucmVuZGVyTm9Ib2lzdCgpLFxuICAgIH0pO1xuXG4gICAgdGhpcy50c2NvbmZpZz8uZmlsZS5hZGRPdmVycmlkZSgnaW5jbHVkZScsIFtdKTtcbiAgICB0aGlzLnRzY29uZmlnRGV2Py5maWxlLmFkZE92ZXJyaWRlKCdpbmNsdWRlJywgWycucHJvamVucmMudHMnLCAncHJvamVucmMvKiovKi50cyddKTtcbiAgICBmb3IgKGNvbnN0IHRzY29uZmlnIG9mIFt0aGlzLnRzY29uZmlnLCB0aGlzLnRzY29uZmlnRGV2XSkge1xuICAgICAgdHNjb25maWc/LmZpbGUuYWRkT3ZlcnJpZGUoXG4gICAgICAgICdyZWZlcmVuY2VzJyxcbiAgICAgICAgdGhpcy5wcm9qZWN0cy5tYXAoKHApID0+ICh7IHBhdGg6IHAud29ya3NwYWNlRGlyZWN0b3J5IH0pKSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy5wYWNrYWdlLmFkZEZpZWxkKCdqZXN0Jywge1xuICAgICAgcHJvamVjdHM6IHRoaXMucHJvamVjdHMubWFwKChwKSA9PiBgPHJvb3REaXI+LyR7cC53b3Jrc3BhY2VEaXJlY3Rvcnl9YCksXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmVuZGVyIHRoZSAnbm9ob2lzdCcgZGlyZWN0aXZlXG4gICAqXG4gICAqIEJ1bmRsZWQgZGVwZW5kZW5jaWVzIG11c3QgYmUgbm9ob2lzdCdlZCwgb3RoZXJ3aXNlIE5QTSBzaWxlbnRseSB3b24ndCBidW5kbGUgdGhlbS5cbiAgICpcbiAgICogUmVuZGVycyBhbiBvYmplY3QgdGhhdCBzaG91bGQgYmUgbWl4ZWQgaW50byB0aGUgYHdvcmtzcGFjZXNgIG9iamVjdC5cbiAgICovXG4gIHByaXZhdGUgcmVuZGVyTm9Ib2lzdCgpOiBhbnkge1xuICAgIGNvbnN0IG5vaG9pc3QgPSB0aGlzLnByb2plY3RzLmZsYXRNYXAoKHApID0+XG4gICAgICBwLmRlcHMuYWxsXG4gICAgICAgIC5maWx0ZXIoKGRlcCkgPT4gZGVwLnR5cGUgPT09IERlcGVuZGVuY3lUeXBlLkJVTkRMRUQpXG4gICAgICAgIC5mbGF0TWFwKChkZXApID0+IFtcbiAgICAgICAgICBgJHtwLm5hbWV9LyR7ZGVwLm5hbWV9YCxcbiAgICAgICAgICBgJHtwLm5hbWV9LyR7ZGVwLm5hbWV9LyoqYCxcbiAgICAgICAgXSksXG4gICAgKTtcbiAgICByZXR1cm4gbm9ob2lzdC5sZW5ndGggPiAwID8geyBub2hvaXN0IH0gOiB1bmRlZmluZWQ7XG4gIH1cblxuICAvKipcbiAgICogSG9va3MgaW50byB0aGUgaW5zdGFsbCBkZXBlbmRlbmNpZXMgY3ljbGVcbiAgICovXG4gIHB1YmxpYyBwb3N0U3ludGhlc2l6ZSgpIHtcbiAgICBpZiAodGhpcy5wb3N0SW5zdGFsbERlcGVuZGVuY2llcy5sZW5ndGgpIHtcbiAgICAgIGNvbnN0IG5vZGVQa2c6IGFueSA9IHRoaXMucGFja2FnZTtcbiAgICAgIG5vZGVQa2cuaW5zdGFsbERlcGVuZGVuY2llcygpO1xuXG4gICAgICBjb25zdCBjb21wbGV0ZWRSZXF1ZXN0cyA9IHRoaXMucG9zdEluc3RhbGxEZXBlbmRlbmNpZXMubWFwKChyZXF1ZXN0KSA9PiByZXF1ZXN0KCkpO1xuICAgICAgaWYgKGNvbXBsZXRlZFJlcXVlc3RzLnNvbWUoQm9vbGVhbikpIHtcbiAgICAgICAgbm9kZVBrZy5pbnN0YWxsRGVwZW5kZW5jaWVzKCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMucG9zdEluc3RhbGxEZXBlbmRlbmNpZXMgPSBbXTtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJRGVwZW5kZW5jeVJlc29sdmVyIHtcbiAgcmVzb2x2ZURlcHNBbmRXcml0ZVBhY2thZ2VKc29uKCk6IGJvb2xlYW47XG59XG5cbmZ1bmN0aW9uIGdldE9iakZyb21GaWxlKHByb2plY3Q6IFByb2plY3QsIGZpbGU6IHN0cmluZyk6IG9iamVjdCB7XG4gIHJldHVybiAocHJvamVjdC50cnlGaW5kT2JqZWN0RmlsZShmaWxlKSBhcyBhbnkpPy5vYmo7XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgQ2RrTGFic01vbm9yZXBvXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2RrTGFic01vbm9yZXBvT3B0aW9ucyBleHRlbmRzIE1vbm9yZXBvT3B0aW9ucyB7fVxuXG4vKipcbiAqIE9waW5pb25hdGVkIGltcGxlbWVudGF0aW9uIG9mIHlhcm4uTW9ub3JlcG9cbiAqIEBwamlkIGNka2xhYnMteWFybi1tb25vcmVwb1xuICovXG5leHBvcnQgY2xhc3MgQ2RrTGFic01vbm9yZXBvIGV4dGVuZHMgTW9ub3JlcG8ge1xuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBDZGtMYWJzTW9ub3JlcG9PcHRpb25zKSB7XG4gICAgc3VwZXIoe1xuICAgICAgcHJvamVucmNUczogdHJ1ZSxcblxuICAgICAgYXV0b0FwcHJvdmVVcGdyYWRlczogdHJ1ZSxcbiAgICAgIGF1dG9BcHByb3ZlT3B0aW9uczoge1xuICAgICAgICBhbGxvd2VkVXNlcm5hbWVzOiBbJ2dpdGh1Yi1ib3QnLCAnY2RrbGFicy1hdXRvbWF0aW9uJywgJ2RlcGVuZGFib3RbYm90XSddLFxuICAgICAgICBzZWNyZXQ6ICdHSVRIVUJfVE9LRU4nLFxuICAgICAgfSxcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBnaXRodWJPcHRpb25zOiB7XG4gICAgICAgIC4uLm9wdGlvbnMuZ2l0aHViT3B0aW9ucyxcbiAgICAgICAgbWVyZ2lmeTogZmFsc2UsXG4gICAgICB9LFxuICAgICAgLy8gRGV2aWF0aW9uIGZyb20gdXBzdHJlYW0gcHJvamVuOiB1cHN0cmVhbSBwcm9qZW4gZGVmYXVsdHMgdG8gbWluTm9kZVZlcnNpb24sIGJ1dCB3ZSBoYXZlIHRvbyBtYW55IHdvcmtmbG93c1xuICAgICAgLy8gdGhhdCB1c2UgdG9vbHMgdGhhdCB3YW50IGEgcmVjZW50IE5vZGUgdmVyc2lvbiwgc28gZGVmYXVsdCB0byBhIHJlYXNvbmFibGUgZmxvYXRpbmcgdmVyc2lvbi5cbiAgICAgIHdvcmtmbG93Tm9kZVZlcnNpb246IG9wdGlvbnMud29ya2Zsb3dOb2RlVmVyc2lvbiA/PyAnbHRzLyonLFxuICAgIH0pO1xuXG4gICAgbmV3IGdpdGh1Yi5NZXJnZVF1ZXVlKHRoaXMsIHtcbiAgICAgIGF1dG9RdWV1ZU9wdGlvbnM6IHtcbiAgICAgICAgcHJvamVuQ3JlZGVudGlhbHM6IGdpdGh1Yi5HaXRodWJDcmVkZW50aWFscy5mcm9tUGVyc29uYWxBY2Nlc3NUb2tlbih7IHNlY3JldDogJ1BST0pFTl9HSVRIVUJfVE9LRU4nIH0pLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxufVxuIl19
|