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

vscode-debugprotocol

Package Overview
Dependencies
Maintainers
3
Versions
166
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

vscode-debugprotocol - npm Package Compare versions

Comparing version 1.7.0 to 1.8.0-pre.0

18

lib/debugProtocol.d.ts

@@ -459,11 +459,13 @@ /** Declaration module describing the VS Code debug protocol

/** Available filters for the setExceptionBreakpoints request. */
exceptionBreakpointFilters?: [{
/** The internal ID of the filter. This value is passed to the setExceptionBreakpoints request. */
filter: string;
/** The name of the filter. This will be shown in the UI. */
label: string;
/** Initial value of the filter. If not specified a value 'false' is assumed. */
default?: boolean;
}];
exceptionBreakpointFilters?: ExceptionBreakpointsFilter[];
}
/** An ExceptionBreakpointsFilter is shown in the UI as an option for configuring how exceptions are dealt with. */
interface ExceptionBreakpointsFilter {
/** The internal ID of the filter. This value is passed to the setExceptionBreakpoints request. */
filter: string;
/** The name of the filter. This will be shown in the UI. */
label: string;
/** Initial value of the filter. If not specified a value 'false' is assumed. */
default?: boolean;
}
/** A structured message object. Used to return errors from requests. */

@@ -470,0 +472,0 @@ interface Message {

@@ -6,2 +6,2 @@ /*---------------------------------------------------------------------------------------------

'use strict';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWdQcm90b2NvbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9kZWJ1Z1Byb3RvY29sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Z0dBR2dHO0FBRWhHLFlBQVksQ0FBQztBQW1uQloiLCJzb3VyY2VzQ29udGVudCI6WyIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogIENvcHlyaWdodCAoYykgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIExpY2Vuc2UudHh0IGluIHRoZSBwcm9qZWN0IHJvb3QgZm9yIGxpY2Vuc2UgaW5mb3JtYXRpb24uXG4gKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuJ3VzZSBzdHJpY3QnO1xuXG4vKiogRGVjbGFyYXRpb24gbW9kdWxlIGRlc2NyaWJpbmcgdGhlIFZTIENvZGUgZGVidWcgcHJvdG9jb2xcbiAqL1xuZXhwb3J0IG1vZHVsZSBEZWJ1Z1Byb3RvY29sIHtcblxuXHQvKiogQmFzZSBjbGFzcyBvZiByZXF1ZXN0cywgcmVzcG9uc2VzLCBhbmQgZXZlbnRzLiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFByb3RvY29sTWVzc2FnZSB7XG5cdFx0LyoqIFNlcXVlbmNlIG51bWJlciAqL1xuXHRcdHNlcTogbnVtYmVyO1xuXHRcdC8qKiBPbmUgb2YgXCJyZXF1ZXN0XCIsIFwicmVzcG9uc2VcIiwgb3IgXCJldmVudFwiICovXG5cdFx0dHlwZTogc3RyaW5nO1xuXHR9XG5cblx0LyoqIENsaWVudC1pbml0aWF0ZWQgcmVxdWVzdCAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFJlcXVlc3QgZXh0ZW5kcyBQcm90b2NvbE1lc3NhZ2Uge1xuXHRcdC8qKiBUaGUgY29tbWFuZCB0byBleGVjdXRlICovXG5cdFx0Y29tbWFuZDogc3RyaW5nO1xuXHRcdC8qKiBPYmplY3QgY29udGFpbmluZyBhcmd1bWVudHMgZm9yIHRoZSBjb21tYW5kICovXG5cdFx0YXJndW1lbnRzPzogYW55O1xuXHR9XG5cblx0LyoqIFNlcnZlci1pbml0aWF0ZWQgZXZlbnQgKi9cblx0ZXhwb3J0IGludGVyZmFjZSBFdmVudCBleHRlbmRzIFByb3RvY29sTWVzc2FnZSB7XG5cdFx0LyoqIFR5cGUgb2YgZXZlbnQgKi9cblx0XHRldmVudDogc3RyaW5nO1xuXHRcdC8qKiBFdmVudC1zcGVjaWZpYyBpbmZvcm1hdGlvbiAqL1xuXHRcdGJvZHk/OiBhbnk7XG5cdH1cblxuXHQvKiogU2VydmVyLWluaXRpYXRlZCByZXNwb25zZSB0byBjbGllbnQgcmVxdWVzdCAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFJlc3BvbnNlIGV4dGVuZHMgUHJvdG9jb2xNZXNzYWdlIHtcblx0XHQvKiogU2VxdWVuY2UgbnVtYmVyIG9mIHRoZSBjb3JyZXNwb25kaW5nIHJlcXVlc3QgKi9cblx0XHRyZXF1ZXN0X3NlcTogbnVtYmVyO1xuXHRcdC8qKiBPdXRjb21lIG9mIHRoZSByZXF1ZXN0ICovXG5cdFx0c3VjY2VzczogYm9vbGVhbjtcblx0XHQvKiogVGhlIGNvbW1hbmQgcmVxdWVzdGVkICovXG5cdFx0Y29tbWFuZDogc3RyaW5nO1xuXHRcdC8qKiBDb250YWlucyBlcnJvciBtZXNzYWdlIGlmIHN1Y2Nlc3MgPT0gZmFsc2UuICovXG5cdFx0bWVzc2FnZT86IHN0cmluZztcblx0XHQvKiogQ29udGFpbnMgcmVxdWVzdCByZXN1bHQgaWYgc3VjY2VzcyBpcyB0cnVlIGFuZCBvcHRpb25hbCBlcnJvciBkZXRhaWxzIGlmIHN1Y2Nlc3MgaXMgZmFsc2UuICovXG5cdFx0Ym9keT86IGFueTtcblx0fVxuXG5cdC8vLS0tLSBFdmVudHNcblxuXHQvKiogRXZlbnQgbWVzc2FnZSBmb3IgXCJpbml0aWFsaXplZFwiIGV2ZW50IHR5cGUuXG5cdFx0VGhpcyBldmVudCBpbmRpY2F0ZXMgdGhhdCB0aGUgZGVidWcgYWRhcHRlciBpcyByZWFkeSB0byBhY2NlcHQgY29uZmlndXJhdGlvbiByZXF1ZXN0cyAoZS5nLiBTZXRCcmVha3BvaW50c1JlcXVlc3QsIFNldEV4Y2VwdGlvbkJyZWFrcG9pbnRzUmVxdWVzdCkuXG5cdFx0QSBkZWJ1ZyBhZGFwdGVyIGlzIGV4cGVjdGVkIHRvIHNlbmQgdGhpcyBldmVudCB3aGVuIGl0IGlzIHJlYWR5IHRvIGFjY2VwdCBjb25maWd1cmF0aW9uIHJlcXVlc3RzLlxuXHRcdFRoZSBzZXF1ZW5jZSBvZiBldmVudHMvcmVxdWVzdHMgaXMgYXMgZm9sbG93czpcblx0XHQtIGFkYXB0ZXJzIHNlbmRzIEluaXRpYWxpemVkRXZlbnQgKGF0IGFueSB0aW1lKVxuXHRcdC0gZnJvbnRlbmQgc2VuZHMgemVybyBvciBtb3JlIFNldEJyZWFrcG9pbnRzUmVxdWVzdFxuXHRcdC0gZnJvbnRlbmQgc2VuZHMgb25lIFNldEZ1bmN0aW9uQnJlYWtwb2ludHNSZXF1ZXN0XG5cdFx0LSBmcm9udGVuZCBzZW5kcyBhIFNldEV4Y2VwdGlvbkJyZWFrcG9pbnRzUmVxdWVzdCBpZiBvbmUgb3IgbW9yZSBleGNlcHRpb25CcmVha3BvaW50RmlsdGVycyBoYXZlIGJlZW4gZGVmaW5lZCAob3IgaWYgc3VwcG9ydHNDb25maWd1cmF0aW9uRG9uZVJlcXVlc3QgaXMgbm90IGRlZmluZWQgb3IgZmFsc2UpXG5cdFx0LSBmcm9udGVuZCBzZW5kcyBvdGhlciBjb25maWd1cmF0aW9uIHJlcXVlc3RzIHRoYXQgYXJlIGFkZGVkIGluIHRoZSBmdXR1cmVcblx0XHQtIGZyb250ZW5kIHNlbmRzIG9uZSBDb25maWd1cmF0aW9uRG9uZVJlcXVlc3Rcblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBJbml0aWFsaXplZEV2ZW50IGV4dGVuZHMgRXZlbnQge1xuXHR9XG5cblx0LyoqIEV2ZW50IG1lc3NhZ2UgZm9yIFwic3RvcHBlZFwiIGV2ZW50IHR5cGUuXG5cdFx0VGhlIGV2ZW50IGluZGljYXRlcyB0aGF0IHRoZSBleGVjdXRpb24gb2YgdGhlIGRlYnVnZ2VlIGhhcyBzdG9wcGVkIGR1ZSB0byBhIGJyZWFrIGNvbmRpdGlvbi5cblx0XHRUaGlzIGNhbiBiZSBjYXVzZWQgYnkgYSBicmVhayBwb2ludCBwcmV2aW91c2x5IHNldCwgYSBzdGVwcGluZyBhY3Rpb24gaGFzIGNvbXBsZXRlZCBvciBieSBleGVjdXRpbmcgYSBkZWJ1Z2dlciBzdGF0ZW1lbnQuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU3RvcHBlZEV2ZW50IGV4dGVuZHMgRXZlbnQge1xuXHRcdGJvZHk6IHtcblx0XHRcdC8qKiBUaGUgcmVhc29uIGZvciB0aGUgZXZlbnQgKHN1Y2ggYXM6ICdzdGVwJywgJ2JyZWFrcG9pbnQnLCAnZXhjZXB0aW9uJywgJ3BhdXNlJykgKi9cblx0XHRcdHJlYXNvbjogc3RyaW5nO1xuXHRcdFx0LyoqIFRoZSB0aHJlYWQgd2hpY2ggd2FzIHN0b3BwZWQuICovXG5cdFx0XHR0aHJlYWRJZD86IG51bWJlcjtcblx0XHRcdC8qKiBBZGRpdGlvbmFsIGluZm9ybWF0aW9uLiBFLmcuIGlmIHJlYXNvbiBpcyAnZXhjZXB0aW9uJywgdGV4dCBjb250YWlucyB0aGUgZXhjZXB0aW9uIG5hbWUuICovXG5cdFx0XHR0ZXh0Pzogc3RyaW5nO1xuXHRcdFx0LyoqIElmIGFsbFRocmVhZHNTdG9wcGVkIGlzIHRydWUsIGEgZGVidWcgYWRhcHRlciBjYW4gYW5ub3VuY2UgdGhhdCBhbGwgdGhyZWFkcyBoYXZlIHN0b3BwZWQuXG5cdFx0XHQgKiAgVGhlIGNsaWVudCBzaG91bGQgdXNlIHRoaXMgaW5mb3JtYXRpb24gdG8gZW5hYmxlIHRoYXQgYWxsIHRocmVhZHMgY2FuIGJlIGV4cGFuZGVkIHRvIGFjY2VzcyB0aGVpciBzdGFja3RyYWNlcy5cblx0XHRcdCAqICBJZiB0aGUgYXR0cmlidXRlIGlzIG1pc3Npbmcgb3IgZmFsc2UsIG9ubHkgdGhlIHRocmVhZCB3aXRoIHRoZSBnaXZlbiB0aHJlYWRJZCBjYW4gYmUgZXhwYW5kZWQuXG5cdFx0XHQgKiovXG5cdFx0XHRhbGxUaHJlYWRzU3RvcHBlZD86IGJvb2xlYW47XG5cdFx0fTtcblx0fVxuXG5cdC8qKiBFdmVudCBtZXNzYWdlIGZvciBcImV4aXRlZFwiIGV2ZW50IHR5cGUuXG5cdFx0VGhlIGV2ZW50IGluZGljYXRlcyB0aGF0IHRoZSBkZWJ1Z2dlZSBoYXMgZXhpdGVkLlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIEV4aXRlZEV2ZW50IGV4dGVuZHMgRXZlbnQge1xuXHRcdGJvZHk6IHtcblx0XHRcdC8qKiBUaGUgZXhpdCBjb2RlIHJldHVybmVkIGZyb20gdGhlIGRlYnVnZ2VlLiAqL1xuXHRcdFx0ZXhpdENvZGU6IG51bWJlcjtcblx0XHR9O1xuXHR9XG5cblx0LyoqIEV2ZW50IG1lc3NhZ2UgZm9yIFwidGVybWluYXRlZFwiIGV2ZW50IHR5cGVzLlxuXHRcdFRoZSBldmVudCBpbmRpY2F0ZXMgdGhhdCBkZWJ1Z2dpbmcgb2YgdGhlIGRlYnVnZ2VlIGhhcyB0ZXJtaW5hdGVkLlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFRlcm1pbmF0ZWRFdmVudCBleHRlbmRzIEV2ZW50IHtcblx0XHRib2R5Pzoge1xuXHRcdFx0LyoqIEEgZGVidWcgYWRhcHRlciBtYXkgc2V0ICdyZXN0YXJ0JyB0byB0cnVlIHRvIHJlcXVlc3QgdGhhdCB0aGUgZnJvbnQgZW5kIHJlc3RhcnRzIHRoZSBzZXNzaW9uLiAqL1xuXHRcdFx0cmVzdGFydD86IGJvb2xlYW47XG5cdFx0fVxuXHR9XG5cblx0LyoqIEV2ZW50IG1lc3NhZ2UgZm9yIFwidGhyZWFkXCIgZXZlbnQgdHlwZS5cblx0XHRUaGUgZXZlbnQgaW5kaWNhdGVzIHRoYXQgYSB0aHJlYWQgaGFzIHN0YXJ0ZWQgb3IgZXhpdGVkLlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFRocmVhZEV2ZW50IGV4dGVuZHMgRXZlbnQge1xuXHRcdGJvZHk6IHtcblx0XHRcdC8qKiBUaGUgcmVhc29uIGZvciB0aGUgZXZlbnQgKHN1Y2ggYXM6ICdzdGFydGVkJywgJ2V4aXRlZCcpLiAqL1xuXHRcdFx0cmVhc29uOiBzdHJpbmc7XG5cdFx0XHQvKiogVGhlIGlkZW50aWZpZXIgb2YgdGhlIHRocmVhZC4gKi9cblx0XHRcdHRocmVhZElkOiBudW1iZXI7XG5cdFx0fTtcblx0fVxuXG5cdC8qKiBFdmVudCBtZXNzYWdlIGZvciBcIm91dHB1dFwiIGV2ZW50IHR5cGUuXG5cdFx0VGhlIGV2ZW50IGluZGljYXRlcyB0aGF0IHRoZSB0YXJnZXQgaGFzIHByb2R1Y2VkIG91dHB1dC5cblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBPdXRwdXRFdmVudCBleHRlbmRzIEV2ZW50IHtcblx0XHRib2R5OiB7XG5cdFx0XHQvKiogVGhlIGNhdGVnb3J5IG9mIG91dHB1dCAoc3VjaCBhczogJ2NvbnNvbGUnLCAnc3Rkb3V0JywgJ3N0ZGVycicsICd0ZWxlbWV0cnknKS4gSWYgbm90IHNwZWNpZmllZCwgJ2NvbnNvbGUnIGlzIGFzc3VtZWQuICovXG5cdFx0XHRjYXRlZ29yeT86IHN0cmluZztcblx0XHRcdC8qKiBUaGUgb3V0cHV0IHRvIHJlcG9ydC4gKi9cblx0XHRcdG91dHB1dDogc3RyaW5nO1xuXHRcdFx0LyoqIE9wdGlvbmFsIGRhdGEgdG8gcmVwb3J0LiBGb3IgdGhlICd0ZWxlbWV0cnknIGNhdGVnb3J5IHRoZSBkYXRhIHdpbGwgYmUgc2VudCB0byB0ZWxlbWV0cnksIGZvciB0aGUgb3RoZXIgY2F0ZWdvcmllcyB0aGUgZGF0YSBpcyBzaG93biBpbiBKU09OIGZvcm1hdC4gKi9cblx0XHRcdGRhdGE/OiBhbnk7XG5cdFx0fTtcblx0fVxuXG5cdC8qKiBFdmVudCBtZXNzYWdlIGZvciBcImJyZWFrcG9pbnRcIiBldmVudCB0eXBlLlxuXHRcdFRoZSBldmVudCBpbmRpY2F0ZXMgdGhhdCBzb21lIGluZm9ybWF0aW9uIGFib3V0IGEgYnJlYWtwb2ludCBoYXMgY2hhbmdlZC5cblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBCcmVha3BvaW50RXZlbnQgZXh0ZW5kcyBFdmVudCB7XG5cdFx0Ym9keToge1xuXHRcdFx0LyoqIFRoZSByZWFzb24gZm9yIHRoZSBldmVudCAoc3VjaCBhczogJ2NoYW5nZWQnLCAnbmV3JykuICovXG5cdFx0XHRyZWFzb246IHN0cmluZztcblx0XHRcdC8qKiBUaGUgYnJlYWtwb2ludC4gKi9cblx0XHRcdGJyZWFrcG9pbnQ6IEJyZWFrcG9pbnQ7XG5cdFx0fVxuXHR9XG5cblx0Ly8tLS0tIFJlcXVlc3RzXG5cblx0LyoqIE9uIGVycm9yIHRoYXQgaXMgd2hlbmV2ZXIgJ3N1Y2Nlc3MnIGlzIGZhbHNlLCB0aGUgYm9keSBjYW4gcHJvdmlkZSBtb3JlIGRldGFpbHMuXG5cdCAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIEVycm9yUmVzcG9uc2UgZXh0ZW5kcyBSZXNwb25zZSB7XG5cdFx0Ym9keToge1xuXHRcdFx0LyoqIEFuIG9wdGlvbmFsLCBzdHJ1Y3R1cmVkIGVycm9yIG1lc3NhZ2UuICovXG5cdFx0XHRlcnJvcj86IE1lc3NhZ2Vcblx0XHR9XG5cdH1cblxuXHQvKiogSW5pdGlhbGl6ZSByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwiaW5pdGlhbGl6ZVwiLlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIEluaXRpYWxpemVSZXF1ZXN0IGV4dGVuZHMgUmVxdWVzdCB7XG5cdFx0YXJndW1lbnRzOiBJbml0aWFsaXplUmVxdWVzdEFyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcImluaXRpYWxpemVcIiByZXF1ZXN0LiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIEluaXRpYWxpemVSZXF1ZXN0QXJndW1lbnRzIHtcblx0XHQvKiogVGhlIElEIG9mIHRoZSBkZWJ1Z2dlciBhZGFwdGVyLiBVc2VkIHRvIHNlbGVjdCBvciB2ZXJpZnkgZGVidWdnZXIgYWRhcHRlci4gKi9cblx0XHRhZGFwdGVySUQ6IHN0cmluZztcblx0XHQvKiogSWYgdHJ1ZSBhbGwgbGluZSBudW1iZXJzIGFyZSAxLWJhc2VkIChkZWZhdWx0KS4gKi9cblx0XHRsaW5lc1N0YXJ0QXQxPzogYm9vbGVhbjtcblx0XHQvKiogSWYgdHJ1ZSBhbGwgY29sdW1uIG51bWJlcnMgYXJlIDEtYmFzZWQgKGRlZmF1bHQpLiAqL1xuXHRcdGNvbHVtbnNTdGFydEF0MT86IGJvb2xlYW47XG5cdFx0LyoqIERldGVybWluZXMgaW4gd2hhdCBmb3JtYXQgcGF0aHMgYXJlIHNwZWNpZmllZC4gUG9zc2libGUgdmFsdWVzIGFyZSAncGF0aCcgb3IgJ3VyaScuIFRoZSBkZWZhdWx0IGlzICdwYXRoJywgd2hpY2ggaXMgdGhlIG5hdGl2ZSBmb3JtYXQuICovXG5cdFx0cGF0aEZvcm1hdD86IHN0cmluZztcblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gSW5pdGlhbGl6ZSByZXF1ZXN0LiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIEluaXRpYWxpemVSZXNwb25zZSBleHRlbmRzIFJlc3BvbnNlIHtcblx0XHQvKiogVGhlIGNhcGFiaWxpdGllcyBvZiB0aGlzIGRlYnVnIGFkYXB0ZXIgKi9cblx0XHRib2R5PzogQ2FwYWJpbGl0ZXM7XG5cdH1cblxuXHQvKiogQ29uZmlndXJhdGlvbkRvbmUgcmVxdWVzdDsgdmFsdWUgb2YgY29tbWFuZCBmaWVsZCBpcyBcImNvbmZpZ3VyYXRpb25Eb25lXCIuXG5cdFx0VGhlIGNsaWVudCBvZiB0aGUgZGVidWcgcHJvdG9jb2wgbXVzdCBzZW5kIHRoaXMgcmVxdWVzdCBhdCB0aGUgZW5kIG9mIHRoZSBzZXF1ZW5jZSBvZiBjb25maWd1cmF0aW9uIHJlcXVlc3RzICh3aGljaCB3YXMgc3RhcnRlZCBieSB0aGUgSW5pdGlhbGl6ZWRFdmVudClcblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBDb25maWd1cmF0aW9uRG9uZVJlcXVlc3QgZXh0ZW5kcyBSZXF1ZXN0IHtcblx0XHRhcmd1bWVudHM/OiBDb25maWd1cmF0aW9uRG9uZUFyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcImNvbmZpZ3VyYXRpb25Eb25lXCIgcmVxdWVzdC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBDb25maWd1cmF0aW9uRG9uZUFyZ3VtZW50cyB7XG5cdFx0LyogVGhlIGNvbmZpZ3VyYXRpb25Eb25lIHJlcXVlc3QgaGFzIG5vIHN0YW5kYXJkaXplZCBhdHRyaWJ1dGVzLiAqL1xuXHR9XG5cdC8qKiBSZXNwb25zZSB0byBcImNvbmZpZ3VyYXRpb25Eb25lXCIgcmVxdWVzdC4gVGhpcyBpcyBqdXN0IGFuIGFja25vd2xlZGdlbWVudCwgc28gbm8gYm9keSBmaWVsZCBpcyByZXF1aXJlZC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBDb25maWd1cmF0aW9uRG9uZVJlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2Uge1xuXHR9XG5cblx0LyoqIExhdW5jaCByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwibGF1bmNoXCIuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgTGF1bmNoUmVxdWVzdCBleHRlbmRzIFJlcXVlc3Qge1xuXHRcdGFyZ3VtZW50czogTGF1bmNoUmVxdWVzdEFyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcImxhdW5jaFwiIHJlcXVlc3QuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgTGF1bmNoUmVxdWVzdEFyZ3VtZW50cyB7XG5cdFx0LyogVGhlIGxhdW5jaCByZXF1ZXN0IGhhcyBubyBzdGFuZGFyZGl6ZWQgYXR0cmlidXRlcy4gKi9cblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJsYXVuY2hcIiByZXF1ZXN0LiBUaGlzIGlzIGp1c3QgYW4gYWNrbm93bGVkZ2VtZW50LCBzbyBubyBib2R5IGZpZWxkIGlzIHJlcXVpcmVkLiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIExhdW5jaFJlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2Uge1xuXHR9XG5cblx0LyoqIEF0dGFjaCByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwiYXR0YWNoXCIuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgQXR0YWNoUmVxdWVzdCBleHRlbmRzIFJlcXVlc3Qge1xuXHRcdGFyZ3VtZW50czogQXR0YWNoUmVxdWVzdEFyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcImF0dGFjaFwiIHJlcXVlc3QuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgQXR0YWNoUmVxdWVzdEFyZ3VtZW50cyB7XG5cdFx0LyogVGhlIGF0dGFjaCByZXF1ZXN0IGhhcyBubyBzdGFuZGFyZGl6ZWQgYXR0cmlidXRlcy4gKi9cblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJhdHRhY2hcIiByZXF1ZXN0LiBUaGlzIGlzIGp1c3QgYW4gYWNrbm93bGVkZ2VtZW50LCBzbyBubyBib2R5IGZpZWxkIGlzIHJlcXVpcmVkLiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIEF0dGFjaFJlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2Uge1xuXHR9XG5cblx0LyoqIERpc2Nvbm5lY3QgcmVxdWVzdDsgdmFsdWUgb2YgY29tbWFuZCBmaWVsZCBpcyBcImRpc2Nvbm5lY3RcIi5cblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBEaXNjb25uZWN0UmVxdWVzdCBleHRlbmRzIFJlcXVlc3Qge1xuXHRcdGFyZ3VtZW50cz86IERpc2Nvbm5lY3RBcmd1bWVudHM7XG5cdH1cblx0LyoqIEFyZ3VtZW50cyBmb3IgXCJkaXNjb25uZWN0XCIgcmVxdWVzdC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBEaXNjb25uZWN0QXJndW1lbnRzIHtcblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJkaXNjb25uZWN0XCIgcmVxdWVzdC4gVGhpcyBpcyBqdXN0IGFuIGFja25vd2xlZGdlbWVudCwgc28gbm8gYm9keSBmaWVsZCBpcyByZXF1aXJlZC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBEaXNjb25uZWN0UmVzcG9uc2UgZXh0ZW5kcyBSZXNwb25zZSB7XG5cdH1cblxuXHQvKiogU2V0QnJlYWtwb2ludHMgcmVxdWVzdDsgdmFsdWUgb2YgY29tbWFuZCBmaWVsZCBpcyBcInNldEJyZWFrcG9pbnRzXCIuXG5cdFx0U2V0cyBtdWx0aXBsZSBicmVha3BvaW50cyBmb3IgYSBzaW5nbGUgc291cmNlIGFuZCBjbGVhcnMgYWxsIHByZXZpb3VzIGJyZWFrcG9pbnRzIGluIHRoYXQgc291cmNlLlxuXHRcdFRvIGNsZWFyIGFsbCBicmVha3BvaW50IGZvciBhIHNvdXJjZSwgc3BlY2lmeSBhbiBlbXB0eSBhcnJheS5cblx0XHRXaGVuIGEgYnJlYWtwb2ludCBpcyBoaXQsIGEgU3RvcHBlZEV2ZW50IChldmVudCB0eXBlICdicmVha3BvaW50JykgaXMgZ2VuZXJhdGVkLlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFNldEJyZWFrcG9pbnRzUmVxdWVzdCBleHRlbmRzIFJlcXVlc3Qge1xuXHRcdGFyZ3VtZW50czogU2V0QnJlYWtwb2ludHNBcmd1bWVudHM7XG5cdH1cblx0LyoqIEFyZ3VtZW50cyBmb3IgXCJzZXRCcmVha3BvaW50c1wiIHJlcXVlc3QuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU2V0QnJlYWtwb2ludHNBcmd1bWVudHMge1xuXHRcdC8qKiBUaGUgc291cmNlIGxvY2F0aW9uIG9mIHRoZSBicmVha3BvaW50czsgZWl0aGVyIHNvdXJjZS5wYXRoIG9yIHNvdXJjZS5yZWZlcmVuY2UgbXVzdCBiZSBzcGVjaWZpZWQuICovXG5cdFx0c291cmNlOiBTb3VyY2U7XG5cdFx0LyoqIFRoZSBjb2RlIGxvY2F0aW9ucyBvZiB0aGUgYnJlYWtwb2ludHMuICovXG5cdFx0YnJlYWtwb2ludHM/OiBTb3VyY2VCcmVha3BvaW50W107XG5cdFx0LyoqIERlcHJlY2F0ZWQ6IFRoZSBjb2RlIGxvY2F0aW9ucyBvZiB0aGUgYnJlYWtwb2ludHMuICovXG5cdFx0bGluZXM/OiBudW1iZXJbXTtcblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJzZXRCcmVha3BvaW50c1wiIHJlcXVlc3QuXG5cdFx0UmV0dXJuZWQgaXMgaW5mb3JtYXRpb24gYWJvdXQgZWFjaCBicmVha3BvaW50IGNyZWF0ZWQgYnkgdGhpcyByZXF1ZXN0LlxuXHRcdFRoaXMgaW5jbHVkZXMgdGhlIGFjdHVhbCBjb2RlIGxvY2F0aW9uIGFuZCB3aGV0aGVyIHRoZSBicmVha3BvaW50IGNvdWxkIGJlIHZlcmlmaWVkLlxuXHRcdFRoZSBicmVha3BvaW50cyByZXR1cm5lZCBhcmUgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGVsZW1lbnRzIG9mIHRoZSAnYnJlYWtwb2ludHMnXG5cdFx0KG9yIHRoZSBkZXByZWNhdGVkICdsaW5lcycpIGluIHRoZSBTZXRCcmVha3BvaW50c0FyZ3VtZW50cy5cblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBTZXRCcmVha3BvaW50c1Jlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2Uge1xuXHRcdGJvZHk6IHtcblx0XHRcdC8qKiBJbmZvcm1hdGlvbiBhYm91dCB0aGUgYnJlYWtwb2ludHMuIFRoZSBhcnJheSBlbGVtZW50cyBhcmUgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGVsZW1lbnRzIG9mIHRoZSAnYnJlYWtwb2ludHMnIChvciB0aGUgZGVwcmVjYXRlZCAnbGluZXMnKSBpbiB0aGUgU2V0QnJlYWtwb2ludHNBcmd1bWVudHMuICovXG5cdFx0XHRicmVha3BvaW50czogQnJlYWtwb2ludFtdO1xuXHRcdH07XG5cdH1cblxuXHQvKiogU2V0RnVuY3Rpb25CcmVha3BvaW50cyByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwic2V0RnVuY3Rpb25CcmVha3BvaW50c1wiLlxuXHRcdFNldHMgbXVsdGlwbGUgZnVuY3Rpb24gYnJlYWtwb2ludHMgYW5kIGNsZWFycyBhbGwgcHJldmlvdXMgZnVuY3Rpb24gYnJlYWtwb2ludHMuXG5cdFx0VG8gY2xlYXIgYWxsIGZ1bmN0aW9uIGJyZWFrcG9pbnQsIHNwZWNpZnkgYW4gZW1wdHkgYXJyYXkuXG5cdFx0V2hlbiBhIGZ1bmN0aW9uIGJyZWFrcG9pbnQgaXMgaGl0LCBhIFN0b3BwZWRFdmVudCAoZXZlbnQgdHlwZSAnZnVuY3Rpb24gYnJlYWtwb2ludCcpIGlzIGdlbmVyYXRlZC5cblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBTZXRGdW5jdGlvbkJyZWFrcG9pbnRzUmVxdWVzdCBleHRlbmRzIFJlcXVlc3Qge1xuXHRcdGFyZ3VtZW50czogU2V0RnVuY3Rpb25CcmVha3BvaW50c0FyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcInNldEZ1bmN0aW9uQnJlYWtwb2ludHNcIiByZXF1ZXN0LiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFNldEZ1bmN0aW9uQnJlYWtwb2ludHNBcmd1bWVudHMge1xuXHRcdC8qKiBUaGUgZnVuY3Rpb24gbmFtZXMgb2YgdGhlIGJyZWFrcG9pbnRzLiAqL1xuXHRcdGJyZWFrcG9pbnRzOiBGdW5jdGlvbkJyZWFrcG9pbnRbXTtcblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJzZXRGdW5jdGlvbkJyZWFrcG9pbnRzXCIgcmVxdWVzdC5cblx0XHRSZXR1cm5lZCBpcyBpbmZvcm1hdGlvbiBhYm91dCBlYWNoIGJyZWFrcG9pbnQgY3JlYXRlZCBieSB0aGlzIHJlcXVlc3QuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU2V0RnVuY3Rpb25CcmVha3BvaW50c1Jlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2Uge1xuXHRcdGJvZHk6IHtcblx0XHRcdC8qKiBJbmZvcm1hdGlvbiBhYm91dCB0aGUgYnJlYWtwb2ludHMuIFRoZSBhcnJheSBlbGVtZW50cyBjb3JyZXNwb25kIHRvIHRoZSBlbGVtZW50cyBvZiB0aGUgJ2JyZWFrcG9pbnRzJyBhcnJheS4gKi9cblx0XHRcdGJyZWFrcG9pbnRzOiBCcmVha3BvaW50W107XG5cdFx0fTtcblx0fVxuXG5cdC8qKiBTZXRFeGNlcHRpb25CcmVha3BvaW50cyByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwic2V0RXhjZXB0aW9uQnJlYWtwb2ludHNcIi5cblx0XHRFbmFibGUgdGhhdCB0aGUgZGVidWdnZWUgc3RvcHMgb24gZXhjZXB0aW9ucyB3aXRoIGEgU3RvcHBlZEV2ZW50IChldmVudCB0eXBlICdleGNlcHRpb24nKS5cblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBTZXRFeGNlcHRpb25CcmVha3BvaW50c1JlcXVlc3QgZXh0ZW5kcyBSZXF1ZXN0IHtcblx0XHRhcmd1bWVudHM6IFNldEV4Y2VwdGlvbkJyZWFrcG9pbnRzQXJndW1lbnRzO1xuXHR9XG5cdC8qKiBBcmd1bWVudHMgZm9yIFwic2V0RXhjZXB0aW9uQnJlYWtwb2ludHNcIiByZXF1ZXN0LiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFNldEV4Y2VwdGlvbkJyZWFrcG9pbnRzQXJndW1lbnRzIHtcblx0XHQvKiogTmFtZXMgb2YgZW5hYmxlZCBleGNlcHRpb24gYnJlYWtwb2ludHMuICovXG5cdFx0ZmlsdGVyczogc3RyaW5nW107XG5cdH1cblx0LyoqIFJlc3BvbnNlIHRvIFwic2V0RXhjZXB0aW9uQnJlYWtwb2ludHNcIiByZXF1ZXN0LiBUaGlzIGlzIGp1c3QgYW4gYWNrbm93bGVkZ2VtZW50LCBzbyBubyBib2R5IGZpZWxkIGlzIHJlcXVpcmVkLiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFNldEV4Y2VwdGlvbkJyZWFrcG9pbnRzUmVzcG9uc2UgZXh0ZW5kcyBSZXNwb25zZSB7XG5cdH1cblxuXHQvKiogQ29udGludWUgcmVxdWVzdDsgdmFsdWUgb2YgY29tbWFuZCBmaWVsZCBpcyBcImNvbnRpbnVlXCIuXG5cdFx0VGhlIHJlcXVlc3Qgc3RhcnRzIHRoZSBkZWJ1Z2dlZSB0byBydW4gYWdhaW4uXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgQ29udGludWVSZXF1ZXN0IGV4dGVuZHMgUmVxdWVzdCB7XG5cdFx0YXJndW1lbnRzOiBDb250aW51ZUFyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcImNvbnRpbnVlXCIgcmVxdWVzdC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBDb250aW51ZUFyZ3VtZW50cyB7XG5cdFx0LyoqIGNvbnRpbnVlIGV4ZWN1dGlvbiBmb3IgdGhpcyB0aHJlYWQuICovXG5cdFx0dGhyZWFkSWQ6IG51bWJlcjtcblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJjb250aW51ZVwiIHJlcXVlc3QuIFRoaXMgaXMganVzdCBhbiBhY2tub3dsZWRnZW1lbnQsIHNvIG5vIGJvZHkgZmllbGQgaXMgcmVxdWlyZWQuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgQ29udGludWVSZXNwb25zZSBleHRlbmRzIFJlc3BvbnNlIHtcblx0fVxuXG5cdC8qKiBOZXh0IHJlcXVlc3Q7IHZhbHVlIG9mIGNvbW1hbmQgZmllbGQgaXMgXCJuZXh0XCIuXG5cdFx0VGhlIHJlcXVlc3Qgc3RhcnRzIHRoZSBkZWJ1Z2dlZSB0byBydW4gYWdhaW4gZm9yIG9uZSBzdGVwLlxuXHRcdHBlbkRlYnVnIHdpbGwgcmVzcG9uZCB3aXRoIGEgU3RvcHBlZEV2ZW50IChldmVudCB0eXBlICdzdGVwJykgYWZ0ZXIgcnVubmluZyB0aGUgc3RlcC5cblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBOZXh0UmVxdWVzdCBleHRlbmRzIFJlcXVlc3Qge1xuXHRcdGFyZ3VtZW50czogTmV4dEFyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcIm5leHRcIiByZXF1ZXN0LiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIE5leHRBcmd1bWVudHMge1xuXHRcdC8qKiBDb250aW51ZSBleGVjdXRpb24gZm9yIHRoaXMgdGhyZWFkLiAqL1xuXHRcdHRocmVhZElkOiBudW1iZXI7XG5cdH1cblx0LyoqIFJlc3BvbnNlIHRvIFwibmV4dFwiIHJlcXVlc3QuIFRoaXMgaXMganVzdCBhbiBhY2tub3dsZWRnZW1lbnQsIHNvIG5vIGJvZHkgZmllbGQgaXMgcmVxdWlyZWQuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgTmV4dFJlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2Uge1xuXHR9XG5cblx0LyoqIFN0ZXBJbiByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwic3RlcEluXCIuXG5cdFx0VGhlIHJlcXVlc3Qgc3RhcnRzIHRoZSBkZWJ1Z2dlZSB0byBydW4gYWdhaW4gZm9yIG9uZSBzdGVwLlxuXHRcdFRoZSBkZWJ1ZyBhZGFwdGVyIHdpbGwgcmVzcG9uZCB3aXRoIGEgU3RvcHBlZEV2ZW50IChldmVudCB0eXBlICdzdGVwJykgYWZ0ZXIgcnVubmluZyB0aGUgc3RlcC5cblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBTdGVwSW5SZXF1ZXN0IGV4dGVuZHMgUmVxdWVzdCB7XG5cdFx0YXJndW1lbnRzOiBTdGVwSW5Bcmd1bWVudHM7XG5cdH1cblx0LyoqIEFyZ3VtZW50cyBmb3IgXCJzdGVwSW5cIiByZXF1ZXN0LiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFN0ZXBJbkFyZ3VtZW50cyB7XG5cdFx0LyoqIENvbnRpbnVlIGV4ZWN1dGlvbiBmb3IgdGhpcyB0aHJlYWQuICovXG5cdFx0dGhyZWFkSWQ6IG51bWJlcjtcblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJzdGVwSW5cIiByZXF1ZXN0LiBUaGlzIGlzIGp1c3QgYW4gYWNrbm93bGVkZ2VtZW50LCBzbyBubyBib2R5IGZpZWxkIGlzIHJlcXVpcmVkLiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFN0ZXBJblJlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2Uge1xuXHR9XG5cblx0LyoqIFN0ZXBPdXRJbiByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwic3RlcE91dFwiLlxuXHRcdFRoZSByZXF1ZXN0IHN0YXJ0cyB0aGUgZGVidWdnZWUgdG8gcnVuIGFnYWluIGZvciBvbmUgc3RlcC5cblx0XHRwZW5EZWJ1ZyB3aWxsIHJlc3BvbmQgd2l0aCBhIFN0b3BwZWRFdmVudCAoZXZlbnQgdHlwZSAnc3RlcCcpIGFmdGVyIHJ1bm5pbmcgdGhlIHN0ZXAuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU3RlcE91dFJlcXVlc3QgZXh0ZW5kcyBSZXF1ZXN0IHtcblx0XHRhcmd1bWVudHM6IFN0ZXBPdXRBcmd1bWVudHM7XG5cdH1cblx0LyoqIEFyZ3VtZW50cyBmb3IgXCJzdGVwT3V0XCIgcmVxdWVzdC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBTdGVwT3V0QXJndW1lbnRzIHtcblx0XHQvKiogQ29udGludWUgZXhlY3V0aW9uIGZvciB0aGlzIHRocmVhZC4gKi9cblx0XHR0aHJlYWRJZDogbnVtYmVyO1xuXHR9XG5cdC8qKiBSZXNwb25zZSB0byBcInN0ZXBPdXRcIiByZXF1ZXN0LiBUaGlzIGlzIGp1c3QgYW4gYWNrbm93bGVkZ2VtZW50LCBzbyBubyBib2R5IGZpZWxkIGlzIHJlcXVpcmVkLiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFN0ZXBPdXRSZXNwb25zZSBleHRlbmRzIFJlc3BvbnNlIHtcblx0fVxuXG5cdC8qKiBQYXVzZSByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwicGF1c2VcIi5cblx0XHRUaGUgcmVxdWVzdCBzdXNwZW5zZXMgdGhlIGRlYnVnZ2VlLlxuXHRcdHBlbkRlYnVnIHdpbGwgcmVzcG9uZCB3aXRoIGEgU3RvcHBlZEV2ZW50IChldmVudCB0eXBlICdwYXVzZScpIGFmdGVyIGEgc3VjY2Vzc2Z1bCAncGF1c2UnIGNvbW1hbmQuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgUGF1c2VSZXF1ZXN0IGV4dGVuZHMgUmVxdWVzdCB7XG5cdFx0YXJndW1lbnRzOiBQYXVzZUFyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcInBhdXNlXCIgcmVxdWVzdC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBQYXVzZUFyZ3VtZW50cyB7XG5cdFx0LyoqIFBhdXNlIGV4ZWN1dGlvbiBmb3IgdGhpcyB0aHJlYWQuICovXG5cdFx0dGhyZWFkSWQ6IG51bWJlcjtcblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJwYXVzZVwiIHJlcXVlc3QuIFRoaXMgaXMganVzdCBhbiBhY2tub3dsZWRnZW1lbnQsIHNvIG5vIGJvZHkgZmllbGQgaXMgcmVxdWlyZWQuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgUGF1c2VSZXNwb25zZSBleHRlbmRzIFJlc3BvbnNlIHtcblx0fVxuXG5cdC8qKiBTdGFja1RyYWNlIHJlcXVlc3Q7IHZhbHVlIG9mIGNvbW1hbmQgZmllbGQgaXMgXCJzdGFja1RyYWNlXCIuXG5cdFx0VGhlIHJlcXVlc3QgcmV0dXJucyBhIHN0YWNrdHJhY2UgZnJvbSB0aGUgY3VycmVudCBleGVjdXRpb24gc3RhdGUuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU3RhY2tUcmFjZVJlcXVlc3QgZXh0ZW5kcyBSZXF1ZXN0IHtcblx0XHRhcmd1bWVudHM6IFN0YWNrVHJhY2VBcmd1bWVudHM7XG5cdH1cblx0LyoqIEFyZ3VtZW50cyBmb3IgXCJzdGFja1RyYWNlXCIgcmVxdWVzdC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBTdGFja1RyYWNlQXJndW1lbnRzIHtcblx0XHQvKiogUmV0cmlldmUgdGhlIHN0YWNrdHJhY2UgZm9yIHRoaXMgdGhyZWFkLiAqL1xuXHRcdHRocmVhZElkOiBudW1iZXI7XG5cdFx0LyoqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBmcmFtZXMgdG8gcmV0dXJuLiBJZiBsZXZlbHMgaXMgbm90IHNwZWNpZmllZCBvciAwLCBhbGwgZnJhbWVzIGFyZSByZXR1cm5lZC4gKi9cblx0XHRsZXZlbHM/OiBudW1iZXI7XG5cdH1cblx0LyoqIFJlc3BvbnNlIHRvIFwic3RhY2tUcmFjZVwiIHJlcXVlc3QuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU3RhY2tUcmFjZVJlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2Uge1xuXHRcdGJvZHk6IHtcblx0XHRcdC8qKiBUaGUgZnJhbWVzIG9mIHRoZSBzdGFja2ZyYW1lLiBJZiB0aGUgYXJyYXkgaGFzIGxlbmd0aCB6ZXJvLCB0aGVyZSBhcmUgbm8gc3RhY2tmcmFtZXMgYXZhaWxhYmxlLlxuXHRcdFx0XHRUaGlzIG1lYW5zIHRoYXQgdGhlcmUgaXMgbm8gbG9jYXRpb24gaW5mb3JtYXRpb24gYXZhaWxhYmxlLiAqL1xuXHRcdFx0c3RhY2tGcmFtZXM6IFN0YWNrRnJhbWVbXTtcblx0XHR9O1xuXHR9XG5cblx0LyoqIFNjb3BlcyByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwic2NvcGVzXCIuXG5cdFx0VGhlIHJlcXVlc3QgcmV0dXJucyB0aGUgdmFyaWFibGUgc2NvcGVzIGZvciBhIGdpdmVuIHN0YWNrZnJhbWUgSUQuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU2NvcGVzUmVxdWVzdCBleHRlbmRzIFJlcXVlc3Qge1xuXHRcdGFyZ3VtZW50czogU2NvcGVzQXJndW1lbnRzO1xuXHR9XG5cdC8qKiBBcmd1bWVudHMgZm9yIFwic2NvcGVzXCIgcmVxdWVzdC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBTY29wZXNBcmd1bWVudHMge1xuXHRcdC8qKiBSZXRyaWV2ZSB0aGUgc2NvcGVzIGZvciB0aGlzIHN0YWNrZnJhbWUuICovXG5cdFx0ZnJhbWVJZDogbnVtYmVyO1xuXHR9XG5cdC8qKiBSZXNwb25zZSB0byBcInNjb3Blc1wiIHJlcXVlc3QuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU2NvcGVzUmVzcG9uc2UgZXh0ZW5kcyBSZXNwb25zZSB7XG5cdFx0Ym9keToge1xuXHRcdFx0LyoqIFRoZSBzY29wZXMgb2YgdGhlIHN0YWNrZnJhbWUuIElmIHRoZSBhcnJheSBoYXMgbGVuZ3RoIHplcm8sIHRoZXJlIGFyZSBubyBzY29wZXMgYXZhaWxhYmxlLiAqL1xuXHRcdFx0c2NvcGVzOiBTY29wZVtdO1xuXHRcdH07XG5cdH1cblxuXHQvKiogVmFyaWFibGVzIHJlcXVlc3Q7IHZhbHVlIG9mIGNvbW1hbmQgZmllbGQgaXMgXCJ2YXJpYWJsZXNcIi5cblx0XHRSZXRyaWV2ZXMgYWxsIGNoaWxkcmVuIGZvciB0aGUgZ2l2ZW4gdmFyaWFibGUgcmVmZXJlbmNlLlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFZhcmlhYmxlc1JlcXVlc3QgZXh0ZW5kcyBSZXF1ZXN0IHtcblx0XHRhcmd1bWVudHM6IFZhcmlhYmxlc0FyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcInZhcmlhYmxlc1wiIHJlcXVlc3QuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgVmFyaWFibGVzQXJndW1lbnRzIHtcblx0XHQvKiogVGhlIFZhcmlhYmxlIHJlZmVyZW5jZS4gKi9cblx0XHR2YXJpYWJsZXNSZWZlcmVuY2U6IG51bWJlcjtcblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJ2YXJpYWJsZXNcIiByZXF1ZXN0LiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFZhcmlhYmxlc1Jlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2Uge1xuXHRcdGJvZHk6IHtcblx0XHRcdC8qKiBBbGwgY2hpbGRyZW4gZm9yIHRoZSBnaXZlbiB2YXJpYWJsZSByZWZlcmVuY2UgKi9cblx0XHRcdHZhcmlhYmxlczogVmFyaWFibGVbXTtcblx0XHR9O1xuXHR9XG5cblx0LyoqIFNvdXJjZSByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwic291cmNlXCIuXG5cdFx0VGhlIHJlcXVlc3QgcmV0cmlldmVzIHRoZSBzb3VyY2UgY29kZSBmb3IgYSBnaXZlbiBzb3VyY2UgcmVmZXJlbmNlLlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFNvdXJjZVJlcXVlc3QgZXh0ZW5kcyBSZXF1ZXN0IHtcblx0XHRhcmd1bWVudHM6IFNvdXJjZUFyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcInNvdXJjZVwiIHJlcXVlc3QuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU291cmNlQXJndW1lbnRzIHtcblx0XHQvKiogVGhlIHJlZmVyZW5jZSB0byB0aGUgc291cmNlLiBUaGlzIGlzIHRoZSB2YWx1ZSByZWNlaXZlZCBpbiBTb3VyY2UucmVmZXJlbmNlLiAqL1xuXHRcdHNvdXJjZVJlZmVyZW5jZTogbnVtYmVyO1xuXHR9XG5cdC8qKiBSZXNwb25zZSB0byBcInNvdXJjZVwiIHJlcXVlc3QuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU291cmNlUmVzcG9uc2UgZXh0ZW5kcyBSZXNwb25zZSB7XG5cdFx0Ym9keToge1xuXHRcdFx0LyoqIENvbnRlbnQgb2YgdGhlIHNvdXJjZSByZWZlcmVuY2UgKi9cblx0XHRcdGNvbnRlbnQ6IHN0cmluZztcblx0XHR9O1xuXHR9XG5cblx0LyoqIFRocmVhZCByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwidGhyZWFkc1wiLlxuXHRcdFRoZSByZXF1ZXN0IHJldHJpZXZlcyBhIGxpc3Qgb2YgYWxsIHRocmVhZHMuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgVGhyZWFkc1JlcXVlc3QgZXh0ZW5kcyBSZXF1ZXN0IHtcblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJ0aHJlYWRzXCIgcmVxdWVzdC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBUaHJlYWRzUmVzcG9uc2UgZXh0ZW5kcyBSZXNwb25zZSB7XG5cdFx0Ym9keToge1xuXHRcdFx0LyoqIEFsbCB0aHJlYWRzLiAqL1xuXHRcdFx0dGhyZWFkczogVGhyZWFkW107XG5cdFx0fTtcblx0fVxuXG5cdC8qKiBFdmFsdWF0ZSByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwiZXZhbHVhdGVcIi5cblx0XHRFdmFsdWF0ZXMgdGhlIGdpdmVuIGV4cHJlc3Npb24gaW4gdGhlIGNvbnRleHQgb2YgdGhlIHRvcCBtb3N0IHN0YWNrIGZyYW1lLlxuXHRcdFRoZSBleHByZXNzaW9uIGhhcyBhY2Nlc3MgdG8gYW55IHZhcmlhYmxlcyBhbmQgYXJndW1lbnRzIHRoYXQgYXJlIGluIHNjb3BlLlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIEV2YWx1YXRlUmVxdWVzdCBleHRlbmRzIFJlcXVlc3Qge1xuXHRcdGFyZ3VtZW50czogRXZhbHVhdGVBcmd1bWVudHM7XG5cdH1cblx0LyoqIEFyZ3VtZW50cyBmb3IgXCJldmFsdWF0ZVwiIHJlcXVlc3QuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgRXZhbHVhdGVBcmd1bWVudHMge1xuXHRcdC8qKiBUaGUgZXhwcmVzc2lvbiB0byBldmFsdWF0ZS4gKi9cblx0XHRleHByZXNzaW9uOiBzdHJpbmc7XG5cdFx0LyoqIEV2YWx1YXRlIHRoZSBleHByZXNzaW9uIGluIHRoZSBzY29wZSBvZiB0aGlzIHN0YWNrIGZyYW1lLiBJZiBub3Qgc3BlY2lmaWVkLCB0aGUgZXhwcmVzc2lvbiBpcyBldmFsdWF0ZWQgaW4gdGhlIGdsb2JhbCBzY29wZS4gKi9cblx0XHRmcmFtZUlkPzogbnVtYmVyO1xuXHRcdC8qKiBUaGUgY29udGV4dCBpbiB3aGljaCB0aGUgZXZhbHVhdGUgcmVxdWVzdCBpcyBydW4uIFBvc3NpYmxlIHZhbHVlcyBhcmUgJ3dhdGNoJyBpZiBldmFsdWF0ZSBpcyBydW4gaW4gYSB3YXRjaCwgJ3JlcGwnIGlmIHJ1biBmcm9tIHRoZSBSRVBMIGNvbnNvbGUsIG9yICdob3ZlcicgaWYgcnVuIGZyb20gYSBkYXRhIGhvdmVyLiAqL1xuXHRcdGNvbnRleHQ/OiBzdHJpbmc7XG5cdH1cblx0LyoqIFJlc3BvbnNlIHRvIFwiZXZhbHVhdGVcIiByZXF1ZXN0LiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIEV2YWx1YXRlUmVzcG9uc2UgZXh0ZW5kcyBSZXNwb25zZSB7XG5cdFx0Ym9keToge1xuXHRcdFx0LyoqIFRoZSByZXN1bHQgb2YgdGhlIGV2YWx1YXRlLiAqL1xuXHRcdFx0cmVzdWx0OiBzdHJpbmc7XG5cdFx0XHQvKiogSWYgdmFyaWFibGVzUmVmZXJlbmNlIGlzID4gMCwgdGhlIGV2YWx1YXRlIHJlc3VsdCBpcyBzdHJ1Y3R1cmVkIGFuZCBpdHMgY2hpbGRyZW4gY2FuIGJlIHJldHJpZXZlZCBieSBwYXNzaW5nIHZhcmlhYmxlc1JlZmVyZW5jZSB0byB0aGUgVmFyaWFibGVzUmVxdWVzdCAqL1xuXHRcdFx0dmFyaWFibGVzUmVmZXJlbmNlOiBudW1iZXI7XG5cdFx0fTtcblx0fVxuXG5cdC8vLS0tLSBUeXBlc1xuXG5cdC8qKiBJbmZvcm1hdGlvbiBhYm91dCB0aGUgY2FwYWJpbGl0aWVzIG9mIGEgZGVidWcgYWRhcHRlci4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBDYXBhYmlsaXRlcyB7XG5cdFx0LyoqIFRoZSBkZWJ1ZyBhZGFwdGVyIHN1cHBvcnRzIHRoZSBjb25maWd1cmF0aW9uRG9uZVJlcXVlc3QuICovXG5cdFx0c3VwcG9ydHNDb25maWd1cmF0aW9uRG9uZVJlcXVlc3Q/OiBib29sZWFuO1xuXHRcdC8qKiBUaGUgZGVidWcgYWRhcHRlciBzdXBwb3J0cyBmdW5jdGlvbkJyZWFrcG9pbnRzLiAqL1xuXHRcdHN1cHBvcnRzRnVuY3Rpb25CcmVha3BvaW50cz86IGJvb2xlYW47XG5cdFx0LyoqIFRoZSBkZWJ1ZyBhZGFwdGVyIHN1cHBvcnRzIGNvbmRpdGlvbmFsQnJlYWtwb2ludHMuICovXG5cdFx0c3VwcG9ydHNDb25kaXRpb25hbEJyZWFrcG9pbnRzPzogYm9vbGVhbjtcblx0XHQvKiogVGhlIGRlYnVnIGFkYXB0ZXIgc3VwcG9ydHMgYSAoc2lkZSBlZmZlY3QgZnJlZSkgZXZhbHVhdGUgcmVxdWVzdCBmb3IgZGF0YSBob3ZlcnMuICovXG5cdFx0c3VwcG9ydHNFdmFsdWF0ZUZvckhvdmVycz86IGJvb2xlYW47XG5cblx0XHQvKiogQXZhaWxhYmxlIGZpbHRlcnMgZm9yIHRoZSBzZXRFeGNlcHRpb25CcmVha3BvaW50cyByZXF1ZXN0LiAqL1xuXHRcdGV4Y2VwdGlvbkJyZWFrcG9pbnRGaWx0ZXJzPzogW1xuXHRcdFx0e1xuXHRcdFx0XHQvKiogVGhlIGludGVybmFsIElEIG9mIHRoZSBmaWx0ZXIuIFRoaXMgdmFsdWUgaXMgcGFzc2VkIHRvIHRoZSBzZXRFeGNlcHRpb25CcmVha3BvaW50cyByZXF1ZXN0LiAqL1xuXHRcdFx0XHRmaWx0ZXI6IHN0cmluZyxcblx0XHRcdFx0LyoqIFRoZSBuYW1lIG9mIHRoZSBmaWx0ZXIuIFRoaXMgd2lsbCBiZSBzaG93biBpbiB0aGUgVUkuICovXG5cdFx0XHRcdGxhYmVsOiBzdHJpbmcsXG5cdFx0XHRcdC8qKiBJbml0aWFsIHZhbHVlIG9mIHRoZSBmaWx0ZXIuIElmIG5vdCBzcGVjaWZpZWQgYSB2YWx1ZSAnZmFsc2UnIGlzIGFzc3VtZWQuICovXG5cdFx0XHRcdGRlZmF1bHQ/OiBib29sZWFuXG5cdFx0XHR9XG5cdFx0XVxuXHR9XG5cblx0LyoqIEEgc3RydWN0dXJlZCBtZXNzYWdlIG9iamVjdC4gVXNlZCB0byByZXR1cm4gZXJyb3JzIGZyb20gcmVxdWVzdHMuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgTWVzc2FnZSB7XG5cdFx0LyoqIFVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgbWVzc2FnZS4gKi9cblx0XHRpZDogbnVtYmVyO1xuXHRcdC8qKiBBIGZvcm1hdCBzdHJpbmcgZm9yIHRoZSBtZXNzYWdlLiBFbWJlZGRlZCB2YXJpYWJsZXMgaGF2ZSB0aGUgZm9ybSAne25hbWV9Jy5cblx0XHQgICAgSWYgdmFyaWFibGUgbmFtZSBzdGFydHMgd2l0aCBhbiB1bmRlcnNjb3JlIGNoYXJhY3RlciwgdGhlIHZhcmlhYmxlIGRvZXMgbm90IGNvbnRhaW4gdXNlciBkYXRhIChQSUkpIGFuZCBjYW4gYmUgc2FmZWx5IHVzZWQgZm9yIHRlbGVtZXRyeSBwdXJwb3Nlcy4gKi9cblx0XHRmb3JtYXQ6IHN0cmluZztcblx0XHQvKiogQW4gb2JqZWN0IHVzZWQgYXMgYSBkaWN0aW9uYXJ5IGZvciBsb29raW5nIHVwIHRoZSB2YXJpYWJsZXMgaW4gdGhlIGZvcm1hdCBzdHJpbmcuICovXG5cdFx0dmFyaWFibGVzPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcblx0XHQvKiogaWYgdHJ1ZSBzZW5kIHRvIHRlbGVtZXRyeSAqL1xuXHRcdHNlbmRUZWxlbWV0cnk/OiBib29sZWFuO1xuXHRcdC8qKiBpZiB0cnVlIHNob3cgdXNlciAqL1xuXHRcdHNob3dVc2VyPzogYm9vbGVhbjtcblx0XHQvKiogQW4gb3B0aW9uYWwgdXJsIHdoZXJlIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gYWJvdXQgdGhpcyBtZXNzYWdlIGNhbiBiZSBmb3VuZC4gKi9cblx0XHR1cmw/OiBzdHJpbmc7XG5cdFx0LyoqIEFuIG9wdGlvbmFsIGxhYmVsIHRoYXQgaXMgcHJlc2VudGVkIHRvIHRoZSB1c2VyIGFzIHRoZSBVSSBmb3Igb3BlbmluZyB0aGUgdXJsLiAqL1xuXHRcdHVybExhYmVsPzogc3RyaW5nO1xuXHR9XG5cblx0LyoqIEEgVGhyZWFkICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgVGhyZWFkIHtcblx0XHQvKiogVW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSB0aHJlYWQuICovXG5cdFx0aWQ6IG51bWJlcjtcblx0XHQvKiogQSBuYW1lIG9mIHRoZSB0aHJlYWQuICovXG5cdFx0bmFtZTogc3RyaW5nO1xuXHR9XG5cblx0LyoqIEEgU291cmNlIGlzIGEgZGVzY3JpcHRvciBmb3Igc291cmNlIGNvZGUuIEl0IGlzIHJldHVybmVkIGZyb20gdGhlIGRlYnVnIGFkYXB0ZXIgYXMgcGFydCBvZiBhIFN0YWNrRnJhbWUgYW5kIGl0IGlzIHVzZWQgYnkgY2xpZW50cyB3aGVuIHNwZWNpZnlpbmcgYnJlYWtwb2ludHMuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU291cmNlIHtcblx0XHQvKiogVGhlIHNob3J0IG5hbWUgb2YgdGhlIHNvdXJjZS4gRXZlcnkgc291cmNlIHJldHVybmVkIGZyb20gdGhlIGRlYnVnIGFkYXB0ZXIgaGFzIGEgbmFtZS4gV2hlbiBzcGVjaWZ5aW5nIGEgc291cmNlIHRvIHRoZSBkZWJ1ZyBhZGFwdGVyIHRoaXMgbmFtZSBpcyBvcHRpb25hbC4gKi9cblx0XHRuYW1lPzogc3RyaW5nO1xuXHRcdC8qKiBUaGUgbG9uZyAoYWJzb2x1dGUpIHBhdGggb2YgdGhlIHNvdXJjZS4gSXQgaXMgbm90IGd1YXJhbnRlZWQgdGhhdCB0aGUgc291cmNlIGV4aXN0cyBhdCB0aGlzIGxvY2F0aW9uLiAqL1xuXHRcdHBhdGg/OiBzdHJpbmc7XG5cdFx0LyoqIElmIHNvdXJjZVJlZmVyZW5jZSA+IDAgdGhlIGNvbnRlbnRzIG9mIHRoZSBzb3VyY2UgY2FuIGJlIHJldHJpZXZlZCB0aHJvdWdoIHRoZSBTb3VyY2VSZXF1ZXN0LiBBIHNvdXJjZVJlZmVyZW5jZSBpcyBvbmx5IHZhbGlkIGZvciBhIHNlc3Npb24sIHNvIGl0IG11c3Qgbm90IGJlIHVzZWQgdG8gcGVyc2lzdCBhIHNvdXJjZS4gKi9cblx0XHRzb3VyY2VSZWZlcmVuY2U/OiBudW1iZXI7XG5cdFx0LyoqIFRoZSAob3B0aW9uYWwpIG9yaWdpbiBvZiB0aGlzIHNvdXJjZTogcG9zc2libGUgdmFsdWVzIFwiaW50ZXJuYWwgbW9kdWxlXCIsIFwiaW5saW5lZCBjb250ZW50IGZyb20gc291cmNlIG1hcFwiLCBldGMuICovXG5cdFx0b3JpZ2luPzogc3RyaW5nO1xuXHRcdC8qKiBPcHRpb25hbCBkYXRhIHRoYXQgYSBkZWJ1ZyBhZGFwdGVyIG1pZ2h0IHdhbnQgdG8gbG9vcCB0aHJvdWdoIHRoZSBjbGllbnQuIFRoZSBjbGllbnQgc2hvdWxkIGxlYXZlIHRoZSBkYXRhIGludGFjdCBhbmQgcGVyc2lzdCBpdCBhY3Jvc3Mgc2Vzc2lvbnMuIFRoZSBjbGllbnQgc2hvdWxkIG5vdCBpbnRlcnByZXQgdGhlIGRhdGEuICovXG5cdFx0YWRhcHRlckRhdGE/OiBhbnk7XG5cdH1cblxuXHQvKiogQSBTdGFja2ZyYW1lIGNvbnRhaW5zIHRoZSBzb3VyY2UgbG9jYXRpb24uICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU3RhY2tGcmFtZSB7XG5cdFx0LyoqIEFuIGlkZW50aWZpZXIgZm9yIHRoZSBzdGFjayBmcmFtZS4gVGhpcyBpZCBjYW4gYmUgdXNlZCB0byByZXRyaWV2ZSB0aGUgc2NvcGVzIG9mIHRoZSBmcmFtZSB3aXRoIHRoZSAnc2NvcGVzUmVxdWVzdCcuICovXG5cdFx0aWQ6IG51bWJlcjtcblx0XHQvKiogVGhlIG5hbWUgb2YgdGhlIHN0YWNrIGZyYW1lLCB0eXBpY2FsbHkgYSBtZXRob2QgbmFtZSAqL1xuXHRcdG5hbWU6IHN0cmluZztcblx0XHQvKiogVGhlIG9wdGlvbmFsIHNvdXJjZSBvZiB0aGUgZnJhbWUuICovXG5cdFx0c291cmNlPzogU291cmNlO1xuXHRcdC8qKiBUaGUgbGluZSB3aXRoaW4gdGhlIGZpbGUgb2YgdGhlIGZyYW1lLiBJZiBzb3VyY2UgaXMgbnVsbCBvciBkb2Vzbid0IGV4aXN0LCBsaW5lIGlzIDAgYW5kIG11c3QgYmUgaWdub3JlZC4gKi9cblx0XHRsaW5lOiBudW1iZXI7XG5cdFx0LyoqIFRoZSBjb2x1bW4gd2l0aGluIHRoZSBsaW5lLiBJZiBzb3VyY2UgaXMgbnVsbCBvciBkb2Vzbid0IGV4aXN0LCBjb2x1bW4gaXMgMCBhbmQgbXVzdCBiZSBpZ25vcmVkLiAqL1xuXHRcdGNvbHVtbjogbnVtYmVyO1xuXHR9XG5cblx0LyoqIEEgU2NvcGUgaXMgYSBuYW1lZCBjb250YWluZXIgZm9yIHZhcmlhYmxlcy4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBTY29wZSB7XG5cdFx0LyoqIG5hbWUgb2YgdGhlIHNjb3BlIChhcyBzdWNoICdBcmd1bWVudHMnLCAnTG9jYWxzJykgKi9cblx0XHRuYW1lOiBzdHJpbmc7XG5cdFx0LyoqIFRoZSB2YXJpYWJsZXMgb2YgdGhpcyBzY29wZSBjYW4gYmUgcmV0cmlldmVkIGJ5IHBhc3NpbmcgdGhlIHZhbHVlIG9mIHZhcmlhYmxlc1JlZmVyZW5jZSB0byB0aGUgVmFyaWFibGVzUmVxdWVzdC4gKi9cblx0XHR2YXJpYWJsZXNSZWZlcmVuY2U6IG51bWJlcjtcblx0XHQvKiogSWYgdHJ1ZSwgdGhlIG51bWJlciBvZiB2YXJpYWJsZXMgaW4gdGhpcyBzY29wZSBpcyBsYXJnZSBvciBleHBlbnNpdmUgdG8gcmV0cmlldmUuICovXG5cdFx0ZXhwZW5zaXZlOiBib29sZWFuO1xuXHR9XG5cblx0LyoqIEEgVmFyaWFibGUgaXMgYSBuYW1lL3ZhbHVlIHBhaXIuXG5cdFx0SWYgdGhlIHZhbHVlIGlzIHN0cnVjdHVyZWQgKGhhcyBjaGlsZHJlbiksIGEgaGFuZGxlIGlzIHByb3ZpZGVkIHRvIHJldHJpZXZlIHRoZSBjaGlsZHJlbiB3aXRoIHRoZSBWYXJpYWJsZXNSZXF1ZXN0LlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFZhcmlhYmxlIHtcblx0XHQvKiogVGhlIHZhcmlhYmxlJ3MgbmFtZSAqL1xuXHRcdG5hbWU6IHN0cmluZztcblx0XHQvKiogVGhlIHZhcmlhYmxlJ3MgdmFsdWUuIEZvciBzdHJ1Y3R1cmVkIG9iamVjdHMgdGhpcyBjYW4gYmUgYSBtdWx0aSBsaW5lIHRleHQsIGUuZy4gZm9yIGEgZnVuY3Rpb24gdGhlIGJvZHkgb2YgYSBmdW5jdGlvbi4gKi9cblx0XHR2YWx1ZTogc3RyaW5nO1xuXHRcdC8qKiBJZiB2YXJpYWJsZXNSZWZlcmVuY2UgaXMgPiAwLCB0aGUgdmFyaWFibGUgaXMgc3RydWN0dXJlZCBhbmQgaXRzIGNoaWxkcmVuIGNhbiBiZSByZXRyaWV2ZWQgYnkgcGFzc2luZyB2YXJpYWJsZXNSZWZlcmVuY2UgdG8gdGhlIFZhcmlhYmxlc1JlcXVlc3QuICovXG5cdFx0dmFyaWFibGVzUmVmZXJlbmNlOiBudW1iZXI7XG5cdH1cblxuXHQvKiogUHJvcGVydGllcyBvZiBhIGJyZWFrcG9pbnQgcGFzc2VkIHRvIHRoZSBzZXRCcmVha3BvaW50cyByZXF1ZXN0LlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFNvdXJjZUJyZWFrcG9pbnQge1xuXHRcdC8qKiBUaGUgc291cmNlIGxpbmUgb2YgdGhlIGJyZWFrcG9pbnQuICovXG5cdFx0bGluZTogbnVtYmVyO1xuXHRcdC8qKiBBbiBvcHRpb25hbCBzb3VyY2UgY29sdW1uIG9mIHRoZSBicmVha3BvaW50LiAqL1xuXHRcdGNvbHVtbj86IG51bWJlcjtcblx0XHQvKiogQW4gb3B0aW9uYWwgZXhwcmVzc2lvbiBmb3IgY29uZGl0aW9uYWwgYnJlYWtwb2ludHMuICovXG5cdFx0Y29uZGl0aW9uPzogc3RyaW5nO1xuXHR9XG5cblx0LyoqIFByb3BlcnRpZXMgb2YgYSBicmVha3BvaW50IHBhc3NlZCB0byB0aGUgc2V0RnVuY3Rpb25CcmVha3BvaW50cyByZXF1ZXN0LlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIEZ1bmN0aW9uQnJlYWtwb2ludCB7XG5cdFx0LyoqIFRoZSBuYW1lIG9mIHRoZSBmdW5jdGlvbi4gKi9cblx0XHRuYW1lOiBzdHJpbmc7XG5cdFx0LyoqIEFuIG9wdGlvbmFsIGV4cHJlc3Npb24gZm9yIGNvbmRpdGlvbmFsIGJyZWFrcG9pbnRzLiAqL1xuXHRcdGNvbmRpdGlvbj86IHN0cmluZztcblx0fVxuXG5cdC8qKiBJbmZvcm1hdGlvbiBhYm91dCBhIEJyZWFrcG9pbnQgY3JlYXRlZCBpbiBzZXRCcmVha3BvaW50cyBvciBzZXRGdW5jdGlvbkJyZWFrcG9pbnRzLlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIEJyZWFrcG9pbnQge1xuXHRcdC8qKiBBbiBvcHRpb25hbCB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIGJyZWFrcG9pbnQuICovXG5cdFx0aWQ/OiBudW1iZXI7XG5cdFx0LyoqIElmIHRydWUgYnJlYWtwb2ludCBjb3VsZCBiZSBzZXQgKGJ1dCBub3QgbmVjZXNzYXJpbHkgYXQgdGhlIGRlc2lyZWQgbG9jYXRpb24pLiAgKi9cblx0XHR2ZXJpZmllZDogYm9vbGVhbjtcblx0XHQvKiogQW4gb3B0aW9uYWwgbWVzc2FnZSBhYm91dCB0aGUgc3RhdGUgb2YgdGhlIGJyZWFrcG9pbnQuIFRoaXMgaXMgc2hvd24gdG8gdGhlIHVzZXIgYW5kIGNhbiBiZSB1c2VkIHRvIGV4cGxhaW4gd2h5IGEgYnJlYWtwb2ludCBjb3VsZCBub3QgYmUgdmVyaWZpZWQuICovXG5cdFx0bWVzc2FnZT86IHN0cmluZztcblx0XHQvKiogVGhlIHNvdXJjZSB3aGVyZSB0aGUgYnJlYWtwb2ludCBpcyBsb2NhdGVkLiAqL1xuXHRcdHNvdXJjZT86IFNvdXJjZTtcblx0XHQvKiogVGhlIGFjdHVhbCBsaW5lIG9mIHRoZSBicmVha3BvaW50LiAqL1xuXHRcdGxpbmU/OiBudW1iZXI7XG5cdFx0LyoqIFRoZSBhY3R1YWwgY29sdW1uIG9mIHRoZSBicmVha3BvaW50LiAqL1xuXHRcdGNvbHVtbj86IG51bWJlcjtcblx0fVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWdQcm90b2NvbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9kZWJ1Z1Byb3RvY29sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Z0dBR2dHO0FBRWhHLFlBQVksQ0FBQztBQW1uQloiLCJzb3VyY2VzQ29udGVudCI6WyIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogIENvcHlyaWdodCAoYykgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIExpY2Vuc2UudHh0IGluIHRoZSBwcm9qZWN0IHJvb3QgZm9yIGxpY2Vuc2UgaW5mb3JtYXRpb24uXG4gKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuJ3VzZSBzdHJpY3QnO1xuXG4vKiogRGVjbGFyYXRpb24gbW9kdWxlIGRlc2NyaWJpbmcgdGhlIFZTIENvZGUgZGVidWcgcHJvdG9jb2xcbiAqL1xuZXhwb3J0IG1vZHVsZSBEZWJ1Z1Byb3RvY29sIHtcblxuXHQvKiogQmFzZSBjbGFzcyBvZiByZXF1ZXN0cywgcmVzcG9uc2VzLCBhbmQgZXZlbnRzLiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFByb3RvY29sTWVzc2FnZSB7XG5cdFx0LyoqIFNlcXVlbmNlIG51bWJlciAqL1xuXHRcdHNlcTogbnVtYmVyO1xuXHRcdC8qKiBPbmUgb2YgXCJyZXF1ZXN0XCIsIFwicmVzcG9uc2VcIiwgb3IgXCJldmVudFwiICovXG5cdFx0dHlwZTogc3RyaW5nO1xuXHR9XG5cblx0LyoqIENsaWVudC1pbml0aWF0ZWQgcmVxdWVzdCAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFJlcXVlc3QgZXh0ZW5kcyBQcm90b2NvbE1lc3NhZ2Uge1xuXHRcdC8qKiBUaGUgY29tbWFuZCB0byBleGVjdXRlICovXG5cdFx0Y29tbWFuZDogc3RyaW5nO1xuXHRcdC8qKiBPYmplY3QgY29udGFpbmluZyBhcmd1bWVudHMgZm9yIHRoZSBjb21tYW5kICovXG5cdFx0YXJndW1lbnRzPzogYW55O1xuXHR9XG5cblx0LyoqIFNlcnZlci1pbml0aWF0ZWQgZXZlbnQgKi9cblx0ZXhwb3J0IGludGVyZmFjZSBFdmVudCBleHRlbmRzIFByb3RvY29sTWVzc2FnZSB7XG5cdFx0LyoqIFR5cGUgb2YgZXZlbnQgKi9cblx0XHRldmVudDogc3RyaW5nO1xuXHRcdC8qKiBFdmVudC1zcGVjaWZpYyBpbmZvcm1hdGlvbiAqL1xuXHRcdGJvZHk/OiBhbnk7XG5cdH1cblxuXHQvKiogU2VydmVyLWluaXRpYXRlZCByZXNwb25zZSB0byBjbGllbnQgcmVxdWVzdCAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFJlc3BvbnNlIGV4dGVuZHMgUHJvdG9jb2xNZXNzYWdlIHtcblx0XHQvKiogU2VxdWVuY2UgbnVtYmVyIG9mIHRoZSBjb3JyZXNwb25kaW5nIHJlcXVlc3QgKi9cblx0XHRyZXF1ZXN0X3NlcTogbnVtYmVyO1xuXHRcdC8qKiBPdXRjb21lIG9mIHRoZSByZXF1ZXN0ICovXG5cdFx0c3VjY2VzczogYm9vbGVhbjtcblx0XHQvKiogVGhlIGNvbW1hbmQgcmVxdWVzdGVkICovXG5cdFx0Y29tbWFuZDogc3RyaW5nO1xuXHRcdC8qKiBDb250YWlucyBlcnJvciBtZXNzYWdlIGlmIHN1Y2Nlc3MgPT0gZmFsc2UuICovXG5cdFx0bWVzc2FnZT86IHN0cmluZztcblx0XHQvKiogQ29udGFpbnMgcmVxdWVzdCByZXN1bHQgaWYgc3VjY2VzcyBpcyB0cnVlIGFuZCBvcHRpb25hbCBlcnJvciBkZXRhaWxzIGlmIHN1Y2Nlc3MgaXMgZmFsc2UuICovXG5cdFx0Ym9keT86IGFueTtcblx0fVxuXG5cdC8vLS0tLSBFdmVudHNcblxuXHQvKiogRXZlbnQgbWVzc2FnZSBmb3IgXCJpbml0aWFsaXplZFwiIGV2ZW50IHR5cGUuXG5cdFx0VGhpcyBldmVudCBpbmRpY2F0ZXMgdGhhdCB0aGUgZGVidWcgYWRhcHRlciBpcyByZWFkeSB0byBhY2NlcHQgY29uZmlndXJhdGlvbiByZXF1ZXN0cyAoZS5nLiBTZXRCcmVha3BvaW50c1JlcXVlc3QsIFNldEV4Y2VwdGlvbkJyZWFrcG9pbnRzUmVxdWVzdCkuXG5cdFx0QSBkZWJ1ZyBhZGFwdGVyIGlzIGV4cGVjdGVkIHRvIHNlbmQgdGhpcyBldmVudCB3aGVuIGl0IGlzIHJlYWR5IHRvIGFjY2VwdCBjb25maWd1cmF0aW9uIHJlcXVlc3RzLlxuXHRcdFRoZSBzZXF1ZW5jZSBvZiBldmVudHMvcmVxdWVzdHMgaXMgYXMgZm9sbG93czpcblx0XHQtIGFkYXB0ZXJzIHNlbmRzIEluaXRpYWxpemVkRXZlbnQgKGF0IGFueSB0aW1lKVxuXHRcdC0gZnJvbnRlbmQgc2VuZHMgemVybyBvciBtb3JlIFNldEJyZWFrcG9pbnRzUmVxdWVzdFxuXHRcdC0gZnJvbnRlbmQgc2VuZHMgb25lIFNldEZ1bmN0aW9uQnJlYWtwb2ludHNSZXF1ZXN0XG5cdFx0LSBmcm9udGVuZCBzZW5kcyBhIFNldEV4Y2VwdGlvbkJyZWFrcG9pbnRzUmVxdWVzdCBpZiBvbmUgb3IgbW9yZSBleGNlcHRpb25CcmVha3BvaW50RmlsdGVycyBoYXZlIGJlZW4gZGVmaW5lZCAob3IgaWYgc3VwcG9ydHNDb25maWd1cmF0aW9uRG9uZVJlcXVlc3QgaXMgbm90IGRlZmluZWQgb3IgZmFsc2UpXG5cdFx0LSBmcm9udGVuZCBzZW5kcyBvdGhlciBjb25maWd1cmF0aW9uIHJlcXVlc3RzIHRoYXQgYXJlIGFkZGVkIGluIHRoZSBmdXR1cmVcblx0XHQtIGZyb250ZW5kIHNlbmRzIG9uZSBDb25maWd1cmF0aW9uRG9uZVJlcXVlc3Rcblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBJbml0aWFsaXplZEV2ZW50IGV4dGVuZHMgRXZlbnQge1xuXHR9XG5cblx0LyoqIEV2ZW50IG1lc3NhZ2UgZm9yIFwic3RvcHBlZFwiIGV2ZW50IHR5cGUuXG5cdFx0VGhlIGV2ZW50IGluZGljYXRlcyB0aGF0IHRoZSBleGVjdXRpb24gb2YgdGhlIGRlYnVnZ2VlIGhhcyBzdG9wcGVkIGR1ZSB0byBhIGJyZWFrIGNvbmRpdGlvbi5cblx0XHRUaGlzIGNhbiBiZSBjYXVzZWQgYnkgYSBicmVhayBwb2ludCBwcmV2aW91c2x5IHNldCwgYSBzdGVwcGluZyBhY3Rpb24gaGFzIGNvbXBsZXRlZCBvciBieSBleGVjdXRpbmcgYSBkZWJ1Z2dlciBzdGF0ZW1lbnQuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU3RvcHBlZEV2ZW50IGV4dGVuZHMgRXZlbnQge1xuXHRcdGJvZHk6IHtcblx0XHRcdC8qKiBUaGUgcmVhc29uIGZvciB0aGUgZXZlbnQgKHN1Y2ggYXM6ICdzdGVwJywgJ2JyZWFrcG9pbnQnLCAnZXhjZXB0aW9uJywgJ3BhdXNlJykgKi9cblx0XHRcdHJlYXNvbjogc3RyaW5nO1xuXHRcdFx0LyoqIFRoZSB0aHJlYWQgd2hpY2ggd2FzIHN0b3BwZWQuICovXG5cdFx0XHR0aHJlYWRJZD86IG51bWJlcjtcblx0XHRcdC8qKiBBZGRpdGlvbmFsIGluZm9ybWF0aW9uLiBFLmcuIGlmIHJlYXNvbiBpcyAnZXhjZXB0aW9uJywgdGV4dCBjb250YWlucyB0aGUgZXhjZXB0aW9uIG5hbWUuICovXG5cdFx0XHR0ZXh0Pzogc3RyaW5nO1xuXHRcdFx0LyoqIElmIGFsbFRocmVhZHNTdG9wcGVkIGlzIHRydWUsIGEgZGVidWcgYWRhcHRlciBjYW4gYW5ub3VuY2UgdGhhdCBhbGwgdGhyZWFkcyBoYXZlIHN0b3BwZWQuXG5cdFx0XHQgKiAgVGhlIGNsaWVudCBzaG91bGQgdXNlIHRoaXMgaW5mb3JtYXRpb24gdG8gZW5hYmxlIHRoYXQgYWxsIHRocmVhZHMgY2FuIGJlIGV4cGFuZGVkIHRvIGFjY2VzcyB0aGVpciBzdGFja3RyYWNlcy5cblx0XHRcdCAqICBJZiB0aGUgYXR0cmlidXRlIGlzIG1pc3Npbmcgb3IgZmFsc2UsIG9ubHkgdGhlIHRocmVhZCB3aXRoIHRoZSBnaXZlbiB0aHJlYWRJZCBjYW4gYmUgZXhwYW5kZWQuXG5cdFx0XHQgKiovXG5cdFx0XHRhbGxUaHJlYWRzU3RvcHBlZD86IGJvb2xlYW47XG5cdFx0fTtcblx0fVxuXG5cdC8qKiBFdmVudCBtZXNzYWdlIGZvciBcImV4aXRlZFwiIGV2ZW50IHR5cGUuXG5cdFx0VGhlIGV2ZW50IGluZGljYXRlcyB0aGF0IHRoZSBkZWJ1Z2dlZSBoYXMgZXhpdGVkLlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIEV4aXRlZEV2ZW50IGV4dGVuZHMgRXZlbnQge1xuXHRcdGJvZHk6IHtcblx0XHRcdC8qKiBUaGUgZXhpdCBjb2RlIHJldHVybmVkIGZyb20gdGhlIGRlYnVnZ2VlLiAqL1xuXHRcdFx0ZXhpdENvZGU6IG51bWJlcjtcblx0XHR9O1xuXHR9XG5cblx0LyoqIEV2ZW50IG1lc3NhZ2UgZm9yIFwidGVybWluYXRlZFwiIGV2ZW50IHR5cGVzLlxuXHRcdFRoZSBldmVudCBpbmRpY2F0ZXMgdGhhdCBkZWJ1Z2dpbmcgb2YgdGhlIGRlYnVnZ2VlIGhhcyB0ZXJtaW5hdGVkLlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFRlcm1pbmF0ZWRFdmVudCBleHRlbmRzIEV2ZW50IHtcblx0XHRib2R5Pzoge1xuXHRcdFx0LyoqIEEgZGVidWcgYWRhcHRlciBtYXkgc2V0ICdyZXN0YXJ0JyB0byB0cnVlIHRvIHJlcXVlc3QgdGhhdCB0aGUgZnJvbnQgZW5kIHJlc3RhcnRzIHRoZSBzZXNzaW9uLiAqL1xuXHRcdFx0cmVzdGFydD86IGJvb2xlYW47XG5cdFx0fVxuXHR9XG5cblx0LyoqIEV2ZW50IG1lc3NhZ2UgZm9yIFwidGhyZWFkXCIgZXZlbnQgdHlwZS5cblx0XHRUaGUgZXZlbnQgaW5kaWNhdGVzIHRoYXQgYSB0aHJlYWQgaGFzIHN0YXJ0ZWQgb3IgZXhpdGVkLlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFRocmVhZEV2ZW50IGV4dGVuZHMgRXZlbnQge1xuXHRcdGJvZHk6IHtcblx0XHRcdC8qKiBUaGUgcmVhc29uIGZvciB0aGUgZXZlbnQgKHN1Y2ggYXM6ICdzdGFydGVkJywgJ2V4aXRlZCcpLiAqL1xuXHRcdFx0cmVhc29uOiBzdHJpbmc7XG5cdFx0XHQvKiogVGhlIGlkZW50aWZpZXIgb2YgdGhlIHRocmVhZC4gKi9cblx0XHRcdHRocmVhZElkOiBudW1iZXI7XG5cdFx0fTtcblx0fVxuXG5cdC8qKiBFdmVudCBtZXNzYWdlIGZvciBcIm91dHB1dFwiIGV2ZW50IHR5cGUuXG5cdFx0VGhlIGV2ZW50IGluZGljYXRlcyB0aGF0IHRoZSB0YXJnZXQgaGFzIHByb2R1Y2VkIG91dHB1dC5cblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBPdXRwdXRFdmVudCBleHRlbmRzIEV2ZW50IHtcblx0XHRib2R5OiB7XG5cdFx0XHQvKiogVGhlIGNhdGVnb3J5IG9mIG91dHB1dCAoc3VjaCBhczogJ2NvbnNvbGUnLCAnc3Rkb3V0JywgJ3N0ZGVycicsICd0ZWxlbWV0cnknKS4gSWYgbm90IHNwZWNpZmllZCwgJ2NvbnNvbGUnIGlzIGFzc3VtZWQuICovXG5cdFx0XHRjYXRlZ29yeT86IHN0cmluZztcblx0XHRcdC8qKiBUaGUgb3V0cHV0IHRvIHJlcG9ydC4gKi9cblx0XHRcdG91dHB1dDogc3RyaW5nO1xuXHRcdFx0LyoqIE9wdGlvbmFsIGRhdGEgdG8gcmVwb3J0LiBGb3IgdGhlICd0ZWxlbWV0cnknIGNhdGVnb3J5IHRoZSBkYXRhIHdpbGwgYmUgc2VudCB0byB0ZWxlbWV0cnksIGZvciB0aGUgb3RoZXIgY2F0ZWdvcmllcyB0aGUgZGF0YSBpcyBzaG93biBpbiBKU09OIGZvcm1hdC4gKi9cblx0XHRcdGRhdGE/OiBhbnk7XG5cdFx0fTtcblx0fVxuXG5cdC8qKiBFdmVudCBtZXNzYWdlIGZvciBcImJyZWFrcG9pbnRcIiBldmVudCB0eXBlLlxuXHRcdFRoZSBldmVudCBpbmRpY2F0ZXMgdGhhdCBzb21lIGluZm9ybWF0aW9uIGFib3V0IGEgYnJlYWtwb2ludCBoYXMgY2hhbmdlZC5cblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBCcmVha3BvaW50RXZlbnQgZXh0ZW5kcyBFdmVudCB7XG5cdFx0Ym9keToge1xuXHRcdFx0LyoqIFRoZSByZWFzb24gZm9yIHRoZSBldmVudCAoc3VjaCBhczogJ2NoYW5nZWQnLCAnbmV3JykuICovXG5cdFx0XHRyZWFzb246IHN0cmluZztcblx0XHRcdC8qKiBUaGUgYnJlYWtwb2ludC4gKi9cblx0XHRcdGJyZWFrcG9pbnQ6IEJyZWFrcG9pbnQ7XG5cdFx0fVxuXHR9XG5cblx0Ly8tLS0tIFJlcXVlc3RzXG5cblx0LyoqIE9uIGVycm9yIHRoYXQgaXMgd2hlbmV2ZXIgJ3N1Y2Nlc3MnIGlzIGZhbHNlLCB0aGUgYm9keSBjYW4gcHJvdmlkZSBtb3JlIGRldGFpbHMuXG5cdCAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIEVycm9yUmVzcG9uc2UgZXh0ZW5kcyBSZXNwb25zZSB7XG5cdFx0Ym9keToge1xuXHRcdFx0LyoqIEFuIG9wdGlvbmFsLCBzdHJ1Y3R1cmVkIGVycm9yIG1lc3NhZ2UuICovXG5cdFx0XHRlcnJvcj86IE1lc3NhZ2Vcblx0XHR9XG5cdH1cblxuXHQvKiogSW5pdGlhbGl6ZSByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwiaW5pdGlhbGl6ZVwiLlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIEluaXRpYWxpemVSZXF1ZXN0IGV4dGVuZHMgUmVxdWVzdCB7XG5cdFx0YXJndW1lbnRzOiBJbml0aWFsaXplUmVxdWVzdEFyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcImluaXRpYWxpemVcIiByZXF1ZXN0LiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIEluaXRpYWxpemVSZXF1ZXN0QXJndW1lbnRzIHtcblx0XHQvKiogVGhlIElEIG9mIHRoZSBkZWJ1Z2dlciBhZGFwdGVyLiBVc2VkIHRvIHNlbGVjdCBvciB2ZXJpZnkgZGVidWdnZXIgYWRhcHRlci4gKi9cblx0XHRhZGFwdGVySUQ6IHN0cmluZztcblx0XHQvKiogSWYgdHJ1ZSBhbGwgbGluZSBudW1iZXJzIGFyZSAxLWJhc2VkIChkZWZhdWx0KS4gKi9cblx0XHRsaW5lc1N0YXJ0QXQxPzogYm9vbGVhbjtcblx0XHQvKiogSWYgdHJ1ZSBhbGwgY29sdW1uIG51bWJlcnMgYXJlIDEtYmFzZWQgKGRlZmF1bHQpLiAqL1xuXHRcdGNvbHVtbnNTdGFydEF0MT86IGJvb2xlYW47XG5cdFx0LyoqIERldGVybWluZXMgaW4gd2hhdCBmb3JtYXQgcGF0aHMgYXJlIHNwZWNpZmllZC4gUG9zc2libGUgdmFsdWVzIGFyZSAncGF0aCcgb3IgJ3VyaScuIFRoZSBkZWZhdWx0IGlzICdwYXRoJywgd2hpY2ggaXMgdGhlIG5hdGl2ZSBmb3JtYXQuICovXG5cdFx0cGF0aEZvcm1hdD86IHN0cmluZztcblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gSW5pdGlhbGl6ZSByZXF1ZXN0LiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIEluaXRpYWxpemVSZXNwb25zZSBleHRlbmRzIFJlc3BvbnNlIHtcblx0XHQvKiogVGhlIGNhcGFiaWxpdGllcyBvZiB0aGlzIGRlYnVnIGFkYXB0ZXIgKi9cblx0XHRib2R5PzogQ2FwYWJpbGl0ZXM7XG5cdH1cblxuXHQvKiogQ29uZmlndXJhdGlvbkRvbmUgcmVxdWVzdDsgdmFsdWUgb2YgY29tbWFuZCBmaWVsZCBpcyBcImNvbmZpZ3VyYXRpb25Eb25lXCIuXG5cdFx0VGhlIGNsaWVudCBvZiB0aGUgZGVidWcgcHJvdG9jb2wgbXVzdCBzZW5kIHRoaXMgcmVxdWVzdCBhdCB0aGUgZW5kIG9mIHRoZSBzZXF1ZW5jZSBvZiBjb25maWd1cmF0aW9uIHJlcXVlc3RzICh3aGljaCB3YXMgc3RhcnRlZCBieSB0aGUgSW5pdGlhbGl6ZWRFdmVudClcblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBDb25maWd1cmF0aW9uRG9uZVJlcXVlc3QgZXh0ZW5kcyBSZXF1ZXN0IHtcblx0XHRhcmd1bWVudHM/OiBDb25maWd1cmF0aW9uRG9uZUFyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcImNvbmZpZ3VyYXRpb25Eb25lXCIgcmVxdWVzdC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBDb25maWd1cmF0aW9uRG9uZUFyZ3VtZW50cyB7XG5cdFx0LyogVGhlIGNvbmZpZ3VyYXRpb25Eb25lIHJlcXVlc3QgaGFzIG5vIHN0YW5kYXJkaXplZCBhdHRyaWJ1dGVzLiAqL1xuXHR9XG5cdC8qKiBSZXNwb25zZSB0byBcImNvbmZpZ3VyYXRpb25Eb25lXCIgcmVxdWVzdC4gVGhpcyBpcyBqdXN0IGFuIGFja25vd2xlZGdlbWVudCwgc28gbm8gYm9keSBmaWVsZCBpcyByZXF1aXJlZC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBDb25maWd1cmF0aW9uRG9uZVJlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2Uge1xuXHR9XG5cblx0LyoqIExhdW5jaCByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwibGF1bmNoXCIuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgTGF1bmNoUmVxdWVzdCBleHRlbmRzIFJlcXVlc3Qge1xuXHRcdGFyZ3VtZW50czogTGF1bmNoUmVxdWVzdEFyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcImxhdW5jaFwiIHJlcXVlc3QuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgTGF1bmNoUmVxdWVzdEFyZ3VtZW50cyB7XG5cdFx0LyogVGhlIGxhdW5jaCByZXF1ZXN0IGhhcyBubyBzdGFuZGFyZGl6ZWQgYXR0cmlidXRlcy4gKi9cblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJsYXVuY2hcIiByZXF1ZXN0LiBUaGlzIGlzIGp1c3QgYW4gYWNrbm93bGVkZ2VtZW50LCBzbyBubyBib2R5IGZpZWxkIGlzIHJlcXVpcmVkLiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIExhdW5jaFJlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2Uge1xuXHR9XG5cblx0LyoqIEF0dGFjaCByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwiYXR0YWNoXCIuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgQXR0YWNoUmVxdWVzdCBleHRlbmRzIFJlcXVlc3Qge1xuXHRcdGFyZ3VtZW50czogQXR0YWNoUmVxdWVzdEFyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcImF0dGFjaFwiIHJlcXVlc3QuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgQXR0YWNoUmVxdWVzdEFyZ3VtZW50cyB7XG5cdFx0LyogVGhlIGF0dGFjaCByZXF1ZXN0IGhhcyBubyBzdGFuZGFyZGl6ZWQgYXR0cmlidXRlcy4gKi9cblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJhdHRhY2hcIiByZXF1ZXN0LiBUaGlzIGlzIGp1c3QgYW4gYWNrbm93bGVkZ2VtZW50LCBzbyBubyBib2R5IGZpZWxkIGlzIHJlcXVpcmVkLiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIEF0dGFjaFJlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2Uge1xuXHR9XG5cblx0LyoqIERpc2Nvbm5lY3QgcmVxdWVzdDsgdmFsdWUgb2YgY29tbWFuZCBmaWVsZCBpcyBcImRpc2Nvbm5lY3RcIi5cblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBEaXNjb25uZWN0UmVxdWVzdCBleHRlbmRzIFJlcXVlc3Qge1xuXHRcdGFyZ3VtZW50cz86IERpc2Nvbm5lY3RBcmd1bWVudHM7XG5cdH1cblx0LyoqIEFyZ3VtZW50cyBmb3IgXCJkaXNjb25uZWN0XCIgcmVxdWVzdC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBEaXNjb25uZWN0QXJndW1lbnRzIHtcblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJkaXNjb25uZWN0XCIgcmVxdWVzdC4gVGhpcyBpcyBqdXN0IGFuIGFja25vd2xlZGdlbWVudCwgc28gbm8gYm9keSBmaWVsZCBpcyByZXF1aXJlZC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBEaXNjb25uZWN0UmVzcG9uc2UgZXh0ZW5kcyBSZXNwb25zZSB7XG5cdH1cblxuXHQvKiogU2V0QnJlYWtwb2ludHMgcmVxdWVzdDsgdmFsdWUgb2YgY29tbWFuZCBmaWVsZCBpcyBcInNldEJyZWFrcG9pbnRzXCIuXG5cdFx0U2V0cyBtdWx0aXBsZSBicmVha3BvaW50cyBmb3IgYSBzaW5nbGUgc291cmNlIGFuZCBjbGVhcnMgYWxsIHByZXZpb3VzIGJyZWFrcG9pbnRzIGluIHRoYXQgc291cmNlLlxuXHRcdFRvIGNsZWFyIGFsbCBicmVha3BvaW50IGZvciBhIHNvdXJjZSwgc3BlY2lmeSBhbiBlbXB0eSBhcnJheS5cblx0XHRXaGVuIGEgYnJlYWtwb2ludCBpcyBoaXQsIGEgU3RvcHBlZEV2ZW50IChldmVudCB0eXBlICdicmVha3BvaW50JykgaXMgZ2VuZXJhdGVkLlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFNldEJyZWFrcG9pbnRzUmVxdWVzdCBleHRlbmRzIFJlcXVlc3Qge1xuXHRcdGFyZ3VtZW50czogU2V0QnJlYWtwb2ludHNBcmd1bWVudHM7XG5cdH1cblx0LyoqIEFyZ3VtZW50cyBmb3IgXCJzZXRCcmVha3BvaW50c1wiIHJlcXVlc3QuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU2V0QnJlYWtwb2ludHNBcmd1bWVudHMge1xuXHRcdC8qKiBUaGUgc291cmNlIGxvY2F0aW9uIG9mIHRoZSBicmVha3BvaW50czsgZWl0aGVyIHNvdXJjZS5wYXRoIG9yIHNvdXJjZS5yZWZlcmVuY2UgbXVzdCBiZSBzcGVjaWZpZWQuICovXG5cdFx0c291cmNlOiBTb3VyY2U7XG5cdFx0LyoqIFRoZSBjb2RlIGxvY2F0aW9ucyBvZiB0aGUgYnJlYWtwb2ludHMuICovXG5cdFx0YnJlYWtwb2ludHM/OiBTb3VyY2VCcmVha3BvaW50W107XG5cdFx0LyoqIERlcHJlY2F0ZWQ6IFRoZSBjb2RlIGxvY2F0aW9ucyBvZiB0aGUgYnJlYWtwb2ludHMuICovXG5cdFx0bGluZXM/OiBudW1iZXJbXTtcblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJzZXRCcmVha3BvaW50c1wiIHJlcXVlc3QuXG5cdFx0UmV0dXJuZWQgaXMgaW5mb3JtYXRpb24gYWJvdXQgZWFjaCBicmVha3BvaW50IGNyZWF0ZWQgYnkgdGhpcyByZXF1ZXN0LlxuXHRcdFRoaXMgaW5jbHVkZXMgdGhlIGFjdHVhbCBjb2RlIGxvY2F0aW9uIGFuZCB3aGV0aGVyIHRoZSBicmVha3BvaW50IGNvdWxkIGJlIHZlcmlmaWVkLlxuXHRcdFRoZSBicmVha3BvaW50cyByZXR1cm5lZCBhcmUgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGVsZW1lbnRzIG9mIHRoZSAnYnJlYWtwb2ludHMnXG5cdFx0KG9yIHRoZSBkZXByZWNhdGVkICdsaW5lcycpIGluIHRoZSBTZXRCcmVha3BvaW50c0FyZ3VtZW50cy5cblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBTZXRCcmVha3BvaW50c1Jlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2Uge1xuXHRcdGJvZHk6IHtcblx0XHRcdC8qKiBJbmZvcm1hdGlvbiBhYm91dCB0aGUgYnJlYWtwb2ludHMuIFRoZSBhcnJheSBlbGVtZW50cyBhcmUgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGVsZW1lbnRzIG9mIHRoZSAnYnJlYWtwb2ludHMnIChvciB0aGUgZGVwcmVjYXRlZCAnbGluZXMnKSBpbiB0aGUgU2V0QnJlYWtwb2ludHNBcmd1bWVudHMuICovXG5cdFx0XHRicmVha3BvaW50czogQnJlYWtwb2ludFtdO1xuXHRcdH07XG5cdH1cblxuXHQvKiogU2V0RnVuY3Rpb25CcmVha3BvaW50cyByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwic2V0RnVuY3Rpb25CcmVha3BvaW50c1wiLlxuXHRcdFNldHMgbXVsdGlwbGUgZnVuY3Rpb24gYnJlYWtwb2ludHMgYW5kIGNsZWFycyBhbGwgcHJldmlvdXMgZnVuY3Rpb24gYnJlYWtwb2ludHMuXG5cdFx0VG8gY2xlYXIgYWxsIGZ1bmN0aW9uIGJyZWFrcG9pbnQsIHNwZWNpZnkgYW4gZW1wdHkgYXJyYXkuXG5cdFx0V2hlbiBhIGZ1bmN0aW9uIGJyZWFrcG9pbnQgaXMgaGl0LCBhIFN0b3BwZWRFdmVudCAoZXZlbnQgdHlwZSAnZnVuY3Rpb24gYnJlYWtwb2ludCcpIGlzIGdlbmVyYXRlZC5cblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBTZXRGdW5jdGlvbkJyZWFrcG9pbnRzUmVxdWVzdCBleHRlbmRzIFJlcXVlc3Qge1xuXHRcdGFyZ3VtZW50czogU2V0RnVuY3Rpb25CcmVha3BvaW50c0FyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcInNldEZ1bmN0aW9uQnJlYWtwb2ludHNcIiByZXF1ZXN0LiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFNldEZ1bmN0aW9uQnJlYWtwb2ludHNBcmd1bWVudHMge1xuXHRcdC8qKiBUaGUgZnVuY3Rpb24gbmFtZXMgb2YgdGhlIGJyZWFrcG9pbnRzLiAqL1xuXHRcdGJyZWFrcG9pbnRzOiBGdW5jdGlvbkJyZWFrcG9pbnRbXTtcblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJzZXRGdW5jdGlvbkJyZWFrcG9pbnRzXCIgcmVxdWVzdC5cblx0XHRSZXR1cm5lZCBpcyBpbmZvcm1hdGlvbiBhYm91dCBlYWNoIGJyZWFrcG9pbnQgY3JlYXRlZCBieSB0aGlzIHJlcXVlc3QuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU2V0RnVuY3Rpb25CcmVha3BvaW50c1Jlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2Uge1xuXHRcdGJvZHk6IHtcblx0XHRcdC8qKiBJbmZvcm1hdGlvbiBhYm91dCB0aGUgYnJlYWtwb2ludHMuIFRoZSBhcnJheSBlbGVtZW50cyBjb3JyZXNwb25kIHRvIHRoZSBlbGVtZW50cyBvZiB0aGUgJ2JyZWFrcG9pbnRzJyBhcnJheS4gKi9cblx0XHRcdGJyZWFrcG9pbnRzOiBCcmVha3BvaW50W107XG5cdFx0fTtcblx0fVxuXG5cdC8qKiBTZXRFeGNlcHRpb25CcmVha3BvaW50cyByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwic2V0RXhjZXB0aW9uQnJlYWtwb2ludHNcIi5cblx0XHRFbmFibGUgdGhhdCB0aGUgZGVidWdnZWUgc3RvcHMgb24gZXhjZXB0aW9ucyB3aXRoIGEgU3RvcHBlZEV2ZW50IChldmVudCB0eXBlICdleGNlcHRpb24nKS5cblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBTZXRFeGNlcHRpb25CcmVha3BvaW50c1JlcXVlc3QgZXh0ZW5kcyBSZXF1ZXN0IHtcblx0XHRhcmd1bWVudHM6IFNldEV4Y2VwdGlvbkJyZWFrcG9pbnRzQXJndW1lbnRzO1xuXHR9XG5cdC8qKiBBcmd1bWVudHMgZm9yIFwic2V0RXhjZXB0aW9uQnJlYWtwb2ludHNcIiByZXF1ZXN0LiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFNldEV4Y2VwdGlvbkJyZWFrcG9pbnRzQXJndW1lbnRzIHtcblx0XHQvKiogTmFtZXMgb2YgZW5hYmxlZCBleGNlcHRpb24gYnJlYWtwb2ludHMuICovXG5cdFx0ZmlsdGVyczogc3RyaW5nW107XG5cdH1cblx0LyoqIFJlc3BvbnNlIHRvIFwic2V0RXhjZXB0aW9uQnJlYWtwb2ludHNcIiByZXF1ZXN0LiBUaGlzIGlzIGp1c3QgYW4gYWNrbm93bGVkZ2VtZW50LCBzbyBubyBib2R5IGZpZWxkIGlzIHJlcXVpcmVkLiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFNldEV4Y2VwdGlvbkJyZWFrcG9pbnRzUmVzcG9uc2UgZXh0ZW5kcyBSZXNwb25zZSB7XG5cdH1cblxuXHQvKiogQ29udGludWUgcmVxdWVzdDsgdmFsdWUgb2YgY29tbWFuZCBmaWVsZCBpcyBcImNvbnRpbnVlXCIuXG5cdFx0VGhlIHJlcXVlc3Qgc3RhcnRzIHRoZSBkZWJ1Z2dlZSB0byBydW4gYWdhaW4uXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgQ29udGludWVSZXF1ZXN0IGV4dGVuZHMgUmVxdWVzdCB7XG5cdFx0YXJndW1lbnRzOiBDb250aW51ZUFyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcImNvbnRpbnVlXCIgcmVxdWVzdC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBDb250aW51ZUFyZ3VtZW50cyB7XG5cdFx0LyoqIGNvbnRpbnVlIGV4ZWN1dGlvbiBmb3IgdGhpcyB0aHJlYWQuICovXG5cdFx0dGhyZWFkSWQ6IG51bWJlcjtcblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJjb250aW51ZVwiIHJlcXVlc3QuIFRoaXMgaXMganVzdCBhbiBhY2tub3dsZWRnZW1lbnQsIHNvIG5vIGJvZHkgZmllbGQgaXMgcmVxdWlyZWQuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgQ29udGludWVSZXNwb25zZSBleHRlbmRzIFJlc3BvbnNlIHtcblx0fVxuXG5cdC8qKiBOZXh0IHJlcXVlc3Q7IHZhbHVlIG9mIGNvbW1hbmQgZmllbGQgaXMgXCJuZXh0XCIuXG5cdFx0VGhlIHJlcXVlc3Qgc3RhcnRzIHRoZSBkZWJ1Z2dlZSB0byBydW4gYWdhaW4gZm9yIG9uZSBzdGVwLlxuXHRcdHBlbkRlYnVnIHdpbGwgcmVzcG9uZCB3aXRoIGEgU3RvcHBlZEV2ZW50IChldmVudCB0eXBlICdzdGVwJykgYWZ0ZXIgcnVubmluZyB0aGUgc3RlcC5cblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBOZXh0UmVxdWVzdCBleHRlbmRzIFJlcXVlc3Qge1xuXHRcdGFyZ3VtZW50czogTmV4dEFyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcIm5leHRcIiByZXF1ZXN0LiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIE5leHRBcmd1bWVudHMge1xuXHRcdC8qKiBDb250aW51ZSBleGVjdXRpb24gZm9yIHRoaXMgdGhyZWFkLiAqL1xuXHRcdHRocmVhZElkOiBudW1iZXI7XG5cdH1cblx0LyoqIFJlc3BvbnNlIHRvIFwibmV4dFwiIHJlcXVlc3QuIFRoaXMgaXMganVzdCBhbiBhY2tub3dsZWRnZW1lbnQsIHNvIG5vIGJvZHkgZmllbGQgaXMgcmVxdWlyZWQuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgTmV4dFJlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2Uge1xuXHR9XG5cblx0LyoqIFN0ZXBJbiByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwic3RlcEluXCIuXG5cdFx0VGhlIHJlcXVlc3Qgc3RhcnRzIHRoZSBkZWJ1Z2dlZSB0byBydW4gYWdhaW4gZm9yIG9uZSBzdGVwLlxuXHRcdFRoZSBkZWJ1ZyBhZGFwdGVyIHdpbGwgcmVzcG9uZCB3aXRoIGEgU3RvcHBlZEV2ZW50IChldmVudCB0eXBlICdzdGVwJykgYWZ0ZXIgcnVubmluZyB0aGUgc3RlcC5cblx0Ki9cblx0ZXhwb3J0IGludGVyZmFjZSBTdGVwSW5SZXF1ZXN0IGV4dGVuZHMgUmVxdWVzdCB7XG5cdFx0YXJndW1lbnRzOiBTdGVwSW5Bcmd1bWVudHM7XG5cdH1cblx0LyoqIEFyZ3VtZW50cyBmb3IgXCJzdGVwSW5cIiByZXF1ZXN0LiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFN0ZXBJbkFyZ3VtZW50cyB7XG5cdFx0LyoqIENvbnRpbnVlIGV4ZWN1dGlvbiBmb3IgdGhpcyB0aHJlYWQuICovXG5cdFx0dGhyZWFkSWQ6IG51bWJlcjtcblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJzdGVwSW5cIiByZXF1ZXN0LiBUaGlzIGlzIGp1c3QgYW4gYWNrbm93bGVkZ2VtZW50LCBzbyBubyBib2R5IGZpZWxkIGlzIHJlcXVpcmVkLiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFN0ZXBJblJlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2Uge1xuXHR9XG5cblx0LyoqIFN0ZXBPdXRJbiByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwic3RlcE91dFwiLlxuXHRcdFRoZSByZXF1ZXN0IHN0YXJ0cyB0aGUgZGVidWdnZWUgdG8gcnVuIGFnYWluIGZvciBvbmUgc3RlcC5cblx0XHRwZW5EZWJ1ZyB3aWxsIHJlc3BvbmQgd2l0aCBhIFN0b3BwZWRFdmVudCAoZXZlbnQgdHlwZSAnc3RlcCcpIGFmdGVyIHJ1bm5pbmcgdGhlIHN0ZXAuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU3RlcE91dFJlcXVlc3QgZXh0ZW5kcyBSZXF1ZXN0IHtcblx0XHRhcmd1bWVudHM6IFN0ZXBPdXRBcmd1bWVudHM7XG5cdH1cblx0LyoqIEFyZ3VtZW50cyBmb3IgXCJzdGVwT3V0XCIgcmVxdWVzdC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBTdGVwT3V0QXJndW1lbnRzIHtcblx0XHQvKiogQ29udGludWUgZXhlY3V0aW9uIGZvciB0aGlzIHRocmVhZC4gKi9cblx0XHR0aHJlYWRJZDogbnVtYmVyO1xuXHR9XG5cdC8qKiBSZXNwb25zZSB0byBcInN0ZXBPdXRcIiByZXF1ZXN0LiBUaGlzIGlzIGp1c3QgYW4gYWNrbm93bGVkZ2VtZW50LCBzbyBubyBib2R5IGZpZWxkIGlzIHJlcXVpcmVkLiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFN0ZXBPdXRSZXNwb25zZSBleHRlbmRzIFJlc3BvbnNlIHtcblx0fVxuXG5cdC8qKiBQYXVzZSByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwicGF1c2VcIi5cblx0XHRUaGUgcmVxdWVzdCBzdXNwZW5zZXMgdGhlIGRlYnVnZ2VlLlxuXHRcdHBlbkRlYnVnIHdpbGwgcmVzcG9uZCB3aXRoIGEgU3RvcHBlZEV2ZW50IChldmVudCB0eXBlICdwYXVzZScpIGFmdGVyIGEgc3VjY2Vzc2Z1bCAncGF1c2UnIGNvbW1hbmQuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgUGF1c2VSZXF1ZXN0IGV4dGVuZHMgUmVxdWVzdCB7XG5cdFx0YXJndW1lbnRzOiBQYXVzZUFyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcInBhdXNlXCIgcmVxdWVzdC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBQYXVzZUFyZ3VtZW50cyB7XG5cdFx0LyoqIFBhdXNlIGV4ZWN1dGlvbiBmb3IgdGhpcyB0aHJlYWQuICovXG5cdFx0dGhyZWFkSWQ6IG51bWJlcjtcblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJwYXVzZVwiIHJlcXVlc3QuIFRoaXMgaXMganVzdCBhbiBhY2tub3dsZWRnZW1lbnQsIHNvIG5vIGJvZHkgZmllbGQgaXMgcmVxdWlyZWQuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgUGF1c2VSZXNwb25zZSBleHRlbmRzIFJlc3BvbnNlIHtcblx0fVxuXG5cdC8qKiBTdGFja1RyYWNlIHJlcXVlc3Q7IHZhbHVlIG9mIGNvbW1hbmQgZmllbGQgaXMgXCJzdGFja1RyYWNlXCIuXG5cdFx0VGhlIHJlcXVlc3QgcmV0dXJucyBhIHN0YWNrdHJhY2UgZnJvbSB0aGUgY3VycmVudCBleGVjdXRpb24gc3RhdGUuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU3RhY2tUcmFjZVJlcXVlc3QgZXh0ZW5kcyBSZXF1ZXN0IHtcblx0XHRhcmd1bWVudHM6IFN0YWNrVHJhY2VBcmd1bWVudHM7XG5cdH1cblx0LyoqIEFyZ3VtZW50cyBmb3IgXCJzdGFja1RyYWNlXCIgcmVxdWVzdC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBTdGFja1RyYWNlQXJndW1lbnRzIHtcblx0XHQvKiogUmV0cmlldmUgdGhlIHN0YWNrdHJhY2UgZm9yIHRoaXMgdGhyZWFkLiAqL1xuXHRcdHRocmVhZElkOiBudW1iZXI7XG5cdFx0LyoqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBmcmFtZXMgdG8gcmV0dXJuLiBJZiBsZXZlbHMgaXMgbm90IHNwZWNpZmllZCBvciAwLCBhbGwgZnJhbWVzIGFyZSByZXR1cm5lZC4gKi9cblx0XHRsZXZlbHM/OiBudW1iZXI7XG5cdH1cblx0LyoqIFJlc3BvbnNlIHRvIFwic3RhY2tUcmFjZVwiIHJlcXVlc3QuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU3RhY2tUcmFjZVJlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2Uge1xuXHRcdGJvZHk6IHtcblx0XHRcdC8qKiBUaGUgZnJhbWVzIG9mIHRoZSBzdGFja2ZyYW1lLiBJZiB0aGUgYXJyYXkgaGFzIGxlbmd0aCB6ZXJvLCB0aGVyZSBhcmUgbm8gc3RhY2tmcmFtZXMgYXZhaWxhYmxlLlxuXHRcdFx0XHRUaGlzIG1lYW5zIHRoYXQgdGhlcmUgaXMgbm8gbG9jYXRpb24gaW5mb3JtYXRpb24gYXZhaWxhYmxlLiAqL1xuXHRcdFx0c3RhY2tGcmFtZXM6IFN0YWNrRnJhbWVbXTtcblx0XHR9O1xuXHR9XG5cblx0LyoqIFNjb3BlcyByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwic2NvcGVzXCIuXG5cdFx0VGhlIHJlcXVlc3QgcmV0dXJucyB0aGUgdmFyaWFibGUgc2NvcGVzIGZvciBhIGdpdmVuIHN0YWNrZnJhbWUgSUQuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU2NvcGVzUmVxdWVzdCBleHRlbmRzIFJlcXVlc3Qge1xuXHRcdGFyZ3VtZW50czogU2NvcGVzQXJndW1lbnRzO1xuXHR9XG5cdC8qKiBBcmd1bWVudHMgZm9yIFwic2NvcGVzXCIgcmVxdWVzdC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBTY29wZXNBcmd1bWVudHMge1xuXHRcdC8qKiBSZXRyaWV2ZSB0aGUgc2NvcGVzIGZvciB0aGlzIHN0YWNrZnJhbWUuICovXG5cdFx0ZnJhbWVJZDogbnVtYmVyO1xuXHR9XG5cdC8qKiBSZXNwb25zZSB0byBcInNjb3Blc1wiIHJlcXVlc3QuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU2NvcGVzUmVzcG9uc2UgZXh0ZW5kcyBSZXNwb25zZSB7XG5cdFx0Ym9keToge1xuXHRcdFx0LyoqIFRoZSBzY29wZXMgb2YgdGhlIHN0YWNrZnJhbWUuIElmIHRoZSBhcnJheSBoYXMgbGVuZ3RoIHplcm8sIHRoZXJlIGFyZSBubyBzY29wZXMgYXZhaWxhYmxlLiAqL1xuXHRcdFx0c2NvcGVzOiBTY29wZVtdO1xuXHRcdH07XG5cdH1cblxuXHQvKiogVmFyaWFibGVzIHJlcXVlc3Q7IHZhbHVlIG9mIGNvbW1hbmQgZmllbGQgaXMgXCJ2YXJpYWJsZXNcIi5cblx0XHRSZXRyaWV2ZXMgYWxsIGNoaWxkcmVuIGZvciB0aGUgZ2l2ZW4gdmFyaWFibGUgcmVmZXJlbmNlLlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFZhcmlhYmxlc1JlcXVlc3QgZXh0ZW5kcyBSZXF1ZXN0IHtcblx0XHRhcmd1bWVudHM6IFZhcmlhYmxlc0FyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcInZhcmlhYmxlc1wiIHJlcXVlc3QuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgVmFyaWFibGVzQXJndW1lbnRzIHtcblx0XHQvKiogVGhlIFZhcmlhYmxlIHJlZmVyZW5jZS4gKi9cblx0XHR2YXJpYWJsZXNSZWZlcmVuY2U6IG51bWJlcjtcblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJ2YXJpYWJsZXNcIiByZXF1ZXN0LiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFZhcmlhYmxlc1Jlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2Uge1xuXHRcdGJvZHk6IHtcblx0XHRcdC8qKiBBbGwgY2hpbGRyZW4gZm9yIHRoZSBnaXZlbiB2YXJpYWJsZSByZWZlcmVuY2UgKi9cblx0XHRcdHZhcmlhYmxlczogVmFyaWFibGVbXTtcblx0XHR9O1xuXHR9XG5cblx0LyoqIFNvdXJjZSByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwic291cmNlXCIuXG5cdFx0VGhlIHJlcXVlc3QgcmV0cmlldmVzIHRoZSBzb3VyY2UgY29kZSBmb3IgYSBnaXZlbiBzb3VyY2UgcmVmZXJlbmNlLlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFNvdXJjZVJlcXVlc3QgZXh0ZW5kcyBSZXF1ZXN0IHtcblx0XHRhcmd1bWVudHM6IFNvdXJjZUFyZ3VtZW50cztcblx0fVxuXHQvKiogQXJndW1lbnRzIGZvciBcInNvdXJjZVwiIHJlcXVlc3QuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU291cmNlQXJndW1lbnRzIHtcblx0XHQvKiogVGhlIHJlZmVyZW5jZSB0byB0aGUgc291cmNlLiBUaGlzIGlzIHRoZSB2YWx1ZSByZWNlaXZlZCBpbiBTb3VyY2UucmVmZXJlbmNlLiAqL1xuXHRcdHNvdXJjZVJlZmVyZW5jZTogbnVtYmVyO1xuXHR9XG5cdC8qKiBSZXNwb25zZSB0byBcInNvdXJjZVwiIHJlcXVlc3QuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU291cmNlUmVzcG9uc2UgZXh0ZW5kcyBSZXNwb25zZSB7XG5cdFx0Ym9keToge1xuXHRcdFx0LyoqIENvbnRlbnQgb2YgdGhlIHNvdXJjZSByZWZlcmVuY2UgKi9cblx0XHRcdGNvbnRlbnQ6IHN0cmluZztcblx0XHR9O1xuXHR9XG5cblx0LyoqIFRocmVhZCByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwidGhyZWFkc1wiLlxuXHRcdFRoZSByZXF1ZXN0IHJldHJpZXZlcyBhIGxpc3Qgb2YgYWxsIHRocmVhZHMuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgVGhyZWFkc1JlcXVlc3QgZXh0ZW5kcyBSZXF1ZXN0IHtcblx0fVxuXHQvKiogUmVzcG9uc2UgdG8gXCJ0aHJlYWRzXCIgcmVxdWVzdC4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBUaHJlYWRzUmVzcG9uc2UgZXh0ZW5kcyBSZXNwb25zZSB7XG5cdFx0Ym9keToge1xuXHRcdFx0LyoqIEFsbCB0aHJlYWRzLiAqL1xuXHRcdFx0dGhyZWFkczogVGhyZWFkW107XG5cdFx0fTtcblx0fVxuXG5cdC8qKiBFdmFsdWF0ZSByZXF1ZXN0OyB2YWx1ZSBvZiBjb21tYW5kIGZpZWxkIGlzIFwiZXZhbHVhdGVcIi5cblx0XHRFdmFsdWF0ZXMgdGhlIGdpdmVuIGV4cHJlc3Npb24gaW4gdGhlIGNvbnRleHQgb2YgdGhlIHRvcCBtb3N0IHN0YWNrIGZyYW1lLlxuXHRcdFRoZSBleHByZXNzaW9uIGhhcyBhY2Nlc3MgdG8gYW55IHZhcmlhYmxlcyBhbmQgYXJndW1lbnRzIHRoYXQgYXJlIGluIHNjb3BlLlxuXHQqL1xuXHRleHBvcnQgaW50ZXJmYWNlIEV2YWx1YXRlUmVxdWVzdCBleHRlbmRzIFJlcXVlc3Qge1xuXHRcdGFyZ3VtZW50czogRXZhbHVhdGVBcmd1bWVudHM7XG5cdH1cblx0LyoqIEFyZ3VtZW50cyBmb3IgXCJldmFsdWF0ZVwiIHJlcXVlc3QuICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgRXZhbHVhdGVBcmd1bWVudHMge1xuXHRcdC8qKiBUaGUgZXhwcmVzc2lvbiB0byBldmFsdWF0ZS4gKi9cblx0XHRleHByZXNzaW9uOiBzdHJpbmc7XG5cdFx0LyoqIEV2YWx1YXRlIHRoZSBleHByZXNzaW9uIGluIHRoZSBzY29wZSBvZiB0aGlzIHN0YWNrIGZyYW1lLiBJZiBub3Qgc3BlY2lmaWVkLCB0aGUgZXhwcmVzc2lvbiBpcyBldmFsdWF0ZWQgaW4gdGhlIGdsb2JhbCBzY29wZS4gKi9cblx0XHRmcmFtZUlkPzogbnVtYmVyO1xuXHRcdC8qKiBUaGUgY29udGV4dCBpbiB3aGljaCB0aGUgZXZhbHVhdGUgcmVxdWVzdCBpcyBydW4uIFBvc3NpYmxlIHZhbHVlcyBhcmUgJ3dhdGNoJyBpZiBldmFsdWF0ZSBpcyBydW4gaW4gYSB3YXRjaCwgJ3JlcGwnIGlmIHJ1biBmcm9tIHRoZSBSRVBMIGNvbnNvbGUsIG9yICdob3ZlcicgaWYgcnVuIGZyb20gYSBkYXRhIGhvdmVyLiAqL1xuXHRcdGNvbnRleHQ/OiBzdHJpbmc7XG5cdH1cblx0LyoqIFJlc3BvbnNlIHRvIFwiZXZhbHVhdGVcIiByZXF1ZXN0LiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIEV2YWx1YXRlUmVzcG9uc2UgZXh0ZW5kcyBSZXNwb25zZSB7XG5cdFx0Ym9keToge1xuXHRcdFx0LyoqIFRoZSByZXN1bHQgb2YgdGhlIGV2YWx1YXRlLiAqL1xuXHRcdFx0cmVzdWx0OiBzdHJpbmc7XG5cdFx0XHQvKiogSWYgdmFyaWFibGVzUmVmZXJlbmNlIGlzID4gMCwgdGhlIGV2YWx1YXRlIHJlc3VsdCBpcyBzdHJ1Y3R1cmVkIGFuZCBpdHMgY2hpbGRyZW4gY2FuIGJlIHJldHJpZXZlZCBieSBwYXNzaW5nIHZhcmlhYmxlc1JlZmVyZW5jZSB0byB0aGUgVmFyaWFibGVzUmVxdWVzdCAqL1xuXHRcdFx0dmFyaWFibGVzUmVmZXJlbmNlOiBudW1iZXI7XG5cdFx0fTtcblx0fVxuXG5cdC8vLS0tLSBUeXBlc1xuXG5cdC8qKiBJbmZvcm1hdGlvbiBhYm91dCB0aGUgY2FwYWJpbGl0aWVzIG9mIGEgZGVidWcgYWRhcHRlci4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBDYXBhYmlsaXRlcyB7XG5cdFx0LyoqIFRoZSBkZWJ1ZyBhZGFwdGVyIHN1cHBvcnRzIHRoZSBjb25maWd1cmF0aW9uRG9uZVJlcXVlc3QuICovXG5cdFx0c3VwcG9ydHNDb25maWd1cmF0aW9uRG9uZVJlcXVlc3Q/OiBib29sZWFuO1xuXHRcdC8qKiBUaGUgZGVidWcgYWRhcHRlciBzdXBwb3J0cyBmdW5jdGlvbkJyZWFrcG9pbnRzLiAqL1xuXHRcdHN1cHBvcnRzRnVuY3Rpb25CcmVha3BvaW50cz86IGJvb2xlYW47XG5cdFx0LyoqIFRoZSBkZWJ1ZyBhZGFwdGVyIHN1cHBvcnRzIGNvbmRpdGlvbmFsQnJlYWtwb2ludHMuICovXG5cdFx0c3VwcG9ydHNDb25kaXRpb25hbEJyZWFrcG9pbnRzPzogYm9vbGVhbjtcblx0XHQvKiogVGhlIGRlYnVnIGFkYXB0ZXIgc3VwcG9ydHMgYSAoc2lkZSBlZmZlY3QgZnJlZSkgZXZhbHVhdGUgcmVxdWVzdCBmb3IgZGF0YSBob3ZlcnMuICovXG5cdFx0c3VwcG9ydHNFdmFsdWF0ZUZvckhvdmVycz86IGJvb2xlYW47XG5cdFx0LyoqIEF2YWlsYWJsZSBmaWx0ZXJzIGZvciB0aGUgc2V0RXhjZXB0aW9uQnJlYWtwb2ludHMgcmVxdWVzdC4gKi9cblx0XHRleGNlcHRpb25CcmVha3BvaW50RmlsdGVycz86IEV4Y2VwdGlvbkJyZWFrcG9pbnRzRmlsdGVyW107XG5cdH1cblxuXHQvKiogQW4gRXhjZXB0aW9uQnJlYWtwb2ludHNGaWx0ZXIgaXMgc2hvd24gaW4gdGhlIFVJIGFzIGFuIG9wdGlvbiBmb3IgY29uZmlndXJpbmcgaG93IGV4Y2VwdGlvbnMgYXJlIGRlYWx0IHdpdGguICovXG5cdGV4cG9ydCBpbnRlcmZhY2UgRXhjZXB0aW9uQnJlYWtwb2ludHNGaWx0ZXIge1xuXHRcdC8qKiBUaGUgaW50ZXJuYWwgSUQgb2YgdGhlIGZpbHRlci4gVGhpcyB2YWx1ZSBpcyBwYXNzZWQgdG8gdGhlIHNldEV4Y2VwdGlvbkJyZWFrcG9pbnRzIHJlcXVlc3QuICovXG5cdFx0ZmlsdGVyOiBzdHJpbmcsXG5cdFx0LyoqIFRoZSBuYW1lIG9mIHRoZSBmaWx0ZXIuIFRoaXMgd2lsbCBiZSBzaG93biBpbiB0aGUgVUkuICovXG5cdFx0bGFiZWw6IHN0cmluZyxcblx0XHQvKiogSW5pdGlhbCB2YWx1ZSBvZiB0aGUgZmlsdGVyLiBJZiBub3Qgc3BlY2lmaWVkIGEgdmFsdWUgJ2ZhbHNlJyBpcyBhc3N1bWVkLiAqL1xuXHRcdGRlZmF1bHQ/OiBib29sZWFuXG5cdH1cblxuXHQvKiogQSBzdHJ1Y3R1cmVkIG1lc3NhZ2Ugb2JqZWN0LiBVc2VkIHRvIHJldHVybiBlcnJvcnMgZnJvbSByZXF1ZXN0cy4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBNZXNzYWdlIHtcblx0XHQvKiogVW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBtZXNzYWdlLiAqL1xuXHRcdGlkOiBudW1iZXI7XG5cdFx0LyoqIEEgZm9ybWF0IHN0cmluZyBmb3IgdGhlIG1lc3NhZ2UuIEVtYmVkZGVkIHZhcmlhYmxlcyBoYXZlIHRoZSBmb3JtICd7bmFtZX0nLlxuXHRcdCAgICBJZiB2YXJpYWJsZSBuYW1lIHN0YXJ0cyB3aXRoIGFuIHVuZGVyc2NvcmUgY2hhcmFjdGVyLCB0aGUgdmFyaWFibGUgZG9lcyBub3QgY29udGFpbiB1c2VyIGRhdGEgKFBJSSkgYW5kIGNhbiBiZSBzYWZlbHkgdXNlZCBmb3IgdGVsZW1ldHJ5IHB1cnBvc2VzLiAqL1xuXHRcdGZvcm1hdDogc3RyaW5nO1xuXHRcdC8qKiBBbiBvYmplY3QgdXNlZCBhcyBhIGRpY3Rpb25hcnkgZm9yIGxvb2tpbmcgdXAgdGhlIHZhcmlhYmxlcyBpbiB0aGUgZm9ybWF0IHN0cmluZy4gKi9cblx0XHR2YXJpYWJsZXM/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuXHRcdC8qKiBpZiB0cnVlIHNlbmQgdG8gdGVsZW1ldHJ5ICovXG5cdFx0c2VuZFRlbGVtZXRyeT86IGJvb2xlYW47XG5cdFx0LyoqIGlmIHRydWUgc2hvdyB1c2VyICovXG5cdFx0c2hvd1VzZXI/OiBib29sZWFuO1xuXHRcdC8qKiBBbiBvcHRpb25hbCB1cmwgd2hlcmUgYWRkaXRpb25hbCBpbmZvcm1hdGlvbiBhYm91dCB0aGlzIG1lc3NhZ2UgY2FuIGJlIGZvdW5kLiAqL1xuXHRcdHVybD86IHN0cmluZztcblx0XHQvKiogQW4gb3B0aW9uYWwgbGFiZWwgdGhhdCBpcyBwcmVzZW50ZWQgdG8gdGhlIHVzZXIgYXMgdGhlIFVJIGZvciBvcGVuaW5nIHRoZSB1cmwuICovXG5cdFx0dXJsTGFiZWw/OiBzdHJpbmc7XG5cdH1cblxuXHQvKiogQSBUaHJlYWQgKi9cblx0ZXhwb3J0IGludGVyZmFjZSBUaHJlYWQge1xuXHRcdC8qKiBVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIHRocmVhZC4gKi9cblx0XHRpZDogbnVtYmVyO1xuXHRcdC8qKiBBIG5hbWUgb2YgdGhlIHRocmVhZC4gKi9cblx0XHRuYW1lOiBzdHJpbmc7XG5cdH1cblxuXHQvKiogQSBTb3VyY2UgaXMgYSBkZXNjcmlwdG9yIGZvciBzb3VyY2UgY29kZS4gSXQgaXMgcmV0dXJuZWQgZnJvbSB0aGUgZGVidWcgYWRhcHRlciBhcyBwYXJ0IG9mIGEgU3RhY2tGcmFtZSBhbmQgaXQgaXMgdXNlZCBieSBjbGllbnRzIHdoZW4gc3BlY2lmeWluZyBicmVha3BvaW50cy4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBTb3VyY2Uge1xuXHRcdC8qKiBUaGUgc2hvcnQgbmFtZSBvZiB0aGUgc291cmNlLiBFdmVyeSBzb3VyY2UgcmV0dXJuZWQgZnJvbSB0aGUgZGVidWcgYWRhcHRlciBoYXMgYSBuYW1lLiBXaGVuIHNwZWNpZnlpbmcgYSBzb3VyY2UgdG8gdGhlIGRlYnVnIGFkYXB0ZXIgdGhpcyBuYW1lIGlzIG9wdGlvbmFsLiAqL1xuXHRcdG5hbWU/OiBzdHJpbmc7XG5cdFx0LyoqIFRoZSBsb25nIChhYnNvbHV0ZSkgcGF0aCBvZiB0aGUgc291cmNlLiBJdCBpcyBub3QgZ3VhcmFudGVlZCB0aGF0IHRoZSBzb3VyY2UgZXhpc3RzIGF0IHRoaXMgbG9jYXRpb24uICovXG5cdFx0cGF0aD86IHN0cmluZztcblx0XHQvKiogSWYgc291cmNlUmVmZXJlbmNlID4gMCB0aGUgY29udGVudHMgb2YgdGhlIHNvdXJjZSBjYW4gYmUgcmV0cmlldmVkIHRocm91Z2ggdGhlIFNvdXJjZVJlcXVlc3QuIEEgc291cmNlUmVmZXJlbmNlIGlzIG9ubHkgdmFsaWQgZm9yIGEgc2Vzc2lvbiwgc28gaXQgbXVzdCBub3QgYmUgdXNlZCB0byBwZXJzaXN0IGEgc291cmNlLiAqL1xuXHRcdHNvdXJjZVJlZmVyZW5jZT86IG51bWJlcjtcblx0XHQvKiogVGhlIChvcHRpb25hbCkgb3JpZ2luIG9mIHRoaXMgc291cmNlOiBwb3NzaWJsZSB2YWx1ZXMgXCJpbnRlcm5hbCBtb2R1bGVcIiwgXCJpbmxpbmVkIGNvbnRlbnQgZnJvbSBzb3VyY2UgbWFwXCIsIGV0Yy4gKi9cblx0XHRvcmlnaW4/OiBzdHJpbmc7XG5cdFx0LyoqIE9wdGlvbmFsIGRhdGEgdGhhdCBhIGRlYnVnIGFkYXB0ZXIgbWlnaHQgd2FudCB0byBsb29wIHRocm91Z2ggdGhlIGNsaWVudC4gVGhlIGNsaWVudCBzaG91bGQgbGVhdmUgdGhlIGRhdGEgaW50YWN0IGFuZCBwZXJzaXN0IGl0IGFjcm9zcyBzZXNzaW9ucy4gVGhlIGNsaWVudCBzaG91bGQgbm90IGludGVycHJldCB0aGUgZGF0YS4gKi9cblx0XHRhZGFwdGVyRGF0YT86IGFueTtcblx0fVxuXG5cdC8qKiBBIFN0YWNrZnJhbWUgY29udGFpbnMgdGhlIHNvdXJjZSBsb2NhdGlvbi4gKi9cblx0ZXhwb3J0IGludGVyZmFjZSBTdGFja0ZyYW1lIHtcblx0XHQvKiogQW4gaWRlbnRpZmllciBmb3IgdGhlIHN0YWNrIGZyYW1lLiBUaGlzIGlkIGNhbiBiZSB1c2VkIHRvIHJldHJpZXZlIHRoZSBzY29wZXMgb2YgdGhlIGZyYW1lIHdpdGggdGhlICdzY29wZXNSZXF1ZXN0Jy4gKi9cblx0XHRpZDogbnVtYmVyO1xuXHRcdC8qKiBUaGUgbmFtZSBvZiB0aGUgc3RhY2sgZnJhbWUsIHR5cGljYWxseSBhIG1ldGhvZCBuYW1lICovXG5cdFx0bmFtZTogc3RyaW5nO1xuXHRcdC8qKiBUaGUgb3B0aW9uYWwgc291cmNlIG9mIHRoZSBmcmFtZS4gKi9cblx0XHRzb3VyY2U/OiBTb3VyY2U7XG5cdFx0LyoqIFRoZSBsaW5lIHdpdGhpbiB0aGUgZmlsZSBvZiB0aGUgZnJhbWUuIElmIHNvdXJjZSBpcyBudWxsIG9yIGRvZXNuJ3QgZXhpc3QsIGxpbmUgaXMgMCBhbmQgbXVzdCBiZSBpZ25vcmVkLiAqL1xuXHRcdGxpbmU6IG51bWJlcjtcblx0XHQvKiogVGhlIGNvbHVtbiB3aXRoaW4gdGhlIGxpbmUuIElmIHNvdXJjZSBpcyBudWxsIG9yIGRvZXNuJ3QgZXhpc3QsIGNvbHVtbiBpcyAwIGFuZCBtdXN0IGJlIGlnbm9yZWQuICovXG5cdFx0Y29sdW1uOiBudW1iZXI7XG5cdH1cblxuXHQvKiogQSBTY29wZSBpcyBhIG5hbWVkIGNvbnRhaW5lciBmb3IgdmFyaWFibGVzLiAqL1xuXHRleHBvcnQgaW50ZXJmYWNlIFNjb3BlIHtcblx0XHQvKiogbmFtZSBvZiB0aGUgc2NvcGUgKGFzIHN1Y2ggJ0FyZ3VtZW50cycsICdMb2NhbHMnKSAqL1xuXHRcdG5hbWU6IHN0cmluZztcblx0XHQvKiogVGhlIHZhcmlhYmxlcyBvZiB0aGlzIHNjb3BlIGNhbiBiZSByZXRyaWV2ZWQgYnkgcGFzc2luZyB0aGUgdmFsdWUgb2YgdmFyaWFibGVzUmVmZXJlbmNlIHRvIHRoZSBWYXJpYWJsZXNSZXF1ZXN0LiAqL1xuXHRcdHZhcmlhYmxlc1JlZmVyZW5jZTogbnVtYmVyO1xuXHRcdC8qKiBJZiB0cnVlLCB0aGUgbnVtYmVyIG9mIHZhcmlhYmxlcyBpbiB0aGlzIHNjb3BlIGlzIGxhcmdlIG9yIGV4cGVuc2l2ZSB0byByZXRyaWV2ZS4gKi9cblx0XHRleHBlbnNpdmU6IGJvb2xlYW47XG5cdH1cblxuXHQvKiogQSBWYXJpYWJsZSBpcyBhIG5hbWUvdmFsdWUgcGFpci5cblx0XHRJZiB0aGUgdmFsdWUgaXMgc3RydWN0dXJlZCAoaGFzIGNoaWxkcmVuKSwgYSBoYW5kbGUgaXMgcHJvdmlkZWQgdG8gcmV0cmlldmUgdGhlIGNoaWxkcmVuIHdpdGggdGhlIFZhcmlhYmxlc1JlcXVlc3QuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgVmFyaWFibGUge1xuXHRcdC8qKiBUaGUgdmFyaWFibGUncyBuYW1lICovXG5cdFx0bmFtZTogc3RyaW5nO1xuXHRcdC8qKiBUaGUgdmFyaWFibGUncyB2YWx1ZS4gRm9yIHN0cnVjdHVyZWQgb2JqZWN0cyB0aGlzIGNhbiBiZSBhIG11bHRpIGxpbmUgdGV4dCwgZS5nLiBmb3IgYSBmdW5jdGlvbiB0aGUgYm9keSBvZiBhIGZ1bmN0aW9uLiAqL1xuXHRcdHZhbHVlOiBzdHJpbmc7XG5cdFx0LyoqIElmIHZhcmlhYmxlc1JlZmVyZW5jZSBpcyA+IDAsIHRoZSB2YXJpYWJsZSBpcyBzdHJ1Y3R1cmVkIGFuZCBpdHMgY2hpbGRyZW4gY2FuIGJlIHJldHJpZXZlZCBieSBwYXNzaW5nIHZhcmlhYmxlc1JlZmVyZW5jZSB0byB0aGUgVmFyaWFibGVzUmVxdWVzdC4gKi9cblx0XHR2YXJpYWJsZXNSZWZlcmVuY2U6IG51bWJlcjtcblx0fVxuXG5cdC8qKiBQcm9wZXJ0aWVzIG9mIGEgYnJlYWtwb2ludCBwYXNzZWQgdG8gdGhlIHNldEJyZWFrcG9pbnRzIHJlcXVlc3QuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgU291cmNlQnJlYWtwb2ludCB7XG5cdFx0LyoqIFRoZSBzb3VyY2UgbGluZSBvZiB0aGUgYnJlYWtwb2ludC4gKi9cblx0XHRsaW5lOiBudW1iZXI7XG5cdFx0LyoqIEFuIG9wdGlvbmFsIHNvdXJjZSBjb2x1bW4gb2YgdGhlIGJyZWFrcG9pbnQuICovXG5cdFx0Y29sdW1uPzogbnVtYmVyO1xuXHRcdC8qKiBBbiBvcHRpb25hbCBleHByZXNzaW9uIGZvciBjb25kaXRpb25hbCBicmVha3BvaW50cy4gKi9cblx0XHRjb25kaXRpb24/OiBzdHJpbmc7XG5cdH1cblxuXHQvKiogUHJvcGVydGllcyBvZiBhIGJyZWFrcG9pbnQgcGFzc2VkIHRvIHRoZSBzZXRGdW5jdGlvbkJyZWFrcG9pbnRzIHJlcXVlc3QuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgRnVuY3Rpb25CcmVha3BvaW50IHtcblx0XHQvKiogVGhlIG5hbWUgb2YgdGhlIGZ1bmN0aW9uLiAqL1xuXHRcdG5hbWU6IHN0cmluZztcblx0XHQvKiogQW4gb3B0aW9uYWwgZXhwcmVzc2lvbiBmb3IgY29uZGl0aW9uYWwgYnJlYWtwb2ludHMuICovXG5cdFx0Y29uZGl0aW9uPzogc3RyaW5nO1xuXHR9XG5cblx0LyoqIEluZm9ybWF0aW9uIGFib3V0IGEgQnJlYWtwb2ludCBjcmVhdGVkIGluIHNldEJyZWFrcG9pbnRzIG9yIHNldEZ1bmN0aW9uQnJlYWtwb2ludHMuXG5cdCovXG5cdGV4cG9ydCBpbnRlcmZhY2UgQnJlYWtwb2ludCB7XG5cdFx0LyoqIEFuIG9wdGlvbmFsIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgYnJlYWtwb2ludC4gKi9cblx0XHRpZD86IG51bWJlcjtcblx0XHQvKiogSWYgdHJ1ZSBicmVha3BvaW50IGNvdWxkIGJlIHNldCAoYnV0IG5vdCBuZWNlc3NhcmlseSBhdCB0aGUgZGVzaXJlZCBsb2NhdGlvbikuICAqL1xuXHRcdHZlcmlmaWVkOiBib29sZWFuO1xuXHRcdC8qKiBBbiBvcHRpb25hbCBtZXNzYWdlIGFib3V0IHRoZSBzdGF0ZSBvZiB0aGUgYnJlYWtwb2ludC4gVGhpcyBpcyBzaG93biB0byB0aGUgdXNlciBhbmQgY2FuIGJlIHVzZWQgdG8gZXhwbGFpbiB3aHkgYSBicmVha3BvaW50IGNvdWxkIG5vdCBiZSB2ZXJpZmllZC4gKi9cblx0XHRtZXNzYWdlPzogc3RyaW5nO1xuXHRcdC8qKiBUaGUgc291cmNlIHdoZXJlIHRoZSBicmVha3BvaW50IGlzIGxvY2F0ZWQuICovXG5cdFx0c291cmNlPzogU291cmNlO1xuXHRcdC8qKiBUaGUgYWN0dWFsIGxpbmUgb2YgdGhlIGJyZWFrcG9pbnQuICovXG5cdFx0bGluZT86IG51bWJlcjtcblx0XHQvKiogVGhlIGFjdHVhbCBjb2x1bW4gb2YgdGhlIGJyZWFrcG9pbnQuICovXG5cdFx0Y29sdW1uPzogbnVtYmVyO1xuXHR9XG59XG4iXX0=
{
"name": "vscode-debugprotocol",
"description": "Npm module with declarations for the Visual Studio Code debug protocol",
"version": "1.7.0",
"version": "1.8.0-pre.0",
"author": "Microsoft Corporation",

@@ -6,0 +6,0 @@ "license": "MIT",

@@ -10,2 +10,5 @@ # VS Code Debug Protocol

* 1.8.x:
* Introduces `ExceptionBreakpointsFilter` and fixed corresponding capability.
* 1.7.x:

@@ -12,0 +15,0 @@ * Adds optional `url` and `urlLabel` attributes to the error messages. The frontend will show this as a UI to open additional information in a browser.

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc