@rio-cloud/cdk-v2-constructs 6.0.0 → 6.1.0
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 +50 -12
- package/CHANGELOG.md +2 -677
- package/README.md +6 -6
- package/catalog-info.yaml +13 -0
- package/{API.md → docs/API.md} +32 -0
- package/docs/changelog.md +692 -0
- package/docs/index.md +105 -0
- package/lib/contributions/team-claid/datadog-usage-monitoring/datadog-usage-monitoring.js +1 -1
- package/lib/contributions/team-transport-two/datadog/datadog-dashboard-downloader.js +1 -1
- package/lib/contributions/team-transport-two/pipeline/pipeline-stack.js +1 -1
- package/lib/datadog/datadog-log-index-monitoring.js +1 -1
- package/lib/datadog/datadog-monitor.js +1 -1
- package/lib/datadogv2/datadog-log-index-monitoring.js +1 -1
- package/lib/datadogv2/datadog-monitor.js +1 -1
- package/lib/datadogv2/datadog-notification.js +1 -1
- package/lib/fargate/datadog.js +1 -1
- package/lib/fargate/rio-fargate-service.js +2 -2
- package/lib/kafka/kafka-event-spec.js +1 -1
- package/lib/kafka/kafka-topic.d.ts +7 -0
- package/lib/kafka/kafka-topic.js +17 -1
- package/lib/pipeline/rio-backup-secrets-restore-stage.js +1 -1
- package/lib/toggle.js +1 -1
- package/lib/watchful/aspect.js +1 -1
- package/lib/watchful/datadog-log-alarm.js +3 -3
- package/lib/watchful/datadog-metric-alarm.js +3 -3
- package/lib/watchful/ecs.js +2 -2
- package/lib/watchful/lambda.js +4 -4
- package/lib/watchful/watchful.js +3 -3
- package/lib/watchfulv2/datadog-log-alarm.d.ts +1 -0
- package/lib/watchfulv2/datadog-log-alarm.js +19 -6
- package/lib/watchfulv2/datadog-metric-alarm.js +1 -1
- package/lib/watchfulv2/watchful.js +4 -3
- package/mkdocs.yaml +12 -0
- package/package.json +6 -6
- package/version.json +1 -1
- /package/{CONTRIBUTION.md → docs/contribution.md} +0 -0
- /package/{developers-readme.md → docs/developers-readme.md} +0 -0
- /package/{MIGRATION_GUIDE.md → docs/migration_guide.md} +0 -0
|
@@ -112,4 +112,4 @@ function datadogLogsSearchWithIndexFilterDeepLink(indexName, organization) {
|
|
|
112
112
|
function datadogLogsIndexesConfigurationDeepLink(organization) {
|
|
113
113
|
return `https://${getOrganizationUrlPrefix(organization)}.datadoghq.eu/logs/pipelines/indexes`;
|
|
114
114
|
}
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZy1sb2ctaW5kZXgtbW9uaXRvcmluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhZG9ndjIvZGF0YWRvZy1sb2ctaW5kZXgtbW9uaXRvcmluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDJDQUF1QztBQUN2Qyx1REFBaUY7QUF5RGpGOzs7Ozs7Ozs7R0FTRztBQUNILE1BQWEseUJBQTBCLFNBQVEsc0JBQVM7SUFDdEQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFxQztRQUM3RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLG9CQUFvQixHQUFHLE9BQVMsQ0FBQyxDQUFDO1FBQzFGLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMseUJBQXlCLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUM5RyxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixHQUFHLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRTFHLElBQUksZ0NBQWMsQ0FBQyxJQUFJLEVBQUUsNkJBQTZCLEVBQUU7WUFDdEQsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzlCLFdBQVcsRUFBRSw4Q0FBNEIsQ0FBQyxZQUFZO1lBQ3RELElBQUksRUFBRSxHQUFHLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsNEJBQTRCO1lBQzdFLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWTtZQUNoQyxRQUFRLEVBQUUsQ0FBQztZQUNYLEtBQUssRUFBRSx5R0FBeUcsS0FBSyxDQUFDLFNBQVMsbUJBQW1CLGNBQWMsRUFBRTtZQUNsSyxPQUFPLEVBQUUsOEJBQThCLHdDQUF3QyxDQUM3RSxLQUFLLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxZQUFZLENBQ3BDLDhCQUE4Qix1Q0FBdUMsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLEVBQUU7WUFDNUYsU0FBUyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzNDLGVBQWUsRUFBRTtnQkFDZixVQUFVLEVBQUU7b0JBQ1YsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLE9BQU8sRUFBRSxnQkFBZ0I7aUJBQzFCO2dCQUNELFdBQVcsRUFBRSxLQUFLO2dCQUNsQixZQUFZLEVBQUUsQ0FBQyxLQUFLLENBQUMsYUFBYTtnQkFDbEMsZUFBZSxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUsUUFBUTthQUNuQztTQUNGLENBQUMsQ0FBQztRQUVILElBQUksZ0NBQWMsQ0FBQyxJQUFJLEVBQUUsK0JBQStCLEVBQUU7WUFDeEQsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzlCLFdBQVcsRUFBRSw4Q0FBNEIsQ0FBQyxZQUFZO1lBQ3RELFFBQVEsRUFBRSxDQUFDO1lBQ1gsSUFBSSxFQUFFLEdBQUcsdUJBQXVCLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyw2Q0FBNkM7WUFDOUYsS0FBSyxFQUFFLG1IQUFtSCxLQUFLLENBQUMsU0FBUyxxS0FBcUs7WUFDOVMsT0FBTyxFQUFFLG9DQUFvQyx3Q0FBd0MsQ0FDbkYsS0FBSyxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsWUFBWSxDQUNwQyxFQUFFO1lBQ0gsU0FBUyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzNDLGVBQWUsRUFBRTtnQkFDZixXQUFXLEVBQUUsS0FBSztnQkFDbEIsWUFBWSxFQUFFLENBQUMsS0FBSyxDQUFDLGFBQWE7Z0JBQ2xDLGdCQUFnQixFQUFFO29CQUNoQixhQUFhLEVBQUUsVUFBVTtvQkFDekIsY0FBYyxFQUFFLFVBQVU7aUJBQzNCO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLGdDQUFjLENBQUMsSUFBSSxFQUFFLG9DQUFvQyxFQUFFO1lBQzdELFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztZQUM5QixJQUFJLEVBQUUsR0FBRyx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLHFCQUFxQjtZQUN0RSxZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVk7WUFDaEMsUUFBUSxFQUFFLENBQUM7WUFDWCxXQUFXLEVBQUUsOENBQTRCLENBQUMsZUFBZTtZQUN6RCxLQUFLLEVBQUUsd0NBQXdDLEtBQUssQ0FBQyxTQUFTLHdEQUF3RDtZQUN0SCxPQUFPLEVBQUUscUZBQXFGLHVDQUF1QyxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsdUVBQXVFO1lBQ2hPLFNBQVMsRUFBRSxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUMzQyxlQUFlLEVBQUU7Z0JBQ2YsUUFBUSxFQUFFLEVBQUU7Z0JBQ1osVUFBVSxFQUFFO29CQUNWLFFBQVEsRUFBRSxDQUFDO2lCQUNaO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztZQUN0QixRQUFRLEVBQUUsR0FBYSxFQUFFO2dCQUN2QixNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUM7Z0JBQ2xCLElBQUksS0FBSyxDQUFDLGFBQWEsQ0FBQyx5QkFBeUIsR0FBRyxDQUFDLElBQUksS0FBSyxDQUFDLGFBQWEsQ0FBQyx5QkFBeUIsR0FBRyxHQUFHLEVBQUU7b0JBQzVHLE1BQU0sQ0FBQyxJQUFJLENBQUMsMkVBQTJFLENBQUMsQ0FBQztpQkFDMUY7Z0JBQ0QsSUFBSSxLQUFLLENBQUMsYUFBYSxDQUFDLHVCQUF1QixHQUFHLENBQUMsSUFBSSxLQUFLLENBQUMsYUFBYSxDQUFDLHVCQUF1QixHQUFHLEdBQUcsRUFBRTtvQkFDeEcsTUFBTSxDQUFDLElBQUksQ0FBQyx5RUFBeUUsQ0FBQyxDQUFDO2lCQUN4RjtnQkFDRCxJQUFJLEtBQUssQ0FBQyxhQUFhLENBQUMsdUJBQXVCLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQyx5QkFBeUIsRUFBRTtvQkFDL0YsTUFBTSxDQUFDLElBQUksQ0FBQyxpR0FBaUcsQ0FBQyxDQUFDO2lCQUNoSDtnQkFDRCxPQUFPLE1BQU0sQ0FBQztZQUNoQixDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUFsRkgsOERBbUZDOzs7QUFFRCxNQUFNLHVCQUF1QixHQUFHLENBQUMsU0FBaUIsRUFBRSxFQUFFLENBQUMsSUFBSSxTQUFTLFNBQVMsQ0FBQztBQUM5RSxNQUFNLFVBQVUsR0FBRyxDQUFDLFNBQWlCLEVBQUUsRUFBRSxDQUFDLENBQUMsWUFBWSxTQUFTLEVBQUUsQ0FBQyxDQUFDO0FBSXBFLFNBQWdCLHdCQUF3QixDQUFDLFlBQTZDO0lBQ3BGLFFBQVEsWUFBWSxJQUFJLElBQUksRUFBRTtRQUM1QixLQUFLLElBQUk7WUFDUCxPQUFPLEtBQUssQ0FBQztRQUNmLEtBQUssT0FBTztZQUNWLE9BQU8sWUFBWSxDQUFDO1FBQ3RCLEtBQUssY0FBYztZQUNqQixPQUFPLGlCQUFpQixDQUFDO0tBQzVCO0FBQ0gsQ0FBQztBQVRELDREQVNDO0FBRUQsU0FBUyx3Q0FBd0MsQ0FBQyxTQUFpQixFQUFFLFlBQTZDO0lBQ2hILE9BQU8sV0FBVyx3QkFBd0IsQ0FBQyxZQUFZLENBQUMsNEJBQTRCLFNBQVMsRUFBRSxDQUFDO0FBQ2xHLENBQUM7QUFFRCxTQUFTLHVDQUF1QyxDQUFDLFlBQTZDO0lBQzVGLE9BQU8sV0FBVyx3QkFBd0IsQ0FBQyxZQUFZLENBQUMsc0NBQXNDLENBQUM7QUFDakcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgRGF0YWRvZ01vbml0b3IsIERhdGFkb2dNb25pdG9yUXVlcnlBbGVydFR5cGUgfSBmcm9tICcuL2RhdGFkb2ctbW9uaXRvcic7XG5pbXBvcnQgeyBJTm90aWZpY2F0aW9uIH0gZnJvbSAnLi9kYXRhZG9nLW5vdGlmaWNhdGlvbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YWRvZ0xvZ0luZGV4TW9uaXRvcmluZ1Byb3BzIHtcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgeW91ciBzZXJ2aWNlIGluIERhdGFkb2cuIENhbiBiZSB1c2VkIHRvIHF1ZXJ5IHRoZSBtb25pdG9ycy5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBEYXRhZG9nIGluZGV4LlxuICAgKi9cbiAgcmVhZG9ubHkgaW5kZXhOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBpbnRlZ3JhdGlvbiB0byB1c2UgZm9yIGFsZXJ0aW5nLlxuICAgKi9cbiAgcmVhZG9ubHkgbm90aWZpY2F0aW9uPzogSU5vdGlmaWNhdGlvbjtcblxuICAvKipcbiAgICogVGhlIGRhaWx5IGxvZyBxdW90YSBzZXR0aW5ncy5cbiAgICovXG4gIHJlYWRvbmx5IGRhaWx5TG9nUXVvdGE6IERhdGFkb2dMb2dRdW90YVByb3BzO1xuXG4gIC8qKlxuICAgKiBUaGlzIHZhbHVlIHNob3VsZCBiZSB1c2VkIGlmIHRoZXJlIGlzIG5vIGxvZyBtZXNzYWdlIHdpdGhpbiAyNCBob3VycyBvciBtaXNzaW5nIGhpc3RvcmljYWwgZGF0YS5cbiAgICogV2l0aG91dCBzZXR0aW5nIHRoaXMgdmFsdWUgaXQgd2lsbCBsZWFkIHRvIGFuIGVtcHR5IHJlc3VsdCBhbmQgdGhlcmVmb3JlIHRyaWdnZXIgYW4gYWxlcnQuXG4gICAqIEBkZWZhdWx0VmFsdWUgLSBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgc3BhcnNlTG9nZ2luZz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBEYXRhZG9nIG9yZ2FuaXphdGlvbiwgZS5nLiwgJ0VVJyBvciAnTEFUQU0nXG4gICAqIEBkZWZhdWx0VmFsdWUgLSAnRVUnXG4gICAqL1xuICByZWFkb25seSBvcmdhbml6YXRpb24/OiBEYXRhZG9nT3JnYW5pemF0aW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERhdGFkb2dMb2dRdW90YVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBkYWlseSBsb2cgcXVvdGEgZm9yIHRoZSB0ZWFtLXNwZWNpZmljIGluZGV4IGluIG1pbGxpb24gZXZlbnRzLlxuICAgKi9cbiAgcmVhZG9ubHkgdmFsdWVJbk1pbGxpb25FdmVudHM6IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIHdhcm5pbmcgdGhyZXNob2xkIGZvciB0aGUgZGFpbHkgbG9nIHF1b3RhIG1vbml0b3IgaW4gcGVyY2VudC5cbiAgICovXG4gIHJlYWRvbmx5IHdhcm5pbmdUaHJlc2hvbGRJblBlcmNlbnQ6IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIGFsYXJtIHRocmVzaG9sZCBmb3IgdGhlIGRhaWx5IGxvZyBxdW90YSBtb25pdG9yIGluIHBlcmNlbnQuXG4gICAqIFRoZSB2YWx1ZSBtdXN0IGJlIGJldHdlZW4gMCBhbmQgMTAwIGFuZCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gdGhlIHdhcm5pbmcgdGhyZXNob2xkLlxuICAgKi9cbiAgcmVhZG9ubHkgYWxlcnRUaHJlc2hvbGRJblBlcmNlbnQ6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBCYXNpYyBtb25pdG9yaW5nIGFuZCBhbGVydGluZyBmb3IgYSBEYXRhZG9nIGxvZ3MgaW5kZXguXG4gKiBJdCBmb2xsb3dzIHRoZSBEYXRhZG9nIGd1aWRlIGF0IGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL2xvZ3MvZ3VpZGUvbG9ncy1tb25pdG9ycy1vbi12b2x1bWVzL1xuICogYW5kIGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgdGhyZWUgbW9uaXRvcnMuXG4gKiAgIDEuIEEgbWV0cmljIGFsZXJ0IHRoYXQgZmlyZXMgd2hlbiB5b3UgcmVhY2ggYSBjZXJ0YWluIHRocmVzaG9sZCBvZiB5b3VyIGRhaWx5IGxvZyBxdW90YS5cbiAqICAgMi4gQW4gYW5vbWFseSBtb25pdG9yIHRoYXQgZGV0ZWN0cyBsb2cgYW1vdW50IHNwaWtlcy5cbiAqICAgMy4gQW4gZXZlbnQgYWxlcnQgdGhhdCBmaXJlcyB3aGVuIHlvdSBoaXQgdGhlIGRhaWx5IGxvZyBxdW90YS5cbiAqXG4gKiBBIGRhdGFkb2cgbG9nIGluZGV4IGlzIHRlYW0gc3BlY2lmaWMgYW5kIHRodXMgdGhlIG1vbml0b3IgbmVlZHMgdG8gYmUgZGVwbG95ZWQganVzdCBvbmNlIHBlciBpbmRleC90ZWFtLlxuICovXG5leHBvcnQgY2xhc3MgRGF0YWRvZ0xvZ0luZGV4TW9uaXRvcmluZyBleHRlbmRzIENvbnN0cnVjdCB7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBEYXRhZG9nTG9nSW5kZXhNb25pdG9yaW5nUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgY29uc3QgbG9nUXVvdGFJbkV2ZW50cyA9IE1hdGguZmxvb3IocHJvcHMuZGFpbHlMb2dRdW90YS52YWx1ZUluTWlsbGlvbkV2ZW50cyAqIDFfMDAwXzAwMCk7XG4gICAgY29uc3Qgd2FybmluZ1RocmVzaG9sZCA9IE1hdGguZmxvb3IobG9nUXVvdGFJbkV2ZW50cyAqIChwcm9wcy5kYWlseUxvZ1F1b3RhLndhcm5pbmdUaHJlc2hvbGRJblBlcmNlbnQgLyAxMDApKTtcbiAgICBjb25zdCBhbGVydFRocmVzaG9sZCA9IE1hdGguZmxvb3IobG9nUXVvdGFJbkV2ZW50cyAqIChwcm9wcy5kYWlseUxvZ1F1b3RhLmFsZXJ0VGhyZXNob2xkSW5QZXJjZW50IC8gMTAwKSk7XG5cbiAgICBuZXcgRGF0YWRvZ01vbml0b3IodGhpcywgJ0RhdGFkb2dMb2dEYWlseVF1b3RhTW9uaXRvcicsIHtcbiAgICAgIHNlcnZpY2VOYW1lOiBwcm9wcy5zZXJ2aWNlTmFtZSxcbiAgICAgIG1vbml0b3JUeXBlOiBEYXRhZG9nTW9uaXRvclF1ZXJ5QWxlcnRUeXBlLk1FVFJJQ19BTEVSVCxcbiAgICAgIG5hbWU6IGAke2NvbW1vbk1vbml0b3JOYW1lUHJlZml4KHByb3BzLmluZGV4TmFtZSl9OiBMb2cgcXVvdGEgYWxtb3N0IHJlYWNoZWRgLFxuICAgICAgbm90aWZpY2F0aW9uOiBwcm9wcy5ub3RpZmljYXRpb24sXG4gICAgICBwcmlvcml0eTogMyxcbiAgICAgIHF1ZXJ5OiBgc3VtKGxhc3RfMWQpOnN1bTpkYXRhZG9nLmVzdGltYXRlZF91c2FnZS5sb2dzLmluZ2VzdGVkX2V2ZW50c3tkYXRhZG9nX2lzX2V4Y2x1ZGVkOmZhbHNlLGRhdGFkb2dfaW5kZXg6JHtwcm9wcy5pbmRleE5hbWV9fS5hc19jb3VudCgpID49ICR7YWxlcnRUaHJlc2hvbGR9YCxcbiAgICAgIG1lc3NhZ2U6IGBJbnNwZWN0IHlvdXIgbG9nIHZvbHVtZSBhdCAke2RhdGFkb2dMb2dzU2VhcmNoV2l0aEluZGV4RmlsdGVyRGVlcExpbmsoXG4gICAgICAgIHByb3BzLmluZGV4TmFtZSwgcHJvcHMub3JnYW5pemF0aW9uLFxuICAgICAgKX0gb3IgYWRhcHQgdGhlIGxvZyBxdW90YSBhdCAke2RhdGFkb2dMb2dzSW5kZXhlc0NvbmZpZ3VyYXRpb25EZWVwTGluayhwcm9wcy5vcmdhbml6YXRpb24pfWAsXG4gICAgICBleHRyYVRhZ3M6IFsuLi5jb21tb25UYWdzKHByb3BzLmluZGV4TmFtZSldLFxuICAgICAgb3B0aW9uT3ZlcnJpZGVzOiB7XG4gICAgICAgIHRocmVzaG9sZHM6IHtcbiAgICAgICAgICBjcml0aWNhbDogYWxlcnRUaHJlc2hvbGQsXG4gICAgICAgICAgd2FybmluZzogd2FybmluZ1RocmVzaG9sZCxcbiAgICAgICAgfSxcbiAgICAgICAgaW5jbHVkZVRhZ3M6IGZhbHNlLFxuICAgICAgICBub3RpZnlOb0RhdGE6ICFwcm9wcy5zcGFyc2VMb2dnaW5nLFxuICAgICAgICBub0RhdGFUaW1lZnJhbWU6IDI0ICogNjAsIC8vIDEgZGF5XG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgbmV3IERhdGFkb2dNb25pdG9yKHRoaXMsICdEYXRhZG9nTG9nQWxlcnRBbm9tYWx5TW9uaXRvcicsIHtcbiAgICAgIHNlcnZpY2VOYW1lOiBwcm9wcy5zZXJ2aWNlTmFtZSxcbiAgICAgIG1vbml0b3JUeXBlOiBEYXRhZG9nTW9uaXRvclF1ZXJ5QWxlcnRUeXBlLk1FVFJJQ19BTEVSVCxcbiAgICAgIHByaW9yaXR5OiA0LFxuICAgICAgbmFtZTogYCR7Y29tbW9uTW9uaXRvck5hbWVQcmVmaXgocHJvcHMuaW5kZXhOYW1lKX06IExvZyBhbW91bnQgaXMgcmlzaW5nIHRvIHVuZXhwZWN0ZWQgbGV2ZWxzYCxcbiAgICAgIHF1ZXJ5OiBgYXZnKGxhc3RfNGgpOmFub21hbGllcyhzdW06ZGF0YWRvZy5lc3RpbWF0ZWRfdXNhZ2UubG9ncy5pbmdlc3RlZF9ldmVudHN7ZGF0YWRvZ19pc19leGNsdWRlZDpmYWxzZSxkYXRhZG9nX2luZGV4OiR7cHJvcHMuaW5kZXhOYW1lfX0uYXNfY291bnQoKSwgJ3JvYnVzdCcsIDIsIGRpcmVjdGlvbj0nYWJvdmUnLCBhbGVydF93aW5kb3c9J2xhc3RfMTVtJywgaW50ZXJ2YWw9NjAsIGNvdW50X2RlZmF1bHRfemVybz0ndHJ1ZScsIHNlYXNvbmFsaXR5PSd3ZWVrbHknLCB0aW1lem9uZT0nZXVyb3BlL2JlcmxpbicpID49IDFgLFxuICAgICAgbWVzc2FnZTogYExvZ3MgYXJlIGdldHRpbmcgb3V0IG9mIGNvbnRyb2w6ICR7ZGF0YWRvZ0xvZ3NTZWFyY2hXaXRoSW5kZXhGaWx0ZXJEZWVwTGluayhcbiAgICAgICAgcHJvcHMuaW5kZXhOYW1lLCBwcm9wcy5vcmdhbml6YXRpb24sXG4gICAgICApfWAsXG4gICAgICBleHRyYVRhZ3M6IFsuLi5jb21tb25UYWdzKHByb3BzLmluZGV4TmFtZSldLFxuICAgICAgb3B0aW9uT3ZlcnJpZGVzOiB7XG4gICAgICAgIGluY2x1ZGVUYWdzOiBmYWxzZSxcbiAgICAgICAgbm90aWZ5Tm9EYXRhOiAhcHJvcHMuc3BhcnNlTG9nZ2luZyxcbiAgICAgICAgdGhyZXNob2xkV2luZG93czoge1xuICAgICAgICAgIHRyaWdnZXJXaW5kb3c6ICdsYXN0XzE1bScsXG4gICAgICAgICAgcmVjb3ZlcnlXaW5kb3c6ICdsYXN0XzE1bScsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgbmV3IERhdGFkb2dNb25pdG9yKHRoaXMsICdEYXRhZG9nTG9nRGFpbHlRdW90YVJlYWNoZWRNb25pdG9yJywge1xuICAgICAgc2VydmljZU5hbWU6IHByb3BzLnNlcnZpY2VOYW1lLFxuICAgICAgbmFtZTogYCR7Y29tbW9uTW9uaXRvck5hbWVQcmVmaXgocHJvcHMuaW5kZXhOYW1lKX06IExvZyBxdW90YSByZWFjaGVkYCxcbiAgICAgIG5vdGlmaWNhdGlvbjogcHJvcHMubm90aWZpY2F0aW9uLFxuICAgICAgcHJpb3JpdHk6IDIsXG4gICAgICBtb25pdG9yVHlwZTogRGF0YWRvZ01vbml0b3JRdWVyeUFsZXJ0VHlwZS5FVkVOVF9WXzJfQUxFUlQsXG4gICAgICBxdWVyeTogYGV2ZW50cyhcInNvdXJjZTpkYXRhZG9nIGRhdGFkb2dfaW5kZXg6JHtwcm9wcy5pbmRleE5hbWV9IERhaWx5IHF1b3RhIHJlYWNoZWRcIikucm9sbHVwKFwiY291bnRcIikubGFzdChcIjEyaFwiKSA+IDBgLFxuICAgICAgbWVzc2FnZTogYFRoZSBsb2cgcXVvdGUgZm9yIHRoZSBpbmRleCBoYXMgYmVlbiByZWFjaGVkLiBJZiB5b3UgZG8gbm90IGluY3JlYXNlIHRoZSBxdW90YSBhdCAke2RhdGFkb2dMb2dzSW5kZXhlc0NvbmZpZ3VyYXRpb25EZWVwTGluayhwcm9wcy5vcmdhbml6YXRpb24pfSwgbm8gbmV3IGxvZ3Mgd2lsbCBiZSBpbmRleGVkIHVudGlsIHRoZSBxdW90YSBpcyByZXNldCBhdCAyOjAwcG0gVVRDLmAsXG4gICAgICBleHRyYVRhZ3M6IFsuLi5jb21tb25UYWdzKHByb3BzLmluZGV4TmFtZSldLFxuICAgICAgb3B0aW9uT3ZlcnJpZGVzOiB7XG4gICAgICAgIHRpbWVvdXRIOiAyNCxcbiAgICAgICAgdGhyZXNob2xkczoge1xuICAgICAgICAgIGNyaXRpY2FsOiAwLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIHRoaXMubm9kZS5hZGRWYWxpZGF0aW9uKHtcbiAgICAgIHZhbGlkYXRlOiAoKTogc3RyaW5nW10gPT4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBbXTtcbiAgICAgICAgaWYgKHByb3BzLmRhaWx5TG9nUXVvdGEud2FybmluZ1RocmVzaG9sZEluUGVyY2VudCA8IDAgfHwgcHJvcHMuZGFpbHlMb2dRdW90YS53YXJuaW5nVGhyZXNob2xkSW5QZXJjZW50ID4gMTAwKSB7XG4gICAgICAgICAgcmVzdWx0LnB1c2goJ0ludmFsaWQgW3dhcm5pbmdUaHJlc2hvbGRJblBlcmNlbnRdOiBleHBlY3RpbmcgYSBudW1iZXIgYmV0d2VlbiAwIGFuZCAxMDAnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAocHJvcHMuZGFpbHlMb2dRdW90YS5hbGVydFRocmVzaG9sZEluUGVyY2VudCA8IDAgfHwgcHJvcHMuZGFpbHlMb2dRdW90YS5hbGVydFRocmVzaG9sZEluUGVyY2VudCA+IDEwMCkge1xuICAgICAgICAgIHJlc3VsdC5wdXNoKCdJbnZhbGlkIFthbGVydFRocmVzaG9sZEluUGVyY2VudF06IGV4cGVjdGluZyBhIG51bWJlciBiZXR3ZWVuIDAgYW5kIDEwMCcpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChwcm9wcy5kYWlseUxvZ1F1b3RhLmFsZXJ0VGhyZXNob2xkSW5QZXJjZW50IDwgcHJvcHMuZGFpbHlMb2dRdW90YS53YXJuaW5nVGhyZXNob2xkSW5QZXJjZW50KSB7XG4gICAgICAgICAgcmVzdWx0LnB1c2goJ0ludmFsaWQgW2FsZXJ0VGhyZXNob2xkSW5QZXJjZW50XTogbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gW3dhcm5pbmdUaHJlc2hvbGRJblBlcmNlbnRdJyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cblxuY29uc3QgY29tbW9uTW9uaXRvck5hbWVQcmVmaXggPSAoaW5kZXhOYW1lOiBzdHJpbmcpID0+IGAnJHtpbmRleE5hbWV9JyBpbmRleGA7XG5jb25zdCBjb21tb25UYWdzID0gKGluZGV4TmFtZTogc3RyaW5nKSA9PiBbYGxvZ0luZGV4OiR7aW5kZXhOYW1lfWBdO1xuXG5leHBvcnQgdHlwZSBEYXRhZG9nT3JnYW5pemF0aW9uID0gJ0VVJyB8ICdMQVRBTScgfCAnTGFuZGluZyBab25lJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldE9yZ2FuaXphdGlvblVybFByZWZpeChvcmdhbml6YXRpb246IERhdGFkb2dPcmdhbml6YXRpb24gfCB1bmRlZmluZWQpOiBzdHJpbmcge1xuICBzd2l0Y2ggKG9yZ2FuaXphdGlvbiA/PyAnRVUnKSB7XG4gICAgY2FzZSAnRVUnOlxuICAgICAgcmV0dXJuICdhcHAnO1xuICAgIGNhc2UgJ0xBVEFNJzpcbiAgICAgIHJldHVybiAncmlvLWJyYXppbCc7XG4gICAgY2FzZSAnTGFuZGluZyBab25lJzpcbiAgICAgIHJldHVybiAncmlvLWxhbmRpbmd6b25lJztcbiAgfVxufVxuXG5mdW5jdGlvbiBkYXRhZG9nTG9nc1NlYXJjaFdpdGhJbmRleEZpbHRlckRlZXBMaW5rKGluZGV4TmFtZTogc3RyaW5nLCBvcmdhbml6YXRpb246IERhdGFkb2dPcmdhbml6YXRpb24gfCB1bmRlZmluZWQpIHtcbiAgcmV0dXJuIGBodHRwczovLyR7Z2V0T3JnYW5pemF0aW9uVXJsUHJlZml4KG9yZ2FuaXphdGlvbil9LmRhdGFkb2docS5ldS9sb2dzP2luZGV4PSR7aW5kZXhOYW1lfWA7XG59XG5cbmZ1bmN0aW9uIGRhdGFkb2dMb2dzSW5kZXhlc0NvbmZpZ3VyYXRpb25EZWVwTGluayhvcmdhbml6YXRpb246IERhdGFkb2dPcmdhbml6YXRpb24gfCB1bmRlZmluZWQpIHtcbiAgcmV0dXJuIGBodHRwczovLyR7Z2V0T3JnYW5pemF0aW9uVXJsUHJlZml4KG9yZ2FuaXphdGlvbil9LmRhdGFkb2docS5ldS9sb2dzL3BpcGVsaW5lcy9pbmRleGVzYDtcbn1cbiJdfQ==
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZy1sb2ctaW5kZXgtbW9uaXRvcmluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhZG9ndjIvZGF0YWRvZy1sb2ctaW5kZXgtbW9uaXRvcmluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDJDQUF1QztBQUN2Qyx1REFBaUY7QUF5RGpGOzs7Ozs7Ozs7R0FTRztBQUNILE1BQWEseUJBQTBCLFNBQVEsc0JBQVM7SUFDdEQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFxQztRQUM3RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLG9CQUFvQixHQUFHLE9BQVMsQ0FBQyxDQUFDO1FBQzFGLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMseUJBQXlCLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUM5RyxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixHQUFHLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRTFHLElBQUksZ0NBQWMsQ0FBQyxJQUFJLEVBQUUsNkJBQTZCLEVBQUU7WUFDdEQsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzlCLFdBQVcsRUFBRSw4Q0FBNEIsQ0FBQyxZQUFZO1lBQ3RELElBQUksRUFBRSxHQUFHLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsNEJBQTRCO1lBQzdFLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWTtZQUNoQyxRQUFRLEVBQUUsQ0FBQztZQUNYLEtBQUssRUFBRSx5R0FBeUcsS0FBSyxDQUFDLFNBQVMsbUJBQW1CLGNBQWMsRUFB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QyxDQUFDO2dCQUN6RixDQUFDO2dCQUNELElBQUksS0FBSyxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDLHlCQUF5QixFQUFFLENBQUM7b0JBQ2hHLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUdBQWlHLENBQUMsQ0FBQztnQkFDakgsQ0FBQztnQkFDRCxPQUFPLE1BQU0sQ0FBQztZQUNoQixDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUFsRkgsOERBbUZDOzs7QUFFRCxNQUFNLHVCQUF1QixHQUFHLENBQUMsU0FBaUIsRUFBRSxFQUFFLENBQUMsSUFBSSxTQUFTLFNBQVMsQ0FBQztBQUM5RSxNQUFNLFVBQVUsR0FBRyxDQUFDLFNBQWlCLEVBQUUsRUFBRSxDQUFDLENBQUMsWUFBWSxTQUFTLEVBQUUsQ0FBQyxDQUFDO0FBSXBFLFNBQWdCLHdCQUF3QixDQUFDLFlBQTZDO0lBQ3BGLFFBQVEsWUFBWSxJQUFJLElBQUksRUFBRSxDQUFDO1FBQzdCLEtBQUssSUFBSTtZQUNQLE9BQU8sS0FBSyxDQUFDO1FBQ2YsS0FBSyxPQUFPO1lBQ1YsT0FBTyxZQUFZLENBQUM7UUFDdEIsS0FBSyxjQUFjO1lBQ2pCLE9BQU8saUJBQWlCLENBQUM7SUFDN0IsQ0FBQztBQUNILENBQUM7QUFURCw0REFTQztBQUVELFNBQVMsd0NBQXdDLENBQUMsU0FBaUIsRUFBRSxZQUE2QztJQUNoSCxPQUFPLFdBQVcsd0JBQXdCLENBQUMsWUFBWSxDQUFDLDRCQUE0QixTQUFTLEVBQUUsQ0FBQztBQUNsRyxDQUFDO0FBRUQsU0FBUyx1Q0FBdUMsQ0FBQyxZQUE2QztJQUM1RixPQUFPLFdBQVcsd0JBQXdCLENBQUMsWUFBWSxDQUFDLHNDQUFzQyxDQUFDO0FBQ2pHLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IERhdGFkb2dNb25pdG9yLCBEYXRhZG9nTW9uaXRvclF1ZXJ5QWxlcnRUeXBlIH0gZnJvbSAnLi9kYXRhZG9nLW1vbml0b3InO1xuaW1wb3J0IHsgSU5vdGlmaWNhdGlvbiB9IGZyb20gJy4vZGF0YWRvZy1ub3RpZmljYXRpb24nO1xuXG5leHBvcnQgaW50ZXJmYWNlIERhdGFkb2dMb2dJbmRleE1vbml0b3JpbmdQcm9wcyB7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHlvdXIgc2VydmljZSBpbiBEYXRhZG9nLiBDYW4gYmUgdXNlZCB0byBxdWVyeSB0aGUgbW9uaXRvcnMuXG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgRGF0YWRvZyBpbmRleC5cbiAgICovXG4gIHJlYWRvbmx5IGluZGV4TmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgaW50ZWdyYXRpb24gdG8gdXNlIGZvciBhbGVydGluZy5cbiAgICovXG4gIHJlYWRvbmx5IG5vdGlmaWNhdGlvbj86IElOb3RpZmljYXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSBkYWlseSBsb2cgcXVvdGEgc2V0dGluZ3MuXG4gICAqL1xuICByZWFkb25seSBkYWlseUxvZ1F1b3RhOiBEYXRhZG9nTG9nUXVvdGFQcm9wcztcblxuICAvKipcbiAgICogVGhpcyB2YWx1ZSBzaG91bGQgYmUgdXNlZCBpZiB0aGVyZSBpcyBubyBsb2cgbWVzc2FnZSB3aXRoaW4gMjQgaG91cnMgb3IgbWlzc2luZyBoaXN0b3JpY2FsIGRhdGEuXG4gICAqIFdpdGhvdXQgc2V0dGluZyB0aGlzIHZhbHVlIGl0IHdpbGwgbGVhZCB0byBhbiBlbXB0eSByZXN1bHQgYW5kIHRoZXJlZm9yZSB0cmlnZ2VyIGFuIGFsZXJ0LlxuICAgKiBAZGVmYXVsdFZhbHVlIC0gZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHNwYXJzZUxvZ2dpbmc/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgRGF0YWRvZyBvcmdhbml6YXRpb24sIGUuZy4sICdFVScgb3IgJ0xBVEFNJ1xuICAgKiBAZGVmYXVsdFZhbHVlIC0gJ0VVJ1xuICAgKi9cbiAgcmVhZG9ubHkgb3JnYW5pemF0aW9uPzogRGF0YWRvZ09yZ2FuaXphdGlvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEYXRhZG9nTG9nUXVvdGFQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgZGFpbHkgbG9nIHF1b3RhIGZvciB0aGUgdGVhbS1zcGVjaWZpYyBpbmRleCBpbiBtaWxsaW9uIGV2ZW50cy5cbiAgICovXG4gIHJlYWRvbmx5IHZhbHVlSW5NaWxsaW9uRXZlbnRzOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSB3YXJuaW5nIHRocmVzaG9sZCBmb3IgdGhlIGRhaWx5IGxvZyBxdW90YSBtb25pdG9yIGluIHBlcmNlbnQuXG4gICAqL1xuICByZWFkb25seSB3YXJuaW5nVGhyZXNob2xkSW5QZXJjZW50OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBhbGFybSB0aHJlc2hvbGQgZm9yIHRoZSBkYWlseSBsb2cgcXVvdGEgbW9uaXRvciBpbiBwZXJjZW50LlxuICAgKiBUaGUgdmFsdWUgbXVzdCBiZSBiZXR3ZWVuIDAgYW5kIDEwMCBhbmQgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIHRoZSB3YXJuaW5nIHRocmVzaG9sZC5cbiAgICovXG4gIHJlYWRvbmx5IGFsZXJ0VGhyZXNob2xkSW5QZXJjZW50OiBudW1iZXI7XG59XG5cbi8qKlxuICogQmFzaWMgbW9uaXRvcmluZyBhbmQgYWxlcnRpbmcgZm9yIGEgRGF0YWRvZyBsb2dzIGluZGV4LlxuICogSXQgZm9sbG93cyB0aGUgRGF0YWRvZyBndWlkZSBhdCBodHRwczovL2RvY3MuZGF0YWRvZ2hxLmNvbS9sb2dzL2d1aWRlL2xvZ3MtbW9uaXRvcnMtb24tdm9sdW1lcy9cbiAqIGFuZCBjb25zaXN0cyBvZiB0aGUgZm9sbG93aW5nIHRocmVlIG1vbml0b3JzLlxuICogICAxLiBBIG1ldHJpYyBhbGVydCB0aGF0IGZpcmVzIHdoZW4geW91IHJlYWNoIGEgY2VydGFpbiB0aHJlc2hvbGQgb2YgeW91ciBkYWlseSBsb2cgcXVvdGEuXG4gKiAgIDIuIEFuIGFub21hbHkgbW9uaXRvciB0aGF0IGRldGVjdHMgbG9nIGFtb3VudCBzcGlrZXMuXG4gKiAgIDMuIEFuIGV2ZW50IGFsZXJ0IHRoYXQgZmlyZXMgd2hlbiB5b3UgaGl0IHRoZSBkYWlseSBsb2cgcXVvdGEuXG4gKlxuICogQSBkYXRhZG9nIGxvZyBpbmRleCBpcyB0ZWFtIHNwZWNpZmljIGFuZCB0aHVzIHRoZSBtb25pdG9yIG5lZWRzIHRvIGJlIGRlcGxveWVkIGp1c3Qgb25jZSBwZXIgaW5kZXgvdGVhbS5cbiAqL1xuZXhwb3J0IGNsYXNzIERhdGFkb2dMb2dJbmRleE1vbml0b3JpbmcgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogRGF0YWRvZ0xvZ0luZGV4TW9uaXRvcmluZ1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IGxvZ1F1b3RhSW5FdmVudHMgPSBNYXRoLmZsb29yKHByb3BzLmRhaWx5TG9nUXVvdGEudmFsdWVJbk1pbGxpb25FdmVudHMgKiAxXzAwMF8wMDApO1xuICAgIGNvbnN0IHdhcm5pbmdUaHJlc2hvbGQgPSBNYXRoLmZsb29yKGxvZ1F1b3RhSW5FdmVudHMgKiAocHJvcHMuZGFpbHlMb2dRdW90YS53YXJuaW5nVGhyZXNob2xkSW5QZXJjZW50IC8gMTAwKSk7XG4gICAgY29uc3QgYWxlcnRUaHJlc2hvbGQgPSBNYXRoLmZsb29yKGxvZ1F1b3RhSW5FdmVudHMgKiAocHJvcHMuZGFpbHlMb2dRdW90YS5hbGVydFRocmVzaG9sZEluUGVyY2VudCAvIDEwMCkpO1xuXG4gICAgbmV3IERhdGFkb2dNb25pdG9yKHRoaXMsICdEYXRhZG9nTG9nRGFpbHlRdW90YU1vbml0b3InLCB7XG4gICAgICBzZXJ2aWNlTmFtZTogcHJvcHMuc2VydmljZU5hbWUsXG4gICAgICBtb25pdG9yVHlwZTogRGF0YWRvZ01vbml0b3JRdWVyeUFsZXJ0VHlwZS5NRVRSSUNfQUxFUlQsXG4gICAgICBuYW1lOiBgJHtjb21tb25Nb25pdG9yTmFtZVByZWZpeChwcm9wcy5pbmRleE5hbWUpfTogTG9nIHF1b3RhIGFsbW9zdCByZWFjaGVkYCxcbiAgICAgIG5vdGlmaWNhdGlvbjogcHJvcHMubm90aWZpY2F0aW9uLFxuICAgICAgcHJpb3JpdHk6IDMsXG4gICAgICBxdWVyeTogYHN1bShsYXN0XzFkKTpzdW06ZGF0YWRvZy5lc3RpbWF0ZWRfdXNhZ2UubG9ncy5pbmdlc3RlZF9ldmVudHN7ZGF0YWRvZ19pc19leGNsdWRlZDpmYWxzZSxkYXRhZG9nX2luZGV4OiR7cHJvcHMuaW5kZXhOYW1lfX0uYXNfY291bnQoKSA+PSAke2FsZXJ0VGhyZXNob2xkfWAsXG4gICAgICBtZXNzYWdlOiBgSW5zcGVjdCB5b3VyIGxvZyB2b2x1bWUgYXQgJHtkYXRhZG9nTG9nc1NlYXJjaFdpdGhJbmRleEZpbHRlckRlZXBMaW5rKFxuICAgICAgICBwcm9wcy5pbmRleE5hbWUsIHByb3BzLm9yZ2FuaXphdGlvbixcbiAgICAgICl9IG9yIGFkYXB0IHRoZSBsb2cgcXVvdGEgYXQgJHtkYXRhZG9nTG9nc0luZGV4ZXNDb25maWd1cmF0aW9uRGVlcExpbmsocHJvcHMub3JnYW5pemF0aW9uKX1gLFxuICAgICAgZXh0cmFUYWdzOiBbLi4uY29tbW9uVGFncyhwcm9wcy5pbmRleE5hbWUpXSxcbiAgICAgIG9wdGlvbk92ZXJyaWRlczoge1xuICAgICAgICB0aHJlc2hvbGRzOiB7XG4gICAgICAgICAgY3JpdGljYWw6IGFsZXJ0VGhyZXNob2xkLFxuICAgICAgICAgIHdhcm5pbmc6IHdhcm5pbmdUaHJlc2hvbGQsXG4gICAgICAgIH0sXG4gICAgICAgIGluY2x1ZGVUYWdzOiBmYWxzZSxcbiAgICAgICAgbm90aWZ5Tm9EYXRhOiAhcHJvcHMuc3BhcnNlTG9nZ2luZyxcbiAgICAgICAgbm9EYXRhVGltZWZyYW1lOiAyNCAqIDYwLCAvLyAxIGRheVxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIG5ldyBEYXRhZG9nTW9uaXRvcih0aGlzLCAnRGF0YWRvZ0xvZ0FsZXJ0QW5vbWFseU1vbml0b3InLCB7XG4gICAgICBzZXJ2aWNlTmFtZTogcHJvcHMuc2VydmljZU5hbWUsXG4gICAgICBtb25pdG9yVHlwZTogRGF0YWRvZ01vbml0b3JRdWVyeUFsZXJ0VHlwZS5NRVRSSUNfQUxFUlQsXG4gICAgICBwcmlvcml0eTogNCxcbiAgICAgIG5hbWU6IGAke2NvbW1vbk1vbml0b3JOYW1lUHJlZml4KHByb3BzLmluZGV4TmFtZSl9OiBMb2cgYW1vdW50IGlzIHJpc2luZyB0byB1bmV4cGVjdGVkIGxldmVsc2AsXG4gICAgICBxdWVyeTogYGF2ZyhsYXN0XzRoKTphbm9tYWxpZXMoc3VtOmRhdGFkb2cuZXN0aW1hdGVkX3VzYWdlLmxvZ3MuaW5nZXN0ZWRfZXZlbnRze2RhdGFkb2dfaXNfZXhjbHVkZWQ6ZmFsc2UsZGF0YWRvZ19pbmRleDoke3Byb3BzLmluZGV4TmFtZX19LmFzX2NvdW50KCksICdyb2J1c3QnLCAyLCBkaXJlY3Rpb249J2Fib3ZlJywgYWxlcnRfd2luZG93PSdsYXN0XzE1bScsIGludGVydmFsPTYwLCBjb3VudF9kZWZhdWx0X3plcm89J3RydWUnLCBzZWFzb25hbGl0eT0nd2Vla2x5JywgdGltZXpvbmU9J2V1cm9wZS9iZXJsaW4nKSA+PSAxYCxcbiAgICAgIG1lc3NhZ2U6IGBMb2dzIGFyZSBnZXR0aW5nIG91dCBvZiBjb250cm9sOiAke2RhdGFkb2dMb2dzU2VhcmNoV2l0aEluZGV4RmlsdGVyRGVlcExpbmsoXG4gICAgICAgIHByb3BzLmluZGV4TmFtZSwgcHJvcHMub3JnYW5pemF0aW9uLFxuICAgICAgKX1gLFxuICAgICAgZXh0cmFUYWdzOiBbLi4uY29tbW9uVGFncyhwcm9wcy5pbmRleE5hbWUpXSxcbiAgICAgIG9wdGlvbk92ZXJyaWRlczoge1xuICAgICAgICBpbmNsdWRlVGFnczogZmFsc2UsXG4gICAgICAgIG5vdGlmeU5vRGF0YTogIXByb3BzLnNwYXJzZUxvZ2dpbmcsXG4gICAgICAgIHRocmVzaG9sZFdpbmRvd3M6IHtcbiAgICAgICAgICB0cmlnZ2VyV2luZG93OiAnbGFzdF8xNW0nLFxuICAgICAgICAgIHJlY292ZXJ5V2luZG93OiAnbGFzdF8xNW0nLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIG5ldyBEYXRhZG9nTW9uaXRvcih0aGlzLCAnRGF0YWRvZ0xvZ0RhaWx5UXVvdGFSZWFjaGVkTW9uaXRvcicsIHtcbiAgICAgIHNlcnZpY2VOYW1lOiBwcm9wcy5zZXJ2aWNlTmFtZSxcbiAgICAgIG5hbWU6IGAke2NvbW1vbk1vbml0b3JOYW1lUHJlZml4KHByb3BzLmluZGV4TmFtZSl9OiBMb2cgcXVvdGEgcmVhY2hlZGAsXG4gICAgICBub3RpZmljYXRpb246IHByb3BzLm5vdGlmaWNhdGlvbixcbiAgICAgIHByaW9yaXR5OiAyLFxuICAgICAgbW9uaXRvclR5cGU6IERhdGFkb2dNb25pdG9yUXVlcnlBbGVydFR5cGUuRVZFTlRfVl8yX0FMRVJULFxuICAgICAgcXVlcnk6IGBldmVudHMoXCJzb3VyY2U6ZGF0YWRvZyBkYXRhZG9nX2luZGV4OiR7cHJvcHMuaW5kZXhOYW1lfSBEYWlseSBxdW90YSByZWFjaGVkXCIpLnJvbGx1cChcImNvdW50XCIpLmxhc3QoXCIxMmhcIikgPiAwYCxcbiAgICAgIG1lc3NhZ2U6IGBUaGUgbG9nIHF1b3RlIGZvciB0aGUgaW5kZXggaGFzIGJlZW4gcmVhY2hlZC4gSWYgeW91IGRvIG5vdCBpbmNyZWFzZSB0aGUgcXVvdGEgYXQgJHtkYXRhZG9nTG9nc0luZGV4ZXNDb25maWd1cmF0aW9uRGVlcExpbmsocHJvcHMub3JnYW5pemF0aW9uKX0sIG5vIG5ldyBsb2dzIHdpbGwgYmUgaW5kZXhlZCB1bnRpbCB0aGUgcXVvdGEgaXMgcmVzZXQgYXQgMjowMHBtIFVUQy5gLFxuICAgICAgZXh0cmFUYWdzOiBbLi4uY29tbW9uVGFncyhwcm9wcy5pbmRleE5hbWUpXSxcbiAgICAgIG9wdGlvbk92ZXJyaWRlczoge1xuICAgICAgICB0aW1lb3V0SDogMjQsXG4gICAgICAgIHRocmVzaG9sZHM6IHtcbiAgICAgICAgICBjcml0aWNhbDogMCxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICB0aGlzLm5vZGUuYWRkVmFsaWRhdGlvbih7XG4gICAgICB2YWxpZGF0ZTogKCk6IHN0cmluZ1tdID0+IHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gW107XG4gICAgICAgIGlmIChwcm9wcy5kYWlseUxvZ1F1b3RhLndhcm5pbmdUaHJlc2hvbGRJblBlcmNlbnQgPCAwIHx8IHByb3BzLmRhaWx5TG9nUXVvdGEud2FybmluZ1RocmVzaG9sZEluUGVyY2VudCA+IDEwMCkge1xuICAgICAgICAgIHJlc3VsdC5wdXNoKCdJbnZhbGlkIFt3YXJuaW5nVGhyZXNob2xkSW5QZXJjZW50XTogZXhwZWN0aW5nIGEgbnVtYmVyIGJldHdlZW4gMCBhbmQgMTAwJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHByb3BzLmRhaWx5TG9nUXVvdGEuYWxlcnRUaHJlc2hvbGRJblBlcmNlbnQgPCAwIHx8IHByb3BzLmRhaWx5TG9nUXVvdGEuYWxlcnRUaHJlc2hvbGRJblBlcmNlbnQgPiAxMDApIHtcbiAgICAgICAgICByZXN1bHQucHVzaCgnSW52YWxpZCBbYWxlcnRUaHJlc2hvbGRJblBlcmNlbnRdOiBleHBlY3RpbmcgYSBudW1iZXIgYmV0d2VlbiAwIGFuZCAxMDAnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAocHJvcHMuZGFpbHlMb2dRdW90YS5hbGVydFRocmVzaG9sZEluUGVyY2VudCA8IHByb3BzLmRhaWx5TG9nUXVvdGEud2FybmluZ1RocmVzaG9sZEluUGVyY2VudCkge1xuICAgICAgICAgIHJlc3VsdC5wdXNoKCdJbnZhbGlkIFthbGVydFRocmVzaG9sZEluUGVyY2VudF06IG11c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIFt3YXJuaW5nVGhyZXNob2xkSW5QZXJjZW50XScpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG59XG5cbmNvbnN0IGNvbW1vbk1vbml0b3JOYW1lUHJlZml4ID0gKGluZGV4TmFtZTogc3RyaW5nKSA9PiBgJyR7aW5kZXhOYW1lfScgaW5kZXhgO1xuY29uc3QgY29tbW9uVGFncyA9IChpbmRleE5hbWU6IHN0cmluZykgPT4gW2Bsb2dJbmRleDoke2luZGV4TmFtZX1gXTtcblxuZXhwb3J0IHR5cGUgRGF0YWRvZ09yZ2FuaXphdGlvbiA9ICdFVScgfCAnTEFUQU0nIHwgJ0xhbmRpbmcgWm9uZSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRPcmdhbml6YXRpb25VcmxQcmVmaXgob3JnYW5pemF0aW9uOiBEYXRhZG9nT3JnYW5pemF0aW9uIHwgdW5kZWZpbmVkKTogc3RyaW5nIHtcbiAgc3dpdGNoIChvcmdhbml6YXRpb24gPz8gJ0VVJykge1xuICAgIGNhc2UgJ0VVJzpcbiAgICAgIHJldHVybiAnYXBwJztcbiAgICBjYXNlICdMQVRBTSc6XG4gICAgICByZXR1cm4gJ3Jpby1icmF6aWwnO1xuICAgIGNhc2UgJ0xhbmRpbmcgWm9uZSc6XG4gICAgICByZXR1cm4gJ3Jpby1sYW5kaW5nem9uZSc7XG4gIH1cbn1cblxuZnVuY3Rpb24gZGF0YWRvZ0xvZ3NTZWFyY2hXaXRoSW5kZXhGaWx0ZXJEZWVwTGluayhpbmRleE5hbWU6IHN0cmluZywgb3JnYW5pemF0aW9uOiBEYXRhZG9nT3JnYW5pemF0aW9uIHwgdW5kZWZpbmVkKSB7XG4gIHJldHVybiBgaHR0cHM6Ly8ke2dldE9yZ2FuaXphdGlvblVybFByZWZpeChvcmdhbml6YXRpb24pfS5kYXRhZG9naHEuZXUvbG9ncz9pbmRleD0ke2luZGV4TmFtZX1gO1xufVxuXG5mdW5jdGlvbiBkYXRhZG9nTG9nc0luZGV4ZXNDb25maWd1cmF0aW9uRGVlcExpbmsob3JnYW5pemF0aW9uOiBEYXRhZG9nT3JnYW5pemF0aW9uIHwgdW5kZWZpbmVkKSB7XG4gIHJldHVybiBgaHR0cHM6Ly8ke2dldE9yZ2FuaXphdGlvblVybFByZWZpeChvcmdhbml6YXRpb24pfS5kYXRhZG9naHEuZXUvbG9ncy9waXBlbGluZXMvaW5kZXhlc2A7XG59XG4iXX0=
|
|
@@ -193,4 +193,4 @@ function mapThresholdWindowsProperties(source) {
|
|
|
193
193
|
RecoveryWindow: source.recoveryWindow,
|
|
194
194
|
} : undefined;
|
|
195
195
|
}
|
|
196
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZy1tb25pdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGFkb2d2Mi9kYXRhZG9nLW1vbml0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxtQ0FBbUM7QUFDbkMsMkNBQXVDO0FBQ3ZDLGlFQUFpRjtBQUNqRiwwREFBcUQ7QUFFckQ7Ozs7R0FJRztBQUNILElBQVksNEJBaUJYO0FBakJELFdBQVksNEJBQTRCO0lBQ3RDLDJEQUEyQixDQUFBO0lBQzNCLHVEQUF1QixDQUFBO0lBQ3ZCLDJEQUEyQixDQUFBO0lBQzNCLGtFQUFrQyxDQUFBO0lBQ2xDLHVEQUF1QixDQUFBO0lBQ3ZCLDZEQUE2QixDQUFBO0lBQzdCLCtEQUErQixDQUFBO0lBQy9CLDJEQUEyQixDQUFBO0lBQzNCLCtEQUErQixDQUFBO0lBQy9CLHFFQUFxQyxDQUFBO0lBQ3JDLCtFQUErQyxDQUFBO0lBQy9DLHVEQUF1QixDQUFBO0lBQ3ZCLHVEQUF1QixDQUFBO0lBQ3ZCLHlFQUF5QyxDQUFBO0lBQ3pDLDZFQUE2QyxDQUFBO0lBQzdDLGlFQUFpQyxDQUFBO0FBQ25DLENBQUMsRUFqQlcsNEJBQTRCLDRDQUE1Qiw0QkFBNEIsUUFpQnZDO0FBcUVEOzs7O0dBSUc7QUFDSCxJQUFZLGdCQUlYO0FBSkQsV0FBWSxnQkFBZ0I7SUFDMUIsbUNBQWUsQ0FBQTtJQUNmLHVDQUFtQixDQUFBO0lBQ25CLGlDQUFhLENBQUE7QUFDZixDQUFDLEVBSlcsZ0JBQWdCLGdDQUFoQixnQkFBZ0IsUUFJM0I7QUFFRDs7OztHQUlHO0FBQ0gsSUFBWSx5QkFLWDtBQUxELFdBQVkseUJBQXlCO0lBQ25DLGtEQUFxQixDQUFBO0lBQ3JCLHNEQUF5QixDQUFBO0lBQ3pCLDBEQUE2QixDQUFBO0lBQzdCLGtEQUFxQixDQUFBO0FBQ3ZCLENBQUMsRUFMVyx5QkFBeUIseUNBQXpCLHlCQUF5QixRQUtwQztBQUVEOzs7O0dBSUc7QUFDSCxJQUFZLG9CQUtY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QUErQztJQUM5RSxPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDZCxRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVE7UUFDekIsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDLGdCQUFnQjtRQUN6QyxFQUFFLEVBQUUsTUFBTSxDQUFDLEVBQUU7UUFDYixPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU87UUFDdkIsZUFBZSxFQUFFLE1BQU0sQ0FBQyxlQUFlO0tBQ3hDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztBQUNoQixDQUFDO0FBRUQsU0FBUyw2QkFBNkIsQ0FBQyxNQUFxRDtJQUMxRixPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDZCxhQUFhLEVBQUUsTUFBTSxDQUFDLGFBQWE7UUFDbkMsY0FBYyxFQUFFLE1BQU0sQ0FBQyxjQUFjO0tBQ3RDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztBQUNoQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY2RrIGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgRGVmYXVsdFNsYWNrTm90aWZpY2F0aW9uLCBJTm90aWZpY2F0aW9uIH0gZnJvbSAnLi9kYXRhZG9nLW5vdGlmaWNhdGlvbic7XG5pbXBvcnQgeyBSaW9MYW5kaW5nWm9uZSB9IGZyb20gJy4uL3Jpby1sYW5kaW5nLXpvbmUnO1xuXG4vKipcbiAqIFdlbGwga25vd24gbW9uaXRvciB0eXBlcyBzdXBwb3J0ZWQgYnkgRGF0YWRvZy5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL21vbml0b3JzL3R5cGVzL1xuICovXG5leHBvcnQgZW51bSBEYXRhZG9nTW9uaXRvclF1ZXJ5QWxlcnRUeXBlIHtcbiAgQVVESVRfQUxFUlQgPSAnYXVkaXQgYWxlcnQnLFxuICBDT01QT1NJVEUgPSAnY29tcG9zaXRlJyxcbiAgRVZFTlRfQUxFUlQgPSAnZXZlbnQgYWxlcnQnLFxuICBFVkVOVF9WXzJfQUxFUlQgPSAnZXZlbnQtdjIgYWxlcnQnLFxuICBMT0dfQUxFUlQgPSAnbG9nIGFsZXJ0JyxcbiAgTUVUUklDX0FMRVJUID0gJ21ldHJpYyBhbGVydCcsXG4gIFBST0NFU1NfQUxFUlQgPSAncHJvY2VzcyBhbGVydCcsXG4gIFFVRVJZX0FMRVJUID0gJ3F1ZXJ5IGFsZXJ0JyxcbiAgU0VSVklDRV9DSEVDSyA9ICdzZXJ2aWNlIGNoZWNrJyxcbiAgU1lOVEhFVElDU19BTEVSVCA9ICdzeW50aGV0aWNzIGFsZXJ0JyxcbiAgVFJBQ0VfQU5BTFlUSUNTX0FMRVJUID0gJ3RyYWNlLWFuYWx5dGljcyBhbGVydCcsXG4gIFNMT19BTEVSVCA9ICdzbG8gYWxlcnQnLFxuICBSVU1fQUxFUlQgPSAncnVtIGFsZXJ0JyxcbiAgQ0lfUElQRUxJTkVTX0FMRVJUID0gJ2NpLXBpcGVsaW5lcyBhbGVydCcsXG4gIEVSUk9SX1RSQUNLSU5HX0FMRVJUID0gJ2Vycm9yLXRyYWNraW5nIGFsZXJ0JyxcbiAgQ0lfVEVTVFNfQUxFUlQgPSAnY2ktdGVzdHMgYWxlcnQnLFxufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgb2Yge0BsaW5rIERhdGFkb2dNb25pdG9yfVxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGFkb2dNb25pdG9yUHJvcHMge1xuXG4gIC8qKlxuICAgKiBBIG5hbWUgc3VmZml4IHRvIGJlIGFwcGVuZGVkIHRvIHRoZSBtb25pdG9ycyBuYW1lLlxuICAgKlxuICAgKiBUaGUgbW9uaXRvciBuYW1lIGlzIGNvbmNhdGVuYXRlZCBmb3JtIGA8VGVhbU5hbWU+IDxzZXJ2aWNlTmFtZSBwcm9wZXJ0eT4gPG5hbWUgcHJvcGVydHk+YFxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgc2VydmljZSB0byB3aGljaCB0aGUgbW9uaXRvciBiZWxvbmdzLlxuICAgKlxuICAgKiBVc2VkIHRvIGdlbmVyYXRlIHRoZSBtb25pdG9yIG5hbWUgYXMgd2VsbCBhIGFwcGx5IHRoZSBgc2VydmljZWAgdGFnLlxuICAgKi9cbiAgcmVhZG9ubHkgc2VydmljZU5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG1vbml0b3JzIHR5cGVcbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuZGF0YWRvZ2hxLmNvbS9tb25pdG9ycy90eXBlcy9cbiAgICovXG4gIHJlYWRvbmx5IG1vbml0b3JUeXBlOiBEYXRhZG9nTW9uaXRvclF1ZXJ5QWxlcnRUeXBlO1xuXG4gIC8qKlxuICAgKiBUaGUgbW9uaXRvcnMgc2VhcmNoIHF1ZXJ5XG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmRhdGFkb2docS5jb20vbW9uaXRvcnMvY29uZmlndXJhdGlvbi8jZGVmaW5lLXRoZS1zZWFyY2gtcXVlcnlcbiAgICovXG4gIHJlYWRvbmx5IHF1ZXJ5OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBtZXNzYWdlIHBhdHRlcm4gZm9yIHRoZSBtb25pdG9yXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmRhdGFkb2docS5jb20vbW9uaXRvcnMvY29uZmlndXJhdGlvbi8jbWVzc2FnZVxuICAgKi9cbiAgcmVhZG9ubHkgbWVzc2FnZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUbyBleHBsaWNpdGx5IGRpc2FibGUgbm90aWZpY2F0aW9ucyB1c2Uge0BsaW5rIE5vTm90aWZpY2F0aW9ufS5cbiAgICpcbiAgICogQGRlZmF1bHRWYWx1ZSB7QGxpbmsgRGVmYXVsdFNsYWNrTm90aWZpY2F0aW9ufVxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL21vbml0b3JzL25vdGlmeVxuICAgKi9cbiAgcmVhZG9ubHkgbm90aWZpY2F0aW9uPzogSU5vdGlmaWNhdGlvbjtcblxuICAvKipcbiAgICogVGhlIGFsZXJ0IHByaW9yaXR5IG9mIHRoZSBtb25pdG9yXG4gICAqXG4gICAqIEBkZWZhdWx0VmFsdWUgNFxuICAgKi9cbiAgcmVhZG9ubHkgcHJpb3JpdHk/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmljIG9wdGlvbnMgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgbW9uaXRvciBvcHRpb25zLlxuICAgKi9cbiAgcmVhZG9ubHkgb3B0aW9uT3ZlcnJpZGVzPzogQ2ZuRGF0YWRvZ01vbml0b3JPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBUYWdzIHRvIGJlIGFwcGVuZGVkIHRvIHRoZSBtb25pdG9yIGluIGFkZGl0aW9uIHRvIHRoZSBSSU8gZGVmYXVsdCB0YWdzXG4gICAqL1xuICByZWFkb25seSBleHRyYVRhZ3M/OiBzdHJpbmdbXTtcbn1cblxuLyoqXG4gKiBXZWxsIGtub3duIHJlbm90aWZpY2F0aW9uIHNldHRpbmdzIHN1cHBvcnRlZCBieSBEYXRhZG9nLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9kb2NzLmRhdGFkb2docS5jb20vbW9uaXRvcnMvbm90aWZ5LyNyZW5vdGlmeVxuICovXG5leHBvcnQgZW51bSBSZW5vdGlmeVN0YXR1c2VzIHtcbiAgQUxFUlQgPSAnYWxlcnQnLFxuICBOT19EQVRBID0gJ25vIGRhdGEnLFxuICBXQVJOID0gJ3dhcm4nXG59XG5cbi8qKlxuICogV2VsbCBrbm93biBub3RpZmljYXRpb24gcHJlc2V0cyBzdXBwb3J0ZWQgYnkgRGF0YWRvZy5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9EYXRhRG9nL2RhdGFkb2ctY2xvdWRmb3JtYXRpb24tcmVzb3VyY2VzL2Jsb2IvbWFzdGVyL2RhdGFkb2ctbW9uaXRvcnMtbW9uaXRvci1oYW5kbGVyL2RhdGFkb2ctbW9uaXRvcnMtbW9uaXRvci5qc29uXG4gKi9cbmV4cG9ydCBlbnVtIE1vbml0b3JOb3RpZmljYXRpb25QcmVzZXQge1xuICBTSE9XX0FMTCA9ICdzaG93X2FsbCcsXG4gIEhJREVfUVVFUlkgPSAnaGlkZV9xdWVyeScsXG4gIEhJREVfSEFORExFUyA9ICdoaWRlX2hhbmRsZXMnLFxuICBISURFX0FMTCA9ICdoaWRlX2FsbCcsXG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3Igb25NaXNzaW5nRGF0YSBzdXBwb3J0ZWQgYnkgRGF0YWRvZy5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9EYXRhRG9nL2RhdGFkb2ctY2xvdWRmb3JtYXRpb24tcmVzb3VyY2VzL2Jsb2IvbWFzdGVyL2RhdGFkb2ctbW9uaXRvcnMtbW9uaXRvci1oYW5kbGVyL2RhdGFkb2ctbW9uaXRvcnMtbW9uaXRvci5qc29uXG4gKi9cbmV4cG9ydCBlbnVtIE1vbml0b3JPbk1pc3NpbmdEYXRhIHtcbiAgREVGQVVMVCA9ICdkZWZhdWx0JyxcbiAgU0hPV19OT19EQVRBID0gJ3Nob3dfbm9fZGF0YScsXG4gIFNIT1dfQU5EX05PVElGWV9OT19EQVRBID0gJ3Nob3dfYW5kX25vdGlmeV9ub19kYXRhJyxcbiAgUkVTT0xWRSA9ICdyZXNvbHZlJyxcbn1cblxuLyoqXG4gKiBPcHRpb25zIHRvIG92ZXJyaWRlIGZvciBEYXRhZG9nIG1vbml0b3JzIGluIGNhc2UgbW9yZSBzcGVjaWZpYyBzZXR0aW5ncyBhcmUgcmVxdWlyZWQuXG4gKlxuICoge0BsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9EYXRhRG9nL2RhdGFkb2ctY2xvdWRmb3JtYXRpb24tcmVzb3VyY2VzL2Jsb2IvbWFzdGVyL2RhdGFkb2ctbW9uaXRvcnMtbW9uaXRvci1oYW5kbGVyL2RhdGFkb2ctbW9uaXRvcnMtbW9uaXRvci5qc29ufVxuICovXG5leHBvcnQgaW50ZXJmYWNlIENmbkRhdGFkb2dNb25pdG9yT3B0aW9ucyB7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgYSBzYW1wbGUgb2YgdGhlIGxvZ3NcbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZUxvZ3NTYW1wbGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byBzZW5kIGEgbGlzdCBvZiBzYW1wbGVzIHdoZW4gdGhlIG1vbml0b3IgdHJpZ2dlcnMuXG4gICAqXG4gICAqIFRoaXMgaXMgb25seSB1c2VkIGJ5IENJIFRlc3QgYW5kIFBpcGVsaW5lIG1vbml0b3JzLlxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlU2FtcGxlcz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE1lc3NhZ2UgdG8gaW5jbHVkZSB3aXRoIGEgcmUtbm90aWZpY2F0aW9uIHdoZW4gcmVub3RpZnlfaW50ZXJ2YWwgaXMgc2V0XG4gICAqL1xuICByZWFkb25seSBlc2NhbGF0aW9uTWVzc2FnZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGltZSBpbiBzZWNvbmRzIHRvIGRlbGF5IGV2YWx1YXRpb25cbiAgICpcbiAgICovXG4gIHJlYWRvbmx5IGV2YWx1YXRpb25EZWxheT86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIHRpbWUgc3BhbiBhZnRlciB3aGljaCBncm91cHMgd2l0aCBtaXNzaW5nIGRhdGEgYXJlIGRyb3BwZWQgZnJvbSB0aGUgbW9uaXRvciBzdGF0ZS5cbiAgICpcbiAgICogVGhlIG1pbmltdW0gdmFsdWUgaXMgb25lIGhvdXIsIGFuZCB0aGUgbWF4aW11bSB2YWx1ZSBpcyA3MiBob3Vycy5cbiAgICogRXhhbXBsZSB2YWx1ZXMgYXJlOiBcIjYwbVwiLCBcIjFoXCIsIGFuZCBcIjJkXCIuXG4gICAqIFRoaXMgb3B0aW9uIGlzIG9ubHkgYXZhaWxhYmxlIGZvciBBUE0gVHJhY2UgQW5hbHl0aWNzLCBBdWRpdCBUcmFpbCwgQ0ksIEVycm9yIFRyYWNraW5nLCBFdmVudCwgTG9ncywgYW5kIFJVTSBtb25pdG9ycy5cbiAgICovXG4gIHJlYWRvbmx5IGdyb3VwUmV0ZW50aW9uRHVyYXRpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgdHJpZ2dlcmluZyB0YWdzIGludG8gbm90aWZpY2F0aW9uIHRpdGxlJ1xuICAgKlxuICAgKiBAZGVmYXVsdFZhbHVlIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGluY2x1ZGVUYWdzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciBvciBub3QgY2hhbmdlcyB0byB0aGlzIG1vbml0b3Igc2hvdWxkIGJlIHJlc3RyaWN0ZWQgdG8gdGhlIGNyZWF0b3Igb3IgYWRtaW5zXG4gICAqL1xuICByZWFkb25seSBsb2NrZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgbG9jYXRpb25zIGFsbG93ZWQgdG8gZmFpbCBiZWZvcmUgdHJpZ2dlcmluZyBhbGVydFxuICAgKi9cbiAgcmVhZG9ubHkgbWluTG9jYXRpb25GYWlsZWQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRpbWUgaW4gc2Vjb25kcyB0byBhbGxvdyBhIGhvc3QgdG8gc3RhcnQgcmVwb3J0aW5nIGRhdGEgYmVmb3JlIHN0YXJ0aW5nIHRoZSBldmFsdWF0aW9uIG9mIG1vbml0b3IgcmVzdWx0c1xuICAgKi9cbiAgcmVhZG9ubHkgbmV3SG9zdERlbGF5PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgbWludXRlcyBkYXRhIHN0b3BwZWQgcmVwb3J0aW5nIGJlZm9yZSBub3RpZnlpbmdcbiAgICovXG4gIHJlYWRvbmx5IG5vRGF0YVRpbWVmcmFtZT86IG51bWJlcjtcblxuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdG8gbm90aWZ5IHRhZ2dlZCB1c2VycyB3aGVuIGNoYW5nZXMgYXJlIG1hZGUgdG8gdGhlIG1vbml0b3JcbiAgICovXG4gIHJlYWRvbmx5IG5vdGlmeUF1ZGl0PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQ29udHJvbHMgd2hhdCBncmFudWxhcml0eSBhIG1vbml0b3IgYWxlcnRzIG9uLlxuICAgKlxuICAgKiBPbmx5IGF2YWlsYWJsZSBmb3IgbW9uaXRvcnMgd2l0aCBncm91cGluZ3MuXG4gICAqIEZvciBpbnN0YW5jZSwgYSBtb25pdG9yIGdyb3VwZWQgYnkgYGNsdXN0ZXJgLCBgbmFtZXNwYWNlYCwgYW5kIGBwb2RgIGNhbiBiZSBjb25maWd1cmVkIHRvIG9ubHkgbm90aWZ5IG9uIGVhY2ggbmV3IGBjbHVzdGVyYCB2aW9sYXRpbmcgdGhlIGFsZXJ0IGNvbmRpdGlvbnMgYnkgc2V0dGluZyBgbm90aWZ5X2J5YCB0byBgW1wiY2x1c3RlclwiXWAuXG4gICAqIFRhZ3MgbWVudGlvbmVkIGluIGBub3RpZnlfYnlgIG11c3QgYmUgYSBzdWJzZXQgb2YgdGhlIGdyb3VwaW5nIHRhZ3MgaW4gdGhlIHF1ZXJ5LlxuICAgKiBGb3IgZXhhbXBsZSwgYSBxdWVyeSBncm91cGVkIGJ5IGBjbHVzdGVyYCBhbmQgYG5hbWVzcGFjZWAgY2Fubm90IG5vdGlmeSBvbiBgcmVnaW9uYC5cbiAgICogU2V0dGluZyBgbm90aWZ5X2J5YCB0byBgWypdYCBjb25maWd1cmVzIHRoZSBtb25pdG9yIHRvIG5vdGlmeSBhcyBhIHNpbXBsZS1hbGVydC5cbiAgICovXG4gIHJlYWRvbmx5IG5vdGlmeUJ5Pzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIG5vdGlmeSB3aGVuIGRhdGEgc3RvcHMgcmVwb3J0aW5nXG4gICAqXG4gICAqIEBkZWZhdWx0VmFsdWUgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IG5vdGlmeU5vRGF0YT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIENvbnRyb2xzIGhvdyBncm91cHMgb3IgbW9uaXRvcnMgYXJlIHRyZWF0ZWQgaWYgYW4gZXZhbHVhdGlvbiBkb2VzIG5vdCByZXR1cm4gYW55IGRhdGEgcG9pbnRzLlxuICAgKlxuICAgKiBUaGUgZGVmYXVsdCBvcHRpb24gcmVzdWx0cyBpbiBkaWZmZXJlbnQgYmVoYXZpb3IgZGVwZW5kaW5nIG9uIHRoZSBtb25pdG9yIHF1ZXJ5IHR5cGUuXG4gICAqIEZvciBtb25pdG9ycyB1c2luZyBDb3VudCBxdWVyaWVzLCBhbiBlbXB0eSBtb25pdG9yIGV2YWx1YXRpb24gaXMgdHJlYXRlZCBhcyAwIGFuZCBpcyBjb21wYXJlZCB0byB0aGUgdGhyZXNob2xkIGNvbmRpdGlvbnMuXG4gICAqIEZvciBtb25pdG9ycyB1c2luZyBhbnkgcXVlcnkgdHlwZSBvdGhlciB0aGFuIENvdW50LCBmb3IgZXhhbXBsZSBHYXVnZSwgTWVhc3VyZSwgb3IgUmF0ZSwgdGhlIG1vbml0b3Igc2hvd3MgdGhlIGxhc3Qga25vd24gc3RhdHVzLlxuICAgKiBUaGlzIG9wdGlvbiBpcyBvbmx5IGF2YWlsYWJsZSBmb3IgQVBNIFRyYWNlIEFuYWx5dGljcywgQXVkaXQgVHJhaWwsIENJLCBFcnJvciBUcmFja2luZywgRXZlbnQsIExvZ3MsIGFuZCBSVU0gbW9uaXRvcnMuXG4gICAqL1xuICByZWFkb25seSBvbk1pc3NpbmdEYXRhPzogTW9uaXRvck9uTWlzc2luZ0RhdGE7XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBtaW51dGVzIGFmdGVyIHRoZSBsYXN0IG5vdGlmaWNhdGlvbiBiZWZvcmUgdGhlIG1vbml0b3IgcmUtbm90aWZpZXMgb24gdGhlIGN1cnJlbnQgc3RhdHVzXG4gICAqL1xuICByZWFkb25seSByZW5vdGlmeUludGVydmFsPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0aGUgbW9uaXRvciByZXF1aXJlcyBhIGZ1bGwgd2luZG93IG9mIGRhdGEgYmVmb3JlIGl0IGlzIGV2YWx1YXRlZFxuICAgKlxuICAgKiBAZGVmYXVsdFZhbHVlIGZhbHNlXG4gICAqL1xuICByZWFkb25seSByZXF1aXJlRnVsbFdpbmRvdz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3Igc2NoZWR1bGluZ1xuICAgKi9cbiAgcmVhZG9ubHkgc2NoZWR1bGluZ09wdGlvbnM/OiBNb25pdG9yU2NoZWR1bGluZ09wdGlvbnM7XG5cbiAgLyoqXG4gICAqIElEIG9mIHRoZSBjb3JyZXNwb25kaW5nIHN5bnRoZXRpY3MgY2hlY2tcbiAgICovXG4gIHJlYWRvbmx5IHN5bnRoZXRpY3NDaGVja0lEPzogbnVtYmVyO1xuXG4gIHJlYWRvbmx5IHRocmVzaG9sZHM/OiBDZm5EYXRhZG9nTW9uaXRvclRocmVzaG9sZHM7XG5cbiAgcmVhZG9ubHkgdGhyZXNob2xkV2luZG93cz86IENmbkRhdGFkb2dNb25pdG9yVGhyZXNob2xkV2luZG93cztcblxuICAvKipcbiAgICogTnVtYmVyIG9mIGhvdXJzIG9mIHRoZSBtb25pdG9yIG5vdCByZXBvcnRpbmcgZGF0YSBiZWZvcmUgaXQgYXV0b21hdGljYWxseSByZXNvbHZlc1xuICAgKi9cbiAgcmVhZG9ubHkgdGltZW91dEg/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgdGltZXMgcmUtbm90aWZpY2F0aW9uIG1lc3NhZ2VzIHNob3VsZCBiZSBzZW50IG9uIHRoZSBjdXJyZW50IHN0YXR1cyBhdCB0aGUgcHJvdmlkZWQgcmUtbm90aWZpY2F0aW9uIGludGVydmFsLlxuICAgKi9cbiAgcmVhZG9ubHkgcmVub3RpZnlPY2N1cnJlbmNlcz86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIHR5cGVzIG9mIG1vbml0b3Igc3RhdHVzZXMgZm9yIHdoaWNoIHJlLW5vdGlmaWNhdGlvbiBtZXNzYWdlcyBhcmUgc2VudC5cbiAgICovXG4gIHJlYWRvbmx5IHJlbm90aWZ5U3RhdHVzZXM/OiBSZW5vdGlmeVN0YXR1c2VzW107XG5cbiAgLyoqXG4gICAqIEhvdyBsb25nIHRoZSB0ZXN0IHNob3VsZCBiZSBpbiBmYWlsdXJlIGJlZm9yZSBhbGVydGluZyAoaW50ZWdlciwgbnVtYmVyIG9mIHNlY29uZHMsIG1heCA3MjAwKS5cbiAgICovXG4gIHJlYWRvbmx5IG1pbkZhaWx1cmVEdXJhdGlvbj86IG51bWJlcjtcblxuICAvKipcbiAgICogQ29udHJvbHMgd2hpY2ggaW5mb3JtYXRpb24gc2hvdWxkIGJlIGFkZGVkL2xldHQgb3V0IGZyb20gdGhlIG5vdGlmaWNhdGlvbi5cbiAgICpcbiAgICogQGRlZmF1bHRWYWx1ZSB7QGxpbmsgTW9uaXRvck5vdGlmaWNhdGlvblByZXNldC5TSE9XX0FMTH1cbiAgICovXG4gIHJlYWRvbmx5IG1vbml0b3JOb3RpZmljYXRpb25QcmVzZXROYW1lPzogTW9uaXRvck5vdGlmaWNhdGlvblByZXNldDtcblxuICAvKipcbiAgICogVGltZSAoaW4gc2Vjb25kcykgdG8gc2tpcCBldmFsdWF0aW9ucyBmb3IgbmV3IGdyb3Vwcy4gRm9yIGV4YW1wbGUsIHRoaXMgb3B0aW9uIGNhbiBiZSB1c2VkIHRvIHNraXAgZXZhbHVhdGlvbnMgZm9yIG5ldyBob3N0cyB3aGlsZSB0aGV5IGluaXRpYWxpemUuIE11c3QgYmUgYSBub24gbmVnYXRpdmUgaW50ZWdlci5cbiAgICovXG4gIHJlYWRvbmx5IG5ld0dyb3VwRGVsYXk/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgcmVxdWVzdHMgdGhhdCBjYW4gYmUgdXNlZCBpbiB0aGUgbW9uaXRvciBxdWVyeS5cbiAgICovXG4gIHJlYWRvbmx5IHZhcmlhYmxlcz86IG9iamVjdFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENmbkRhdGFkb2dNb25pdG9yVGhyZXNob2xkcyB7XG5cbiAgLyoqXG4gICAqIFRocmVzaG9sZCB2YWx1ZSBmb3IgdHJpZ2dlcmluZyBhbiBhbGVydFxuICAgKi9cbiAgcmVhZG9ubHkgY3JpdGljYWw/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRocmVzaG9sZCB2YWx1ZSBmb3IgcmVjb3ZlcmluZyBmcm9tIGFuIGFsZXJ0IHN0YXRlXG4gICAqL1xuICByZWFkb25seSBjcml0aWNhbFJlY292ZXJ5PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaHJlc2hvbGQgdmFsdWUgZm9yIHJlY292ZXJpbmcgZnJvbSBhbiBhbGVydCBzdGF0ZVxuICAgKi9cbiAgcmVhZG9ubHkgb2s/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRocmVzaG9sZCB2YWx1ZSBmb3IgdHJpZ2dlcmluZyBhIHdhcm5pbmdcbiAgICovXG4gIHJlYWRvbmx5IHdhcm5pbmc/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRocmVzaG9sZCB2YWx1ZSBmb3IgcmVjb3ZlcmluZyBmcm9tIGEgd2FybmluZyBzdGF0ZVxuICAgKi9cbiAgcmVhZG9ubHkgd2FybmluZ1JlY292ZXJ5PzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENmbkRhdGFkb2dNb25pdG9yVGhyZXNob2xkV2luZG93cyB7XG5cbiAgLyoqXG4gICAqIEhvdyBsb25nIGEgbWV0cmljIG11c3QgYmUgYW5vbWFsb3VzIGJlZm9yZSB0cmlnZ2VyaW5nIGFuIGFsZXJ0XG4gICAqL1xuICByZWFkb25seSB0cmlnZ2VyV2luZG93Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIb3cgbG9uZyBhbiBhbm9tYWxvdXMgbWV0cmljIG11c3QgYmUgbm9ybWFsIGJlZm9yZSByZWNvdmVyaW5nIGZyb20gYW4gYWxlcnQgc3RhdGVcbiAgICovXG4gIHJlYWRvbmx5IHJlY292ZXJ5V2luZG93Pzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3Igc2NoZWR1bGluZ1xuICovXG5leHBvcnQgaW50ZXJmYWNlIE1vbml0b3JTY2hlZHVsaW5nT3B0aW9ucyB7XG4gIHJlYWRvbmx5IGV2YWx1YXRpb25XaW5kb3c/OiBNb25pdG9yU2NoZWR1bGluZ09wdGlvbnNFdmFsdWF0aW9uV2luZG93O1xufVxuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIGV2YWx1YXRpb24gd2luZG93LlxuICpcbiAqIElmIGBob3VyX3N0YXJ0c2AgaXMgc2V0LCBubyBvdGhlciBmaWVsZHMgbWF5IGJlIHNldC5cbiAqIE90aGVyd2lzZSwgYGRheV9zdGFydHNgIGFuZCBgbW9udGhfc3RhcnRzYCBtdXN0IGJlIHNldCB0b2dldGhlci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNb25pdG9yU2NoZWR1bGluZ09wdGlvbnNFdmFsdWF0aW9uV2luZG93IHtcblxuICAvKipcbiAgICogVGhlIHRpbWUgb2YgdGhlIGRheSBhdCB3aGljaCBhIG9uZSBkYXkgY3VtdWxhdGl2ZSBldmFsdWF0aW9uIHdpbmRvdyBzdGFydHMuXG4gICAqXG4gICAqIE11c3QgYmUgZGVmaW5lZCBpbiBVVEMgdGltZSBpbiBgSEg6bW1gIGZvcm1hdC5cbiAgICovXG4gIHJlYWRvbmx5IGRheVN0YXJ0cz86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGRheSBvZiB0aGUgbW9udGggYXQgd2hpY2ggYSBvbmUgbW9udGggY3VtdWxhdGl2ZSBldmFsdWF0aW9uIHdpbmRvdyBzdGFydHNcbiAgICovXG4gIHJlYWRvbmx5IG1vbnRoU3RhcnRzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgbWludXRlIG9mIHRoZSBob3VyIGF0IHdoaWNoIGEgb25lIGhvdXIgY3VtdWxhdGl2ZSBldmFsdWF0aW9uIHdpbmRvdyBzdGFydHNcbiAgICovXG4gIHJlYWRvbmx5IGhvdXJTdGFydHM/OiBudW1iZXI7XG59XG5cbi8qKlxuICogV3JhcHBlciBhcm91bmQgRGF0YWRvZydzIENsb3VkRm9ybWF0aW9uIGBEYXRhZG9nOjpNb25pdG9yczo6TW9uaXRvcmAgd2l0aCBzb21lIFJJTyBkZWZhdWx0cyBhcHBsaWVkLlxuICpcbiAqIFRvIHVzZSB0aGlzIHRoZSBEYXRhZG9nIHJlc291cmNlcyBoYXZlIHRvIGJlIHtAbGluayBodHRwczovL2RvY3MuZGF0YWRvZ2hxLmNvbS9pbnRlZ3JhdGlvbnMvZ3VpZGUvYW1hem9uX2Nsb3VkZm9ybWF0aW9uL1xuICogfGVuYWJsZWQgaW4gdGhlIENsb3VkRm9ybWF0aW9uIHJlZ2lzdHJ5fSBvZiB0aGUgY29ycmVzcG9uZGluZyBBV1MgYWNjb3VudC4gVXN1YWxseSB0aGlzIGlzIGRvbmVcbiAqIGF1dG9tYXRpY2FsbHkgYnkgdGhlIERhdGFkb2cgSW50ZWdyYXRpb25zIChhY2NvdW50IG1vZHVsZSBBTkQgU2VydmljZUNhdGFsb2cpIHByb3ZpZGVkIGJ5IENMQUlELlxuICovXG5leHBvcnQgY2xhc3MgRGF0YWRvZ01vbml0b3IgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICAvKipcbiAgICogRGVmYXVsdCBwcmlvcml0eSBvZiBhIG1vbml0b3JcbiAgICovXG4gIHN0YXRpYyByZWFkb25seSBERUZBVUxUX1BSSU9SSVRZID0gNDtcblxuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHByaW9yaXR5OiBudW1iZXI7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBtb25pdG9yOiBjZGsuQ2ZuUmVzb3VyY2U7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IERhdGFkb2dNb25pdG9yUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIHRoaXMucHJpb3JpdHkgPSBwcm9wcy5wcmlvcml0eSA/PyBEYXRhZG9nTW9uaXRvci5ERUZBVUxUX1BSSU9SSVRZO1xuICAgIHRoaXMubmFtZSA9IHByb3BzLm5hbWU7XG5cbiAgICBjb25zdCB0ZWFtTmFtZSA9IFJpb0xhbmRpbmdab25lLmdldFRlYW1OYW1lUGFyYW1ldGVyKHRoaXMpO1xuICAgIGNvbnN0IHRlYW1JZGVudGlmaWVyID0gUmlvTGFuZGluZ1pvbmUuZ2V0VGVhbUlkZW50aWZpZXJQYXJhbWV0ZXIodGhpcyk7XG4gICAgY29uc3QgYWNjb3VudE5hbWUgPSBSaW9MYW5kaW5nWm9uZS5nZXRBY2NvdW50TmFtZVBhcmFtZXRlcih0aGlzKTtcblxuICAgIGNvbnN0IG5vdGlmaWNhdGlvbiA9IHByb3BzLm5vdGlmaWNhdGlvbiA/IHByb3BzLm5vdGlmaWNhdGlvbiA6IG5ldyBEZWZhdWx0U2xhY2tOb3RpZmljYXRpb24oKTtcblxuICAgIGNvbnN0IGlzQXdzTWV0cmlrTW9uaXRvciA9IChwcm9wcy5tb25pdG9yVHlwZSA9PT0gRGF0YWRvZ01vbml0b3JRdWVyeUFsZXJ0VHlwZS5NRVRSSUNfQUxFUlQgfHwgcHJvcHMubW9uaXRvclR5cGUgPT09IERhdGFkb2dNb25pdG9yUXVlcnlBbGVydFR5cGUuUVVFUllfQUxFUlQpICYmIHByb3BzLnF1ZXJ5LmluZGV4T2YoJ2F3cy4nKSA+IC0xO1xuICAgIGNvbnN0IG9wdGlvbk92ZXJyaWRlcyA9IHtcbiAgICAgIC4uLnByb3BzLm9wdGlvbk92ZXJyaWRlcyxcbiAgICB9O1xuXG4gICAgaWYgKGlzQXdzTWV0cmlrTW9uaXRvciAmJiBvcHRpb25PdmVycmlkZXMuZXZhbHVhdGlvbkRlbGF5ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIG9wdGlvbk92ZXJyaWRlcy5ldmFsdWF0aW9uRGVsYXkgPSA5MDA7XG4gICAgICBjb25zdCBhbm5vdGF0aW9ucyA9IGNkay5Bbm5vdGF0aW9ucy5vZihjZGsuU3RhY2sub2YodGhpcykpO1xuICAgICAgYW5ub3RhdGlvbnMuYWRkV2FybmluZ1YyKFxuICAgICAgICBgQHJpby1jbG91ZC9jZGstdjItY29uc3RydWN0cy9kYXRhZG9ndjIvRGF0YWRvZ01vbml0b3IvJHtpZH0vQ2xvdWRNZXRyaWNFdmFsdWF0aW9uRGVsYXlgLFxuICAgICAgICAnXFxuIOKdjCBZb3VyIG1vbml0b3IgaXMgYWxlcnRpbmcgb24gQ2xvdWQgTWV0cmljcyBidXQgeW91IGhhdmVuXFwndCBzZXQgYW4gXFwnb3B0aW9uT3ZlcnJpZGVzLmV2YWx1YXRpb25EZWxheVxcJy5cXG4g4pyFIEl0XFwncyBhdXRvbWF0aWNhbGx5IHNldCB0byAxNSBtaW51dGVzLCBidXQgcGxlYXNlIHByb3ZpZGUgYSBzdWl0YWJsZSB2YWx1ZSBvbiB5b3VyIG93bi5cXG4nLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vRGF0YURvZy9kYXRhZG9nLWNsb3VkZm9ybWF0aW9uLXJlc291cmNlcy9ibG9iL21hc3Rlci9kYXRhZG9nLW1vbml0b3JzLW1vbml0b3ItaGFuZGxlci9kYXRhZG9nLW1vbml0b3JzLW1vbml0b3IuanNvblxuICAgIHRoaXMubW9uaXRvciA9IG5ldyBjZGsuQ2ZuUmVzb3VyY2UodGhpcywgJ01vbml0b3InLCB7XG4gICAgICB0eXBlOiAnRGF0YWRvZzo6TW9uaXRvcnM6Ok1vbml0b3InLFxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICBUeXBlOiBwcm9wcy5tb25pdG9yVHlwZSxcbiAgICAgICAgUXVlcnk6IHByb3BzLnF1ZXJ5LFxuICAgICAgICBOYW1lOiBgJHt0ZWFtTmFtZS5zdHJpbmdWYWx1ZX0gJHtwcm9wcy5zZXJ2aWNlTmFtZX0gJHtwcm9wcy5uYW1lfWAsXG4gICAgICAgIE1lc3NhZ2U6IHRoaXMuY29uY2F0ZW5hdGVNZXNzYWdlKHsgbWVzc2FnZTogcHJvcHMubWVzc2FnZSwgbm90aWZpY2F0aW9uIH0pLFxuICAgICAgICBQcmlvcml0eTogdGhpcy5wcmlvcml0eSxcbiAgICAgICAgT3B0aW9uczogbWFwTW9uaXRvck9wdGlvbnMob3B0aW9uT3ZlcnJpZGVzKSxcbiAgICAgICAgVGFnczogW1xuICAgICAgICAgIC4uLihwcm9wcy5leHRyYVRhZ3MgPz8gW10pLFxuICAgICAgICAgIGBhY2NvdW50X2lkOiR7Y2RrLlN0YWNrLm9mKHRoaXMpLmFjY291bnR9YCxcbiAgICAgICAgICBgYWNjb3VudF9uYW1lOiR7YWNjb3VudE5hbWUuc3RyaW5nVmFsdWV9YCxcbiAgICAgICAgICBgc2VydmljZToke3Byb3BzLnNlcnZpY2VOYW1lfWAsXG4gICAgICAgICAgYHRlYW06JHt0ZWFtTmFtZS5zdHJpbmdWYWx1ZX1gLFxuICAgICAgICAgIGB0ZWFtX2lkZW50aWZpZXI6JHt0ZWFtSWRlbnRpZmllci5zdHJpbmdWYWx1ZX1gLFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPYnRhaW4gdGhlIG1vbml0b3JfaWQgYXMgdXNlZCBpbiBEYXRhZG9nXG4gICAqIFNlZSBodHRwczovL2RvY3MuZGF0YWRvZ2hxLmNvbS9hcGkvbGF0ZXN0L21vbml0b3JzLyNnZXQtYS1tb25pdG9ycy1kZXRhaWxzXG4gICAqXG4gICAqIFRoaXMgYWxsb3dzIHJlZmVyZW5jaW5nIHRoaXMgbW9uaXRvciBpbiBvdGhlciBjb25zdHJ1Y3RzL3Jlc291cmNlcyAoZS5nLiBTTE9zKVxuICAgKi9cbiAgZ2V0IG1vbml0b3JJZCgpIHtcbiAgICAvLyByZXR1cm4gUmVmIGFzIGl0IHJldHVybnMgdGhlIElkIGFzIHN0cmluZyBpbnN0ZWFkIG9mIHRoZSBHZXRBdHQoSWQpIHdpaGNoIHJldHVybnMgdGhlIGlkIGFzIG51bWJlclxuICAgIC8vIGh0dHBzOi8vbXktcmlvLnNsYWNrLmNvbS9hcmNoaXZlcy9DMDM0V0FHM1FVQS9wMTcwODQxOTg3MTM5ODk0OVxuICAgIHJldHVybiBjZGsuRm4ucmVmKHRoaXMubW9uaXRvci5sb2dpY2FsSWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBjb25jYXRlbmF0ZU1lc3NhZ2UocHJvcHM6IHttZXNzYWdlOiBzdHJpbmc7IG5vdGlmaWNhdGlvbjogSU5vdGlmaWNhdGlvbn0pIHtcbiAgICByZXR1cm4gYCR7cHJvcHMubWVzc2FnZX1cXG5cXG4ke3Byb3BzLm5vdGlmaWNhdGlvbi5nZW5lcmF0ZU1lc3NhZ2VBbm5vdGF0aW9uKHRoaXMpfWA7XG4gIH1cblxufVxuXG5mdW5jdGlvbiBtYXBNb25pdG9yT3B0aW9ucyhzb3VyY2U6IENmbkRhdGFkb2dNb25pdG9yT3B0aW9ucyB8IHVuZGVmaW5lZCkge1xuICByZXR1cm4ge1xuICAgIEVuYWJsZUxvZ3NTYW1wbGU6IHNvdXJjZT8uZW5hYmxlTG9nc1NhbXBsZSxcbiAgICBFbmFibGVTYW1wbGVzOiBzb3VyY2U/LmVuYWJsZVNhbXBsZXMsXG4gICAgRXNjYWxhdGlvbk1lc3NhZ2U6IHNvdXJjZT8uZXNjYWxhdGlvbk1lc3NhZ2UsXG4gICAgRXZhbHVhdGlvbkRlbGF5OiBzb3VyY2U/LmV2YWx1YXRpb25EZWxheSxcbiAgICBHcm91cFJldGVudGlvbkR1cmF0aW9uOiBzb3VyY2U/Lmdyb3VwUmV0ZW50aW9uRHVyYXRpb24sXG4gICAgSW5jbHVkZVRhZ3M6IHNvdXJjZT8uaW5jbHVkZVRhZ3MgPz8gdHJ1ZSxcbiAgICBMb2NrZWQ6IHNvdXJjZT8ubG9ja2VkLFxuICAgIE1pbkxvY2F0aW9uRmFpbGVkOiBzb3VyY2U/Lm1pbkxvY2F0aW9uRmFpbGVkLFxuICAgIE5ld0hvc3REZWxheTogc291cmNlPy5uZXdIb3N0RGVsYXksXG4gICAgTm9EYXRhVGltZWZyYW1lOiBzb3VyY2U/Lm5vRGF0YVRpbWVmcmFtZSxcbiAgICBOb3RpZnlBdWRpdDogc291cmNlPy5ub3RpZnlBdWRpdCxcbiAgICBOb3RpZnlCeTogc291cmNlPy5ub3RpZnlCeSxcbiAgICBOb3RpZnlOb0RhdGE6IHNvdXJjZT8ubm90aWZ5Tm9EYXRhID8/IGZhbHNlLFxuICAgIFJlbm90aWZ5SW50ZXJ2YWw6IHNvdXJjZT8ucmVub3RpZnlJbnRlcnZhbCxcbiAgICBSZXF1aXJlRnVsbFdpbmRvdzogc291cmNlPy5yZXF1aXJlRnVsbFdpbmRvdyA/PyBmYWxzZSxcbiAgICBTY2hlZHVsaW5nT3B0aW9uczogbWFwU2NoZWR1bGluZ09wdGlvbnNQcm9wZXJ0aWVzKHNvdXJjZT8uc2NoZWR1bGluZ09wdGlvbnMpLFxuICAgIFN5bnRoZXRpY3NDaGVja0lEOiBzb3VyY2U/LnN5bnRoZXRpY3NDaGVja0lELFxuICAgIFRocmVzaG9sZHM6IG1hcFRocmVzaG9sZHNQcm9wZXJ0aWVzKHNvdXJjZT8udGhyZXNob2xkcyksXG4gICAgVGhyZXNob2xkV2luZG93czogbWFwVGhyZXNob2xkV2luZG93c1Byb3BlcnRpZXMoc291cmNlPy50aHJlc2hvbGRXaW5kb3dzKSxcbiAgICBNb25pdG9yTm90aWZpY2F0aW9uUHJlc2V0TmFtZTogc291cmNlPy5tb25pdG9yTm90aWZpY2F0aW9uUHJlc2V0TmFtZSxcbiAgICBUaW1lb3V0SDogc291cmNlPy50aW1lb3V0SCxcbiAgICBSZW5vdGlmeU9jY3VycmVuY2VzOiBzb3VyY2U/LnJlbm90aWZ5T2NjdXJyZW5jZXMsXG4gICAgUmVub3RpZnlTdGF0dXNlczogc291cmNlPy5yZW5vdGlmeVN0YXR1c2VzLFxuICAgIE1pbkZhaWx1cmVEdXJhdGlvbjogc291cmNlPy5taW5GYWlsdXJlRHVyYXRpb24sXG4gICAgTmV3R3JvdXBEZWxheTogc291cmNlPy5uZXdHcm91cERlbGF5LFxuICAgIFZhcmlhYmxlczogc291cmNlPy52YXJpYWJsZXMsXG4gICAgT25NaXNzaW5nRGF0YTogc291cmNlPy5vbk1pc3NpbmdEYXRhLFxuICB9O1xufTtcblxuZnVuY3Rpb24gbWFwU2NoZWR1bGluZ09wdGlvbnNQcm9wZXJ0aWVzKHNvdXJjZTogTW9uaXRvclNjaGVkdWxpbmdPcHRpb25zIHwgdW5kZWZpbmVkKSB7XG4gIHJldHVybiBzb3VyY2UgPyB7XG4gICAgRXZhbHVhdGlvbldpbmRvdzogbWFwU2NoZWR1bGluZ09wdGlvbnNFdmFsdWF0aW9uV2luZG93UHJvcGVydGllcyhzb3VyY2UuZXZhbHVhdGlvbldpbmRvdyksXG4gIH0gOiB1bmRlZmluZWQ7XG59XG5cbmZ1bmN0aW9uIG1hcFNjaGVkdWxpbmdPcHRpb25zRXZhbHVhdGlvbldpbmRvd1Byb3BlcnRpZXMoc291cmNlOiBNb25pdG9yU2NoZWR1bGluZ09wdGlvbnNFdmFsdWF0aW9uV2luZG93IHwgdW5kZWZpbmVkKSB7XG4gIHJldHVybiBzb3VyY2UgPyB7XG4gICAgRGF5U3RhcnRzOiBzb3VyY2UuZGF5U3RhcnRzLFxuICAgIE1vbnRoU3RhcnRzOiBzb3VyY2UubW9udGhTdGFydHMsXG4gICAgSG91clN0YXJ0czogc291cmNlLmhvdXJTdGFydHMsXG4gIH0gOiB1bmRlZmluZWQ7XG59XG5cbmZ1bmN0aW9uIG1hcFRocmVzaG9sZHNQcm9wZXJ0aWVzKHNvdXJjZTogQ2ZuRGF0YWRvZ01vbml0b3JUaHJlc2hvbGRzIHwgdW5kZWZpbmVkKSB7XG4gIHJldHVybiBzb3VyY2UgPyB7XG4gICAgQ3JpdGljYWw6IHNvdXJjZS5jcml0aWNhbCxcbiAgICBDcml0aWNhbFJlY292ZXJ5OiBzb3VyY2UuY3JpdGljYWxSZWNvdmVyeSxcbiAgICBPSzogc291cmNlLm9rLFxuICAgIFdhcm5pbmc6IHNvdXJjZS53YXJuaW5nLFxuICAgIFdhcm5pbmdSZWNvdmVyeTogc291cmNlLndhcm5pbmdSZWNvdmVyeSxcbiAgfSA6IHVuZGVmaW5lZDtcbn1cblxuZnVuY3Rpb24gbWFwVGhyZXNob2xkV2luZG93c1Byb3BlcnRpZXMoc291cmNlOiBDZm5EYXRhZG9nTW9uaXRvclRocmVzaG9sZFdpbmRvd3MgfCB1bmRlZmluZWQpIHtcbiAgcmV0dXJuIHNvdXJjZSA/IHtcbiAgICBUcmlnZ2VyV2luZG93OiBzb3VyY2UudHJpZ2dlcldpbmRvdyxcbiAgICBSZWNvdmVyeVdpbmRvdzogc291cmNlLnJlY292ZXJ5V2luZG93LFxuICB9IDogdW5kZWZpbmVkO1xufVxuIl19
|
|
196
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZy1tb25pdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGFkb2d2Mi9kYXRhZG9nLW1vbml0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxtQ0FBbUM7QUFDbkMsMkNBQXVDO0FBQ3ZDLGlFQUFpRjtBQUNqRiwwREFBcUQ7QUFFckQ7Ozs7R0FJRztBQUNILElBQVksNEJBaUJYO0FBakJELFdBQVksNEJBQTRCO0lBQ3RDLDJEQUEyQixDQUFBO0lBQzNCLHVEQUF1QixDQUFBO0lBQ3ZCLDJEQUEyQixDQUFBO0lBQzNCLGtFQUFrQyxDQUFBO0lBQ2xDLHVEQUF1QixDQUFBO0lBQ3ZCLDZEQUE2QixDQUFBO0lBQzdCLCtEQUErQixDQUFBO0lBQy9CLDJEQUEyQixDQUFBO0lBQzNCLCtEQUErQixDQUFBO0lBQy9CLHFFQUFxQyxDQUFBO0lBQ3JDLCtFQUErQyxDQUFBO0lBQy9DLHVEQUF1QixDQUFBO0lBQ3ZCLHVEQUF1QixDQUFBO0lBQ3ZCLHlFQUF5QyxDQUFBO0lBQ3pDLDZFQUE2QyxDQUFBO0lBQzdDLGlFQUFpQyxDQUFBO0FBQ25DLENBQUMsRUFqQlcsNEJBQTRCLDRDQUE1Qiw0QkFBNEIsUUFpQnZDO0FBcUVEOzs7O0dBSUc7QUFDSCxJQUFZLGdCQUlYO0FBSkQsV0FBWSxnQkFBZ0I7SUFDMUIsbUNBQWUsQ0FBQTtJQUNmLHVDQUFtQixDQUFBO0lBQ25CLGlDQUFhLENBQUE7QUFDZixDQUFDLEVBSlcsZ0JBQWdCLGdDQUFoQixnQkFBZ0IsUUFJM0I7QUFFRDs7OztHQUlHO0FBQ0gsSUFBWSx5QkFLWDtBQUxELFdBQVkseUJBQXlCO0lBQ25DLGtEQUFxQixDQUFBO0lBQ3JCLHNEQUF5QixDQUFBO0lBQ3pCLDBEQUE2QixDQUFBO0lBQzdCLGtEQUFxQixDQUFBO0FBQ3ZCLENBQUMsRUFMVyx5QkFBeUIseUNBQXpCLHlCQUF5QixRQUtwQztBQUVEOzs7O0dBSUc7QUFDSCxJQUFZLG9CQUtY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QXVCLENBQUMsTUFBK0M7SUFDOUUsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ2QsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFRO1FBQ3pCLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxnQkFBZ0I7UUFDekMsRUFBRSxFQUFFLE1BQU0sQ0FBQyxFQUFFO1FBQ2IsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPO1FBQ3ZCLGVBQWUsRUFBRSxNQUFNLENBQUMsZUFBZTtLQUN4QyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDaEIsQ0FBQztBQUVELFNBQVMsNkJBQTZCLENBQUMsTUFBcUQ7SUFDMUYsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ2QsYUFBYSxFQUFFLE1BQU0sQ0FBQyxhQUFhO1FBQ25DLGNBQWMsRUFBRSxNQUFNLENBQUMsY0FBYztLQUN0QyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IERlZmF1bHRTbGFja05vdGlmaWNhdGlvbiwgSU5vdGlmaWNhdGlvbiB9IGZyb20gJy4vZGF0YWRvZy1ub3RpZmljYXRpb24nO1xuaW1wb3J0IHsgUmlvTGFuZGluZ1pvbmUgfSBmcm9tICcuLi9yaW8tbGFuZGluZy16b25lJztcblxuLyoqXG4gKiBXZWxsIGtub3duIG1vbml0b3IgdHlwZXMgc3VwcG9ydGVkIGJ5IERhdGFkb2cuXG4gKlxuICogQHNlZSBodHRwczovL2RvY3MuZGF0YWRvZ2hxLmNvbS9tb25pdG9ycy90eXBlcy9cbiAqL1xuZXhwb3J0IGVudW0gRGF0YWRvZ01vbml0b3JRdWVyeUFsZXJ0VHlwZSB7XG4gIEFVRElUX0FMRVJUID0gJ2F1ZGl0IGFsZXJ0JyxcbiAgQ09NUE9TSVRFID0gJ2NvbXBvc2l0ZScsXG4gIEVWRU5UX0FMRVJUID0gJ2V2ZW50IGFsZXJ0JyxcbiAgRVZFTlRfVl8yX0FMRVJUID0gJ2V2ZW50LXYyIGFsZXJ0JyxcbiAgTE9HX0FMRVJUID0gJ2xvZyBhbGVydCcsXG4gIE1FVFJJQ19BTEVSVCA9ICdtZXRyaWMgYWxlcnQnLFxuICBQUk9DRVNTX0FMRVJUID0gJ3Byb2Nlc3MgYWxlcnQnLFxuICBRVUVSWV9BTEVSVCA9ICdxdWVyeSBhbGVydCcsXG4gIFNFUlZJQ0VfQ0hFQ0sgPSAnc2VydmljZSBjaGVjaycsXG4gIFNZTlRIRVRJQ1NfQUxFUlQgPSAnc3ludGhldGljcyBhbGVydCcsXG4gIFRSQUNFX0FOQUxZVElDU19BTEVSVCA9ICd0cmFjZS1hbmFseXRpY3MgYWxlcnQnLFxuICBTTE9fQUxFUlQgPSAnc2xvIGFsZXJ0JyxcbiAgUlVNX0FMRVJUID0gJ3J1bSBhbGVydCcsXG4gIENJX1BJUEVMSU5FU19BTEVSVCA9ICdjaS1waXBlbGluZXMgYWxlcnQnLFxuICBFUlJPUl9UUkFDS0lOR19BTEVSVCA9ICdlcnJvci10cmFja2luZyBhbGVydCcsXG4gIENJX1RFU1RTX0FMRVJUID0gJ2NpLXRlc3RzIGFsZXJ0Jyxcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIG9mIHtAbGluayBEYXRhZG9nTW9uaXRvcn1cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRhZG9nTW9uaXRvclByb3BzIHtcblxuICAvKipcbiAgICogQSBuYW1lIHN1ZmZpeCB0byBiZSBhcHBlbmRlZCB0byB0aGUgbW9uaXRvcnMgbmFtZS5cbiAgICpcbiAgICogVGhlIG1vbml0b3IgbmFtZSBpcyBjb25jYXRlbmF0ZWQgZm9ybSBgPFRlYW1OYW1lPiA8c2VydmljZU5hbWUgcHJvcGVydHk+IDxuYW1lIHByb3BlcnR5PmBcbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHNlcnZpY2UgdG8gd2hpY2ggdGhlIG1vbml0b3IgYmVsb25ncy5cbiAgICpcbiAgICogVXNlZCB0byBnZW5lcmF0ZSB0aGUgbW9uaXRvciBuYW1lIGFzIHdlbGwgYSBhcHBseSB0aGUgYHNlcnZpY2VgIHRhZy5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBtb25pdG9ycyB0eXBlXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmRhdGFkb2docS5jb20vbW9uaXRvcnMvdHlwZXMvXG4gICAqL1xuICByZWFkb25seSBtb25pdG9yVHlwZTogRGF0YWRvZ01vbml0b3JRdWVyeUFsZXJ0VHlwZTtcblxuICAvKipcbiAgICogVGhlIG1vbml0b3JzIHNlYXJjaCBxdWVyeVxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL21vbml0b3JzL2NvbmZpZ3VyYXRpb24vI2RlZmluZS10aGUtc2VhcmNoLXF1ZXJ5XG4gICAqL1xuICByZWFkb25seSBxdWVyeTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbWVzc2FnZSBwYXR0ZXJuIGZvciB0aGUgbW9uaXRvclxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL21vbml0b3JzL2NvbmZpZ3VyYXRpb24vI21lc3NhZ2VcbiAgICovXG4gIHJlYWRvbmx5IG1lc3NhZ2U6IHN0cmluZztcblxuICAvKipcbiAgICogVG8gZXhwbGljaXRseSBkaXNhYmxlIG5vdGlmaWNhdGlvbnMgdXNlIHtAbGluayBOb05vdGlmaWNhdGlvbn0uXG4gICAqXG4gICAqIEBkZWZhdWx0VmFsdWUge0BsaW5rIERlZmF1bHRTbGFja05vdGlmaWNhdGlvbn1cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuZGF0YWRvZ2hxLmNvbS9tb25pdG9ycy9ub3RpZnlcbiAgICovXG4gIHJlYWRvbmx5IG5vdGlmaWNhdGlvbj86IElOb3RpZmljYXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSBhbGVydCBwcmlvcml0eSBvZiB0aGUgbW9uaXRvclxuICAgKlxuICAgKiBAZGVmYXVsdFZhbHVlIDRcbiAgICovXG4gIHJlYWRvbmx5IHByaW9yaXR5PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpYyBvcHRpb25zIHRvIG92ZXJyaWRlIHRoZSBkZWZhdWx0IG1vbml0b3Igb3B0aW9ucy5cbiAgICovXG4gIHJlYWRvbmx5IG9wdGlvbk92ZXJyaWRlcz86IENmbkRhdGFkb2dNb25pdG9yT3B0aW9ucztcblxuICAvKipcbiAgICogVGFncyB0byBiZSBhcHBlbmRlZCB0byB0aGUgbW9uaXRvciBpbiBhZGRpdGlvbiB0byB0aGUgUklPIGRlZmF1bHQgdGFnc1xuICAgKi9cbiAgcmVhZG9ubHkgZXh0cmFUYWdzPzogc3RyaW5nW107XG59XG5cbi8qKlxuICogV2VsbCBrbm93biByZW5vdGlmaWNhdGlvbiBzZXR0aW5ncyBzdXBwb3J0ZWQgYnkgRGF0YWRvZy5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL21vbml0b3JzL25vdGlmeS8jcmVub3RpZnlcbiAqL1xuZXhwb3J0IGVudW0gUmVub3RpZnlTdGF0dXNlcyB7XG4gIEFMRVJUID0gJ2FsZXJ0JyxcbiAgTk9fREFUQSA9ICdubyBkYXRhJyxcbiAgV0FSTiA9ICd3YXJuJ1xufVxuXG4vKipcbiAqIFdlbGwga25vd24gbm90aWZpY2F0aW9uIHByZXNldHMgc3VwcG9ydGVkIGJ5IERhdGFkb2cuXG4gKlxuICogQHNlZSBodHRwczovL2dpdGh1Yi5jb20vRGF0YURvZy9kYXRhZG9nLWNsb3VkZm9ybWF0aW9uLXJlc291cmNlcy9ibG9iL21hc3Rlci9kYXRhZG9nLW1vbml0b3JzLW1vbml0b3ItaGFuZGxlci9kYXRhZG9nLW1vbml0b3JzLW1vbml0b3IuanNvblxuICovXG5leHBvcnQgZW51bSBNb25pdG9yTm90aWZpY2F0aW9uUHJlc2V0IHtcbiAgU0hPV19BTEwgPSAnc2hvd19hbGwnLFxuICBISURFX1FVRVJZID0gJ2hpZGVfcXVlcnknLFxuICBISURFX0hBTkRMRVMgPSAnaGlkZV9oYW5kbGVzJyxcbiAgSElERV9BTEwgPSAnaGlkZV9hbGwnLFxufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIG9uTWlzc2luZ0RhdGEgc3VwcG9ydGVkIGJ5IERhdGFkb2cuXG4gKlxuICogQHNlZSBodHRwczovL2dpdGh1Yi5jb20vRGF0YURvZy9kYXRhZG9nLWNsb3VkZm9ybWF0aW9uLXJlc291cmNlcy9ibG9iL21hc3Rlci9kYXRhZG9nLW1vbml0b3JzLW1vbml0b3ItaGFuZGxlci9kYXRhZG9nLW1vbml0b3JzLW1vbml0b3IuanNvblxuICovXG5leHBvcnQgZW51bSBNb25pdG9yT25NaXNzaW5nRGF0YSB7XG4gIERFRkFVTFQgPSAnZGVmYXVsdCcsXG4gIFNIT1dfTk9fREFUQSA9ICdzaG93X25vX2RhdGEnLFxuICBTSE9XX0FORF9OT1RJRllfTk9fREFUQSA9ICdzaG93X2FuZF9ub3RpZnlfbm9fZGF0YScsXG4gIFJFU09MVkUgPSAncmVzb2x2ZScsXG59XG5cbi8qKlxuICogT3B0aW9ucyB0byBvdmVycmlkZSBmb3IgRGF0YWRvZyBtb25pdG9ycyBpbiBjYXNlIG1vcmUgc3BlY2lmaWMgc2V0dGluZ3MgYXJlIHJlcXVpcmVkLlxuICpcbiAqIHtAbGluayBodHRwczovL2dpdGh1Yi5jb20vRGF0YURvZy9kYXRhZG9nLWNsb3VkZm9ybWF0aW9uLXJlc291cmNlcy9ibG9iL21hc3Rlci9kYXRhZG9nLW1vbml0b3JzLW1vbml0b3ItaGFuZGxlci9kYXRhZG9nLW1vbml0b3JzLW1vbml0b3IuanNvbn1cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5EYXRhZG9nTW9uaXRvck9wdGlvbnMge1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIGEgc2FtcGxlIG9mIHRoZSBsb2dzXG4gICAqL1xuICByZWFkb25seSBlbmFibGVMb2dzU2FtcGxlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdG8gc2VuZCBhIGxpc3Qgb2Ygc2FtcGxlcyB3aGVuIHRoZSBtb25pdG9yIHRyaWdnZXJzLlxuICAgKlxuICAgKiBUaGlzIGlzIG9ubHkgdXNlZCBieSBDSSBUZXN0IGFuZCBQaXBlbGluZSBtb25pdG9ycy5cbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZVNhbXBsZXM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBNZXNzYWdlIHRvIGluY2x1ZGUgd2l0aCBhIHJlLW5vdGlmaWNhdGlvbiB3aGVuIHJlbm90aWZ5X2ludGVydmFsIGlzIHNldFxuICAgKi9cbiAgcmVhZG9ubHkgZXNjYWxhdGlvbk1lc3NhZ2U/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRpbWUgaW4gc2Vjb25kcyB0byBkZWxheSBldmFsdWF0aW9uXG4gICAqXG4gICAqL1xuICByZWFkb25seSBldmFsdWF0aW9uRGVsYXk/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSB0aW1lIHNwYW4gYWZ0ZXIgd2hpY2ggZ3JvdXBzIHdpdGggbWlzc2luZyBkYXRhIGFyZSBkcm9wcGVkIGZyb20gdGhlIG1vbml0b3Igc3RhdGUuXG4gICAqXG4gICAqIFRoZSBtaW5pbXVtIHZhbHVlIGlzIG9uZSBob3VyLCBhbmQgdGhlIG1heGltdW0gdmFsdWUgaXMgNzIgaG91cnMuXG4gICAqIEV4YW1wbGUgdmFsdWVzIGFyZTogXCI2MG1cIiwgXCIxaFwiLCBhbmQgXCIyZFwiLlxuICAgKiBUaGlzIG9wdGlvbiBpcyBvbmx5IGF2YWlsYWJsZSBmb3IgQVBNIFRyYWNlIEFuYWx5dGljcywgQXVkaXQgVHJhaWwsIENJLCBFcnJvciBUcmFja2luZywgRXZlbnQsIExvZ3MsIGFuZCBSVU0gbW9uaXRvcnMuXG4gICAqL1xuICByZWFkb25seSBncm91cFJldGVudGlvbkR1cmF0aW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIHRyaWdnZXJpbmcgdGFncyBpbnRvIG5vdGlmaWNhdGlvbiB0aXRsZSdcbiAgICpcbiAgICogQGRlZmF1bHRWYWx1ZSB0cnVlXG4gICAqL1xuICByZWFkb25seSBpbmNsdWRlVGFncz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IGNoYW5nZXMgdG8gdGhpcyBtb25pdG9yIHNob3VsZCBiZSByZXN0cmljdGVkIHRvIHRoZSBjcmVhdG9yIG9yIGFkbWluc1xuICAgKi9cbiAgcmVhZG9ubHkgbG9ja2VkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogTnVtYmVyIG9mIGxvY2F0aW9ucyBhbGxvd2VkIHRvIGZhaWwgYmVmb3JlIHRyaWdnZXJpbmcgYWxlcnRcbiAgICovXG4gIHJlYWRvbmx5IG1pbkxvY2F0aW9uRmFpbGVkPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaW1lIGluIHNlY29uZHMgdG8gYWxsb3cgYSBob3N0IHRvIHN0YXJ0IHJlcG9ydGluZyBkYXRhIGJlZm9yZSBzdGFydGluZyB0aGUgZXZhbHVhdGlvbiBvZiBtb25pdG9yIHJlc3VsdHNcbiAgICovXG4gIHJlYWRvbmx5IG5ld0hvc3REZWxheT86IG51bWJlcjtcblxuICAvKipcbiAgICogTnVtYmVyIG9mIG1pbnV0ZXMgZGF0YSBzdG9wcGVkIHJlcG9ydGluZyBiZWZvcmUgbm90aWZ5aW5nXG4gICAqL1xuICByZWFkb25seSBub0RhdGFUaW1lZnJhbWU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIG5vdGlmeSB0YWdnZWQgdXNlcnMgd2hlbiBjaGFuZ2VzIGFyZSBtYWRlIHRvIHRoZSBtb25pdG9yXG4gICAqL1xuICByZWFkb25seSBub3RpZnlBdWRpdD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIENvbnRyb2xzIHdoYXQgZ3JhbnVsYXJpdHkgYSBtb25pdG9yIGFsZXJ0cyBvbi5cbiAgICpcbiAgICogT25seSBhdmFpbGFibGUgZm9yIG1vbml0b3JzIHdpdGggZ3JvdXBpbmdzLlxuICAgKiBGb3IgaW5zdGFuY2UsIGEgbW9uaXRvciBncm91cGVkIGJ5IGBjbHVzdGVyYCwgYG5hbWVzcGFjZWAsIGFuZCBgcG9kYCBjYW4gYmUgY29uZmlndXJlZCB0byBvbmx5IG5vdGlmeSBvbiBlYWNoIG5ldyBgY2x1c3RlcmAgdmlvbGF0aW5nIHRoZSBhbGVydCBjb25kaXRpb25zIGJ5IHNldHRpbmcgYG5vdGlmeV9ieWAgdG8gYFtcImNsdXN0ZXJcIl1gLlxuICAgKiBUYWdzIG1lbnRpb25lZCBpbiBgbm90aWZ5X2J5YCBtdXN0IGJlIGEgc3Vic2V0IG9mIHRoZSBncm91cGluZyB0YWdzIGluIHRoZSBxdWVyeS5cbiAgICogRm9yIGV4YW1wbGUsIGEgcXVlcnkgZ3JvdXBlZCBieSBgY2x1c3RlcmAgYW5kIGBuYW1lc3BhY2VgIGNhbm5vdCBub3RpZnkgb24gYHJlZ2lvbmAuXG4gICAqIFNldHRpbmcgYG5vdGlmeV9ieWAgdG8gYFsqXWAgY29uZmlndXJlcyB0aGUgbW9uaXRvciB0byBub3RpZnkgYXMgYSBzaW1wbGUtYWxlcnQuXG4gICAqL1xuICByZWFkb25seSBub3RpZnlCeT86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byBub3RpZnkgd2hlbiBkYXRhIHN0b3BzIHJlcG9ydGluZ1xuICAgKlxuICAgKiBAZGVmYXVsdFZhbHVlIGZhbHNlXG4gICAqL1xuICByZWFkb25seSBub3RpZnlOb0RhdGE/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBDb250cm9scyBob3cgZ3JvdXBzIG9yIG1vbml0b3JzIGFyZSB0cmVhdGVkIGlmIGFuIGV2YWx1YXRpb24gZG9lcyBub3QgcmV0dXJuIGFueSBkYXRhIHBvaW50cy5cbiAgICpcbiAgICogVGhlIGRlZmF1bHQgb3B0aW9uIHJlc3VsdHMgaW4gZGlmZmVyZW50IGJlaGF2aW9yIGRlcGVuZGluZyBvbiB0aGUgbW9uaXRvciBxdWVyeSB0eXBlLlxuICAgKiBGb3IgbW9uaXRvcnMgdXNpbmcgQ291bnQgcXVlcmllcywgYW4gZW1wdHkgbW9uaXRvciBldmFsdWF0aW9uIGlzIHRyZWF0ZWQgYXMgMCBhbmQgaXMgY29tcGFyZWQgdG8gdGhlIHRocmVzaG9sZCBjb25kaXRpb25zLlxuICAgKiBGb3IgbW9uaXRvcnMgdXNpbmcgYW55IHF1ZXJ5IHR5cGUgb3RoZXIgdGhhbiBDb3VudCwgZm9yIGV4YW1wbGUgR2F1Z2UsIE1lYXN1cmUsIG9yIFJhdGUsIHRoZSBtb25pdG9yIHNob3dzIHRoZSBsYXN0IGtub3duIHN0YXR1cy5cbiAgICogVGhpcyBvcHRpb24gaXMgb25seSBhdmFpbGFibGUgZm9yIEFQTSBUcmFjZSBBbmFseXRpY3MsIEF1ZGl0IFRyYWlsLCBDSSwgRXJyb3IgVHJhY2tpbmcsIEV2ZW50LCBMb2dzLCBhbmQgUlVNIG1vbml0b3JzLlxuICAgKi9cbiAgcmVhZG9ubHkgb25NaXNzaW5nRGF0YT86IE1vbml0b3JPbk1pc3NpbmdEYXRhO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgbWludXRlcyBhZnRlciB0aGUgbGFzdCBub3RpZmljYXRpb24gYmVmb3JlIHRoZSBtb25pdG9yIHJlLW5vdGlmaWVzIG9uIHRoZSBjdXJyZW50IHN0YXR1c1xuICAgKi9cbiAgcmVhZG9ubHkgcmVub3RpZnlJbnRlcnZhbD86IG51bWJlcjtcblxuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdGhlIG1vbml0b3IgcmVxdWlyZXMgYSBmdWxsIHdpbmRvdyBvZiBkYXRhIGJlZm9yZSBpdCBpcyBldmFsdWF0ZWRcbiAgICpcbiAgICogQGRlZmF1bHRWYWx1ZSBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVxdWlyZUZ1bGxXaW5kb3c/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIHNjaGVkdWxpbmdcbiAgICovXG4gIHJlYWRvbmx5IHNjaGVkdWxpbmdPcHRpb25zPzogTW9uaXRvclNjaGVkdWxpbmdPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBJRCBvZiB0aGUgY29ycmVzcG9uZGluZyBzeW50aGV0aWNzIGNoZWNrXG4gICAqL1xuICByZWFkb25seSBzeW50aGV0aWNzQ2hlY2tJRD86IG51bWJlcjtcblxuICByZWFkb25seSB0aHJlc2hvbGRzPzogQ2ZuRGF0YWRvZ01vbml0b3JUaHJlc2hvbGRzO1xuXG4gIHJlYWRvbmx5IHRocmVzaG9sZFdpbmRvd3M/OiBDZm5EYXRhZG9nTW9uaXRvclRocmVzaG9sZFdpbmRvd3M7XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBob3VycyBvZiB0aGUgbW9uaXRvciBub3QgcmVwb3J0aW5nIGRhdGEgYmVmb3JlIGl0IGF1dG9tYXRpY2FsbHkgcmVzb2x2ZXNcbiAgICovXG4gIHJlYWRvbmx5IHRpbWVvdXRIPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIHRpbWVzIHJlLW5vdGlmaWNhdGlvbiBtZXNzYWdlcyBzaG91bGQgYmUgc2VudCBvbiB0aGUgY3VycmVudCBzdGF0dXMgYXQgdGhlIHByb3ZpZGVkIHJlLW5vdGlmaWNhdGlvbiBpbnRlcnZhbC5cbiAgICovXG4gIHJlYWRvbmx5IHJlbm90aWZ5T2NjdXJyZW5jZXM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSB0eXBlcyBvZiBtb25pdG9yIHN0YXR1c2VzIGZvciB3aGljaCByZS1ub3RpZmljYXRpb24gbWVzc2FnZXMgYXJlIHNlbnQuXG4gICAqL1xuICByZWFkb25seSByZW5vdGlmeVN0YXR1c2VzPzogUmVub3RpZnlTdGF0dXNlc1tdO1xuXG4gIC8qKlxuICAgKiBIb3cgbG9uZyB0aGUgdGVzdCBzaG91bGQgYmUgaW4gZmFpbHVyZSBiZWZvcmUgYWxlcnRpbmcgKGludGVnZXIsIG51bWJlciBvZiBzZWNvbmRzLCBtYXggNzIwMCkuXG4gICAqL1xuICByZWFkb25seSBtaW5GYWlsdXJlRHVyYXRpb24/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIENvbnRyb2xzIHdoaWNoIGluZm9ybWF0aW9uIHNob3VsZCBiZSBhZGRlZC9sZXR0IG91dCBmcm9tIHRoZSBub3RpZmljYXRpb24uXG4gICAqXG4gICAqIEBkZWZhdWx0VmFsdWUge0BsaW5rIE1vbml0b3JOb3RpZmljYXRpb25QcmVzZXQuU0hPV19BTEx9XG4gICAqL1xuICByZWFkb25seSBtb25pdG9yTm90aWZpY2F0aW9uUHJlc2V0TmFtZT86IE1vbml0b3JOb3RpZmljYXRpb25QcmVzZXQ7XG5cbiAgLyoqXG4gICAqIFRpbWUgKGluIHNlY29uZHMpIHRvIHNraXAgZXZhbHVhdGlvbnMgZm9yIG5ldyBncm91cHMuIEZvciBleGFtcGxlLCB0aGlzIG9wdGlvbiBjYW4gYmUgdXNlZCB0byBza2lwIGV2YWx1YXRpb25zIGZvciBuZXcgaG9zdHMgd2hpbGUgdGhleSBpbml0aWFsaXplLiBNdXN0IGJlIGEgbm9uIG5lZ2F0aXZlIGludGVnZXIuXG4gICAqL1xuICByZWFkb25seSBuZXdHcm91cERlbGF5PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIHJlcXVlc3RzIHRoYXQgY2FuIGJlIHVzZWQgaW4gdGhlIG1vbml0b3IgcXVlcnkuXG4gICAqL1xuICByZWFkb25seSB2YXJpYWJsZXM/OiBvYmplY3RbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDZm5EYXRhZG9nTW9uaXRvclRocmVzaG9sZHMge1xuXG4gIC8qKlxuICAgKiBUaHJlc2hvbGQgdmFsdWUgZm9yIHRyaWdnZXJpbmcgYW4gYWxlcnRcbiAgICovXG4gIHJlYWRvbmx5IGNyaXRpY2FsPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaHJlc2hvbGQgdmFsdWUgZm9yIHJlY292ZXJpbmcgZnJvbSBhbiBhbGVydCBzdGF0ZVxuICAgKi9cbiAgcmVhZG9ubHkgY3JpdGljYWxSZWNvdmVyeT86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhyZXNob2xkIHZhbHVlIGZvciByZWNvdmVyaW5nIGZyb20gYW4gYWxlcnQgc3RhdGVcbiAgICovXG4gIHJlYWRvbmx5IG9rPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaHJlc2hvbGQgdmFsdWUgZm9yIHRyaWdnZXJpbmcgYSB3YXJuaW5nXG4gICAqL1xuICByZWFkb25seSB3YXJuaW5nPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaHJlc2hvbGQgdmFsdWUgZm9yIHJlY292ZXJpbmcgZnJvbSBhIHdhcm5pbmcgc3RhdGVcbiAgICovXG4gIHJlYWRvbmx5IHdhcm5pbmdSZWNvdmVyeT86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDZm5EYXRhZG9nTW9uaXRvclRocmVzaG9sZFdpbmRvd3Mge1xuXG4gIC8qKlxuICAgKiBIb3cgbG9uZyBhIG1ldHJpYyBtdXN0IGJlIGFub21hbG91cyBiZWZvcmUgdHJpZ2dlcmluZyBhbiBhbGVydFxuICAgKi9cbiAgcmVhZG9ubHkgdHJpZ2dlcldpbmRvdz86IHN0cmluZztcblxuICAvKipcbiAgICogSG93IGxvbmcgYW4gYW5vbWFsb3VzIG1ldHJpYyBtdXN0IGJlIG5vcm1hbCBiZWZvcmUgcmVjb3ZlcmluZyBmcm9tIGFuIGFsZXJ0IHN0YXRlXG4gICAqL1xuICByZWFkb25seSByZWNvdmVyeVdpbmRvdz86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIHNjaGVkdWxpbmdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNb25pdG9yU2NoZWR1bGluZ09wdGlvbnMge1xuICByZWFkb25seSBldmFsdWF0aW9uV2luZG93PzogTW9uaXRvclNjaGVkdWxpbmdPcHRpb25zRXZhbHVhdGlvbldpbmRvdztcbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIHRoZSBldmFsdWF0aW9uIHdpbmRvdy5cbiAqXG4gKiBJZiBgaG91cl9zdGFydHNgIGlzIHNldCwgbm8gb3RoZXIgZmllbGRzIG1heSBiZSBzZXQuXG4gKiBPdGhlcndpc2UsIGBkYXlfc3RhcnRzYCBhbmQgYG1vbnRoX3N0YXJ0c2AgbXVzdCBiZSBzZXQgdG9nZXRoZXIuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTW9uaXRvclNjaGVkdWxpbmdPcHRpb25zRXZhbHVhdGlvbldpbmRvdyB7XG5cbiAgLyoqXG4gICAqIFRoZSB0aW1lIG9mIHRoZSBkYXkgYXQgd2hpY2ggYSBvbmUgZGF5IGN1bXVsYXRpdmUgZXZhbHVhdGlvbiB3aW5kb3cgc3RhcnRzLlxuICAgKlxuICAgKiBNdXN0IGJlIGRlZmluZWQgaW4gVVRDIHRpbWUgaW4gYEhIOm1tYCBmb3JtYXQuXG4gICAqL1xuICByZWFkb25seSBkYXlTdGFydHM/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBkYXkgb2YgdGhlIG1vbnRoIGF0IHdoaWNoIGEgb25lIG1vbnRoIGN1bXVsYXRpdmUgZXZhbHVhdGlvbiB3aW5kb3cgc3RhcnRzXG4gICAqL1xuICByZWFkb25seSBtb250aFN0YXJ0cz86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIG1pbnV0ZSBvZiB0aGUgaG91ciBhdCB3aGljaCBhIG9uZSBob3VyIGN1bXVsYXRpdmUgZXZhbHVhdGlvbiB3aW5kb3cgc3RhcnRzXG4gICAqL1xuICByZWFkb25seSBob3VyU3RhcnRzPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIFdyYXBwZXIgYXJvdW5kIERhdGFkb2cncyBDbG91ZEZvcm1hdGlvbiBgRGF0YWRvZzo6TW9uaXRvcnM6Ok1vbml0b3JgIHdpdGggc29tZSBSSU8gZGVmYXVsdHMgYXBwbGllZC5cbiAqXG4gKiBUbyB1c2UgdGhpcyB0aGUgRGF0YWRvZyByZXNvdXJjZXMgaGF2ZSB0byBiZSB7QGxpbmsgaHR0cHM6Ly9kb2NzLmRhdGFkb2docS5jb20vaW50ZWdyYXRpb25zL2d1aWRlL2FtYXpvbl9jbG91ZGZvcm1hdGlvbi9cbiAqIHxlbmFibGVkIGluIHRoZSBDbG91ZEZvcm1hdGlvbiByZWdpc3RyeX0gb2YgdGhlIGNvcnJlc3BvbmRpbmcgQVdTIGFjY291bnQuIFVzdWFsbHkgdGhpcyBpcyBkb25lXG4gKiBhdXRvbWF0aWNhbGx5IGJ5IHRoZSBEYXRhZG9nIEludGVncmF0aW9ucyAoYWNjb3VudCBtb2R1bGUgQU5EIFNlcnZpY2VDYXRhbG9nKSBwcm92aWRlZCBieSBDTEFJRC5cbiAqL1xuZXhwb3J0IGNsYXNzIERhdGFkb2dNb25pdG9yIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgLyoqXG4gICAqIERlZmF1bHQgcHJpb3JpdHkgb2YgYSBtb25pdG9yXG4gICAqL1xuICBzdGF0aWMgcmVhZG9ubHkgREVGQVVMVF9QUklPUklUWSA9IDQ7XG5cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICByZWFkb25seSBwcmlvcml0eTogbnVtYmVyO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbW9uaXRvcjogY2RrLkNmblJlc291cmNlO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBEYXRhZG9nTW9uaXRvclByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB0aGlzLnByaW9yaXR5ID0gcHJvcHMucHJpb3JpdHkgPz8gRGF0YWRvZ01vbml0b3IuREVGQVVMVF9QUklPUklUWTtcbiAgICB0aGlzLm5hbWUgPSBwcm9wcy5uYW1lO1xuXG4gICAgY29uc3QgdGVhbU5hbWUgPSBSaW9MYW5kaW5nWm9uZS5nZXRUZWFtTmFtZVBhcmFtZXRlcih0aGlzKTtcbiAgICBjb25zdCB0ZWFtSWRlbnRpZmllciA9IFJpb0xhbmRpbmdab25lLmdldFRlYW1JZGVudGlmaWVyUGFyYW1ldGVyKHRoaXMpO1xuICAgIGNvbnN0IGFjY291bnROYW1lID0gUmlvTGFuZGluZ1pvbmUuZ2V0QWNjb3VudE5hbWVQYXJhbWV0ZXIodGhpcyk7XG5cbiAgICBjb25zdCBub3RpZmljYXRpb24gPSBwcm9wcy5ub3RpZmljYXRpb24gPyBwcm9wcy5ub3RpZmljYXRpb24gOiBuZXcgRGVmYXVsdFNsYWNrTm90aWZpY2F0aW9uKCk7XG5cbiAgICBjb25zdCBpc0F3c01ldHJpa01vbml0b3IgPSAocHJvcHMubW9uaXRvclR5cGUgPT09IERhdGFkb2dNb25pdG9yUXVlcnlBbGVydFR5cGUuTUVUUklDX0FMRVJUIHx8IHByb3BzLm1vbml0b3JUeXBlID09PSBEYXRhZG9nTW9uaXRvclF1ZXJ5QWxlcnRUeXBlLlFVRVJZX0FMRVJUKSAmJiBwcm9wcy5xdWVyeS5pbmRleE9mKCdhd3MuJykgPiAtMTtcbiAgICBjb25zdCBvcHRpb25PdmVycmlkZXMgPSB7XG4gICAgICAuLi5wcm9wcy5vcHRpb25PdmVycmlkZXMsXG4gICAgfTtcblxuICAgIGlmIChpc0F3c01ldHJpa01vbml0b3IgJiYgb3B0aW9uT3ZlcnJpZGVzLmV2YWx1YXRpb25EZWxheSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBvcHRpb25PdmVycmlkZXMuZXZhbHVhdGlvbkRlbGF5ID0gOTAwO1xuICAgICAgY29uc3QgYW5ub3RhdGlvbnMgPSBjZGsuQW5ub3RhdGlvbnMub2YoY2RrLlN0YWNrLm9mKHRoaXMpKTtcbiAgICAgIGFubm90YXRpb25zLmFkZFdhcm5pbmdWMihcbiAgICAgICAgYEByaW8tY2xvdWQvY2RrLXYyLWNvbnN0cnVjdHMvZGF0YWRvZ3YyL0RhdGFkb2dNb25pdG9yLyR7aWR9L0Nsb3VkTWV0cmljRXZhbHVhdGlvbkRlbGF5YCxcbiAgICAgICAgJ1xcbiDinYwgWW91ciBtb25pdG9yIGlzIGFsZXJ0aW5nIG9uIENsb3VkIE1ldHJpY3MgYnV0IHlvdSBoYXZlblxcJ3Qgc2V0IGFuIFxcJ29wdGlvbk92ZXJyaWRlcy5ldmFsdWF0aW9uRGVsYXlcXCcuXFxuIOKchSBJdFxcJ3MgYXV0b21hdGljYWxseSBzZXQgdG8gMTUgbWludXRlcywgYnV0IHBsZWFzZSBwcm92aWRlIGEgc3VpdGFibGUgdmFsdWUgb24geW91ciBvd24uXFxuJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL0RhdGFEb2cvZGF0YWRvZy1jbG91ZGZvcm1hdGlvbi1yZXNvdXJjZXMvYmxvYi9tYXN0ZXIvZGF0YWRvZy1tb25pdG9ycy1tb25pdG9yLWhhbmRsZXIvZGF0YWRvZy1tb25pdG9ycy1tb25pdG9yLmpzb25cbiAgICB0aGlzLm1vbml0b3IgPSBuZXcgY2RrLkNmblJlc291cmNlKHRoaXMsICdNb25pdG9yJywge1xuICAgICAgdHlwZTogJ0RhdGFkb2c6Ok1vbml0b3JzOjpNb25pdG9yJyxcbiAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgVHlwZTogcHJvcHMubW9uaXRvclR5cGUsXG4gICAgICAgIFF1ZXJ5OiBwcm9wcy5xdWVyeSxcbiAgICAgICAgTmFtZTogYCR7dGVhbU5hbWUuc3RyaW5nVmFsdWV9ICR7cHJvcHMuc2VydmljZU5hbWV9ICR7cHJvcHMubmFtZX1gLFxuICAgICAgICBNZXNzYWdlOiB0aGlzLmNvbmNhdGVuYXRlTWVzc2FnZSh7IG1lc3NhZ2U6IHByb3BzLm1lc3NhZ2UsIG5vdGlmaWNhdGlvbiB9KSxcbiAgICAgICAgUHJpb3JpdHk6IHRoaXMucHJpb3JpdHksXG4gICAgICAgIE9wdGlvbnM6IG1hcE1vbml0b3JPcHRpb25zKG9wdGlvbk92ZXJyaWRlcyksXG4gICAgICAgIFRhZ3M6IFtcbiAgICAgICAgICAuLi4ocHJvcHMuZXh0cmFUYWdzID8/IFtdKSxcbiAgICAgICAgICBgYWNjb3VudF9pZDoke2Nkay5TdGFjay5vZih0aGlzKS5hY2NvdW50fWAsXG4gICAgICAgICAgYGFjY291bnRfbmFtZToke2FjY291bnROYW1lLnN0cmluZ1ZhbHVlfWAsXG4gICAgICAgICAgYHNlcnZpY2U6JHtwcm9wcy5zZXJ2aWNlTmFtZX1gLFxuICAgICAgICAgIGB0ZWFtOiR7dGVhbU5hbWUuc3RyaW5nVmFsdWV9YCxcbiAgICAgICAgICBgdGVhbV9pZGVudGlmaWVyOiR7dGVhbUlkZW50aWZpZXIuc3RyaW5nVmFsdWV9YCxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogT2J0YWluIHRoZSBtb25pdG9yX2lkIGFzIHVzZWQgaW4gRGF0YWRvZ1xuICAgKiBTZWUgaHR0cHM6Ly9kb2NzLmRhdGFkb2docS5jb20vYXBpL2xhdGVzdC9tb25pdG9ycy8jZ2V0LWEtbW9uaXRvcnMtZGV0YWlsc1xuICAgKlxuICAgKiBUaGlzIGFsbG93cyByZWZlcmVuY2luZyB0aGlzIG1vbml0b3IgaW4gb3RoZXIgY29uc3RydWN0cy9yZXNvdXJjZXMgKGUuZy4gU0xPcylcbiAgICovXG4gIGdldCBtb25pdG9ySWQoKSB7XG4gICAgLy8gcmV0dXJuIFJlZiBhcyBpdCByZXR1cm5zIHRoZSBJZCBhcyBzdHJpbmcgaW5zdGVhZCBvZiB0aGUgR2V0QXR0KElkKSB3aWhjaCByZXR1cm5zIHRoZSBpZCBhcyBudW1iZXJcbiAgICAvLyBodHRwczovL215LXJpby5zbGFjay5jb20vYXJjaGl2ZXMvQzAzNFdBRzNRVUEvcDE3MDg0MTk4NzEzOTg5NDlcbiAgICByZXR1cm4gY2RrLkZuLnJlZih0aGlzLm1vbml0b3IubG9naWNhbElkKTtcbiAgfVxuXG4gIHByaXZhdGUgY29uY2F0ZW5hdGVNZXNzYWdlKHByb3BzOiB7bWVzc2FnZTogc3RyaW5nOyBub3RpZmljYXRpb246IElOb3RpZmljYXRpb259KSB7XG4gICAgcmV0dXJuIGAke3Byb3BzLm1lc3NhZ2V9XFxuXFxuJHtwcm9wcy5ub3RpZmljYXRpb24uZ2VuZXJhdGVNZXNzYWdlQW5ub3RhdGlvbih0aGlzKX1gO1xuICB9XG5cbn1cblxuZnVuY3Rpb24gbWFwTW9uaXRvck9wdGlvbnMoc291cmNlOiBDZm5EYXRhZG9nTW9uaXRvck9wdGlvbnMgfCB1bmRlZmluZWQpIHtcbiAgcmV0dXJuIHtcbiAgICBFbmFibGVMb2dzU2FtcGxlOiBzb3VyY2U/LmVuYWJsZUxvZ3NTYW1wbGUsXG4gICAgRW5hYmxlU2FtcGxlczogc291cmNlPy5lbmFibGVTYW1wbGVzLFxuICAgIEVzY2FsYXRpb25NZXNzYWdlOiBzb3VyY2U/LmVzY2FsYXRpb25NZXNzYWdlLFxuICAgIEV2YWx1YXRpb25EZWxheTogc291cmNlPy5ldmFsdWF0aW9uRGVsYXksXG4gICAgR3JvdXBSZXRlbnRpb25EdXJhdGlvbjogc291cmNlPy5ncm91cFJldGVudGlvbkR1cmF0aW9uLFxuICAgIEluY2x1ZGVUYWdzOiBzb3VyY2U/LmluY2x1ZGVUYWdzID8/IHRydWUsXG4gICAgTG9ja2VkOiBzb3VyY2U/LmxvY2tlZCxcbiAgICBNaW5Mb2NhdGlvbkZhaWxlZDogc291cmNlPy5taW5Mb2NhdGlvbkZhaWxlZCxcbiAgICBOZXdIb3N0RGVsYXk6IHNvdXJjZT8ubmV3SG9zdERlbGF5LFxuICAgIE5vRGF0YVRpbWVmcmFtZTogc291cmNlPy5ub0RhdGFUaW1lZnJhbWUsXG4gICAgTm90aWZ5QXVkaXQ6IHNvdXJjZT8ubm90aWZ5QXVkaXQsXG4gICAgTm90aWZ5Qnk6IHNvdXJjZT8ubm90aWZ5QnksXG4gICAgTm90aWZ5Tm9EYXRhOiBzb3VyY2U/Lm5vdGlmeU5vRGF0YSA/PyBmYWxzZSxcbiAgICBSZW5vdGlmeUludGVydmFsOiBzb3VyY2U/LnJlbm90aWZ5SW50ZXJ2YWwsXG4gICAgUmVxdWlyZUZ1bGxXaW5kb3c6IHNvdXJjZT8ucmVxdWlyZUZ1bGxXaW5kb3cgPz8gZmFsc2UsXG4gICAgU2NoZWR1bGluZ09wdGlvbnM6IG1hcFNjaGVkdWxpbmdPcHRpb25zUHJvcGVydGllcyhzb3VyY2U/LnNjaGVkdWxpbmdPcHRpb25zKSxcbiAgICBTeW50aGV0aWNzQ2hlY2tJRDogc291cmNlPy5zeW50aGV0aWNzQ2hlY2tJRCxcbiAgICBUaHJlc2hvbGRzOiBtYXBUaHJlc2hvbGRzUHJvcGVydGllcyhzb3VyY2U/LnRocmVzaG9sZHMpLFxuICAgIFRocmVzaG9sZFdpbmRvd3M6IG1hcFRocmVzaG9sZFdpbmRvd3NQcm9wZXJ0aWVzKHNvdXJjZT8udGhyZXNob2xkV2luZG93cyksXG4gICAgTW9uaXRvck5vdGlmaWNhdGlvblByZXNldE5hbWU6IHNvdXJjZT8ubW9uaXRvck5vdGlmaWNhdGlvblByZXNldE5hbWUsXG4gICAgVGltZW91dEg6IHNvdXJjZT8udGltZW91dEgsXG4gICAgUmVub3RpZnlPY2N1cnJlbmNlczogc291cmNlPy5yZW5vdGlmeU9jY3VycmVuY2VzLFxuICAgIFJlbm90aWZ5U3RhdHVzZXM6IHNvdXJjZT8ucmVub3RpZnlTdGF0dXNlcyxcbiAgICBNaW5GYWlsdXJlRHVyYXRpb246IHNvdXJjZT8ubWluRmFpbHVyZUR1cmF0aW9uLFxuICAgIE5ld0dyb3VwRGVsYXk6IHNvdXJjZT8ubmV3R3JvdXBEZWxheSxcbiAgICBWYXJpYWJsZXM6IHNvdXJjZT8udmFyaWFibGVzLFxuICAgIE9uTWlzc2luZ0RhdGE6IHNvdXJjZT8ub25NaXNzaW5nRGF0YSxcbiAgfTtcbn07XG5cbmZ1bmN0aW9uIG1hcFNjaGVkdWxpbmdPcHRpb25zUHJvcGVydGllcyhzb3VyY2U6IE1vbml0b3JTY2hlZHVsaW5nT3B0aW9ucyB8IHVuZGVmaW5lZCkge1xuICByZXR1cm4gc291cmNlID8ge1xuICAgIEV2YWx1YXRpb25XaW5kb3c6IG1hcFNjaGVkdWxpbmdPcHRpb25zRXZhbHVhdGlvbldpbmRvd1Byb3BlcnRpZXMoc291cmNlLmV2YWx1YXRpb25XaW5kb3cpLFxuICB9IDogdW5kZWZpbmVkO1xufVxuXG5mdW5jdGlvbiBtYXBTY2hlZHVsaW5nT3B0aW9uc0V2YWx1YXRpb25XaW5kb3dQcm9wZXJ0aWVzKHNvdXJjZTogTW9uaXRvclNjaGVkdWxpbmdPcHRpb25zRXZhbHVhdGlvbldpbmRvdyB8IHVuZGVmaW5lZCkge1xuICByZXR1cm4gc291cmNlID8ge1xuICAgIERheVN0YXJ0czogc291cmNlLmRheVN0YXJ0cyxcbiAgICBNb250aFN0YXJ0czogc291cmNlLm1vbnRoU3RhcnRzLFxuICAgIEhvdXJTdGFydHM6IHNvdXJjZS5ob3VyU3RhcnRzLFxuICB9IDogdW5kZWZpbmVkO1xufVxuXG5mdW5jdGlvbiBtYXBUaHJlc2hvbGRzUHJvcGVydGllcyhzb3VyY2U6IENmbkRhdGFkb2dNb25pdG9yVGhyZXNob2xkcyB8IHVuZGVmaW5lZCkge1xuICByZXR1cm4gc291cmNlID8ge1xuICAgIENyaXRpY2FsOiBzb3VyY2UuY3JpdGljYWwsXG4gICAgQ3JpdGljYWxSZWNvdmVyeTogc291cmNlLmNyaXRpY2FsUmVjb3ZlcnksXG4gICAgT0s6IHNvdXJjZS5vayxcbiAgICBXYXJuaW5nOiBzb3VyY2Uud2FybmluZyxcbiAgICBXYXJuaW5nUmVjb3Zlcnk6IHNvdXJjZS53YXJuaW5nUmVjb3ZlcnksXG4gIH0gOiB1bmRlZmluZWQ7XG59XG5cbmZ1bmN0aW9uIG1hcFRocmVzaG9sZFdpbmRvd3NQcm9wZXJ0aWVzKHNvdXJjZTogQ2ZuRGF0YWRvZ01vbml0b3JUaHJlc2hvbGRXaW5kb3dzIHwgdW5kZWZpbmVkKSB7XG4gIHJldHVybiBzb3VyY2UgPyB7XG4gICAgVHJpZ2dlcldpbmRvdzogc291cmNlLnRyaWdnZXJXaW5kb3csXG4gICAgUmVjb3ZlcnlXaW5kb3c6IHNvdXJjZS5yZWNvdmVyeVdpbmRvdyxcbiAgfSA6IHVuZGVmaW5lZDtcbn1cbiJdfQ==
|
|
@@ -102,4 +102,4 @@ class NotificationAggregator {
|
|
|
102
102
|
exports.NotificationAggregator = NotificationAggregator;
|
|
103
103
|
_f = JSII_RTTI_SYMBOL_1;
|
|
104
104
|
NotificationAggregator[_f] = { fqn: "@rio-cloud/cdk-v2-constructs.datadogv2.NotificationAggregator", version: "0.0.0" };
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZy1ub3RpZmljYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YWRvZ3YyL2RhdGFkb2ctbm90aWZpY2F0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsMERBQXFEO0FBc0NyRDs7OztHQUlHO0FBQ0gsTUFBYSxjQUFjO0lBTXpCLHlCQUF5QixDQUFDLFFBQXdCO1FBQ2hELE9BQU8sY0FBYyxDQUFDLGFBQWEsQ0FBQztJQUN0QyxDQUFDOztBQVJILHdDQVNDOzs7QUFSQzs7R0FFRztBQUNhLDRCQUFhLEdBQUcsRUFBRSxDQUFDO0FBT3JDLE1BQU0sb0NBQW9DLEdBQUcsQ0FBQyxZQUFvQixFQUFFLEVBQUUsQ0FBQyxVQUFVLFlBQVksRUFBRSxDQUFDO0FBWWhHOztHQUVHO0FBQ0gsTUFBYSxpQkFBaUI7SUFFNUIsWUFBNkIsS0FBNkI7UUFBN0IsVUFBSyxHQUFMLEtBQUssQ0FBd0I7SUFBSSxDQUFDO0lBRS9ELHlCQUF5QixDQUFDLFFBQXdCO1FBQ2hELE9BQU8sb0NBQW9DLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsRSxDQUFDOztBQU5ILDhDQU9DOzs7QUFFRDs7Ozs7R0FLRztBQUNILE1BQWEsd0JBQXdCO0lBRW5DLHlCQUF5QixDQUFDLE9BQXVCO1FBQy9DLE1BQU0sWUFBWSxHQUFHLGlDQUFjLENBQUMsaUNBQWlDLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0UsT0FBTyxvQ0FBb0MsQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDeEUsQ0FBQzs7QUFMSCw0REFPQzs7O0FBRUQ7Ozs7R0FJRztBQUNILE1BQWEscUJBQXFCO0lBRWhDLHlCQUF5QixDQUFDLE9BQXVCO1FBQy9DLElBQUksT0FBTyxDQUFDLFFBQVEsR0FBRyxxQkFBcUIsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQzlELE9BQU8sY0FBYyxDQUFDLGFBQWEsQ0FBQztRQUN0QyxDQUFDO1FBQ0QsT0FBTyw0QkFBNEIsQ0FBQztJQUN0QyxDQUFDOztBQVBILHNEQVFDOzs7QUFQaUIsc0NBQWdCLEdBQUcsQ0FBQyxDQUFDO0FBU3ZDOzs7Ozs7OztHQVFHO0FBQ0gsTUFBYSx1QkFBdUI7SUFDbEMseUJBQXlCLENBQUMsT0FBdUI7UUFDL0MsTUFBTSxjQUFjLEdBQUcsaUNBQWMsQ0FBQywwQkFBMEIsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMxRSxPQUFPLFNBQVMsY0FBYyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQy9DLENBQUM7O0FBSkgsMERBS0M7OztBQUVEOztHQUVHO0FBQ0gsTUFBYSxzQkFBc0I7SUFFakMsWUFBNkIsYUFBOEI7UUFBOUIsa0JBQWEsR0FBYixhQUFhLENBQWlCO0lBQUksQ0FBQztJQUVoRSx5QkFBeUIsQ0FBQyxPQUF1QjtRQUMvQyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLHlCQUF5QixDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQ3ZFLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxjQUFjLENBQUMsYUFBYSxDQUFDO2FBQ2pELElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQixDQUFDOztBQVJILHdEQVVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0YWRvZ01vbml0b3IgfSBmcm9tICcuL2RhdGFkb2ctbW9uaXRvcic7XG5pbXBvcnQgeyBSaW9MYW5kaW5nWm9uZSB9IGZyb20gJy4uL3Jpby1sYW5kaW5nLXpvbmUnO1xuXG4vKipcbiAqIEludGVyZmFjZSB0byBwbHVnIGluIHNwZWNpZmljIG5vdGlmaWNhdGlvbiB0eXBlcyBmb3IgbW9uaXRvcnMgaW4gRGF0YWRvZy5cbiAqIE9uZSBpbnN0YW5jZSBjb3VsZCBiZSByZXVzZWQgb3ZlciBtdWx0aXBsZSBtb25pdG9ycywgZS5nLiB3aGVuIHVzaW5nIHRoZSB7QGxpbmsgW1dhdGNoZnVsIHYyXSguLi93YXRjaGZ1bHYyL3dhdGNoZnVsLnRzKX0gY29uc3RydWN0LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElOb3RpZmljYXRpb24ge1xuICAvKipcbiAgICogRXhhbXBsZSAtIHJvdXRlIGFsbCBwaXBlbGluZSBtb25pdG9ycyB0byBhIHNwZWNpZmljIGNoYW5uZWw6XG4gICAqIGBgYHRzXG4gICAqICBnZW5lcmF0ZU1lc3NhZ2VBbm5vdGF0aW9uKG1vbml0b3I6IERhdGFkb2dNb25pdG9yKTogc3RyaW5nIHtcbiAgICogICAgaWYgKG1vbml0b3IubmFtZS5pbmRleE9mKCdwaXBlbGluZScpID4gLTEpIHtcbiAgICogICAgICByZXR1cm4gJ0BzbGFjay10ZWFtLXBpcGVsaW5lLWFsZXJ0LWNoYW5uZWwnO1xuICAgKiAgICB9IGVsc2Uge1xuICAgKiAgICAgIHJldHVybiAnQHNsYWNrLXRlYW0tc2VyaW91cy1pc3N1ZS1hbGVydC1jaGFubmVsJztcbiAgICogICAgfVxuICAgKiAgfVxuICAgKiBgYGBcbiAgICpcbiAgICogRXhhbXBsZSAtIHJvdXRlIGlzc3VlcyBiYXNlZCBvbiB0aGVpciBwcmlvcml0eTpcbiAgICogYGBgdHNcbiAgICogIGdlbmVyYXRlTWVzc2FnZUFubm90YXRpb24obW9uaXRvcjogRGF0YWRvZ01vbml0b3IpOiBzdHJpbmcge1xuICAgKiAgICBpZiAobW9uaXRvci5wcmlvcml0eSA8PSAyKSB7XG4gICAqICAgICAgcmV0dXJuICdAPHBhZ2VyLWludGVncmF0aW9uPi10ZWFtLXNjaGVkdWxlJztcbiAgICogICAgfSBlbHNlIGlmIChtb25pdG9yLnByaW9yaXR5ID09IDMpIHtcbiAgICogICAgICByZXR1cm4gJ0BzbGFjay10ZWFtLWFsZXJ0LWNoYW5uZWwnO1xuICAgKiAgICB9IGVsc2Uge1xuICAgKiAgICAgIHJldHVybiBOb05vdGlmaWNhdGlvbi5ET19OT1RfTk9USUZZO1xuICAgKiAgICB9XG4gICAqICB9XG4gICAqIGBgYFxuICAgKlxuICAgKiBAcGFyYW0gbW9uaXRvciAtIHRoZSBtb25pdG9yIG9uIHdoaWNoIHRoZSBub3RpZmljYXRpb24gc2hvdWxkIGJlIGFwcGxpZWQuXG4gICAqIEByZXR1cm5zIHRoZSBpbnRlZ3JhdGlvbiBoYW5kbGUgdG8gcm91dGUgYWxlcnQgbm90aWZpY2F0aW9ucyB0byBzcGVjaWZpYyBpbnRlZ3JhdGlvbnMgaW4gRGF0YWRvZy5cbiAgKi9cbiAgZ2VuZXJhdGVNZXNzYWdlQW5ub3RhdGlvbihtb25pdG9yOiBEYXRhZG9nTW9uaXRvcik6IHN0cmluZztcbn1cblxuLyoqXG4gKiB7QGxpbmsgSU5vdGlmaWNhdGlvbn0gaW1wbGVtZW50YXRpb24sIHRoYXQgZXhwbGljaXRseSBzdXBwcmVzc2VzIG5vdGlmaWNhdGlvbnMuIFBlciBkZWZhdWx0IGV2ZXJ5IG1vbml0b3JcbiAqIGhhcyBhIHNsYWNrIG5vdGlmaWNhdGlvbi4gSW4gb3JkZXIgdG8gY3JlYXRlIGEge0BsaW5rIERhdGFkb2dNb25pdG9yfSBqdXN0IGZvciBhIHtAbGluayBbRGF0YWRvZ0Rhc2hib2FyZF0oLi9kYXRhZG9nLWRhc2hib2FyZC50cyl9XG4gKiB3aXRob3V0IGZ1cnRoZXIgbm90aWZpY2F0aW9uLlxuICovXG5leHBvcnQgY2xhc3MgTm9Ob3RpZmljYXRpb24gaW1wbGVtZW50cyBJTm90aWZpY2F0aW9uIHtcbiAgLyoqXG4gICAqIFRoaXMgcGhyYXNlIGlzIGV4cGxpY2l0bHkgZmlsdGVyZWQgb3V0IGR1cmluZyBtZXNzYWdlIGdlbmVyYXRpb24uXG4gICAqL1xuICBzdGF0aWMgcmVhZG9ubHkgRE9fTk9UX05PVElGWSA9ICcnO1xuXG4gIGdlbmVyYXRlTWVzc2FnZUFubm90YXRpb24oX21vbml0b3I6IERhdGFkb2dNb25pdG9yKTogc3RyaW5nIHtcbiAgICByZXR1cm4gTm9Ob3RpZmljYXRpb24uRE9fTk9UX05PVElGWTtcbiAgfVxufVxuXG5jb25zdCBnZXRNZXNzYWdlQW5ub3RhdGlvbkZyb21TbGFja0NoYW5uZWwgPSAoc2xhY2tDaGFubmVsOiBzdHJpbmcpID0+IGBAc2xhY2stJHtzbGFja0NoYW5uZWx9YDtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIG9mIHtAbGluayBTbGFja05vdGlmaWNhdGlvbn1cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTbGFja05vdGlmaWNhdGlvblByb3BzIHtcbiAgLyoqXG4gICAqIHRoZSBzbGFjayBjaGFubmVsIHRvIHJvdXRlIHRoZSBhbGVydCB0by5cbiAgICovXG4gIHJlYWRvbmx5IGNoYW5uZWw6IHN0cmluZztcbn1cblxuLyoqXG4gKiBBbiB7QGxpbmsgSU5vdGlmaWNhdGlvbn0sIHRoYXQgZm9yd2FyZHMgYWxlcnRzIHRvIHRoZSBTbGFjayBjaGFubmVsIHBhc3NlZCBpbiBwcm9wcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNsYWNrTm90aWZpY2F0aW9uIGltcGxlbWVudHMgSU5vdGlmaWNhdGlvbiB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBwcm9wczogU2xhY2tOb3RpZmljYXRpb25Qcm9wcykgeyB9XG5cbiAgZ2VuZXJhdGVNZXNzYWdlQW5ub3RhdGlvbihfbW9uaXRvcjogRGF0YWRvZ01vbml0b3IpOiBzdHJpbmcge1xuICAgIHJldHVybiBnZXRNZXNzYWdlQW5ub3RhdGlvbkZyb21TbGFja0NoYW5uZWwodGhpcy5wcm9wcy5jaGFubmVsKTtcbiAgfVxufVxuXG4vKipcbiAqIEFuIHtAbGluayBJTm90aWZpY2F0aW9ufSwgdGhhdCBmb3J3YXJkcyBhbGVydHMgdG8gdGhlIFNsYWNrIGNoYW5uZWwsIHRoYXQgd2FzIGVudGVyZWRcbiAqIGFzIGFsZXJ0IGNoYW5uZWwgZHVyaW5nIGFjY291bnQgY3JlYXRpb24gcHJvY2Vzcy4gVGhlIGFjdHVhbCBjaGFubmVsIHZhbHVlIGlzIHRha2VuIGZyb21cbiAqIHNzbSBwYXJhbWV0ZXIgYC9jb25maWcvdGVhbS9zbGFjay1hbGVydC1jaGFubmVsYC5cbiAqIFRoaXMgbm90aWZpY2F0aW9uIGNvdWxkIGJyZWFrIHRoZSBkZXBsb3ltZW50LCBpZiB0aGUgc3NtIHBhcmFtZXRlciBpcyBub3Qgc2V0LlxuICovXG5leHBvcnQgY2xhc3MgRGVmYXVsdFNsYWNrTm90aWZpY2F0aW9uIGltcGxlbWVudHMgSU5vdGlmaWNhdGlvbiB7XG5cbiAgZ2VuZXJhdGVNZXNzYWdlQW5ub3RhdGlvbihtb25pdG9yOiBEYXRhZG9nTW9uaXRvcik6IHN0cmluZyB7XG4gICAgY29uc3Qgc2xhY2tDaGFubmVsID0gUmlvTGFuZGluZ1pvbmUuZ2V0VGVhbUFsZXJ0U2xhY2tDaGFubmVsUGFyYW1ldGVyKG1vbml0b3IpO1xuICAgIHJldHVybiBnZXRNZXNzYWdlQW5ub3RhdGlvbkZyb21TbGFja0NoYW5uZWwoc2xhY2tDaGFubmVsLnN0cmluZ1ZhbHVlKTtcbiAgfVxuXG59XG5cbi8qKlxuICogQW4ge0BsaW5rIElOb3RpZmljYXRpb259LCB0aGF0IGZvcndhcmRzIGFsZXJ0cyB0byB0aGUgUklPIHBhZ2luZyByb3V0ZXJcbiAqIHRvIGVuZ2FnZSB0aGUgY29ycmVzcG9uZGluZyB0ZWFtLlxuICogQWxlcnRzIHdpdGggUHJpb3JpdHkgPiB7QGxpbmsgUmlvUGFnaW5nTm90aWZpY2F0aW9uLk1JTklNVU1fUFJJT1JJVFl9IHdpbGwgbm90IGJlIHRha2VuIGludG8gYWNjb3VudC5cbiAqL1xuZXhwb3J0IGNsYXNzIFJpb1BhZ2luZ05vdGlmaWNhdGlvbiBpbXBsZW1lbnRzIElOb3RpZmljYXRpb24ge1xuICBzdGF0aWMgcmVhZG9ubHkgTUlOSU1VTV9QUklPUklUWSA9IDI7XG4gIGdlbmVyYXRlTWVzc2FnZUFubm90YXRpb24obW9uaXRvcjogRGF0YWRvZ01vbml0b3IpOiBzdHJpbmcge1xuICAgIGlmIChtb25pdG9yLnByaW9yaXR5ID4gUmlvUGFnaW5nTm90aWZpY2F0aW9uLk1JTklNVU1fUFJJT1JJVFkpIHtcbiAgICAgIHJldHVybiBOb05vdGlmaWNhdGlvbi5ET19OT1RfTk9USUZZO1xuICAgIH1cbiAgICByZXR1cm4gJ0Bhd3NldmVudGJyaWRnZS1yaW8tcGFnaW5nJztcbiAgfVxufVxuXG4vKipcbiAqIEFuIHtAbGluayBJTm90aWZpY2F0aW9ufSwgdGhhdCB1c2VzIHRoZSB0ZWFtX2lkZW50aWZpZXIgdG8gY3JlYXRlXG4gKiBhIGNhc2UgaW4gYSB0ZWFtIHByb2plY3QgaW4gRGF0YWRvZ3MgQ2FzZU1hbmFnZW1lbnQuXG4gKiBJdCBjYW4gYmUgdXNlZCB0byBub3QgbG9zZSBlLmcuIGFuIGxvZyBhbGVydCwgdGhhdCBpcyByZWNvdmVyaW5nXG4gKiBhdXRvbWF0aWNhbGx5IGFmdGVyIGEgd2hpbGUuXG4gKlxuICogVG8gdXNlIGl0LCBzZXR1cCBhIHByb2plY3QgaW4gRGF0YWRvZyBjYXNlIG1hbmFnZW1lbnQgYW5kIGNvbmZpZ3VyZVxuICogdGhlIGludGVncmF0aW9uIGhhbmRsZSBhY2NvcmRpbmcgdG8gdGhlIG5hbWluZyBjb252ZW50aW9uLlxuICovXG5leHBvcnQgY2xhc3MgRGF0YWRvZ0Nhc2VOb3RpZmljYXRpb24gaW1wbGVtZW50cyBJTm90aWZpY2F0aW9uIHtcbiAgZ2VuZXJhdGVNZXNzYWdlQW5ub3RhdGlvbihtb25pdG9yOiBEYXRhZG9nTW9uaXRvcik6IHN0cmluZyB7XG4gICAgY29uc3QgdGVhbUlkZW50aWZpZXIgPSBSaW9MYW5kaW5nWm9uZS5nZXRUZWFtSWRlbnRpZmllclBhcmFtZXRlcihtb25pdG9yKTtcbiAgICByZXR1cm4gYEBjYXNlLSR7dGVhbUlkZW50aWZpZXIuc3RyaW5nVmFsdWV9YDtcbiAgfVxufVxuXG4vKipcbiAqIEhlbHBlciB0byBjb21iaW5lIG11bHRpcGxlIHtAbGluayBJTm90aWZpY2F0aW9ufSBpbnRvIG9uZS5cbiAqL1xuZXhwb3J0IGNsYXNzIE5vdGlmaWNhdGlvbkFnZ3JlZ2F0b3IgaW1wbGVtZW50cyBJTm90aWZpY2F0aW9uIHtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IG5vdGlmaWNhdGlvbnM6IElOb3RpZmljYXRpb25bXSkgeyB9XG5cbiAgZ2VuZXJhdGVNZXNzYWdlQW5ub3RhdGlvbihtb25pdG9yOiBEYXRhZG9nTW9uaXRvcik6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMubm90aWZpY2F0aW9ucy5tYXAoaXQgPT4gaXQuZ2VuZXJhdGVNZXNzYWdlQW5ub3RhdGlvbihtb25pdG9yKSlcbiAgICAgIC5maWx0ZXIoaXQgPT4gaXQgIT09IE5vTm90aWZpY2F0aW9uLkRPX05PVF9OT1RJRlkpXG4gICAgICAuam9pbignXFxuJyk7XG4gIH1cblxufVxuIl19
|
package/lib/fargate/datadog.js
CHANGED
|
@@ -310,4 +310,4 @@ function ensureLoggingAndMonitoringAreReadyBeforeServiceStarts(rioFargateService
|
|
|
310
310
|
}
|
|
311
311
|
}
|
|
312
312
|
exports.ensureLoggingAndMonitoringAreReadyBeforeServiceStarts = ensureLoggingAndMonitoringAreReadyBeforeServiceStarts;
|
|
313
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mYXJnYXRlL2RhdGFkb2cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQThEO0FBQzlELDJDQUEyQztBQUMzQywyQ0FBMkM7QUFDM0MsaURBQWlEO0FBQ2pELDZDQUE2QztBQUc3QywrREFBOEU7QUFFOUU7O0dBRUc7QUFDSCxNQUFhLE9BQU87SUFFWCxNQUFNLENBQUMsdUNBQXVDLENBQ25ELEtBQWdCLEVBQ2hCLEtBQWEsRUFDYixXQUFtQixFQUNuQixPQUFlLEVBQ2YsV0FBbUIsRUFDbkIsUUFBZ0IsRUFDaEIsY0FBc0IsRUFDdEIsY0FBa0Q7UUFFbEQsT0FBTyx1Q0FBdUMsQ0FBQztZQUM3QyxLQUFLO1lBQ0wsS0FBSztZQUNMLFdBQVc7WUFDWCxPQUFPO1lBQ1AsV0FBVztZQUNYLFFBQVE7WUFDUixjQUFjO1lBQ2QsY0FBYztTQUNmLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxNQUFNLENBQUMsc0JBQXNCLENBQUMsS0FBYSxFQUFFLFdBQW1CLEVBQUUsT0FBZTtRQUN0RixPQUFPLHNCQUFzQixDQUFDLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFTSxNQUFNLENBQUMsaUJBQWlCLENBQzdCLEtBQWdCLEVBQ2hCLGNBQWtDLEVBQ2xDLFdBQW1CLEVBQ25CLFFBQWdCLEVBQ2hCLGNBQXNCLEVBQ3RCLEtBQWEsRUFDYixXQUFtQixFQUNuQixPQUFlLEVBQ2Ysc0JBQTRDLEVBQzVDLFdBQW1CLEVBQ25CLGtCQUFzQyxFQUN0Qyx1QkFBaUMsRUFDakMsR0FBVyxFQUNYLGNBQXNCLEVBQ3RCLFNBQWtCLEVBQ2xCLFlBQW9CLEVBQ3BCLGNBQWtEO1FBR2xELE9BQU8saUJBQWlCLENBQUM7WUFDdkIsS0FBSztZQUNMLGNBQWM7WUFDZCxXQUFXO1lBQ1gsUUFBUTtZQUNSLGNBQWM7WUFDZCxL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O2dCQUM1QixZQUFZLEVBQUUsS0FBSyxDQUFDLGFBQWE7Z0JBQ2pDLFFBQVEsRUFBRSx3QkFBd0I7Z0JBQ2xDLElBQUksRUFBRSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsWUFBWTtnQkFDdkMsYUFBYSxFQUFFLGtCQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQzthQUNsQyxDQUFDLENBQUM7S0FDTjtBQUNILENBQUM7QUFyR0Qsb0NBcUdDO0FBRUQsU0FBZ0IscURBQXFELENBQUMsaUJBQW9DO0lBRXhHLGlCQUFpQixDQUFDLDBCQUEwQixDQUFDLHdCQUF3QixDQUFDO1FBQ3BFLFNBQVMsRUFBRSxpQkFBaUIsQ0FBQyxpQ0FBaUM7UUFDOUQsU0FBUyxFQUFFLEdBQUcsQ0FBQyw0QkFBNEIsQ0FBQyxPQUFPO0tBQ3BELENBQUMsQ0FBQztJQUVILElBQUksaUJBQWlCLENBQUMsNEJBQTRCLEVBQUU7UUFDbEQsaUJBQWlCLENBQUMsMEJBQTBCLENBQUMsd0JBQXdCLENBQUM7WUFDcEUsU0FBUyxFQUFFLGlCQUFpQixDQUFDLDRCQUE0QjtZQUN6RCxTQUFTLEVBQUUsR0FBRyxDQUFDLDRCQUE0QixDQUFDLEtBQUs7U0FDbEQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxpQkFBaUIsQ0FBQyxpQ0FBaUMsQ0FBQyxlQUFlLEVBQUUsU0FBUyxLQUFLLGFBQWEsRUFBRTtZQUNwRyxpQkFBaUIsQ0FBQyxpQ0FBaUMsQ0FBQyx3QkFBd0IsQ0FBQztnQkFDM0UsU0FBUyxFQUFFLGlCQUFpQixDQUFDLDRCQUE0QjtnQkFDekQsU0FBUyxFQUFFLEdBQUcsQ0FBQyw0QkFBNEIsQ0FBQyxLQUFLO2FBQ2xELENBQUMsQ0FBQztTQUNKO0tBQ0Y7QUFDSCxDQUFDO0FBcEJELHNIQW9CQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IER1cmF0aW9uLCBGbiwgU2l6ZSwgU3RhY2ssIFRhZ3MgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgKiBhcyBlY3MgZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjcyc7XG5pbXBvcnQgKiBhcyBpYW0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgKiBhcyBsYW1iZGEgZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYSc7XG5pbXBvcnQgKiBhcyBsb2dzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sb2dzJztcbmltcG9ydCAqIGFzIHNzbSBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtc3NtJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgRGF0YURvZ0xvZ2dpbmdNb2RlLCBSaW9GYXJnYXRlU2VydmljZSB9IGZyb20gJy4vcmlvLWZhcmdhdGUtc2VydmljZSc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgTW92ZWQgb3V0IHN0YXRpYyBtZXRob2RzIGFuZCBpbXBvcm92ZWQgc2lnbmF0dXJlLiBVc2UgbmFtZWQgaW1wb3J0IGluc3RlYWQuXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRhRG9nIHtcblxuICBwdWJsaWMgc3RhdGljIGdldEZhcmdhdGVDb250YWluZXJFbnZpcm9ubWVudFZhcmlhYmxlcyhcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIHN0YWdlOiBzdHJpbmcsXG4gICAgc2VydmljZU5hbWU6IHN0cmluZyxcbiAgICB2ZXJzaW9uOiBzdHJpbmcsXG4gICAgYWNjb3VudE5hbWU6IHN0cmluZyxcbiAgICB0ZWFtTmFtZTogc3RyaW5nLFxuICAgIHRlYW1JZGVudGlmaWVyOiBzdHJpbmcsXG4gICAgYWRkaXRpb25hbFRhZ3M6IHsgW2s6IHN0cmluZ106IHN0cmluZ30gfCB1bmRlZmluZWQsXG4gICk6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0ge1xuICAgIHJldHVybiBnZXRGYXJnYXRlQ29udGFpbmVyRW52aXJvbm1lbnRWYXJpYWJsZXMoe1xuICAgICAgc2NvcGUsXG4gICAgICBzdGFnZSxcbiAgICAgIHNlcnZpY2VOYW1lLFxuICAgICAgdmVyc2lvbixcbiAgICAgIGFjY291bnROYW1lLFxuICAgICAgdGVhbU5hbWUsXG4gICAgICB0ZWFtSWRlbnRpZmllcixcbiAgICAgIGFkZGl0aW9uYWxUYWdzLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBnZXRGYXJnYXRlRG9ja2VyTGFiZWxzKHN0YWdlOiBzdHJpbmcsIHNlcnZpY2VOYW1lOiBzdHJpbmcsIHZlcnNpb246IHN0cmluZyk6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0ge1xuICAgIHJldHVybiBnZXRGYXJnYXRlRG9ja2VyTGFiZWxzKHsgc3RhZ2UsIHNlcnZpY2VOYW1lLCB2ZXJzaW9uIH0pO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBhZGREYXRhZG9nU2lkZWNhcihcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIHRhc2tEZWZpbml0aW9uOiBlY3MuVGFza0RlZmluaXRpb24sXG4gICAgYWNjb3VudE5hbWU6IHN0cmluZyxcbiAgICB0ZWFtTmFtZTogc3RyaW5nLFxuICAgIHRlYW1JZGVudGlmaWVyOiBzdHJpbmcsXG4gICAgc3RhZ2U6IHN0cmluZyxcbiAgICBzZXJ2aWNlTmFtZTogc3RyaW5nLFxuICAgIHZlcnNpb246IHN0cmluZyxcbiAgICBkYXRhZG9nQXBpS2V5UGFyYW1ldGVyOiBzc20uSVN0cmluZ1BhcmFtZXRlcixcbiAgICBkYXRhZG9nU2l0ZTogc3RyaW5nLFxuICAgIGRhdGFkb2dMb2dnaW5nTW9kZTogRGF0YURvZ0xvZ2dpbmdNb2RlLFxuICAgIGFwbUdldFJlc291cmNlc1RvSWdub3JlOiBzdHJpbmdbXSxcbiAgICBjcHU6IG51bWJlcixcbiAgICBtZW1vcnlMaW1pdE1pQjogbnVtYmVyLFxuICAgIGVzc2VudGlhbDogYm9vbGVhbixcbiAgICBjb250YWluZXJUYWc6IHN0cmluZyxcbiAgICBhZGRpdGlvbmFsVGFnczogeyBbazogc3RyaW5nXTogc3RyaW5nfSB8IHVuZGVmaW5lZCxcbiAgKTogZWNzLkNvbnRhaW5lckRlZmluaXRpb24ge1xuXG4gICAgcmV0dXJuIGFkZERhdGFkb2dTaWRlY2FyKHtcbiAgICAgIHNjb3BlLFxuICAgICAgdGFza0RlZmluaXRpb24sXG4gICAgICBhY2NvdW50TmFtZSxcbiAgICAgIHRlYW1OYW1lLFxuICAgICAgdGVhbUlkZW50aWZpZXIsXG4gICAgICBzdGFnZSxcbiAgICAgIHNlcnZpY2VOYW1lLFxuICAgICAgdmVyc2lvbixcbiAgICAgIGRhdGFkb2dBcGlLZXlQYXJhbWV0ZXIsXG4gICAgICBkYXRhZG9nU2l0ZSxcbiAgICAgIGRhdGFkb2dMb2dnaW5nTW9kZSxcbiAgICAgIGFwbUdldFJlc291cmNlc1RvSWdub3JlLFxuICAgICAgY3B1LFxuICAgICAgbWVtb3J5TGltaXRNaUIsXG4gICAgICBlc3NlbnRpYWwsXG4gICAgICBjb250YWluZXJUYWcsXG4gICAgICBhZGRpdGlvbmFsVGFncyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgYWRkRmlyZUxlbnNMb2dSb3V0ZXIoXG4gICAgdGFza0RlZmluaXRpb246IGVjcy5UYXNrRGVmaW5pdGlvbixcbiAgICBjcHU6IG51bWJlcixcbiAgICBtZW1vcnlMaW1pdE1pQjogbnVtYmVyLFxuICAgIGZpcmVsZW5zQ29uZmlnRmlsZVBhdGg6IHN0cmluZyxcbiAgICBmaXJlbGVuc0NvbmZpZ0J1Y2tldEFybjogc3RyaW5nLFxuICApOiBlY3MuQ29udGFpbmVyRGVmaW5pdGlvbiB7XG4gICAgcmV0dXJuIGFkZEZpcmVMZW5zTG9nUm91dGVyKHsgdGFza0RlZmluaXRpb24sIGNwdSwgbWVtb3J5TGltaXRNaUIsIGZpcmVsZW5zQ29uZmlnRmlsZVBhdGgsIGZpcmVsZW5zQ29uZmlnQnVja2V0QXJuIH0pO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBzZXR1cExvZ2dpbmcoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBhY2NvdW50TmFtZTogc3RyaW5nLFxuICAgIHRlYW1OYW1lOiBzdHJpbmcsXG4gICAgdGVhbUlkZW50aWZpZXI6IHN0cmluZyxcbiAgICBzdGFnZTogc3RyaW5nLFxuICAgIHNlcnZpY2VOYW1lOiBzdHJpbmcsXG4gICAgdmVyc2lvbjogc3RyaW5nLFxuICAgIGRhdGFkb2dBcGlLZXlQYXJhbWV0ZXI6IHNzbS5JU3RyaW5nUGFyYW1ldGVyLFxuICAgIGRhdGFkb2dMb2dnaW5nTW9kZTogRGF0YURvZ0xvZ2dpbmdNb2RlLFxuICAgIGRhdGFkb2dTaXRlOiBzdHJpbmcsXG4gICAgY29udGFpbmVyVHlwZTogJ3NlcnZpY2UnIHwgJ2RhdGFkb2ctc2lkZWNhcicsXG4gICAgYWRkaXRpb25hbFRhZ3M6IHsgW2s6IHN0cmluZ106IHN0cmluZ30gfCB1bmRlZmluZWQsXG4gICk6IGVjcy5Mb2dEcml2ZXIge1xuXG4gICAgcmV0dXJuIHNldHVwTG9nZ2luZyh7XG4gICAgICBzY29wZSxcbiAgICAgIGFjY291bnROYW1lLFxuICAgICAgdGVhbU5hbWUsXG4gICAgICB0ZWFtSWRlbnRpZmllcixcbiAgICAgIHN0YWdlLFxuICAgICAgc2VydmljZU5hbWUsXG4gICAgICB2ZXJzaW9uLFxuICAgICAgZGF0YWRvZ0FwaUtleVBhcmFtZXRlcixcbiAgICAgIGRhdGFkb2dMb2dnaW5nTW9kZSxcbiAgICAgIGRhdGFkb2dTaXRlLFxuICAgICAgY29udGFpbmVyVHlwZSxcbiAgICAgIGFkZGl0aW9uYWxUYWdzLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBlbnN1cmVMb2dnaW5nQW5kTW9uaXRvcmluZ0FyZVJlYWR5QmVmb3JlU2VydmljZVN0YXJ0cyhyaW9GYXJnYXRlU2VydmljZTogUmlvRmFyZ2F0ZVNlcnZpY2UpIHtcbiAgICBlbnN1cmVMb2dnaW5nQW5kTW9uaXRvcmluZ0FyZVJlYWR5QmVmb3JlU2VydmljZVN0YXJ0cyhyaW9GYXJnYXRlU2VydmljZSk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEZhcmdhdGVDb250YWluZXJFbnZpcm9ubWVudFZhcmlhYmxlcyhwcm9wczoge1xuICBzY29wZTogQ29uc3RydWN0O1xuICBzdGFnZTogc3RyaW5nO1xuICBzZXJ2aWNlTmFtZTogc3RyaW5nO1xuICB2ZXJzaW9uOiBzdHJpbmc7XG4gIGFjY291bnROYW1lOiBzdHJpbmc7XG4gIHRlYW1OYW1lOiBzdHJpbmc7XG4gIHRlYW1JZGVudGlmaWVyOiBzdHJpbmc7XG4gIGFkZGl0aW9uYWxUYWdzOiB7IFtrOiBzdHJpbmddOiBzdHJpbmd9IHwgdW5kZWZpbmVkO1xufSk6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0ge1xuXG4gIGNvbnN0IHsgYWNjb3VudDogYWNjb3VudElkLCByZWdpb24gfSA9IFN0YWNrLm9mKHByb3BzLnNjb3BlKTtcblxuICByZXR1cm4ge1xuICAgIC8vIHVuaWZpZWQgdGFnZ2luZywgc2VlIGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL2dldHRpbmdfc3RhcnRlZC90YWdnaW5nL3VuaWZpZWRfc2VydmljZV90YWdnaW5nLz90YWI9ZWNzXG4gICAgRERfRU5WOiBwcm9wcy5zdGFnZSxcbiAgICBERF9TRVJWSUNFOiBwcm9wcy5zZXJ2aWNlTmFtZSxcbiAgICBERF9WRVJTSU9OOiBwcm9wcy52ZXJzaW9uLFxuICAgIC8vIEFQTSBhbmQgdHJhY2luZywgc2VlIGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL3RyYWNpbmcvc2V0dXBfb3ZlcnZpZXcvc2V0dXAvamF2YS8/dGFiPWNvbnRhaW5lcnNcbiAgICBERF9MT0dTX0lOSkVDVElPTjogJ3RydWUnLFxuICAgIEREX1NFUlZJQ0VfTUFQUElORzogZ2V0QXBtU2VydmljZU1hcHBpbmdFbnZpcm9ubWVudFZhcmlhYmxlVmFsdWUocHJvcHMuc2VydmljZU5hbWUpLFxuICAgIEREX1RBR1M6IGdldFRhZ3NFbnZpcm9ubWVudFZhcmlhYmxlVmFsdWUoe1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBjb250YWluZXJUeXBlOiAnc2VydmljZScsXG4gICAgICBhY2NvdW50SWQsXG4gICAgICByZWdpb24sXG4gICAgfSksXG4gICAgRERfVFJBQ0VfU0FNUExFX1JBVEU6ICcxLjAnLCAvLyBzZWUgaHR0cHM6Ly9kZHRyYWNlLnJlYWR0aGVkb2NzLmlvL2VuL3N0YWJsZS9jb25maWd1cmF0aW9uLmh0bWxcbiAgfTtcbn1cblxuLy8gd2UgYWRkIGFsbCBwb3NzaWJsZSBzZXJ2aWNlIG1hcHBpbmdzIGhlcmUgZXZlbiBpZiBub3QgdXNlZCBpbiBhIHBhcnRpY3VsYXIgc2VydmljZSB0byBnZXQgZ2xvYmFsbHkgdW5pcXVlIG5hbWVzXG5mdW5jdGlvbiBnZXRBcG1TZXJ2aWNlTWFwcGluZ0Vudmlyb25tZW50VmFyaWFibGVWYWx1ZShzZXJ2aWNlTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcblxuICBjb25zdCBzZXJ2aWNlTWFwcGluZyA9IHtcbiAgICAnZGF0YWJhc2UnOiBgJHtzZXJ2aWNlTmFtZX0tYXVyb3JhYCxcbiAgICAnamF2YS1hd3Mtc2RrJzogYCR7c2VydmljZU5hbWV9LWF3cy1zZGtgLFxuICAgICdrYWZrYSc6IGAke3NlcnZpY2VOYW1lfS1rYWZrYWAsXG4gICAgJ215c3FsJzogYCR7c2VydmljZU5hbWV9LWF1cm9yYWAsXG4gICAgJ3JlZGlzJzogYCR7c2VydmljZU5hbWV9LXJlZGlzYCxcbiAgfTtcblxuICByZXR1cm4gT2JqZWN0LmVudHJpZXMoc2VydmljZU1hcHBpbmcpXG4gICAgLm1hcCgoW2tleSwgdmFsdWVdKSA9PiBgJHtrZXl9OiR7dmFsdWV9YClcbiAgICAuam9pbignLCcpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmFyZ2F0ZURvY2tlckxhYmVscyhwcm9wczoge3N0YWdlOiBzdHJpbmc7IHNlcnZpY2VOYW1lOiBzdHJpbmc7IHZlcnNpb246IHN0cmluZ30pOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9IHtcbiAgcmV0dXJuIHtcbiAgICAnY29tLmRhdGFkb2docS50YWdzLmVudic6IHByb3BzLnN0YWdlLFxuICAgICdjb20uZGF0YWRvZ2hxLnRhZ3Muc2VydmljZSc6IHByb3BzLnNlcnZpY2VOYW1lLFxuICAgICdjb20uZGF0YWRvZ2hxLnRhZ3MudmVyc2lvbic6IHByb3BzLnZlcnNpb24sXG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhZGREYXRhZG9nU2lkZWNhcihwcm9wczoge1xuICBzY29wZTogQ29uc3RydWN0O1xuICB0YXNrRGVmaW5pdGlvbjogZWNzLlRhc2tEZWZpbml0aW9uO1xuICBhY2NvdW50TmFtZTogc3RyaW5nO1xuICB0ZWFtTmFtZTogc3RyaW5nO1xuICB0ZWFtSWRlbnRpZmllcjogc3RyaW5nO1xuICBzdGFnZTogc3RyaW5nO1xuICBzZXJ2aWNlTmFtZTogc3RyaW5nO1xuICB2ZXJzaW9uOiBzdHJpbmc7XG4gIGRhdGFkb2dBcGlLZXlQYXJhbWV0ZXI6IHNzbS5JU3RyaW5nUGFyYW1ldGVyO1xuICBkYXRhZG9nU2l0ZTogc3RyaW5nO1xuICBkYXRhZG9nTG9nZ2luZ01vZGU6IERhdGFEb2dMb2dnaW5nTW9kZTtcbiAgYXBtR2V0UmVzb3VyY2VzVG9JZ25vcmU6IHN0cmluZ1tdO1xuICBjcHU6IG51bWJlcjtcbiAgbWVtb3J5TGltaXRNaUI6IG51bWJlcjtcbiAgZXNzZW50aWFsOiBib29sZWFuO1xuICBjb250YWluZXJUYWc6IHN0cmluZztcbiAgYWRkaXRpb25hbFRhZ3M6IHsgW2s6IHN0cmluZ106IHN0cmluZ30gfCB1bmRlZmluZWQ7XG59KTogZWNzLkNvbnRhaW5lckRlZmluaXRpb24ge1xuXG4gIGNvbnN0IHsgYWNjb3VudDogYWNjb3VudElkLCByZWdpb24gfSA9IFN0YWNrLm9mKHByb3BzLnNjb3BlKTtcbiAgY29uc3QgZGF0YWRvZ1NpZGVjYXIgPSBwcm9wcy50YXNrRGVmaW5pdGlvbi5hZGRDb250YWluZXIoJ2RhdGFkb2ctYWdlbnQnLCB7XG4gICAgaW1hZ2U6IGVjcy5Db250YWluZXJJbWFnZS5mcm9tUmVnaXN0cnkoYHB1YmxpYy5lY3IuYXdzL2RhdGFkb2cvYWdlbnQ6JHtwcm9wcy5jb250YWluZXJUYWd9YCksXG4gICAgbG9nZ2luZzogc2V0dXBMb2dnaW5nKHsgLi4ucHJvcHMsIGNvbnRhaW5lclR5cGU6ICdkYXRhZG9nLXNpZGVjYXInIH0pLFxuICAgIGNwdTogcHJvcHMuY3B1LFxuICAgIG1lbW9yeUxpbWl0TWlCOiBwcm9wcy5tZW1vcnlMaW1pdE1pQixcbiAgICBlbnZpcm9ubWVudDoge1xuICAgICAgLy8gdW5pZmllZCB0YWdnaW5nLCBzZWUgaHR0cHM6Ly9kb2NzLmRhdGFkb2docS5jb20vZ2V0dGluZ19zdGFydGVkL3RhZ2dpbmcvdW5pZmllZF9zZXJ2aWNlX3RhZ2dpbmcvP3RhYj1lY3NcbiAgICAgIEREX0VOVjogcHJvcHMuc3RhZ2UsXG4gICAgICBERF9TRVJWSUNFOiBwcm9wcy5zZXJ2aWNlTmFtZSxcbiAgICAgIEREX1ZFUlNJT046IHByb3BzLnZlcnNpb24sXG4gICAgICAvLyBBUE0gYW5kIHRyYWNpbmcgc2VlIGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL2FnZW50L2RvY2tlci9hcG0vP3RhYj1saW51eFxuICAgICAgRERfQVBNX0VOQUJMRUQ6ICd0cnVlJyxcbiAgICAgIEREX0FQTV9JR05PUkVfUkVTT1VSQ0VTOiBwcm9wcy5hcG1HZXRSZXNvdXJjZXNUb0lnbm9yZVxuICAgICAgICAubWFwKChhcG1HZXRSZXNvdXJjZVRvSWdub3JlKSA9PiBgR0VUICR7YXBtR2V0UmVzb3VyY2VUb0lnbm9yZX1gKVxuICAgICAgICAuam9pbignLCcpLFxuICAgICAgLy8gZ2VuZXJhbCBzZXR0aW5nc1xuICAgICAgRERfU0lURTogcHJvcHMuZGF0YWRvZ1NpdGUsXG4gICAgICBERF9UQUdTOiBnZXRUYWdzRW52aXJvbm1lbnRWYXJpYWJsZVZhbHVlKHsgLi4ucHJvcHMsIGFjY291bnRJZCwgcmVnaW9uLCBjb250YWluZXJUeXBlOiAnZGF0YWRvZy1zaWRlY2FyJyB9KSxcbiAgICAgIEVDU19GQVJHQVRFOiAndHJ1ZScsXG4gICAgICBERF9DTE9VRF9QUk9WSURFUl9NRVRBREFUQTogJ2F3cycsXG4gICAgICBERF9SRU1PVEVfQ09ORklHVVJBVElPTl9FTkFCTEVEOiAnZmFsc2UnLFxuICAgIH0sXG4gICAgLy8gc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9EYXRhRG9nL2RhdGFkb2ctYWdlbnQvYmxvYi9tYXN0ZXIvRG9ja2VyZmlsZXMvYWdlbnQvYW1kNjQvRG9ja2VyZmlsZSNMMTcxLUwxNzJcbiAgICBoZWFsdGhDaGVjazoge1xuICAgICAgc3RhcnRQZXJpb2Q6IER1cmF0aW9uLm1pbnV0ZXMoMiksXG4gICAgICBpbnRlcnZhbDogRHVyYXRpb24uc2Vjb25kcygzMCksXG4gICAgICB0aW1lb3V0OiBEdXJhdGlvbi5zZWNvbmRzKDUpLFxuICAgICAgcmV0cmllczogMixcbiAgICAgIGNvbW1hbmQ6IFsnQ01ELVNIRUxMJywgJy9wcm9iZS5zaCddLFxuICAgIH0sXG4gICAgc2VjcmV0czoge1xuICAgICAgRERfQVBJX0tFWTogZWNzLlNlY3JldC5mcm9tU3NtUGFyYW1ldGVyKHByb3BzLmRhdGFkb2dBcGlLZXlQYXJhbWV0ZXIpLFxuICAgIH0sXG4gICAgZXNzZW50aWFsOiBwcm9wcy5lc3NlbnRpYWwsXG4gIH0pO1xuXG4gIGRhdGFkb2dTaWRlY2FyLmFkZFBvcnRNYXBwaW5ncyh7XG4gICAgY29udGFpbmVyUG9ydDogODEyNSxcbiAgICBwcm90b2NvbDogZWNzLlByb3RvY29sLlVEUCxcbiAgfSk7XG5cbiAgZGF0YWRvZ1NpZGVjYXIuYWRkUG9ydE1hcHBpbmdzKHtcbiAgICBjb250YWluZXJQb3J0OiA4MTI2LFxuICAgIHByb3RvY29sOiBlY3MuUHJvdG9jb2wuVENQLFxuICB9KTtcblxuICByZXR1cm4gZGF0YWRvZ1NpZGVjYXI7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhZGRGaXJlbGVuc0NvbmZpZ1VwbG9hZEZyb21TM1Blcm1pc3Npb25zKHByb3BzOiB7XG4gIHRhc2tEZWZpbml0aW9uOiBlY3MuVGFza0RlZmluaXRpb247XG4gIGZpcmVsZW5zQ29uZmlnQnVja2V0QXJuOiBzdHJpbmc7XG59KSB7XG4gIHByb3BzLnRhc2tEZWZpbml0aW9uLmFkZFRvVGFza1JvbGVQb2xpY3kobmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgIHJlc291cmNlczogW3Byb3BzLmZpcmVsZW5zQ29uZmlnQnVja2V0QXJuLCBgJHtwcm9wcy5maXJlbGVuc0NvbmZpZ0J1Y2tldEFybn0vKmBdLFxuICAgIGFjdGlvbnM6IFsnczM6R2V0KiddLFxuICAgIGVmZmVjdDogaWFtLkVmZmVjdC5BTExPVyxcbiAgfSkpO1xufVxuXG5mdW5jdGlvbiBnZXRUYWdzRW52aXJvbm1lbnRWYXJpYWJsZVZhbHVlKHByb3BzOiB7XG4gIGFjY291bnRJZDogc3RyaW5nO1xuICBhY2NvdW50TmFtZTogc3RyaW5nO1xuICByZWdpb246IHN0cmluZztcbiAgdGVhbU5hbWU6IHN0cmluZztcbiAgdGVhbUlkZW50aWZpZXI6IHN0cmluZztcbiAgc3RhZ2U6IHN0cmluZztcbiAgc2VydmljZU5hbWU6IHN0cmluZztcbiAgdmVyc2lvbjogc3RyaW5nO1xuICBjb250YWluZXJUeXBlOiAnc2VydmljZScgfCAnZGF0YWRvZy1zaWRlY2FyJyB8ICdmbHVlbnQtYml0JztcbiAgYWRkaXRpb25hbFRhZ3M6IHsgW2s6IHN0cmluZ106IHN0cmluZ30gfCB1bmRlZmluZWQ7XG59KTogc3RyaW5nIHtcblxuICBjb25zdCBzZXBhcmF0b3IgPSBkZXRlcm1pbmVTZXBhcmF0b3IocHJvcHMuY29udGFpbmVyVHlwZSk7XG5cbiAgY29uc3QgdGFncyA9IHtcbiAgICAvLyB1bmlmaWVkIHRhZ2dpbmdcbiAgICAvLyBvdmVycmlkZGVuIGJ5IGRlZGljYXRlZCBzZXR0aW5ncyAoZW52aXJvbm1lbnQgdmFyaWFibGVzL3RhZ3MpXG4gICAgLy8gZHVwbGljYXRlZCBoZXJlIHRvIGVuc3VyZSB0aGV5IGFyZSB1c2VkIChhbmQgc29tZXRpbWVzLCBub3QgYWxsIHRocmVlIHZhbHVlcyBhcmUgc3VwcG9ydGVkKVxuICAgIGVudjogcHJvcHMuc3RhZ2UsXG4gICAgc2VydmljZTogcHJvcHMuc2VydmljZU5hbWUsXG4gICAgdmVyc2lvbjogcHJvcHMudmVyc2lvbixcbiAgICAvLyBhY2NvdW50L3RlYW0gc3BlY2lmaWMgcGFydHNcbiAgICBhY2NvdW50X2lkOiBwcm9wcy5hY2NvdW50SWQsXG4gICAgYWNjb3VudF9uYW1lOiBwcm9wcy5hY2NvdW50TmFtZSxcbiAgICByZWdpb246IHByb3BzLnJlZ2lvbixcbiAgICB0ZWFtOiBwcm9wcy50ZWFtTmFtZSxcbiAgICB0ZWFtX2lkZW50aWZpZXI6IHByb3BzLnRlYW1JZGVudGlmaWVyLFxuICB9O1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMoeyAuLi50YWdzLCAuLi5wcm9wcy5hZGRpdGlvbmFsVGFncyB9KVxuICAgIC5tYXAoKFtrZXksIHZhbHVlXSkgPT4gYCR7a2V5fToke3ZhbHVlfWApXG4gICAgLmpvaW4oc2VwYXJhdG9yKTtcbn1cblxuZnVuY3Rpb24gZGV0ZXJtaW5lU2VwYXJhdG9yKGNvbnRhaW5lclR5cGU6ICdzZXJ2aWNlJyB8ICdkYXRhZG9nLXNpZGVjYXInIHwgJ2ZsdWVudC1iaXQnKSB7XG4gIGlmIChjb250YWluZXJUeXBlID09PSAnZGF0YWRvZy1zaWRlY2FyJykge1xuICAgIHJldHVybiAnICc7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuICcsJztcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gYWRkRmlyZUxlbnNMb2dSb3V0ZXIocHJvcHM6IHtcbiAgdGFza0RlZmluaXRpb246IGVjcy5UYXNrRGVmaW5pdGlvbjtcbiAgY3B1OiBudW1iZXI7XG4gIG1lbW9yeUxpbWl0TWlCOiBudW1iZXI7XG4gIGZpcmVsZW5zQ29uZmlnQnVja2V0QXJuOiBzdHJpbmc7XG4gIGZpcmVsZW5zQ29uZmlnRmlsZVBhdGg6IHN0cmluZztcbn0pOiBlY3MuQ29udGFpbmVyRGVmaW5pdGlvbiB7XG4gIGNvbnN0IGZsdWVudEJpdFMzQ29uZmlnRmlsZSA9IHByb3BzLmZpcmVsZW5zQ29uZmlnQnVja2V0QXJuICsgcHJvcHMuZmlyZWxlbnNDb25maWdGaWxlUGF0aDtcbiAgcmV0dXJuIHByb3BzLnRhc2tEZWZpbml0aW9uLmFkZEZpcmVsZW5zTG9nUm91dGVyKCdmaXJlbGVucy1sb2ctcm91dGVyJywge1xuICAgIGltYWdlOiBlY3MuQ29udGFpbmVySW1hZ2UuZnJvbVJlZ2lzdHJ5KCdwdWJsaWMuZWNyLmF3cy9hd3Mtb2JzZXJ2YWJpbGl0eS9hd3MtZm9yLWZsdWVudC1iaXQ6aW5pdC1sYXRlc3QnKSxcbiAgICBmaXJlbGVuc0NvbmZpZzoge1xuICAgICAgdHlwZTogZWNzLkZpcmVsZW5zTG9nUm91dGVyVHlwZS5GTFVFTlRCSVQsXG4gICAgICBvcHRpb25zOiB7XG4gICAgICAgIGVuYWJsZUVDU0xvZ01ldGFkYXRhOiB0cnVlLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGNwdTogcHJvcHMuY3B1LFxuICAgIG1lbW9yeUxpbWl0TWlCOiBwcm9wcy5tZW1vcnlMaW1pdE1pQixcbiAgICBlbnZpcm9ubWVudDoge1xuICAgICAgYXdzX2ZsdWVudF9iaXRfaW5pdF9zM18xOiBmbHVlbnRCaXRTM0NvbmZpZ0ZpbGUsXG4gICAgfSxcbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXR1cExvZ2dpbmcocHJvcHM6IHtcbiAgc2NvcGU6IENvbnN0cnVjdDtcbiAgYWNjb3VudE5hbWU6IHN0cmluZztcbiAgdGVhbU5hbWU6IHN0cmluZztcbiAgdGVhbUlkZW50aWZpZXI6IHN0cmluZztcbiAgc3RhZ2U6IHN0cmluZztcbiAgc2VydmljZU5hbWU6IHN0cmluZztcbiAgdmVyc2lvbjogc3RyaW5nO1xuICBkYXRhZG9nQXBpS2V5UGFyYW1ldGVyOiBzc20uSVN0cmluZ1BhcmFtZXRlcjtcbiAgZGF0YWRvZ0xvZ2dpbmdNb2RlOiBEYXRhRG9nTG9nZ2luZ01vZGU7XG4gIGRhdGFkb2dTaXRlOiBzdHJpbmc7XG4gIGNvbnRhaW5lclR5cGU6ICdzZXJ2aWNlJyB8ICdkYXRhZG9nLXNpZGVjYXInO1xuICBhZGRpdGlvbmFsVGFnczogeyBbazogc3RyaW5nXTogc3RyaW5nfSB8IHVuZGVmaW5lZDtcbn0pOiBlY3MuTG9nRHJpdmVyIHtcblxuICBsZXQgbG9nR3JvdXBOYW1lOiBzdHJpbmc7XG4gIGxldCBsb2dHcm91cElkOiBzdHJpbmc7XG4gIGxldCBjb250YWluZXJUeXBlQ2FtZWxDYXNlO1xuXG4gIHN3aXRjaCAocHJvcHMuY29udGFpbmVyVHlwZSkge1xuXG4gICAgY2FzZSAnc2VydmljZSc6XG4gICAgICBsb2dHcm91cElkID0gJ0xvZ0dyb3VwRm9yU2VydmljZSc7XG4gICAgICBsb2dHcm91cE5hbWUgPSBwcm9wcy5zZXJ2aWNlTmFtZTtcbiAgICAgIGNvbnRhaW5lclR5cGVDYW1lbENhc2UgPSAnU2VydmljZSc7XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ2RhdGFkb2ctc2lkZWNhcic6XG4gICAgICBsb2dHcm91cElkID0gJ0xvZ0dyb3VwRm9yRGF0YWRvZ1NpZGVjYXInO1xuICAgICAgbG9nR3JvdXBOYW1lID0gYCR7cHJvcHMuc2VydmljZU5hbWV9LSR7cHJvcHMuY29udGFpbmVyVHlwZX1gO1xuICAgICAgY29udGFpbmVyVHlwZUNhbWVsQ2FzZSA9ICdEYXRhZG9nU2lkZWNhcic7XG4gICAgICBicmVhaztcbiAgfVxuXG4gIGNvbnN0IHsgYWNjb3VudDogYWNjb3VudElkLCByZWdpb24gfSA9IFN0YWNrLm9mKHByb3BzLnNjb3BlKTtcblxuICBzd2l0Y2ggKHByb3BzLmRhdGFkb2dMb2dnaW5nTW9kZSkge1xuXG4gICAgY2FzZSBEYXRhRG9nTG9nZ2luZ01vZGUuQVdTX0ZJUkVfTEVOUzpcbiAgICAgIC8vIFRPRE8gY2FuIHdlIHVzZSBgc2VjcmV0T3B0aW9uc2AgaGVyZSBhcyB3ZWxsLCBlLmcuIGFzIGluIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3Mtc2FtcGxlcy9hbWF6b24tZWNzLWZpcmVsZW5zLWV4YW1wbGVzL2Jsb2IvbWFpbmxpbmUvZXhhbXBsZXMvZmx1ZW50LWJpdC9kYXRhZG9nL3Rhc2stZGVmaW5pdGlvbi5qc29uI0wzMy1MMzZcbiAgICAgIC8vIFByb2JhYmx5IG5vdCwgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9pc3N1ZXMvODE3NFxuICAgICAgcmV0dXJuIGVjcy5Mb2dEcml2ZXJzLmZpcmVsZW5zKHtcbiAgICAgICAgLy8gc2VlIGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL2ludGVncmF0aW9ucy9mbHVlbnRiaXQvI2NvbmZpZ3VyYXRpb24tcGFyYW1ldGVyc1xuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgTmFtZTogJ2RhdGFkb2cnLFxuICAgICAgICAgIE1hdGNoOiAnKicsXG4gICAgICAgICAgSG9zdDogYGh0dHAtaW50YWtlLmxvZ3MuJHtwcm9wcy5kYXRhZG9nU2l0ZX1gLFxuICAgICAgICAgIFRMUzogJ29uJyxcbiAgICAgICAgICBhcGlrZXk6IHByb3BzLmRhdGFkb2dBcGlLZXlQYXJhbWV0ZXIuc3RyaW5nVmFsdWUsXG4gICAgICAgICAgY29tcHJlc3M6ICdnemlwJyxcbiAgICAgICAgICBkZF9zZXJ2aWNlOiBsb2dHcm91cE5hbWUsXG4gICAgICAgICAgZGRfc291cmNlOiAncmlvLWZhcmdhdGUnLFxuICAgICAgICAgIGRkX21lc3NhZ2Vfa2V5OiAnbG9nJyxcbiAgICAgICAgICBkZF90YWdzOiBnZXRUYWdzRW52aXJvbm1lbnRWYXJpYWJsZVZhbHVlKHsgLi4ucHJvcHMsIGFjY291bnRJZCwgcmVnaW9uLCBjb250YWluZXJUeXBlOiAnZmx1ZW50LWJpdCcgfSksXG4gICAgICAgICAgcHJvdmlkZXI6ICdlY3MnLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICBjYXNlIERhdGFEb2dMb2dnaW5nTW9kZS5GT1JXQVJERVJfTEFNQkRBOlxuICAgIGNhc2UgRGF0YURvZ0xvZ2dpbmdNb2RlLkRBVEFET0dfRk9SV0FSREVSX0xBTUJEQTpcbiAgICAgIGNvbnN0IGxvZ0dyb3VwRm9yRm9yd2FyZGluZ0xhbWJkYSA9IG5ldyBsb2dzLkxvZ0dyb3VwKHByb3BzLnNjb3BlLCBsb2dHcm91cElkLCB7XG4gICAgICAgIGxvZ0dyb3VwTmFtZSxcbiAgICAgICAgcmV0ZW50aW9uOiBsb2dzLlJldGVudGlvbkRheXMuT05FX1dFRUssXG4gICAgICB9KTtcbiAgICAgIFRhZ3Mub2YobG9nR3JvdXBGb3JGb3J3YXJkaW5nTGFtYmRhKS5hZGQoJ3NlcnZpY2UnLCBwcm9wcy5zZXJ2aWNlTmFtZSk7XG4gICAgICBjb25zdCBsb2dGb3J3YXJkZXJMYW1iZGFBcm5PdXRwdXROYW1lID0gcHJvcHMuZGF0YWRvZ0xvZ2dpbmdNb2RlID09PSBEYXRhRG9nTG9nZ2luZ01vZGUuREFUQURPR19GT1JXQVJERVJfTEFNQkRBID8gJ2RhdGFkb2ctZm9yd2FyZGVyLUZvcndhcmRlckFybicgOiAnY3VzdG9tLXJlc291cmNlLWRhdGFkb2ctbG9nZm9yd2FyZGVyLWZ1bmN0aW9uLWFybic7XG4gICAgICBjb25zdCBsb2dGb3J3YXJkZXJMYW1iZGFBcm4gPSBGbi5pbXBvcnRWYWx1ZShsb2dGb3J3YXJkZXJMYW1iZGFBcm5PdXRwdXROYW1lKTtcbiAgICAgIGNvbnN0IGNmblBlcm1pc3Npb24gPSBuZXcgbGFtYmRhLkNmblBlcm1pc3Npb24ocHJvcHMuc2NvcGUsIGBMb2dGb3J3YXJkZXJQZXJtaXNzaW9uJHtjb250YWluZXJUeXBlQ2FtZWxDYXNlfWAsIHtcbiAgICAgICAgYWN0aW9uOiAnbGFtYmRhOkludm9rZUZ1bmN0aW9uJyxcbiAgICAgICAgZnVuY3Rpb25OYW1lOiBsb2dGb3J3YXJkZXJMYW1iZGFBcm4sXG4gICAgICAgIHByaW5jaXBhbDogYGxvZ3MuJHtyZWdpb259LmFtYXpvbmF3cy5jb21gLFxuICAgICAgICBzb3VyY2VBcm46IGxvZ0dyb3VwRm9yRm9yd2FyZGluZ0xhbWJkYS5sb2dHcm91cEFybixcbiAgICAgIH0pO1xuICAgICAgY29uc3QgY2ZuU3Vic2NyaXB0aW9uRmlsdGVyID0gbmV3IGxvZ3MuQ2ZuU3Vic2NyaXB0aW9uRmlsdGVyKFxuICAgICAgICBwcm9wcy5zY29wZSxcbiAgICAgICAgYExvZ0ZvcndhcmRlclN1YnNjcmlwdGlvbkZpbHRlciR7Y29udGFpbmVyVHlwZUNhbWVsQ2FzZX1gLFxuICAgICAgICB7XG4gICAgICAgICAgZGVzdGluYXRpb25Bcm46IGxvZ0ZvcndhcmRlckxhbWJkYUFybixcbiAgICAgICAgICBmaWx0ZXJQYXR0ZXJuOiAnJyxcbiAgICAgICAgICBsb2dHcm91cE5hbWU6IGxvZ0dyb3VwRm9yRm9yd2FyZGluZ0xhbWJkYS5sb2dHcm91cE5hbWUsXG4gICAgICAgIH0sXG4gICAgICApO1xuICAgICAgY2ZuU3Vic2NyaXB0aW9uRmlsdGVyLmFkZERlcGVuZGVuY3koY2ZuUGVybWlzc2lvbik7XG4gICAgICByZXR1cm4gZWNzLkxvZ0RyaXZlcnMuYXdzTG9ncyh7XG4gICAgICAgIHN0cmVhbVByZWZpeDogcHJvcHMuY29udGFpbmVyVHlwZSxcbiAgICAgICAgbG9nR3JvdXA6IGxvZ0dyb3VwRm9yRm9yd2FyZGluZ0xhbWJkYSxcbiAgICAgICAgbW9kZTogZWNzLkF3c0xvZ0RyaXZlck1vZGUuTk9OX0JMT0NLSU5HLFxuICAgICAgICBtYXhCdWZmZXJTaXplOiBTaXplLm1lYmlieXRlcygyNSksXG4gICAgICB9KTtcblxuICAgIGNhc2UgRGF0YURvZ0xvZ2dpbmdNb2RlLk5PTkU6XG4gICAgICBjb25zdCBsb2dHcm91cEluQ2xvdWR3YXRjaE9ubHkgPSBuZXcgbG9ncy5Mb2dHcm91cChwcm9wcy5zY29wZSwgbG9nR3JvdXBJZCwge1xuICAgICAgICByZXRlbnRpb246IGxvZ3MuUmV0ZW50aW9uRGF5cy5PTkVfV0VFSyxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIGVjcy5Mb2dEcml2ZXJzLmF3c0xvZ3Moe1xuICAgICAgICBzdHJlYW1QcmVmaXg6IHByb3BzLmNvbnRhaW5lclR5cGUsXG4gICAgICAgIGxvZ0dyb3VwOiBsb2dHcm91cEluQ2xvdWR3YXRjaE9ubHksXG4gICAgICAgIG1vZGU6IGVjcy5Bd3NMb2dEcml2ZXJNb2RlLk5PTl9CTE9DS0lORyxcbiAgICAgICAgbWF4QnVmZmVyU2l6ZTogU2l6ZS5tZWJpYnl0ZXMoMjUpLFxuICAgICAgfSk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGVuc3VyZUxvZ2dpbmdBbmRNb25pdG9yaW5nQXJlUmVhZHlCZWZvcmVTZXJ2aWNlU3RhcnRzKHJpb0ZhcmdhdGVTZXJ2aWNlOiBSaW9GYXJnYXRlU2VydmljZSk6IHZvaWQge1xuXG4gIHJpb0ZhcmdhdGVTZXJ2aWNlLnNlcnZpY2VDb250YWluZXJEZWZpbml0aW9uLmFkZENvbnRhaW5lckRlcGVuZGVuY2llcyh7XG4gICAgY29udGFpbmVyOiByaW9GYXJnYXRlU2VydmljZS5kYXRhZG9nU2lkZUNhckNvbnRhaW5lckRlZmluaXRpb24sXG4gICAgY29uZGl0aW9uOiBlY3MuQ29udGFpbmVyRGVwZW5kZW5jeUNvbmRpdGlvbi5IRUFMVEhZLFxuICB9KTtcblxuICBpZiAocmlvRmFyZ2F0ZVNlcnZpY2UubG9nUm91dGVyQ29udGFpbmVyRGVmaW5pdGlvbikge1xuICAgIHJpb0ZhcmdhdGVTZXJ2aWNlLnNlcnZpY2VDb250YWluZXJEZWZpbml0aW9uLmFkZENvbnRhaW5lckRlcGVuZGVuY2llcyh7XG4gICAgICBjb250YWluZXI6IHJpb0ZhcmdhdGVTZXJ2aWNlLmxvZ1JvdXRlckNvbnRhaW5lckRlZmluaXRpb24sXG4gICAgICBjb25kaXRpb246IGVjcy5Db250YWluZXJEZXBlbmRlbmN5Q29uZGl0aW9uLlNUQVJULFxuICAgIH0pO1xuXG4gICAgaWYgKHJpb0ZhcmdhdGVTZXJ2aWNlLmRhdGFkb2dTaWRlQ2FyQ29udGFpbmVyRGVmaW5pdGlvbi5sb2dEcml2ZXJDb25maWc/LmxvZ0RyaXZlciA9PT0gJ2F3c2ZpcmVsZW5zJykge1xuICAgICAgcmlvRmFyZ2F0ZVNlcnZpY2UuZGF0YWRvZ1NpZGVDYXJDb250YWluZXJEZWZpbml0aW9uLmFkZENvbnRhaW5lckRlcGVuZGVuY2llcyh7XG4gICAgICAgIGNvbnRhaW5lcjogcmlvRmFyZ2F0ZVNlcnZpY2UubG9nUm91dGVyQ29udGFpbmVyRGVmaW5pdGlvbixcbiAgICAgICAgY29uZGl0aW9uOiBlY3MuQ29udGFpbmVyRGVwZW5kZW5jeUNvbmRpdGlvbi5TVEFSVCxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
313
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mYXJnYXRlL2RhdGFkb2cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQThEO0FBQzlELDJDQUEyQztBQUMzQywyQ0FBMkM7QUFDM0MsaURBQWlEO0FBQ2pELDZDQUE2QztBQUc3QywrREFBOEU7QUFFOUU7O0dBRUc7QUFDSCxNQUFhLE9BQU87SUFFWCxNQUFNLENBQUMsdUNBQXVDLENBQ25ELEtBQWdCLEVBQ2hCLEtBQWEsRUFDYixXQUFtQixFQUNuQixPQUFlLEVBQ2YsV0FBbUIsRUFDbkIsUUFBZ0IsRUFDaEIsY0FBc0IsRUFDdEIsY0FBa0Q7UUFFbEQsT0FBTyx1Q0FBdUMsQ0FBQztZQUM3QyxLQUFLO1lBQ0wsS0FBSztZQUNMLFdBQVc7WUFDWCxPQUFPO1lBQ1AsV0FBVztZQUNYLFFBQVE7WUFDUixjQUFjO1lBQ2QsY0FBYztTQUNmLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxNQUFNLENBQUMsc0JBQXNCLENBQUMsS0FBYSxFQUFFLFdBQW1CLEVBQUUsT0FBZTtRQUN0RixPQUFPLHNCQUFzQixDQUFDLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFTSxNQUFNLENBQUMsaUJBQWlCLENBQzdCLEtBQWdCLEVBQ2hCLGNBQWtDLEVBQ2xDLFdBQW1CLEVBQ25CLFFBQWdCLEVBQ2hCLGNBQXNCLEVBQ3RCLEtBQWEsRUFDYixXQUFtQixFQUNuQixPQUFlLEVBQ2Ysc0JBQTRDLEVBQzVDLFdBQW1CLEVBQ25CLGtCQUFzQyxFQUN0Qyx1QkFBaUMsRUFDakMsR0FBVyxFQUNYLGNBQXNCLEVBQ3RCLFNBQWtCLEVBQ2xCLFlBQW9CLEVBQ3BCLGNBQWtEO1FBR2xELE9BQU8saUJBQWlCLENBQUM7WUFDdkIsS0FBSztZQUNMLGNBQWM7WUFDZCxXQUFXO1lBQ1gsUUFBUTtZQUNSLGNBQWM7WUFDZCxL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LE9BQU8sR0FBRyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUM7Z0JBQzVCLFlBQVksRUFBRSxLQUFLLENBQUMsYUFBYTtnQkFDakMsUUFBUSxFQUFFLHdCQUF3QjtnQkFDbEMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZO2dCQUN2QyxhQUFhLEVBQUUsa0JBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO2FBQ2xDLENBQUMsQ0FBQztJQUNQLENBQUM7QUFDSCxDQUFDO0FBckdELG9DQXFHQztBQUVELFNBQWdCLHFEQUFxRCxDQUFDLGlCQUFvQztJQUV4RyxpQkFBaUIsQ0FBQywwQkFBMEIsQ0FBQyx3QkFBd0IsQ0FBQztRQUNwRSxTQUFTLEVBQUUsaUJBQWlCLENBQUMsaUNBQWlDO1FBQzlELFNBQVMsRUFBRSxHQUFHLENBQUMsNEJBQTRCLENBQUMsT0FBTztLQUNwRCxDQUFDLENBQUM7SUFFSCxJQUFJLGlCQUFpQixDQUFDLDRCQUE0QixFQUFFLENBQUM7UUFDbkQsaUJBQWlCLENBQUMsMEJBQTBCLENBQUMsd0JBQXdCLENBQUM7WUFDcEUsU0FBUyxFQUFFLGlCQUFpQixDQUFDLDRCQUE0QjtZQUN6RCxTQUFTLEVBQUUsR0FBRyxDQUFDLDRCQUE0QixDQUFDLEtBQUs7U0FDbEQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxpQkFBaUIsQ0FBQyxpQ0FBaUMsQ0FBQyxlQUFlLEVBQUUsU0FBUyxLQUFLLGFBQWEsRUFBRSxDQUFDO1lBQ3JHLGlCQUFpQixDQUFDLGlDQUFpQyxDQUFDLHdCQUF3QixDQUFDO2dCQUMzRSxTQUFTLEVBQUUsaUJBQWlCLENBQUMsNEJBQTRCO2dCQUN6RCxTQUFTLEVBQUUsR0FBRyxDQUFDLDRCQUE0QixDQUFDLEtBQUs7YUFDbEQsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7QUFDSCxDQUFDO0FBcEJELHNIQW9CQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IER1cmF0aW9uLCBGbiwgU2l6ZSwgU3RhY2ssIFRhZ3MgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgKiBhcyBlY3MgZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjcyc7XG5pbXBvcnQgKiBhcyBpYW0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgKiBhcyBsYW1iZGEgZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYSc7XG5pbXBvcnQgKiBhcyBsb2dzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sb2dzJztcbmltcG9ydCAqIGFzIHNzbSBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtc3NtJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgRGF0YURvZ0xvZ2dpbmdNb2RlLCBSaW9GYXJnYXRlU2VydmljZSB9IGZyb20gJy4vcmlvLWZhcmdhdGUtc2VydmljZSc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgTW92ZWQgb3V0IHN0YXRpYyBtZXRob2RzIGFuZCBpbXBvcm92ZWQgc2lnbmF0dXJlLiBVc2UgbmFtZWQgaW1wb3J0IGluc3RlYWQuXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRhRG9nIHtcblxuICBwdWJsaWMgc3RhdGljIGdldEZhcmdhdGVDb250YWluZXJFbnZpcm9ubWVudFZhcmlhYmxlcyhcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIHN0YWdlOiBzdHJpbmcsXG4gICAgc2VydmljZU5hbWU6IHN0cmluZyxcbiAgICB2ZXJzaW9uOiBzdHJpbmcsXG4gICAgYWNjb3VudE5hbWU6IHN0cmluZyxcbiAgICB0ZWFtTmFtZTogc3RyaW5nLFxuICAgIHRlYW1JZGVudGlmaWVyOiBzdHJpbmcsXG4gICAgYWRkaXRpb25hbFRhZ3M6IHsgW2s6IHN0cmluZ106IHN0cmluZ30gfCB1bmRlZmluZWQsXG4gICk6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0ge1xuICAgIHJldHVybiBnZXRGYXJnYXRlQ29udGFpbmVyRW52aXJvbm1lbnRWYXJpYWJsZXMoe1xuICAgICAgc2NvcGUsXG4gICAgICBzdGFnZSxcbiAgICAgIHNlcnZpY2VOYW1lLFxuICAgICAgdmVyc2lvbixcbiAgICAgIGFjY291bnROYW1lLFxuICAgICAgdGVhbU5hbWUsXG4gICAgICB0ZWFtSWRlbnRpZmllcixcbiAgICAgIGFkZGl0aW9uYWxUYWdzLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBnZXRGYXJnYXRlRG9ja2VyTGFiZWxzKHN0YWdlOiBzdHJpbmcsIHNlcnZpY2VOYW1lOiBzdHJpbmcsIHZlcnNpb246IHN0cmluZyk6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0ge1xuICAgIHJldHVybiBnZXRGYXJnYXRlRG9ja2VyTGFiZWxzKHsgc3RhZ2UsIHNlcnZpY2VOYW1lLCB2ZXJzaW9uIH0pO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBhZGREYXRhZG9nU2lkZWNhcihcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIHRhc2tEZWZpbml0aW9uOiBlY3MuVGFza0RlZmluaXRpb24sXG4gICAgYWNjb3VudE5hbWU6IHN0cmluZyxcbiAgICB0ZWFtTmFtZTogc3RyaW5nLFxuICAgIHRlYW1JZGVudGlmaWVyOiBzdHJpbmcsXG4gICAgc3RhZ2U6IHN0cmluZyxcbiAgICBzZXJ2aWNlTmFtZTogc3RyaW5nLFxuICAgIHZlcnNpb246IHN0cmluZyxcbiAgICBkYXRhZG9nQXBpS2V5UGFyYW1ldGVyOiBzc20uSVN0cmluZ1BhcmFtZXRlcixcbiAgICBkYXRhZG9nU2l0ZTogc3RyaW5nLFxuICAgIGRhdGFkb2dMb2dnaW5nTW9kZTogRGF0YURvZ0xvZ2dpbmdNb2RlLFxuICAgIGFwbUdldFJlc291cmNlc1RvSWdub3JlOiBzdHJpbmdbXSxcbiAgICBjcHU6IG51bWJlcixcbiAgICBtZW1vcnlMaW1pdE1pQjogbnVtYmVyLFxuICAgIGVzc2VudGlhbDogYm9vbGVhbixcbiAgICBjb250YWluZXJUYWc6IHN0cmluZyxcbiAgICBhZGRpdGlvbmFsVGFnczogeyBbazogc3RyaW5nXTogc3RyaW5nfSB8IHVuZGVmaW5lZCxcbiAgKTogZWNzLkNvbnRhaW5lckRlZmluaXRpb24ge1xuXG4gICAgcmV0dXJuIGFkZERhdGFkb2dTaWRlY2FyKHtcbiAgICAgIHNjb3BlLFxuICAgICAgdGFza0RlZmluaXRpb24sXG4gICAgICBhY2NvdW50TmFtZSxcbiAgICAgIHRlYW1OYW1lLFxuICAgICAgdGVhbUlkZW50aWZpZXIsXG4gICAgICBzdGFnZSxcbiAgICAgIHNlcnZpY2VOYW1lLFxuICAgICAgdmVyc2lvbixcbiAgICAgIGRhdGFkb2dBcGlLZXlQYXJhbWV0ZXIsXG4gICAgICBkYXRhZG9nU2l0ZSxcbiAgICAgIGRhdGFkb2dMb2dnaW5nTW9kZSxcbiAgICAgIGFwbUdldFJlc291cmNlc1RvSWdub3JlLFxuICAgICAgY3B1LFxuICAgICAgbWVtb3J5TGltaXRNaUIsXG4gICAgICBlc3NlbnRpYWwsXG4gICAgICBjb250YWluZXJUYWcsXG4gICAgICBhZGRpdGlvbmFsVGFncyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgYWRkRmlyZUxlbnNMb2dSb3V0ZXIoXG4gICAgdGFza0RlZmluaXRpb246IGVjcy5UYXNrRGVmaW5pdGlvbixcbiAgICBjcHU6IG51bWJlcixcbiAgICBtZW1vcnlMaW1pdE1pQjogbnVtYmVyLFxuICAgIGZpcmVsZW5zQ29uZmlnRmlsZVBhdGg6IHN0cmluZyxcbiAgICBmaXJlbGVuc0NvbmZpZ0J1Y2tldEFybjogc3RyaW5nLFxuICApOiBlY3MuQ29udGFpbmVyRGVmaW5pdGlvbiB7XG4gICAgcmV0dXJuIGFkZEZpcmVMZW5zTG9nUm91dGVyKHsgdGFza0RlZmluaXRpb24sIGNwdSwgbWVtb3J5TGltaXRNaUIsIGZpcmVsZW5zQ29uZmlnRmlsZVBhdGgsIGZpcmVsZW5zQ29uZmlnQnVja2V0QXJuIH0pO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBzZXR1cExvZ2dpbmcoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBhY2NvdW50TmFtZTogc3RyaW5nLFxuICAgIHRlYW1OYW1lOiBzdHJpbmcsXG4gICAgdGVhbUlkZW50aWZpZXI6IHN0cmluZyxcbiAgICBzdGFnZTogc3RyaW5nLFxuICAgIHNlcnZpY2VOYW1lOiBzdHJpbmcsXG4gICAgdmVyc2lvbjogc3RyaW5nLFxuICAgIGRhdGFkb2dBcGlLZXlQYXJhbWV0ZXI6IHNzbS5JU3RyaW5nUGFyYW1ldGVyLFxuICAgIGRhdGFkb2dMb2dnaW5nTW9kZTogRGF0YURvZ0xvZ2dpbmdNb2RlLFxuICAgIGRhdGFkb2dTaXRlOiBzdHJpbmcsXG4gICAgY29udGFpbmVyVHlwZTogJ3NlcnZpY2UnIHwgJ2RhdGFkb2ctc2lkZWNhcicsXG4gICAgYWRkaXRpb25hbFRhZ3M6IHsgW2s6IHN0cmluZ106IHN0cmluZ30gfCB1bmRlZmluZWQsXG4gICk6IGVjcy5Mb2dEcml2ZXIge1xuXG4gICAgcmV0dXJuIHNldHVwTG9nZ2luZyh7XG4gICAgICBzY29wZSxcbiAgICAgIGFjY291bnROYW1lLFxuICAgICAgdGVhbU5hbWUsXG4gICAgICB0ZWFtSWRlbnRpZmllcixcbiAgICAgIHN0YWdlLFxuICAgICAgc2VydmljZU5hbWUsXG4gICAgICB2ZXJzaW9uLFxuICAgICAgZGF0YWRvZ0FwaUtleVBhcmFtZXRlcixcbiAgICAgIGRhdGFkb2dMb2dnaW5nTW9kZSxcbiAgICAgIGRhdGFkb2dTaXRlLFxuICAgICAgY29udGFpbmVyVHlwZSxcbiAgICAgIGFkZGl0aW9uYWxUYWdzLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBlbnN1cmVMb2dnaW5nQW5kTW9uaXRvcmluZ0FyZVJlYWR5QmVmb3JlU2VydmljZVN0YXJ0cyhyaW9GYXJnYXRlU2VydmljZTogUmlvRmFyZ2F0ZVNlcnZpY2UpIHtcbiAgICBlbnN1cmVMb2dnaW5nQW5kTW9uaXRvcmluZ0FyZVJlYWR5QmVmb3JlU2VydmljZVN0YXJ0cyhyaW9GYXJnYXRlU2VydmljZSk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEZhcmdhdGVDb250YWluZXJFbnZpcm9ubWVudFZhcmlhYmxlcyhwcm9wczoge1xuICBzY29wZTogQ29uc3RydWN0O1xuICBzdGFnZTogc3RyaW5nO1xuICBzZXJ2aWNlTmFtZTogc3RyaW5nO1xuICB2ZXJzaW9uOiBzdHJpbmc7XG4gIGFjY291bnROYW1lOiBzdHJpbmc7XG4gIHRlYW1OYW1lOiBzdHJpbmc7XG4gIHRlYW1JZGVudGlmaWVyOiBzdHJpbmc7XG4gIGFkZGl0aW9uYWxUYWdzOiB7IFtrOiBzdHJpbmddOiBzdHJpbmd9IHwgdW5kZWZpbmVkO1xufSk6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0ge1xuXG4gIGNvbnN0IHsgYWNjb3VudDogYWNjb3VudElkLCByZWdpb24gfSA9IFN0YWNrLm9mKHByb3BzLnNjb3BlKTtcblxuICByZXR1cm4ge1xuICAgIC8vIHVuaWZpZWQgdGFnZ2luZywgc2VlIGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL2dldHRpbmdfc3RhcnRlZC90YWdnaW5nL3VuaWZpZWRfc2VydmljZV90YWdnaW5nLz90YWI9ZWNzXG4gICAgRERfRU5WOiBwcm9wcy5zdGFnZSxcbiAgICBERF9TRVJWSUNFOiBwcm9wcy5zZXJ2aWNlTmFtZSxcbiAgICBERF9WRVJTSU9OOiBwcm9wcy52ZXJzaW9uLFxuICAgIC8vIEFQTSBhbmQgdHJhY2luZywgc2VlIGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL3RyYWNpbmcvc2V0dXBfb3ZlcnZpZXcvc2V0dXAvamF2YS8/dGFiPWNvbnRhaW5lcnNcbiAgICBERF9MT0dTX0lOSkVDVElPTjogJ3RydWUnLFxuICAgIEREX1NFUlZJQ0VfTUFQUElORzogZ2V0QXBtU2VydmljZU1hcHBpbmdFbnZpcm9ubWVudFZhcmlhYmxlVmFsdWUocHJvcHMuc2VydmljZU5hbWUpLFxuICAgIEREX1RBR1M6IGdldFRhZ3NFbnZpcm9ubWVudFZhcmlhYmxlVmFsdWUoe1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBjb250YWluZXJUeXBlOiAnc2VydmljZScsXG4gICAgICBhY2NvdW50SWQsXG4gICAgICByZWdpb24sXG4gICAgfSksXG4gICAgRERfVFJBQ0VfU0FNUExFX1JBVEU6ICcxLjAnLCAvLyBzZWUgaHR0cHM6Ly9kZHRyYWNlLnJlYWR0aGVkb2NzLmlvL2VuL3N0YWJsZS9jb25maWd1cmF0aW9uLmh0bWxcbiAgfTtcbn1cblxuLy8gd2UgYWRkIGFsbCBwb3NzaWJsZSBzZXJ2aWNlIG1hcHBpbmdzIGhlcmUgZXZlbiBpZiBub3QgdXNlZCBpbiBhIHBhcnRpY3VsYXIgc2VydmljZSB0byBnZXQgZ2xvYmFsbHkgdW5pcXVlIG5hbWVzXG5mdW5jdGlvbiBnZXRBcG1TZXJ2aWNlTWFwcGluZ0Vudmlyb25tZW50VmFyaWFibGVWYWx1ZShzZXJ2aWNlTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcblxuICBjb25zdCBzZXJ2aWNlTWFwcGluZyA9IHtcbiAgICAnZGF0YWJhc2UnOiBgJHtzZXJ2aWNlTmFtZX0tYXVyb3JhYCxcbiAgICAnamF2YS1hd3Mtc2RrJzogYCR7c2VydmljZU5hbWV9LWF3cy1zZGtgLFxuICAgICdrYWZrYSc6IGAke3NlcnZpY2VOYW1lfS1rYWZrYWAsXG4gICAgJ215c3FsJzogYCR7c2VydmljZU5hbWV9LWF1cm9yYWAsXG4gICAgJ3JlZGlzJzogYCR7c2VydmljZU5hbWV9LXJlZGlzYCxcbiAgfTtcblxuICByZXR1cm4gT2JqZWN0LmVudHJpZXMoc2VydmljZU1hcHBpbmcpXG4gICAgLm1hcCgoW2tleSwgdmFsdWVdKSA9PiBgJHtrZXl9OiR7dmFsdWV9YClcbiAgICAuam9pbignLCcpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmFyZ2F0ZURvY2tlckxhYmVscyhwcm9wczoge3N0YWdlOiBzdHJpbmc7IHNlcnZpY2VOYW1lOiBzdHJpbmc7IHZlcnNpb246IHN0cmluZ30pOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9IHtcbiAgcmV0dXJuIHtcbiAgICAnY29tLmRhdGFkb2docS50YWdzLmVudic6IHByb3BzLnN0YWdlLFxuICAgICdjb20uZGF0YWRvZ2hxLnRhZ3Muc2VydmljZSc6IHByb3BzLnNlcnZpY2VOYW1lLFxuICAgICdjb20uZGF0YWRvZ2hxLnRhZ3MudmVyc2lvbic6IHByb3BzLnZlcnNpb24sXG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhZGREYXRhZG9nU2lkZWNhcihwcm9wczoge1xuICBzY29wZTogQ29uc3RydWN0O1xuICB0YXNrRGVmaW5pdGlvbjogZWNzLlRhc2tEZWZpbml0aW9uO1xuICBhY2NvdW50TmFtZTogc3RyaW5nO1xuICB0ZWFtTmFtZTogc3RyaW5nO1xuICB0ZWFtSWRlbnRpZmllcjogc3RyaW5nO1xuICBzdGFnZTogc3RyaW5nO1xuICBzZXJ2aWNlTmFtZTogc3RyaW5nO1xuICB2ZXJzaW9uOiBzdHJpbmc7XG4gIGRhdGFkb2dBcGlLZXlQYXJhbWV0ZXI6IHNzbS5JU3RyaW5nUGFyYW1ldGVyO1xuICBkYXRhZG9nU2l0ZTogc3RyaW5nO1xuICBkYXRhZG9nTG9nZ2luZ01vZGU6IERhdGFEb2dMb2dnaW5nTW9kZTtcbiAgYXBtR2V0UmVzb3VyY2VzVG9JZ25vcmU6IHN0cmluZ1tdO1xuICBjcHU6IG51bWJlcjtcbiAgbWVtb3J5TGltaXRNaUI6IG51bWJlcjtcbiAgZXNzZW50aWFsOiBib29sZWFuO1xuICBjb250YWluZXJUYWc6IHN0cmluZztcbiAgYWRkaXRpb25hbFRhZ3M6IHsgW2s6IHN0cmluZ106IHN0cmluZ30gfCB1bmRlZmluZWQ7XG59KTogZWNzLkNvbnRhaW5lckRlZmluaXRpb24ge1xuXG4gIGNvbnN0IHsgYWNjb3VudDogYWNjb3VudElkLCByZWdpb24gfSA9IFN0YWNrLm9mKHByb3BzLnNjb3BlKTtcbiAgY29uc3QgZGF0YWRvZ1NpZGVjYXIgPSBwcm9wcy50YXNrRGVmaW5pdGlvbi5hZGRDb250YWluZXIoJ2RhdGFkb2ctYWdlbnQnLCB7XG4gICAgaW1hZ2U6IGVjcy5Db250YWluZXJJbWFnZS5mcm9tUmVnaXN0cnkoYHB1YmxpYy5lY3IuYXdzL2RhdGFkb2cvYWdlbnQ6JHtwcm9wcy5jb250YWluZXJUYWd9YCksXG4gICAgbG9nZ2luZzogc2V0dXBMb2dnaW5nKHsgLi4ucHJvcHMsIGNvbnRhaW5lclR5cGU6ICdkYXRhZG9nLXNpZGVjYXInIH0pLFxuICAgIGNwdTogcHJvcHMuY3B1LFxuICAgIG1lbW9yeUxpbWl0TWlCOiBwcm9wcy5tZW1vcnlMaW1pdE1pQixcbiAgICBlbnZpcm9ubWVudDoge1xuICAgICAgLy8gdW5pZmllZCB0YWdnaW5nLCBzZWUgaHR0cHM6Ly9kb2NzLmRhdGFkb2docS5jb20vZ2V0dGluZ19zdGFydGVkL3RhZ2dpbmcvdW5pZmllZF9zZXJ2aWNlX3RhZ2dpbmcvP3RhYj1lY3NcbiAgICAgIEREX0VOVjogcHJvcHMuc3RhZ2UsXG4gICAgICBERF9TRVJWSUNFOiBwcm9wcy5zZXJ2aWNlTmFtZSxcbiAgICAgIEREX1ZFUlNJT046IHByb3BzLnZlcnNpb24sXG4gICAgICAvLyBBUE0gYW5kIHRyYWNpbmcgc2VlIGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL2FnZW50L2RvY2tlci9hcG0vP3RhYj1saW51eFxuICAgICAgRERfQVBNX0VOQUJMRUQ6ICd0cnVlJyxcbiAgICAgIEREX0FQTV9JR05PUkVfUkVTT1VSQ0VTOiBwcm9wcy5hcG1HZXRSZXNvdXJjZXNUb0lnbm9yZVxuICAgICAgICAubWFwKChhcG1HZXRSZXNvdXJjZVRvSWdub3JlKSA9PiBgR0VUICR7YXBtR2V0UmVzb3VyY2VUb0lnbm9yZX1gKVxuICAgICAgICAuam9pbignLCcpLFxuICAgICAgLy8gZ2VuZXJhbCBzZXR0aW5nc1xuICAgICAgRERfU0lURTogcHJvcHMuZGF0YWRvZ1NpdGUsXG4gICAgICBERF9UQUdTOiBnZXRUYWdzRW52aXJvbm1lbnRWYXJpYWJsZVZhbHVlKHsgLi4ucHJvcHMsIGFjY291bnRJZCwgcmVnaW9uLCBjb250YWluZXJUeXBlOiAnZGF0YWRvZy1zaWRlY2FyJyB9KSxcbiAgICAgIEVDU19GQVJHQVRFOiAndHJ1ZScsXG4gICAgICBERF9DTE9VRF9QUk9WSURFUl9NRVRBREFUQTogJ2F3cycsXG4gICAgICBERF9SRU1PVEVfQ09ORklHVVJBVElPTl9FTkFCTEVEOiAnZmFsc2UnLFxuICAgIH0sXG4gICAgLy8gc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9EYXRhRG9nL2RhdGFkb2ctYWdlbnQvYmxvYi9tYXN0ZXIvRG9ja2VyZmlsZXMvYWdlbnQvYW1kNjQvRG9ja2VyZmlsZSNMMTcxLUwxNzJcbiAgICBoZWFsdGhDaGVjazoge1xuICAgICAgc3RhcnRQZXJpb2Q6IER1cmF0aW9uLm1pbnV0ZXMoMiksXG4gICAgICBpbnRlcnZhbDogRHVyYXRpb24uc2Vjb25kcygzMCksXG4gICAgICB0aW1lb3V0OiBEdXJhdGlvbi5zZWNvbmRzKDUpLFxuICAgICAgcmV0cmllczogMixcbiAgICAgIGNvbW1hbmQ6IFsnQ01ELVNIRUxMJywgJy9wcm9iZS5zaCddLFxuICAgIH0sXG4gICAgc2VjcmV0czoge1xuICAgICAgRERfQVBJX0tFWTogZWNzLlNlY3JldC5mcm9tU3NtUGFyYW1ldGVyKHByb3BzLmRhdGFkb2dBcGlLZXlQYXJhbWV0ZXIpLFxuICAgIH0sXG4gICAgZXNzZW50aWFsOiBwcm9wcy5lc3NlbnRpYWwsXG4gIH0pO1xuXG4gIGRhdGFkb2dTaWRlY2FyLmFkZFBvcnRNYXBwaW5ncyh7XG4gICAgY29udGFpbmVyUG9ydDogODEyNSxcbiAgICBwcm90b2NvbDogZWNzLlByb3RvY29sLlVEUCxcbiAgfSk7XG5cbiAgZGF0YWRvZ1NpZGVjYXIuYWRkUG9ydE1hcHBpbmdzKHtcbiAgICBjb250YWluZXJQb3J0OiA4MTI2LFxuICAgIHByb3RvY29sOiBlY3MuUHJvdG9jb2wuVENQLFxuICB9KTtcblxuICByZXR1cm4gZGF0YWRvZ1NpZGVjYXI7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhZGRGaXJlbGVuc0NvbmZpZ1VwbG9hZEZyb21TM1Blcm1pc3Npb25zKHByb3BzOiB7XG4gIHRhc2tEZWZpbml0aW9uOiBlY3MuVGFza0RlZmluaXRpb247XG4gIGZpcmVsZW5zQ29uZmlnQnVja2V0QXJuOiBzdHJpbmc7XG59KSB7XG4gIHByb3BzLnRhc2tEZWZpbml0aW9uLmFkZFRvVGFza1JvbGVQb2xpY3kobmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgIHJlc291cmNlczogW3Byb3BzLmZpcmVsZW5zQ29uZmlnQnVja2V0QXJuLCBgJHtwcm9wcy5maXJlbGVuc0NvbmZpZ0J1Y2tldEFybn0vKmBdLFxuICAgIGFjdGlvbnM6IFsnczM6R2V0KiddLFxuICAgIGVmZmVjdDogaWFtLkVmZmVjdC5BTExPVyxcbiAgfSkpO1xufVxuXG5mdW5jdGlvbiBnZXRUYWdzRW52aXJvbm1lbnRWYXJpYWJsZVZhbHVlKHByb3BzOiB7XG4gIGFjY291bnRJZDogc3RyaW5nO1xuICBhY2NvdW50TmFtZTogc3RyaW5nO1xuICByZWdpb246IHN0cmluZztcbiAgdGVhbU5hbWU6IHN0cmluZztcbiAgdGVhbUlkZW50aWZpZXI6IHN0cmluZztcbiAgc3RhZ2U6IHN0cmluZztcbiAgc2VydmljZU5hbWU6IHN0cmluZztcbiAgdmVyc2lvbjogc3RyaW5nO1xuICBjb250YWluZXJUeXBlOiAnc2VydmljZScgfCAnZGF0YWRvZy1zaWRlY2FyJyB8ICdmbHVlbnQtYml0JztcbiAgYWRkaXRpb25hbFRhZ3M6IHsgW2s6IHN0cmluZ106IHN0cmluZ30gfCB1bmRlZmluZWQ7XG59KTogc3RyaW5nIHtcblxuICBjb25zdCBzZXBhcmF0b3IgPSBkZXRlcm1pbmVTZXBhcmF0b3IocHJvcHMuY29udGFpbmVyVHlwZSk7XG5cbiAgY29uc3QgdGFncyA9IHtcbiAgICAvLyB1bmlmaWVkIHRhZ2dpbmdcbiAgICAvLyBvdmVycmlkZGVuIGJ5IGRlZGljYXRlZCBzZXR0aW5ncyAoZW52aXJvbm1lbnQgdmFyaWFibGVzL3RhZ3MpXG4gICAgLy8gZHVwbGljYXRlZCBoZXJlIHRvIGVuc3VyZSB0aGV5IGFyZSB1c2VkIChhbmQgc29tZXRpbWVzLCBub3QgYWxsIHRocmVlIHZhbHVlcyBhcmUgc3VwcG9ydGVkKVxuICAgIGVudjogcHJvcHMuc3RhZ2UsXG4gICAgc2VydmljZTogcHJvcHMuc2VydmljZU5hbWUsXG4gICAgdmVyc2lvbjogcHJvcHMudmVyc2lvbixcbiAgICAvLyBhY2NvdW50L3RlYW0gc3BlY2lmaWMgcGFydHNcbiAgICBhY2NvdW50X2lkOiBwcm9wcy5hY2NvdW50SWQsXG4gICAgYWNjb3VudF9uYW1lOiBwcm9wcy5hY2NvdW50TmFtZSxcbiAgICByZWdpb246IHByb3BzLnJlZ2lvbixcbiAgICB0ZWFtOiBwcm9wcy50ZWFtTmFtZSxcbiAgICB0ZWFtX2lkZW50aWZpZXI6IHByb3BzLnRlYW1JZGVudGlmaWVyLFxuICB9O1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMoeyAuLi50YWdzLCAuLi5wcm9wcy5hZGRpdGlvbmFsVGFncyB9KVxuICAgIC5tYXAoKFtrZXksIHZhbHVlXSkgPT4gYCR7a2V5fToke3ZhbHVlfWApXG4gICAgLmpvaW4oc2VwYXJhdG9yKTtcbn1cblxuZnVuY3Rpb24gZGV0ZXJtaW5lU2VwYXJhdG9yKGNvbnRhaW5lclR5cGU6ICdzZXJ2aWNlJyB8ICdkYXRhZG9nLXNpZGVjYXInIHwgJ2ZsdWVudC1iaXQnKSB7XG4gIGlmIChjb250YWluZXJUeXBlID09PSAnZGF0YWRvZy1zaWRlY2FyJykge1xuICAgIHJldHVybiAnICc7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuICcsJztcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gYWRkRmlyZUxlbnNMb2dSb3V0ZXIocHJvcHM6IHtcbiAgdGFza0RlZmluaXRpb246IGVjcy5UYXNrRGVmaW5pdGlvbjtcbiAgY3B1OiBudW1iZXI7XG4gIG1lbW9yeUxpbWl0TWlCOiBudW1iZXI7XG4gIGZpcmVsZW5zQ29uZmlnQnVja2V0QXJuOiBzdHJpbmc7XG4gIGZpcmVsZW5zQ29uZmlnRmlsZVBhdGg6IHN0cmluZztcbn0pOiBlY3MuQ29udGFpbmVyRGVmaW5pdGlvbiB7XG4gIGNvbnN0IGZsdWVudEJpdFMzQ29uZmlnRmlsZSA9IHByb3BzLmZpcmVsZW5zQ29uZmlnQnVja2V0QXJuICsgcHJvcHMuZmlyZWxlbnNDb25maWdGaWxlUGF0aDtcbiAgcmV0dXJuIHByb3BzLnRhc2tEZWZpbml0aW9uLmFkZEZpcmVsZW5zTG9nUm91dGVyKCdmaXJlbGVucy1sb2ctcm91dGVyJywge1xuICAgIGltYWdlOiBlY3MuQ29udGFpbmVySW1hZ2UuZnJvbVJlZ2lzdHJ5KCdwdWJsaWMuZWNyLmF3cy9hd3Mtb2JzZXJ2YWJpbGl0eS9hd3MtZm9yLWZsdWVudC1iaXQ6aW5pdC1sYXRlc3QnKSxcbiAgICBmaXJlbGVuc0NvbmZpZzoge1xuICAgICAgdHlwZTogZWNzLkZpcmVsZW5zTG9nUm91dGVyVHlwZS5GTFVFTlRCSVQsXG4gICAgICBvcHRpb25zOiB7XG4gICAgICAgIGVuYWJsZUVDU0xvZ01ldGFkYXRhOiB0cnVlLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGNwdTogcHJvcHMuY3B1LFxuICAgIG1lbW9yeUxpbWl0TWlCOiBwcm9wcy5tZW1vcnlMaW1pdE1pQixcbiAgICBlbnZpcm9ubWVudDoge1xuICAgICAgYXdzX2ZsdWVudF9iaXRfaW5pdF9zM18xOiBmbHVlbnRCaXRTM0NvbmZpZ0ZpbGUsXG4gICAgfSxcbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXR1cExvZ2dpbmcocHJvcHM6IHtcbiAgc2NvcGU6IENvbnN0cnVjdDtcbiAgYWNjb3VudE5hbWU6IHN0cmluZztcbiAgdGVhbU5hbWU6IHN0cmluZztcbiAgdGVhbUlkZW50aWZpZXI6IHN0cmluZztcbiAgc3RhZ2U6IHN0cmluZztcbiAgc2VydmljZU5hbWU6IHN0cmluZztcbiAgdmVyc2lvbjogc3RyaW5nO1xuICBkYXRhZG9nQXBpS2V5UGFyYW1ldGVyOiBzc20uSVN0cmluZ1BhcmFtZXRlcjtcbiAgZGF0YWRvZ0xvZ2dpbmdNb2RlOiBEYXRhRG9nTG9nZ2luZ01vZGU7XG4gIGRhdGFkb2dTaXRlOiBzdHJpbmc7XG4gIGNvbnRhaW5lclR5cGU6ICdzZXJ2aWNlJyB8ICdkYXRhZG9nLXNpZGVjYXInO1xuICBhZGRpdGlvbmFsVGFnczogeyBbazogc3RyaW5nXTogc3RyaW5nfSB8IHVuZGVmaW5lZDtcbn0pOiBlY3MuTG9nRHJpdmVyIHtcblxuICBsZXQgbG9nR3JvdXBOYW1lOiBzdHJpbmc7XG4gIGxldCBsb2dHcm91cElkOiBzdHJpbmc7XG4gIGxldCBjb250YWluZXJUeXBlQ2FtZWxDYXNlO1xuXG4gIHN3aXRjaCAocHJvcHMuY29udGFpbmVyVHlwZSkge1xuXG4gICAgY2FzZSAnc2VydmljZSc6XG4gICAgICBsb2dHcm91cElkID0gJ0xvZ0dyb3VwRm9yU2VydmljZSc7XG4gICAgICBsb2dHcm91cE5hbWUgPSBwcm9wcy5zZXJ2aWNlTmFtZTtcbiAgICAgIGNvbnRhaW5lclR5cGVDYW1lbENhc2UgPSAnU2VydmljZSc7XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ2RhdGFkb2ctc2lkZWNhcic6XG4gICAgICBsb2dHcm91cElkID0gJ0xvZ0dyb3VwRm9yRGF0YWRvZ1NpZGVjYXInO1xuICAgICAgbG9nR3JvdXBOYW1lID0gYCR7cHJvcHMuc2VydmljZU5hbWV9LSR7cHJvcHMuY29udGFpbmVyVHlwZX1gO1xuICAgICAgY29udGFpbmVyVHlwZUNhbWVsQ2FzZSA9ICdEYXRhZG9nU2lkZWNhcic7XG4gICAgICBicmVhaztcbiAgfVxuXG4gIGNvbnN0IHsgYWNjb3VudDogYWNjb3VudElkLCByZWdpb24gfSA9IFN0YWNrLm9mKHByb3BzLnNjb3BlKTtcblxuICBzd2l0Y2ggKHByb3BzLmRhdGFkb2dMb2dnaW5nTW9kZSkge1xuXG4gICAgY2FzZSBEYXRhRG9nTG9nZ2luZ01vZGUuQVdTX0ZJUkVfTEVOUzpcbiAgICAgIC8vIFRPRE8gY2FuIHdlIHVzZSBgc2VjcmV0T3B0aW9uc2AgaGVyZSBhcyB3ZWxsLCBlLmcuIGFzIGluIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3Mtc2FtcGxlcy9hbWF6b24tZWNzLWZpcmVsZW5zLWV4YW1wbGVzL2Jsb2IvbWFpbmxpbmUvZXhhbXBsZXMvZmx1ZW50LWJpdC9kYXRhZG9nL3Rhc2stZGVmaW5pdGlvbi5qc29uI0wzMy1MMzZcbiAgICAgIC8vIFByb2JhYmx5IG5vdCwgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9pc3N1ZXMvODE3NFxuICAgICAgcmV0dXJuIGVjcy5Mb2dEcml2ZXJzLmZpcmVsZW5zKHtcbiAgICAgICAgLy8gc2VlIGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL2ludGVncmF0aW9ucy9mbHVlbnRiaXQvI2NvbmZpZ3VyYXRpb24tcGFyYW1ldGVyc1xuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgTmFtZTogJ2RhdGFkb2cnLFxuICAgICAgICAgIE1hdGNoOiAnKicsXG4gICAgICAgICAgSG9zdDogYGh0dHAtaW50YWtlLmxvZ3MuJHtwcm9wcy5kYXRhZG9nU2l0ZX1gLFxuICAgICAgICAgIFRMUzogJ29uJyxcbiAgICAgICAgICBhcGlrZXk6IHByb3BzLmRhdGFkb2dBcGlLZXlQYXJhbWV0ZXIuc3RyaW5nVmFsdWUsXG4gICAgICAgICAgY29tcHJlc3M6ICdnemlwJyxcbiAgICAgICAgICBkZF9zZXJ2aWNlOiBsb2dHcm91cE5hbWUsXG4gICAgICAgICAgZGRfc291cmNlOiAncmlvLWZhcmdhdGUnLFxuICAgICAgICAgIGRkX21lc3NhZ2Vfa2V5OiAnbG9nJyxcbiAgICAgICAgICBkZF90YWdzOiBnZXRUYWdzRW52aXJvbm1lbnRWYXJpYWJsZVZhbHVlKHsgLi4ucHJvcHMsIGFjY291bnRJZCwgcmVnaW9uLCBjb250YWluZXJUeXBlOiAnZmx1ZW50LWJpdCcgfSksXG4gICAgICAgICAgcHJvdmlkZXI6ICdlY3MnLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICBjYXNlIERhdGFEb2dMb2dnaW5nTW9kZS5GT1JXQVJERVJfTEFNQkRBOlxuICAgIGNhc2UgRGF0YURvZ0xvZ2dpbmdNb2RlLkRBVEFET0dfRk9SV0FSREVSX0xBTUJEQTpcbiAgICAgIGNvbnN0IGxvZ0dyb3VwRm9yRm9yd2FyZGluZ0xhbWJkYSA9IG5ldyBsb2dzLkxvZ0dyb3VwKHByb3BzLnNjb3BlLCBsb2dHcm91cElkLCB7XG4gICAgICAgIGxvZ0dyb3VwTmFtZSxcbiAgICAgICAgcmV0ZW50aW9uOiBsb2dzLlJldGVudGlvbkRheXMuT05FX1dFRUssXG4gICAgICB9KTtcbiAgICAgIFRhZ3Mub2YobG9nR3JvdXBGb3JGb3J3YXJkaW5nTGFtYmRhKS5hZGQoJ3NlcnZpY2UnLCBwcm9wcy5zZXJ2aWNlTmFtZSk7XG4gICAgICBjb25zdCBsb2dGb3J3YXJkZXJMYW1iZGFBcm5PdXRwdXROYW1lID0gcHJvcHMuZGF0YWRvZ0xvZ2dpbmdNb2RlID09PSBEYXRhRG9nTG9nZ2luZ01vZGUuREFUQURPR19GT1JXQVJERVJfTEFNQkRBID8gJ2RhdGFkb2ctZm9yd2FyZGVyLUZvcndhcmRlckFybicgOiAnY3VzdG9tLXJlc291cmNlLWRhdGFkb2ctbG9nZm9yd2FyZGVyLWZ1bmN0aW9uLWFybic7XG4gICAgICBjb25zdCBsb2dGb3J3YXJkZXJMYW1iZGFBcm4gPSBGbi5pbXBvcnRWYWx1ZShsb2dGb3J3YXJkZXJMYW1iZGFBcm5PdXRwdXROYW1lKTtcbiAgICAgIGNvbnN0IGNmblBlcm1pc3Npb24gPSBuZXcgbGFtYmRhLkNmblBlcm1pc3Npb24ocHJvcHMuc2NvcGUsIGBMb2dGb3J3YXJkZXJQZXJtaXNzaW9uJHtjb250YWluZXJUeXBlQ2FtZWxDYXNlfWAsIHtcbiAgICAgICAgYWN0aW9uOiAnbGFtYmRhOkludm9rZUZ1bmN0aW9uJyxcbiAgICAgICAgZnVuY3Rpb25OYW1lOiBsb2dGb3J3YXJkZXJMYW1iZGFBcm4sXG4gICAgICAgIHByaW5jaXBhbDogYGxvZ3MuJHtyZWdpb259LmFtYXpvbmF3cy5jb21gLFxuICAgICAgICBzb3VyY2VBcm46IGxvZ0dyb3VwRm9yRm9yd2FyZGluZ0xhbWJkYS5sb2dHcm91cEFybixcbiAgICAgIH0pO1xuICAgICAgY29uc3QgY2ZuU3Vic2NyaXB0aW9uRmlsdGVyID0gbmV3IGxvZ3MuQ2ZuU3Vic2NyaXB0aW9uRmlsdGVyKFxuICAgICAgICBwcm9wcy5zY29wZSxcbiAgICAgICAgYExvZ0ZvcndhcmRlclN1YnNjcmlwdGlvbkZpbHRlciR7Y29udGFpbmVyVHlwZUNhbWVsQ2FzZX1gLFxuICAgICAgICB7XG4gICAgICAgICAgZGVzdGluYXRpb25Bcm46IGxvZ0ZvcndhcmRlckxhbWJkYUFybixcbiAgICAgICAgICBmaWx0ZXJQYXR0ZXJuOiAnJyxcbiAgICAgICAgICBsb2dHcm91cE5hbWU6IGxvZ0dyb3VwRm9yRm9yd2FyZGluZ0xhbWJkYS5sb2dHcm91cE5hbWUsXG4gICAgICAgIH0sXG4gICAgICApO1xuICAgICAgY2ZuU3Vic2NyaXB0aW9uRmlsdGVyLmFkZERlcGVuZGVuY3koY2ZuUGVybWlzc2lvbik7XG4gICAgICByZXR1cm4gZWNzLkxvZ0RyaXZlcnMuYXdzTG9ncyh7XG4gICAgICAgIHN0cmVhbVByZWZpeDogcHJvcHMuY29udGFpbmVyVHlwZSxcbiAgICAgICAgbG9nR3JvdXA6IGxvZ0dyb3VwRm9yRm9yd2FyZGluZ0xhbWJkYSxcbiAgICAgICAgbW9kZTogZWNzLkF3c0xvZ0RyaXZlck1vZGUuTk9OX0JMT0NLSU5HLFxuICAgICAgICBtYXhCdWZmZXJTaXplOiBTaXplLm1lYmlieXRlcygyNSksXG4gICAgICB9KTtcblxuICAgIGNhc2UgRGF0YURvZ0xvZ2dpbmdNb2RlLk5PTkU6XG4gICAgICBjb25zdCBsb2dHcm91cEluQ2xvdWR3YXRjaE9ubHkgPSBuZXcgbG9ncy5Mb2dHcm91cChwcm9wcy5zY29wZSwgbG9nR3JvdXBJZCwge1xuICAgICAgICByZXRlbnRpb246IGxvZ3MuUmV0ZW50aW9uRGF5cy5PTkVfV0VFSyxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIGVjcy5Mb2dEcml2ZXJzLmF3c0xvZ3Moe1xuICAgICAgICBzdHJlYW1QcmVmaXg6IHByb3BzLmNvbnRhaW5lclR5cGUsXG4gICAgICAgIGxvZ0dyb3VwOiBsb2dHcm91cEluQ2xvdWR3YXRjaE9ubHksXG4gICAgICAgIG1vZGU6IGVjcy5Bd3NMb2dEcml2ZXJNb2RlLk5PTl9CTE9DS0lORyxcbiAgICAgICAgbWF4QnVmZmVyU2l6ZTogU2l6ZS5tZWJpYnl0ZXMoMjUpLFxuICAgICAgfSk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGVuc3VyZUxvZ2dpbmdBbmRNb25pdG9yaW5nQXJlUmVhZHlCZWZvcmVTZXJ2aWNlU3RhcnRzKHJpb0ZhcmdhdGVTZXJ2aWNlOiBSaW9GYXJnYXRlU2VydmljZSk6IHZvaWQge1xuXG4gIHJpb0ZhcmdhdGVTZXJ2aWNlLnNlcnZpY2VDb250YWluZXJEZWZpbml0aW9uLmFkZENvbnRhaW5lckRlcGVuZGVuY2llcyh7XG4gICAgY29udGFpbmVyOiByaW9GYXJnYXRlU2VydmljZS5kYXRhZG9nU2lkZUNhckNvbnRhaW5lckRlZmluaXRpb24sXG4gICAgY29uZGl0aW9uOiBlY3MuQ29udGFpbmVyRGVwZW5kZW5jeUNvbmRpdGlvbi5IRUFMVEhZLFxuICB9KTtcblxuICBpZiAocmlvRmFyZ2F0ZVNlcnZpY2UubG9nUm91dGVyQ29udGFpbmVyRGVmaW5pdGlvbikge1xuICAgIHJpb0ZhcmdhdGVTZXJ2aWNlLnNlcnZpY2VDb250YWluZXJEZWZpbml0aW9uLmFkZENvbnRhaW5lckRlcGVuZGVuY2llcyh7XG4gICAgICBjb250YWluZXI6IHJpb0ZhcmdhdGVTZXJ2aWNlLmxvZ1JvdXRlckNvbnRhaW5lckRlZmluaXRpb24sXG4gICAgICBjb25kaXRpb246IGVjcy5Db250YWluZXJEZXBlbmRlbmN5Q29uZGl0aW9uLlNUQVJULFxuICAgIH0pO1xuXG4gICAgaWYgKHJpb0ZhcmdhdGVTZXJ2aWNlLmRhdGFkb2dTaWRlQ2FyQ29udGFpbmVyRGVmaW5pdGlvbi5sb2dEcml2ZXJDb25maWc/LmxvZ0RyaXZlciA9PT0gJ2F3c2ZpcmVsZW5zJykge1xuICAgICAgcmlvRmFyZ2F0ZVNlcnZpY2UuZGF0YWRvZ1NpZGVDYXJDb250YWluZXJEZWZpbml0aW9uLmFkZENvbnRhaW5lckRlcGVuZGVuY2llcyh7XG4gICAgICAgIGNvbnRhaW5lcjogcmlvRmFyZ2F0ZVNlcnZpY2UubG9nUm91dGVyQ29udGFpbmVyRGVmaW5pdGlvbixcbiAgICAgICAgY29uZGl0aW9uOiBlY3MuQ29udGFpbmVyRGVwZW5kZW5jeUNvbmRpdGlvbi5TVEFSVCxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIl19
|