filestack-js 3.47.4 → 3.48.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/browser/filestack.esm.js +1 -1
- package/build/browser/filestack.esm.js.map +1 -1
- package/build/browser/filestack.min.js +1 -1
- package/build/browser/filestack.min.js.map +1 -1
- package/build/browser/filestack.umd.js +1 -1
- package/build/browser/filestack.umd.js.map +1 -1
- package/build/browser/manifest.json +2 -2
- package/build/main/index.d.ts +1 -1
- package/build/main/index.js +2 -2
- package/build/main/lib/picker.d.ts +6 -0
- package/build/main/lib/picker.js +1 -1
- package/build/main/lib/utils/index.browser.js +1 -1
- package/build/main/lib/utils/index.node.js +1 -1
- package/build/main/lib/utils/index.spec.browser.js +1 -1
- package/build/main/schema/picker.schema.d.ts +3 -0
- package/build/main/schema/picker.schema.js +4 -1
- package/build/module/index.d.ts +1 -1
- package/build/module/index.js +2 -2
- package/build/module/lib/picker.d.ts +6 -0
- package/build/module/lib/picker.js +1 -1
- package/build/module/lib/utils/index.browser.js +1 -1
- package/build/module/lib/utils/index.node.js +1 -1
- package/build/module/lib/utils/index.spec.browser.js +1 -1
- package/build/module/schema/picker.schema.d.ts +3 -0
- package/build/module/schema/picker.schema.js +4 -1
- package/package.json +1 -1
- package/src/lib/picker.ts +6 -0
- package/src/schema/picker.schema.ts +3 -0
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
},
|
|
6
6
|
"filestack.min.js.map": {
|
|
7
7
|
"src": "filestack.min.js.map",
|
|
8
|
-
"integrity": "sha256-
|
|
8
|
+
"integrity": "sha256-dFULjhubZMsaWk2xyhCLjnex9wHrrmrmBsIkhiuJDKo= sha384-NM27FZftj3Oxtza+myu4OqUinZmJo+O4K1AmIV8lCtT8DRnxNcuJu6wzQlaScgq6 sha512-Ar2N32WaibOAIS3MZZVbCHCZFy3SG16vGdek88KzICLzg+dK1ZLNbjtKc5rCnymFoiG4yfLT8CLGvnhbfiKObA=="
|
|
9
9
|
},
|
|
10
10
|
"main.js": {
|
|
11
11
|
"src": "filestack.min.js",
|
|
12
|
-
"integrity": "sha256
|
|
12
|
+
"integrity": "sha256-/3Wc4D0W0P3EidWbaisRTyDxp9rwxj09NpcSq99OEas= sha384-LjcbzDJ48Z1r2bIxagOZp62FjXrB52W+14J6gTI6UB5Dqg9n5F/GvRtkA53Nulyf sha512-wLjzM+DPwULg0/1l1KytFwCNtDuBkq62hE71XQacEHIPxdYD27BgI7bEzT145+a9W7npN55XnCls/iGaXcou1Q=="
|
|
13
13
|
}
|
|
14
14
|
}
|
package/build/main/index.d.ts
CHANGED
|
@@ -23,7 +23,7 @@ export declare const init: (apikey: string, options?: ClientOptions) => Client;
|
|
|
23
23
|
/**
|
|
24
24
|
* filestack-js version. Interpolated at build time.
|
|
25
25
|
*/
|
|
26
|
-
export declare const version = "3.
|
|
26
|
+
export declare const version = "3.48.4";
|
|
27
27
|
export * from './lib/api/transform';
|
|
28
28
|
export * from './lib/filelink';
|
|
29
29
|
export * from './filestack_error';
|
package/build/main/index.js
CHANGED
|
@@ -49,8 +49,8 @@ exports.init = exports.Filestack;
|
|
|
49
49
|
/**
|
|
50
50
|
* filestack-js version. Interpolated at build time.
|
|
51
51
|
*/
|
|
52
|
-
exports.version = '3.
|
|
53
|
-
(0, loader_1.registerModule)(loader_1.FILESTACK_MODULES.FILESTACK_SDK, exports.Filestack, { version: '3.
|
|
52
|
+
exports.version = '3.48.4';
|
|
53
|
+
(0, loader_1.registerModule)(loader_1.FILESTACK_MODULES.FILESTACK_SDK, exports.Filestack, { version: '3.48.4' });
|
|
54
54
|
tslib_1.__exportStar(require("./lib/api/transform"), exports);
|
|
55
55
|
tslib_1.__exportStar(require("./lib/filelink"), exports);
|
|
56
56
|
tslib_1.__exportStar(require("./filestack_error"), exports);
|
|
@@ -675,6 +675,12 @@ export interface PickerOptions {
|
|
|
675
675
|
* This is your Project Number from the Google Cloud console.
|
|
676
676
|
*/
|
|
677
677
|
googleDriveAppID?: string;
|
|
678
|
+
/**
|
|
679
|
+
* Sets the origin of picker dialog. The origin should be set to
|
|
680
|
+
* the window.location.protocol + '//' + window.location.host of the top-most page,
|
|
681
|
+
* if your application is running in an iframe.
|
|
682
|
+
*/
|
|
683
|
+
googleAppOrigin?: string;
|
|
678
684
|
}
|
|
679
685
|
export interface PickerCropOptions {
|
|
680
686
|
/**
|
package/build/main/lib/picker.js
CHANGED
|
@@ -150,4 +150,4 @@ var picker = function (client, options) {
|
|
|
150
150
|
};
|
|
151
151
|
exports.picker = picker;
|
|
152
152
|
|
|
153
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvcGlja2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7Ozs7QUFFSCw0Q0FBa0U7QUFDbEUsd0RBQTBFO0FBRzFFLHNDQUErRDtBQStEL0QsSUFBWSxlQUdYO0FBSEQsV0FBWSxlQUFlO0lBQ3pCLDRCQUFTLENBQUE7SUFDVCw4QkFBVSxDQUFBO0FBQ1osQ0FBQyxFQUhXLGVBQWUsR0FBZix1QkFBZSxLQUFmLHVCQUFlLFFBRzFCO0FBbUhELElBQVksaUJBSVg7QUFKRCxXQUFZLGlCQUFpQjtJQUMzQixzQ0FBaUIsQ0FBQTtJQUNqQix3Q0FBbUIsQ0FBQTtJQUNuQiwwQ0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBSlcsaUJBQWlCLEdBQWpCLHlCQUFpQixLQUFqQix5QkFBaUIsUUFJNUI7QUFtbEJEOzs7OztHQUtHO0FBQ0g7SUFHRSxzQkFBWSxNQUFjLEVBQUUsT0FBdUI7UUFDakQsSUFBTSxXQUFXLEdBQUcsSUFBQSxxQkFBWSxFQUFDLDJCQUFrQixDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFOUQsSUFBSSxXQUFXLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtZQUM3QixXQUFXLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxVQUFBLEtBQUs7Z0JBQzlCLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEVBQUU7b0JBQ3RDLE9BQU8sQ0FBQyxJQUFJLENBQUMsb0NBQTZCLEtBQUssQ0FBQyxRQUFRLDBCQUF1QixDQUFDLENBQUM7b0JBQ2pGLE9BQU8sQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsVUFBQSxNQUFNLElBQUksT0FBQSxNQUFNLEtBQUssS0FBSyxDQUFDLFFBQVEsRUFBekIsQ0FBeUIsQ0FBQyxDQUFDO2lCQUN2RjtxQkFBTTtvQkFDTCxNQUFNLElBQUksZ0NBQWMsQ0FBQyx1QkFBdUIsRUFBRSxXQUFXLENBQUMsTUFBTSxFQUFFLG9DQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFDO2lCQUN0RztZQUNILENBQUMsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFO2dCQUMvQixPQUFPLE9BQU8sQ0FBQyxXQUFXLENBQUM7YUFDNUI7U0FDRjtRQUVELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVLLDJCQUFJLEdBQVY7Ozs7OzRCQUNpQixxQkFBTSxJQUFJLENBQUMsWUFBWSxFQUFBOzt3QkFBaEMsTUFBTSxHQUFHLFNBQXVCO3dCQUN0QyxxQkFBTSxNQUFNLENBQUMsSUFBSSxFQUFFLEVBQUE7O3dCQUFuQixTQUFtQixDQUFDOzs7OztLQUNyQjtJQUVLLDJCQUFJLEdBQVYsVUFBVyxLQUFZOzs7Ozs0QkFDTixxQkFBTSxJQUFJLENBQUMsWUFBWSxFQUFBOzt3QkFBaEMsTUFBTSxHQUFHLFNBQXVCO3dCQUN0QyxxQkFBTSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFBOzt3QkFBeEIsU0FBd0IsQ0FBQzs7Ozs7S0FDMUI7SUFFSyw0QkFBSyxHQUFYOzs7Ozs0QkFDaUIscUJBQU0sSUFBSSxDQUFDLFlBQVksRUFBQTs7d0JBQWhDLE1BQU0sR0FBRyxTQUF1Qjt3QkFDdEMscUJBQU0sTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFBOzt3QkFBcEIsU0FBb0IsQ0FBQzs7Ozs7S0FDdEI7SUFFSyw2QkFBTSxHQUFaOzs7Ozs0QkFDaUIscUJBQU0sSUFBSSxDQUFDLFlBQVksRUFBQTs7d0JBQWhDLE1BQU0sR0FBRyxTQUF1Qjt3QkFDdEMscUJBQU0sTUFBTSxDQUFDLE1BQU0sRUFBRSxFQUFBOzt3QkFBckIsU0FBcUIsQ0FBQzs7Ozs7S0FDdkI7SUFFYSxpQ0FBVSxHQUF4QixVQUF5QixNQUFjLEVBQUUsT0FBdUI7Ozs7Ozt3QkFDeEIsR0FBRyxHQUFTLE1BQU0sdUJBQWYsQ0FBZ0I7d0JBQzFDLHFCQUFNLElBQUEsbUJBQVUsRUFBQywwQkFBaUIsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLEVBQUE7O3dCQUF4RCxNQUFNLEdBQUcsU0FBK0M7d0JBQzlELHNCQUFPLElBQUksTUFBTSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsRUFBQzs7OztLQUNwQztJQUNILG1CQUFDO0FBQUQsQ0FoREEsQUFnREMsSUFBQTtBQUVEOzs7Ozs7R0FNRztBQUNJLElBQU0sTUFBTSxHQUFHLFVBQUMsTUFBYyxFQUFFLE9BQXVCO0lBQzVELE9BQU8sSUFBSSxZQUFZLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQzNDLENBQUMsQ0FBQztBQUZXLFFBQUEsTUFBTSxVQUVqQiIsImZpbGUiOiJsaWIvcGlja2VyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOCBieSBGaWxlc3RhY2tcbiAqIFNvbWUgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBsb2FkTW9kdWxlLCBGSUxFU1RBQ0tfTU9EVUxFUyB9IGZyb20gJ0BmaWxlc3RhY2svbG9hZGVyJztcbmltcG9ydCB7IEZpbGVzdGFja0Vycm9yLCBGaWxlc3RhY2tFcnJvclR5cGUgfSBmcm9tICcuLy4uL2ZpbGVzdGFja19lcnJvcic7XG5pbXBvcnQgeyBDbGllbnQgfSBmcm9tICcuL2NsaWVudCc7XG5pbXBvcnQgeyBGU1Byb2dyZXNzRXZlbnQsIFVwbG9hZE9wdGlvbnMsIFdvcmtmbG93Q29uZmlnIH0gZnJvbSAnLi9hcGkvdXBsb2FkL3R5cGVzJztcbmltcG9ydCB7IGdldFZhbGlkYXRvciwgUGlja2VyUGFyYW1zU2NoZW1hIH0gZnJvbSAnLi8uLi9zY2hlbWEnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlckluc3RhbmNlIHtcbiAgLyoqXG4gICAqIENsb3NlIHBpY2tlci4gVGhpcyBvcGVyYXRpb24gaXMgaWRlbXBvdGVudC5cbiAgICovXG4gIGNsb3NlOiAoKSA9PiBQcm9taXNlPHZvaWQ+O1xuXG4gIC8qKlxuICAgKiBDYW5jZWwgcGlja2VyIHVwbG9hZHMuIFRoaXMgb3BlcmF0aW9uIGlzIGlkZW1wb3RlbnQuXG4gICAqL1xuICBjYW5jZWw6ICgpID0+IFByb21pc2U8dm9pZD47XG5cbiAgLyoqXG4gICAqIE9wZW4gcGlja2VyLiBUaGlzIG9wZXJhdGlvbiBpcyBpZGVtcG90ZW50LlxuICAgKi9cbiAgb3BlbjogKCkgPT4gUHJvbWlzZTx2b2lkPjtcblxuICAvKipcbiAgICogU3BlY2lmeSBhIGxpc3Qgb2YgZmlsZXMgdG8gb3BlbiBpbiB0aGUgcGlja2VyIGZvciBjcm9wcGluZ1xuICAgKlxuICAgKiAjIyMgRXhhbXBsZVxuICAgKlxuICAgKiBgYGBqc1xuICAgKiAvLyA8aW5wdXQgaWQ9XCJmaWxlU2VsZWN0XCIgdHlwZT1cImZpbGVcIj5cbiAgICpcbiAgICogY29uc3QgaW5wdXRFbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdmaWxlU2VsZWN0Jyk7XG4gICAqIGNvbnN0IHBpY2tlciA9IGNsaWVudC5waWNrZXIoe1xuICAgKiAgIG9uVXBsb2FkRG9uZTogcmVzID0+IGNvbnNvbGUubG9nKHJlcyksXG4gICAqIH0pO1xuICAgKlxuICAgKiBpbnB1dEVsLmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIChlKSA9PiB7XG4gICAqICAgcGlja2VyLmNyb3AoZS50YXJnZXQuZmlsZXMpO1xuICAgKiB9KTtcbiAgICpcbiAgICogLy8gT3IgcGFzcyBhbiBhcnJheSBvZiBVUkwgc3RyaW5nc1xuICAgKiBjb25zdCB1cmxzID0gW1xuICAgKiAgICdodHRwczovL2Qxd3RxYWZmYWFqNjN6LmNsb3VkZnJvbnQubmV0L2ltYWdlcy9mb3hfaW5fZm9yZXN0MS5qcGcnLFxuICAgKiAgICdodHRwczovL2Qxd3RxYWZmYWFqNjN6LmNsb3VkZnJvbnQubmV0L2ltYWdlcy9zYWlsLmpwZycsXG4gICAqIF07XG4gICAqIHBpY2tlci5jcm9wKHVybHMpO1xuICAgKiBgYGBcbiAgICovXG4gIGNyb3A6IChmaWxlczogYW55W10pID0+IFByb21pc2U8dm9pZD47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyQ3JvcHBlZERhdGEge1xuICBjcm9wQXJlYToge1xuICAgIC8qKlxuICAgICAqIFt4LCB5XVxuICAgICAqL1xuICAgIHBvc2l0aW9uOiBbbnVtYmVyLCBudW1iZXJdO1xuICAgIC8qKlxuICAgICAqIFt3aWR0aCwgaGVpZ2h0XVxuICAgICAqL1xuICAgIHNpemU6IFtudW1iZXIsIG51bWJlcl07XG4gIH07XG4gICAgLyoqXG4gICAgICogW3dpZHRoLCBoZWlnaHRdXG4gICAgICovXG4gIG9yaWdpbmFsSW1hZ2VTaXplOiBbbnVtYmVyLCBudW1iZXJdO1xufVxuXG5leHBvcnQgZW51bSBSb3RhdGVEaXJlY3Rpb24ge1xuICBjdyA9ICdDVycsXG4gIGNjdz0gJ0NDVycsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyUm90YXRlZERhdGEge1xuICAvKipcbiAgICogQW1vdW50IHJvdGF0ZWQgaW4gZGVncmVlcy5cbiAgICovXG4gIHZhbHVlOiBudW1iZXI7XG4gIC8qKlxuICAgKiBDYW4gYmUgQ1cgb3IgQ0NXIChjbG9ja3dpc2UgLyBjb3VudGVyLWNsb2Nrd2lzZSlcbiAgICovXG4gIGRpcmVjdGlvbjogUm90YXRlRGlyZWN0aW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlckZpbGVNZXRhZGF0YSB7XG4gIC8qKlxuICAgKiBUaGUgY2xvdWQgY29udGFpbmVyIGZvciB0aGUgdXBsb2FkZWQgZmlsZS5cbiAgICovXG4gIGNvbnRhaW5lcj86IHN0cmluZztcbiAgLyoqXG4gICAqIFBvc2l0aW9uIGFuZCBzaXplIGluZm9ybWF0aW9uIGZvciBjcm9wcGVkIGltYWdlcy5cbiAgICovXG4gIGNyb3BwZWQ/OiBQaWNrZXJDcm9wcGVkRGF0YTtcbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGZpbGUuXG4gICAqL1xuICBmaWxlbmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogRmlsZXN0YWNrIGhhbmRsZSBmb3IgdGhlIHVwbG9hZGVkIGZpbGUuXG4gICAqL1xuICBoYW5kbGU6IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBoYXNoLXByZWZpeGVkIGNsb3VkIHN0b3JhZ2UgcGF0aC5cbiAgICovXG4gIGtleT86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBNSU1FIHR5cGUgb2YgdGhlIGZpbGUuXG4gICAqL1xuICBtaW1ldHlwZTogc3RyaW5nO1xuICAvKipcbiAgICogUHJvcGVydGllcyBvZiB0aGUgbG9jYWwgYmluYXJ5IGZpbGUuIEFsc28gc2VlIHRoZSBwaWNrIG9wdGlvbiBgZXhwb3NlT3JpZ2luYWxGaWxlYCBpZiB5b3Ugd2FudCB0aGUgdW5kZXJseWluZyBgRmlsZWAgb2JqZWN0LlxuICAgKi9cbiAgb3JpZ2luYWxGaWxlPzogb2JqZWN0IHwgRmlsZTtcbiAgLyoqXG4gICAqIFRoZSBvcmlnaW4gb2YgdGhlIGZpbGUsIGUuZy4gL0ZvbGRlci9maWxlLmpwZy5cbiAgICovXG4gIG9yaWdpbmFsUGF0aDogc3RyaW5nO1xuICAvKipcbiAgICogRGlyZWN0aW9uIGFuZCB2YWx1ZSBpbmZvcm1hdGlvbiBmb3Igcm90YXRlZCBpbWFnZXMuXG4gICAqL1xuICByb3RhdGVkPzogUGlja2VyUm90YXRlZERhdGE7XG4gIC8qKlxuICAgKiBTaXplIGluIGJ5dGVzIG9mIHRoZSB1cGxvYWRlZCBmaWxlLlxuICAgKi9cbiAgc2l6ZTogbnVtYmVyO1xuICAvKipcbiAgICogVGhlIHNvdXJjZSBmcm9tIHdoZXJlIHRoZSBmaWxlIHdhcyBwaWNrZWQuXG4gICAqL1xuICBzb3VyY2U6IHN0cmluZztcbiAgLyoqXG4gICAqIEluZGljYXRlcyBGaWxlc3RhY2sgdHJhbnNpdCBzdGF0dXMuXG4gICAqL1xuICBzdGF0dXM/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBIHV1aWQgZm9yIHRyYWNraW5nIHRoaXMgZmlsZSBpbiBjYWxsYmFja3MuXG4gICAqL1xuICB1cGxvYWRJZDogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIEZpbGVzdGFjayBDRE4gVVJMIGZvciB0aGUgdXBsb2FkZWQgZmlsZS5cbiAgICovXG4gIHVybDogc3RyaW5nO1xuICAvKipcbiAgICogQWx0IHRleHQgZm9yIGltYWdlc1xuICAgKi9cbiAgYWx0OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3VzdG9tQXV0aFRleHRPcHRpb25zIHtcbiAgW2tleTogc3RyaW5nXToge1xuICAgIHRvcD86IHN0cmluZ1tdLFxuICAgIGJvdHRvbT86IHN0cmluZ1tdXG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyUmVzcG9uc2Uge1xuICBmaWxlc1VwbG9hZGVkOiBQaWNrZXJGaWxlTWV0YWRhdGFbXTtcbiAgZmlsZXNGYWlsZWQ6IFBpY2tlckZpbGVNZXRhZGF0YVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlckZpbGVDYWxsYmFjayB7XG4gIChmaWxlOiBQaWNrZXJGaWxlTWV0YWRhdGEpOiB2b2lkIHwgUHJvbWlzZTxhbnk+O1xufVxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJGaWxlV2l0aFRva2VuQ2FsbGJhY2sge1xuICAoZmlsZTogUGlja2VyRmlsZU1ldGFkYXRhLCB0b2tlbj86IHtwYXVzZT86ICgpID0+IHZvaWQsIHJlc3VtZT86ICgpID0+IHZvaWQsIGNhbmNlbD86ICgpID0+IHZvaWR9KTogdm9pZCB8IFByb21pc2U8YW55Pjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJGaWxlQ2FuY2VsQ2FsbGJhY2sge1xuICAoZmlsZTogUGlja2VyRmlsZU1ldGFkYXRhKTogdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJGaWxlRXJyb3JDYWxsYmFjayB7XG4gIChmaWxlOiBQaWNrZXJGaWxlTWV0YWRhdGEsIGVycm9yOiBFcnJvcik6IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyRmlsZVByb2dyZXNzQ2FsbGJhY2sge1xuICAoZmlsZTogUGlja2VyRmlsZU1ldGFkYXRhLCBldmVudDogRlNQcm9ncmVzc0V2ZW50KTogdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJVcGxvYWRTdGFydGVkQ2FsbGJhY2sge1xuICAoZmlsZXM6IFBpY2tlckZpbGVNZXRhZGF0YVtdKTogdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJVcGxvYWREb25lQ2FsbGJhY2sge1xuICAoZmlsZXM6IFBpY2tlclJlc3BvbnNlKTogdm9pZDtcbn1cblxuZXhwb3J0IGVudW0gUGlja2VyRGlzcGxheU1vZGUge1xuICBpbmxpbmUgPSAnaW5saW5lJyxcbiAgb3ZlcmxheSA9ICdvdmVybGF5JyxcbiAgZHJvcFBhbmUgPSAnZHJvcFBhbmUnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlckRyb3BQYW5lT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUb2dnbGUgdGhlIGNyb3AgVUkgZm9yIGRyb3BwZWQgZmlsZXMuXG4gICAqL1xuICBjcm9wRmlsZXM/OiBib29sZWFuO1xuICAvKipcbiAgICogQ3VzdG9taXplIHRoZSB0ZXh0IGNvbnRlbnQgaW4gdGhlIGRyb3AgcGFuZS5cbiAgICovXG4gIGN1c3RvbVRleHQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEaXNhYmxlIHRoZSBmaWxlIGlucHV0IG9uIGNsaWNrLiBUaGlzIGRvZXMgbm90IGRpc2FibGUgdGhlIGBvbkNsaWNrYCBjYWxsYmFjay5cbiAgICovXG4gIGRpc2FibGVDbGljaz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUb2dnbGUgdGhlIGZ1bGwtcGFnZSBkcm9wIHpvbmUgb3ZlcmxheS5cbiAgICovXG4gIG92ZXJsYXk/OiBib29sZWFuO1xuICBvbkRyYWdFbnRlcj86IChldnQ6IERyYWdFdmVudCkgPT4gdm9pZDtcbiAgb25EcmFnTGVhdmU/OiAoKSA9PiB2b2lkO1xuICBvbkRyYWdPdmVyPzogKGV2dDogRHJhZ0V2ZW50KSA9PiB2b2lkO1xuICBvbkRyb3A/OiAoZXZ0OiBEcmFnRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBgb25TdWNjZXNzYCBtdXN0IGJlIHVzZWQgaW5zdGVhZCBvZiBgb25VcGxvYWREb25lYC4gVGhlIGRyb3AgcGFuZSB1c2VzIGl0cyBvd24gY2FsbGJhY2tzIGZvciBjb21wYXRpYmlsaXR5IHB1cnBvc2VzLiBUaGlzIG1pZ2h0IGV2ZW50dWFsbHkgY2hhbmdlLlxuICAgKi9cbiAgb25TdWNjZXNzPzogKGZpbGVzOiBQaWNrZXJGaWxlTWV0YWRhdGFbXSkgPT4gdm9pZDtcbiAgb25FcnJvcj86IChmaWxlczogUGlja2VyRmlsZU1ldGFkYXRhW10pID0+IHZvaWQ7XG4gIG9uUHJvZ3Jlc3M/OiAocGVyY2VudDogbnVtYmVyKSA9PiB2b2lkO1xuICBvbkNsaWNrPzogKGV2dDogYW55KSA9PiB2b2lkO1xuICAvKipcbiAgICogVG9nZ2xlIGljb24gZWxlbWVudCBpbiBkcm9wIHBhbmUuXG4gICAqL1xuICBzaG93SWNvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUb2dnbGUgdXBsb2FkIHByb2dyZXNzIGRpc3BsYXkuXG4gICAqL1xuICBzaG93UHJvZ3Jlc3M/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlclN0b3JlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBMb2NhdGlvbiBmb3Igc3RvcmVkIGZpbGUuIE9uZSBvZiAnczMnLCAnZ2NzJywgJ2F6dXJlJywgJ3JhY2tzcGFjZScsIG9yICdkcm9wYm94Jy5cbiAgICovXG4gIGxvY2F0aW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogU3BlY2lmeSBzdG9yYWdlIGNvbnRhaW5lci5cbiAgICovXG4gIGNvbnRhaW5lcj86IHN0cmluZztcbiAgLyoqXG4gICAqIFNldCBjb250YWluZXIgcGF0aC4gSW5kaWNhdGUgYSBmb2xkZXIgYnkgYWRkaW5nIGEgdHJhaWxpbmcgc2xhc2guIFdpdGhvdXQgYSB0cmFpbGluZyBzbGFzaCBhbGwgZmlsZXMgd2lsbCBiZSBzdG9yZWQgdG8gdGhlIHNhbWUgb2JqZWN0LlxuICAgKi9cbiAgcGF0aD86IHN0cmluZztcbiAgLyoqXG4gICAqIFNwZWNpZnkgUzMgcmVnaW9uLlxuICAgKi9cbiAgcmVnaW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogUzMgY29udGFpbmVyIGFjY2Vzcy4gJ3B1YmxpYycgb3IgJ3ByaXZhdGUnLlxuICAgKi9cbiAgYWNjZXNzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXb3JrZmxvd3MgaWRzIHRvIHJ1biBhZnRlciB1cGxvYWRcbiAgICovXG4gIHdvcmtmbG93cz86IHN0cmluZ1tdIHwgV29ya2Zsb3dDb25maWdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJDdXN0b21UZXh0IHtcbiAgLy8gQWN0aW9uc1xuICBVcGxvYWQ/OiBzdHJpbmc7XG4gICdVcGxvYWQgbW9yZSc/OiBzdHJpbmc7XG4gICdEZXNlbGVjdCBBbGwnPzogc3RyaW5nO1xuICAnVmlldy9FZGl0IFNlbGVjdGVkJz86IHN0cmluZztcbiAgJ1NpZ24gT3V0Jz86IHN0cmluZztcblxuICAvLyBTb3VyY2UgTGFiZWxzXG4gICdNeSBEZXZpY2UnPzogc3RyaW5nO1xuICAnV2ViIFNlYXJjaCc/OiBzdHJpbmc7XG4gICdUYWtlIFBob3RvJz86IHN0cmluZztcbiAgJ0xpbmsgKFVSTCknPzogc3RyaW5nO1xuICAnUmVjb3JkIFZpZGVvJz86IHN0cmluZztcbiAgJ1JlY29yZCBBdWRpbyc/OiBzdHJpbmc7XG5cbiAgLy8gQ3VzdG9tIFNvdXJjZVxuICAnQ3VzdG9tIFNvdXJjZSc/OiBzdHJpbmc7XG5cbiAgLy8gRm9vdGVyIFRleHRcbiAgQWRkPzogc3RyaW5nO1xuICAnbW9yZSBmaWxlJz86IHN0cmluZztcbiAgJ21vcmUgZmlsZXMnPzogc3RyaW5nO1xuXG4gIC8vIENsb3VkXG4gICdDb25uZWN0IHtwcm92aWRlck5hbWV9Jz86IHN0cmluZztcbiAgJ1NlbGVjdCBGaWxlcyBmcm9tIHtwcm92aWRlck5hbWV9Jz86IHN0cmluZztcbiAgJ1lvdSBuZWVkIHRvIGF1dGhlbnRpY2F0ZSB3aXRoIHtwcm92aWRlck5hbWV9Lic/OiBzdHJpbmc7XG4gICdBIG5ldyBwYWdlIHdpbGwgb3BlbiB0byBjb25uZWN0IHlvdXIgYWNjb3VudC4nPzogc3RyaW5nO1xuICAnV2Ugb25seSBleHRyYWN0IGltYWdlcyBhbmQgbmV2ZXIgbW9kaWZ5IG9yIGRlbGV0ZSB0aGVtLic/OiBzdHJpbmc7XG4gICdUbyBkaXNjb25uZWN0IGZyb20ge3Byb3ZpZGVyTmFtZX0gY2xpY2sgXCJTaWduIG91dFwiIGJ1dHRvbiBpbiB0aGUgbWVudS4nPzogc3RyaW5nO1xuICAnU2lnbiBpbiB3aXRoIEdvb2dsZSc/OiBzdHJpbmc7XG4gICdHbyBiYWNrJz86IHN0cmluZztcbiAgJ1RoaXMgZm9sZGVyIGlzIGVtcHR5Lic/OiBzdHJpbmc7XG5cbiAgLy8gU3VtbWFyeVxuICBGaWxlcz86IHN0cmluZztcbiAgSW1hZ2VzPzogc3RyaW5nO1xuICBVcGxvYWRlZD86IHN0cmluZztcbiAgVXBsb2FkaW5nPzogc3RyaW5nO1xuICBDb21wbGV0ZWQ/OiBzdHJpbmc7XG4gIEZpbHRlcj86IHN0cmluZztcbiAgJ0Nyb3BwZWQgSW1hZ2VzJz86IHN0cmluZztcbiAgJ0VkaXRlZCBJbWFnZXMnPzogc3RyaW5nO1xuICAnU2VsZWN0ZWQgRmlsZXMnPzogc3RyaW5nO1xuICAnQ3JvcCBpcyByZXF1aXJlZCBvbiBpbWFnZXMnPzogc3RyaW5nO1xuXG4gIC8vIFRyYW5zZm9ybVxuICBDcm9wPzogc3RyaW5nO1xuICBDaXJjbGU/OiBzdHJpbmc7XG4gIFJvdGF0ZT86IHN0cmluZztcbiAgTWFzaz86IHN0cmluZztcbiAgUmV2ZXJ0Pzogc3RyaW5nO1xuICBFZGl0Pzogc3RyaW5nO1xuICBSZXNldD86IHN0cmluZztcbiAgRG9uZT86IHN0cmluZztcbiAgU2F2ZT86IHN0cmluZztcbiAgTmV4dD86IHN0cmluZztcbiAgJ0VkaXQgSW1hZ2UnPzogc3RyaW5nO1xuICAnVGhpcyBpbWFnZSBjYW5ub3QgYmUgZWRpdGVkJz86IHN0cmluZztcblxuICAvLyBSZXRyeSBtZXNzYWdpbmdcbiAgJ0Nvbm5lY3Rpb24gTG9zdCc/OiBzdHJpbmc7XG4gICdGYWlsZWQgV2hpbGUgVXBsb2FkaW5nJz86IHN0cmluZztcbiAgJ1JldHJ5aW5nIGluJz86IHN0cmluZztcbiAgJ1RyeSBhZ2Fpbic/OiBzdHJpbmc7XG4gICdUcnkgbm93Jz86IHN0cmluZztcblxuICAvLyBMb2NhbCBGaWxlIFNvdXJjZVxuICAnRHJhZyBhbmQgRHJvcCwgQ29weSBhbmQgUGFzdGUgRmlsZXMnPzogc3RyaW5nO1xuICAnb3IgRHJhZyBhbmQgRHJvcCwgQ29weSBhbmQgUGFzdGUgRmlsZXMnPzogc3RyaW5nO1xuICAnU2VsZWN0IEZpbGVzIHRvIFVwbG9hZCc/OiBzdHJpbmc7XG4gICdTZWxlY3QgRnJvbSc/OiBzdHJpbmc7XG4gICdEcm9wIHlvdXIgZmlsZXMgYW55d2hlcmUnPzogc3RyaW5nO1xuXG4gIC8vIElucHV0IHBsYWNlaG9sZGVyc1xuICAnRW50ZXIgYSBVUkwnPzogc3RyaW5nO1xuICAnU2VhcmNoIGltYWdlcyc/OiBzdHJpbmc7XG5cbiAgLy8gV2ViY2FtIFNvdXJjZVxuICAnV2ViY2FtIERpc2FibGVkJz86IHN0cmluZztcbiAgJ1dlYmNhbSBOb3QgU3VwcG9ydGVkJz86IHN0cmluZztcbiAgJ1BsZWFzZSBlbmFibGUgeW91ciB3ZWJjYW0gdG8gdGFrZSBhIHBob3RvLic/OiBzdHJpbmc7XG4gICdZb3VyIGN1cnJlbnQgYnJvd3NlciBkb2VzIG5vdCBzdXBwb3J0IHdlYmNhbSBmdW5jdGlvbmFsaXR5Lic/OiBzdHJpbmc7XG4gICdXZSBzdWdnZXN0IHVzaW5nIENocm9tZSBvciBGaXJlZm94Lic/OiBzdHJpbmc7XG5cbiAgLy8gRXJyb3IgTm90aWZpY2F0aW9uc1xuICAnRmlsZSB7ZGlzcGxheU5hbWV9IGlzIG5vdCBhbiBhY2NlcHRlZCBmaWxlIHR5cGUuIFRoZSBhY2NlcHRlZCBmaWxlIHR5cGVzIGFyZSB7dHlwZXN9Jz86IHN0cmluZztcbiAgJ0ZpbGUge2Rpc3BsYXlOYW1lfSBpcyB0b28gYmlnLiBUaGUgYWNjZXB0ZWQgZmlsZSBzaXplIGlzIGxlc3MgdGhhbiB7cm91bmRGaWxlU2l6ZX0nPzogc3RyaW5nO1xuICAnT3VyIGZpbGUgdXBsb2FkIGxpbWl0IGlzIHttYXhGaWxlc30ge2ZpbGVzVGV4dH0nPzogc3RyaW5nO1xuICAnTm8gc2VhcmNoIHJlc3VsdHMgZm91bmQgZm9yIFwie3NlYXJjaH1cIic/OiBzdHJpbmc7XG4gICdBbiBlcnJvciBvY2N1cnJlZC4gUGxlYXNlIHRyeSBhZ2Fpbi4nPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlck9wdGlvbnMge1xuICAvKipcbiAgICogUmVzdHJpY3QgZmlsZSB0eXBlcyB0aGF0IGFyZSBhbGxvd2VkIHRvIGJlIHBpY2tlZC4gRm9ybWF0cyBhY2NlcHRlZDpcbiAgICogIC0gLnBkZiA8LSBhbnkgZmlsZSBleHRlbnNpb25cbiAgICogIC0gaW1hZ2UvanBlZyA8LSBhbnkgbWltZSB0eXBlIGNvbW1vbmx5IGtub3duIGJ5IGJyb3dzZXJzXG4gICAqICAtIGltYWdlLyogPC0gYWNjZXB0IGFsbCB0eXBlcyBvZiBpbWFnZXNcbiAgICogIC0gdmlkZW8vKiA8LSBhY2NlcHQgYWxsIHR5cGVzIG9mIHZpZGVvIGZpbGVzXG4gICAqICAtIGF1ZGlvLyogPC0gYWNjZXB0IGFsbCB0eXBlcyBvZiBhdWRpbyBmaWxlc1xuICAgKiAgLSBhcHBsaWNhdGlvbi8qIDwtIGFjY2VwdCBhbGwgdHlwZXMgb2YgYXBwbGljYXRpb24gZmlsZXNcbiAgICogIC0gdGV4dC8qIDwtIGFjY2VwdCBhbGwgdHlwZXMgb2YgdGV4dCBmaWxlc1xuICAgKi9cbiAgYWNjZXB0Pzogc3RyaW5nIHwgc3RyaW5nW107XG4gIC8qKlxuICAgKiBDdXN0b20gYWNjZXB0IGNoZWNrIGZ1bmN0aW9uXG4gICAqIGBgYGphdmFzY3JpcHRcbiAgICogYWNjZXB0Rm46IChmaWxlLCBvcHRpb25zKSA9PiB7XG4gICAqICByZXR1cm4gb3B0aW9ucy5taW1lRnJvbU1hZ2ljQnl0ZXMoZmlsZS5vcmlnaW5hbEZpbGUpLnRoZW4oKHJlcykgPT4geyAvLyB3ZSBjYW4gY2hlY2sgbWltZXR5cGUgZnJvbSBtYWdpYyBieXRlc1xuICAgKiAgICAvL2NvbnNvbGUubG9nKG9wdGlvbnMubWltZUZyb21FeHRlbnNpb24oZmlsZS5vcmlnaW5hbEZpbGUubmFtZSkpOyAvLyBvciBjaGVjayBleHRlbnNpb24gZnJvbSBmaWxlc3RhY2sgZXh0ZW5zaW9ucyBkYXRhYmFzZVxuICAgKiAgICAvLyB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBhY2NlcHQgdGhhdCBmaWxlJykgLy8gd2UgY2FuIHRocm93IGV4Y2VwdGlvbiB0byBibG9jayBmaWxlIHVwbG9hZFxuICAgKiAgICAvLyByZXR1cm4gUHJvbWlzZS5yZWplY3QoJ0Nhbm5vdCBhY2NlcHQgdGhhdCBmaWxlJycpIC8vIG9yIHJlamVjdCBhIHByb21pc2VcbiAgICogICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgKiAgfSk7XG4gICAqIH1cbiAgICogYGBgXG4gICAqL1xuICBhY2NlcHRGbj86IChQaWNrZXJGaWxlTWV0YWRhdGEsIFBpY2tlckFjY2VwdEZuT3B0aW9ucykgPT4gUHJvbWlzZTxzdHJpbmc+O1xuICAvKipcbiAgICogUHJldmVudCBtb2RhbCBjbG9zZSBvbiB1cGxvYWQgZmFpbHVyZSBhbmQgYWxsb3cgdXNlcnMgdG8gcmV0cnkuXG4gICAqL1xuICBhbGxvd01hbnVhbFJldHJ5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqICBWYWxpZCBzb3VyY2VzIGFyZTpcbiAgICogIC0gbG9jYWxfZmlsZV9zeXN0ZW0gLSBEZWZhdWx0XG4gICAqICAtIHVybCAtIERlZmF1bHRcbiAgICogIC0gaW1hZ2VzZWFyY2ggLSBEZWZhdWx0XG4gICAqICAtIGZhY2Vib29rIC0gRGVmYXVsdFxuICAgKiAgLSBpbnN0YWdyYW0gLSBEZWZhdWx0XG4gICAqICAtIGdvb2dsZWRyaXZlIC0gRGVmYXVsdFxuICAgKiAgLSBkcm9wYm94IC0gRGVmYXVsdFxuICAgKiAgLSB3ZWJjYW0gLSBVc2VzIGRldmljZSBtZW51IG9uIG1vYmlsZS4gTm90IGN1cnJlbnRseSBzdXBwb3J0ZWQgaW4gU2FmYXJpIGFuZCBJRS5cbiAgICogIC0gdmlkZW8gLSBVc2VzIGRldmljZSBtZW51IG9uIG1vYmlsZS4gTm90IGN1cnJlbnRseSBzdXBwb3J0ZWQgaW4gU2FmYXJpIGFuZCBJRS5cbiAgICogIC0gYXVkaW8gLSBVc2VzIGRldmljZSBtZW51IG9uIG1vYmlsZS4gTm90IGN1cnJlbnRseSBzdXBwb3J0ZWQgaW4gU2FmYXJpIGFuZCBJRS5cbiAgICogIC0gYm94XG4gICAqICAtIGdpdGh1YlxuICAgKiAgLSBnbWFpbFxuICAgKiAgLSBnb29nbGVwaG90b3NcbiAgICogIC0gb25lZHJpdmVcbiAgICogIC0gb25lZHJpdmVmb3JidXNpbmVzc1xuICAgKiAgLSBjdXN0b21zb3VyY2UgLSBDb25maWd1cmUgdGhpcyBpbiB5b3VyIEZpbGVzdGFjayBEZXYgUG9ydGFsLlxuICAgKiAgLSB1bnNwbGFzaFxuICAgKi9cbiAgZnJvbVNvdXJjZXM/OiBzdHJpbmdbXTtcbiAgLyoqXG4gICAqIFByb3ZpZGUgZGVmYXVsdCB0ZXh0IHZhbHVlIGZvciBJbWFnZSBTZWFyY2hcbiAgICogYGBgamF2YXNjcmlwdFxuICAgKiB3ZWJzZWFyY2g6IHtcbiAgICogIHByZWRlZmluZWRUZXh0OiAnU2FtcGxlIHRleHQnXG4gICAqIH1cbiAgICogYGBgXG4gICAqL1xuICB3ZWJzZWFyY2g/OiBvYmplY3Q7XG4gIC8qKlxuICAgKiBDb250YWluZXIgd2hlcmUgcGlja2VyIHNob3VsZCBiZSBhcHBlbmRlZC4gT25seSByZWxldmFudCBmb3IgYGlubGluZWAgYW5kIGBkcm9wUGFuZWAgZGlzcGxheSBtb2Rlcy5cbiAgICovXG4gIGNvbnRhaW5lcj86IHN0cmluZyB8IE5vZGU7XG5cbiAgLyoqXG4gICAqIFR1cm4gb24gY2xlYW5pbmcgSlBFRyBpbWFnZSBleGlmLiBNZXRob2QgY2FuIGtlZXAgaW1hZ2Ugb3JpZW50YXRpb24gb3IgY29sb3IgcHJvZmlsZXNcbiAgICogYGBgamF2YXNjcmlwdFxuICAgKiBjbGVhbnVwSW1hZ2VFeGlmOiB7XG4gICAqICAga2VlcE9yaWVudGF0aW9uOiB0cnVlXG4gICAqICAga2VlcElDQ2FuZEFQUDogdHJ1ZVxuICAgKiB9XG4gICAqIGBgYFxuICAgKi9cbiAgY2xlYW51cEltYWdlRXhpZj86IGJvb2xlYW4gfCB7XG4gICAga2VlcE9yaWVudGF0aW9uPzogYm9vbGVhbixcbiAgICBrZWVwSUNDYW5kQVBQPzogYm9vbGVhblxuICB9O1xuICAvKipcbiAgICogQ3VzdG9taXplIHRoZSB0ZXh0IG9uIHRoZSBjbG91ZCBhdXRoZW50aWNhdGlvbiBzY3JlZW4gaW4gUGlja2VyLlxuICAgKiBVc2UgYSBjbG91ZCBzb3VyY2UgbmFtZSAoc2VlIHtAbGluayBQaWNrZXJPcHRpb25zLmZyb21Tb3VyY2VzfSlcbiAgICogb3IgYSAnZGVmYXVsdCcgYXMgYSBrZXksIHRoZW4gcHV0IHlvdXIgY3VzdG9tIG5vdGljZSBvciBjb25zZW50XG4gICAqIHRvIHRoZSAndG9wJyBvciB0aGUgJ2JvdHRvbScga2V5IHRvIHNob3cgaXQgcmVzcGVjdGl2bHkgYWJvdmUgb3IgdW5kZXIgJ0Nvbm5lY3QgYnV0dG9uJy5cbiAgICpcbiAgICogYGBgamF2YXNjcmlwdFxuICAgKiBjdXN0b21BdXRoVGV4dDoge1xuICAgKiAgIC8vIHVzZSBpdCBmb3IgZXZlcnkgY2xvdWQgYXV0aGVudGljYXRpb24gc2NyZWVuXG4gICAqICAgZGVmYXVsdDoge1xuICAgKiAgICAgdG9wOiBbXG4gICAqICAgICAgICdkZWZhdWx0IHRvcCBmaXJzdCBsaW5lJyxcbiAgICogICAgICAgJ2RlZmF1bHQgdG9wIHNlY29uZCBsaW5lJ1xuICAgKiAgICAgXSxcbiAgICogICAgIGJvdHRvbTogW1xuICAgKiAgICAgICAnZGVmYXVsdCBib3R0b20gZmlyc3QgbGluZScsXG4gICAqICAgICAgICdkZWZhdWx0IGJvdHRvbSBzZWNvbmQgbGluZSdcbiAgICogICAgIF1cbiAgICogICB9LFxuICAgKiAgIC8vIG92ZXJyaWRlIGEgZGVmYXVsdCBib3R0b20gdGV4dCBmb3Igb25seSBnbWFpbFxuICAgKiAgIGdtYWlsOiB7XG4gICAqICAgICBib3R0b206IFtcbiAgICogICAgICAgJ1dlIG5lZWQgeW91ciBwZXJtaXNzaW9uIHRvIGFjY2VzcyB5b3VyIGRhdGEgYW5kJyxcbiAgICogICAgICAgJ3Byb2Nlc3MgaXQgd2l0aCBvdXIgbWFjaGluZSBsZWFybmluZyBzeXN0ZW0uJ1xuICAgKiAgICAgXVxuICAgKiAgIH1cbiAgICogfVxuICAgKiBgYGBcbiAgICovXG4gIGN1c3RvbUF1dGhUZXh0PzogQ3VzdG9tQXV0aFRleHRPcHRpb25zO1xuICAvKipcbiAgICogUGlja2VyIGRpc3BsYXkgbW9kZSwgb25lIG9mIGAnaW5saW5lJ2AsIGAnb3ZlcmxheSdgLCBgJ2Ryb3BQYW5lJ2AgLSBkZWZhdWx0IGlzIGAnb3ZlcmxheSdgLlxuICAgKi9cbiAgZGlzcGxheU1vZGU/OiBQaWNrZXJEaXNwbGF5TW9kZTtcbiAgLyoqXG4gICAqIE1heCBudW1iZXIgb2YgZmlsZXMgdG8gdXBsb2FkIGNvbmN1cnJlbnRseS4gRGVmYXVsdCBpcyA0LlxuICAgKi9cbiAgY29uY3VycmVuY3k/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBTZXQgdGhlIGRlZmF1bHQgY29udGFpbmVyIGZvciB5b3VyIGN1c3RvbSBzb3VyY2UuXG4gICAqL1xuICBjdXN0b21Tb3VyY2VDb250YWluZXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTZXQgdGhlIGRlZmF1bHQgcGF0aCBmb3IgeW91ciBjdXN0b20gc291cmNlIGNvbnRhaW5lci5cbiAgICovXG4gIGN1c3RvbVNvdXJjZVBhdGg/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTZXQgdGhlIGRpc3BsYXkgbmFtZSBmb3IgdGhlIGN1c3RvbSBzb3VyY2UuXG4gICAqL1xuICBjdXN0b21Tb3VyY2VOYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogUHJvdmlkZSBhbiBvYmplY3QgZm9yIG1hcHBpbmcgcGlja2VyIHN0cmluZ3MgdG8geW91ciBvd24gc3RyaW5ncy5cbiAgICogU3RyaW5ncyBzdXJyb3VuZGVkIGJ5IGJyYWNrZXRzLCBgeyBmb29iYXIgfWAsIGFyZSBpbnRlcnBvbGF0ZWQgd2l0aCBydW50aW1lIHZhbHVlcy5cbiAgICogU291cmNlIGxhYmVscyBhcmUgYWxzbyBhdmFpbGFibGUgdG8gb3ZlcnJpZGUsIGUuZy4gRmFjZWJvb2ssIEluc3RhZ3JhbSwgRHJvcGJveCwgZXRjLlxuICAgKi9cbiAgY3VzdG9tVGV4dD86IFBpY2tlckN1c3RvbVRleHQ7XG4gIC8qKlxuICAgKiBzZXQgc3VwcG9ydCBlbWFpbCB0byBkaXNwbGF5IGluIGNhc2Ugb2YgZXJyb3JcbiAgICovXG4gIHN1cHBvcnRFbWFpbD86IHN0cmluZztcbiAgLyoqXG4gICAqIFdoZW4gdHJ1ZSByZW1vdmVzIHRoZSBoYXNoIHByZWZpeCBvbiBzdG9yZWQgZmlsZXMuXG4gICAqL1xuICBkaXNhYmxlU3RvcmFnZUtleT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBXaGVuIHRydWUgcmVtb3ZlcyBhYmlsaXR5IHRvIGVkaXQgaW1hZ2VzLlxuICAgKi9cbiAgZGlzYWJsZVRyYW5zZm9ybWVyPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERpc2FibGVzIGFsdCB0ZXh0IHZpZXcvZWRpdCBpbiB0aGUgc3VtbWFyeSBzY3JlZW4uXG4gICAqL1xuICBkaXNhYmxlQWx0VGV4dD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBEaXNhYmxlcyBsb2NhbCBpbWFnZSB0aHVtYm5haWwgcHJldmlld3MgaW4gdGhlIHN1bW1hcnkgc2NyZWVuLlxuICAgKi9cbiAgZGlzYWJsZVRodW1ibmFpbHM/OiBib29sZWFuO1xuICAvKipcbiAgICogQ29uZmlndXJlIHRoZSBkcm9wIHBhbmUgYmVoYXZpb3IsIGkuZS4gd2hlbiBgZGlzcGxheU1vZGVgIGlzIGBkcm9wUGFuZWAuXG4gICAqL1xuICBkcm9wUGFuZT86IFBpY2tlckRyb3BQYW5lT3B0aW9ucztcbiAgLyoqXG4gICAqIFdoZW4gdHJ1ZSB0aGUgYG9yaWdpbmFsRmlsZWAgbWV0YWRhdGEgd2lsbCBiZSB0aGUgYWN0dWFsIGBGaWxlYCBvYmplY3QgaW5zdGVhZCBvZiBhIFBPSk9cbiAgICovXG4gIGV4cG9zZU9yaWdpbmFsRmlsZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUb2dnbGUgdGhlIGRyb3Agem9uZSB0byBiZSBhY3RpdmUgb24gYWxsIHZpZXdzLiBEZWZhdWx0IGlzIGFjdGl2ZSBvbmx5IG9uIGxvY2FsIGZpbGUgc291cmNlLlxuICAgKi9cbiAgZ2xvYmFsRHJvcFpvbmU/OiBib29sZWFuO1xuICAvKipcbiAgICogSGlkZSB0aGUgcGlja2VyIG1vZGFsIFVJIG9uY2UgdXBsb2FkaW5nIGJlZ2lucy4gRGVmYXVsdHMgdG8gYGZhbHNlYC5cbiAgICovXG4gIGhpZGVNb2RhbFdoZW5VcGxvYWRpbmc/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZ5IGltYWdlIGRpbWVuc2lvbnMuIGUuZy4gWzgwMCwgNjAwXS4gT25seSBmb3IgSlBFRywgUE5HLCBhbmQgQk1QIGZpbGVzLlxuICAgKiBMb2NhbCBhbmQgY3JvcHBlZCBpbWFnZXMgd2lsbCBiZSByZXNpemVkICh1cHNjYWxlZCBvciBkb3duc2NhbGVkKSB0byB0aGUgc3BlY2lmaWVkIGRpbWVuc2lvbnMgYmVmb3JlIHVwbG9hZGluZy5cbiAgICogVGhlIG9yaWdpbmFsIGhlaWdodCB0byB3aWR0aCByYXRpbyBpcyBtYWludGFpbmVkLiBUbyByZXNpemUgYWxsIGltYWdlcyBiYXNlZCBvbiB0aGUgd2lkdGgsIHNldCBbd2lkdGgsIG51bGxdLCBlLmcuIFs4MDAsIG51bGxdLlxuICAgKiBGb3IgdGhlIGhlaWdodCBzZXQgW251bGwsIGhlaWdodF0sIGUuZy4gW251bGwsIDYwMF0uXG4gICAqL1xuICBpbWFnZURpbT86IFtudW1iZXIsIG51bWJlcl07XG4gIC8qKlxuICAgKiBTcGVjaWZ5IG1heGltdW0gaW1hZ2UgZGltZW5zaW9ucy4gZS5nLiBbODAwLCA2MDBdLiBPbmx5IGZvciBKUEVHLCBQTkcsIGFuZCBCTVAgZmlsZXMuXG4gICAqIEltYWdlcyBiaWdnZXIgdGhhbiB0aGUgc3BlY2lmaWVkIGRpbWVuc2lvbnMgd2lsbCBiZSByZXNpemVkIHRvIHRoZSBtYXhpbXVtIHNpemUgd2hpbGUgbWFpbnRhaW5pbmcgdGhlIG9yaWdpbmFsIGFzcGVjdCByYXRpby5cbiAgICogVGhlIG91dHB1dCB3aWxsIG5vdCBiZSBleGFjdGx5IDgwMHg2MDAgdW5sZXNzIHRoZSBpbWFnZU1heCBtYXRjaGVzIHRoZSBhc3BlY3QgcmF0aW8gb2YgdGhlIG9yaWdpbmFsIGltYWdlLlxuICAgKi9cbiAgaW1hZ2VNYXg/OiBbbnVtYmVyLCBudW1iZXJdO1xuICAvKipcbiAgICogU3BlY2lmeSBtaW5pbXVtIGltYWdlIGRpbWVuc2lvbnMuIGUuZy4gWzgwMCwgNjAwXS4gT25seSBmb3IgSlBFRywgUE5HLCBhbmQgQk1QIGZpbGVzLlxuICAgKiBJbWFnZXMgc21hbGxlciB0aGFuIHRoZSBzcGVjaWZpZWQgZGltZW5zaW9ucyB3aWxsIGJlIHVwc2NhbGVkIHRvIHRoZSBtaW5pbXVtIHNpemUgd2hpbGUgbWFpbnRhaW5pbmcgdGhlIG9yaWdpbmFsIGFzcGVjdCByYXRpby5cbiAgICogVGhlIG91dHB1dCB3aWxsIG5vdCBiZSBleGFjdGx5IDgwMHg2MDAgdW5sZXNzIHRoZSBpbWFnZU1pbiBtYXRjaGVzIHRoZSBhc3BlY3QgcmF0aW8gb2YgdGhlIG9yaWdpbmFsIGltYWdlLlxuICAgKi9cbiAgaW1hZ2VNaW4/OiBbbnVtYmVyLCBudW1iZXJdO1xuICAvKipcbiAgICogU2V0cyBsb2NhbGUuIEFjY2VwdHM6IGNhLCBkYSwgZGUsIGVuLCBlcywgZnIsIGhlLCBpdCwgamEsIGtvLCBubCwgbm8sIHBsLCBwdCwgc3YsIHJ1LCB2aSwgemgsIHRyXG4gICAqL1xuICBsYW5nPzogc3RyaW5nO1xuICAvKipcbiAgICogTWluaW11bSBudW1iZXIgb2YgZmlsZXMgcmVxdWlyZWQgdG8gc3RhcnQgdXBsb2FkaW5nLiBEZWZhdWx0cyB0byAxLlxuICAgKi9cbiAgbWluRmlsZXM/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBNYXhpbXVtIG51bWJlciBvZiBmaWxlcyBhbGxvd2VkIHRvIHVwbG9hZC4gRGVmYXVsdHMgdG8gMS5cbiAgICovXG4gIG1heEZpbGVzPzogbnVtYmVyO1xuICAvKipcbiAgICogUmVzdHJpY3Qgc2VsZWN0ZWQgZmlsZXMgdG8gYSBtYXhpbXVtIG51bWJlciBvZiBieXRlcy4gKGUuZy4gMTAgXFwqIDEwMjQgXFwqIDEwMjQgZm9yIDEwTUIgbGltaXQpLlxuICAgKi9cbiAgbWF4U2l6ZT86IG51bWJlcjtcblxuICAvKipcbiAgICogRGVmYXVsdCB2aWV3IHR5cGUgb3B0aW9uIGZvciBmaWxlIGJyb3dzZXJcbiAgICovXG4gIHZpZXdUeXBlPzogJ2dyaWQnIHwgJ2xpc3QnO1xuXG4gIC8qKlxuICAgKiBUaW1lb3V0IGZvciBlcnJvciBtZXNzYWdlc1xuICAgKi9cbiAgZXJyb3JzVGltZW91dD86IG51bWJlcjtcbiAgLyoqXG4gICAqIFNwZWNpZnkgW3dpZHRoLCBoZWlnaHRdIGluIHBpeGVscyBvZiB0aGUgZGVza3RvcCBtb2RhbC5cbiAgICovXG4gIG1vZGFsU2l6ZT86IFtudW1iZXIsIG51bWJlcl07XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBhbGwgdXBsb2FkcyBpbiBhIHBpY2sgYXJlIGNhbmNlbGxlZC5cbiAgICovXG4gIG9uQ2FuY2VsPzogUGlja2VyVXBsb2FkRG9uZUNhbGxiYWNrO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gdGhlIFVJIGlzIGV4aXRlZC5cbiAgICovXG4gIG9uQ2xvc2U/OiAoKSA9PiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gdGhlIFVJIGlzIG1vdW50ZWQuXG4gICAqIEBwYXJhbSBQaWNrZXJJbnN0YW5jZSBhcHBsaWNhdGlvbiBoYW5kbGVcbiAgICovXG4gIG9uT3Blbj86IChoYW5kbGU6IFBpY2tlckluc3RhbmNlKSA9PiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW5ldmVyIHVzZXIgc2VsZWN0cyBhIGZpbGUuXG4gICAqICMjIyBFeGFtcGxlXG4gICAqXG4gICAqIGBgYGpzXG4gICAqIC8vIFVzaW5nIHRvIHZldG8gZmlsZSBzZWxlY3Rpb25cbiAgICogLy8gSWYgeW91IHRocm93IGFueSBlcnJvciBpbiB0aGlzIGZ1bmN0aW9uIGl0IHdpbGwgcmVqZWN0IHRoZSBmaWxlIHNlbGVjdGlvbi5cbiAgICogLy8gVGhlIGVycm9yIG1lc3NhZ2Ugd2lsbCBiZSBkaXNwbGF5ZWQgdG8gdGhlIHVzZXIgYXMgYW4gYWxlcnQuXG4gICAqIG9uRmlsZVNlbGVjdGVkKGZpbGUpIHtcbiAgICogICBpZiAoZmlsZS5zaXplID4gMTAwMCAqIDEwMDApIHtcbiAgICogICAgIHRocm93IG5ldyBFcnJvcignRmlsZSB0b28gYmlnLCBzZWxlY3Qgc29tZXRoaW5nIHNtYWxsZXIgdGhhbiAxTUInKTtcbiAgICogICB9XG4gICAqIH1cbiAgICpcbiAgICogLy8gVXNpbmcgdG8gY2hhbmdlIHNlbGVjdGVkIGZpbGUgbmFtZVxuICAgKiAvLyBOT1RFOiBUaGlzIGN1cnJlbnRseSBvbmx5IHdvcmtzIGZvciBsb2NhbCB1cGxvYWRzXG4gICAqIG9uRmlsZVNlbGVjdGVkKGZpbGUpIHtcbiAgICogICAvLyBJdCdzIGltcG9ydGFudCB0byByZXR1cm4gYSBuZXcgZmlsZSBieSB0aGUgZW5kIG9mIHRoaXMgZnVuY3Rpb24uXG4gICAqICAgcmV0dXJuIHsgLi4uZmlsZSwgbmFtZTogJ2ZvbycgfTtcbiAgICogfVxuICAgKiBgYGBcbiAgICpcbiAgICogVGhlIGNhbGxiYWNrIGZ1bmN0aW9uIGNhbiBhbHNvIHJldHVybiBhIFByb21pc2UgdG8gYWxsb3cgYXN5bmNocm9ub3VzIHZhbGlkYXRpb24gbG9naWMuXG4gICAqIFlvdSBjYW4gcGFzcyBhIGZpbGUgb2JqZWN0IHRvIGByZXNvbHZlYCBmb3IgY2hhbmdpbmcgdGhlIGZpbGUgbmFtZSwgaXQgd2lsbCBiZWhhdmUgdGhlIHNhbWUgYXMgd2hlblxuICAgKiB0aGUgZmlsZSBpcyByZXR1cm5lZCBmcm9tIHRoZSBub24tYXN5bmMgY2FsbGJhY2suXG4gICAqXG4gICAqIGBgYGpzXG4gICAqIG9uRmlsZVNlbGVjdGVkKGZpbGUpIHtcbiAgICogICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgKiAgICAgLy8gRG8gc29tZXRoaW5nIGFzeW5jXG4gICAqICAgICByZXNvbHZlKCk7XG4gICAqICAgICAvLyBPciByZWplY3QgdGhlIHNlbGVjdGlvbiB3aXRoIHJlamVjdCgpXG4gICAqICAgfSk7XG4gICAqIH1cbiAgICogYGBgXG4gICAqL1xuICBvbkZpbGVTZWxlY3RlZD86IFBpY2tlckZpbGVDYWxsYmFjaztcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGEgZmlsZSB1cGxvYWQgaGFzIGJlZW4gY2FuY2VsZWQuXG4gICAqL1xuICBvbkZpbGVVcGxvYWRDYW5jZWw/OiBQaWNrZXJGaWxlQ2FuY2VsQ2FsbGJhY2s7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBhIGZpbGUgYmVnaW5zIHVwbG9hZGluZy5cbiAgICovXG4gIG9uRmlsZVVwbG9hZFN0YXJ0ZWQ/OiBQaWNrZXJGaWxlV2l0aFRva2VuQ2FsbGJhY2s7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBhIGZpbGUgaXMgZG9uZSB1cGxvYWRpbmcuXG4gICAqL1xuICBvbkZpbGVVcGxvYWRGaW5pc2hlZD86IFBpY2tlckZpbGVDYWxsYmFjaztcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIHVwbG9hZGluZyBhIGZpbGUgZmFpbHMuXG4gICAqL1xuICBvbkZpbGVVcGxvYWRGYWlsZWQ/OiBQaWNrZXJGaWxlRXJyb3JDYWxsYmFjaztcbiAgLyoqXG4gICAqIENhbGxlZCBkdXJpbmcgbXVsdGktcGFydCB1cGxvYWQgcHJvZ3Jlc3MgZXZlbnRzLiBMb2NhbCBmaWxlcyBvbmx5LlxuICAgKi9cbiAgb25GaWxlVXBsb2FkUHJvZ3Jlc3M/OiBQaWNrZXJGaWxlUHJvZ3Jlc3NDYWxsYmFjaztcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGZpbGUgaXMgY3JvcHBlZCBpbiBwaWNrZXJcbiAgICovXG4gIG9uRmlsZUNyb3BwZWQ/OiBQaWNrZXJGaWxlQ2FsbGJhY2s7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiB1cGxvYWRpbmcgc3RhcnRzICh1c2VyIGluaXRpYXRlcyB1cGxvYWRpbmcpLlxuICAgKi9cbiAgb25VcGxvYWRTdGFydGVkPzogUGlja2VyVXBsb2FkU3RhcnRlZENhbGxiYWNrO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gYWxsIGZpbGVzIGhhdmUgYmVlbiB1cGxvYWRlZC5cbiAgICovXG4gIG9uVXBsb2FkRG9uZT86IFBpY2tlclVwbG9hZERvbmVDYWxsYmFjaztcblxuICAvKipcbiAgICogRGVmaW5lIGEgdW5pcXVlIGlkIGZvciB0aGUgYXBwbGljYXRpb24gbW91bnQgcG9pbnQuXG4gICAqIE1heSBiZSB1c2VmdWwgZm9yIG1vcmUgYWR2YW5jZWQgdXNlIGNhc2VzLlxuICAgKiBGb3IgZXhhbXBsZSwgaWYgeW91IHdpc2ggdG8gaGF2ZSBtb3JlIHRoYW4gb25lIHBpY2tlciBpbnN0YW5jZSBvcGVuIGF0IG9uY2UsXG4gICAqIHRoZW4gZWFjaCB3aWxsIG5lZWQgdGhlaXIgb3duIHVuaXF1ZSByb290SWQuXG4gICAqXG4gICAqICoqTm90ZToqKiBUaGlzIG9wdGlvbiBpcyBpZ25vcmVkIHdoZW4gYGRpc3BsYXlNb2RlYCBpcyBgZHJvcFBhbmVgLlxuICAgKi9cbiAgcm9vdElkPzogc3RyaW5nO1xuICAvKipcbiAgICogV2hldGhlciB0byBzdGFydCB1cGxvYWRpbmcgYXV0b21hdGljYWxseSB3aGVuIG1heEZpbGVzIGlzIGhpdC4gRGVmYXVsdHMgdG8gYGZhbHNlYC5cbiAgICovXG4gIHN0YXJ0VXBsb2FkaW5nV2hlbk1heEZpbGVzUmVhY2hlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBmaWxlIHN0b3JhZ2UuXG4gICAqL1xuICBzdG9yZVRvPzogUGlja2VyU3RvcmVPcHRpb25zO1xuICAvKipcbiAgICogU3BlY2lmeSBvcHRpb25zIGZvciBpbWFnZXMgcGFzc2VkIHRvIHRoZSBjcm9wIFVJLlxuICAgKi9cbiAgdHJhbnNmb3JtYXRpb25zPzogUGlja2VyVHJhbnNmb3JtYXRpb25PcHRpb25zO1xuICAvKipcbiAgICogV2hldGhlciB0byB1c2UgdGhlIG5ldyB0cmFuc2Zvcm1hdGlvbnMgVUkuIERlZmF1bHRzIHRvIGBmYWxzZWAuXG4gICAqL1xuICB0cmFuc2Zvcm1hdGlvbnNVST86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBsb2NhbCBmaWxlIHVwbG9hZHMuXG4gICAqL1xuICB1cGxvYWRDb25maWc/OiBVcGxvYWRPcHRpb25zO1xuICAvKipcbiAgICogU3RhcnQgdXBsb2FkaW5nIGltbWVkaWF0ZWx5IG9uIGZpbGUgc2VsZWN0aW9uLiBEZWZhdWx0cyB0byBgdHJ1ZWAuXG4gICAqIEBpbXBvcnRhbnQgVGhlIGZlYXR1cmUgaXMgY2FuIGJlIGVuYWJsZWQgb25seSBpZiBjcm9wIGlzIGRpc2FibGVkIC0gZGlzYWJsZVRyYW5zZm9ybWVyOiB0cnVlXG4gICAqL1xuICB1cGxvYWRJbkJhY2tncm91bmQ/OiBib29sZWFuO1xuICAvKipcbiAgICogU2V0cyB0aGUgcmVzb2x1dGlvbiBvZiByZWNvcmRlZCB2aWRlby4gT25lIG9mIFwiMzIweDI0MFwiLCBcIjY0MHg0ODBcIiBvciBcIjEyODB4NzIwXCIuIERlZmF1bHQgaXMgYFwiNjQweDQ4MFwiYC5cbiAgICovXG4gIHZpZGVvUmVzb2x1dGlvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIFVzZSBTZW50cnkgQnJlYWRjcnVtYnMgbWVjaGFuaXNtIHRvIGxvZyBpbmZvcm1hdGlvbiBhYm91dCBvY2N1cmVkIGVycm9ycy5cbiAgICogSXQgY2FuIG92ZXJyaWRlIGdsb2JhbCBvYmplY3RzIGxpa2UgY29uc29sZSwgZXJyb3IgZXRjLiBEZWZhdWx0cyB0byBgdHJ1ZWAuXG4gICAqL1xuICB1c2VTZW50cnlCcmVhZGNydW1icz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTcGVjaWZ5IHdoaWNoIFBpY2tlciBpbnN0YW5jZSBzaG91bGQgcmVzcG9uZCB0byBwYXN0ZSBldmVudC5cbiAgICogQnkgZGVmYXVsdCBvbmx5IGhvdmVyZWQgaW5zdGFuY2UgcmVzcG9uZHMgdG8gZXZlbnQuXG4gICAqIEBwYXJhbSB7Ym9vbGVhbiA9IGZhbHNlfSBwYXN0ZVRvRmlyc3RJblZpZXdQb3J0IElmIG5vbmUgaW5zdGFuY2UgaXMgaG92ZXJlZCB0YWtlIGZpcnN0IHBpY2tlciBpbnN0YW5jZSBmdWxseSB2aXNpYmxlIGluIHZpZXdwb3J0XG4gICAqIEBwYXJhbSB7Ym9vbGVhbiA9IGZhbHNlfSBwYXN0ZVRvRmlyc3RJbnN0YW5jZSBJZiBub25lIGluc3RhbmNlIGlzIGhvdmVyZWQgdGFrZSBmaXJzdCBwaWNrZXIgaW5zdGFuY2UgdGhhdCBpcyBpbml0aWFsaXplZFxuICAgKiBAcGFzdGVUb0ZpcnN0SW5WaWV3UG9ydCBpcyBjaGVja2VkIGZpcnN0XG4gICAqL1xuICBwYXN0ZU1vZGU/OiB7XG4gICAgcGFzdGVUb0ZpcnN0SW5WaWV3UG9ydD86IGJvb2xlYW4sXG4gICAgcGFzdGVUb0ZpcnN0SW5zdGFuY2U/OiBib29sZWFuXG4gIH07XG4gIC8qKlxuICAgKiBEaXNhYmxlL0VuYWJsZSBwb3NzaWJpbGl0eSB0byB1cGxvYWQgZGlyZWN0b3JpZXMuXG4gICAqL1xuICBkaXNhYmxlRGlyZWN0b3J5VXBsb2FkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEVuYWJsZS9EaXNhYmxlIE1pbmkgVXBsb2FkZXJcbiAgICovXG4gIG1pbmlVcGxvYWRlcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBFbmFibGUvRGlzYWJsZSBwb3NzaWJpbGl0eSB0byBtdWx0aXBsZSBmaWxlIHVwbG9hZFxuICAgKi9cbiAgbXVsdGlwbGVGaWxlVXBsb2FkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFNldCB5b3VyIG93biBHb29nbGUgRHJpdmUgUGlja2VyIEFwcCBJRC4gRGVmYXVsdHMgdG8gRmlsZXN0YWNrJ3MuXG4gICAqIFRoaXMgaXMgeW91ciBQcm9qZWN0IE51bWJlciBmcm9tIHRoZSBHb29nbGUgQ2xvdWQgY29uc29sZS5cbiAgICovXG4gIGdvb2dsZURyaXZlQXBwSUQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyQ3JvcE9wdGlvbnMge1xuICAvKipcbiAgICogTWFpbnRhaW4gYXNwZWN0IHJhdGlvIGZvciBjcm9wIHNlbGVjdGlvbi4gKGUuZy4gMTYvOSwgODAwLzYwMCkuXG4gICAqL1xuICBhc3BlY3RSYXRpbz86IG51bWJlcjtcbiAgLyoqXG4gICAqIEZvcmNlIGFsbCBpbWFnZXMgdG8gYmUgY3JvcHBlZCBiZWZvcmUgdXBsb2FkaW5nLlxuICAgKi9cbiAgZm9yY2U/OiBib29sZWFuO1xuICAvKipcbiAgICogQXV0byBjcm9wIGFyZWEgdmFsdWUgYmV0d2VlbiAwIGFuZCAxLlxuICAgKi9cbiAgYXV0b0Nyb3BBcmVhPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlclRyYW5zZm9ybWF0aW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBFbmFibGUgY3JvcC4gRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKi9cbiAgY3JvcD86IGJvb2xlYW4gfCBQaWNrZXJDcm9wT3B0aW9ucztcbiAgLyoqXG4gICAqIEVuYWJsZSBjaXJjbGUgY3JvcC4gRGlzYWJsZWQgaWYgY3JvcC5hc3BlY3RSYXRpbyBpcyBkZWZpbmVkIGFuZCBub3QgMS4gQ29udmVydHMgdG8gUE5HLiBEZWZhdWx0cyB0byBgdHJ1ZWAuXG4gICAqL1xuICBjaXJjbGU/OiBib29sZWFuO1xuICAvKipcbiAgICogRW5hYmxlIGltYWdlIHJvdGF0aW9uLiBEZWZhdWx0cyB0byBgdHJ1ZWAuXG4gICAqL1xuICByb3RhdGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBHbG9iYWwgZm9yY2UgY3JvcCBvcHRpb24uIENhbiBiZSB1c2UgaWUgd2l0aCBjaXJjbGVcbiAgICovXG4gIGZvcmNlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJBY2NlcHRGbk9wdGlvbnMge1xuICAvKipcbiAgICogUHJvdmlkZWQgYWNjZXB0IHN0cmluZ1xuICAgKi9cbiAgYWNjZXB0OiBzdHJpbmdbXTtcbiAgLyoqXG4gICAqIEFjY2VwdCBzdHJpbmcgY29udmVydGVkIHRvIG1pbWV0eXBlXG4gICAqL1xuICBhY2NlcHRNaW1lOiBzdHJpbmdbXTtcbiAgLyoqXG4gICAqIE1pbWV0eXBlIGJhc2VkIG1hZ2ljIGJ5dGVzXG4gICAqIHtAbGluayBodHRwczovL2ZpbGVzdGFjay5naXRodWIuaW8vZmlsZXN0YWNrLWpzL2dsb2JhbHMuaHRtbCNnZXRtaW1ldHlwZX1cbiAgICovXG4gIG1pbWVGcm9tTWFnaWNCeXRlczogUHJvbWlzZTxzdHJpbmc+O1xuICAvKipcbiAgICogTWltZXR5cGUgYmFzZWQgb24gZmlsZSBleHRlbnNpb25cbiAgICoge0BsaW5rIGh0dHBzOi8vZmlsZXN0YWNrLmdpdGh1Yi5pby9maWxlc3RhY2stanMvZ2xvYmFscy5odG1sI2V4dGVuc2lvbnRvbWltZX1cbiAgICovXG4gIG1pbWVGcm9tRXh0ZW5zaW9uOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQHByaXZhdGVcbiAqIEEgc3luY2hyb25vdXMtbG9va2luZyB3cmFwcGVyIGZvciBsb2FkaW5nIHRoZSBwaWNrZXIgYW5kIGNhbGxpbmcgaXRzIG1ldGhvZHMuXG4gKiBUaGlzIGlzIGN1cnJlbnRseSBuZWVkZWQgYmVjYXVzZSB0aGUgcGlja2VyIG1vZHVsZSBpcyBsb2FkZWQgYXN5bmNocm9ub3VzbHkuXG4gKiBFdmVudHVhbGx5IHdlIHNob3VsZCBvZmZlciBhIGJ1bmRsZSB3aXRoIHRoZSBwaWNrZXIgbW9kdWxlIGluY2x1ZGVkLlxuICovXG5jbGFzcyBQaWNrZXJMb2FkZXIge1xuXG4gIHByaXZhdGUgX2luaXRpYWxpemVkOiBQcm9taXNlPFBpY2tlckluc3RhbmNlPjtcbiAgY29uc3RydWN0b3IoY2xpZW50OiBDbGllbnQsIG9wdGlvbnM/OiBQaWNrZXJPcHRpb25zKSB7XG4gICAgY29uc3QgdmFsaWRhdGVSZXMgPSBnZXRWYWxpZGF0b3IoUGlja2VyUGFyYW1zU2NoZW1hKShvcHRpb25zKTtcblxuICAgIGlmICh2YWxpZGF0ZVJlcy5lcnJvcnMubGVuZ3RoKSB7XG4gICAgICB2YWxpZGF0ZVJlcy5lcnJvcnMuZm9yRWFjaChlcnJvciA9PiB7XG4gICAgICAgIGlmIChlcnJvci5wYXRoLmluY2x1ZGVzKCdmcm9tU291cmNlcycpKSB7XG4gICAgICAgICAgY29uc29sZS53YXJuKGBXYXJuaW5nOiBJbnZhbGlkIHNvdXJjZSBcXFwiJHtlcnJvci5pbnN0YW5jZX1cXFwiIGZvdW5kIGFuZCByZW1vdmVkIWApO1xuICAgICAgICAgIG9wdGlvbnMuZnJvbVNvdXJjZXMgPSBvcHRpb25zLmZyb21Tb3VyY2VzLmZpbHRlcihzb3VyY2UgPT4gc291cmNlICE9PSBlcnJvci5pbnN0YW5jZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEZpbGVzdGFja0Vycm9yKGBJbnZhbGlkIHBpY2tlciBwYXJhbXNgLCB2YWxpZGF0ZVJlcy5lcnJvcnMsIEZpbGVzdGFja0Vycm9yVHlwZS5WQUxJREFUSU9OKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICBpZiAoIW9wdGlvbnMuZnJvbVNvdXJjZXMubGVuZ3RoKSB7XG4gICAgICAgIGRlbGV0ZSBvcHRpb25zLmZyb21Tb3VyY2VzO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuX2luaXRpYWxpemVkID0gdGhpcy5sb2FkTW9kdWxlKGNsaWVudCwgb3B0aW9ucyk7XG4gIH1cblxuICBhc3luYyBvcGVuKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHBpY2tlciA9IGF3YWl0IHRoaXMuX2luaXRpYWxpemVkO1xuICAgIGF3YWl0IHBpY2tlci5vcGVuKCk7XG4gIH1cblxuICBhc3luYyBjcm9wKGZpbGVzOiBhbnlbXSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHBpY2tlciA9IGF3YWl0IHRoaXMuX2luaXRpYWxpemVkO1xuICAgIGF3YWl0IHBpY2tlci5jcm9wKGZpbGVzKTtcbiAgfVxuXG4gIGFzeW5jIGNsb3NlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHBpY2tlciA9IGF3YWl0IHRoaXMuX2luaXRpYWxpemVkO1xuICAgIGF3YWl0IHBpY2tlci5jbG9zZSgpO1xuICB9XG5cbiAgYXN5bmMgY2FuY2VsKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHBpY2tlciA9IGF3YWl0IHRoaXMuX2luaXRpYWxpemVkO1xuICAgIGF3YWl0IHBpY2tlci5jYW5jZWwoKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgbG9hZE1vZHVsZShjbGllbnQ6IENsaWVudCwgb3B0aW9ucz86IFBpY2tlck9wdGlvbnMpOiBQcm9taXNlPFBpY2tlckluc3RhbmNlPiB7XG4gICAgY29uc3QgeyBzZXNzaW9uOiB7IHVybHM6IHsgcGlja2VyVXJsOiB1cmwgfSB9IH0gPSBjbGllbnQ7XG4gICAgY29uc3QgUGlja2VyID0gYXdhaXQgbG9hZE1vZHVsZShGSUxFU1RBQ0tfTU9EVUxFUy5QSUNLRVIsIHVybCk7XG4gICAgcmV0dXJuIG5ldyBQaWNrZXIoY2xpZW50LCBvcHRpb25zKTtcbiAgfVxufVxuXG4vKipcbiAqIExvYWRzIGFuZCBjcmVhdGVzIHBpY2tlciBpbnN0YW5jZVxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0gY2xpZW50XG4gKiBAcGFyYW0gb3B0aW9uc1xuICovXG5leHBvcnQgY29uc3QgcGlja2VyID0gKGNsaWVudDogQ2xpZW50LCBvcHRpb25zPzogUGlja2VyT3B0aW9ucyk6IFBpY2tlckluc3RhbmNlID0+IHtcbiAgcmV0dXJuIG5ldyBQaWNrZXJMb2FkZXIoY2xpZW50LCBvcHRpb25zKTtcbn07XG4iXX0=
|
|
153
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,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QU0sdUJBQWYsQ0FBZ0I7d0JBQzFDLHFCQUFNLElBQUEsbUJBQVUsRUFBQywwQkFBaUIsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLEVBQUE7O3dCQUF4RCxNQUFNLEdBQUcsU0FBK0M7d0JBQzlELHNCQUFPLElBQUksTUFBTSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsRUFBQzs7OztLQUNwQztJQUNILG1CQUFDO0FBQUQsQ0FoREEsQUFnREMsSUFBQTtBQUVEOzs7Ozs7R0FNRztBQUNJLElBQU0sTUFBTSxHQUFHLFVBQUMsTUFBYyxFQUFFLE9BQXVCO0lBQzVELE9BQU8sSUFBSSxZQUFZLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQzNDLENBQUMsQ0FBQztBQUZXLFFBQUEsTUFBTSxVQUVqQiIsImZpbGUiOiJsaWIvcGlja2VyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOCBieSBGaWxlc3RhY2tcbiAqIFNvbWUgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBsb2FkTW9kdWxlLCBGSUxFU1RBQ0tfTU9EVUxFUyB9IGZyb20gJ0BmaWxlc3RhY2svbG9hZGVyJztcbmltcG9ydCB7IEZpbGVzdGFja0Vycm9yLCBGaWxlc3RhY2tFcnJvclR5cGUgfSBmcm9tICcuLy4uL2ZpbGVzdGFja19lcnJvcic7XG5pbXBvcnQgeyBDbGllbnQgfSBmcm9tICcuL2NsaWVudCc7XG5pbXBvcnQgeyBGU1Byb2dyZXNzRXZlbnQsIFVwbG9hZE9wdGlvbnMsIFdvcmtmbG93Q29uZmlnIH0gZnJvbSAnLi9hcGkvdXBsb2FkL3R5cGVzJztcbmltcG9ydCB7IGdldFZhbGlkYXRvciwgUGlja2VyUGFyYW1zU2NoZW1hIH0gZnJvbSAnLi8uLi9zY2hlbWEnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlckluc3RhbmNlIHtcbiAgLyoqXG4gICAqIENsb3NlIHBpY2tlci4gVGhpcyBvcGVyYXRpb24gaXMgaWRlbXBvdGVudC5cbiAgICovXG4gIGNsb3NlOiAoKSA9PiBQcm9taXNlPHZvaWQ+O1xuXG4gIC8qKlxuICAgKiBDYW5jZWwgcGlja2VyIHVwbG9hZHMuIFRoaXMgb3BlcmF0aW9uIGlzIGlkZW1wb3RlbnQuXG4gICAqL1xuICBjYW5jZWw6ICgpID0+IFByb21pc2U8dm9pZD47XG5cbiAgLyoqXG4gICAqIE9wZW4gcGlja2VyLiBUaGlzIG9wZXJhdGlvbiBpcyBpZGVtcG90ZW50LlxuICAgKi9cbiAgb3BlbjogKCkgPT4gUHJvbWlzZTx2b2lkPjtcblxuICAvKipcbiAgICogU3BlY2lmeSBhIGxpc3Qgb2YgZmlsZXMgdG8gb3BlbiBpbiB0aGUgcGlja2VyIGZvciBjcm9wcGluZ1xuICAgKlxuICAgKiAjIyMgRXhhbXBsZVxuICAgKlxuICAgKiBgYGBqc1xuICAgKiAvLyA8aW5wdXQgaWQ9XCJmaWxlU2VsZWN0XCIgdHlwZT1cImZpbGVcIj5cbiAgICpcbiAgICogY29uc3QgaW5wdXRFbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdmaWxlU2VsZWN0Jyk7XG4gICAqIGNvbnN0IHBpY2tlciA9IGNsaWVudC5waWNrZXIoe1xuICAgKiAgIG9uVXBsb2FkRG9uZTogcmVzID0+IGNvbnNvbGUubG9nKHJlcyksXG4gICAqIH0pO1xuICAgKlxuICAgKiBpbnB1dEVsLmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIChlKSA9PiB7XG4gICAqICAgcGlja2VyLmNyb3AoZS50YXJnZXQuZmlsZXMpO1xuICAgKiB9KTtcbiAgICpcbiAgICogLy8gT3IgcGFzcyBhbiBhcnJheSBvZiBVUkwgc3RyaW5nc1xuICAgKiBjb25zdCB1cmxzID0gW1xuICAgKiAgICdodHRwczovL2Qxd3RxYWZmYWFqNjN6LmNsb3VkZnJvbnQubmV0L2ltYWdlcy9mb3hfaW5fZm9yZXN0MS5qcGcnLFxuICAgKiAgICdodHRwczovL2Qxd3RxYWZmYWFqNjN6LmNsb3VkZnJvbnQubmV0L2ltYWdlcy9zYWlsLmpwZycsXG4gICAqIF07XG4gICAqIHBpY2tlci5jcm9wKHVybHMpO1xuICAgKiBgYGBcbiAgICovXG4gIGNyb3A6IChmaWxlczogYW55W10pID0+IFByb21pc2U8dm9pZD47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyQ3JvcHBlZERhdGEge1xuICBjcm9wQXJlYToge1xuICAgIC8qKlxuICAgICAqIFt4LCB5XVxuICAgICAqL1xuICAgIHBvc2l0aW9uOiBbbnVtYmVyLCBudW1iZXJdO1xuICAgIC8qKlxuICAgICAqIFt3aWR0aCwgaGVpZ2h0XVxuICAgICAqL1xuICAgIHNpemU6IFtudW1iZXIsIG51bWJlcl07XG4gIH07XG4gICAgLyoqXG4gICAgICogW3dpZHRoLCBoZWlnaHRdXG4gICAgICovXG4gIG9yaWdpbmFsSW1hZ2VTaXplOiBbbnVtYmVyLCBudW1iZXJdO1xufVxuXG5leHBvcnQgZW51bSBSb3RhdGVEaXJlY3Rpb24ge1xuICBjdyA9ICdDVycsXG4gIGNjdz0gJ0NDVycsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyUm90YXRlZERhdGEge1xuICAvKipcbiAgICogQW1vdW50IHJvdGF0ZWQgaW4gZGVncmVlcy5cbiAgICovXG4gIHZhbHVlOiBudW1iZXI7XG4gIC8qKlxuICAgKiBDYW4gYmUgQ1cgb3IgQ0NXIChjbG9ja3dpc2UgLyBjb3VudGVyLWNsb2Nrd2lzZSlcbiAgICovXG4gIGRpcmVjdGlvbjogUm90YXRlRGlyZWN0aW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlckZpbGVNZXRhZGF0YSB7XG4gIC8qKlxuICAgKiBUaGUgY2xvdWQgY29udGFpbmVyIGZvciB0aGUgdXBsb2FkZWQgZmlsZS5cbiAgICovXG4gIGNvbnRhaW5lcj86IHN0cmluZztcbiAgLyoqXG4gICAqIFBvc2l0aW9uIGFuZCBzaXplIGluZm9ybWF0aW9uIGZvciBjcm9wcGVkIGltYWdlcy5cbiAgICovXG4gIGNyb3BwZWQ/OiBQaWNrZXJDcm9wcGVkRGF0YTtcbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGZpbGUuXG4gICAqL1xuICBmaWxlbmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogRmlsZXN0YWNrIGhhbmRsZSBmb3IgdGhlIHVwbG9hZGVkIGZpbGUuXG4gICAqL1xuICBoYW5kbGU6IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBoYXNoLXByZWZpeGVkIGNsb3VkIHN0b3JhZ2UgcGF0aC5cbiAgICovXG4gIGtleT86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBNSU1FIHR5cGUgb2YgdGhlIGZpbGUuXG4gICAqL1xuICBtaW1ldHlwZTogc3RyaW5nO1xuICAvKipcbiAgICogUHJvcGVydGllcyBvZiB0aGUgbG9jYWwgYmluYXJ5IGZpbGUuIEFsc28gc2VlIHRoZSBwaWNrIG9wdGlvbiBgZXhwb3NlT3JpZ2luYWxGaWxlYCBpZiB5b3Ugd2FudCB0aGUgdW5kZXJseWluZyBgRmlsZWAgb2JqZWN0LlxuICAgKi9cbiAgb3JpZ2luYWxGaWxlPzogb2JqZWN0IHwgRmlsZTtcbiAgLyoqXG4gICAqIFRoZSBvcmlnaW4gb2YgdGhlIGZpbGUsIGUuZy4gL0ZvbGRlci9maWxlLmpwZy5cbiAgICovXG4gIG9yaWdpbmFsUGF0aDogc3RyaW5nO1xuICAvKipcbiAgICogRGlyZWN0aW9uIGFuZCB2YWx1ZSBpbmZvcm1hdGlvbiBmb3Igcm90YXRlZCBpbWFnZXMuXG4gICAqL1xuICByb3RhdGVkPzogUGlja2VyUm90YXRlZERhdGE7XG4gIC8qKlxuICAgKiBTaXplIGluIGJ5dGVzIG9mIHRoZSB1cGxvYWRlZCBmaWxlLlxuICAgKi9cbiAgc2l6ZTogbnVtYmVyO1xuICAvKipcbiAgICogVGhlIHNvdXJjZSBmcm9tIHdoZXJlIHRoZSBmaWxlIHdhcyBwaWNrZWQuXG4gICAqL1xuICBzb3VyY2U6IHN0cmluZztcbiAgLyoqXG4gICAqIEluZGljYXRlcyBGaWxlc3RhY2sgdHJhbnNpdCBzdGF0dXMuXG4gICAqL1xuICBzdGF0dXM/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBIHV1aWQgZm9yIHRyYWNraW5nIHRoaXMgZmlsZSBpbiBjYWxsYmFja3MuXG4gICAqL1xuICB1cGxvYWRJZDogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIEZpbGVzdGFjayBDRE4gVVJMIGZvciB0aGUgdXBsb2FkZWQgZmlsZS5cbiAgICovXG4gIHVybDogc3RyaW5nO1xuICAvKipcbiAgICogQWx0IHRleHQgZm9yIGltYWdlc1xuICAgKi9cbiAgYWx0OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3VzdG9tQXV0aFRleHRPcHRpb25zIHtcbiAgW2tleTogc3RyaW5nXToge1xuICAgIHRvcD86IHN0cmluZ1tdLFxuICAgIGJvdHRvbT86IHN0cmluZ1tdXG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyUmVzcG9uc2Uge1xuICBmaWxlc1VwbG9hZGVkOiBQaWNrZXJGaWxlTWV0YWRhdGFbXTtcbiAgZmlsZXNGYWlsZWQ6IFBpY2tlckZpbGVNZXRhZGF0YVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlckZpbGVDYWxsYmFjayB7XG4gIChmaWxlOiBQaWNrZXJGaWxlTWV0YWRhdGEpOiB2b2lkIHwgUHJvbWlzZTxhbnk+O1xufVxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJGaWxlV2l0aFRva2VuQ2FsbGJhY2sge1xuICAoZmlsZTogUGlja2VyRmlsZU1ldGFkYXRhLCB0b2tlbj86IHtwYXVzZT86ICgpID0+IHZvaWQsIHJlc3VtZT86ICgpID0+IHZvaWQsIGNhbmNlbD86ICgpID0+IHZvaWR9KTogdm9pZCB8IFByb21pc2U8YW55Pjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJGaWxlQ2FuY2VsQ2FsbGJhY2sge1xuICAoZmlsZTogUGlja2VyRmlsZU1ldGFkYXRhKTogdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJGaWxlRXJyb3JDYWxsYmFjayB7XG4gIChmaWxlOiBQaWNrZXJGaWxlTWV0YWRhdGEsIGVycm9yOiBFcnJvcik6IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyRmlsZVByb2dyZXNzQ2FsbGJhY2sge1xuICAoZmlsZTogUGlja2VyRmlsZU1ldGFkYXRhLCBldmVudDogRlNQcm9ncmVzc0V2ZW50KTogdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJVcGxvYWRTdGFydGVkQ2FsbGJhY2sge1xuICAoZmlsZXM6IFBpY2tlckZpbGVNZXRhZGF0YVtdKTogdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJVcGxvYWREb25lQ2FsbGJhY2sge1xuICAoZmlsZXM6IFBpY2tlclJlc3BvbnNlKTogdm9pZDtcbn1cblxuZXhwb3J0IGVudW0gUGlja2VyRGlzcGxheU1vZGUge1xuICBpbmxpbmUgPSAnaW5saW5lJyxcbiAgb3ZlcmxheSA9ICdvdmVybGF5JyxcbiAgZHJvcFBhbmUgPSAnZHJvcFBhbmUnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlckRyb3BQYW5lT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUb2dnbGUgdGhlIGNyb3AgVUkgZm9yIGRyb3BwZWQgZmlsZXMuXG4gICAqL1xuICBjcm9wRmlsZXM/OiBib29sZWFuO1xuICAvKipcbiAgICogQ3VzdG9taXplIHRoZSB0ZXh0IGNvbnRlbnQgaW4gdGhlIGRyb3AgcGFuZS5cbiAgICovXG4gIGN1c3RvbVRleHQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEaXNhYmxlIHRoZSBmaWxlIGlucHV0IG9uIGNsaWNrLiBUaGlzIGRvZXMgbm90IGRpc2FibGUgdGhlIGBvbkNsaWNrYCBjYWxsYmFjay5cbiAgICovXG4gIGRpc2FibGVDbGljaz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUb2dnbGUgdGhlIGZ1bGwtcGFnZSBkcm9wIHpvbmUgb3ZlcmxheS5cbiAgICovXG4gIG92ZXJsYXk/OiBib29sZWFuO1xuICBvbkRyYWdFbnRlcj86IChldnQ6IERyYWdFdmVudCkgPT4gdm9pZDtcbiAgb25EcmFnTGVhdmU/OiAoKSA9PiB2b2lkO1xuICBvbkRyYWdPdmVyPzogKGV2dDogRHJhZ0V2ZW50KSA9PiB2b2lkO1xuICBvbkRyb3A/OiAoZXZ0OiBEcmFnRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBgb25TdWNjZXNzYCBtdXN0IGJlIHVzZWQgaW5zdGVhZCBvZiBgb25VcGxvYWREb25lYC4gVGhlIGRyb3AgcGFuZSB1c2VzIGl0cyBvd24gY2FsbGJhY2tzIGZvciBjb21wYXRpYmlsaXR5IHB1cnBvc2VzLiBUaGlzIG1pZ2h0IGV2ZW50dWFsbHkgY2hhbmdlLlxuICAgKi9cbiAgb25TdWNjZXNzPzogKGZpbGVzOiBQaWNrZXJGaWxlTWV0YWRhdGFbXSkgPT4gdm9pZDtcbiAgb25FcnJvcj86IChmaWxlczogUGlja2VyRmlsZU1ldGFkYXRhW10pID0+IHZvaWQ7XG4gIG9uUHJvZ3Jlc3M/OiAocGVyY2VudDogbnVtYmVyKSA9PiB2b2lkO1xuICBvbkNsaWNrPzogKGV2dDogYW55KSA9PiB2b2lkO1xuICAvKipcbiAgICogVG9nZ2xlIGljb24gZWxlbWVudCBpbiBkcm9wIHBhbmUuXG4gICAqL1xuICBzaG93SWNvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUb2dnbGUgdXBsb2FkIHByb2dyZXNzIGRpc3BsYXkuXG4gICAqL1xuICBzaG93UHJvZ3Jlc3M/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlclN0b3JlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBMb2NhdGlvbiBmb3Igc3RvcmVkIGZpbGUuIE9uZSBvZiAnczMnLCAnZ2NzJywgJ2F6dXJlJywgJ3JhY2tzcGFjZScsIG9yICdkcm9wYm94Jy5cbiAgICovXG4gIGxvY2F0aW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogU3BlY2lmeSBzdG9yYWdlIGNvbnRhaW5lci5cbiAgICovXG4gIGNvbnRhaW5lcj86IHN0cmluZztcbiAgLyoqXG4gICAqIFNldCBjb250YWluZXIgcGF0aC4gSW5kaWNhdGUgYSBmb2xkZXIgYnkgYWRkaW5nIGEgdHJhaWxpbmcgc2xhc2guIFdpdGhvdXQgYSB0cmFpbGluZyBzbGFzaCBhbGwgZmlsZXMgd2lsbCBiZSBzdG9yZWQgdG8gdGhlIHNhbWUgb2JqZWN0LlxuICAgKi9cbiAgcGF0aD86IHN0cmluZztcbiAgLyoqXG4gICAqIFNwZWNpZnkgUzMgcmVnaW9uLlxuICAgKi9cbiAgcmVnaW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogUzMgY29udGFpbmVyIGFjY2Vzcy4gJ3B1YmxpYycgb3IgJ3ByaXZhdGUnLlxuICAgKi9cbiAgYWNjZXNzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXb3JrZmxvd3MgaWRzIHRvIHJ1biBhZnRlciB1cGxvYWRcbiAgICovXG4gIHdvcmtmbG93cz86IHN0cmluZ1tdIHwgV29ya2Zsb3dDb25maWdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJDdXN0b21UZXh0IHtcbiAgLy8gQWN0aW9uc1xuICBVcGxvYWQ/OiBzdHJpbmc7XG4gICdVcGxvYWQgbW9yZSc/OiBzdHJpbmc7XG4gICdEZXNlbGVjdCBBbGwnPzogc3RyaW5nO1xuICAnVmlldy9FZGl0IFNlbGVjdGVkJz86IHN0cmluZztcbiAgJ1NpZ24gT3V0Jz86IHN0cmluZztcblxuICAvLyBTb3VyY2UgTGFiZWxzXG4gICdNeSBEZXZpY2UnPzogc3RyaW5nO1xuICAnV2ViIFNlYXJjaCc/OiBzdHJpbmc7XG4gICdUYWtlIFBob3RvJz86IHN0cmluZztcbiAgJ0xpbmsgKFVSTCknPzogc3RyaW5nO1xuICAnUmVjb3JkIFZpZGVvJz86IHN0cmluZztcbiAgJ1JlY29yZCBBdWRpbyc/OiBzdHJpbmc7XG5cbiAgLy8gQ3VzdG9tIFNvdXJjZVxuICAnQ3VzdG9tIFNvdXJjZSc/OiBzdHJpbmc7XG5cbiAgLy8gRm9vdGVyIFRleHRcbiAgQWRkPzogc3RyaW5nO1xuICAnbW9yZSBmaWxlJz86IHN0cmluZztcbiAgJ21vcmUgZmlsZXMnPzogc3RyaW5nO1xuXG4gIC8vIENsb3VkXG4gICdDb25uZWN0IHtwcm92aWRlck5hbWV9Jz86IHN0cmluZztcbiAgJ1NlbGVjdCBGaWxlcyBmcm9tIHtwcm92aWRlck5hbWV9Jz86IHN0cmluZztcbiAgJ1lvdSBuZWVkIHRvIGF1dGhlbnRpY2F0ZSB3aXRoIHtwcm92aWRlck5hbWV9Lic/OiBzdHJpbmc7XG4gICdBIG5ldyBwYWdlIHdpbGwgb3BlbiB0byBjb25uZWN0IHlvdXIgYWNjb3VudC4nPzogc3RyaW5nO1xuICAnV2Ugb25seSBleHRyYWN0IGltYWdlcyBhbmQgbmV2ZXIgbW9kaWZ5IG9yIGRlbGV0ZSB0aGVtLic/OiBzdHJpbmc7XG4gICdUbyBkaXNjb25uZWN0IGZyb20ge3Byb3ZpZGVyTmFtZX0gY2xpY2sgXCJTaWduIG91dFwiIGJ1dHRvbiBpbiB0aGUgbWVudS4nPzogc3RyaW5nO1xuICAnU2lnbiBpbiB3aXRoIEdvb2dsZSc/OiBzdHJpbmc7XG4gICdHbyBiYWNrJz86IHN0cmluZztcbiAgJ1RoaXMgZm9sZGVyIGlzIGVtcHR5Lic/OiBzdHJpbmc7XG5cbiAgLy8gU3VtbWFyeVxuICBGaWxlcz86IHN0cmluZztcbiAgSW1hZ2VzPzogc3RyaW5nO1xuICBVcGxvYWRlZD86IHN0cmluZztcbiAgVXBsb2FkaW5nPzogc3RyaW5nO1xuICBDb21wbGV0ZWQ/OiBzdHJpbmc7XG4gIEZpbHRlcj86IHN0cmluZztcbiAgJ0Nyb3BwZWQgSW1hZ2VzJz86IHN0cmluZztcbiAgJ0VkaXRlZCBJbWFnZXMnPzogc3RyaW5nO1xuICAnU2VsZWN0ZWQgRmlsZXMnPzogc3RyaW5nO1xuICAnQ3JvcCBpcyByZXF1aXJlZCBvbiBpbWFnZXMnPzogc3RyaW5nO1xuXG4gIC8vIFRyYW5zZm9ybVxuICBDcm9wPzogc3RyaW5nO1xuICBDaXJjbGU/OiBzdHJpbmc7XG4gIFJvdGF0ZT86IHN0cmluZztcbiAgTWFzaz86IHN0cmluZztcbiAgUmV2ZXJ0Pzogc3RyaW5nO1xuICBFZGl0Pzogc3RyaW5nO1xuICBSZXNldD86IHN0cmluZztcbiAgRG9uZT86IHN0cmluZztcbiAgU2F2ZT86IHN0cmluZztcbiAgTmV4dD86IHN0cmluZztcbiAgJ0VkaXQgSW1hZ2UnPzogc3RyaW5nO1xuICAnVGhpcyBpbWFnZSBjYW5ub3QgYmUgZWRpdGVkJz86IHN0cmluZztcblxuICAvLyBSZXRyeSBtZXNzYWdpbmdcbiAgJ0Nvbm5lY3Rpb24gTG9zdCc/OiBzdHJpbmc7XG4gICdGYWlsZWQgV2hpbGUgVXBsb2FkaW5nJz86IHN0cmluZztcbiAgJ1JldHJ5aW5nIGluJz86IHN0cmluZztcbiAgJ1RyeSBhZ2Fpbic/OiBzdHJpbmc7XG4gICdUcnkgbm93Jz86IHN0cmluZztcblxuICAvLyBMb2NhbCBGaWxlIFNvdXJjZVxuICAnRHJhZyBhbmQgRHJvcCwgQ29weSBhbmQgUGFzdGUgRmlsZXMnPzogc3RyaW5nO1xuICAnb3IgRHJhZyBhbmQgRHJvcCwgQ29weSBhbmQgUGFzdGUgRmlsZXMnPzogc3RyaW5nO1xuICAnU2VsZWN0IEZpbGVzIHRvIFVwbG9hZCc/OiBzdHJpbmc7XG4gICdTZWxlY3QgRnJvbSc/OiBzdHJpbmc7XG4gICdEcm9wIHlvdXIgZmlsZXMgYW55d2hlcmUnPzogc3RyaW5nO1xuXG4gIC8vIElucHV0IHBsYWNlaG9sZGVyc1xuICAnRW50ZXIgYSBVUkwnPzogc3RyaW5nO1xuICAnU2VhcmNoIGltYWdlcyc/OiBzdHJpbmc7XG5cbiAgLy8gV2ViY2FtIFNvdXJjZVxuICAnV2ViY2FtIERpc2FibGVkJz86IHN0cmluZztcbiAgJ1dlYmNhbSBOb3QgU3VwcG9ydGVkJz86IHN0cmluZztcbiAgJ1BsZWFzZSBlbmFibGUgeW91ciB3ZWJjYW0gdG8gdGFrZSBhIHBob3RvLic/OiBzdHJpbmc7XG4gICdZb3VyIGN1cnJlbnQgYnJvd3NlciBkb2VzIG5vdCBzdXBwb3J0IHdlYmNhbSBmdW5jdGlvbmFsaXR5Lic/OiBzdHJpbmc7XG4gICdXZSBzdWdnZXN0IHVzaW5nIENocm9tZSBvciBGaXJlZm94Lic/OiBzdHJpbmc7XG5cbiAgLy8gRXJyb3IgTm90aWZpY2F0aW9uc1xuICAnRmlsZSB7ZGlzcGxheU5hbWV9IGlzIG5vdCBhbiBhY2NlcHRlZCBmaWxlIHR5cGUuIFRoZSBhY2NlcHRlZCBmaWxlIHR5cGVzIGFyZSB7dHlwZXN9Jz86IHN0cmluZztcbiAgJ0ZpbGUge2Rpc3BsYXlOYW1lfSBpcyB0b28gYmlnLiBUaGUgYWNjZXB0ZWQgZmlsZSBzaXplIGlzIGxlc3MgdGhhbiB7cm91bmRGaWxlU2l6ZX0nPzogc3RyaW5nO1xuICAnT3VyIGZpbGUgdXBsb2FkIGxpbWl0IGlzIHttYXhGaWxlc30ge2ZpbGVzVGV4dH0nPzogc3RyaW5nO1xuICAnTm8gc2VhcmNoIHJlc3VsdHMgZm91bmQgZm9yIFwie3NlYXJjaH1cIic/OiBzdHJpbmc7XG4gICdBbiBlcnJvciBvY2N1cnJlZC4gUGxlYXNlIHRyeSBhZ2Fpbi4nPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlck9wdGlvbnMge1xuICAvKipcbiAgICogUmVzdHJpY3QgZmlsZSB0eXBlcyB0aGF0IGFyZSBhbGxvd2VkIHRvIGJlIHBpY2tlZC4gRm9ybWF0cyBhY2NlcHRlZDpcbiAgICogIC0gLnBkZiA8LSBhbnkgZmlsZSBleHRlbnNpb25cbiAgICogIC0gaW1hZ2UvanBlZyA8LSBhbnkgbWltZSB0eXBlIGNvbW1vbmx5IGtub3duIGJ5IGJyb3dzZXJzXG4gICAqICAtIGltYWdlLyogPC0gYWNjZXB0IGFsbCB0eXBlcyBvZiBpbWFnZXNcbiAgICogIC0gdmlkZW8vKiA8LSBhY2NlcHQgYWxsIHR5cGVzIG9mIHZpZGVvIGZpbGVzXG4gICAqICAtIGF1ZGlvLyogPC0gYWNjZXB0IGFsbCB0eXBlcyBvZiBhdWRpbyBmaWxlc1xuICAgKiAgLSBhcHBsaWNhdGlvbi8qIDwtIGFjY2VwdCBhbGwgdHlwZXMgb2YgYXBwbGljYXRpb24gZmlsZXNcbiAgICogIC0gdGV4dC8qIDwtIGFjY2VwdCBhbGwgdHlwZXMgb2YgdGV4dCBmaWxlc1xuICAgKi9cbiAgYWNjZXB0Pzogc3RyaW5nIHwgc3RyaW5nW107XG4gIC8qKlxuICAgKiBDdXN0b20gYWNjZXB0IGNoZWNrIGZ1bmN0aW9uXG4gICAqIGBgYGphdmFzY3JpcHRcbiAgICogYWNjZXB0Rm46IChmaWxlLCBvcHRpb25zKSA9PiB7XG4gICAqICByZXR1cm4gb3B0aW9ucy5taW1lRnJvbU1hZ2ljQnl0ZXMoZmlsZS5vcmlnaW5hbEZpbGUpLnRoZW4oKHJlcykgPT4geyAvLyB3ZSBjYW4gY2hlY2sgbWltZXR5cGUgZnJvbSBtYWdpYyBieXRlc1xuICAgKiAgICAvL2NvbnNvbGUubG9nKG9wdGlvbnMubWltZUZyb21FeHRlbnNpb24oZmlsZS5vcmlnaW5hbEZpbGUubmFtZSkpOyAvLyBvciBjaGVjayBleHRlbnNpb24gZnJvbSBmaWxlc3RhY2sgZXh0ZW5zaW9ucyBkYXRhYmFzZVxuICAgKiAgICAvLyB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBhY2NlcHQgdGhhdCBmaWxlJykgLy8gd2UgY2FuIHRocm93IGV4Y2VwdGlvbiB0byBibG9jayBmaWxlIHVwbG9hZFxuICAgKiAgICAvLyByZXR1cm4gUHJvbWlzZS5yZWplY3QoJ0Nhbm5vdCBhY2NlcHQgdGhhdCBmaWxlJycpIC8vIG9yIHJlamVjdCBhIHByb21pc2VcbiAgICogICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgKiAgfSk7XG4gICAqIH1cbiAgICogYGBgXG4gICAqL1xuICBhY2NlcHRGbj86IChQaWNrZXJGaWxlTWV0YWRhdGEsIFBpY2tlckFjY2VwdEZuT3B0aW9ucykgPT4gUHJvbWlzZTxzdHJpbmc+O1xuICAvKipcbiAgICogUHJldmVudCBtb2RhbCBjbG9zZSBvbiB1cGxvYWQgZmFpbHVyZSBhbmQgYWxsb3cgdXNlcnMgdG8gcmV0cnkuXG4gICAqL1xuICBhbGxvd01hbnVhbFJldHJ5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqICBWYWxpZCBzb3VyY2VzIGFyZTpcbiAgICogIC0gbG9jYWxfZmlsZV9zeXN0ZW0gLSBEZWZhdWx0XG4gICAqICAtIHVybCAtIERlZmF1bHRcbiAgICogIC0gaW1hZ2VzZWFyY2ggLSBEZWZhdWx0XG4gICAqICAtIGZhY2Vib29rIC0gRGVmYXVsdFxuICAgKiAgLSBpbnN0YWdyYW0gLSBEZWZhdWx0XG4gICAqICAtIGdvb2dsZWRyaXZlIC0gRGVmYXVsdFxuICAgKiAgLSBkcm9wYm94IC0gRGVmYXVsdFxuICAgKiAgLSB3ZWJjYW0gLSBVc2VzIGRldmljZSBtZW51IG9uIG1vYmlsZS4gTm90IGN1cnJlbnRseSBzdXBwb3J0ZWQgaW4gU2FmYXJpIGFuZCBJRS5cbiAgICogIC0gdmlkZW8gLSBVc2VzIGRldmljZSBtZW51IG9uIG1vYmlsZS4gTm90IGN1cnJlbnRseSBzdXBwb3J0ZWQgaW4gU2FmYXJpIGFuZCBJRS5cbiAgICogIC0gYXVkaW8gLSBVc2VzIGRldmljZSBtZW51IG9uIG1vYmlsZS4gTm90IGN1cnJlbnRseSBzdXBwb3J0ZWQgaW4gU2FmYXJpIGFuZCBJRS5cbiAgICogIC0gYm94XG4gICAqICAtIGdpdGh1YlxuICAgKiAgLSBnbWFpbFxuICAgKiAgLSBnb29nbGVwaG90b3NcbiAgICogIC0gb25lZHJpdmVcbiAgICogIC0gb25lZHJpdmVmb3JidXNpbmVzc1xuICAgKiAgLSBjdXN0b21zb3VyY2UgLSBDb25maWd1cmUgdGhpcyBpbiB5b3VyIEZpbGVzdGFjayBEZXYgUG9ydGFsLlxuICAgKiAgLSB1bnNwbGFzaFxuICAgKi9cbiAgZnJvbVNvdXJjZXM/OiBzdHJpbmdbXTtcbiAgLyoqXG4gICAqIFByb3ZpZGUgZGVmYXVsdCB0ZXh0IHZhbHVlIGZvciBJbWFnZSBTZWFyY2hcbiAgICogYGBgamF2YXNjcmlwdFxuICAgKiB3ZWJzZWFyY2g6IHtcbiAgICogIHByZWRlZmluZWRUZXh0OiAnU2FtcGxlIHRleHQnXG4gICAqIH1cbiAgICogYGBgXG4gICAqL1xuICB3ZWJzZWFyY2g/OiBvYmplY3Q7XG4gIC8qKlxuICAgKiBDb250YWluZXIgd2hlcmUgcGlja2VyIHNob3VsZCBiZSBhcHBlbmRlZC4gT25seSByZWxldmFudCBmb3IgYGlubGluZWAgYW5kIGBkcm9wUGFuZWAgZGlzcGxheSBtb2Rlcy5cbiAgICovXG4gIGNvbnRhaW5lcj86IHN0cmluZyB8IE5vZGU7XG5cbiAgLyoqXG4gICAqIFR1cm4gb24gY2xlYW5pbmcgSlBFRyBpbWFnZSBleGlmLiBNZXRob2QgY2FuIGtlZXAgaW1hZ2Ugb3JpZW50YXRpb24gb3IgY29sb3IgcHJvZmlsZXNcbiAgICogYGBgamF2YXNjcmlwdFxuICAgKiBjbGVhbnVwSW1hZ2VFeGlmOiB7XG4gICAqICAga2VlcE9yaWVudGF0aW9uOiB0cnVlXG4gICAqICAga2VlcElDQ2FuZEFQUDogdHJ1ZVxuICAgKiB9XG4gICAqIGBgYFxuICAgKi9cbiAgY2xlYW51cEltYWdlRXhpZj86IGJvb2xlYW4gfCB7XG4gICAga2VlcE9yaWVudGF0aW9uPzogYm9vbGVhbixcbiAgICBrZWVwSUNDYW5kQVBQPzogYm9vbGVhblxuICB9O1xuICAvKipcbiAgICogQ3VzdG9taXplIHRoZSB0ZXh0IG9uIHRoZSBjbG91ZCBhdXRoZW50aWNhdGlvbiBzY3JlZW4gaW4gUGlja2VyLlxuICAgKiBVc2UgYSBjbG91ZCBzb3VyY2UgbmFtZSAoc2VlIHtAbGluayBQaWNrZXJPcHRpb25zLmZyb21Tb3VyY2VzfSlcbiAgICogb3IgYSAnZGVmYXVsdCcgYXMgYSBrZXksIHRoZW4gcHV0IHlvdXIgY3VzdG9tIG5vdGljZSBvciBjb25zZW50XG4gICAqIHRvIHRoZSAndG9wJyBvciB0aGUgJ2JvdHRvbScga2V5IHRvIHNob3cgaXQgcmVzcGVjdGl2bHkgYWJvdmUgb3IgdW5kZXIgJ0Nvbm5lY3QgYnV0dG9uJy5cbiAgICpcbiAgICogYGBgamF2YXNjcmlwdFxuICAgKiBjdXN0b21BdXRoVGV4dDoge1xuICAgKiAgIC8vIHVzZSBpdCBmb3IgZXZlcnkgY2xvdWQgYXV0aGVudGljYXRpb24gc2NyZWVuXG4gICAqICAgZGVmYXVsdDoge1xuICAgKiAgICAgdG9wOiBbXG4gICAqICAgICAgICdkZWZhdWx0IHRvcCBmaXJzdCBsaW5lJyxcbiAgICogICAgICAgJ2RlZmF1bHQgdG9wIHNlY29uZCBsaW5lJ1xuICAgKiAgICAgXSxcbiAgICogICAgIGJvdHRvbTogW1xuICAgKiAgICAgICAnZGVmYXVsdCBib3R0b20gZmlyc3QgbGluZScsXG4gICAqICAgICAgICdkZWZhdWx0IGJvdHRvbSBzZWNvbmQgbGluZSdcbiAgICogICAgIF1cbiAgICogICB9LFxuICAgKiAgIC8vIG92ZXJyaWRlIGEgZGVmYXVsdCBib3R0b20gdGV4dCBmb3Igb25seSBnbWFpbFxuICAgKiAgIGdtYWlsOiB7XG4gICAqICAgICBib3R0b206IFtcbiAgICogICAgICAgJ1dlIG5lZWQgeW91ciBwZXJtaXNzaW9uIHRvIGFjY2VzcyB5b3VyIGRhdGEgYW5kJyxcbiAgICogICAgICAgJ3Byb2Nlc3MgaXQgd2l0aCBvdXIgbWFjaGluZSBsZWFybmluZyBzeXN0ZW0uJ1xuICAgKiAgICAgXVxuICAgKiAgIH1cbiAgICogfVxuICAgKiBgYGBcbiAgICovXG4gIGN1c3RvbUF1dGhUZXh0PzogQ3VzdG9tQXV0aFRleHRPcHRpb25zO1xuICAvKipcbiAgICogUGlja2VyIGRpc3BsYXkgbW9kZSwgb25lIG9mIGAnaW5saW5lJ2AsIGAnb3ZlcmxheSdgLCBgJ2Ryb3BQYW5lJ2AgLSBkZWZhdWx0IGlzIGAnb3ZlcmxheSdgLlxuICAgKi9cbiAgZGlzcGxheU1vZGU/OiBQaWNrZXJEaXNwbGF5TW9kZTtcbiAgLyoqXG4gICAqIE1heCBudW1iZXIgb2YgZmlsZXMgdG8gdXBsb2FkIGNvbmN1cnJlbnRseS4gRGVmYXVsdCBpcyA0LlxuICAgKi9cbiAgY29uY3VycmVuY3k/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBTZXQgdGhlIGRlZmF1bHQgY29udGFpbmVyIGZvciB5b3VyIGN1c3RvbSBzb3VyY2UuXG4gICAqL1xuICBjdXN0b21Tb3VyY2VDb250YWluZXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTZXQgdGhlIGRlZmF1bHQgcGF0aCBmb3IgeW91ciBjdXN0b20gc291cmNlIGNvbnRhaW5lci5cbiAgICovXG4gIGN1c3RvbVNvdXJjZVBhdGg/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTZXQgdGhlIGRpc3BsYXkgbmFtZSBmb3IgdGhlIGN1c3RvbSBzb3VyY2UuXG4gICAqL1xuICBjdXN0b21Tb3VyY2VOYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogUHJvdmlkZSBhbiBvYmplY3QgZm9yIG1hcHBpbmcgcGlja2VyIHN0cmluZ3MgdG8geW91ciBvd24gc3RyaW5ncy5cbiAgICogU3RyaW5ncyBzdXJyb3VuZGVkIGJ5IGJyYWNrZXRzLCBgeyBmb29iYXIgfWAsIGFyZSBpbnRlcnBvbGF0ZWQgd2l0aCBydW50aW1lIHZhbHVlcy5cbiAgICogU291cmNlIGxhYmVscyBhcmUgYWxzbyBhdmFpbGFibGUgdG8gb3ZlcnJpZGUsIGUuZy4gRmFjZWJvb2ssIEluc3RhZ3JhbSwgRHJvcGJveCwgZXRjLlxuICAgKi9cbiAgY3VzdG9tVGV4dD86IFBpY2tlckN1c3RvbVRleHQ7XG4gIC8qKlxuICAgKiBzZXQgc3VwcG9ydCBlbWFpbCB0byBkaXNwbGF5IGluIGNhc2Ugb2YgZXJyb3JcbiAgICovXG4gIHN1cHBvcnRFbWFpbD86IHN0cmluZztcbiAgLyoqXG4gICAqIFdoZW4gdHJ1ZSByZW1vdmVzIHRoZSBoYXNoIHByZWZpeCBvbiBzdG9yZWQgZmlsZXMuXG4gICAqL1xuICBkaXNhYmxlU3RvcmFnZUtleT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBXaGVuIHRydWUgcmVtb3ZlcyBhYmlsaXR5IHRvIGVkaXQgaW1hZ2VzLlxuICAgKi9cbiAgZGlzYWJsZVRyYW5zZm9ybWVyPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERpc2FibGVzIGFsdCB0ZXh0IHZpZXcvZWRpdCBpbiB0aGUgc3VtbWFyeSBzY3JlZW4uXG4gICAqL1xuICBkaXNhYmxlQWx0VGV4dD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBEaXNhYmxlcyBsb2NhbCBpbWFnZSB0aHVtYm5haWwgcHJldmlld3MgaW4gdGhlIHN1bW1hcnkgc2NyZWVuLlxuICAgKi9cbiAgZGlzYWJsZVRodW1ibmFpbHM/OiBib29sZWFuO1xuICAvKipcbiAgICogQ29uZmlndXJlIHRoZSBkcm9wIHBhbmUgYmVoYXZpb3IsIGkuZS4gd2hlbiBgZGlzcGxheU1vZGVgIGlzIGBkcm9wUGFuZWAuXG4gICAqL1xuICBkcm9wUGFuZT86IFBpY2tlckRyb3BQYW5lT3B0aW9ucztcbiAgLyoqXG4gICAqIFdoZW4gdHJ1ZSB0aGUgYG9yaWdpbmFsRmlsZWAgbWV0YWRhdGEgd2lsbCBiZSB0aGUgYWN0dWFsIGBGaWxlYCBvYmplY3QgaW5zdGVhZCBvZiBhIFBPSk9cbiAgICovXG4gIGV4cG9zZU9yaWdpbmFsRmlsZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUb2dnbGUgdGhlIGRyb3Agem9uZSB0byBiZSBhY3RpdmUgb24gYWxsIHZpZXdzLiBEZWZhdWx0IGlzIGFjdGl2ZSBvbmx5IG9uIGxvY2FsIGZpbGUgc291cmNlLlxuICAgKi9cbiAgZ2xvYmFsRHJvcFpvbmU/OiBib29sZWFuO1xuICAvKipcbiAgICogSGlkZSB0aGUgcGlja2VyIG1vZGFsIFVJIG9uY2UgdXBsb2FkaW5nIGJlZ2lucy4gRGVmYXVsdHMgdG8gYGZhbHNlYC5cbiAgICovXG4gIGhpZGVNb2RhbFdoZW5VcGxvYWRpbmc/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZ5IGltYWdlIGRpbWVuc2lvbnMuIGUuZy4gWzgwMCwgNjAwXS4gT25seSBmb3IgSlBFRywgUE5HLCBhbmQgQk1QIGZpbGVzLlxuICAgKiBMb2NhbCBhbmQgY3JvcHBlZCBpbWFnZXMgd2lsbCBiZSByZXNpemVkICh1cHNjYWxlZCBvciBkb3duc2NhbGVkKSB0byB0aGUgc3BlY2lmaWVkIGRpbWVuc2lvbnMgYmVmb3JlIHVwbG9hZGluZy5cbiAgICogVGhlIG9yaWdpbmFsIGhlaWdodCB0byB3aWR0aCByYXRpbyBpcyBtYWludGFpbmVkLiBUbyByZXNpemUgYWxsIGltYWdlcyBiYXNlZCBvbiB0aGUgd2lkdGgsIHNldCBbd2lkdGgsIG51bGxdLCBlLmcuIFs4MDAsIG51bGxdLlxuICAgKiBGb3IgdGhlIGhlaWdodCBzZXQgW251bGwsIGhlaWdodF0sIGUuZy4gW251bGwsIDYwMF0uXG4gICAqL1xuICBpbWFnZURpbT86IFtudW1iZXIsIG51bWJlcl07XG4gIC8qKlxuICAgKiBTcGVjaWZ5IG1heGltdW0gaW1hZ2UgZGltZW5zaW9ucy4gZS5nLiBbODAwLCA2MDBdLiBPbmx5IGZvciBKUEVHLCBQTkcsIGFuZCBCTVAgZmlsZXMuXG4gICAqIEltYWdlcyBiaWdnZXIgdGhhbiB0aGUgc3BlY2lmaWVkIGRpbWVuc2lvbnMgd2lsbCBiZSByZXNpemVkIHRvIHRoZSBtYXhpbXVtIHNpemUgd2hpbGUgbWFpbnRhaW5pbmcgdGhlIG9yaWdpbmFsIGFzcGVjdCByYXRpby5cbiAgICogVGhlIG91dHB1dCB3aWxsIG5vdCBiZSBleGFjdGx5IDgwMHg2MDAgdW5sZXNzIHRoZSBpbWFnZU1heCBtYXRjaGVzIHRoZSBhc3BlY3QgcmF0aW8gb2YgdGhlIG9yaWdpbmFsIGltYWdlLlxuICAgKi9cbiAgaW1hZ2VNYXg/OiBbbnVtYmVyLCBudW1iZXJdO1xuICAvKipcbiAgICogU3BlY2lmeSBtaW5pbXVtIGltYWdlIGRpbWVuc2lvbnMuIGUuZy4gWzgwMCwgNjAwXS4gT25seSBmb3IgSlBFRywgUE5HLCBhbmQgQk1QIGZpbGVzLlxuICAgKiBJbWFnZXMgc21hbGxlciB0aGFuIHRoZSBzcGVjaWZpZWQgZGltZW5zaW9ucyB3aWxsIGJlIHVwc2NhbGVkIHRvIHRoZSBtaW5pbXVtIHNpemUgd2hpbGUgbWFpbnRhaW5pbmcgdGhlIG9yaWdpbmFsIGFzcGVjdCByYXRpby5cbiAgICogVGhlIG91dHB1dCB3aWxsIG5vdCBiZSBleGFjdGx5IDgwMHg2MDAgdW5sZXNzIHRoZSBpbWFnZU1pbiBtYXRjaGVzIHRoZSBhc3BlY3QgcmF0aW8gb2YgdGhlIG9yaWdpbmFsIGltYWdlLlxuICAgKi9cbiAgaW1hZ2VNaW4/OiBbbnVtYmVyLCBudW1iZXJdO1xuICAvKipcbiAgICogU2V0cyBsb2NhbGUuIEFjY2VwdHM6IGNhLCBkYSwgZGUsIGVuLCBlcywgZnIsIGhlLCBpdCwgamEsIGtvLCBubCwgbm8sIHBsLCBwdCwgc3YsIHJ1LCB2aSwgemgsIHRyXG4gICAqL1xuICBsYW5nPzogc3RyaW5nO1xuICAvKipcbiAgICogTWluaW11bSBudW1iZXIgb2YgZmlsZXMgcmVxdWlyZWQgdG8gc3RhcnQgdXBsb2FkaW5nLiBEZWZhdWx0cyB0byAxLlxuICAgKi9cbiAgbWluRmlsZXM/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBNYXhpbXVtIG51bWJlciBvZiBmaWxlcyBhbGxvd2VkIHRvIHVwbG9hZC4gRGVmYXVsdHMgdG8gMS5cbiAgICovXG4gIG1heEZpbGVzPzogbnVtYmVyO1xuICAvKipcbiAgICogUmVzdHJpY3Qgc2VsZWN0ZWQgZmlsZXMgdG8gYSBtYXhpbXVtIG51bWJlciBvZiBieXRlcy4gKGUuZy4gMTAgXFwqIDEwMjQgXFwqIDEwMjQgZm9yIDEwTUIgbGltaXQpLlxuICAgKi9cbiAgbWF4U2l6ZT86IG51bWJlcjtcblxuICAvKipcbiAgICogRGVmYXVsdCB2aWV3IHR5cGUgb3B0aW9uIGZvciBmaWxlIGJyb3dzZXJcbiAgICovXG4gIHZpZXdUeXBlPzogJ2dyaWQnIHwgJ2xpc3QnO1xuXG4gIC8qKlxuICAgKiBUaW1lb3V0IGZvciBlcnJvciBtZXNzYWdlc1xuICAgKi9cbiAgZXJyb3JzVGltZW91dD86IG51bWJlcjtcbiAgLyoqXG4gICAqIFNwZWNpZnkgW3dpZHRoLCBoZWlnaHRdIGluIHBpeGVscyBvZiB0aGUgZGVza3RvcCBtb2RhbC5cbiAgICovXG4gIG1vZGFsU2l6ZT86IFtudW1iZXIsIG51bWJlcl07XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBhbGwgdXBsb2FkcyBpbiBhIHBpY2sgYXJlIGNhbmNlbGxlZC5cbiAgICovXG4gIG9uQ2FuY2VsPzogUGlja2VyVXBsb2FkRG9uZUNhbGxiYWNrO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gdGhlIFVJIGlzIGV4aXRlZC5cbiAgICovXG4gIG9uQ2xvc2U/OiAoKSA9PiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gdGhlIFVJIGlzIG1vdW50ZWQuXG4gICAqIEBwYXJhbSBQaWNrZXJJbnN0YW5jZSBhcHBsaWNhdGlvbiBoYW5kbGVcbiAgICovXG4gIG9uT3Blbj86IChoYW5kbGU6IFBpY2tlckluc3RhbmNlKSA9PiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW5ldmVyIHVzZXIgc2VsZWN0cyBhIGZpbGUuXG4gICAqICMjIyBFeGFtcGxlXG4gICAqXG4gICAqIGBgYGpzXG4gICAqIC8vIFVzaW5nIHRvIHZldG8gZmlsZSBzZWxlY3Rpb25cbiAgICogLy8gSWYgeW91IHRocm93IGFueSBlcnJvciBpbiB0aGlzIGZ1bmN0aW9uIGl0IHdpbGwgcmVqZWN0IHRoZSBmaWxlIHNlbGVjdGlvbi5cbiAgICogLy8gVGhlIGVycm9yIG1lc3NhZ2Ugd2lsbCBiZSBkaXNwbGF5ZWQgdG8gdGhlIHVzZXIgYXMgYW4gYWxlcnQuXG4gICAqIG9uRmlsZVNlbGVjdGVkKGZpbGUpIHtcbiAgICogICBpZiAoZmlsZS5zaXplID4gMTAwMCAqIDEwMDApIHtcbiAgICogICAgIHRocm93IG5ldyBFcnJvcignRmlsZSB0b28gYmlnLCBzZWxlY3Qgc29tZXRoaW5nIHNtYWxsZXIgdGhhbiAxTUInKTtcbiAgICogICB9XG4gICAqIH1cbiAgICpcbiAgICogLy8gVXNpbmcgdG8gY2hhbmdlIHNlbGVjdGVkIGZpbGUgbmFtZVxuICAgKiAvLyBOT1RFOiBUaGlzIGN1cnJlbnRseSBvbmx5IHdvcmtzIGZvciBsb2NhbCB1cGxvYWRzXG4gICAqIG9uRmlsZVNlbGVjdGVkKGZpbGUpIHtcbiAgICogICAvLyBJdCdzIGltcG9ydGFudCB0byByZXR1cm4gYSBuZXcgZmlsZSBieSB0aGUgZW5kIG9mIHRoaXMgZnVuY3Rpb24uXG4gICAqICAgcmV0dXJuIHsgLi4uZmlsZSwgbmFtZTogJ2ZvbycgfTtcbiAgICogfVxuICAgKiBgYGBcbiAgICpcbiAgICogVGhlIGNhbGxiYWNrIGZ1bmN0aW9uIGNhbiBhbHNvIHJldHVybiBhIFByb21pc2UgdG8gYWxsb3cgYXN5bmNocm9ub3VzIHZhbGlkYXRpb24gbG9naWMuXG4gICAqIFlvdSBjYW4gcGFzcyBhIGZpbGUgb2JqZWN0IHRvIGByZXNvbHZlYCBmb3IgY2hhbmdpbmcgdGhlIGZpbGUgbmFtZSwgaXQgd2lsbCBiZWhhdmUgdGhlIHNhbWUgYXMgd2hlblxuICAgKiB0aGUgZmlsZSBpcyByZXR1cm5lZCBmcm9tIHRoZSBub24tYXN5bmMgY2FsbGJhY2suXG4gICAqXG4gICAqIGBgYGpzXG4gICAqIG9uRmlsZVNlbGVjdGVkKGZpbGUpIHtcbiAgICogICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgKiAgICAgLy8gRG8gc29tZXRoaW5nIGFzeW5jXG4gICAqICAgICByZXNvbHZlKCk7XG4gICAqICAgICAvLyBPciByZWplY3QgdGhlIHNlbGVjdGlvbiB3aXRoIHJlamVjdCgpXG4gICAqICAgfSk7XG4gICAqIH1cbiAgICogYGBgXG4gICAqL1xuICBvbkZpbGVTZWxlY3RlZD86IFBpY2tlckZpbGVDYWxsYmFjaztcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGEgZmlsZSB1cGxvYWQgaGFzIGJlZW4gY2FuY2VsZWQuXG4gICAqL1xuICBvbkZpbGVVcGxvYWRDYW5jZWw/OiBQaWNrZXJGaWxlQ2FuY2VsQ2FsbGJhY2s7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBhIGZpbGUgYmVnaW5zIHVwbG9hZGluZy5cbiAgICovXG4gIG9uRmlsZVVwbG9hZFN0YXJ0ZWQ/OiBQaWNrZXJGaWxlV2l0aFRva2VuQ2FsbGJhY2s7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBhIGZpbGUgaXMgZG9uZSB1cGxvYWRpbmcuXG4gICAqL1xuICBvbkZpbGVVcGxvYWRGaW5pc2hlZD86IFBpY2tlckZpbGVDYWxsYmFjaztcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIHVwbG9hZGluZyBhIGZpbGUgZmFpbHMuXG4gICAqL1xuICBvbkZpbGVVcGxvYWRGYWlsZWQ/OiBQaWNrZXJGaWxlRXJyb3JDYWxsYmFjaztcbiAgLyoqXG4gICAqIENhbGxlZCBkdXJpbmcgbXVsdGktcGFydCB1cGxvYWQgcHJvZ3Jlc3MgZXZlbnRzLiBMb2NhbCBmaWxlcyBvbmx5LlxuICAgKi9cbiAgb25GaWxlVXBsb2FkUHJvZ3Jlc3M/OiBQaWNrZXJGaWxlUHJvZ3Jlc3NDYWxsYmFjaztcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGZpbGUgaXMgY3JvcHBlZCBpbiBwaWNrZXJcbiAgICovXG4gIG9uRmlsZUNyb3BwZWQ/OiBQaWNrZXJGaWxlQ2FsbGJhY2s7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiB1cGxvYWRpbmcgc3RhcnRzICh1c2VyIGluaXRpYXRlcyB1cGxvYWRpbmcpLlxuICAgKi9cbiAgb25VcGxvYWRTdGFydGVkPzogUGlja2VyVXBsb2FkU3RhcnRlZENhbGxiYWNrO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gYWxsIGZpbGVzIGhhdmUgYmVlbiB1cGxvYWRlZC5cbiAgICovXG4gIG9uVXBsb2FkRG9uZT86IFBpY2tlclVwbG9hZERvbmVDYWxsYmFjaztcblxuICAvKipcbiAgICogRGVmaW5lIGEgdW5pcXVlIGlkIGZvciB0aGUgYXBwbGljYXRpb24gbW91bnQgcG9pbnQuXG4gICAqIE1heSBiZSB1c2VmdWwgZm9yIG1vcmUgYWR2YW5jZWQgdXNlIGNhc2VzLlxuICAgKiBGb3IgZXhhbXBsZSwgaWYgeW91IHdpc2ggdG8gaGF2ZSBtb3JlIHRoYW4gb25lIHBpY2tlciBpbnN0YW5jZSBvcGVuIGF0IG9uY2UsXG4gICAqIHRoZW4gZWFjaCB3aWxsIG5lZWQgdGhlaXIgb3duIHVuaXF1ZSByb290SWQuXG4gICAqXG4gICAqICoqTm90ZToqKiBUaGlzIG9wdGlvbiBpcyBpZ25vcmVkIHdoZW4gYGRpc3BsYXlNb2RlYCBpcyBgZHJvcFBhbmVgLlxuICAgKi9cbiAgcm9vdElkPzogc3RyaW5nO1xuICAvKipcbiAgICogV2hldGhlciB0byBzdGFydCB1cGxvYWRpbmcgYXV0b21hdGljYWxseSB3aGVuIG1heEZpbGVzIGlzIGhpdC4gRGVmYXVsdHMgdG8gYGZhbHNlYC5cbiAgICovXG4gIHN0YXJ0VXBsb2FkaW5nV2hlbk1heEZpbGVzUmVhY2hlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBmaWxlIHN0b3JhZ2UuXG4gICAqL1xuICBzdG9yZVRvPzogUGlja2VyU3RvcmVPcHRpb25zO1xuICAvKipcbiAgICogU3BlY2lmeSBvcHRpb25zIGZvciBpbWFnZXMgcGFzc2VkIHRvIHRoZSBjcm9wIFVJLlxuICAgKi9cbiAgdHJhbnNmb3JtYXRpb25zPzogUGlja2VyVHJhbnNmb3JtYXRpb25PcHRpb25zO1xuICAvKipcbiAgICogV2hldGhlciB0byB1c2UgdGhlIG5ldyB0cmFuc2Zvcm1hdGlvbnMgVUkuIERlZmF1bHRzIHRvIGBmYWxzZWAuXG4gICAqL1xuICB0cmFuc2Zvcm1hdGlvbnNVST86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBsb2NhbCBmaWxlIHVwbG9hZHMuXG4gICAqL1xuICB1cGxvYWRDb25maWc/OiBVcGxvYWRPcHRpb25zO1xuICAvKipcbiAgICogU3RhcnQgdXBsb2FkaW5nIGltbWVkaWF0ZWx5IG9uIGZpbGUgc2VsZWN0aW9uLiBEZWZhdWx0cyB0byBgdHJ1ZWAuXG4gICAqIEBpbXBvcnRhbnQgVGhlIGZlYXR1cmUgaXMgY2FuIGJlIGVuYWJsZWQgb25seSBpZiBjcm9wIGlzIGRpc2FibGVkIC0gZGlzYWJsZVRyYW5zZm9ybWVyOiB0cnVlXG4gICAqL1xuICB1cGxvYWRJbkJhY2tncm91bmQ/OiBib29sZWFuO1xuICAvKipcbiAgICogU2V0cyB0aGUgcmVzb2x1dGlvbiBvZiByZWNvcmRlZCB2aWRlby4gT25lIG9mIFwiMzIweDI0MFwiLCBcIjY0MHg0ODBcIiBvciBcIjEyODB4NzIwXCIuIERlZmF1bHQgaXMgYFwiNjQweDQ4MFwiYC5cbiAgICovXG4gIHZpZGVvUmVzb2x1dGlvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIFVzZSBTZW50cnkgQnJlYWRjcnVtYnMgbWVjaGFuaXNtIHRvIGxvZyBpbmZvcm1hdGlvbiBhYm91dCBvY2N1cmVkIGVycm9ycy5cbiAgICogSXQgY2FuIG92ZXJyaWRlIGdsb2JhbCBvYmplY3RzIGxpa2UgY29uc29sZSwgZXJyb3IgZXRjLiBEZWZhdWx0cyB0byBgdHJ1ZWAuXG4gICAqL1xuICB1c2VTZW50cnlCcmVhZGNydW1icz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTcGVjaWZ5IHdoaWNoIFBpY2tlciBpbnN0YW5jZSBzaG91bGQgcmVzcG9uZCB0byBwYXN0ZSBldmVudC5cbiAgICogQnkgZGVmYXVsdCBvbmx5IGhvdmVyZWQgaW5zdGFuY2UgcmVzcG9uZHMgdG8gZXZlbnQuXG4gICAqIEBwYXJhbSB7Ym9vbGVhbiA9IGZhbHNlfSBwYXN0ZVRvRmlyc3RJblZpZXdQb3J0IElmIG5vbmUgaW5zdGFuY2UgaXMgaG92ZXJlZCB0YWtlIGZpcnN0IHBpY2tlciBpbnN0YW5jZSBmdWxseSB2aXNpYmxlIGluIHZpZXdwb3J0XG4gICAqIEBwYXJhbSB7Ym9vbGVhbiA9IGZhbHNlfSBwYXN0ZVRvRmlyc3RJbnN0YW5jZSBJZiBub25lIGluc3RhbmNlIGlzIGhvdmVyZWQgdGFrZSBmaXJzdCBwaWNrZXIgaW5zdGFuY2UgdGhhdCBpcyBpbml0aWFsaXplZFxuICAgKiBAcGFzdGVUb0ZpcnN0SW5WaWV3UG9ydCBpcyBjaGVja2VkIGZpcnN0XG4gICAqL1xuICBwYXN0ZU1vZGU/OiB7XG4gICAgcGFzdGVUb0ZpcnN0SW5WaWV3UG9ydD86IGJvb2xlYW4sXG4gICAgcGFzdGVUb0ZpcnN0SW5zdGFuY2U/OiBib29sZWFuXG4gIH07XG4gIC8qKlxuICAgKiBEaXNhYmxlL0VuYWJsZSBwb3NzaWJpbGl0eSB0byB1cGxvYWQgZGlyZWN0b3JpZXMuXG4gICAqL1xuICBkaXNhYmxlRGlyZWN0b3J5VXBsb2FkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEVuYWJsZS9EaXNhYmxlIE1pbmkgVXBsb2FkZXJcbiAgICovXG4gIG1pbmlVcGxvYWRlcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBFbmFibGUvRGlzYWJsZSBwb3NzaWJpbGl0eSB0byBtdWx0aXBsZSBmaWxlIHVwbG9hZFxuICAgKi9cbiAgbXVsdGlwbGVGaWxlVXBsb2FkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFNldCB5b3VyIG93biBHb29nbGUgRHJpdmUgUGlja2VyIEFwcCBJRC4gRGVmYXVsdHMgdG8gRmlsZXN0YWNrJ3MuXG4gICAqIFRoaXMgaXMgeW91ciBQcm9qZWN0IE51bWJlciBmcm9tIHRoZSBHb29nbGUgQ2xvdWQgY29uc29sZS5cbiAgICovXG4gIGdvb2dsZURyaXZlQXBwSUQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTZXRzIHRoZSBvcmlnaW4gb2YgcGlja2VyIGRpYWxvZy4gVGhlIG9yaWdpbiBzaG91bGQgYmUgc2V0IHRvXG4gICAqIHRoZSB3aW5kb3cubG9jYXRpb24ucHJvdG9jb2wgKyAnLy8nICsgd2luZG93LmxvY2F0aW9uLmhvc3Qgb2YgdGhlIHRvcC1tb3N0IHBhZ2UsXG4gICAqIGlmIHlvdXIgYXBwbGljYXRpb24gaXMgcnVubmluZyBpbiBhbiBpZnJhbWUuXG4gICAqL1xuICBnb29nbGVBcHBPcmlnaW4/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyQ3JvcE9wdGlvbnMge1xuICAvKipcbiAgICogTWFpbnRhaW4gYXNwZWN0IHJhdGlvIGZvciBjcm9wIHNlbGVjdGlvbi4gKGUuZy4gMTYvOSwgODAwLzYwMCkuXG4gICAqL1xuICBhc3BlY3RSYXRpbz86IG51bWJlcjtcbiAgLyoqXG4gICAqIEZvcmNlIGFsbCBpbWFnZXMgdG8gYmUgY3JvcHBlZCBiZWZvcmUgdXBsb2FkaW5nLlxuICAgKi9cbiAgZm9yY2U/OiBib29sZWFuO1xuICAvKipcbiAgICogQXV0byBjcm9wIGFyZWEgdmFsdWUgYmV0d2VlbiAwIGFuZCAxLlxuICAgKi9cbiAgYXV0b0Nyb3BBcmVhPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlclRyYW5zZm9ybWF0aW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBFbmFibGUgY3JvcC4gRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKi9cbiAgY3JvcD86IGJvb2xlYW4gfCBQaWNrZXJDcm9wT3B0aW9ucztcbiAgLyoqXG4gICAqIEVuYWJsZSBjaXJjbGUgY3JvcC4gRGlzYWJsZWQgaWYgY3JvcC5hc3BlY3RSYXRpbyBpcyBkZWZpbmVkIGFuZCBub3QgMS4gQ29udmVydHMgdG8gUE5HLiBEZWZhdWx0cyB0byBgdHJ1ZWAuXG4gICAqL1xuICBjaXJjbGU/OiBib29sZWFuO1xuICAvKipcbiAgICogRW5hYmxlIGltYWdlIHJvdGF0aW9uLiBEZWZhdWx0cyB0byBgdHJ1ZWAuXG4gICAqL1xuICByb3RhdGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBHbG9iYWwgZm9yY2UgY3JvcCBvcHRpb24uIENhbiBiZSB1c2UgaWUgd2l0aCBjaXJjbGVcbiAgICovXG4gIGZvcmNlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJBY2NlcHRGbk9wdGlvbnMge1xuICAvKipcbiAgICogUHJvdmlkZWQgYWNjZXB0IHN0cmluZ1xuICAgKi9cbiAgYWNjZXB0OiBzdHJpbmdbXTtcbiAgLyoqXG4gICAqIEFjY2VwdCBzdHJpbmcgY29udmVydGVkIHRvIG1pbWV0eXBlXG4gICAqL1xuICBhY2NlcHRNaW1lOiBzdHJpbmdbXTtcbiAgLyoqXG4gICAqIE1pbWV0eXBlIGJhc2VkIG1hZ2ljIGJ5dGVzXG4gICAqIHtAbGluayBodHRwczovL2ZpbGVzdGFjay5naXRodWIuaW8vZmlsZXN0YWNrLWpzL2dsb2JhbHMuaHRtbCNnZXRtaW1ldHlwZX1cbiAgICovXG4gIG1pbWVGcm9tTWFnaWNCeXRlczogUHJvbWlzZTxzdHJpbmc+O1xuICAvKipcbiAgICogTWltZXR5cGUgYmFzZWQgb24gZmlsZSBleHRlbnNpb25cbiAgICoge0BsaW5rIGh0dHBzOi8vZmlsZXN0YWNrLmdpdGh1Yi5pby9maWxlc3RhY2stanMvZ2xvYmFscy5odG1sI2V4dGVuc2lvbnRvbWltZX1cbiAgICovXG4gIG1pbWVGcm9tRXh0ZW5zaW9uOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQHByaXZhdGVcbiAqIEEgc3luY2hyb25vdXMtbG9va2luZyB3cmFwcGVyIGZvciBsb2FkaW5nIHRoZSBwaWNrZXIgYW5kIGNhbGxpbmcgaXRzIG1ldGhvZHMuXG4gKiBUaGlzIGlzIGN1cnJlbnRseSBuZWVkZWQgYmVjYXVzZSB0aGUgcGlja2VyIG1vZHVsZSBpcyBsb2FkZWQgYXN5bmNocm9ub3VzbHkuXG4gKiBFdmVudHVhbGx5IHdlIHNob3VsZCBvZmZlciBhIGJ1bmRsZSB3aXRoIHRoZSBwaWNrZXIgbW9kdWxlIGluY2x1ZGVkLlxuICovXG5jbGFzcyBQaWNrZXJMb2FkZXIge1xuXG4gIHByaXZhdGUgX2luaXRpYWxpemVkOiBQcm9taXNlPFBpY2tlckluc3RhbmNlPjtcbiAgY29uc3RydWN0b3IoY2xpZW50OiBDbGllbnQsIG9wdGlvbnM/OiBQaWNrZXJPcHRpb25zKSB7XG4gICAgY29uc3QgdmFsaWRhdGVSZXMgPSBnZXRWYWxpZGF0b3IoUGlja2VyUGFyYW1zU2NoZW1hKShvcHRpb25zKTtcblxuICAgIGlmICh2YWxpZGF0ZVJlcy5lcnJvcnMubGVuZ3RoKSB7XG4gICAgICB2YWxpZGF0ZVJlcy5lcnJvcnMuZm9yRWFjaChlcnJvciA9PiB7XG4gICAgICAgIGlmIChlcnJvci5wYXRoLmluY2x1ZGVzKCdmcm9tU291cmNlcycpKSB7XG4gICAgICAgICAgY29uc29sZS53YXJuKGBXYXJuaW5nOiBJbnZhbGlkIHNvdXJjZSBcXFwiJHtlcnJvci5pbnN0YW5jZX1cXFwiIGZvdW5kIGFuZCByZW1vdmVkIWApO1xuICAgICAgICAgIG9wdGlvbnMuZnJvbVNvdXJjZXMgPSBvcHRpb25zLmZyb21Tb3VyY2VzLmZpbHRlcihzb3VyY2UgPT4gc291cmNlICE9PSBlcnJvci5pbnN0YW5jZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEZpbGVzdGFja0Vycm9yKGBJbnZhbGlkIHBpY2tlciBwYXJhbXNgLCB2YWxpZGF0ZVJlcy5lcnJvcnMsIEZpbGVzdGFja0Vycm9yVHlwZS5WQUxJREFUSU9OKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICBpZiAoIW9wdGlvbnMuZnJvbVNvdXJjZXMubGVuZ3RoKSB7XG4gICAgICAgIGRlbGV0ZSBvcHRpb25zLmZyb21Tb3VyY2VzO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuX2luaXRpYWxpemVkID0gdGhpcy5sb2FkTW9kdWxlKGNsaWVudCwgb3B0aW9ucyk7XG4gIH1cblxuICBhc3luYyBvcGVuKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHBpY2tlciA9IGF3YWl0IHRoaXMuX2luaXRpYWxpemVkO1xuICAgIGF3YWl0IHBpY2tlci5vcGVuKCk7XG4gIH1cblxuICBhc3luYyBjcm9wKGZpbGVzOiBhbnlbXSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHBpY2tlciA9IGF3YWl0IHRoaXMuX2luaXRpYWxpemVkO1xuICAgIGF3YWl0IHBpY2tlci5jcm9wKGZpbGVzKTtcbiAgfVxuXG4gIGFzeW5jIGNsb3NlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHBpY2tlciA9IGF3YWl0IHRoaXMuX2luaXRpYWxpemVkO1xuICAgIGF3YWl0IHBpY2tlci5jbG9zZSgpO1xuICB9XG5cbiAgYXN5bmMgY2FuY2VsKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHBpY2tlciA9IGF3YWl0IHRoaXMuX2luaXRpYWxpemVkO1xuICAgIGF3YWl0IHBpY2tlci5jYW5jZWwoKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgbG9hZE1vZHVsZShjbGllbnQ6IENsaWVudCwgb3B0aW9ucz86IFBpY2tlck9wdGlvbnMpOiBQcm9taXNlPFBpY2tlckluc3RhbmNlPiB7XG4gICAgY29uc3QgeyBzZXNzaW9uOiB7IHVybHM6IHsgcGlja2VyVXJsOiB1cmwgfSB9IH0gPSBjbGllbnQ7XG4gICAgY29uc3QgUGlja2VyID0gYXdhaXQgbG9hZE1vZHVsZShGSUxFU1RBQ0tfTU9EVUxFUy5QSUNLRVIsIHVybCk7XG4gICAgcmV0dXJuIG5ldyBQaWNrZXIoY2xpZW50LCBvcHRpb25zKTtcbiAgfVxufVxuXG4vKipcbiAqIExvYWRzIGFuZCBjcmVhdGVzIHBpY2tlciBpbnN0YW5jZVxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0gY2xpZW50XG4gKiBAcGFyYW0gb3B0aW9uc1xuICovXG5leHBvcnQgY29uc3QgcGlja2VyID0gKGNsaWVudDogQ2xpZW50LCBvcHRpb25zPzogUGlja2VyT3B0aW9ucyk6IFBpY2tlckluc3RhbmNlID0+IHtcbiAgcmV0dXJuIG5ldyBQaWNrZXJMb2FkZXIoY2xpZW50LCBvcHRpb25zKTtcbn07XG4iXX0=
|
|
@@ -21,7 +21,7 @@ var utils = tslib_1.__importStar(require("./index"));
|
|
|
21
21
|
describe('utils:index', function () {
|
|
22
22
|
describe('getVersion', function () {
|
|
23
23
|
it('should return version string to replace', function () {
|
|
24
|
-
expect(utils.getVersion()).toEqual("JS-3.
|
|
24
|
+
expect(utils.getVersion()).toEqual("JS-3.48.4");
|
|
25
25
|
});
|
|
26
26
|
});
|
|
27
27
|
describe('isFacebook', function () {
|
|
@@ -480,7 +480,10 @@ exports.PickerParamsSchema = {
|
|
|
480
480
|
googleDriveAppID: {
|
|
481
481
|
type: 'string',
|
|
482
482
|
},
|
|
483
|
+
googleAppOrigin: {
|
|
484
|
+
type: 'string',
|
|
485
|
+
},
|
|
483
486
|
},
|
|
484
487
|
};
|
|
485
488
|
|
|
486
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY2hlbWEvcGlja2VyLnNjaGVtYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBQ0gsaURBQXFEO0FBRXhDLFFBQUEsa0JBQWtCLEdBQUc7SUFDaEMsT0FBTyxFQUFFLHlDQUF5QztJQUNsRCxLQUFLLEVBQUUsa0JBQWtCO0lBQ3pCLFdBQVcsRUFBRSwwQkFBMEI7SUFDdkMsSUFBSSxFQUFFLFFBQVE7SUFDZCxvQkFBb0IsRUFBRSxLQUFLO0lBQzNCLDJCQUEyQjtJQUMzQixVQUFVLEVBQUU7UUFDVixnQkFBZ0IsRUFBRTtZQUNoQixJQUFJLEVBQUUsU0FBUztTQUNoQjtRQUNELE1BQU0sRUFBRTtZQUNOLG9CQUFvQixFQUFFLEtBQUs7WUFDM0IsS0FBSyxFQUFFO2dCQUNMO29CQUNFLElBQUksRUFBRSxRQUFRO2lCQUNmO2dCQUNEO29CQUNFLElBQUksRUFBRSxPQUFPO29CQUNiLFFBQVEsRUFBRSxDQUFDO29CQUNYLEtBQUssRUFBRTt3QkFDTDs0QkFDRSxJQUFJLEVBQUUsUUFBUTt5QkFDZjtxQkFDRjtpQkFDRjthQUNGO1NBQ0Y7UUFDRCxRQUFRLEVBQUU7WUFDUixNQUFNLEVBQUUsVUFBVTtTQUNuQjtRQUNELFNBQVMsRUFBRTtZQUNULElBQUksRUFBRSxRQUFRO1lBQ2QsVUFBVSxFQUFFO2dCQUNWLGNBQWMsRUFBRTtvQkFDZCxJQUFJLEVBQUUsUUFBUTtpQkFDZjthQUNGO1NBQ0Y7UUFDRCxXQUFXLEVBQUU7WUFDWCxJQUFJLEVBQUUsT0FBTztZQUNiLEtBQUssRUFBRTtnQkFDTCxLQUFLLEVBQUU7b0JBQ0w7d0JBQ0UsSUFBSSxFQUFFLFFBQVE7d0JBQ2QsSUFBSSxFQUFFOzRCQUNKLG1CQUFtQjs0QkFDbkIsS0FBSzs0QkFDTCxhQUFhOzRCQUNiLFVBQVU7NEJBQ1YsV0FBVzs0QkFDWCxhQUFhOzRCQUNiLFFBQVE7NEJBQ1IsVUFBVTs0QkFDVixTQUFTOzRCQUNULFFB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LEVBQUUsS0FBSztZQUMzQixVQUFVLHdDQUVMLGtDQUFrQixDQUFDLFVBQVUsS0FDaEMsSUFBSSxFQUFFO29CQUNKLElBQUksRUFBRSxRQUFRO29CQUNkLG9CQUFvQixFQUFFO3dCQUNwQixLQUFLLEVBQUU7NEJBQ0w7Z0NBQ0UsSUFBSSxFQUFFLFFBQVE7NkJBQ2Y7NEJBQ0Q7Z0NBQ0UsTUFBTSxFQUFFLFVBQVU7NkJBQ25CO3lCQUNGO3FCQUNGO2lCQUNGLEdBQ0Y7U0FDRjtRQUNELG9CQUFvQixFQUFFO1lBQ3BCLElBQUksRUFBRSxTQUFTO1NBQ2hCO1FBQ0QsaUJBQWlCLEVBQUU7WUFDakIsSUFBSSxFQUFFLFNBQVM7U0FDaEI7UUFDRCxTQUFTLEVBQUU7WUFDVCxJQUFJLEVBQUUsUUFBUTtZQUNkLG9CQUFvQixFQUFFLEtBQUs7WUFDM0IsVUFBVSxFQUFFO2dCQUNWLHNCQUFzQixFQUFFO29CQUN0QixJQUFJLEVBQUUsU0FBUztpQkFDaEI7Z0JBQ0Qsb0JBQW9CLEVBQUU7b0JBQ3BCLElBQUksRUFBRSxTQUFTO2lCQUNoQjthQUNGO1NBQ0Y7UUFDRCxzQkFBc0IsRUFBRTtZQUN0QixJQUFJLEVBQUUsU0FBUztTQUNoQjtRQUNELFlBQVksRUFBRTtZQUNaLElBQUksRUFBRSxTQUFTO1NBQ2hCO1FBQ0Qsa0JBQWtCLEVBQUU7WUFDbEIsSUFBSSxFQUFFLFNBQVM7U0FDaEI7UUFDRCxnQkFBZ0IsRUFBRTtZQUNoQixJQUFJLEVBQUUsUUFBUTtTQUNmO0tBQ0Y7Q0FDRixDQUFDIiwiZmlsZSI6InNjaGVtYS9waWNrZXIuc2NoZW1hLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOCBieSBGaWxlc3RhY2suXG4gKiBTb21lIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7IFVwbG9hZFBhcmFtc1NjaGVtYSB9IGZyb20gJy4vdXBsb2FkLnNjaGVtYSc7XG5cbmV4cG9ydCBjb25zdCBQaWNrZXJQYXJhbXNTY2hlbWEgPSB7XG4gICRzY2hlbWE6ICdodHRwOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LTA3L3NjaGVtYSMnLFxuICB0aXRsZTogJ0ZpbGVzdGFjayBQaWNrZXInLFxuICBkZXNjcmlwdGlvbjogJ0ZpbGVzdGFjayBQaWNrZXIgT3B0aW9ucycsXG4gIHR5cGU6ICdvYmplY3QnLFxuICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UsXG4gIC8vIHJlcXVpcmVkOiBbJ2NvbnRhaW5lciddLFxuICBwcm9wZXJ0aWVzOiB7XG4gICAgYWxsb3dNYW51YWxSZXRyeToge1xuICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIH0sXG4gICAgYWNjZXB0OiB7XG4gICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UsXG4gICAgICBvbmVPZjogW1xuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgIG1pbkl0ZW1zOiAxLFxuICAgICAgICAgIGl0ZW1zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICAgIGFjY2VwdEZuOiB7XG4gICAgICBmb3JtYXQ6ICdjYWxsYmFjaycsXG4gICAgfSxcbiAgICB3ZWJzZWFyY2g6IHtcbiAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICBwcmVkZWZpbmVkVGV4dDoge1xuICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGZyb21Tb3VyY2VzOiB7XG4gICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgaXRlbXM6IHtcbiAgICAgICAgYW55T2Y6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgIGVudW06IFtcbiAgICAgICAgICAgICAgJ2xvY2FsX2ZpbGVfc3lzdGVtJyxcbiAgICAgICAgICAgICAgJ3VybCcsXG4gICAgICAgICAgICAgICdpbWFnZXNlYXJjaCcsXG4gICAgICAgICAgICAgICdmYWNlYm9vaycsXG4gICAgICAgICAgICAgICdpbnN0YWdyYW0nLFxuICAgICAgICAgICAgICAnZ29vZ2xlZHJpdmUnLFxuICAgICAgICAgICAgICAncGljYXNhJyxcbiAgICAgICAgICAgICAgJ3Vuc3BsYXNoJyxcbiAgICAgICAgICAgICAgJ2Ryb3Bib3gnLFxuICAgICAgICAgICAgICAnd2ViY2FtJyxcbiAgICAgICAgICAgICAgJ3ZpZGVvJyxcbiAgICAgICAgICAgICAgJ2F1ZGlvJyxcbiAgICAgICAgICAgICAgJ2JveCcsXG4gICAgICAgICAgICAgICdnaXRodWInLFxuICAgICAgICAgICAgICAnZ21haWwnLFxuICAgICAgICAgICAgICAnZ29vZ2xlcGhvdG9zJyxcbiAgICAgICAgICAgICAgJ29uZWRyaXZlJyxcbiAgICAgICAgICAgICAgJ29uZWRyaXZlZm9yYnVzaW5lc3MnLFxuICAgICAgICAgICAgICAnY2xvdWRkcml2ZScsXG4gICAgICAgICAgICAgICdjdXN0b21zb3VyY2UnLFxuICAgICAgICAgICAgICAndGludCcsXG4gICAgICAgICAgICBdLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBjb250YWluZXI6IHtcbiAgICAgIGZvcm1hdDogJ0hUTUxDb250YWluZXInLFxuICAgIH0sXG4gICAgY2xlYW51cEltYWdlRXhpZjoge1xuICAgICAgb25lT2Y6IFtcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICBrZWVwT3JpZW50YXRpb246IHtcbiAgICAgICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGtlZXBJQ0NhbmRBUFA6IHtcbiAgICAgICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICAgIGRpc3BsYXlNb2RlOiB7XG4gICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgIGVudW06IFsnaW5saW5lJywgJ292ZXJsYXknLCAnZHJvcFBhbmUnXSxcbiAgICB9LFxuICAgIGNvbmN1cnJlbmN5OiB7XG4gICAgICB0eXBlOiAnaW50ZWdlcicsXG4gICAgICBtaW5pbXVtOiAxLFxuICAgICAgbWF4aW11bTogMjAsXG4gICAgfSxcbiAgICBzdXBwb3J0RW1haWw6IHtcbiAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIH0sXG4gICAgY3VzdG9tU291cmNlQ29udGFpbmVyOiB7XG4gICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICB9LFxuICAgIGN1c3RvbVNvdXJjZVBhdGg6IHtcbiAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIH0sXG4gICAgY3VzdG9tU291cmNlTmFtZToge1xuICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgfSxcbiAgICBkaXNhYmxlU3RvcmFnZUtleToge1xuICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIH0sXG4gICAgZGlzYWJsZVRyYW5zZm9ybWVyOiB7XG4gICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgfSxcbiAgICBkaXNhYmxlQWx0VGV4dDoge1xuICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIH0sXG4gICAgZGlzYWJsZVRodW1ibmFpbHM6IHtcbiAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICB9LFxuICAgIGV4cG9zZU9yaWdpbmFsRmlsZToge1xuICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIH0sXG4gICAgZ2xvYmFsRHJvcFpvbmU6IHtcbiAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICB9LFxuICAgIGhpZGVNb2RhbFdoZW5VcGxvYWRpbmc6IHtcbiAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICB9LFxuICAgIGltYWdlRGltOiB7XG4gICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgbWluSXRlbXM6IDIsXG4gICAgICBtYXhJdGVtczogMixcbiAgICAgIGl0ZW1zOiBbXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiAnaW50ZWdlcicsXG4gICAgICAgICAgbWluaW11bTogMSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICBpbWFnZU1heDoge1xuICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgIG1pbkl0ZW1zOiAyLFxuICAgICAgbWF4SXRlbXM6IDIsXG4gICAgICBpdGVtczogW1xuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogJ2ludGVnZXInLFxuICAgICAgICAgIG1pbmltdW06IDEsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gICAgaW1hZ2VNaW46IHtcbiAgICAgIHR5cGU6ICdhcnJheScsXG4gICAgICBtaW5JdGVtczogMixcbiAgICAgIG1heEl0ZW1zOiAyLFxuICAgICAgaXRlbXM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdpbnRlZ2VyJyxcbiAgICAgICAgICBtaW5pbXVtOiAxLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICAgIGltYWdlTWluTWF4QmxvY2s6IHtcbiAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgIH0sXG4gICAgbGFuZzoge1xuICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICBlbnVtOiBbJ2NhJywgJ2RhJywgJ2RlJywgJ2VuJywgJ2VzJywgJ2ZyJywgJ2hlJywgJ2l0JywgJ2phJywgJ2tvJywgJ25sJywgJ25vJywgJ3BsJywgJ3B0JywgJ3N2JywgJ3J1JywgJ3ZpJywgJ3poJywgJ3RyJywgJ2FyJ10sXG4gICAgfSxcbiAgICBtaW5GaWxlczoge1xuICAgICAgdHlwZTogJ2ludGVnZXInLFxuICAgICAgbWluaW11bTogMSxcbiAgICAgIG1heGltdW06IDEwMDAwMDAsXG4gICAgfSxcbiAgICBtYXhGaWxlczoge1xuICAgICAgdHlwZTogJ2ludGVnZXInLFxuICAgICAgbWluaW11bTogMSxcbiAgICAgIG1heGltdW06IDEwMDAwMDAsXG4gICAgfSxcbiAgICBtYXhTaXplOiB7XG4gICAgICB0eXBlOiAnaW50ZWdlcicsXG4gICAgICBtaW5pbXVtOiAxLFxuICAgIH0sXG4gICAgbW9kYWxTaXplOiB7XG4gICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgbWluSXRlbXM6IDIsXG4gICAgICBtYXhJdGVtczogMixcbiAgICAgIGl0ZW1zOiBbXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiAnaW50ZWdlcicsXG4gICAgICAgICAgbWluaW11bTogMSxcbiAgICAgICAgICBtYXhpbXVtOiAxMDAwMDAwLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICAgIHJvb3RJZDoge1xuICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgfSxcbiAgICBzdGFydFVwbG9hZGluZ1doZW5NYXhGaWxlc1JlYWNoZWQ6IHtcbiAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICB9LFxuICAgIHVwbG9hZEluQmFja2dyb3VuZDoge1xuICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIH0sXG4gICAgdmlkZW9SZXNvbHV0aW9uOiB7XG4gICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICB9LFxuICAgIG9uQ2FuY2VsOiB7XG4gICAgICBmb3JtYXQ6ICdjYWxsYmFjaycsXG4gICAgfSxcbiAgICBvbkNsb3NlOiB7XG4gICAgICBmb3JtYXQ6ICdjYWxsYmFjaycsXG4gICAgfSxcbiAgICBvbk9wZW46IHtcbiAgICAgIGZvcm1hdDogJ2NhbGxiYWNrJyxcbiAgICB9LFxuICAgIG9uRmlsZVNlbGVjdGVkOiB7XG4gICAgICBmb3JtYXQ6ICdjYWxsYmFjaycsXG4gICAgfSxcbiAgICBvbkZpbGVVcGxvYWRDYW5jZWw6IHtcbiAgICAgIGZvcm1hdDogJ2NhbGxiYWNrJyxcbiAgICB9LFxuICAgIG9uRmlsZVVwbG9hZFN0YXJ0ZWQ6IHtcbiAgICAgIGZvcm1hdDogJ2NhbGxiYWNrJyxcbiAgICB9LFxuICAgIG9uRmlsZVVwbG9hZEZpbmlzaGVkOiB7XG4gICAgICBmb3JtYXQ6ICdjYWxsYmFjaycsXG4gICAgfSxcbiAgICBvbkZpbGVVcGxvYWRGYWlsZWQ6IHtcbiAgICAgIGZvcm1hdDogJ2NhbGxiYWNrJyxcbiAgICB9LFxuICAgIG9uRmlsZVVwbG9hZFByb2dyZXNzOiB7XG4gICAgICBmb3JtYXQ6ICdjYWxsYmFjaycsXG4gICAgfSxcbiAgICBvblVwbG9hZFN0YXJ0ZWQ6IHtcbiAgICAgIGZvcm1hdDogJ2NhbGxiYWNrJyxcbiAgICB9LFxuICAgIG9uVXBsb2FkRG9uZToge1xuICAgICAgZm9ybWF0OiAnY2FsbGJhY2snLFxuICAgIH0sXG4gICAgb25GaWxlQ3JvcHBlZDoge1xuICAgICAgZm9ybWF0OiAnY2FsbGJhY2snLFxuICAgIH0sXG4gICAgc3RvcmVUbzoge1xuICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgIGZpbGVuYW1lOiB7XG4gICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIH0sXG4gICAgICAgIGxvY2F0aW9uOiB7XG4gICAgICAgICAgJHJlZjogJ2xvY2F0aW9uc0RlZicsXG4gICAgICAgIH0sXG4gICAgICAgIGNvbnRhaW5lcjoge1xuICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICB9LFxuICAgICAgICBwYXRoOiB7XG4gICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIH0sXG4gICAgICAgIHJlZ2lvbjoge1xuICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICB9LFxuICAgICAgICBhY2Nlc3M6IHtcbiAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBlbnVtOiBbJ3B1YmxpYycsICdwcml2YXRlJ10sXG4gICAgICAgIH0sXG4gICAgICAgIHdvcmtmbG93czoge1xuICAgICAgICAgICRyZWY6ICd3b3JrZmxvd3NEZWYnLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIHZpZXdUeXBlOiB7XG4gICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgIGVudW06IFsnZ3JpZCcsICdsaXN0J10sXG4gICAgfSxcbiAgICB0cmFuc2Zvcm1hdGlvbnM6IHtcbiAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICBjb25maWc6IHtcbiAgICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgfSxcbiAgICAgICAgY2lyY2xlOiB7XG4gICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICB9LFxuICAgICAgICByb3RhdGU6IHtcbiAgICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgIH0sXG4gICAgICAgIGZvcmNlOiB7XG4gICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICB9LFxuICAgICAgICBjcm9wOiB7XG4gICAgICAgICAgb25lT2Y6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbiAgICAgICAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgICAgICAgIGZvcmNlOiB7XG4gICAgICAgICAgICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBhc3BlY3RSYXRpbzoge1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBhdXRvQ3JvcEFyZWE6IHtcbiAgICAgICAgICAgICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICAgICAgICAgICAgbWluaW11bTogMCxcbiAgICAgICAgICAgICAgICAgIG1heGltdW06IDEsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBjdXN0b21UZXh0OiB7XG4gICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgIHBhdHRlcm5Qcm9wZXJ0aWVzOiB7XG4gICAgICAgICcuKic6IHsgdHlwZTogJ3N0cmluZycgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBjcm9wRmlsZXM6IHtcbiAgICAgIHR5cGU6ICdhcnJheScsXG4gICAgICBtaW5JdGVtczogMSxcbiAgICB9LFxuICAgIGxvYWRDc3M6IHtcbiAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIH0sXG4gICAgZmFpbE92ZXJNYXhGaWxlczoge1xuICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIH0sXG4gICAgZHJvcFBhbmU6IHtcbiAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICBjcm9wRmlsZXM6IHtcbiAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgIG1pbkl0ZW1zOiAxLFxuICAgICAgICB9LFxuICAgICAgICBjdXN0b21UZXh0OiB7XG4gICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIH0sXG4gICAgICAgIGRpc2FibGVDbGljazoge1xuICAgICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgfSxcbiAgICAgICAgb3ZlcmxheToge1xuICAgICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgfSxcbiAgICAgICAgc2hvd0ljb246IHtcbiAgICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgIH0sXG4gICAgICAgIHNob3dQcm9ncmVzczoge1xuICAgICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgfSxcbiAgICAgICAgb25EcmFnRW50ZXI6IHtcbiAgICAgICAgICBmb3JtYXQ6ICdjYWxsYmFjaycsXG4gICAgICAgIH0sXG4gICAgICAgIG9uUHJvZ3Jlc3M6IHtcbiAgICAgICAgICBmb3JtYXQ6ICdjYWxsYmFjaycsXG4gICAgICAgIH0sXG4gICAgICAgIG9uRHJhZ0xlYXZlOiB7XG4gICAgICAgICAgZm9ybWF0OiAnY2FsbGJhY2snLFxuICAgICAgICB9LFxuICAgICAgICBvbkRyYWdPdmVyOiB7XG4gICAgICAgICAgZm9ybWF0OiAnY2FsbGJhY2snLFxuICAgICAgICB9LFxuICAgICAgICBvbkRyb3A6IHtcbiAgICAgICAgICBmb3JtYXQ6ICdjYWxsYmFjaycsXG4gICAgICAgIH0sXG4gICAgICAgIG9uU3VjY2Vzczoge1xuICAgICAgICAgIGZvcm1hdDogJ2NhbGxiYWNrJyxcbiAgICAgICAgfSxcbiAgICAgICAgb25FcnJvcjoge1xuICAgICAgICAgIGZvcm1hdDogJ2NhbGxiYWNrJyxcbiAgICAgICAgfSxcbiAgICAgICAgb25DbGljazoge1xuICAgICAgICAgIGZvcm1hdDogJ2NhbGxiYWNrJyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBlcnJvcnNUaW1lb3V0OiB7XG4gICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICAgIG1pbmltdW06IDAsXG4gICAgfSxcbiAgICBjdXN0b21BdXRoVGV4dDoge1xuICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICBwYXR0ZXJuUHJvcGVydGllczoge1xuICAgICAgICAnLionOiB7XG4gICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgIHJlcXVpcmVkOiBbJ3RvcCcsICdib3R0b20nXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICB0b3A6IHtcbiAgICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgYm90dG9tOiB7XG4gICAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIHVwbG9hZENvbmZpZzoge1xuICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UsXG4gICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgIC8vIG1hbnVhbCBpbXBvcnQgdXBsb2FkIGRlZmluaXRpb25zXG4gICAgICAgIC4uLlVwbG9hZFBhcmFtc1NjaGVtYS5wcm9wZXJ0aWVzLFxuICAgICAgICB0YWdzOiB7XG4gICAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgIGFueU9mOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGZvcm1hdDogJ2NhbGxiYWNrJyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB1c2VTZW50cnlCcmVhZGNydW1iczoge1xuICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIH0sXG4gICAgdHJhbnNmb3JtYXRpb25zVUk6IHtcbiAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICB9LFxuICAgIHBhc3RlTW9kZToge1xuICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UsXG4gICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgIHBhc3RlVG9GaXJzdEluVmlld1BvcnQ6IHtcbiAgICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgIH0sXG4gICAgICAgIHBhc3RlVG9GaXJzdEluc3RhbmNlOiB7XG4gICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGRpc2FibGVEaXJlY3RvcnlVcGxvYWQ6IHtcbiAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICB9LFxuICAgIG1pbmlVcGxvYWRlcjoge1xuICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIH0sXG4gICAgbXVsdGlwbGVGaWxlVXBsb2FkOiB7XG4gICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgfSxcbiAgICBnb29nbGVEcml2ZUFwcElEOiB7XG4gICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICB9LFxuICB9LFxufTtcbiJdfQ==
|
|
489
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY2hlbWEvcGlja2VyLnNjaGVtYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBQ0gsaURBQXFEO0FBRXhDLFFBQUEsa0JBQWtCLEdBQUc7SUFDaEMsT0FBTyxFQUFFLHlDQUF5QztJQUNsRCxLQUFLLEVBQUUsa0JBQWtCO0lBQ3pCLFdBQVcsRUFBRSwwQkFBMEI7SUFDdkMsSUFBSSxFQUFFLFFBQVE7SUFDZCxvQkFBb0IsRUFBRSxLQUFLO0lBQzNCLDJCQUEyQjtJQUMzQixVQUFVLEVBQUU7UUFDVixnQkFBZ0IsRUFBRTtZQUNoQixJQUFJLEVBQUUsU0FBUztTQUNoQjtRQUNELE1BQU0sRUFBRTtZQUNOLG9CQUFvQixFQUFFLEtBQUs7WUFDM0IsS0FBSyxFQUFFO2dCQUNMO29CQUNFLElBQUksRUFBRSxRQUFRO2lCQUNmO2dCQUNEO29CQUNFLElBQUksRUFBRSxPQUFPO29CQUNiLFFBQVEsRUFBRSxDQUFDO29CQUNYLEtBQUssRUFBRTt3QkFDTDs0QkFDRSxJQUFJLEVBQUUsUUFBUTt5QkFDZjtxQkFDRjtpQkFDRjthQUNGO1NBQ0Y7UUFDRCxRQUFRLEVBQUU7WUFDUixNQUFNLEVBQUUsVUFBVTtTQUNuQjtRQUNELFNBQVMsRUFBRTtZQUNULElBQUksRUFBRSxRQUFRO1lBQ2QsVUFBVSxFQUFFO2dCQUNWLGNBQWMsRUFBRTtvQkFDZCxJQUFJLEVBQUUsUUFBUTtpQkFDZjthQUNGO1NBQ0Y7UUFDRCxXQUFXLEVBQUU7WUFDWCxJQUFJLEVBQUUsT0FBTztZQUNiLEtBQUssRUFBRTtnQkFDTCxLQUFLLEVBQUU7b0JBQ0w7d0JBQ0UsSUFBSSxFQUFFLFFBQVE7d0JBQ2QsSUFBSSxFQUFFOzRCQUNKLG1CQUFtQjs0QkFDbkIsS0FBSzs0QkFDTCxhQUFhOzRCQUNiLFVBQVU7NEJBQ1YsV0FBVzs0QkFDWCxhQUFhOzRCQUNiLFFBQVE7NEJBQ1IsVUFBVTs0QkFDVixTQUFTOzRCQUNULFFB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LEVBQUUsS0FBSztZQUMzQixVQUFVLHdDQUVMLGtDQUFrQixDQUFDLFVBQVUsS0FDaEMsSUFBSSxFQUFFO29CQUNKLElBQUksRUFBRSxRQUFRO29CQUNkLG9CQUFvQixFQUFFO3dCQUNwQixLQUFLLEVBQUU7NEJBQ0w7Z0NBQ0UsSUFBSSxFQUFFLFFBQVE7NkJBQ2Y7NEJBQ0Q7Z0NBQ0UsTUFBTSxFQUFFLFVBQVU7NkJBQ25CO3lCQUNGO3FCQUNGO2lCQUNGLEdBQ0Y7U0FDRjtRQUNELG9CQUFvQixFQUFFO1lBQ3BCLElBQUksRUFBRSxTQUFTO1NBQ2hCO1FBQ0QsaUJBQWlCLEVBQUU7WUFDakIsSUFBSSxFQUFFLFNBQVM7U0FDaEI7UUFDRCxTQUFTLEVBQUU7WUFDVCxJQUFJLEVBQUUsUUFBUTtZQUNkLG9CQUFvQixFQUFFLEtBQUs7WUFDM0IsVUFBVSxFQUFFO2dCQUNWLHNCQUFzQixFQUFFO29CQUN0QixJQUFJLEVBQUUsU0FBUztpQkFDaEI7Z0JBQ0Qsb0JBQW9CLEVBQUU7b0JBQ3BCLElBQUksRUFBRSxTQUFTO2lCQUNoQjthQUNGO1NBQ0Y7UUFDRCxzQkFBc0IsRUFBRTtZQUN0QixJQUFJLEVBQUUsU0FBUztTQUNoQjtRQUNELFlBQVksRUFBRTtZQUNaLElBQUksRUFBRSxTQUFTO1NBQ2hCO1FBQ0Qsa0JBQWtCLEVBQUU7WUFDbEIsSUFBSSxFQUFFLFNBQVM7U0FDaEI7UUFDRCxnQkFBZ0IsRUFBRTtZQUNoQixJQUFJLEVBQUUsUUFBUTtTQUNmO1FBQ0QsZUFBZSxFQUFFO1lBQ2YsSUFBSSxFQUFFLFFBQVE7U0FDZjtLQUNGO0NBQ0YsQ0FBQyIsImZpbGUiOiJzY2hlbWEvcGlja2VyLnNjaGVtYS5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTggYnkgRmlsZXN0YWNrLlxuICogU29tZSByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgeyBVcGxvYWRQYXJhbXNTY2hlbWEgfSBmcm9tICcuL3VwbG9hZC5zY2hlbWEnO1xuXG5leHBvcnQgY29uc3QgUGlja2VyUGFyYW1zU2NoZW1hID0ge1xuICAkc2NoZW1hOiAnaHR0cDovL2pzb24tc2NoZW1hLm9yZy9kcmFmdC0wNy9zY2hlbWEjJyxcbiAgdGl0bGU6ICdGaWxlc3RhY2sgUGlja2VyJyxcbiAgZGVzY3JpcHRpb246ICdGaWxlc3RhY2sgUGlja2VyIE9wdGlvbnMnLFxuICB0eXBlOiAnb2JqZWN0JyxcbiAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAvLyByZXF1aXJlZDogWydjb250YWluZXInXSxcbiAgcHJvcGVydGllczoge1xuICAgIGFsbG93TWFudWFsUmV0cnk6IHtcbiAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICB9LFxuICAgIGFjY2VwdDoge1xuICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgb25lT2Y6IFtcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICBtaW5JdGVtczogMSxcbiAgICAgICAgICBpdGVtczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICBhY2NlcHRGbjoge1xuICAgICAgZm9ybWF0OiAnY2FsbGJhY2snLFxuICAgIH0sXG4gICAgd2Vic2VhcmNoOiB7XG4gICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgcHJlZGVmaW5lZFRleHQ6IHtcbiAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBmcm9tU291cmNlczoge1xuICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgIGl0ZW1zOiB7XG4gICAgICAgIGFueU9mOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICBlbnVtOiBbXG4gICAgICAgICAgICAgICdsb2NhbF9maWxlX3N5c3RlbScsXG4gICAgICAgICAgICAgICd1cmwnLFxuICAgICAgICAgICAgICAnaW1hZ2VzZWFyY2gnLFxuICAgICAgICAgICAgICAnZmFjZWJvb2snLFxuICAgICAgICAgICAgICAnaW5zdGFncmFtJyxcbiAgICAgICAgICAgICAgJ2dvb2dsZWRyaXZlJyxcbiAgICAgICAgICAgICAgJ3BpY2FzYScsXG4gICAgICAgICAgICAgICd1bnNwbGFzaCcsXG4gICAgICAgICAgICAgICdkcm9wYm94JyxcbiAgICAgICAgICAgICAgJ3dlYmNhbScsXG4gICAgICAgICAgICAgICd2aWRlbycsXG4gICAgICAgICAgICAgICdhdWRpbycsXG4gICAgICAgICAgICAgICdib3gnLFxuICAgICAgICAgICAgICAnZ2l0aHViJyxcbiAgICAgICAgICAgICAgJ2dtYWlsJyxcbiAgICAgICAgICAgICAgJ2dvb2dsZXBob3RvcycsXG4gICAgICAgICAgICAgICdvbmVkcml2ZScsXG4gICAgICAgICAgICAgICdvbmVkcml2ZWZvcmJ1c2luZXNzJyxcbiAgICAgICAgICAgICAgJ2Nsb3VkZHJpdmUnLFxuICAgICAgICAgICAgICAnY3VzdG9tc291cmNlJyxcbiAgICAgICAgICAgICAgJ3RpbnQnLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgY29udGFpbmVyOiB7XG4gICAgICBmb3JtYXQ6ICdIVE1MQ29udGFpbmVyJyxcbiAgICB9LFxuICAgIGNsZWFudXBJbWFnZUV4aWY6IHtcbiAgICAgIG9uZU9mOiBbXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UsXG4gICAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgICAga2VlcE9yaWVudGF0aW9uOiB7XG4gICAgICAgICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBrZWVwSUNDYW5kQVBQOiB7XG4gICAgICAgICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICBkaXNwbGF5TW9kZToge1xuICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICBlbnVtOiBbJ2lubGluZScsICdvdmVybGF5JywgJ2Ryb3BQYW5lJ10sXG4gICAgfSxcbiAgICBjb25jdXJyZW5jeToge1xuICAgICAgdHlwZTogJ2ludGVnZXInLFxuICAgICAgbWluaW11bTogMSxcbiAgICAgIG1heGltdW06IDIwLFxuICAgIH0sXG4gICAgc3VwcG9ydEVtYWlsOiB7XG4gICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICB9LFxuICAgIGN1c3RvbVNvdXJjZUNvbnRhaW5lcjoge1xuICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgfSxcbiAgICBjdXN0b21Tb3VyY2VQYXRoOiB7XG4gICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICB9LFxuICAgIGN1c3RvbVNvdXJjZU5hbWU6IHtcbiAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIH0sXG4gICAgZGlzYWJsZVN0b3JhZ2VLZXk6IHtcbiAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICB9LFxuICAgIGRpc2FibGVUcmFuc2Zvcm1lcjoge1xuICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIH0sXG4gICAgZGlzYWJsZUFsdFRleHQ6IHtcbiAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICB9LFxuICAgIGRpc2FibGVUaHVtYm5haWxzOiB7XG4gICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgfSxcbiAgICBleHBvc2VPcmlnaW5hbEZpbGU6IHtcbiAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICB9LFxuICAgIGdsb2JhbERyb3Bab25lOiB7XG4gICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgfSxcbiAgICBoaWRlTW9kYWxXaGVuVXBsb2FkaW5nOiB7XG4gICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgfSxcbiAgICBpbWFnZURpbToge1xuICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgIG1pbkl0ZW1zOiAyLFxuICAgICAgbWF4SXRlbXM6IDIsXG4gICAgICBpdGVtczogW1xuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogJ2ludGVnZXInLFxuICAgICAgICAgIG1pbmltdW06IDEsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gICAgaW1hZ2VNYXg6IHtcbiAgICAgIHR5cGU6ICdhcnJheScsXG4gICAgICBtaW5JdGVtczogMixcbiAgICAgIG1heEl0ZW1zOiAyLFxuICAgICAgaXRlbXM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdpbnRlZ2VyJyxcbiAgICAgICAgICBtaW5pbXVtOiAxLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICAgIGltYWdlTWluOiB7XG4gICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgbWluSXRlbXM6IDIsXG4gICAgICBtYXhJdGVtczogMixcbiAgICAgIGl0ZW1zOiBbXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiAnaW50ZWdlcicsXG4gICAgICAgICAgbWluaW11bTogMSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICBpbWFnZU1pbk1heEJsb2NrOiB7XG4gICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICB9LFxuICAgIGxhbmc6IHtcbiAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgZW51bTogWydjYScsICdkYScsICdkZScsICdlbicsICdlcycsICdmcicsICdoZScsICdpdCcsICdqYScsICdrbycsICdubCcsICdubycsICdwbCcsICdwdCcsICdzdicsICdydScsICd2aScsICd6aCcsICd0cicsICdhciddLFxuICAgIH0sXG4gICAgbWluRmlsZXM6IHtcbiAgICAgIHR5cGU6ICdpbnRlZ2VyJyxcbiAgICAgIG1pbmltdW06IDEsXG4gICAgICBtYXhpbXVtOiAxMDAwMDAwLFxuICAgIH0sXG4gICAgbWF4RmlsZXM6IHtcbiAgICAgIHR5cGU6ICdpbnRlZ2VyJyxcbiAgICAgIG1pbmltdW06IDEsXG4gICAgICBtYXhpbXVtOiAxMDAwMDAwLFxuICAgIH0sXG4gICAgbWF4U2l6ZToge1xuICAgICAgdHlwZTogJ2ludGVnZXInLFxuICAgICAgbWluaW11bTogMSxcbiAgICB9LFxuICAgIG1vZGFsU2l6ZToge1xuICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgIG1pbkl0ZW1zOiAyLFxuICAgICAgbWF4SXRlbXM6IDIsXG4gICAgICBpdGVtczogW1xuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogJ2ludGVnZXInLFxuICAgICAgICAgIG1pbmltdW06IDEsXG4gICAgICAgICAgbWF4aW11bTogMTAwMDAwMCxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICByb290SWQ6IHtcbiAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIH0sXG4gICAgc3RhcnRVcGxvYWRpbmdXaGVuTWF4RmlsZXNSZWFjaGVkOiB7XG4gICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgfSxcbiAgICB1cGxvYWRJbkJhY2tncm91bmQ6IHtcbiAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICB9LFxuICAgIHZpZGVvUmVzb2x1dGlvbjoge1xuICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgfSxcbiAgICBvbkNhbmNlbDoge1xuICAgICAgZm9ybWF0OiAnY2FsbGJhY2snLFxuICAgIH0sXG4gICAgb25DbG9zZToge1xuICAgICAgZm9ybWF0OiAnY2FsbGJhY2snLFxuICAgIH0sXG4gICAgb25PcGVuOiB7XG4gICAgICBmb3JtYXQ6ICdjYWxsYmFjaycsXG4gICAgfSxcbiAgICBvbkZpbGVTZWxlY3RlZDoge1xuICAgICAgZm9ybWF0OiAnY2FsbGJhY2snLFxuICAgIH0sXG4gICAgb25GaWxlVXBsb2FkQ2FuY2VsOiB7XG4gICAgICBmb3JtYXQ6ICdjYWxsYmFjaycsXG4gICAgfSxcbiAgICBvbkZpbGVVcGxvYWRTdGFydGVkOiB7XG4gICAgICBmb3JtYXQ6ICdjYWxsYmFjaycsXG4gICAgfSxcbiAgICBvbkZpbGVVcGxvYWRGaW5pc2hlZDoge1xuICAgICAgZm9ybWF0OiAnY2FsbGJhY2snLFxuICAgIH0sXG4gICAgb25GaWxlVXBsb2FkRmFpbGVkOiB7XG4gICAgICBmb3JtYXQ6ICdjYWxsYmFjaycsXG4gICAgfSxcbiAgICBvbkZpbGVVcGxvYWRQcm9ncmVzczoge1xuICAgICAgZm9ybWF0OiAnY2FsbGJhY2snLFxuICAgIH0sXG4gICAgb25VcGxvYWRTdGFydGVkOiB7XG4gICAgICBmb3JtYXQ6ICdjYWxsYmFjaycsXG4gICAgfSxcbiAgICBvblVwbG9hZERvbmU6IHtcbiAgICAgIGZvcm1hdDogJ2NhbGxiYWNrJyxcbiAgICB9LFxuICAgIG9uRmlsZUNyb3BwZWQ6IHtcbiAgICAgIGZvcm1hdDogJ2NhbGxiYWNrJyxcbiAgICB9LFxuICAgIHN0b3JlVG86IHtcbiAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbiAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICBmaWxlbmFtZToge1xuICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICB9LFxuICAgICAgICBsb2NhdGlvbjoge1xuICAgICAgICAgICRyZWY6ICdsb2NhdGlvbnNEZWYnLFxuICAgICAgICB9LFxuICAgICAgICBjb250YWluZXI6IHtcbiAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgfSxcbiAgICAgICAgcGF0aDoge1xuICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICB9LFxuICAgICAgICByZWdpb246IHtcbiAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgfSxcbiAgICAgICAgYWNjZXNzOiB7XG4gICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgZW51bTogWydwdWJsaWMnLCAncHJpdmF0ZSddLFxuICAgICAgICB9LFxuICAgICAgICB3b3JrZmxvd3M6IHtcbiAgICAgICAgICAkcmVmOiAnd29ya2Zsb3dzRGVmJyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB2aWV3VHlwZToge1xuICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICBlbnVtOiBbJ2dyaWQnLCAnbGlzdCddLFxuICAgIH0sXG4gICAgdHJhbnNmb3JtYXRpb25zOiB7XG4gICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbiAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgY29uZmlnOiB7XG4gICAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgIH0sXG4gICAgICAgIGNpcmNsZToge1xuICAgICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgfSxcbiAgICAgICAgcm90YXRlOiB7XG4gICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICB9LFxuICAgICAgICBmb3JjZToge1xuICAgICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgfSxcbiAgICAgICAgY3JvcDoge1xuICAgICAgICAgIG9uZU9mOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UsXG4gICAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICBmb3JjZToge1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgYXNwZWN0UmF0aW86IHtcbiAgICAgICAgICAgICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgYXV0b0Nyb3BBcmVhOiB7XG4gICAgICAgICAgICAgICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICAgICAgICAgICAgICAgIG1pbmltdW06IDAsXG4gICAgICAgICAgICAgICAgICBtYXhpbXVtOiAxLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgY3VzdG9tVGV4dDoge1xuICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICBwYXR0ZXJuUHJvcGVydGllczoge1xuICAgICAgICAnLionOiB7IHR5cGU6ICdzdHJpbmcnIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgY3JvcEZpbGVzOiB7XG4gICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgbWluSXRlbXM6IDEsXG4gICAgfSxcbiAgICBsb2FkQ3NzOiB7XG4gICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICB9LFxuICAgIGZhaWxPdmVyTWF4RmlsZXM6IHtcbiAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICB9LFxuICAgIGRyb3BQYW5lOiB7XG4gICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgY3JvcEZpbGVzOiB7XG4gICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICBtaW5JdGVtczogMSxcbiAgICAgICAgfSxcbiAgICAgICAgY3VzdG9tVGV4dDoge1xuICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICB9LFxuICAgICAgICBkaXNhYmxlQ2xpY2s6IHtcbiAgICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgIH0sXG4gICAgICAgIG92ZXJsYXk6IHtcbiAgICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgIH0sXG4gICAgICAgIHNob3dJY29uOiB7XG4gICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICB9LFxuICAgICAgICBzaG93UHJvZ3Jlc3M6IHtcbiAgICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgIH0sXG4gICAgICAgIG9uRHJhZ0VudGVyOiB7XG4gICAgICAgICAgZm9ybWF0OiAnY2FsbGJhY2snLFxuICAgICAgICB9LFxuICAgICAgICBvblByb2dyZXNzOiB7XG4gICAgICAgICAgZm9ybWF0OiAnY2FsbGJhY2snLFxuICAgICAgICB9LFxuICAgICAgICBvbkRyYWdMZWF2ZToge1xuICAgICAgICAgIGZvcm1hdDogJ2NhbGxiYWNrJyxcbiAgICAgICAgfSxcbiAgICAgICAgb25EcmFnT3Zlcjoge1xuICAgICAgICAgIGZvcm1hdDogJ2NhbGxiYWNrJyxcbiAgICAgICAgfSxcbiAgICAgICAgb25Ecm9wOiB7XG4gICAgICAgICAgZm9ybWF0OiAnY2FsbGJhY2snLFxuICAgICAgICB9LFxuICAgICAgICBvblN1Y2Nlc3M6IHtcbiAgICAgICAgICBmb3JtYXQ6ICdjYWxsYmFjaycsXG4gICAgICAgIH0sXG4gICAgICAgIG9uRXJyb3I6IHtcbiAgICAgICAgICBmb3JtYXQ6ICdjYWxsYmFjaycsXG4gICAgICAgIH0sXG4gICAgICAgIG9uQ2xpY2s6IHtcbiAgICAgICAgICBmb3JtYXQ6ICdjYWxsYmFjaycsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgZXJyb3JzVGltZW91dDoge1xuICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICBtaW5pbXVtOiAwLFxuICAgIH0sXG4gICAgY3VzdG9tQXV0aFRleHQ6IHtcbiAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgcGF0dGVyblByb3BlcnRpZXM6IHtcbiAgICAgICAgJy4qJzoge1xuICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbiAgICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICByZXF1aXJlZDogWyd0b3AnLCAnYm90dG9tJ10sXG4gICAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgICAgdG9wOiB7XG4gICAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGJvdHRvbToge1xuICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB1cGxvYWRDb25maWc6IHtcbiAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAvLyBtYW51YWwgaW1wb3J0IHVwbG9hZCBkZWZpbml0aW9uc1xuICAgICAgICAuLi5VcGxvYWRQYXJhbXNTY2hlbWEucHJvcGVydGllcyxcbiAgICAgICAgdGFnczoge1xuICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICBhbnlPZjogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBmb3JtYXQ6ICdjYWxsYmFjaycsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgdXNlU2VudHJ5QnJlYWRjcnVtYnM6IHtcbiAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICB9LFxuICAgIHRyYW5zZm9ybWF0aW9uc1VJOiB7XG4gICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgfSxcbiAgICBwYXN0ZU1vZGU6IHtcbiAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICBwYXN0ZVRvRmlyc3RJblZpZXdQb3J0OiB7XG4gICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICB9LFxuICAgICAgICBwYXN0ZVRvRmlyc3RJbnN0YW5jZToge1xuICAgICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBkaXNhYmxlRGlyZWN0b3J5VXBsb2FkOiB7XG4gICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgfSxcbiAgICBtaW5pVXBsb2FkZXI6IHtcbiAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICB9LFxuICAgIG11bHRpcGxlRmlsZVVwbG9hZDoge1xuICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIH0sXG4gICAgZ29vZ2xlRHJpdmVBcHBJRDoge1xuICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgfSxcbiAgICBnb29nbGVBcHBPcmlnaW46IHtcbiAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIH0sXG4gIH0sXG59O1xuIl19
|
package/build/module/index.d.ts
CHANGED
|
@@ -23,7 +23,7 @@ export declare const init: (apikey: string, options?: ClientOptions) => Client;
|
|
|
23
23
|
/**
|
|
24
24
|
* filestack-js version. Interpolated at build time.
|
|
25
25
|
*/
|
|
26
|
-
export declare const version = "3.
|
|
26
|
+
export declare const version = "3.48.4";
|
|
27
27
|
export * from './lib/api/transform';
|
|
28
28
|
export * from './lib/filelink';
|
|
29
29
|
export * from './filestack_error';
|
package/build/module/index.js
CHANGED
|
@@ -36,8 +36,8 @@ export var init = Filestack;
|
|
|
36
36
|
/**
|
|
37
37
|
* filestack-js version. Interpolated at build time.
|
|
38
38
|
*/
|
|
39
|
-
export var version = '3.
|
|
40
|
-
registerModule(FILESTACK_MODULES.FILESTACK_SDK, Filestack, { version: '3.
|
|
39
|
+
export var version = '3.48.4';
|
|
40
|
+
registerModule(FILESTACK_MODULES.FILESTACK_SDK, Filestack, { version: '3.48.4' });
|
|
41
41
|
export * from './lib/api/transform';
|
|
42
42
|
export * from './lib/filelink';
|
|
43
43
|
export * from './filestack_error';
|
|
@@ -675,6 +675,12 @@ export interface PickerOptions {
|
|
|
675
675
|
* This is your Project Number from the Google Cloud console.
|
|
676
676
|
*/
|
|
677
677
|
googleDriveAppID?: string;
|
|
678
|
+
/**
|
|
679
|
+
* Sets the origin of picker dialog. The origin should be set to
|
|
680
|
+
* the window.location.protocol + '//' + window.location.host of the top-most page,
|
|
681
|
+
* if your application is running in an iframe.
|
|
682
|
+
*/
|
|
683
|
+
googleAppOrigin?: string;
|
|
678
684
|
}
|
|
679
685
|
export interface PickerCropOptions {
|
|
680
686
|
/**
|
|
@@ -146,4 +146,4 @@ export var picker = function (client, options) {
|
|
|
146
146
|
return new PickerLoader(client, options);
|
|
147
147
|
};
|
|
148
148
|
|
|
149
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvcGlja2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRzs7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRzFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUErRC9ELE1BQU0sQ0FBTixJQUFZLGVBR1g7QUFIRCxXQUFZLGVBQWU7SUFDekIsNEJBQVMsQ0FBQTtJQUNULDhCQUFVLENBQUE7QUFDWixDQUFDLEVBSFcsZUFBZSxLQUFmLGVBQWUsUUFHMUI7QUFtSEQsTUFBTSxDQUFOLElBQVksaUJBSVg7QUFKRCxXQUFZLGlCQUFpQjtJQUMzQixzQ0FBaUIsQ0FBQTtJQUNqQix3Q0FBbUIsQ0FBQTtJQUNuQiwwQ0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBSlcsaUJBQWlCLEtBQWpCLGlCQUFpQixRQUk1QjtBQW1sQkQ7Ozs7O0dBS0c7QUFDSDtJQUdFLHNCQUFZLE1BQWMsRUFBRSxPQUF1QjtRQUNqRCxJQUFNLFdBQVcsR0FBRyxZQUFZLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUU5RCxJQUFJLFdBQVcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1lBQzdCLFdBQVcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFVBQUEsS0FBSztnQkFDOUIsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRTtvQkFDdEMsT0FBTyxDQUFDLElBQUksQ0FBQyxvQ0FBNkIsS0FBSyxDQUFDLFFBQVEsMEJBQXVCLENBQUMsQ0FBQztvQkFDakYsT0FBTyxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxVQUFBLE1BQU0sSUFBSSxPQUFBLE1BQU0sS0FBSyxLQUFLLENBQUMsUUFBUSxFQUF6QixDQUF5QixDQUFDLENBQUM7aUJBQ3ZGO3FCQUFNO29CQUNMLE1BQU0sSUFBSSxjQUFjLENBQUMsdUJBQXVCLEVBQUUsV0FBVyxDQUFDLE1BQU0sRUFBRSxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztpQkFDdEc7WUFDSCxDQUFDLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRTtnQkFDL0IsT0FBTyxPQUFPLENBQUMsV0FBVyxDQUFDO2FBQzVCO1NBQ0Y7UUFFRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFSywyQkFBSSxHQUFWOzs7Ozs0QkFDaUIscUJBQU0sSUFBSSxDQUFDLFlBQVksRUFBQTs7d0JBQWhDLE1BQU0sR0FBRyxTQUF1Qjt3QkFDdEMscUJBQU0sTUFBTSxDQUFDLElBQUksRUFBRSxFQUFBOzt3QkFBbkIsU0FBbUIsQ0FBQzs7Ozs7S0FDckI7SUFFSywyQkFBSSxHQUFWLFVBQVcsS0FBWTs7Ozs7NEJBQ04scUJBQU0sSUFBSSxDQUFDLFlBQVksRUFBQTs7d0JBQWhDLE1BQU0sR0FBRyxTQUF1Qjt3QkFDdEMscUJBQU0sTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBQTs7d0JBQXhCLFNBQXdCLENBQUM7Ozs7O0tBQzFCO0lBRUssNEJBQUssR0FBWDs7Ozs7NEJBQ2lCLHFCQUFNLElBQUksQ0FBQyxZQUFZLEVBQUE7O3dCQUFoQyxNQUFNLEdBQUcsU0FBdUI7d0JBQ3RDLHFCQUFNLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBQTs7d0JBQXBCLFNBQW9CLENBQUM7Ozs7O0tBQ3RCO0lBRUssNkJBQU0sR0FBWjs7Ozs7NEJBQ2lCLHFCQUFNLElBQUksQ0FBQyxZQUFZLEVBQUE7O3dCQUFoQyxNQUFNLEdBQUcsU0FBdUI7d0JBQ3RDLHFCQUFNLE1BQU0sQ0FBQyxNQUFNLEVBQUUsRUFBQTs7d0JBQXJCLFNBQXFCLENBQUM7Ozs7O0tBQ3ZCO0lBRWEsaUNBQVUsR0FBeEIsVUFBeUIsTUFBYyxFQUFFLE9BQXVCOzs7Ozs7d0JBQ3hCLEdBQUcsR0FBUyxNQUFNLHVCQUFmLENBQWdCO3dCQUMxQyxxQkFBTSxVQUFVLENBQUMsaUJBQWlCLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxFQUFBOzt3QkFBeEQsTUFBTSxHQUFHLFNBQStDO3dCQUM5RCxzQkFBTyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLEVBQUM7Ozs7S0FDcEM7SUFDSCxtQkFBQztBQUFELENBaERBLEFBZ0RDLElBQUE7QUFFRDs7Ozs7O0dBTUc7QUFDSCxNQUFNLENBQUMsSUFBTSxNQUFNLEdBQUcsVUFBQyxNQUFjLEVBQUUsT0FBdUI7SUFDNUQsT0FBTyxJQUFJLFlBQVksQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDM0MsQ0FBQyxDQUFDIiwiZmlsZSI6ImxpYi9waWNrZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE4IGJ5IEZpbGVzdGFja1xuICogU29tZSByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IGxvYWRNb2R1bGUsIEZJTEVTVEFDS19NT0RVTEVTIH0gZnJvbSAnQGZpbGVzdGFjay9sb2FkZXInO1xuaW1wb3J0IHsgRmlsZXN0YWNrRXJyb3IsIEZpbGVzdGFja0Vycm9yVHlwZSB9IGZyb20gJy4vLi4vZmlsZXN0YWNrX2Vycm9yJztcbmltcG9ydCB7IENsaWVudCB9IGZyb20gJy4vY2xpZW50JztcbmltcG9ydCB7IEZTUHJvZ3Jlc3NFdmVudCwgVXBsb2FkT3B0aW9ucywgV29ya2Zsb3dDb25maWcgfSBmcm9tICcuL2FwaS91cGxvYWQvdHlwZXMnO1xuaW1wb3J0IHsgZ2V0VmFsaWRhdG9yLCBQaWNrZXJQYXJhbXNTY2hlbWEgfSBmcm9tICcuLy4uL3NjaGVtYSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VySW5zdGFuY2Uge1xuICAvKipcbiAgICogQ2xvc2UgcGlja2VyLiBUaGlzIG9wZXJhdGlvbiBpcyBpZGVtcG90ZW50LlxuICAgKi9cbiAgY2xvc2U6ICgpID0+IFByb21pc2U8dm9pZD47XG5cbiAgLyoqXG4gICAqIENhbmNlbCBwaWNrZXIgdXBsb2Fkcy4gVGhpcyBvcGVyYXRpb24gaXMgaWRlbXBvdGVudC5cbiAgICovXG4gIGNhbmNlbDogKCkgPT4gUHJvbWlzZTx2b2lkPjtcblxuICAvKipcbiAgICogT3BlbiBwaWNrZXIuIFRoaXMgb3BlcmF0aW9uIGlzIGlkZW1wb3RlbnQuXG4gICAqL1xuICBvcGVuOiAoKSA9PiBQcm9taXNlPHZvaWQ+O1xuXG4gIC8qKlxuICAgKiBTcGVjaWZ5IGEgbGlzdCBvZiBmaWxlcyB0byBvcGVuIGluIHRoZSBwaWNrZXIgZm9yIGNyb3BwaW5nXG4gICAqXG4gICAqICMjIyBFeGFtcGxlXG4gICAqXG4gICAqIGBgYGpzXG4gICAqIC8vIDxpbnB1dCBpZD1cImZpbGVTZWxlY3RcIiB0eXBlPVwiZmlsZVwiPlxuICAgKlxuICAgKiBjb25zdCBpbnB1dEVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ZpbGVTZWxlY3QnKTtcbiAgICogY29uc3QgcGlja2VyID0gY2xpZW50LnBpY2tlcih7XG4gICAqICAgb25VcGxvYWREb25lOiByZXMgPT4gY29uc29sZS5sb2cocmVzKSxcbiAgICogfSk7XG4gICAqXG4gICAqIGlucHV0RWwuYWRkRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgKGUpID0+IHtcbiAgICogICBwaWNrZXIuY3JvcChlLnRhcmdldC5maWxlcyk7XG4gICAqIH0pO1xuICAgKlxuICAgKiAvLyBPciBwYXNzIGFuIGFycmF5IG9mIFVSTCBzdHJpbmdzXG4gICAqIGNvbnN0IHVybHMgPSBbXG4gICAqICAgJ2h0dHBzOi8vZDF3dHFhZmZhYWo2M3ouY2xvdWRmcm9udC5uZXQvaW1hZ2VzL2ZveF9pbl9mb3Jlc3QxLmpwZycsXG4gICAqICAgJ2h0dHBzOi8vZDF3dHFhZmZhYWo2M3ouY2xvdWRmcm9udC5uZXQvaW1hZ2VzL3NhaWwuanBnJyxcbiAgICogXTtcbiAgICogcGlja2VyLmNyb3AodXJscyk7XG4gICAqIGBgYFxuICAgKi9cbiAgY3JvcDogKGZpbGVzOiBhbnlbXSkgPT4gUHJvbWlzZTx2b2lkPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJDcm9wcGVkRGF0YSB7XG4gIGNyb3BBcmVhOiB7XG4gICAgLyoqXG4gICAgICogW3gsIHldXG4gICAgICovXG4gICAgcG9zaXRpb246IFtudW1iZXIsIG51bWJlcl07XG4gICAgLyoqXG4gICAgICogW3dpZHRoLCBoZWlnaHRdXG4gICAgICovXG4gICAgc2l6ZTogW251bWJlciwgbnVtYmVyXTtcbiAgfTtcbiAgICAvKipcbiAgICAgKiBbd2lkdGgsIGhlaWdodF1cbiAgICAgKi9cbiAgb3JpZ2luYWxJbWFnZVNpemU6IFtudW1iZXIsIG51bWJlcl07XG59XG5cbmV4cG9ydCBlbnVtIFJvdGF0ZURpcmVjdGlvbiB7XG4gIGN3ID0gJ0NXJyxcbiAgY2N3PSAnQ0NXJyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJSb3RhdGVkRGF0YSB7XG4gIC8qKlxuICAgKiBBbW91bnQgcm90YXRlZCBpbiBkZWdyZWVzLlxuICAgKi9cbiAgdmFsdWU6IG51bWJlcjtcbiAgLyoqXG4gICAqIENhbiBiZSBDVyBvciBDQ1cgKGNsb2Nrd2lzZSAvIGNvdW50ZXItY2xvY2t3aXNlKVxuICAgKi9cbiAgZGlyZWN0aW9uOiBSb3RhdGVEaXJlY3Rpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyRmlsZU1ldGFkYXRhIHtcbiAgLyoqXG4gICAqIFRoZSBjbG91ZCBjb250YWluZXIgZm9yIHRoZSB1cGxvYWRlZCBmaWxlLlxuICAgKi9cbiAgY29udGFpbmVyPzogc3RyaW5nO1xuICAvKipcbiAgICogUG9zaXRpb24gYW5kIHNpemUgaW5mb3JtYXRpb24gZm9yIGNyb3BwZWQgaW1hZ2VzLlxuICAgKi9cbiAgY3JvcHBlZD86IFBpY2tlckNyb3BwZWREYXRhO1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgZmlsZS5cbiAgICovXG4gIGZpbGVuYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBGaWxlc3RhY2sgaGFuZGxlIGZvciB0aGUgdXBsb2FkZWQgZmlsZS5cbiAgICovXG4gIGhhbmRsZTogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIGhhc2gtcHJlZml4ZWQgY2xvdWQgc3RvcmFnZSBwYXRoLlxuICAgKi9cbiAga2V5Pzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIE1JTUUgdHlwZSBvZiB0aGUgZmlsZS5cbiAgICovXG4gIG1pbWV0eXBlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBQcm9wZXJ0aWVzIG9mIHRoZSBsb2NhbCBiaW5hcnkgZmlsZS4gQWxzbyBzZWUgdGhlIHBpY2sgb3B0aW9uIGBleHBvc2VPcmlnaW5hbEZpbGVgIGlmIHlvdSB3YW50IHRoZSB1bmRlcmx5aW5nIGBGaWxlYCBvYmplY3QuXG4gICAqL1xuICBvcmlnaW5hbEZpbGU/OiBvYmplY3QgfCBGaWxlO1xuICAvKipcbiAgICogVGhlIG9yaWdpbiBvZiB0aGUgZmlsZSwgZS5nLiAvRm9sZGVyL2ZpbGUuanBnLlxuICAgKi9cbiAgb3JpZ2luYWxQYXRoOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEaXJlY3Rpb24gYW5kIHZhbHVlIGluZm9ybWF0aW9uIGZvciByb3RhdGVkIGltYWdlcy5cbiAgICovXG4gIHJvdGF0ZWQ/OiBQaWNrZXJSb3RhdGVkRGF0YTtcbiAgLyoqXG4gICAqIFNpemUgaW4gYnl0ZXMgb2YgdGhlIHVwbG9hZGVkIGZpbGUuXG4gICAqL1xuICBzaXplOiBudW1iZXI7XG4gIC8qKlxuICAgKiBUaGUgc291cmNlIGZyb20gd2hlcmUgdGhlIGZpbGUgd2FzIHBpY2tlZC5cbiAgICovXG4gIHNvdXJjZTogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGVzIEZpbGVzdGFjayB0cmFuc2l0IHN0YXR1cy5cbiAgICovXG4gIHN0YXR1cz86IHN0cmluZztcbiAgLyoqXG4gICAqIEEgdXVpZCBmb3IgdHJhY2tpbmcgdGhpcyBmaWxlIGluIGNhbGxiYWNrcy5cbiAgICovXG4gIHVwbG9hZElkOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgRmlsZXN0YWNrIENETiBVUkwgZm9yIHRoZSB1cGxvYWRlZCBmaWxlLlxuICAgKi9cbiAgdXJsOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBbHQgdGV4dCBmb3IgaW1hZ2VzXG4gICAqL1xuICBhbHQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDdXN0b21BdXRoVGV4dE9wdGlvbnMge1xuICBba2V5OiBzdHJpbmddOiB7XG4gICAgdG9wPzogc3RyaW5nW10sXG4gICAgYm90dG9tPzogc3RyaW5nW11cbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJSZXNwb25zZSB7XG4gIGZpbGVzVXBsb2FkZWQ6IFBpY2tlckZpbGVNZXRhZGF0YVtdO1xuICBmaWxlc0ZhaWxlZDogUGlja2VyRmlsZU1ldGFkYXRhW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyRmlsZUNhbGxiYWNrIHtcbiAgKGZpbGU6IFBpY2tlckZpbGVNZXRhZGF0YSk6IHZvaWQgfCBQcm9taXNlPGFueT47XG59XG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlckZpbGVXaXRoVG9rZW5DYWxsYmFjayB7XG4gIChmaWxlOiBQaWNrZXJGaWxlTWV0YWRhdGEsIHRva2VuPzoge3BhdXNlPzogKCkgPT4gdm9pZCwgcmVzdW1lPzogKCkgPT4gdm9pZCwgY2FuY2VsPzogKCkgPT4gdm9pZH0pOiB2b2lkIHwgUHJvbWlzZTxhbnk+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlckZpbGVDYW5jZWxDYWxsYmFjayB7XG4gIChmaWxlOiBQaWNrZXJGaWxlTWV0YWRhdGEpOiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlckZpbGVFcnJvckNhbGxiYWNrIHtcbiAgKGZpbGU6IFBpY2tlckZpbGVNZXRhZGF0YSwgZXJyb3I6IEVycm9yKTogdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJGaWxlUHJvZ3Jlc3NDYWxsYmFjayB7XG4gIChmaWxlOiBQaWNrZXJGaWxlTWV0YWRhdGEsIGV2ZW50OiBGU1Byb2dyZXNzRXZlbnQpOiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlclVwbG9hZFN0YXJ0ZWRDYWxsYmFjayB7XG4gIChmaWxlczogUGlja2VyRmlsZU1ldGFkYXRhW10pOiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlclVwbG9hZERvbmVDYWxsYmFjayB7XG4gIChmaWxlczogUGlja2VyUmVzcG9uc2UpOiB2b2lkO1xufVxuXG5leHBvcnQgZW51bSBQaWNrZXJEaXNwbGF5TW9kZSB7XG4gIGlubGluZSA9ICdpbmxpbmUnLFxuICBvdmVybGF5ID0gJ292ZXJsYXknLFxuICBkcm9wUGFuZSA9ICdkcm9wUGFuZScsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyRHJvcFBhbmVPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRvZ2dsZSB0aGUgY3JvcCBVSSBmb3IgZHJvcHBlZCBmaWxlcy5cbiAgICovXG4gIGNyb3BGaWxlcz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDdXN0b21pemUgdGhlIHRleHQgY29udGVudCBpbiB0aGUgZHJvcCBwYW5lLlxuICAgKi9cbiAgY3VzdG9tVGV4dD86IHN0cmluZztcbiAgLyoqXG4gICAqIERpc2FibGUgdGhlIGZpbGUgaW5wdXQgb24gY2xpY2suIFRoaXMgZG9lcyBub3QgZGlzYWJsZSB0aGUgYG9uQ2xpY2tgIGNhbGxiYWNrLlxuICAgKi9cbiAgZGlzYWJsZUNsaWNrPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRvZ2dsZSB0aGUgZnVsbC1wYWdlIGRyb3Agem9uZSBvdmVybGF5LlxuICAgKi9cbiAgb3ZlcmxheT86IGJvb2xlYW47XG4gIG9uRHJhZ0VudGVyPzogKGV2dDogRHJhZ0V2ZW50KSA9PiB2b2lkO1xuICBvbkRyYWdMZWF2ZT86ICgpID0+IHZvaWQ7XG4gIG9uRHJhZ092ZXI/OiAoZXZ0OiBEcmFnRXZlbnQpID0+IHZvaWQ7XG4gIG9uRHJvcD86IChldnQ6IERyYWdFdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIGBvblN1Y2Nlc3NgIG11c3QgYmUgdXNlZCBpbnN0ZWFkIG9mIGBvblVwbG9hZERvbmVgLiBUaGUgZHJvcCBwYW5lIHVzZXMgaXRzIG93biBjYWxsYmFja3MgZm9yIGNvbXBhdGliaWxpdHkgcHVycG9zZXMuIFRoaXMgbWlnaHQgZXZlbnR1YWxseSBjaGFuZ2UuXG4gICAqL1xuICBvblN1Y2Nlc3M/OiAoZmlsZXM6IFBpY2tlckZpbGVNZXRhZGF0YVtdKSA9PiB2b2lkO1xuICBvbkVycm9yPzogKGZpbGVzOiBQaWNrZXJGaWxlTWV0YWRhdGFbXSkgPT4gdm9pZDtcbiAgb25Qcm9ncmVzcz86IChwZXJjZW50OiBudW1iZXIpID0+IHZvaWQ7XG4gIG9uQ2xpY2s/OiAoZXZ0OiBhbnkpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBUb2dnbGUgaWNvbiBlbGVtZW50IGluIGRyb3AgcGFuZS5cbiAgICovXG4gIHNob3dJY29uPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRvZ2dsZSB1cGxvYWQgcHJvZ3Jlc3MgZGlzcGxheS5cbiAgICovXG4gIHNob3dQcm9ncmVzcz86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyU3RvcmVPcHRpb25zIHtcbiAgLyoqXG4gICAqIExvY2F0aW9uIGZvciBzdG9yZWQgZmlsZS4gT25lIG9mICdzMycsICdnY3MnLCAnYXp1cmUnLCAncmFja3NwYWNlJywgb3IgJ2Ryb3Bib3gnLlxuICAgKi9cbiAgbG9jYXRpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTcGVjaWZ5IHN0b3JhZ2UgY29udGFpbmVyLlxuICAgKi9cbiAgY29udGFpbmVyPzogc3RyaW5nO1xuICAvKipcbiAgICogU2V0IGNvbnRhaW5lciBwYXRoLiBJbmRpY2F0ZSBhIGZvbGRlciBieSBhZGRpbmcgYSB0cmFpbGluZyBzbGFzaC4gV2l0aG91dCBhIHRyYWlsaW5nIHNsYXNoIGFsbCBmaWxlcyB3aWxsIGJlIHN0b3JlZCB0byB0aGUgc2FtZSBvYmplY3QuXG4gICAqL1xuICBwYXRoPzogc3RyaW5nO1xuICAvKipcbiAgICogU3BlY2lmeSBTMyByZWdpb24uXG4gICAqL1xuICByZWdpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTMyBjb250YWluZXIgYWNjZXNzLiAncHVibGljJyBvciAncHJpdmF0ZScuXG4gICAqL1xuICBhY2Nlc3M/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdvcmtmbG93cyBpZHMgdG8gcnVuIGFmdGVyIHVwbG9hZFxuICAgKi9cbiAgd29ya2Zsb3dzPzogc3RyaW5nW10gfCBXb3JrZmxvd0NvbmZpZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlckN1c3RvbVRleHQge1xuICAvLyBBY3Rpb25zXG4gIFVwbG9hZD86IHN0cmluZztcbiAgJ1VwbG9hZCBtb3JlJz86IHN0cmluZztcbiAgJ0Rlc2VsZWN0IEFsbCc/OiBzdHJpbmc7XG4gICdWaWV3L0VkaXQgU2VsZWN0ZWQnPzogc3RyaW5nO1xuICAnU2lnbiBPdXQnPzogc3RyaW5nO1xuXG4gIC8vIFNvdXJjZSBMYWJlbHNcbiAgJ015IERldmljZSc/OiBzdHJpbmc7XG4gICdXZWIgU2VhcmNoJz86IHN0cmluZztcbiAgJ1Rha2UgUGhvdG8nPzogc3RyaW5nO1xuICAnTGluayAoVVJMKSc/OiBzdHJpbmc7XG4gICdSZWNvcmQgVmlkZW8nPzogc3RyaW5nO1xuICAnUmVjb3JkIEF1ZGlvJz86IHN0cmluZztcblxuICAvLyBDdXN0b20gU291cmNlXG4gICdDdXN0b20gU291cmNlJz86IHN0cmluZztcblxuICAvLyBGb290ZXIgVGV4dFxuICBBZGQ/OiBzdHJpbmc7XG4gICdtb3JlIGZpbGUnPzogc3RyaW5nO1xuICAnbW9yZSBmaWxlcyc/OiBzdHJpbmc7XG5cbiAgLy8gQ2xvdWRcbiAgJ0Nvbm5lY3Qge3Byb3ZpZGVyTmFtZX0nPzogc3RyaW5nO1xuICAnU2VsZWN0IEZpbGVzIGZyb20ge3Byb3ZpZGVyTmFtZX0nPzogc3RyaW5nO1xuICAnWW91IG5lZWQgdG8gYXV0aGVudGljYXRlIHdpdGgge3Byb3ZpZGVyTmFtZX0uJz86IHN0cmluZztcbiAgJ0EgbmV3IHBhZ2Ugd2lsbCBvcGVuIHRvIGNvbm5lY3QgeW91ciBhY2NvdW50Lic/OiBzdHJpbmc7XG4gICdXZSBvbmx5IGV4dHJhY3QgaW1hZ2VzIGFuZCBuZXZlciBtb2RpZnkgb3IgZGVsZXRlIHRoZW0uJz86IHN0cmluZztcbiAgJ1RvIGRpc2Nvbm5lY3QgZnJvbSB7cHJvdmlkZXJOYW1lfSBjbGljayBcIlNpZ24gb3V0XCIgYnV0dG9uIGluIHRoZSBtZW51Lic/OiBzdHJpbmc7XG4gICdTaWduIGluIHdpdGggR29vZ2xlJz86IHN0cmluZztcbiAgJ0dvIGJhY2snPzogc3RyaW5nO1xuICAnVGhpcyBmb2xkZXIgaXMgZW1wdHkuJz86IHN0cmluZztcblxuICAvLyBTdW1tYXJ5XG4gIEZpbGVzPzogc3RyaW5nO1xuICBJbWFnZXM/OiBzdHJpbmc7XG4gIFVwbG9hZGVkPzogc3RyaW5nO1xuICBVcGxvYWRpbmc/OiBzdHJpbmc7XG4gIENvbXBsZXRlZD86IHN0cmluZztcbiAgRmlsdGVyPzogc3RyaW5nO1xuICAnQ3JvcHBlZCBJbWFnZXMnPzogc3RyaW5nO1xuICAnRWRpdGVkIEltYWdlcyc/OiBzdHJpbmc7XG4gICdTZWxlY3RlZCBGaWxlcyc/OiBzdHJpbmc7XG4gICdDcm9wIGlzIHJlcXVpcmVkIG9uIGltYWdlcyc/OiBzdHJpbmc7XG5cbiAgLy8gVHJhbnNmb3JtXG4gIENyb3A/OiBzdHJpbmc7XG4gIENpcmNsZT86IHN0cmluZztcbiAgUm90YXRlPzogc3RyaW5nO1xuICBNYXNrPzogc3RyaW5nO1xuICBSZXZlcnQ/OiBzdHJpbmc7XG4gIEVkaXQ/OiBzdHJpbmc7XG4gIFJlc2V0Pzogc3RyaW5nO1xuICBEb25lPzogc3RyaW5nO1xuICBTYXZlPzogc3RyaW5nO1xuICBOZXh0Pzogc3RyaW5nO1xuICAnRWRpdCBJbWFnZSc/OiBzdHJpbmc7XG4gICdUaGlzIGltYWdlIGNhbm5vdCBiZSBlZGl0ZWQnPzogc3RyaW5nO1xuXG4gIC8vIFJldHJ5IG1lc3NhZ2luZ1xuICAnQ29ubmVjdGlvbiBMb3N0Jz86IHN0cmluZztcbiAgJ0ZhaWxlZCBXaGlsZSBVcGxvYWRpbmcnPzogc3RyaW5nO1xuICAnUmV0cnlpbmcgaW4nPzogc3RyaW5nO1xuICAnVHJ5IGFnYWluJz86IHN0cmluZztcbiAgJ1RyeSBub3cnPzogc3RyaW5nO1xuXG4gIC8vIExvY2FsIEZpbGUgU291cmNlXG4gICdEcmFnIGFuZCBEcm9wLCBDb3B5IGFuZCBQYXN0ZSBGaWxlcyc/OiBzdHJpbmc7XG4gICdvciBEcmFnIGFuZCBEcm9wLCBDb3B5IGFuZCBQYXN0ZSBGaWxlcyc/OiBzdHJpbmc7XG4gICdTZWxlY3QgRmlsZXMgdG8gVXBsb2FkJz86IHN0cmluZztcbiAgJ1NlbGVjdCBGcm9tJz86IHN0cmluZztcbiAgJ0Ryb3AgeW91ciBmaWxlcyBhbnl3aGVyZSc/OiBzdHJpbmc7XG5cbiAgLy8gSW5wdXQgcGxhY2Vob2xkZXJzXG4gICdFbnRlciBhIFVSTCc/OiBzdHJpbmc7XG4gICdTZWFyY2ggaW1hZ2VzJz86IHN0cmluZztcblxuICAvLyBXZWJjYW0gU291cmNlXG4gICdXZWJjYW0gRGlzYWJsZWQnPzogc3RyaW5nO1xuICAnV2ViY2FtIE5vdCBTdXBwb3J0ZWQnPzogc3RyaW5nO1xuICAnUGxlYXNlIGVuYWJsZSB5b3VyIHdlYmNhbSB0byB0YWtlIGEgcGhvdG8uJz86IHN0cmluZztcbiAgJ1lvdXIgY3VycmVudCBicm93c2VyIGRvZXMgbm90IHN1cHBvcnQgd2ViY2FtIGZ1bmN0aW9uYWxpdHkuJz86IHN0cmluZztcbiAgJ1dlIHN1Z2dlc3QgdXNpbmcgQ2hyb21lIG9yIEZpcmVmb3guJz86IHN0cmluZztcblxuICAvLyBFcnJvciBOb3RpZmljYXRpb25zXG4gICdGaWxlIHtkaXNwbGF5TmFtZX0gaXMgbm90IGFuIGFjY2VwdGVkIGZpbGUgdHlwZS4gVGhlIGFjY2VwdGVkIGZpbGUgdHlwZXMgYXJlIHt0eXBlc30nPzogc3RyaW5nO1xuICAnRmlsZSB7ZGlzcGxheU5hbWV9IGlzIHRvbyBiaWcuIFRoZSBhY2NlcHRlZCBmaWxlIHNpemUgaXMgbGVzcyB0aGFuIHtyb3VuZEZpbGVTaXplfSc/OiBzdHJpbmc7XG4gICdPdXIgZmlsZSB1cGxvYWQgbGltaXQgaXMge21heEZpbGVzfSB7ZmlsZXNUZXh0fSc/OiBzdHJpbmc7XG4gICdObyBzZWFyY2ggcmVzdWx0cyBmb3VuZCBmb3IgXCJ7c2VhcmNofVwiJz86IHN0cmluZztcbiAgJ0FuIGVycm9yIG9jY3VycmVkLiBQbGVhc2UgdHJ5IGFnYWluLic/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBSZXN0cmljdCBmaWxlIHR5cGVzIHRoYXQgYXJlIGFsbG93ZWQgdG8gYmUgcGlja2VkLiBGb3JtYXRzIGFjY2VwdGVkOlxuICAgKiAgLSAucGRmIDwtIGFueSBmaWxlIGV4dGVuc2lvblxuICAgKiAgLSBpbWFnZS9qcGVnIDwtIGFueSBtaW1lIHR5cGUgY29tbW9ubHkga25vd24gYnkgYnJvd3NlcnNcbiAgICogIC0gaW1hZ2UvKiA8LSBhY2NlcHQgYWxsIHR5cGVzIG9mIGltYWdlc1xuICAgKiAgLSB2aWRlby8qIDwtIGFjY2VwdCBhbGwgdHlwZXMgb2YgdmlkZW8gZmlsZXNcbiAgICogIC0gYXVkaW8vKiA8LSBhY2NlcHQgYWxsIHR5cGVzIG9mIGF1ZGlvIGZpbGVzXG4gICAqICAtIGFwcGxpY2F0aW9uLyogPC0gYWNjZXB0IGFsbCB0eXBlcyBvZiBhcHBsaWNhdGlvbiBmaWxlc1xuICAgKiAgLSB0ZXh0LyogPC0gYWNjZXB0IGFsbCB0eXBlcyBvZiB0ZXh0IGZpbGVzXG4gICAqL1xuICBhY2NlcHQ/OiBzdHJpbmcgfCBzdHJpbmdbXTtcbiAgLyoqXG4gICAqIEN1c3RvbSBhY2NlcHQgY2hlY2sgZnVuY3Rpb25cbiAgICogYGBgamF2YXNjcmlwdFxuICAgKiBhY2NlcHRGbjogKGZpbGUsIG9wdGlvbnMpID0+IHtcbiAgICogIHJldHVybiBvcHRpb25zLm1pbWVGcm9tTWFnaWNCeXRlcyhmaWxlLm9yaWdpbmFsRmlsZSkudGhlbigocmVzKSA9PiB7IC8vIHdlIGNhbiBjaGVjayBtaW1ldHlwZSBmcm9tIG1hZ2ljIGJ5dGVzXG4gICAqICAgIC8vY29uc29sZS5sb2cob3B0aW9ucy5taW1lRnJvbUV4dGVuc2lvbihmaWxlLm9yaWdpbmFsRmlsZS5uYW1lKSk7IC8vIG9yIGNoZWNrIGV4dGVuc2lvbiBmcm9tIGZpbGVzdGFjayBleHRlbnNpb25zIGRhdGFiYXNlXG4gICAqICAgIC8vIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGFjY2VwdCB0aGF0IGZpbGUnKSAvLyB3ZSBjYW4gdGhyb3cgZXhjZXB0aW9uIHRvIGJsb2NrIGZpbGUgdXBsb2FkXG4gICAqICAgIC8vIHJldHVybiBQcm9taXNlLnJlamVjdCgnQ2Fubm90IGFjY2VwdCB0aGF0IGZpbGUnJykgLy8gb3IgcmVqZWN0IGEgcHJvbWlzZVxuICAgKiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG4gICAqICB9KTtcbiAgICogfVxuICAgKiBgYGBcbiAgICovXG4gIGFjY2VwdEZuPzogKFBpY2tlckZpbGVNZXRhZGF0YSwgUGlja2VyQWNjZXB0Rm5PcHRpb25zKSA9PiBQcm9taXNlPHN0cmluZz47XG4gIC8qKlxuICAgKiBQcmV2ZW50IG1vZGFsIGNsb3NlIG9uIHVwbG9hZCBmYWlsdXJlIGFuZCBhbGxvdyB1c2VycyB0byByZXRyeS5cbiAgICovXG4gIGFsbG93TWFudWFsUmV0cnk/OiBib29sZWFuO1xuICAvKipcbiAgICogIFZhbGlkIHNvdXJjZXMgYXJlOlxuICAgKiAgLSBsb2NhbF9maWxlX3N5c3RlbSAtIERlZmF1bHRcbiAgICogIC0gdXJsIC0gRGVmYXVsdFxuICAgKiAgLSBpbWFnZXNlYXJjaCAtIERlZmF1bHRcbiAgICogIC0gZmFjZWJvb2sgLSBEZWZhdWx0XG4gICAqICAtIGluc3RhZ3JhbSAtIERlZmF1bHRcbiAgICogIC0gZ29vZ2xlZHJpdmUgLSBEZWZhdWx0XG4gICAqICAtIGRyb3Bib3ggLSBEZWZhdWx0XG4gICAqICAtIHdlYmNhbSAtIFVzZXMgZGV2aWNlIG1lbnUgb24gbW9iaWxlLiBOb3QgY3VycmVudGx5IHN1cHBvcnRlZCBpbiBTYWZhcmkgYW5kIElFLlxuICAgKiAgLSB2aWRlbyAtIFVzZXMgZGV2aWNlIG1lbnUgb24gbW9iaWxlLiBOb3QgY3VycmVudGx5IHN1cHBvcnRlZCBpbiBTYWZhcmkgYW5kIElFLlxuICAgKiAgLSBhdWRpbyAtIFVzZXMgZGV2aWNlIG1lbnUgb24gbW9iaWxlLiBOb3QgY3VycmVudGx5IHN1cHBvcnRlZCBpbiBTYWZhcmkgYW5kIElFLlxuICAgKiAgLSBib3hcbiAgICogIC0gZ2l0aHViXG4gICAqICAtIGdtYWlsXG4gICAqICAtIGdvb2dsZXBob3Rvc1xuICAgKiAgLSBvbmVkcml2ZVxuICAgKiAgLSBvbmVkcml2ZWZvcmJ1c2luZXNzXG4gICAqICAtIGN1c3RvbXNvdXJjZSAtIENvbmZpZ3VyZSB0aGlzIGluIHlvdXIgRmlsZXN0YWNrIERldiBQb3J0YWwuXG4gICAqICAtIHVuc3BsYXNoXG4gICAqL1xuICBmcm9tU291cmNlcz86IHN0cmluZ1tdO1xuICAvKipcbiAgICogUHJvdmlkZSBkZWZhdWx0IHRleHQgdmFsdWUgZm9yIEltYWdlIFNlYXJjaFxuICAgKiBgYGBqYXZhc2NyaXB0XG4gICAqIHdlYnNlYXJjaDoge1xuICAgKiAgcHJlZGVmaW5lZFRleHQ6ICdTYW1wbGUgdGV4dCdcbiAgICogfVxuICAgKiBgYGBcbiAgICovXG4gIHdlYnNlYXJjaD86IG9iamVjdDtcbiAgLyoqXG4gICAqIENvbnRhaW5lciB3aGVyZSBwaWNrZXIgc2hvdWxkIGJlIGFwcGVuZGVkLiBPbmx5IHJlbGV2YW50IGZvciBgaW5saW5lYCBhbmQgYGRyb3BQYW5lYCBkaXNwbGF5IG1vZGVzLlxuICAgKi9cbiAgY29udGFpbmVyPzogc3RyaW5nIHwgTm9kZTtcblxuICAvKipcbiAgICogVHVybiBvbiBjbGVhbmluZyBKUEVHIGltYWdlIGV4aWYuIE1ldGhvZCBjYW4ga2VlcCBpbWFnZSBvcmllbnRhdGlvbiBvciBjb2xvciBwcm9maWxlc1xuICAgKiBgYGBqYXZhc2NyaXB0XG4gICAqIGNsZWFudXBJbWFnZUV4aWY6IHtcbiAgICogICBrZWVwT3JpZW50YXRpb246IHRydWVcbiAgICogICBrZWVwSUNDYW5kQVBQOiB0cnVlXG4gICAqIH1cbiAgICogYGBgXG4gICAqL1xuICBjbGVhbnVwSW1hZ2VFeGlmPzogYm9vbGVhbiB8IHtcbiAgICBrZWVwT3JpZW50YXRpb24/OiBib29sZWFuLFxuICAgIGtlZXBJQ0NhbmRBUFA/OiBib29sZWFuXG4gIH07XG4gIC8qKlxuICAgKiBDdXN0b21pemUgdGhlIHRleHQgb24gdGhlIGNsb3VkIGF1dGhlbnRpY2F0aW9uIHNjcmVlbiBpbiBQaWNrZXIuXG4gICAqIFVzZSBhIGNsb3VkIHNvdXJjZSBuYW1lIChzZWUge0BsaW5rIFBpY2tlck9wdGlvbnMuZnJvbVNvdXJjZXN9KVxuICAgKiBvciBhICdkZWZhdWx0JyBhcyBhIGtleSwgdGhlbiBwdXQgeW91ciBjdXN0b20gbm90aWNlIG9yIGNvbnNlbnRcbiAgICogdG8gdGhlICd0b3AnIG9yIHRoZSAnYm90dG9tJyBrZXkgdG8gc2hvdyBpdCByZXNwZWN0aXZseSBhYm92ZSBvciB1bmRlciAnQ29ubmVjdCBidXR0b24nLlxuICAgKlxuICAgKiBgYGBqYXZhc2NyaXB0XG4gICAqIGN1c3RvbUF1dGhUZXh0OiB7XG4gICAqICAgLy8gdXNlIGl0IGZvciBldmVyeSBjbG91ZCBhdXRoZW50aWNhdGlvbiBzY3JlZW5cbiAgICogICBkZWZhdWx0OiB7XG4gICAqICAgICB0b3A6IFtcbiAgICogICAgICAgJ2RlZmF1bHQgdG9wIGZpcnN0IGxpbmUnLFxuICAgKiAgICAgICAnZGVmYXVsdCB0b3Agc2Vjb25kIGxpbmUnXG4gICAqICAgICBdLFxuICAgKiAgICAgYm90dG9tOiBbXG4gICAqICAgICAgICdkZWZhdWx0IGJvdHRvbSBmaXJzdCBsaW5lJyxcbiAgICogICAgICAgJ2RlZmF1bHQgYm90dG9tIHNlY29uZCBsaW5lJ1xuICAgKiAgICAgXVxuICAgKiAgIH0sXG4gICAqICAgLy8gb3ZlcnJpZGUgYSBkZWZhdWx0IGJvdHRvbSB0ZXh0IGZvciBvbmx5IGdtYWlsXG4gICAqICAgZ21haWw6IHtcbiAgICogICAgIGJvdHRvbTogW1xuICAgKiAgICAgICAnV2UgbmVlZCB5b3VyIHBlcm1pc3Npb24gdG8gYWNjZXNzIHlvdXIgZGF0YSBhbmQnLFxuICAgKiAgICAgICAncHJvY2VzcyBpdCB3aXRoIG91ciBtYWNoaW5lIGxlYXJuaW5nIHN5c3RlbS4nXG4gICAqICAgICBdXG4gICAqICAgfVxuICAgKiB9XG4gICAqIGBgYFxuICAgKi9cbiAgY3VzdG9tQXV0aFRleHQ/OiBDdXN0b21BdXRoVGV4dE9wdGlvbnM7XG4gIC8qKlxuICAgKiBQaWNrZXIgZGlzcGxheSBtb2RlLCBvbmUgb2YgYCdpbmxpbmUnYCwgYCdvdmVybGF5J2AsIGAnZHJvcFBhbmUnYCAtIGRlZmF1bHQgaXMgYCdvdmVybGF5J2AuXG4gICAqL1xuICBkaXNwbGF5TW9kZT86IFBpY2tlckRpc3BsYXlNb2RlO1xuICAvKipcbiAgICogTWF4IG51bWJlciBvZiBmaWxlcyB0byB1cGxvYWQgY29uY3VycmVudGx5LiBEZWZhdWx0IGlzIDQuXG4gICAqL1xuICBjb25jdXJyZW5jeT86IG51bWJlcjtcbiAgLyoqXG4gICAqIFNldCB0aGUgZGVmYXVsdCBjb250YWluZXIgZm9yIHlvdXIgY3VzdG9tIHNvdXJjZS5cbiAgICovXG4gIGN1c3RvbVNvdXJjZUNvbnRhaW5lcj86IHN0cmluZztcbiAgLyoqXG4gICAqIFNldCB0aGUgZGVmYXVsdCBwYXRoIGZvciB5b3VyIGN1c3RvbSBzb3VyY2UgY29udGFpbmVyLlxuICAgKi9cbiAgY3VzdG9tU291cmNlUGF0aD86IHN0cmluZztcbiAgLyoqXG4gICAqIFNldCB0aGUgZGlzcGxheSBuYW1lIGZvciB0aGUgY3VzdG9tIHNvdXJjZS5cbiAgICovXG4gIGN1c3RvbVNvdXJjZU5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBQcm92aWRlIGFuIG9iamVjdCBmb3IgbWFwcGluZyBwaWNrZXIgc3RyaW5ncyB0byB5b3VyIG93biBzdHJpbmdzLlxuICAgKiBTdHJpbmdzIHN1cnJvdW5kZWQgYnkgYnJhY2tldHMsIGB7IGZvb2JhciB9YCwgYXJlIGludGVycG9sYXRlZCB3aXRoIHJ1bnRpbWUgdmFsdWVzLlxuICAgKiBTb3VyY2UgbGFiZWxzIGFyZSBhbHNvIGF2YWlsYWJsZSB0byBvdmVycmlkZSwgZS5nLiBGYWNlYm9vaywgSW5zdGFncmFtLCBEcm9wYm94LCBldGMuXG4gICAqL1xuICBjdXN0b21UZXh0PzogUGlja2VyQ3VzdG9tVGV4dDtcbiAgLyoqXG4gICAqIHNldCBzdXBwb3J0IGVtYWlsIHRvIGRpc3BsYXkgaW4gY2FzZSBvZiBlcnJvclxuICAgKi9cbiAgc3VwcG9ydEVtYWlsPzogc3RyaW5nO1xuICAvKipcbiAgICogV2hlbiB0cnVlIHJlbW92ZXMgdGhlIGhhc2ggcHJlZml4IG9uIHN0b3JlZCBmaWxlcy5cbiAgICovXG4gIGRpc2FibGVTdG9yYWdlS2V5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFdoZW4gdHJ1ZSByZW1vdmVzIGFiaWxpdHkgdG8gZWRpdCBpbWFnZXMuXG4gICAqL1xuICBkaXNhYmxlVHJhbnNmb3JtZXI/OiBib29sZWFuO1xuICAvKipcbiAgICogRGlzYWJsZXMgYWx0IHRleHQgdmlldy9lZGl0IGluIHRoZSBzdW1tYXJ5IHNjcmVlbi5cbiAgICovXG4gIGRpc2FibGVBbHRUZXh0PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERpc2FibGVzIGxvY2FsIGltYWdlIHRodW1ibmFpbCBwcmV2aWV3cyBpbiB0aGUgc3VtbWFyeSBzY3JlZW4uXG4gICAqL1xuICBkaXNhYmxlVGh1bWJuYWlscz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb25maWd1cmUgdGhlIGRyb3AgcGFuZSBiZWhhdmlvciwgaS5lLiB3aGVuIGBkaXNwbGF5TW9kZWAgaXMgYGRyb3BQYW5lYC5cbiAgICovXG4gIGRyb3BQYW5lPzogUGlja2VyRHJvcFBhbmVPcHRpb25zO1xuICAvKipcbiAgICogV2hlbiB0cnVlIHRoZSBgb3JpZ2luYWxGaWxlYCBtZXRhZGF0YSB3aWxsIGJlIHRoZSBhY3R1YWwgYEZpbGVgIG9iamVjdCBpbnN0ZWFkIG9mIGEgUE9KT1xuICAgKi9cbiAgZXhwb3NlT3JpZ2luYWxGaWxlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRvZ2dsZSB0aGUgZHJvcCB6b25lIHRvIGJlIGFjdGl2ZSBvbiBhbGwgdmlld3MuIERlZmF1bHQgaXMgYWN0aXZlIG9ubHkgb24gbG9jYWwgZmlsZSBzb3VyY2UuXG4gICAqL1xuICBnbG9iYWxEcm9wWm9uZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBIaWRlIHRoZSBwaWNrZXIgbW9kYWwgVUkgb25jZSB1cGxvYWRpbmcgYmVnaW5zLiBEZWZhdWx0cyB0byBgZmFsc2VgLlxuICAgKi9cbiAgaGlkZU1vZGFsV2hlblVwbG9hZGluZz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFNwZWNpZnkgaW1hZ2UgZGltZW5zaW9ucy4gZS5nLiBbODAwLCA2MDBdLiBPbmx5IGZvciBKUEVHLCBQTkcsIGFuZCBCTVAgZmlsZXMuXG4gICAqIExvY2FsIGFuZCBjcm9wcGVkIGltYWdlcyB3aWxsIGJlIHJlc2l6ZWQgKHVwc2NhbGVkIG9yIGRvd25zY2FsZWQpIHRvIHRoZSBzcGVjaWZpZWQgZGltZW5zaW9ucyBiZWZvcmUgdXBsb2FkaW5nLlxuICAgKiBUaGUgb3JpZ2luYWwgaGVpZ2h0IHRvIHdpZHRoIHJhdGlvIGlzIG1haW50YWluZWQuIFRvIHJlc2l6ZSBhbGwgaW1hZ2VzIGJhc2VkIG9uIHRoZSB3aWR0aCwgc2V0IFt3aWR0aCwgbnVsbF0sIGUuZy4gWzgwMCwgbnVsbF0uXG4gICAqIEZvciB0aGUgaGVpZ2h0IHNldCBbbnVsbCwgaGVpZ2h0XSwgZS5nLiBbbnVsbCwgNjAwXS5cbiAgICovXG4gIGltYWdlRGltPzogW251bWJlciwgbnVtYmVyXTtcbiAgLyoqXG4gICAqIFNwZWNpZnkgbWF4aW11bSBpbWFnZSBkaW1lbnNpb25zLiBlLmcuIFs4MDAsIDYwMF0uIE9ubHkgZm9yIEpQRUcsIFBORywgYW5kIEJNUCBmaWxlcy5cbiAgICogSW1hZ2VzIGJpZ2dlciB0aGFuIHRoZSBzcGVjaWZpZWQgZGltZW5zaW9ucyB3aWxsIGJlIHJlc2l6ZWQgdG8gdGhlIG1heGltdW0gc2l6ZSB3aGlsZSBtYWludGFpbmluZyB0aGUgb3JpZ2luYWwgYXNwZWN0IHJhdGlvLlxuICAgKiBUaGUgb3V0cHV0IHdpbGwgbm90IGJlIGV4YWN0bHkgODAweDYwMCB1bmxlc3MgdGhlIGltYWdlTWF4IG1hdGNoZXMgdGhlIGFzcGVjdCByYXRpbyBvZiB0aGUgb3JpZ2luYWwgaW1hZ2UuXG4gICAqL1xuICBpbWFnZU1heD86IFtudW1iZXIsIG51bWJlcl07XG4gIC8qKlxuICAgKiBTcGVjaWZ5IG1pbmltdW0gaW1hZ2UgZGltZW5zaW9ucy4gZS5nLiBbODAwLCA2MDBdLiBPbmx5IGZvciBKUEVHLCBQTkcsIGFuZCBCTVAgZmlsZXMuXG4gICAqIEltYWdlcyBzbWFsbGVyIHRoYW4gdGhlIHNwZWNpZmllZCBkaW1lbnNpb25zIHdpbGwgYmUgdXBzY2FsZWQgdG8gdGhlIG1pbmltdW0gc2l6ZSB3aGlsZSBtYWludGFpbmluZyB0aGUgb3JpZ2luYWwgYXNwZWN0IHJhdGlvLlxuICAgKiBUaGUgb3V0cHV0IHdpbGwgbm90IGJlIGV4YWN0bHkgODAweDYwMCB1bmxlc3MgdGhlIGltYWdlTWluIG1hdGNoZXMgdGhlIGFzcGVjdCByYXRpbyBvZiB0aGUgb3JpZ2luYWwgaW1hZ2UuXG4gICAqL1xuICBpbWFnZU1pbj86IFtudW1iZXIsIG51bWJlcl07XG4gIC8qKlxuICAgKiBTZXRzIGxvY2FsZS4gQWNjZXB0czogY2EsIGRhLCBkZSwgZW4sIGVzLCBmciwgaGUsIGl0LCBqYSwga28sIG5sLCBubywgcGwsIHB0LCBzdiwgcnUsIHZpLCB6aCwgdHJcbiAgICovXG4gIGxhbmc/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBNaW5pbXVtIG51bWJlciBvZiBmaWxlcyByZXF1aXJlZCB0byBzdGFydCB1cGxvYWRpbmcuIERlZmF1bHRzIHRvIDEuXG4gICAqL1xuICBtaW5GaWxlcz86IG51bWJlcjtcbiAgLyoqXG4gICAqIE1heGltdW0gbnVtYmVyIG9mIGZpbGVzIGFsbG93ZWQgdG8gdXBsb2FkLiBEZWZhdWx0cyB0byAxLlxuICAgKi9cbiAgbWF4RmlsZXM/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBSZXN0cmljdCBzZWxlY3RlZCBmaWxlcyB0byBhIG1heGltdW0gbnVtYmVyIG9mIGJ5dGVzLiAoZS5nLiAxMCBcXCogMTAyNCBcXCogMTAyNCBmb3IgMTBNQiBsaW1pdCkuXG4gICAqL1xuICBtYXhTaXplPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IHZpZXcgdHlwZSBvcHRpb24gZm9yIGZpbGUgYnJvd3NlclxuICAgKi9cbiAgdmlld1R5cGU/OiAnZ3JpZCcgfCAnbGlzdCc7XG5cbiAgLyoqXG4gICAqIFRpbWVvdXQgZm9yIGVycm9yIG1lc3NhZ2VzXG4gICAqL1xuICBlcnJvcnNUaW1lb3V0PzogbnVtYmVyO1xuICAvKipcbiAgICogU3BlY2lmeSBbd2lkdGgsIGhlaWdodF0gaW4gcGl4ZWxzIG9mIHRoZSBkZXNrdG9wIG1vZGFsLlxuICAgKi9cbiAgbW9kYWxTaXplPzogW251bWJlciwgbnVtYmVyXTtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGFsbCB1cGxvYWRzIGluIGEgcGljayBhcmUgY2FuY2VsbGVkLlxuICAgKi9cbiAgb25DYW5jZWw/OiBQaWNrZXJVcGxvYWREb25lQ2FsbGJhY2s7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiB0aGUgVUkgaXMgZXhpdGVkLlxuICAgKi9cbiAgb25DbG9zZT86ICgpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiB0aGUgVUkgaXMgbW91bnRlZC5cbiAgICogQHBhcmFtIFBpY2tlckluc3RhbmNlIGFwcGxpY2F0aW9uIGhhbmRsZVxuICAgKi9cbiAgb25PcGVuPzogKGhhbmRsZTogUGlja2VySW5zdGFuY2UpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbmV2ZXIgdXNlciBzZWxlY3RzIGEgZmlsZS5cbiAgICogIyMjIEV4YW1wbGVcbiAgICpcbiAgICogYGBganNcbiAgICogLy8gVXNpbmcgdG8gdmV0byBmaWxlIHNlbGVjdGlvblxuICAgKiAvLyBJZiB5b3UgdGhyb3cgYW55IGVycm9yIGluIHRoaXMgZnVuY3Rpb24gaXQgd2lsbCByZWplY3QgdGhlIGZpbGUgc2VsZWN0aW9uLlxuICAgKiAvLyBUaGUgZXJyb3IgbWVzc2FnZSB3aWxsIGJlIGRpc3BsYXllZCB0byB0aGUgdXNlciBhcyBhbiBhbGVydC5cbiAgICogb25GaWxlU2VsZWN0ZWQoZmlsZSkge1xuICAgKiAgIGlmIChmaWxlLnNpemUgPiAxMDAwICogMTAwMCkge1xuICAgKiAgICAgdGhyb3cgbmV3IEVycm9yKCdGaWxlIHRvbyBiaWcsIHNlbGVjdCBzb21ldGhpbmcgc21hbGxlciB0aGFuIDFNQicpO1xuICAgKiAgIH1cbiAgICogfVxuICAgKlxuICAgKiAvLyBVc2luZyB0byBjaGFuZ2Ugc2VsZWN0ZWQgZmlsZSBuYW1lXG4gICAqIC8vIE5PVEU6IFRoaXMgY3VycmVudGx5IG9ubHkgd29ya3MgZm9yIGxvY2FsIHVwbG9hZHNcbiAgICogb25GaWxlU2VsZWN0ZWQoZmlsZSkge1xuICAgKiAgIC8vIEl0J3MgaW1wb3J0YW50IHRvIHJldHVybiBhIG5ldyBmaWxlIGJ5IHRoZSBlbmQgb2YgdGhpcyBmdW5jdGlvbi5cbiAgICogICByZXR1cm4geyAuLi5maWxlLCBuYW1lOiAnZm9vJyB9O1xuICAgKiB9XG4gICAqIGBgYFxuICAgKlxuICAgKiBUaGUgY2FsbGJhY2sgZnVuY3Rpb24gY2FuIGFsc28gcmV0dXJuIGEgUHJvbWlzZSB0byBhbGxvdyBhc3luY2hyb25vdXMgdmFsaWRhdGlvbiBsb2dpYy5cbiAgICogWW91IGNhbiBwYXNzIGEgZmlsZSBvYmplY3QgdG8gYHJlc29sdmVgIGZvciBjaGFuZ2luZyB0aGUgZmlsZSBuYW1lLCBpdCB3aWxsIGJlaGF2ZSB0aGUgc2FtZSBhcyB3aGVuXG4gICAqIHRoZSBmaWxlIGlzIHJldHVybmVkIGZyb20gdGhlIG5vbi1hc3luYyBjYWxsYmFjay5cbiAgICpcbiAgICogYGBganNcbiAgICogb25GaWxlU2VsZWN0ZWQoZmlsZSkge1xuICAgKiAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAqICAgICAvLyBEbyBzb21ldGhpbmcgYXN5bmNcbiAgICogICAgIHJlc29sdmUoKTtcbiAgICogICAgIC8vIE9yIHJlamVjdCB0aGUgc2VsZWN0aW9uIHdpdGggcmVqZWN0KClcbiAgICogICB9KTtcbiAgICogfVxuICAgKiBgYGBcbiAgICovXG4gIG9uRmlsZVNlbGVjdGVkPzogUGlja2VyRmlsZUNhbGxiYWNrO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gYSBmaWxlIHVwbG9hZCBoYXMgYmVlbiBjYW5jZWxlZC5cbiAgICovXG4gIG9uRmlsZVVwbG9hZENhbmNlbD86IFBpY2tlckZpbGVDYW5jZWxDYWxsYmFjaztcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGEgZmlsZSBiZWdpbnMgdXBsb2FkaW5nLlxuICAgKi9cbiAgb25GaWxlVXBsb2FkU3RhcnRlZD86IFBpY2tlckZpbGVXaXRoVG9rZW5DYWxsYmFjaztcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGEgZmlsZSBpcyBkb25lIHVwbG9hZGluZy5cbiAgICovXG4gIG9uRmlsZVVwbG9hZEZpbmlzaGVkPzogUGlja2VyRmlsZUNhbGxiYWNrO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gdXBsb2FkaW5nIGEgZmlsZSBmYWlscy5cbiAgICovXG4gIG9uRmlsZVVwbG9hZEZhaWxlZD86IFBpY2tlckZpbGVFcnJvckNhbGxiYWNrO1xuICAvKipcbiAgICogQ2FsbGVkIGR1cmluZyBtdWx0aS1wYXJ0IHVwbG9hZCBwcm9ncmVzcyBldmVudHMuIExvY2FsIGZpbGVzIG9ubHkuXG4gICAqL1xuICBvbkZpbGVVcGxvYWRQcm9ncmVzcz86IFBpY2tlckZpbGVQcm9ncmVzc0NhbGxiYWNrO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gZmlsZSBpcyBjcm9wcGVkIGluIHBpY2tlclxuICAgKi9cbiAgb25GaWxlQ3JvcHBlZD86IFBpY2tlckZpbGVDYWxsYmFjaztcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIHVwbG9hZGluZyBzdGFydHMgKHVzZXIgaW5pdGlhdGVzIHVwbG9hZGluZykuXG4gICAqL1xuICBvblVwbG9hZFN0YXJ0ZWQ/OiBQaWNrZXJVcGxvYWRTdGFydGVkQ2FsbGJhY2s7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBhbGwgZmlsZXMgaGF2ZSBiZWVuIHVwbG9hZGVkLlxuICAgKi9cbiAgb25VcGxvYWREb25lPzogUGlja2VyVXBsb2FkRG9uZUNhbGxiYWNrO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgYSB1bmlxdWUgaWQgZm9yIHRoZSBhcHBsaWNhdGlvbiBtb3VudCBwb2ludC5cbiAgICogTWF5IGJlIHVzZWZ1bCBmb3IgbW9yZSBhZHZhbmNlZCB1c2UgY2FzZXMuXG4gICAqIEZvciBleGFtcGxlLCBpZiB5b3Ugd2lzaCB0byBoYXZlIG1vcmUgdGhhbiBvbmUgcGlja2VyIGluc3RhbmNlIG9wZW4gYXQgb25jZSxcbiAgICogdGhlbiBlYWNoIHdpbGwgbmVlZCB0aGVpciBvd24gdW5pcXVlIHJvb3RJZC5cbiAgICpcbiAgICogKipOb3RlOioqIFRoaXMgb3B0aW9uIGlzIGlnbm9yZWQgd2hlbiBgZGlzcGxheU1vZGVgIGlzIGBkcm9wUGFuZWAuXG4gICAqL1xuICByb290SWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHN0YXJ0IHVwbG9hZGluZyBhdXRvbWF0aWNhbGx5IHdoZW4gbWF4RmlsZXMgaXMgaGl0LiBEZWZhdWx0cyB0byBgZmFsc2VgLlxuICAgKi9cbiAgc3RhcnRVcGxvYWRpbmdXaGVuTWF4RmlsZXNSZWFjaGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIGZpbGUgc3RvcmFnZS5cbiAgICovXG4gIHN0b3JlVG8/OiBQaWNrZXJTdG9yZU9wdGlvbnM7XG4gIC8qKlxuICAgKiBTcGVjaWZ5IG9wdGlvbnMgZm9yIGltYWdlcyBwYXNzZWQgdG8gdGhlIGNyb3AgVUkuXG4gICAqL1xuICB0cmFuc2Zvcm1hdGlvbnM/OiBQaWNrZXJUcmFuc2Zvcm1hdGlvbk9wdGlvbnM7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHVzZSB0aGUgbmV3IHRyYW5zZm9ybWF0aW9ucyBVSS4gRGVmYXVsdHMgdG8gYGZhbHNlYC5cbiAgICovXG4gIHRyYW5zZm9ybWF0aW9uc1VJPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIGxvY2FsIGZpbGUgdXBsb2Fkcy5cbiAgICovXG4gIHVwbG9hZENvbmZpZz86IFVwbG9hZE9wdGlvbnM7XG4gIC8qKlxuICAgKiBTdGFydCB1cGxvYWRpbmcgaW1tZWRpYXRlbHkgb24gZmlsZSBzZWxlY3Rpb24uIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICogQGltcG9ydGFudCBUaGUgZmVhdHVyZSBpcyBjYW4gYmUgZW5hYmxlZCBvbmx5IGlmIGNyb3AgaXMgZGlzYWJsZWQgLSBkaXNhYmxlVHJhbnNmb3JtZXI6IHRydWVcbiAgICovXG4gIHVwbG9hZEluQmFja2dyb3VuZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTZXRzIHRoZSByZXNvbHV0aW9uIG9mIHJlY29yZGVkIHZpZGVvLiBPbmUgb2YgXCIzMjB4MjQwXCIsIFwiNjQweDQ4MFwiIG9yIFwiMTI4MHg3MjBcIi4gRGVmYXVsdCBpcyBgXCI2NDB4NDgwXCJgLlxuICAgKi9cbiAgdmlkZW9SZXNvbHV0aW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogVXNlIFNlbnRyeSBCcmVhZGNydW1icyBtZWNoYW5pc20gdG8gbG9nIGluZm9ybWF0aW9uIGFib3V0IG9jY3VyZWQgZXJyb3JzLlxuICAgKiBJdCBjYW4gb3ZlcnJpZGUgZ2xvYmFsIG9iamVjdHMgbGlrZSBjb25zb2xlLCBlcnJvciBldGMuIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICovXG4gIHVzZVNlbnRyeUJyZWFkY3J1bWJzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFNwZWNpZnkgd2hpY2ggUGlja2VyIGluc3RhbmNlIHNob3VsZCByZXNwb25kIHRvIHBhc3RlIGV2ZW50LlxuICAgKiBCeSBkZWZhdWx0IG9ubHkgaG92ZXJlZCBpbnN0YW5jZSByZXNwb25kcyB0byBldmVudC5cbiAgICogQHBhcmFtIHtib29sZWFuID0gZmFsc2V9IHBhc3RlVG9GaXJzdEluVmlld1BvcnQgSWYgbm9uZSBpbnN0YW5jZSBpcyBob3ZlcmVkIHRha2UgZmlyc3QgcGlja2VyIGluc3RhbmNlIGZ1bGx5IHZpc2libGUgaW4gdmlld3BvcnRcbiAgICogQHBhcmFtIHtib29sZWFuID0gZmFsc2V9IHBhc3RlVG9GaXJzdEluc3RhbmNlIElmIG5vbmUgaW5zdGFuY2UgaXMgaG92ZXJlZCB0YWtlIGZpcnN0IHBpY2tlciBpbnN0YW5jZSB0aGF0IGlzIGluaXRpYWxpemVkXG4gICAqIEBwYXN0ZVRvRmlyc3RJblZpZXdQb3J0IGlzIGNoZWNrZWQgZmlyc3RcbiAgICovXG4gIHBhc3RlTW9kZT86IHtcbiAgICBwYXN0ZVRvRmlyc3RJblZpZXdQb3J0PzogYm9vbGVhbixcbiAgICBwYXN0ZVRvRmlyc3RJbnN0YW5jZT86IGJvb2xlYW5cbiAgfTtcbiAgLyoqXG4gICAqIERpc2FibGUvRW5hYmxlIHBvc3NpYmlsaXR5IHRvIHVwbG9hZCBkaXJlY3Rvcmllcy5cbiAgICovXG4gIGRpc2FibGVEaXJlY3RvcnlVcGxvYWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogRW5hYmxlL0Rpc2FibGUgTWluaSBVcGxvYWRlclxuICAgKi9cbiAgbWluaVVwbG9hZGVyPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEVuYWJsZS9EaXNhYmxlIHBvc3NpYmlsaXR5IHRvIG11bHRpcGxlIGZpbGUgdXBsb2FkXG4gICAqL1xuICBtdWx0aXBsZUZpbGVVcGxvYWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogU2V0IHlvdXIgb3duIEdvb2dsZSBEcml2ZSBQaWNrZXIgQXBwIElELiBEZWZhdWx0cyB0byBGaWxlc3RhY2sncy5cbiAgICogVGhpcyBpcyB5b3VyIFByb2plY3QgTnVtYmVyIGZyb20gdGhlIEdvb2dsZSBDbG91ZCBjb25zb2xlLlxuICAgKi9cbiAgZ29vZ2xlRHJpdmVBcHBJRD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJDcm9wT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBNYWludGFpbiBhc3BlY3QgcmF0aW8gZm9yIGNyb3Agc2VsZWN0aW9uLiAoZS5nLiAxNi85LCA4MDAvNjAwKS5cbiAgICovXG4gIGFzcGVjdFJhdGlvPzogbnVtYmVyO1xuICAvKipcbiAgICogRm9yY2UgYWxsIGltYWdlcyB0byBiZSBjcm9wcGVkIGJlZm9yZSB1cGxvYWRpbmcuXG4gICAqL1xuICBmb3JjZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBdXRvIGNyb3AgYXJlYSB2YWx1ZSBiZXR3ZWVuIDAgYW5kIDEuXG4gICAqL1xuICBhdXRvQ3JvcEFyZWE/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyVHJhbnNmb3JtYXRpb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIEVuYWJsZSBjcm9wLiBEZWZhdWx0cyB0byBgdHJ1ZWAuXG4gICAqL1xuICBjcm9wPzogYm9vbGVhbiB8IFBpY2tlckNyb3BPcHRpb25zO1xuICAvKipcbiAgICogRW5hYmxlIGNpcmNsZSBjcm9wLiBEaXNhYmxlZCBpZiBjcm9wLmFzcGVjdFJhdGlvIGlzIGRlZmluZWQgYW5kIG5vdCAxLiBDb252ZXJ0cyB0byBQTkcuIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICovXG4gIGNpcmNsZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBFbmFibGUgaW1hZ2Ugcm90YXRpb24uIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICovXG4gIHJvdGF0ZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEdsb2JhbCBmb3JjZSBjcm9wIG9wdGlvbi4gQ2FuIGJlIHVzZSBpZSB3aXRoIGNpcmNsZVxuICAgKi9cbiAgZm9yY2U/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlckFjY2VwdEZuT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBQcm92aWRlZCBhY2NlcHQgc3RyaW5nXG4gICAqL1xuICBhY2NlcHQ6IHN0cmluZ1tdO1xuICAvKipcbiAgICogQWNjZXB0IHN0cmluZyBjb252ZXJ0ZWQgdG8gbWltZXR5cGVcbiAgICovXG4gIGFjY2VwdE1pbWU6IHN0cmluZ1tdO1xuICAvKipcbiAgICogTWltZXR5cGUgYmFzZWQgbWFnaWMgYnl0ZXNcbiAgICoge0BsaW5rIGh0dHBzOi8vZmlsZXN0YWNrLmdpdGh1Yi5pby9maWxlc3RhY2stanMvZ2xvYmFscy5odG1sI2dldG1pbWV0eXBlfVxuICAgKi9cbiAgbWltZUZyb21NYWdpY0J5dGVzOiBQcm9taXNlPHN0cmluZz47XG4gIC8qKlxuICAgKiBNaW1ldHlwZSBiYXNlZCBvbiBmaWxlIGV4dGVuc2lvblxuICAgKiB7QGxpbmsgaHR0cHM6Ly9maWxlc3RhY2suZ2l0aHViLmlvL2ZpbGVzdGFjay1qcy9nbG9iYWxzLmh0bWwjZXh0ZW5zaW9udG9taW1lfVxuICAgKi9cbiAgbWltZUZyb21FeHRlbnNpb246IHN0cmluZztcbn1cblxuLyoqXG4gKiBAcHJpdmF0ZVxuICogQSBzeW5jaHJvbm91cy1sb29raW5nIHdyYXBwZXIgZm9yIGxvYWRpbmcgdGhlIHBpY2tlciBhbmQgY2FsbGluZyBpdHMgbWV0aG9kcy5cbiAqIFRoaXMgaXMgY3VycmVudGx5IG5lZWRlZCBiZWNhdXNlIHRoZSBwaWNrZXIgbW9kdWxlIGlzIGxvYWRlZCBhc3luY2hyb25vdXNseS5cbiAqIEV2ZW50dWFsbHkgd2Ugc2hvdWxkIG9mZmVyIGEgYnVuZGxlIHdpdGggdGhlIHBpY2tlciBtb2R1bGUgaW5jbHVkZWQuXG4gKi9cbmNsYXNzIFBpY2tlckxvYWRlciB7XG5cbiAgcHJpdmF0ZSBfaW5pdGlhbGl6ZWQ6IFByb21pc2U8UGlja2VySW5zdGFuY2U+O1xuICBjb25zdHJ1Y3RvcihjbGllbnQ6IENsaWVudCwgb3B0aW9ucz86IFBpY2tlck9wdGlvbnMpIHtcbiAgICBjb25zdCB2YWxpZGF0ZVJlcyA9IGdldFZhbGlkYXRvcihQaWNrZXJQYXJhbXNTY2hlbWEpKG9wdGlvbnMpO1xuXG4gICAgaWYgKHZhbGlkYXRlUmVzLmVycm9ycy5sZW5ndGgpIHtcbiAgICAgIHZhbGlkYXRlUmVzLmVycm9ycy5mb3JFYWNoKGVycm9yID0+IHtcbiAgICAgICAgaWYgKGVycm9yLnBhdGguaW5jbHVkZXMoJ2Zyb21Tb3VyY2VzJykpIHtcbiAgICAgICAgICBjb25zb2xlLndhcm4oYFdhcm5pbmc6IEludmFsaWQgc291cmNlIFxcXCIke2Vycm9yLmluc3RhbmNlfVxcXCIgZm91bmQgYW5kIHJlbW92ZWQhYCk7XG4gICAgICAgICAgb3B0aW9ucy5mcm9tU291cmNlcyA9IG9wdGlvbnMuZnJvbVNvdXJjZXMuZmlsdGVyKHNvdXJjZSA9PiBzb3VyY2UgIT09IGVycm9yLmluc3RhbmNlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRmlsZXN0YWNrRXJyb3IoYEludmFsaWQgcGlja2VyIHBhcmFtc2AsIHZhbGlkYXRlUmVzLmVycm9ycywgRmlsZXN0YWNrRXJyb3JUeXBlLlZBTElEQVRJT04pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIGlmICghb3B0aW9ucy5mcm9tU291cmNlcy5sZW5ndGgpIHtcbiAgICAgICAgZGVsZXRlIG9wdGlvbnMuZnJvbVNvdXJjZXM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5faW5pdGlhbGl6ZWQgPSB0aGlzLmxvYWRNb2R1bGUoY2xpZW50LCBvcHRpb25zKTtcbiAgfVxuXG4gIGFzeW5jIG9wZW4oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgcGlja2VyID0gYXdhaXQgdGhpcy5faW5pdGlhbGl6ZWQ7XG4gICAgYXdhaXQgcGlja2VyLm9wZW4oKTtcbiAgfVxuXG4gIGFzeW5jIGNyb3AoZmlsZXM6IGFueVtdKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgcGlja2VyID0gYXdhaXQgdGhpcy5faW5pdGlhbGl6ZWQ7XG4gICAgYXdhaXQgcGlja2VyLmNyb3AoZmlsZXMpO1xuICB9XG5cbiAgYXN5bmMgY2xvc2UoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgcGlja2VyID0gYXdhaXQgdGhpcy5faW5pdGlhbGl6ZWQ7XG4gICAgYXdhaXQgcGlja2VyLmNsb3NlKCk7XG4gIH1cblxuICBhc3luYyBjYW5jZWwoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgcGlja2VyID0gYXdhaXQgdGhpcy5faW5pdGlhbGl6ZWQ7XG4gICAgYXdhaXQgcGlja2VyLmNhbmNlbCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBsb2FkTW9kdWxlKGNsaWVudDogQ2xpZW50LCBvcHRpb25zPzogUGlja2VyT3B0aW9ucyk6IFByb21pc2U8UGlja2VySW5zdGFuY2U+IHtcbiAgICBjb25zdCB7IHNlc3Npb246IHsgdXJsczogeyBwaWNrZXJVcmw6IHVybCB9IH0gfSA9IGNsaWVudDtcbiAgICBjb25zdCBQaWNrZXIgPSBhd2FpdCBsb2FkTW9kdWxlKEZJTEVTVEFDS19NT0RVTEVTLlBJQ0tFUiwgdXJsKTtcbiAgICByZXR1cm4gbmV3IFBpY2tlcihjbGllbnQsIG9wdGlvbnMpO1xuICB9XG59XG5cbi8qKlxuICogTG9hZHMgYW5kIGNyZWF0ZXMgcGlja2VyIGluc3RhbmNlXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSBjbGllbnRcbiAqIEBwYXJhbSBvcHRpb25zXG4gKi9cbmV4cG9ydCBjb25zdCBwaWNrZXIgPSAoY2xpZW50OiBDbGllbnQsIG9wdGlvbnM/OiBQaWNrZXJPcHRpb25zKTogUGlja2VySW5zdGFuY2UgPT4ge1xuICByZXR1cm4gbmV3IFBpY2tlckxvYWRlcihjbGllbnQsIG9wdGlvbnMpO1xufTtcbiJdfQ==
|
|
149
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvcGlja2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRzs7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRzFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUErRC9ELE1BQU0sQ0FBTixJQUFZLGVBR1g7QUFIRCxXQUFZLGVBQWU7SUFDekIsNEJBQVMsQ0FBQTtJQUNULDhCQUFVLENBQUE7QUFDWixDQUFDLEVBSFcsZUFBZSxLQUFmLGVBQWUsUUFHMUI7QUFtSEQsTUFBTSxDQUFOLElBQVksaUJBSVg7QUFKRCxXQUFZLGlCQUFpQjtJQUMzQixzQ0FBaUIsQ0FBQTtJQUNqQix3Q0FBbUIsQ0FBQTtJQUNuQiwwQ0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBSlcsaUJBQWlCLEtBQWpCLGlCQUFpQixRQUk1QjtBQXlsQkQ7Ozs7O0dBS0c7QUFDSDtJQUdFLHNCQUFZLE1BQWMsRUFBRSxPQUF1QjtRQUNqRCxJQUFNLFdBQVcsR0FBRyxZQUFZLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUU5RCxJQUFJLFdBQVcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1lBQzdCLFdBQVcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFVBQUEsS0FBSztnQkFDOUIsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRTtvQkFDdEMsT0FBTyxDQUFDLElBQUksQ0FBQyxvQ0FBNkIsS0FBSyxDQUFDLFFBQVEsMEJBQXVCLENBQUMsQ0FBQztvQkFDakYsT0FBTyxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxVQUFBLE1BQU0sSUFBSSxPQUFBLE1BQU0sS0FBSyxLQUFLLENBQUMsUUFBUSxFQUF6QixDQUF5QixDQUFDLENBQUM7aUJBQ3ZGO3FCQUFNO29CQUNMLE1BQU0sSUFBSSxjQUFjLENBQUMsdUJBQXVCLEVBQUUsV0FBVyxDQUFDLE1BQU0sRUFBRSxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztpQkFDdEc7WUFDSCxDQUFDLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRTtnQkFDL0IsT0FBTyxPQUFPLENBQUMsV0FBVyxDQUFDO2FBQzVCO1NBQ0Y7UUFFRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFSywyQkFBSSxHQUFWOzs7Ozs0QkFDaUIscUJBQU0sSUFBSSxDQUFDLFlBQVksRUFBQTs7d0JBQWhDLE1BQU0sR0FBRyxTQUF1Qjt3QkFDdEMscUJBQU0sTUFBTSxDQUFDLElBQUksRUFBRSxFQUFBOzt3QkFBbkIsU0FBbUIsQ0FBQzs7Ozs7S0FDckI7SUFFSywyQkFBSSxHQUFWLFVBQVcsS0FBWTs7Ozs7NEJBQ04scUJBQU0sSUFBSSxDQUFDLFlBQVksRUFBQTs7d0JBQWhDLE1BQU0sR0FBRyxTQUF1Qjt3QkFDdEMscUJBQU0sTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBQTs7d0JBQXhCLFNBQXdCLENBQUM7Ozs7O0tBQzFCO0lBRUssNEJBQUssR0FBWDs7Ozs7NEJBQ2lCLHFCQUFNLElBQUksQ0FBQyxZQUFZLEVBQUE7O3dCQUFoQyxNQUFNLEdBQUcsU0FBdUI7d0JBQ3RDLHFCQUFNLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBQTs7d0JBQXBCLFNBQW9CLENBQUM7Ozs7O0tBQ3RCO0lBRUssNkJBQU0sR0FBWjs7Ozs7NEJBQ2lCLHFCQUFNLElBQUksQ0FBQyxZQUFZLEVBQUE7O3dCQUFoQyxNQUFNLEdBQUcsU0FBdUI7d0JBQ3RDLHFCQUFNLE1BQU0sQ0FBQyxNQUFNLEVBQUUsRUFBQTs7d0JBQXJCLFNBQXFCLENBQUM7Ozs7O0tBQ3ZCO0lBRWEsaUNBQVUsR0FBeEIsVUFBeUIsTUFBYyxFQUFFLE9BQXVCOzs7Ozs7d0JBQ3hCLEdBQUcsR0FBUyxNQUFNLHVCQUFmLENBQWdCO3dCQUMxQyxxQkFBTSxVQUFVLENBQUMsaUJBQWlCLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxFQUFBOzt3QkFBeEQsTUFBTSxHQUFHLFNBQStDO3dCQUM5RCxzQkFBTyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLEVBQUM7Ozs7S0FDcEM7SUFDSCxtQkFBQztBQUFELENBaERBLEFBZ0RDLElBQUE7QUFFRDs7Ozs7O0dBTUc7QUFDSCxNQUFNLENBQUMsSUFBTSxNQUFNLEdBQUcsVUFBQyxNQUFjLEVBQUUsT0FBdUI7SUFDNUQsT0FBTyxJQUFJLFlBQVksQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDM0MsQ0FBQyxDQUFDIiwiZmlsZSI6ImxpYi9waWNrZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE4IGJ5IEZpbGVzdGFja1xuICogU29tZSByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IGxvYWRNb2R1bGUsIEZJTEVTVEFDS19NT0RVTEVTIH0gZnJvbSAnQGZpbGVzdGFjay9sb2FkZXInO1xuaW1wb3J0IHsgRmlsZXN0YWNrRXJyb3IsIEZpbGVzdGFja0Vycm9yVHlwZSB9IGZyb20gJy4vLi4vZmlsZXN0YWNrX2Vycm9yJztcbmltcG9ydCB7IENsaWVudCB9IGZyb20gJy4vY2xpZW50JztcbmltcG9ydCB7IEZTUHJvZ3Jlc3NFdmVudCwgVXBsb2FkT3B0aW9ucywgV29ya2Zsb3dDb25maWcgfSBmcm9tICcuL2FwaS91cGxvYWQvdHlwZXMnO1xuaW1wb3J0IHsgZ2V0VmFsaWRhdG9yLCBQaWNrZXJQYXJhbXNTY2hlbWEgfSBmcm9tICcuLy4uL3NjaGVtYSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VySW5zdGFuY2Uge1xuICAvKipcbiAgICogQ2xvc2UgcGlja2VyLiBUaGlzIG9wZXJhdGlvbiBpcyBpZGVtcG90ZW50LlxuICAgKi9cbiAgY2xvc2U6ICgpID0+IFByb21pc2U8dm9pZD47XG5cbiAgLyoqXG4gICAqIENhbmNlbCBwaWNrZXIgdXBsb2Fkcy4gVGhpcyBvcGVyYXRpb24gaXMgaWRlbXBvdGVudC5cbiAgICovXG4gIGNhbmNlbDogKCkgPT4gUHJvbWlzZTx2b2lkPjtcblxuICAvKipcbiAgICogT3BlbiBwaWNrZXIuIFRoaXMgb3BlcmF0aW9uIGlzIGlkZW1wb3RlbnQuXG4gICAqL1xuICBvcGVuOiAoKSA9PiBQcm9taXNlPHZvaWQ+O1xuXG4gIC8qKlxuICAgKiBTcGVjaWZ5IGEgbGlzdCBvZiBmaWxlcyB0byBvcGVuIGluIHRoZSBwaWNrZXIgZm9yIGNyb3BwaW5nXG4gICAqXG4gICAqICMjIyBFeGFtcGxlXG4gICAqXG4gICAqIGBgYGpzXG4gICAqIC8vIDxpbnB1dCBpZD1cImZpbGVTZWxlY3RcIiB0eXBlPVwiZmlsZVwiPlxuICAgKlxuICAgKiBjb25zdCBpbnB1dEVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ZpbGVTZWxlY3QnKTtcbiAgICogY29uc3QgcGlja2VyID0gY2xpZW50LnBpY2tlcih7XG4gICAqICAgb25VcGxvYWREb25lOiByZXMgPT4gY29uc29sZS5sb2cocmVzKSxcbiAgICogfSk7XG4gICAqXG4gICAqIGlucHV0RWwuYWRkRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgKGUpID0+IHtcbiAgICogICBwaWNrZXIuY3JvcChlLnRhcmdldC5maWxlcyk7XG4gICAqIH0pO1xuICAgKlxuICAgKiAvLyBPciBwYXNzIGFuIGFycmF5IG9mIFVSTCBzdHJpbmdzXG4gICAqIGNvbnN0IHVybHMgPSBbXG4gICAqICAgJ2h0dHBzOi8vZDF3dHFhZmZhYWo2M3ouY2xvdWRmcm9udC5uZXQvaW1hZ2VzL2ZveF9pbl9mb3Jlc3QxLmpwZycsXG4gICAqICAgJ2h0dHBzOi8vZDF3dHFhZmZhYWo2M3ouY2xvdWRmcm9udC5uZXQvaW1hZ2VzL3NhaWwuanBnJyxcbiAgICogXTtcbiAgICogcGlja2VyLmNyb3AodXJscyk7XG4gICAqIGBgYFxuICAgKi9cbiAgY3JvcDogKGZpbGVzOiBhbnlbXSkgPT4gUHJvbWlzZTx2b2lkPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJDcm9wcGVkRGF0YSB7XG4gIGNyb3BBcmVhOiB7XG4gICAgLyoqXG4gICAgICogW3gsIHldXG4gICAgICovXG4gICAgcG9zaXRpb246IFtudW1iZXIsIG51bWJlcl07XG4gICAgLyoqXG4gICAgICogW3dpZHRoLCBoZWlnaHRdXG4gICAgICovXG4gICAgc2l6ZTogW251bWJlciwgbnVtYmVyXTtcbiAgfTtcbiAgICAvKipcbiAgICAgKiBbd2lkdGgsIGhlaWdodF1cbiAgICAgKi9cbiAgb3JpZ2luYWxJbWFnZVNpemU6IFtudW1iZXIsIG51bWJlcl07XG59XG5cbmV4cG9ydCBlbnVtIFJvdGF0ZURpcmVjdGlvbiB7XG4gIGN3ID0gJ0NXJyxcbiAgY2N3PSAnQ0NXJyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJSb3RhdGVkRGF0YSB7XG4gIC8qKlxuICAgKiBBbW91bnQgcm90YXRlZCBpbiBkZWdyZWVzLlxuICAgKi9cbiAgdmFsdWU6IG51bWJlcjtcbiAgLyoqXG4gICAqIENhbiBiZSBDVyBvciBDQ1cgKGNsb2Nrd2lzZSAvIGNvdW50ZXItY2xvY2t3aXNlKVxuICAgKi9cbiAgZGlyZWN0aW9uOiBSb3RhdGVEaXJlY3Rpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyRmlsZU1ldGFkYXRhIHtcbiAgLyoqXG4gICAqIFRoZSBjbG91ZCBjb250YWluZXIgZm9yIHRoZSB1cGxvYWRlZCBmaWxlLlxuICAgKi9cbiAgY29udGFpbmVyPzogc3RyaW5nO1xuICAvKipcbiAgICogUG9zaXRpb24gYW5kIHNpemUgaW5mb3JtYXRpb24gZm9yIGNyb3BwZWQgaW1hZ2VzLlxuICAgKi9cbiAgY3JvcHBlZD86IFBpY2tlckNyb3BwZWREYXRhO1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgZmlsZS5cbiAgICovXG4gIGZpbGVuYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBGaWxlc3RhY2sgaGFuZGxlIGZvciB0aGUgdXBsb2FkZWQgZmlsZS5cbiAgICovXG4gIGhhbmRsZTogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIGhhc2gtcHJlZml4ZWQgY2xvdWQgc3RvcmFnZSBwYXRoLlxuICAgKi9cbiAga2V5Pzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIE1JTUUgdHlwZSBvZiB0aGUgZmlsZS5cbiAgICovXG4gIG1pbWV0eXBlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBQcm9wZXJ0aWVzIG9mIHRoZSBsb2NhbCBiaW5hcnkgZmlsZS4gQWxzbyBzZWUgdGhlIHBpY2sgb3B0aW9uIGBleHBvc2VPcmlnaW5hbEZpbGVgIGlmIHlvdSB3YW50IHRoZSB1bmRlcmx5aW5nIGBGaWxlYCBvYmplY3QuXG4gICAqL1xuICBvcmlnaW5hbEZpbGU/OiBvYmplY3QgfCBGaWxlO1xuICAvKipcbiAgICogVGhlIG9yaWdpbiBvZiB0aGUgZmlsZSwgZS5nLiAvRm9sZGVyL2ZpbGUuanBnLlxuICAgKi9cbiAgb3JpZ2luYWxQYXRoOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEaXJlY3Rpb24gYW5kIHZhbHVlIGluZm9ybWF0aW9uIGZvciByb3RhdGVkIGltYWdlcy5cbiAgICovXG4gIHJvdGF0ZWQ/OiBQaWNrZXJSb3RhdGVkRGF0YTtcbiAgLyoqXG4gICAqIFNpemUgaW4gYnl0ZXMgb2YgdGhlIHVwbG9hZGVkIGZpbGUuXG4gICAqL1xuICBzaXplOiBudW1iZXI7XG4gIC8qKlxuICAgKiBUaGUgc291cmNlIGZyb20gd2hlcmUgdGhlIGZpbGUgd2FzIHBpY2tlZC5cbiAgICovXG4gIHNvdXJjZTogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGVzIEZpbGVzdGFjayB0cmFuc2l0IHN0YXR1cy5cbiAgICovXG4gIHN0YXR1cz86IHN0cmluZztcbiAgLyoqXG4gICAqIEEgdXVpZCBmb3IgdHJhY2tpbmcgdGhpcyBmaWxlIGluIGNhbGxiYWNrcy5cbiAgICovXG4gIHVwbG9hZElkOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgRmlsZXN0YWNrIENETiBVUkwgZm9yIHRoZSB1cGxvYWRlZCBmaWxlLlxuICAgKi9cbiAgdXJsOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBbHQgdGV4dCBmb3IgaW1hZ2VzXG4gICAqL1xuICBhbHQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDdXN0b21BdXRoVGV4dE9wdGlvbnMge1xuICBba2V5OiBzdHJpbmddOiB7XG4gICAgdG9wPzogc3RyaW5nW10sXG4gICAgYm90dG9tPzogc3RyaW5nW11cbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJSZXNwb25zZSB7XG4gIGZpbGVzVXBsb2FkZWQ6IFBpY2tlckZpbGVNZXRhZGF0YVtdO1xuICBmaWxlc0ZhaWxlZDogUGlja2VyRmlsZU1ldGFkYXRhW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyRmlsZUNhbGxiYWNrIHtcbiAgKGZpbGU6IFBpY2tlckZpbGVNZXRhZGF0YSk6IHZvaWQgfCBQcm9taXNlPGFueT47XG59XG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlckZpbGVXaXRoVG9rZW5DYWxsYmFjayB7XG4gIChmaWxlOiBQaWNrZXJGaWxlTWV0YWRhdGEsIHRva2VuPzoge3BhdXNlPzogKCkgPT4gdm9pZCwgcmVzdW1lPzogKCkgPT4gdm9pZCwgY2FuY2VsPzogKCkgPT4gdm9pZH0pOiB2b2lkIHwgUHJvbWlzZTxhbnk+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlckZpbGVDYW5jZWxDYWxsYmFjayB7XG4gIChmaWxlOiBQaWNrZXJGaWxlTWV0YWRhdGEpOiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlckZpbGVFcnJvckNhbGxiYWNrIHtcbiAgKGZpbGU6IFBpY2tlckZpbGVNZXRhZGF0YSwgZXJyb3I6IEVycm9yKTogdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJGaWxlUHJvZ3Jlc3NDYWxsYmFjayB7XG4gIChmaWxlOiBQaWNrZXJGaWxlTWV0YWRhdGEsIGV2ZW50OiBGU1Byb2dyZXNzRXZlbnQpOiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlclVwbG9hZFN0YXJ0ZWRDYWxsYmFjayB7XG4gIChmaWxlczogUGlja2VyRmlsZU1ldGFkYXRhW10pOiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlclVwbG9hZERvbmVDYWxsYmFjayB7XG4gIChmaWxlczogUGlja2VyUmVzcG9uc2UpOiB2b2lkO1xufVxuXG5leHBvcnQgZW51bSBQaWNrZXJEaXNwbGF5TW9kZSB7XG4gIGlubGluZSA9ICdpbmxpbmUnLFxuICBvdmVybGF5ID0gJ292ZXJsYXknLFxuICBkcm9wUGFuZSA9ICdkcm9wUGFuZScsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyRHJvcFBhbmVPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRvZ2dsZSB0aGUgY3JvcCBVSSBmb3IgZHJvcHBlZCBmaWxlcy5cbiAgICovXG4gIGNyb3BGaWxlcz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDdXN0b21pemUgdGhlIHRleHQgY29udGVudCBpbiB0aGUgZHJvcCBwYW5lLlxuICAgKi9cbiAgY3VzdG9tVGV4dD86IHN0cmluZztcbiAgLyoqXG4gICAqIERpc2FibGUgdGhlIGZpbGUgaW5wdXQgb24gY2xpY2suIFRoaXMgZG9lcyBub3QgZGlzYWJsZSB0aGUgYG9uQ2xpY2tgIGNhbGxiYWNrLlxuICAgKi9cbiAgZGlzYWJsZUNsaWNrPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRvZ2dsZSB0aGUgZnVsbC1wYWdlIGRyb3Agem9uZSBvdmVybGF5LlxuICAgKi9cbiAgb3ZlcmxheT86IGJvb2xlYW47XG4gIG9uRHJhZ0VudGVyPzogKGV2dDogRHJhZ0V2ZW50KSA9PiB2b2lkO1xuICBvbkRyYWdMZWF2ZT86ICgpID0+IHZvaWQ7XG4gIG9uRHJhZ092ZXI/OiAoZXZ0OiBEcmFnRXZlbnQpID0+IHZvaWQ7XG4gIG9uRHJvcD86IChldnQ6IERyYWdFdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIGBvblN1Y2Nlc3NgIG11c3QgYmUgdXNlZCBpbnN0ZWFkIG9mIGBvblVwbG9hZERvbmVgLiBUaGUgZHJvcCBwYW5lIHVzZXMgaXRzIG93biBjYWxsYmFja3MgZm9yIGNvbXBhdGliaWxpdHkgcHVycG9zZXMuIFRoaXMgbWlnaHQgZXZlbnR1YWxseSBjaGFuZ2UuXG4gICAqL1xuICBvblN1Y2Nlc3M/OiAoZmlsZXM6IFBpY2tlckZpbGVNZXRhZGF0YVtdKSA9PiB2b2lkO1xuICBvbkVycm9yPzogKGZpbGVzOiBQaWNrZXJGaWxlTWV0YWRhdGFbXSkgPT4gdm9pZDtcbiAgb25Qcm9ncmVzcz86IChwZXJjZW50OiBudW1iZXIpID0+IHZvaWQ7XG4gIG9uQ2xpY2s/OiAoZXZ0OiBhbnkpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBUb2dnbGUgaWNvbiBlbGVtZW50IGluIGRyb3AgcGFuZS5cbiAgICovXG4gIHNob3dJY29uPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRvZ2dsZSB1cGxvYWQgcHJvZ3Jlc3MgZGlzcGxheS5cbiAgICovXG4gIHNob3dQcm9ncmVzcz86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyU3RvcmVPcHRpb25zIHtcbiAgLyoqXG4gICAqIExvY2F0aW9uIGZvciBzdG9yZWQgZmlsZS4gT25lIG9mICdzMycsICdnY3MnLCAnYXp1cmUnLCAncmFja3NwYWNlJywgb3IgJ2Ryb3Bib3gnLlxuICAgKi9cbiAgbG9jYXRpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTcGVjaWZ5IHN0b3JhZ2UgY29udGFpbmVyLlxuICAgKi9cbiAgY29udGFpbmVyPzogc3RyaW5nO1xuICAvKipcbiAgICogU2V0IGNvbnRhaW5lciBwYXRoLiBJbmRpY2F0ZSBhIGZvbGRlciBieSBhZGRpbmcgYSB0cmFpbGluZyBzbGFzaC4gV2l0aG91dCBhIHRyYWlsaW5nIHNsYXNoIGFsbCBmaWxlcyB3aWxsIGJlIHN0b3JlZCB0byB0aGUgc2FtZSBvYmplY3QuXG4gICAqL1xuICBwYXRoPzogc3RyaW5nO1xuICAvKipcbiAgICogU3BlY2lmeSBTMyByZWdpb24uXG4gICAqL1xuICByZWdpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTMyBjb250YWluZXIgYWNjZXNzLiAncHVibGljJyBvciAncHJpdmF0ZScuXG4gICAqL1xuICBhY2Nlc3M/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdvcmtmbG93cyBpZHMgdG8gcnVuIGFmdGVyIHVwbG9hZFxuICAgKi9cbiAgd29ya2Zsb3dzPzogc3RyaW5nW10gfCBXb3JrZmxvd0NvbmZpZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlckN1c3RvbVRleHQge1xuICAvLyBBY3Rpb25zXG4gIFVwbG9hZD86IHN0cmluZztcbiAgJ1VwbG9hZCBtb3JlJz86IHN0cmluZztcbiAgJ0Rlc2VsZWN0IEFsbCc/OiBzdHJpbmc7XG4gICdWaWV3L0VkaXQgU2VsZWN0ZWQnPzogc3RyaW5nO1xuICAnU2lnbiBPdXQnPzogc3RyaW5nO1xuXG4gIC8vIFNvdXJjZSBMYWJlbHNcbiAgJ015IERldmljZSc/OiBzdHJpbmc7XG4gICdXZWIgU2VhcmNoJz86IHN0cmluZztcbiAgJ1Rha2UgUGhvdG8nPzogc3RyaW5nO1xuICAnTGluayAoVVJMKSc/OiBzdHJpbmc7XG4gICdSZWNvcmQgVmlkZW8nPzogc3RyaW5nO1xuICAnUmVjb3JkIEF1ZGlvJz86IHN0cmluZztcblxuICAvLyBDdXN0b20gU291cmNlXG4gICdDdXN0b20gU291cmNlJz86IHN0cmluZztcblxuICAvLyBGb290ZXIgVGV4dFxuICBBZGQ/OiBzdHJpbmc7XG4gICdtb3JlIGZpbGUnPzogc3RyaW5nO1xuICAnbW9yZSBmaWxlcyc/OiBzdHJpbmc7XG5cbiAgLy8gQ2xvdWRcbiAgJ0Nvbm5lY3Qge3Byb3ZpZGVyTmFtZX0nPzogc3RyaW5nO1xuICAnU2VsZWN0IEZpbGVzIGZyb20ge3Byb3ZpZGVyTmFtZX0nPzogc3RyaW5nO1xuICAnWW91IG5lZWQgdG8gYXV0aGVudGljYXRlIHdpdGgge3Byb3ZpZGVyTmFtZX0uJz86IHN0cmluZztcbiAgJ0EgbmV3IHBhZ2Ugd2lsbCBvcGVuIHRvIGNvbm5lY3QgeW91ciBhY2NvdW50Lic/OiBzdHJpbmc7XG4gICdXZSBvbmx5IGV4dHJhY3QgaW1hZ2VzIGFuZCBuZXZlciBtb2RpZnkgb3IgZGVsZXRlIHRoZW0uJz86IHN0cmluZztcbiAgJ1RvIGRpc2Nvbm5lY3QgZnJvbSB7cHJvdmlkZXJOYW1lfSBjbGljayBcIlNpZ24gb3V0XCIgYnV0dG9uIGluIHRoZSBtZW51Lic/OiBzdHJpbmc7XG4gICdTaWduIGluIHdpdGggR29vZ2xlJz86IHN0cmluZztcbiAgJ0dvIGJhY2snPzogc3RyaW5nO1xuICAnVGhpcyBmb2xkZXIgaXMgZW1wdHkuJz86IHN0cmluZztcblxuICAvLyBTdW1tYXJ5XG4gIEZpbGVzPzogc3RyaW5nO1xuICBJbWFnZXM/OiBzdHJpbmc7XG4gIFVwbG9hZGVkPzogc3RyaW5nO1xuICBVcGxvYWRpbmc/OiBzdHJpbmc7XG4gIENvbXBsZXRlZD86IHN0cmluZztcbiAgRmlsdGVyPzogc3RyaW5nO1xuICAnQ3JvcHBlZCBJbWFnZXMnPzogc3RyaW5nO1xuICAnRWRpdGVkIEltYWdlcyc/OiBzdHJpbmc7XG4gICdTZWxlY3RlZCBGaWxlcyc/OiBzdHJpbmc7XG4gICdDcm9wIGlzIHJlcXVpcmVkIG9uIGltYWdlcyc/OiBzdHJpbmc7XG5cbiAgLy8gVHJhbnNmb3JtXG4gIENyb3A/OiBzdHJpbmc7XG4gIENpcmNsZT86IHN0cmluZztcbiAgUm90YXRlPzogc3RyaW5nO1xuICBNYXNrPzogc3RyaW5nO1xuICBSZXZlcnQ/OiBzdHJpbmc7XG4gIEVkaXQ/OiBzdHJpbmc7XG4gIFJlc2V0Pzogc3RyaW5nO1xuICBEb25lPzogc3RyaW5nO1xuICBTYXZlPzogc3RyaW5nO1xuICBOZXh0Pzogc3RyaW5nO1xuICAnRWRpdCBJbWFnZSc/OiBzdHJpbmc7XG4gICdUaGlzIGltYWdlIGNhbm5vdCBiZSBlZGl0ZWQnPzogc3RyaW5nO1xuXG4gIC8vIFJldHJ5IG1lc3NhZ2luZ1xuICAnQ29ubmVjdGlvbiBMb3N0Jz86IHN0cmluZztcbiAgJ0ZhaWxlZCBXaGlsZSBVcGxvYWRpbmcnPzogc3RyaW5nO1xuICAnUmV0cnlpbmcgaW4nPzogc3RyaW5nO1xuICAnVHJ5IGFnYWluJz86IHN0cmluZztcbiAgJ1RyeSBub3cnPzogc3RyaW5nO1xuXG4gIC8vIExvY2FsIEZpbGUgU291cmNlXG4gICdEcmFnIGFuZCBEcm9wLCBDb3B5IGFuZCBQYXN0ZSBGaWxlcyc/OiBzdHJpbmc7XG4gICdvciBEcmFnIGFuZCBEcm9wLCBDb3B5IGFuZCBQYXN0ZSBGaWxlcyc/OiBzdHJpbmc7XG4gICdTZWxlY3QgRmlsZXMgdG8gVXBsb2FkJz86IHN0cmluZztcbiAgJ1NlbGVjdCBGcm9tJz86IHN0cmluZztcbiAgJ0Ryb3AgeW91ciBmaWxlcyBhbnl3aGVyZSc/OiBzdHJpbmc7XG5cbiAgLy8gSW5wdXQgcGxhY2Vob2xkZXJzXG4gICdFbnRlciBhIFVSTCc/OiBzdHJpbmc7XG4gICdTZWFyY2ggaW1hZ2VzJz86IHN0cmluZztcblxuICAvLyBXZWJjYW0gU291cmNlXG4gICdXZWJjYW0gRGlzYWJsZWQnPzogc3RyaW5nO1xuICAnV2ViY2FtIE5vdCBTdXBwb3J0ZWQnPzogc3RyaW5nO1xuICAnUGxlYXNlIGVuYWJsZSB5b3VyIHdlYmNhbSB0byB0YWtlIGEgcGhvdG8uJz86IHN0cmluZztcbiAgJ1lvdXIgY3VycmVudCBicm93c2VyIGRvZXMgbm90IHN1cHBvcnQgd2ViY2FtIGZ1bmN0aW9uYWxpdHkuJz86IHN0cmluZztcbiAgJ1dlIHN1Z2dlc3QgdXNpbmcgQ2hyb21lIG9yIEZpcmVmb3guJz86IHN0cmluZztcblxuICAvLyBFcnJvciBOb3RpZmljYXRpb25zXG4gICdGaWxlIHtkaXNwbGF5TmFtZX0gaXMgbm90IGFuIGFjY2VwdGVkIGZpbGUgdHlwZS4gVGhlIGFjY2VwdGVkIGZpbGUgdHlwZXMgYXJlIHt0eXBlc30nPzogc3RyaW5nO1xuICAnRmlsZSB7ZGlzcGxheU5hbWV9IGlzIHRvbyBiaWcuIFRoZSBhY2NlcHRlZCBmaWxlIHNpemUgaXMgbGVzcyB0aGFuIHtyb3VuZEZpbGVTaXplfSc/OiBzdHJpbmc7XG4gICdPdXIgZmlsZSB1cGxvYWQgbGltaXQgaXMge21heEZpbGVzfSB7ZmlsZXNUZXh0fSc/OiBzdHJpbmc7XG4gICdObyBzZWFyY2ggcmVzdWx0cyBmb3VuZCBmb3IgXCJ7c2VhcmNofVwiJz86IHN0cmluZztcbiAgJ0FuIGVycm9yIG9jY3VycmVkLiBQbGVhc2UgdHJ5IGFnYWluLic/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBSZXN0cmljdCBmaWxlIHR5cGVzIHRoYXQgYXJlIGFsbG93ZWQgdG8gYmUgcGlja2VkLiBGb3JtYXRzIGFjY2VwdGVkOlxuICAgKiAgLSAucGRmIDwtIGFueSBmaWxlIGV4dGVuc2lvblxuICAgKiAgLSBpbWFnZS9qcGVnIDwtIGFueSBtaW1lIHR5cGUgY29tbW9ubHkga25vd24gYnkgYnJvd3NlcnNcbiAgICogIC0gaW1hZ2UvKiA8LSBhY2NlcHQgYWxsIHR5cGVzIG9mIGltYWdlc1xuICAgKiAgLSB2aWRlby8qIDwtIGFjY2VwdCBhbGwgdHlwZXMgb2YgdmlkZW8gZmlsZXNcbiAgICogIC0gYXVkaW8vKiA8LSBhY2NlcHQgYWxsIHR5cGVzIG9mIGF1ZGlvIGZpbGVzXG4gICAqICAtIGFwcGxpY2F0aW9uLyogPC0gYWNjZXB0IGFsbCB0eXBlcyBvZiBhcHBsaWNhdGlvbiBmaWxlc1xuICAgKiAgLSB0ZXh0LyogPC0gYWNjZXB0IGFsbCB0eXBlcyBvZiB0ZXh0IGZpbGVzXG4gICAqL1xuICBhY2NlcHQ/OiBzdHJpbmcgfCBzdHJpbmdbXTtcbiAgLyoqXG4gICAqIEN1c3RvbSBhY2NlcHQgY2hlY2sgZnVuY3Rpb25cbiAgICogYGBgamF2YXNjcmlwdFxuICAgKiBhY2NlcHRGbjogKGZpbGUsIG9wdGlvbnMpID0+IHtcbiAgICogIHJldHVybiBvcHRpb25zLm1pbWVGcm9tTWFnaWNCeXRlcyhmaWxlLm9yaWdpbmFsRmlsZSkudGhlbigocmVzKSA9PiB7IC8vIHdlIGNhbiBjaGVjayBtaW1ldHlwZSBmcm9tIG1hZ2ljIGJ5dGVzXG4gICAqICAgIC8vY29uc29sZS5sb2cob3B0aW9ucy5taW1lRnJvbUV4dGVuc2lvbihmaWxlLm9yaWdpbmFsRmlsZS5uYW1lKSk7IC8vIG9yIGNoZWNrIGV4dGVuc2lvbiBmcm9tIGZpbGVzdGFjayBleHRlbnNpb25zIGRhdGFiYXNlXG4gICAqICAgIC8vIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGFjY2VwdCB0aGF0IGZpbGUnKSAvLyB3ZSBjYW4gdGhyb3cgZXhjZXB0aW9uIHRvIGJsb2NrIGZpbGUgdXBsb2FkXG4gICAqICAgIC8vIHJldHVybiBQcm9taXNlLnJlamVjdCgnQ2Fubm90IGFjY2VwdCB0aGF0IGZpbGUnJykgLy8gb3IgcmVqZWN0IGEgcHJvbWlzZVxuICAgKiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG4gICAqICB9KTtcbiAgICogfVxuICAgKiBgYGBcbiAgICovXG4gIGFjY2VwdEZuPzogKFBpY2tlckZpbGVNZXRhZGF0YSwgUGlja2VyQWNjZXB0Rm5PcHRpb25zKSA9PiBQcm9taXNlPHN0cmluZz47XG4gIC8qKlxuICAgKiBQcmV2ZW50IG1vZGFsIGNsb3NlIG9uIHVwbG9hZCBmYWlsdXJlIGFuZCBhbGxvdyB1c2VycyB0byByZXRyeS5cbiAgICovXG4gIGFsbG93TWFudWFsUmV0cnk/OiBib29sZWFuO1xuICAvKipcbiAgICogIFZhbGlkIHNvdXJjZXMgYXJlOlxuICAgKiAgLSBsb2NhbF9maWxlX3N5c3RlbSAtIERlZmF1bHRcbiAgICogIC0gdXJsIC0gRGVmYXVsdFxuICAgKiAgLSBpbWFnZXNlYXJjaCAtIERlZmF1bHRcbiAgICogIC0gZmFjZWJvb2sgLSBEZWZhdWx0XG4gICAqICAtIGluc3RhZ3JhbSAtIERlZmF1bHRcbiAgICogIC0gZ29vZ2xlZHJpdmUgLSBEZWZhdWx0XG4gICAqICAtIGRyb3Bib3ggLSBEZWZhdWx0XG4gICAqICAtIHdlYmNhbSAtIFVzZXMgZGV2aWNlIG1lbnUgb24gbW9iaWxlLiBOb3QgY3VycmVudGx5IHN1cHBvcnRlZCBpbiBTYWZhcmkgYW5kIElFLlxuICAgKiAgLSB2aWRlbyAtIFVzZXMgZGV2aWNlIG1lbnUgb24gbW9iaWxlLiBOb3QgY3VycmVudGx5IHN1cHBvcnRlZCBpbiBTYWZhcmkgYW5kIElFLlxuICAgKiAgLSBhdWRpbyAtIFVzZXMgZGV2aWNlIG1lbnUgb24gbW9iaWxlLiBOb3QgY3VycmVudGx5IHN1cHBvcnRlZCBpbiBTYWZhcmkgYW5kIElFLlxuICAgKiAgLSBib3hcbiAgICogIC0gZ2l0aHViXG4gICAqICAtIGdtYWlsXG4gICAqICAtIGdvb2dsZXBob3Rvc1xuICAgKiAgLSBvbmVkcml2ZVxuICAgKiAgLSBvbmVkcml2ZWZvcmJ1c2luZXNzXG4gICAqICAtIGN1c3RvbXNvdXJjZSAtIENvbmZpZ3VyZSB0aGlzIGluIHlvdXIgRmlsZXN0YWNrIERldiBQb3J0YWwuXG4gICAqICAtIHVuc3BsYXNoXG4gICAqL1xuICBmcm9tU291cmNlcz86IHN0cmluZ1tdO1xuICAvKipcbiAgICogUHJvdmlkZSBkZWZhdWx0IHRleHQgdmFsdWUgZm9yIEltYWdlIFNlYXJjaFxuICAgKiBgYGBqYXZhc2NyaXB0XG4gICAqIHdlYnNlYXJjaDoge1xuICAgKiAgcHJlZGVmaW5lZFRleHQ6ICdTYW1wbGUgdGV4dCdcbiAgICogfVxuICAgKiBgYGBcbiAgICovXG4gIHdlYnNlYXJjaD86IG9iamVjdDtcbiAgLyoqXG4gICAqIENvbnRhaW5lciB3aGVyZSBwaWNrZXIgc2hvdWxkIGJlIGFwcGVuZGVkLiBPbmx5IHJlbGV2YW50IGZvciBgaW5saW5lYCBhbmQgYGRyb3BQYW5lYCBkaXNwbGF5IG1vZGVzLlxuICAgKi9cbiAgY29udGFpbmVyPzogc3RyaW5nIHwgTm9kZTtcblxuICAvKipcbiAgICogVHVybiBvbiBjbGVhbmluZyBKUEVHIGltYWdlIGV4aWYuIE1ldGhvZCBjYW4ga2VlcCBpbWFnZSBvcmllbnRhdGlvbiBvciBjb2xvciBwcm9maWxlc1xuICAgKiBgYGBqYXZhc2NyaXB0XG4gICAqIGNsZWFudXBJbWFnZUV4aWY6IHtcbiAgICogICBrZWVwT3JpZW50YXRpb246IHRydWVcbiAgICogICBrZWVwSUNDYW5kQVBQOiB0cnVlXG4gICAqIH1cbiAgICogYGBgXG4gICAqL1xuICBjbGVhbnVwSW1hZ2VFeGlmPzogYm9vbGVhbiB8IHtcbiAgICBrZWVwT3JpZW50YXRpb24/OiBib29sZWFuLFxuICAgIGtlZXBJQ0NhbmRBUFA/OiBib29sZWFuXG4gIH07XG4gIC8qKlxuICAgKiBDdXN0b21pemUgdGhlIHRleHQgb24gdGhlIGNsb3VkIGF1dGhlbnRpY2F0aW9uIHNjcmVlbiBpbiBQaWNrZXIuXG4gICAqIFVzZSBhIGNsb3VkIHNvdXJjZSBuYW1lIChzZWUge0BsaW5rIFBpY2tlck9wdGlvbnMuZnJvbVNvdXJjZXN9KVxuICAgKiBvciBhICdkZWZhdWx0JyBhcyBhIGtleSwgdGhlbiBwdXQgeW91ciBjdXN0b20gbm90aWNlIG9yIGNvbnNlbnRcbiAgICogdG8gdGhlICd0b3AnIG9yIHRoZSAnYm90dG9tJyBrZXkgdG8gc2hvdyBpdCByZXNwZWN0aXZseSBhYm92ZSBvciB1bmRlciAnQ29ubmVjdCBidXR0b24nLlxuICAgKlxuICAgKiBgYGBqYXZhc2NyaXB0XG4gICAqIGN1c3RvbUF1dGhUZXh0OiB7XG4gICAqICAgLy8gdXNlIGl0IGZvciBldmVyeSBjbG91ZCBhdXRoZW50aWNhdGlvbiBzY3JlZW5cbiAgICogICBkZWZhdWx0OiB7XG4gICAqICAgICB0b3A6IFtcbiAgICogICAgICAgJ2RlZmF1bHQgdG9wIGZpcnN0IGxpbmUnLFxuICAgKiAgICAgICAnZGVmYXVsdCB0b3Agc2Vjb25kIGxpbmUnXG4gICAqICAgICBdLFxuICAgKiAgICAgYm90dG9tOiBbXG4gICAqICAgICAgICdkZWZhdWx0IGJvdHRvbSBmaXJzdCBsaW5lJyxcbiAgICogICAgICAgJ2RlZmF1bHQgYm90dG9tIHNlY29uZCBsaW5lJ1xuICAgKiAgICAgXVxuICAgKiAgIH0sXG4gICAqICAgLy8gb3ZlcnJpZGUgYSBkZWZhdWx0IGJvdHRvbSB0ZXh0IGZvciBvbmx5IGdtYWlsXG4gICAqICAgZ21haWw6IHtcbiAgICogICAgIGJvdHRvbTogW1xuICAgKiAgICAgICAnV2UgbmVlZCB5b3VyIHBlcm1pc3Npb24gdG8gYWNjZXNzIHlvdXIgZGF0YSBhbmQnLFxuICAgKiAgICAgICAncHJvY2VzcyBpdCB3aXRoIG91ciBtYWNoaW5lIGxlYXJuaW5nIHN5c3RlbS4nXG4gICAqICAgICBdXG4gICAqICAgfVxuICAgKiB9XG4gICAqIGBgYFxuICAgKi9cbiAgY3VzdG9tQXV0aFRleHQ/OiBDdXN0b21BdXRoVGV4dE9wdGlvbnM7XG4gIC8qKlxuICAgKiBQaWNrZXIgZGlzcGxheSBtb2RlLCBvbmUgb2YgYCdpbmxpbmUnYCwgYCdvdmVybGF5J2AsIGAnZHJvcFBhbmUnYCAtIGRlZmF1bHQgaXMgYCdvdmVybGF5J2AuXG4gICAqL1xuICBkaXNwbGF5TW9kZT86IFBpY2tlckRpc3BsYXlNb2RlO1xuICAvKipcbiAgICogTWF4IG51bWJlciBvZiBmaWxlcyB0byB1cGxvYWQgY29uY3VycmVudGx5LiBEZWZhdWx0IGlzIDQuXG4gICAqL1xuICBjb25jdXJyZW5jeT86IG51bWJlcjtcbiAgLyoqXG4gICAqIFNldCB0aGUgZGVmYXVsdCBjb250YWluZXIgZm9yIHlvdXIgY3VzdG9tIHNvdXJjZS5cbiAgICovXG4gIGN1c3RvbVNvdXJjZUNvbnRhaW5lcj86IHN0cmluZztcbiAgLyoqXG4gICAqIFNldCB0aGUgZGVmYXVsdCBwYXRoIGZvciB5b3VyIGN1c3RvbSBzb3VyY2UgY29udGFpbmVyLlxuICAgKi9cbiAgY3VzdG9tU291cmNlUGF0aD86IHN0cmluZztcbiAgLyoqXG4gICAqIFNldCB0aGUgZGlzcGxheSBuYW1lIGZvciB0aGUgY3VzdG9tIHNvdXJjZS5cbiAgICovXG4gIGN1c3RvbVNvdXJjZU5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBQcm92aWRlIGFuIG9iamVjdCBmb3IgbWFwcGluZyBwaWNrZXIgc3RyaW5ncyB0byB5b3VyIG93biBzdHJpbmdzLlxuICAgKiBTdHJpbmdzIHN1cnJvdW5kZWQgYnkgYnJhY2tldHMsIGB7IGZvb2JhciB9YCwgYXJlIGludGVycG9sYXRlZCB3aXRoIHJ1bnRpbWUgdmFsdWVzLlxuICAgKiBTb3VyY2UgbGFiZWxzIGFyZSBhbHNvIGF2YWlsYWJsZSB0byBvdmVycmlkZSwgZS5nLiBGYWNlYm9vaywgSW5zdGFncmFtLCBEcm9wYm94LCBldGMuXG4gICAqL1xuICBjdXN0b21UZXh0PzogUGlja2VyQ3VzdG9tVGV4dDtcbiAgLyoqXG4gICAqIHNldCBzdXBwb3J0IGVtYWlsIHRvIGRpc3BsYXkgaW4gY2FzZSBvZiBlcnJvclxuICAgKi9cbiAgc3VwcG9ydEVtYWlsPzogc3RyaW5nO1xuICAvKipcbiAgICogV2hlbiB0cnVlIHJlbW92ZXMgdGhlIGhhc2ggcHJlZml4IG9uIHN0b3JlZCBmaWxlcy5cbiAgICovXG4gIGRpc2FibGVTdG9yYWdlS2V5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFdoZW4gdHJ1ZSByZW1vdmVzIGFiaWxpdHkgdG8gZWRpdCBpbWFnZXMuXG4gICAqL1xuICBkaXNhYmxlVHJhbnNmb3JtZXI/OiBib29sZWFuO1xuICAvKipcbiAgICogRGlzYWJsZXMgYWx0IHRleHQgdmlldy9lZGl0IGluIHRoZSBzdW1tYXJ5IHNjcmVlbi5cbiAgICovXG4gIGRpc2FibGVBbHRUZXh0PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERpc2FibGVzIGxvY2FsIGltYWdlIHRodW1ibmFpbCBwcmV2aWV3cyBpbiB0aGUgc3VtbWFyeSBzY3JlZW4uXG4gICAqL1xuICBkaXNhYmxlVGh1bWJuYWlscz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb25maWd1cmUgdGhlIGRyb3AgcGFuZSBiZWhhdmlvciwgaS5lLiB3aGVuIGBkaXNwbGF5TW9kZWAgaXMgYGRyb3BQYW5lYC5cbiAgICovXG4gIGRyb3BQYW5lPzogUGlja2VyRHJvcFBhbmVPcHRpb25zO1xuICAvKipcbiAgICogV2hlbiB0cnVlIHRoZSBgb3JpZ2luYWxGaWxlYCBtZXRhZGF0YSB3aWxsIGJlIHRoZSBhY3R1YWwgYEZpbGVgIG9iamVjdCBpbnN0ZWFkIG9mIGEgUE9KT1xuICAgKi9cbiAgZXhwb3NlT3JpZ2luYWxGaWxlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRvZ2dsZSB0aGUgZHJvcCB6b25lIHRvIGJlIGFjdGl2ZSBvbiBhbGwgdmlld3MuIERlZmF1bHQgaXMgYWN0aXZlIG9ubHkgb24gbG9jYWwgZmlsZSBzb3VyY2UuXG4gICAqL1xuICBnbG9iYWxEcm9wWm9uZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBIaWRlIHRoZSBwaWNrZXIgbW9kYWwgVUkgb25jZSB1cGxvYWRpbmcgYmVnaW5zLiBEZWZhdWx0cyB0byBgZmFsc2VgLlxuICAgKi9cbiAgaGlkZU1vZGFsV2hlblVwbG9hZGluZz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFNwZWNpZnkgaW1hZ2UgZGltZW5zaW9ucy4gZS5nLiBbODAwLCA2MDBdLiBPbmx5IGZvciBKUEVHLCBQTkcsIGFuZCBCTVAgZmlsZXMuXG4gICAqIExvY2FsIGFuZCBjcm9wcGVkIGltYWdlcyB3aWxsIGJlIHJlc2l6ZWQgKHVwc2NhbGVkIG9yIGRvd25zY2FsZWQpIHRvIHRoZSBzcGVjaWZpZWQgZGltZW5zaW9ucyBiZWZvcmUgdXBsb2FkaW5nLlxuICAgKiBUaGUgb3JpZ2luYWwgaGVpZ2h0IHRvIHdpZHRoIHJhdGlvIGlzIG1haW50YWluZWQuIFRvIHJlc2l6ZSBhbGwgaW1hZ2VzIGJhc2VkIG9uIHRoZSB3aWR0aCwgc2V0IFt3aWR0aCwgbnVsbF0sIGUuZy4gWzgwMCwgbnVsbF0uXG4gICAqIEZvciB0aGUgaGVpZ2h0IHNldCBbbnVsbCwgaGVpZ2h0XSwgZS5nLiBbbnVsbCwgNjAwXS5cbiAgICovXG4gIGltYWdlRGltPzogW251bWJlciwgbnVtYmVyXTtcbiAgLyoqXG4gICAqIFNwZWNpZnkgbWF4aW11bSBpbWFnZSBkaW1lbnNpb25zLiBlLmcuIFs4MDAsIDYwMF0uIE9ubHkgZm9yIEpQRUcsIFBORywgYW5kIEJNUCBmaWxlcy5cbiAgICogSW1hZ2VzIGJpZ2dlciB0aGFuIHRoZSBzcGVjaWZpZWQgZGltZW5zaW9ucyB3aWxsIGJlIHJlc2l6ZWQgdG8gdGhlIG1heGltdW0gc2l6ZSB3aGlsZSBtYWludGFpbmluZyB0aGUgb3JpZ2luYWwgYXNwZWN0IHJhdGlvLlxuICAgKiBUaGUgb3V0cHV0IHdpbGwgbm90IGJlIGV4YWN0bHkgODAweDYwMCB1bmxlc3MgdGhlIGltYWdlTWF4IG1hdGNoZXMgdGhlIGFzcGVjdCByYXRpbyBvZiB0aGUgb3JpZ2luYWwgaW1hZ2UuXG4gICAqL1xuICBpbWFnZU1heD86IFtudW1iZXIsIG51bWJlcl07XG4gIC8qKlxuICAgKiBTcGVjaWZ5IG1pbmltdW0gaW1hZ2UgZGltZW5zaW9ucy4gZS5nLiBbODAwLCA2MDBdLiBPbmx5IGZvciBKUEVHLCBQTkcsIGFuZCBCTVAgZmlsZXMuXG4gICAqIEltYWdlcyBzbWFsbGVyIHRoYW4gdGhlIHNwZWNpZmllZCBkaW1lbnNpb25zIHdpbGwgYmUgdXBzY2FsZWQgdG8gdGhlIG1pbmltdW0gc2l6ZSB3aGlsZSBtYWludGFpbmluZyB0aGUgb3JpZ2luYWwgYXNwZWN0IHJhdGlvLlxuICAgKiBUaGUgb3V0cHV0IHdpbGwgbm90IGJlIGV4YWN0bHkgODAweDYwMCB1bmxlc3MgdGhlIGltYWdlTWluIG1hdGNoZXMgdGhlIGFzcGVjdCByYXRpbyBvZiB0aGUgb3JpZ2luYWwgaW1hZ2UuXG4gICAqL1xuICBpbWFnZU1pbj86IFtudW1iZXIsIG51bWJlcl07XG4gIC8qKlxuICAgKiBTZXRzIGxvY2FsZS4gQWNjZXB0czogY2EsIGRhLCBkZSwgZW4sIGVzLCBmciwgaGUsIGl0LCBqYSwga28sIG5sLCBubywgcGwsIHB0LCBzdiwgcnUsIHZpLCB6aCwgdHJcbiAgICovXG4gIGxhbmc/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBNaW5pbXVtIG51bWJlciBvZiBmaWxlcyByZXF1aXJlZCB0byBzdGFydCB1cGxvYWRpbmcuIERlZmF1bHRzIHRvIDEuXG4gICAqL1xuICBtaW5GaWxlcz86IG51bWJlcjtcbiAgLyoqXG4gICAqIE1heGltdW0gbnVtYmVyIG9mIGZpbGVzIGFsbG93ZWQgdG8gdXBsb2FkLiBEZWZhdWx0cyB0byAxLlxuICAgKi9cbiAgbWF4RmlsZXM/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBSZXN0cmljdCBzZWxlY3RlZCBmaWxlcyB0byBhIG1heGltdW0gbnVtYmVyIG9mIGJ5dGVzLiAoZS5nLiAxMCBcXCogMTAyNCBcXCogMTAyNCBmb3IgMTBNQiBsaW1pdCkuXG4gICAqL1xuICBtYXhTaXplPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IHZpZXcgdHlwZSBvcHRpb24gZm9yIGZpbGUgYnJvd3NlclxuICAgKi9cbiAgdmlld1R5cGU/OiAnZ3JpZCcgfCAnbGlzdCc7XG5cbiAgLyoqXG4gICAqIFRpbWVvdXQgZm9yIGVycm9yIG1lc3NhZ2VzXG4gICAqL1xuICBlcnJvcnNUaW1lb3V0PzogbnVtYmVyO1xuICAvKipcbiAgICogU3BlY2lmeSBbd2lkdGgsIGhlaWdodF0gaW4gcGl4ZWxzIG9mIHRoZSBkZXNrdG9wIG1vZGFsLlxuICAgKi9cbiAgbW9kYWxTaXplPzogW251bWJlciwgbnVtYmVyXTtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGFsbCB1cGxvYWRzIGluIGEgcGljayBhcmUgY2FuY2VsbGVkLlxuICAgKi9cbiAgb25DYW5jZWw/OiBQaWNrZXJVcGxvYWREb25lQ2FsbGJhY2s7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiB0aGUgVUkgaXMgZXhpdGVkLlxuICAgKi9cbiAgb25DbG9zZT86ICgpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiB0aGUgVUkgaXMgbW91bnRlZC5cbiAgICogQHBhcmFtIFBpY2tlckluc3RhbmNlIGFwcGxpY2F0aW9uIGhhbmRsZVxuICAgKi9cbiAgb25PcGVuPzogKGhhbmRsZTogUGlja2VySW5zdGFuY2UpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbmV2ZXIgdXNlciBzZWxlY3RzIGEgZmlsZS5cbiAgICogIyMjIEV4YW1wbGVcbiAgICpcbiAgICogYGBganNcbiAgICogLy8gVXNpbmcgdG8gdmV0byBmaWxlIHNlbGVjdGlvblxuICAgKiAvLyBJZiB5b3UgdGhyb3cgYW55IGVycm9yIGluIHRoaXMgZnVuY3Rpb24gaXQgd2lsbCByZWplY3QgdGhlIGZpbGUgc2VsZWN0aW9uLlxuICAgKiAvLyBUaGUgZXJyb3IgbWVzc2FnZSB3aWxsIGJlIGRpc3BsYXllZCB0byB0aGUgdXNlciBhcyBhbiBhbGVydC5cbiAgICogb25GaWxlU2VsZWN0ZWQoZmlsZSkge1xuICAgKiAgIGlmIChmaWxlLnNpemUgPiAxMDAwICogMTAwMCkge1xuICAgKiAgICAgdGhyb3cgbmV3IEVycm9yKCdGaWxlIHRvbyBiaWcsIHNlbGVjdCBzb21ldGhpbmcgc21hbGxlciB0aGFuIDFNQicpO1xuICAgKiAgIH1cbiAgICogfVxuICAgKlxuICAgKiAvLyBVc2luZyB0byBjaGFuZ2Ugc2VsZWN0ZWQgZmlsZSBuYW1lXG4gICAqIC8vIE5PVEU6IFRoaXMgY3VycmVudGx5IG9ubHkgd29ya3MgZm9yIGxvY2FsIHVwbG9hZHNcbiAgICogb25GaWxlU2VsZWN0ZWQoZmlsZSkge1xuICAgKiAgIC8vIEl0J3MgaW1wb3J0YW50IHRvIHJldHVybiBhIG5ldyBmaWxlIGJ5IHRoZSBlbmQgb2YgdGhpcyBmdW5jdGlvbi5cbiAgICogICByZXR1cm4geyAuLi5maWxlLCBuYW1lOiAnZm9vJyB9O1xuICAgKiB9XG4gICAqIGBgYFxuICAgKlxuICAgKiBUaGUgY2FsbGJhY2sgZnVuY3Rpb24gY2FuIGFsc28gcmV0dXJuIGEgUHJvbWlzZSB0byBhbGxvdyBhc3luY2hyb25vdXMgdmFsaWRhdGlvbiBsb2dpYy5cbiAgICogWW91IGNhbiBwYXNzIGEgZmlsZSBvYmplY3QgdG8gYHJlc29sdmVgIGZvciBjaGFuZ2luZyB0aGUgZmlsZSBuYW1lLCBpdCB3aWxsIGJlaGF2ZSB0aGUgc2FtZSBhcyB3aGVuXG4gICAqIHRoZSBmaWxlIGlzIHJldHVybmVkIGZyb20gdGhlIG5vbi1hc3luYyBjYWxsYmFjay5cbiAgICpcbiAgICogYGBganNcbiAgICogb25GaWxlU2VsZWN0ZWQoZmlsZSkge1xuICAgKiAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAqICAgICAvLyBEbyBzb21ldGhpbmcgYXN5bmNcbiAgICogICAgIHJlc29sdmUoKTtcbiAgICogICAgIC8vIE9yIHJlamVjdCB0aGUgc2VsZWN0aW9uIHdpdGggcmVqZWN0KClcbiAgICogICB9KTtcbiAgICogfVxuICAgKiBgYGBcbiAgICovXG4gIG9uRmlsZVNlbGVjdGVkPzogUGlja2VyRmlsZUNhbGxiYWNrO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gYSBmaWxlIHVwbG9hZCBoYXMgYmVlbiBjYW5jZWxlZC5cbiAgICovXG4gIG9uRmlsZVVwbG9hZENhbmNlbD86IFBpY2tlckZpbGVDYW5jZWxDYWxsYmFjaztcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGEgZmlsZSBiZWdpbnMgdXBsb2FkaW5nLlxuICAgKi9cbiAgb25GaWxlVXBsb2FkU3RhcnRlZD86IFBpY2tlckZpbGVXaXRoVG9rZW5DYWxsYmFjaztcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGEgZmlsZSBpcyBkb25lIHVwbG9hZGluZy5cbiAgICovXG4gIG9uRmlsZVVwbG9hZEZpbmlzaGVkPzogUGlja2VyRmlsZUNhbGxiYWNrO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gdXBsb2FkaW5nIGEgZmlsZSBmYWlscy5cbiAgICovXG4gIG9uRmlsZVVwbG9hZEZhaWxlZD86IFBpY2tlckZpbGVFcnJvckNhbGxiYWNrO1xuICAvKipcbiAgICogQ2FsbGVkIGR1cmluZyBtdWx0aS1wYXJ0IHVwbG9hZCBwcm9ncmVzcyBldmVudHMuIExvY2FsIGZpbGVzIG9ubHkuXG4gICAqL1xuICBvbkZpbGVVcGxvYWRQcm9ncmVzcz86IFBpY2tlckZpbGVQcm9ncmVzc0NhbGxiYWNrO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gZmlsZSBpcyBjcm9wcGVkIGluIHBpY2tlclxuICAgKi9cbiAgb25GaWxlQ3JvcHBlZD86IFBpY2tlckZpbGVDYWxsYmFjaztcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIHVwbG9hZGluZyBzdGFydHMgKHVzZXIgaW5pdGlhdGVzIHVwbG9hZGluZykuXG4gICAqL1xuICBvblVwbG9hZFN0YXJ0ZWQ/OiBQaWNrZXJVcGxvYWRTdGFydGVkQ2FsbGJhY2s7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBhbGwgZmlsZXMgaGF2ZSBiZWVuIHVwbG9hZGVkLlxuICAgKi9cbiAgb25VcGxvYWREb25lPzogUGlja2VyVXBsb2FkRG9uZUNhbGxiYWNrO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgYSB1bmlxdWUgaWQgZm9yIHRoZSBhcHBsaWNhdGlvbiBtb3VudCBwb2ludC5cbiAgICogTWF5IGJlIHVzZWZ1bCBmb3IgbW9yZSBhZHZhbmNlZCB1c2UgY2FzZXMuXG4gICAqIEZvciBleGFtcGxlLCBpZiB5b3Ugd2lzaCB0byBoYXZlIG1vcmUgdGhhbiBvbmUgcGlja2VyIGluc3RhbmNlIG9wZW4gYXQgb25jZSxcbiAgICogdGhlbiBlYWNoIHdpbGwgbmVlZCB0aGVpciBvd24gdW5pcXVlIHJvb3RJZC5cbiAgICpcbiAgICogKipOb3RlOioqIFRoaXMgb3B0aW9uIGlzIGlnbm9yZWQgd2hlbiBgZGlzcGxheU1vZGVgIGlzIGBkcm9wUGFuZWAuXG4gICAqL1xuICByb290SWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHN0YXJ0IHVwbG9hZGluZyBhdXRvbWF0aWNhbGx5IHdoZW4gbWF4RmlsZXMgaXMgaGl0LiBEZWZhdWx0cyB0byBgZmFsc2VgLlxuICAgKi9cbiAgc3RhcnRVcGxvYWRpbmdXaGVuTWF4RmlsZXNSZWFjaGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIGZpbGUgc3RvcmFnZS5cbiAgICovXG4gIHN0b3JlVG8/OiBQaWNrZXJTdG9yZU9wdGlvbnM7XG4gIC8qKlxuICAgKiBTcGVjaWZ5IG9wdGlvbnMgZm9yIGltYWdlcyBwYXNzZWQgdG8gdGhlIGNyb3AgVUkuXG4gICAqL1xuICB0cmFuc2Zvcm1hdGlvbnM/OiBQaWNrZXJUcmFuc2Zvcm1hdGlvbk9wdGlvbnM7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHVzZSB0aGUgbmV3IHRyYW5zZm9ybWF0aW9ucyBVSS4gRGVmYXVsdHMgdG8gYGZhbHNlYC5cbiAgICovXG4gIHRyYW5zZm9ybWF0aW9uc1VJPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIGxvY2FsIGZpbGUgdXBsb2Fkcy5cbiAgICovXG4gIHVwbG9hZENvbmZpZz86IFVwbG9hZE9wdGlvbnM7XG4gIC8qKlxuICAgKiBTdGFydCB1cGxvYWRpbmcgaW1tZWRpYXRlbHkgb24gZmlsZSBzZWxlY3Rpb24uIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICogQGltcG9ydGFudCBUaGUgZmVhdHVyZSBpcyBjYW4gYmUgZW5hYmxlZCBvbmx5IGlmIGNyb3AgaXMgZGlzYWJsZWQgLSBkaXNhYmxlVHJhbnNmb3JtZXI6IHRydWVcbiAgICovXG4gIHVwbG9hZEluQmFja2dyb3VuZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTZXRzIHRoZSByZXNvbHV0aW9uIG9mIHJlY29yZGVkIHZpZGVvLiBPbmUgb2YgXCIzMjB4MjQwXCIsIFwiNjQweDQ4MFwiIG9yIFwiMTI4MHg3MjBcIi4gRGVmYXVsdCBpcyBgXCI2NDB4NDgwXCJgLlxuICAgKi9cbiAgdmlkZW9SZXNvbHV0aW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogVXNlIFNlbnRyeSBCcmVhZGNydW1icyBtZWNoYW5pc20gdG8gbG9nIGluZm9ybWF0aW9uIGFib3V0IG9jY3VyZWQgZXJyb3JzLlxuICAgKiBJdCBjYW4gb3ZlcnJpZGUgZ2xvYmFsIG9iamVjdHMgbGlrZSBjb25zb2xlLCBlcnJvciBldGMuIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICovXG4gIHVzZVNlbnRyeUJyZWFkY3J1bWJzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFNwZWNpZnkgd2hpY2ggUGlja2VyIGluc3RhbmNlIHNob3VsZCByZXNwb25kIHRvIHBhc3RlIGV2ZW50LlxuICAgKiBCeSBkZWZhdWx0IG9ubHkgaG92ZXJlZCBpbnN0YW5jZSByZXNwb25kcyB0byBldmVudC5cbiAgICogQHBhcmFtIHtib29sZWFuID0gZmFsc2V9IHBhc3RlVG9GaXJzdEluVmlld1BvcnQgSWYgbm9uZSBpbnN0YW5jZSBpcyBob3ZlcmVkIHRha2UgZmlyc3QgcGlja2VyIGluc3RhbmNlIGZ1bGx5IHZpc2libGUgaW4gdmlld3BvcnRcbiAgICogQHBhcmFtIHtib29sZWFuID0gZmFsc2V9IHBhc3RlVG9GaXJzdEluc3RhbmNlIElmIG5vbmUgaW5zdGFuY2UgaXMgaG92ZXJlZCB0YWtlIGZpcnN0IHBpY2tlciBpbnN0YW5jZSB0aGF0IGlzIGluaXRpYWxpemVkXG4gICAqIEBwYXN0ZVRvRmlyc3RJblZpZXdQb3J0IGlzIGNoZWNrZWQgZmlyc3RcbiAgICovXG4gIHBhc3RlTW9kZT86IHtcbiAgICBwYXN0ZVRvRmlyc3RJblZpZXdQb3J0PzogYm9vbGVhbixcbiAgICBwYXN0ZVRvRmlyc3RJbnN0YW5jZT86IGJvb2xlYW5cbiAgfTtcbiAgLyoqXG4gICAqIERpc2FibGUvRW5hYmxlIHBvc3NpYmlsaXR5IHRvIHVwbG9hZCBkaXJlY3Rvcmllcy5cbiAgICovXG4gIGRpc2FibGVEaXJlY3RvcnlVcGxvYWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogRW5hYmxlL0Rpc2FibGUgTWluaSBVcGxvYWRlclxuICAgKi9cbiAgbWluaVVwbG9hZGVyPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEVuYWJsZS9EaXNhYmxlIHBvc3NpYmlsaXR5IHRvIG11bHRpcGxlIGZpbGUgdXBsb2FkXG4gICAqL1xuICBtdWx0aXBsZUZpbGVVcGxvYWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogU2V0IHlvdXIgb3duIEdvb2dsZSBEcml2ZSBQaWNrZXIgQXBwIElELiBEZWZhdWx0cyB0byBGaWxlc3RhY2sncy5cbiAgICogVGhpcyBpcyB5b3VyIFByb2plY3QgTnVtYmVyIGZyb20gdGhlIEdvb2dsZSBDbG91ZCBjb25zb2xlLlxuICAgKi9cbiAgZ29vZ2xlRHJpdmVBcHBJRD86IHN0cmluZztcbiAgLyoqXG4gICAqIFNldHMgdGhlIG9yaWdpbiBvZiBwaWNrZXIgZGlhbG9nLiBUaGUgb3JpZ2luIHNob3VsZCBiZSBzZXQgdG9cbiAgICogdGhlIHdpbmRvdy5sb2NhdGlvbi5wcm90b2NvbCArICcvLycgKyB3aW5kb3cubG9jYXRpb24uaG9zdCBvZiB0aGUgdG9wLW1vc3QgcGFnZSxcbiAgICogaWYgeW91ciBhcHBsaWNhdGlvbiBpcyBydW5uaW5nIGluIGFuIGlmcmFtZS5cbiAgICovXG4gIGdvb2dsZUFwcE9yaWdpbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaWNrZXJDcm9wT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBNYWludGFpbiBhc3BlY3QgcmF0aW8gZm9yIGNyb3Agc2VsZWN0aW9uLiAoZS5nLiAxNi85LCA4MDAvNjAwKS5cbiAgICovXG4gIGFzcGVjdFJhdGlvPzogbnVtYmVyO1xuICAvKipcbiAgICogRm9yY2UgYWxsIGltYWdlcyB0byBiZSBjcm9wcGVkIGJlZm9yZSB1cGxvYWRpbmcuXG4gICAqL1xuICBmb3JjZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBdXRvIGNyb3AgYXJlYSB2YWx1ZSBiZXR3ZWVuIDAgYW5kIDEuXG4gICAqL1xuICBhdXRvQ3JvcEFyZWE/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGlja2VyVHJhbnNmb3JtYXRpb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIEVuYWJsZSBjcm9wLiBEZWZhdWx0cyB0byBgdHJ1ZWAuXG4gICAqL1xuICBjcm9wPzogYm9vbGVhbiB8IFBpY2tlckNyb3BPcHRpb25zO1xuICAvKipcbiAgICogRW5hYmxlIGNpcmNsZSBjcm9wLiBEaXNhYmxlZCBpZiBjcm9wLmFzcGVjdFJhdGlvIGlzIGRlZmluZWQgYW5kIG5vdCAxLiBDb252ZXJ0cyB0byBQTkcuIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICovXG4gIGNpcmNsZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBFbmFibGUgaW1hZ2Ugcm90YXRpb24uIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICovXG4gIHJvdGF0ZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEdsb2JhbCBmb3JjZSBjcm9wIG9wdGlvbi4gQ2FuIGJlIHVzZSBpZSB3aXRoIGNpcmNsZVxuICAgKi9cbiAgZm9yY2U/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tlckFjY2VwdEZuT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBQcm92aWRlZCBhY2NlcHQgc3RyaW5nXG4gICAqL1xuICBhY2NlcHQ6IHN0cmluZ1tdO1xuICAvKipcbiAgICogQWNjZXB0IHN0cmluZyBjb252ZXJ0ZWQgdG8gbWltZXR5cGVcbiAgICovXG4gIGFjY2VwdE1pbWU6IHN0cmluZ1tdO1xuICAvKipcbiAgICogTWltZXR5cGUgYmFzZWQgbWFnaWMgYnl0ZXNcbiAgICoge0BsaW5rIGh0dHBzOi8vZmlsZXN0YWNrLmdpdGh1Yi5pby9maWxlc3RhY2stanMvZ2xvYmFscy5odG1sI2dldG1pbWV0eXBlfVxuICAgKi9cbiAgbWltZUZyb21NYWdpY0J5dGVzOiBQcm9taXNlPHN0cmluZz47XG4gIC8qKlxuICAgKiBNaW1ldHlwZSBiYXNlZCBvbiBmaWxlIGV4dGVuc2lvblxuICAgKiB7QGxpbmsgaHR0cHM6Ly9maWxlc3RhY2suZ2l0aHViLmlvL2ZpbGVzdGFjay1qcy9nbG9iYWxzLmh0bWwjZXh0ZW5zaW9udG9taW1lfVxuICAgKi9cbiAgbWltZUZyb21FeHRlbnNpb246IHN0cmluZztcbn1cblxuLyoqXG4gKiBAcHJpdmF0ZVxuICogQSBzeW5jaHJvbm91cy1sb29raW5nIHdyYXBwZXIgZm9yIGxvYWRpbmcgdGhlIHBpY2tlciBhbmQgY2FsbGluZyBpdHMgbWV0aG9kcy5cbiAqIFRoaXMgaXMgY3VycmVudGx5IG5lZWRlZCBiZWNhdXNlIHRoZSBwaWNrZXIgbW9kdWxlIGlzIGxvYWRlZCBhc3luY2hyb25vdXNseS5cbiAqIEV2ZW50dWFsbHkgd2Ugc2hvdWxkIG9mZmVyIGEgYnVuZGxlIHdpdGggdGhlIHBpY2tlciBtb2R1bGUgaW5jbHVkZWQuXG4gKi9cbmNsYXNzIFBpY2tlckxvYWRlciB7XG5cbiAgcHJpdmF0ZSBfaW5pdGlhbGl6ZWQ6IFByb21pc2U8UGlja2VySW5zdGFuY2U+O1xuICBjb25zdHJ1Y3RvcihjbGllbnQ6IENsaWVudCwgb3B0aW9ucz86IFBpY2tlck9wdGlvbnMpIHtcbiAgICBjb25zdCB2YWxpZGF0ZVJlcyA9IGdldFZhbGlkYXRvcihQaWNrZXJQYXJhbXNTY2hlbWEpKG9wdGlvbnMpO1xuXG4gICAgaWYgKHZhbGlkYXRlUmVzLmVycm9ycy5sZW5ndGgpIHtcbiAgICAgIHZhbGlkYXRlUmVzLmVycm9ycy5mb3JFYWNoKGVycm9yID0+IHtcbiAgICAgICAgaWYgKGVycm9yLnBhdGguaW5jbHVkZXMoJ2Zyb21Tb3VyY2VzJykpIHtcbiAgICAgICAgICBjb25zb2xlLndhcm4oYFdhcm5pbmc6IEludmFsaWQgc291cmNlIFxcXCIke2Vycm9yLmluc3RhbmNlfVxcXCIgZm91bmQgYW5kIHJlbW92ZWQhYCk7XG4gICAgICAgICAgb3B0aW9ucy5mcm9tU291cmNlcyA9IG9wdGlvbnMuZnJvbVNvdXJjZXMuZmlsdGVyKHNvdXJjZSA9PiBzb3VyY2UgIT09IGVycm9yLmluc3RhbmNlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRmlsZXN0YWNrRXJyb3IoYEludmFsaWQgcGlja2VyIHBhcmFtc2AsIHZhbGlkYXRlUmVzLmVycm9ycywgRmlsZXN0YWNrRXJyb3JUeXBlLlZBTElEQVRJT04pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIGlmICghb3B0aW9ucy5mcm9tU291cmNlcy5sZW5ndGgpIHtcbiAgICAgICAgZGVsZXRlIG9wdGlvbnMuZnJvbVNvdXJjZXM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5faW5pdGlhbGl6ZWQgPSB0aGlzLmxvYWRNb2R1bGUoY2xpZW50LCBvcHRpb25zKTtcbiAgfVxuXG4gIGFzeW5jIG9wZW4oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgcGlja2VyID0gYXdhaXQgdGhpcy5faW5pdGlhbGl6ZWQ7XG4gICAgYXdhaXQgcGlja2VyLm9wZW4oKTtcbiAgfVxuXG4gIGFzeW5jIGNyb3AoZmlsZXM6IGFueVtdKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgcGlja2VyID0gYXdhaXQgdGhpcy5faW5pdGlhbGl6ZWQ7XG4gICAgYXdhaXQgcGlja2VyLmNyb3AoZmlsZXMpO1xuICB9XG5cbiAgYXN5bmMgY2xvc2UoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgcGlja2VyID0gYXdhaXQgdGhpcy5faW5pdGlhbGl6ZWQ7XG4gICAgYXdhaXQgcGlja2VyLmNsb3NlKCk7XG4gIH1cblxuICBhc3luYyBjYW5jZWwoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgcGlja2VyID0gYXdhaXQgdGhpcy5faW5pdGlhbGl6ZWQ7XG4gICAgYXdhaXQgcGlja2VyLmNhbmNlbCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBsb2FkTW9kdWxlKGNsaWVudDogQ2xpZW50LCBvcHRpb25zPzogUGlja2VyT3B0aW9ucyk6IFByb21pc2U8UGlja2VySW5zdGFuY2U+IHtcbiAgICBjb25zdCB7IHNlc3Npb246IHsgdXJsczogeyBwaWNrZXJVcmw6IHVybCB9IH0gfSA9IGNsaWVudDtcbiAgICBjb25zdCBQaWNrZXIgPSBhd2FpdCBsb2FkTW9kdWxlKEZJTEVTVEFDS19NT0RVTEVTLlBJQ0tFUiwgdXJsKTtcbiAgICByZXR1cm4gbmV3IFBpY2tlcihjbGllbnQsIG9wdGlvbnMpO1xuICB9XG59XG5cbi8qKlxuICogTG9hZHMgYW5kIGNyZWF0ZXMgcGlja2VyIGluc3RhbmNlXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSBjbGllbnRcbiAqIEBwYXJhbSBvcHRpb25zXG4gKi9cbmV4cG9ydCBjb25zdCBwaWNrZXIgPSAoY2xpZW50OiBDbGllbnQsIG9wdGlvbnM/OiBQaWNrZXJPcHRpb25zKTogUGlja2VySW5zdGFuY2UgPT4ge1xuICByZXR1cm4gbmV3IFBpY2tlckxvYWRlcihjbGllbnQsIG9wdGlvbnMpO1xufTtcbiJdfQ==
|