@aws-cdk/cloud-assembly-schema
Version:
Schema for the protocol between CDK framework and CDK CLI
102 lines • 22.9 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.LoadBalancerListenerProtocol = exports.LoadBalancerType = exports.ContextProvider = void 0;
/**
* Identifier for the context provider
*/
var ContextProvider;
(function (ContextProvider) {
/**
* AMI provider
*/
ContextProvider["AMI_PROVIDER"] = "ami";
/**
* AZ provider
*/
ContextProvider["AVAILABILITY_ZONE_PROVIDER"] = "availability-zones";
/**
* Route53 Hosted Zone provider
*/
ContextProvider["HOSTED_ZONE_PROVIDER"] = "hosted-zone";
/**
* SSM Parameter Provider
*/
ContextProvider["SSM_PARAMETER_PROVIDER"] = "ssm";
/**
* VPC Provider
*/
ContextProvider["VPC_PROVIDER"] = "vpc-provider";
/**
* VPC Endpoint Service AZ Provider
*/
ContextProvider["ENDPOINT_SERVICE_AVAILABILITY_ZONE_PROVIDER"] = "endpoint-service-availability-zones";
/**
* Load balancer provider
*/
ContextProvider["LOAD_BALANCER_PROVIDER"] = "load-balancer";
/**
* Load balancer listener provider
*/
ContextProvider["LOAD_BALANCER_LISTENER_PROVIDER"] = "load-balancer-listener";
/**
* Security group provider
*/
ContextProvider["SECURITY_GROUP_PROVIDER"] = "security-group";
/**
* KMS Key Provider
*/
ContextProvider["KEY_PROVIDER"] = "key-provider";
/**
* CCAPI Provider
*/
ContextProvider["CC_API_PROVIDER"] = "cc-api-provider";
/**
* A plugin provider (the actual plugin name will be in the properties)
*/
ContextProvider["PLUGIN"] = "plugin";
})(ContextProvider || (exports.ContextProvider = ContextProvider = {}));
/**
* Type of load balancer
*/
var LoadBalancerType;
(function (LoadBalancerType) {
/**
* Network load balancer
*/
LoadBalancerType["NETWORK"] = "network";
/**
* Application load balancer
*/
LoadBalancerType["APPLICATION"] = "application";
})(LoadBalancerType || (exports.LoadBalancerType = LoadBalancerType = {}));
/**
* The protocol for connections from clients to the load balancer
*/
var LoadBalancerListenerProtocol;
(function (LoadBalancerListenerProtocol) {
/**
* HTTP protocol
*/
LoadBalancerListenerProtocol["HTTP"] = "HTTP";
/**
* HTTPS protocol
*/
LoadBalancerListenerProtocol["HTTPS"] = "HTTPS";
/**
* TCP protocol
*/
LoadBalancerListenerProtocol["TCP"] = "TCP";
/**
* TLS protocol
*/
LoadBalancerListenerProtocol["TLS"] = "TLS";
/**
* UDP protocol
* */
LoadBalancerListenerProtocol["UDP"] = "UDP";
/**
* TCP and UDP protocol
* */
LoadBalancerListenerProtocol["TCP_UDP"] = "TCP_UDP";
})(LoadBalancerListenerProtocol || (exports.LoadBalancerListenerProtocol = LoadBalancerListenerProtocol = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1xdWVyaWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY29udGV4dC1xdWVyaWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBOztHQUVHO0FBQ0gsSUFBWSxlQTREWDtBQTVERCxXQUFZLGVBQWU7SUFDekI7O09BRUc7SUFDSCx1Q0FBb0IsQ0FBQTtJQUVwQjs7T0FFRztJQUNILG9FQUFpRCxDQUFBO0lBRWpEOztPQUVHO0lBQ0gsdURBQW9DLENBQUE7SUFFcEM7O09BRUc7SUFDSCxpREFBOEIsQ0FBQTtJQUU5Qjs7T0FFRztJQUNILGdEQUE2QixDQUFBO0lBRTdCOztPQUVHO0lBQ0gsc0dBQW1GLENBQUE7SUFFbkY7O09BRUc7SUFDSCwyREFBd0MsQ0FBQTtJQUV4Qzs7T0FFRztJQUNILDZFQUEwRCxDQUFBO0lBRTFEOztPQUVHO0lBQ0gsNkRBQTBDLENBQUE7SUFFMUM7O09BRUc7SUFDSCxnREFBNkIsQ0FBQTtJQUU3Qjs7T0FFRztJQUNILHNEQUFtQyxDQUFBO0lBRW5DOztPQUVHO0lBQ0gsb0NBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQTVEVyxlQUFlLCtCQUFmLGVBQWUsUUE0RDFCO0FBMEpEOztHQUVHO0FBQ0gsSUFBWSxnQkFVWDtBQVZELFdBQVksZ0JBQWdCO0lBQzFCOztPQUVHO0lBQ0gsdUNBQW1CLENBQUE7SUFFbkI7O09BRUc7SUFDSCwrQ0FBMkIsQ0FBQTtBQUM3QixDQUFDLEVBVlcsZ0JBQWdCLGdDQUFoQixnQkFBZ0IsUUFVM0I7QUE4QkQ7O0dBRUc7QUFDSCxJQUFZLDRCQThCWDtBQTlCRCxXQUFZLDRCQUE0QjtJQUN0Qzs7T0FFRztJQUNILDZDQUFhLENBQUE7SUFFYjs7T0FFRztJQUNILCtDQUFlLENBQUE7SUFFZjs7T0FFRztJQUNILDJDQUFXLENBQUE7SUFFWDs7T0FFRztJQUNILDJDQUFXLENBQUE7SUFFWDs7U0FFSztJQUNMLDJDQUFXLENBQUE7SUFFWDs7U0FFSztJQUNMLG1EQUFtQixDQUFBO0FBQ3JCLENBQUMsRUE5QlcsNEJBQTRCLDRDQUE1Qiw0QkFBNEIsUUE4QnZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBUYWcgfSBmcm9tICcuL21ldGFkYXRhLXNjaGVtYSc7XG5cbi8qKlxuICogSWRlbnRpZmllciBmb3IgdGhlIGNvbnRleHQgcHJvdmlkZXJcbiAqL1xuZXhwb3J0IGVudW0gQ29udGV4dFByb3ZpZGVyIHtcbiAgLyoqXG4gICAqIEFNSSBwcm92aWRlclxuICAgKi9cbiAgQU1JX1BST1ZJREVSID0gJ2FtaScsXG5cbiAgLyoqXG4gICAqIEFaIHByb3ZpZGVyXG4gICAqL1xuICBBVkFJTEFCSUxJVFlfWk9ORV9QUk9WSURFUiA9ICdhdmFpbGFiaWxpdHktem9uZXMnLFxuXG4gIC8qKlxuICAgKiBSb3V0ZTUzIEhvc3RlZCBab25lIHByb3ZpZGVyXG4gICAqL1xuICBIT1NURURfWk9ORV9QUk9WSURFUiA9ICdob3N0ZWQtem9uZScsXG5cbiAgLyoqXG4gICAqIFNTTSBQYXJhbWV0ZXIgUHJvdmlkZXJcbiAgICovXG4gIFNTTV9QQVJBTUVURVJfUFJPVklERVIgPSAnc3NtJyxcblxuICAvKipcbiAgICogVlBDIFByb3ZpZGVyXG4gICAqL1xuICBWUENfUFJPVklERVIgPSAndnBjLXByb3ZpZGVyJyxcblxuICAvKipcbiAgICogVlBDIEVuZHBvaW50IFNlcnZpY2UgQVogUHJvdmlkZXJcbiAgICovXG4gIEVORFBPSU5UX1NFUlZJQ0VfQVZBSUxBQklMSVRZX1pPTkVfUFJPVklERVIgPSAnZW5kcG9pbnQtc2VydmljZS1hdmFpbGFiaWxpdHktem9uZXMnLFxuXG4gIC8qKlxuICAgKiBMb2FkIGJhbGFuY2VyIHByb3ZpZGVyXG4gICAqL1xuICBMT0FEX0JBTEFOQ0VSX1BST1ZJREVSID0gJ2xvYWQtYmFsYW5jZXInLFxuXG4gIC8qKlxuICAgKiBMb2FkIGJhbGFuY2VyIGxpc3RlbmVyIHByb3ZpZGVyXG4gICAqL1xuICBMT0FEX0JBTEFOQ0VSX0xJU1RFTkVSX1BST1ZJREVSID0gJ2xvYWQtYmFsYW5jZXItbGlzdGVuZXInLFxuXG4gIC8qKlxuICAgKiBTZWN1cml0eSBncm91cCBwcm92aWRlclxuICAgKi9cbiAgU0VDVVJJVFlfR1JPVVBfUFJPVklERVIgPSAnc2VjdXJpdHktZ3JvdXAnLFxuXG4gIC8qKlxuICAgKiBLTVMgS2V5IFByb3ZpZGVyXG4gICAqL1xuICBLRVlfUFJPVklERVIgPSAna2V5LXByb3ZpZGVyJyxcblxuICAvKipcbiAgICogQ0NBUEkgUHJvdmlkZXJcbiAgICovXG4gIENDX0FQSV9QUk9WSURFUiA9ICdjYy1hcGktcHJvdmlkZXInLFxuXG4gIC8qKlxuICAgKiBBIHBsdWdpbiBwcm92aWRlciAodGhlIGFjdHVhbCBwbHVnaW4gbmFtZSB3aWxsIGJlIGluIHRoZSBwcm9wZXJ0aWVzKVxuICAgKi9cbiAgUExVR0lOID0gJ3BsdWdpbicsXG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgY29udGV4dCBsb29rdXAgcm9sZXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGV4dExvb2t1cFJvbGVPcHRpb25zIHtcbiAgLyoqXG4gICAqIFF1ZXJ5IGFjY291bnRcbiAgICovXG4gIHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblxuICAvKipcbiAgICogUXVlcnkgcmVnaW9uXG4gICAqL1xuICByZWFkb25seSByZWdpb246IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgcm9sZSB0aGF0IHNob3VsZCBiZSB1c2VkIHRvIGxvb2sgdXAgdGhlIG1pc3NpbmcgdmFsdWVzXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgbG9va3VwUm9sZUFybj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEV4dGVybmFsSWQgdGhhdCBuZWVkcyB0byBiZSBzdXBwbGllZCB3aGlsZSBhc3N1bWluZyB0aGlzIHJvbGVcbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyBFeHRlcm5hbElkIHdpbGwgYmUgc3VwcGxpZWRcbiAgICovXG4gIHJlYWRvbmx5IGxvb2t1cFJvbGVFeHRlcm5hbElkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBZGRpdGlvbmFsIG9wdGlvbnMgdG8gcGFzcyB0byBTVFMgd2hlbiBhc3N1bWluZyB0aGUgbG9va3VwIHJvbGUuXG4gICAqXG4gICAqIC0gYFJvbGVBcm5gIHNob3VsZCBub3QgYmUgdXNlZC4gVXNlIHRoZSBkZWRpY2F0ZWQgYGxvb2t1cFJvbGVBcm5gIHByb3BlcnR5IGluc3RlYWQuXG4gICAqIC0gYEV4dGVybmFsSWRgIHNob3VsZCBub3QgYmUgdXNlZC4gVXNlIHRoZSBkZWRpY2F0ZWQgYGxvb2t1cFJvbGVFeHRlcm5hbElkYCBpbnN0ZWFkLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BV1NKYXZhU2NyaXB0U0RLL2xhdGVzdC9BV1MvU1RTLmh0bWwjYXNzdW1lUm9sZS1wcm9wZXJ0eVxuICAgKiBAZGVmYXVsdCAtIE5vIGFkZGl0aW9uYWwgb3B0aW9ucy5cbiAgICovXG4gIHJlYWRvbmx5IGFzc3VtZVJvbGVBZGRpdGlvbmFsT3B0aW9ucz86IHsgW2tleTogc3RyaW5nXTogYW55IH07XG59XG5cbi8qKlxuICogUXVlcnkgdG8gQU1JIGNvbnRleHQgcHJvdmlkZXJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBbWlDb250ZXh0UXVlcnkgZXh0ZW5kcyBDb250ZXh0TG9va3VwUm9sZU9wdGlvbnMge1xuICAvKipcbiAgICogT3duZXJzIHRvIERlc2NyaWJlSW1hZ2VzIGNhbGxcbiAgICpcbiAgICogQGRlZmF1bHQgLSBBbGwgb3duZXJzXG4gICAqL1xuICByZWFkb25seSBvd25lcnM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogRmlsdGVycyB0byBEZXNjcmliZUltYWdlcyBjYWxsXG4gICAqL1xuICByZWFkb25seSBmaWx0ZXJzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZ1tdIH07XG59XG5cbi8qKlxuICogUXVlcnkgdG8gYXZhaWxhYmlsaXR5IHpvbmUgY29udGV4dCBwcm92aWRlclxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF2YWlsYWJpbGl0eVpvbmVzQ29udGV4dFF1ZXJ5IGV4dGVuZHMgQ29udGV4dExvb2t1cFJvbGVPcHRpb25zIHtcbn1cblxuLyoqXG4gKiBRdWVyeSB0byBob3N0ZWQgem9uZSBjb250ZXh0IHByb3ZpZGVyXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSG9zdGVkWm9uZUNvbnRleHRRdWVyeSBleHRlbmRzIENvbnRleHRMb29rdXBSb2xlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgZG9tYWluIG5hbWUgZS5nLiBleGFtcGxlLmNvbSB0byBsb29rdXBcbiAgICovXG4gIHJlYWRvbmx5IGRvbWFpbk5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVHJ1ZSBpZiB0aGUgem9uZSB5b3Ugd2FudCB0byBmaW5kIGlzIGEgcHJpdmF0ZSBob3N0ZWQgem9uZVxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJpdmF0ZVpvbmU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgVlBDIElEIHRvIHRoYXQgdGhlIHByaXZhdGUgem9uZSBtdXN0IGJlIGFzc29jaWF0ZWQgd2l0aFxuICAgKlxuICAgKiBJZiB5b3UgcHJvdmlkZSBWUEMgSUQgYW5kIHByaXZhdGVab25lIGlzIGZhbHNlLCB0aGlzIHdpbGwgcmV0dXJuIG5vIHJlc3VsdHNcbiAgICogYW5kIHJhaXNlIGFuIGVycm9yLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIFJlcXVpcmVkIGlmIHByaXZhdGVab25lPXRydWVcbiAgICovXG4gIHJlYWRvbmx5IHZwY0lkPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFF1ZXJ5IHRvIFNTTSBQYXJhbWV0ZXIgQ29udGV4dCBQcm92aWRlclxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNTTVBhcmFtZXRlckNvbnRleHRRdWVyeSBleHRlbmRzIENvbnRleHRMb29rdXBSb2xlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBQYXJhbWV0ZXIgbmFtZSB0byBxdWVyeVxuICAgKi9cbiAgcmVhZG9ubHkgcGFyYW1ldGVyTmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFF1ZXJ5IGlucHV0IGZvciBsb29raW5nIHVwIGEgVlBDXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVnBjQ29udGV4dFF1ZXJ5IGV4dGVuZHMgQ29udGV4dExvb2t1cFJvbGVPcHRpb25zIHtcbiAgLyoqXG4gICAqIEZpbHRlcnMgdG8gYXBwbHkgdG8gdGhlIFZQQ1xuICAgKlxuICAgKiBGaWx0ZXIgcGFyYW1ldGVycyBhcmUgdGhlIHNhbWUgYXMgcGFzc2VkIHRvIERlc2NyaWJlVnBjcy5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQVdTRUMyL2xhdGVzdC9BUElSZWZlcmVuY2UvQVBJX0Rlc2NyaWJlVnBjcy5odG1sXG4gICAqL1xuICByZWFkb25seSBmaWx0ZXI6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gcG9wdWxhdGUgdGhlIHN1Ym5ldEdyb3VwcyBmaWVsZCBvZiB0aGUgYFZwY0NvbnRleHRSZXNwb25zZWAsXG4gICAqIHdoaWNoIGNvbnRhaW5zIHBvdGVudGlhbGx5IGFzeW1tZXRyaWMgc3VibmV0IGdyb3Vwcy5cbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHJldHVybkFzeW1tZXRyaWNTdWJuZXRzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogT3B0aW9uYWwgdGFnIGZvciBzdWJuZXQgZ3JvdXAgbmFtZS5cbiAgICogSWYgbm90IHByb3ZpZGVkLCB3ZSdsbCBsb29rIGF0IHRoZSBhd3MtY2RrOnN1Ym5ldC1uYW1lIHRhZy5cbiAgICogSWYgdGhlIHN1Ym5ldCBkb2VzIG5vdCBoYXZlIHRoZSBzcGVjaWZpZWQgdGFnLFxuICAgKiB3ZSdsbCB1c2UgaXRzIHR5cGUgYXMgdGhlIG5hbWUuXG4gICAqXG4gICAqIEBkZWZhdWx0ICdhd3MtY2RrOnN1Ym5ldC1uYW1lJ1xuICAgKi9cbiAgcmVhZG9ubHkgc3VibmV0R3JvdXBOYW1lVGFnPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHBvcHVsYXRlIHRoZSBgdnBuR2F0ZXdheUlkYCBmaWVsZCBvZiB0aGUgYFZwY0NvbnRleHRSZXNwb25zZWAsXG4gICAqIHdoaWNoIGNvbnRhaW5zIHRoZSBWUE4gR2F0ZXdheSBJRCwgaWYgb25lIGV4aXN0cy4gWW91IGNhbiBleHBsaWNpdGx5XG4gICAqIGRpc2FibGUgdGhpcyBpbiBvcmRlciB0byBhdm9pZCB0aGUgbG9va3VwIGlmIHlvdSBrbm93IHRoZSBWUEMgZG9lcyBub3QgaGF2ZVxuICAgKiBhIFZQTiBHYXR3YXkgYXR0YWNoZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHJldHVyblZwbkdhdGV3YXlzPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBRdWVyeSB0byBlbmRwb2ludCBzZXJ2aWNlIGNvbnRleHQgcHJvdmlkZXJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbmRwb2ludFNlcnZpY2VBdmFpbGFiaWxpdHlab25lc0NvbnRleHRRdWVyeSBleHRlbmRzIENvbnRleHRMb29rdXBSb2xlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBRdWVyeSBzZXJ2aWNlIG5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VOYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogVHlwZSBvZiBsb2FkIGJhbGFuY2VyXG4gKi9cbmV4cG9ydCBlbnVtIExvYWRCYWxhbmNlclR5cGUge1xuICAvKipcbiAgICogTmV0d29yayBsb2FkIGJhbGFuY2VyXG4gICAqL1xuICBORVRXT1JLID0gJ25ldHdvcmsnLFxuXG4gIC8qKlxuICAgKiBBcHBsaWNhdGlvbiBsb2FkIGJhbGFuY2VyXG4gICAqL1xuICBBUFBMSUNBVElPTiA9ICdhcHBsaWNhdGlvbicsXG59XG5cbi8qKlxuICogRmlsdGVycyBmb3Igc2VsZWN0aW5nIGxvYWQgYmFsYW5jZXJzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9hZEJhbGFuY2VyRmlsdGVyIGV4dGVuZHMgQ29udGV4dExvb2t1cFJvbGVPcHRpb25zIHtcbiAgLyoqXG4gICAqIEZpbHRlciBsb2FkIGJhbGFuY2VycyBieSB0aGVpciB0eXBlXG4gICAqL1xuICByZWFkb25seSBsb2FkQmFsYW5jZXJUeXBlOiBMb2FkQmFsYW5jZXJUeXBlO1xuXG4gIC8qKlxuICAgKiBGaW5kIGJ5IGxvYWQgYmFsYW5jZXIncyBBUk5cbiAgICogQGRlZmF1bHQgLSBkb2VzIG5vdCBzZWFyY2ggYnkgbG9hZCBiYWxhbmNlciBhcm5cbiAgICovXG4gIHJlYWRvbmx5IGxvYWRCYWxhbmNlckFybj86IHN0cmluZztcblxuICAvKipcbiAgICogTWF0Y2ggbG9hZCBiYWxhbmNlciB0YWdzXG4gICAqIEBkZWZhdWx0IC0gZG9lcyBub3QgbWF0Y2ggbG9hZCBiYWxhbmNlcnMgYnkgdGFnc1xuICAgKi9cbiAgcmVhZG9ubHkgbG9hZEJhbGFuY2VyVGFncz86IFRhZ1tdO1xufVxuXG4vKipcbiAqIFF1ZXJ5IGlucHV0IGZvciBsb29raW5nIHVwIGEgbG9hZCBiYWxhbmNlclxuICovXG5leHBvcnQgaW50ZXJmYWNlIExvYWRCYWxhbmNlckNvbnRleHRRdWVyeSBleHRlbmRzIExvYWRCYWxhbmNlckZpbHRlciB7XG59XG5cbi8qKlxuICogVGhlIHByb3RvY29sIGZvciBjb25uZWN0aW9ucyBmcm9tIGNsaWVudHMgdG8gdGhlIGxvYWQgYmFsYW5jZXJcbiAqL1xuZXhwb3J0IGVudW0gTG9hZEJhbGFuY2VyTGlzdGVuZXJQcm90b2NvbCB7XG4gIC8qKlxuICAgKiBIVFRQIHByb3RvY29sXG4gICAqL1xuICBIVFRQID0gJ0hUVFAnLFxuXG4gIC8qKlxuICAgKiBIVFRQUyBwcm90b2NvbFxuICAgKi9cbiAgSFRUUFMgPSAnSFRUUFMnLFxuXG4gIC8qKlxuICAgKiBUQ1AgcHJvdG9jb2xcbiAgICovXG4gIFRDUCA9ICdUQ1AnLFxuXG4gIC8qKlxuICAgKiBUTFMgcHJvdG9jb2xcbiAgICovXG4gIFRMUyA9ICdUTFMnLFxuXG4gIC8qKlxuICAgKiBVRFAgcHJvdG9jb2xcbiAgICogKi9cbiAgVURQID0gJ1VEUCcsXG5cbiAgLyoqXG4gICAqIFRDUCBhbmQgVURQIHByb3RvY29sXG4gICAqICovXG4gIFRDUF9VRFAgPSAnVENQX1VEUCcsXG59XG5cbi8qKlxuICogUXVlcnkgaW5wdXQgZm9yIGxvb2tpbmcgdXAgYSBsb2FkIGJhbGFuY2VyIGxpc3RlbmVyXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9hZEJhbGFuY2VyTGlzdGVuZXJDb250ZXh0UXVlcnkgZXh0ZW5kcyBMb2FkQmFsYW5jZXJGaWx0ZXIge1xuICAvKipcbiAgICogRmluZCBieSBsaXN0ZW5lcidzIGFyblxuICAgKiBAZGVmYXVsdCAtIGRvZXMgbm90IGZpbmQgYnkgbGlzdGVuZXIgYXJuXG4gICAqL1xuICByZWFkb25seSBsaXN0ZW5lckFybj86IHN0cmluZztcblxuICAvKipcbiAgICogRmlsdGVyIGJ5IGxpc3RlbmVyIHByb3RvY29sXG4gICAqIEBkZWZhdWx0IC0gZG9lcyBub3QgZmlsdGVyIGJ5IGxpc3RlbmVyIHByb3RvY29sXG4gICAqL1xuICByZWFkb25seSBsaXN0ZW5lclByb3RvY29sPzogTG9hZEJhbGFuY2VyTGlzdGVuZXJQcm90b2NvbDtcblxuICAvKipcbiAgICogRmlsdGVyIGxpc3RlbmVycyBieSBsaXN0ZW5lciBwb3J0XG4gICAqIEBkZWZhdWx0IC0gZG9lcyBub3QgZmlsdGVyIGJ5IGEgbGlzdGVuZXIgcG9ydFxuICAgKi9cbiAgcmVhZG9ubHkgbGlzdGVuZXJQb3J0PzogbnVtYmVyO1xufVxuXG4vKipcbiAqIFF1ZXJ5IGlucHV0IGZvciBsb29raW5nIHVwIGEgc2VjdXJpdHkgZ3JvdXBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWN1cml0eUdyb3VwQ29udGV4dFF1ZXJ5IGV4dGVuZHMgQ29udGV4dExvb2t1cFJvbGVPcHRpb25zIHtcbiAgLyoqXG4gICAqIFNlY3VyaXR5IGdyb3VwIGlkXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgc2VjdXJpdHlHcm91cElkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTZWN1cml0eSBncm91cCBuYW1lXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgc2VjdXJpdHlHcm91cE5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFZQQyBJRFxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vbmVcbiAgICovXG4gIHJlYWRvbmx5IHZwY0lkPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFF1ZXJ5IGlucHV0IGZvciBsb29raW5nIHVwIGEgS01TIEtleVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEtleUNvbnRleHRRdWVyeSBleHRlbmRzIENvbnRleHRMb29rdXBSb2xlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBBbGlhcyBuYW1lIHVzZWQgdG8gc2VhcmNoIHRoZSBLZXlcbiAgICovXG4gIHJlYWRvbmx5IGFsaWFzTmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFF1ZXJ5IGlucHV0IGZvciBsb29rdXAgdXAgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2VzIHVzaW5nIENDIEFQSVxuICpcbiAqIFRoZSBleGFtcGxlIGJlbG93IGlzIHJlcXVpcmVkIHRvIHN1Y2Nlc3NmdWxseSBjb21waWxlIENESyAob3RoZXJ3aXNlLFxuICogdGhlIENESyBidWlsZCB3aWxsIGdlbmVyYXRlIGEgc3ludGhldGljIGV4YW1wbGUgZm9yIHRoZSBiZWxvdywgYnV0IGl0XG4gKiBkb2Vzbid0IGhhdmUgZW5vdWdoIHR5cGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGxpdGVyYWwgc3RyaW5nIHVuaW9uXG4gKiB0byBnZW5lcmF0ZSBhIHZhbGlkbHkgY29tcGlsaW5nIGV4YW1wbGUpLlxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBDY0FwaUNvbnRleHRRdWVyeSB9IGZyb20gJ0Bhd3MtY2RrL2Nsb3VkLWFzc2VtYmx5LXNjaGVtYSc7XG4gKlxuICogY29uc3QgeDogQ2NBcGlDb250ZXh0UXVlcnkgPSB7XG4gKiAgIHR5cGVOYW1lOiAnQVdTOjpTb21lOjpUeXBlJyxcbiAqICAgZXhwZWN0ZWRNYXRjaENvdW50OiAnZXhhY3RseS1vbmUnLFxuICogICByZXNvdXJjZU1vZGVsOiB7U29tZUFybjogJ2Fybjphd3M6Li4uLid9LFxuICogICBwcm9wZXJ0aWVzVG9SZXR1cm46IFsnU29tZVByb3AnXSxcbiAqICAgYWNjb3VudDogJzExMTExMTExMTExJyxcbiAqICAgcmVnaW9uOiAndXMtZWFzdC0xJyxcbiAqIH07XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2NBcGlDb250ZXh0UXVlcnkgZXh0ZW5kcyBDb250ZXh0TG9va3VwUm9sZU9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGUuXG4gICAqIFNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vY2xvdWRjb250cm9sYXBpL2xhdGVzdC91c2VyZ3VpZGUvc3VwcG9ydGVkLXJlc291cmNlcy5odG1sXG4gICAqL1xuICByZWFkb25seSB0eXBlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZGVudGlmaWVyIG9mIHRoZSByZXNvdXJjZSB0byBsb29rIHVwIHVzaW5nIGBHZXRSZXNvdXJjZWAuXG4gICAqXG4gICAqIFNwZWNpZnlpbmcgZXhhY3RJZGVudGlmaWVyIHdpbGwgcmV0dXJuIGV4YWN0bHkgb25lIHJlc3VsdCwgb3IgdGhyb3cgYW4gZXJyb3JcbiAgICogdW5sZXNzIGBpZ25vcmVFcnJvck9uTWlzc2luZ0NvbnRleHRgIGlzIHNldC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBFaXRoZXIgZXhhY3RJZGVudGlmaWVyIG9yIHByb3BlcnR5TWF0Y2ggc2hvdWxkIGJlIHNwZWNpZmllZC5cbiAgICovXG4gIHJlYWRvbmx5IGV4YWN0SWRlbnRpZmllcj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHJlc291cmNlIG1vZGVsIHRvIHVzZSB0byBzZWxlY3QgdGhlIHJlc291cmNlcywgdXNpbmcgYExpc3RSZXNvdXJjZXNgLi5cbiAgICpcbiAgICogVGhpcyBpcyBuZWVkZWQgZm9yIHN1Yi1yZXNvdXJjZXMgd2hlcmUgdGhlIHBhcmVudCBBcm4gaXMgcmVxdWlyZWQuXG4gICAqXG4gICAqIFNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vY2xvdWRjb250cm9sYXBpL2xhdGVzdC91c2VyZ3VpZGUvcmVzb3VyY2Utb3BlcmF0aW9ucy1saXN0Lmh0bWwjcmVzb3VyY2Utb3BlcmF0aW9ucy1saXN0LWNvbnRhaW5lcnNcbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyByZXNvdXJjZSBNb2RlbCBpcyBwcm92aWRlZFxuICAgKi9cbiAgcmVhZG9ubHkgcmVzb3VyY2VNb2RlbD86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGFueSByZXNvdXJjZXMgbWF0Y2hpbmcgdGhlc2UgcHJvcGVydGllcywgdXNpbmcgYExpc3RSZXNvdXJjZXNgLlxuICAgKlxuICAgKiBCeSBkZWZhdWx0LCBzcGVjaWZ5aW5nIHByb3BlcnR5TWF0Y2ggd2lsbCBzdWNjZXNzZnVsbHkgcmV0dXJuIDAgb3IgbW9yZVxuICAgKiByZXN1bHRzLiBUbyB0aHJvdyBhbiBlcnJvciBpZiB0aGUgbnVtYmVyIG9mIHJlc3VsdHMgaXMgdW5leHBlY3RlZCAoYW5kXG4gICAqIHByZXZlbnQgdGhlIHF1ZXJ5IHJlc3VsdHMgZnJvbSBiZWluZyBjb21taXR0ZWQgdG8gY29udGV4dCksIHNwZWNpZnlcbiAgICogYGV4cGVjdGVkTWF0Y2hDb3VudGAuXG4gICAqXG4gICAqICMjIE5vdGVzIG9uIHByb3BlcnR5IGNvbXBsZXRlbmVzc1xuICAgKlxuICAgKiBDbG91ZENvbnRyb2wgQVBJJ3MgYExpc3RSZXNvdXJjZXNgIG1heSByZXR1cm4gZmV3ZXIgcHJvcGVydGllcyB0aGFuXG4gICAqIGBHZXRSZXNvdXJjZWAgd291bGQsIGRlcGVuZGluZyBvbiB0aGUgcmVzb3VyY2UgaW1wbGVtZW50YXRpb24uXG4gICAqXG4gICAqIFRoZSByZXNvdXJjZXMgdGhhdCBgcHJvcGVydHlNYXRjaGAgbWF0Y2hlcyBhZ2FpbnN0IHdpbGwgKm9ubHkgZXZlciogYmUgdGhlXG4gICAqIHByb3BlcnRpZXMgcmV0dXJuZWQgYnkgdGhlIGBMaXN0UmVzb3VyY2VzYCBjYWxsLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEVpdGhlciBleGFjdElkZW50aWZpZXIgb3IgcHJvcGVydHlNYXRjaCBzaG91bGQgYmUgc3BlY2lmaWVkLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvcGVydHlNYXRjaD86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuXG4gIC8qKlxuICAgKiBUaGlzIGlzIGEgc2V0IG9mIHByb3BlcnRpZXMgcmV0dXJuZWQgZnJvbSBDQyBBUEkgdGhhdCB3ZSB3YW50IHRvIHJldHVybiBmcm9tIENvbnRleHRRdWVyeS5cbiAgICpcbiAgICogSWYgYW55IHByb3BlcnRpZXMgbGlzdGVkIGhlcmUgYXJlIGFic2VudCBmcm9tIHRoZSB0YXJnZXQgcmVzb3VyY2UsIGFuIGVycm9yIHdpbGwgYmUgdGhyb3duLlxuICAgKlxuICAgKiBUaGUgcmV0dXJuZWQgb2JqZWN0IHdpbGwgYWx3YXlzIGluY2x1ZGUgdGhlIGtleSBgSWRlbnRpZmllcmAgd2l0aCB0aGUgQ0MtQVBJIHJldHVybmVkXG4gICAqIGZpZWxkIGBJZGVudGlmaWVyYC5cbiAgICpcbiAgICogIyMgTm90ZXMgb24gcHJvcGVydHkgY29tcGxldGVuZXNzXG4gICAqXG4gICAqIENsb3VkQ29udHJvbCBBUEkncyBgTGlzdFJlc291cmNlc2AgbWF5IHJldHVybiBmZXdlciBwcm9wZXJ0aWVzIHRoYW5cbiAgICogYEdldFJlc291cmNlYCB3b3VsZCwgZGVwZW5kaW5nIG9uIHRoZSByZXNvdXJjZSBpbXBsZW1lbnRhdGlvbi5cbiAgICpcbiAgICogVGhlIHJldHVybmVkIHByb3BlcnRpZXMgaGVyZSBhcmUgKmN1cnJlbnRseSogc2VsZWN0ZWQgZnJvbSB0aGUgcmVzcG9uc2VcbiAgICogb2JqZWN0IHRoYXQgQ2xvdWRDb250cm9sIEFQSSByZXR1cm5zIHRvIHRoZSBDREsgQ0xJLlxuICAgKlxuICAgKiBIb3dldmVyLCBpZiB3ZSBmaW5kIHRoZXJlIGlzIG5lZWQgdG8gZG8gc28sIHdlIG1heSBkZWNpZGUgdG8gY2hhbmdlIHRoaXNcbiAgICogYmVoYXZpb3IgaW4gdGhlIGZ1dHVyZTogd2UgbWlnaHQgY2hhbmdlIGl0IHRvIHBlcmZvcm0gYW4gYWRkaXRpb25hbFxuICAgKiBgR2V0UmVzb3VyY2VgIGNhbGwgZm9yIHJlc291cmNlcyBtYXRjaGVkIGJ5IGBwcm9wZXJ0eU1hdGNoYC5cbiAgICovXG4gIHJlYWRvbmx5IHByb3BlcnRpZXNUb1JldHVybjogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIEV4cGVjdGVkIGNvdW50IG9mIHJlc3VsdHMgaWYgYHByb3BlcnR5TWF0Y2hgIGlzIHNwZWNpZmllZC5cbiAgICpcbiAgICogSWYgdGhlIGV4cGVjdGVkIHJlc3VsdCBjb3VudCBkb2VzIG5vdCBtYXRjaCB0aGUgYWN0dWFsIGNvdW50LFxuICAgKiBieSBkZWZhdWx0IGFuIGVycm9yIGlzIHByb2R1Y2VkIGFuZCB0aGUgcmVzdWx0IGlzIG5vdCBjb21taXR0ZWQgdG8gY2FjaGVkXG4gICAqIGNvbnRleHQsIGFuZCB0aGUgdXNlciBjYW4gY29ycmVjdCB0aGUgc2l0dWF0aW9uIGFuZCB0cnkgYWdhaW4gd2l0aG91dFxuICAgKiBoYXZpbmcgdG8gbWFudWFsbHkgY2xlYXIgb3V0IHRoZSBjb250ZXh0IGtleSB1c2luZyBgY2RrIGNvbnRleHQgLS1yZW1vdmVgXG4gICAqXG4gICAqIElmIHRoZSB2YWx1ZSBvZiAqIGBpZ25vcmVFcnJvck9uTWlzc2luZ0NvbnRleHRgIGlzIGB0cnVlYCwgdGhlIHZhbHVlIG9mXG4gICAqIGBleHBlY3RlZE1hdGNoQ291bnRgIGlzIGBhdC1sZWFzdC1vbmUgfCBleGFjdGx5LW9uZWAgYW5kIHRoZSBudW1iZXJcbiAgICogb2YgZm91bmQgcmVzb3VyY2VzIGlzIDAsIGBkdW1teVZhbHVlYCBpcyByZXR1cm5lZCBhbmQgY29tbWl0dGVkIHRvIGNvbnRleHRcbiAgICogaW5zdGVhZC5cbiAgICpcbiAgICogQGRlZmF1bHQgJ2FueSdcbiAgICovXG4gIHJlYWRvbmx5IGV4cGVjdGVkTWF0Y2hDb3VudD86ICdhbnknIHwgJ2F0LWxlYXN0LW9uZScgfCAnYXQtbW9zdC1vbmUnIHwgJ2V4YWN0bHktb25lJztcblxuICAvKipcbiAgICogVGhlIHZhbHVlIHRvIHJldHVybiBpZiB0aGUgcmVzb3VyY2Ugd2FzIG5vdCBmb3VuZCBhbmQgYGlnbm9yZUVycm9yT25NaXNzaW5nQ29udGV4dGAgaXMgdHJ1ZS5cbiAgICpcbiAgICogSWYgc3VwcGxpZWQsIGBkdW1teVZhbHVlYCBzaG91bGQgYmUgYW4gYXJyYXkgb2Ygb2JqZWN0cy5cbiAgICpcbiAgICogYGR1bW15VmFsdWVgIGRvZXMgbm90IGhhdmUgdG8gaGF2ZSBlbGVtZW50cywgYW5kIGl0IG1heSBoYXZlIG9iamVjdHMgd2l0aFxuICAgKiBkaWZmZXJlbnQgcHJvcGVydGllcyB0aGFuIHRoZSBwcm9wZXJ0aWVzIGluIGBwcm9wZXJ0aWVzVG9SZXR1cm5gLCBidXQgaXRcbiAgICogd2lsbCBiZSBlYXNpZXN0IGZvciBkb3duc3RyZWFtIGNvZGUgaWYgdGhlIGBkdW1teVZhbHVlYCBjb25mb3JtcyB0b1xuICAgKiB0aGUgZXhwZWN0ZWQgcmVzcG9uc2Ugc2hhcGUuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gZHVtbXkgdmFsdWUgYXZhaWxhYmxlXG4gICAqL1xuICByZWFkb25seSBkdW1teVZhbHVlPzogYW55O1xuXG4gIC8qKlxuICAgKiBJZ25vcmUgYW4gZXJyb3IgYW5kIHJldHVybiB0aGUgYGR1bW15VmFsdWVgIGluc3RlYWQgaWYgdGhlIHJlc291cmNlIHdhcyBub3QgZm91bmQuXG4gICAqXG4gICAqIC0gSW4gY2FzZSBvZiBhbiBgZXhhY3RJZGVudGlmaWVyYCBsb29rdXAsIHJldHVybiB0aGUgYGR1bW15VmFsdWVgIGlmIHRoZSByZXNvdXJjZSB3aXRoXG4gICAqICAgdGhhdCBpZGVudGlmaWVyIHdhcyBub3QgZm91bmQuXG4gICAqIC0gSW4gY2FzZSBvZiBhIGBwcm9wZXJ0eU1hdGNoYCBsb29rdXAsIHJldHVybiB0aGUgYGR1bW15VmFsdWVgIGlmIGBleHBlY3RlZE1hdGNoQ291bnRgXG4gICAqICAgaXMgYGF0LWxlYXN0LW9uZSB8IGV4YWN0bHktb25lYCBhbmQgdGhlIG51bWJlciBvZiByZXNvdXJjZXMgZm91bmQgd2FzIDAuXG4gICAqXG4gICAqIGlmIGBpZ25vcmVFcnJvck9uTWlzc2luZ0NvbnRleHRgIGlzIHNldCwgYGR1bW15VmFsdWVgIHNob3VsZCBiZSBzZXQgYW5kIGJlIGFuIGFycmF5LlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgaWdub3JlRXJyb3JPbk1pc3NpbmdDb250ZXh0PzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBRdWVyeSBpbnB1dCBmb3IgcGx1Z2luc1xuICpcbiAqIFRoaXMgYWx0ZXJuYXRlIGJyYW5jaCBpcyBuZWNlc3NhcnkgYmVjYXVzZSBpdCBuZWVkcyB0byBiZSBhYmxlIHRvIGVzY2FwZSBhbGwgdHlwZSBjaGVja2luZ1xuICogd2UgZG8gb24gb24gdGhlIGNsb3VkIGFzc2VtYmx5IC0tIHdlIGNhbm5vdCBrbm93IHRoZSBwcm9wZXJ0aWVzIHRoYXQgd2lsbCBiZSB1c2VkIGEgcHJpb3JpLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBsdWdpbkNvbnRleHRRdWVyeSB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgcGx1Z2luXG4gICAqL1xuICByZWFkb25seSBwbHVnaW5OYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFyYml0cmFyeSBvdGhlciBhcmd1bWVudHMgZm9yIHRoZSBwbHVnaW4uXG4gICAqXG4gICAqIFRoaXMgaW5kZXggc2lnbmF0dXJlIGlzIG5vdCB1c2FibGUgaW4gbm9uLVR5cGVTY3JpcHQvSmF2YVNjcmlwdCBsYW5ndWFnZXMuXG4gICAqXG4gICAqIEBqc2lpIGlnbm9yZVxuICAgKi9cbiAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5leHBvcnQgdHlwZSBDb250ZXh0UXVlcnlQcm9wZXJ0aWVzID1cbiAgfCBBbWlDb250ZXh0UXVlcnlcbiAgfCBBdmFpbGFiaWxpdHlab25lc0NvbnRleHRRdWVyeVxuICB8IEhvc3RlZFpvbmVDb250ZXh0UXVlcnlcbiAgfCBTU01QYXJhbWV0ZXJDb250ZXh0UXVlcnlcbiAgfCBWcGNDb250ZXh0UXVlcnlcbiAgfCBFbmRwb2ludFNlcnZpY2VBdmFpbGFiaWxpdHlab25lc0NvbnRleHRRdWVyeVxuICB8IExvYWRCYWxhbmNlckNvbnRleHRRdWVyeVxuICB8IExvYWRCYWxhbmNlckxpc3RlbmVyQ29udGV4dFF1ZXJ5XG4gIHwgU2VjdXJpdHlHcm91cENvbnRleHRRdWVyeVxuICB8IEtleUNvbnRleHRRdWVyeVxuICB8IENjQXBpQ29udGV4dFF1ZXJ5XG4gIHwgUGx1Z2luQ29udGV4dFF1ZXJ5O1xuIl19