tango-app-ui-analyse-traffic 3.8.15 → 3.8.16
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.
|
@@ -244,6 +244,10 @@ export class TrafficAnalysisComponent {
|
|
|
244
244
|
this.isFootfallView = this.featureConfig?.isFootfallView || false;
|
|
245
245
|
this.normalize = this.clientData?.featureConfigs?.isNormalized;
|
|
246
246
|
this.storeIdarray = this.headerData?.stores.filter((store) => store.checked).map((store) => store.storeId);
|
|
247
|
+
// Client 455, Store 26: always show full single-store traffic view
|
|
248
|
+
if (this.headerData?.client === '455' && this.storeIdarray.length === 1 && this.storeIdarray[0] === '455-26') {
|
|
249
|
+
this.isFootfallView = false;
|
|
250
|
+
}
|
|
247
251
|
this.tableobj = {
|
|
248
252
|
fromDate: this.headerData?.date.startDate,
|
|
249
253
|
toDate: this.headerData?.date.endDate,
|
|
@@ -272,6 +276,10 @@ export class TrafficAnalysisComponent {
|
|
|
272
276
|
this.service?.toggleAverage(false);
|
|
273
277
|
}
|
|
274
278
|
this.isVMS = this.clientData?.featureConfigs?.isVMS || false;
|
|
279
|
+
// Client 455, Store 26: show old image directory (lib-image-doc)
|
|
280
|
+
if (this.headerData?.client === '455' && this.storeIdarray.length === 1 && this.storeIdarray[0] === '455-26') {
|
|
281
|
+
this.isVMS = false;
|
|
282
|
+
}
|
|
275
283
|
this.setConversionValue();
|
|
276
284
|
this.dataProcessedLoading = false;
|
|
277
285
|
// this.conversionValue = this.clientData.featureConfigs.isNOB
|
|
@@ -2263,7 +2271,9 @@ line-height: 13px;">
|
|
|
2263
2271
|
setPaginationSizeTrends() {
|
|
2264
2272
|
if (this.totalItemsTrends > 31) {
|
|
2265
2273
|
if (this.objData.forecast && this.totalItemsTrends > 31) {
|
|
2266
|
-
|
|
2274
|
+
// Forecast adds future buckets (actual + forecast) — show ALL items on one page
|
|
2275
|
+
// so nothing is cut off (was hardcoded 60, which dropped items when total > 60).
|
|
2276
|
+
this.paginationSizesTrends = [this.totalItemsTrends];
|
|
2267
2277
|
}
|
|
2268
2278
|
else {
|
|
2269
2279
|
this.paginationSizesTrends = [31];
|
|
@@ -4127,4 +4137,4 @@ function getDaysBetweenDates(fromDate, toDate) {
|
|
|
4127
4137
|
const differenceInDays = Math.floor(differenceInMs / millisecondsPerDay);
|
|
4128
4138
|
return differenceInDays;
|
|
4129
4139
|
}
|
|
4130
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhZmZpYy1hbmFseXNpcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1hbmFseXNlLXRyYWZmaWMvc3JjL2xpYi9jb21wb25lbnRzL3RyYWZmaWMtYW5hbHlzaXMvdHJhZmZpYy1hbmFseXNpcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1hbmFseXNlLXRyYWZmaWMvc3JjL2xpYi9jb21wb25lbnRzL3RyYWZmaWMtYW5hbHlzaXMvdHJhZmZpYy1hbmFseXNpcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQU1ULFNBQVMsRUFFVCxZQUFZLEVBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxLQUFLLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQztBQUMzQyxPQUFPLEtBQUssS0FBSyxNQUFNLHdCQUF3QixDQUFDO0FBQ2hELE9BQU8sa0JBQWtCLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxvQkFBb0IsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RSxPQUFPLEtBQUssVUFBVSxNQUFNLDZCQUE2QixDQUFDO0FBRTFELE9BQU8sRUFBRSxPQUFPLEVBQWdCLFNBQVMsRUFBVSxNQUFNLE1BQU0sQ0FBQztBQUdoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHOUMsT0FBTyxLQUFLLFFBQVEsTUFBTSxXQUFXLENBQUM7QUFFdEMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDckUsT0FBTyxLQUFLLFNBQVMsTUFBTSxXQUFXLENBQUM7QUFDdkMsT0FBTyxFQUFlLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFELE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQzs7Ozs7Ozs7Ozs7OztBQU8xQixNQUFNLE9BQU8sd0JB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QkFETixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDOztBQThtRTVDLFNBQVMsbUJBQW1CLENBQUMsUUFBZ0IsRUFBRSxNQUFjO0lBQzNELDJDQUEyQztJQUMzQyxNQUFNLEtBQUssR0FBRyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNqQyxNQUFNLEdBQUcsR0FBRyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUU3QiwyQ0FBMkM7SUFDM0MsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUFDLE9BQU8sRUFBRSxHQUFHLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUV2RCwrREFBK0Q7SUFDL0QsTUFBTSxrQkFBa0IsR0FBRyxRQUFRLENBQUM7SUFDcEMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsR0FBRyxrQkFBa0IsQ0FBQyxDQUFDO0lBRXpFLE9BQU8sZ0JBQWdCLENBQUM7QUFDMUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIE9uSW5pdCxcclxuICBPbkRlc3Ryb3ksXHJcbiAgTmdab25lLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgUmVuZGVyZXIyLFxyXG4gIFZpZXdDaGlsZCxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBIb3N0TGlzdGVuZXIsIEFmdGVyVmlld0luaXRcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgKiBhcyBhbTUgZnJvbSBcIkBhbWNoYXJ0cy9hbWNoYXJ0czVcIjtcclxuaW1wb3J0ICogYXMgYW01eHkgZnJvbSBcIkBhbWNoYXJ0cy9hbWNoYXJ0czUveHlcIjtcclxuaW1wb3J0IGFtNXRoZW1lc19BbmltYXRlZCBmcm9tIFwiQGFtY2hhcnRzL2FtY2hhcnRzNS90aGVtZXMvQW5pbWF0ZWRcIjtcclxuaW1wb3J0IGFtNXRoZW1lc19SZXNwb25zaXZlIGZyb20gXCJAYW1jaGFydHMvYW1jaGFydHM1L3RoZW1lcy9SZXNwb25zaXZlXCI7XHJcbmltcG9ydCAqIGFzIGFtNXBlcmNlbnQgZnJvbSBcIkBhbWNoYXJ0cy9hbWNoYXJ0czUvcGVyY2VudFwiO1xyXG5pbXBvcnQgeyBUcmFmZmljU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy90cmFmZmljLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCB0YWtlVW50aWwsIGZpbHRlciB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBOZ2JNb2RhbCwgTmdiVG9vbHRpcCB9IGZyb20gXCJAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcFwiO1xyXG5pbXBvcnQgeyBHbG9iYWxTdGF0ZVNlcnZpY2UgfSBmcm9tIFwidGFuZ28tYXBwLXVpLWdsb2JhbFwiO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgRXhjZWxTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2V4Y2VsLnNlcnZpY2VcIjtcclxuaW1wb3J0ICogYXMgbWFwYm94Z2wgZnJvbSAnbWFwYm94LWdsJztcclxuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSBcInRhbmdvLWFwcC11aS1zaGFyZWRcIjtcclxuaW1wb3J0IHsgVmlkZW9VcmxDb21wb25lbnQgfSBmcm9tIFwiLi4vdmlkZW8tdXJsL3ZpZGVvLXVybC5jb21wb25lbnRcIjtcclxuaW1wb3J0ICogYXMgYm9vdHN0cmFwIGZyb20gXCJib290c3RyYXBcIjtcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCBkYXlqcyBmcm9tICdkYXlqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJsaWItdHJhZmZpYy1hbmFseXNpc1wiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vdHJhZmZpYy1hbmFseXNpcy5jb21wb25lbnQuaHRtbFwiLFxyXG4gIHN0eWxlVXJsOiBcIi4vdHJhZmZpYy1hbmFseXNpcy5jb21wb25lbnQuc2Nzc1wiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhZmZpY0FuYWx5c2lzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xyXG4gIHByaXZhdGUgbGluZXJvb3Q6IGFtNS5Sb290O1xyXG4gIHByaXZhdGUgYm91bmNlZGxpbmVyb290OiBhbTUuUm9vdDtcclxuICBwcml2YXRlIHBvdGVudGlhbEJ1eWVyc2xpbmVyb290OiBhbTUuUm9vdDtcclxuICBwcml2YXRlIGVuZ2FnZXJzbGluZXJvb3Q6IGFtNS5Sb290O1xyXG4gIHNvcnRlZENvbHVtbjogYW55O1xyXG4gIHNvcnREaXJlY3Rpb246IGFueTtcclxuICBwcml2YXRlIGNoYXJ0OiBhbnk7XHJcbiAgcHJpdmF0ZSB0b29sdGlwRWxlbWVudDogSFRNTEVsZW1lbnQ7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgZ2V0Q2FyZERhdGE6IGFueSA9IFtdO1xyXG4gIGhlYXRNYXBEYXRhOiBhbnkgPSBbXTtcclxuICBnZXRDYXJkR3JhcGhEYXRhOiBhbnk7XHJcbiAgZ2V0U3VtbWFyeVRhYmxlRGF0YTogYW55O1xyXG4gIGl0ZW1zUGVyUGFnZSA9IDEwO1xyXG4gIGN1cnJlbnRQYWdlID0gMTtcclxuICB0b3RhbEl0ZW1zID0gMTtcclxuICBwYWdpbmF0aW9uU2l6ZXM6YW55W10gPSBbXTtcclxuICBwYWdlU2l6ZSA9IDEwO1xyXG4gIG9mZnNldDogbnVtYmVyID0gMDtcclxuICBsaW1pdDogbnVtYmVyID0gMTA7XHJcbiAgZ2V0UmVjYXBWaWRlb0RhdGE6IGFueTtcclxuICB0YWJsZW9iajogYW55O1xyXG4gIGhlYXRNYXByb290OiBhbTUuUm9vdDtcclxuICB2YWx1ZVR5cGU9XCJhY3R1YWxcIlxyXG4gIGRhdGVUeXBlPVwid2Vla2x5XCI7XHJcbiAgcG9pbnRzOmFueSA9IFtdO1xyXG4gIGhlYWRlckRhdGE6IGFueTtcclxuICB0eXBlVmFsdWU6IGFueSA9J3N1bSc7XHJcbiAgdmFsdWVDb252ZXJzaW9uUmF0ZTogYW55O1xyXG4gIGNvbnZlcnNpb25WYWx1ZTogYW55PScnO1xyXG4gIHNlYXJjaFZhbHVlOiBhbnk7XHJcbiAgbG9hZGluZzogYm9vbGVhbiA9dHJ1ZTtcclxuICBub0RhdGE6IGJvb2xlYW4gPWZhbHNlO1xyXG4gIGNhcmRsb2FkaW5nOiBib29sZWFuID10cnVlO1xyXG4gIGNhcmROb2RhdGE6IGJvb2xlYW4gPWZhbHNlO1xyXG4gIGhlYXRsb2FkaW5nID0gdHJ1ZVxyXG4gIGhlYXRub0RhdGEgPSBmYWxzZVxyXG4gIHN0b3JlSWRhcnJheTogYW55ID1bXTtcclxuICBnZXRSZWNhcERhdGE6IGFueT1bXTtcclxuICBmb3JtOiBhbnk7XHJcbiAgICBmb3JtMTogYW55O1xyXG4gIGRhdGVMZW5ndGg6IG51bWJlcjtcclxuICBwZXJmb3JtYW5jZW5vRGF0YTogYm9vbGVhbiA9ZmFsc2U7XHJcbiAgcGVyZm9ybWFuY2VMb2FkaW5nOiBib29sZWFuID10cnVlO1xyXG4gIHpvbmVEd2VsbFRpbWVTcGxpdERhdGE6IGFueT1bXTtcclxuICBzdG9yZU9wZXJhdGlvbkRhdGE6IGFueT1bXTtcclxuICBmb290ZmFsbE5hbWU6IHN0cmluZz0nQWN0dWFsIEZvb3RmYWxsJztcclxuICBib3VuY2VMYWJlbDogYW55O1xyXG4gIGZvb3RmYWxsTGFiZWw6IGFueTtcclxuICBjb2xWYWx1ZTogYW55O1xyXG4gIHJlY2FwbGFvZGluZzogYm9vbGVhbjtcclxuICByZWNhcG5vRGF0YTogYm9vbGVhbjtcclxuICByZWNhcHNHcm91cGVkOiBhbnlbXT1bXTtcclxuICBpc0F2ZXJhZ2U6IGJvb2xlYW4gPSBmYWxzZTsgLy8gVG9nZ2xlIHN0YXRlIGZvciB0aGUgc3dpdGNoXHJcbiAgaXNEaXNhYmxlZDogYm9vbGVhbiA9ZmFsc2U7XHJcbiAgem9uZUxvYWRpbmcgPSB0cnVlO1xyXG4gem9uZU5vRGF0YSA9IGZhbHNlO1xyXG4gIGNsaWVudERhdGE6IGFueTtcclxuICBmZWF0dXJlQ29uZmlnOiBhbnk7XHJcbiAgbm9iOiBib29sZWFuO1xyXG4gIGZvcmVjYXN0OiBhbnk7XHJcbiAgbWF4Rm9vdGZhbGw6IGFueTtcclxuICBtaW5Gb290ZmFsbDogYW55O1xyXG4gIGlzQ29udmVyc2lvbiA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICB0b3BTdG9yZXNTZWxlY3RDb250cm9sOiBGb3JtQ29udHJvbDtcclxuICBzaG93UmVwb3J0UHJvY2Vzc2luZ0NhcmQ6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIHllc3RlcmRheURhdGU6IHN0cmluZyA9ICcnO1xyXG4gIGRhdGFQcm9jZXNzZWRMb2FkaW5nID0gdHJ1ZTtcclxuICBpc0F2ZXJhZ2VGb290ZmFsbCA9IGZhbHNlO1xyXG4gIGlzRm9vdGZhbGxWaWV3OmFueTtcclxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pXHJcbiAgaGFuZGxlQ2xpY2tPdXRzaWRlKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICBjb25zdCBjbGlja2VkSW5zaWRlID0gKGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCkuY2xvc2VzdCgnLnRvb2x0aXAtcG9wdXAsIC5sYWJlbCcpO1xyXG4gICAgaWYgKCFjbGlja2VkSW5zaWRlKSB7XHJcbiAgICAgIHRoaXMuYWN0aXZlVG9vbHRpcCA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGFjdGl2ZVRvb2x0aXA6IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG5cclxuICBhdUxvY2F0aW9uczogYW55W10gPSBbXTtcclxuICBtYXBPcHRpb25zOiBnb29nbGUubWFwcy5NYXBPcHRpb25zID0ge1xyXG4gICAgbWFwSWQ6IFwiREVNT19NQVBfSURcIixcclxuICAgIGNlbnRlcjogeyBsYXQ6IDAsIGxuZzogMCB9LCAgLy8gSW5pdGlhbCBjZW50ZXJcclxuICAgIHpvb206IDEsXHJcbiAgfTtcclxuXHJcbiAgcGVyZm9ybWFuY2VEYXRhOmFueSA9IFtdO1xyXG4gIG1wYWxvYWRpbmcgPXRydWU7XHJcbiAgbWFwbm9EYXRhID0gZmFsc2U7XHJcbiAgZm9vdGZhbGxkYXRhc2V0cyA9IFtcclxuICAgIHsgdmFsdWU6ICdmb290ZmFsbCcsIGxhYmVsOiAnRm9vdGZhbGwnIH0sXHJcbiAgICB7IHZhbHVlOiAnYm91bmNlZCcsIGxhYmVsOiAnQm91bmNlZCBGb290ZmFsbCcgfSxcclxuICAgIHsgdmFsdWU6ICdlbmdhZ2VyJywgbGFiZWw6ICdFbmdhZ2VycycgfSxcclxuICAgIHsgdmFsdWU6ICdtaXNzZWRPcHBvcnR1bml0eScsIGxhYmVsOiAnTWlzc2VkIE9wcG9ydHVuaXR5JyB9LFxyXG4gICAgeyB2YWx1ZTogJ3BvdGVudGlhbEJ1eWVyJywgbGFiZWw6ICdQb3RlbnRpYWwgQnV5ZXInIH0sXHJcbiAgICB7IHZhbHVlOiAnY29udmVyc2lvbicsIGxhYmVsOiAnQ29udmVyc2lvbicgfVxyXG4gIF07XHJcbiAgYm91bmNlZGF0YXNldHMgPSBbXHJcbiAgICB7IHZhbHVlOiAnZm9vdGZhbGwnLCBsYWJlbDogJ0Zvb3RmYWxsJyB9LFxyXG4gICAgeyB2YWx1ZTogJ2JvdW5jZWQnLCBsYWJlbDogJ0JvdW5jZWQgRm9vdGZhbGwnIH0sXHJcbiAgICB7IHZhbHVlOiAnZW5nYWdlcicsIGxhYmVsOiAnRW5nYWdlcnMnIH0sXHJcbiAgICB7IHZhbHVlOiAnbWlzc2VkT3Bwb3J0dW5pdHknLCBsYWJlbDogJ01pc3NlZCBPcHBvcnR1bml0eScgfSxcclxuICAgIHsgdmFsdWU6ICdwb3RlbnRpYWxCdXllcicsIGxhYmVsOiAnUG90ZW50aWFsIEJ1eWVyJyB9LFxyXG4gICAgeyB2YWx1ZTogJ2NvbnZlcnNpb24nLCBsYWJlbDogJ0NvbnZlcnNpb24nIH1cclxuICBdO1xyXG4gIHRvcFN0b3JlcyA9IFtcclxuICAgIHsgdmFsdWU6ICc1JywgbGFiZWw6ICdUb3AgNSBTdG9yZXMnIH0sXHJcbiAgICB7IHZhbHVlOiAnMTAnLCBsYWJlbDogJ1RvcCAxMCBTdG9yZXMnIH0sXHJcbiAgICB7IHZhbHVlOiAnMTUnLCBsYWJlbDogJ1RvcCAxNSBTdG9yZXMnIH0sXHJcbiAgXTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgem9uZTogTmdab25lLFxyXG4gICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcclxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixwcml2YXRlIHJvdXRlcjpSb3V0ZXIscHJpdmF0ZSBleGNlbFNlcnZpY2U6IEV4Y2VsU2VydmljZSxcclxuICAgIHByaXZhdGUgc2VydmljZTogVHJhZmZpY1NlcnZpY2UscHVibGljIGdzOiBHbG9iYWxTdGF0ZVNlcnZpY2UsIHByaXZhdGUgZmI6Rm9ybUJ1aWxkZXIsXHJcbiAgICBwcml2YXRlIGNkOiBDaGFuZ2VEZXRlY3RvclJlZixwcml2YXRlIHRvYXN0OlRvYXN0U2VydmljZSwgcHJpdmF0ZSBtb2RhbFNlcnZpY2U6IE5nYk1vZGFsLFxyXG4gICkge1xyXG4gXHJcbiAgICAgICAgIHRoaXMuZm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xyXG4gICAgICAgICAgIHNlbGVjdFZhbHVlOiBuZXcgRm9ybUNvbnRyb2woJycpIC8vIEluaXRpYWxpemUgYXMgRm9ybUNvbnRyb2xcclxuICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgdGhpcy5mb3JtMSA9IHRoaXMuZmIuZ3JvdXAoe1xyXG4gICAgICAgICAgIHNlbGVjdFZhbHVlOiBuZXcgRm9ybUNvbnRyb2woJycpIC8vIEluaXRpYWxpemUgYXMgRm9ybUNvbnRyb2xcclxuICAgICAgICAgfSk7XHJcbiAgfVxyXG4gIEBWaWV3Q2hpbGQoXCJ0XCIsIHsgc3RhdGljOiBmYWxzZSB9KSB0b29sdGlwOiBOZ2JUb29sdGlwO1xyXG4gIHRvb2x0aXBWYWx1ZTogc3RyaW5nO1xyXG4gIGJvdW5jZVZhbHVlMTphbnk7XHJcbiAgY2xpZW50QVBJRGF0YTphbnk7XHJcbiAgdXNlcnM6YW55O1xyXG4gICBzdWIyOlN1YnNjcmlwdGlvbiB8IHVuZGVmaW5lZFxyXG4gICBwcml2YXRlIGlzSW5pdGlhbGl6ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgcHJvY2Vzc1R5cGU9XCJtaXNzZWRvcHBvcnR1bml0aWVzXCJcclxuICAgdHJlbmR0eXBlVmFsdWU6IGFueSA9J2F2ZXJhZ2UnO1xyXG4gICBub3JtYWxpemU6YW55O1xyXG4gICBpc1ZNUzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICBtYXBLZXlVcmw6YW55O1xyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgKG1hcGJveGdsIGFzIGFueSkuYWNjZXNzVG9rZW4gPSAncGsuZXlKMUlqb2lZbUZzWVdwcGRHRnVaMjhpTENKaElqb2lZMjB3WjJ4aWVtNTVNREZ4WVRKM2IyMXpiM0ZqTkhkd2F5Sjkubm5JSXp0N09lWWxZSHVmR0U4bEZXUSc7XHJcbiAgICB0aGlzLm9mZnNldCA9IDA7XHJcbiAgICB0aGlzLmxpbWl0PTEwO1xyXG4gICAgY29uc3QgdXNlckRhdGE6IGFueSA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJ1c2VyLWluZm9cIikgfHwgXCJ7fVwiKTtcclxuICAgIHRoaXMudXNlcnMgPSB1c2VyRGF0YTtcclxuICAgIHRoaXMudG9wU3RvcmVzU2VsZWN0Q29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgnNScpO1xyXG4gIHRoaXMuc2VydmljZS5tYXBLZXlVcmwgPSB0aGlzLm1hcEtleVVybDtcclxuICAgIC8vIGNvbnN0IGNsaWVudERhdGE6YW55ID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcImNsaWVudC1kZXRhaWxzXCIpIHx8IFwie31cIik7XHJcbiAgICAvLyB0aGlzLmNsaWVudERhdGEgPSBjbGllbnREYXRhXHJcbiAgICAvLyBjb25zdCBjbGllbnRBUElEYXRhOmFueSA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJjbGllbnRBUEktZGV0YWlsc1wiKSB8fCBcInt9XCIpO1xyXG4gICAgLy8gdGhpcy5jbGllbnRBUElEYXRhID0gY2xpZW50QVBJRGF0YVxyXG4gICAgdGhpcy5ncz8uZGF0YVJhbmdlVmFsdWVcclxuICAgICAgPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxkZWJvdW5jZVRpbWUoMzAwKSwpXHJcbiAgICAgIC5zdWJzY3JpYmUoKGRhdGE6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmKGRhdGEpe1xyXG4gICAgICAgICAgdGhpcy5oZWFkZXJEYXRhID0gZGF0YTtcclxuICAgICAgICAgIHRoaXMudmFsdWVDb252ZXJzaW9uUmF0ZT0nJztcclxuICAgICAgICAgIHRoaXMuZGF0ZUxlbmd0aCA9IGdldERheXNCZXR3ZWVuRGF0ZXMoZGF0YT8uZGF0ZS5zdGFydERhdGUsIGRhdGE/LmRhdGUuZW5kRGF0ZSk7XHJcbiAgICAgICAgICBpZiAodGhpcy5kYXRlTGVuZ3RoID4gMjgpXHJcbiAgICAgICAgICAgIHRoaXMuZGF0ZVR5cGUgPSBcIm1vbnRobHlcIjtcclxuICAgICAgICAgIGVsc2UgaWYgKHRoaXMuZGF0ZUxlbmd0aCA+IDUpXHJcbiAgICAgICAgICAgIHRoaXMuZGF0ZVR5cGUgPSBcIndlZWtseVwiO1xyXG4gICAgICAgICAgZWxzZSBpZih0aGlzLmRhdGVMZW5ndGggPT09IDApXHJcbiAgICAgICAgICAgIHRoaXMuZGF0ZVR5cGUgPSBcIndlZWtseVwiO1xyXG4gICAgICAgICAgdGhpcy52YWx1ZVR5cGU9XCJhY3R1YWxcIjtcclxuICAgICAgICAgIHRoaXMudHlwZVZhbHVlPVwic3VtXCJcclxuICAgICAgICAgIHRoaXMuaXNBdmVyYWdlID0gZmFsc2VcclxuICAgICAgICAgIHRoaXMuaXNBdmVyYWdlRm9vdGZhbGwgPSBmYWxzZVxyXG4gICAgICAgICAgdGhpcy5jaGVja1RvZGF5UmVwb3J0U3RhdHVzKCk7XHJcbiAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgXHJcbiAgfSAgXHJcbiAgXHJcbiAgY2hlY2tUb2RheVJlcG9ydFN0YXR1cygpOiB2b2lkIHtcclxuICAgIHRoaXMuZGF0YVByb2Nlc3NlZExvYWRpbmcgPSB0cnVlO1xyXG4gICAgY29uc3QgcmVwb3J0UGFyYW1zID0ge1xyXG4gICAgICBjbGllbnRJZDogdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQsXHJcbiAgICAgIGZyb21EYXRlOiB0aGlzLmhlYWRlckRhdGE/LmRhdGU/LnN0YXJ0RGF0ZSxcclxuICAgICAgdG9EYXRlOiB0aGlzLmhlYWRlckRhdGE/LmRhdGU/LmVuZERhdGVcclxuICAgIH07XHJcbiAgICB0aGlzLnNlcnZpY2UuZ2V0Q2hlY2tUb2RheVJlcG9ydFN0YXR1cyhyZXBvcnRQYXJhbXMpXHJcbiAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgdGhpcy5kYXRhUHJvY2Vzc2VkTG9hZGluZyA9IGZhbHNlXHJcbiAgICAgICAgdGhpcy5zaG93UmVwb3J0UHJvY2Vzc2luZ0NhcmQgPSByZXM/LmRhdGE/LnJlcG9ydFNlbmRTdGF0dXMgPT09IHRydWU7XHJcbiAgICAgICAgdGhpcy55ZXN0ZXJkYXlEYXRlID0gcmVzPy5kYXRhPy55ZXN0ZXJkYXkgfHwgJyc7XHJcbiAgICAgICAgaWYgKCF0aGlzLnNob3dSZXBvcnRQcm9jZXNzaW5nQ2FyZCkge1xyXG4gICAgICAgICAgdGhpcy5pbml0aWFsaXplRGFzaGJvYXJkRGF0YSgpXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogKGVycikgPT4ge1xyXG4gICAgICAgIC8vIHRoaXMuaW5pdGlhbGl6ZURhc2hib2FyZERhdGEoKVxyXG4gICAgICAgIHRoaXMuc2hvd1JlcG9ydFByb2Nlc3NpbmdDYXJkID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5kYXRhUHJvY2Vzc2VkTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBpbml0aWFsaXplRGFzaGJvYXJkRGF0YSgpOiB2b2lkIHtcclxuICAgICAgdGhpcy5kYXRhUHJvY2Vzc2VkTG9hZGluZyA9IHRydWVcclxuICAgICAgICB0aGlzLnN1YjIgPSB0aGlzLnNlcnZpY2U/LmdldEJyYW5kRGV0YWlscyh0aGlzLnVzZXJzPy5jbGllbnRJZCA/IHRoaXMudXNlcnM/LmNsaWVudElkOnRoaXMuaGVhZGVyRGF0YT8uY2xpZW50KS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKHtcclxuICAgICAgICAgIG5leHQ6IChyZXM6YW55KSA9PiB7XHJcbiAgICAgICAgICAgIGlmKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKXtcclxuICAgICAgICAgICAgICB0aGlzLmRhdGFQcm9jZXNzZWRMb2FkaW5nID0gZmFsc2VcclxuICAgICAgICAgICAgICB0aGlzLmNsaWVudERhdGEgPSByZXM/LmRhdGE7XHJcbiAgICAgICAgICAgICAgdGhpcy5mZWF0dXJlQ29uZmlnID0gdGhpcy5jbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncztcclxuICAgICAgICAgICAgICB0aGlzLmlzRm9vdGZhbGxWaWV3ID0gdGhpcy5mZWF0dXJlQ29uZmlnPy5pc0Zvb3RmYWxsVmlldyB8fCBmYWxzZTtcclxuICAgICAgICAgICAgICB0aGlzLm5vcm1hbGl6ZSA9IHRoaXMuY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmlzTm9ybWFsaXplZDtcclxuICAgICAgICAgICAgICB0aGlzLnN0b3JlSWRhcnJheSA9IHRoaXMuaGVhZGVyRGF0YT8uc3RvcmVzLmZpbHRlcigoc3RvcmU6IGFueSkgPT4gc3RvcmUuY2hlY2tlZCkubWFwKChzdG9yZTogYW55KSA9PiBzdG9yZS5zdG9yZUlkKVxyXG4gICAgICAgICAgICAgIHRoaXMudGFibGVvYmogPSB7XHJcbiAgICAgICAgICAgICAgICBmcm9tRGF0ZTogdGhpcy5oZWFkZXJEYXRhPy5kYXRlLnN0YXJ0RGF0ZSxcclxuICAgICAgICAgICAgICAgIHRvRGF0ZTogdGhpcy5oZWFkZXJEYXRhPy5kYXRlLmVuZERhdGUsXHJcbiAgICAgICAgICAgICAgICBzdG9yZUlkOiB0aGlzLmhlYWRlckRhdGE/LnN0b3Jlcy5maWx0ZXIoKHN0b3JlOiBhbnkpID0+IHN0b3JlLmNoZWNrZWQpLm1hcCgoc3RvcmU6IGFueSkgPT4gc3RvcmUuc3RvcmVJZCksXHJcbiAgICAgICAgICAgICAgICBjbGllbnRJZDogdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPyB0aGlzLmhlYWRlckRhdGE/LmNsaWVudCA6JycsXHJcbiAgICAgICAgICAgICAgICB2YWx1ZVR5cGU6IHRoaXMudmFsdWVUeXBlLFxyXG4gICAgICAgICAgICAgICAgbm9iOnRoaXMuY2xpZW50RGF0YS5mZWF0dXJlQ29uZmlncy5pc05PQixcclxuICAgICAgICAgICAgICAgIGRhdGVUeXBlOiB0aGlzLmRhdGVUeXBlLFxyXG4gICAgICAgICAgICAgICAgbm9ybWFsaXplOiB0aGlzLm5vcm1hbGl6ZVxyXG4gICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICBpZiAodGhpcy5pc0Zvb3RmYWxsVmlldykge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5nZXRGb290ZmFsbENhcmQoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0TWlzc2VkT3Bwb3J0dW5pdHlDYXJkKCk7XHJcbiAgICAgICAgICAgICAgICAgdGhpcy5nZXRUYWJsZSgpO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmdldFpvbmVWYWx1ZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgaWYodGhpcy5zdG9yZUlkYXJyYXkubGVuZ3RoID09PSAxKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmdldFJlY2FwKCk7XHJcbiAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuZ2V0Vmx1ZXMoKTtcclxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5pc0luaXRpYWxpemVkKSB7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuaXNJbml0aWFsaXplZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pc0NvbnZlcnNpb24gPXRoaXMuY2xpZW50RGF0YS5mZWF0dXJlQ29uZmlncy5pc05PQlxyXG4gICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICB0aGlzLnNlcnZpY2U/LnRvZ2dsZW5vYih0aGlzLmNsaWVudERhdGEuZmVhdHVyZUNvbmZpZ3MuaXNOT0IpO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLnNlcnZpY2U/LnRvZ2dsZUF2ZXJhZ2UoZmFsc2UpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgdGhpcy5pc1ZNUyAgPSB0aGlzLmNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5pc1ZNUyB8fCBmYWxzZTtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0Q29udmVyc2lvblZhbHVlKCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGFQcm9jZXNzZWRMb2FkaW5nID0gZmFsc2VcclxuICAgICAgICAgICAgICAgIC8vIHRoaXMuY29udmVyc2lvblZhbHVlID0gdGhpcy5jbGllbnREYXRhLmZlYXR1cmVDb25maWdzLmlzTk9CXHJcbiAgICAgICAgICAgICAgICAvLyA/IFwiTm9CIERlcml2ZWRcIlxyXG4gICAgICAgICAgICAgICAgLy8gOiB0aGlzLmNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzXHJcbiAgICAgICAgICAgICAgICAvLyAgICAgPy5taXNzZWRPcHBvcnR1bml0eUNhbGN1bGF0aW9uID09PSAnZW5nYWdlcnMtY29udmVyc2lvbidcclxuICAgICAgICAgICAgICAgIC8vID8gXCJlbmdhZ2Vyc1wiXHJcbiAgICAgICAgICAgICAgICAvLyA6IFwiZm9vdGZhbGxcIjtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0RnVubmFsKCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmdldFRhYmxlKCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnBlcmZvcm1hbmNlKCk7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLm5vcm1hbGl6ZSA9PT0gdHJ1ZSl7ICBcclxuICAgICAgICAgICAgICAgICAgdGhpcy56b25lRHdlbGxUaW1lU3BsaXREYXRhID1bXTtcclxuICAgICAgICAgICAgICAgICAgdGhpcy56b25lTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLnpvbmVOb0RhdGEgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLnN0b3JlT3BlcmF0aW9uRGF0YSA9W107XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuYXVMb2NhdGlvbnMgPVtdO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLm1wYWxvYWRpbmcgPWZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLm1hcG5vRGF0YT0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZXtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0Wm9uZSgpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5nZXRab25lVmFsdWUoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0TWFwKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB0aGlzLmdldEludGlhbCgpO1xyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vYiA9ICEhdGhpcy5jbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uaXNOT0I7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5jb252ZXJzaW9uVmFsdWUgPSB0aGlzLm5vYiA/ICdOb0IgRGVyaXZlZCcgOiB0aGlzLmNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5taXNzZWRPcHBvcnR1bml0eUNhbGN1bGF0aW9uID09PSdcImVuZ2FnZXJzLWNvbnZlcnNpb25cIicgPyAnY29udmVyc2lvbic6ICdmb290ZmFsbCcgO1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5jb252ZXJzaW9uVmFsdWUgPSB0aGlzLm5vYiA/ICdOb0IgRGVyaXZlZCcgOiAnZm9vdGZhbGwnO1xyXG4gICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgdGhpcy5vYmpEYXRhID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGZyb21EYXRlOiB0aGlzLmhlYWRlckRhdGE/LmRhdGU/LnN0YXJ0RGF0ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB0b0RhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yZUlkOiB0aGlzLmhlYWRlckRhdGE/LnN0b3Jlcy5maWx0ZXIoKHN0b3JlOiBhbnkpID0+IHN0b3JlLmNoZWNrZWQpLm1hcCgoc3RvcmU6IGFueSkgPT4gc3RvcmUuc3RvcmVJZCksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpZW50SWQ6IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NUeXBlOiB0aGlzLnByb2Nlc3NUeXBlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGVUeXBlOiB0aGlzLnR5cGUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyQnk6IHRoaXMudHJlbmR0eXBlVmFsdWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbGltaXQ6IDMxLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9mZnNldDogMCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZVR5cGU6IHRoaXMudmFsdWVUeXBlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG5vYjp0aGlzLm5vYixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBub3JtYWxpemU6IHRoaXMubm9ybWFsaXplXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLnN0b3JlSWRhcnJheT8ubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5ub3JtYWxpemUgPT09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXRSZWNhcFZpZGVvRGF0YSA9W11cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVjYXBsYW9kaW5nID1mYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVjYXBub0RhdGEgPXRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5nZXRSZWNhcCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRyZW5kdHlwZVZhbHVlID0gJ2FjdHVhbCc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXJ2aWNlPy50b2dnbGVub3JtYWxpemUodGhpcy5ub3JtYWxpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudHJlbmR0eXBlVmFsdWUgPSAnYXZlcmFnZSc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gQ2FsbCB0aGUgQVBJIGFmdGVyIG9iakRhdGEgaXMgZnVsbHkgcHJlcGFyZWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mb290ZmFsbFRyZW5kKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0ZUxlbmd0aCA9IGdldERheXNCZXR3ZWVuRGF0ZXModGhpcy5oZWFkZXJEYXRhPy5kYXRlLnN0YXJ0RGF0ZSwgdGhpcy5oZWFkZXJEYXRhPy5kYXRlLmVuZERhdGUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGFzZXRzID0gdGhpcy5kYXRhc2V0cy5maWx0ZXIoaXRlbSA9PiBpdGVtLnZhbHVlICE9PSAncG90ZW50aWFsQnV5ZXInKTtcclxuICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjb252ZXJzaW9uSXRlbSA9IHRoaXMuZGF0YXNldHMuZmluZChpdGVtID0+IGl0ZW0udmFsdWUgPT09ICdjb252ZXJzaW9uJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjb252ZXJzaW9uSXRlbSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNvbnZWYWx1ZSA9IHRoaXMuY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmNvbnZlcnNpb24/LnZhbHVlID8/ICdYJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBjb252ZXJzaW9uSXRlbS5sYWJlbCA9IGBNb3JlIHRoYW4gJHtjb252VmFsdWV9IG1pbnNgO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbWlzc2VkSXRlbSA9IHRoaXMuZGF0YXNldHMuZmluZChpdGVtID0+IGl0ZW0udmFsdWUgPT09ICdtaXNzZWRvcHBvcnR1bml0aWVzJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChtaXNzZWRJdGVtKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZnJvbSA9IHRoaXMuY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/Lm1pc3NlZE9wcG9ydHVuaXR5RnJvbT8udmFsdWUgPz8gJ1gnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRvID0gdGhpcy5jbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8ubWlzc2VkT3Bwb3J0dW5pdHlUbz8udmFsdWUgPz8gJ1knO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1pc3NlZEl0ZW0ubGFiZWwgPSBgJHtmcm9tfSAtICR7dG99IG1pbnNgO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGluaXRpYWxWYWx1ZSA9IHRoaXMuZ2V0SW5pdGlhbFZhbHVlKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2VsZWN0Q29udHJvbCA9IHRoaXMuZm9ybS5nZXQoJ3NlbGVjdFZhbHVlJykgYXMgRm9ybUNvbnRyb2w7XHJcbiAgICAgICAgaWYgKHNlbGVjdENvbnRyb2wpIHtcclxuICAgICAgICAgIHNlbGVjdENvbnRyb2wuc2V0VmFsdWUoaW5pdGlhbFZhbHVlKTtcclxuICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtMS5nZXQoJ3NlbGVjdFZhbHVlJyk/LnNldFZhbHVlKGluaXRpYWxWYWx1ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm0xID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcFN0b3Jlc1NlbGVjdENvbnRyb2w6IHRoaXMudG9wU3RvcmVzU2VsZWN0Q29udHJvbFxyXG4gICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRvcFN0b3Jlc1NlbGVjdENvbnRyb2wudmFsdWVDaGFuZ2VzXHJcbiAgICAgICAgICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKHZhbHVlOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkICYmIHZhbHVlICE9PSBudWxsICYmIHZhbHVlICE9PSAnJykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uVmFsdWVDaGFuZ2VUb3BTdG9yZXModmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRldGFpbGVkQ2hhcnRzPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gICB0aGlzLnNlbGVjdGVkVGFicygnZm9vdGZhbGwnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gICB0aGlzLnNlbGVjdGVkVGFiID0gXCJ0cmFmZmljXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBcInRyYWZmaWNcIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gICB0aGlzLnNlbGN0ZWRWYWx1ZSA9J1RyYWZmaWMgQW5hbHlzaXMnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyAgIHRoaXMuc2VsZWN0ZWRUYWJzKCd0cmFmZmljJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIH1cclxuICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YXNldHNDYXJkID0gW1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB7IHZhbHVlOiB0aGlzLmZvb3RmYWxsVmFsdWUsIGxhYmVsOiB0aGlzLnNlbGN0ZWRWYWx1ZSB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7IHZhbHVlOiBcImRlbW9ncmFwaGljXCIsIGxhYmVsOiBcIkRlbW9ncmFwaGljIEFuYWx5c2lzXCIgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgeyB2YWx1ZTogXCJidXllclwiLCBsYWJlbDogXCJCdXllciBBbmFseXNpc1wiIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICBdO1xyXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy50cmFmZmljRGF0YSA9IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgeyB2YWx1ZTogNywgbGFiZWw6IFwiTGFzdCA3IERheXNcIiB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7IHZhbHVlOiAzMCwgbGFiZWw6IFwiTGFzdCAzMCBEYXlzXCIgfSxcclxuICAgICAgICAgICAgICAgICAgICAgIF07XHJcbiAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvb3RmYWxsRGF0ZSA9dGhpcy50cmFmZmljRGF0YVswXS52YWx1ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5vYmpEYXRhVHJhZmZpYyA9IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZnJvbURhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uc3RhcnREYXRlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b0RhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmVJZDogdGhpcy5oZWFkZXJEYXRhPy5zdG9yZXMuZmlsdGVyKChzdG9yZTphbnkpID0+IHN0b3JlLmNoZWNrZWQpLm1hcCgoc3RvcmU6YW55KSA9PiBzdG9yZS5zdG9yZUlkKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xpZW50SWQ6dGhpcy5oZWFkZXJEYXRhPy5jbGllbnQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NUeXBlOiAnZm9vdGZhbGwnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBub3JtYWxpemVkRGF0YTogZmFsc2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlVHlwZSA6dGhpcy52YWx1ZVR5cGUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG5vYjp0aGlzLm5vYixcclxuICAgICAgICAgICAgICAgICAgICAgICAgbm9ybWFsaXplOiB0aGlzLm5vcm1hbGl6ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICAgIGlmKHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTknKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFRhYiA9IFwiZm9vdGZhbGxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBcImZvb3RmYWxsXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsY3RlZFZhbHVlID0nRm9vdGZhbGwgQW5hbHlzaXMnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkVGFicygnZm9vdGZhbGwnKTtcclxuICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSBcInRyYWZmaWNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBcInRyYWZmaWNcIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxjdGVkVmFsdWUgPSdUcmFmZmljIEFuYWx5c2lzJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFRhYnMoJ3RyYWZmaWMnKTtcclxuICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5jaGFydE5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5jaGFydGxvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAvLyB0aGlzLmNkPy5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICAgICAgICAvLyBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShcImNsaWVudEFQSS1kZXRhaWxzXCIsIEpTT04uc3RyaW5naWZ5KHRoaXMuY2xpZW50RGF0YT8uY2xpZW50QXBpKSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuc3ViMj8udW5zdWJzY3JpYmUoKVxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5zdWIyPy51bnN1YnNjcmliZSgpXHJcbiAgICAgICAgICAgIHRoaXMuZGF0YVByb2Nlc3NlZExvYWRpbmcgPSBmYWxzZVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIC8vIE9ubHkgcHJvY2VzcyB0aGUgbGF0ZXN0IGRhdGEgYWZ0ZXIgZGVib3VuY2UgdGltZVxyXG4gICAgICAvLyB0aGlzLmluaXRNYXAoKTtcclxuICAgICAgdGhpcy50b29sdGlwVmFsdWUgPSBcIkRlZmF1bHQgVG9vbHRpcCBUZXh0XCI7XHJcbiAgICAgICAgaWYgKHRoaXMuc3RvcmVJZGFycmF5Py5sZW5ndGggPT09IDEgJiYgdGhpcy5oZWFkZXJEYXRhPy5kYXRlPy5zdGFydERhdGUgPT09IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSkge1xyXG4gICAgICAgICAgdGhpcy5pc0Rpc2FibGVkID0gdHJ1ZVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLmlzRGlzYWJsZWQgPSBmYWxzZVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICBcclxuXHJcbiAgc2V0Q29udmVyc2lvblZhbHVlKCkge1xyXG4gICAgY29uc3QgY29udmVyc2lvblR5cGUgPSB0aGlzLmNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5jb252ZXJzaW9uQ2FsY3VsYXRpb247XHJcbiAgICBjb25zdCBpc05PQiA9IHRoaXMuY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmlzTk9CO1xyXG4gIFxyXG4gICAgaWYgKGlzTk9CKSB7XHJcbiAgICAgIHN3aXRjaCAoY29udmVyc2lvblR5cGUpIHtcclxuICAgICAgICBjYXNlICdmb290ZmFsbC1jb3VudCc6XHJcbiAgICAgICAgICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9ICdmb290ZmFsbCc7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdlbmdhZ2Vycy1jb3VudCc6XHJcbiAgICAgICAgICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9ICdlbmdhZ2Vycyc7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdiaWxsYWJsZS1lbnRpdGllcyc6XHJcbiAgICAgICAgICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9ICdQb3RlbnRpYWwgQnV5ZXJzJztcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9ICdmb290ZmFsbCc7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY29udmVyc2lvblZhbHVlID0gJ2Zvb3RmYWxsJztcclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgaXNSZWxldmFudENvbnZlcnNpb24odmFsdWU6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIFsnZm9vdGZhbGwnLCAnZW5nYWdlcnMnLCAnUG90ZW50aWFsIEJ1eWVycycsICdOb0IgRGVyaXZlZCddLmluY2x1ZGVzKHZhbHVlKTtcclxuICB9XHJcbiAgZ2V0Vmx1ZXMoKSB7XHJcbiAgICBpZiAodGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInKSB7XHJcbiAgICAgIHRoaXMuZm9vdGZhbGxkYXRhc2V0cyA9IFtcclxuICAgICAgICB7IHZhbHVlOiAnZm9vdGZhbGwnLCBsYWJlbDogJ0Zvb3RmYWxsJyB9LFxyXG4gICAgICAgIHsgdmFsdWU6ICdib3VuY2VkJywgbGFiZWw6IGBMZXNzIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZX0gbWlucyBGb290ZmFsbGAgfSxcclxuICAgICAgICB7IHZhbHVlOiAnZW5nYWdlcicsIGxhYmVsOiBgTW9yZSB0aGFuICR7dGhpcy5mZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWV9IG1pbnNgIH0sXHJcbiAgICAgICAgeyB2YWx1ZTogJ21pc3NlZE9wcG9ydHVuaXR5JywgbGFiZWw6IGAke3RoaXMuZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlGcm9tLnZhbHVlfSAtICR7dGhpcy5mZWF0dXJlQ29uZmlnPy5taXNzZWRPcHBvcnR1bml0eVRvLnZhbHVlfSBtaW5zYCB9LFxyXG4gICAgICAgIHsgdmFsdWU6ICdjb252ZXJzaW9uJywgbGFiZWw6IGBNb3JlIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmNvbnZlcnNpb24udmFsdWV9IG1pbnNgIH1cclxuICAgICAgXTtcclxuICAgICAgdGhpcy5ib3VuY2VkYXRhc2V0cyA9IFtcclxuICAgICAgICB7IHZhbHVlOiAnZm9vdGZhbGwnLCBsYWJlbDogJ0Zvb3RmYWxsJyB9LFxyXG4gICAgICAgIHsgdmFsdWU6ICdib3VuY2VkJywgbGFiZWw6IGBMZXNzIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZX0gbWlucyBGb290ZmFsbGAgfSxcclxuICAgICAgICB7IHZhbHVlOiAnZW5nYWdlcicsIGxhYmVsOiBgTW9yZSB0aGFuICR7dGhpcy5mZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWV9IG1pbnNgIH0sXHJcbiAgICAgICAgeyB2YWx1ZTogJ21pc3NlZE9wcG9ydHVuaXR5JywgbGFiZWw6IGAke3RoaXMuZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlGcm9tLnZhbHVlfS0ke3RoaXMuZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlUby52YWx1ZX0gbWluc2AgfSxcclxuICAgICAgICB7IHZhbHVlOiAnY29udmVyc2lvbicsIGxhYmVsOiBgTW9yZSB0aGFuICR7dGhpcy5mZWF0dXJlQ29uZmlnPy5jb252ZXJzaW9uLnZhbHVlfSBtaW5zYCB9XHJcbiAgICAgIF07XHJcbiAgICB9IFxyXG5cclxuICAgIHRoaXMuZm9vdGZhbGxWYWx1ZTEgPSB0aGlzLmZvb3RmYWxsZGF0YXNldHNbMF0udmFsdWU7XHJcbiAgICB0aGlzLmJvdW5jZVZhbHVlMSA9IHRoaXMuYm91bmNlZGF0YXNldHNbMV0udmFsdWU7XHJcbiAgICB0aGlzLmZvb3RmYWxsTGFiZWwgPSB0aGlzLmZvb3RmYWxsZGF0YXNldHNbMF0ubGFiZWw7XHJcbiAgICB0aGlzLmJvdW5jZUxhYmVsID0gdGhpcy5ib3VuY2VkYXRhc2V0c1sxXS5sYWJlbDtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIC8vIEluaXRpYWxpemUgdG9vbHRpcHMgYWZ0ZXIgdGhlIHZpZXcgaXMgaW5pdGlhbGl6ZWRcclxuICAgIGNvbnN0IHRvb2x0aXBUcmlnZ2VyTGlzdCA9IFtdLnNsaWNlLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnW2RhdGEtYnMtdG9nZ2xlPVwidG9vbHRpcFwiXScpKTtcclxuICAgIHRvb2x0aXBUcmlnZ2VyTGlzdC5mb3JFYWNoKGZ1bmN0aW9uICh0b29sdGlwVHJpZ2dlckVsKSB7XHJcbiAgICAgIG5ldyBib290c3RyYXAuVG9vbHRpcCh0b29sdGlwVHJpZ2dlckVsKTtcclxuICAgIH0pO1xyXG4gIH1cclxuICBnZXRGaWx0ZXJlZEJvdW5jZURhdGFzZXRzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuYm91bmNlZGF0YXNldHMuZmlsdGVyKGRhdGFzZXQgPT4gZGF0YXNldC52YWx1ZSAhPT0gdGhpcy5mb290ZmFsbFZhbHVlMSk7XHJcbiAgfVxyXG4gIFxyXG4gIC8vIEZpbHRlciB0aGUgZm9vdGZhbGwgb3B0aW9ucyB3aGVuIHRoZSBib3VuY2VWYWx1ZSBjaGFuZ2VzXHJcbiAgZ2V0RmlsdGVyZWRGb290ZmFsbERhdGFzZXRzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9vdGZhbGxkYXRhc2V0cy5maWx0ZXIoZGF0YXNldCA9PiBkYXRhc2V0LnZhbHVlICE9PSB0aGlzLmJvdW5jZVZhbHVlMSk7XHJcbiAgfVxyXG4gIGZvb3RmYWxsVmFsdWUxPSdmb290ZmFsbCdcclxuICBvblZhbHVlQ2hhbmdlKGV2dDogYW55KSB7XHJcbiAgICB0aGlzLmZvb3RmYWxsVmFsdWUxID0gZXZ0LnRhcmdldC52YWx1ZTtcclxuaWYoZXZ0LnRhcmdldC52YWx1ZSA9PSAnZm9vdGZhbGwnKVxyXG4gIHRoaXMuZm9vdGZhbGxMYWJlbCA9ICdGb290ZmFsbCdcclxuZWxzZSBpZihldnQudGFyZ2V0LnZhbHVlID09ICdib3VuY2VkJylcclxuICB0aGlzLmZvb3RmYWxsTGFiZWwgPSB0aGlzLmhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1Mic/YExlc3MgdGhhbiAke3RoaXMuZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlfSBtaW5zIEZvb3RmYWxsYDogJ0JvdW5jZWQgRm9vdGZhbGwnXHJcbmVsc2UgaWYoZXZ0LnRhcmdldC52YWx1ZSA9PSAnZW5nYWdlcicpXHJcbiAgdGhpcy5mb290ZmFsbExhYmVsID0gdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInP2BNb3JlIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZX0gbWluc2A6ICdFbmdhZ2VycydcclxuZWxzZSBpZihldnQudGFyZ2V0LnZhbHVlID09ICdtaXNzZWRPcHBvcnR1bml0eScpXHJcbiAgdGhpcy5mb290ZmFsbExhYmVsID0gdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInP2Ake3RoaXMuZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlGcm9tLnZhbHVlfS0ke3RoaXMuZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlUby52YWx1ZX0gbWluc2A6ICdNaXNzZWQgT3Bwb3J0dW5pdHknXHJcbmVsc2UgaWYoZXZ0LnRhcmdldC52YWx1ZSA9PSAncG90ZW50aWFsQnV5ZXInKVxyXG4gIHRoaXMuZm9vdGZhbGxMYWJlbCA9ICdQb3RlbnRpYWwgQnV5ZXInXHJcbmVsc2UgaWYoZXZ0LnRhcmdldC52YWx1ZSA9PSAnY29udmVyc2lvbicpXHJcbiAgdGhpcy5mb290ZmFsbExhYmVsID0gdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInP2BNb3JlIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmNvbnZlcnNpb24udmFsdWV9IG1pbnNgOiAnY29udmVyc2lvbidcclxuICAgIGlmKHRoaXMuZm9vdGZhbGxWYWx1ZTEgIT09IHRoaXMuYm91bmNlVmFsdWUxKVxyXG4gICAgICB0aGlzLnBlcmZvcm1hbmNlKCk7XHJcbiAgICBlbHNlIFxyXG4gICAgdGhpcy50b2FzdC5nZXRFcnJvclRvYXN0KCdTYW1lIHZhbHVlIG5vdCBmaWx0ZXJlZCcpXHJcbiAgfVxyXG4gIG9uQm91bmNlQ2hhbmdlKGV2dDogYW55KSB7XHJcbiAgICB0aGlzLmJvdW5jZVZhbHVlMSA9IGV2dC50YXJnZXQudmFsdWU7XHJcbiAgICBpZihldnQudGFyZ2V0LnZhbHVlID09ICdmb290ZmFsbCcpXHJcbiAgICAgIHRoaXMuYm91bmNlTGFiZWwgPSAnRm9vdGZhbGwnXHJcbiAgICBlbHNlIGlmKGV2dC50YXJnZXQudmFsdWUgPT0gJ2JvdW5jZWQnKVxyXG4gICAgICB0aGlzLmJvdW5jZUxhYmVsID0gdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInP2BMZXNzIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZX0gbWlucyBGb290ZmFsbGA6ICdCb3VuY2VkIEZvb3RmYWxsJ1xyXG4gICAgZWxzZSBpZihldnQudGFyZ2V0LnZhbHVlID09ICdlbmdhZ2VyJylcclxuICAgICAgdGhpcy5ib3VuY2VMYWJlbCA9IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJz9gTW9yZSB0aGFuICR7dGhpcy5mZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWV9IG1pbnNgOiAnRW5nYWdlcnMnXHJcbiAgICBlbHNlIGlmKGV2dC50YXJnZXQudmFsdWUgPT0gJ21pc3NlZE9wcG9ydHVuaXR5JylcclxuICAgICAgdGhpcy5ib3VuY2VMYWJlbCA9IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJz9gJHt0aGlzLmZlYXR1cmVDb25maWc/Lm1pc3NlZE9wcG9ydHVuaXR5RnJvbS52YWx1ZX0tJHt0aGlzLmZlYXR1cmVDb25maWc/Lm1pc3NlZE9wcG9ydHVuaXR5VG8udmFsdWV9IG1pbnNgOiAnTWlzc2VkIE9wcG9ydHVuaXR5J1xyXG4gICAgZWxzZSBpZihldnQudGFyZ2V0LnZhbHVlID09ICdwb3RlbnRpYWxCdXllcicpXHJcbiAgICAgIHRoaXMuYm91bmNlTGFiZWwgPSAnUG90ZW50aWFsIEJ1eWVyJ1xyXG4gICAgZWxzZSBpZihldnQudGFyZ2V0LnZhbHVlID09ICdjb252ZXJzaW9uJylcclxuICAgICAgdGhpcy5ib3VuY2VMYWJlbCA9IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJyA/IGBNb3JlIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmNvbnZlcnNpb24udmFsdWV9IG1pbnNgIDogJ2NvbnZlcnNpb24nXHJcbiAgICBpZih0aGlzLmZvb3RmYWxsVmFsdWUxICE9PSB0aGlzLmJvdW5jZVZhbHVlMSlcclxuICAgIHRoaXMucGVyZm9ybWFuY2UoKTtcclxuICBlbHNlIFxyXG4gIHRoaXMudG9hc3QuZ2V0RXJyb3JUb2FzdCgnU2FtZSB2YWx1ZSBub3QgZmlsdGVyZWQnKVxyXG4gIH1cclxuICBjb252ZXJ0UGVyY2VudFRvUGl4ZWxzKHBlcmNlbnQ6IHN0cmluZywgbWF4UGVyY2VudDogbnVtYmVyLCBiYXNlRGltZW5zaW9uOiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgLy8gUmVtb3ZlIHRoZSAnJScgc2lnbiBhbmQgcGFyc2UgdGhlIHZhbHVlXHJcbiAgICBjb25zdCB2YWx1ZSA9IHBhcnNlRmxvYXQocGVyY2VudC5yZXBsYWNlKCclJywgJycpKTtcclxuICAgIGlmIChpc05hTih2YWx1ZSkpIHJldHVybiAwO1xyXG4gIFxyXG4gICAgLy8gQ2FsY3VsYXRlIHBpeGVsIHZhbHVlIGJhc2VkIG9uIHRoZSBtYXhpbXVtIHBlcmNlbnRhZ2UgYW5kIGJhc2UgZGltZW5zaW9uXHJcbiAgICByZXR1cm4gKHZhbHVlIC8gbWF4UGVyY2VudCkgKiBiYXNlRGltZW5zaW9uO1xyXG4gIH1cclxuICBcclxuXHJcbiAgZ2V0TWF4UGVyY2VudGFnZShkYXRhOiBhbnlbXSwgZmllbGQ6IHN0cmluZyk6IG51bWJlciB7XHJcbiAgICAvLyBFeHRyYWN0IGFuZCByZXR1cm4gdGhlIG1heGltdW0gcGVyY2VudGFnZSB2YWx1ZSBmcm9tIHRoZSBmaWVsZFxyXG4gICAgcmV0dXJuIE1hdGgubWF4KC4uLmRhdGEubWFwKGl0ZW0gPT4gcGFyc2VGbG9hdChpdGVtW2ZpZWxkXSkgfHwgMCkpO1xyXG4gIH1cclxuICBcclxuICAvLyBub3JtYWxpemVEYXRhKGRhdGE6IGFueVtdKTogYW55W10ge1xyXG4gIC8vICAgY29uc3QgbWF4VG9wUGVyY2VudCA9IE1hdGgubWF4KC4uLmRhdGEubWFwKGl0ZW0gPT4gcGFyc2VGbG9hdChpdGVtLnRvcC5yZXBsYWNlKCclJywgJycpKSkpO1xyXG4gIC8vICAgY29uc3QgbWF4TGVmdFBlcmNlbnQgPSBNYXRoLm1heCguLi5kYXRhLm1hcChpdGVtID0+IHBhcnNlRmxvYXQoaXRlbS5sZWZ0LnJlcGxhY2UoJyUnLCAnJykpKSk7XHJcbiAgXHJcbiAgLy8gICByZXR1cm4gZGF0YS5tYXAoaXRlbSA9PiAoe1xyXG4gIC8vICAgICAuLi5pdGVtLFxyXG4gIC8vICAgICB0b3A6IHRoaXMuc2NhbGVQZXJjZW50KGl0ZW0udG9wLCBtYXhUb3BQZXJjZW50KSArICclJyxcclxuICAvLyAgICAgbGVmdDogdGhpcy5zY2FsZVBlcmNlbnQoaXRlbS5sZWZ0LCBtYXhMZWZ0UGVyY2VudCkgKyAnJSdcclxuICAvLyAgIH0pKTtcclxuICAvLyB9XHJcbiAgXHJcbiAgc2NhbGVQZXJjZW50KHBlcmNlbnQ6IHN0cmluZywgbWF4UGVyY2VudDogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IHBlcmNlbnRWYWx1ZSA9IHBhcnNlRmxvYXQocGVyY2VudC5yZXBsYWNlKCclJywgJycpKTtcclxuICAgIHJldHVybiAoKHBlcmNlbnRWYWx1ZSAvIG1heFBlcmNlbnQpICogMTAwKS50b0ZpeGVkKDIpO1xyXG4gIH1cclxuLy8gVG9nZ2xlIHRoZSB0b29sdGlwIGRpc3BsYXlcclxudG9nZ2xlVG9vbHRpcChwb2ludE5hbWU6IHN0cmluZykge1xyXG4gIHRoaXMuYWN0aXZlVG9vbHRpcCA9IHRoaXMuYWN0aXZlVG9vbHRpcCA9PT0gcG9pbnROYW1lID8gbnVsbCA6IHBvaW50TmFtZTtcclxufVxyXG5cclxucGVyZm9ybWFuY2UoKXtcclxuICB0aGlzLnBlcmZvcm1hbmNlTG9hZGluZyA9IHRydWU7XHJcbiAgdGhpcy5wZXJmb3JtYW5jZW5vRGF0YSA9IGZhbHNlO1xyXG4gIGxldCBvYmogPSB7XHJcbiAgICBjbGllbnRJZDp0aGlzLmhlYWRlckRhdGE/LmNsaWVudCxcclxuICAgIGZyb21EYXRlOiB0aGlzLmhlYWRlckRhdGE/LmRhdGUuc3RhcnREYXRlLFxyXG4gICAgdG9EYXRlOiB0aGlzLmhlYWRlckRhdGE/LmRhdGUuZW5kRGF0ZSxcclxuICAgIG5vcm1hbGl6ZTogdGhpcy5ub3JtYWxpemUsXHJcbiAgICBzdG9yZUlkOiB0aGlzLmhlYWRlckRhdGE/LnN0b3Jlcy5maWx0ZXIoKHN0b3JlOmFueSkgPT4gc3RvcmUuY2hlY2tlZCkubWFwKChzdG9yZTphbnkpID0+IHN0b3JlLnN0b3JlSWQpLFxyXG4gICBwcm9jZXNzdHlwZTE6IHRoaXMuZm9vdGZhbGxWYWx1ZTEsXHJcbiAgIHByb2Nlc3N0eXBlMiA6IHRoaXMuYm91bmNlVmFsdWUxLFxyXG4gICB0b3BTdG9yZXM6IHBhcnNlSW50KHRoaXMudG9wU3RvcmVzU2VsZWN0Q29udHJvbC52YWx1ZSksXHJcbiAgfTtcclxuICB0aGlzLnNlcnZpY2UucGVyZm9ybWFuY2VNYXRyaXgob2JqKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICA/LnN1YnNjcmliZSh7XHJcbiAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgdGhpcy5wZXJmb3JtYW5jZURhdGEgPSByZXM/LmRhdGE/LnBlcmZvcm1hbmNlRGF0YVxyXG4gICAgICAgIC8vIHRoaXMucGVyZm9ybWFuY2VEYXRhID0gdGhpcy5ub3JtYWxpemVEYXRhKHRoaXMucGVyZm9ybWFuY2VEYXRhKTtcclxuICAgICAgICAvLyBDYWxjdWxhdGUgbWF4aW11bSBwZXJjZW50YWdlc1xyXG4gICAgICAgIC8vIGNvbnN0IG1heFRvcCA9IE1hdGgubWF4KC4uLnRoaXMucGVyZm9ybWFuY2VEYXRhLm1hcCgoaXRlbTphbnkpID0+IHBhcnNlRmxvYXQoaXRlbS50b3AucmVwbGFjZSgnJScsICcnKSkpKTtcclxuICAgICAgICAvLyBjb25zdCBtYXhMZWZ0ID0gTWF0aC5tYXgoLi4udGhpcy5wZXJmb3JtYW5jZURhdGEubWFwKChpdGVtOmFueSkgPT4gcGFyc2VGbG9hdChpdGVtLmxlZnQucmVwbGFjZSgnJScsICcnKSkpKTtcclxuICAgICAgICBcclxuICAgICAgICAvLyBDb252ZXJ0IHBlcmZvcm1hbmNlIGRhdGEgdG8gcGl4ZWwgdmFsdWVzXHJcbiAgICAgICAgdGhpcy5wb2ludHMgPSB0aGlzLnBlcmZvcm1hbmNlRGF0YS5tYXAoKGRhdGE6IGFueSkgPT4gKHtcclxuICAgICAgICAgIG5hbWU6IGRhdGEuc3RvcmVOYW1lLFxyXG4gICAgICAgICAgc3RvcmVJZDogZGF0YS5zdG9yZUlkLFxyXG4gICAgICAgICAgYXZnRm9vdGZhbGw6IGRhdGEuYXZnLFxyXG4gICAgICAgICAgb3BlblRpbWU6IGRhdGEuYXZnT3BlblRpbWUsXHJcbiAgICAgICAgICBjbG9zZVRpbWU6IGRhdGEuYXZnQ2xvc2VUaW1lLFxyXG4gICAgICAgICAgdG9wOiBkYXRhLnRvcCwgLy8gQXNzdW1pbmcgNTAwcHggYXMgdGhlIGJhc2UgaGVpZ2h0XHJcbiAgICAgICAgICBsZWZ0OiBkYXRhLmxlZnQgIC8vIEFzc3VtaW5nIDEwMDBweCBhcyB0aGUgYmFzZSB3aWR0aFxyXG4gICAgICAgIH0pKTsgXHJcbiAgICAgICAgdGhpcy5wZXJmb3JtYW5jZUxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnBlcmZvcm1hbmNlbm9EYXRhID0gZmFsc2U7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5wZXJmb3JtYW5jZUxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnBlcmZvcm1hbmNlbm9EYXRhID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgb25WYWx1ZUNoYW5nZVRvcFN0b3JlcyhzZWxlY3RlZDogYW55KTogdm9pZCB7XHJcbiAgICBjb25zdCBwYXJzZWRWYWx1ZSA9IHBhcnNlSW50KHNlbGVjdGVkPy52YWx1ZSA/PyBzZWxlY3RlZCwgMTApO1xyXG4gICAgaWYgKCFpc05hTihwYXJzZWRWYWx1ZSkpIHtcclxuICAgICAgdGhpcy5wZXJmb3JtYW5jZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuICBnZXRUb29sdGlwVGV4dCgpOiBzdHJpbmcge1xyXG4gICAgLy8gTG9naWMgdG8gZGV0ZXJtaW5lIHRoZSB0b29sdGlwIHRleHRcclxuICAgIHJldHVybiBcIkR5bmFtaWMgVG9vbHRpcCBUZXh0IFwiICsgbmV3IERhdGUoKS50b0xvY2FsZVRpbWVTdHJpbmcoKTtcclxuICB9XHJcblxyXG4gIGdldEZ1bm5hbCgpe1xyXG4gICAgdGhpcy50YWJsZW9iai52YWx1ZVR5cGU9IHRoaXMudmFsdWVUeXBlLFxyXG4gICAgIHRoaXMudGFibGVvYmouZnJvbURhdGUgPSB0aGlzLmhlYWRlckRhdGE/LmRhdGUuc3RhcnREYXRlO1xyXG4gICAgIHRoaXMudGFibGVvYmoudG9EYXRlID0gdGhpcy5oZWFkZXJEYXRhPy5kYXRlLmVuZERhdGU7XHJcbiAgICAgaWYodGhpcy5jb252ZXJzaW9uVmFsdWUgPT09ICdmb290ZmFsbCcpe1xyXG4gICAgICB0aGlzLnRhYmxlb2JqLmNvbnZlcnNpb250eXBlID0gJ2Zvb3RmYWxsLWNvdW50JztcclxuICAgICB9IGlmICh0aGlzLmNvbnZlcnNpb25WYWx1ZSA9PT0gJ2VuZ2FnZXJzJyl7XHJcbiAgICAgIHRoaXMudGFibGVvYmouY29udmVyc2lvbnR5cGUgPSAnZW5nYWdlcnMtY291bnQnO1xyXG4gICAgIH1pZiAodGhpcy5jb252ZXJzaW9uVmFsdWUgPT09ICdQb3RlbnRpYWwgQnV5ZXJzJyl7XHJcbiAgICAgIHRoaXMudGFibGVvYmouY29udmVyc2lvbnR5cGUgPSAnYmlsbGFibGUtY291bnQnO1xyXG4gICAgIH0gaWYgKHRoaXMuY29udmVyc2lvblZhbHVlID09PSAnTm9CIERlcml2ZWQnKXtcclxuICAgICAgdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSA9ICdub2InO1xyXG4gICAgIH1cclxuICAgICBcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLm9mZnNldDtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnJlY2FwVmlkZW9EYXRlO1xyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmoubGltaXQ7IFxyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmouZXhwb3J0O1xyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmouc29ydDtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnNvcnRCeTtcclxuICAgIHRoaXMuaGVhdGxvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5oZWF0bm9EYXRhID0gZmFsc2U7XHJcbiAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLmRhdGVUeXBlXHJcbiAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgLmdldEZ1bm5lbENhcmRzKHRoaXMudGFibGVvYmopXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgIC8vIHRoaXMuZ2V0Q2FyZERhdGEgPSByZXM/LmRhdGE/LmNhcmQ7XHJcbiAgICAgICAgICAgIHRoaXMuaGVhdE1hcERhdGEgPSByZXM/LmRhdGE/LmZ1bm5lbENoYXJ0O1xyXG4gICAgICAgICAgIFxyXG4gICAgICAgICAgICB0aGlzLmhlYXRNYXAoKTtcclxuICAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmdldENhcmREYXRhID1bXTtcclxuICAgICAgICAgICAgdGhpcy5oZWF0TWFwRGF0YSA9W107XHJcbiAgICAgICAgICB0aGlzLmhlYXRsb2FkaW5nID0gZmFsc2VcclxuICAgICAgICAgIHRoaXMuaGVhdG5vRGF0YSA9IHRydWVcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgIHRoaXMuZ2V0Q2FyZERhdGEgPVtdO1xyXG4gICAgICAgICAgdGhpcy5oZWF0TWFwRGF0YSA9W107XHJcbiAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7fSxcclxuICAgICAgfSk7XHJcbiAgfVxyXG4gIGdldEZvb3RmYWxsQ2FyZERhdGE6YW55PVtdO1xyXG4gIGdldENvbnZlcnNpb25DYXJkRGF0YTphbnk9W107XHJcbiAgZ2V0Qm91bmNlZENhcmREYXRhOmFueSA9W107XHJcbiAgZ2V0RW5nYWdlcnNDYXJkRGF0YTphbnk9W107XHJcbiAgZ2V0UG90ZW50aWFsQnV5ZXJzQ2FyZERhdGE6YW55ID1bXTtcclxuICBnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE6YW55ID1bXTtcclxuICBnZXRQb3RlbnRpYWxCdXllcnNEYXRhOmFueT1bXTtcclxuICBnZXRJbnRpYWwoKXtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnJlY2FwVmlkZW9EYXRlO1xyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmouc29ydDtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnNvcnRCeTtcclxuICAgICh0aGlzLnRhYmxlb2JqLnZhbHVlVHlwZSA9IHRoaXMudmFsdWVUeXBlKSxcclxuICAgICh0aGlzLnRhYmxlb2JqLmZyb21EYXRlID0gdGhpcy5oZWFkZXJEYXRhPy5kYXRlLnN0YXJ0RGF0ZSk7XHJcbiAgdGhpcy50YWJsZW9iai50b0RhdGUgPSB0aGlzLmhlYWRlckRhdGE/LmRhdGUuZW5kRGF0ZTtcclxuICB0aGlzLmdldEZvb3RmYWxsQ2FyZCgpO1xyXG4gIHRoaXMuZ2V0Q29udmVyc2lvbkNhcmQoKTtcclxuICB0aGlzLmdldEJvdW5jZWRDYXJkKCk7XHJcbiAgdGhpcy5nZXRFbmdhZ2Vyc0NhcmQoKTtcclxuICB0aGlzLmdldFBvdGVudGlhbEJ1eWVyc0NhcmQoKTtcclxuICB0aGlzLmdldE1pc3NlZE9wcG9ydHVuaXR5Q2FyZCgpO1xyXG4gIHRoaXMuZ2V0UG90ZW50aWFsQnV5ZXJzKCk7XHJcbiAgfVxyXG4gIGZvb3RmYWxsbG9hZGluZyA9dHJ1ZTtcclxuICBmb290ZmFsbE5vZGF0YSA9ZmFsc2U7XHJcbiAgZ2V0Rm9vdGZhbGxDYXJkKCl7XHJcbiAgICB0aGlzLmZvb3RmYWxsbG9hZGluZyA9dHJ1ZTtcclxuICAgIHRoaXMuZm9vdGZhbGxOb2RhdGEgPWZhbHNlO1xyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmo/Lm9mZnNldDtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqPy5saW1pdDtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqPy5leHBvcnQ7XHJcbiAgICB0aGlzLnRhYmxlb2JqLmRhdGVUeXBlID0gdGhpcy5kYXRlVHlwZTtcclxuICAgIGNvbnNvbGUubG9nKFwi8J+agCB+IFRyYWZmaWNBbmFseXNpc0NvbXBvbmVudCB+IGdldEZvb3RmYWxsQ2FyZCB+IHRoaXMudGFibGVvYmo6XCIsIHRoaXMudGFibGVvYmopXHJcbiAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgLmdldEZvb3RkZmFsbENhcmRMaXN0KHRoaXMudGFibGVvYmopXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZ2V0Rm9vdGZhbGxDYXJkRGF0YSA9IHJlcz8uZGF0YTtcclxuICAgICAgICAgIGlmKHRoaXMuZ2V0Rm9vdGZhbGxDYXJkRGF0YT8uZGF0YT8uZm9vdGZhbGw/LmRhdGEubGVuZ3RoKXtcclxuICAgICAgICAgICAgdGhpcy5mb290ZmFsbGxpbmVDaGFydHMoKTtcclxuICAgICAgICAgICAgdGhpcy5mb290ZmFsbGxvYWRpbmcgPWZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmZvb3RmYWxsTm9kYXRhID1mYWxzZTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLmdldEZvb3RmYWxsQ2FyZERhdGEgPVtdO1xyXG4gICAgICAgICAgdGhpcy5mb290ZmFsbGxvYWRpbmcgPWZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5mb290ZmFsbE5vZGF0YSA9dHJ1ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIH0gZWxzZSB7IFxyXG4gICAgICAgICAgdGhpcy5nZXRGb290ZmFsbENhcmREYXRhID1bXTtcclxuICAgICAgICAgIHRoaXMuZm9vdGZhbGxsb2FkaW5nID1mYWxzZTtcclxuICAgICAgICAgIHRoaXMuZm9vdGZhbGxOb2RhdGEgPXRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgdGhpcy5nZXRGb290ZmFsbENhcmREYXRhID1bXTtcclxuICAgICAgICB0aGlzLmZvb3RmYWxsbG9hZGluZyA9ZmFsc2U7XHJcbiAgICAgICAgdGhpcy5mb290ZmFsbE5vZGF0YSA9dHJ1ZTtcclxuICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfSwgXHJcbiAgICAgIH0pXHJcbiAgfVxyXG4gIHNldENvbnZlcnNpb25UeXBlKGNvbnZlcnNpb25WYWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IG1hcDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcclxuICAgICAgJ2Zvb3RmYWxsJzogJ2Zvb3RmYWxsLWNvdW50JyxcclxuICAgICAgJ2VuZ2FnZXJzJzogJ2VuZ2FnZXJzLWNvdW50JyxcclxuICAgICAgJ1BvdGVudGlhbCBCdXllcnMnOiAnYmlsbGFibGUtY291bnQnLFxyXG4gICAgICAnTm9CIERlcml2ZWQnOiAnbm9iJyxcclxuICAgIH07XHJcbiAgICByZXR1cm4gbWFwW2NvbnZlcnNpb25WYWx1ZV0gfHwgJyc7XHJcbiAgfVxyXG4gIFxyXG4gIGdldENvbnZlcnNpb25DYXJkKCl7XHJcbiAgICBjb25zdCB7IHRhYmxlb2JqIH0gPSB0aGlzO1xyXG4gICAgZGVsZXRlIHRhYmxlb2JqLm9mZnNldDtcclxuICAgIGRlbGV0ZSB0YWJsZW9iai5saW1pdDtcclxuICAgIGRlbGV0ZSB0YWJsZW9iai5leHBvcnQ7XHJcbiAgICB0YWJsZW9iai5kYXRlVHlwZSA9IHRoaXMuZGF0ZVR5cGU7XHJcbiAgICB0YWJsZW9iai5jb252ZXJzaW9udHlwZSA9IHRoaXMuc2V0Q29udmVyc2lvblR5cGUodGhpcy5jb252ZXJzaW9uVmFsdWUpO1xyXG4gICAgICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAgICAgIC5nZXRDb252ZXJzaW9uQ2FyZExpc3QodGhpcy50YWJsZW9iailcclxuICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAgICA/LnN1YnNjcmliZSh7XHJcbiAgICAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgICAgdGhpcy5nZXRDb252ZXJzaW9uQ2FyZERhdGEgPSByZXM/LmRhdGE7XHJcbiAgICAgICAgICAgICAgLy8gIGlmICh0aGlzLm5vYikge1xyXG4gICAgICAgICAgICAgIC8vICAgdGhpcy52YWx1ZUNvbnZlcnNpb25SYXRlID0gdGhpcy5nZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/Lm5vYj8ubm9iO1xyXG4gICAgICAgICAgICAgIC8vICAgdGhpcy5jb252ZXJzaW9uVmFsdWUgPSAnTm9CIERlcml2ZWQnO1xyXG4gICAgICAgICAgICAgIC8vIH0gZWxzZSBpZiAodGhpcy5jbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8ubWlzc2VkT3Bwb3J0dW5pdHlDYWxjdWxhdGlvbiA9PT0gJ2VuZ2FnZXJzLWNvbnZlcnNpb24nKSB7XHJcbiAgICAgICAgICAgICAgLy8gICB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZW5nYWdlcnM/LnJhdGU7XHJcbiAgICAgICAgICAgICAgLy8gICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9ICdlbmdhZ2Vycyc7XHJcbiAgICAgICAgICAgICAgLy8gfSBlbHNlIHtcclxuICAgICAgICAgICAgICAvLyAgIHRoaXMudmFsdWVDb252ZXJzaW9uUmF0ZSA9IHRoaXMuZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5mb290ZmFsbD8ucmF0ZTtcclxuICAgICAgICAgICAgICAvLyAgIHRoaXMuY29udmVyc2lvblZhbHVlID0gJ2Zvb3RmYWxsJztcclxuICAgICAgICAgICAgICAvLyB9XHJcblxyXG4gICAgICAgICAgICAgIGNvbnN0IGNvbnZlcnNpb25UeXBlID0gdGhpcy5jbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uY29udmVyc2lvbkNhbGN1bGF0aW9uO1xyXG4gICAgICAgICAgICAgIGNvbnN0IGlzTk9CID0gdGhpcy5ub2I7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIGlmIChpc05PQikge1xyXG4gICAgICAgICAgICAgICAgc3dpdGNoIChjb252ZXJzaW9uVHlwZSkge1xyXG4gICAgICAgICAgICAgICAgICBjYXNlICdmb290ZmFsbC1jb3VudCc6XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy52YWx1ZUNvbnZlcnNpb25SYXRlID0gdGhpcy5nZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LmZvb3RmYWxsPy5yYXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29udmVyc2lvblZhbHVlID0gJ2Zvb3RmYWxsJztcclxuICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgY2FzZSAnZW5nYWdlcnMtY291bnQnOlxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudmFsdWVDb252ZXJzaW9uUmF0ZSA9IHRoaXMuZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5lbmdhZ2Vycz8ucmF0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9ICdlbmdhZ2Vycyc7XHJcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgIGNhc2UgJ2JpbGxhYmxlLWVudGl0aWVzJzpcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8ucG90ZW50aWFsQnV5ZXJzPy5yYXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29udmVyc2lvblZhbHVlID0gJ1BvdGVudGlhbCBCdXllcnMnO1xyXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0RGVmYXVsdENvbnZlcnNpb24oKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXREZWZhdWx0Q29udmVyc2lvbigpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgIH0gZWxzZSB7IFxyXG4gICAgICAgICAgICAgIHRoaXMuZ2V0Q29udmVyc2lvbkNhcmREYXRhID1bXTtcclxuICAgICAgICAgICB9XHJcbiAgICAgICAgIH0sXHJcbiAgICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgICB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YSA9W107XHJcbiAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgIH0sIFxyXG4gICAgICAgICB9KVxyXG4gICAgIH1cclxuXHJcbiAgICAgc2V0RGVmYXVsdENvbnZlcnNpb24oKSB7XHJcbiAgICAgIHRoaXMudmFsdWVDb252ZXJzaW9uUmF0ZSA9IHRoaXMuZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5mb290ZmFsbD8ucmF0ZTtcclxuICAgICAgdGhpcy5jb252ZXJzaW9uVmFsdWUgPSAnZm9vdGZhbGwnO1xyXG4gICAgfVxyXG4gICAgIGdldENvbnZlcnNpb25DYXJkMSgpe1xyXG4gICAgICBjb25zdCB7IHRhYmxlb2JqIH0gPSB0aGlzO1xyXG4gIGRlbGV0ZSB0YWJsZW9iai5vZmZzZXQ7XHJcbiAgZGVsZXRlIHRhYmxlb2JqLmxpbWl0O1xyXG4gIGRlbGV0ZSB0YWJsZW9iai5leHBvcnQ7XHJcbiAgdGFibGVvYmouZGF0ZVR5cGUgPSB0aGlzLmRhdGVUeXBlO1xyXG4gIHRhYmxlb2JqLmNvbnZlcnNpb250eXBlID0gdGhpcy5zZXRDb252ZXJzaW9uVHlwZSh0aGlzLmNvbnZlcnNpb25WYWx1ZSk7XHJcbiAgICAgICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAgICAgIC5nZXRDb252ZXJzaW9uQ2FyZExpc3QodGhpcy50YWJsZW9iailcclxuICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgIHRoaXMuZ2V0Q29udmVyc2lvbkNhcmREYXRhID0gcmVzPy5kYXRhO1xyXG4gICAgICAgICAgICAgICAgIGlmKHRoaXMuY29udmVyc2lvblZhbHVlID09PSAnZm9vdGZhbGwnKXtcclxuICAgICAgICAgICAgICAgICAgdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSA9ICdmb290ZmFsbC1jb3VudCc7ICB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZm9vdGZhbGw/LnJhdGU7XHJcbiAgICAgICAgICAgICAgICAgfSAgaWYgKHRoaXMuY29udmVyc2lvblZhbHVlID09PSAnZW5nYWdlcnMnKXtcclxuICAgICAgICAgICAgICAgICAgdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSA9ICdlbmdhZ2Vycy1jb3VudCc7IFxyXG4gICAgICAgICAgICAgICAgICB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZW5nYWdlcnM/LnJhdGU7XHJcbiAgICAgICAgICAgICAgICAgfWlmICh0aGlzLmNvbnZlcnNpb25WYWx1ZSA9PT0gJ1BvdGVudGlhbCBCdXllcnMnKXtcclxuICAgICAgICAgICAgICAgICAgdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSA9ICdiaWxsYWJsZS1jb3VudCc7IFxyXG4gICAgICAgICAgICAgICAgICB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8ucG90ZW50aWFsQnV5ZXJzPy5yYXRlO1xyXG4gICAgICAgICAgICAgICAgIH0gaWYgKHRoaXMuY29udmVyc2lvblZhbHVlID09PSAnTm9CIERlcml2ZWQnKXtcclxuICAgICAgICAgICAgICAgICAgdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSA9ICdub2InOyB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8ubm9iPy5ub2I7XHJcbiAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICB9IGVsc2UgeyBcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0Q29udmVyc2lvbkNhcmREYXRhID1bXTtcclxuICAgICAgICAgICAgIH1cclxuICAgICAgICAgICB9LFxyXG4gICAgICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgIHRoaXMuZ2V0Q29udmVyc2lvbkNhcmREYXRhID1bXTtcclxuICAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgIH0sIFxyXG4gICAgICAgICAgIH0pXHJcbiAgICAgICB9XHJcbiAgICAgYm91bmNlZE5vZGF0YSA9ZmFsc2U7XHJcbiAgICAgZ2V0Qm91bmNlZENhcmQoKXtcclxuICAgICAgZGVsZXRlIHRoaXMudGFibGVvYmoub2Zmc2V0O1xyXG4gICAgICBkZWxldGUgdGhpcy50YWJsZW9iai5saW1pdDtcclxuICAgICAgZGVsZXRlIHRoaXMudGFibGVvYmouZXhwb3J0O1xyXG4gICAgICB0aGlzLnRhYmxlb2JqLmRhdGVUeXBlPSB0aGlzLmRhdGVUeXBlO1xyXG4gICAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgICAuZ2V0Qm91bmNlZENhcmRMaXN0KHRoaXMudGFibGVvYmopXHJcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAgID8uc3Vic2NyaWJlKHtcclxuICAgICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgICB0aGlzLmdldEJvdW5jZWRDYXJkRGF0YSA9IHJlcz8uZGF0YTtcclxuICAgICAgICAgICAgICBpZih0aGlzLmdldEJvdW5jZWRDYXJkRGF0YT8uZGF0YT8uYm91bmNlZD8uZGF0YS5sZW5ndGgpe1xyXG4gICAgICAgICAgICAgIHRoaXMuYm91bmNlZGxpbmVDaGFydHMoKTtcclxuICAgICAgICAgICAgICB0aGlzLmJvdW5jZWROb2RhdGEgPWZhbHNlO1xyXG4gICAgICAgICAgICAgIH0gZWxzZXtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0Qm91bmNlZENhcmREYXRhID1bXTtcclxuICAgICAgICAgICAgICAgIHRoaXMuYm91bmNlZE5vZGF0YSA9dHJ1ZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7IFxyXG4gICAgICAgICAgICAgIHRoaXMuYm91bmNlZE5vZGF0YSA9dHJ1ZTtcclxuICAgICAgICAgICAgICB0aGlzLmdldEJvdW5jZWRDYXJkRGF0YSA9W107XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmdldEJvdW5jZWRDYXJkRGF0YSA9W107XHJcbiAgICAgICAgICB0aGlzLmJvdW5jZWROb2RhdGEgPXRydWU7XHJcbiAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB9LCBcclxuICAgICAgICB9KSBcclxuICAgIH1cclxuICAgIGVuZ2FnZXJzTm9kYXRhID1mYWxzZTtcclxuICAgIGdldEVuZ2FnZXJzQ2FyZCgpe1xyXG4gICAgICBkZWxldGUgdGhpcy50YWJsZW9iai5vZmZzZXQ7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLmxpbWl0O1xyXG4gICAgICBkZWxldGUgdGhpcy50YWJsZW9iai5leHBvcnQ7XHJcbiAgICAgIHRoaXMudGFibGVvYmouZGF0ZVR5cGU9IHRoaXMuZGF0ZVR5cGU7XHJcbiAgICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAgIC5nZXRFbmdhZ2Vyc0NhcmRMaXN0KHRoaXMudGFibGVvYmopXHJcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAgID8uc3Vic2NyaWJlKHtcclxuICAgICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgICB0aGlzLmdldEVuZ2FnZXJzQ2FyZERhdGEgPSByZXM/LmRhdGE7XHJcbiAgICAgICAgICAgICAgaWYodGhpcy5nZXRFbmdhZ2Vyc0NhcmREYXRhPy5kYXRhPy5lbmdhZ2Vycz8uZGF0YS5sZW5ndGgpe1xyXG4gICAgICAgICAgICAgIHRoaXMuZW5nYWdlcnNsaW5lQ2hhcnRzKCk7XHJcbiAgICAgICAgICAgICAgdGhpcy5lbmdhZ2Vyc05vZGF0YSA9ZmFsc2U7XHJcbiAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0RW5nYWdlcnNDYXJkRGF0YSA9W107XHJcbiAgICAgICAgICAgICAgdGhpcy5lbmdhZ2Vyc05vZGF0YSA9dHJ1ZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7IFxyXG4gICAgICAgICAgICAgIHRoaXMuZ2V0RW5nYWdlcnNDYXJkRGF0YSA9W107XHJcbiAgICAgICAgICAgICAgdGhpcy5lbmdhZ2Vyc05vZGF0YSA9dHJ1ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgIHRoaXMuZ2V0RW5nYWdlcnNDYXJkRGF0YSA9W107XHJcbiAgICAgICAgICB0aGlzLmVuZ2FnZXJzTm9kYXRhID10cnVlO1xyXG4gICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSwgXHJcbiAgICAgICAgfSlcclxuICAgIH1cclxuICAgIGdldE1pc3NlZE9wcG9ydHVuaXR5Q2FyZCgpe1xyXG4gICAgICB0aGlzLnRhYmxlb2JqLmNvdW50cnkgPSB0aGlzLmhlYWRlckRhdGE/LmNvdW50cnkuZmlsdGVyKChjb3VudHJpZXM6YW55KSA9PiBjb3VudHJpZXMuY2hlY2tlZCkubWFwKChjb3VudHJpZXM6YW55KSA9PiBjb3VudHJpZXMuY291bnRyeSk7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLm9mZnNldDtcclxuICAgICAgZGVsZXRlIHRoaXMudGFibGVvYmoubGltaXQ7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLmV4cG9ydDtcclxuICAgICAgdGhpcy50YWJsZW9iai5kYXRlVHlwZT0gdGhpcy5kYXRlVHlwZTtcclxuICAgICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAgIC5nZXRNaXNzZWRPcHBvcnR1bml0eUNhcmRMaXN0KHRoaXMudGFibGVvYmopXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhID0gcmVzPy5kYXRhO1xyXG4gICAgICAgICAgfSBlbHNlIHsgXHJcbiAgICAgICAgICAgIHRoaXMuZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhID1bXTtcclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICB0aGlzLmdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YSA9W107XHJcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH0sIFxyXG4gICAgICB9KVxyXG4gICAgfVxyXG4gICAgcG90ZW50aWFsTm9kYXRhID1mYWxzZTtcclxuICAgIGdldFBvdGVudGlhbEJ1eWVyc0NhcmQoKXtcclxuICAgICAgZGVsZXRlIHRoaXMudGFibGVvYmoub2Zmc2V0O1xyXG4gICAgICBkZWxldGUgdGhpcy50YWJsZW9iai5saW1pdDtcclxuICAgICAgZGVsZXRlIHRoaXMudGFibGVvYmouZXhwb3J0O1xyXG4gICAgICB0aGlzLnRhYmxlb2JqLmRhdGVUeXBlPSB0aGlzLmRhdGVUeXBlO1xyXG4gICAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgICAuZ2V0UG90ZW50aWFsQnV5ZXJzQ2FyZExpc3QodGhpcy50YWJsZW9iailcclxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgIHRoaXMuZ2V0UG90ZW50aWFsQnV5ZXJzQ2FyZERhdGEgPSByZXM/LmRhdGE7XHJcbiAgICAgICAgICAgICAgaWYodGhpcy5nZXRQb3RlbnRpYWxCdXllcnNDYXJkRGF0YT8uZGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5kYXRhLmxlbmd0aCl7XHJcbiAgICAgICAgICAgICAgdGhpcy5wb3RlbnRpYWxsaW5lQ2hhcnRzKCk7XHJcbiAgICAgICAgICAgICAgdGhpcy5wb3RlbnRpYWxOb2RhdGEgPWZhbHNlO1xyXG4gICAgICAgICAgICAgIH0gZWxzZSB7IFxyXG4gICAgICAgICAgICAgICAgdGhpcy5nZXRQb3RlbnRpYWxCdXllcnNDYXJkRGF0YSA9W107XHJcbiAgICAgICAgICAgICAgICB0aGlzLnBvdGVudGlhbE5vZGF0YSA9dHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9ICBlbHNlIHsgXHJcbiAgICAgICAgICAgICAgdGhpcy5nZXRQb3RlbnRpYWxCdXllcnNDYXJkRGF0YSA9W107XHJcbiAgICAgICAgICAgICAgdGhpcy5wb3RlbnRpYWxOb2RhdGEgPXRydWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmdldFBvdGVudGlhbEJ1eWVyc0NhcmREYXRhID1bXTtcclxuICAgICAgICAgIHRoaXMucG90ZW50aWFsTm9kYXRhID10cnVlO1xyXG4gICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSwgXHJcbiAgICAgICAgfSlcclxuICAgIH1cclxuXHJcbiAgICBnZXRQb3RlbnRpYWxCdXllcnMoKXtcclxuICAgICAgZGVsZXRlIHRoaXMudGFibGVvYmoub2Zmc2V0O1xyXG4gICAgICBkZWxldGUgdGhpcy50YWJsZW9iai5saW1pdDtcclxuICAgICAgZGVsZXRlIHRoaXMudGFibGVvYmouZXhwb3J0O1xyXG4gICAgICB0aGlzLnRhYmxlb2JqLmRhdGVUeXBlPSB0aGlzLmRhdGVUeXBlO1xyXG4gICAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgLmdldFBvdGVudGlhbEJ1eWVyc0Rpc3RyaWJ1dGlvbkNhcmRMaXN0KHRoaXMudGFibGVvYmopXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YSA9IHJlcz8uZGF0YT8uY2FyZDtcclxuICAgICAgICAgIH0gIGVsc2UgeyBcclxuICAgICAgICAgICAgdGhpcy5nZXRQb3RlbnRpYWxCdXllcnNEYXRhID1bXTtcclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICB0aGlzLmdldFBvdGVudGlhbEJ1eWVyc0RhdGEgPVtdO1xyXG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9LCBcclxuICAgICAgfSlcclxuICAgIH1cclxuXHJcblxyXG4gIGdldFJlY2FwKCkge1xyXG4gICAgdGhpcy5yZWNhcGxhb2RpbmcgPXRydWU7XHJcbiAgICB0aGlzLnJlY2Fwbm9EYXRhID1mYWxzZTtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnByb2Nlc3NUeXBlOyBkZWxldGUgdGhpcy50YWJsZW9iai5ub3JtYWxpemVkRGF0YTtcclxuICAgICBkZWxldGUgdGhpcy50YWJsZW9iai5kYXRlVHlwZTsgZGVsZXRlIHRoaXMudGFibGVvYmouZnJvbURhdGU7XHJcbiAgICAgZGVsZXRlIHRoaXMudGFibGVvYmoudG9EYXRlOyBkZWxldGUgdGhpcy50YWJsZW9iai52YWx1ZVR5cGU7IGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnByb2Nlc3NUeXBlO1xyXG4gICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnNlYXJjaDsgZGVsZXRlIHRoaXMudGFibGVvYmoub2Zmc2V0O1xyXG4gICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLmxpbWl0OyBkZWxldGUgdGhpcy50YWJsZW9iai5zb3J0Qnk7IGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnNvcnQ7XHJcbiAgICAgZGVsZXRlIHRoaXMudGFibGVvYmouZXhwb3J0O1xyXG4gICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLm5vcm1hbGl6ZTtcclxuICAgICB0aGlzLnRhYmxlb2JqLnJlY2FwVmlkZW9EYXRlID0gdGhpcy5oZWFkZXJEYXRhPy5kYXRlLmVuZERhdGU7XHJcbiAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgLmdldFJlY2FwVmlkZW8odGhpcy50YWJsZW9iailcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICA/LnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgdGhpcy5nZXRSZWNhcFZpZGVvRGF0YSA9IHJlcz8uZGF0YTtcclxuICAgICAgICAgICAgdGhpcy5nZXRSZWNhcERhdGEgPSByZXM/LmRhdGE/LnJlY2FwVmlkZW9EYXRhO1xyXG4gICAgICAgICAgICB0aGlzLmdyb3VwUmVjYXBzKCk7XHJcbiAgICAgICAgICAgIGlmKCF0aGlzLmdldFJlY2FwRGF0YS5sZW5ndGgpe1xyXG4gICAgICAgICAgICAgIHRoaXMucmVjYXBsYW9kaW5nID1mYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5yZWNhcG5vRGF0YSA9dHJ1ZTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICB0aGlzLnJlY2FwbGFvZGluZyA9ZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMucmVjYXBub0RhdGEgPWZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpOyAgICBcclxuICAgICAgICAgIH0gZWxzZXtcclxuICAgICAgICAgICAgdGhpcy5nZXRSZWNhcFZpZGVvRGF0YSA9W11cclxuICAgICAgICAgICAgdGhpcy5yZWNhcGxhb2RpbmcgPWZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLnJlY2Fwbm9EYXRhID10cnVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChlcnI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICB0aGlzLnJlY2FwbGFvZGluZyA9ZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLnJlY2Fwbm9EYXRhID10cnVlO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgY29tcGxldGU6ICgpID0+IHt9LFxyXG4gICAgICB9KTtcclxuICB9XHJcbiAgZ3JvdXBSZWNhcHMoKSB7XHJcbiAgICB0aGlzLnJlY2Fwc0dyb3VwZWQgPSBbXTtcclxuICAgIGxldCBncm91cFNpemUgPSB0aGlzLmdldFJlY2FwRGF0YS5sZW5ndGggPT09IDEgPyAxIDogMjtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5nZXRSZWNhcERhdGEubGVuZ3RoOyBpICs9IGdyb3VwU2l6ZSkge1xyXG4gICAgICB0aGlzLnJlY2Fwc0dyb3VwZWQucHVzaCh0aGlzLmdldFJlY2FwRGF0YS5zbGljZShpLCBpICsgZ3JvdXBTaXplKSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNvbFZhbHVlID0gdGhpcy5nZXRSZWNhcERhdGEubGVuZ3RoID09PSAxID8gJ2NvbC1tZC0xMicgOiAnY29sLW1kLTYnO1xyXG4gIH1cclxuICB2aWRlb0NsaWNrKG9iajphbnkpe1xyXG4gICAgY29uc3QgbW9kYWxSZWYgPSB0aGlzLm1vZGFsU2VydmljZS5vcGVuKFZpZGVvVXJsQ29tcG9uZW50LCB7XHJcbiAgICAgIGNlbnRlcmVkOiB0cnVlLFxyXG4gICAgICBzaXplOiBcImxnXCIsXHJcbiAgICAgIHNjcm9sbGFibGU6IHRydWUsXHJcbiAgICB9KTtcclxuICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLnZpZGVvVXJsID0gb2JqO1xyXG4gICAgbW9kYWxSZWYuY29tcG9uZW50SW5zdGFuY2UuZGF0ZT0gdGhpcy5oZWFkZXJEYXRhPy5kYXRlPy5lbmREYXRlXHJcbiAgICBtb2RhbFJlZi5yZXN1bHQudGhlbigocmVzdWx0OiBhbnkpID0+IHt9KTtcclxuICB9XHJcbiAgcHJldmlvdXNWYWx1ZTogYW55ID0gbnVsbDtcclxuICBjaGFuZ2VWYWx1ZShtZXRob2Q6IGFueSkge1xyXG4gICAgICB0aGlzLnByZXZpb3VzVmFsdWUgPSBtZXRob2Q7XHJcbiAgICAgIGlmICh0aGlzLnByZXZpb3VzVmFsdWUgPT09ICdwb3RlbnRpYWxCdXllcnMnKSB7XHJcbiAgICAgICAgdGhpcy5jb252ZXJzaW9uVmFsdWUgPSAnUG90ZW50aWFsIEJ1eWVycyc7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5jb252ZXJzaW9uVmFsdWUgPSBtZXRob2Q7XHJcbiAgICAgIH1cclxuICAgXHJcbiAgICAgIGNvbnN0IGlzQ29udmVyc2lvbiA9IHRoaXMuaXNDb252ZXJzaW9uID09PSB0cnVlO1xyXG4gICAgICBjb25zdCBjb252ZXJzaW9uVHlwZU1hcDogYW55ID0ge1xyXG4gICAgICAgIGZvb3RmYWxsOiB7XHJcbiAgICAgICAgICByYXRlOiB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZm9vdGZhbGw/LnJhdGUsXHJcbiAgICAgICAgICB0eXBlOiAnZm9vdGZhbGwtY291bnQnLFxyXG4gICAgICAgICAgbm9iOiBpc0NvbnZlcnNpb24gPyB0cnVlIDogZmFsc2VcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVuZ2FnZXJzOiB7XHJcbiAgICAgICAgICByYXRlOiB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZW5nYWdlcnM/LnJhdGUsXHJcbiAgICAgICAgICB0eXBlOiAnZW5nYWdlcnMtY291bnQnLFxyXG4gICAgICAgICAgbm9iOiBpc0NvbnZlcnNpb24gPyB0cnVlIDogZmFsc2VcclxuICAgICAgICB9LFxyXG4gICAgICAgIHBvdGVudGlhbEJ1eWVyczoge1xyXG4gICAgICAgICAgcmF0ZTogdGhpcy5nZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LnBvdGVudGlhbEJ1eWVycz8ucmF0ZSxcclxuICAgICAgICAgIHR5cGU6ICdiaWxsYWJsZS1jb3VudCcsXHJcbiAgICAgICAgICBub2I6IGlzQ29udmVyc2lvbiA/IHRydWUgOiBmYWxzZVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgJ05vQiBEZXJpdmVkJzoge1xyXG4gICAgICAgICAgcmF0ZTogdGhpcy5nZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/Lm5vYj8ubm9iLFxyXG4gICAgICAgICAgdHlwZTogJ25vYicsXHJcbiAgICAgICAgICBub2I6IHRydWUgLy8gYWx3YXlzIHRydWUgZm9yIE5vQiBEZXJpdmVkXHJcbiAgICAgICAgfVxyXG4gICAgICB9O1xyXG4gICAgICBcclxuICAgICAgY29uc3QgZGF0YSA9IGNvbnZlcnNpb25UeXBlTWFwW3RoaXMucHJldmlvdXNWYWx1ZV07XHJcbiAgICAgIFxyXG4gICAgICBpZiAoZGF0YSkge1xyXG4gICAgICAgIHRoaXMudmFsdWVDb252ZXJzaW9uUmF0ZSA9IGRhdGEucmF0ZTtcclxuICAgICAgICB0aGlzLnRhYmxlb2JqLm5vYiA9IGRhdGEubm9iO1xyXG4gICAgICAgIHRoaXMub2JqRGF0YS5ub2IgPSBkYXRhLm5vYjtcclxuICAgICAgICB0aGlzLm9iakRhdGFUcmFmZmljLm5vYiA9IGRhdGEubm9iO1xyXG4gICAgICAgIHRoaXMubm9iID0gZGF0YS5ub2I7XHJcbiAgICAgICAgdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSA9IGRhdGEudHlwZTtcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgLy8gdGhpcy5zZXJ2aWNlLnRvZ2dsZW5vYih0aGlzLnRhYmxlb2JqLm5vYik7XHJcbiAgICAgIHRoaXMuZ2V0RnVubmFsKCk7IFxyXG4gICAgICBpZih0aGlzLnRhYmxlb2JqLm5vYiA9PT1mYWxzZSlcclxuICAgICAgdGhpcy5nZXRDb252ZXJzaW9uQ2FyZDEoKTsgXHJcbiAgICAgIHRoaXMudGFibGVvYmouZnJvbURhdGU9IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZS5zdGFydERhdGUsXHJcbiAgICAgIHRoaXMudGFibGVvYmoudG9EYXRlPSB0aGlzLmhlYWRlckRhdGE/LmRhdGUuZW5kRGF0ZSxcclxuICAgICAgdGhpcy50YWJsZW9iai5zZWFyY2ggPSB0aGlzLnNlYXJjaFZhbHVlO1xyXG4gICAgICBkZWxldGUgdGhpcy50YWJsZW9iai5yZWNhcFZpZGVvRGF0ZTtcclxuICAgICAgdGhpcy5nZXRUYWJsZSgpO1xyXG4gICAgIHRoaXMuZm9vdGZhbGxUcmVuZCgpO1xyXG4gICAgIGlmKHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTknKXtcclxuICAgICAgdGhpcy5zZWxlY3RlZFRhYiA9IFwiZm9vdGZhbGxcIlxyXG4gICAgICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBcImZvb3RmYWxsXCI7XHJcbiAgICAgIHRoaXMuc2VsY3RlZFZhbHVlID0nRm9vdGZhbGwgQW5hbHlzaXMnO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkVGFicygnZm9vdGZhbGwnKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSBcInRyYWZmaWNcIlxyXG4gICAgICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBcInRyYWZmaWNcIjtcclxuICAgICAgdGhpcy5zZWxjdGVkVmFsdWUgPSdUcmFmZmljIEFuYWx5c2lzJztcclxuICAgICAgdGhpcy5zZWxlY3RlZFRhYnMoJ3RyYWZmaWMnKTtcclxuICAgIH1cclxuICAgXHJcbiAgICAvLyB9XHJcbiAgfVxyXG4gXHJcblxyXG4gIGdldFRhYmxlKCkge1xyXG4gICAgdGhpcy5saW1pdCA9MTA7XHJcbiAgICB0aGlzLnRhYmxlb2JqLm9mZnNldCA9IHRoaXMub2Zmc2V0ID0gdGhpcy5jdXJyZW50UGFnZSAtMTtcclxuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLm5vRGF0YSA9IGZhbHNlO1xyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmoucHJvY2Vzc1R5cGU7XHJcbiAgICBkZWxldGUgdGhpcy50YWJsZW9iai5ub3JtYWxpemVkRGF0YTtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLmRhdGVUeXBlO1xyXG4gICAgKHRoaXMudGFibGVvYmoubGltaXQgPSB0aGlzLmxpbWl0KTtcclxuICAgICh0aGlzLnRhYmxlb2JqLnNlYXJjaCA9IHRoaXMuc2VhcmNoVmFsdWUpLCBcclxuICAgICAodGhpcy50YWJsZW9iai52YWx1ZVR5cGUgPSB0aGlzLnR5cGVWYWx1ZSk7IFxyXG4gICAgICh0aGlzLnRhYmxlb2JqLmNvbnZlcnNpb250eXBlID0gdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSk7XHJcbiAgICAgdGhpcy50YWJsZW9iai5leHBvcnQgPSBmYWxzZTtcclxuICAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgLmdldFN1bW1hcnlUYWJsZUxpc3QodGhpcy50YWJsZW9iailcclxuICAgICAgPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgIGlmKHJlcz8uZGF0YS5zdW1tYXJ5RGF0YS5sZW5ndGggPT09MCl7XHJcbiAgICAgICAgICAgICAgdGhpcy5nZXRTdW1tYXJ5VGFibGVEYXRhID1bXVxyXG4gICAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIHRoaXMubm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB0aGlzLnRvdGFsSXRlbXMgPSAwOyBcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5nZXRTdW1tYXJ5VGFibGVEYXRhID0gcmVzPy5kYXRhLnN1bW1hcnlEYXRhO1xyXG4gICAgICAgICAgICB0aGlzLnRvdGFsSXRlbXMgPSByZXMuZGF0YT8udG90YWxDb3VudDtcclxuICAgICAgICB0aGlzLnN0b3JlQ29kZSA9cmVzLmRhdGE/LnN0b3JlQ29kZVN0YXR1c1xyXG4gICAgICAgICAgICB0aGlzLnNldFBhZ2luYXRpb25TaXplcygpO1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5ub0RhdGEgPSBmYWxzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5nZXRTdW1tYXJ5VGFibGVEYXRhID1bXVxyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5ub0RhdGEgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLnRvdGFsSXRlbXMgPSAwOyBcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChlcnI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBjb21wbGV0ZTogKCkgPT4ge30sXHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICBzZWFyY2hEYXRhKCkge1xyXG4gICAgdGhpcy50YWJsZW9iai5mcm9tRGF0ZT0gdGhpcy5oZWFkZXJEYXRhPy5kYXRlLnN0YXJ0RGF0ZSxcclxuICAgIHRoaXMudGFibGVvYmoudG9EYXRlPSB0aGlzLmhlYWRlckRhdGE/LmRhdGUuZW5kRGF0ZSxcclxuICAgIHRoaXMudGFibGVvYmouc2VhcmNoID0gdGhpcy5zZWFyY2hWYWx1ZTtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnJlY2FwVmlkZW9EYXRlO1xyXG4gICAgKHRoaXMudGFibGVvYmouY29udmVyc2lvbnR5cGUgPSB0aGlzLnRhYmxlb2JqLmNvbnZlcnNpb250eXBlKTtcclxuICAgIHRoaXMudGFibGVvYmouZXhwb3J0ID0gZmFsc2U7XHJcbiAgICB0aGlzLm9mZnNldCA9IDE7XHJcbiAgICB0aGlzLnRhYmxlb2JqLm9mZnNldCA9IHRoaXMub2Zmc2V0IC0xO1xyXG4gICAgdGhpcy5saW1pdD0xMDtcclxuICAgIHRoaXMuZ2V0VGFibGUoKTtcclxuICB9XHJcblxyXG4gIHNldFBhZ2luYXRpb25TaXplcygpIHtcclxuICAgIGlmICh0aGlzLnRvdGFsSXRlbXMgPiAxMCkge1xyXG4gICAgICB0aGlzLnBhZ2luYXRpb25TaXplcyA9IFsxMCwgMjAsIDMwXTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMucGFnaW5hdGlvblNpemVzID0gW3RoaXMudG90YWxJdGVtc107IC8vIEp1c3Qgb25lIG9wdGlvbiBpZiBsZXNzIHRoYW4gMTBcclxuICAgIH1cclxuICAgIHRoaXMucGFnZVNpemUgPSB0aGlzLnBhZ2luYXRpb25TaXplc1swXTtcclxuICB9XHJcbiAgc3RvcmVDb2RlOmFueT1mYWxzZTtcclxuICBvblBhZ2VDaGFuZ2UocGFnZU9mZnNldDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5ub0RhdGEgPSBmYWxzZTtcclxuICAgIHRoaXMub2Zmc2V0ID0gTnVtYmVyKHBhZ2VPZmZzZXQpO1xyXG4gICAgdGhpcy50YWJsZW9iai5vZmZzZXQgPSB0aGlzLm9mZnNldCAtMTtcclxuICAgICh0aGlzLnRhYmxlb2JqLmxpbWl0ID0gdGhpcy5saW1pdCksXHJcbiAgICAodGhpcy50YWJsZW9iai5zZWFyY2ggPSB0aGlzLnNlYXJjaFZhbHVlKSwgXHJcbiAgICAgKHRoaXMudGFibGVvYmoudmFsdWVUeXBlID0gdGhpcy50eXBlVmFsdWUpO1xyXG4gICAgdGhpcy50YWJsZW9iai5mcm9tRGF0ZT0gdGhpcy5oZWFkZXJEYXRhPy5kYXRlLnN0YXJ0RGF0ZSxcclxuICAgIHRoaXMudGFibGVvYmoudG9EYXRlPSB0aGlzLmhlYWRlckRhdGE/LmRhdGUuZW5kRGF0ZSxcclxuICAgIHRoaXMudGFibGVvYmouc2VhcmNoID0gdGhpcy5zZWFyY2hWYWx1ZTtcclxuICAgICh0aGlzLnRhYmxlb2JqLmNvbnZlcnNpb250eXBlID0gdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSk7XHJcbiAgICBkZWxldGUgdGhpcy50YWJsZW9iai5yZWNhcFZpZGVvRGF0ZTtcclxuICAgIHRoaXMudGFibGVvYmouZXhwb3J0ID0gZmFsc2U7XHJcbiAgICB0aGlzLnNlcnZpY2VcclxuICAgIC5nZXRTdW1tYXJ5VGFibGVMaXN0KHRoaXMudGFibGVvYmopXHJcbiAgICA/LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09PSAyMDApIHtcclxuICAgICAgICAgIGlmKHJlcz8uZGF0YS5zdW1tYXJ5RGF0YS5sZW5ndGggPT09MCl7XHJcbiAgICAgICAgICAgIHRoaXMuZ2V0U3VtbWFyeVRhYmxlRGF0YSA9W11cclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMubm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy50b3RhbEl0ZW1zID0gMDsgXHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5nZXRTdW1tYXJ5VGFibGVEYXRhID0gcmVzPy5kYXRhLnN1bW1hcnlEYXRhO1xyXG4gICAgICAgICAgdGhpcy50b3RhbEl0ZW1zID0gcmVzLmRhdGE/LnRvdGFsQ291bnQ7XHJcbiAgICAgICAgICB0aGlzLnN0b3JlQ29kZSA9cmVzLmRhdGE/LnN0b3JlQ29kZVN0YXR1c1xyXG4gICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLm5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLmdldFN1bW1hcnlUYWJsZURhdGEgPVtdXHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIHRoaXMubm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICAgIHRoaXMudG90YWxJdGVtcyA9IDA7IFxyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgICAgZXJyb3I6IChlcnI6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9LFxyXG4gICAgICBjb21wbGV0ZTogKCkgPT4ge30sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uUGFnZVNpemVDaGFuZ2UocGFnZVNpemU6IG51bWJlcikge1xyXG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMubm9EYXRhID0gZmFsc2U7XHJcbiAgICB0aGlzLnBhZ2VTaXplID0gTnVtYmVyKHBhZ2VTaXplKTtcclxuICAgIHRoaXMubGltaXQgPSBOdW1iZXIocGFnZVNpemUpO1xyXG4gICAgdGhpcy5jdXJyZW50UGFnZSA9IDE7XHJcbiAgICB0aGlzLm9mZnNldCA9IDA7XHJcbiAgICB0aGlzLnRhYmxlb2JqLm9mZnNldCA9IHRoaXMub2Zmc2V0O1xyXG4gICAgKHRoaXMudGFibGVvYmoubGltaXQgPSB0aGlzLmxpbWl0KSxcclxuICAgICh0aGlzLnRhYmxlb2JqLnZhbHVlVHlwZSA9IHRoaXMudHlwZVZhbHVlKTtcclxuICAgIHRoaXMudGFibGVvYmouZnJvbURhdGU9IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZS5zdGFydERhdGUsXHJcbiAgICB0aGlzLnRhYmxlb2JqLnRvRGF0ZT0gdGhpcy5oZWFkZXJEYXRhPy5kYXRlLmVuZERhdGUsXHJcbiAgICB0aGlzLnRhYmxlb2JqLnNlYXJjaCA9IHRoaXMuc2VhcmNoVmFsdWU7XHJcbiAgICAodGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSA9IHRoaXMudGFibGVvYmouY29udmVyc2lvbnR5cGUpO1xyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmoucmVjYXBWaWRlb0RhdGU7XHJcbiAgICB0aGlzLnRhYmxlb2JqLmV4cG9ydCA9IGZhbHNlO1xyXG4gICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAuZ2V0U3VtbWFyeVRhYmxlTGlzdCh0aGlzLnRhYmxlb2JqKVxyXG4gICAgPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgID8uc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICBpZihyZXM/LmRhdGEuc3VtbWFyeURhdGEubGVuZ3RoID09PTApe1xyXG4gICAgICAgICAgICB0aGlzLmdldFN1bW1hcnlUYWJsZURhdGEgPVtdXHJcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMudG90YWxJdGVtcyA9IDA7IFxyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuZ2V0U3VtbWFyeVRhYmxlRGF0YSA9IHJlcz8uZGF0YS5zdW1tYXJ5RGF0YTtcclxuICAgICAgICAgIHRoaXMudG90YWxJdGVtcyA9IHJlcy5kYXRhPy50b3RhbENvdW50O1xyXG4gIHRoaXMuc3RvcmVDb2RlID1yZXMuZGF0YT8uc3RvcmVDb2RlU3RhdHVzXHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIHRoaXMubm9EYXRhID0gZmFsc2U7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuZ2V0U3VtbWFyeVRhYmxlRGF0YSA9W11cclxuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5ub0RhdGEgPSB0cnVlO1xyXG4gICAgICAgICAgdGhpcy50b3RhbEl0ZW1zID0gMDsgXHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH0sXHJcbiAgICAgIGNvbXBsZXRlOiAoKSA9PiB7fSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25WYWx1ZVR5cGUodHlwZTphbnkpe1xyXG4gICAgdGhpcy50YWJsZW9iai5mcm9tRGF0ZT0gdGhpcy5oZWFkZXJEYXRhLmRhdGUuc3RhcnREYXRlLFxyXG4gICAgdGhpcy50YWJsZW9iai50b0RhdGU9IHRoaXMuaGVhZGVyRGF0YS5kYXRlLmVuZERhdGUsXHJcbiAgICBkZWxldGUgdGhpcy50YWJsZW9iai5yZWNhcFZpZGVvRGF0ZTtcclxuICAgIHRoaXMudGFibGVvYmouZXhwb3J0ID0gZmFsc2U7XHJcbiAgICAgdGhpcy50eXBlVmFsdWUgPXR5cGU7XHJcbiAgICB0aGlzLnRhYmxlb2JqLnZhbHVlVHlwZSA9dHlwZTtcclxuICAgICh0aGlzLnRhYmxlb2JqLmNvbnZlcnNpb250eXBlID0gdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSk7XHJcbiAgICB0aGlzLmdldFRhYmxlKCk7XHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xyXG4gICAgdGhpcy56b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcclxuICAgICAgaWYgKHRoaXMubGluZXJvb3QpIHtcclxuICAgICAgICB0aGlzLmxpbmVyb290LmRpc3Bvc2UoKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5ib3VuY2VkbGluZXJvb3QpIHtcclxuICAgICAgICB0aGlzLmJvdW5jZWRsaW5lcm9vdC5kaXNwb3NlKCk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMucG90ZW50aWFsQnV5ZXJzbGluZXJvb3QpIHtcclxuICAgICAgICB0aGlzLnBvdGVudGlhbEJ1eWVyc2xpbmVyb290LmRpc3Bvc2UoKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5lbmdhZ2Vyc2xpbmVyb290KSB7XHJcbiAgICAgICAgdGhpcy5lbmdhZ2Vyc2xpbmVyb290LmRpc3Bvc2UoKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5oZWF0TWFwcm9vdCkge1xyXG4gICAgICAgIHRoaXMuaGVhdE1hcHJvb3QuZGlzcG9zZSgpO1xyXG4gICAgICB9IGlmICh0aGlzLnJvb3RUcmVuZHMpIHtcclxuICAgICAgICB0aGlzLnJvb3RUcmVuZHMuZGlzcG9zZSgpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLmR3ZWxsUm9vdCkge1xyXG4gICAgICAgIHRoaXMuZHdlbGxSb290LmRpc3Bvc2UoKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5pbnRlcnZhbElkKSB7XHJcbiAgICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLmludGVydmFsSWQpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbiAgLy8gY2FyZCBsaW5lIENoYXJ0cyBTdGFydFxyXG5cclxuICBmb290ZmFsbGxpbmVDaGFydHMoKSB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3QgY2hhcnREaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcIkZvb3RmYWxsXCIpO1xyXG4gICAgICBpZiAoIWNoYXJ0RGl2KSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLmxpbmVyb290KSB7XHJcbiAgICAgICAgdGhpcy5saW5lcm9vdC5kaXNwb3NlKCk7XHJcbiAgICAgIH1cclxuICAgIGxldCByb290OiBhbnk7XHJcbiAgICByb290ID0gYW01LlJvb3QubmV3KFwiRm9vdGZhbGxcIik7XHJcbiAgICByb290LnNldFRoZW1lcyhbXHJcbiAgICAgIGFtNXRoZW1lc19BbmltYXRlZC5uZXcocm9vdCksXHJcbiAgICAgIGFtNXRoZW1lc19SZXNwb25zaXZlLm5ldyhyb290KSxcclxuICAgIF0pO1xyXG4gICAgbGV0IGNoYXJ0ID0gcm9vdC5jb250YWluZXIuY2hpbGRyZW4ucHVzaChcclxuICAgICAgYW01eHkuWFlDaGFydC5uZXcocm9vdCwge1xyXG4gICAgICAgIHBhblg6IHRydWUsXHJcbiAgICAgICAgcGFuWTogdHJ1ZSxcclxuICAgICAgICB3aGVlbFg6IFwicGFuWFwiLFxyXG4gICAgICAgIHdoZWVsWTogXCJ6b29tWFwiLFxyXG4gICAgICAgIHBpbmNoWm9vbVg6IHRydWUsXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG5cclxuICAgIC8vIEFkZCBkYXRhXHJcbiAgICBsZXQgZGF0YSA9IHRoaXMuZ2V0Rm9vdGZhbGxDYXJkRGF0YT8uZGF0YT8uZm9vdGZhbGw/LmRhdGEubWFwKChpdGVtOiBhbnkpID0+ICh7XHJcbiAgICAgIGRhdGU6IG5ldyBEYXRlKGl0ZW0uZGF0ZSkuZ2V0VGltZSgpLCAvLyBDb252ZXJ0IGRhdGUgc3RyaW5nIHRvIHRpbWVzdGFtcFxyXG4gICAgICB2YWx1ZTogTnVtYmVyKGl0ZW0udmFsdWUpLFxyXG4gICAgfSkpO1xyXG4gICAgIC8vIEVuc3VyZSB0aGF0IGRhdGEgaGFzIGF0IGxlYXN0IDIgcG9pbnRzIGZvciBsaW5lIGNoYXJ0XHJcbiAgICAgaWYgKGRhdGEubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgIGNvbnN0IGR1cGxpY2F0ZVBvaW50ID0geyAuLi5kYXRhWzBdIH07IC8vIENsb25lIHRoZSBleGlzdGluZyBwb2ludFxyXG4gICAgICBkdXBsaWNhdGVQb2ludC5kYXRlICs9IDE7IC8vIEFkZCBhIHNtYWxsIG9mZnNldCB0byB0aGUgZGF0ZVxyXG4gICAgICBkYXRhLnB1c2goZHVwbGljYXRlUG9pbnQpOyAvLyBBZGQgdGhlIGR1cGxpY2F0ZSBwb2ludCB0byBkYXRhXHJcbiAgICB9XHJcbiAgICBsZXQgY3Vyc29yID0gY2hhcnQuc2V0KFxyXG4gICAgICBcImN1cnNvclwiLFxyXG4gICAgICBhbTV4eS5YWUN1cnNvci5uZXcocm9vdCwge1xyXG4gICAgICAgIGJlaGF2aW9yOiBcIm5vbmVcIixcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgICBjdXJzb3IubGluZVkuc2V0KFwidmlzaWJsZVwiLCBmYWxzZSk7XHJcbiAgICAvLyBDcmVhdGUgYXhlc1xyXG4gICAgbGV0IHhBeGlzID0gY2hhcnQueEF4ZXMucHVzaChcclxuICAgICAgYW01eHkuRGF0ZUF4aXMubmV3KHJvb3QsIHtcclxuICAgICAgICBtYXhEZXZpYXRpb246IDAuNSxcclxuICAgICAgICBiYXNlSW50ZXJ2YWw6IHsgdGltZVVuaXQ6IFwiZGF5XCIsIGNvdW50OiAxIH0sXHJcbiAgICAgICAgcmVuZGVyZXI6IGFtNXh5LkF4aXNSZW5kZXJlclgubmV3KHJvb3QsIHsgfSksXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgeEF4aXMuZ2V0KFwicmVuZGVyZXJcIikuZ3JpZC50ZW1wbGF0ZS5zZXQoXCJmb3JjZUhpZGRlblwiLCB0cnVlKTtcclxuICAgIHhBeGlzLmdldChcInJlbmRlcmVyXCIpLmxhYmVscy50ZW1wbGF0ZS5zZXQoXCJmb3JjZUhpZGRlblwiLCB0cnVlKTtcclxuXHJcbiAgICBsZXQgeUF4aXMgPSBjaGFydC55QXhlcy5wdXNoKFxyXG4gICAgICBhbTV4eS5WYWx1ZUF4aXMubmV3KHJvb3QsIHtcclxuICAgICAgICByZW5kZXJlcjogYW01eHkuQXhpc1JlbmRlcmVyWS5uZXcocm9vdCwgeyB9KSxcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgICB5QXhpcy5nZXQoXCJyZW5kZXJlclwiKS5ncmlkLnRlbXBsYXRlLnNldChcImZvcmNlSGlkZGVuXCIsIHRydWUpO1xyXG4gICAgeUF4aXMuZ2V0KFwicmVuZGVyZXJcIikubGFiZWxzLnRlbXBsYXRlLnNldChcImZvcmNlSGlkZGVuXCIsIHRydWUpO1xyXG5cclxuICAgIC8vIENyZWF0ZSBzZXJpZXNcclxuICAgIGxldCBzZXJpZXMgPSBjaGFydC5zZXJpZXMucHVzaChcclxuICAgICAgYW01eHkuTGluZVNlcmllcy5uZXcocm9vdCwge1xyXG4gICAgICAgIG5hbWU6IFwiU2VyaWVzXCIsXHJcbiAgICAgICAgeEF4aXM6IHhBeGlzLFxyXG4gICAgICAgIHlBeGlzOiB5QXhpcyxcclxuICAgICAgICB2YWx1ZVlGaWVsZDogXCJ2YWx1ZVwiLFxyXG4gICAgICAgIHZhbHVlWEZpZWxkOiBcImRhdGVcIixcclxuICAgICAgICBzdHJva2U6IGFtNS5jb2xvcigweDAwYTNmZiksIC8vIFNldCB0aGUgbGluZSBjb2xvciBoZXJlIChyZWQgaW4gdGhpcyBjYXNlKVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIHNlcmllcy5idWxsZXRzLnB1c2goZnVuY3Rpb24gKCkge1xyXG4gICAgICBsZXQgYnVsbGV0Q2lyY2xlID0gYW01LkNpcmNsZS5uZXcocm9vdCwge1xyXG4gICAgICAgIHJhZGl1czogMCxcclxuICAgICAgICBmaWxsOiBzZXJpZXMuZ2V0KFwiZmlsbFwiKVxyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIGFtNS5CdWxsZXQubmV3KHJvb3QsIHtcclxuICAgICAgICBzcHJpdGU6IGJ1bGxldENpcmNsZVxyXG4gICAgICB9KVxyXG4gICAgfSlcclxuICAgIHNlcmllcy5kYXRhLnNldEFsbChkYXRhKTtcclxuICAgIHNlcmllcy5zZXQoXHJcbiAgICAgIFwidG9vbHRpcFwiLFxyXG4gICAgICBhbTUuVG9vbHRpcC5uZXcocm9vdCwge1xyXG4gICAgICAgIGxhYmVsVGV4dDogXCJ7dmFsdWVZfVwiLFxyXG4gICAgICAgIGdldEZpbGxGcm9tU3ByaXRlOiBmYWxzZSwgLy8gUHJldmVudHMgdGhlIHRvb2x0aXAgZnJvbSBpbmhlcml0aW5nIGNvbG9yIGZyb20gdGhlIHNwcml0ZVxyXG4gICAgICAgIGJhY2tncm91bmQ6IGFtNS5SZWN0YW5nbGUubmV3KHJvb3QsIHtcclxuICAgICAgICAgIGZpbGw6IGFtNS5jb2xvcigweGRhZjFmZiksIC8vIFNldCB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kIGNvbG9yIGhlcmUgKGJsdWUgaW4gdGhpcyBjYXNlKVxyXG4gICAgICAgIH0pLFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIHRoaXMubGluZXJvb3QgPSByb290O1xyXG4gIH0sMClcclxuICB9XHJcbiAgYm91bmNlZGxpbmVDaGFydHMoKSB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3QgY2hhcnREaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcIkJvdW5jZWRSYXRlXCIpO1xyXG4gICAgICBpZiAoIWNoYXJ0RGl2KSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLmJvdW5jZWRsaW5lcm9vdCkge1xyXG4gICAgICAgIHRoaXMuYm91bmNlZGxpbmVyb290LmRpc3Bvc2UoKTtcclxuICAgICAgfVxyXG4gICAgbGV0IHJvb3Q6IGFueTtcclxuICAgIHJvb3QgPSBhbTUuUm9vdC5uZXcoXCJCb3VuY2VkUmF0ZVwiKTtcclxuICAgIHJvb3Quc2V0VGhlbWVzKFtcclxuICAgICAgYW01dGhlbWVzX0FuaW1hdGVkLm5ldyhyb290KSxcclxuICAgICAgYW01dGhlbWVzX1Jlc3BvbnNpdmUubmV3KHJvb3QpLFxyXG4gICAgXSk7XHJcbiAgICBsZXQgY2hhcnQgPSByb290LmNvbnRhaW5lci5jaGlsZHJlbi5wdXNoKFxyXG4gICAgICBhbTV4eS5YWUNoYXJ0Lm5ldyhyb290LCB7XHJcbiAgICAgICAgcGFuWDogdHJ1ZSxcclxuICAgICAgICBwYW5ZOiB0cnVlLFxyXG4gICAgICAgIHdoZWVsWDogXCJwYW5YXCIsXHJcbiAgICAgICAgd2hlZWxZOiBcInpvb21YXCIsXHJcbiAgICAgICAgcGluY2hab29tWDogdHJ1ZSxcclxuICAgICAgfSlcclxuICAgICk7XHJcblxyXG4gICAgLy8gQWRkIGRhdGFcclxuICAgIGxldCBkYXRhID0gdGhpcy5nZXRCb3VuY2VkQ2FyZERhdGE/LmRhdGE/LmJvdW5jZWQ/LmRhdGEubWFwKChpdGVtOiBhbnkpID0+ICh7XHJcbiAgICAgIGRhdGU6IG5ldyBEYXRlKGl0ZW0uZGF0ZSkuZ2V0VGltZSgpLCAvLyBDb252ZXJ0IGRhdGUgc3RyaW5nIHRvIHRpbWVzdGFtcFxyXG4gICAgICB2YWx1ZTogTnVtYmVyKGl0ZW0udmFsdWUpLFxyXG4gICAgfSkpO1xyXG4gICAgbGV0IGN1cnNvciA9IGNoYXJ0LnNldChcclxuICAgICAgXCJjdXJzb3JcIixcclxuICAgICAgYW01eHkuWFlDdXJzb3IubmV3KHJvb3QsIHtcclxuICAgICAgICBiZWhhdmlvcjogXCJub25lXCIsXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgY3Vyc29yLmxpbmVZLnNldChcInZpc2libGVcIiwgZmFsc2UpO1xyXG4gICAgLy8gQ3JlYXRlIGF4ZXNcclxuICAgIGxldCB4QXhpcyA9IGNoYXJ0LnhBeGVzLnB1c2goXHJcbiAgICAgIGFtNXh5LkRhdGVBeGlzLm5ldyhyb290LCB7XHJcbiAgICAgICAgbWF4RGV2aWF0aW9uOiAwLjIsXHJcbiAgICAgICAgYmFzZUludGVydmFsOiB7IHRpbWVVbml0OiBcImRheVwiLCBjb3VudDogMSB9LFxyXG4gICAgICAgIHJlbmRlcmVyOiBhbTV4eS5BeGlzUmVuZGVyZXJYLm5ldyhyb290LCB7IG1pbm9yR3JpZEVuYWJsZWQ6IHRydWUgfSksXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgeEF4aXMuZ2V0KFwicmVuZGVyZXJcIikuZ3JpZC50ZW1wbGF0ZS5zZXQoXCJmb3JjZUhpZGRlblwiLCB0cnVlKTtcclxuICAgIHhBeGlzLmdldChcInJlbmRlcmVyXCIpLmxhYmVscy50ZW1wbGF0ZS5zZXQoXCJmb3JjZUhpZGRlblwiLCB0cnVlKTtcclxuXHJcbiAgICBsZXQgeUF4aXMgPSBjaGFydC55QXhlcy5wdXNoKFxyXG4gICAgICBhbTV4eS5WYWx1ZUF4aXMubmV3KHJvb3QsIHtcclxuICAgICAgICByZW5kZXJlcjogYW01eHkuQXhpc1JlbmRlcmVyWS5uZXcocm9vdCwgeyBwYW46IFwiem9vbVwiIH0pLFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIHlBeGlzLmdldChcInJlbmRlcmVyXCIpLmdyaWQudGVtcGxhdGUuc2V0KFwiZm9yY2VIaWRkZW5cIiwgdHJ1ZSk7XHJcbiAgICB5QXhpcy5nZXQoXCJyZW5kZXJlclwiKS5sYWJlbHMudGVtcGxhdGUuc2V0KFwiZm9yY2VIaWRkZW5cIiwgdHJ1ZSk7XHJcblxyXG4gICAgLy8gQ3JlYXRlIHNlcmllc1xyXG4gICAgbGV0IHNlcmllcyA9IGNoYXJ0LnNlcmllcy5wdXNoKFxyXG4gICAgICBhbTV4eS5MaW5lU2VyaWVzLm5ldyhyb290LCB7XHJcbiAgICAgICAgbmFtZTogXCJTZXJpZXNcIixcclxuICAgICAgICB4QXhpczogeEF4aXMsXHJcbiAgICAgICAgeUF4aXM6IHlBeGlzLFxyXG4gICAgICAgIHZhbHVlWUZpZWxkOiBcInZhbHVlXCIsXHJcbiAgICAgICAgdmFsdWVYRmllbGQ6IFwiZGF0ZVwiLFxyXG4gICAgICAgIHN0cm9rZTogYW01LmNvbG9yKDB4MDBhM2ZmKSwgLy8gU2V0IHRoZSBsaW5lIGNvbG9yIGhlcmUgKHJlZCBpbiB0aGlzIGNhc2UpXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgc2VyaWVzLmJ1bGxldHMucHVzaChmdW5jdGlvbiAoKSB7XHJcbiAgICAgIGxldCBidWxsZXRDaXJjbGUgPSBhbTUuQ2lyY2xlLm5ldyhyb290LCB7XHJcbiAgICAgICAgcmFkaXVzOiAwLFxyXG4gICAgICAgIGZpbGw6IHNlcmllcy5nZXQoXCJmaWxsXCIpXHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm4gYW01LkJ1bGxldC5uZXcocm9vdCwge1xyXG4gICAgICAgIHNwcml0ZTogYnVsbGV0Q2lyY2xlXHJcbiAgICAgIH0pXHJcbiAgICB9KVxyXG4gICAgc2VyaWVzLmRhdGEuc2V0QWxsKGRhdGEpO1xyXG4gICAgc2VyaWVzLnNldChcclxuICAgICAgXCJ0b29sdGlwXCIsXHJcbiAgICAgIGFtNS5Ub29sdGlwLm5ldyhyb290LCB7XHJcbiAgICAgICAgbGFiZWxUZXh0OiBcInt2YWx1ZVl9XCIsXHJcbiAgICAgICAgZ2V0RmlsbEZyb21TcHJpdGU6IGZhbHNlLCAvLyBQcmV2ZW50cyB0aGUgdG9vbHRpcCBmcm9tIGluaGVyaXRpbmcgY29sb3IgZnJvbSB0aGUgc3ByaXRlXHJcbiAgICAgICAgYmFja2dyb3VuZDogYW01LlJlY3RhbmdsZS5uZXcocm9vdCwge1xyXG4gICAgICAgICAgZmlsbDogYW01LmNvbG9yKDB4ZGFmMWZmKSwgLy8gU2V0IHRoZSB0b29sdGlwIGJhY2tncm91bmQgY29sb3IgaGVyZSAoYmx1ZSBpbiB0aGlzIGNhc2UpXHJcbiAgICAgICAgfSksXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgdGhpcy5ib3VuY2VkbGluZXJvb3QgPSByb290O1xyXG4gIH0sMClcclxuICB9XHJcblxyXG4gIHBvdGVudGlhbGxpbmVDaGFydHMoKSB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3QgY2hhcnREaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcIlBvdGVudGlhbEJ1eWVyc1wiKTtcclxuICAgICAgaWYgKCFjaGFydERpdikge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5wb3RlbnRpYWxCdXllcnNsaW5lcm9vdCkge1xyXG4gICAgICAgIHRoaXMucG90ZW50aWFsQnV5ZXJzbGluZXJvb3QuZGlzcG9zZSgpO1xyXG4gICAgICB9XHJcbiAgICBsZXQgcm9vdDogYW55O1xyXG4gICAgcm9vdCA9IGFtNS5Sb290Lm5ldyhcIlBvdGVudGlhbEJ1eWVyc1wiKTtcclxuICAgIHJvb3Quc2V0VGhlbWVzKFtcclxuICAgICAgYW01dGhlbWVzX0FuaW1hdGVkLm5ldyhyb290KSxcclxuICAgICAgYW01dGhlbWVzX1Jlc3BvbnNpdmUubmV3KHJvb3QpLFxyXG4gICAgXSk7XHJcbiAgICBsZXQgY2hhcnQgPSByb290LmNvbnRhaW5lci5jaGlsZHJlbi5wdXNoKFxyXG4gICAgICBhbTV4eS5YWUNoYXJ0Lm5ldyhyb290LCB7XHJcbiAgICAgICAgcGFuWDogdHJ1ZSxcclxuICAgICAgICBwYW5ZOiB0cnVlLFxyXG4gICAgICAgIHdoZWVsWDogXCJwYW5YXCIsXHJcbiAgICAgICAgd2hlZWxZOiBcInpvb21YXCIsXHJcbiAgICAgICAgcGluY2hab29tWDogdHJ1ZSxcclxuICAgICAgfSlcclxuICAgICk7XHJcblxyXG4gICAgLy8gQWRkIGRhdGFcclxuICAgIGxldCBkYXRhID0gdGhpcy5nZXRQb3RlbnRpYWxCdXllcnNDYXJkRGF0YT8uZGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5kYXRhLm1hcChcclxuICAgICAgKGl0ZW06IGFueSkgPT4gKHtcclxuICAgICAgICBkYXRlOiBuZXcgRGF0ZShpdGVtLmRhdGUpLmdldFRpbWUoKSwgLy8gQ29udmVydCBkYXRlIHN0cmluZyB0byB0aW1lc3RhbXBcclxuICAgICAgICB2YWx1ZTogTnVtYmVyKGl0ZW0udmFsdWUpLFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIGxldCBjdXJzb3IgPSBjaGFydC5zZXQoXHJcbiAgICAgIFwiY3Vyc29yXCIsXHJcbiAgICAgIGFtNXh5LlhZQ3Vyc29yLm5ldyhyb290LCB7XHJcbiAgICAgICAgYmVoYXZpb3I6IFwibm9uZVwiLFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIGN1cnNvci5saW5lWS5zZXQoXCJ2aXNpYmxlXCIsIGZhbHNlKTtcclxuICAgIC8vIENyZWF0ZSBheGVzXHJcbiAgICBsZXQgeEF4aXMgPSBjaGFydC54QXhlcy5wdXNoKFxyXG4gICAgICBhbTV4eS5EYXRlQXhpcy5uZXcocm9vdCwge1xyXG4gICAgICAgIG1heERldmlhdGlvbjogMC4yLFxyXG4gICAgICAgIGJhc2VJbnRlcnZhbDogeyB0aW1lVW5pdDogXCJkYXlcIiwgY291bnQ6IDEgfSxcclxuICAgICAgICByZW5kZXJlcjogYW01eHkuQXhpc1JlbmRlcmVyWC5uZXcocm9vdCwgeyBtaW5vckdyaWRFbmFibGVkOiB0cnVlIH0pLFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIHhBeGlzLmdldChcInJlbmRlcmVyXCIpLmdyaWQudGVtcGxhdGUuc2V0KFwiZm9yY2VIaWRkZW5cIiwgdHJ1ZSk7XHJcbiAgICB4QXhpcy5nZXQoXCJyZW5kZXJlclwiKS5sYWJlbHMudGVtcGxhdGUuc2V0KFwiZm9yY2VIaWRkZW5cIiwgdHJ1ZSk7XHJcblxyXG4gICAgbGV0IHlBeGlzID0gY2hhcnQueUF4ZXMucHVzaChcclxuICAgICAgYW01eHkuVmFsdWVBeGlzLm5ldyhyb290LCB7XHJcbiAgICAgICAgcmVuZGVyZXI6IGFtNXh5LkF4aXNSZW5kZXJlclkubmV3KHJvb3QsIHsgcGFuOiBcInpvb21cIiB9KSxcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgICB5QXhpcy5nZXQoXCJyZW5kZXJlclwiKS5ncmlkLnRlbXBsYXRlLnNldChcImZvcmNlSGlkZGVuXCIsIHRydWUpO1xyXG4gICAgeUF4aXMuZ2V0KFwicmVuZGVyZXJcIikubGFiZWxzLnRlbXBsYXRlLnNldChcImZvcmNlSGlkZGVuXCIsIHRydWUpO1xyXG5cclxuICAgIC8vIENyZWF0ZSBzZXJpZXNcclxuICAgIGxldCBzZXJpZXMgPSBjaGFydC5zZXJpZXMucHVzaChcclxuICAgICAgYW01eHkuTGluZVNlcmllcy5uZXcocm9vdCwge1xyXG4gICAgICAgIG5hbWU6IFwiU2VyaWVzXCIsXHJcbiAgICAgICAgeEF4aXM6IHhBeGlzLFxyXG4gICAgICAgIHlBeGlzOiB5QXhpcyxcclxuICAgICAgICB2YWx1ZVlGaWVsZDogXCJ2YWx1ZVwiLFxyXG4gICAgICAgIHZhbHVlWEZpZWxkOiBcImRhdGVcIixcclxuICAgICAgICBzdHJva2U6IGFtNS5jb2xvcigweDAwYTNmZiksIC8vIFNldCB0aGUgbGluZSBjb2xvciBoZXJlIChyZWQgaW4gdGhpcyBjYXNlKVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIHNlcmllcy5idWxsZXRzLnB1c2goZnVuY3Rpb24gKCkge1xyXG4gICAgICBsZXQgYnVsbGV0Q2lyY2xlID0gYW01LkNpcmNsZS5uZXcocm9vdCwge1xyXG4gICAgICAgIHJhZGl1czogMCxcclxuICAgICAgICBmaWxsOiBzZXJpZXMuZ2V0KFwiZmlsbFwiKVxyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIGFtNS5CdWxsZXQubmV3KHJvb3QsIHtcclxuICAgICAgICBzcHJpdGU6IGJ1bGxldENpcmNsZVxyXG4gICAgICB9KVxyXG4gICAgfSlcclxuICAgIHNlcmllcy5kYXRhLnNldEFsbChkYXRhKTtcclxuICAgIHNlcmllcy5zZXQoXHJcbiAgICAgIFwidG9vbHRpcFwiLFxyXG4gICAgICBhbTUuVG9vbHRpcC5uZXcocm9vdCwge1xyXG4gICAgICAgIGxhYmVsVGV4dDogXCJ7dmFsdWVZfVwiLFxyXG4gICAgICAgIGdldEZpbGxGcm9tU3ByaXRlOiBmYWxzZSwgLy8gUHJldmVudHMgdGhlIHRvb2x0aXAgZnJvbSBpbmhlcml0aW5nIGNvbG9yIGZyb20gdGhlIHNwcml0ZVxyXG4gICAgICAgIGJhY2tncm91bmQ6IGFtNS5SZWN0YW5nbGUubmV3KHJvb3QsIHtcclxuICAgICAgICAgIGZpbGw6IGFtNS5jb2xvcigweGRhZjFmZiksIC8vIFNldCB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kIGNvbG9yIGhlcmUgKGJsdWUgaW4gdGhpcyBjYXNlKVxyXG4gICAgICAgIH0pLFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIHRoaXMucG90ZW50aWFsQnV5ZXJzbGluZXJvb3QgPSByb290O1xyXG4gIH0sMClcclxuICB9XHJcblxyXG4gIGVuZ2FnZXJzbGluZUNoYXJ0cygpIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBjb25zdCBjaGFydERpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiZW5nYWdlcnNcIik7XHJcbiAgICAgIGlmICghY2hhcnREaXYpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuZW5nYWdlcnNsaW5lcm9vdCkge1xyXG4gICAgICAgIHRoaXMuZW5nYWdlcnNsaW5lcm9vdC5kaXNwb3NlKCk7XHJcbiAgICAgIH1cclxuICAgIGxldCByb290OiBhbnk7XHJcbiAgICByb290ID0gYW01LlJvb3QubmV3KFwiZW5nYWdlcnNcIik7XHJcbiAgICByb290LnNldFRoZW1lcyhbXHJcbiAgICAgIGFtNXRoZW1lc19BbmltYXRlZC5uZXcocm9vdCksXHJcbiAgICAgIGFtNXRoZW1lc19SZXNwb25zaXZlLm5ldyhyb290KSxcclxuICAgIF0pO1xyXG4gICAgbGV0IGNoYXJ0ID0gcm9vdC5jb250YWluZXIuY2hpbGRyZW4ucHVzaChcclxuICAgICAgYW01eHkuWFlDaGFydC5uZXcocm9vdCwge1xyXG4gICAgICAgIHBhblg6IHRydWUsXHJcbiAgICAgICAgcGFuWTogdHJ1ZSxcclxuICAgICAgICB3aGVlbFg6IFwicGFuWFwiLFxyXG4gICAgICAgIHdoZWVsWTogXCJ6b29tWFwiLFxyXG4gICAgICAgIHBpbmNoWm9vbVg6IHRydWUsXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG5cclxuICAgIC8vIEFkZCBkYXRhXHJcbiAgICBsZXQgZGF0YSA9IHRoaXMuZ2V0RW5nYWdlcnNDYXJkRGF0YT8uZGF0YT8uZW5nYWdlcnM/LmRhdGEubWFwKChpdGVtOiBhbnkpID0+ICh7XHJcbiAgICAgIGRhdGU6IG5ldyBEYXRlKGl0ZW0uZGF0ZSkuZ2V0VGltZSgpLCAvLyBDb252ZXJ0IGRhdGUgc3RyaW5nIHRvIHRpbWVzdGFtcFxyXG4gICAgICB2YWx1ZTogTnVtYmVyKGl0ZW0udmFsdWUpLFxyXG4gICAgfSkpO1xyXG4gICAgbGV0IGN1cnNvciA9IGNoYXJ0LnNldChcclxuICAgICAgXCJjdXJzb3JcIixcclxuICAgICAgYW01eHkuWFlDdXJzb3IubmV3KHJvb3QsIHtcclxuICAgICAgICBiZWhhdmlvcjogXCJub25lXCIsXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgY3Vyc29yLmxpbmVZLnNldChcInZpc2libGVcIiwgZmFsc2UpO1xyXG4gICAgLy8gQ3JlYXRlIGF4ZXNcclxuICAgIGxldCB4QXhpcyA9IGNoYXJ0LnhBeGVzLnB1c2goXHJcbiAgICAgIGFtNXh5LkRhdGVBeGlzLm5ldyhyb290LCB7XHJcbiAgICAgICAgbWF4RGV2aWF0aW9uOiAwLjIsXHJcbiAgICAgICAgYmFzZUludGVydmFsOiB7IHRpbWVVbml0OiBcImRheVwiLCBjb3VudDogMSB9LFxyXG4gICAgICAgIHJlbmRlcmVyOiBhbTV4eS5BeGlzUmVuZGVyZXJYLm5ldyhyb290LCB7IG1pbm9yR3JpZEVuYWJsZWQ6IHRydWUgfSksXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgeEF4aXMuZ2V0KFwicmVuZGVyZXJcIikuZ3JpZC50ZW1wbGF0ZS5zZXQoXCJmb3JjZUhpZGRlblwiLCB0cnVlKTtcclxuICAgIHhBeGlzLmdldChcInJlbmRlcmVyXCIpLmxhYmVscy50ZW1wbGF0ZS5zZXQoXCJmb3JjZUhpZGRlblwiLCB0cnVlKTtcclxuXHJcbiAgICBsZXQgeUF4aXMgPSBjaGFydC55QXhlcy5wdXNoKFxyXG4gICAgICBhbTV4eS5WYWx1ZUF4aXMubmV3KHJvb3QsIHtcclxuICAgICAgICByZW5kZXJlcjogYW01eHkuQXhpc1JlbmRlcmVyWS5uZXcocm9vdCwgeyBwYW46IFwiem9vbVwiIH0pLFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIHlBeGlzLmdldChcInJlbmRlcmVyXCIpLmdyaWQudGVtcGxhdGUuc2V0KFwiZm9yY2VIaWRkZW5cIiwgdHJ1ZSk7XHJcbiAgICB5QXhpcy5nZXQoXCJyZW5kZXJlclwiKS5sYWJlbHMudGVtcGxhdGUuc2V0KFwiZm9yY2VIaWRkZW5cIiwgdHJ1ZSk7XHJcblxyXG4gICAgLy8gQ3JlYXRlIHNlcmllc1xyXG4gICAgbGV0IHNlcmllcyA9IGNoYXJ0LnNlcmllcy5wdXNoKFxyXG4gICAgICBhbTV4eS5MaW5lU2VyaWVzLm5ldyhyb290LCB7XHJcbiAgICAgICAgbmFtZTogXCJTZXJpZXNcIixcclxuICAgICAgICB4QXhpczogeEF4aXMsXHJcbiAgICAgICAgeUF4aXM6IHlBeGlzLFxyXG4gICAgICAgIHZhbHVlWUZpZWxkOiBcInZhbHVlXCIsXHJcbiAgICAgICAgdmFsdWVYRmllbGQ6IFwiZGF0ZVwiLFxyXG4gICAgICAgIHN0cm9rZTogYW01LmNvbG9yKDB4MDBhM2ZmKSwgLy8gU2V0IHRoZSBsaW5lIGNvbG9yIGhlcmUgKHJlZCBpbiB0aGlzIGNhc2UpXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgc2VyaWVzLmJ1bGxldHMucHVzaChmdW5jdGlvbiAoKSB7XHJcbiAgICAgIGxldCBidWxsZXRDaXJjbGUgPSBhbTUuQ2lyY2xlLm5ldyhyb290LCB7XHJcbiAgICAgICAgcmFkaXVzOiAwLFxyXG4gICAgICAgIGZpbGw6IHNlcmllcy5nZXQoXCJmaWxsXCIpXHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm4gYW01LkJ1bGxldC5uZXcocm9vdCwge1xyXG4gICAgICAgIHNwcml0ZTogYnVsbGV0Q2lyY2xlXHJcbiAgICAgIH0pXHJcbiAgICB9KVxyXG4gICAgc2VyaWVzLmRhdGEuc2V0QWxsKGRhdGEpO1xyXG4gICAgc2VyaWVzLnNldChcclxuICAgICAgXCJ0b29sdGlwXCIsXHJcbiAgICAgIGFtNS5Ub29sdGlwLm5ldyhyb290LCB7XHJcbiAgICAgICAgbGFiZWxUZXh0OiBcInt2YWx1ZVl9XCIsXHJcbiAgICAgICAgZ2V0RmlsbEZyb21TcHJpdGU6IGZhbHNlLCAvLyBQcmV2ZW50cyB0aGUgdG9vbHRpcCBmcm9tIGluaGVyaXRpbmcgY29sb3IgZnJvbSB0aGUgc3ByaXRlXHJcbiAgICAgICAgYmFja2dyb3VuZDogYW01LlJlY3RhbmdsZS5uZXcocm9vdCwge1xyXG4gICAgICAgICAgZmlsbDogYW01LmNvbG9yKDB4ZGFmMWZmKSwgLy8gU2V0IHRoZSB0b29sdGlwIGJhY2tncm91bmQgY29sb3IgaGVyZSAoYmx1ZSBpbiB0aGlzIGNhc2UpXHJcbiAgICAgICAgfSksXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgdGhpcy5lbmdhZ2Vyc2xpbmVyb290ID0gcm9vdDtcclxuICB9LDApXHJcbiAgfVxyXG4gIC8vIGNhcmQgbGluZSBDaGFydHMgRW5kXHJcblxyXG4gIGhlYXRNYXAoKSB7XHJcbiAgICB0aGlzLmhlYXRsb2FkaW5nID0gZmFsc2VcclxuICAgIHRoaXMuaGVhdG5vRGF0YSA9IGZhbHNlXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3QgY2hhcnREaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImNoYXJ0ZGl2XCIpO1xyXG4gICAgICBpZiAoIWNoYXJ0RGl2KSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLmhlYXRNYXByb290KSB7XHJcbiAgICAgICAgdGhpcy5oZWF0TWFwcm9vdC5kaXNwb3NlKCk7XHJcbiAgICAgIH1cclxuICAgIGxldCByb290ID0gYW01LlJvb3QubmV3KFwiY2hhcnRkaXZcIik7XHJcbiAgICByb290LnNldFRoZW1lcyhbYW01dGhlbWVzX0FuaW1hdGVkLm5ldyhyb290KV0pO1xyXG5cclxuICAgIGxldCBjaGFydCA9IHJvb3QuY29udGFpbmVyLmNoaWxkcmVuLnB1c2goXHJcbiAgICAgIGFtNXBlcmNlbnQuU2xpY2VkQ2hhcnQubmV3KHJvb3QsIHtcclxuICAgICAgICBsYXlvdXQ6IHJvb3QudmVydGljYWxMYXlvdXQsXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIFxyXG4gICAgICBsZXQgZGF0YSA9IHRoaXMuaGVhdE1hcERhdGE7XHJcbiAgICBpZiAodGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInKSB7XHJcbiAgICAgIGRhdGEgPSBkYXRhLmZpbHRlcigoaXRlbTogYW55KSA9PiBpdGVtLmNhdGVnb3J5ICE9PSAnUG90ZW50aWFsIEJ1eWVycycpO1xyXG4gICAgICBkYXRhID0gZGF0YS5tYXAoKGl0ZW06YW55KSA9PiB7XHJcbiAgICAgICAgY29uc3QgY2F0ZWdvcnkgPSBpdGVtLmNhdGVnb3J5LnRvTG93ZXJDYXNlKCk7XHJcbiAgICAgIFxyXG4gICAgICAgIGNvbnN0IHVwZGF0ZWRDYXRlZ29yeSA9XHJcbiAgICAgICAgICBjYXRlZ29yeSA9PT0gJ2VuZ2FnZXJzJ1xyXG4gICAgICAgICAgICA/IGBNb3JlIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZX0gbWluc2BcclxuICAgICAgICAgICAgOiBjYXRlZ29yeSA9PT0gJ2JvdW5jZWQnXHJcbiAgICAgICAgICAgID8gYExlc3MgdGhhbiAke3RoaXMuZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlfSBtaW5zYFxyXG4gICAgICAgICAgICA6IGNhdGVnb3J5ID09PSAnY29udmVyc2lvbidcclxuICAgICAgICAgICAgPyBgTW9yZSB0aGFuICR7dGhpcy5mZWF0dXJlQ29uZmlnPy5jb252ZXJzaW9uLnZhbHVlfSBtaW5zYFxyXG4gICAgICAgICAgICA6IGNhdGVnb3J5ID09PSAnZm9vdGZhbGwnXHJcbiAgICAgICAgICAgID8gJ0Zvb3RmYWxsJ1xyXG4gICAgICAgICAgICA6IGAke3RoaXMuZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlGcm9tLnZhbHVlfS0ke3RoaXMuZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlUby52YWx1ZX0gbWluc2A7XHJcbiAgICAgIFxyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAuLi5pdGVtLFxyXG4gICAgICAgICAgY2F0ZWdvcnk6IHVwZGF0ZWRDYXRlZ29yeSxcclxuICAgICAgICB9O1xyXG4gICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgIGRhdGEuc29ydCgoYTphbnksIGI6YW55KSA9PiBiLnZhbHVlIC0gYS52YWx1ZSk7XHJcbiAgICBsZXQgc2VyaWVzID0gY2hhcnQuc2VyaWVzLnB1c2goXHJcbiAgICAgIGFtNXBlcmNlbnQuRnVubmVsU2VyaWVzLm5ldyhyb290LCB7XHJcbiAgICAgICAgYWxpZ25MYWJlbHM6IGZhbHNlLFxyXG4gICAgICAgIG9yaWVudGF0aW9uOiBcImhvcml6b250YWxcIixcclxuICAgICAgICB2YWx1ZUZpZWxkOiBcInZhbHVlXCIsXHJcbiAgICAgICAgY2F0ZWdvcnlGaWVsZDogXCJjYXRlZ29yeVwiLFxyXG4gICAgICAgIGJvdHRvbVJhdGlvOiAxLFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuXHJcbiAgICAgIFxyXG4gICAgc2VyaWVzLmRhdGEuc2V0QWxsKGRhdGEpO1xyXG4gICAgc2VyaWVzLmFwcGVhcigpO1xyXG4gICAgLy8gVXBkYXRlIHRoZSBsYWJlbCB0ZW1wbGF0ZSB0byBpbmNsdWRlIHRoZSBwZXJjZW50YWdlXHJcbiAgICBzZXJpZXMubGFiZWxzLnRlbXBsYXRlLnNldEFsbCh7XHJcbiAgICAgIHBvcHVsYXRlVGV4dDogdHJ1ZSxcclxuICAgICAgdGV4dDogXCJ7Y2F0ZWdvcnl9ICh7Y291bnR9JSlcXG5cXG57dmFsdWV9XCIsXHJcbiAgICAgIGZvbnRTaXplOlwiMTNweFwiLFxyXG4gICAgICBmb250V2VpZ2h0OlwiNDAwXCIsXHJcbiAgICAgIHRleHRBbGlnbjpcImNlbnRlclwiXHJcbiAgICB9KTtcclxuICAgICAgXHJcbiAgICB0aGlzLmhlYXRNYXByb290ID0gcm9vdDtcclxuICAgIGNoYXJ0LmFwcGVhcigxMDAwLCAxMDApO1xyXG4gIH0sMCk7XHJcblxyXG4gIH1cclxuXHJcbiAgdHlwZTogYW55ID0gXCJ3ZWVrbHlcIjtcclxuICBzZWxlY3RQbGFuKHR5cGU6IGFueSkge1xyXG4gICAgdGhpcy50eXBlID0gdHlwZTtcclxuICB9XHJcblxyXG4gIC8vIFRvZ2dsZSBmdW5jdGlvbiBmb3IgdGhlIHN3aXRjaFxyXG4gIHRvZ2dsZUF2ZXJhZ2UoZXZ0OmFueSkge1xyXG4gICAgLy8gdGhpcy50YWJsZW9iai5ub2IgPXRydWU7XHJcbiAgICB0aGlzLmlzQXZlcmFnZSA9IGV2dC50YXJnZXQuY2hlY2tlZDtcclxuICAgIHRoaXMuc2VydmljZS50b2dnbGVBdmVyYWdlKHRoaXMuaXNBdmVyYWdlKTtcclxuICAgIHRoaXMuc2VydmljZT8udG9nZ2xlbm9iKHRoaXMudGFibGVvYmoubm9iKTtcclxuICAgIHRoaXMudGFibGVvYmouZnJvbURhdGU9IHRoaXMuaGVhZGVyRGF0YS5kYXRlLnN0YXJ0RGF0ZSxcclxuICAgIHRoaXMudGFibGVvYmoudG9EYXRlPSB0aGlzLmhlYWRlckRhdGEuZGF0ZS5lbmREYXRlLFxyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmoucmVjYXBWaWRlb0RhdGU7XHJcbiAgICBkZWxldGUgdGhpcy50YWJsZW9iai5saW1pdDsgZGVsZXRlIHRoaXMudGFibGVvYmouZXhwb3J0O1xyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmoub2Zmc2V0O1xyXG4gICAgaWYodGhpcy5pc0F2ZXJhZ2UgPT09IHRydWUpe1xyXG4gICAgdGhpcy52YWx1ZVR5cGUgPSAnYXZlcmFnZSc7XHJcbiAgICAgdGhpcy5mb290ZmFsbE5hbWUgPSAnQXZnLiBGb290ZmFsbCdcclxuICAgdGhpcy50YWJsZW9iai52YWx1ZVR5cGUgPXRoaXMudmFsdWVUeXBlO1xyXG4gICB0aGlzLm9iakRhdGEudmFsdWVUeXBlID10aGlzLnZhbHVlVHlwZTtcclxuICAgdGhpcy5vYmpEYXRhVHJhZmZpYy52YWx1ZVR5cGUgPXRoaXMudmFsdWVUeXBlO1xyXG4gIC8vICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9ICcnO1xyXG4gICB0aGlzLnR5cGVWYWx1ZT0nYXZlcmFnZSc7XHJcbiAgLy8gIHRoaXMudmFsdWVDb252ZXJzaW9uUmF0ZSA9IHRoaXMuZ2V0Q2FyZERhdGE/LmNvbnZlcnNpb24/LnJhdGU7XHJcbiAgfSAgZWxzZSB7XHJcbiAgICAgdGhpcy5mb290ZmFsbE5hbWUgPSAnQWN0dWFsIEZvb3RmYWxsJ1xyXG4gICAgIHRoaXMudmFsdWVUeXBlPSdhY3R1YWwnO1xyXG4gICAgdGhpcy50YWJsZW9iai52YWx1ZVR5cGUgPSdhY3R1YWwnO1xyXG4gICAgdGhpcy5vYmpEYXRhLnZhbHVlVHlwZSA9J2FjdHVhbCc7XHJcbiAgICB0aGlzLm9iakRhdGFUcmFmZmljLnZhbHVlVHlwZSA9J2FjdHVhbCc7XHJcbiAgICB0aGlzLnR5cGVWYWx1ZT0nc3VtJztcclxuXHJcbiAgICAvLyB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENhcmREYXRhPy5jb252ZXJzaW9uPy5yYXRlO1xyXG4gIH0gICBcclxuICBpZiAodGhpcy5ub2IgJiYgdGhpcy5jbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uY29udmVyc2lvbkNhbGN1bGF0aW9uID09PSAnZm9vdGZhbGwtY291bnQnKSB7XHJcbiAgICB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZm9vdGZhbGw/LnJhdGU7XHJcbiAgICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9ICdmb290ZmFsbCc7XHJcbiAgfSBlbHNlIGlmICh0aGlzLm5vYiAmJiB0aGlzLmNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5jb252ZXJzaW9uQ2FsY3VsYXRpb24gPT09ICdlbmdhZ2Vycy1jb3VudCcpIHtcclxuICAgIHRoaXMudmFsdWVDb252ZXJzaW9uUmF0ZSA9IHRoaXMuZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5lbmdhZ2Vycz8ucmF0ZTtcclxuICAgIHRoaXMuY29udmVyc2lvblZhbHVlID0gJ2VuZ2FnZXJzJztcclxuICB9IGVsc2UgaWYgKHRoaXMubm9iICYmIHRoaXMuY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmNvbnZlcnNpb25DYWxjdWxhdGlvbiA9PT0gJ2JpbGxhYmxlLWVudGl0aWVzJykge1xyXG4gICAgdGhpcy52YWx1ZUNvbnZlcnNpb25SYXRlID0gdGhpcy5nZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LnBvdGVudGlhbEJ1eWVycz8ucmF0ZTtcclxuICAgIHRoaXMuY29udmVyc2lvblZhbHVlID0gJ1BvdGVudGlhbCBCdXllcnMnO1xyXG4gIH1cclxuLy8gICBpZih0aGlzLnRhYmxlb2JqLm5vYil7XHJcbi8vICAgICB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8ubm9iLm5vYjtcclxuLy8gICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9J05vQiBEZXJpdmVkJ1xyXG4vLyB9IGVsc2UgaWYgKHRoaXMuY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FsY3VsYXRpb24gPT09ICdlbmdhZ2Vycy1jb252ZXJzaW9uJykge1xyXG4vLyAgIHRoaXMudmFsdWVDb252ZXJzaW9uUmF0ZSA9IHRoaXMuZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5lbmdhZ2Vycz8ucmF0ZTtcclxuLy8gICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9ICdlbmdhZ2Vycyc7XHJcbi8vIH0gZWxzZSB7XHJcbi8vICAgdGhpcy52YWx1ZUNvbnZlcnNpb25SYXRlID0gdGhpcy5nZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LmZvb3RmYWxsPy5yYXRlO1xyXG4vLyAgIHRoaXMuY29udmVyc2lvblZhbHVlID0gJ2Zvb3RmYWxsJztcclxuLy8gfVxyXG4gIHRoaXMucHJldmlvdXNWYWx1ZSA9ICdmb290ZmFsbCc7IFxyXG4gIHRoaXMudGFibGVvYmoubm9ybWFsaXplID0gdGhpcy5ub3JtYWxpemVcclxuXHJcbiAgICB0aGlzLmdldEZ1bm5hbCgpO1xyXG4gICAgdGhpcy5nZXRGb290ZmFsbENhcmQoKTtcclxuICAgIHRoaXMuZ2V0Q29udmVyc2lvbkNhcmQoKTtcclxuICAgIHRoaXMuZ2V0Qm91bmNlZENhcmQoKTtcclxuICAgIHRoaXMuZ2V0RW5nYWdlcnNDYXJkKCk7XHJcbiAgICB0aGlzLmdldFBvdGVudGlhbEJ1eWVyc0NhcmQoKTtcclxuICAgIHRoaXMuZ2V0TWlzc2VkT3Bwb3J0dW5pdHlDYXJkKCk7XHJcbiAgICB0aGlzLmdldFBvdGVudGlhbEJ1eWVycygpO1xyXG4gICAgdGhpcy5nZXRUYWJsZSgpO1xyXG4gICAgdGhpcy5mb290ZmFsbFRyZW5kKCk7XHJcbiAgICBpZih0aGlzLmhlYWRlckRhdGE/LmNsaWVudCA9PT0nNDU5Jyl7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSBcImZvb3RmYWxsXCJcclxuICAgICAgdGhpcy5mb290ZmFsbFZhbHVlID0gXCJmb290ZmFsbFwiO1xyXG4gICAgICB0aGlzLnNlbGN0ZWRWYWx1ZSA9J0Zvb3RmYWxsIEFuYWx5c2lzJztcclxuICAgIHRoaXMuc2VsZWN0ZWRUYWJzKCdmb290ZmFsbCcpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZFRhYiA9IFwidHJhZmZpY1wiXHJcbiAgICAgIHRoaXMuZm9vdGZhbGxWYWx1ZSA9IFwidHJhZmZpY1wiO1xyXG4gICAgICB0aGlzLnNlbGN0ZWRWYWx1ZSA9J1RyYWZmaWMgQW5hbHlzaXMnO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkVGFicygndHJhZmZpYycpO1xyXG4gICAgfVxyXG4gICBcclxuICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuICB0b2dnbGVBdmVyYWdlRm9vdGZhbGwoZXZ0OmFueSkge1xyXG4gICAgLy8gdGhpcy50YWJsZW9iai5ub2IgPXRydWU7XHJcbiAgICB0aGlzLmlzQXZlcmFnZUZvb3RmYWxsID0gZXZ0LnRhcmdldC5jaGVja2VkO1xyXG4gICAgdGhpcy50YWJsZW9iai5mcm9tRGF0ZT0gdGhpcy5oZWFkZXJEYXRhLmRhdGUuc3RhcnREYXRlLFxyXG4gICAgdGhpcy50YWJsZW9iai50b0RhdGU9IHRoaXMuaGVhZGVyRGF0YS5kYXRlLmVuZERhdGUsXHJcbiAgICBkZWxldGUgdGhpcy50YWJsZW9iai5yZWNhcFZpZGVvRGF0ZTtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLmxpbWl0OyBkZWxldGUgdGhpcy50YWJsZW9iai5leHBvcnQ7XHJcbiAgICBkZWxldGUgdGhpcy50YWJsZW9iai5vZmZzZXQ7XHJcbiAgICBpZih0aGlzLmlzQXZlcmFnZUZvb3RmYWxsID09PSB0cnVlKXtcclxuICAgIHRoaXMudmFsdWVUeXBlID0gJ2F2ZXJhZ2UnO1xyXG4gICAgIHRoaXMuZm9vdGZhbGxOYW1lID0gJ0F2Zy4gRm9vdGZhbGwnXHJcbiAgIHRoaXMudGFibGVvYmoudmFsdWVUeXBlID10aGlzLnZhbHVlVHlwZTtcclxuICAgdGhpcy50eXBlVmFsdWU9J2F2ZXJhZ2UnO1xyXG4gIH0gIGVsc2Uge1xyXG4gICAgIHRoaXMuZm9vdGZhbGxOYW1lID0gJ0FjdHVhbCBGb290ZmFsbCdcclxuICAgICB0aGlzLnZhbHVlVHlwZT0nYWN0dWFsJztcclxuICAgIHRoaXMudGFibGVvYmoudmFsdWVUeXBlID0nYWN0dWFsJztcclxuXHJcbiAgfSAgIFxyXG4gIHRoaXMudGFibGVvYmoubm9ybWFsaXplID0gdGhpcy5ub3JtYWxpemVcclxuICAgIHRoaXMuZ2V0Rm9vdGZhbGxDYXJkKCk7XHJcbiAgICB0aGlzLmdldE1pc3NlZE9wcG9ydHVuaXR5Q2FyZCgpO1xyXG4gICBcclxuICAgXHJcbiAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcbiAgXHJcbiAgdG9nZ2xlQ29udmVyc2lvbihldnQ6YW55KXtcclxuICAgIHRoaXMuaXNDb252ZXJzaW9uID0gZXZ0LnRhcmdldC5jaGVja2VkOyBcclxuICAgIHRoaXMudGFibGVvYmoubm9ybWFsaXplID0gdGhpcy5ub3JtYWxpemVcclxuICAgIGlmKHRoaXMuY29udmVyc2lvblZhbHVlID09PSAnZm9vdGZhbGwnKXtcclxuICAgICAgdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSA9ICdmb290ZmFsbC1jb3VudCc7XHJcbiAgICAgfSBpZiAodGhpcy5jb252ZXJzaW9uVmFsdWUgPT09ICdlbmdhZ2Vycycpe1xyXG4gICAgICB0aGlzLnRhYmxlb2JqLmNvbnZlcnNpb250eXBlID0gJ2VuZ2FnZXJzLWNvdW50JztcclxuICAgICB9aWYgKHRoaXMuY29udmVyc2lvblZhbHVlID09PSAnUG90ZW50aWFsIEJ1eWVycycpe1xyXG4gICAgICB0aGlzLnRhYmxlb2JqLmNvbnZlcnNpb250eXBlID0gJ2JpbGxhYmxlLWNvdW50JztcclxuICAgICB9IGlmICh0aGlzLmNvbnZlcnNpb25WYWx1ZSA9PT0gJ05vQiBEZXJpdmVkJyl7XHJcbiAgICAgIHRoaXMudGFibGVvYmouY29udmVyc2lvbnR5cGUgPSAnbm9iJztcclxuICAgICB9XHJcbiAgICBpZih0aGlzLmlzQ29udmVyc2lvbiA9PXRydWUpe1xyXG4gICAgICB0aGlzLnRhYmxlb2JqLm5vYiA9IHRydWU7XHJcbiAgICAgIHRoaXMub2JqRGF0YS5ub2IgPSB0cnVlO1xyXG4gICAgICB0aGlzLm9iakRhdGFUcmFmZmljLm5vYiA9IHRydWU7IHRoaXMubm9iID10cnVlO1xyXG4gICAgfSAgZWxzZSB7XHJcbiAgICAgIGlmKHRoaXMudGFibGVvYmouY29udmVyc2lvbnR5cGUgPT09ICdub2InKXtcclxuICAgICAgICB0aGlzLnRhYmxlb2JqLm5vYiA9IHRydWU7XHJcbiAgICAgIHRoaXMub2JqRGF0YS5ub2IgPSB0cnVlO1xyXG4gICAgICB0aGlzLm9iakRhdGFUcmFmZmljLm5vYiA9IHRydWU7IHRoaXMubm9iID10cnVlOyBcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5ub2IgPWZhbHNlO1xyXG4gICAgICB0aGlzLnRhYmxlb2JqLm5vYiA9IGZhbHNlO1xyXG4gICAgICB0aGlzLm9iakRhdGEubm9iID0gZmFsc2U7XHJcbiAgICAgIHRoaXMub2JqRGF0YVRyYWZmaWMubm9iID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMuZ2V0RnVubmFsKCk7ICAgIFxyXG4gICAgdGhpcy5nZXRDb252ZXJzaW9uQ2FyZDEoKTsgXHJcbiAgICB0aGlzLmdldE1pc3NlZE9wcG9ydHVuaXR5Q2FyZCgpO1xyXG4gICAgdGhpcy5nZXRUYWJsZSgpO1xyXG4gICAgdGhpcy5mb290ZmFsbFRyZW5kKCk7IFxyXG4gICBcclxuICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSBcInRyYWZmaWNcIlxyXG4gICAgdGhpcy5mb290ZmFsbFZhbHVlID0gXCJ0cmFmZmljXCI7XHJcbiAgICB0aGlzLnNlbGN0ZWRWYWx1ZSA9J1RyYWZmaWMgQW5hbHlzaXMnO1xyXG4gICAgdGhpcy5zZWxlY3RlZFRhYnMoJ3RyYWZmaWMnKTtcclxuICB9XHJcblxyXG4gIGNhbWVyYVZpZXcoKXtcclxuICAgIHRoaXMuc3RvcmVJZGFycmF5ID0gdGhpcy5oZWFkZXJEYXRhPy5zdG9yZXMuZmlsdGVyKChzdG9yZTphbnkpID0+IHN0b3JlLmNoZWNrZWQpLm1hcCgoc3RvcmU6YW55KSA9PiBzdG9yZS5zdG9yZUlkKVxyXG4gICAgbGV0IGRhdGE6IGFueSA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJoZWFkZXItZmlsdGVyc1wiKSB8fCBcIlwiKTtcclxuICAgIGRhdGEuc3RvcmUgPSB0aGlzLnN0b3JlSWRhcnJheVswXTtcclxuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFwiaGVhZGVyLWZpbHRlcnNcIiwgSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xyXG4gICAgdGhpcy5ncy5kYXRhUmFuZ2VWYWx1ZS5uZXh0KGRhdGEpO1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiL21hbmFnZS9zdG9yZXMvY2FtZXJhc1wiXSwge1xyXG4gICAgICBxdWVyeVBhcmFtczogeyBzdG9yZUlkOiB0aGlzLnN0b3JlSWRhcnJheVswXX0sXHJcbiAgICB9KTtcclxuICB9XHJcbiAgbmF2aWdhdGVjYW1lcmFWaWV3KHN0b3JlSWQ6YW55KXtcclxuICAgIGxldCBkYXRhOiBhbnkgPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwiaGVhZGVyLWZpbHRlcnNcIikgfHwgXCJcIik7XHJcbiAgICBkYXRhLnN0b3JlID0gc3RvcmVJZDtcclxuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFwiaGVhZGVyLWZpbHRlcnNcIiwgSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xyXG4gICAgdGhpcy5ncy5kYXRhUmFuZ2VWYWx1ZS5uZXh0KGRhdGEpO1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiL21hbmFnZS9zdG9yZXMvY2FtZXJhc1wiXSwge1xyXG4gICAgICBxdWVyeVBhcmFtczogeyBzdG9yZUlkOiBzdG9yZUlkfSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZXhwb3J0WExTWCgpIHtcclxuICAgIHRoaXMudGFibGVvYmoub2Zmc2V0ID0gMDtcclxuICAgIHRoaXMudGFibGVvYmoubGltaXQgPSAxMDAwMDtcclxuICAgICh0aGlzLnRhYmxlb2JqLnZhbHVlVHlwZSA9IHRoaXMudHlwZVZhbHVlKTtcclxuICAgIHRoaXMudGFibGVvYmouZnJvbURhdGU9IHRoaXMuaGVhZGVyRGF0YS5kYXRlLnN0YXJ0RGF0ZSxcclxuICAgIHRoaXMudGFibGVvYmoudG9EYXRlPSB0aGlzLmhlYWRlckRhdGEuZGF0ZS5lbmREYXRlLFxyXG4gICAgdGhpcy50YWJsZW9iai5zZWFyY2ggPSB0aGlzLnNlYXJjaFZhbHVlO1xyXG4gICAgdGhpcy50YWJsZW9iai5leHBvcnQgPSB0cnVlO1xyXG4gICAgdGhpcy50YWJsZW9iai5ub3JtYWxpemUgPSB0aGlzLm5vcm1hbGl6ZVxyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmoucmVjYXBWaWRlb0RhdGU7XHJcbiAgICB0aGlzLnNlcnZpY2VcclxuICAgIC5nZXRTdW1tYXJ5VGFibGVMaXN0RXhwb3J0KHRoaXMudGFibGVvYmopXHJcbiAgICA/LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzKSB7XHJcbiAgICAgICAgICB0aGlzLmV4Y2VsU2VydmljZS5zYXZlQXNFeGNlbEZpbGUocmVzLCBcIlRyYWZmaWMgU3VtbWFyeSBUYWJsZSBcIik7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOiAoKSA9PiB7fSxcclxuICAgIH0pO1xyXG4gICAgdGhpcy50YWJsZW9iai5saW1pdCA9IHRoaXMubGltaXQ7XHJcbiAgICB0aGlzLnRhYmxlb2JqLmV4cG9ydCA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgb25Tb3J0KGNvbHVtbjogc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy5zb3J0ZWRDb2x1bW4gPT09IGNvbHVtbikge1xyXG4gICAgICB0aGlzLnNvcnREaXJlY3Rpb24gPSB0aGlzLnNvcnREaXJlY3Rpb24gPT09IDEgPyAtMSA6IDE7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNvcnRlZENvbHVtbiA9IGNvbHVtbjtcclxuICAgICAgdGhpcy5zb3J0RGlyZWN0aW9uID0gMTtcclxuICAgIH1cclxuICAgIHRoaXMudGFibGVvYmouZnJvbURhdGU9IHRoaXMuaGVhZGVyRGF0YS5kYXRlLnN0YXJ0RGF0ZSxcclxuICAgIHRoaXMudGFibGVvYmoudG9EYXRlPSB0aGlzLmhlYWRlckRhdGEuZGF0ZS5lbmREYXRlLFxyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmoucmVjYXBWaWRlb0RhdGU7XHJcbiAgICB0aGlzLnRhYmxlb2JqLnNvcnRCeSA9IHRoaXMuc29ydERpcmVjdGlvbiwgLy9bMS0+YXNjLCAtMS0+REVzY11cclxuICAgIHRoaXMudGFibGVvYmouc29ydCA9IHRoaXMuc29ydGVkQ29sdW1uLCAvLyBDb2x1bW4gTmFtZVxyXG4gICAgdGhpcy5nZXRUYWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgZ2V0TWFwKCkge1xyXG4gICAgdGhpcy5tcGFsb2FkaW5nID10cnVlO1xyXG4gICAgdGhpcy5tYXBub0RhdGE9IGZhbHNlO1xyXG4gICAgY29uc3Qgb2JqID0ge1xyXG4gICAgICBjbGllbnRJZDogdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQsXHJcbiAgICAgIHN0b3JlRGF0ZTogdGhpcy5oZWFkZXJEYXRhPy5kYXRlPy5lbmREYXRlLFxyXG4gICAgICBzdG9yZUlkOiB0aGlzLnN0b3JlSWRhcnJheVxyXG4gICAgfTtcclxuXHJcbiAgICB0aGlzLnNlcnZpY2UuZ2VNYXBzKG9iaik/LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKXtcclxuICAgICAgICAgIC8vIGlmIChyZXMgJiYgcmVzLmRhdGEgJiYgcmVzLmRhdGEuc3RvcmVEYXRhKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYXVMb2NhdGlvbnMgPSByZXMuZGF0YS5zdG9yZURhdGE7XHJcbiAgICAgICAgICBcclxuICAgICAgICAgICAgLy8gVXBkYXRlIG1hcE9wdGlvbnMgY2VudGVyIGlmIG5lZWRlZFxyXG4gICAgICAgICAgICBpZiAodGhpcy5hdUxvY2F0aW9ucy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgY29uc3QgZmlyc3RMb2NhdGlvbiA9IHRoaXMuYXVMb2NhdGlvbnNbMF07XHJcbiAgICAgICAgICAgICAgaWYgKGZpcnN0TG9jYXRpb24gJiYgdHlwZW9mIGZpcnN0TG9jYXRpb24ubGF0ID09PSAnbnVtYmVyJyAmJiB0eXBlb2YgZmlyc3RMb2NhdGlvbi5sbmcgPT09ICdudW1iZXInKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm1hcE9wdGlvbnMgPSB7XHJcbiAgICAgICAgICAgICAgICAgIC4uLnRoaXMubWFwT3B0aW9ucyxcclxuICAgICAgICAgICAgICAgICAgY2VudGVyOiB7IGxhdDogZmlyc3RMb2NhdGlvbi5sYXQsIGxuZzogZmlyc3RMb2NhdGlvbi5sbmcgfVxyXG4gICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4geyAgdGhpcy5nZXREYXRhKCk7IH0sMTAwKVxyXG4gICAgICAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICAgICAgfSBlbHNlIHt9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7fVxyXG4gICAgICAgICAgLy8gfVxyXG4gICAgICAgICAgdGhpcy5tcGFsb2FkaW5nID1mYWxzZTtcclxuICAgICAgICAgIHRoaXMubWFwbm9EYXRhPSBmYWxzZTtcclxuICAgICAgICAgIH0gZWxzZSBpZihyZXMgPT09IG51bGwpe1xyXG4gICAgICAgICAgICB0aGlzLm1hcG5vRGF0YT0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5tcGFsb2FkaW5nID1mYWxzZTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuYXVMb2NhdGlvbnMgPVtdO1xyXG4gICAgICAgICAgICB0aGlzLm1wYWxvYWRpbmcgPWZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm1hcG5vRGF0YT0gdHJ1ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoZXJyKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmF1TG9jYXRpb25zID1bXTtcclxuICAgICAgICAgIHRoaXMubXBhbG9hZGluZyA9ZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMubWFwbm9EYXRhPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG4gIG1hcDogbWFwYm94Z2wuTWFwO1xyXG4gIHByaXZhdGUgY2hlY2tNYXBDb250YWluZXJJbnRlcnZhbDogYW55O1xyXG4gIGdldERhdGEoKSB7XHJcbiAgICB0aGlzLmNoZWNrTWFwQ29udGFpbmVySW50ZXJ2YWwgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3QgbWFwQ29udGFpbmVyID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJyNtYXAnKTtcclxuICAgICAgaWYgKG1hcENvbnRhaW5lcikge1xyXG4gICAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5jaGVja01hcENvbnRhaW5lckludGVydmFsKTtcclxuICAgICAgICB0aGlzLmluaXRpYWxpemVNYXAobWFwQ29udGFpbmVyKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjbGVhckludGVydmFsKHRoaXMuY2hlY2tNYXBDb250YWluZXJJbnRlcnZhbCk7XHJcbiAgICAgICAgdGhpcy5pbml0aWFsaXplTWFwKG1hcENvbnRhaW5lcik7XHJcbiAgICAgIH1cclxuICAgIH0sIDEwMCk7XHJcblxyXG4gIH1cclxuICBpbml0aWFsaXplTWFwKG1hcENvbnRhaW5lcjogSFRNTEVsZW1lbnQpe1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7ICBcclxuICAgICAgY29uc3QgbWFwQ29udGFpbmVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ21hcCcpO1xyXG4gICAgICBpZiAoIW1hcENvbnRhaW5lcikge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgLy8gQ2hlY2sgdGhhdCBsb2NhdGlvbnMgZXhpc3QgYmVmb3JlIHByb2NlZWRpbmdcclxuICAgIGlmICh0aGlzLmF1TG9jYXRpb25zPy5sZW5ndGggPT09IDApIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gIFxyXG4gICAgY29uc3QgZ2VvanNvbiA9IHtcclxuICAgICAgJ3R5cGUnOiAnRmVhdHVyZUNvbGxlY3Rpb24nLFxyXG4gICAgICAnZmVhdHVyZXMnOiB0aGlzLmF1TG9jYXRpb25zLm1hcCgoc3RvcmUsIGluZGV4KSA9PiAoe1xyXG4gICAgICAgICd0eXBlJzogJ0ZlYXR1cmUnLFxyXG4gICAgICAgICdwcm9wZXJ0aWVzJzoge1xyXG4gICAgICAgICAgJ3N0b3JlTmFtZSc6IHN0b3JlLnN0b3JlTmFtZSwgICAgICAgICAvLyBTdG9yZSBuYW1lXHJcbiAgICAgICAgICAnaW1hZ2VJZCc6IDEwMTEgKyBpbmRleCwgICAgICAgICAgICAgIC8vIER5bmFtaWMgaW1hZ2UgSURcclxuICAgICAgICAgICdpY29uU2l6ZSc6IFs2MCwgNjBdLCAgICAgICAgICAgICAgICAgLy8gQWRqdXN0IGljb24gc2l6ZSBhcyBuZWVkZWRcclxuICAgICAgICAgICdmb290ZmFsbCc6IHN0b3JlLmF2Z0Zvb3RmYWxsLCAgICAgICAgLy8gRm9vdGZhbGwgZGF0YVxyXG4gICAgICAgICAgJ29wZW5UaW1lJzogc3RvcmUub3BlblRpbWUsICAgICAgICAgICAvLyBPcGVuIHRpbWVcclxuICAgICAgICAgICdjbG9zZVRpbWUnOiBzdG9yZS5jbG9zZVRpbWUsICAgICAgICAgLy8gQ2xvc2UgdGltZVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgJ2dlb21ldHJ5Jzoge1xyXG4gICAgICAgICAgJ3R5cGUnOiAnUG9pbnQnLFxyXG4gICAgICAgICAgJ2Nvb3JkaW5hdGVzJzogW3N0b3JlLmxuZywgc3RvcmUubGF0XSAgLy8gQ29vcmRpbmF0ZXMgZnJvbSBzdG9yZSBkYXRhXHJcbiAgICAgICAgfVxyXG4gICAgICB9KSlcclxuICAgIH07XHJcbiAgXHJcbiAgICAvLyBEeW5hbWljYWxseSBzZXQgbWFwIGNlbnRlciBiYXNlZCBvbiB0aGUgZmlyc3QgbG9jYXRpb25cclxuICAgIGNvbnN0IGZpcnN0TG9jYXRpb24gPSB0aGlzLmF1TG9jYXRpb25zWzBdO1xyXG4gXHJcbiAgICB0aGlzLm1hcCA9IG5ldyBtYXBib3hnbC5NYXAoe1xyXG4gICAgICBjb250YWluZXI6ICdtYXAnLFxyXG4gICAgICBzdHlsZTogJ21hcGJveDovL3N0eWxlcy9tYXBib3gvc3RyZWV0cy12MTInLFxyXG4gICAgICBjZW50ZXI6IFtmaXJzdExvY2F0aW9uLmxuZywgZmlyc3RMb2NhdGlvbi5sYXRdLCAvLyBDZW50ZXIgbWFwIG9uIHRoZSBmaXJzdCBsb2NhdGlvblxyXG4gICAgICB6b29tOiAxMCwgLy8gQWRqdXN0IHRoaXMgdmFsdWUgKDEgPSB3b3JsZCB2aWV3LCAyMCA9IGJ1aWxkaW5nIHZpZXcpXHJcbiAgICAgIG1heFpvb206IDIwLCAvLyBPcHRpb25hbDogTGltaXQgbWF4IHpvb20gbGV2ZWxcclxuICAgICAgbWluWm9vbTogMSAgIC8vIE9wdGlvbmFsOiBMaW1pdCBtaW4gem9vbSBsZXZlbFxyXG4gICAgfSk7XHJcbiAgXHJcbiAgICAvLyBBZGQgbWFya2VycyB0byB0aGUgbWFwXHJcbiAgICBnZW9qc29uLmZlYXR1cmVzLmZvckVhY2goKGZlYXR1cmUsIGZlYXR1cmVJbmRleCkgPT4ge1xyXG4gICAgICBjb25zdCB7IHByb3BlcnRpZXMsIGdlb21ldHJ5IH0gPSBmZWF0dXJlO1xyXG4gICAgICBjb25zdCBzdG9yZSA9IHRoaXMuYXVMb2NhdGlvbnNbZmVhdHVyZUluZGV4XTtcclxuICAgICAgY29uc3QgZWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcclxuICAgICAgY29uc3Qgd2lkdGggPSBwcm9wZXJ0aWVzLmljb25TaXplWzBdO1xyXG4gICAgICBjb25zdCBoZWlnaHQgPSBwcm9wZXJ0aWVzLmljb25TaXplWzFdO1xyXG4gICAgICBlbC5jbGFzc05hbWUgPSAnbWFya2VyJztcclxuICAgICAgZWwuaW5uZXJIVE1MID0gYFxyXG4gICAgICA8ZGl2IGNsYXNzPVwibWFya2VyLWljb25cIiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB3aWR0aDogJHt3aWR0aH1weDsgaGVpZ2h0OiAke2hlaWdodH1weDsgZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1HcmF5LTcwMCwgIzM0NDA1NCk7XHJcbnRleHQtYWxpZ246IGNlbnRlcjtcclxuZm9udC1mYW1pbHk6IEludGVyO1xyXG5mb250LXNpemU6IDkuMDA3cHg7XHJcbmZvbnQtc3R5bGU6IG5vcm1hbDtcclxuZm9udC13ZWlnaHQ6IDYwMDtcclxubGluZS1oZWlnaHQ6IDEzcHg7XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1hcmtlci1jb250ZW50XCIgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBhbGlnbi1pdGVtczogY2VudGVyO1wiPlxyXG4gICAgICAgICAgPHN2ZyBjbGFzcz1cIm1iLTFcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxM1wiIGhlaWdodD1cIjEzXCIgdmlld0JveD1cIjAgMCAxMyAxM1wiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgIDxwYXRoIGQ9XCJNMS4zMzY1NCAzLjM2MzdMMS4yOTY1OCAzLjQyNjExQzAuODc3Njk4IDQuMTY3MDEgMS4zMjQ5MyA1LjEwMzM1IDIuMTI5MzEgNS4yMTA3NkMyLjIwMjE4IDUuMjE5NjcgMi4yNjk5OSA1LjIyNDM4IDIuMzM2MjUgNS4yMjQzOEMyLjc3MDIxIDUuMjI0MzggMy4xNTM5IDUuMDM4MjEgMy40MjEzMiA0Ljc0NzkzTDMuODM2NjYgNC4yOTcxTDQuMjUwNTkgNC43NDkyM0M0LjUxNDc2IDUuMDM3NzggNC44OTc1OCA1LjIyNDM4IDUuMzM0NDggNS4yMjQzOEM1Ljc2OTQxIDUuMjI0MzggNi4xNTQ0MyA1LjAzNzUyIDYuNDE4MzcgNC43NDkyM0w2LjgzMzU5IDQuMjk1NjhMNy4yNDg4MiA0Ljc0OTIzQzcuNTEyNzUgNS4wMzc1MiA3Ljg5Nzc3IDUuMjI0MzggOC4zMzI3MSA1LjIyNDM4QzguNzY3NjQgNS4yMjQzOCA5LjE1MjY2IDUuMDM3NTIgOS40MTY2IDQuNzQ5MjNMOS44MzE4MiA0LjI5NTY4TDEwLjI0NyA0Ljc0OTIzQzEwLjUxMSA1LjAzNzUyIDEwLjg5NiA1LjIyNDM4IDExLjMzMDkgNS4yMjQzOEMxMS4zOTUgNS4yMjQzOCAxMS40NjQ5IDUuMjE5NjYgMTEuNTM3MiA1LjIxMDgzQzEyLjM1OTMgNS4wOTg3NSAxMi44MDggNC4xMTIyNSAxMi4zMjg2IDMuMzY0MDhDMTIuMzI4NiAzLjM2NDAzIDEyLjMyODUgMy4zNjM5OSAxMi4zMjg1IDMuMzYzOTVMMTEuMDA4OCAxLjMwNjIxTDExLjAwODEgMS4zMDUxMUMxMC45OTY3IDEuMjg3MjIgMTAuOTY4NiAxLjI2ODA0IDEwLjkzMzIgMS4yNjgwNEgyLjcyOTQyQzIuNjk0MDMgMS4yNjgwNCAyLjY2NTg5IDEuMjg3MjIgMi42NTQ0OCAxLjMwNTExTDIuNjU0MDEgMS4zMDU4NEwxLjMzNjU0IDMuMzYzN1pNMTEuMDczMSA3LjA2NjY3VjkuNDE3NTNWOS45ODA0OUgxMC41MTAxSDMuMTUyNDhIMi41ODk1MlY5LjQxNzUzVjcuMDY3MDJDMi41MDY3OCA3LjA3MzE4IDIuNDIzMDggNy4wNzYzNCAyLjMzODU1IDcuMDc2MzRDMi4zMDY3OSA3LjA3NjM0IDIuMjc1MjUgNy4wNzU4NyAyLjI0MzkyIDcuMDc0OTVWOS40MTc1M1YxMC44Njk2QzIuMjQzOTIgMTEuMzUyNiAyLjY0NDY3IDExLjc1ODcgMy4xNTI0OCAxMS43NTg3SDEwLjUxMDFDMTEuMDE3OSAxMS43NTg3IDExLjQxODcgMTEuMzUyNiAxMS40MTg3IDEwLjg2OTZWOS40MTc1M1Y3LjA3NTA5QzExLjM4ODggNy4wNzU5MSAxMS4zNTg3IDcuMDc2MzQgMTEuMzI4NiA3LjA3NjM0QzExLjI0MjggNy4wNzYzNCAxMS4xNTc1IDcuMDczMDggMTEuMDczMSA3LjA2NjY3WlwiIHN0cm9rZT1cIiMxMDE4MjhcIiBzdHJva2Utd2lkdGg9XCIxLjEyNTkyXCIvPlxyXG4gICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFya2VyLWxhYmVsXCIgc3R5bGU9XCJmb250LXNpemU6IDEwcHg7IHRleHQtYWxpZ246IGNlbnRlcjtcIj5cclxuICAgICAgICAgICAgJHtwcm9wZXJ0aWVzLnN0b3JlTmFtZX1cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIGA7XHJcbiAgICAgIC8vIGVsLnN0eWxlLmJhY2tncm91bmRJbWFnZSA9IGB1cmwoaHR0cHM6Ly9waWNzdW0ucGhvdG9zL2lkLyR7cHJvcGVydGllcy5pbWFnZUlkfS8ke3dpZHRofS8ke2hlaWdodH0pYDtcclxuICAgICAgZWwuc3R5bGUud2lkdGggPSBgJHt3aWR0aH1weGA7XHJcbiAgICAgIGVsLnN0eWxlLmhlaWdodCA9IGAke2hlaWdodH1weGA7XHJcbiAgICAgIGVsLnN0eWxlLmJhY2tncm91bmRTaXplID0gJzEwMCUnO1xyXG4gIFxyXG4gICAgICAvLyBDcmVhdGUgYSBwb3B1cCBpbnN0YW5jZSB3aXRoIHRoZSBmZWF0dXJlIHByb3BlcnRpZXNcclxuICAgICAgY29uc3QgcG9wdXAgPSBuZXcgbWFwYm94Z2wuUG9wdXAoeyBvZmZzZXQ6IDI1IH0pICBcclxuICAgICAgLy8gVXNlIHRoZSBjb29yZGluYXRlcyBmcm9tIHRoZSBmZWF0dXJlXHJcbiAgICAgIGNvbnN0IGNvb3JkaW5hdGVzOiBbbnVtYmVyLCBudW1iZXJdID0gZ2VvbWV0cnkuY29vcmRpbmF0ZXMgYXMgW251bWJlciwgbnVtYmVyXTtcclxuICAgICAgZWwuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5hZGp1c3RMYXlvdXQoc3RvcmUpO1xyXG4gICAgICB9KTtcclxuICAgICAgLy8gQWRkIG1hcmtlcnMgdG8gdGhlIG1hcFxyXG4gICAgICBuZXcgbWFwYm94Z2wuTWFya2VyKGVsKVxyXG4gICAgICAgIC5zZXRMbmdMYXQoY29vcmRpbmF0ZXMpXHJcbiAgICAgICAgLnNldFBvcHVwKHBvcHVwKSAgLy8gQXR0YWNoIHRoZSBwb3B1cCB0byB0aGUgbWFya2VyXHJcbiAgICAgICAgLmFkZFRvKHRoaXMubWFwKTtcclxuICAgIH0pO1xyXG4gICAgXHJcbiAgfSwxMDApXHJcbiAgfVxyXG4gIGFkanVzdExheW91dChkYXRhOiBhbnkpIHtcclxuICAgIGNvbnN0IGRhdGF2YWx1ZTogYW55ID0gSlNPTi5wYXJzZShcclxuICAgICAgbG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJoZWFkZXItZmlsdGVyc1wiKSB8fCBcInt9XCJcclxuICAgICk7XHJcbiAgICBjb25zdCBtYXRjaGVkU3RvcmVzID0gZGF0YXZhbHVlLnN0b3Jlcy5maWx0ZXIoKHN0b3JlOiBhbnkpID0+IHN0b3JlLmNoZWNrZWQgJiYgc3RvcmUuc3RvcmVJZCA9PT0gZGF0YS5zdG9yZUlkKTtcclxuICAgIC8vIFVwZGF0ZSB0aGUgYmFsYW5jZSBzdG9yZXMgKHRob3NlIG5vdCBpbiB0aGUgbWF0Y2hlZCBzdG9yZXMpIHRvIHNldCB0aGVpciBjaGVja2VkIHByb3BlcnR5IHRvIGZhbHNlXHJcbiAgICBkYXRhdmFsdWUuc3RvcmVzLmZvckVhY2goKHN0b3JlOiBhbnkpID0+IHtcclxuICAgICAgaWYgKCFtYXRjaGVkU3RvcmVzLnNvbWUoKG1hdGNoZWRTdG9yZTphbnkpID0+IG1hdGNoZWRTdG9yZS5zdG9yZUlkID09PSBzdG9yZS5zdG9yZUlkKSkge1xyXG4gICAgICAgIHN0b3JlLmNoZWNrZWQgPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfSk7IFxyXG4gICAgZGF0YXZhbHVlLnN0b3JlID0gZGF0YS5zdG9yZUlkO1xyXG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oXCJoZWFkZXItZmlsdGVyc1wiLCBKU09OLnN0cmluZ2lmeShkYXRhdmFsdWUpKTtcclxuICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpXHJcbiAgICB0aGlzLmdzLmRhdGFSYW5nZVZhbHVlLm5leHQoZGF0YXZhbHVlKVxyXG4gICAgdGhpcy5ncy5tYW5hZ2VSZWZyZXNoVHJpZ2dlci5uZXh0KHRydWUpO1xyXG4gICBcclxuICB9XHJcbiAgZXhwb3JlVmlldygpe1xyXG50aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9tYW5hZ2UvdHJhZmZpYy9leHBsb3JlJ10pXHJcbiAgfVxyXG4gIGRhdGVWYWx1ZSh0eXBlOmFueSl7XHJcbiAgICBkZWxldGUgdGhpcy50YWJsZW9iai5saW1pdDsgZGVsZXRlIHRoaXMudGFibGVvYmouZXhwb3J0O1xyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmoub2Zmc2V0O1xyXG4gICAgdGhpcy50YWJsZW9iai5mcm9tRGF0ZT0gdGhpcy5oZWFkZXJEYXRhLmRhdGUuc3RhcnREYXRlLFxyXG4gICAgdGhpcy50YWJsZW9iai50b0RhdGU9IHRoaXMuaGVhZGVyRGF0YS5kYXRlLmVuZERhdGUsXHJcbiAgICBkZWxldGUgdGhpcy50YWJsZW9iai5yZWNhcFZpZGVvRGF0ZTtcclxuICAgIHRoaXMuZGF0ZVR5cGUgPSB0eXBlO1xyXG4gICAgdGhpcy50YWJsZW9iai5kYXRlVHlwZT0gdGhpcy5kYXRlVHlwZTtcclxuICAgIHRoaXMudGFibGVvYmoudmFsdWVUeXBlICA9IHRoaXMudmFsdWVUeXBlXHJcbiAgICB0aGlzLmdldEZvb3RmYWxsQ2FyZCgpO1xyXG4gICAgdGhpcy5nZXRDb252ZXJzaW9uQ2FyZCgpO1xyXG4gICAgdGhpcy5nZXRCb3VuY2VkQ2FyZCgpO1xyXG4gICAgdGhpcy5nZXRFbmdhZ2Vyc0NhcmQoKTtcclxuICAgIHRoaXMuZ2V0UG90ZW50aWFsQnV5ZXJzQ2FyZCgpO1xyXG4gICAgdGhpcy5nZXRNaXNzZWRPcHBvcnR1bml0eUNhcmQoKTtcclxuICAgIHRoaXMuZ2V0UG90ZW50aWFsQnV5ZXJzKCk7XHJcbiAgfVxyXG5cclxuXHJcbiAgZ2V0Wm9uZSgpe1xyXG4gICAgdGhpcy56b25lTG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLnpvbmVOb0RhdGEgPSBmYWxzZTtcclxuICAgIGNvbnN0IG9iaiA9IHtcclxuICAgICAgY2xpZW50SWQ6IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50LFxyXG4gICAgICBmcm9tRGF0ZTogdGhpcy5oZWFkZXJEYXRhPy5kYXRlPy5zdGFydERhdGUsXHJcbiAgICB0b0RhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSxcclxuICAgICAgc3RvcmVJZDogdGhpcy5zdG9yZUlkYXJyYXlcclxuICAgIH07XHJcblxyXG4gICAgdGhpcy5zZXJ2aWNlLnpvbmVEd2VsbFRpbWUob2JqKT8ucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYocmVzICYmIHJlcy5jb2RlID09PSAyMDApe1xyXG4gICAgICAgICAgICB0aGlzLnpvbmVEd2VsbFRpbWVTcGxpdERhdGEgPSByZXMuZGF0YS56b25lRHdlbGxUaW1lU3BsaXREYXRhO1xyXG4gICAgICAgICAgICB0aGlzLnpvbmVMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuem9uZU5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICAgICAgfSBlbHNle1xyXG4gICAgICAgICAgICB0aGlzLnpvbmVEd2VsbFRpbWVTcGxpdERhdGEgPVtdO1xyXG4gICAgICAgICAgICB0aGlzLnpvbmVMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuem9uZU5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvcjogKGVycikgPT4ge1xyXG4gICAgICAgICAgdGhpcy56b25lRHdlbGxUaW1lU3BsaXREYXRhPVtdO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH0pXHJcbiAgICBcclxuICB9XHJcbiAgZ2V0Wm9uZVZhbHVlKCl7XHJcbiAgICBjb25zdCBvYmogPSB7XHJcbiAgICAgIGNsaWVudElkOiB0aGlzLmhlYWRlckRhdGE/LmNsaWVudCxcclxuICAgICAgZnJvbURhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uc3RhcnREYXRlLFxyXG4gICAgdG9EYXRlOiB0aGlzLmhlYWRlckRhdGE/LmRhdGU/LmVuZERhdGUsXHJcbiAgICAgIHN0b3JlSWQ6IHRoaXMuc3RvcmVJZGFycmF5XHJcbiAgICB9O1xyXG5cclxuICAgIHRoaXMuc2VydmljZS5zdG9yZU9wZXJhdGlvbihvYmopPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZihyZXMgJiYgcmVzLmNvZGUgPT09IDIwMCl7XHJcbiAgICAgICAgICAgIHRoaXMuc3RvcmVPcGVyYXRpb25EYXRhID0gcmVzLmRhdGEuc3RvcmVPcGVyYXRpb25EYXRhWzBdO1xyXG4gICAgICAgICAgfSBlbHNle1xyXG4gICAgICAgICAgICB0aGlzLnN0b3JlT3BlcmF0aW9uRGF0YSA9W107XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvcjogKGVycikgPT4ge1xyXG4gICAgICAgICAgdGhpcy5zdG9yZU9wZXJhdGlvbkRhdGE9W107XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgfSlcclxuICAgIFxyXG4gIH1cclxuICBvbkRhdGVDaGFuZ2UoZXZlbnQ6YW55KXtcclxuICAgIHRoaXMuZGV0YWlsZWRDaGFydHMgPSBmYWxzZTtcclxuICAgIHRoaXMuZm9vdGZhbGxEYXRlID0gZXZlbnQudGFyZ2V0LnZhbHVlO1xyXG4gICAgdGhpcy5vYmpEYXRhVHJhZmZpYy5kYXRlUmFuZ2UgPU51bWJlcih0aGlzLmZvb3RmYWxsRGF0ZSk7XHJcbiB0aGlzLmdldER3ZWxsKCk7XHJcbiB0aGlzLnRyYWZmaWNEd2VsbCgpO1xyXG4gIH1cclxuICBzdG9yZVZpZXcoZGF0YTphbnkpe1xyXG4gICAgaWYodGhpcy5zdG9yZUlkYXJyYXk/Lmxlbmd0aD4xKXtcclxuICAgICAgY29uc3QgZGF0YXZhbHVlOiBhbnkgPSBKU09OLnBhcnNlKFxyXG4gICAgICAgIGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwiaGVhZGVyLWZpbHRlcnNcIikgfHwgXCJ7fVwiXHJcbiAgICAgICk7XHJcbiAgICAgIGNvbnN0IG1hdGNoZWRTdG9yZXMgPSBkYXRhdmFsdWUuc3RvcmVzLmZpbHRlcigoc3RvcmU6IGFueSkgPT4gc3RvcmUuY2hlY2tlZCAmJiBzdG9yZS5zdG9yZUlkID09PSBkYXRhKTtcclxuICAgICAgLy8gVXBkYXRlIHRoZSBiYWxhbmNlIHN0b3JlcyAodGhvc2Ugbm90IGluIHRoZSBtYXRjaGVkIHN0b3JlcykgdG8gc2V0IHRoZWlyIGNoZWNrZWQgcHJvcGVydHkgdG8gZmFsc2VcclxuICAgICAgZGF0YXZhbHVlLnN0b3Jlcy5mb3JFYWNoKChzdG9yZTogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKCFtYXRjaGVkU3RvcmVzLnNvbWUoKG1hdGNoZWRTdG9yZTphbnkpID0+IG1hdGNoZWRTdG9yZS5zdG9yZUlkID09PSBzdG9yZS5zdG9yZUlkKSkge1xyXG4gICAgICAgICAgc3RvcmUuY2hlY2tlZCA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7IFxyXG4gICAgICBkYXRhdmFsdWUuc3RvcmUgPSBkYXRhO1xyXG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShcImhlYWRlci1maWx0ZXJzXCIsIEpTT04uc3RyaW5naWZ5KGRhdGF2YWx1ZSkpO1xyXG4gICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKVxyXG4gICAgICB0aGlzLmdzLmRhdGFSYW5nZVZhbHVlLm5leHQoZGF0YXZhbHVlKVxyXG4gICAgICB0aGlzLmdzLm1hbmFnZVJlZnJlc2hUcmlnZ2VyLm5leHQodHJ1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGdvVG9ab25lKCl7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbXCIvbWFuYWdlL3pvbmVzL3YxXCJdKTsgXHJcblxyXG4gIH1cclxuXHJcbiAgY3VycmVudEluZGV4OiBudW1iZXIgPSAwO1xyXG4gIGludGVydmFsSWQ6IGFueTtcclxuXHJcblxyXG4gIHByZXZTbGlkZSgpIHtcclxuICAgIGlmICh0aGlzLmN1cnJlbnRJbmRleCA+IDApIHtcclxuICAgICAgdGhpcy5jdXJyZW50SW5kZXgtLTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5leHRTbGlkZSgpIHtcclxuICAgIGlmICh0aGlzLmN1cnJlbnRJbmRleCA8IHRoaXMucmVjYXBzR3JvdXBlZC5sZW5ndGggLSAxKSB7XHJcbiAgICAgIHRoaXMuY3VycmVudEluZGV4Kys7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnb1RvU2xpZGUoaW5kZXg6IG51bWJlcikge1xyXG4gICAgaWYgKGluZGV4ID49IDAgJiYgaW5kZXggPCB0aGlzLnJlY2Fwc0dyb3VwZWQubGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMuY3VycmVudEluZGV4ID0gaW5kZXg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIG5vYlVwbG9hZCgpe1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiL21hbmFnZS90cmFmZmljL25vYlwiXSk7IFxyXG4gIH1cclxuICBnb1RvTG9zcygpe1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiL21hbmFnZS9zZXR0aW5ncy9icmFuZC1kZXRhaWxcIl0pOyBcclxuICB9XHJcblxyXG4vLyBmb290ZmFsbCB0cmVuZCBwYXJ0c1xyXG5cclxuZ2V0RGF0ZVZhbHVlczogYW55O1xyXG5jaGFydFRyZW5kczogYW55O1xyXG5yb290VHJlbmRzOiBhbnk7XHJcbnlBeGlzOiBhbnk7XHJcbnhBeGlzOiBhbnk7IFxyXG5sZWdlbmQ6IGFueTtcclxuQFZpZXdDaGlsZCgndG9vbHRpcENvbnRhaW5lcicpIHRvb2x0aXBDb250YWluZXI6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xyXG50b29sdGlwRGF0YTogYW55O1xyXG5nZXRGb290ZmFsbFRyZW5kRGF0YTphbnk9W107XHJcbm9iakRhdGE6YW55O1xyXG5kYXRhc2V0cyA9IFtcclxuICB7IHZhbHVlOiAnbWlzc2Vkb3Bwb3J0dW5pdGllcycsIGxhYmVsOiAnTWlzc2VkIE9wcG9ydHVuaXR5JyB9LFxyXG4gIHsgdmFsdWU6ICdwb3RlbnRpYWxCdXllcicsIGxhYmVsOiAnUG90ZW50aWFsIEJ1eWVyJyB9LFxyXG4gIHsgdmFsdWU6ICdjb252ZXJzaW9uJywgbGFiZWw6ICdDb252ZXJzaW9uJyB9LFxyXG4gIHsgdmFsdWU6ICcnLCBsYWJlbDogJ05vIEZpbHRlcicgfVxyXG5dO1xyXG5cclxuaXRlbXNQZXJQYWdlVHJlbmRzID0gMTA7XHJcbmN1cnJlbnRQYWdlVHJlbmRzID0gMTtcclxudG90YWxJdGVtc1RyZW5kcyA9IDE7XHJcbnBhZ2luYXRpb25TaXplc1RyZW5kczogbnVtYmVyW10gPSBbXTtcclxucGFnZVNpemVUcmVuZHMgPSAzMTtcclxub2Zmc2V0VHJlbmRzIDogbnVtYmVyID0gMDtcclxubGltaXRUcmVuZHMgOiBudW1iZXIgPSAzMTtcclxuc2VsZWN0VmFsdWU9IG5ldyBGb3JtQ29udHJvbChcImRhdGFzZXQxXCIpO1xyXG5sb2FkaW5nVHJlbmRzID10cnVlO1xyXG5ub0RhdGFUcmVuZHMgPWZhbHNlO1xyXG4gIGdldEluaXRpYWxWYWx1ZSgpOiBzdHJpbmcge1xyXG4gICAgLy8gRm9yIGV4YW1wbGUsIHNlbGVjdGluZyB0aGUgc2Vjb25kIGl0ZW0gaW4gdGhlIGRhdGFzZXRcclxuICAgIHJldHVybiB0aGlzLmRhdGFzZXRzWzBdLnZhbHVlOyAvLyBDaGFuZ2UgYXMgbmVlZGVkXHJcbiAgfVxyXG4gIG9uVmFsdWVDaGFuZ2V0cmVuZChzZWxlY3RlZElkOiBhbnkpIHtcclxuICAgIHRoaXMub2JqRGF0YS5wcm9jZXNzVHlwZSA9IHNlbGVjdGVkSWQsXHJcbiAgICB0aGlzLmZvb3RmYWxsVHJlbmQoKTtcclxuICB9XHJcbiAgZ2V0IHNlbGVjdENvbnRyb2woKTogRm9ybUNvbnRyb2wge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybS5nZXQoJ3NlbGVjdFZhbHVlJykgYXMgRm9ybUNvbnRyb2w7XHJcbiAgfVxyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQnXSlcclxuICBvbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XHJcbiAgICBjb25zdCB0b29sdGlwRWxlbWVudCA9IHRoaXMudG9vbHRpcENvbnRhaW5lcj8ubmF0aXZlRWxlbWVudDtcclxuXHJcbiAgICAvLyBDaGVjayBpZiB0aGUgY2xpY2sgd2FzIG91dHNpZGUgdGhlIHRvb2x0aXBcclxuICAgIGlmICh0b29sdGlwRWxlbWVudCAmJiAhdG9vbHRpcEVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIE5vZGUpICYmIHRoaXMudG9vbHRpcFZpc2libGUpIHtcclxuICAgICAgdGhpcy5oaWRlVG9vbHRpcCgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zaG93ID1mYWxzZTtcclxuICB9XHJcbmZvb3RmYWxsVHJlbmQoKXsgXHJcbiAgdGhpcy5vZmZzZXRUcmVuZHMgPTA7XHJcbiAgdGhpcy5saW1pdFRyZW5kcyA9MzE7XHJcbiAgdGhpcy5sb2FkaW5nVHJlbmRzID10cnVlO1xyXG4gIHRoaXMubm9EYXRhVHJlbmRzID1mYWxzZTtcclxuICAodGhpcy5vYmpEYXRhLmNvbnZlcnNpb250eXBlID0gdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSk7XHJcbiAgdGhpcy5zZXJ2aWNlXHJcbiAgLmdldGZvb3RmYWxsVHJlbmQodGhpcy5vYmpEYXRhKVxyXG4gIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICA/LnN1YnNjcmliZSh7XHJcbiAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgdGhpcy5nZXRGb290ZmFsbFRyZW5kRGF0YSA9IHJlcz8uZGF0YT8uZm9vdGZhbGxUcmVuZERhdGE7XHJcbiAgICAgICAgdGhpcy5nZXREYXRlVmFsdWVzID0gcmVzPy5kYXRhO1xyXG4gICAgICAgIHRoaXMudG90YWxJdGVtc1RyZW5kcyA9IHJlcy5kYXRhPy50b3RhbENvdW50O1xyXG4gICAgICAgIHRoaXMuc2V0UGFnaW5hdGlvblNpemVUcmVuZHMoKTtcclxuICAgICAgICB0aGlzLmNyZWF0ZUNoYXJ0KCkgLy8gQ2FsbCB3aXRoIGEgZGVsYXkgdG8gZW5zdXJlIHRoZSBlbGVtZW50IGlzIGluIHRoZSBET01cclxuICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTsgXHJcbiAgICAgICAgdGhpcy5sb2FkaW5nVHJlbmRzID1mYWxzZTtcclxuICAgICAgICB0aGlzLm5vRGF0YVRyZW5kcyA9ZmFsc2U7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nVHJlbmRzID1mYWxzZTtcclxuICAgICAgICB0aGlzLm5vRGF0YVRyZW5kcyA9dHJ1ZTtcclxuICAgICAgICB0aGlzLmdldEZvb3RmYWxsVHJlbmREYXRhID1bXTtcclxuICAgICAgfVxyXG4gICAgfSxcclxuICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9LFxyXG4gICAgY29tcGxldGU6ICgpID0+IHt9LFxyXG4gIH0pO1xyXG4gIFxyXG59XHJcbnNldFBhZ2luYXRpb25TaXplVHJlbmRzKCkge1xyXG4gIGlmICh0aGlzLnRvdGFsSXRlbXNUcmVuZHMgPiAzMSApIHtcclxuICAgIGlmKHRoaXMub2JqRGF0YS5mb3JlY2FzdCAmJiB0aGlzLnRvdGFsSXRlbXNUcmVuZHMgPiAzMSl7XHJcbiAgICAgIHRoaXMucGFnaW5hdGlvblNpemVzVHJlbmRzID0gWzYwXTtcclxuICAgIH0gZWxzZSB7ICBcclxuICAgIHRoaXMucGFnaW5hdGlvblNpemVzVHJlbmRzID0gWzMxXTtcclxuICAgIH1cclxuICB9IGVsc2Uge1xyXG4gICAgdGhpcy5wYWdpbmF0aW9uU2l6ZXNUcmVuZHMgPSBbdGhpcy50b3RhbEl0ZW1zVHJlbmRzXTsgLy8gSnVzdCBvbmUgb3B0aW9uIGlmIGxlc3MgdGhhbiAxMFxyXG4gIH1cclxuICB0aGlzLnBhZ2VTaXplVHJlbmRzID0gdGhpcy5wYWdpbmF0aW9uU2l6ZXNUcmVuZHNbMF07XHJcbn1cclxub25QYWdlQ2hhbmdlVHJlbmRzKHBhZ2VPZmZzZXRUcmVuZHM6IG51bWJlcikge1xyXG4gIHRoaXMub2Zmc2V0VHJlbmRzID0gTnVtYmVyKHBhZ2VPZmZzZXRUcmVuZHMpO1xyXG4gIHRoaXMub2JqRGF0YS5vZmZzZXQgPSB0aGlzLm9mZnNldFRyZW5kcyAtMTtcclxuICB0aGlzLm9iakRhdGEubGltaXQgPSB0aGlzLmxpbWl0VHJlbmRzO1xyXG4gIHRoaXMuc2VydmljZVxyXG4gIC5nZXRmb290ZmFsbFRyZW5kKHRoaXMub2JqRGF0YSlcclxuICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgPy5zdWJzY3JpYmUoe1xyXG4gICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgIHRoaXMuZ2V0Rm9vdGZhbGxUcmVuZERhdGEgPSByZXM/LmRhdGEuZm9vdGZhbGxUcmVuZERhdGE7XHJcbiAgICAgICAgXHJcbiAgICAgICAgdGhpcy5nZXREYXRlVmFsdWVzID0gcmVzPy5kYXRhO1xyXG4gICAgICAgIHRoaXMudG90YWxJdGVtc1RyZW5kcyA9IHJlcy5kYXRhPy50b3RhbENvdW50O1xyXG4gICAgICAgIHRoaXMuY3JlYXRlQ2hhcnQoKSAvLyBDYWxsIHdpdGggYSBkZWxheSB0byBlbnN1cmUgdGhlIGVsZW1lbnQgaXMgaW4gdGhlIERPTVxyXG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpOyBcclxuXHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID1mYWxzZTtcclxuICAgICAgICB0aGlzLm5vRGF0YSA9dHJ1ZTtcclxuICAgICAgfVxyXG4gICAgfSxcclxuICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9LFxyXG4gICAgY29tcGxldGU6ICgpID0+IHt9LFxyXG4gIH0pO1xyXG4gIFxyXG59XHJcblxyXG5vblBhZ2VTaXplQ2hhbmdlVHJlbmRzKHBhZ2VTaXplVHJlbmRzOiBudW1iZXIpIHtcclxuICB0aGlzLnBhZ2VTaXplVHJlbmRzID0gTnVtYmVyKHBhZ2VTaXplVHJlbmRzKTtcclxuICB0aGlzLmxpbWl0VHJlbmRzID0gTnVtYmVyKHBhZ2VTaXplVHJlbmRzKTtcclxuICB0aGlzLmN1cnJlbnRQYWdlVHJlbmRzID0gMTtcclxuICB0aGlzLm9mZnNldFRyZW5kcyA9IDA7XHJcbiAgdGhpcy5vYmpEYXRhLm9mZnNldCA9IHRoaXMub2Zmc2V0VHJlbmRzO1xyXG4gIHRoaXMub2JqRGF0YS5saW1pdCA9IHRoaXMubGltaXRUcmVuZHM7XHJcbiAgdGhpcy5mb290ZmFsbFRyZW5kKCk7XHJcbn1cclxuIGNyZWF0ZUNoYXJ0KCkge1xyXG4gICAgdGhpcy5sb2FkaW5nVHJlbmRzID1mYWxzZTtcclxuICAgIHRoaXMubm9EYXRhVHJlbmRzID1mYWxzZTtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBjb25zdCBjaGFydERpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiRm9vdGZhbGx0cmVuZFwiKTtcclxuICAgICAgaWYgKCFjaGFydERpdikge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5yb290VHJlbmRzKSB7XHJcbiAgICAgICAgdGhpcy5yb290VHJlbmRzLmRpc3Bvc2UoKTtcclxuICAgICAgfVxyXG4gICAgdGhpcy5yb290VHJlbmRzICA9IGFtNS5Sb290Lm5ldygnRm9vdGZhbGx0cmVuZCcpO1xyXG4gICAgdGhpcy5yb290VHJlbmRzLnNldFRoZW1lcyhbYW01dGhlbWVzX0FuaW1hdGVkLm5ldyh0aGlzLnJvb3RUcmVuZHMpXSk7XHJcblxyXG4gICAgdGhpcy5jaGFydFRyZW5kcyA9IHRoaXMucm9vdFRyZW5kcy5jb250YWluZXIuY2hpbGRyZW4ucHVzaChcclxuICAgICAgYW01eHkuWFlDaGFydC5uZXcodGhpcy5yb290VHJlbmRzLCB7XHJcbiAgICAgICAgcGFuWDogZmFsc2UsXHJcbiAgICAgICAgcGFuWTogZmFsc2UsXHJcbiAgICAgICAgd2hlZWxYOiAncGFuWCcsXHJcbiAgICAgICAgd2hlZWxZOiAnem9vbVgnLFxyXG4gICAgICAgIGxheW91dDogdGhpcy5yb290VHJlbmRzLnZlcnRpY2FsTGF5b3V0XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG5cclxuICAgIHRoaXMuY2hhcnRUcmVuZHMuc2V0KFwic2Nyb2xsYmFyWFwiLCBhbTUuU2Nyb2xsYmFyLm5ldyh0aGlzLnJvb3RUcmVuZHMsIHtcclxuICAgICAgb3JpZW50YXRpb246IFwiaG9yaXpvbnRhbFwiXHJcbiAgICB9KSk7XHJcbiAgICBsZXQgeFJlbmRlcmVyID0gYW01eHkuQXhpc1JlbmRlcmVyWC5uZXcodGhpcy5yb290VHJlbmRzLCB7XHJcbiAgICAgIG1pbkdyaWREaXN0YW5jZTogMjAsXHJcbiAgICAgIG1pbm9yR3JpZEVuYWJsZWQ6IHRydWUsXHJcbiAgICB9KTtcclxuICAgIHhSZW5kZXJlci5sYWJlbHMudGVtcGxhdGUuc2V0QWxsKHtcclxuICAgICAgcm90YXRpb246IC00NSxcclxuICAgICAgY2VudGVyWTogYW01LnA1MCxcclxuICAgICAgY2VudGVyWDogYW01LnAxMDAsXHJcbiAgICAgIHBhZGRpbmdSaWdodDogNSxcclxuICAgIH0pO1xyXG4gICAgLy8geFJlbmRlcmVyLmdyaWQudGVtcGxhdGUuc2V0QWxsKHtcclxuICAgIC8vICAgbG9jYXRpb246IDEsXHJcbiAgICAvLyB9KTtcclxuICAgIGNvbnN0IHhBeGlzID0gdGhpcy5jaGFydFRyZW5kcy54QXhlcy5wdXNoKFxyXG4gICAgICBhbTV4eS5DYXRlZ29yeUF4aXMubmV3KHRoaXMucm9vdFRyZW5kcywge1xyXG4gICAgICAgIGNhdGVnb3J5RmllbGQ6ICdzdG9yZU5hbWUnLFxyXG4gICAgICAgIHJlbmRlcmVyOnhSZW5kZXJlcixcclxuICAgICAgICB0b29sdGlwOiBhbTUuVG9vbHRpcC5uZXcodGhpcy5yb290VHJlbmRzLCB7IGxhYmVsVGV4dDogXCJ7ZnVsbFN0b3JlTmFtZX1cIn0pXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgdGhpcy5nZXRGb290ZmFsbFRyZW5kRGF0YS5zb3J0KChhOiBhbnksIGI6IGFueSkgPT4ge1xyXG4gICAgICAvLyBQYXJzZSBzdG9yZU5hbWUgYXMgYSBEYXRlIGFuZCBjb21wYXJlXHJcbiAgICAgIGNvbnN0IGRhdGVBID0gbmV3IERhdGUoYS5zdG9yZU5hbWUpO1xyXG4gICAgICBjb25zdCBkYXRlQiA9IG5ldyBEYXRlKGIuc3RvcmVOYW1lKTtcclxuICAgICAgXHJcbiAgICAgIC8vIFNvcnQgaW4gYXNjZW5kaW5nIG9yZGVyIChvbGRlc3QgdG8gbmV3ZXN0KVxyXG4gICAgICByZXR1cm4gZGF0ZUEuZ2V0VGltZSgpIC0gZGF0ZUIuZ2V0VGltZSgpO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLmdldEZvb3RmYWxsVHJlbmREYXRhID0gdGhpcy5nZXRGb290ZmFsbFRyZW5kRGF0YT8ubWFwKFxyXG4gICAgICAoaXRlbTogYW55KSA9PiAoe1xyXG4gICAgICAgIGZ1bGxTdG9yZU5hbWU6IGl0ZW0uc3RvcmVOYW1lLCAvLyBGdWxsIHN0b3JlIG5hbWVcclxuICAgICAgICBzdG9yZU5hbWU6IGl0ZW0uc3RvcmVOYW1lLCAvLyBpdGVtLnN0b3JlTmFtZS5sZW5ndGggPiAyMCA/IGl0ZW0uc3RvcmVOYW1lLnNsaWNlKDAsIDIwKSArICcuLi4nIDogU2hvcnRlbmVkIGZvciB4QXhpc1xyXG4gICAgICAgIGZvb3RmYWxsOiBOdW1iZXIoaXRlbS5mb290ZmFsbF9jb3VudCksXHJcbiAgICAgICAgY29udmVyc2lvbjogTnVtYmVyKGl0ZW0uY29udmVyc2lvbl9jb3VudCksXHJcbiAgICAgICAgYm91bmNlZDogTnVtYmVyKGl0ZW0uYm91bmNlZF9jb3VudCksXHJcbiAgICAgICAgZW5nYWdlcnM6IE51bWJlcihpdGVtLmVuZ2FnZXJzX2NvdW50KSxcclxuICAgICAgICBtaXNzZWRvcHBvcnR1bml0aWVzOiBOdW1iZXIoaXRlbS5taXNzZWRPcHBvcnR1bml0eV9jb3VudCksXHJcbiAgICAgICAgcG90ZW50aWFsOiBOdW1iZXIoaXRlbS5wb3RlbnRpYWxCdXllcnNfY291bnQpLFxyXG4gICAgICAgIGJvdW5jZWRfY291bnQ6aXRlbS5ib3VuY2VkX2NvdW50LFxyXG4gICAgICAgIGF2Z0R3ZWxsVGltZTppdGVtLmF2Z0R3ZWxsVGltZSxcclxuICAgICAgICBkb3duX3RpbWU6aXRlbS5kb3duX3RpbWUsXHJcbiAgICAgICAgZW5nYWdlcnNfY291bnQ6aXRlbS5lbmdhZ2Vyc19jb3VudCxcclxuICAgICAgICBmb290ZmFsbF9jb3VudDppdGVtLmZvb3RmYWxsX2NvdW50LFxyXG4gICAgICAgIG1pc3NlZE9wcG9ydHVuaXR5X2NvdW50Oml0ZW0ubWlzc2VkT3Bwb3J0dW5pdHlfY291bnQsXHJcbiAgICAgICAgZm9vdGZhbGxfY291bnRfYXZnOml0ZW0uZm9vdGZhbGxfY291bnRfYXZnLFxyXG4gICAgICAgIGJvdW5jZWRfZm9vdGZhbGxfY291bnRfYXZnOml0ZW0uYm91bmNlZF9mb290ZmFsbF9jb3VudF9hdmcsXHJcbiAgICAgICAgbWlzc2VkT3Bwb3J0dW5pdHlfY291bnRfYXZnOml0ZW0ubWlzc2VkT3Bwb3J0dW5pdHlfY291bnRfYXZnLFxyXG4gICAgICAgIGVuZ2FnZXJzX2NvdW50X2F2ZzppdGVtLmVuZ2FnZXJzX2NvdW50X2F2ZyxcclxuICAgICAgICBjb252ZXJzaW9uUmF0ZTogaXRlbS5jb252ZXJzaW9uUmF0ZSxcclxuICAgICAgICBmb3JlY2FzdDogaXRlbS5mb3JlY2FzdCxcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgIFxyXG4gICAgeEF4aXMuZGF0YT8uc2V0QWxsKHRoaXMuZ2V0Rm9vdGZhbGxUcmVuZERhdGEpOyBcclxuICAgIGNvbnN0IHlBeGlzID0gdGhpcy5jaGFydFRyZW5kcy55QXhlcy5wdXNoKFxyXG4gICAgICBhbTV4eS5WYWx1ZUF4aXMubmV3KHRoaXMucm9vdFRyZW5kcywge1xyXG4gICAgICAgIG1pbjowLFxyXG4gICAgICAgIHJlbmRlcmVyOiBhbTV4eS5BeGlzUmVuZGVyZXJZLm5ldyh0aGlzLnJvb3RUcmVuZHMsIHt9KVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIC8vIHlBeGlzLmdldChcInJlbmRlcmVyXCIpLmdyaWQudGVtcGxhdGUuc2V0KFwiZm9yY2VIaWRkZW5cIiwgdHJ1ZSk7XHJcbiAgICAvLyB5QXhpcy5nZXQoXCJyZW5kZXJlclwiKS5sYWJlbHMudGVtcGxhdGUuc2V0KFwiZm9yY2VIaWRkZW5cIiwgdHJ1ZSk7XHJcbiAgICAvLyBTZXQgdGhlIHRpdGxlIG9mIHRoZSB5LWF4aXNcclxuICAgIHlBeGlzLmNoaWxkcmVuLnVuc2hpZnQoYW01LkxhYmVsLm5ldyh0aGlzLnJvb3RUcmVuZHMsIHtcclxuICAgICAgcm90YXRpb246IC05MCxcclxuICAgICAgLy8gdGV4dDogJ0Zvb3RmYWxsJywgLy9jYXBpdGFsaXplRmlyc3RMZXR0ZXIodGhpcy5vYmpEYXRhLnByb2Nlc3NUeXBlKSwgLy8gQ2FwaXRhbGl6ZSB0aGUgZmlyc3QgbGV0dGVyXHJcbiAgICAgIHk6IGFtNS5wNTAsXHJcbiAgICAgIGNlbnRlclg6IGFtNS5wNTAsXHJcbiAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxcIiwgLy8gU2V0IGZvbnQgZmFtaWx5XHJcbiAgICAgIGZvbnRTaXplOiBcIjE0cHhcIiwgICAgLy8gU2V0IGZvbnQgc2l6ZVxyXG4gICAgICBmaWxsOiBhbTUuY29sb3IoMHgwMDAwMDApIC8vIFNldCB0ZXh0IGNvbG9yIChvcHRpb25hbClcclxuICAgIH0pKTtcclxuaWYodGhpcy5vYmpEYXRhLnByb2Nlc3NUeXBlID09PSdwb3RlbnRpYWxCdXllcicpXHJcbiAgdGhpcy5vYmpEYXRhLnByb2Nlc3NUeXBlID0ncG90ZW50aWFsJ1xyXG4vLyBpZih0aGlzLm9iakRhdGEucHJvY2Vzc1R5cGUgPT09J21pc3NlZG9wcG9ydHVuaXRpZXMnKVxyXG4vLyAgIHRoaXMub2JqRGF0YS5wcm9jZXNzVHlwZSA9J01pc3NlZCBPcHBvcnR1bml0eSdcclxuY29uc3QgY2FwaXRhbGl6ZVRpdGxlID0gKHRleHQ6IHN0cmluZyk6IHN0cmluZyA9PiB7XHJcbiAgcmV0dXJuIHRleHRcclxuICAgIC5zcGxpdCgnICcpXHJcbiAgICAubWFwKHdvcmQgPT4gd29yZC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHdvcmQuc2xpY2UoMSkudG9Mb3dlckNhc2UoKSlcclxuICAgIC5qb2luKCcgJyk7XHJcbn07XHJcblxyXG4vLyBFeGFtcGxlIHVzYWdlXHJcbmNvbnN0IHByb2Nlc3NUeXBlVGl0bGUgPSBjYXBpdGFsaXplVGl0bGUodGhpcy5vYmpEYXRhLnByb2Nlc3NUeXBlKTtcclxuICAgIC8vIHRoaXMuY3JlYXRlQ29sdW1uU2VyaWVzKCdGb290ZmFsbCcsICdmb290ZmFsbCcsIHhBeGlzLCB5QXhpcywgZmFsc2UsIGFtNS5jb2xvcigweDY3YjdkYykpO1xyXG4gICAgdGhpcy5jcmVhdGVDb2x1bW5TZXJpZXMoJ0JvdW5jZWQnLCAnYm91bmNlZCcsIHhBeGlzLCB5QXhpcywgdHJ1ZSwgYW01LmNvbG9yKDB4NjdiN2RjKSk7XHJcbiAgICB0aGlzLmNyZWF0ZUNvbHVtblNlcmllcygnRW5nYWdlcnMnLCAnZW5nYWdlcnMnLCB4QXhpcywgeUF4aXMsIHRydWUsIGFtNS5jb2xvcigweDY3OTRkYykpO1xyXG4gICAgLy8gNjc3MWRjXHJcbiAgICAvLyB0aGlzLmNyZWF0ZUNvbHVtblNlcmllcygnTWlzc2VkIE9wcG9ydHVuaXR5JywgJ21pc3NlZG9wcG9ydHVuaXRpZXMnLCB4QXhpcywgeUF4aXMsIHRydWUsIGFtNS5jb2xvcigweDY3OTRkYykpO1xyXG4gICAgLy8gdGhpcy5jcmVhdGVDb2x1bW5TZXJpZXMoJ1BvdGVudGlhbCBCdXllcicsICdwb3RlbnRpYWwnLCB4QXhpcywgeUF4aXMsIHRydWUsIGFtNS5jb2xvcigweGRjNjljZikpO1xyXG4gICAgLy8gdGhpcy5jcmVhdGVDb2x1bW5TZXJpZXMoJ0NvbnZlcnNpb24nLCAnY29udmVyc2lvbicsIHhBeGlzLCB5QXhpcywgdHJ1ZSwgYW01LmNvbG9yKDB4Njc3MWRjKSk7XHJcbiAgICBpZih0aGlzLm9iakRhdGEucHJvY2Vzc1R5cGUgIT09JycgKXtcclxuICAgICAgY29uc3QgbXlDb2xvciA9IGFtNS5jb2xvcigweDAwRkYwMCk7XHJcbiAgICB0aGlzLmNyZWF0ZUxpbmVTZXJpZXMocHJvY2Vzc1R5cGVUaXRsZSwgdGhpcy5vYmpEYXRhLnByb2Nlc3NUeXBlLCB4QXhpcywgeUF4aXMsIG15Q29sb3IpO1xyXG4gICAgfVxyXG4gICAgY29uc3QgbGVnZW5kID0gdGhpcy5jaGFydFRyZW5kcy5jaGlsZHJlbi5wdXNoKFxyXG4gICAgICBhbTUuTGVnZW5kLm5ldyh0aGlzLnJvb3RUcmVuZHMsIHtcclxuICAgICAgICBjZW50ZXJYOiBhbTUucDUwLFxyXG4gICAgICAgIHg6IGFtNS5wNTBcclxuICAgICAgfSlcclxuICAgICk7XHJcblxyXG4gICAgbGVnZW5kLmRhdGEuc2V0QWxsKHRoaXMuY2hhcnRUcmVuZHMuc2VyaWVzLnZhbHVlcyk7XHJcblxyXG4gICAgdGhpcy5jaGFydFRyZW5kcy5zZXQoJ2N1cnNvcicsIGFtNXh5LlhZQ3Vyc29yLm5ldyh0aGlzLnJvb3RUcmVuZHMsIHtcclxuICAgICAgYmVoYXZpb3I6ICdub25lJ1xyXG4gICAgfSkpO1xyXG5cclxuICAgIHRoaXMuY2hhcnRUcmVuZHMuc2VyaWVzLmVhY2goKHNlcmllczogYW55KSA9PiB7XHJcbiAgICAgIGlmIChzZXJpZXMuY29sdW1ucykge1xyXG4gICAgICAgIHNlcmllcy5jb2x1bW5zLnRlbXBsYXRlLnNldChcImludGVyYWN0aXZlXCIsIHRydWUpO1xyXG4gICAgICAgIHNlcmllcy5jb2x1bW5zLnRlbXBsYXRlLmV2ZW50cy5vbihcImNsaWNrXCIsIChldjogYW55KSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBkYXRhID0gZXYudGFyZ2V0LmRhdGFJdGVtLmRhdGFDb250ZXh0O1xyXG4gICAgICAgICAgY29uc3QgeyBjbGllbnRYLCBjbGllbnRZIH0gPSBldi5vcmlnaW5hbEV2ZW50O1xyXG4gICAgICAgICAgdGhpcy5zaG93VG9vbHRpcChkYXRhLCBjbGllbnRYLCBjbGllbnRZKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmNoYXJ0VHJlbmRzLmFwcGVhcigxMDAwLCAxMDApO1xyXG4gIH0sMTAwKVxyXG4gIH1cclxuXHJcbiAgdG9vbHRpcFZpc2libGUgPSBmYWxzZTtcclxuICBzaG93VG9vbHRpcChkYXRhOiBhbnksIHg6IG51bWJlciwgeTogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLnRvb2x0aXBWaXNpYmxlID0gZmFsc2U7XHJcbiAgICB0aGlzLnRvb2x0aXBEYXRhID0gZGF0YTtcclxuICAgIGNvbnN0IHRvb2x0aXBFbGVtZW50ID0gdGhpcy50b29sdGlwQ29udGFpbmVyPy5uYXRpdmVFbGVtZW50O1xyXG4gIFxyXG4gICAgLy8gU2V0IHRvb2x0aXAgY29udGVudCBhbmQgbWFrZSBpdCB2aXNpYmxlIHRvIGNhbGN1bGF0ZSBkaW1lbnNpb25zXHJcbiAgICB0b29sdGlwRWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gJ2Jsb2NrJztcclxuICAgIHRvb2x0aXBFbGVtZW50LnN0eWxlLnZpc2liaWxpdHkgPSAnaGlkZGVuJzsgLy8gTWFrZSBpdCBpbnZpc2libGUgYnV0IHN0aWxsIHByZXNlbnQgaW4gdGhlIERPTVxyXG4gIFxyXG4gICAgLy8gRm9yY2UgYSByZWZsb3cgdG8gZW5zdXJlIGRpbWVuc2lvbnMgYXJlIHVwLXRvLWRhdGVcclxuICAgIHRvb2x0aXBFbGVtZW50LnN0eWxlLnBvc2l0aW9uID0gJ2Fic29sdXRlJztcclxuICAgIFxyXG4gICAgLy8gV2FpdCBmb3IgdGhlIG5leHQgZXZlbnQgbG9vcCB0byBnZXQgYWNjdXJhdGUgZGltZW5zaW9uc1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGNvbnN0IHRvb2x0aXBXaWR0aCA9IHRvb2x0aXBFbGVtZW50Lm9mZnNldFdpZHRoO1xyXG4gICAgICBjb25zdCB0b29sdGlwSGVpZ2h0ID0gdG9vbHRpcEVsZW1lbnQub2Zmc2V0SGVpZ2h0O1xyXG4gICAgICBjb25zdCBzY3JlZW5XaWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoO1xyXG4gICAgICBjb25zdCBzY3JlZW5IZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQ7XHJcbiAgXHJcbiAgICAgIC8vIENhbGN1bGF0ZSBpZiB0aGVyZSBpcyBlbm91Z2ggc3BhY2Ugb24gdGhlIHJpZ2h0IHNpZGUsIG90aGVyd2lzZSBwbGFjZSBpdCBvbiB0aGUgbGVmdFxyXG4gICAgICBpZiAoeCArIHRvb2x0aXBXaWR0aCA+IHNjcmVlbldpZHRoKSB7XHJcbiAgICAgICAgdG9vbHRpcEVsZW1lbnQuc3R5bGUubGVmdCA9IGAke3ggLSB0b29sdGlwV2lkdGh9cHhgO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRvb2x0aXBFbGVtZW50LnN0eWxlLmxlZnQgPSBgJHt4fXB4YDtcclxuICAgICAgfVxyXG4gIFxyXG4gICAgICAvLyBDYWxjdWxhdGUgaWYgdGhlcmUgaXMgZW5vdWdoIHNwYWNlIGF0IHRoZSBib3R0b20sIG90aGVyd2lzZSBwbGFjZSBpdCBhdCB0aGUgdG9wXHJcbiAgICAgIGlmICh5ICsgdG9vbHRpcEhlaWdodCA+IHNjcmVlbkhlaWdodCkge1xyXG4gICAgICAgIHRvb2x0aXBFbGVtZW50LnN0eWxlLnRvcCA9IGAke3kgLSB0b29sdGlwSGVpZ2h0fXB4YDtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0b29sdGlwRWxlbWVudC5zdHlsZS50b3AgPSBgJHt5fXB4YDtcclxuICAgICAgfVxyXG4gIFxyXG4gICAgICB0b29sdGlwRWxlbWVudC5zdHlsZS52aXNpYmlsaXR5ID0gJ3Zpc2libGUnOyAvLyBNYWtlIGl0IHZpc2libGUgYWdhaW5cclxuICAgICAgdGhpcy50b29sdGlwVmlzaWJsZSA9IHRydWU7XHJcbiAgICB9LCAwKTtcclxuICB9XHJcbiAgc2VsZWN0UGxhblRyZW5kcyh0eXBlOiBhbnkpIHtcclxuICAgIHRoaXMudHlwZSA9IHR5cGU7XHJcbiAgICB0aGlzLm9iakRhdGEuZGF0ZVR5cGUgPXR5cGU7XHJcbiAgICBpZih0eXBlID09PSdtb250aGx5JyAmJiB0aGlzLnN0b3JlSWRhcnJheT8ubGVuZ3RoID09PSAxKVxyXG4gICAgdGhpcy5vYmpEYXRhLmxpbWl0PSA2MDtcclxuICBlbHNlIFxyXG4gIHRoaXMub2JqRGF0YS5saW1pdD0gMzE7XHJcbiAgICB0aGlzLm9iakRhdGEub2Zmc2V0PSAwO1xyXG4gICAgdGhpcy5mb290ZmFsbFRyZW5kKCk7XHJcbiAgICAvLyB0aGlzLnVwZGF0ZUNoYXJ0RGF0YSgpO1xyXG4gIH1cclxuICBoaWRlVG9vbHRpcCgpOiB2b2lkIHtcclxuICAgIHRoaXMudG9vbHRpcFZpc2libGUgPSBmYWxzZTtcclxuICAgIGNvbnN0IHRvb2x0aXBFbGVtZW50ID0gdGhpcy50b29sdGlwQ29udGFpbmVyPy5uYXRpdmVFbGVtZW50O1xyXG4gICAgdG9vbHRpcEVsZW1lbnQuc3R5bGUuZGlzcGxheSA9ICdub25lJztcclxuICB9XHJcblxyXG4gIGNyZWF0ZUNvbHVtblNlcmllcyhcclxuICAgIG5hbWU6IHN0cmluZyxcclxuICAgIGZpZWxkTmFtZTogc3RyaW5nLFxyXG4gICAgeEF4aXM6IGFtNXh5LkNhdGVnb3J5QXhpczxhbTV4eS5BeGlzUmVuZGVyZXI+LFxyXG4gICAgeUF4aXM6IGFtNXh5LlZhbHVlQXhpczxhbTV4eS5BeGlzUmVuZGVyZXI+LFxyXG4gICAgc3RhY2tlZDogYm9vbGVhbixcclxuICAgIGNvbG9yOiBhbTUuQ29sb3JcclxuICApOiB2b2lkIHtcclxuXHJcbiAgICBpZiAodGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInKSB7XHJcbiAgICAgIGlmIChuYW1lID09PSAnQm91bmNlZCcpIHtcclxuICAgICAgICBuYW1lID0gYExlc3MgdGhhbiAke3RoaXMuY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmJvdW5jZWRMaW1pdD8udmFsdWUgPz8gJ1gnfSBtaW5zYDtcclxuICAgICAgfVxyXG4gICAgICBpZiAobmFtZSA9PT0gJ0VuZ2FnZXJzJykge1xyXG4gICAgICAgIG5hbWUgPSBgTW9yZSB0aGFuICR7dGhpcy5jbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uYm91bmNlZExpbWl0Py52YWx1ZSA/PyAnWCd9IG1pbnNgO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBjb25zdCBzZXJpZXMgPSB0aGlzLmNoYXJ0VHJlbmRzLnNlcmllcy5wdXNoKFxyXG4gICAgICBhbTV4eS5Db2x1bW5TZXJpZXMubmV3KHRoaXMucm9vdFRyZW5kcywge1xyXG4gICAgICAgIG5hbWU6IG5hbWUsXHJcbiAgICAgICAgeEF4aXM6IHhBeGlzLFxyXG4gICAgICAgIHlBeGlzOiB5QXhpcyxcclxuICAgICAgICB2YWx1ZVlGaWVsZDogZmllbGROYW1lLFxyXG4gICAgICAgIGNhdGVnb3J5WEZpZWxkOiAnc3RvcmVOYW1lJyxcclxuICAgICAgICBzdGFja2VkOiBzdGFja2VkLFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIHRoaXMuZ2V0Rm9vdGZhbGxUcmVuZERhdGEgPSB0aGlzLmdldEZvb3RmYWxsVHJlbmREYXRhLm1hcCgoaXRlbTogYW55KSA9PiB7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgLi4uaXRlbSxcclxuICAgICAgICBkeW5hbWljQ29sdW1uOiB7XHJcbiAgICAgICAgICBmaWxsT3BhY2l0eTogaXRlbS5jb2x1bW5TZXR0aW5ncz8uZmlsbE9wYWNpdHkgPz8gMC44LFxyXG4gICAgICAgICAgc3Ryb2tlRGFzaGFycmF5OiBBcnJheS5pc0FycmF5KGl0ZW0uY29sdW1uU2V0dGluZ3M/LnN0cm9rZURhc2hhcnJheSlcclxuICAgICAgICAgICAgPyBpdGVtLmNvbHVtblNldHRpbmdzLnN0cm9rZURhc2hhcnJheVxyXG4gICAgICAgICAgICA6IGl0ZW0uY29sdW1uU2V0dGluZ3M/LnN0cm9rZURhc2hhcnJheSA/IGl0ZW0uY29sdW1uU2V0dGluZ3Muc3Ryb2tlRGFzaGFycmF5LnNwbGl0KCcsJykubWFwKE51bWJlcikgOiBbNSwgNV0sXHJcbiAgICAgICAgICBzdHJva2VXaWR0aDogaXRlbS5jb2x1bW5TZXR0aW5ncz8uc3Ryb2tlV2lkdGggPz8gM1xyXG4gICAgICAgIH1cclxuICAgICAgfTtcclxuICAgIH0pO1xyXG4gIFxyXG4gICAgLy8gU2V0IGRhdGEgZm9yIHNlcmllc1xyXG4gICAgc2VyaWVzLmRhdGEuc2V0QWxsKHRoaXMuZ2V0Rm9vdGZhbGxUcmVuZERhdGEpO1xyXG4gIFxyXG4gICAgLy8gQWRhcHRlcnMgdG8gYXBwbHkgY3VzdG9tIGNvbHVtbiBzZXR0aW5nc1xyXG4gICAgc2VyaWVzLmNvbHVtbnMudGVtcGxhdGUuYWRhcHRlcnMuYWRkKFwiZmlsbE9wYWNpdHlcIiwgKGZpbGxPcGFjaXR5OiBhbnksIHRhcmdldDogYW55KSA9PiB7XHJcbiAgICAgIGNvbnN0IGRhdGFJdGVtID0gdGFyZ2V0LmRhdGFJdGVtPy5kYXRhQ29udGV4dCBhcyBhbnk7XHJcbiAgICAgIGlmIChkYXRhSXRlbT8uZm9yZWNhc3QgJiYgZGF0YUl0ZW0/LmR5bmFtaWNDb2x1bW4pIHsgXHJcbiAgICAgICAgcmV0dXJuIGRhdGFJdGVtLmR5bmFtaWNDb2x1bW4uZmlsbE9wYWNpdHkgPz8gZmlsbE9wYWNpdHk7IFxyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBmaWxsT3BhY2l0eTsgLy8gRGVmYXVsdCBvcGFjaXR5XHJcbiAgICB9KTtcclxuICBcclxuICAgIHNlcmllcy5jb2x1bW5zLnRlbXBsYXRlLmFkYXB0ZXJzLmFkZChcInN0cm9rZURhc2hhcnJheVwiLCAoc3Ryb2tlRGFzaGFycmF5OiBhbnksIHRhcmdldDogYW55KSA9PiB7XHJcbiAgICAgIGNvbnN0IGRhdGFJdGVtID0gdGFyZ2V0LmRhdGFJdGVtPy5kYXRhQ29udGV4dCBhcyBhbnk7XHJcbiAgICAgIGlmIChkYXRhSXRlbT8uZm9yZWNhc3QgJiYgZGF0YUl0ZW0/LmR5bmFtaWNDb2x1bW4pIHsgXHJcbiAgICAgICAgcmV0dXJuIGRhdGFJdGVtLmR5bmFtaWNDb2x1bW4uc3Ryb2tlRGFzaGFycmF5ID8/IHN0cm9rZURhc2hhcnJheTsgXHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHN0cm9rZURhc2hhcnJheTsgLy8gRGVmYXVsdCBkYXNoIGFycmF5XHJcbiAgICB9KTtcclxuICBcclxuICAgIHNlcmllcy5jb2x1bW5zLnRlbXBsYXRlLmFkYXB0ZXJzLmFkZChcInN0cm9rZVdpZHRoXCIsIChzdHJva2VXaWR0aDogYW55LCB0YXJnZXQ6IGFueSkgPT4ge1xyXG4gICAgICBjb25zdCBkYXRhSXRlbSA9IHRhcmdldC5kYXRhSXRlbT8uZGF0YUNvbnRleHQgYXMgYW55O1xyXG4gICAgICBpZiAoZGF0YUl0ZW0/LmZvcmVjYXN0ICYmIGRhdGFJdGVtPy5keW5hbWljQ29sdW1uKSB7IFxyXG4gICAgICAgIHJldHVybiBkYXRhSXRlbS5keW5hbWljQ29sdW1uLnN0cm9rZVdpZHRoID8/IHN0cm9rZVdpZHRoOyBcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gc3Ryb2tlV2lkdGg7IC8vIERlZmF1bHQgc3Ryb2tlIHdpZHRoXHJcbiAgICB9KTtcclxuICBcclxuICAgIC8vIFNldCBkZWZhdWx0IGNvbG9yIGFuZCBzdHJva2UgZm9yIHRoZSBjb2x1bW5zXHJcbiAgICBzZXJpZXMuY29sdW1ucy50ZW1wbGF0ZS5zZXRBbGwoe1xyXG4gICAgICBmaWxsOiBjb2xvciwgLy8gU2V0IGZpbGwgY29sb3JcclxuICAgICAgc3Ryb2tlOiBjb2xvciAvLyBTZXQgc3Ryb2tlIGNvbG9yXHJcbiAgICB9KTtcclxuICBcclxuICAgIC8vIEFkZCBsYWJlbHMgdG8gdGhlIGNvbHVtbnNcclxuICAgIHNlcmllcy5idWxsZXRzLnB1c2goKCkgPT4ge1xyXG4gICAgICByZXR1cm4gYW01LkJ1bGxldC5uZXcodGhpcy5yb290VHJlbmRzLCB7XHJcbiAgICAgICAgc3ByaXRlOiBhbTUuTGFiZWwubmV3KHRoaXMucm9vdFRyZW5kcywge1xyXG4gICAgICAgICAgdGV4dDogXCJ7dmFsdWVZfVwiLFxyXG4gICAgICAgICAgZmlsbDogdGhpcy5yb290VHJlbmRzLmludGVyZmFjZUNvbG9ycy5nZXQoXCJhbHRlcm5hdGl2ZVRleHRcIiksXHJcbiAgICAgICAgICBjZW50ZXJZOiBhbTUucDUwLFxyXG4gICAgICAgICAgY2VudGVyWDogYW01LnA1MCxcclxuICAgICAgICAgIHBvcHVsYXRlVGV4dDogdHJ1ZSxcclxuICAgICAgICAgIGZvbnRTaXplOiAxMiAgLy8gUmVkdWNlIGZvbnQgc2l6ZVxyXG4gICAgICAgIH0pXHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiBcclxuICAgIHNlcmllcy5hcHBlYXIoKTtcclxuICB9XHJcbiAgXHJcbiAgXHJcblxyXG5cclxuXHJcbiAgY3JlYXRlTGluZVNlcmllcyhcclxuICAgIG5hbWU6IHN0cmluZyxcclxuICAgIGZpZWxkTmFtZTogc3RyaW5nLFxyXG4gICAgeEF4aXM6IGFtNXh5LkNhdGVnb3J5QXhpczxhbTV4eS5BeGlzUmVuZGVyZXI+LFxyXG4gICAgeUF4aXM6IGFtNXh5LlZhbHVlQXhpczxhbTV4eS5BeGlzUmVuZGVyZXI+LFxyXG4gICAgY29sb3I6IGFtNS5Db2xvclxyXG4gICk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJykge1xyXG4gICAgICBpZiAobmFtZSA9PT0gJ0NvbnZlcnNpb24nKSB7XHJcbiAgICAgICAgbmFtZSA9IGBNb3JlIHRoYW4gJHt0aGlzLmNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5jb252ZXJzaW9uPy52YWx1ZSA/PyAnWCd9IG1pbnNgO1xyXG4gICAgICB9XHJcbiAgICBcclxuICAgICAgaWYgKG5hbWUgPT09ICdNaXNzZWRvcHBvcnR1bml0aWVzJykge1xyXG4gICAgICAgIG5hbWUgPSBgJHt0aGlzLmNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5taXNzZWRPcHBvcnR1bml0eUZyb20/LnZhbHVlID8/ICdYJ30gLSAke3RoaXMuY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/Lm1pc3NlZE9wcG9ydHVuaXR5VG8/LnZhbHVlID8/ICdZJ30gbWluc2A7XHJcbiAgICAgIH1cclxuICAgIFxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKG5hbWUgPT09ICdNaXNzZWRvcHBvcnR1bml0aWVzJykge1xyXG4gICAgICAgIG5hbWUgPSAnTWlzc2VkIE9wcG9ydHVuaXR5JztcclxuICAgICAgfVxyXG4gICAgXHJcbiAgICAgIGlmIChuYW1lID09PSAnUG90ZW50aWFsJyB8fCBuYW1lID09PSAncG90ZW50aWFsQnV5ZXInKSB7XHJcbiAgICAgICAgbmFtZSA9ICdQb3RlbnRpYWwgQnV5ZXInO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgIGNvbnN0IHNlcmllcyA9IHRoaXMuY2hhcnRUcmVuZHMuc2VyaWVzLnB1c2goXHJcbiAgICAgIGFtNXh5LkxpbmVTZXJpZXMubmV3KHRoaXMucm9vdFRyZW5kcywge1xyXG4gICAgICAgIG5hbWU6IG5hbWUsXHJcbiAgICAgICAgeEF4aXM6IHhBeGlzLFxyXG4gICAgICAgIHlBeGlzOiB5QXhpcyxcclxuICAgICAgICB2YWx1ZVlGaWVsZDogZmllbGROYW1lLFxyXG4gICAgICAgIGNhdGVnb3J5WEZpZWxkOiAnc3RvcmVOYW1lJyxcclxuICAgICAgICB0b29sdGlwOiBhbTUuVG9vbHRpcC5uZXcodGhpcy5yb290VHJlbmRzLCB7XHJcbiAgICAgICAgICBwb2ludGVyT3JpZW50YXRpb246IFwiaG9yaXpvbnRhbFwiLFxyXG4gICAgICAgICAgbGFiZWxUZXh0OiBcIlRvdGFsIEZvb3RmYWxsOiB7Zm9vdGZhbGx9XFxue25hbWV9OiB7dmFsdWVZfSBcIixcclxuICAgICAgICAgIGJhY2tncm91bmQ6IGFtNS5SZWN0YW5nbGUubmV3KHRoaXMucm9vdFRyZW5kcywge1xyXG4gICAgICAgICAgICBmaWxsOiBhbTUuY29sb3IoMHgwMEZGMDApIC8vIFNldCB0aGUgZGVzaXJlZCB0b29sdGlwIGJhY2tncm91bmQgY29sb3JcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgfSlcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgXHJcbiAgICAvLyBBcHBseSBkZWZhdWx0IHN0cm9rZSBzZXR0aW5ncyBmb3IgdGhlIGxpbmUgc2VyaWVzXHJcbiAgICBzZXJpZXMuc3Ryb2tlcy50ZW1wbGF0ZS5zZXRBbGwoe1xyXG4gICAgICBzdHJva2VXaWR0aDogMixcclxuICAgICAgc3Ryb2tlOiBhbTUuY29sb3IoMHgwMEZGMDApLCAvLyBEZWZhdWx0IHN0cm9rZSBjb2xvclxyXG4gICAgICB0ZW1wbGF0ZUZpZWxkOiBcInN0cm9rZVNldHRpbmdzXCIsIC8vIFJlZmVyIHRvIHN0cm9rZVNldHRpbmdzIGZvciBkeW5hbWljIHVwZGF0ZXNcclxuICAgICAgZm9udFNpemU6IDEyIC8vIFJlZHVjZSBmb250IHNpemUgZm9yIGxhYmVsc1xyXG4gICAgfSk7XHJcbiAgXHJcbiAgICAvLyBNYXAgZHluYW1pYyBzZXR0aW5ncyBmb3IgZm9yZWNhc3Q9dHJ1ZSBpdGVtc1xyXG4gICAgdGhpcy5nZXRGb290ZmFsbFRyZW5kRGF0YSA9IHRoaXMuZ2V0Rm9vdGZhbGxUcmVuZERhdGEubWFwKChpdGVtOiBhbnkpID0+IHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICAuLi5pdGVtLFxyXG4gICAgICAgIGR5bmFtaWNMaW5lOiB7XHJcbiAgICAgICAgICBzdHJva2U6IGl0ZW0uc3Ryb2tlU2V0dGluZ3M/LnN0cm9rZSA/PyBhbTUuY29sb3IoMHgwMEZGMDApLCAvLyBEZWZhdWx0IHRvIGdyZWVuIGlmIG5vdCBzcGVjaWZpZWRcclxuICAgICAgICAgIHN0cm9rZVdpZHRoOiBpdGVtLnN0cm9rZVNldHRpbmdzPy5zdHJva2VXaWR0aCA/PyA1LFxyXG4gICAgICAgICAgc3Ryb2tlRGFzaGFycmF5OiBBcnJheS5pc0FycmF5KGl0ZW0uc3Ryb2tlU2V0dGluZ3M/LnN0cm9rZURhc2hhcnJheSlcclxuICAgICAgICAgICAgPyBpdGVtLnN0cm9rZVNldHRpbmdzLnN0cm9rZURhc2hhcnJheVxyXG4gICAgICAgICAgICA6IGl0ZW0uc3Ryb2tlU2V0dGluZ3M/LnN0cm9rZURhc2hhcnJheVxyXG4gICAgICAgICAgICA/IGl0ZW0uc3Ryb2tlU2V0dGluZ3Muc3Ryb2tlRGFzaGFycmF5LnNwbGl0KCcsJykubWFwKE51bWJlcilcclxuICAgICAgICAgICAgOiBbNSwgNV0gLy8gRGVmYXVsdCBkYXNoIGFycmF5XHJcbiAgICAgICAgfVxyXG4gICAgICB9O1xyXG4gICAgfSk7XHJcbiAgXHJcbiAgICAvLyBTZXQgZGF0YSBmb3Igc2VyaWVzXHJcbiAgICBzZXJpZXMuZGF0YS5zZXRBbGwodGhpcy5nZXRGb290ZmFsbFRyZW5kRGF0YSk7XHJcbiAgXHJcbiAgLy8gQWRhcHRlciB0byBhcHBseSBjdXN0b20gc3Ryb2tlIHNldHRpbmdzIGJhc2VkIG9uIGZvcmVjYXN0XHJcbiAgc2VyaWVzLnN0cm9rZXMudGVtcGxhdGUuYWRhcHRlcnMuYWRkKFwic3Ryb2tlXCIsIChzdHJva2U6IGFueSwgdGFyZ2V0OiBhbnkpID0+IHtcclxuICAgIGNvbnN0IGRhdGFJdGVtID0gdGFyZ2V0LmRhdGFJdGVtPy5kYXRhQ29udGV4dCBhcyBhbnk7XHJcbiAgICBpZiAoZGF0YUl0ZW0/LmZvcmVjYXN0ICYmIGRhdGFJdGVtPy5keW5hbWljTGluZSkge1xyXG4gICAgICByZXR1cm4gZGF0YUl0ZW0uZHluYW1pY0xpbmUuc3Ryb2tlID8/IHN0cm9rZTsgLy8gQXBwbHkgZHluYW1pYyBzdHJva2UgaWYgZm9yZWNhc3QgaXMgdHJ1ZVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHN0cm9rZTsgLy8gRGVmYXVsdCBzdHJva2VcclxuICB9KTtcclxuXHJcbiAgc2VyaWVzLnN0cm9rZXMudGVtcGxhdGUuYWRhcHRlcnMuYWRkKFwic3Ryb2tlV2lkdGhcIiwgKHN0cm9rZVdpZHRoOiBhbnksIHRhcmdldDogYW55KSA9PiB7XHJcbiAgICBjb25zdCBkYXRhSXRlbSA9IHRhcmdldC5kYXRhSXRlbT8uZGF0YUNvbnRleHQgYXMgYW55O1xyXG4gICAgaWYgKGRhdGFJdGVtPy5mb3JlY2FzdCAmJiBkYXRhSXRlbT8uZHluYW1pY0xpbmUpIHtcclxuICAgICAgcmV0dXJuIGRhdGFJdGVtLmR5bmFtaWNMaW5lLnN0cm9rZVdpZHRoID8/IHN0cm9rZVdpZHRoOyAvLyBBcHBseSBkeW5hbWljIHN0cm9rZSB3aWR0aFxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHN0cm9rZVdpZHRoOyAvLyBEZWZhdWx0IHN0cm9rZSB3aWR0aFxyXG4gIH0pO1xyXG5cclxuICBzZXJpZXMuc3Ryb2tlcy50ZW1wbGF0ZS5hZGFwdGVycy5hZGQoXCJzdHJva2VEYXNoYXJyYXlcIiwgKHN0cm9rZURhc2hhcnJheTogYW55LCB0YXJnZXQ6IGFueSkgPT4ge1xyXG4gICAgY29uc3QgZGF0YUl0ZW0gPSB0YXJnZXQuZGF0YUl0ZW0/LmRhdGFDb250ZXh0IGFzIGFueTtcclxuICAgIGlmIChkYXRhSXRlbT8uZm9yZWNhc3QgJiYgZGF0YUl0ZW0/LmR5bmFtaWNMaW5lKSB7XHJcbiAgICAgIC8vIEVuc3VyZSB0aGUgZGFzaCBhcnJheSBpcyBhIHZhbGlkIGFycmF5IG9mIG51bWJlcnMgZm9yIHByb3BlciByZW5kZXJpbmdcclxuICAgICAgcmV0dXJuIEFycmF5LmlzQXJyYXkoZGF0YUl0ZW0uZHluYW1pY0xpbmUuc3Ryb2tlRGFzaGFycmF5KVxyXG4gICAgICAgID8gZGF0YUl0ZW0uZHluYW1pY0xpbmUuc3Ryb2tlRGFzaGFycmF5IC8vIFVzZSBpZiBhbHJlYWR5IGluIGFycmF5IGZvcm1hdFxyXG4gICAgICAgIDogZGF0YUl0ZW0uZHluYW1pY0xpbmUuc3Ryb2tlRGFzaGFycmF5XHJcbiAgICAgICAgPyBkYXRhSXRlbS5keW5hbWljTGluZS5zdHJva2VEYXNoYXJyYXkuc3BsaXQoJywnKS5tYXAoTnVtYmVyKSAvLyBDb252ZXJ0IHN0cmluZyB0byBhcnJheVxyXG4gICAgICAgIDogWzUsIDVdOyAvLyBEZWZhdWx0IGRhc2ggYXJyYXlcclxuICAgIH1cclxuICAgIHJldHVybiBzdHJva2VEYXNoYXJyYXk7IC8vIERlZmF1bHQgc3Ryb2tlIGRhc2ggYXJyYXkgaWYgbm8gY3VzdG9tIHNldHRpbmdcclxuICB9KTtcclxuXHJcbiAgXHJcbiAgICAvLyBBZGQgYnVsbGV0cyAobWFya2VycykgdG8gdGhlIGxpbmUgc2VyaWVzXHJcbiAgICBzZXJpZXMuYnVsbGV0cy5wdXNoKCgpID0+IHtcclxuICAgICAgcmV0dXJuIGFtNS5CdWxsZXQubmV3KHRoaXMucm9vdFRyZW5kcywge1xyXG4gICAgICAgIHNwcml0ZTogYW01LkNpcmNsZS5uZXcodGhpcy5yb290VHJlbmRzLCB7XHJcbiAgICAgICAgICBzdHJva2VXaWR0aDogMSxcclxuICAgICAgICAgIHN0cm9rZTogYW01LmNvbG9yKDB4MDBGRjAwKSxcclxuICAgICAgICAgIHJhZGl1czogMywgLy8gSW5jcmVhc2UgcmFkaXVzIGZvciB2aXNpYmlsaXR5XHJcbiAgICAgICAgICBmaWxsOiB0aGlzLnJvb3RUcmVuZHMuaW50ZXJmYWNlQ29sb3JzLmdldChcImJhY2tncm91bmRcIilcclxuICAgICAgICB9KVxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIFxyXG4gICAgLy8gVHJpZ2dlciB0aGUgYXBwZWFyYW5jZSBvZiB0aGUgc2VyaWVzXHJcbiAgICBzZXJpZXMuYXBwZWFyKCk7XHJcbiAgXHJcbiAgICAvLyBMb2cgdGhlIHNlcmllcyBkYXRhIGZvciBkZWJ1Z2dpbmdcclxuICB9XHJcbiAgXHJcbiAgc2hvdzogYm9vbGVhbiA9ZmFsc2U7XHJcbiAgcHJvZHVjdHRyYWlsRHJvcGRvd24oZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy5zaG93ID10cnVlO1xyXG4gIH1cclxuICBjaGFuZ2VTdGF0dXModHlwZTphbnkpe1xyXG50aGlzLnRyZW5kdHlwZVZhbHVlID0gdHlwZTtcclxudGhpcy5vYmpEYXRhLmZpbHRlckJ5ID10eXBlO1xyXG50aGlzLmZvb3RmYWxsVHJlbmQoKTtcclxudGhpcy5zaG93ID1mYWxzZTtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgLy8gdHJhZmZpYyBvdmVyYWxsIGNhcmQgYW5kIGNoYXJ0c1xyXG5cclxuICBwcml2YXRlIHJvb3QhOiBhbTUuUm9vdDtcclxuICAvLyBwcml2YXRlIGNoYXJ0OiBhbTV4eS5YWUNoYXJ0O1xyXG4gIHByaXZhdGUgc2VyaWVzOiBhbTV4eS5Db2x1bW5TZXJpZXM7XHJcbiAgcHJpdmF0ZSByb290MjogYW01LlJvb3Q7XHJcbiAgcHJpdmF0ZSBjaGFydDI6IGFtNXh5LlhZQ2hhcnQ7XHJcbiAgcHJpdmF0ZSBzZXJpZXMyOiBhbTV4eS5Db2x1bW5TZXJpZXM7XHJcbiAgZGV0YWlsZWRSb290OiBhbTUuUm9vdDtcclxuICBkZXRhaWxlZENoYXJ0OiBhbTV4eS5YWUNoYXJ0O1xyXG4gIGRldGFpbGVkU2VyaWVzOiBhbTV4eS5Db2x1bW5TZXJpZXM7XHJcbiAgZGF5anMgPWRheWpzXHJcbiAgaGVhdE1hcFJvb3Q6IGFtNS5Sb290O1xyXG4gIGhlYXRNYXBDaGFydDogYW01eHkuWFlDaGFydDtcclxuICBoZWF0TWFwU2VyaWVzOiBhbTV4eS5Db2x1bW5TZXJpZXM7XHJcbiAgZHdlbGxSb290OiBhbTUuUm9vdDtcclxuICBkd2VsbENoYXJ0OiBhbTV4eS5YWUNoYXJ0O1xyXG4gIGR3ZWxsU2VyaWVzOiBhbTV4eS5Db2x1bW5TZXJpZXM7XHJcbiAgZGVtb0dyYXBoaWNzRGF0YTogYW55O1xyXG4gIGRlbW9HcmFwaGljc3Jvb3Q6IGFueTtcclxuICBidXllcnNyb290OmFueTtcclxuXHJcbiAgZGF0YTogYW55O1xyXG4gIGN1cnJlbnREYXRhOiBhbnk7XHJcbiAgY3VycmVudERhdGEyOiBhbnk7XHJcbiAgZGV0YWlsZWRDaGFydHM6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBkYXRlOiBhbnk7XHJcbiAgdmFsdWU6IGFueTtcclxuICBmb290ZmFsbFZhbHVlOiBzdHJpbmcgPSBcInRyYWZmaWNcIjtcclxuICBkZW1vR3JhcGhpY3NDaGFydEluc3RhbmNlOiBhbnk7XHJcbiAgYnV5ZXJzQ2hhcnRJbnN0YW5jZTphbnk7XHJcbiAgc2VsZWN0ZWRUYWI6IGFueSA9IFwidHJhZmZpY1wiO1xyXG4gIGdldE92ZXJhbGxDYXJkRGF0YTogYW55ID0gW107XHJcbiAgLy8gb2JqRGF0YTogYW55O1xyXG4gIGdldE92ZXJhbGxIb3VybHlEYXRhOiBhbnk7XHJcbiAgaG91ckJ1Y2tldFZhbHVlOiBudW1iZXIgPSAxO1xyXG4gIGhvdXJCdWNrZXRPcHRpb25zOiBhbnkgPSBbXHJcbiAgICB7IHZhbHVlOiAxLCBsYWJlbDogXCIxIEhvdXJcIiB9LFxyXG4gICAgeyB2YWx1ZTogMiwgbGFiZWw6IFwiMiBIb3VyXCIgfSxcclxuICAgIHsgdmFsdWU6IDMsIGxhYmVsOiBcIjMgSG91clwiIH0sXHJcbiAgICB7IHZhbHVlOiA0LCBsYWJlbDogXCI0IEhvdXJcIiB9LFxyXG4gIF07XHJcbiAgZ2V0T3ZlcmFsbENoYXJ0RGF0YTogYW55PVtdO1xyXG4gIGdldFNpbmdsZUNoYXJ0RGF0YTogYW55O1xyXG4gIGJ1eWVyc0RhdGE6IGFueTtcclxuICBnZXREZW5zaXR5RHdlbGxEYXRhOiBhbnk7XHJcbiAgdHJhZmZpY0RhdGE6YW55PSBbXTtcclxuICBmb290ZmFsbERhdGU6IGFueTtcclxuICBzZWxjdGVkVmFsdWU6YW55ID0nRm9vdGZhbGwgQW5hbHlzaXMnO1xyXG4gIGNoYXJ0Tm9EYXRhOiBib29sZWFuID1mYWxzZTtcclxuICBjaGFydGxvYWRpbmc6IGJvb2xlYW4gPXRydWU7XHJcbiAgdG90YWxDb3VudDogYW55O1xyXG4gIGRlbW9HcmFwaGljc1NlcmllczogYW55O1xyXG5cclxuICBpdGVtc1BlclBhZ2VUcmFmZmljQ2FyZCA9IDEwO1xyXG4gIGN1cnJlbnRQYWdlVHJhZmZpY0NhcmQgPSAxO1xyXG4gIHRvdGFsSXRlbXNUcmFmZmljQ2FyZCA9IDE7XHJcbiAgcGFnaW5hdGlvblNpemVzVHJhZmZpY0NhcmQ6IG51bWJlcltdID0gW107XHJcbiAgcGFnZVNpemVUcmFmZmljQ2FyZDphbnk9MjA7XHJcbiAgb2Zmc2V0VHJhZmZpY0NhcmQ6IG51bWJlciA9IDA7XHJcbiAgbGltaXRUcmFmZmljQ2FyZDogbnVtYmVyID0gMjA7XHJcbiAgZGVtb05vRGF0YSA9ZmFsc2U7XHJcbiAgZGVtb2xvYWRpbmcgPWZhbHNlO1xyXG4gIGJ1eWVyc05vRGF0YSA9ZmFsc2U7XHJcbiAgYnV5ZXJzbG9hZGluZyA9ZmFsc2U7XHJcbiAgZGF0YXNldHNDYXJkOmFueSA9W107XHJcbiAgcHJvY2Vzc1R5cGVOZXc6YW55O1xyXG4gIHNlbGVjdGVkVGFicyh0eXBlOiBhbnkpIHtcclxuICAgIHRoaXMuZGV0YWlsZWRDaGFydHMgPSBmYWxzZTtcclxuICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSB0eXBlO1xyXG4gICAgdGhpcy5vYmpEYXRhVHJhZmZpYy5wcm9jZXNzVHlwZSA9IHR5cGU7XHJcbiAgICB0aGlzLnByb2Nlc3NUeXBlTmV3ID0gdHlwZTtcclxuICAgIHRoaXMub2JqRGF0YVRyYWZmaWMudmFsdWVUeXBlID10aGlzLnZhbHVlVHlwZTtcclxuICAgIHRoaXMub2JqRGF0YVRyYWZmaWMuY291bnRyeSA9IHRoaXMuaGVhZGVyRGF0YT8uY291bnRyeS5maWx0ZXIoKGNvdW50cmllczphbnkpID0+IGNvdW50cmllcy5jaGVja2VkKS5tYXAoKGNvdW50cmllczphbnkpID0+IGNvdW50cmllcy5jb3VudHJ5KSxcclxuICAgIHRoaXMub2JqRGF0YVRyYWZmaWMuc3RvcmVJZCA9IHRoaXMuaGVhZGVyRGF0YS5zdG9yZXMuZmlsdGVyKChzdG9yZTphbnkpID0+IHN0b3JlLmNoZWNrZWQpLm1hcCgoc3RvcmU6YW55KSA9PiBzdG9yZS5zdG9yZUlkKTtcclxuICAgaWYodGhpcy5zZWxlY3RlZFRhYiA9PT0gJ3RyYWZmaWMnKXtcclxuICAgdGhpcy5nZXREd2VsbCgpOyB0aGlzLnRyYWZmaWNEd2VsbCgpO1xyXG4gICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgIH0gZWxzZXtcclxuICAgIGlmKHRoaXMuc2VsZWN0ZWRUYWIgPT09IFwiZm9vdGZhbGxcIil7XHJcbiAgICAgIHRoaXMuZm9vdGZhbGxWYWx1ZSA9IFwiZm9vdGZhbGxcIjtcclxuICAgICAgdGhpcy5zZWxjdGVkVmFsdWUgPSdGb290ZmFsbCBBbmFseXNpcydcclxuICAgIH0gZWxzZSBpZih0aGlzLnNlbGVjdGVkVGFiID09PSBcImNvbnZlcnNpb25cIil7XHJcbiAgICAgIHRoaXMuZm9vdGZhbGxWYWx1ZSA9IFwiY29udmVyc2lvblwiO1xyXG4gICAgICB0aGlzLnNlbGN0ZWRWYWx1ZSA9IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJyA/IGBNb3JlIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmNvbnZlcnNpb24udmFsdWV9IG1pbnMgQW5hbHlzaXNgIDogJ0NvbnZlcnNpb24gQW5hbHlzaXMnXHJcbiAgICB9IGVsc2UgaWYodGhpcy5zZWxlY3RlZFRhYiA9PT0gXCJlbmdhZ2Vyc1wiKXtcclxuICAgICAgdGhpcy5mb290ZmFsbFZhbHVlID0gXCJlbmdhZ2Vyc1wiO1xyXG4gICAgICB0aGlzLnNlbGN0ZWRWYWx1ZSA9IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJyA/IGBNb3JlIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZX0gbWlucyBBbmFseXNpc2AgOiAnRW5nYWdlcnMgQW5hbHlzaXMnXHJcbiAgICB9IGVsc2UgaWYodGhpcy5zZWxlY3RlZFRhYiA9PT0gXCJib3VuY2VkXCIpe1xyXG4gICAgICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBcImJvdW5jZWRcIjtcclxuICAgICAgdGhpcy5zZWxjdGVkVmFsdWUgPSB0aGlzLmhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1MicgPyBgTGVzcyB0aGFuICR7dGhpcy5mZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWV9IG1pbnMgQW5hbHlzaXNgIDonQm91bmNlZCBBbmFseXNpcydcclxuICAgIH0gZWxzZSBpZih0aGlzLnNlbGVjdGVkVGFiID09PSBcInBvdGVudGlhbEJ1eWVyc1wiKXtcclxuICAgICAgdGhpcy5mb290ZmFsbFZhbHVlID0gXCJwb3RlbnRpYWxCdXllcnNcIjtcclxuICAgICAgdGhpcy5zZWxjdGVkVmFsdWUgPSdQb3RlbnRpYWwgQnV5ZXIgQW5hbHlzaXMnXHJcbiAgICB9IGVsc2UgaWYodGhpcy5zZWxlY3RlZFRhYiA9PT0gXCJtaXNzZWRPcHBvcnR1bml0eVwiKXtcclxuICAgICAgdGhpcy5mb290ZmFsbFZhbHVlID0gXCJtaXNzZWRPcHBvcnR1bml0eVwiO1xyXG4gICAgICB0aGlzLnNlbGN0ZWRWYWx1ZSA9IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJyA/IGAke3RoaXMuZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlGcm9tLnZhbHVlfS0ke3RoaXMuZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlUby52YWx1ZX0gbWlucyBBbmFseXNpc2AgOidNaXNzZWQgT3Bwb3J0dW5pdHkgQW5hbHlzaXMnIFxyXG4gICAgfSBcclxuICAgIGlmKHRoaXMub2JqRGF0YVRyYWZmaWMubm9iID09PSB0cnVlICYmIHRoaXMuc2VsZWN0ZWRUYWIgPT09IFwiY29udmVyc2lvblwiKXtcclxuICAgICAgdGhpcy5zZWxlY3RlZFRhYiA9IFwiY29udmVyc2lvblwiXHJcbiAgICAgICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBcImNvbnZlcnNpb25cIjtcclxuICAgICAgdGhpcy5zZWxjdGVkVmFsdWUgPSdDb252ZXJzaW9uIEFuYWx5c2lzJ1xyXG4gICAgICB0aGlzLmRhdGFzZXRzQ2FyZCA9IFtcclxuICAgICAgICB7IHZhbHVlOiB0aGlzLnNlbGVjdGVkVGFiLCBsYWJlbDogdGhpcy5zZWxjdGVkVmFsdWUgfSxcclxuICAgICAgXTtcclxuICAgICAgdGhpcy5vYmpEYXRhVHJhZmZpYy5saW1pdCA9MjAsXHJcbiAgICAgIHRoaXMub3ZlcmFsbENhcmQoKTtcclxuICAgICAgdGhpcy5vdmVyYWxsQ2hhcnQoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmICh0aGlzLmhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1MicpIHtcclxuICAgICAgICB0aGlzLmRhdGFzZXRzQ2FyZCA9IFtcclxuICAgICAgICAgIHsgdmFsdWU6IHRoaXMuc2VsZWN0ZWRUYWIsIGxhYmVsOiB0aGlzLnNlbGN0ZWRWYWx1ZSB9LFxyXG4gICAgICAgICAgeyB2YWx1ZTogXCJkZW1vZ3JhcGhpY1wiLCBsYWJlbDogXCJEZW1vZ3JhcGhpYyBBbmFseXNpc1wiIH1cclxuICAgICAgICBdXHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5kYXRhc2V0c0NhcmQgPSBbXHJcbiAgICAgICAgICB7IHZhbHVlOiB0aGlzLnNlbGVjdGVkVGFiLCBsYWJlbDogdGhpcy5zZWxjdGVkVmFsdWUgfSxcclxuICAgICAgICAgIHsgdmFsdWU6IFwiZGVtb2dyYXBoaWNcIiwgbGFiZWw6IFwiRGVtb2dyYXBoaWMgQW5hbHlzaXNcIiB9LFxyXG4gICAgICBdXHJcbiAgICAgIGlmKHRoaXMuc2VsZWN0ZWRUYWIgIT0nbWlzc2VkT3Bwb3J0dW5pdHknKXtcclxuICAgICAgICB0aGlzLmRhdGFzZXRzQ2FyZC5wdXNoKHsgdmFsdWU6IFwiYnV5ZXJcIiwgbGFiZWw6IFwiQnV5ZXIgQW5hbHlzaXNcIiB9LClcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5vYmpEYXRhVHJhZmZpYy5saW1pdCA9MjAsXHJcbiAgICB0aGlzLm92ZXJhbGxDYXJkKCk7XHJcbiAgICB0aGlzLm92ZXJhbGxIb3VybHlDaGFydCgpO1xyXG4gICAgdGhpcy5vdmVyYWxsQ2hhcnQoKTtcclxuICB9XHJcbiAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG4gIH1cclxuICBnZXRGb290ZmFsbERlbnNpdHlEd2VsbERhdGE6YW55ID1bXTtcclxuICB0cmFmZmljRHdlbGwoKXtcclxuICAgIHRoaXMuY2hhcnROb0RhdGEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2hhcnRsb2FkaW5nID0gdHJ1ZTtcclxuICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLmxpbWl0O1xyXG4gICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMub2Zmc2V0O1xyXG4gICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMucHJvY2Vzc1R5cGU7XHJcbiAgICBkZWxldGUgdGhpcy5vYmpEYXRhVHJhZmZpYy5ob3VyRm9ybWF0O1xyXG4gICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMubm9ybWFsaXplZERhdGFcclxuICAgIHRoaXMub2JqRGF0YVRyYWZmaWMuZGF0ZVJhbmdlID1OdW1iZXIodGhpcy5mb290ZmFsbERhdGUpO1xyXG4gICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAgIC5nZXRUcmFmZmljRGVuc2l0eUR3ZWxsKHRoaXMub2JqRGF0YVRyYWZmaWMpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZ2V0Rm9vdGZhbGxEZW5zaXR5RHdlbGxEYXRhID0gcmVzPy5kYXRhO1xyXG4gICAgICAgICAgICB0aGlzLnRyYWZmaWNIZWF0Q2hhcnQoKTtcclxuICAgICAgICAgICAgdGhpcy5jaGFydE5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmNoYXJ0bG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICAgIH0gZWxzZSBpZighcmVzIHx8IHJlcy5jb2RlID09PSAyMDQpe1xyXG4gICAgICAgICAgICB0aGlzLmNoYXJ0Tm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5jaGFydGxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5nZXRGb290ZmFsbERlbnNpdHlEd2VsbERhdGEgPVtdO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChlcnI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5jaGFydE5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgICB0aGlzLmNoYXJ0bG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5nZXRGb290ZmFsbERlbnNpdHlEd2VsbERhdGEgPVtdO1xyXG4gICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBjb21wbGV0ZTogKCkgPT4ge30sXHJcbiAgICAgIH0pOyBcclxuICB9XHJcbiAgY2hhcnREd2VsbE5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICBjaGFydER3ZWxsbG9hZGluZyA9IHRydWU7XHJcbiAgIGdldER3ZWxsKCl7XHJcbiAgICAgIHRoaXMuY2hhcnREd2VsbE5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmNoYXJ0RHdlbGxsb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMubGltaXQ7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLm9mZnNldDtcclxuICAgICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMucHJvY2Vzc1R5cGU7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLmhvdXJGb3JtYXQ7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLm5vcm1hbGl6ZWREYXRhO1xyXG4gICAgICB0aGlzLm9iakRhdGFUcmFmZmljLmRhdGVSYW5nZSA9TnVtYmVyKHRoaXMuZm9vdGZhbGxEYXRlKTtcclxuICAgICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAgICAgLmdldERlbnNpdHlEd2VsbCh0aGlzLm9iakRhdGFUcmFmZmljKVxyXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgICA/LnN1YnNjcmliZSh7XHJcbiAgICAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgaWYgKHJlcyAmJiByZXM/LmNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgIHRoaXMuZ2V0RGVuc2l0eUR3ZWxsRGF0YSA9IHJlcz8uZGF0YTtcclxuICAgICAgICAgICAgICBpZih0aGlzLmdldERlbnNpdHlEd2VsbERhdGE/LmR3ZWxsVGltZVNwbGl0Py5sZW5ndGggPjApe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5nZXREd2VsbENoYXJ0KCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNoYXJ0RHdlbGxOb0RhdGEgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIHRoaXMuY2hhcnREd2VsbGxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNoYXJ0RHdlbGxOb0RhdGEgPSB0cnVlO1xyXG4gICAgICAgICAgICAgIHRoaXMuY2hhcnREd2VsbGxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZighcmVzIHx8IHJlcy5jb2RlID09PSAyMDQpe1xyXG4gICAgICAgICAgICAgIHRoaXMuY2hhcnREd2VsbE5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgdGhpcy5jaGFydER3ZWxsbG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIHRoaXMuZ2V0RGVuc2l0eUR3ZWxsRGF0YSA9W107XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuY2hhcnROb0RhdGEgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmNoYXJ0bG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICAgICAgdGhpcy5nZXREZW5zaXR5RHdlbGxEYXRhID1bXTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBjb21wbGV0ZTogKCkgPT4ge30sXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBpbml0Q2hhcnQoKTogdm9pZCB7XHJcbiAgICAgIHRoaXMuY2hhcnROb0RhdGEgPSBmYWxzZTtcclxuICAgICAgdGhpcy5jaGFydGxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgY2hhcnREaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInRlc3RHcmFwaGljc1wiKTtcclxuICAgICAgICBpZiAoIWNoYXJ0RGl2KSB7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLnJvb3QpIHtcclxuICAgICAgICAgIHRoaXMucm9vdC5kaXNwb3NlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMucm9vdCA9IGFtNS5Sb290Lm5ldyhcInRlc3RHcmFwaGljc1wiKTtcclxuICBcclxuICAgICAgICAvLyBTZXQgdGhlbWVzXHJcbiAgICAgICAgLy8gdGhpcy5yb290LnNldFRoZW1lcyhbYW01dGhlbWVzX0FuaW1hdGVkLm5ldyh0aGlzLnJvb3QpXSk7XHJcbiAgICAgICAgLy8gY29uc3QgdG90YWxDb3VudCA9IHRoaXMudG90YWxDb3VudDtcclxuICAgICAgICAvLyBjb25zdCBkeW5hbWljV2lkdGggPSBNYXRoLm1heCg4MDAsIHRvdGFsQ291bnQgKiA1MCk7IC8vIE1pbmltdW0gODAwcHggb3IgNTBweCBwZXIgaXRlbVxyXG4gICAgICAgIC8vIENyZWF0ZSBjaGFydFxyXG4gICAgICAgIHRoaXMuY2hhcnQgPSB0aGlzLnJvb3QuY29udGFpbmVyLmNoaWxkcmVuLnB1c2goXHJcbiAgICAgICAgICBhbTV4eS5YWUNoYXJ0Lm5ldyh0aGlzLnJvb3QsIHtcclxuICAgICAgICAgICAgcGFuWDogdHJ1ZSxcclxuICAgICAgICAgICAgcGFuWTogdHJ1ZSxcclxuICAgICAgICAgICAgd2hlZWxYOiBcInBhblhcIixcclxuICAgICAgICAgICAgd2hlZWxZOiBcInpvb21YXCIsXHJcbiAgICAgICAgICAgIHBpbmNoWm9vbVg6IHRydWUsXHJcbiAgICAgICAgICAgIHBhZGRpbmdMZWZ0OiAwLFxyXG4gICAgICAgICAgICBwYWRkaW5nUmlnaHQ6IDEsXHJcbiAgICAgICAgICAgIHdpZHRoOiBhbTUucGVyY2VudCgxMDApLCAvLyBMZXQgdGhlIGNoYXJ0IHRha2UgZnVsbCB3aWR0aFxyXG4gICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgICAgIC8vIHRoaXMuY2hhcnQucGxvdENvbnRhaW5lci5zZXRBbGwoe1xyXG4gICAgICAgIC8vICAgbWluV2lkdGg6IGR5bmFtaWNXaWR0aCwgLy8gU2V0IGR5bmFtaWMgbWluIHdpZHRoIGZvciBzY3JvbGxpbmdcclxuICAgICAgICAvLyB9KTtcclxuICAgICAgICAvLyBBZGQgY3Vyc29yXHJcbiAgICAgICAgbGV0IGN1cnNvciA9IHRoaXMuY2hhcnQuc2V0KFwiY3Vyc29yXCIsIGFtNXh5LlhZQ3Vyc29yLm5ldyh0aGlzLnJvb3QsIHt9KSk7XHJcbiAgICAgICAgY3Vyc29yLmxpbmVZLnNldChcInZpc2libGVcIiwgZmFsc2UpO1xyXG4gIFxyXG4gICAgICAgIC8vIENyZWF0ZSBheGVzXHJcbiAgICAgICAgbGV0IHhSZW5kZXJlciA9IGFtNXh5LkF4aXNSZW5kZXJlclgubmV3KHRoaXMucm9vdCwge1xyXG4gICAgICAgICAgbWluR3JpZERpc3RhbmNlOiAzMCxcclxuICAgICAgICAgIG1pbm9yR3JpZEVuYWJsZWQ6IHRydWUsXHJcbiAgICAgICAgfSk7XHJcbiAgXHJcbiAgICAgICAgeFJlbmRlcmVyLmxhYmVscy50ZW1wbGF0ZS5zZXRBbGwoe1xyXG4gICAgICAgICAgcm90YXRpb246IC00NSxcclxuICAgICAgICAgIGNlbnRlclk6IGFtNS5wNTAsXHJcbiAgICAgICAgICBjZW50ZXJYOiBhbTUucDEwMCxcclxuICAgICAgICAgIHBhZGRpbmdSaWdodDogNSxcclxuICAgICAgICB9KTtcclxuICBcclxuICAgICAgICB4UmVuZGVyZXIuZ3JpZC50ZW1wbGF0ZS5zZXRBbGwoe1xyXG4gICAgICAgICAgbG9jYXRpb246IDEsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgLy8gQWRkIHNjcm9sbGJhclxyXG4gICAgICAgIHRoaXMuY2hhcnQuc2V0KFxyXG4gICAgICAgICAgXCJzY3JvbGxiYXJYXCIsXHJcbiAgICAgICAgICBhbTUuU2Nyb2xsYmFyLm5ldyh0aGlzLnJvb3QsIHtcclxuICAgICAgICAgICAgb3JpZW50YXRpb246IFwiaG9yaXpvbnRhbFwiLFxyXG4gICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgICAgIGxldCB4QXhpcyA9IHRoaXMuY2hhcnQueEF4ZXMucHVzaChcclxuICAgICAgICAgIGFtNXh5LkNhdGVnb3J5QXhpcy5uZXcodGhpcy5yb290LCB7XHJcbiAgICAgICAgICAgIG1heERldmlhdGlvbjogMC4zLFxyXG4gICAgICAgICAgICBjYXRlZ29yeUZpZWxkOiBcInN0b3JlTmFtZVwiLFxyXG4gICAgICAgICAgICByZW5kZXJlcjogeFJlbmRlcmVyLFxyXG4gICAgICAgICAgICAvLyB0b29sdGlwOiBhbTUuVG9vbHRpcC5uZXcodGhpcy5yb290LCB7bGFiZWxUZXh0OiBcIntmdWxsU3RvcmVOYW1lfVwifSksXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgXHJcbiAgICAgICAgbGV0IHlSZW5kZXJlciA9IGFtNXh5LkF4aXNSZW5kZXJlclkubmV3KHRoaXMucm9vdCwge1xyXG4gICAgICAgICAgc3Ryb2tlT3BhY2l0eTogMC4xLFxyXG4gICAgICAgIH0pO1xyXG4gIFxyXG4gICAgICAgIGxldCB5QXhpcyA9IHRoaXMuY2hhcnQueUF4ZXMucHVzaChcclxuICAgICAgICAgIGFtNXh5LlZhbHVlQXhpcy5uZXcodGhpcy5yb290LCB7XHJcbiAgICAgICAgICAgIG1heERldmlhdGlvbjogMC4zLFxyXG4gICAgICAgICAgICByZW5kZXJlcjogeVJlbmRlcmVyLFxyXG4gICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgICAgIGxldCBkYXRhID0gdGhpcy5nZXRPdmVyYWxsQ2hhcnREYXRhPy5zdG9yZURhdGE/Lm1hcChcclxuICAgICAgICAgIChpdGVtOiBhbnkpID0+ICh7XHJcbiAgICAgICAgICAgIGZ1bGxTdG9yZU5hbWU6IGl0ZW0uc3RvcmVOYW1lLCAvLyBGdWxsIHN0b3JlIG5hbWVcclxuICAgICAgc3RvcmVOYW1lOiAgaXRlbS5zdG9yZU5hbWUsIC8vIGl0ZW0uc3RvcmVOYW1lLmxlbmd0aCA+IDIwID8gaXRlbS5zdG9yZU5hbWUuc2xpY2UoMCwgMjApICsgJy4uLicgOiBTaG9ydGVuZWQgZm9yIHhBeGlzXHJcbiAgICAgIHZhbHVlOiBOdW1iZXIoaXRlbS5jb3VudCksXHJcbiAgICAgIHN0b3JlSWQ6IGl0ZW0uc3RvcmVJZFxyXG4gICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG5cclxuICAgaWYodGhpcy5oZWFkZXJEYXRhLmNsaWVudCA9PT0nNDUyJyl7XHJcbiAgICAgICAgaWYodGhpcy5vYmpEYXRhVHJhZmZpYy5wcm9jZXNzVHlwZSA9PT0gXCJjb252ZXJzaW9uXCIpe1xyXG4gICAgICAgICAgdGhpcy5wcm9jZXNzVHlwZU5ldyA9IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJyA/IGBNb3JlIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmNvbnZlcnNpb24udmFsdWV9IG1pbnMgYCA6ICdDb252ZXJzaW9uJ1xyXG4gICAgICAgIH0gaWYodGhpcy5vYmpEYXRhVHJhZmZpYy5wcm9jZXNzVHlwZSA9PT0gXCJlbmdhZ2Vyc1wiKXtcclxuICAgICAgIFxyXG4gICAgICAgICAgdGhpcy5wcm9jZXNzVHlwZU5ldyA9IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJyA/IGBNb3JlIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZX0gbWluc2AgOiAnRW5nYWdlcnMnXHJcbiAgICAgICAgfSBpZih0aGlzLm9iakRhdGFUcmFmZmljLnByb2Nlc3NUeXBlID09PSBcImJvdW5jZWRcIil7XHJcbiAgICAgICAgICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBcImJvdW5jZWRcIjtcclxuICAgICAgICAgIHRoaXMucHJvY2Vzc1R5cGVOZXcgPSB0aGlzLmhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1MicgPyBgTGVzcyB0aGFuICR7dGhpcy5mZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWV9IG1pbnNgIDonQm91bmNlZCdcclxuICAgICAgICB9XHJcbiAgICAgICAgIGlmKHRoaXMub2JqRGF0YVRyYWZmaWMucHJvY2Vzc1R5cGUgPT09IFwibWlzc2VkT3Bwb3J0dW5pdHlcIil7XHJcbiAgICAgICAgICB0aGlzLnByb2Nlc3NUeXBlTmV3ID0gdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInID8gYCR7dGhpcy5mZWF0dXJlQ29uZmlnPy5taXNzZWRPcHBvcnR1bml0eUZyb20udmFsdWV9LSR7dGhpcy5mZWF0dXJlQ29uZmlnPy5taXNzZWRPcHBvcnR1bml0eVRvLnZhbHVlfSBtaW5zYCA6J01pc3NlZCBPcHBvcnR1bml0eScgXHJcbiAgICAgICAgfSBcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnByb2Nlc3NUeXBlTmV3ID0gdGhpcy5vYmpEYXRhVHJhZmZpYy5wcm9jZXNzVHlwZVxyXG4gICAgICB9XHJcbiAgICBcclxuICAgICAgICAvLyBDcmVhdGUgc2VyaWVzXHJcbiAgICAgICAgdGhpcy5zZXJpZXMgPSB0aGlzLmNoYXJ0LnNlcmllcy5wdXNoKFxyXG4gICAgICAgICAgYW01eHkuQ29sdW1uU2VyaWVzLm5ldyh0aGlzLnJvb3QsIHtcclxuICAgICAgICAgICAgbmFtZTogXCJTZXJpZXMgMVwiLFxyXG4gICAgICAgICAgICB4QXhpczogeEF4aXMsXHJcbiAgICAgICAgICAgIHlBeGlzOiB5QXhpcyxcclxuICAgICAgICAgICAgdmFsdWVZRmllbGQ6IFwidmFsdWVcIixcclxuICAgICAgICAgICAgY2F0ZWdvcnlYRmllbGQ6IFwic3RvcmVOYW1lXCIsXHJcbiAgICAgICAgICAgIHRvb2x0aXA6IGFtNS5Ub29sdGlwLm5ldyh0aGlzLnJvb3QsIHtcclxuICAgICAgICAgICAgICBsYWJlbFRleHQ6IGAkeyh0aGlzLnByb2Nlc3NUeXBlTmV3KX0sIHtmdWxsU3RvcmVOYW1lfToge3ZhbHVlWX1gLFxyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgICAgICB4QXhpcy5kYXRhLnNldEFsbChkYXRhKTtcclxuICAgICAgICB0aGlzLnNlcmllcy5jb2x1bW5zLnRlbXBsYXRlLnNldEFsbCh7IHN0cm9rZU9wYWNpdHk6IDAgfSk7XHJcbiAgICAgICAgdGhpcy5zZXJpZXMuY29sdW1ucy50ZW1wbGF0ZS5ldmVudHMub24oXCJjbGlja1wiLCAoZXY6IGFueSkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgZGF0YUl0ZW0gPSBldi50YXJnZXQuZGF0YUl0ZW0uZGF0YUNvbnRleHQ7XHJcbiAgICAgICAgICB0aGlzLmhhbmRsZUJhckNsaWNrKGRhdGFJdGVtKTtcclxuICAgICAgICB9KTtcclxuICBcclxuICAgICAgICB0aGlzLnNlcmllcy5jb2x1bW5zLnRlbXBsYXRlLnNldEFsbCh7IHN0cm9rZU9wYWNpdHk6IDAgfSk7XHJcbiAgXHJcbiAgICAgICAgdGhpcy5zZXJpZXMuZGF0YS5zZXRBbGwoZGF0YSk7XHJcbiAgICAvLyBTZXQgd2lkdGggZm9yIGNoYXJ0IGNvbnRhaW5lciB0byBlbmFibGUgc2Nyb2xsaW5nXHJcbiAgICAvLyBjb25zdCB0b3RhbENvdW50ID0gdGhpcy50b3RhbENvdW50O1xyXG4gICAgLy8gY29uc3QgaXRlbVdpZHRoID0gNTA7IC8vIFdpZHRoIG9mIGVhY2ggaXRlbSwgYWRqdXN0IGFzIG5lZWRlZFxyXG4gICAgLy8gY29uc3QgbWluV2lkdGggPSB0b3RhbENvdW50ICogaXRlbVdpZHRoOyAvLyBDYWxjdWxhdGUgdG90YWwgd2lkdGhcclxuICAgIC8vIGNoYXJ0RGl2LnN0eWxlLndpZHRoID0gYCR7TWF0aC5tYXgobWluV2lkdGgsIDEwMjQpfXB4YDsgLy8gTWluaW11bSB3aWR0aCBvZiA4MDBweFxyXG4gICAgICAgIC8vIE1ha2Ugc3R1ZmYgYW5pbWF0ZSBvbiBsb2FkXHJcbiAgICAgICAgdGhpcy5zZXJpZXMuYXBwZWFyKDEwMDApO1xyXG4gICAgICAgIHRoaXMuY2hhcnQuYXBwZWFyKDEwMDAsIDEwMCk7XHJcbiAgICAgIH0sIDApO1xyXG4gICAgfVxyXG4gIFxyXG4gICAgY2FwaXRhbGl6ZVRpdGxlKHRleHQ6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgIHJldHVybiB0ZXh0XHJcbiAgICAgICAgLnRvTG93ZXJDYXNlKCkgLy8gRW5zdXJlIHRoZSBzdHJpbmcgaXMgaW4gbG93ZXJjYXNlIGZpcnN0XHJcbiAgICAgICAgLnNwbGl0KCcgJykgICAgLy8gU3BsaXQgdGhlIHN0cmluZyBpbnRvIHdvcmRzXHJcbiAgICAgICAgLm1hcCh3b3JkID0+IHdvcmQuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyB3b3JkLnNsaWNlKDEpKSAvLyBDYXBpdGFsaXplIHRoZSBmaXJzdCBsZXR0ZXIgb2YgZWFjaCB3b3JkXHJcbiAgICAgICAgLmpvaW4oJyAnKTsgICAgLy8gSm9pbiB0aGUgd29yZHMgYmFjayB0b2dldGhlclxyXG4gICAgfVxyXG4gICAgZ2V0UmFuZ2VDb2xvcihyYXRlOiBudW1iZXIpOiBhbTUuQ29sb3Ige1xyXG4gICAgICBsZXQgY29sb3I6IGFtNS5Db2xvcjtcclxuICAgICAgaWYgKHJhdGUgPj0gMCAmJiByYXRlIDw9IDEwKSB7XHJcbiAgICAgICAgY29sb3IgPSBhbTUuY29sb3IoMHhFQUY4RkYpO1xyXG4gICAgICB9IGVsc2UgaWYgKHJhdGUgPiAxMCAmJiByYXRlIDw9IDIwKSB7XHJcbiAgICAgICAgY29sb3IgPSBhbTUuY29sb3IoMHhDQ0U5RkUpO1xyXG4gICAgICB9IGVsc2UgaWYgKHJhdGUgPiAyMCAmJiByYXRlIDw9IDMwKSB7XHJcbiAgICAgICAgY29sb3IgPSBhbTUuY29sb3IoMHhCMEQ2RkMpO1xyXG4gICAgICB9IGVsc2UgaWYgKHJhdGUgPiAzMCAmJiByYXRlIDw9IDQwKSB7XHJcbiAgICAgICAgY29sb3IgPSBhbTUuY29sb3IoMHg5NEMyRkEpO1xyXG4gICAgICB9IGVsc2UgaWYgKHJhdGUgPiA0MCAmJiByYXRlIDw9IDU1KSB7XHJcbiAgICAgICAgY29sb3IgPSBhbTUuY29sb3IoMHg3OEE5RjgpO1xyXG4gICAgICB9IGVsc2UgaWYgKHJhdGUgPiA1NSAmJiByYXRlIDw9IDc1KSB7XHJcbiAgICAgICAgY29sb3IgPSBhbTUuY29sb3IoMHg5OUQyRkQpOyAgXHJcbiAgICAgIH0gZWxzZSBpZiAocmF0ZSA+IDc1ICYmIHJhdGUgPD0gOTApIHtcclxuICAgICAgICBjb2xvciA9IGFtNS5jb2xvcigweDY2QkNGRCk7ICAgIFxyXG4gICAgICB9ICBlbHNlIGlmIChyYXRlID4gOTAgJiYgcmF0ZSA8PSAxMDApIHtcclxuICAgICAgICBjb2xvciA9IGFtNS5jb2xvcigweDM0NjBGMyk7ICBcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb2xvciA9IGFtNS5jb2xvcigweEZGRik7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIGNvbG9yO1xyXG4gICAgfVxyXG4gICAgaW5pdEhlYXRDaGFydChza2lwTG9hZGluZzogYm9vbGVhbiA9IGZhbHNlKSB7XHJcbiAgICAgIGlmICghc2tpcExvYWRpbmcpIHtcclxuICAgICAgICB0aGlzLmNoYXJ0Tm9EYXRhID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5jaGFydGxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICBjb25zdCBjaGFydERpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiaGVhdG1hcGNoYXJ0XCIpO1xyXG4gICAgICAgIGlmICghY2hhcnREaXYpIHtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRoaXMucm9vdDIpIHtcclxuICAgICAgICAgIHRoaXMucm9vdDIuZGlzcG9zZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBDcmVhdGUgcm9vdCBlbGVtZW50XHJcbiAgICAgICAgdGhpcy5yb290MiA9IGFtNS5Sb290Lm5ldyhcImhlYXRtYXBjaGFydFwiKTtcclxuICBcclxuICAgICAgICB0aGlzLnJvb3QyLmNvbnRhaW5lci5zZXRBbGwoe1xyXG4gICAgICAgICAgd2lkdGg6IGFtNS5wZXJjZW50KDEwMCksXHJcbiAgICAgICAgfSk7XHJcbiAgXHJcbiAgICAgICAgLy8gU2V0IHRoZW1lc1xyXG4gICAgICAgIHRoaXMucm9vdDIuc2V0VGhlbWVzKFtcclxuICAgICAgICAgIGFtNXRoZW1lc19BbmltYXRlZC5uZXcodGhpcy5yb290MiksXHJcbiAgICAgICAgICBhbTV0aGVtZXNfUmVzcG9uc2l2ZS5uZXcodGhpcy5yb290MiksXHJcbiAgICAgICAgXSk7XHJcbiAgXHJcbiAgICAgICAgLy8gQ3JlYXRlIGNoYXJ0XHJcbiAgICAgICAgdGhpcy5jaGFydDIgPSB0aGlzLnJvb3QyLmNvbnRhaW5lci5jaGlsZHJlbi5wdXNoKFxyXG4gICAgICAgICAgYW01eHkuWFlDaGFydC5uZXcodGhpcy5yb290Miwge1xyXG4gICAgICAgICAgICBwYW5YOiBmYWxzZSxcclxuICAgICAgICAgICAgcGFuWTogZmFsc2UsXHJcbiAgICAgICAgICAgIHdoZWVsWDogXCJub25lXCIsXHJcbiAgICAgICAgICAgIHdoZWVsWTogXCJub25lXCIsXHJcbiAgICAgICAgICAgIHBhZGRpbmdMZWZ0OiAwLFxyXG4gICAgICAgICAgICBsYXlvdXQ6IHRoaXMucm9vdDIudmVydGljYWxMYXlvdXQsXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgXHJcbiAgICAgICAgLy8gQ3JlYXRlIGF4ZXMgYW5kIHRoZWlyIHJlbmRlcmVyc1xyXG4gICAgICAgIGNvbnN0IHlSZW5kZXJlciA9IGFtNXh5LkF4aXNSZW5kZXJlclkubmV3KHRoaXMucm9vdDIsIHtcclxuICAgICAgICAgIG1pbkdyaWREaXN0YW5jZTogMjAsXHJcbiAgICAgICAgICBpbnZlcnNlZDogdHJ1ZSxcclxuICAgICAgICAgIG9wcG9zaXRlOiB0cnVlLFxyXG4gICAgICAgICAgbWlub3JHcmlkRW5hYmxlZDogdHJ1ZSxcclxuICAgICAgICB9KTtcclxuICBcclxuICAgICAgICB5UmVuZGVyZXIuZ3JpZC50ZW1wbGF0ZS5zZXQoXCJ2aXNpYmxlXCIsIGZhbHNlKTtcclxuICBcclxuICAgICAgICBjb25zdCB5QXhpcyA9IHRoaXMuY2hhcnQyLnlBeGVzLnB1c2goXHJcbiAgICAgICAgICBhbTV4eS5DYXRlZ29yeUF4aXMubmV3KHRoaXMucm9vdDIsIHtcclxuICAgICAgICAgICAgcmVuZGVyZXI6IHlSZW5kZXJlcixcclxuICAgICAgICAgICAgY2F0ZWdvcnlGaWVsZDogXCJ0aW1lXCIsXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgXHJcbiAgICAgICAgY29uc3QgeFJlbmRlcmVyID0gYW01eHkuQXhpc1JlbmRlcmVyWC5uZXcodGhpcy5yb290Miwge1xyXG4gICAgICAgICAgbWluR3JpZERpc3RhbmNlOiAzMCxcclxuICAgICAgICAgIG9wcG9zaXRlOiB0cnVlLFxyXG4gICAgICAgICAgbWlub3JHcmlkRW5hYmxlZDogdHJ1ZSxcclxuICAgICAgICB9KTtcclxuICBcclxuICAgICAgICB4UmVuZGVyZXIuZ3JpZC50ZW1wbGF0ZS5zZXQoXCJ2aXNpYmxlXCIsIGZhbHNlKTtcclxuICAgICAgICAvLyBIaWRlIHRoZSBvbi1jaGFydCBcIkhvdXJseSBEYXRhXCIgY2F0ZWdvcnkgbGFiZWw7IHRoZSBwYW5lbCBoZWFkZXIgYWxyZWFkeVxyXG4gICAgICAgIC8vIHNob3dzIHRoZSBcIkhvdXJseSBEYXRhXCIgdGl0bGUsIHNvIHRoZSBheGlzIGxhYmVsIGlzIGEgZHVwbGljYXRlLlxyXG4gICAgICAgIHhSZW5kZXJlci5sYWJlbHMudGVtcGxhdGUuc2V0KFwidmlzaWJsZVwiLCBmYWxzZSk7XHJcblxyXG4gICAgICAgIGNvbnN0IHhBeGlzID0gdGhpcy5jaGFydDIueEF4ZXMucHVzaChcclxuICAgICAgICAgIGFtNXh5LkNhdGVnb3J5QXhpcy5uZXcodGhpcy5yb290Miwge1xyXG4gICAgICAgICAgICByZW5kZXJlcjogeFJlbmRlcmVyLFxyXG4gICAgICAgICAgICBjYXRlZ29yeUZpZWxkOiBcIndlZWtkYXlcIixcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICBcclxuICAgICAgICAvLyBDcmVhdGUgc2VyaWVzXHJcbiAgICAgICAgdGhpcy5zZXJpZXMyID0gdGhpcy5jaGFydDIuc2VyaWVzLnB1c2goXHJcbiAgICAgICAgICBhbTV4eS5Db2x1bW5TZXJpZXMubmV3KHRoaXMucm9vdDIsIHtcclxuICAgICAgICAgICAgY2FsY3VsYXRlQWdncmVnYXRlczogdHJ1ZSxcclxuICAgICAgICAgICAgc3Ryb2tlOiBhbTUuY29sb3IoMHhmZmZmZmYpLFxyXG4gICAgICAgICAgICBjbHVzdGVyZWQ6IGZhbHNlLFxyXG4gICAgICAgICAgICB4QXhpczogeEF4aXMsXHJcbiAgICAgICAgICAgIHlBeGlzOiB5QXhpcyxcclxuICAgICAgICAgICAgY2F0ZWdvcnlYRmllbGQ6IFwid2Vla2RheVwiLFxyXG4gICAgICAgICAgICBjYXRlZ29yeVlGaWVsZDogXCJ0aW1lXCIsXHJcbiAgICAgICAgICAgIHZhbHVlRmllbGQ6IFwicmF0ZVwiLFxyXG4gICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgICAgIHRoaXMuc2VyaWVzMi5jb2x1bW5zLnRlbXBsYXRlLnNldEFsbCh7XHJcbiAgICAgICAgICB0b29sdGlwVGV4dDogXCJ7cmF0ZX0lXCIsXHJcbiAgICAgICAgICBzdHJva2VPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgc3Ryb2tlV2lkdGg6IDIsXHJcbiAgICAgICAgICB3aWR0aDogYW01LnBlcmNlbnQoMTAwKSxcclxuICAgICAgICAgIGhlaWdodDogYW01LnBlcmNlbnQoMTAwKSxcclxuICAgICAgICAgIGZpbGw6IGFtNS5jb2xvcigweGZmZmZmZiksIC8vIERlZmF1bHQgY29sb3IgZm9yIGNvbHVtbnNcclxuICAgICAgICB9KTtcclxuICAgICAgICBcclxuICAgICAgICAvLyBBcHBseSByYW5nZS1iYXNlZCBjb2xvciBydWxlcyBmb3IgZWFjaCBkYXRhIGl0ZW1cclxuICAgICAgICB0aGlzLnNlcmllczIuY29sdW1ucy50ZW1wbGF0ZS5hZGFwdGVycy5hZGQoXCJmaWxsXCIsIChmaWxsLCB0YXJnZXQpID0+IHtcclxuICAgICAgICAgIGNvbnN0IGRhdGFJdGVtID0gdGFyZ2V0LmRhdGFJdGVtPy5kYXRhQ29udGV4dCBhcyBDaGFydERhdGFJdGVtOyAvLyBDYXN0IGRhdGFDb250ZXh0IHRvIENoYXJ0RGF0YUl0ZW1cclxuICAgICAgICAgIGlmIChkYXRhSXRlbSAmJiBkYXRhSXRlbS5yYXRlICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0UmFuZ2VDb2xvcihkYXRhSXRlbS5yYXRlKTsgLy8gR2V0IGNvbG9yIGJhc2VkIG9uIHJhdGVcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJldHVybiBmaWxsO1xyXG4gICAgICAgIH0pO1xyXG4gIFxyXG4gICAgICAgIHRoaXMuc2VyaWVzMi5idWxsZXRzLnB1c2goKCkgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIGFtNS5CdWxsZXQubmV3KHRoaXMucm9vdDIsIHtcclxuICAgICAgICAgICAgc3ByaXRlOiBhbTUuTGFiZWwubmV3KHRoaXMucm9vdDIsIHtcclxuICAgICAgICAgICAgICB0ZXh0OiBcIntyYXRlLmZvcm1hdE51bWJlcignIy4jJyl9JVwiLFxyXG4gICAgICAgICAgICAgIGZpbGw6IGFtNS5jb2xvcigweDAwMDAwMCksXHJcbiAgICAgICAgICAgICAgY2VudGVyWTogYW01LnA1MCxcclxuICAgICAgICAgICAgICBjZW50ZXJYOiBhbTUucDUwLFxyXG4gICAgICAgICAgICAgIHBvcHVsYXRlVGV4dDogdHJ1ZSxcclxuICAgICAgICAgICAgICBmb250U2l6ZTogMTIsIC8vIFJlZHVjZSBmb250IHNpemVcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9KTtcclxuICBcclxuICAgICAgICAvLyBTZXQgZGF0YVxyXG4gICAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLmdldE92ZXJhbGxIb3VybHlEYXRhPy5tYXAoKGl0ZW06IGFueSkgPT4gKHtcclxuICAgICAgICAgIC4uLml0ZW0sXHJcbiAgICAgICAgICB3ZWVrZGF5OiBcIkhvdXJseSBEYXRhXCIsXHJcbiAgICAgICAgfSkpO1xyXG4gICAgICAgIHRoaXMuc2VyaWVzMi5kYXRhLnNldEFsbChkYXRhKTtcclxuICBcclxuICAgICAgICAvLyBBdXRvLXBvcHVsYXRlIFggYW5kIFkgYXhpcyBjYXRlZ29yeSBkYXRhXHJcbiAgICAgICAgY29uc3QgdGltZXM6IHN0cmluZ1tdID0gW107XHJcbiAgICAgICAgYW01LmFycmF5LmVhY2goZGF0YSwgZnVuY3Rpb24gKHJvdzogYW55KSB7XHJcbiAgICAgICAgICBpZiAodGltZXMuaW5kZXhPZihyb3cudGltZSkgPT09IC0xKSB7XHJcbiAgICAgICAgICAgIHRpbWVzLnB1c2gocm93LnRpbWUpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gIFxyXG4gICAgICAgIHhBeGlzLmRhdGEuc2V0QWxsKFt7IHdlZWtkYXk6IFwiSG91cmx5IERhdGFcIiB9XSk7IC8vIFNldCBzaW5nbGUgY2F0ZWdvcnkgZm9yIHgtYXhpc1xyXG4gICAgICAgIHlBeGlzLmRhdGEuc2V0QWxsKFxyXG4gICAgICAgICAgdGltZXMubWFwKGZ1bmN0aW9uIChpdGVtKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB7IHRpbWU6IGl0ZW0gfTtcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICBcclxuICAgICAgICB0aGlzLmNoYXJ0Mi5hcHBlYXIoMTAwMCwgMTAwKTtcclxuICAgICAgfSwgMCk7XHJcbiAgICB9XHJcbiAgXHJcbiAgICBvbkRhdGFzZXRDaGFuZ2UoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgICB0aGlzLmRldGFpbGVkQ2hhcnRzID0gZmFsc2U7XHJcbiAgICAgIC8vIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MU2VsZWN0RWxlbWVudDtcclxuICAgICAgdGhpcy5mb290ZmFsbFZhbHVlID0gZXZlbnQ7XHJcbiAgICAgIGlmICh0aGlzLmZvb3RmYWxsVmFsdWUgPT09IFwiZm9vdGZhbGxcIiB8fCAgdGhpcy5mb290ZmFsbFZhbHVlID09PSBcImNvbnZlcnNpb25cIlxyXG4gICAgICAgIHx8ICB0aGlzLmZvb3RmYWxsVmFsdWUgPT09IFwiZW5nYWdlcnNcIiB8fCAgdGhpcy5mb290ZmFsbFZhbHVlID09PSBcImJvdW5jZWRcIlxyXG4gICAgICAgIHx8ICB0aGlzLmZvb3RmYWxsVmFsdWUgPT09IFwicG90ZW50aWFsQnV5ZXJcIiB8fCAgdGhpcy5mb290ZmFsbFZhbHVlID09PSBcIm1pc3NlZE9wcG9ydHVuaXR5XCIpIHtcclxuICAgICAgICBpZiAodGhpcy5yb290KSB7XHJcbiAgICAgICAgICB0aGlzLnJvb3QuZGlzcG9zZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm92ZXJhbGxIb3VybHlDaGFydCgpO1xyXG4gICAgICAgIHRoaXMub3ZlcmFsbENoYXJ0KCk7XHJcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5mb290ZmFsbFZhbHVlID09PSBcImRlbW9ncmFwaGljXCIpIHtcclxuICAgICAgICAvLyBEaXNwb3NlIG9mIGFueSBwcmV2aW91cyBjaGFydHMgdG8gYXZvaWQgZHVwbGljYXRlc1xyXG4gICAgICAgIGlmICh0aGlzLmRlbW9HcmFwaGljc3Jvb3QpIHtcclxuICAgICAgICAgIHRoaXMuZGVtb0dyYXBoaWNzcm9vdC5kaXNwb3NlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuZ2V0RGVtb0dyYXBoaWNzKCk7XHJcbiAgICAgIH0gXHJcbiAgICAgIGVsc2UgaWYgKHRoaXMuZm9vdGZhbGxWYWx1ZSA9PT0gXCJidXllclwiICYmIHRoaXMuc2VsZWN0ZWRUYWIgIT0gJ21pc3NlZE9wcG9ydHVuaXR5Jykge1xyXG4gICAgICAgIC8vIERpc3Bvc2Ugb2YgYW55IHByZXZpb3VzIGNoYXJ0cyB0byBhdm9pZCBkdXBsaWNhdGVzXHJcbiAgICAgICAgaWYgKHRoaXMuYnV5ZXJzcm9vdCkge1xyXG4gICAgICAgICAgdGhpcy5idXllcnNyb290LmRpc3Bvc2UoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5nZXRCdXllcnMoKTtcclxuICAgICAgfSBcclxuICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcbiAgXHJcbiAgIGJhY2tUb0Zvb3RmYWxsKCkge1xyXG4gICAgdGhpcy5vYmpEYXRhVHJhZmZpYy5saW1pdCA9MjAsXHJcbiAgICAgdGhpcy5vYmpEYXRhVHJhZmZpYy5zdG9yZUlkID0gdGhpcy5oZWFkZXJEYXRhLnN0b3Jlcy5maWx0ZXIoKHN0b3JlOmFueSkgPT4gc3RvcmUuY2hlY2tlZCkubWFwKChzdG9yZTphbnkpID0+IHN0b3JlLnN0b3JlSWQpLFxyXG4gICAgIHRoaXMuZGV0YWlsZWRDaGFydHMgPSBmYWxzZTtcclxuICAgICB0aGlzLm92ZXJhbGxIb3VybHlDaGFydCgpO1xyXG4gICAgIHRoaXMub3ZlcmFsbENoYXJ0KCk7XHJcbiAgIH1cclxuIFxyXG4gICBnZXREZW1vR3JhcGhpY3MoKXtcclxuICAgICBkZWxldGUgdGhpcy5vYmpEYXRhVHJhZmZpYy5saW1pdDtcclxuICAgICBkZWxldGUgdGhpcy5vYmpEYXRhVHJhZmZpYy5vZmZzZXQ7XHJcbiAgICAgdGhpcy5kZW1vTm9EYXRhID1mYWxzZTtcclxuICAgICB0aGlzLmRlbW9sb2FkaW5nID0gdHJ1ZTtcclxuICAgICB0aGlzLnNlcnZpY2VcclxuICAgICAuZ2V0RGVtb0dyYXBoaWNzQ2hhcnQodGhpcy5vYmpEYXRhVHJhZmZpYylcclxuICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgIHRoaXMuZGVtb0dyYXBoaWNzRGF0YSA9IHJlcz8uZGF0YS5kZW1vZ3JhcGhpY0RhdGE7XHJcbiAgICAgICAgICAgXHJcbiAgICAgICAgICAgdGhpcy5kZW1vR3JhcGhpY3NDaGFydCgpO1xyXG4gICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpOyBcclxuICAgICAgICAgICAvLyBDYWxsIHdpdGggYSBkZWxheSB0byBlbnN1cmUgdGhlIGVsZW1lbnQgaXMgaW4gdGhlIERPTVxyXG4gICAgICAgICAgICB0aGlzLmRlbW9Ob0RhdGEgPWZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmRlbW9sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgdGhpcy5kZW1vTm9EYXRhID10cnVlO1xyXG4gICAgICAgICAgIHRoaXMuZGVtb2xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgfVxyXG4gICAgICAgfSxcclxuICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICB9LFxyXG4gICAgICAgY29tcGxldGU6ICgpID0+IHt9LFxyXG4gICAgIH0pO1xyXG4gICAgIFxyXG4gICB9XHJcbiAgIGRlbW9HcmFwaGljc0NoYXJ0KCk6IHZvaWQge1xyXG4gICAgIHRoaXMuY2hhcnROb0RhdGEgPSBmYWxzZTtcclxuICAgICB0aGlzLmNoYXJ0bG9hZGluZyA9IGZhbHNlO1xyXG4gICAgIHRoaXMuZGVtb05vRGF0YSA9ZmFsc2U7XHJcbiAgICAgdGhpcy5kZW1vbG9hZGluZyA9IGZhbHNlO1xyXG4gICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgY29uc3QgZGVtb0dyYXBoaWNzRGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJkZW1vR3JhcGhpY3NcIik7XHJcbiAgICAgICBpZiAoIWRlbW9HcmFwaGljc0Rpdikge1xyXG4gICAgICAgICByZXR1cm47XHJcbiAgICAgICB9XHJcbiAgICAgICAvLyBEaXNwb3NlIG9mIHByZXZpb3VzIGNoYXJ0IGlmIGl0IGV4aXN0c1xyXG4gICAgICAgaWYgKHRoaXMuZGVtb0dyYXBoaWNzcm9vdCkge1xyXG4gICAgICAgICB0aGlzLmRlbW9HcmFwaGljc3Jvb3QuZGlzcG9zZSgpO1xyXG4gICAgICAgfVxyXG4gXHJcbiAgICAgICAvLyBDcmVhdGUgYSBuZXcgY2hhcnRcclxuICAgICAgIHRoaXMuZGVtb0dyYXBoaWNzcm9vdCA9IGFtNS5Sb290Lm5ldyhkZW1vR3JhcGhpY3NEaXYpO1xyXG4gICAgICAgdGhpcy5kZW1vR3JhcGhpY3Nyb290LnNldFRoZW1lcyhbXHJcbiAgICAgICAgIGFtNXRoZW1lc19BbmltYXRlZC5uZXcodGhpcy5kZW1vR3JhcGhpY3Nyb290KSxcclxuICAgICAgIF0pO1xyXG4gXHJcbiAgICAgICB0aGlzLmRlbW9HcmFwaGljc0NoYXJ0SW5zdGFuY2UgPVxyXG4gICAgICAgICB0aGlzLmRlbW9HcmFwaGljc3Jvb3QuY29udGFpbmVyLmNoaWxkcmVuLnB1c2goXHJcbiAgICAgICAgICAgYW01eHkuWFlDaGFydC5uZXcodGhpcy5kZW1vR3JhcGhpY3Nyb290LCB7XHJcbiAgICAgICAgICAgICBwYW5YOiBmYWxzZSxcclxuICAgICAgICAgICAgIHBhblk6IGZhbHNlLFxyXG4gICAgICAgICAgICAgcGFkZGluZ0xlZnQ6IDAsXHJcbiAgICAgICAgICAgICB3aGVlbFg6IFwicGFuWFwiLFxyXG4gICAgICAgICAgICAgd2hlZWxZOiBcInpvb21YXCIsXHJcbiAgICAgICAgICAgICBsYXlvdXQ6IHRoaXMuZGVtb0dyYXBoaWNzcm9vdC52ZXJ0aWNhbExheW91dCxcclxuICAgICAgICAgICB9KVxyXG4gICAgICAgICApO1xyXG4gXHJcbiAgICAgICBsZXQgeFJlbmRlcmVyID0gYW01eHkuQXhpc1JlbmRlcmVyWC5uZXcodGhpcy5kZW1vR3JhcGhpY3Nyb290LCB7XHJcbiAgICAgICAgIGNlbGxTdGFydExvY2F0aW9uOiAwLjEsXHJcbiAgICAgICAgIGNlbGxFbmRMb2NhdGlvbjogMC45LFxyXG4gICAgICAgICBtaW5vckdyaWRFbmFibGVkOiB0cnVlLFxyXG4gICAgICAgfSk7XHJcbiBcclxuICAgICAgIGxldCB4QXhpcyA9IHRoaXMuZGVtb0dyYXBoaWNzQ2hhcnRJbnN0YW5jZS54QXhlcy5wdXNoKFxyXG4gICAgICAgICBhbTV4eS5DYXRlZ29yeUF4aXMubmV3KHRoaXMuZGVtb0dyYXBoaWNzcm9vdCwge1xyXG4gICAgICAgICAgIGNhdGVnb3J5RmllbGQ6IFwiYWdlXCIsXHJcbiAgICAgICAgICAgcmVuZGVyZXI6IHhSZW5kZXJlcixcclxuICAgICAgICAgICB0b29sdGlwOiBhbTUuVG9vbHRpcC5uZXcodGhpcy5kZW1vR3JhcGhpY3Nyb290LCB7fSksXHJcbiAgICAgICAgIH0pXHJcbiAgICAgICApO1xyXG4gICAgICAgdGhpcy5kZW1vR3JhcGhpY3NEYXRhID0gdGhpcy5kZW1vR3JhcGhpY3NEYXRhPy5tYXAoXHJcbiAgICAgICAgIChpdGVtOiBhbnkpID0+ICh7XHJcbiAgICAgICAgICAgYWdlOiBpdGVtLmFnZSxcclxuICAgICAgICAgICBjb3VudDogTnVtYmVyKGl0ZW0uY291bnQpLFxyXG4gICAgICAgICAgIG1hbGVDb3VudDogTnVtYmVyKGl0ZW0ubWFsZUNvdW50KSxcclxuICAgICAgICAgICBmZW1hbGVDb3VudDogTnVtYmVyKGl0ZW0uZmVtYWxlQ291bnQpLFxyXG4gICAgICAgICB9KVxyXG4gICAgICAgKTtcclxuICAgICAgIHhSZW5kZXJlci5ncmlkLnRlbXBsYXRlLnNldEFsbCh7IGxvY2F0aW9uOiAxIH0pO1xyXG4gICAgICAgeEF4aXMuZGF0YS5zZXRBbGwodGhpcy5kZW1vR3JhcGhpY3NEYXRhKTtcclxuIFxyXG4gICAgICAgbGV0IHlBeGlzID0gdGhpcy5kZW1vR3JhcGhpY3NDaGFydEluc3RhbmNlLnlBeGVzLnB1c2goXHJcbiAgICAgICAgIGFtNXh5LlZhbHVlQXhpcy5uZXcodGhpcy5kZW1vR3JhcGhpY3Nyb290LCB7XHJcbiAgICAgICAgICAgcmVuZGVyZXI6IGFtNXh5LkF4aXNSZW5kZXJlclkubmV3KHRoaXMuZGVtb0dyYXBoaWNzcm9vdCwge1xyXG4gICAgICAgICAgICAgc3Ryb2tlT3BhY2l0eTogMC4xLFxyXG4gICAgICAgICAgIH0pLFxyXG4gICAgICAgICB9KVxyXG4gICAgICAgKTtcclxuICAgICAgLy8gQWRkIGxlZ2VuZFxyXG4gICAgIGxldCBsZWdlbmQgPSB0aGlzLmRlbW9HcmFwaGljc0NoYXJ0SW5zdGFuY2UuY2hpbGRyZW4ucHVzaChcclxuICAgICAgIGFtNS5MZWdlbmQubmV3KHRoaXMuZGVtb0dyYXBoaWNzcm9vdCwge1xyXG4gICAgICAgICB4OiBhbTUucDEwMCwgICAgLy8gQWxpZ24gdG8gMTAwJSB3aWR0aCAocmlnaHQgc2lkZSlcclxuICAgICAgICAgeTogYW01LnAwLCAgICAgIC8vIEFsaWduIHRvIHRoZSB0b3BcclxuICAgICAgICAgY2VudGVyWDogYW01LnAxMDAsICAvLyBBbGlnbiB0aGUgY2VudGVyIG9mIHRoZSBsZWdlbmQgdG8gaXRzIHJpZ2h0XHJcbiAgICAgICAgIGNlbnRlclk6IGFtNS5wMCwgICAgLy8gQWxpZ24gdGhlIHRvcCBvZiB0aGUgbGVnZW5kIHRvIHRoZSB0b3Agb2YgdGhlIGNoYXJ0XHJcbiAgICAgICB9KVxyXG4gICAgICk7XHJcbiBcclxuICAgICAvLyBDcmVhdGUgdGhlIHNlcmllcyBhbmQgYWRkIGVhY2ggdG8gdGhlIGxlZ2VuZFxyXG4gICAgIGNvbnN0IG1hbGVTZXJpZXMgPSB0aGlzLm1ha2VTZXJpZXMoXCJNYWxlXCIsIFwibWFsZUNvdW50XCIsIHhBeGlzLCB5QXhpcyk7XHJcbiAgICAgY29uc3QgZmVtYWxlU2VyaWVzID0gdGhpcy5tYWtlU2VyaWVzKFwiRmVtYWxlXCIsIFwiZmVtYWxlQ291bnRcIiwgeEF4aXMsIHlBeGlzKTtcclxuIFxyXG4gICAgIGxlZ2VuZC5kYXRhLnNldEFsbChbbWFsZVNlcmllcywgZmVtYWxlU2VyaWVzXSk7XHJcbiAgICAgICB0aGlzLmRlbW9HcmFwaGljc0NoYXJ0SW5zdGFuY2UuYXBwZWFyKDEwMDAsIDEwMCk7XHJcbiBcclxuICAgICB9LFxyXG4gICAgICAgICAgICAwKTtcclxuIFxyXG4gICB9XHJcbiAgIG1ha2VTZXJpZXMoXHJcbiAgICAgbmFtZTogYW55LFxyXG4gICAgIGZpZWxkTmFtZTogYW55LFxyXG4gICAgIHhBeGlzOiBhbTV4eS5DYXRlZ29yeUF4aXM8YW01eHkuQXhpc1JlbmRlcmVyPixcclxuICAgICB5QXhpczogYW01eHkuVmFsdWVBeGlzPGFtNXh5LkF4aXNSZW5kZXJlcj5cclxuICAgKSB7XHJcbiAgICAgbGV0IHNlcmllcyA9IHRoaXMuZGVtb0dyYXBoaWNzQ2hhcnRJbnN0YW5jZS5zZXJpZXMucHVzaChcclxuICAgICAgIGFtNXh5LkNvbHVtblNlcmllcy5uZXcodGhpcy5kZW1vR3JhcGhpY3Nyb290LCB7XHJcbiAgICAgICAgIG5hbWU6IG5hbWUsXHJcbiAgICAgICAgIHhBeGlzOiB4QXhpcyxcclxuICAgICAgICAgeUF4aXM6IHlBeGlzLFxyXG4gICAgICAgICB2YWx1ZVlGaWVsZDogZmllbGROYW1lLFxyXG4gICAgICAgICBjYXRlZ29yeVhGaWVsZDogXCJhZ2VcIixcclxuICAgICAgIH0pXHJcbiAgICAgKTtcclxuICAgXHJcbiAgICAgc2VyaWVzLmNvbHVtbnMudGVtcGxhdGUuc2V0QWxsKHtcclxuICAgICAgIHRvb2x0aXBUZXh0OiBcIntuYW1lfSwge2NhdGVnb3J5WH06IHt2YWx1ZVl9XCIsXHJcbiAgICAgICB3aWR0aDogYW01LnBlcmNlbnQoOTApLFxyXG4gICAgICAgdG9vbHRpcFk6IDAsXHJcbiAgICAgICBzdHJva2VPcGFjaXR5OiAwLFxyXG4gICAgIH0pO1xyXG4gICBcclxuICAgICBzZXJpZXMuZGF0YS5zZXRBbGwodGhpcy5kZW1vR3JhcGhpY3NEYXRhKTtcclxuICAgICBzZXJpZXMuYXBwZWFyKCk7XHJcbiAgIFxyXG4gICAgIHJldHVybiBzZXJpZXM7ICAvLyBSZXR1cm4gdGhlIHNlcmllcyB0byBhZGQgaXQgdG8gdGhlIGxlZ2VuZFxyXG4gICB9XHJcbiAgIGdldEJ1eWVycygpe1xyXG4gICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLmxpbWl0O1xyXG4gICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLm9mZnNldDtcclxuICAgICB0aGlzLmJ1eWVyc2xvYWRpbmcgPSB0cnVlO1xyXG4gICAgIHRoaXMuYnV5ZXJzTm9EYXRhID1mYWxzZTtcclxuICAgICB0aGlzLnNlcnZpY2VcclxuICAgICAuZ2V0QnV5ZXJzQ2hhcnQodGhpcy5vYmpEYXRhVHJhZmZpYylcclxuICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgIHRoaXMuYnV5ZXJzRGF0YSA9IHJlcz8uZGF0YS5idXllckRhdGE7XHJcbiAgICAgICAgICBcclxuICAgICAgICAgIHRoaXMuZ2V0QnV5ZXJzQ2hhcnQoKTsgLy8gQ2FsbCB3aXRoIGEgZGVsYXkgdG8gZW5zdXJlIHRoZSBlbGVtZW50IGlzIGluIHRoZSBET01cclxuICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpOyBcclxuICAgICAgICAgIHRoaXMuYnV5ZXJzTm9EYXRhID1mYWxzZTtcclxuICAgICAgICAgIHRoaXMuYnV5ZXJzbG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICB9IGVsc2V7XHJcbiAgICAgICAgICAgdGhpcy5idXllcnNsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgdGhpcy5idXllcnNOb0RhdGEgPXRydWU7XHJcbiAgICAgICAgIH1cclxuICAgICAgIH0sXHJcbiAgICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgfSxcclxuICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7fSxcclxuICAgICB9KTtcclxuICAgfVxyXG4gICBnZXRCdXllcnNDaGFydCgpOiB2b2lkIHtcclxuICAgICB0aGlzLmNoYXJ0Tm9EYXRhID0gZmFsc2U7XHJcbiAgICAgdGhpcy5jaGFydGxvYWRpbmcgPSBmYWxzZTtcclxuICAgICB0aGlzLmJ1eWVyc05vRGF0YSA9ZmFsc2U7XHJcbiAgICAgdGhpcy5idXllcnNsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgY29uc3QgYnV5ZXJzRGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJidXllcnNDaGFydHNcIik7XHJcbiAgICAgaWYgKCFidXllcnNEaXYpIHtcclxuICAgICAgIHJldHVybjtcclxuICAgICB9XHJcbiBcclxuICAgICAvLyBEaXNwb3NlIG9mIHByZXZpb3VzIGNoYXJ0IGlmIGl0IGV4aXN0c1xyXG4gICAgIGlmICh0aGlzLmJ1eWVyc3Jvb3QpIHtcclxuICAgICAgIHRoaXMuYnV5ZXJzcm9vdC5kaXNwb3NlKCk7XHJcbiAgICAgfVxyXG4gXHJcbiAgICAgLy8gQ3JlYXRlIGEgbmV3IGNoYXJ0XHJcbiAgICAgdGhpcy5idXllcnNyb290ID0gYW01LlJvb3QubmV3KGJ1eWVyc0Rpdik7XHJcbiAgICAgdGhpcy5idXllcnNyb290LnNldFRoZW1lcyhbXHJcbiAgICAgICBhbTV0aGVtZXNfQW5pbWF0ZWQubmV3KHRoaXMuYnV5ZXJzcm9vdCksXHJcbiAgICAgXSk7XHJcbiBcclxuICAgICB0aGlzLmJ1eWVyc0NoYXJ0SW5zdGFuY2UgPVxyXG4gICAgICAgdGhpcy5idXllcnNyb290LmNvbnRhaW5lci5jaGlsZHJlbi5wdXNoKFxyXG4gICAgICAgICBhbTV4eS5YWUNoYXJ0Lm5ldyh0aGlzLmJ1eWVyc3Jvb3QsIHtcclxuICAgICAgICAgICBwYW5YOiBmYWxzZSxcclxuICAgICAgICAgICBwYW5ZOiBmYWxzZSxcclxuICAgICAgICAgICBwYWRkaW5nTGVmdDogMCxcclxuICAgICAgICAgICB3aGVlbFg6IFwicGFuWFwiLFxyXG4gICAgICAgICAgIHdoZWVsWTogXCJ6b29tWFwiLFxyXG4gICAgICAgICAgIGxheW91dDogdGhpcy5idXllcnNyb290LnZlcnRpY2FsTGF5b3V0LFxyXG4gICAgICAgICB9KVxyXG4gICAgICAgKTtcclxuIFxyXG4gICAgIGxldCB4UmVuZGVyZXIgPSBhbTV4eS5BeGlzUmVuZGVyZXJYLm5ldyh0aGlzLmJ1eWVyc3Jvb3QsIHtcclxuICAgICAgIGNlbGxTdGFydExvY2F0aW9uOiAwLjEsXHJcbiAgICAgICBjZWxsRW5kTG9jYXRpb246IDAuOSxcclxuICAgICAgIG1pbm9yR3JpZEVuYWJsZWQ6IHRydWUsXHJcbiAgICAgfSk7XHJcbiBcclxuICAgICBsZXQgeEF4aXMgPSB0aGlzLmJ1eWVyc0NoYXJ0SW5zdGFuY2UueEF4ZXMucHVzaChcclxuICAgICAgIGFtNXh5LkNhdGVnb3J5QXhpcy5uZXcodGhpcy5idXllcnNyb290LCB7XHJcbiAgICAgICAgIGNhdGVnb3J5RmllbGQ6IFwiYWdlXCIsXHJcbiAgICAgICAgIHJlbmRlcmVyOiB4UmVuZGVyZXIsXHJcbiAgICAgICAgIHRvb2x0aXA6IGFtNS5Ub29sdGlwLm5ldyh0aGlzLmJ1eWVyc3Jvb3QsIHt9KSxcclxuICAgICAgIH0pXHJcbiAgICAgKTtcclxuICAgICB0aGlzLmJ1eWVyc0RhdGEgPSB0aGlzLmJ1eWVyc0RhdGE/Lm1hcChcclxuICAgICAgIChpdGVtOiBhbnkpID0+ICh7XHJcbiAgICAgICAgIGFnZTogaXRlbS5hZ2UsXHJcbiAgICAgICAgIHNpbmdsZUNvdW50OiBOdW1iZXIoaXRlbS5zaW5nbGVDb3VudCksXHJcbiAgICAgICAgIGdyb3VwQ291bnQ6IE51bWJlcihpdGVtLmdyb3VwQ291bnQpLFxyXG4gICAgICAgfSlcclxuICAgICApO1xyXG4gICAgIHhSZW5kZXJlci5ncmlkLnRlbXBsYXRlLnNldEFsbCh7IGxvY2F0aW9uOiAxIH0pO1xyXG4gICAgIHhBeGlzLmRhdGEuc2V0QWxsKHRoaXMuYnV5ZXJzRGF0YSk7XHJcbiBcclxuICAgICBsZXQgeUF4aXMgPSB0aGlzLmJ1eWVyc0NoYXJ0SW5zdGFuY2UueUF4ZXMucHVzaChcclxuICAgICAgIGFtNXh5LlZhbHVlQXhpcy5uZXcodGhpcy5idXllcnNyb290LCB7XHJcbiAgICAgICAgIHJlbmRlcmVyOiBhbTV4eS5BeGlzUmVuZGVyZXJZLm5ldyh0aGlzLmJ1eWVyc3Jvb3QsIHtcclxuICAgICAgICAgICBzdHJva2VPcGFjaXR5OiAwLjEsXHJcbiAgICAgICAgIH0pLFxyXG4gICAgICAgfSlcclxuICAgICApO1xyXG4gICAgIGxldCBsZWdlbmQgPSB0aGlzLmJ1eWVyc0NoYXJ0SW5zdGFuY2UuY2hpbGRyZW4ucHVzaChcclxuICAgICAgIGFtNS5MZWdlbmQubmV3KHRoaXMuYnV5ZXJzcm9vdCwge1xyXG4gICAgICAgICB4OiBhbTUucDEwMCwgICAgLy8gQWxpZ24gdG8gMTAwJSB3aWR0aCAocmlnaHQgc2lkZSlcclxuICAgICB5OiBhbTUucDAsICAgICAgLy8gQWxpZ24gdG8gdGhlIHRvcFxyXG4gICAgIGNlbnRlclg6IGFtNS5wMTAwLCAgLy8gQWxpZ24gdGhlIGNlbnRlciBvZiB0aGUgbGVnZW5kIHRvIGl0cyByaWdodFxyXG4gICAgIGNlbnRlclk6IGFtNS5wMCwgICAgLy8gQWxpZ24gdGhlIHRvcCBvZiB0aGUgbGVnZW5kIHRvIHRoZSB0b3Agb2YgdGhlIGNoYXJ0XHJcbiAgICAgICB9KVxyXG4gICAgICk7XHJcbiAgICAgXHJcbiAgIGNvbnN0IHNpbmdsZUNvdW50ID0gIHRoaXMuZ2V0QnV5ZXJTZXJpZXMoXCJTaW5nbGVcIiwgXCJzaW5nbGVDb3VudFwiLCB4QXhpcywgeUF4aXMpO1xyXG4gICBjb25zdCBncm91cENvdW50ID0gIHRoaXMuZ2V0QnV5ZXJTZXJpZXMoXCJHcm91cFwiLCBcImdyb3VwQ291bnRcIiwgeEF4aXMsIHlBeGlzKTtcclxuICAgICBsZWdlbmQuZGF0YS5zZXRBbGwoW3NpbmdsZUNvdW50LCBncm91cENvdW50XSk7XHJcbiAgICAgdGhpcy5idXllcnNDaGFydEluc3RhbmNlLmFwcGVhcigxMDAwLCAxMDApO1xyXG4gICB9LDApO1xyXG4gfVxyXG4gZ2V0QnV5ZXJTZXJpZXMoXHJcbiAgIG5hbWU6IHN0cmluZyxcclxuICAgZmllbGROYW1lOiBzdHJpbmcsXHJcbiAgIHhBeGlzOiBhbTV4eS5DYXRlZ29yeUF4aXM8YW01eHkuQXhpc1JlbmRlcmVyPixcclxuICAgeUF4aXM6IGFtNXh5LlZhbHVlQXhpczxhbTV4eS5BeGlzUmVuZGVyZXI+XHJcbiApIHtcclxuICAgbGV0IHNlcmllcyA9IHRoaXMuYnV5ZXJzQ2hhcnRJbnN0YW5jZS5zZXJpZXMucHVzaChcclxuICAgICBhbTV4eS5Db2x1bW5TZXJpZXMubmV3KHRoaXMuYnV5ZXJzcm9vdCwge1xyXG4gICAgICAgbmFtZTogbmFtZSxcclxuICAgICAgIHhBeGlzOiB4QXhpcyxcclxuICAgICAgIHlBeGlzOiB5QXhpcyxcclxuICAgICAgIHZhbHVlWUZpZWxkOiBmaWVsZE5hbWUsXHJcbiAgICAgICBjYXRlZ29yeVhGaWVsZDogXCJhZ2VcIiwgIC8vIEFzc3VtaW5nIFwiYWdlXCIgaXMgdGhlIGNhdGVnb3J5IGZpZWxkXHJcbiAgICAgfSlcclxuICAgKTtcclxuIFxyXG4gICBzZXJpZXMuY29sdW1ucy50ZW1wbGF0ZS5zZXRBbGwoe1xyXG4gICAgIHRvb2x0aXBUZXh0OiBcIntuYW1lfToge3ZhbHVlWX1cIixcclxuICAgICB3aWR0aDogYW01LnBlcmNlbnQoOTApLFxyXG4gICAgIHRvb2x0aXBZOiAwLFxyXG4gICAgIHN0cm9rZU9wYWNpdHk6IDAsXHJcbiAgIH0pO1xyXG4gXHJcbiAgIHNlcmllcy5kYXRhLnNldEFsbCh0aGlzLmJ1eWVyc0RhdGEpOyAgLy8gQXNzdW1pbmcgeW91IGhhdmUgYnV5ZXJzRGF0YVxyXG4gXHJcbiAgIHJldHVybiBzZXJpZXM7ICAvLyBSZXR1cm4gdGhlIHNlcmllcyBmb3IgbGVnZW5kXHJcbiBcclxuIH1cclxuIG9iakRhdGFUcmFmZmljOmFueT17fTtcclxuICAgIG92ZXJhbGxDYXJkKCkge1xyXG4gICAgICAodGhpcy5vYmpEYXRhVHJhZmZpYy5saW1pdCA9IDEwKSwgKHRoaXMub2JqRGF0YVRyYWZmaWMub2Zmc2V0ID0gMCk7XHJcbiAgICAgICh0aGlzLm9iakRhdGFUcmFmZmljLmNvbnZlcnNpb250eXBlID0gdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSk7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLm5vcm1hbGl6ZWREYXRhO1xyXG4gICAgICBkZWxldGUgdGhpcy5vYmpEYXRhVHJhZmZpYy5yZXZlbnVlO1xyXG4gICAgICBkZWxldGUgdGhpcy5vYmpEYXRhVHJhZmZpYy5ob3VyRm9ybWF0O1xyXG4gICAgICBkZWxldGUgdGhpcy5vYmpEYXRhVHJhZmZpYy5kYXRlUmFuZ2U7XHJcbiAgICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAgIC5nZXRPdmVyYWxsQ2FyZHModGhpcy5vYmpEYXRhVHJhZmZpYylcclxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT09IDIwMCkgeyAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICB0aGlzLmdldE92ZXJhbGxDYXJkRGF0YSA9IHJlcz8uZGF0YTsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7fSxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICBcclxuICAgIGdldCBzZWxlY3RlZEhvdXJCdWNrZXRMYWJlbCgpOiBzdHJpbmcge1xyXG4gICAgICBjb25zdCBvcHQgPSB0aGlzLmhvdXJCdWNrZXRPcHRpb25zPy5maW5kKChvOiBhbnkpID0+IG8udmFsdWUgPT09IHRoaXMuaG91ckJ1Y2tldFZhbHVlKTtcclxuICAgICAgcmV0dXJuIG9wdCA/IG9wdC5sYWJlbCA6IFwiMSBIb3VyXCI7XHJcbiAgICB9XHJcbiAgICBvbkhvdXJCdWNrZXRDaGFuZ2UodmFsdWU6IG51bWJlcik6IHZvaWQge1xyXG4gICAgICBpZiAodGhpcy5ob3VyQnVja2V0VmFsdWUgPT09IHZhbHVlKSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuaG91ckJ1Y2tldFZhbHVlID0gdmFsdWU7XHJcbiAgICAgIC8vIE9ubHkgcmVmZXRjaCB0aGUgaG91cmx5IGhlYXRtYXAuIFBhc3Mgc2tpcExvYWRpbmcgc28gdGhlIHNoYXJlZFxyXG4gICAgICAvLyBjaGFydGxvYWRpbmcgZmxhZyBpc24ndCB0b2dnbGVkLCBvdGhlcndpc2UgdGhlICpuZ0lmIHdyYXBwaW5nIHRoZSB3aG9sZVxyXG4gICAgICAvLyBmb290ZmFsbCBzZWN0aW9uIHVubW91bnRzIHRoZSBjZW50ZXIgY2hhcnQgKCN0ZXN0R3JhcGhpY3MpIGFuZCBpdCBuZXZlclxyXG4gICAgICAvLyByZXBhaW50cyAob25seSB0aGUgaGVhdG1hcCBpcyByZS1yZW5kZXJlZCBvbiBhIGJ1Y2tldCBjaGFuZ2UpLlxyXG4gICAgICB0aGlzLm92ZXJhbGxIb3VybHlDaGFydCh0cnVlKTtcclxuICAgIH1cclxuICAgIG92ZXJhbGxIb3VybHlDaGFydChza2lwTG9hZGluZzogYm9vbGVhbiA9IGZhbHNlKSB7XHJcbiAgICAgIGlmICghc2tpcExvYWRpbmcpIHtcclxuICAgICAgICB0aGlzLmNoYXJ0Tm9EYXRhID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5jaGFydGxvYWRpbmcgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICAgICh0aGlzLm9iakRhdGFUcmFmZmljLmxpbWl0ID0gMTApLCAodGhpcy5vYmpEYXRhVHJhZmZpYy5vZmZzZXQgPSAwKTtcclxuICAgICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMubm9ybWFsaXplZERhdGE7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLnJldmVudWU7XHJcbiAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMuaG91ckZvcm1hdFxyXG4gICAgICBkZWxldGUgdGhpcy5vYmpEYXRhVHJhZmZpYy5kYXRlUmFuZ2U7XHJcbiAgICAgIHRoaXMub2JqRGF0YVRyYWZmaWMuY291bnRyeSA9IHRoaXMuaGVhZGVyRGF0YT8uY291bnRyeS5maWx0ZXIoKGNvdW50cmllczphbnkpID0+IGNvdW50cmllcy5jaGVja2VkKS5tYXAoKGNvdW50cmllczphbnkpID0+IGNvdW50cmllcy5jb3VudHJ5KTtcclxuICAgICAgLy8gaG91ckJ1Y2tldCBpcyBvbmx5IHZhbGlkIGZvciB0aGUgaG91cmx5IGNoYXJ0IEFQSS4gU2VuZCBpdCBvbiBhIGNvcHkgc28gaXRcclxuICAgICAgLy8gbmV2ZXIgbGVha3MgaW50byB0aGUgc2hhcmVkIG9iakRhdGFUcmFmZmljIHVzZWQgYnkgb3ZlcmFsbENoYXJ0X3YzIGV0Yy5cclxuICAgICAgY29uc3QgaG91cmx5UmVxdWVzdERhdGEgPSB7IC4uLnRoaXMub2JqRGF0YVRyYWZmaWMsIGhvdXJCdWNrZXQ6IHRoaXMuaG91ckJ1Y2tldFZhbHVlIH07XHJcbiAgICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAgIC5nZXRPdmVyYWxsSG91cmx5Q2hhcnQoaG91cmx5UmVxdWVzdERhdGEpXHJcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAgID8uc3Vic2NyaWJlKHtcclxuICAgICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgICBpZihyZXM/LmRhdGE/LmhvdXJseURhdGE/Lmxlbmd0aCA+IDApe1xyXG4gICAgICAgICAgICAgICAgaWYgKCFza2lwTG9hZGluZykge1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmNoYXJ0Tm9EYXRhID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuY2hhcnRsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB0aGlzLmdldE92ZXJhbGxIb3VybHlEYXRhID0gcmVzPy5kYXRhPy5ob3VybHlEYXRhO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5pbml0SGVhdENoYXJ0KHNraXBMb2FkaW5nKTtcclxuICAgICAgICAgICAgICB9IGVsc2V7XHJcbiAgICAgICAgICAgICAgICAvLyBPbiBhIGJ1Y2tldCBjaGFuZ2Uga2VlcCB0aGUgc2VjdGlvbiBtb3VudGVkIChkb24ndCBmbGlwIHRoZVxyXG4gICAgICAgICAgICAgICAgLy8gc2hhcmVkIG5vLWRhdGEgZmxhZywgd2hpY2ggd291bGQgdW5tb3VudCB0aGUgY2VudGVyIGNoYXJ0KTtcclxuICAgICAgICAgICAgICAgIC8vIGp1c3QgY2xlYXIgYW5kIHJlcGFpbnQgYW4gZW1wdHkgaGVhdG1hcC5cclxuICAgICAgICAgICAgICAgIGlmICghc2tpcExvYWRpbmcpIHtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5jaGFydE5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuY2hhcnRsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB0aGlzLmdldE92ZXJhbGxIb3VybHlEYXRhPVtdO1xyXG4gICAgICAgICAgICAgICAgaWYgKHNraXBMb2FkaW5nKSB7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuaW5pdEhlYXRDaGFydChza2lwTG9hZGluZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBpZiAoIXNraXBMb2FkaW5nKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNoYXJ0Tm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIHRoaXMuY2hhcnRsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIHRoaXMuZ2V0T3ZlcmFsbEhvdXJseURhdGE9W107XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7fSxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIG92ZXJhbGxDaGFydCgpIHtcclxuICAgICAgdGhpcy5vZmZzZXRUcmFmZmljQ2FyZCA9MDtcclxuICAgICAgdGhpcy5saW1pdFRyYWZmaWNDYXJkID0yMDtcclxuICAgICAgdGhpcy5jaGFydE5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmNoYXJ0bG9hZGluZyA9IHRydWU7XHJcbiAgICAgICh0aGlzLm9iakRhdGFUcmFmZmljLmxpbWl0ID0gMjApLCAodGhpcy5vYmpEYXRhVHJhZmZpYy5vZmZzZXQgPSAwKTtcclxuICAgICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMubm9ybWFsaXplZERhdGE7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLnJldmVudWU7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLmhvdXJGb3JtYXQ7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLmRhdGVSYW5nZTtcclxuICAgICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAgICAgLmdldE92ZXJhbGxDaGFydCh0aGlzLm9iakRhdGFUcmFmZmljKVxyXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxkZWJvdW5jZVRpbWUoMzAwKSlcclxuICAgICAgICA/LnN1YnNjcmliZSh7XHJcbiAgICAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5nZXRPdmVyYWxsQ2hhcnREYXRhID0gcmVzPy5kYXRhO1xyXG4gICAgICAgICAgICAgIHRoaXMudG90YWxJdGVtc1RyYWZmaWNDYXJkID0gcmVzLmRhdGEudG90YWxDb3VudFxyXG4gICAgICAgICAgICAgIHRoaXMuY2hhcnROb0RhdGEgPSBmYWxzZTtcclxuICAgICAgICAgICAgICB0aGlzLmNoYXJ0bG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIHRoaXMuaW5pdENoYXJ0KCk7XHJcbiAgICAgICAgdGhpcy5zZXRQYWdpbmF0aW9uU2l6ZXNUcmFmZmljQ2FyZCgpO1xyXG4gICAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHRoaXMuY2hhcnROb0RhdGEgPSB0cnVlO1xyXG4gICAgICAgICAgICAgIHRoaXMuY2hhcnRsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7fSxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIHNldFBhZ2luYXRpb25TaXplc1RyYWZmaWNDYXJkKCkge1xyXG4gICAgICBpZiAodGhpcy50b3RhbEl0ZW1zVHJhZmZpY0NhcmQgPiAyMCkge1xyXG4gICAgICAgIHRoaXMucGFnaW5hdGlvblNpemVzVHJhZmZpY0NhcmQgPSBbMjBdO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMucGFnaW5hdGlvblNpemVzVHJhZmZpY0NhcmQgPSBbdGhpcy50b3RhbEl0ZW1zVHJhZmZpY0NhcmRdOyAvLyBKdXN0IG9uZSBvcHRpb24gaWYgbGVzcyB0aGFuIDEwXHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5wYWdlU2l6ZVRyYWZmaWNDYXJkID0gdGhpcy5wYWdpbmF0aW9uU2l6ZXNUcmFmZmljQ2FyZFswXTtcclxuICAgIH1cclxuICAgIG9uUGFnZUNoYW5nZVRyYWZmaWNDYXJkKHBhZ2VPZmZzZXQ6IG51bWJlcikge1xyXG4gICAgICB0aGlzLm9mZnNldFRyYWZmaWNDYXJkID0gTnVtYmVyKHBhZ2VPZmZzZXQpO1xyXG4gICAgICB0aGlzLm9iakRhdGFUcmFmZmljLm9mZnNldCA9IHRoaXMub2Zmc2V0VHJhZmZpY0NhcmQgLTE7XHJcbiAgICAgIHRoaXMub2JqRGF0YVRyYWZmaWMubGltaXQgPSB0aGlzLmxpbWl0VHJhZmZpY0NhcmQ7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLm5vcm1hbGl6ZWREYXRhO1xyXG4gICAgICBkZWxldGUgdGhpcy5vYmpEYXRhVHJhZmZpYy5yZXZlbnVlO1xyXG4gICAgICBkZWxldGUgdGhpcy5vYmpEYXRhVHJhZmZpYy5ob3VyRm9ybWF0O1xyXG4gICAgICBkZWxldGUgdGhpcy5vYmpEYXRhVHJhZmZpYy5kYXRlUmFuZ2U7XHJcbiAgICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAuZ2V0T3ZlcmFsbENoYXJ0KHRoaXMub2JqRGF0YVRyYWZmaWMpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxkZWJvdW5jZVRpbWUoMzAwKSlcclxuICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZ2V0T3ZlcmFsbENoYXJ0RGF0YSA9IHJlcz8uZGF0YTtcclxuICAgICAgICAgICAgdGhpcy50b3RhbEl0ZW1zVHJhZmZpY0NhcmQgPSByZXMuZGF0YS50b3RhbENvdW50XHJcbiAgICAgICAgICAgIHRoaXMuY2hhcnROb0RhdGEgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5jaGFydGxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5pbml0Q2hhcnQoKTtcclxuICAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmNoYXJ0Tm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5jaGFydGxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgY29tcGxldGU6ICgpID0+IHt9LFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICBcclxuICAgIG9uUGFnZVNpemVDaGFuZ2VUcmFmZmljQ2FyZChwYWdlU2l6ZTogbnVtYmVyKSB7XHJcbiAgICAgIHRoaXMucGFnZVNpemVUcmFmZmljQ2FyZCA9IE51bWJlcihwYWdlU2l6ZSk7XHJcbiAgICAgIHRoaXMubGltaXRUcmFmZmljQ2FyZCA9IE51bWJlcihwYWdlU2l6ZSk7XHJcbiAgICAgIHRoaXMuY3VycmVudFBhZ2VUcmFmZmljQ2FyZCA9IDE7XHJcbiAgICAgIHRoaXMub2Zmc2V0VHJhZmZpY0NhcmQgPSAwO1xyXG4gICAgICB0aGlzLm9iakRhdGFUcmFmZmljLm9mZnNldCA9IHRoaXMub2Zmc2V0VHJhZmZpY0NhcmQ7XHJcbiAgICAgIHRoaXMub2JqRGF0YVRyYWZmaWMubGltaXQgPSB0aGlzLmxpbWl0VHJhZmZpY0NhcmQ7XHJcbiAgICAgIHRoaXMub3ZlcmFsbENoYXJ0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgdHJhZmZpY0hlYXRDaGFydCgpIHtcclxuICAgICAgdGhpcy5jaGFydE5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmNoYXJ0bG9hZGluZyA9IGZhbHNlO1xyXG4gICAgXHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGNoYXJ0RGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJ0cmFmZmljSGVhdG1hcENoYXJ0XCIpO1xyXG4gICAgICAgIGlmICghY2hhcnREaXYpIHtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAvLyBEaXNwb3NlIG9mIHRoZSBwcmV2aW91cyBjaGFydCBpbnN0YW5jZSBpZiBpdCBleGlzdHNcclxuICAgICAgICBpZiAodGhpcy5oZWF0TWFwUm9vdCkge1xyXG4gICAgICAgICAgdGhpcy5oZWF0TWFwUm9vdC5kaXNwb3NlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgLy8gSW5pdGlhbGl6ZSB0aGUgY2hhcnQgcm9vdFxyXG4gICAgICAgIHRoaXMuaGVhdE1hcFJvb3QgPSBhbTUuUm9vdC5uZXcoXCJ0cmFmZmljSGVhdG1hcENoYXJ0XCIpO1xyXG4gICAgICAgIHRoaXMuaGVhdE1hcFJvb3QuY29udGFpbmVyLnNldEFsbCh7XHJcbiAgICAgICAgICB3aWR0aDogYW01LnBlcmNlbnQoMTAwKSxcclxuICAgICAgICB9KTtcclxuICAgIFxyXG4gICAgICAgIC8vIEFwcGx5IHRoZW1lc1xyXG4gICAgICAgIHRoaXMuaGVhdE1hcFJvb3Quc2V0VGhlbWVzKFtcclxuICAgICAgICAgIGFtNXRoZW1lc19BbmltYXRlZC5uZXcodGhpcy5oZWF0TWFwUm9vdCksXHJcbiAgICAgICAgICBhbTV0aGVtZXNfUmVzcG9uc2l2ZS5uZXcodGhpcy5oZWF0TWFwUm9vdCksXHJcbiAgICAgICAgXSk7XHJcbiAgICBcclxuICAgICAgICAvLyBDcmVhdGUgdGhlIGNoYXJ0XHJcbiAgICAgICAgdGhpcy5oZWF0TWFwQ2hhcnQgPSB0aGlzLmhlYXRNYXBSb290LmNvbnRhaW5lci5jaGlsZHJlbi5wdXNoKFxyXG4gICAgICAgICAgYW01eHkuWFlDaGFydC5uZXcodGhpcy5oZWF0TWFwUm9vdCwge1xyXG4gICAgICAgICAgICBwYW5YOiBmYWxzZSxcclxuICAgICAgICAgICAgcGFuWTogZmFsc2UsXHJcbiAgICAgICAgICAgIHdoZWVsWDogXCJub25lXCIsXHJcbiAgICAgICAgICAgIHdoZWVsWTogXCJub25lXCIsXHJcbiAgICAgICAgICAgIHBhZGRpbmdMZWZ0OiAwLFxyXG4gICAgICAgICAgICBsYXlvdXQ6IHRoaXMuaGVhdE1hcFJvb3QudmVydGljYWxMYXlvdXQsXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICBcclxuICAgICAgICAvLyBDcmVhdGUgWS1heGlzXHJcbiAgICAgICAgY29uc3QgeVJlbmRlcmVyID0gYW01eHkuQXhpc1JlbmRlcmVyWS5uZXcodGhpcy5oZWF0TWFwUm9vdCwge1xyXG4gICAgICAgICAgdmlzaWJsZTogZmFsc2UsXHJcbiAgICAgICAgICBtaW5HcmlkRGlzdGFuY2U6IDMwLFxyXG4gICAgICAgICAgaW52ZXJzZWQ6IHRydWUsXHJcbiAgICAgICAgICBtaW5vckdyaWRFbmFibGVkOiB0cnVlLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHlSZW5kZXJlci5ncmlkLnRlbXBsYXRlLnNldChcInZpc2libGVcIiwgZmFsc2UpO1xyXG4gICAgXHJcbiAgICAgICAgY29uc3QgeUF4aXMgPSB0aGlzLmhlYXRNYXBDaGFydC55QXhlcy5wdXNoKFxyXG4gICAgICAgICAgYW01eHkuQ2F0ZWdvcnlBeGlzLm5ldyh0aGlzLmhlYXRNYXBSb290LCB7XHJcbiAgICAgICAgICAgIG1heERldmlhdGlvbjogMCxcclxuICAgICAgICAgICAgcmVuZGVyZXI6IHlSZW5kZXJlcixcclxuICAgICAgICAgICAgY2F0ZWdvcnlGaWVsZDogXCJob3VyXCIsXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICBcclxuICAgICAgICAvLyBDcmVhdGUgWC1heGlzXHJcbiAgICAgICAgY29uc3QgeFJlbmRlcmVyID0gYW01eHkuQXhpc1JlbmRlcmVyWC5uZXcodGhpcy5oZWF0TWFwUm9vdCwge1xyXG4gICAgICAgICAgdmlzaWJsZTogZmFsc2UsXHJcbiAgICAgICAgICBtaW5HcmlkRGlzdGFuY2U6IDMwLFxyXG4gICAgICAgICAgbWlub3JHcmlkRW5hYmxlZDogdHJ1ZSxcclxuICAgICAgICB9KTtcclxuICAgICAgICB4UmVuZGVyZXIuZ3JpZC50ZW1wbGF0ZS5zZXQoXCJ2aXNpYmxlXCIsIGZhbHNlKTtcclxuICAgIFxyXG4gICAgICAgIGNvbnN0IHhBeGlzID0gdGhpcy5oZWF0TWFwQ2hhcnQueEF4ZXMucHVzaChcclxuICAgICAgICAgIGFtNXh5LkNhdGVnb3J5QXhpcy5uZXcodGhpcy5oZWF0TWFwUm9vdCwge1xyXG4gICAgICAgICAgICByZW5kZXJlcjogeFJlbmRlcmVyLFxyXG4gICAgICAgICAgICBjYXRlZ29yeUZpZWxkOiBcIndlZWtkYXlcIixcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgIFxyXG4gICAgICAgIC8vIEFkZCBZLWF4aXMgbGFiZWxcclxuICAgICAgICB5QXhpcy5jaGlsZHJlbi51bnNoaWZ0KFxyXG4gICAgICAgICAgYW01LkxhYmVsLm5ldyh0aGlzLmhlYXRNYXBSb290LCB7XHJcbiAgICAgICAgICAgIHJvdGF0aW9uOiAtOTAsXHJcbiAgICAgICAgICAgIHRleHQ6IFwiSG91cnNcIixcclxuICAgICAgICAgICAgeTogYW01LnA1MCxcclxuICAgICAgICAgICAgY2VudGVyWDogYW01LnA1MCxcclxuICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbFwiLFxyXG4gICAgICAgICAgICBmb250U2l6ZTogXCIxNHB4XCIsXHJcbiAgICAgICAgICAgIGZpbGw6IGFtNS5jb2xvcigweDAwMDAwMCksXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICBcclxuICAgICAgICAvLyBDcmVhdGUgc2VyaWVzXHJcbiAgICAgICAgdGhpcy5oZWF0TWFwU2VyaWVzID0gdGhpcy5oZWF0TWFwQ2hhcnQuc2VyaWVzLnB1c2goXHJcbiAgICAgICAgICBhbTV4eS5Db2x1bW5TZXJpZXMubmV3KHRoaXMuaGVhdE1hcFJvb3QsIHtcclxuICAgICAgICAgICAgY2FsY3VsYXRlQWdncmVnYXRlczogdHJ1ZSxcclxuICAgICAgICAgICAgc3Ryb2tlOiBhbTUuY29sb3IoMHhmZmZmZmYpLFxyXG4gICAgICAgICAgICBjbHVzdGVyZWQ6IGZhbHNlLFxyXG4gICAgICAgICAgICB4QXhpczogeEF4aXMsXHJcbiAgICAgICAgICAgIHlBeGlzOiB5QXhpcyxcclxuICAgICAgICAgICAgY2F0ZWdvcnlYRmllbGQ6IFwid2Vla2RheVwiLFxyXG4gICAgICAgICAgICBjYXRlZ29yeVlGaWVsZDogXCJob3VyXCIsXHJcbiAgICAgICAgICAgIHZhbHVlRmllbGQ6IFwidmFsdWVcIixcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgICAgICBcclxuICAgICAgICAvLyBDb25maWd1cmUgY29sdW1uIGFwcGVhcmFuY2VcclxuICAgICAgICB0aGlzLmhlYXRNYXBTZXJpZXMuY29sdW1ucy50ZW1wbGF0ZS5zZXRBbGwoe1xyXG4gICAgICAgICAgdG9vbHRpcFRleHQ6IFwie3ZhbHVlfVwiLFxyXG4gICAgICAgICAgc3Ryb2tlT3BhY2l0eTogMSxcclxuICAgICAgICAgIHN0cm9rZVdpZHRoOiAyLFxyXG4gICAgICAgICAgd2lkdGg6IGFtNS5wZXJjZW50KDEwMCksXHJcbiAgICAgICAgICBoZWlnaHQ6IGFtNS5wZXJjZW50KDEwMCksXHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMuaGVhdE1hcFNlcmllcy5jb2x1bW5zLnRlbXBsYXRlLmFkYXB0ZXJzLmFkZChcImZpbGxcIiwgKGZpbGwsIHRhcmdldCkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgZGF0YUl0ZW0gPSB0YXJnZXQuZGF0YUl0ZW0/LmRhdGFDb250ZXh0IGFzIHsgdmFsdWU6IG51bWJlciB9O1xyXG4gICAgICAgICAgcmV0dXJuIGRhdGFJdGVtICYmIGRhdGFJdGVtLnZhbHVlICE9PSB1bmRlZmluZWQgPyB0aGlzLmdldFJhbmdlQ29sb3JEeW5hbWljKGRhdGFJdGVtLnZhbHVlKSA6IGZpbGw7XHJcbiAgICAgICAgfSk7XHJcbiAgICBcclxuICAgICAgICAvLyBTZXQgY29sdW1uIGNvbG9yIGJhc2VkIG9uIHZhbHVlXHJcbiAgICAgICAgICAgIC8vIHRoaXMuaGVhdE1hcFNlcmllcy5jb2x1bW5zLnRlbXBsYXRlLmFkYXB0ZXJzLmFkZChcImZpbGxcIiwgKGZpbGwsIHRhcmdldCkgPT4ge1xyXG4gICAgICAgICAgICAvLyAgIGNvbnN0IGRhdGFJdGVtID0gdGFyZ2V0LmRhdGFJdGVtPy5kYXRhQ29udGV4dCBhcyB7IHZhbHVlOiBudW1iZXIgfTtcclxuICAgICAgICAgICAgLy8gICByZXR1cm4gZGF0YUl0ZW0gJiYgZGF0YUl0ZW0udmFsdWUgIT09IHVuZGVmaW5lZCA/IHRoaXMuZ2V0UmFuZ2VDb2xvcjEoZGF0YUl0ZW0udmFsdWUpIDogZmlsbDtcclxuICAgICAgICAgICAgLy8gfSk7XHJcbiAgICAgICAgXHJcbiAgICBcclxuICAgICAgICAvLyBBZGQgYnVsbGV0IGZvciB2YWx1ZSBsYWJlbHNcclxuICAgICAgICB0aGlzLmhlYXRNYXBTZXJpZXMuYnVsbGV0cy5wdXNoKCgpID0+IHtcclxuICAgICAgICAgIHJldHVybiBhbTUuQnVsbGV0Lm5ldyh0aGlzLmhlYXRNYXBSb290LCB7XHJcbiAgICAgICAgICAgIHNwcml0ZTogYW01LkxhYmVsLm5ldyh0aGlzLmhlYXRNYXBSb290LCB7XHJcbiAgICAgICAgICAgICAgdGV4dDogXCJ7dmFsdWV9XCIsXHJcbiAgICAgICAgICAgICAgZmlsbDogYW01LmNvbG9yKDB4MDAwMDAwKSxcclxuICAgICAgICAgICAgICBjZW50ZXJZOiBhbTUucDUwLFxyXG4gICAgICAgICAgICAgIGNlbnRlclg6IGFtNS5wNTAsXHJcbiAgICAgICAgICAgICAgcG9wdWxhdGVUZXh0OiB0cnVlLFxyXG4gICAgICAgICAgICAgIGZvbnRTaXplOiAxMixcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9KTtcclxuICAgIFxyXG4gICAgICAgIC8vIFByZXBhcmUgYW5kIHNvcnQgZGF0YSBmb3IgdGhlIGNoYXJ0XHJcbiAgICAgICAgY29uc3QgaGVhdE1hcERhdGE6IGFueVtdID0gW107XHJcbiAgICAgICAgaWYgKHRoaXMuZ2V0Rm9vdGZhbGxEZW5zaXR5RHdlbGxEYXRhICYmIHRoaXMuZ2V0Rm9vdGZhbGxEZW5zaXR5RHdlbGxEYXRhLnRyYWZmaWNEZW5zaXR5KSB7XHJcbiAgICAgICAgICBPYmplY3Qua2V5cyh0aGlzLmdldEZvb3RmYWxsRGVuc2l0eUR3ZWxsRGF0YS50cmFmZmljRGVuc2l0eSkuZm9yRWFjaChob3VyID0+IHtcclxuICAgICAgICAgICAgdGhpcy5nZXRGb290ZmFsbERlbnNpdHlEd2VsbERhdGEudHJhZmZpY0RlbnNpdHlbaG91cl0uZm9yRWFjaCgoZGF5RGF0YTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgaGVhdE1hcERhdGEucHVzaCh7XHJcbiAgICAgICAgICAgICAgICBob3VyOiBkYXlEYXRhLnRpbWUsXHJcbiAgICAgICAgICAgICAgICB3ZWVrZGF5OiBkYXlEYXRhLmRheSxcclxuICAgICAgICAgICAgICAgIHZhbHVlOiBwYXJzZUludChkYXlEYXRhLmZvb3RmYWxsQ291bnQsIDEwKSwgLy8gRW5zdXJlIGludGVnZXIgcGFyc2luZ1xyXG4gICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBjb25zb2xlLmVycm9yKFwiVHJhZmZpYyBkZW5zaXR5IGRhdGEgaXMgdW5kZWZpbmVkIG9yIG51bGwuXCIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAvLyBTZXQgZGF0YSB0byB0aGUgc2VyaWVzXHJcbiAgICAgICAgdGhpcy5oZWF0TWFwU2VyaWVzLmRhdGEuc2V0QWxsKGhlYXRNYXBEYXRhKTtcclxuXHJcbiAgICAgICAgY29uc3QgdmlzaWJsZVZhbHVlcyA9IHRoaXMuaGVhdE1hcFNlcmllcy5kYXRhLnZhbHVlcy5tYXAoKGQ6YW55KSA9PiBkLnZhbHVlKTtcclxuXHJcbiAgICAgICAgdGhpcy5tYXhGb290ZmFsbCA9IE1hdGgubWF4KC4uLnZpc2libGVWYWx1ZXMpO1xyXG4gICAgICAgIHRoaXMubWluRm9vdGZhbGwgPSBNYXRoLm1pbiguLi52aXNpYmxlVmFsdWVzKTtcclxuXHJcbiAgICAgICAgLy8gRXh0cmFjdCB1bmlxdWUgd2Vla2RheXMgYW5kIGhvdXJzLCBzb3J0ZWRcclxuICAgICAgICBjb25zdCB3ZWVrZGF5czogc3RyaW5nW10gPSBBcnJheS5mcm9tKG5ldyBTZXQoaGVhdE1hcERhdGEubWFwKHJvdyA9PiByb3cud2Vla2RheSkpKTtcclxuICAgICAgICBjb25zdCBob3Vyczogc3RyaW5nW10gPSBBcnJheS5mcm9tKG5ldyBTZXQoaGVhdE1hcERhdGEubWFwKHJvdyA9PiByb3cuaG91cikpKVxyXG4gICAgICAgICAgLnNvcnQoKGEsIGIpID0+IGEubG9jYWxlQ29tcGFyZShiKSk7XHJcbiAgICBcclxuICAgICAgICAvLyBTZXQgYXhpcyBkYXRhXHJcbiAgICAgICAgeEF4aXMuZGF0YS5zZXRBbGwoXHJcbiAgICAgICAgICB3ZWVrZGF5cy5tYXAoaXRlbSA9PiAoeyB3ZWVrZGF5OiBpdGVtIH0pKVxyXG4gICAgICAgICk7XHJcbiAgICBcclxuICAgICAgICB5QXhpcy5kYXRhLnNldEFsbChcclxuICAgICAgICAgIGhvdXJzLm1hcChpdGVtID0+ICh7IGhvdXI6IGl0ZW0gfSkpXHJcbiAgICAgICAgKTtcclxuICAgIFxyXG4gICAgICAgIC8vIEZpbmFsaXplIGNoYXJ0IGFwcGVhcmFuY2VcclxuICAgICAgICB0aGlzLmhlYXRNYXBDaGFydC5hcHBlYXIoMTAwMCwgMTAwKTtcclxuICAgIFxyXG4gICAgICAgIC8vIEVuc3VyZSB0aGUgcm9vdCBpcyBhc3NpZ25lZCBjb3JyZWN0bHlcclxuICAgICAgICB0aGlzLmhlYXRNYXBSb290ID0gdGhpcy5oZWF0TWFwUm9vdDtcclxuICAgIFxyXG4gICAgICB9LCAwKTtcclxuICB9XHJcbiAgXHJcblxyXG4gIGdldFJhbmdlQ29sb3JEeW5hbWljKGZvb3RmYWxsQ291bnQ6IG51bWJlcik6IGFtNS5Db2xvciB7XHJcbiAgICBsZXQgbWluRm9vdGZhbGwgPSB0aGlzLm1pbkZvb3RmYWxsID8/IDA7XHJcbiAgICBsZXQgbWF4Rm9vdGZhbGwgPSB0aGlzLm1heEZvb3RmYWxsID8/IDE7XHJcbiAgXHJcbiAgICBpZiAobWF4Rm9vdGZhbGwgPT09IG1pbkZvb3RmYWxsKSByZXR1cm4gYW01LmNvbG9yKDB4MDA4ZWRmKTsgLy8gUHJldmVudCBkaXZpc2lvbiBieSB6ZXJvXHJcbiAgICBjb25zdCBub3JtYWxpemVkVmFsdWUgPSAoZm9vdGZhbGxDb3VudCAtIG1pbkZvb3RmYWxsKSAvIChtYXhGb290ZmFsbCAtIG1pbkZvb3RmYWxsKTtcclxuICAgIGNvbnN0IGNsYW1wZWRWYWx1ZSA9IE1hdGgubWluKE1hdGgubWF4KG5vcm1hbGl6ZWRWYWx1ZSwgMCksIDAuNSk7XHJcbiAgICBjb25zdCBhZGp1c3RlZFZhbHVlID0gTWF0aC5wb3coY2xhbXBlZFZhbHVlLCAwLjUpOyAgLy8gSW5jcmVhc2UgcG93ZXIgdG8gZGFya2VuIGZhc3RlclxyXG4gICAgY29uc3QgYmFzZUNvbG9yID0gYW01LmNvbG9yKDB4MDA4ZWRmKTsgIC8vIFN0YXJ0aW5nIGNvbG9yIChsaWdodCBibHVlKVxyXG4gICAgY29uc3QgYWRqdXN0ZWRDb2xvciA9IGFtNS5Db2xvci5saWdodGVuKGJhc2VDb2xvciwgMSAtIGFkanVzdGVkVmFsdWUpO1xyXG4gICAgcmV0dXJuIGFkanVzdGVkQ29sb3I7XHJcbiAgfVxyXG5cclxuXHJcbiAgICBnZXRSYW5nZUNvbG9yMShmb290ZmFsbENvdW50OiBudW1iZXIpOiBhbTUuQ29sb3Ige1xyXG4gICAgICBsZXQgbWF4Rm9vdGZhbGw6YW55O1xyXG4gICAgICBjb25zdCBtaW5Gb290ZmFsbCA9IDA7ICAvLyBtaW5pbXVtIGV4cGVjdGVkIGZvb3RmYWxsXHJcbiAgICAgIGlmKHRoaXMub2JqRGF0YVRyYWZmaWMuZGF0ZVJhbmdlID0zMClcclxuICAgICAgbWF4Rm9vdGZhbGwgPSAzNTAwO1xyXG4gICAgZWxzZSBcclxuICAgIG1heEZvb3RmYWxsID0gNzUwO1xyXG4gICAgICBjb25zdCBub3JtYWxpemVkVmFsdWUgPSAoZm9vdGZhbGxDb3VudCAtIG1pbkZvb3RmYWxsKSAvIChtYXhGb290ZmFsbCAtIG1pbkZvb3RmYWxsKTtcclxuICAgICAgY29uc3QgY2xhbXBlZFZhbHVlID0gTWF0aC5taW4oTWF0aC5tYXgobm9ybWFsaXplZFZhbHVlLCAwKSwgMC41KTtcclxuICAgICAgY29uc3QgYWRqdXN0ZWRWYWx1ZSA9IE1hdGgucG93KGNsYW1wZWRWYWx1ZSwgMC41KTsgIC8vIEluY3JlYXNlIHBvd2VyIHRvIGRhcmtlbiBmYXN0ZXJcclxuICAgICAgY29uc3QgYmFzZUNvbG9yID0gYW01LmNvbG9yKDB4MDA4ZWRmKTsgIC8vIFN0YXJ0aW5nIGNvbG9yIChsaWdodCBibHVlKVxyXG4gICAgICBjb25zdCBhZGp1c3RlZENvbG9yID0gYW01LkNvbG9yLmxpZ2h0ZW4oYmFzZUNvbG9yLCAxIC0gYWRqdXN0ZWRWYWx1ZSk7XHJcbiAgICAgIHJldHVybiBhZGp1c3RlZENvbG9yO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBcclxuICAgICAgZ2V0RHdlbGxDaGFydCgpIHtcclxuICAgICAgICB0aGlzLmNoYXJ0RHdlbGxOb0RhdGEgPSBmYWxzZTtcclxuICAgICAgdGhpcy5jaGFydER3ZWxsbG9hZGluZyA9IHRydWU7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBjaGFydERpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiZHdlbGxCYXJDaGFydFwiKTtcclxuICAgICAgICAgIGlmICghY2hhcnREaXYpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHRoaXMuZHdlbGxSb290KSB7XHJcbiAgICAgICAgICAgIHRoaXMuZHdlbGxSb290LmRpc3Bvc2UoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC8vIENyZWF0ZSByb290IGVsZW1lbnRcclxuICAgICAgICAgIHRoaXMuZHdlbGxSb290ID0gYW01LlJvb3QubmV3KFwiZHdlbGxCYXJDaGFydFwiKTtcclxuICAgIFxyXG4gICAgICAgICAgLy8gU2V0IHRoZW1lc1xyXG4gICAgICAgICAgdGhpcy5kd2VsbFJvb3Quc2V0VGhlbWVzKFthbTV0aGVtZXNfQW5pbWF0ZWQubmV3KHRoaXMuZHdlbGxSb290KV0pO1xyXG4gICAgXHJcbiAgICAgICAgICAvLyBDcmVhdGUgY2hhcnRcclxuICAgICAgICAgIHRoaXMuZHdlbGxDaGFydCA9IHRoaXMuZHdlbGxSb290LmNvbnRhaW5lci5jaGlsZHJlbi5wdXNoKFxyXG4gICAgICAgICAgICBhbTV4eS5YWUNoYXJ0Lm5ldyh0aGlzLmR3ZWxsUm9vdCwge1xyXG4gICAgICAgICAgICAgIHBhblg6IGZhbHNlLFxyXG4gICAgICAgICAgICAgIHBhblk6IGZhbHNlLFxyXG4gICAgICAgICAgICAgIHdoZWVsWDogXCJwYW5YXCIsXHJcbiAgICAgICAgICAgICAgd2hlZWxZOiBcInpvb21YXCIsXHJcbiAgICAgICAgICAgICAgcGFkZGluZ0xlZnQ6IDAsXHJcbiAgICAgICAgICAgICAgbGF5b3V0OiB0aGlzLmR3ZWxsUm9vdC52ZXJ0aWNhbExheW91dCxcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICk7XHJcbiAgICBcclxuICAgICAgICAgbGV0IGRhdGEgPSB0aGlzLmdldERlbnNpdHlEd2VsbERhdGEuZHdlbGxUaW1lU3BsaXQ/Lm1hcChcclxuICAgICAgICAgICAgKGl0ZW06IGFueSkgPT4gKHtcclxuICAgICAgICAgICAgICB5ZWFyOiAoaXRlbS5kd2VsbF90aW1lKSArIFwiIE1pbnNcIixcclxuICAgICAgICAgICAgICBtYWxlQ291bnQ6IE51bWJlcihpdGVtLm1hbGVDb3VudF92YWx1ZSksXHJcbiAgICAgICAgICAgICAgbWFsZUN1c3RvbTogTnVtYmVyKGl0ZW0ubWFsZUNvdW50KSxcclxuICAgICAgICAgICAgICBmZW1hbGVDb3VudDogTnVtYmVyKGl0ZW0uZmVtYWxlQ291bnRfdmFsdWUpLFxyXG4gICAgICAgICAgICAgIGZlbWFsZUN1c3RvbTogTnVtYmVyKGl0ZW0uZmVtYWxlQ291bnQpXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgIFxyXG4gICAgICAgICAgLy8gQ3JlYXRlIGF4ZXNcclxuICAgICAgICAgIGxldCB4UmVuZGVyZXIgPSBhbTV4eS5BeGlzUmVuZGVyZXJYLm5ldyh0aGlzLmR3ZWxsUm9vdCwge1xyXG4gICAgICAgICAgICBtaW5HcmlkRGlzdGFuY2U6IDMwLFxyXG4gICAgICAgICAgICBtaW5vckdyaWRFbmFibGVkOiB0cnVlLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICBsZXQgeEF4aXMgPSB0aGlzLmR3ZWxsQ2hhcnQueEF4ZXMucHVzaChcclxuICAgICAgICAgICAgYW01eHkuQ2F0ZWdvcnlBeGlzLm5ldyh0aGlzLmR3ZWxsUm9vdCwge1xyXG4gICAgICAgICAgICAgIGNhdGVnb3J5RmllbGQ6IFwieWVhclwiLFxyXG4gICAgICAgICAgICAgIHJlbmRlcmVyOiB4UmVuZGVyZXIsXHJcbiAgICAgICAgICAgICAgdG9vbHRpcDogYW01LlRvb2x0aXAubmV3KHRoaXMuZHdlbGxSb290LCB7fSksXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICApO1xyXG4gICAgXHJcbiAgICAgICAgICB4UmVuZGVyZXIuZ3JpZC50ZW1wbGF0ZS5zZXRBbGwoe1xyXG4gICAgICAgICAgICBsb2NhdGlvbjogMSxcclxuICAgICAgICAgIH0pO1xyXG4gICAgXHJcbiAgICAgICAgICB4QXhpcy5kYXRhPy5zZXRBbGwoZGF0YSk7XHJcbiAgICBcclxuICAgICAgICAgIGxldCB5QXhpcyA9IHRoaXMuZHdlbGxDaGFydC55QXhlcy5wdXNoKFxyXG4gICAgICAgICAgICBhbTV4eS5WYWx1ZUF4aXMubmV3KHRoaXMuZHdlbGxSb290LCB7XHJcbiAgICAgICAgICAgICAgbWluOiAwLFxyXG4gICAgICAgICAgICAgIHJlbmRlcmVyOiBhbTV4eS5BeGlzUmVuZGVyZXJZLm5ldyh0aGlzLmR3ZWxsUm9vdCwge1xyXG4gICAgICAgICAgICAgICAgc3Ryb2tlT3BhY2l0eTogMC4xLFxyXG4gICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgKTtcclxuICAgIFxyXG4gICAgICAgICAgLy8gQWRkIGxlZ2VuZFxyXG4gICAgICAgICAgbGV0IGxlZ2VuZCA9IHRoaXMuZHdlbGxDaGFydC5jaGlsZHJlbi5wdXNoKFxyXG4gICAgICAgICAgICBhbTUuTGVnZW5kLm5ldyh0aGlzLmR3ZWxsUm9vdCwge1xyXG4gICAgICAgICAgICAgIGNlbnRlclg6IGFtNS5wNTAsXHJcbiAgICAgICAgICAgICAgeDogYW01LnA1MCxcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICk7XHJcbiAgICBcclxuICAgICAgICAgIC8vIEFkZCBzZXJpZXNcclxuICAgICAgICAgIC8vIGNvbnN0IFxyXG4gICAgICAgICBcclxuICAgICAgICAgIHRoaXMubWFrZVNlcmllczEoXCJNYWxlXCIsIFwibWFsZUNvdW50XCIsIHhBeGlzLCB5QXhpcywgZGF0YSwgbGVnZW5kKTtcclxuICAgICAgICAgIHRoaXMubWFrZVNlcmllczEoXCJGZW1hbGVcIiwgXCJmZW1hbGVDb3VudFwiLCB4QXhpcywgeUF4aXMsIGRhdGEsIGxlZ2VuZCk7XHJcbiAgICAgICAgICAvLyBNYWtlIHN0dWZmIGFuaW1hdGUgb24gbG9hZFxyXG4gICAgICAgICAgdGhpcy5kd2VsbENoYXJ0LmFwcGVhcigxMDAwLCAxMDApO1xyXG4gICAgICAgIH0sIDEwMCk7XHJcbiAgICAgIH1cclxuICAgICAgbWFrZVNlcmllczEobmFtZTogc3RyaW5nLCBmaWVsZE5hbWU6IHN0cmluZywgeEF4aXM6IGFueSwgeUF4aXM6IGFueSwgZGF0YTogYW55LCBsZWdlbmQ6IGFueSkge1xyXG4gICAgICAgIGxldCBzZXJpZXMgPSB0aGlzLmR3ZWxsQ2hhcnQuc2VyaWVzLnB1c2goXHJcbiAgICAgICAgICBhbTV4eS5Db2x1bW5TZXJpZXMubmV3KHRoaXMuZHdlbGxSb290LCB7XHJcbiAgICAgICAgICAgIG5hbWU6IG5hbWUsXHJcbiAgICAgICAgICAgIHN0YWNrZWQ6IHRydWUsXHJcbiAgICAgICAgICAgIHhBeGlzOiB4QXhpcyxcclxuICAgICAgICAgICAgeUF4aXM6IHlBeGlzLFxyXG4gICAgICAgICAgICB2YWx1ZVlGaWVsZDogZmllbGROYW1lLFxyXG4gICAgICAgICAgICBjYXRlZ29yeVhGaWVsZDogXCJ5ZWFyXCIsXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICAgIFxyXG4gICAgICAgIHNlcmllcy5jb2x1bW5zLnRlbXBsYXRlLnNldEFsbCh7XHJcbiAgICAgICAgICB0b29sdGlwVGV4dDogYFtib2xkXXtuYW1lfVsvXVxcbntjYXRlZ29yeVh9LFxcbkZvb3RmYWxsICU6IHtjdXN0b21WYWx1ZX0lYCxcclxuICAgICAgICAgIHRvb2x0aXBZOiBhbTUucGVyY2VudCgxMCksXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIFxyXG4gICAgICAgIGlmIChkYXRhPy5sZW5ndGgpIHtcclxuICAgICAgICAgIGNvbnN0IGVuaGFuY2VkRGF0YSA9IGRhdGEubWFwKChkOiBhbnkpID0+ICh7XHJcbiAgICAgICAgICAgIC4uLmQsXHJcbiAgICAgICAgICAgIGN1c3RvbVZhbHVlOiBkW2ZpZWxkTmFtZSA9PT0gXCJtYWxlQ291bnRcIiA/IFwibWFsZUN1c3RvbVwiIDogXCJmZW1hbGVDdXN0b21cIl1cclxuICAgICAgICAgIH0pKTtcclxuICAgICAgICAgIHNlcmllcy5kYXRhLnNldEFsbChlbmhhbmNlZERhdGEpO1xyXG4gICAgICAgIH1cclxuICAgICAgXHJcbiAgICAgICAgc2VyaWVzLmJ1bGxldHMucHVzaCgoKSA9PiB7XHJcbiAgICAgICAgICBsZXQgbGFiZWwgPSBhbTUuTGFiZWwubmV3KHRoaXMuZHdlbGxSb290LCB7XHJcbiAgICAgICAgICAgIHRleHQ6IFwie3ZhbHVlWX1cIixcclxuICAgICAgICAgICAgZmlsbDogdGhpcy5kd2VsbFJvb3QuaW50ZXJmYWNlQ29sb3JzLmdldChcImFsdGVybmF0aXZlVGV4dFwiKSxcclxuICAgICAgICAgICAgY2VudGVyWTogYW01LnA1MCxcclxuICAgICAgICAgICAgY2VudGVyWDogYW01LnA1MCxcclxuICAgICAgICAgICAgcG9wdWxhdGVUZXh0OiB0cnVlLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgIFxyXG4gICAgICAgICAgbGFiZWwuYWRhcHRlcnMuYWRkKFwidmlzaWJsZVwiLCAodmlzaWJsZSwgdGFyZ2V0KSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gKHRhcmdldC5kYXRhSXRlbT8uZGF0YUNvbnRleHQgYXMgYW55KT8uW2ZpZWxkTmFtZV07XHJcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZSAhPT0gMDtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICBcclxuICAgICAgICAgIHJldHVybiBhbTUuQnVsbGV0Lm5ldyh0aGlzLmR3ZWxsUm9vdCwge1xyXG4gICAgICAgICAgICBzcHJpdGU6IGxhYmVsLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIFxyXG4gICAgICAgIGlmIChsZWdlbmQpIHtcclxuICAgICAgICAgIGxlZ2VuZC5kYXRhLnB1c2goc2VyaWVzKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIFxyXG4gICAgICBcclxuICAgICAgc3RvcmVOYW1lOmFueTtcclxuICAgICAgc3RvcmVJZDphbnk7XHJcbiAgICAgIGZvcm1hdERhdGUoZGF0ZVN0cmluZzogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5kYXlqcyhkYXRlU3RyaW5nKS5mb3JtYXQoJ0REIE1NTScpOyAgLy8gT3V0cHV0OiAnMDEgSmFuJ1xyXG4gICAgICB9XHJcbiAgICAgICAgaGFuZGxlQmFyQ2xpY2soZGF0YUl0ZW06IGFueSk6IHZvaWQge1xyXG4gICAgICAgICAgdGhpcy5zdG9yZU5hbWUgPSBkYXRhSXRlbS5mdWxsU3RvcmVOYW1lO1xyXG4gICAgICAgICAgdGhpcy5zdG9yZUlkID0gZGF0YUl0ZW0uc3RvcmVJZFxyXG4gICAgICAgICAgdGhpcy5vYmpEYXRhVHJhZmZpYy5zdG9yZUlkID1bZGF0YUl0ZW0uc3RvcmVJZF0sXHJcbiAgICAgICAgICB0aGlzLm9iakRhdGFUcmFmZmljLmxpbWl0ID0zMSxcclxuICAgICAgICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAgICAgICAuZ2V0U2luZ2xlU3RvcmVDaGFydCh0aGlzLm9iakRhdGFUcmFmZmljKVxyXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgICAgICAgID8uc3Vic2NyaWJlKHtcclxuICAgICAgICAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmdldFNpbmdsZUNoYXJ0RGF0YSA9IHJlcz8uZGF0YS5zdG9yZURhdGE7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuZGV0YWlsZWRDaGFydHMgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTsgXHJcbiAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5nZXRTaW5nbGVTdG9yZSgpLCAwKTsgLy8gQ2FsbCB3aXRoIGEgZGVsYXkgdG8gZW5zdXJlIHRoZSBlbGVtZW50IGlzIGluIHRoZSBET01cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgY29tcGxldGU6ICgpID0+IHt9LFxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBnZXRTaW5nbGVTdG9yZSgpe1xyXG4gICAgICAgICAgICBjb25zdCBjaGFydERpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiZGV0YWlsZWRDaGFydERpdlwiKTtcclxuICAgICAgICAgICAgaWYgKCFjaGFydERpdikge1xyXG4gICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgICAgICBpZiAodGhpcy5kZXRhaWxlZFJvb3QpIHtcclxuICAgICAgICAgICAgICB0aGlzLmRldGFpbGVkUm9vdC5kaXNwb3NlKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIFxyXG4gICAgICAgICAgICB0aGlzLmRldGFpbGVkUm9vdCA9IGFtNS5Sb290Lm5ldyhcImRldGFpbGVkQ2hhcnREaXZcIik7XHJcbiAgICAgICAgICAgIHRoaXMuZGV0YWlsZWRSb290LnNldFRoZW1lcyhbXHJcbiAgICAgICAgICAgICAgYW01dGhlbWVzX0FuaW1hdGVkLm5ldyh0aGlzLmRldGFpbGVkUm9vdCksXHJcbiAgICAgICAgICAgIF0pO1xyXG4gICAgICAgIFxyXG4gICAgICAgICAgICB0aGlzLmRldGFpbGVkQ2hhcnQgPSB0aGlzLmRldGFpbGVkUm9vdC5jb250YWluZXIuY2hpbGRyZW4ucHVzaChcclxuICAgICAgICAgICAgICBhbTV4eS5YWUNoYXJ0Lm5ldyh0aGlzLmRldGFpbGVkUm9vdCwge1xyXG4gICAgICAgICAgICAgICAgcGFuWDogZmFsc2UsXHJcbiAgICAgICAgICAgICAgICBwYW5ZOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgIHdoZWVsWDogXCJwYW5YXCIsXHJcbiAgICAgICAgICAgICAgICB3aGVlbFk6IFwiem9vbVhcIixcclxuICAgICAgICAgICAgICAgIHBhZGRpbmdMZWZ0OiAwLFxyXG4gICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgIC8vIEFkZCBjdXJzb3JcclxuICAgICAgICAgICAgbGV0IGN1cnNvciA9IHRoaXMuZGV0YWlsZWRDaGFydC5zZXQoXHJcbiAgICAgICAgICAgICAgXCJjdXJzb3JcIixcclxuICAgICAgICAgICAgICBhbTV4eS5YWUN1cnNvci5uZXcodGhpcy5kZXRhaWxlZFJvb3QsIHt9KVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICBjdXJzb3IubGluZVkuc2V0KFwidmlzaWJsZVwiLCBmYWxzZSk7XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgIC8vIENyZWF0ZSBheGVzXHJcbiAgICAgICAgICAgIGxldCB4UmVuZGVyZXIgPSBhbTV4eS5BeGlzUmVuZGVyZXJYLm5ldyh0aGlzLmRldGFpbGVkUm9vdCwge1xyXG4gICAgICAgICAgICAgIG1pbkdyaWREaXN0YW5jZTogMzAsXHJcbiAgICAgICAgICAgICAgbWlub3JHcmlkRW5hYmxlZDogdHJ1ZSxcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgIHhSZW5kZXJlci5sYWJlbHMudGVtcGxhdGUuc2V0QWxsKHtcclxuICAgICAgICAgICAgICByb3RhdGlvbjogLTkwLFxyXG4gICAgICAgICAgICAgIGNlbnRlclk6IGFtNS5wNTAsXHJcbiAgICAgICAgICAgICAgY2VudGVyWDogYW01LnAxMDAsXHJcbiAgICAgICAgICAgICAgcGFkZGluZ1JpZ2h0OiAxNSxcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgIHhSZW5kZXJlci5ncmlkLnRlbXBsYXRlLnNldEFsbCh7XHJcbiAgICAgICAgICAgICAgbG9jYXRpb246IDEsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAvLyBBZGQgc2Nyb2xsYmFyXHJcbiAgICAgICAgICAgIHRoaXMuZGV0YWlsZWRDaGFydC5zZXQoXHJcbiAgICAgICAgICAgICAgXCJzY3JvbGxiYXJYXCIsXHJcbiAgICAgICAgICAgICAgYW01LlNjcm9sbGJhci5uZXcodGhpcy5kZXRhaWxlZFJvb3QsIHtcclxuICAgICAgICAgICAgICAgIG9yaWVudGF0aW9uOiBcImhvcml6b250YWxcIixcclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICBsZXQgeEF4aXMgPSB0aGlzLmRldGFpbGVkQ2hhcnQueEF4ZXMucHVzaChcclxuICAgICAgICAgICAgICBhbTV4eS5DYXRlZ29yeUF4aXMubmV3KHRoaXMuZGV0YWlsZWRSb290LCB7XHJcbiAgICAgICAgICAgICAgICBtYXhEZXZpYXRpb246IDAuMyxcclxuICAgICAgICAgICAgICAgIGNhdGVnb3J5RmllbGQ6IFwiZGF0ZVwiLFxyXG4gICAgICAgICAgICAgICAgcmVuZGVyZXI6IHhSZW5kZXJlcixcclxuICAgICAgICAgICAgICAgIHRvb2x0aXA6IGFtNS5Ub29sdGlwLm5ldyh0aGlzLmRldGFpbGVkUm9vdCwge30pLFxyXG4gICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgIGxldCB5UmVuZGVyZXIgPSBhbTV4eS5BeGlzUmVuZGVyZXJZLm5ldyh0aGlzLmRldGFpbGVkUm9vdCwge1xyXG4gICAgICAgICAgICAgIHN0cm9rZU9wYWNpdHk6IDAuMSxcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgIGxldCB5QXhpcyA9IHRoaXMuZGV0YWlsZWRDaGFydC55QXhlcy5wdXNoKFxyXG4gICAgICAgICAgICAgIGFtNXh5LlZhbHVlQXhpcy5uZXcodGhpcy5kZXRhaWxlZFJvb3QsIHtcclxuICAgICAgICAgICAgICAgIG1heERldmlhdGlvbjogMC4zLFxyXG4gICAgICAgICAgICAgICAgcmVuZGVyZXI6IHlSZW5kZXJlcixcclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgbGV0IGRhdGEgPSB0aGlzLmdldFNpbmdsZUNoYXJ0RGF0YS5tYXAoKGl0ZW06IGFueSkgPT4gKHtcclxuICAgICAgICAgICAgICBkYXRlOiB0aGlzLmZvcm1hdERhdGUoaXRlbS5kYXRlKSwgLy8gQ29udmVydCBkYXRlIHN0cmluZyB0byB0aW1lc3RhbXBcclxuICAgICAgICAgICAgICB2YWx1ZTogTnVtYmVyKGl0ZW0uY291bnQpLCAvLyBVc2UgYGNvdW50YCBhcyBgdmFsdWVgXHJcbiAgICAgICAgICAgIH0pKTtcclxuICAgICAgICAgICAgZGF0YS5zb3J0KChhOiBhbnksIGI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgIC8vIFBhcnNlIHN0b3JlTmFtZSBhcyBhIERhdGUgYW5kIGNvbXBhcmVcclxuICAgICAgICAgICAgICBjb25zdCBkYXRlQSA9IG5ldyBEYXRlKGEuZGF0ZSk7XHJcbiAgICAgICAgICAgICAgY29uc3QgZGF0ZUIgPSBuZXcgRGF0ZShiLmRhdGUpO1xyXG4gICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIC8vIFNvcnQgaW4gYXNjZW5kaW5nIG9yZGVyIChvbGRlc3QgdG8gbmV3ZXN0KVxyXG4gICAgICAgICAgICAgIHJldHVybiBkYXRlQS5nZXRUaW1lKCkgLSBkYXRlQi5nZXRUaW1lKCk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAvLyBDcmVhdGUgc2VyaWVzXHJcbiAgICAgICAgICAgIHRoaXMuZGV0YWlsZWRTZXJpZXMgPSB0aGlzLmRldGFpbGVkQ2hhcnQuc2VyaWVzLnB1c2goXHJcbiAgICAgICAgICAgICAgYW01eHkuQ29sdW1uU2VyaWVzLm5ldyh0aGlzLmRldGFpbGVkUm9vdCwge1xyXG4gICAgICAgICAgICAgICAgbmFtZTogXCJTZXJpZXMgMlwiLFxyXG4gICAgICAgICAgICAgICAgeEF4aXM6IHhBeGlzLFxyXG4gICAgICAgICAgICAgICAgeUF4aXM6IHlBeGlzLFxyXG4gICAgICAgICAgICAgICAgdmFsdWVZRmllbGQ6IFwidmFsdWVcIixcclxuICAgICAgICAgICAgICAgIHNlcXVlbmNlZEludGVycG9sYXRpb246IHRydWUsXHJcbiAgICAgICAgICAgICAgICBjYXRlZ29yeVhGaWVsZDogXCJkYXRlXCIsXHJcbiAgICAgICAgICAgICAgICB0b29sdGlwOiBhbTUuVG9vbHRpcC5uZXcodGhpcy5kZXRhaWxlZFJvb3QsIHtcclxuICAgICAgICAgICAgICAgICAgbGFiZWxUZXh0OiBcInt2YWx1ZVl9XCIsXHJcbiAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB0aGlzLmRldGFpbGVkU2VyaWVzLmNvbHVtbnMudGVtcGxhdGUuc2V0QWxsKHsgc3Ryb2tlT3BhY2l0eTogMCB9KTtcclxuICAgICAgICAgICAgeEF4aXMuZGF0YS5zZXRBbGwoZGF0YSk7XHJcbiAgICAgICAgICAgIHRoaXMuZGV0YWlsZWRTZXJpZXMuZGF0YS5zZXRBbGwoZGF0YSk7XHJcbiAgICAgICAgICAgIHRoaXMuZGV0YWlsZWRTZXJpZXMuYXBwZWFyKDEwMDApO1xyXG4gICAgICAgICAgICB0aGlzLmRldGFpbGVkQ2hhcnQuYXBwZWFyKDEwMDAsIDEwMCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBmb3JlY2FzdEFwaShldnQ6YW55KXtcclxuICAgICAgICAgIGlmKGV2dC50YXJnZXQuY2hlY2tlZCl7XHJcbiAgICAgICAgICAgIHRoaXMub2JqRGF0YS5mb3JlY2FzdCA9IHRydWVcclxuICAgICAgICAgICAgdGhpcy5vYmpEYXRhLm5vcm1hbGl6ZSA9IGZhbHNlXHJcbiAgICAgICAgICAgIHRoaXMub2JqRGF0YS5ub2IgPSBmYWxzZVxyXG4gICAgICAgICAgICB0aGlzLm9iakRhdGEuZmlsdGVyQnkgPSAnYXZlcmFnZSdcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMub2JqRGF0YS5mb3JlY2FzdCA9IGZhbHNlXHJcbiAgICAgICAgICAgIHRoaXMub2JqRGF0YS5ub3JtYWxpemUgPSB0aGlzLmNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5pc05vcm1hbGl6ZWRcclxuICAgICAgICAgICAgdGhpcy5vYmpEYXRhLm5vYiA9IGZhbHNlXHJcbiAgICAgICAgICAgIHRoaXMub2JqRGF0YS5maWx0ZXJCeSA9ICdhdmVyYWdlJ1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5mb290ZmFsbFRyZW5kKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRvZ2dsZU5vcm1hbGl6ZWZmb25seShldnQ6YW55KXtcclxuICAgICAgICAgIHRoaXMubm9ybWFsaXplID1ldnQudGFyZ2V0LmNoZWNrZWQ7XHJcbiAgICAgICAgICAgdGhpcy50YWJsZW9iai5ub3JtYWxpemUgPSB0aGlzLm5vcm1hbGl6ZSAgIFxyXG4gICAgICAgICAgIHRoaXMudGFibGVvYmouZnJvbURhdGUgPSB0aGlzLmhlYWRlckRhdGE/LmRhdGUuc3RhcnREYXRlO1xyXG4gICAgICAgICAgIHRoaXMudGFibGVvYmoudG9EYXRlID0gdGhpcy5oZWFkZXJEYXRhPy5kYXRlLmVuZERhdGU7XHJcbiAgICAgICAgICAgZGVsZXRlIHRoaXMudGFibGVvYmoucmVjYXBWaWRlb0RhdGU7ICAgICAgIFxyXG4gICAgICAgICAgIHRoaXMudGFibGVvYmoudmFsdWVUeXBlID10aGlzLnZhbHVlVHlwZVxyXG4gICAgICAgICAgIGNvbnNvbGUubG9nKFwi8J+agCB+IFRyYWZmaWNBbmFseXNpc0NvbXBvbmVudCB+IHRvZ2dsZU5vcm1hbGl6ZWZmb25seSB+IHRoaXMudGFibGVvYmo6XCIsIHRoaXMudGFibGVvYmopXHJcbiAgICAgICAgICAgdGhpcy5nZXRGb290ZmFsbENhcmQoKTtcclxuICAgICAgICAgICB0aGlzLmdldE1pc3NlZE9wcG9ydHVuaXR5Q2FyZCgpO1xyXG4gICAgICAgICAgICB0aGlzLmdldFRhYmxlKCk7XHJcbiAgICAgICAgICAgIHRoaXMuZ2V0Wm9uZVZhbHVlKCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0b2dnbGVOb3JtYWxpemUoZXZ0OmFueSl7XHJcbiAgICAgICAgICB0aGlzLm5vcm1hbGl6ZSA9ZXZ0LnRhcmdldC5jaGVja2VkO1xyXG4gICAgICAgICAgdGhpcy50YWJsZW9iai5ub3JtYWxpemUgPSB0aGlzLm5vcm1hbGl6ZVxyXG4gICAgICAgICAgdGhpcy5vYmpEYXRhLm5vcm1hbGl6ZSA9IHRoaXMubm9ybWFsaXplXHJcbiAgICAgICAgICB0aGlzLm9iakRhdGFUcmFmZmljLm5vcm1hbGl6ZSA9IHRoaXMubm9ybWFsaXplXHJcbiAgICAgICAgICAvLyB0aGlzLnRhYmxlb2JqLmZvcmVjYXN0ID0gZmFsc2VcclxuICAgICAgICAgIHRoaXMub2JqRGF0YS5mb3JlY2FzdCA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5mb3JlY2FzdCA9ZmFsc2U7XHJcbiAgICAgICAgICAvLyB0aGlzLm9iakRhdGFUcmFmZmljLmZvcmVjYXN0ID0gZmFsc2VcclxuICAgICAgICAgIHRoaXMuY29udmVyc2lvblZhbHVlID0gdGhpcy5ub2JcclxuICAgICAgICAgICAgICA/IFwiTm9CIERlcml2ZWRcIlxyXG4gICAgICAgICAgICAgIDogdGhpcy5jbGllbnREYXRhPy5mZWF0dXJlQ29uZmlnc1xyXG4gICAgICAgICAgICAgICAgICA/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FsY3VsYXRpb24gPT09ICdlbmdhZ2Vycy1jb252ZXJzaW9uJ1xyXG4gICAgICAgICAgICAgID8gXCJlbmdhZ2Vyc1wiXHJcbiAgICAgICAgICAgICAgOiBcImZvb3RmYWxsXCI7XHJcbiAgICAgICAgICB0aGlzLmdldEZ1bm5hbCgpO1xyXG4gICAgICAgICAgdGhpcy5nZXRGb290ZmFsbENhcmQoKTtcclxuICAgICAgICAgIHRoaXMuZ2V0Q29udmVyc2lvbkNhcmQoKTtcclxuICAgICAgICAgIHRoaXMuZ2V0Qm91bmNlZENhcmQoKTtcclxuICAgICAgICAgIHRoaXMuZ2V0RW5nYWdlcnNDYXJkKCk7XHJcbiAgICAgICAgICB0aGlzLmdldFBvdGVudGlhbEJ1eWVyc0NhcmQoKTtcclxuICAgICAgICAgIHRoaXMuZ2V0TWlzc2VkT3Bwb3J0dW5pdHlDYXJkKCk7XHJcbiAgICAgICAgICB0aGlzLmdldFBvdGVudGlhbEJ1eWVycygpO1xyXG4gICAgICAgICAgdGhpcy5wZXJmb3JtYW5jZSgpO1xyXG4gICAgICAgICAgdGhpcy5nZXRUYWJsZSgpO1xyXG4gICAgICAgICAgdGhpcy5mb290ZmFsbFRyZW5kKCk7XHJcbiAgICAgICAgICBpZih0aGlzLmhlYWRlckRhdGE/LmNsaWVudCA9PT0nNDU5Jyl7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSBcImZvb3RmYWxsXCJcclxuICAgICAgICAgICAgdGhpcy5mb290ZmFsbFZhbHVlID0gXCJmb290ZmFsbFwiO1xyXG4gICAgICAgICAgICB0aGlzLnNlbGN0ZWRWYWx1ZSA9J0Zvb3RmYWxsIEFuYWx5c2lzJztcclxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFRhYnMoJ2Zvb3RmYWxsJyk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkVGFiID0gXCJ0cmFmZmljXCJcclxuICAgICAgICAgICAgdGhpcy5mb290ZmFsbFZhbHVlID0gXCJ0cmFmZmljXCI7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsY3RlZFZhbHVlID0nVHJhZmZpYyBBbmFseXNpcyc7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRUYWJzKCd0cmFmZmljJyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZih0aGlzLm5vcm1hbGl6ZSA9PT0gdHJ1ZSl7XHJcbiAgICAgICAgICB0aGlzLnpvbmVEd2VsbFRpbWVTcGxpdERhdGEgPVtdO1xyXG4gICAgICAgICAgICB0aGlzLnpvbmVMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuem9uZU5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuc3RvcmVPcGVyYXRpb25EYXRhID1bXTtcclxuICAgICAgICAgICAgdGhpcy5hdUxvY2F0aW9ucyA9W107XHJcbiAgICAgICAgICAgIHRoaXMubXBhbG9hZGluZyA9ZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMubWFwbm9EYXRhPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmZvcmVjYXN0ID1mYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5vYmpEYXRhLmZvcmVjYXN0ID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGlmKHRoaXMuc3RvcmVJZGFycmF5Lmxlbmd0aCA9PT0gMSl7XHJcbiAgICAgICAgICAgIHRoaXMuZ2V0UmVjYXBWaWRlb0RhdGEgPVtdXHJcbiAgICAgICAgICAgIHRoaXMucmVjYXBsYW9kaW5nID1mYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5yZWNhcG5vRGF0YSA9dHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5zZXJ2aWNlPy50b2dnbGVub3JtYWxpemUodGhpcy5ub3JtYWxpemUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmdldFpvbmUoKTsgdGhpcy5nZXRab25lVmFsdWUoKTtcclxuICAgICAgICAgICAgdGhpcy5nZXRNYXAoKTtcclxuICAgICAgICAgICAgaWYodGhpcy5zdG9yZUlkYXJyYXkubGVuZ3RoID09PSAxKXtcclxuICAgICAgICAgICAgdGhpcy5nZXRSZWNhcCgpO1xyXG4gICAgICAgICAgICB0aGlzLnNlcnZpY2U/LnRvZ2dsZW5vcm1hbGl6ZSh0aGlzLm5vcm1hbGl6ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIGV4cG9ydERlbnNpdHkoKXtcclxuICAgICAgICBsZXQgb2JqID17XHJcbiAgICAgICAgICAgZnJvbURhdGU6IHRoaXMuZ2V0RGVuc2l0eUR3ZWxsRGF0YT8uZnJvbURhdGUsXHJcbiAgICAgICAgICAgICAgdG9EYXRlOiB0aGlzLmdldERlbnNpdHlEd2VsbERhdGE/LnRvRGF0ZSxcclxuICAgICAgICAgICAgICAgIGRhdGVSYW5nZTogdGhpcy5vYmpEYXRhVHJhZmZpYz8uZGF0ZVJhbmdlLFxyXG4gICAgICAgICAgICAgIHN0b3JlSWQ6ICB0aGlzLnN0b3JlSWRhcnJheSxcclxuICAgICAgICAgICAgICBjbGllbnRJZDogdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQsXHJcbiAgICAgICAgICAgICAgZXhwb3J0OnRydWUsXHJcbiAgICAgICAgICAgICAgbW9kdWxlOlwiZm9vdGZhbGxcIlxyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgICAgICAgICAuZ2V0VHJhZmZpY0RlbnNpdHlFeHBvcnQob2JqKVxyXG4gICAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgICAgICAgICA/LnN1YnNjcmliZSh7XHJcbiAgICAgICAgICAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgaWYgKHJlcykge1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmV4Y2VsU2VydmljZS5zYXZlQXNFeGNlbEZpbGUocmVzLCBcIlRyYWZmaWMgRGVuc2l0eSBUYWJsZSBcIik7XHJcbiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnRvYXN0LmdldEVycm9yVG9hc3QocmVzKTtcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSwgZXJyb3I6IChlcnI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gZXJyPy5lcnJvcj8ubWVzc2FnZSB8fCBlcnI/LmVycm9yPy5lcnJvciB8fCBlcnI/Lm1lc3NhZ2U7XHJcbiAgICAgICAgICAgICAgdGhpcy50b2FzdC5nZXRFcnJvclRvYXN0KGVycm9yTWVzc2FnZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfSlcclxuICAgICAgfVxyXG4gICAgICBcclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5pbnRlcmZhY2UgRGF0YUNvbnRleHQge1xyXG4gIGNhdGVnb3J5OiBzdHJpbmc7XHJcbiAgdmFsdWU6IG51bWJlcjtcclxuICBjb3VudDogbnVtYmVyO1xyXG59XHJcbmZ1bmN0aW9uIGdldERheXNCZXR3ZWVuRGF0ZXMoZnJvbURhdGU6IHN0cmluZywgdG9EYXRlOiBzdHJpbmcpOiBudW1iZXIge1xyXG4gIC8vIFBhcnNlIHRoZSBkYXRlIHN0cmluZ3MgaW50byBEYXRlIG9iamVjdHNcclxuICBjb25zdCBzdGFydCA9IG5ldyBEYXRlKGZyb21EYXRlKTtcclxuICBjb25zdCBlbmQgPSBuZXcgRGF0ZSh0b0RhdGUpO1xyXG5cclxuICAvLyBDYWxjdWxhdGUgdGhlIGRpZmZlcmVuY2UgaW4gbWlsbGlzZWNvbmRzXHJcbiAgY29uc3QgZGlmZmVyZW5jZUluTXMgPSBlbmQuZ2V0VGltZSgpIC0gc3RhcnQuZ2V0VGltZSgpO1xyXG5cclxuICAvLyBDb252ZXJ0IG1pbGxpc2Vjb25kcyB0byBkYXlzICgxIGRheSA9IDg2NDAwMDAwIG1pbGxpc2Vjb25kcylcclxuICBjb25zdCBtaWxsaXNlY29uZHNQZXJEYXkgPSA4NjQwMDAwMDtcclxuICBjb25zdCBkaWZmZXJlbmNlSW5EYXlzID0gTWF0aC5mbG9vcihkaWZmZXJlbmNlSW5NcyAvIG1pbGxpc2Vjb25kc1BlckRheSk7XHJcblxyXG4gIHJldHVybiBkaWZmZXJlbmNlSW5EYXlzO1xyXG59XHJcblxyXG5pbnRlcmZhY2UgQ2hhcnREYXRhSXRlbSB7XHJcbiAgcmF0ZTogbnVtYmVyO1xyXG4gIGNvdW50OiBudW1iZXI7XHJcbiAgdGltZTogc3RyaW5nO1xyXG59XHJcblxyXG5cclxuXHJcblxyXG5cclxuLy8gZ2V0Q2FyZCgpIHtcclxuLy8gICB0aGlzLnRhYmxlb2JqLnZhbHVlVHlwZT0gdGhpcy52YWx1ZVR5cGUsXHJcbi8vICAgdGhpcy50YWJsZW9iai5mcm9tRGF0ZSA9IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZS5zdGFydERhdGU7XHJcbi8vICAgdGhpcy50YWJsZW9iai50b0RhdGUgPSB0aGlzLmhlYWRlckRhdGE/LmRhdGUuZW5kRGF0ZTtcclxuLy8gIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLm9mZnNldDtcclxuLy8gIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnJlY2FwVmlkZW9EYXRlO1xyXG4vLyAgZGVsZXRlIHRoaXMudGFibGVvYmoubGltaXQ7IFxyXG4vLyAgZGVsZXRlIHRoaXMudGFibGVvYmouc29ydDtcclxuLy8gIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnNvcnRCeTtcclxuLy8gIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLmV4cG9ydDtcclxuLy8gICB0aGlzLmhlYXRsb2FkaW5nID0gdHJ1ZTtcclxuLy8gICB0aGlzLmhlYXRub0RhdGEgPSBmYWxzZTtcclxuLy8gIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLmRhdGVUeXBlXHJcbi8vICAgdGhpcy5zZXJ2aWNlXHJcbi8vICAgICAuZ2V0Q2FyZExpc3QodGhpcy50YWJsZW9iailcclxuLy8gICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuLy8gICAgID8uc3Vic2NyaWJlKHtcclxuLy8gICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbi8vICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbi8vICAgICAgICAgICB0aGlzLmdldENhcmREYXRhID0gcmVzPy5kYXRhPy5jYXJkO1xyXG4vLyAgICAgICAgICAgLy8gdGhpcy5oZWF0TWFwRGF0YSA9IHJlcz8uZGF0YT8uZnVubmVsQ2hhcnQ7XHJcbiAgICAgICAgIFxyXG4vLyAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbi8vICAgICAgICAgfSBlbHNlIHtcclxuLy8gICAgICAgICAgIHRoaXMuZ2V0Q2FyZERhdGEgPVtdO1xyXG4vLyAgICAgICAgICAgdGhpcy5oZWF0TWFwRGF0YSA9W107XHJcbi8vICAgICAgICAgdGhpcy5oZWF0bG9hZGluZyA9IGZhbHNlXHJcbi8vICAgICAgICAgdGhpcy5oZWF0bm9EYXRhID0gdHJ1ZVxyXG4vLyAgICAgICAgIH1cclxuLy8gICAgICAgfSxcclxuLy8gICAgICAgZXJyb3I6IChlcnI6IGFueSkgPT4ge1xyXG4vLyAgICAgICAgIHRoaXMuZ2V0Q2FyZERhdGEgPVtdO1xyXG4vLyAgICAgICAgIHRoaXMuaGVhdE1hcERhdGEgPVtdO1xyXG4vLyAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4vLyAgICAgICB9LFxyXG4vLyAgICAgICBjb21wbGV0ZTogKCkgPT4ge30sXHJcbi8vICAgICB9KTtcclxuLy8gfVxyXG5cclxuLy8gZ2V0Q2FyZEdyYXBoKCkge1xyXG4vLyAgIHRoaXMuY2FyZGxvYWRpbmcgPXRydWU7XHJcbi8vICAgdGhpcy5jYXJkTm9kYXRhID1mYWxzZTtcclxuLy8gICBkZWxldGUgdGhpcy50YWJsZW9iai5ub3JtYWxpemVkRGF0YTtcclxuLy8gICBkZWxldGUgdGhpcy50YWJsZW9iai5wcm9jZXNzVHlwZTtcclxuLy8gICB0aGlzLnRhYmxlb2JqLmRhdGVUeXBlID0gdGhpcy5kYXRlVHlwZTtcclxuLy8gICBkZWxldGUgdGhpcy50YWJsZW9iai5zb3J0O1xyXG4vLyAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnNvcnRCeTtcclxuLy8gICB0aGlzLnNlcnZpY2VcclxuLy8gICAgIC5nZXRDYXJkR3JhcGhMaXN0KHRoaXMudGFibGVvYmopXHJcbi8vICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbi8vICAgICA/LnN1YnNjcmliZSh7XHJcbi8vICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4vLyAgICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT09IDIwMCkge1xyXG4vLyAgICAgICAgICAgdGhpcy5nZXRDYXJkR3JhcGhEYXRhID0gcmVzPy5kYXRhO1xyXG4vLyAgICAgICAgICAgaWYodGhpcy5ub2Ipe1xyXG4vLyAgICAgICAgICAgICB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENhcmRHcmFwaERhdGE/LmNvbnZlcnNpb24/Lm5vYi5ub2I7XHJcbi8vICAgICAgICAgICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9J05vQiBEZXJpdmVkJ1xyXG4vLyAgICAgICAgICAgfWVsc2UgeyBcclxuLy8gICAgICAgICAgIHRoaXMudmFsdWVDb252ZXJzaW9uUmF0ZSA9ICB0aGlzLmdldENhcmRHcmFwaERhdGE/LmNvbnZlcnNpb24/LmZvb3RmYWxsLnJhdGU7XHJcbi8vICAgICAgICAgICAgdGhpcy5jb252ZXJzaW9uVmFsdWUgPSdmb290ZmFsbCdcclxuLy8gICAgICAgICAgIH1cclxuLy8gICAgICAgICAgIHRoaXMuY2FyZGxvYWRpbmcgPWZhbHNlO1xyXG4vLyAgICAgICAgICAgdGhpcy5jYXJkTm9kYXRhID1mYWxzZTsgICAgICAgICAgIFxyXG4vLyAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbi8vICAgICAgICAgfSBlbHNlIGlmKCFyZXMgfHwgcmVzLmNvZGUgPT09IDIwNCl7XHJcbi8vICAgICAgICAgICB0aGlzLmdldENhcmRHcmFwaERhdGE9W107XHJcbi8vICAgICAgICAgICB0aGlzLmNhcmRsb2FkaW5nID1mYWxzZTtcclxuLy8gICAgICAgICAgIHRoaXMuY2FyZE5vZGF0YSA9dHJ1ZTtcclxuLy8gICAgICAgICB9XHJcbi8vICAgICAgIH0sXHJcbi8vICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuLy8gICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuLy8gICAgICAgfSxcclxuLy8gICAgICAgY29tcGxldGU6ICgpID0+IHt9LFxyXG4vLyAgICAgfSk7XHJcbi8vIH1cclxuIiwiPHNjcmlwdD5cclxuICAgIChnID0+IHsgdmFyIGgsIGEsIGssIHAgPSBcIlRoZSBHb29nbGUgTWFwcyBKYXZhU2NyaXB0IEFQSVwiLCBjID0gXCJnb29nbGVcIiwgbCA9IFwiaW1wb3J0TGlicmFyeVwiLCBxID0gXCJfX2liX19cIiwgbSA9IGRvY3VtZW50LCBiID0gd2luZG93OyBiID0gYltjXSB8fCAoYltjXSA9IHt9KTsgdmFyIGQgPSBiLm1hcHMgfHwgKGIubWFwcyA9IHt9KSwgciA9IG5ldyBTZXQsIGUgPSBuZXcgVVJMU2VhcmNoUGFyYW1zLCB1ID0gKCkgPT4gaCB8fCAoaCA9IG5ldyBQcm9taXNlKGFzeW5jIChmLCBuKSA9PiB7IGF3YWl0IChhID0gbS5jcmVhdGVFbGVtZW50KFwic2NyaXB0XCIpKTsgZS5zZXQoXCJsaWJyYXJpZXNcIiwgWy4uLnJdICsgXCJcIik7IGZvciAoayBpbiBnKSBlLnNldChrLnJlcGxhY2UoL1tBLVpdL2csIHQgPT4gXCJfXCIgKyB0WzBdLnRvTG93ZXJDYXNlKCkpLCBnW2tdKTsgZS5zZXQoXCJjYWxsYmFja1wiLCBjICsgXCIubWFwcy5cIiArIHEpOyBhLnNyYyA9IGBodHRwczovL21hcHMuJHtjfWFwaXMuY29tL21hcHMvYXBpL2pzP2AgKyBlOyBkW3FdID0gZjsgYS5vbmVycm9yID0gKCkgPT4gaCA9IG4oRXJyb3IocCArIFwiIGNvdWxkIG5vdCBsb2FkLlwiKSk7IGEubm9uY2UgPSBtLnF1ZXJ5U2VsZWN0b3IoXCJzY3JpcHRbbm9uY2VdXCIpPy5ub25jZSB8fCBcIlwiOyBtLmhlYWQuYXBwZW5kKGEpIH0pKTsgZFtsXSA/IGNvbnNvbGUud2FybihwICsgXCIgb25seSBsb2FkcyBvbmNlLiBJZ25vcmluZzpcIiwgZykgOiBkW2xdID0gKGYsIC4uLm4pID0+IHIuYWRkKGYpICYmIHUoKS50aGVuKCgpID0+IGRbbF0oZiwgLi4ubikpIH0pKHtcclxuICAgICAgICB2OiBcIndlZWtseVwiLFxyXG4gICAgICAgIGtleTogeyBtYXBLZXlVcmwgfVxyXG4gICAgfSk7XHJcbjwvc2NyaXB0PlxyXG48bGluayBocmVmPSdodHRwczovL2FwaS5tYXBib3guY29tL21hcGJveC1nbC1qcy92Mi4xNS4wL21hcGJveC1nbC5jc3MnIHJlbD0nc3R5bGVzaGVldCcgLz5cclxuPHNjcmlwdCBzcmM9J2h0dHBzOi8vYXBpLm1hcGJveC5jb20vbWFwYm94LWdsLWpzL3YyLjE1LjAvbWFwYm94LWdsLmpzJz48L3NjcmlwdD5cclxuXHJcbjxkaXYgKm5nSWY9XCIhc2hvd1JlcG9ydFByb2Nlc3NpbmdDYXJkICYmICFkYXRhUHJvY2Vzc2VkTG9hZGluZyAmJiAhaXNGb290ZmFsbFZpZXdcIiBjbGFzcz1cInJvd1wiPlxyXG4gICAgPGRpdiAqbmdJZj1cIihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy51c2VyVHlwZSA9PT0gJ3RhbmdvJyB8fCBjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uaXNOb3JtYWxpemVkXCJcclxuICAgICAgICBjbGFzcz1cImNvbC1tZC0xMiB0ZXh0LWVuZFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIGZvcm0tc3dpdGNoIG15LTJcIiBzdHlsZT1cImZsb2F0OiByaWdodCAhaW1wb3J0YW50O1wiPlxyXG4gICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0IGN1cnNvci1wb2ludGVyXCIgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJmbGV4U3dpdGNoQ2hlY2tEZWZhdWx0XCJcclxuICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cIm5vcm1hbGl6ZVwiIChjaGFuZ2UpPVwidG9nZ2xlTm9ybWFsaXplKCRldmVudClcIj48c3BhbiBjbGFzcz1cIm5vcm1hbGl6ZS10ZXh0XCI+VmlldyBOb3JtYWxpemVkXHJcbiAgICAgICAgICAgICAgICBEYXRhPC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTcgaC0xMDBcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtOCBcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGNhcmQtYm9yZGVyIGgtMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBwb3NpdGlvbi1yZWxhdGl2ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJweC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGVsbGlwc2UxIGJvcmRlci0wIHB4LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiIFtuZ2JUb29sdGlwXT1cImZvb3RmYWxsVG9vbHRpcFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJyaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBEaXNwbGF5IGZvb3RmYWxsIGNvdW50IG9yICctLScgaWYgbm90IGF2YWlsYWJsZSAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2FyZC1sYWJlbCBoZWFkZXJcIj57e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldEZvb3RmYWxsQ2FyZERhdGE/LmNhcmQ/LmZvb3RmYWxsPy5jb3VudC50b0xvY2FsZVN0cmluZygnZW4tSU4nKSA/PyAnLS0nXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJcIj57e2Zvb3RmYWxsTmFtZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBTd2l0Y2ggdG9nZ2xlIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10b29sYmFyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIHRleHQtZW5kXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgZm9ybS1zd2l0Y2ggdGV4dC1lbmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dCBtdC0xIGN1cnNvci1wb2ludGVyXCIgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiZmxleFN3aXRjaENoZWNrRGVmYXVsdFwiIFsobmdNb2RlbCldPVwiaXNBdmVyYWdlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwidG9nZ2xlQXZlcmFnZSgkZXZlbnQpXCIgW2Rpc2FibGVkXT1cImlzRGlzYWJsZWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXNBdmVyYWdlXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsIG10LTVcIj5BdmVyYWdlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFpc0F2ZXJhZ2VcIiBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgbXQtNVwiPkFjdHVhbDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZm9vdGZhbGxUb29sdGlwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9vbHRpcC1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9XCJ0b29sdGlwLXRpdGxlIHRleHQtc3RhcnRcIj5Gb290ZmFsbDwvaDU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cInRleHQtc3RhcnRcIj5Ub3RhbCB1bmlxdWUgd2Fsay1pbnMgaW50byB0aGUgc2VsZWN0ZWQgc3RvcmVzLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz1cInRleHQtc3RhcnRcIj57e2dldENhcmREYXRhPy5mb290ZmFsbD8uY291bnR9fTwvaDQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwLTBcIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTAgcGUtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFtjbGFzcy5kLW5vbmVdPVwiIWZvb3RmYWxsbG9hZGluZ1wiIGNsYXNzPVwidGV4dC1jZW50ZXIgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImxvYWRlci1pbWdcIiBzcmM9XCJhc3NldHMvdGFuZ28vbGF5b3V0L0xvYWRlci5naWZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJmb290ZmFsbE5vZGF0YVwiIGNsYXNzPVwicm93XCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2FyZC1ib2R5IHBiLTAgcHgtMCBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiZm9vdGltZy1ub2RhdGExXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvTm9kYXRhMS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXRpdGxlMVwiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJub2RhdGEtc3ViXCI+VGhlcmUgaXMgbm8gcmVzdWx0IGZvciB0aGlzIGNvbnZlcnNpb24gZnVubmVsPC9kaXY+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBbY2xhc3MuZC1ub25lXT1cImZvb3RmYWxsTm9kYXRhIHx8IGZvb3RmYWxsbG9hZGluZ1wiIGNsYXNzPVwidGV4dC1jZW50ZXJcIiBpZD1cIkZvb3RmYWxsXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0yIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm10LTEgY3Vyc29yLXBvaW50ZXIgZnMtNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJkYXRlVHlwZSA9PT0nZGFpbHknID8gJ3RleHQtcHJpbWFyeScgOicnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJkYXRlVmFsdWUoJ2RhaWx5JylcIj4xRDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMSBjdXJzb3ItcG9pbnRlciBmcy01XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cImRhdGVUeXBlID09PSd3ZWVrbHknID8gJ3RleHQtcHJpbWFyeScgOicnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJkYXRlVmFsdWUoJ3dlZWtseScpXCI+MVc8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm10LTEgY3Vyc29yLXBvaW50ZXIgZnMtNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJkYXRlVHlwZSA9PT0nbW9udGhseScgPyAndGV4dC1wcmltYXJ5JyA6JydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImRhdGVWYWx1ZSgnbW9udGhseScpXCI+MU08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtZm9vdGVyIG1zLTIgcC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtdC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cIiFnZXRGb290ZmFsbENhcmREYXRhPy5kYXRhPy5mb290ZmFsbD8uUHJldmlvdXNWYXJpYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxOCAxOFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMjMyOF80NjU0KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMS41IDlMNi43NSA0LjI1TDQuMjUgNi43NUwwLjUgM00xMS41IDlIOC41TTExLjUgOVY2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjRDkyRDIwXCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMjMyOF80NjU0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiZ2V0Rm9vdGZhbGxDYXJkRGF0YT8uZGF0YT8uZm9vdGZhbGw/LlByZXZpb3VzVmFyaWF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzMyMTZfMTE4KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMS41IDNMNi43NSA3Ljc1TDQuMjUgNS4yNUwwLjUgOU0xMS41IDNIOC41TTExLjUgM1Y2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMDM5ODU1XCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzIxNl8xMThcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJnZXRGb290ZmFsbENhcmREYXRhPy5kYXRhPy5mb290ZmFsbD8uUHJldmlvdXNEYXRhID09PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGVyY2VudC12YWx1ZSBtcy0yXCI+MCU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm10LTIgbXMtMlwiPjxzcGFuIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZ2V0Rm9vdGZhbGxDYXJkRGF0YT8uZGF0YT8uZm9vdGZhbGw/LlByZXZpb3VzRGF0YSAhPT0wXCI+e3tnZXRGb290ZmFsbENhcmREYXRhPy5kYXRhPy5mb290ZmFsbD8uUHJldmlvdXNEYXRhXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gZ2V0Rm9vdGZhbGxDYXJkRGF0YT8uZGF0YT8uZm9vdGZhbGw/LlByZXZpb3VzRGF0YTonLS0nfX0lPC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwid2Vlay1mb250XCI+IHZzIFByZXZpb3VzIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSdkYWlseSdcIj5kYXk8L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J3dlZWtseSdcIj53ZWVrPC9zcGFuPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJkYXRlVHlwZSA9PT0nbW9udGhseSdcIj5tb250aDwvc3Bhbj4gPC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02IDEyTDEwIDhMNiA0XCIgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tYWJzb2x1dGUgbGVmdC01MFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYgMTJMMTAgOEw2IDRcIiBzdHJva2U9XCIjOThBMkIzXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJweC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGVsbGlwc2UxIGJvcmRlci0wIHBzLTIgcGUtMFwiIHRyaWdnZXJzPVwibW91c2VlbnRlcjptb3VzZWxlYXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nYlRvb2x0aXBdPVwiY29udmVyc2lvblRvb2x0aXBcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtbiB3LTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyB3LTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtOCB0ZXh0LW5vd3JhcFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcmQtbGFiZWwgaGVhZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwidmFsdWVDb252ZXJzaW9uUmF0ZSA9PT0gMFwiPjAlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcmQtbGFiZWwgaGVhZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwidmFsdWVDb252ZXJzaW9uUmF0ZSAhPT0gMFwiPnt7dmFsdWVDb252ZXJzaW9uUmF0ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZUNvbnZlcnNpb25SYXRlIDogJy0tJ319JTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJpc0NvbnZlcnNpb25cIiBjbGFzcz1cInN1Yi1oZWFkZXIgZnctYm9sZFwiPkNvbnZlcnNpb248L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC00IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kIGFsaWduLWl0ZW1zLWVuZCBwZS0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIGZvcm0tc3dpdGNoIGN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0IGN1cnNvci1wb2ludGVyXCIgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cIkNvbnZlcnNpb25cIiBbKG5nTW9kZWwpXT1cImlzQ29udmVyc2lvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJ0b2dnbGVDb252ZXJzaW9uKCRldmVudClcIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLWhlYWRlciBtdC0xXCI+PHNwYW4gKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInXCI+TW9yZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGFuIHt7Y2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmNvbnZlcnNpb24/LnZhbHVlfX0gbWlucyBSYXRlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0gJzQ1MidcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFpc0NvbnZlcnNpb25cIiBjbGFzcz1cInN1Yi1oZWFkZXJcIj5Db252ZXJzaW9uXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjb252ZXJzaW9uVmFsdWUgPT09ICdmb290ZmFsbCcgfHwgY29udmVyc2lvblZhbHVlID09PSAnZW5nYWdlcnMnIHx8IGNvbnZlcnNpb25WYWx1ZSA9PT0gJ1BvdGVudGlhbCBCdXllcnMnIHx8IGNvbnZlcnNpb25WYWx1ZSA9PT0gJ05vQiBEZXJpdmVkJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLSA8c3BhbiAqbmdJZj1cImNvbnZlcnNpb25WYWx1ZSA9PT0gJ05vQiBEZXJpdmVkJzsgZWxzZSBvdGhlclZhbHVlc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5vQiBEZXJpdmVkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI290aGVyVmFsdWVzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGNvbnZlcnNpb25WYWx1ZSB8IHRpdGxlY2FzZSB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPjxzcGFuICpuZ0lmPVwiaXNDb252ZXJzaW9uXCIgY2xhc3M9XCJzdWItaGVhZGVyXCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjb252ZXJzaW9uVmFsdWUgPT09ICdmb290ZmFsbCcgfHwgY29udmVyc2lvblZhbHVlID09PSAnZW5nYWdlcnMnIHx8IGNvbnZlcnNpb25WYWx1ZSA9PT0gJ1BvdGVudGlhbCBCdXllcnMnIHx8IGNvbnZlcnNpb25WYWx1ZSA9PT0gJ05vQiBEZXJpdmVkJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjb252ZXJzaW9uVmFsdWUgPT09ICdOb0IgRGVyaXZlZCc7IGVsc2Ugb3RoZXJWYWx1ZXNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb252ZXJzaW9uIC0gTm9CIERlcml2ZWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjb3RoZXJWYWx1ZXM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgY29udmVyc2lvblZhbHVlIHwgdGl0bGVjYXNlIH19IC0gTm9CIERlcml2ZWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjY29udmVyc2lvblRvb2x0aXA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b29sdGlwLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz1cInRvb2x0aXAtdGl0bGUgdGV4dC1zdGFydFwiICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbnZlcnNpb24gUmF0ZTwvaDU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cInRleHQtc3RhcnRcIj5Ub3RhbCAlIG9mIHt7Y29udmVyc2lvblZhbHVlfX0gd2hvIHNwZW50IG1vcmUgdGhhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Y2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmNvbnZlcnNpb24/LnZhbHVlfX0gbWlucyBpbiB0aGUgc3RvcmUuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgcC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJoLTEwMHB4IHB0LTEwIHB4LTMgcm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImgtNTBweCBjb2wtbWQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiICpuZ0lmPVwiY29udmVyc2lvblZhbHVlICE9PSdmb290ZmFsbCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJ0b3BcIiBuZ2JUb29sdGlwPVwiRm9vdGZhbGxcIiAoY2xpY2spPVwiY2hhbmdlVmFsdWUoJ2Zvb3RmYWxsJylcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTQgMThIOS41VjE5LjI1QzkuNSAxOS45NzkzIDkuMjEwMjcgMjAuNjc4OCA4LjY5NDU0IDIxLjE5NDVDOC4xNzg4MiAyMS43MTAzIDcuNDc5MzUgMjIgNi43NSAyMkM2LjAyMDY1IDIyIDUuMzIxMTggMjEuNzEwMyA0LjgwNTQ2IDIxLjE5NDVDNC4yODk3MyAyMC42Nzg4IDQgMTkuOTc5MyA0IDE5LjI1VjE4Wk04IDYuMTE5OTlDMTAgNi4xMTk5OSAxMSA4Ljk5OTk5IDExIDExQzExIDEyIDEwLjUgMTMgMTAgMTQuNUw5LjUgMTZINEM0IDE1IDMuNSAxMy41IDMuNSAxMUMzLjUgOC40OTk5OSA1LjQ5OCA2LjExOTk5IDggNi4xMTk5OVpNMjAuMDU0IDE0LjA5OEwxOS44MzcgMTUuMzI5QzE5LjcwMjMgMTYuMDM5NiAxOS4yOTMxIDE2LjY2ODYgMTguNjk4IDE3LjA3OTZDMTguMTAyOSAxNy40OTA3IDE3LjM2OTggMTcuNjUwOCAxNi42NTc2IDE3LjUyNTJDMTUuOTQ1MyAxNy4zOTk2IDE1LjMxMTEgMTYuOTk4NCAxNC44OTI1IDE2LjQwODZDMTQuNDczOSAxNS44MTg4IDE0LjMwNDUgMTUuMDg3OCAxNC40MjEgMTQuMzc0TDE0LjYzNyAxMy4xNDRMMjAuMDU0IDE0LjA5OFpNMTguMTc4IDEuNzA0OTlDMjAuNjQyIDIuMTM4OTkgMjIuMTk2IDQuODI5OTkgMjEuNzYyIDcuMjkxOTlDMjEuMzI4IDkuNzUzOTkgMjAuNTc1IDExLjE0NCAyMC40MDIgMTIuMTI5TDE0Ljk4NSAxMS4xNzRMMTQuNzUzIDkuNjA5OTlDMTQuNTIxIDguMDQ1OTkgMTQuMjAzIDYuOTczOTkgMTQuMzc2IDUuOTg5OTlDMTQuNzIzIDQuMDE5OTkgMTYuMjA4IDEuMzU3OTkgMTguMTc4IDEuNzA0OTlaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjOThBMkIzXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHBsYWNlbWVudD1cInRvcFwiIG5nYlRvb2x0aXA9XCJGb290ZmFsbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udmVyc2lvblZhbHVlID09PSdmb290ZmFsbCdcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTQgMThIOS41VjE5LjI1QzkuNSAxOS45NzkzIDkuMjEwMjcgMjAuNjc4OCA4LjY5NDU0IDIxLjE5NDVDOC4xNzg4MiAyMS43MTAzIDcuNDc5MzUgMjIgNi43NSAyMkM2LjAyMDY1IDIyIDUuMzIxMTggMjEuNzEwMyA0LjgwNTQ2IDIxLjE5NDVDNC4yODk3MyAyMC42Nzg4IDQgMTkuOTc5MyA0IDE5LjI1VjE4Wk04IDYuMTE5OTlDMTAgNi4xMTk5OSAxMSA4Ljk5OTk5IDExIDExQzExIDEyIDEwLjUgMTMgMTAgMTQuNUw5LjUgMTZINEM0IDE1IDMuNSAxMy41IDMuNSAxMUMzLjUgOC40OTk5OSA1LjQ5OCA2LjExOTk5IDggNi4xMTk5OVpNMjAuMDU0IDE0LjA5OEwxOS44MzcgMTUuMzI5QzE5LjcwMjMgMTYuMDM5NiAxOS4yOTMxIDE2LjY2ODYgMTguNjk4IDE3LjA3OTZDMTguMTAyOSAxNy40OTA3IDE3LjM2OTggMTcuNjUwOCAxNi42NTc2IDE3LjUyNTJDMTUuOTQ1MyAxNy4zOTk2IDE1LjMxMTEgMTYuOTk4NCAxNC44OTI1IDE2LjQwODZDMTQuNDczOSAxNS44MTg4IDE0LjMwNDUgMTUuMDg3OCAxNC40MjEgMTQuMzc0TDE0LjYzNyAxMy4xNDRMMjAuMDU0IDE0LjA5OFpNMTguMTc4IDEuNzA0OTlDMjAuNjQyIDIuMTM4OTkgMjIuMTk2IDQuODI5OTkgMjEuNzYyIDcuMjkxOTlDMjEuMzI4IDkuNzUzOTkgMjAuNTc1IDExLjE0NCAyMC40MDIgMTIuMTI5TDE0Ljk4NSAxMS4xNzRMMTQuNzUzIDkuNjA5OTlDMTQuNTIxIDguMDQ1OTkgMTQuMjAzIDYuOTczOTkgMTQuMzc2IDUuOTg5OTlDMTQuNzIzIDQuMDE5OTkgMTYuMjA4IDEuMzU3OTkgMTguMTc4IDEuNzA0OTlaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDBBM0ZGXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaC01MHB4IGNvbC1tZC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBwbGFjZW1lbnQ9XCJ0b3BcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdiVG9vbHRpcF09XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInID8gJ01vcmUgdGhhbiAnKyBmZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWUgKycgbWlucycgOiAnRW5nYWdlcnMnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiICpuZ0lmPVwiY29udmVyc2lvblZhbHVlICE9PSdlbmdhZ2VycydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2hhbmdlVmFsdWUoJ2VuZ2FnZXJzJylcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTE3IDIxVjE5QzE3IDE3LjkzOTEgMTYuNTc4NiAxNi45MjE3IDE1LjgyODQgMTYuMTcxNkMxNS4wNzgzIDE1LjQyMTQgMTQuMDYwOSAxNSAxMyAxNUg1QzMuOTM5MTMgMTUgMi45MjE3MiAxNS40MjE0IDIuMTcxNTcgMTYuMTcxNkMxLjQyMTQzIDE2LjkyMTcgMSAxNy45MzkxIDEgMTlWMjFNMjMgMjFWMTlDMjIuOTk5MyAxOC4xMTM3IDIyLjcwNDQgMTcuMjUyOCAyMi4xNjE0IDE2LjU1MjNDMjEuNjE4NCAxNS44NTE5IDIwLjg1ODEgMTUuMzUxNiAyMCAxNS4xM00xNiAzLjEzQzE2Ljg2MDQgMy4zNTAzIDE3LjYyMyAzLjg1MDcgMTguMTY3NiA0LjU1MjMxQzE4LjcxMjIgNS4yNTM5MiAxOS4wMDc4IDYuMTE2ODMgMTkuMDA3OCA3LjAwNUMxOS4wMDc4IDcuODkzMTcgMTguNzEyMiA4Ljc1NjA4IDE4LjE2NzYgOS40NTc2OUMxNy42MjMgMTAuMTU5MyAxNi44NjA0IDEwLjY1OTcgMTYgMTAuODhNMTMgN0MxMyA5LjIwOTE0IDExLjIwOTEgMTEgOSAxMUM2Ljc5MDg2IDExIDUgOS4yMDkxNCA1IDdDNSA0Ljc5MDg2IDYuNzkwODYgMyA5IDNDMTEuMjA5MSAzIDEzIDQuNzkwODYgMTMgN1pcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHBsYWNlbWVudD1cInRvcFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ2JUb29sdGlwXT1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1MicgPyAnTW9yZSB0aGFuICcrIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSArJyBtaW5zJyA6ICdFbmdhZ2VycydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImNvbnZlcnNpb25WYWx1ZSA9PT0nZW5nYWdlcnMnXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xNyAyMVYxOUMxNyAxNy45MzkxIDE2LjU3ODYgMTYuOTIxNyAxNS44Mjg0IDE2LjE3MTZDMTUuMDc4MyAxNS40MjE0IDE0LjA2MDkgMTUgMTMgMTVINUMzLjkzOTEzIDE1IDIuOTIxNzIgMTUuNDIxNCAyLjE3MTU3IDE2LjE3MTZDMS40MjE0MyAxNi45MjE3IDEgMTcuOTM5MSAxIDE5VjIxTTIzIDIxVjE5QzIyLjk5OTMgMTguMTEzNyAyMi43MDQ0IDE3LjI1MjggMjIuMTYxNCAxNi41NTIzQzIxLjYxODQgMTUuODUxOSAyMC44NTgxIDE1LjM1MTYgMjAgMTUuMTNNMTYgMy4xM0MxNi44NjA0IDMuMzUwMyAxNy42MjMgMy44NTA3IDE4LjE2NzYgNC41NTIzMUMxOC43MTIyIDUuMjUzOTIgMTkuMDA3OCA2LjExNjgzIDE5LjAwNzggNy4wMDVDMTkuMDA3OCA3Ljg5MzE3IDE4LjcxMjIgOC43NTYwOCAxOC4xNjc2IDkuNDU3NjlDMTcuNjIzIDEwLjE1OTMgMTYuODYwNCAxMC42NTk3IDE2IDEwLjg4TTEzIDdDMTMgOS4yMDkxNCAxMS4yMDkxIDExIDkgMTFDNi43OTA4NiAxMSA1IDkuMjA5MTQgNSA3QzUgNC43OTA4NiA2Ljc5MDg2IDMgOSAzQzExLjIwOTEgMyAxMyA0Ljc5MDg2IDEzIDdaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMwMEEzRkZcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0gJzQ1MidcIiBjbGFzcz1cImgtNTBweCBjb2wtbWQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgcGxhY2VtZW50PVwidG9wXCIgbmdiVG9vbHRpcD1cIlBvdGVudGlhbCBCdXllcnNcIiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjb252ZXJzaW9uVmFsdWUgIT09J1BvdGVudGlhbCBCdXllcnMnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNoYW5nZVZhbHVlKCdwb3RlbnRpYWxCdXllcnMnKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggb3BhY2l0eT1cIjAuM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTIwLjAwMzkgMTguMDAySDQuMDAzOTFDMy40MDM5MSAxOC4wMDIgMy4wMDM5MSAxNy42MDIgMy4wMDM5MSAxNy4wMDJWNy4wMDE5NUMzLjAwMzkxIDYuNDAxOTUgMy40MDM5MSA2LjAwMTk1IDQuMDAzOTEgNi4wMDE5NUgyMC4wMDM5QzIwLjYwMzkgNi4wMDE5NSAyMS4wMDM5IDYuNDAxOTUgMjEuMDAzOSA3LjAwMTk1VjE3LjAwMkMyMS4wMDM5IDE3LjYwMiAyMC42MDM5IDE4LjAwMiAyMC4wMDM5IDE4LjAwMlpNMTIuMDAzOSA4LjAwMTk1QzEwLjMwMzkgOC4wMDE5NSA5LjAwMzkxIDkuODAxOTUgOS4wMDM5MSAxMi4wMDJDOS4wMDM5MSAxNC4yMDIgMTAuMzAzOSAxNi4wMDIgMTIuMDAzOSAxNi4wMDJDMTMuNzAzOSAxNi4wMDIgMTUuMDAzOSAxNC4yMDIgMTUuMDAzOSAxMi4wMDJDMTUuMDAzOSA5LjgwMTk1IDEzLjcwMzkgOC4wMDE5NSAxMi4wMDM5IDguMDAxOTVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjOThBMkIzXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTguMDAzOSA2LjAwMTk1SDIwLjAwMzlDMjAuNjAzOSA2LjAwMTk1IDIxLjAwMzkgNi40MDE5NSAyMS4wMDM5IDcuMDAxOTVWOS4wMDE5NUMxOS4zMDM5IDkuMDAxOTUgMTguMDAzOSA3LjcwMTk1IDE4LjAwMzkgNi4wMDE5NVpNNi4wMDM5MSA2LjAwMTk1SDQuMDAzOTFDMy40MDM5MSA2LjAwMTk1IDMuMDAzOTEgNi40MDE5NSAzLjAwMzkxIDcuMDAxOTVWOS4wMDE5NUM0LjcwMzkxIDkuMDAxOTUgNi4wMDM5MSA3LjcwMTk1IDYuMDAzOTEgNi4wMDE5NVpNMjEuMDAzOSAxNy4wMDJWMTUuMDAyQzE5LjMwMzkgMTUuMDAyIDE4LjAwMzkgMTYuMzAyIDE4LjAwMzkgMTguMDAySDIwLjAwMzlDMjAuNjAzOSAxOC4wMDIgMjEuMDAzOSAxNy42MDIgMjEuMDAzOSAxNy4wMDJaTTMuMDAzOTEgMTUuMDAyVjE3LjAwMkMzLjAwMzkxIDE3LjYwMiAzLjQwMzkxIDE4LjAwMiA0LjAwMzkxIDE4LjAwMkg2LjAwMzkxQzYuMDAzOTEgMTYuMzAyIDQuNzAzOTEgMTUuMDAyIDMuMDAzOTEgMTUuMDAyWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzk4QTJCM1wiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBwbGFjZW1lbnQ9XCJ0b3BcIiBuZ2JUb29sdGlwPVwiUG90ZW50aWFsIEJ1eWVyc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udmVyc2lvblZhbHVlID09PSdQb3RlbnRpYWwgQnV5ZXJzJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggb3BhY2l0eT1cIjAuM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTIwLjAwMzkgMTguMDAySDQuMDAzOTFDMy40MDM5MSAxOC4wMDIgMy4wMDM5MSAxNy42MDIgMy4wMDM5MSAxNy4wMDJWNy4wMDE5NUMzLjAwMzkxIDYuNDAxOTUgMy40MDM5MSA2LjAwMTk1IDQuMDAzOTEgNi4wMDE5NUgyMC4wMDM5QzIwLjYwMzkgNi4wMDE5NSAyMS4wMDM5IDYuNDAxOTUgMjEuMDAzOSA3LjAwMTk1VjE3LjAwMkMyMS4wMDM5IDE3LjYwMiAyMC42MDM5IDE4LjAwMiAyMC4wMDM5IDE4LjAwMlpNMTIuMDAzOSA4LjAwMTk1QzEwLjMwMzkgOC4wMDE5NSA5LjAwMzkxIDkuODAxOTUgOS4wMDM5MSAxMi4wMDJDOS4wMDM5MSAxNC4yMDIgMTAuMzAzOSAxNi4wMDIgMTIuMDAzOSAxNi4wMDJDMTMuNzAzOSAxNi4wMDIgMTUuMDAzOSAxNC4yMDIgMTUuMDAzOSAxMi4wMDJDMTUuMDAzOSA5LjgwMTk1IDEzLjcwMzkgOC4wMDE5NSAxMi4wMDM5IDguMDAxOTVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDBBM0ZGXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTguMDAzOSA2LjAwMTk1SDIwLjAwMzlDMjAuNjAzOSA2LjAwMTk1IDIxLjAwMzkgNi40MDE5NSAyMS4wMDM5IDcuMDAxOTVWOS4wMDE5NUMxOS4zMDM5IDkuMDAxOTUgMTguMDAzOSA3LjcwMTk1IDE4LjAwMzkgNi4wMDE5NVpNNi4wMDM5MSA2LjAwMTk1SDQuMDAzOTFDMy40MDM5MSA2LjAwMTk1IDMuMDAzOTEgNi40MDE5NSAzLjAwMzkxIDcuMDAxOTVWOS4wMDE5NUM0LjcwMzkxIDkuMDAxOTUgNi4wMDM5MSA3LjcwMTk1IDYuMDAzOTEgNi4wMDE5NVpNMjEuMDAzOSAxNy4wMDJWMTUuMDAyQzE5LjMwMzkgMTUuMDAyIDE4LjAwMzkgMTYuMzAyIDE4LjAwMzkgMTguMDAySDIwLjAwMzlDMjAuNjAzOSAxOC4wMDIgMjEuMDAzOSAxNy42MDIgMjEuMDAzOSAxNy4wMDJaTTMuMDAzOTEgMTUuMDAyVjE3LjAwMkMzLjAwMzkxIDE3LjYwMiAzLjQwMzkxIDE4LjAwMiA0LjAwMzkxIDE4LjAwMkg2LjAwMzkxQzYuMDAzOTEgMTYuMzAyIDQuNzAzOTEgMTUuMDAyIDMuMDAzOTEgMTUuMDAyWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwQTNGRlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxzcGFuIGNsYXNzPVwiaC01MHB4IGNvbC1tZC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgcGxhY2VtZW50PVwidG9wXCIgbmdiVG9vbHRpcD1cIk5vQiBEZXJpdmVkXCIgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiICpuZ0lmPVwiY29udmVyc2lvblZhbHVlICE9PSdOb0IgRGVyaXZlZCdcIiAoY2xpY2spPVwiY2hhbmdlVmFsdWUoJ05vQiBEZXJpdmVkJylcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBvcGFjaXR5PVwiMC4zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTE4LjAwMzkgMjEuNjAwNUMxNi4zMDM5IDIxLjYwMDUgMTUuMDAzOSAyMC4zMDA1IDE1LjAwMzkgMTguNjAwNVYyLjUwMDVDMTUuMDAzOSAyLjIwMDUgMTQuNjAzOSAyLjAwMDQ1IDE0LjMwMzkgMi4yMDA0NUwxMy4wMDM5IDMuNjAwNDhMMTEuNzAzOSAyLjMwMDQ5QzExLjMwMzkgMS45MDA0OSAxMC43MDM5IDEuOTAwNDkgMTAuMzAzOSAyLjMwMDQ5TDkuMDAzOTEgMy42MDA0OEw3LjcwMzkyIDIuMzAwNDlDNy4zMDM5MiAxLjkwMDQ5IDYuNzAzOSAxLjkwMDQ5IDYuMzAzOSAyLjMwMDQ5TDUuMDAzOTEgMy42MDA0OEwzLjcwMzkyIDIuMzAwNDlDMy41MDM5MiAyLjEwMDQ5IDMuMDAzOTEgMi4yMDA1IDMuMDAzOTEgMy41MDA1VjE4LjYwMDVDMy4wMDM5MSAyMC4zMDA1IDQuMzAzOTEgMjEuNjAwNSA2LjAwMzkxIDIxLjYwMDVIMTguMDAzOVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjOThBMkIzXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMi4wMDU5IDEyLjU5NzJIMTEuMDA1OUMxMC40MDU5IDEyLjU5NzIgMTAuMDA1OSAxMi4xOTcyIDEwLjAwNTkgMTEuNTk3MkMxMC4wMDU5IDEwLjk5NzIgMTAuNDA1OSAxMC41OTcyIDExLjAwNTkgMTAuNTk3MkgxMi4wMDU5QzEyLjYwNTkgMTAuNTk3MiAxMy4wMDU5IDEwLjk5NzIgMTMuMDA1OSAxMS41OTcyQzEzLjAwNTkgMTIuMTk3MiAxMi42MDU5IDEyLjU5NzIgMTIuMDA1OSAxMi41OTcyWk05LjAwNTg2IDExLjU5NzJDOS4wMDU4NiAxMC45OTcyIDguNjA1ODYgMTAuNTk3MiA4LjAwNTg2IDEwLjU5NzJINi4wMDU4NkM1LjQwNTg2IDEwLjU5NzIgNS4wMDU4NiAxMC45OTcyIDUuMDA1ODYgMTEuNTk3MkM1LjAwNTg2IDEyLjE5NzIgNS40MDU4NiAxMi41OTcyIDYuMDA1ODYgMTIuNTk3Mkg4LjAwNTg2QzguNjA1ODYgMTIuNTk3MiA5LjAwNTg2IDEyLjE5NzIgOS4wMDU4NiAxMS41OTcyWk05LjAwNTg2IDcuNTk3MTdDOS4wMDU4NiA2Ljk5NzE3IDguNjA1ODYgNi41OTcxNyA4LjAwNTg2IDYuNTk3MTdINi4wMDU4NkM1LjQwNTg2IDYuNTk3MTcgNS4wMDU4NiA2Ljk5NzE3IDUuMDA1ODYgNy41OTcxN0M1LjAwNTg2IDguMTk3MTcgNS40MDU4NiA4LjU5NzE3IDYuMDA1ODYgOC41OTcxN0g4LjAwNTg2QzguNjA1ODYgOC41OTcxNyA5LjAwNTg2IDguMTk3MTcgOS4wMDU4NiA3LjU5NzE3Wk0xMy4wMDU5IDcuNTk3MTdDMTMuMDA1OSA2Ljk5NzE3IDEyLjYwNTkgNi41OTcxNyAxMi4wMDU5IDYuNTk3MTdIMTEuMDA1OUMxMC40MDU5IDYuNTk3MTcgMTAuMDA1OSA2Ljk5NzE3IDEwLjAwNTkgNy41OTcxN0MxMC4wMDU5IDguMTk3MTcgMTAuNDA1OSA4LjU5NzE3IDExLjAwNTkgOC41OTcxN0gxMi4wMDU5QzEyLjYwNTkgOC41OTcxNyAxMy4wMDU5IDguMTk3MTcgMTMuMDA1OSA3LjU5NzE3Wk0xMy4wMDU5IDE1LjU5NzJDMTMuMDA1OSAxNC45OTcyIDEyLjYwNTkgMTQuNTk3MiAxMi4wMDU5IDE0LjU5NzJIMTAuMDA1OUM5LjQwNTg2IDE0LjU5NzIgOS4wMDU4NiAxNC45OTcyIDkuMDA1ODYgMTUuNTk3MkM5LjAwNTg2IDE2LjE5NzIgOS40MDU4NiAxNi41OTcyIDEwLjAwNTkgMTYuNTk3MkgxMi4wMDU5QzEyLjYwNTkgMTYuNTk3MiAxMy4wMDU5IDE2LjE5NzIgMTMuMDA1OSAxNS41OTcyWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiM5OEEyQjNcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTE1LjAwMiAxOC41OTcxQzE1LjAwMiAyMC4yOTcxIDE2LjMwMiAyMS41OTcxIDE4LjAwMiAyMS41OTcxQzE5LjcwMiAyMS41OTcxIDIxLjAwMiAyMC4yOTcxIDIxLjAwMiAxOC41OTcxVjEyLjQ5NzFDMjEuMDAyIDEyLjE5NzEgMjAuNjAyIDExLjk5NzEgMjAuMzAyIDEyLjE5NzFMMTkuMDAyIDEzLjU5NzFMMTcuNzAyIDEyLjI5NzFDMTcuMzAyIDExLjg5NzEgMTYuNzAyIDExLjg5NzEgMTYuMzAyIDEyLjI5NzFMMTUuMDAyIDEzLjU5NzFWMTguNTk3MVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjOThBMkIzXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgcGxhY2VtZW50PVwidG9wXCIgbmdiVG9vbHRpcD1cIk5vQiBEZXJpdmVkXCIgKm5nSWY9XCJjb252ZXJzaW9uVmFsdWUgPT09J05vQiBEZXJpdmVkJ1wiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIG9wYWNpdHk9XCIwLjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTguMDAzOSAyMS42MDA1QzE2LjMwMzkgMjEuNjAwNSAxNS4wMDM5IDIwLjMwMDUgMTUuMDAzOSAxOC42MDA1VjIuNTAwNUMxNS4wMDM5IDIuMjAwNSAxNC42MDM5IDIuMDAwNDUgMTQuMzAzOSAyLjIwMDQ1TDEzLjAwMzkgMy42MDA0OEwxMS43MDM5IDIuMzAwNDlDMTEuMzAzOSAxLjkwMDQ5IDEwLjcwMzkgMS45MDA0OSAxMC4zMDM5IDIuMzAwNDlMOS4wMDM5MSAzLjYwMDQ4TDcuNzAzOTIgMi4zMDA0OUM3LjMwMzkyIDEuOTAwNDkgNi43MDM5IDEuOTAwNDkgNi4zMDM5IDIuMzAwNDlMNS4wMDM5MSAzLjYwMDQ4TDMuNzAzOTIgMi4zMDA0OUMzLjUwMzkyIDIuMTAwNDkgMy4wMDM5MSAyLjIwMDUgMy4wMDM5MSAzLjUwMDVWMTguNjAwNUMzLjAwMzkxIDIwLjMwMDUgNC4zMDM5MSAyMS42MDA1IDYuMDAzOTEgMjEuNjAwNUgxOC4wMDM5WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMEEzRkZcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTEyLjAwNTkgMTIuNTk3MkgxMS4wMDU5QzEwLjQwNTkgMTIuNTk3MiAxMC4wMDU5IDEyLjE5NzIgMTAuMDA1OSAxMS41OTcyQzEwLjAwNTkgMTAuOTk3MiAxMC40MDU5IDEwLjU5NzIgMTEuMDA1OSAxMC41OTcySDEyLjAwNTlDMTIuNjA1OSAxMC41OTcyIDEzLjAwNTkgMTAuOTk3MiAxMy4wMDU5IDExLjU5NzJDMTMuMDA1OSAxMi4xOTcyIDEyLjYwNTkgMTIuNTk3MiAxMi4wMDU5IDEyLjU5NzJaTTkuMDA1ODYgMTEuNTk3MkM5LjAwNTg2IDEwLjk5NzIgOC42MDU4NiAxMC41OTcyIDguMDA1ODYgMTAuNTk3Mkg2LjAwNTg2QzUuNDA1ODYgMTAuNTk3MiA1LjAwNTg2IDEwLjk5NzIgNS4wMDU4NiAxMS41OTcyQzUuMDA1ODYgMTIuMTk3MiA1LjQwNTg2IDEyLjU5NzIgNi4wMDU4NiAxMi41OTcySDguMDA1ODZDOC42MDU4NiAxMi41OTcyIDkuMDA1ODYgMTIuMTk3MiA5LjAwNTg2IDExLjU5NzJaTTkuMDA1ODYgNy41OTcxN0M5LjAwNTg2IDYuOTk3MTcgOC42MDU4NiA2LjU5NzE3IDguMDA1ODYgNi41OTcxN0g2LjAwNTg2QzUuNDA1ODYgNi41OTcxNyA1LjAwNTg2IDYuOTk3MTcgNS4wMDU4NiA3LjU5NzE3QzUuMDA1ODYgOC4xOTcxNyA1LjQwNTg2IDguNTk3MTcgNi4wMDU4NiA4LjU5NzE3SDguMDA1ODZDOC42MDU4NiA4LjU5NzE3IDkuMDA1ODYgOC4xOTcxNyA5LjAwNTg2IDcuNTk3MTdaTTEzLjAwNTkgNy41OTcxN0MxMy4wMDU5IDYuOTk3MTcgMTIuNjA1OSA2LjU5NzE3IDEyLjAwNTkgNi41OTcxN0gxMS4wMDU5QzEwLjQwNTkgNi41OTcxNyAxMC4wMDU5IDYuOTk3MTcgMTAuMDA1OSA3LjU5NzE3QzEwLjAwNTkgOC4xOTcxNyAxMC40MDU5IDguNTk3MTcgMTEuMDA1OSA4LjU5NzE3SDEyLjAwNTlDMTIuNjA1OSA4LjU5NzE3IDEzLjAwNTkgOC4xOTcxNyAxMy4wMDU5IDcuNTk3MTdaTTEzLjAwNTkgMTUuNTk3MkMxMy4wMDU5IDE0Ljk5NzIgMTIuNjA1OSAxNC41OTcyIDEyLjAwNTkgMTQuNTk3MkgxMC4wMDU5QzkuNDA1ODYgMTQuNTk3MiA5LjAwNTg2IDE0Ljk5NzIgOS4wMDU4NiAxNS41OTcyQzkuMDA1ODYgMTYuMTk3MiA5LjQwNTg2IDE2LjU5NzIgMTAuMDA1OSAxNi41OTcySDEyLjAwNTlDMTIuNjA1OSAxNi41OTcyIDEzLjAwNTkgMTYuMTk3MiAxMy4wMDU5IDE1LjU5NzJaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwQTNGRlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTUuMDAyIDE4LjU5NzFDMTUuMDAyIDIwLjI5NzEgMTYuMzAyIDIxLjU5NzEgMTguMDAyIDIxLjU5NzFDMTkuNzAyIDIxLjU5NzEgMjEuMDAyIDIwLjI5NzEgMjEuMDAyIDE4LjU5NzFWMTIuNDk3MUMyMS4wMDIgMTIuMTk3MSAyMC42MDIgMTEuOTk3MSAyMC4zMDIgMTIuMTk3MUwxOS4wMDIgMTMuNTk3MUwxNy43MDIgMTIuMjk3MUMxNy4zMDIgMTEuODk3MSAxNi43MDIgMTEuODk3MSAxNi4zMDIgMTIuMjk3MUwxNS4wMDIgMTMuNTk3MVYxOC41OTcxWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMEEzRkZcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtZm9vdGVyIG1zLTMgcC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgcGUtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMiBjb2wtbWQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiKGNvbnZlcnNpb25WYWx1ZSA9PT0nZm9vdGZhbGwnICYmICFnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LmZvb3RmYWxsLlByZXZpb3VzVmFyaWF0aW9uKSB8fCAoY29udmVyc2lvblZhbHVlID09PSdlbmdhZ2VycycgJiYgIWdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZW5nYWdlcnMuUHJldmlvdXNWYXJpYXRpb24pIHx8IChjb252ZXJzaW9uVmFsdWUgPT09J1BvdGVudGlhbCBCdXllcnMnICYmICFnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LnBvdGVudGlhbEJ1eWVycy5QcmV2aW91c1ZhcmlhdGlvbikgfHwgKGNvbnZlcnNpb25WYWx1ZSA9PT0nTm9CIERlcml2ZWQnICYmICFnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/Lm5vYi5QcmV2aW91c1ZhcmlhdGlvbilcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMThcIiBoZWlnaHQ9XCIxOFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE4IDE4XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMjMyOF80NjU0KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTEuNSA5TDYuNzUgNC4yNUw0LjI1IDYuNzVMMC41IDNNMTEuNSA5SDguNU0xMS41IDlWNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiNEOTJEMjBcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMjMyOF80NjU0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCIoY29udmVyc2lvblZhbHVlID09PSdmb290ZmFsbCcgJiYgZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5mb290ZmFsbC5QcmV2aW91c1ZhcmlhdGlvbikgfHwgKGNvbnZlcnNpb25WYWx1ZSA9PT0nZW5nYWdlcnMnICYmIGdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZW5nYWdlcnMuUHJldmlvdXNWYXJpYXRpb24pIHx8IChjb252ZXJzaW9uVmFsdWUgPT09J1BvdGVudGlhbCBCdXllcnMnICYmIGdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8ucG90ZW50aWFsQnV5ZXJzLlByZXZpb3VzVmFyaWF0aW9uKSB8fCAoY29udmVyc2lvblZhbHVlID09PSdOb0IgRGVyaXZlZCcgJiYgZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5ub2IuUHJldmlvdXNWYXJpYXRpb24pXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzMyMTZfMTE4KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTEuNSAzTDYuNzUgNy43NUw0LjI1IDUuMjVMMC41IDlNMTEuNSAzSDguNU0xMS41IDNWNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMwMzk4NTVcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzIxNl8xMThcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMiBjb2wtbWQtOSBwZS0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImNvbnZlcnNpb25WYWx1ZSA9PT0nZm9vdGZhbGwnICYmIGdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZm9vdGZhbGwuUHJldmlvdXNEYXRhID09PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+MCU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImNvbnZlcnNpb25WYWx1ZSA9PT0nZm9vdGZhbGwnICYmIGdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZm9vdGZhbGwuUHJldmlvdXNEYXRhICE9PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+e3tnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LmZvb3RmYWxsLlByZXZpb3VzRGF0YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5mb290ZmFsbC5QcmV2aW91c0RhdGE6Jy0tJ319JTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udmVyc2lvblZhbHVlID09PSdlbmdhZ2VycycgJiYgZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5lbmdhZ2Vycy5QcmV2aW91c0RhdGEgPT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj4wJTwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImNvbnZlcnNpb25WYWx1ZSA9PT0nZW5nYWdlcnMnICYmIGdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZW5nYWdlcnMuUHJldmlvdXNEYXRhICE9PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+e3tnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LmVuZ2FnZXJzLlByZXZpb3VzRGF0YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5lbmdhZ2Vycy5QcmV2aW91c0RhdGE6Jy0tJ319JTwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImNvbnZlcnNpb25WYWx1ZSA9PT0nUG90ZW50aWFsIEJ1eWVycycgJiYgZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5wb3RlbnRpYWxCdXllcnMuUHJldmlvdXNEYXRhID09PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+MCU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImNvbnZlcnNpb25WYWx1ZSA9PT0nUG90ZW50aWFsIEJ1eWVycycgJiYgZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5wb3RlbnRpYWxCdXllcnMuUHJldmlvdXNEYXRhICE9PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+e3tnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LnBvdGVudGlhbEJ1eWVycy5QcmV2aW91c0RhdGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8ucG90ZW50aWFsQnV5ZXJzLlByZXZpb3VzRGF0YTonLS0nfX0lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjb252ZXJzaW9uVmFsdWUgPT09J05vQiBEZXJpdmVkJyAmJiBnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/Lm5vYi5QcmV2aW91c0RhdGEgPT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj4wJTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udmVyc2lvblZhbHVlID09PSdOb0IgRGVyaXZlZCcgJiYgZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5ub2IuUHJldmlvdXNEYXRhICE9PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+e3tnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/Lm5vYi5QcmV2aW91c0RhdGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5ub2IuUHJldmlvdXNEYXRhOictLSd9fSU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4gKm5nSWY9XCJjb252ZXJzaW9uVmFsdWUgPT09J05vQiBEZXJpdmVkJ1wiIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiPi0tJTwvc3Bhbj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4gKm5nSWY9XCJjb252ZXJzaW9uVmFsdWUgPT09JycgJiYgZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5QcmV2aW91c0RhdGEgPT09MFwiIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiPjAlPC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjb252ZXJzaW9uVmFsdWUgPT09JycgJiYgZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5QcmV2aW91c0RhdGEgIT09MFwiICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj57e2dldENhcmRHcmFwaERhdGE/LmNvbnZlcnNpb24/LlByZXZpb3VzRGF0YSA/IGdldENhcmRHcmFwaERhdGE/LmNvbnZlcnNpb24/LlByZXZpb3VzRGF0YTonLS0nfX0lPC9zcGFuPiAtLT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwid2Vlay1mb250XCI+IHZzIFByZXZpb3VzIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJkYXRlVHlwZSA9PT0nZGFpbHknXCI+ZGF5PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJkYXRlVHlwZSA9PT0nd2Vla2x5J1wiPndlZWs8L3NwYW4+IDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJkYXRlVHlwZSA9PT0nbW9udGhseSdcIj5tb250aDwvc3Bhbj48L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5pc05PQlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY29sLW1kLTIgcHgtMCBjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJub2JVcGxvYWQoKVwiPjxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cInRvcFwiIG5nYlRvb2x0aXA9XCJVcGxvYWQgTm9CXCIgd2lkdGg9XCIzMlwiIGhlaWdodD1cIjMyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMzIgMzJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGZpbHRlcj1cInVybCgjZmlsdGVyMF9kXzYxNjBfNDM5NClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB4PVwiMlwiIHk9XCIxXCIgd2lkdGg9XCIyOFwiIGhlaWdodD1cIjI4XCIgcng9XCI2LjIyMjIyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiNFQUY4RkZcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHg9XCIyLjM4ODg5XCIgeT1cIjEuMzg4ODlcIiB3aWR0aD1cIjI3LjIyMjJcIiBoZWlnaHQ9XCIyNy4yMjIyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcng9XCI1LjgzMzMzXCIgc3Ryb2tlPVwiI0VBRjhGRlwiIHN0cm9rZS13aWR0aD1cIjAuNzc3Nzc4XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzYxNjBfNDM5NClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTguNTkyOSAxNy41OTI2TDE2LjAwMDMgMTVNMTYuMDAwMyAxNUwxMy40MDc3IDE3LjU5MjZNMTYuMDAwMyAxNVYyMC44MzMzTTIxLjQzODIgMTkuMTQxN0MyMi4wNzA0IDE4Ljc5NyAyMi41Njk4IDE4LjI1MTcgMjIuODU3NiAxNy41OTE3QzIzLjE0NTQgMTYuOTMxNyAyMy4yMDUyIDE2LjE5NDcgMjMuMDI3NiAxNS40OTY5QzIyLjg1IDE0Ljc5OTIgMjIuNDQ1MSAxNC4xODA0IDIxLjg3NjggMTMuNzM4NEMyMS4zMDg1IDEzLjI5NjMgMjAuNjA5MiAxMy4wNTYgMTkuODg5MiAxMy4wNTU2SDE5LjA3MjVDMTguODc2MyAxMi4yOTY3IDE4LjUxMDcgMTEuNTkyMyAxOC4wMDMgMTAuOTk1MUMxNy40OTU0IDEwLjM5NzkgMTYuODU5IDkuOTIzNjIgMTYuMTQxNiA5LjYwNzgyQzE1LjQyNDMgOS4yOTIwMSAxNC42NDQ3IDkuMTQyOTMgMTMuODYxNSA5LjE3MTc5QzEzLjA3ODIgOS4yMDA2NSAxMi4zMTE3IDkuNDA2NjkgMTEuNjE5NiA5Ljc3NDQzQzEwLjkyNzQgMTAuMTQyMiAxMC4zMjc2IDEwLjY2MiA5Ljg2NTMxIDExLjI5NDlDOS40MDI5OSAxMS45Mjc4IDkuMDkwMTYgMTIuNjU3MyA4Ljk1MDM1IDEzLjQyODVDOC44MTA1NCAxNC4xOTk3IDguODQ3MzggMTQuOTkyNiA5LjA1ODEgMTUuNzQ3NUM5LjI2ODgxIDE2LjUwMjQgOS42NDc5MyAxNy4xOTk3IDEwLjE2NjkgMTcuNzg3MVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMDA5QkYzXCIgc3Ryb2tlLXdpZHRoPVwiMS4yOTg4OVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWx0ZXIgaWQ9XCJmaWx0ZXIwX2RfNjE2MF80Mzk0XCIgeD1cIjAuNDQ0NDQ0XCIgeT1cIjAuMjIyMjIyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIzMS4xMTExXCIgaGVpZ2h0PVwiMzEuMTExMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlclVuaXRzPVwidXNlclNwYWNlT25Vc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9XCJzUkdCXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUZsb29kIGZsb29kLW9wYWNpdHk9XCIwXCIgcmVzdWx0PVwiQmFja2dyb3VuZEltYWdlRml4XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQ29sb3JNYXRyaXggaW49XCJTb3VyY2VBbHBoYVwiIHR5cGU9XCJtYXRyaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPVwiMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMTI3IDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0PVwiaGFyZEFscGhhXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlT2Zmc2V0IGR5PVwiMC43Nzc3NzhcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPVwiMC43Nzc3NzhcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCB0eXBlPVwibWF0cml4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz1cIjAgMCAwIDAgMC4wNjI3NDUxIDAgMCAwIDAgMC4wOTQxMTc2IDAgMCAwIDAgMC4xNTY4NjMgMCAwIDAgMC4wNSAwXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQmxlbmQgbW9kZT1cIm5vcm1hbFwiIGluMj1cIkJhY2tncm91bmRJbWFnZUZpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ9XCJlZmZlY3QxX2Ryb3BTaGFkb3dfNjE2MF80Mzk0XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQmxlbmQgbW9kZT1cIm5vcm1hbFwiIGluPVwiU291cmNlR3JhcGhpY1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbjI9XCJlZmZlY3QxX2Ryb3BTaGFkb3dfNjE2MF80Mzk0XCIgcmVzdWx0PVwic2hhcGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlsdGVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzYxNjBfNDM5NFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjE1LjU1NTZcIiBoZWlnaHQ9XCIxNS41NTU2XCIgZmlsbD1cIndoaXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg4LjIyMjY2IDcuMjIyMjMpXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC00XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBjYXJkLWJvcmRlciBoLTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBlbGxpcHNlMSBib3JkZXItMCBweC0zXCIgW25nYlRvb2x0aXBdPVwiYm91bmNlZFRvb2x0aXBcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjYXJkLWxhYmVsIGhlYWRlclwiPnt7Z2V0Qm91bmNlZENhcmREYXRhPy5jYXJkPy5ib3VuY2VkPy5yYXRlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRCb3VuY2VkQ2FyZERhdGE/LmNhcmQ/LmJvdW5jZWQ/LnJhdGUgOictLSd9fSU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJcIj48c3BhbiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0gJzQ1MidcIj5Cb3VuY2VkIDwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInXCI+TGVzcyB0aGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Y2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmJvdW5jZWRMaW1pdD8udmFsdWV9fSBtaW5zIDwvc3Bhbj4gUmF0ZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2JvdW5jZWRUb29sdGlwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9vbHRpcC1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9XCJ0b29sdGlwLXRpdGxlIHRleHQtc3RhcnRcIiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0gJzQ1MidcIj5Cb3VuY2VkIFJhdGU8L2g1PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXN0YXJ0XCI+VG90YWwgd2Fsay1pbnMgd2hvIHNwZW50IGxlc3MgdGhhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Y2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmJvdW5jZWRMaW1pdD8udmFsdWV9fSBtaW5zLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiYm91bmNlZE5vZGF0YVwiIGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTEyIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2FyZC1ib2R5IHBiLTAgcHgtMCBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImltZy1ub2RhdGExXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvTm9kYXRhMS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS10aXRsZTFcIj5ObyBkYXRhIGZvdW5kPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cIm5vZGF0YS1zdWJcIj5UaGVyZSBpcyBubyByZXN1bHQgZm9yIHRoaXMgY29udmVyc2lvbiBmdW5uZWw8L2Rpdj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhYm91bmNlZE5vZGF0YVwiIGNsYXNzPVwidGV4dC1jZW50ZXJcIiBpZD1cIkJvdW5jZWRSYXRlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtZm9vdGVyIG1zLTIgcC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJnZXRCb3VuY2VkQ2FyZERhdGE/LmRhdGE/LmJvdW5jZWQ/LlByZXZpb3VzVmFyaWF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMThcIiBoZWlnaHQ9XCIxOFwiIHZpZXdCb3g9XCIwIDAgMTggMThcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzIzMjhfNDY1NClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTEuNSA5TDYuNzUgNC4yNUw0LjI1IDYuNzVMMC41IDNNMTEuNSA5SDguNU0xMS41IDlWNlwiIHN0cm9rZT1cIiMwMzk4NTVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8yMzI4XzQ2NTRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiIWdldEJvdW5jZWRDYXJkRGF0YT8uZGF0YT8uYm91bmNlZD8uUHJldmlvdXNWYXJpYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzIxNl8xMTgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTExLjUgM0w2Ljc1IDcuNzVMNC4yNSA1LjI1TDAuNSA5TTExLjUgM0g4LjVNMTEuNSAzVjZcIiBzdHJva2U9XCIjRDkyRDIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzIxNl8xMThcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHN2ZyAqbmdJZj1cImdldEJvdW5jZWRDYXJkRGF0YT8uZGF0YT8uYm91bmNlZD8uUHJldmlvdXNWYXJpYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzIxNl8xMTgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTExLjUgM0w2Ljc1IDcuNzVMNC4yNSA1LjI1TDAuNSA5TTExLjUgM0g4LjVNMTEuNSAzVjZcIiBzdHJva2U9XCIjMDM5ODU1XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzIxNl8xMThcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMiBtcy0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJnZXRCb3VuY2VkQ2FyZERhdGE/LmRhdGE/LmJvdW5jZWQ/LlByZXZpb3VzRGF0YSA9PT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+MCU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJnZXRCb3VuY2VkQ2FyZERhdGE/LmRhdGE/LmJvdW5jZWQ/LlByZXZpb3VzRGF0YSAhPT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+e3tnZXRCb3VuY2VkQ2FyZERhdGE/LmRhdGE/LmJvdW5jZWQ/LlByZXZpb3VzRGF0YSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldEJvdW5jZWRDYXJkRGF0YT8uZGF0YT8uYm91bmNlZD8uUHJldmlvdXNEYXRhOictLSd9fSU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3ZWVrLWZvbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdnMgUHJldmlvdXMgPHNwYW4gKm5nSWY9XCJkYXRlVHlwZSA9PT0nZGFpbHknXCI+ZGF5PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSd3ZWVrbHknXCI+d2Vlazwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J21vbnRobHknXCI+bW9udGg8L3NwYW4+PC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBjYXJkLWJvcmRlciBoLTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBlbGxpcHNlMSBib3JkZXItMCBweC0zXCIgW25nYlRvb2x0aXBdPVwiZW5nYWdlcnNUb29sdGlwXCIgcGxhY2VtZW50PVwicmlnaHRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSAgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW4gXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcmQtbGFiZWwgaGVhZGVyXCI+e3tnZXRFbmdhZ2Vyc0NhcmREYXRhPy5jYXJkPy5lbmdhZ2Vycz8ucmF0ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0RW5nYWdlcnNDYXJkRGF0YT8uY2FyZD8uZW5nYWdlcnM/LnJhdGUgOictLSd9fSU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJcIj48c3BhbiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0gJzQ1MidcIj5FbmdhZ2Vyczwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInXCI+TW9yZSB0aGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Y2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmJvdW5jZWRMaW1pdD8udmFsdWV9fSBtaW5zPC9zcGFuPiBSYXRlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZW5nYWdlcnNUb29sdGlwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9vbHRpcC1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9XCJ0b29sdGlwLXRpdGxlIHRleHQtc3RhcnRcIiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0gJzQ1MidcIj5FbmdhZ2VycyBSYXRlPC9oNT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwidGV4dC1zdGFydFwiPlRvdGFsIHdhbGstaW5zIHdobyBzcGVudCBtb3JlIHRoYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2NsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5ib3VuY2VkTGltaXQ/LnZhbHVlfX0gbWlucyBpbnRvIHRoZSBzZWxlY3RlZCBzdG9yZXMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImVuZ2FnZXJzTm9kYXRhXCIgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXJkLWJvZHkgcGItMCBweC0wIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiaW1nLW5vZGF0YTFcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGExLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXRpdGxlMVwiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwibm9kYXRhLXN1YlwiPlRoZXJlIGlzIG5vIHJlc3VsdCBmb3IgdGhpcyBjb252ZXJzaW9uIGZ1bm5lbDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFlbmdhZ2Vyc05vZGF0YVwiIGNsYXNzPVwidGV4dC1jZW50ZXJcIiBpZD1cImVuZ2FnZXJzXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtZm9vdGVyIG1zLTIgcC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCIhZ2V0RW5nYWdlcnNDYXJkRGF0YT8uZGF0YT8uZW5nYWdlcnM/LlByZXZpb3VzVmFyaWF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMThcIiBoZWlnaHQ9XCIxOFwiIHZpZXdCb3g9XCIwIDAgMTggMThcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzIzMjhfNDY1NClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTEuNSA5TDYuNzUgNC4yNUw0LjI1IDYuNzVMMC41IDNNMTEuNSA5SDguNU0xMS41IDlWNlwiIHN0cm9rZT1cIiNEOTJEMjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8yMzI4XzQ2NTRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJnZXRFbmdhZ2Vyc0NhcmREYXRhPy5kYXRhPy5lbmdhZ2Vycz8uUHJldmlvdXNWYXJpYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzIxNl8xMTgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTExLjUgM0w2Ljc1IDcuNzVMNC4yNSA1LjI1TDAuNSA5TTExLjUgM0g4LjVNMTEuNSAzVjZcIiBzdHJva2U9XCIjMDM5ODU1XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzIxNl8xMThcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtdC0yIG1zLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImdldEVuZ2FnZXJzQ2FyZERhdGE/LmRhdGE/LmVuZ2FnZXJzPy5QcmV2aW91c0RhdGEgPT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiPjAlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZ2V0RW5nYWdlcnNDYXJkRGF0YT8uZGF0YT8uZW5nYWdlcnM/LlByZXZpb3VzRGF0YSAhPT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+e3tnZXRFbmdhZ2Vyc0NhcmREYXRhPy5kYXRhPy5lbmdhZ2Vycz8uUHJldmlvdXNEYXRhID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0RW5nYWdlcnNDYXJkRGF0YT8uZGF0YT8uZW5nYWdlcnM/LlByZXZpb3VzRGF0YTonLS0nfX0lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwid2Vlay1mb250XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZzIFByZXZpb3VzIDxzcGFuICpuZ0lmPVwiZGF0ZVR5cGUgPT09J2RhaWx5J1wiPmRheTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJkYXRlVHlwZSA9PT0nd2Vla2x5J1wiPndlZWs8L3NwYW4+IDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSdtb250aGx5J1wiPm1vbnRoPC9zcGFuPjwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTQgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQgY2FyZC1ib3JkZXIgaC0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJ1wiIGNsYXNzPVwiY2FyZC1oZWFkZXIgZWxsaXBzZTEgYm9yZGVyLTAgcHgtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcmQtbGFiZWwgaGVhZGVyXCI+e3tnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/Lm1pc3NlZG9wcG9ydHVuaXRpZXM/LnJhdGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8ubWlzc2Vkb3Bwb3J0dW5pdGllcz8ucmF0ZSA6Jy0tJ319JTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLWhlYWRlclwiPjxzcGFuICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiPk1pc3NlZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPcHBvcnR1bml0aWVzPC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJ1wiPnt7Y2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/Lm1pc3NlZE9wcG9ydHVuaXR5RnJvbT8udmFsdWV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtIHt7Y2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/Lm1pc3NlZE9wcG9ydHVuaXR5VG8/LnZhbHVlfX0gbWluczwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0gJzQ1MidcIiBjbGFzcz1cImNhcmQtaGVhZGVyIGVsbGlwc2UxIGJvcmRlci0wIHB4LTNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdiVG9vbHRpcF09XCJtaXNzZWRUb29sdGlwXCIgcGxhY2VtZW50PVwicmlnaHRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjYXJkLWxhYmVsIGhlYWRlclwiPnt7Z2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5taXNzZWRvcHBvcnR1bml0aWVzPy5yYXRlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/Lm1pc3NlZG9wcG9ydHVuaXRpZXM/LnJhdGUgOictLSd9fSU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJcIj48c3BhbiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0gJzQ1MidcIj5NaXNzZWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3Bwb3J0dW5pdGllczwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1MidcIj57e2NsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5taXNzZWRPcHBvcnR1bml0eUZyb20/LnZhbHVlfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLSB7e2NsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5taXNzZWRPcHBvcnR1bml0eVRvPy52YWx1ZX19IG1pbnM8L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbWlzc2VkVG9vbHRpcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvb2x0aXAtY29udGVudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwidG9vbHRpcC10aXRsZSB0ZXh0LXN0YXJ0XCIgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgIT09ICc0NTInXCI+TWlzc2VkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3Bwb3J0dW5pdGllczwvaDU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0gJzQ1MidcIiBjbGFzcz1cInRleHQtc3RhcnRcIj5UaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FsY3VsYXRpb24gPT09ICdlbmdhZ2Vycy1jb252ZXJzaW9uJyB8fCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5taXNzZWRPcHBvcnR1bml0eUNhbGN1bGF0aW9uID09PSAnZ3JvdXAtY29udmVyc2lvbidcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FsY3VsYXRpb24gPT09XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdlbmdhZ2Vycy1jb252ZXJzaW9uJyA/ICdlbmdhZ2VycyBhbmQgY29udmVyc2lvbnMsJyA6ICdwb3RlbnRpYWwgYW5kIGNvbnZlcnNpb25zLCdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hvd2luZyBwb3RlbnRpYWwgbG9zcy48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1MidcIiBjbGFzcz1cInRleHQtc3RhcnRcIj5UaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FsY3VsYXRpb24gPT09ICdlbmdhZ2Vycy1jb252ZXJzaW9uJyB8fCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5taXNzZWRPcHBvcnR1bml0eUNhbGN1bGF0aW9uID09PSAnZ3JvdXAtY29udmVyc2lvbidcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FsY3VsYXRpb24gPT09ICdlbmdhZ2Vycy1jb252ZXJzaW9uJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICgnTW9yZSB0aGFuICcgKyBmZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQ/LnZhbHVlICsgJyBtaW5zIGFuZCBNb3JlIHRoYW4gJyArXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/LmNvbnZlcnNpb24/LnZhbHVlICsgJyBtaW5zJylcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAoJ3BvdGVudGlhbCBhbmQgTW9yZSB0aGFuICcrIGZlYXR1cmVDb25maWc/LmNvbnZlcnNpb24/LnZhbHVlKyAnIG1pbnMnKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93aW5nIHBvdGVudGlhbCBsb3NzLjwvcD5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwLTAgaC05MHB4IG10LTMgbXgtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSc0NTInXCIgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtOVwiPjwhLS17e2dldENhcmREYXRhPy5yZXZlbnVlPy52YWx1ZSA/PyAnLS0nfX0gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwibXktMlwiPjxzcGFuIGNsYXNzPVwiY2FyZC1sYWJlbCBoZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWUtMVwiPnt7Z2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5yZXZlbnVlPy5jdXJyZW5jeX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LnJldmVudWU/LnZhbHVlLnRvTG9jYWxlU3RyaW5nKCdlbi1JTicpID8/ICctLSd9fTwvc3Bhbj48L2Rpdj4gLS0+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2FyZC1sYWJlbCBoZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8ucmV2ZW51ZT8uY3VycmVuY3kgfX08L3NwYW4+Jm5ic3A7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cIntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtc2l6ZSc6IChnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LnJldmVudWU/LnZhbHVlPy5sZW5ndGggPiA2ID8gJzE4cHgnIDogJzIwcHgnKX1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LnJldmVudWU/LnZhbHVlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5yZXZlbnVlPy52YWx1ZSB8IG51bWJlcikgOiAnLS0nIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJteS0yXCIgKm5nSWY9XCJnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LnJldmVudWU/LmN1cnJlbmN5ID09PSdhZWQnXCI+IDxzcGFuIGNsYXNzPVwiY2FyZC1sYWJlbCBoZWFkZXJcIj48c3BhbiBjbGFzcz1cIm1lLTFcIj7Yry7YpTwvc3Bhbj4ge3tnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LnJldmVudWU/LnZhbHVlLnRvTG9jYWxlU3RyaW5nKCdlbi1JTicpID8/ICctLSd9fTwvc3Bhbj48L2Rpdj4gIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMlwiICpuZ0lmPVwiZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5yZXZlbnVlPy5jdXJyZW5jeSA9PT0naW5yJ1wiPiA8c3BhbiBjbGFzcz1cImNhcmQtbGFiZWwgaGVhZGVyMVwiICBbbmdTdHlsZV09XCJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXNpemUnOiAoZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5yZXZlbnVlPy52YWx1ZS50b0xvY2FsZVN0cmluZygnZW4tSU4nKT8ubGVuZ3RoID4gNiA/ICcxOHB4JyA6ICcyMHB4Jyl9XCI+PHNwYW4gY2xhc3M9XCJtZS0xXCI+4oK5PC9zcGFuPnt7Z2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5yZXZlbnVlPy52YWx1ZS50b0xvY2FsZVN0cmluZygnZW4tSU4nKSA/PyAnLS0nfX08L3NwYW4+PC9kaXY+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xXCI+PHNwYW4gY2xhc3M9XCJzdWItaGVhZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiPlBvdGVudGlhbCBSZXZlbnVlIExvc3MgPC9zcGFuPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTMgbXQtNVwiPjxzdmcgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJnb1RvTG9zcygpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiNDBcIiBoZWlnaHQ9XCI0MFwiIHZpZXdCb3g9XCIwIDAgNDAgNDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBmaWx0ZXI9XCJ1cmwoI2ZpbHRlcjBfZF8zODg1XzI1MzEpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB4PVwiMlwiIHk9XCIxXCIgd2lkdGg9XCIzNlwiIGhlaWdodD1cIjM2XCIgcng9XCI4XCIgZmlsbD1cIiNFQUY4RkZcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeD1cIjIuNVwiIHk9XCIxLjVcIiB3aWR0aD1cIjM1XCIgaGVpZ2h0PVwiMzVcIiByeD1cIjcuNVwiIHN0cm9rZT1cIiNFQUY4RkZcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zODg1XzI1MzEpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0yNy40NTg1IDE3LjIyNTFDMjcuODEzMyAxOC44NTU2IDI3LjY3MDcgMjAuNTYxNCAyNy4wNTA1IDIyLjEwMjdMMjUuODU5MyAyMS4zODM4TDI2LjAxNyAyNi4wOTdMMzAgMjMuODgzNEwyOC43MTcgMjMuMTA4NkMzMC43MTcxIDE4LjQ4MjMgMjkuMDcyNiAxMi45MzMzIDI0Ljc3OTkgMTAuMzQwN0MyMy4zMzI4IDkuNDY2MzMgMjEuNjkxOCA5LjAwNDA2IDIwLjAyMDYgOS4wMDAwM0MxOC4zNDk0IDguOTk1OTkgMTYuNzA2NCA5LjQ1MDMzIDE1LjI1NTUgMTAuMzE3N0wxNi4yMDQ5IDEyLjA1NDRDMTcuNTkzMyAxMS4yMjQ5IDE5LjE5NTMgMTAuODcxMiAyMC43ODU4IDExLjA0M0MyMi4zNzY0IDExLjIxNDkgMjMuODc1NCAxMS45MDM2IDI1LjA3MjMgMTMuMDEyNUMyNi4yNjkyIDE0LjEyMTQgMjcuMTAzNyAxNS41OTQ2IDI3LjQ1ODUgMTcuMjI1MVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwQTNGRlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMi41NDAyIDIwLjc3NTlDMTIuMTg1NCAxOS4xNDUyIDEyLjMyODIgMTcuNDM5MiAxMi45NDg1IDE1Ljg5NzhMMTQuMTM5OCAxNi42MTY3TDEzLjk4MiAxMS45MDM1TDEwIDE0LjExODFMMTEuMjgzIDE0Ljg5MDlDOS4yODE5OSAxOS41MTgyIDEwLjkyNjQgMjUuMDY2MiAxNS4yMTkyIDI3LjY1ODhDMTYuNjY2MSAyOC41MzMzIDE4LjMwNzEgMjguOTk1OCAxOS45NzgzIDI5QzIxLjY0OTUgMjkuMDA0MiAyMy4yOTI2IDI4LjU1IDI0Ljc0MzUgMjcuNjgyOEwyMy43OTUxIDI1Ljk0NjFDMjIuNDA2NyAyNi43NzYgMjAuODA0NSAyNy4xMyAxOS4yMTM4IDI2Ljk1ODNDMTcuNjIzIDI2Ljc4NjcgMTYuMTIzNyAyNi4wOTc5IDE0LjkyNjcgMjQuOTg5QzEzLjcyOTYgMjMuODggMTIuODk1IDIyLjQwNjYgMTIuNTQwMiAyMC43NzU5WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDBBM0ZGXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjEuMDM3MiAxMy4wMDNDMjEuMDM3MiAxMi41NTE0IDIwLjY4NzEgMTIuMTg1MiAyMC4yNTUyIDEyLjE4NTJDMTkuODIzNCAxMi4xODUyIDE5LjQ3MzMgMTIuNTUxNCAxOS40NzMzIDEzLjAwM1YxNC4zNjU5SDE4Ljk1MkMxOC4yNjA3IDE0LjM2NTkgMTcuNTk3OCAxNC42NTMgMTcuMTA5IDE1LjE2NDJDMTYuNjIwMSAxNS42NzU0IDE2LjM0NTUgMTYuMzY4NyAxNi4zNDU1IDE3LjA5MTZDMTYuMzQ1NSAxNy44MTQ2IDE2LjYyMDEgMTguNTA3OSAxNy4xMDkgMTkuMDE5MUMxNy41OTc4IDE5LjUzMDIgMTguMjYwNyAxOS44MTc0IDE4Ljk1MiAxOS44MTc0SDE5LjQ3MzNWMjEuOTk4SDE3LjEyNzVDMTYuNjk1NiAyMS45OTggMTYuMzQ1NSAyMi4zNjQxIDE2LjM0NTUgMjIuODE1OEMxNi4zNDU1IDIzLjI2NzQgMTYuNjk1NiAyMy42MzM1IDE3LjEyNzUgMjMuNjMzNUgxOS40NzMzVjI0Ljk5NjRDMTkuNDczMyAyNS40NDggMTkuODIzNCAyNS44MTQxIDIwLjI1NTIgMjUuODE0MUMyMC42ODcxIDI1LjgxNDEgMjEuMDM3MiAyNS40NDggMjEuMDM3MiAyNC45OTY0VjIzLjYzMzVIMjEuNTU4NUMyMi4yNDk4IDIzLjYzMzUgMjIuOTEyNyAyMy4zNDYzIDIzLjQwMTUgMjIuODM1MUMyMy44OTAzIDIyLjMyNCAyNC4xNjQ5IDIxLjYzMDYgMjQuMTY0OSAyMC45MDc3QzI0LjE2NDkgMjAuMTg0OCAyMy44OTAzIDE5LjQ5MTUgMjMuNDAxNSAxOC45ODAzQzIyLjkxMjcgMTguNDY5MSAyMi4yNDk4IDE4LjE4MiAyMS41NTg1IDE4LjE4MkgyMS4wMzcyVjE2LjAwMTNIMjIuODYxN0MyMy4yOTM2IDE2LjAwMTMgMjMuNjQzNyAxNS42MzUyIDIzLjY0MzcgMTUuMTgzNkMyMy42NDM3IDE0LjczMiAyMy4yOTM2IDE0LjM2NTkgMjIuODYxNyAxNC4zNjU5SDIxLjAzNzJWMTMuMDAzWk0xOC45NTIgMTYuMDAxM0gxOS40NzMzVjE4LjE4MkgxOC45NTJDMTguNjc1NSAxOC4xODIgMTguNDEwMyAxOC4wNjcxIDE4LjIxNDggMTcuODYyNkMxOC4wMTkzIDE3LjY1ODEgMTcuOTA5NCAxNy4zODA4IDE3LjkwOTQgMTcuMDkxNkMxNy45MDk0IDE2LjgwMjUgMTguMDE5MyAxNi41MjUyIDE4LjIxNDggMTYuMzIwN0MxOC40MTAzIDE2LjExNjIgMTguNjc1NSAxNi4wMDEzIDE4Ljk1MiAxNi4wMDEzWk0yMS4wMzcyIDIxLjk5OFYxOS44MTc0SDIxLjU1ODVDMjEuODM1IDE5LjgxNzQgMjIuMTAwMiAxOS45MzIzIDIyLjI5NTcgMjAuMTM2OEMyMi40OTEyIDIwLjM0MTIgMjIuNjAxMSAyMC42MTg2IDIyLjYwMTEgMjAuOTA3N0MyMi42MDExIDIxLjE5NjkgMjIuNDkxMiAyMS40NzQyIDIyLjI5NTcgMjEuNjc4N0MyMi4xMDAyIDIxLjg4MzIgMjEuODM1IDIxLjk5OCAyMS41NTg1IDIxLjk5OEgyMS4wMzcyWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDBBM0ZGXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWx0ZXIgaWQ9XCJmaWx0ZXIwX2RfMzg4NV8yNTMxXCIgeD1cIjBcIiB5PVwiMFwiIHdpZHRoPVwiNDBcIiBoZWlnaHQ9XCI0MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz1cInNSR0JcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PVwiMFwiIHJlc3VsdD1cIkJhY2tncm91bmRJbWFnZUZpeFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQ29sb3JNYXRyaXggaW49XCJTb3VyY2VBbHBoYVwiIHR5cGU9XCJtYXRyaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9XCIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAxMjcgMFwiIHJlc3VsdD1cImhhcmRBbHBoYVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlT2Zmc2V0IGR5PVwiMVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj1cIjFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUNvbG9yTWF0cml4IHR5cGU9XCJtYXRyaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9XCIwIDAgMCAwIDAuMDYyNzQ1MSAwIDAgMCAwIDAuMDk0MTE3NiAwIDAgMCAwIDAuMTU2ODYzIDAgMCAwIDAuMDUgMFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQmxlbmQgbW9kZT1cIm5vcm1hbFwiIGluMj1cIkJhY2tncm91bmRJbWFnZUZpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdD1cImVmZmVjdDFfZHJvcFNoYWRvd18zODg1XzI1MzFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUJsZW5kIG1vZGU9XCJub3JtYWxcIiBpbj1cIlNvdXJjZUdyYXBoaWNcIiBpbjI9XCJlZmZlY3QxX2Ryb3BTaGFkb3dfMzg4NV8yNTMxXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0PVwic2hhcGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9maWx0ZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8zODg1XzI1MzFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiBmaWxsPVwid2hpdGVcIiB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoMTAgOSlcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1mb290ZXIgbXMtMiBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtdC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cImdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uZGF0YT8ubWlzc2Vkb3Bwb3J0dW5pdGllcz8uUHJldmlvdXNWYXJpYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAxOCAxOFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMjMyOF80NjU0KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMS41IDlMNi43NSA0LjI1TDQuMjUgNi43NUwwLjUgM00xMS41IDlIOC41TTExLjUgOVY2XCIgc3Ryb2tlPVwiIzAzOTg1NVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzIzMjhfNDY1NFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cIiFnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmRhdGE/Lm1pc3NlZG9wcG9ydHVuaXRpZXM/LlByZXZpb3VzVmFyaWF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzMyMTZfMTE4KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMS41IDNMNi43NSA3Ljc1TDQuMjUgNS4yNUwwLjUgOU0xMS41IDNIOC41TTExLjUgM1Y2XCIgc3Ryb2tlPVwiI0Q5MkQyMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzMyMTZfMTE4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXMtMiBtdC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmRhdGE/Lm1pc3NlZG9wcG9ydHVuaXRpZXM/LlByZXZpb3VzRGF0YSA9PT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+MCU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmRhdGE/Lm1pc3NlZG9wcG9ydHVuaXRpZXM/LlByZXZpb3VzRGF0YSAhPT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+e3tnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmRhdGE/Lm1pc3NlZG9wcG9ydHVuaXRpZXM/LlByZXZpb3VzRGF0YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uZGF0YT8ubWlzc2Vkb3Bwb3J0dW5pdGllcz8uUHJldmlvdXNEYXRhOictLSd9fSU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3ZWVrLWZvbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdnMgUHJldmlvdXMgPHNwYW4gKm5nSWY9XCJkYXRlVHlwZSA9PT0nZGFpbHknXCI+ZGF5PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSd3ZWVrbHknXCI+d2Vlazwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J21vbnRobHknXCI+bW9udGg8L3NwYW4+PC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNCBtdC0zIGgtMTAwXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBjYXJkLWJvcmRlciBtYi01IHB5LTBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMCBoLTkwcHggbXQtMyBteC0zXCIgW25nYlRvb2x0aXBdPVwiZHdlbGxUb29sdGlwXCIgcGxhY2VtZW50PVwicmlnaHRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm10LTMgZmxleC1zaHJpbmstMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCI0MFwiIGhlaWdodD1cIjQxXCIgdmlld0JveD1cIjAgMCA0MCA0MVwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB5PVwiMC41XCIgd2lkdGg9XCI0MFwiIGhlaWdodD1cIjQwXCIgcng9XCIyMFwiIGZpbGw9XCIjREFGMUZGXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTcuNjM4MiAxMi44OTIyQzE3LjYzODIgMTIuNjgzNSAxNy43MjEyIDEyLjQ4MzMgMTcuODY4OCAxMi4zMzU3QzE4LjAxNjQgMTIuMTg4MSAxOC4yMTY1IDEyLjEwNTIgMTguNDI1MyAxMi4xMDUySDIxLjU3MzRDMjEuNzgyMiAxMi4xMDUyIDIxLjk4MjMgMTIuMTg4MSAyMi4xMjk5IDEyLjMzNTdDMjIuMjc3NSAxMi40ODMzIDIyLjM2MDUgMTIuNjgzNSAyMi4zNjA1IDEyLjg5MjJDMjIuMzYwNSAxMy4xMDA5IDIyLjI3NzUgMTMuMzAxMSAyMi4xMjk5IDEzLjQ0ODdDMjEuOTgyMyAxMy41OTYzIDIxLjc4MjIgMTMuNjc5MiAyMS41NzM0IDEzLjY3OTJIMjAuNzg2NFYxNC43Mjg2TDIwLjc4NTMgMTQuNzcxNkMyMi4xMTU2IDE0LjkxNzQgMjMuMzc2NyAxNS40Mzk4IDI0LjQyMDQgMTYuMjc3NUwyNC40Mjc3IDE2LjI3MTJMMjUuMjE0OCAxNS40ODQyQzI1LjMxMSAxNS4zODA2IDI1LjQzMzMgMTUuMzA0OCAyNS41NjkgMTUuMjY0OUMyNS43MDQ2IDE1LjIyNTEgMjUuODQ4NSAxNS4yMjI1IDI1Ljk4NTUgMTUuMjU3NUMyNi4xMjI0IDE1LjI5MjUgMjYuMjQ3NCAxNS4zNjM4IDI2LjM0NzIgMTUuNDYzOUMyNi40NDcxIDE1LjU2NCAyNi41MTgxIDE1LjY4OTIgMjYuNTUyNyAxNS44MjYzQzI2LjU4NzcgMTUuOTYzMSAyNi41ODUyIDE2LjEwNjggMjYuNTQ1NSAxNi4yNDIzQzI2LjUwNTggMTYuMzc3OCAyNi40MzA0IDE2LjUwMDIgMjYuMzI3MSAxNi41OTY1TDI1LjU0MDEgMTcuMzgzNkwyNS41MzM4IDE3LjM5MDlDMjYuMzY2MiAxOC40MzMxIDI2Ljg4NzUgMTkuNjg5MSAyNy4wMzc3IDIxLjAxNDRDMjcuMTg3OCAyMi4zMzk3IDI2Ljk2MDcgMjMuNjgwNSAyNi4zODI0IDI0Ljg4MjVDMjUuODA0MiAyNi4wODQ1IDI0Ljg5ODMgMjcuMDk4NyAyMy43NjkxIDI3LjgwODZDMjIuNjM5OSAyOC41MTg0IDIxLjMzMzIgMjguODk1IDE5Ljk5OTMgMjguODk1QzE4LjY2NTUgMjguODk1IDE3LjM1ODggMjguNTE4NCAxNi4yMjk2IDI3LjgwODZDMTUuMTAwNCAyNy4wOTg3IDE0LjE5NDUgMjYuMDg0NSAxMy42MTYzIDI0Ljg4MjVDMTMuMDM4IDIzLjY4MDUgMTIuODEwOSAyMi4zMzk3IDEyLjk2MSAyMS4wMTQ0QzEzLjExMTIgMTkuNjg5MSAxMy42MzI1IDE4LjQzMzEgMTQuNDY0OSAxNy4zOTA5TDE0LjQ1ODYgMTcuMzgzNkwxMy42NzE2IDE2LjU5NjVDMTMuNTMyNCAxNi40NDc0IDEzLjQ1NjYgMTYuMjUgMTMuNDYwMSAxNi4wNDZDMTMuNDYzNiAxNS44NDIgMTMuNTQ2MiAxNS42NDczIDEzLjY5MDUgMTUuNTAzMUMxMy44MzQ3IDE1LjM1ODggMTQuMDI5NCAxNS4yNzYyIDE0LjIzMzQgMTUuMjcyN0MxNC40Mzc0IDE1LjI2OTIgMTQuNjM0OCAxNS4zNDUgMTQuNzgzOSAxNS40ODQyTDE1LjU3MSAxNi4yNzEyTDE1LjU3ODMgMTYuMjc3NUMxNi42MjE3IDE1LjQ0IDE3Ljg4MjQgMTQuOTE3NiAxOS4yMTIzIDE0Ljc3MTZWMTMuNjc5MkgxOC40MjUzQzE4LjIxNjUgMTMuNjc5MiAxOC4wMTY0IDEzLjU5NjMgMTcuODY4OCAxMy40NDg3QzE3LjcyMTIgMTMuMzAxMSAxNy42MzgyIDEzLjEwMDkgMTcuNjM4MiAxMi44OTIyWk0xOS45OTkzIDI3LjMyMTJDMjEuNDYwNiAyNy4zMjExIDIyLjg2MiAyNi43NDA0IDIzLjg5NTIgMjUuNzA3MUMyNC45Mjg0IDI0LjY3MzcgMjUuNTA4NyAyMy4yNzIyIDI1LjUwODYgMjEuODEwOUMyNS41MDg1IDIwLjM0OTYgMjQuOTI3OCAxOC45NDgyIDIzLjg5NDUgMTcuOTE1QzIyLjg2MTEgMTYuODgxOSAyMS40NTk2IDE2LjMwMTUgMTkuOTk4MyAxNi4zMDE2QzE4LjUzNyAxNi4zMDE4IDE3LjEzNTYgMTYuODgyNCAxNi4xMDI1IDE3LjkxNThDMTUuMDY5MyAxOC45NDkyIDE0LjQ4ODkgMjAuMzUwNyAxNC40ODkgMjEuODExOUMxNC40ODkyIDIzLjI3MzIgMTUuMDY5OCAyNC42NzQ2IDE2LjEwMzIgMjUuNzA3OEMxNy4xMzY2IDI2Ljc0MSAxOC41MzgxIDI3LjMyMTMgMTkuOTk5MyAyNy4zMjEyWk0yMC40MDc2IDIwLjI5MDNMMjEuODAzMiAxOC44OTQ3QzIxLjg3NTggMTguODE5NSAyMS45NjI2IDE4Ljc1OTUgMjIuMDU4NiAxOC43MTgyQzIyLjE1NDYgMTguNjc2OSAyMi4yNTc5IDE4LjY1NTEgMjIuMzYyNCAxOC42NTQyQzIyLjQ2NjkgMTguNjUzMiAyMi41NzA1IDE4LjY3MzEgMjIuNjY3MyAxOC43MTI2QzIyLjc2NCAxOC43NTIxIDIyLjg1MTkgMTguODEwNSAyMi45MjU5IDE4Ljg4NDRDMjIuOTk5OCAxOC45NTgyIDIzLjA1ODMgMTkuMDQ2MSAyMy4wOTc5IDE5LjE0MjhDMjMuMTM3NSAxOS4yMzk1IDIzLjE1NzUgMTkuMzQzMSAyMy4xNTY2IDE5LjQ0NzZDMjMuMTU1NyAxOS41NTIxIDIzLjEzNDEgMTkuNjU1NCAyMy4wOTI5IDE5Ljc1MTVDMjMuMDUxNyAxOS44NDc1IDIyLjk5MTggMTkuOTM0NCAyMi45MTY2IDIwLjAwN0wyMS41MjEgMjEuNDAzN0MyMS41ODMgMjEuNjM3MSAyMS41OTA2IDIxLjg4MTUgMjEuNTQzMiAyMi4xMTgyQzIxLjQ5NTggMjIuMzU1IDIxLjM5NDggMjIuNTc3NyAyMS4yNDc4IDIyLjc2OTJDMjEuMTAwOCAyMi45NjA3IDIwLjkxMTggMjMuMTE1OSAyMC42OTUzIDIzLjIyMjhDMjAuNDc4OSAyMy4zMjk4IDIwLjI0MDggMjMuMzg1NiAxOS45OTkzIDIzLjM4NkMxOS43NzY2IDIzLjM4NDEgMTkuNTU2NyAyMy4zMzQ5IDE5LjM1NDQgMjMuMjQxNkMxOS4xNTIxIDIzLjE0ODMgMTguOTcxOCAyMy4wMTMxIDE4LjgyNTcgMjIuODQ1QzE4LjY3OTUgMjIuNjc2OCAxOC41NzA3IDIyLjQ3OTYgMTguNTA2NiAyMi4yNjYyQzE4LjQ0MjQgMjIuMDUyOCAxOC40MjQzIDIxLjgyODMgMTguNDUzNCAyMS42MDc0QzE4LjQ4MjUgMjEuMzg2NSAxOC41NTgyIDIxLjE3NDMgMTguNjc1NSAyMC45ODQ5QzE4Ljc5MjggMjAuNzk1NSAxOC45NDkgMjAuNjMzMiAxOS4xMzM4IDIwLjUwODZDMTkuMzE4NSAyMC4zODQxIDE5LjUyNzYgMjAuMzAwMyAxOS43NDcyIDIwLjI2MjZDMTkuOTY2OCAyMC4yMjUgMjAuMTkxOSAyMC4yMzQ0IDIwLjQwNzYgMjAuMjkwM1pcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiM2NjcwODVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBoZWFkZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8uYXZnRHdlbGxUaW1lID09PSAwXCI+MCBtaW5zPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBoZWFkZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8uYXZnRHdlbGxUaW1lICE9PSAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5hdmdEd2VsbFRpbWUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LmF2Z0R3ZWxsVGltZSA6Jy0tJ319IG1pbnNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3ViLWhlYWRlclwiPkF2ZyBEd2VsbCBUaW1lPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2R3ZWxsVG9vbHRpcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvb2x0aXAtY29udGVudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwidG9vbHRpcC10aXRsZSB0ZXh0LXN0YXJ0XCI+QXZnIER3ZWxsIFRpbWU8L2g1PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXN0YXJ0XCI+QXZlcmFnZSB0aW1lIHNwZW50IGJ5IHt7aGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJyA/ICdNb3JlIHRoYW4gJytcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWUgKycgbWlucycgOiAnZW5nYWdlcnMnfX0gaW4gdGhlIHNlbGVjdGVkIHN0b3Jlcy48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGNhcmQtYm9yZGVyIHB5LTBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMCBoLTkwcHggbXQtMyBteC0zXCIgW25nYlRvb2x0aXBdPVwiZG93blRvb2x0aXBcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDFcIiB2aWV3Qm94PVwiMCAwIDQwIDQxXCIgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHk9XCIwLjVcIiB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDBcIiByeD1cIjIwXCIgZmlsbD1cIiNEQUYxRkZcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0yMS45MDA0IDEyLjE2NzVDMjIuOTk1OCAxMi4xNjc1IDI0LjA0MjMgMTIuMzkxOCAyNC45OTc3IDEyLjc5ODdDMjUuOTg4OSAxMy4yMjA3IDI2Ljg4MDkgMTMuODQwMiAyNy42Mjc5IDE0LjYwODdDMjguMzczNCAxNS4zNzU2IDI4Ljk3NTYgMTYuMjkzMSAyOS4zODU3IDE3LjMxNjJDMjkuNzgxMyAxOC4yOTkgMjkuOTk5MyAxOS4zNzU2IDI5Ljk5OTMgMjAuNTAwOEMyOS45OTkzIDIxLjYyNzcgMjkuNzgxMyAyMi43MDQzIDI5LjM4NTcgMjMuNjg3MUMyOC45NzU2IDI0LjcwNjggMjguMzczNCAyNS42MjQ0IDI3LjYyNjMgMjYuMzkyOUMyNi44ODA5IDI3LjE1OTggMjUuOTg4OSAyNy43NzkzIDI0Ljk5NDUgMjguMjAxMkMyNC4wMzkxIDI4LjYwODEgMjIuOTkyNSAyOC44MzI1IDIxLjg5ODggMjguODMyNUMyMC44MDM0IDI4LjgzMjUgMTkuNzU2OCAyOC42MDgxIDE4LjgwMTQgMjguMjAxMkMxNy44MTAyIDI3Ljc3OTMgMTYuOTE4MyAyNy4xNTk4IDE2LjE3MjkgMjYuMzkyOUwxNi4xNzEyIDI2LjM5MTJDMTUuNDI0MiAyNS42MjI3IDE0LjgyMzYgMjQuNzA1MiAxNC40MTM0IDIzLjY4NzFDMTQuMjg2NSAyMy4zNzA3IDE0LjE3NzQgMjMuMDQ1OSAxNC4wODc5IDIyLjcxMjdDMTQuMjU3MiAyMi43Mjk0IDE0LjQyOTcgMjIuNzM3OCAxNC42MDM4IDIyLjczNzhDMTQuOTM0MiAyMi43Mzc4IDE1LjI1NjUgMjIuNzA3NiAxNS41NzA2IDIyLjY0OUMxNS42MjI3IDIyLjgwOTggMTUuNjc5NyAyMi45Njg4IDE1Ljc0MTUgMjMuMTI0NkMxNi4wNzg1IDIzLjk2MTcgMTYuNTczMiAyNC43MTUyIDE3LjE4ODUgMjUuMzQ4MUMxNy44MDM3IDI1Ljk4MSAxOC41Mzc4IDI2LjQ5IDE5LjM0OTkgMjYuODM2NkMyMC4xMzI4IDI3LjE2OTggMjAuOTkzOCAyNy4zNTU3IDIxLjg5ODggMjcuMzU1N0MyMi44MDM3IDI3LjM1NTcgMjMuNjYzMSAyNy4xNzE1IDI0LjQ0NzYgMjYuODM2NkMyNS4yNjE0IDI2LjQ5IDI1Ljk5MzggMjUuOTgxIDI2LjYwOTEgMjUuMzQ4MUMyNy4yMjQzIDI0LjcxNTIgMjcuNzE5MSAyMy45NjAxIDI4LjA1NiAyMy4xMjQ2QzI4LjM3OTkgMjIuMzE5MiAyOC41NjA1IDIxLjQzMzQgMjguNTYwNSAyMC41MDI1QzI4LjU2MDUgMTkuNTcxNSAyOC4zODE1IDE4LjY4NzUgMjguMDU2IDE3Ljg4MDRDMjcuNzE5MSAxNy4wNDMyIDI3LjIyNDMgMTYuMjg5OCAyNi42MDkxIDE1LjY1NjlDMjUuOTkzOCAxNS4wMjQgMjUuMjU5OCAxNC41MTQ5IDI0LjQ0NzYgMTQuMTY4NEMyMy42NjQ3IDEzLjgzNTIgMjIuODAzNyAxMy42NDkzIDIxLjg5ODggMTMuNjQ5M0MyMC45OTM4IDEzLjY0OTMgMjAuMTM0NCAxMy44MzM1IDE5LjM0OTkgMTQuMTY4NEMxOS4yNzk5IDE0LjE5ODUgMTkuMjEgMTQuMjMwMyAxOS4xNDE2IDE0LjI2MjFDMTguODc0NyAxMy44MzAxIDE4LjU1MjQgMTMuNDM4MyAxOC4xODI5IDEzLjA5ODRDMTguMzg0OCAxMi45OTEzIDE4LjU5MTUgMTIuODkyNSAxOC44MDE0IDEyLjgwMjFDMTkuNzYwMSAxMi4zOTE4IDIwLjgwNSAxMi4xNjc1IDIxLjkwMDQgMTIuMTY3NVpNMjAuOTcxIDE2LjUzOTNDMjAuOTcxIDE2LjMzNSAyMS4wNTI0IDE2LjE1MDggMjEuMTgxIDE2LjAxNjlDMjEuMzExMiAxNS44ODI5IDIxLjQ5MDIgMTUuODAwOSAyMS42ODg4IDE1LjgwMDlDMjEuODg3NCAxNS44MDA5IDIyLjA2NjQgMTUuODgyOSAyMi4xOTY2IDE2LjAxNjlDMjIuMzI2OCAxNi4xNTA4IDIyLjQwNjYgMTYuMzM1IDIyLjQwNjYgMTYuNTM5M1YyMC40MjcxTDI1LjIzMDUgMjIuMTUwMUMyNS4zOTk3IDIyLjI1MzkgMjUuNTEzNyAyMi40MTk2IDI1LjU1OTIgMjIuNjAyMUMyNS42MDQ4IDIyLjc4NDcgMjUuNTgzNyAyMi45ODU2IDI1LjQ4MjcgMjMuMTU5N1YyMy4xNjE0QzI1LjM4MTggMjMuMzM1NSAyNS4yMjA3IDIzLjQ1MjcgMjUuMDQzMyAyMy40OTk2QzI0Ljg2NTkgMjMuNTQ2NSAyNC42NzA2IDIzLjUyNDcgMjQuNTAxMyAyMy40MjA5SDI0LjQ5OTdMMjEuMzQwNSAyMS40OTM3QzIxLjIzMTQgMjEuNDMxOCAyMS4xNDE5IDIxLjM0MTMgMjEuMDc2OCAyMS4yMzQyQzIxLjAxMDEgMjEuMTIyIDIwLjk3MSAyMC45ODk3IDIwLjk3MSAyMC44NDkxVjE2LjUzOTNaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjNjY3MDg1XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xNC4zOTEzIDEyLjYwOTVDMTYuODE2NCAxMi42MDk1IDE4Ljc4MjYgMTQuNjMyMSAxOC43ODI2IDE3LjEyNjlDMTguNzgyNiAxOS42MjE4IDE2LjgxNjQgMjEuNjQ0NCAxNC4zOTEzIDIxLjY0NDRDMTEuOTY2MSAyMS42NDQ0IDEwIDE5LjYyMTggMTAgMTcuMTI2OUMxMCAxNC42MzIxIDExLjk2NjEgMTIuNjA5NSAxNC4zOTEzIDEyLjYwOTVaTTE0LjM5MTMgMTkuNzE3MkwxNi43NDggMTYuNzIwMUgxNS4yODQ4VjE1LjEyNjFIMTMuNDk3N1YxNi43MjAxSDEyLjAzNDVMMTQuMzkxMyAxOS43MTcyWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiI0YwNDQzOFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGhlYWRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5hdmdEb3duVGltZSA9PT0gMFwiPjAgbWluczwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgaGVhZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LmF2Z0Rvd25UaW1lICE9PSAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5hdmdEb3duVGltZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8uYXZnRG93blRpbWUgOictLSd9fSBtaW5zXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN1Yi1oZWFkZXJcIj5BdmcgRG93biBUaW1lPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNkb3duVG9vbHRpcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvb2x0aXAtY29udGVudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwidG9vbHRpcC10aXRsZSB0ZXh0LXN0YXJ0XCI+QXZnIERvd24gVGltZTwvaDU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cInRleHQtc3RhcnRcIj5BdmVyYWdlIGNhbWVyYSAmIG5ldHdvcmsgZG93bnRpbWUgZm9yIHRoZSBzZWxlY3RlZCBzdG9yZXMuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiIGNsYXNzPVwiY29sLW1kLTQgbXQtMyBwb3NpdGlvbi1yZWxhdGl2ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQgY2FyZC1ib3JkZXIgaC0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgZWxsaXBzZTEgYm9yZGVyLTAgcHgtM1wiIFtuZ2JUb29sdGlwXT1cInBvdGVudGlhbFRvb2x0aXBcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjYXJkLWxhYmVsIGhlYWRlclwiPnt7Z2V0UG90ZW50aWFsQnV5ZXJzQ2FyZERhdGE/LmNhcmQ/LnBvdGVudGlhbEJ1eWVycz8ucmF0ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0UG90ZW50aWFsQnV5ZXJzQ2FyZERhdGE/LmNhcmQ/LnBvdGVudGlhbEJ1eWVycz8ucmF0ZSA6Jy0tJ319JTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLWhlYWRlciBcIj5Qb3RlbnRpYWwgQnV5ZXJzPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjcG90ZW50aWFsVG9vbHRpcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvb2x0aXAtY29udGVudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwidG9vbHRpcC10aXRsZSB0ZXh0LXN0YXJ0XCI+UG90ZW50aWFsIEJ1eWVyczwvaDU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cInRleHQtc3RhcnRcIj5OdW1iZXIgb2YgZ3JvdXBzIGVudGVyaW5nIHRoZSBzdG9yZS48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInBvdGVudGlhbE5vZGF0YVwiIGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTEyIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2FyZC1ib2R5IHBiLTAgcHgtMCBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImltZy1ub2RhdGExXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvTm9kYXRhMS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS10aXRsZTFcIj5ObyBkYXRhIGZvdW5kPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cIm5vZGF0YS1zdWJcIj5UaGVyZSBpcyBubyByZXN1bHQgZm9yIHRoaXMgY29udmVyc2lvbiBmdW5uZWw8L2Rpdj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhcG90ZW50aWFsTm9kYXRhXCIgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiIGlkPVwiUG90ZW50aWFsQnV5ZXJzXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtZm9vdGVyIG1zLTIgcC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCIhZ2V0UG90ZW50aWFsQnV5ZXJzQ2FyZERhdGE/LmRhdGE/LnBvdGVudGlhbEJ1eWVycz8uUHJldmlvdXNWYXJpYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAxOCAxOFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMjMyOF80NjU0KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMS41IDlMNi43NSA0LjI1TDQuMjUgNi43NUwwLjUgM00xMS41IDlIOC41TTExLjUgOVY2XCIgc3Ryb2tlPVwiI0Q5MkQyMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzIzMjhfNDY1NFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cImdldFBvdGVudGlhbEJ1eWVyc0NhcmREYXRhPy5kYXRhPy5wb3RlbnRpYWxCdXllcnM/LlByZXZpb3VzVmFyaWF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzMyMTZfMTE4KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMS41IDNMNi43NSA3Ljc1TDQuMjUgNS4yNUwwLjUgOU0xMS41IDNIOC41TTExLjUgM1Y2XCIgc3Ryb2tlPVwiIzAzOTg1NVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzMyMTZfMTE4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMiBtcy0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJnZXRQb3RlbnRpYWxCdXllcnNDYXJkRGF0YT8uZGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5QcmV2aW91c0RhdGEgPT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiPjAlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZ2V0UG90ZW50aWFsQnV5ZXJzQ2FyZERhdGE/LmRhdGE/LnBvdGVudGlhbEJ1eWVycz8uUHJldmlvdXNEYXRhICE9PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj57e2dldFBvdGVudGlhbEJ1eWVyc0NhcmREYXRhPy5kYXRhPy5wb3RlbnRpYWxCdXllcnM/LlByZXZpb3VzRGF0YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGdldFBvdGVudGlhbEJ1eWVyc0NhcmREYXRhPy5kYXRhPy5wb3RlbnRpYWxCdXllcnM/LlByZXZpb3VzRGF0YTonLS0nfX0lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwid2Vlay1mb250XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZzIFByZXZpb3VzIDxzcGFuICpuZ0lmPVwiZGF0ZVR5cGUgPT09J2RhaWx5J1wiPmRheTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJkYXRlVHlwZSA9PT0nd2Vla2x5J1wiPndlZWs8L3NwYW4+IDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSdtb250aGx5J1wiPm1vbnRoPC9zcGFuPjwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tYWJzb2x1dGUgZW5kLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02IDEyTDEwIDhMNiA0XCIgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0gJzQ1MidcIiBjbGFzcz1cImNvbC1tZC04IG10LTNcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGNhcmQtYm9yZGVyIGgtMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHgtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBlbGxpcHNlMSBib3JkZXItMCBweC0zXCIgW25nYlRvb2x0aXBdPVwicG90ZW50aWFsQnV5ZXJUb29sdGlwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwicmlnaHRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtbiBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2FyZC1sYWJlbCBoZWFkZXJcIj5Qb3RlbnRpYWwgQnV5ZXIgRGlzdHJpYnV0aW9uPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWItaGVhZGVyXCI+Q2F0ZWdvcnktd2lzZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI3BvdGVudGlhbEJ1eWVyVG9vbHRpcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvb2x0aXAtY29udGVudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwidG9vbHRpcC10aXRsZSB0ZXh0LXN0YXJ0XCI+UG90ZW50aWFsIEJ1eWVyIERpc3RyaWJ1dGlvbjwvaDU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cInRleHQtc3RhcnRcIj5BdmVyYWdlIGdyb3VwIHNpemUsIGFsb25nIHdpdGggdGhlIGNvdW50IG9mIGluZGl2aWR1YWxzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc3VzIGdyb3VwcyBlbnRlcmluZyB0aGUgc3RvcmUuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC05XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02IHB4LTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LXN0YXJ0IG1zLTEwICBtdC03IG1iLTNcIj48c3Bhbj48c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjUgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTIwLjI1IDIxVjE5QzIwLjI1IDE3LjkzOTEgMTkuODI4NiAxNi45MjE3IDE5LjA3ODQgMTYuMTcxNkMxOC4zMjgzIDE1LjQyMTQgMTcuMzEwOSAxNSAxNi4yNSAxNUg4LjI1QzcuMTg5MTMgMTUgNi4xNzE3MiAxNS40MjE0IDUuNDIxNTcgMTYuMTcxNkM0LjY3MTQzIDE2LjkyMTcgNC4yNSAxNy45MzkxIDQuMjUgMTlWMjFNMTYuMjUgN0MxNi4yNSA5LjIwOTE0IDE0LjQ1OTEgMTEgMTIuMjUgMTFDMTAuMDQwOSAxMSA4LjI1IDkuMjA5MTQgOC4yNSA3QzguMjUgNC43OTA4NiAxMC4wNDA5IDMgMTIuMjUgM0MxNC40NTkxIDMgMTYuMjUgNC43OTA4NiAxNi4yNSA3WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImdldFBvdGVudGlhbEJ1eWVyc0RhdGE/LnBvdGVudGlhbEJ1eWVycz8ucG90ZW50aWFsQnV5ZXJzU2luZ2xlPy5jb3VudCAhPT0gMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGVmdC1jYXJkLWNvdW50IG10LTIgbXMtMVwiPnt7Z2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNTaW5nbGU/LmNvdW50XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNTaW5nbGU/LmNvdW50LnRvTG9jYWxlU3RyaW5nKCdlbi1JTicpOictLSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImdldFBvdGVudGlhbEJ1eWVyc0RhdGE/LnBvdGVudGlhbEJ1eWVycz8ucG90ZW50aWFsQnV5ZXJzU2luZ2xlPy5jb3VudCA9PT0gMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGVmdC1jYXJkLWNvdW50IG10LTIgbXMtMVwiPjA8L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyIG1zLTFcIj5TaW5nbGU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LXN0YXJ0IG1zLTE1IG1iLTNcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LWRlZmF1bHQgd2Vlay1mb250XCIgW2NsYXNzLmludmlzaWJsZV09XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09ICc1MjgnXCI+e3tnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc1NpbmdsZT8uYWdlR3JvdXBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc1NpbmdsZT8uYWdlR3JvdXA6Jy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFnZTwvc3Bhbj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWZvb3RlciBtcy0yIHAtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiIWdldFBvdGVudGlhbEJ1eWVyc0RhdGE/LnBvdGVudGlhbEJ1eWVycz8ucG90ZW50aWFsQnV5ZXJzU2luZ2xlPy5QcmV2aW91c1ZhcmlhdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIxOFwiIHZpZXdCb3g9XCIwIDAgMTggMThcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8yMzI4XzQ2NTQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMS41IDlMNi43NSA0LjI1TDQuMjUgNi43NUwwLjUgM00xMS41IDlIOC41TTExLjUgOVY2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiI0Q5MkQyMFwiIHN0cm9rZS13aWR0aD1cIjEuNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8yMzI4XzQ2NTRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cImdldFBvdGVudGlhbEJ1eWVyc0RhdGE/LnBvdGVudGlhbEJ1eWVycz8ucG90ZW50aWFsQnV5ZXJzU2luZ2xlPy5QcmV2aW91c1ZhcmlhdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zMjE2XzExOClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTExLjUgM0w2Ljc1IDcuNzVMNC4yNSA1LjI1TDAuNSA5TTExLjUgM0g4LjVNMTEuNSAzVjZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMDM5ODU1XCIgc3Ryb2tlLXdpZHRoPVwiMS41XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzMyMTZfMTE4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMiBtcy0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImdldFBvdGVudGlhbEJ1eWVyc0RhdGE/LnBvdGVudGlhbEJ1eWVycz8ucG90ZW50aWFsQnV5ZXJzU2luZ2xlPy5QcmV2aW91c0RhdGEgPT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj4wJTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNTaW5nbGU/LlByZXZpb3VzRGF0YSAhPT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiPnt7Z2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNTaW5nbGU/LlByZXZpb3VzRGF0YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNTaW5nbGU/LlByZXZpb3VzRGF0YTonLS0nfX0lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIndlZWstZm9udFwiPiB2cyBQcmV2aW91cyA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J2RhaWx5J1wiPmRheTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J3dlZWtseSdcIj53ZWVrPC9zcGFuPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J21vbnRobHknXCI+bW9udGg8L3NwYW4+PC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02IHB4LTAgcG9zaXRpb24tcmVsYXRpdmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LXN0YXJ0IG1zLTEwIG10LTcgbWItM1wiPjxzcGFuPiA8c3ZnIHdpZHRoPVwiMjZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI2IDI0XCIgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIyNlwiIGhlaWdodD1cIjI0XCIgZmlsbD1cIiNEQ0RDRENcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeD1cIi00NjAuNVwiIHk9XCItMzQwLjVcIiB3aWR0aD1cIjc4M1wiIGhlaWdodD1cIjE5NDdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ4PVwiNC41XCIgc3Ryb2tlPVwiIzk3NDdGRlwiIHN0cm9rZS1kYXNoYXJyYXk9XCIxMCA1XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXNrIGlkPVwicGF0aC0yLWluc2lkZS0xXzcwN18xMzEwNlwiIGZpbGw9XCJ3aGl0ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNLTE4OSAtODlDLTE4OSAtOTUuNjI3NCAtMTgzLjYyNyAtMTAxIC0xNzcgLTEwMUgyOTVDMzAxLjYyNyAtMTAxIDMwNyAtOTUuNjI3NCAzMDcgLTg5Vjg1QzMwNyA5MS42Mjc0IDMwMS42MjcgOTcgMjk1IDk3SC0xNzdDLTE4My42MjcgOTcgLTE4OSA5MS42Mjc0IC0xODkgODVWLTg5WlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hc2s+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNLTE4OSAtODlDLTE4OSAtOTUuNjI3NCAtMTgzLjYyNyAtMTAxIC0xNzcgLTEwMUgyOTVDMzAxLjYyNyAtMTAxIDMwNyAtOTUuNjI3NCAzMDcgLTg5Vjg1QzMwNyA5MS42Mjc0IDMwMS42MjcgOTcgMjk1IDk3SC0xNzdDLTE4My42MjcgOTcgLTE4OSA5MS42Mjc0IC0xODkgODVWLTg5WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0tMTkwIC04OUMtMTkwIC05Ni4xNzk3IC0xODQuMTggLTEwMiAtMTc3IC0xMDJIMjk0QzMwMS4xOCAtMTAyIDMwNyAtOTYuMTc5NyAzMDcgLTg5QzMwNyAtOTUuMDc1MSAzMDEuNjI3IC0xMDAgMjk1IC0xMDBILTE3N0MtMTgzLjA3NSAtMTAwIC0xODggLTk1LjA3NTEgLTE4OCAtODlILTE5MFpNMzA3IDg1QzMwNyA5Mi4xNzk3IDMwMS4xOCA5OCAyOTQgOThILTE3N0MtMTg0LjE4IDk4IC0xOTAgOTIuMTc5NyAtMTkwIDg1SC0xODhDLTE4OCA5MS4wNzUxIC0xODMuMDc1IDk2IC0xNzcgOTZIMjk1QzMwMS42MjcgOTYgMzA3IDkxLjA3NTEgMzA3IDg1Wk0tMTc3IDk4Qy0xODQuMTggOTggLTE5MCA5Mi4xNzk3IC0xOTAgODVWLTg5Qy0xOTAgLTk2LjE3OTcgLTE4NC4xOCAtMTAyIC0xNzcgLTEwMlYtMTAwQy0xODMuMDc1IC0xMDAgLTE4OCAtOTUuMDc1MSAtMTg4IC04OVY4NUMtMTg4IDkxLjA3NTEgLTE4My4wNzUgOTYgLTE3NyA5NlY5OFpNMzA3IC0xMDFWOTdWLTEwMVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjRDBENUREXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXNrPVwidXJsKCNwYXRoLTItaW5zaWRlLTFfNzA3XzEzMTA2KVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWFzayBpZD1cInBhdGgtNi1pbnNpZGUtMl83MDdfMTMxMDZcIiBmaWxsPVwid2hpdGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTcuNzEwNjQgNy4zODQ2MkM4LjE5NTUyIDcuMzg0NjIgOC42NzU2NSA3LjI4OTExIDkuMTIzNjIgNy4xMDM1NkM5LjU3MTU5IDYuOTE4IDkuOTc4NjMgNi42NDYwMyAxMC4zMjE1IDYuMzAzMTZDMTAuNjY0NCA1Ljk2MDMgMTAuOTM2MyA1LjU1MzI2IDExLjEyMTkgNS4xMDUyOUMxMS4zMDc0IDQuNjU3MzIgMTEuNDAyOSA0LjE3NzE5IDExLjQwMjkgMy42OTIzMUMxMS40MDI5IDMuMjA3NDMgMTEuMzA3NCAyLjcyNzI5IDExLjEyMTkgMi4yNzkzMkMxMC45MzYzIDEuODMxMzUgMTAuNjY0NCAxLjQyNDMxIDEwLjMyMTUgMS4wODE0NUM5Ljk3ODYzIDAuNzM4NTkgOS41NzE1OSAwLjQ2NjYxNiA5LjEyMzYyIDAuMjgxMDZDOC42NzU2NSAwLjA5NTUwNDMgOC4xOTU1MiAtNy4yMjUyOWUtMDkgNy43MTA2NCAwQzYuNzMxMzggMS40NTkyMWUtMDggNS43OTIyMiAwLjM4OTAxIDUuMDk5NzggMS4wODE0NUM0LjQwNzM0IDEuNzczODkgNC4wMTgzMyAyLjcxMzA1IDQuMDE4MzMgMy42OTIzMUM0LjAxODMzIDQuNjcxNTcgNC40MDczNCA1LjYxMDcyIDUuMDk5NzggNi4zMDMxNkM1Ljc5MjIyIDYuOTk1NjEgNi43MzEzOCA3LjM4NDYyIDcuNzEwNjQgNy4zODQ2MlpNMTguNzg3NiA3LjM4NDYyQzE5LjI3MjQgNy4zODQ2MiAxOS43NTI2IDcuMjg5MTEgMjAuMjAwNSA3LjEwMzU2QzIwLjY0ODUgNi45MTggMjEuMDU1NiA2LjY0NjAzIDIxLjM5ODQgNi4zMDMxNkMyMS43NDEzIDUuOTYwMyAyMi4wMTMzIDUuNTUzMjYgMjIuMTk4OCA1LjEwNTI5QzIyLjM4NDQgNC42NTczMiAyMi40Nzk5IDQuMTc3MTkgMjIuNDc5OSAzLjY5MjMxQzIyLjQ3OTkgMy4yMDc0MyAyMi4zODQ0IDIuNzI3MjkgMjIuMTk4OCAyLjI3OTMyQzIyLjAxMzMgMS44MzEzNSAyMS43NDEzIDEuNDI0MzEgMjEuMzk4NCAxLjA4MTQ1QzIxLjA1NTYgMC43Mzg1OSAyMC42NDg1IDAuNDY2NjE2IDIwLjIwMDUgMC4yODEwNkMxOS43NTI2IDAuMDk1NTA0MyAxOS4yNzI0IC03LjIyNTI5ZS0wOSAxOC43ODc2IDBDMTcuODA4MyAxLjQ1OTIxZS0wOCAxNi44NjkxIDAuMzg5MDEgMTYuMTc2NyAxLjA4MTQ1QzE1LjQ4NDMgMS43NzM4OSAxNS4wOTUzIDIuNzEzMDUgMTUuMDk1MyAzLjY5MjMxQzE1LjA5NTMgNC42NzE1NyAxNS40ODQzIDUuNjEwNzIgMTYuMTc2NyA2LjMwMzE2QzE2Ljg2OTEgNi45OTU2MSAxNy44MDgzIDcuMzg0NjIgMTguNzg3NiA3LjM4NDYyWk0wLjk0MTQwNiAxMC43MzZDMC45NDE0MDYgMTAuNDU3NSAwLjk5NjI1OCAxMC4xODE4IDEuMTAyODMgOS45MjQ0OEMxLjIwOTQgOS42NjcxOSAxLjM2NTYgOS40MzM0MiAxLjU2MjUyIDkuMjM2NUMxLjc1OTQ0IDkuMDM5NTggMS45OTMyMSA4Ljg4MzM4IDIuMjUwNSA4Ljc3NjgxQzIuNTA3NzggOC42NzAyNCAyLjc4MzU0IDguNjE1MzkgMy4wNjIwMiA4LjYxNTM5SDguOTg0NDhDOC41NTE2OSA5LjM2MzQ1IDguMzI0NTIgMTAuMjEyNyA4LjMyNjAyIDExLjA3NjlDOC4zMjUxOSAxMS43NzU1IDguNDczNDEgMTIuNDY2MiA4Ljc2MDc5IDEzLjEwMjlDOS4wNDgxNiAxMy43Mzk2IDkuNDY4MDcgMTQuMzA3NyA5Ljk5MjQ4IDE0Ljc2OTJIOC42MDA0OEM4LjAxNDE4IDE0Ljc2ODcgNy40MzgwMyAxNC45MjIyIDYuOTI5NjkgMTUuMjE0NEM2LjQyMTM0IDE1LjUwNjUgNS45OTg2NCAxNS45MjcgNS43MDM4NyAxNi40MzM4QzMuNzIxMSAxNi4wNDQ5IDIuNTE2MTggMTUuMDc4MiAxLjgxNDY0IDEzLjk5MkMwLjk0MTQwNiAxMi42NCAwLjk0MTQwNiAxMS4yNDMxIDAuOTQxNDA2IDExLjAwMTJWMTAuNzM2Wk0xNy44OTc3IDE0Ljc2OTJDMTguNDg0IDE0Ljc2ODcgMTkuMDYwMiAxNC45MjIyIDE5LjU2ODUgMTUuMjE0NEMyMC4wNzY5IDE1LjUwNjUgMjAuNDk5NiAxNS45MjcgMjAuNzk0MyAxNi40MzM4QzIyLjc3NzEgMTYuMDQ0OSAyMy45ODIgMTUuMDc4MiAyNC42ODM2IDEzLjk5MkMyNS41NTY4IDEyLjY0IDI1LjU1NjggMTEuMjQzMSAyNS41NTY4IDExLjAwMTJWMTAuNzM2NkMyNS41NTY5IDEwLjQ1ODEgMjUuNTAyMSAxMC4xODIzIDI1LjM5NTUgOS45MjQ5QzI1LjI4OSA5LjY2NzU1IDI1LjEzMjggOS40MzM3IDI0LjkzNTkgOS4yMzY3MkMyNC43MzkgOS4wMzk3MyAyNC41MDUyIDguODgzNDggMjQuMjQ3OCA4Ljc3Njg3QzIzLjk5MDUgOC42NzAyNiAyMy43MTQ3IDguNjE1MzkgMjMuNDM2MiA4LjYxNTM5SDE3LjUxMzdDMTcuOTQ2NSA5LjM2MzQ1IDE4LjE3MzcgMTAuMjEyNyAxOC4xNzIyIDExLjA3NjlDMTguMTczIDExLjc3NTUgMTguMDI0OCAxMi40NjYyIDE3LjczNzQgMTMuMTAyOUMxNy40NSAxMy43Mzk2IDE3LjAzMDEgMTQuMzA3NyAxNi41MDU3IDE0Ljc2OTJIMTcuODk3N1pNMTYuOTQxNCAxMS4wNzY5QzE2Ljk0MTQgMTIuMDU2MiAxNi41NTI0IDEyLjk5NTMgMTUuODYgMTMuNjg3OEMxNS4xNjc1IDE0LjM4MDIgMTQuMjI4NCAxNC43NjkyIDEzLjI0OTEgMTQuNzY5MkMxMi4yNjk4IDE0Ljc2OTIgMTEuMzMwNyAxNC4zODAyIDEwLjYzODIgMTMuNjg3OEM5Ljk0NTggMTIuOTk1MyA5LjU1Njc5IDEyLjA1NjIgOS41NTY3OSAxMS4wNzY5QzkuNTU2NzkgMTAuMDk3NyA5Ljk0NTggOS4xNTg1MSAxMC42MzgyIDguNDY2MDdDMTEuMzMwNyA3Ljc3MzYzIDEyLjI2OTggNy4zODQ2MiAxMy4yNDkxIDcuMzg0NjJDMTQuMjI4NCA3LjM4NDYyIDE1LjE2NzUgNy43NzM2MyAxNS44NiA4LjQ2NjA3QzE2LjU1MjQgOS4xNTg1MSAxNi45NDE0IDEwLjA5NzcgMTYuOTQxNCAxMS4wNzY5Wk02LjQ3OTg3IDE4LjEyMDZDNi40Nzk4NyAxNy41NTgyIDYuNzAzMjkgMTcuMDE4OCA3LjEwMDk4IDE2LjYyMTFDNy40OTg2NyAxNi4yMjM0IDguMDM4MDYgMTYgOC42MDA0OCAxNkgxNy44OTc3QzE4LjQ2MDEgMTYgMTguOTk5NSAxNi4yMjM0IDE5LjM5NzIgMTYuNjIxMUMxOS43OTQ5IDE3LjAxODggMjAuMDE4MyAxNy41NTgyIDIwLjAxODMgMTguMTIwNlYxOC4zODU4QzIwLjAxODMgMTguNjI4MyAyMC4wMTgzIDIwLjAyNDYgMTkuMTQ1MSAyMS4zNzY2QzE4LjIzMjUgMjIuNzg5NSAxNi40Njk0IDI0IDEzLjI0OTEgMjRDMTAuMDI4OCAyNCA4LjI2NTcxIDIyLjc4OTUgNy4zNTMxIDIxLjM3NjZDNi40Nzk4NyAyMC4wMjQ2IDYuNDc5ODcgMTguNjI3NyA2LjQ3OTg3IDE4LjM4NThWMTguMTIwNlpcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXNrPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTcuNzEwNjQgNy4zODQ2MkM4LjE5NTUyIDcuMzg0NjIgOC42NzU2NSA3LjI4OTExIDkuMTIzNjIgNy4xMDM1NkM5LjU3MTU5IDYuOTE4IDkuOTc4NjMgNi42NDYwMyAxMC4zMjE1IDYuMzAzMTZDMTAuNjY0NCA1Ljk2MDMgMTAuOTM2MyA1LjU1MzI2IDExLjEyMTkgNS4xMDUyOUMxMS4zMDc0IDQuNjU3MzIgMTEuNDAyOSA0LjE3NzE5IDExLjQwMjkgMy42OTIzMUMxMS40MDI5IDMuMjA3NDMgMTEuMzA3NCAyLjcyNzI5IDExLjEyMTkgMi4yNzkzMkMxMC45MzYzIDEuODMxMzUgMTAuNjY0NCAxLjQyNDMxIDEwLjMyMTUgMS4wODE0NUM5Ljk3ODYzIDAuNzM4NTkgOS41NzE1OSAwLjQ2NjYxNiA5LjEyMzYyIDAuMjgxMDZDOC42NzU2NSAwLjA5NTUwNDMgOC4xOTU1MiAtNy4yMjUyOWUtMDkgNy43MTA2NCAwQzYuNzMxMzggMS40NTkyMWUtMDggNS43OTIyMiAwLjM4OTAxIDUuMDk5NzggMS4wODE0NUM0LjQwNzM0IDEuNzczODkgNC4wMTgzMyAyLjcxMzA1IDQuMDE4MzMgMy42OTIzMUM0LjAxODMzIDQuNjcxNTcgNC40MDczNCA1LjYxMDcyIDUuMDk5NzggNi4zMDMxNkM1Ljc5MjIyIDYuOTk1NjEgNi43MzEzOCA3LjM4NDYyIDcuNzEwNjQgNy4zODQ2MlpNMTguNzg3NiA3LjM4NDYyQzE5LjI3MjQgNy4zODQ2MiAxOS43NTI2IDcuMjg5MTEgMjAuMjAwNSA3LjEwMzU2QzIwLjY0ODUgNi45MTggMjEuMDU1NiA2LjY0NjAzIDIxLjM5ODQgNi4zMDMxNkMyMS43NDEzIDUuOTYwMyAyMi4wMTMzIDUuNTUzMjYgMjIuMTk4OCA1LjEwNTI5QzIyLjM4NDQgNC42NTczMiAyMi40Nzk5IDQuMTc3MTkgMjIuNDc5OSAzLjY5MjMxQzIyLjQ3OTkgMy4yMDc0MyAyMi4zODQ0IDIuNzI3MjkgMjIuMTk4OCAyLjI3OTMyQzIyLjAxMzMgMS44MzEzNSAyMS43NDEzIDEuNDI0MzEgMjEuMzk4NCAxLjA4MTQ1QzIxLjA1NTYgMC43Mzg1OSAyMC42NDg1IDAuNDY2NjE2IDIwLjIwMDUgMC4yODEwNkMxOS43NTI2IDAuMDk1NTA0MyAxOS4yNzI0IC03LjIyNTI5ZS0wOSAxOC43ODc2IDBDMTcuODA4MyAxLjQ1OTIxZS0wOCAxNi44NjkxIDAuMzg5MDEgMTYuMTc2NyAxLjA4MTQ1QzE1LjQ4NDMgMS43NzM4OSAxNS4wOTUzIDIuNzEzMDUgMTUuMDk1MyAzLjY5MjMxQzE1LjA5NTMgNC42NzE1NyAxNS40ODQzIDUuNjEwNzIgMTYuMTc2NyA2LjMwMzE2QzE2Ljg2OTEgNi45OTU2MSAxNy44MDgzIDcuMzg0NjIgMTguNzg3NiA3LjM4NDYyWk0wLjk0MTQwNiAxMC43MzZDMC45NDE0MDYgMTAuNDU3NSAwLjk5NjI1OCAxMC4xODE4IDEuMTAyODMgOS45MjQ0OEMxLjIwOTQgOS42NjcxOSAxLjM2NTYgOS40MzM0MiAxLjU2MjUyIDkuMjM2NUMxLjc1OTQ0IDkuMDM5NTggMS45OTMyMSA4Ljg4MzM4IDIuMjUwNSA4Ljc3NjgxQzIuNTA3NzggOC42NzAyNCAyLjc4MzU0IDguNjE1MzkgMy4wNjIwMiA4LjYxNTM5SDguOTg0NDhDOC41NTE2OSA5LjM2MzQ1IDguMzI0NTIgMTAuMjEyNyA4LjMyNjAyIDExLjA3NjlDOC4zMjUxOSAxMS43NzU1IDguNDczNDEgMTIuNDY2MiA4Ljc2MDc5IDEzLjEwMjlDOS4wNDgxNiAxMy43Mzk2IDkuNDY4MDcgMTQuMzA3NyA5Ljk5MjQ4IDE0Ljc2OTJIOC42MDA0OEM4LjAxNDE4IDE0Ljc2ODcgNy40MzgwMyAxNC45MjIyIDYuOTI5NjkgMTUuMjE0NEM2LjQyMTM0IDE1LjUwNjUgNS45OTg2NCAxNS45MjcgNS43MDM4NyAxNi40MzM4QzMuNzIxMSAxNi4wNDQ5IDIuNTE2MTggMTUuMDc4MiAxLjgxNDY0IDEzLjk5MkMwLjk0MTQwNiAxMi42NCAwLjk0MTQwNiAxMS4yNDMxIDAuOTQxNDA2IDExLjAwMTJWMTAuNzM2Wk0xNy44OTc3IDE0Ljc2OTJDMTguNDg0IDE0Ljc2ODcgMTkuMDYwMiAxNC45MjIyIDE5LjU2ODUgMTUuMjE0NEMyMC4wNzY5IDE1LjUwNjUgMjAuNDk5NiAxNS45MjcgMjAuNzk0MyAxNi40MzM4QzIyLjc3NzEgMTYuMDQ0OSAyMy45ODIgMTUuMDc4MiAyNC42ODM2IDEzLjk5MkMyNS41NTY4IDEyLjY0IDI1LjU1NjggMTEuMjQzMSAyNS41NTY4IDExLjAwMTJWMTAuNzM2NkMyNS41NTY5IDEwLjQ1ODEgMjUuNTAyMSAxMC4xODIzIDI1LjM5NTUgOS45MjQ5QzI1LjI4OSA5LjY2NzU1IDI1LjEzMjggOS40MzM3IDI0LjkzNTkgOS4yMzY3MkMyNC43MzkgOS4wMzk3MyAyNC41MDUyIDguODgzNDggMjQuMjQ3OCA4Ljc3Njg3QzIzLjk5MDUgOC42NzAyNiAyMy43MTQ3IDguNjE1MzkgMjMuNDM2MiA4LjYxNTM5SDE3LjUxMzdDMTcuOTQ2NSA5LjM2MzQ1IDE4LjE3MzcgMTAuMjEyNyAxOC4xNzIyIDExLjA3NjlDMTguMTczIDExLjc3NTUgMTguMDI0OCAxMi40NjYyIDE3LjczNzQgMTMuMTAyOUMxNy40NSAxMy43Mzk2IDE3LjAzMDEgMTQuMzA3NyAxNi41MDU3IDE0Ljc2OTJIMTcuODk3N1pNMTYuOTQxNCAxMS4wNzY5QzE2Ljk0MTQgMTIuMDU2MiAxNi41NTI0IDEyLjk5NTMgMTUuODYgMTMuNjg3OEMxNS4xNjc1IDE0LjM4MDIgMTQuMjI4NCAxNC43NjkyIDEzLjI0OTEgMTQuNzY5MkMxMi4yNjk4IDE0Ljc2OTIgMTEuMzMwNyAxNC4zODAyIDEwLjYzODIgMTMuNjg3OEM5Ljk0NTggMTIuOTk1MyA5LjU1Njc5IDEyLjA1NjIgOS41NTY3OSAxMS4wNzY5QzkuNTU2NzkgMTAuMDk3NyA5Ljk0NTggOS4xNTg1MSAxMC42MzgyIDguNDY2MDdDMTEuMzMwNyA3Ljc3MzYzIDEyLjI2OTggNy4zODQ2MiAxMy4yNDkxIDcuMzg0NjJDMTQuMjI4NCA3LjM4NDYyIDE1LjE2NzUgNy43NzM2MyAxNS44NiA4LjQ2NjA3QzE2LjU1MjQgOS4xNTg1MSAxNi45NDE0IDEwLjA5NzcgMTYuOTQxNCAxMS4wNzY5Wk02LjQ3OTg3IDE4LjEyMDZDNi40Nzk4NyAxNy41NTgyIDYuNzAzMjkgMTcuMDE4OCA3LjEwMDk4IDE2LjYyMTFDNy40OTg2NyAxNi4yMjM0IDguMDM4MDYgMTYgOC42MDA0OCAxNkgxNy44OTc3QzE4LjQ2MDEgMTYgMTguOTk5NSAxNi4yMjM0IDE5LjM5NzIgMTYuNjIxMUMxOS43OTQ5IDE3LjAxODggMjAuMDE4MyAxNy41NTgyIDIwLjAxODMgMTguMTIwNlYxOC4zODU4QzIwLjAxODMgMTguNjI4MyAyMC4wMTgzIDIwLjAyNDYgMTkuMTQ1MSAyMS4zNzY2QzE4LjIzMjUgMjIuNzg5NSAxNi40Njk0IDI0IDEzLjI0OTEgMjRDMTAuMDI4OCAyNCA4LjI2NTcxIDIyLjc4OTUgNy4zNTMxIDIxLjM3NjZDNi40Nzk4NyAyMC4wMjQ2IDYuNDc5ODcgMTguNjI3NyA2LjQ3OTg3IDE4LjM4NThWMTguMTIwNlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM5OEEyQjNcIiBzdHJva2Utd2lkdGg9XCIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXNrPVwidXJsKCNwYXRoLTYtaW5zaWRlLTJfNzA3XzEzMTA2KVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImdldFBvdGVudGlhbEJ1eWVyc0RhdGE/LnBvdGVudGlhbEJ1eWVycz8ucG90ZW50aWFsQnV5ZXJzR3JvdXA/LmNvdW50ICE9PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImxlZnQtY2FyZC1jb3VudCBtcy0xIG10LTJcIj57e2dldFBvdGVudGlhbEJ1eWVyc0RhdGE/LnBvdGVudGlhbEJ1eWVycz8ucG90ZW50aWFsQnV5ZXJzR3JvdXA/LmNvdW50XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNHcm91cD8uY291bnQudG9Mb2NhbGVTdHJpbmcoJ2VuLUlOJyk6Jy0tJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNHcm91cD8uY291bnQgPT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGVmdC1jYXJkLWNvdW50IG1zLTEgbXQtMlwiPjA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyIG1zLTFcIj5Hcm91cDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtc3RhcnQgbXMtMTUgbWItM1wiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtZGVmYXVsdCB3ZWVrLWZvbnRcIiBbY2xhc3MuaW52aXNpYmxlXT1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzUyOCdcIj57e2dldFBvdGVudGlhbEJ1eWVyc0RhdGE/LnBvdGVudGlhbEJ1eWVycz8ucG90ZW50aWFsQnV5ZXJzR3JvdXA/LmFnZUdyb3VwXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNHcm91cD8uYWdlR3JvdXA6Jy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFnZTwvc3Bhbj48L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1mb290ZXIgbXMtMiBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm10LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cIiFnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc0dyb3VwPy5QcmV2aW91c1ZhcmlhdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIxOFwiIHZpZXdCb3g9XCIwIDAgMTggMThcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8yMzI4XzQ2NTQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMS41IDlMNi43NSA0LjI1TDQuMjUgNi43NUwwLjUgM00xMS41IDlIOC41TTExLjUgOVY2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiI0Q5MkQyMFwiIHN0cm9rZS13aWR0aD1cIjEuNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8yMzI4XzQ2NTRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cImdldFBvdGVudGlhbEJ1eWVyc0RhdGE/LnBvdGVudGlhbEJ1eWVycz8ucG90ZW50aWFsQnV5ZXJzR3JvdXA/LlByZXZpb3VzVmFyaWF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzMyMTZfMTE4KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTEuNSAzTDYuNzUgNy43NUw0LjI1IDUuMjVMMC41IDlNMTEuNSAzSDguNU0xMS41IDNWNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMwMzk4NTVcIiBzdHJva2Utd2lkdGg9XCIxLjVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzIxNl8xMThcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtdC0yIG1zLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNHcm91cD8uUHJldmlvdXNEYXRhID09PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+MCU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImdldFBvdGVudGlhbEJ1eWVyc0RhdGE/LnBvdGVudGlhbEJ1eWVycz8ucG90ZW50aWFsQnV5ZXJzR3JvdXA/LlByZXZpb3VzRGF0YSAhPT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiPnt7Z2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNHcm91cD8uUHJldmlvdXNEYXRhXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc0dyb3VwPy5QcmV2aW91c0RhdGE6Jy0tJ319JTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3ZWVrLWZvbnRcIj4gdnMgUHJldmlvdXMgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSdkYWlseSdcIj5kYXk8L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSd3ZWVrbHknXCI+d2Vlazwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSdtb250aGx5J1wiPm1vbnRoPC9zcGFuPjwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvc2l0aW9uLWFic29sdXRlIG10LTUgZW5kLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02IDEyTDEwIDhMNiA0XCIgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTMgcHgtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXIgbXQtNyBtYi0zXCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNQZXJzb25zPy5jb3VudCAhPT0gMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImxlZnQtY2FyZC1jb3VudCBtdC0yXCI+e3tnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc1BlcnNvbnM/LmNvdW50XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc1BlcnNvbnM/LmNvdW50LnRvTG9jYWxlU3RyaW5nKCdlbi1JTicpOictLSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNQZXJzb25zPy5jb3VudCA9PT0gMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImxlZnQtY2FyZC1jb3VudCBtdC0yXCI+MDwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyIG1zLTFcIj5QZXJzb25zPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXIgbWItM1wiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LWRlZmF1bHQgd2Vlay1mb250XCIgW2NsYXNzLmludmlzaWJsZV09XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09ICc1MjgnXCI+e3tnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc1BlcnNvbnM/LmFnZUdyb3VwXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRQb3RlbnRpYWxCdXllcnNEYXRhLnBvdGVudGlhbEJ1eWVycz8ucG90ZW50aWFsQnV5ZXJzUGVyc29ucz8uYWdlR3JvdXA6Jy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZ2U8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1mb290ZXIgdGV4dC1jZW50ZXIgcC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm10LTIgbXMtMlwiPjxzcGFuIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiPjwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibXMtMiB3ZWVrLWZvbnRcIj4gQXZnLiBHcm91cCBzaXplPC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNiAxMkwxMCA4TDYgNFwiIHN0cm9rZT1cIiM5OEEyQjNcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTUgaC0xMDBcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBtYi0zXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBib3JkZXItMCBwdC0zIHBzLTVcIj5cclxuICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlLXRleHRcIj48c3BhbiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0gJzQ1MidcIj5Db252ZXJzaW9uPC9zcGFuPiBGdW5uZWxcclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgIT09ICc0NTInXCI+IDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCIgcGxhY2VtZW50PVwidG9wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZ2JUb29sdGlwPVwiVG90YWwgb3Bwb3J0dW5pdHkgb2Ygc2FsZXMgY29udmVyc2lvbiB2ZXJzdXMgdG90YWwgd2Fsa2luc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMTQzMl84MDAzNSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDA2NSAxMC42NjY2VjcuOTk5OTJNOC4wMDA2NSA1LjMzMzI1SDguMDA3MzJNMTQuNjY3MyA3Ljk5OTkyQzE0LjY2NzMgMTEuNjgxOCAxMS42ODI2IDE0LjY2NjYgOC4wMDA2NSAxNC42NjY2QzQuMzE4NzUgMTQuNjY2NiAxLjMzMzk4IDExLjY4MTggMS4zMzM5OCA3Ljk5OTkyQzEuMzMzOTggNC4zMTgwMiA0LjMxODc1IDEuMzMzMjUgOC4wMDA2NSAxLjMzMzI1QzExLjY4MjYgMS4zMzMyNSAxNC42NjczIDQuMzE4MDIgMTQuNjY3MyA3Ljk5OTkyWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMTQzMl84MDAzNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIiBwbGFjZW1lbnQ9XCJ0b3BcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ2JUb29sdGlwXT1cIidUb3RhbCBvcHBvcnR1bml0eSBvZiBzYWxlcyBNb3JlIHRoYW4gJyArIGNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5jb252ZXJzaW9uPy52YWx1ZSArICcgbWlucyB2ZXJzdXMgdG90YWwgd2Fsa2lucydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzE0MzJfODAwMzUpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwNjUgMTAuNjY2NlY3Ljk5OTkyTTguMDAwNjUgNS4zMzMyNUg4LjAwNzMyTTE0LjY2NzMgNy45OTk5MkMxNC42NjczIDExLjY4MTggMTEuNjgyNiAxNC42NjY2IDguMDAwNjUgMTQuNjY2NkM0LjMxODc1IDE0LjY2NjYgMS4zMzM5OCAxMS42ODE4IDEuMzMzOTggNy45OTk5MkMxLjMzMzk4IDQuMzE4MDIgNC4zMTg3NSAxLjMzMzI1IDguMDAwNjUgMS4zMzMyNUMxMS42ODI2IDEuMzMzMjUgMTQuNjY3MyA0LjMxODAyIDE0LjY2NzMgNy45OTk5MlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzE0MzJfODAwMzVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXN1YiBtYi0yXCI+e3toZWFkZXJEYXRhPy5kYXRlPy5zdGFydERhdGUgfCBkYXRlOidkZCBNTU0sIHl5eXknfX0g4oCTXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7aGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSB8IGRhdGU6J2RkIE1NTSwgeXl5eSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvaDM+XHJcblxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgcC0wXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaGVhdGxvYWRpbmdcIiBjbGFzcz1cInJvdyBsb2FkZXIgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGgtMjc1cHhcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lciBwdC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImhlYXRub0RhdGFcIiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImltZy1ub2RhdGFcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGExLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS10aXRsZVwiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtc3ViXCI+VGhlcmUgaXMgbm8gcmVzdWx0IGZvciB0aGlzIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSc0NTInXCI+Y29udmVyc2lvbjwvc3Bhbj4gZnVubmVsPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIWhlYXRsb2FkaW5nICYmICFoZWF0bm9EYXRhXCIgY2xhc3M9XCJ0ZXh0LWNlbnRlciBtYi0zXCIgaWQ9XCJjaGFydGRpdlwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdiAqbmdJZj1cIm1wYWxvYWRpbmcgJiYgc3RvcmVJZGFycmF5Py5sZW5ndGggPiAxIHx8IG1hcG5vRGF0YSAmJiBzdG9yZUlkYXJyYXk/Lmxlbmd0aCA+IDEgfHwgIXN0b3JlSWRhcnJheT8ubGVuZ3RoXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJjYXJkXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBib3JkZXItMCBwdC0zIHBzLTcgcGUtMFwiPlxyXG4gICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGl0bGUtdGV4dFwiPkV4cGxvcmU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2gzPlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJtcGFsb2FkaW5nXCIgY2xhc3M9XCJyb3cgbG9hZGVyIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBoLTIyNXB4XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lciBwdC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm1hcG5vRGF0YVwiIGNsYXNzPVwicm93IHB4LTNcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm9ybWFsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgbWItMTAgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctbWFwMVwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ljb25zL25vdC1hcHBsaWNhYmxlLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXRpdGxlIG10LTNcIj5EYXRhIE5vdCBGb3VuZDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXN1YlwiPk5vcm1hbGl6ZWQgZGF0YSBpcyBub3QgYXBwbGljYWJsZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhbm9ybWFsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctbWFwXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvTm9kYXRhMS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS10aXRsZVwiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS1zdWJcIj5UaGVyZSBpcyBubyByZXN1bHQgZm9yIHRoaXMgU3RvcmUgbWFwPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cIiFtcGFsb2FkaW5nICYmICFtYXBub0RhdGEgJiYgc3RvcmVJZGFycmF5Py5sZW5ndGggPiAxXCIgY2xhc3M9XCJjYXJkXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBib3JkZXItMCBwdC0zIHBzLTcgcGUtMFwiPlxyXG4gICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGl0bGUtdGV4dFwiPkV4cGxvcmU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdG9vbGJhciBtdC0wXCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCIhbXBhbG9hZGluZyAmJiAhbWFwbm9EYXRhXCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJleHBvcmVWaWV3KClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBtZS04IGJ0bi1saWdodC1wcmltYXJ5MSByb3VuZGVkLTMgdGV4dC1ub3dyYXAgYm9yZGVyLXZhbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1zLTJcIj5FeHBsb3JlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhbWFwbm9EYXRhXCIgY2xhc3M9XCJjYXJkLWJvZHkgY29sLW1kLTEyIHB0LTAgcGItNSBwcy03XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGlkPVwibWFwXCIgY2xhc3M9XCJ3LTEwMFwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwic3RvcmVJZGFycmF5Py5sZW5ndGggPT09IDFcIiBjbGFzcz1cImNhcmQgcGItMlwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgYm9yZGVyLTAgcHQtMyBwcy01IHBlLTBcIj5cclxuICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlLXRleHRcIj5SZWNhcCBWaWRlb1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHBsYWNlbWVudD1cInJpZ2h0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5nYlRvb2x0aXA9XCJBIHF1aWNrIHJlY2FwIG9mIHRoZSBzdG9yZSBhY3Rpdml0eSBhbG9uZyB3aXRoIHRoZSBhdmcgdGVjaCBpbmZyYXN0cnVjdHVyZSBkb3dudGltZSBzdGF0dXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8xNDMyXzgwMDM1KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDA2NSAxMC42NjY2VjcuOTk5OTJNOC4wMDA2NSA1LjMzMzI1SDguMDA3MzJNMTQuNjY3MyA3Ljk5OTkyQzE0LjY2NzMgMTEuNjgxOCAxMS42ODI2IDE0LjY2NjYgOC4wMDA2NSAxNC42NjY2QzQuMzE4NzUgMTQuNjY2NiAxLjMzMzk4IDExLjY4MTggMS4zMzM5OCA3Ljk5OTkyQzEuMzMzOTggNC4zMTgwMiA0LjMxODc1IDEuMzMzMjUgOC4wMDA2NSAxLjMzMzI1QzExLjY4MjYgMS4zMzMyNSAxNC42NjczIDQuMzE4MDIgMTQuNjY3MyA3Ljk5OTkyWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzE0MzJfODAwMzVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXN1YiBtYi0yXCI+RGF0ZWQ6IHt7aGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSB8IGRhdGU6JyBkZCBNTU0seXl5eSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvaDM+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10b29sYmFyIG10LTBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tZGVmYXVsdCBidG4tb3V0bGluZSBidG4tb3V0bGluZS1kZWZhdWx0IHJvdW5kZWQtMyB0ZXh0LW5vd3JhcCBib3JkZXItdmFsIHRleHQtc3RhcnQgZGlzYWJsZWQtYnV0dG9uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNFwiIHZpZXdCb3g9XCIwIDAgMTYgMTRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgaWQ9XCJHcm91cFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGlkPVwiVmVjdG9yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk05LjUxOTUzIDAuMzMzOTg0QzEwLjM5NTggMC4zMzM5ODQgMTEuMjMzMSAwLjUxMzQ3NyAxMS45OTc0IDAuODM4OTc0QzEyLjc5MDQgMS4xNzY1MyAxMy41MDM5IDEuNjcyMTQgMTQuMTAxNiAyLjI4Njk3QzE0LjY5NzkgMi45MDA0NiAxNS4xNzk3IDMuNjM0NSAxNS41MDc4IDQuNDUyOTNDMTUuODI0MiA1LjIzOTIyIDE1Ljk5ODcgNi4xMDA1MSAxNS45OTg3IDcuMDAwNjVDMTUuOTk4NyA3LjkwMjEzIDE1LjgyNDIgOC43NjM0MyAxNS41MDc4IDkuNTQ5NzFDMTUuMTc5NyAxMC4zNjU1IDE0LjY5NzkgMTEuMDk5NSAxNC4xMDAzIDExLjcxNDNDMTMuNTAzOSAxMi4zMjc4IDEyLjc5MDQgMTIuODIzNCAxMS45OTQ4IDEzLjE2MUMxMS4yMzA1IDEzLjQ4NjUgMTAuMzkzMiAxMy42NjYgOS41MTgyMyAxMy42NjZDOC42NDE5MyAxMy42NjYgNy44MDQ2OSAxMy40ODY1IDcuMDQwMzYgMTMuMTYxQzYuMjQ3NCAxMi44MjM0IDUuNTMzODUgMTIuMzI3OCA0LjkzNzUgMTEuNzE0M0w0LjkzNjIgMTEuNzEzQzQuMzM4NTQgMTEuMDk4MiAzLjg1ODA3IDEwLjM2NDEgMy41Mjk5NSA5LjU0OTcxQzMuNDI4MzkgOS4yOTY1NSAzLjM0MTE1IDkuMDM2NjggMy4yNjk1MyA4Ljc3MDEzQzMuNDA0OTUgOC43ODM1MiAzLjU0Mjk3IDguNzkwMjIgMy42ODIyOSA4Ljc5MDIyQzMuOTQ2NjEgOC43OTAyMiA0LjIwNDQzIDguNzY2MTEgNC40NTU3MyA4LjcxOTIyQzQuNDk3NCA4Ljg0NzgyIDQuNTQyOTcgOC45NzUwNyA0LjU5MjQ1IDkuMDk5NjRDNC44NjE5OCA5Ljc2OTM5IDUuMjU3ODEgMTAuMzcyMiA1Ljc1IDEwLjg3ODVDNi4yNDIxOSAxMS4zODQ4IDYuODI5NDMgMTEuNzkyIDcuNDc5MTcgMTIuMDY5M0M4LjEwNTQ3IDEyLjMzNTkgOC43OTQyNyAxMi40ODQ1IDkuNTE4MjMgMTIuNDg0NUMxMC4yNDIyIDEyLjQ4NDUgMTAuOTI5NyAxMi4zMzcyIDExLjU1NzMgMTIuMDY5M0MxMi4yMDgzIDExLjc5MiAxMi43OTQzIDExLjM4NDggMTMuMjg2NSAxMC44Nzg1QzEzLjc3ODYgMTAuMzcyMiAxNC4xNzQ1IDkuNzY4MDUgMTQuNDQ0IDkuMDk5NjRDMTQuNzAzMSA4LjQ1NTM0IDE0Ljg0NzcgNy43NDY3NSAxNC44NDc3IDcuMDAxOTlDMTQuODQ3NyA2LjI1NzIzIDE0LjcwNDQgNS41NDk5OCAxNC40NDQgNC45MDQzNEMxNC4xNzQ1IDQuMjM0NTkgMTMuNzc4NiAzLjYzMTgyIDEzLjI4NjUgMy4xMjU0OUMxMi43OTQzIDIuNjE5MTYgMTIuMjA3IDIuMjExOTYgMTEuNTU3MyAxLjkzNDY4QzEwLjkzMSAxLjY2ODEyIDEwLjI0MjIgMS41MTk0NCA5LjUxODIzIDEuNTE5NDRDOC43OTQyNyAxLjUxOTQ0IDguMTA2NzcgMS42NjY3OCA3LjQ3OTE3IDEuOTM0NjhDNy40MjMxOCAxLjk1ODc5IDcuMzY3MTkgMS45ODQyNCA3LjMxMjUgMi4wMDk2OUM3LjA5ODk2IDEuNjY0MSA2Ljg0MTE1IDEuMzUwNjYgNi41NDU1NyAxLjA3ODc0QzYuNzA3MDMgMC45OTMwMTYgNi44NzI0IDAuOTEzOTg2IDcuMDQwMzYgMC44NDE2NTNDNy44MDcyOSAwLjUxMzQ3NyA4LjY0MzIzIDAuMzMzOTg0IDkuNTE5NTMgMC4zMzM5ODRaTTguNzc2MDQgMy44MzE0MUM4Ljc3NjA0IDMuNjY3OTkgOC44NDExNSAzLjUyMDY0IDguOTQ0MDEgMy40MTM0OEM5LjA0ODE4IDMuMzA2MzIgOS4xOTE0MSAzLjI0MDY5IDkuMzUwMjYgMy4yNDA2OUM5LjUwOTExIDMuMjQwNjkgOS42NTIzNCAzLjMwNjMyIDkuNzU2NTEgMy40MTM0OEM5Ljg2MDY4IDMuNTIwNjQgOS45MjQ0OCAzLjY2Nzk5IDkuOTI0NDggMy44MzE0MVY2Ljk0MTcxTDEyLjE4MzYgOC4zMjAwNUMxMi4zMTkgOC40MDMxIDEyLjQxMDIgOC41MzU3MSAxMi40NDY2IDguNjgxNzJDMTIuNDgzMSA4LjgyNzcyIDEyLjQ2NjEgOC45ODg0NiAxMi4zODU0IDkuMTI3NzdWOS4xMjkxMUMxMi4zMDQ3IDkuMjY4NDIgMTIuMTc1OCA5LjM2MjE4IDEyLjAzMzkgOS4zOTk2OUMxMS44OTE5IDkuNDM3MTkgMTEuNzM1NyA5LjQxOTc4IDExLjYwMDMgOS4zMzY3M0gxMS41OTlMOS4wNzE2MSA3Ljc5NDk3QzguOTg0MzggNy43NDU0MSA4LjkxMjc2IDcuNjczMDggOC44NjA2OCA3LjU4NzM1QzguODA3MjkgNy40OTc2IDguNzc2MDQgNy4zOTE3OCA4Ljc3NjA0IDcuMjc5MjdWMy44MzE0MVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzY2NzA4NVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggaWQ9XCJWZWN0b3JfMlwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0zLjUxMzAyIDAuNjg3NjIyQzUuNDUzMTIgMC42ODc2MjIgNy4wMjYwNCAyLjMwNTczIDcuMDI2MDQgNC4zMDE1OEM3LjAyNjA0IDYuMjk3NDMgNS40NTMxMiA3LjkxNTU0IDMuNTEzMDIgNy45MTU1NEMxLjU3MjkyIDcuOTE1NTQgMCA2LjI5NzQzIDAgNC4zMDE1OEMwIDIuMzA1NzMgMS41NzI5MiAwLjY4NzYyMiAzLjUxMzAyIDAuNjg3NjIyWk0zLjUxMzAyIDYuMzczNzhMNS4zOTg0NCAzLjk3NjA4SDQuMjI3ODZWMi43MDA4OEgyLjc5ODE4VjMuOTc2MDhIMS42Mjc2TDMuNTEzMDIgNi4zNzM3OFpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiI0YwNDQzOFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1zLTJcIiAqbmdJZj1cImdldFJlY2FwVmlkZW9EYXRhPy5kb3duVGltZSA9PT0gMFwiPjAgTWluczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcy0yXCIgKm5nSWY9XCJnZXRSZWNhcFZpZGVvRGF0YT8uZG93blRpbWUgIT09IDBcIj57e2dldFJlY2FwVmlkZW9EYXRhPy5kb3duVGltZSA/P1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJy0tJ319IE1pbnM8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLWRlZmF1bHQgbXgtMiBidG4tb3V0bGluZSBidG4tb3V0bGluZS1kZWZhdWx0IHJvdW5kZWQtMyB0ZXh0LW5vd3JhcCBib3JkZXItdmFsIGRpc2FibGVkLWJ1dHRvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiZ2V0UmVjYXBWaWRlb0RhdGE/LmhlYWx0aCA9PT0nR09PRCdcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgaWQ9XCJGcmFtZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGlkPVwiVmVjdG9yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMy40MzQ5IDIuNUMxNC44MjM4IDIuNSAxNS45ODcxIDMuMDEzODkgMTYuOTI0OSA0LjA0MTY3QzE3Ljg2MjcgNS4wNjk0NCAxOC4zMzEzIDYuMjkxNjcgMTguMzMwNyA3LjcwODMzQzE4LjMzMDcgNy45NTgzMyAxOC4zMTY4IDguMjA1IDE4LjI4OTEgOC40NDgzM0MxOC4yNjEzIDguNjkxNjcgMTguMjEyNyA4LjkzMTExIDE4LjE0MzIgOS4xNjY2N0gxMi45MzQ5TDExLjUxODIgNy4wNDE2N0MxMS40NDg4IDYuOTMwNTYgMTEuMzUxNiA2Ljg0MDI4IDExLjIyNjYgNi43NzA4M0MxMS4xMDE2IDYuNzAxMzkgMTAuOTY5NiA2LjY2NjY3IDEwLjgzMDcgNi42NjY2N0MxMC42NTAyIDYuNjY2NjcgMTAuNDg2OCA2LjcyMjIyIDEwLjM0MDcgNi44MzMzM0MxMC4xOTQ2IDYuOTQ0NDQgMTAuMDk0MSA3LjA4MzMzIDEwLjAzOTEgNy4yNUw4LjkxNDA2IDEwLjYyNUw4LjE4NDkgOS41NDE2N0M4LjExNTQ1IDkuNDMwNTYgOC4wMTgyMyA5LjM0MDI4IDcuODkzMjMgOS4yNzA4M0M3Ljc2ODIzIDkuMjAxMzkgNy42MzYyOCA5LjE2NjY3IDcuNDk3NCA5LjE2NjY3SDEuODUxNTZDMS43ODIxMiA4LjkzMDU2IDEuNzMzNTEgOC42OTA4MyAxLjcwNTczIDguNDQ3NUMxLjY3Nzk1IDguMjA0MTcgMS42NjQwNiA3Ljk2NDcyIDEuNjY0MDYgNy43MjkxN0MxLjY2NDA2IDYuMjk4NjEgMi4xMjkzNCA1LjA2OTQ0IDMuMDU5OSA0LjA0MTY3QzMuOTkwNDUgMy4wMTM4OSA1LjE1MDE3IDIuNSA2LjUzOTA2IDIuNUM3LjIwNTczIDIuNSA3LjgzNDM0IDIuNjMxOTQgOC40MjQ5IDIuODk1ODNDOS4wMTU0NSAzLjE1OTcyIDkuNTM5NjIgMy41Mjc3OCA5Ljk5NzQgNEMxMC40NDE4IDMuNTI3NzggMTAuOTU5MyAzLjE1OTcyIDExLjU0OTkgMi44OTU4M0MxMi4xNDA1IDIuNjMxOTQgMTIuNzY4OCAyLjUgMTMuNDM0OSAyLjVaTTkuOTk3NCAxNy41QzkuNzQ3NCAxNy41IDkuNTA3NjcgMTcuNDU0NyA5LjI3ODIzIDE3LjM2NDJDOS4wNDg3OCAxNy4yNzM2IDguODQ0MDYgMTcuMTM4MyA4LjY2NDA2IDE2Ljk1ODNMMy4wODA3MyAxMS4zNTQyQzIuOTk3NCAxMS4yNzA4IDIuOTIxMDEgMTEuMTg3NSAyLjg1MTU2IDExLjEwNDJDMi43ODIxMiAxMS4wMjA4IDIuNzEyNjcgMTAuOTMwNiAyLjY0MzIzIDEwLjgzMzNINy4wMzkwNkw4LjQ1NTczIDEyLjk1ODNDOC41MjUxNyAxMy4wNjk0IDguNjIyNCAxMy4xNTk3IDguNzQ3NCAxMy4yMjkyQzguODcyNCAxMy4yOTg2IDkuMDA0MzQgMTMuMzMzMyA5LjE0MzIzIDEzLjMzMzNDOS4zMjM3OCAxMy4zMzMzIDkuNDkwNDUgMTMuMjc3OCA5LjY0MzIzIDEzLjE2NjdDOS43OTYwMSAxMy4wNTU2IDkuOTAwMTcgMTIuOTE2NyA5Ljk1NTczIDEyLjc1TDExLjA4MDcgOS4zNzVMMTEuNzg5MSAxMC40NTgzQzExLjg3MjQgMTAuNTY5NCAxMS45NzY2IDEwLjY1OTcgMTIuMTAxNiAxMC43MjkyQzEyLjIyNjYgMTAuNzk4NiAxMi4zNTg1IDEwLjgzMzMgMTIuNDk3NCAxMC44MzMzSDE3LjMzMDdMMTcuMTIyNCAxMS4wODMzTDE2LjkxNDEgMTEuMzMzM0wxMS4zMDk5IDE2Ljk1ODNDMTEuMTI5MyAxNy4xMzg5IDEwLjkyOCAxNy4yNzQ0IDEwLjcwNTcgMTcuMzY1QzEwLjQ4MzUgMTcuNDU1NiAxMC4yNDc0IDE3LjUwMDYgOS45OTc0IDE3LjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiMxMkI3NkFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cImdldFJlY2FwVmlkZW9EYXRhPy5oZWFsdGggPT09J0FWRVJBR0UnXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGlkPVwiRnJhbWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBpZD1cIlZlY3RvclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTMuNDM0OSAyLjVDMTQuODIzOCAyLjUgMTUuOTg3MSAzLjAxMzg5IDE2LjkyNDkgNC4wNDE2N0MxNy44NjI3IDUuMDY5NDQgMTguMzMxMyA2LjI5MTY3IDE4LjMzMDcgNy43MDgzM0MxOC4zMzA3IDcuOTU4MzMgMTguMzE2OCA4LjIwNSAxOC4yODkxIDguNDQ4MzNDMTguMjYxMyA4LjY5MTY3IDE4LjIxMjcgOC45MzExMSAxOC4xNDMyIDkuMTY2NjdIMTIuOTM0OUwxMS41MTgyIDcuMDQxNjdDMTEuNDQ4OCA2LjkzMDU2IDExLjM1MTYgNi44NDAyOCAxMS4yMjY2IDYuNzcwODNDMTEuMTAxNiA2LjcwMTM5IDEwLjk2OTYgNi42NjY2NyAxMC44MzA3IDYuNjY2NjdDMTAuNjUwMiA2LjY2NjY3IDEwLjQ4NjggNi43MjIyMiAxMC4zNDA3IDYuODMzMzNDMTAuMTk0NiA2Ljk0NDQ0IDEwLjA5NDEgNy4wODMzMyAxMC4wMzkxIDcuMjVMOC45MTQwNiAxMC42MjVMOC4xODQ5IDkuNTQxNjdDOC4xMTU0NSA5LjQzMDU2IDguMDE4MjMgOS4zNDAyOCA3Ljg5MzIzIDkuMjcwODNDNy43NjgyMyA5LjIwMTM5IDcuNjM2MjggOS4xNjY2NyA3LjQ5NzQgOS4xNjY2N0gxLjg1MTU2QzEuNzgyMTIgOC45MzA1NiAxLjczMzUxIDguNjkwODMgMS43MDU3MyA4LjQ0NzVDMS42Nzc5NSA4LjIwNDE3IDEuNjY0MDYgNy45NjQ3MiAxLjY2NDA2IDcuNzI5MTdDMS42NjQwNiA2LjI5ODYxIDIuMTI5MzQgNS4wNjk0NCAzLjA1OTkgNC4wNDE2N0MzLjk5MDQ1IDMuMDEzODkgNS4xNTAxNyAyLjUgNi41MzkwNiAyLjVDNy4yMDU3MyAyLjUgNy44MzQzNCAyLjYzMTk0IDguNDI0OSAyLjg5NTgzQzkuMDE1NDUgMy4xNTk3MiA5LjUzOTYyIDMuNTI3NzggOS45OTc0IDRDMTAuNDQxOCAzLjUyNzc4IDEwLjk1OTMgMy4xNTk3MiAxMS41NDk5IDIuODk1ODNDMTIuMTQwNSAyLjYzMTk0IDEyLjc2ODggMi41IDEzLjQzNDkgMi41Wk05Ljk5NzQgMTcuNUM5Ljc0NzQgMTcuNSA5LjUwNzY3IDE3LjQ1NDcgOS4yNzgyMyAxNy4zNjQyQzkuMDQ4NzggMTcuMjczNiA4Ljg0NDA2IDE3LjEzODMgOC42NjQwNiAxNi45NTgzTDMuMDgwNzMgMTEuMzU0MkMyLjk5NzQgMTEuMjcwOCAyLjkyMTAxIDExLjE4NzUgMi44NTE1NiAxMS4xMDQyQzIuNzgyMTIgMTEuMDIwOCAyLjcxMjY3IDEwLjkzMDYgMi42NDMyMyAxMC44MzMzSDcuMDM5MDZMOC40NTU3MyAxMi45NTgzQzguNTI1MTcgMTMuMDY5NCA4LjYyMjQgMTMuMTU5NyA4Ljc0NzQgMTMuMjI5MkM4Ljg3MjQgMTMuMjk4NiA5LjAwNDM0IDEzLjMzMzMgOS4xNDMyMyAxMy4zMzMzQzkuMzIzNzggMTMuMzMzMyA5LjQ5MDQ1IDEzLjI3NzggOS42NDMyMyAxMy4xNjY3QzkuNzk2MDEgMTMuMDU1NiA5LjkwMDE3IDEyLjkxNjcgOS45NTU3MyAxMi43NUwxMS4wODA3IDkuMzc1TDExLjc4OTEgMTAuNDU4M0MxMS44NzI0IDEwLjU2OTQgMTEuOTc2NiAxMC42NTk3IDEyLjEwMTYgMTAuNzI5MkMxMi4yMjY2IDEwLjc5ODYgMTIuMzU4NSAxMC44MzMzIDEyLjQ5NzQgMTAuODMzM0gxNy4zMzA3TDE3LjEyMjQgMTEuMDgzM0wxNi45MTQxIDExLjMzMzNMMTEuMzA5OSAxNi45NTgzQzExLjEyOTMgMTcuMTM4OSAxMC45MjggMTcuMjc0NCAxMC43MDU3IDE3LjM2NUMxMC40ODM1IDE3LjQ1NTYgMTAuMjQ3NCAxNy41MDA2IDkuOTk3NCAxNy41WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjRkFDQzE1XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJnZXRSZWNhcFZpZGVvRGF0YT8uaGVhbHRoID09PSdCQUQnXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGlkPVwiRnJhbWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBpZD1cIlZlY3RvclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTMuNDM0OSAyLjVDMTQuODIzOCAyLjUgMTUuOTg3MSAzLjAxMzg5IDE2LjkyNDkgNC4wNDE2N0MxNy44NjI3IDUuMDY5NDQgMTguMzMxMyA2LjI5MTY3IDE4LjMzMDcgNy43MDgzM0MxOC4zMzA3IDcuOTU4MzMgMTguMzE2OCA4LjIwNSAxOC4yODkxIDguNDQ4MzNDMTguMjYxMyA4LjY5MTY3IDE4LjIxMjcgOC45MzExMSAxOC4xNDMyIDkuMTY2NjdIMTIuOTM0OUwxMS41MTgyIDcuMDQxNjdDMTEuNDQ4OCA2LjkzMDU2IDExLjM1MTYgNi44NDAyOCAxMS4yMjY2IDYuNzcwODNDMTEuMTAxNiA2LjcwMTM5IDEwLjk2OTYgNi42NjY2NyAxMC44MzA3IDYuNjY2NjdDMTAuNjUwMiA2LjY2NjY3IDEwLjQ4NjggNi43MjIyMiAxMC4zNDA3IDYuODMzMzNDMTAuMTk0NiA2Ljk0NDQ0IDEwLjA5NDEgNy4wODMzMyAxMC4wMzkxIDcuMjVMOC45MTQwNiAxMC42MjVMOC4xODQ5IDkuNTQxNjdDOC4xMTU0NSA5LjQzMDU2IDguMDE4MjMgOS4zNDAyOCA3Ljg5MzIzIDkuMjcwODNDNy43NjgyMyA5LjIwMTM5IDcuNjM2MjggOS4xNjY2NyA3LjQ5NzQgOS4xNjY2N0gxLjg1MTU2QzEuNzgyMTIgOC45MzA1NiAxLjczMzUxIDguNjkwODMgMS43MDU3MyA4LjQ0NzVDMS42Nzc5NSA4LjIwNDE3IDEuNjY0MDYgNy45NjQ3MiAxLjY2NDA2IDcuNzI5MTdDMS42NjQwNiA2LjI5ODYxIDIuMTI5MzQgNS4wNjk0NCAzLjA1OTkgNC4wNDE2N0MzLjk5MDQ1IDMuMDEzODkgNS4xNTAxNyAyLjUgNi41MzkwNiAyLjVDNy4yMDU3MyAyLjUgNy44MzQzNCAyLjYzMTk0IDguNDI0OSAyLjg5NTgzQzkuMDE1NDUgMy4xNTk3MiA5LjUzOTYyIDMuNTI3NzggOS45OTc0IDRDMTAuNDQxOCAzLjUyNzc4IDEwLjk1OTMgMy4xNTk3MiAxMS41NDk5IDIuODk1ODNDMTIuMTQwNSAyLjYzMTk0IDEyLjc2ODggMi41IDEzLjQzNDkgMi41Wk05Ljk5NzQgMTcuNUM5Ljc0NzQgMTcuNSA5LjUwNzY3IDE3LjQ1NDcgOS4yNzgyMyAxNy4zNjQyQzkuMDQ4NzggMTcuMjczNiA4Ljg0NDA2IDE3LjEzODMgOC42NjQwNiAxNi45NTgzTDMuMDgwNzMgMTEuMzU0MkMyLjk5NzQgMTEuMjcwOCAyLjkyMTAxIDExLjE4NzUgMi44NTE1NiAxMS4xMDQyQzIuNzgyMTIgMTEuMDIwOCAyLjcxMjY3IDEwLjkzMDYgMi42NDMyMyAxMC44MzMzSDcuMDM5MDZMOC40NTU3MyAxMi45NTgzQzguNTI1MTcgMTMuMDY5NCA4LjYyMjQgMTMuMTU5NyA4Ljc0NzQgMTMuMjI5MkM4Ljg3MjQgMTMuMjk4NiA5LjAwNDM0IDEzLjMzMzMgOS4xNDMyMyAxMy4zMzMzQzkuMzIzNzggMTMuMzMzMyA5LjQ5MDQ1IDEzLjI3NzggOS42NDMyMyAxMy4xNjY3QzkuNzk2MDEgMTMuMDU1NiA5LjkwMDE3IDEyLjkxNjcgOS45NTU3MyAxMi43NUwxMS4wODA3IDkuMzc1TDExLjc4OTEgMTAuNDU4M0MxMS44NzI0IDEwLjU2OTQgMTEuOTc2NiAxMC42NTk3IDEyLjEwMTYgMTAuNzI5MkMxMi4yMjY2IDEwLjc5ODYgMTIuMzU4NSAxMC44MzMzIDEyLjQ5NzQgMTAuODMzM0gxNy4zMzA3TDE3LjEyMjQgMTEuMDgzM0wxNi45MTQxIDExLjMzMzNMMTEuMzA5OSAxNi45NTgzQzExLjEyOTMgMTcuMTM4OSAxMC45MjggMTcuMjc0NCAxMC43MDU3IDE3LjM2NUMxMC40ODM1IDE3LjQ1NTYgMTAuMjQ3NCAxNy41MDA2IDkuOTk3NCAxNy41WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjRjA0NDM4XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXMtMlwiPnt7Z2V0UmVjYXBWaWRlb0RhdGE/LmhlYWx0aCA/PyAnLS0nfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwiY2FtZXJhVmlldygpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gbXgtMiBidG4tbGlnaHQtcHJpbWFyeTEgcm91bmRlZC0zIHRleHQtbm93cmFwIGJvcmRlci12YWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcy0yXCI+TGl2ZSBWaWV3PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPiAtLT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJyZWNhcGxhb2RpbmdcIiBjbGFzcz1cInJvdyBsb2FkZXIgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGgtMjI1cHhcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyIHB0LTBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwicmVjYXBub0RhdGFcIiBjbGFzcz1cInJvdyBweC0zXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5vcm1hbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2FyZC1ib2R5IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIG1iLTEwIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiaW1nLW1hcDFcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9ub3QtYXBwbGljYWJsZS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS10aXRsZSBtdC0zXCI+RGF0YSBOb3QgRm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS1zdWJcIj5Ob3JtYWxpemVkIGRhdGEgaXMgbm90IGFwcGxpY2FibGU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIW5vcm1hbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2FyZC1ib2R5IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiaW1nLW1hcC1yZWNhcFwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ljb25zL05vZGF0YTEuc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtdGl0bGVcIj5ObyBkYXRhIGZvdW5kPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtc3ViXCI+VGhlcmUgaXMgbm8gcmVzdWx0IGZvciB0aGlzIFJlY2FwIHZpZGVvPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhcmVjYXBsYW9kaW5nICYmICFyZWNhcG5vRGF0YVwiIGNsYXNzPVwiY2FyZC1ib2R5IHAtMFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBteC0zXCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJvdXNlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2Fyb3VzZWwtaW5uZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJvdXNlbC1pdGVtXCIgKm5nRm9yPVwibGV0IGdyb3VwIG9mIHJlY2Fwc0dyb3VwZWQ7IGxldCBpID0gaW5kZXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiaSA9PT0gY3VycmVudEluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBwYWlyIG9mIGdyb3VwXCIgW25nQ2xhc3NdPVwiY29sVmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgW3NyY109XCJwYWlyLnRodW1iSW1hZ2VcIiAoY2xpY2spPVwidmlkZW9DbGljayhwYWlyKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpbWFnZS10aHVtYiBtYi04IGQtYmxvY2sgdy0xMDAgY3Vyc29yLXBvaW50ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD1cIkltYWdlIHt7IGkgKyAxIH19XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENvbmRpdGlvbmFsbHkgZGlzcGxheSBQcmV2aW91cyBidXR0b24gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJjYXJvdXNlbC1jb250cm9sLXByZXZcIiAqbmdJZj1cImN1cnJlbnRJbmRleCA+IDBcIiAoY2xpY2spPVwicHJldlNsaWRlKClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb25cIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBDb25kaXRpb25hbGx5IGRpc3BsYXkgTmV4dCBidXR0b24gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJjYXJvdXNlbC1jb250cm9sLW5leHRcIiAqbmdJZj1cImN1cnJlbnRJbmRleCA8IHJlY2Fwc0dyb3VwZWQubGVuZ3RoIC0gMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwibmV4dFNsaWRlKClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb25cIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBOYXZpZ2F0aW9uIERvdHMgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJyZWNhcHNHcm91cGVkLmxlbmd0aCA+IDFcIiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiY2Fyb3VzZWwtaW5kaWNhdG9yc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgZ3JvdXAgb2YgcmVjYXBzR3JvdXBlZDsgbGV0IGkgPSBpbmRleFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiaSA9PT0gY3VycmVudEluZGV4XCIgKGNsaWNrKT1cImdvVG9TbGlkZShpKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tIDx2aWRlbyBjb250cm9scyBhdXRvcGxheSBjbGFzcz1cInJlY2FwLWltZyBwLTNcIiBbc3JjXT1cImdldFJlY2FwRGF0YT8udmlkZW9VUkxcIj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSA8c291cmNlICB0eXBlPVwidmlkZW8vbXA0XCI+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gPHNvdXJjZSBbc3JjXT1cImdldFJlY2FwRGF0YT8udmlkZW9VUkxcIiB0eXBlPVwidmlkZW8vb2dnXCI+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gPC92aWRlbz4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2ICNtYXBDb250YWluZXIgc3R5bGU9XCJoZWlnaHQ6MjMwcHg7XCI+PC9kaXY+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImNvbC1tZC02IG1iLTNcIj48aW1nIHNyYz1cImFzc2V0cy90YW5nby9JbWFnZXMvcmVjYXAuc3ZnXCIgYWx0PVwiXCIgY2xhc3M9XCJyZWNhcC1pbWdcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02IG1iLTNcIj48aW1nIHNyYz1cImFzc2V0cy90YW5nby9JbWFnZXMvcmVjYXAuc3ZnXCIgYWx0PVwiXCIgY2xhc3M9XCJyZWNhcC1pbWdcIj48L2Rpdj4gLS0+XHJcblxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBtdC0zXCI+XHJcblxyXG4gICAgICAgIDwhLS0gZm9vdGZhbGwgdHJlbmQgY2hhcnRzIC0tPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCIhKHN0b3JlSWRhcnJheT8ubGVuZ3RoID09PSAxICYmIChzdG9yZUlkYXJyYXlbMF0gPT09ICc0NTktMicgfHwgc3RvcmVJZGFycmF5WzBdID09PSAnNDU5LTQnKSlcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImNhcmRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGJvcmRlci0wIHB0LTNcIj5cclxuICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcmQtbGFiZWwxIG1iLTJcIj5Gb290ZmFsbCBUcmVuZDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtc3ViIG1iLTJcIj5CYXNlZCBvbiB7e2dldERhdGVWYWx1ZXM/LmZyb21EYXRlIHwgZGF0ZTonZGQgTU1NLCB5eXl5J319IOKAk1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB7e2dldERhdGVWYWx1ZXM/LnRvRGF0ZSB8IGRhdGU6J2RkIE1NTSwgeXl5eSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvaDM+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10b29sYmFyIHRleHQtbm93cmFwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBwb3NpdGlvbi1yZWxhdGl2ZSBteS0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tYmVnaW46Ok5hdiBncm91cC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5hdi1ncm91cCBuYXYtZ3JvdXAtb3V0bGluZSBib3JkZXItMSBidG4tZ3JvdXAgcC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tb3V0bGluZSBweC02IHB5LTNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ0eXBlID09PSAnZGFpbHknID8gJ2FjdGl2ZVBsYW5CdG4nIDogJ2luYWN0aXZlUGxhbkJ0bidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0UGxhblRyZW5kcygnZGFpbHknKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEYXlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIE1vbnRoIEJ1dHRvbiAtLT5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gV2VlayBCdXR0b24gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tb3V0bGluZSBweC02IHB5LTNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ0eXBlID09PSAnd2Vla2x5JyA/ICdhY3RpdmVQbGFuQnRuJyA6ICdpbmFjdGl2ZVBsYW5CdG4nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdFBsYW5UcmVuZHMoJ3dlZWtseScpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlZWtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBEYXkgQnV0dG9uLCB2aXNpYmxlIG9ubHkgaWYgZGF0ZUxlbmd0aCBpcyB2YWxpZCBhbmQgdHlwZSBpcyBlaXRoZXIgJ3dlZWtseScgb3IgJ2RhaWx5JyAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lIHB4LTYgcHktM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInR5cGUgPT09ICdtb250aGx5JyA/ICdhY3RpdmVQbGFuQnRuJyA6ICdpbmFjdGl2ZVBsYW5CdG4nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdFBsYW5UcmVuZHMoJ21vbnRobHknKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNb250aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLWVuZDo6TmF2IGdyb3VwLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJteC0yIG10LTMgZHJvcHNlbGVjdFwiPlRyZW5kPC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpYi1yZWFjdGl2ZS1zZWxlY3QgW2Zvcm1Db250cm9sXT1cInNlbGVjdENvbnRyb2xcIiBbaWRGaWVsZF09XCIndmFsdWUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuYW1lRmllbGRdPVwiJ2xhYmVsJ1wiIFtkYXRhXT1cImRhdGFzZXRzXCIgY2xhc3M9XCJ3LTEwMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodmFsdWVDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZXRyZW5kKCRldmVudClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saWItcmVhY3RpdmUtc2VsZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZm9ybT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxzZWxlY3QgY2xhc3M9XCJmb3JtLXNlbGVjdCBmb3JtLXNlbGVjdC1zbVwiIChjaGFuZ2UpPVwib25EYXRhc2V0Q2hhbmdlKCRldmVudClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgZGF0YXNldCBvZiBkYXRhc2V0c1wiIFt2YWx1ZV09XCJkYXRhc2V0LnZhbHVlXCI+e3sgZGF0YXNldC5sYWJlbCB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L29wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlbGVjdD4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggbXQtMSBtcy0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gKm5nSWY9XCJzdG9yZUlkYXJyYXk/Lmxlbmd0aCA9PT0gMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImQtZmxleCBtcy0xIGRyb3BzZWxlY3QgbXQtMiBjdXJzb3ItcG9pbnRlciB0ZXh0LW5vd3JhcCBmcy01XCI+Rm9yZWNhc3RcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8yNjQ1XzI3NDU5KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0zLjMzMzk4IDEuMzMzMzFMMy40NjA2NSAxLjk1OTk4QzMuNTUxNDIgMi40MDk5OCAzLjc1NjgzIDIuODI4OTMgNC4wNTY5OSAzLjE3NjI4QzQuMzU3MTUgMy41MjM2MiA0Ljc0MTg5IDMuNzg3NTkgNS4xNzM5OCAzLjk0MjY1TDUuMzMzOTggMy45OTk5OEw1LjE3Mzk4IDQuMDU3MzFDNC43NDE4OSA0LjIxMjM3IDQuMzU3MTUgNC40NzYzNCA0LjA1Njk5IDQuODIzNjhDMy43NTY4MyA1LjE3MTAzIDMuNTUxNDIgNS41ODk5OCAzLjQ2MDY1IDYuMDM5OThMMy4zMzM5OCA2LjY2NjY1TDMuMjA3MzIgNi4wMzk5OEMzLjExNjU0IDUuNTg5OTggMi45MTExNCA1LjE3MTAzIDIuNjEwOTggNC44MjM2OEMyLjMxMDgyIDQuNDc2MzQgMS45MjYwNyA0LjIxMjM3IDEuNDkzOTggNC4wNTczMUwxLjMzMzk4IDMuOTk5OThMMS40OTM5OCAzLjk0MjY1QzEuOTI2MDcgMy43ODc1OSAyLjMxMDgyIDMuNTIzNjIgMi42MTA5OCAzLjE3NjI4QzIuOTExMTQgMi44Mjg5MyAzLjExNjU0IDIuNDA5OTggMy4yMDczMiAxLjk1OTk4TDMuMzMzOTggMS4zMzMzMVpNNS4zMzM5OCAxMC42NjY2TDUuNDg3MzIgMTEuNTE3M0M1LjUyNzEzIDExLjczOTIgNS42MjI1NiAxMS45NDc0IDUuNzY0NjggMTIuMTIyNEM1LjkwNjggMTIuMjk3NCA2LjA5MDk4IDEyLjQzMzUgNi4yOTk5OCAxMi41MThMNi42NjczMiAxMi42NjY2TDYuMjk5OTggMTIuODE1M0M2LjA5MDk0IDEyLjg5OTcgNS45MDY2OCAxMy4wMzU2IDUuNzY0NDUgMTMuMjEwNUM1LjYyMjIxIDEzLjM4NTQgNS41MjY2MyAxMy41OTM1IDUuNDg2NjUgMTMuODE1M0w1LjMzMzk4IDE0LjY2NjZMNS4xODA2NSAxMy44MTZDNS4xNDA4NCAxMy41OTQxIDUuMDQ1NDEgMTMuMzg1OSA0LjkwMzI5IDEzLjIxMDlDNC43NjExNyAxMy4wMzU5IDQuNTc2OTkgMTIuODk5OCA0LjM2Nzk4IDEyLjgxNTNMNC4wMDA2NSAxMi42NjY2TDQuMzY3OTggMTIuNTE4QzQuNTc3MDMgMTIuNDMzNiA0Ljc2MTI5IDEyLjI5NzcgNC45MDM1MiAxMi4xMjI4QzUuMDQ1NzYgMTEuOTQ3OSA1LjE0MTMzIDExLjczOTggNS4xODEzMiAxMS41MThMNS4zMzM5OCAxMC42NjY2Wk0xMC42NjczIDEuOTk5OThMMTEuMDM4IDMuNzY5MzFDMTEuMjI2OSA0LjY3MTM3IDExLjY0NjMgNS41MDkwOCAxMi4yNTU0IDYuMjAwNzZDMTIuODY0NSA2Ljg5MjQ0IDEzLjY0MjQgNy40MTQ0OCAxNC41MTMzIDcuNzE1OThMMTUuMzM0IDcuOTk5OThMMTQuNTEzMyA4LjI4Mzk4QzEzLjY0MjQgOC41ODU0OCAxMi44NjQ1IDkuMTA3NTIgMTIuMjU1NCA5Ljc5OTJDMTEuNjQ2MyAxMC40OTA5IDExLjIyNjkgMTEuMzI4NiAxMS4wMzggMTIuMjMwNkwxMC42NjczIDE0TDEwLjI5NjcgMTIuMjMwNkMxMC4xMDc3IDExLjMyODYgOS42ODgzIDEwLjQ5MDkgOS4wNzkyMiA5Ljc5OTJDOC40NzAxNSA5LjEwNzUyIDcuNjkyMjMgOC41ODU0OCA2LjgyMTMyIDguMjgzOThMNi4wMDA2NSA3Ljk5OTk4TDYuODIxMzIgNy43MTU5OEM3LjY5MjIzIDcuNDE0NDggOC40NzAxNSA2Ljg5MjQ0IDkuMDc5MjIgNi4yMDA3NkM5LjY4ODMgNS41MDkwOCAxMC4xMDc3IDQuNjcxMzcgMTAuMjk2NyAzLjc2OTMxTDEwLjY2NzMgMS45OTk5OFpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMjY0NV8yNzQ1OVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZvcm0tY2hlY2sgZm9ybS1zd2l0Y2ggbXgtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cImZvcm0tY2hlY2staW5wdXQgIGN1cnNvci1wb2ludGVyXCIgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJmb3JlY2FzdFwiIChjbGljayk9XCJmb3JlY2FzdEFwaSgkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhb2JqRGF0YT8uZm9yZWNhc3RcIiBjbGFzcz1cInBvc2l0aW9uLXJlbGF0aXZlIGN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtcy0xXCIgKGNsaWNrKT1cInByb2R1Y3R0cmFpbERyb3Bkb3duKCRldmVudClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk01IDEwSDE1TTIuNSA1SDE3LjVNNy41IDE1SDEyLjVcIiBzdHJva2U9XCIjMzQ0MDU0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS42NjY2N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzaG93XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXJkIHB5LTIgdy0yMDBweCBwb3NpdGlvbi1hYnNvbHV0ZSBwcm9kdWN0ZHJvcCB0b3AtMjAgZW5kLTEgbXQtMTAgei0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCAqbmdJZj1cIiFvYmpEYXRhPy5mb3JlY2FzdFwiIGNsYXNzPVwibGlzdC11bnN0eWxlZCBtYi0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxsaSBjbGFzcz1cInByb2R1Y3R0ZXh0IHB4LTUgaXRlbXMgY3Vyc29yLXBvaW50ZXIgcHktNFwiIFtuZ0NsYXNzXT1cInRyZW5kdHlwZVZhbHVlID09PSdub3JtYWxpemUnID8gJ2JnLWZvcmNhc3QnOicnXCIgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2hhbmdlU3RhdHVzKCdub3JtYWxpemUnKVwiPk5vcm1hbGl6ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJ0ZXh0LWVuZCBtcy0yMFwiICpuZ0lmPVwidHJlbmR0eXBlVmFsdWUgPT09J25vcm1hbGl6ZScgPyAnYmctZm9yY2FzdCc6JydcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMuMzMyNyA0TDUuOTk5MzUgMTEuMzMzM0wyLjY2NjAyIDhcIiBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMS41XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0lmPVwic3RvcmVJZGFycmF5Py5sZW5ndGggPT09IDFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicHJvZHVjdHRleHQgcHgtNSBpdGVtcyBjdXJzb3ItcG9pbnRlciBweS00XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ0cmVuZHR5cGVWYWx1ZSA9PT0nYWN0dWFsJyA/ICdiZy1mb3JjYXN0JzonJ1wiIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJjaGFuZ2VTdGF0dXMoJ2FjdHVhbCcpXCI+QWN0dWFsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz1cInRleHQtZW5kIG1zLTIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ0cmVuZHR5cGVWYWx1ZSA9PT0nYWN0dWFsJyA/ICdiZy1mb3JjYXN0JzonJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMy4zMzI3IDRMNS45OTkzNSAxMS4zMzMzTDIuNjY2MDIgOFwiIHN0cm9rZT1cIiMzNDQwNTRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgKm5nSWY9XCJzdG9yZUlkYXJyYXk/Lmxlbmd0aCA+IDFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicHJvZHVjdHRleHQgcHgtNSBpdGVtcyBjdXJzb3ItcG9pbnRlciBweS00XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ0cmVuZHR5cGVWYWx1ZSA9PT0nYXZlcmFnZScgPyAnYmctZm9yY2FzdCc6JydcIiB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2hhbmdlU3RhdHVzKCdhdmVyYWdlJylcIj5BdmVyYWdlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+IDxzdmcgY2xhc3M9XCJ0ZXh0LWVuZCBtcy0yMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInRyZW5kdHlwZVZhbHVlID09PSdhdmVyYWdlJyA/ICdiZy1mb3JjYXN0JzonJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMy4zMzI3IDRMNS45OTkzNSAxMS4zMzMzTDIuNjY2MDIgOFwiIHN0cm9rZT1cIiMzNDQwNTRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGxpIGNsYXNzPVwicHJvZHVjdHRleHQgcHgtNSBpdGVtcyBjdXJzb3ItcG9pbnRlciBweS00XCIgW25nQ2xhc3NdPVwidHJlbmR0eXBlVmFsdWUgPT09J3RhcmdldCcgPyAnYmctZm9yY2FzdCc6JydcIiB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNoYW5nZVN0YXR1cygndGFyZ2V0JylcIj5UYXJnZXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIGNsYXNzPVwidGV4dC1lbmQgbXMtMjBcIiAqbmdJZj1cInRyZW5kdHlwZVZhbHVlID09PSd0YXJnZXQnID8gJ2JnLWZvcmNhc3QnOicnXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMy4zMzI3IDRMNS45OTkzNSAxMS4zMzMzTDIuNjY2MDIgOFwiIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9saT4gLS0+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwicHJvZHVjdHRleHQgcHgtNSBpdGVtcyBjdXJzb3ItcG9pbnRlciBweS00XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ0cmVuZHR5cGVWYWx1ZSA9PT0nd2Vla2VuZHMnID8gJ2JnLWZvcmNhc3QnOicnXCIgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNoYW5nZVN0YXR1cygnd2Vla2VuZHMnKVwiPldlZWtlbmRzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz1cInRleHQtZW5kIG1zLTIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ0cmVuZHR5cGVWYWx1ZSA9PT0nd2Vla2VuZHMnID8gJ2JnLWZvcmNhc3QnOicnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzLjMzMjcgNEw1Ljk5OTM1IDExLjMzMzNMMi42NjYwMiA4XCIgc3Ryb2tlPVwiIzM0NDA1NFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJwcm9kdWN0dGV4dCBweC01IGl0ZW1zIGN1cnNvci1wb2ludGVyIHB5LTRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInRyZW5kdHlwZVZhbHVlID09PSd3ZWVrZGF5cycgPyAnYmctZm9yY2FzdCc6JydcIiB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2hhbmdlU3RhdHVzKCd3ZWVrZGF5cycpXCI+V2Vla2RheXNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIGNsYXNzPVwidGV4dC1lbmQgbXMtMjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInRyZW5kdHlwZVZhbHVlID09PSd3ZWVrZGF5cycgPyAnYmctZm9yY2FzdCc6JydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMuMzMyNyA0TDUuOTk5MzUgMTEuMzMzM0wyLjY2NjAyIDhcIiBzdHJva2U9XCIjMzQ0MDU0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cImxvYWRpbmdUcmVuZHNcIiBjbGFzcz1cInJvdyBsb2FkZXIgIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm9EYXRhVHJlbmRzXCIgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctbm9kYXRhXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvTm9kYXRhMS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS10aXRsZVwiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS1zdWJcIj5UaGVyZSBpcyBubyByZXN1bHQgZm9yIHRoaXMgZm9vdGZhbGwgdHJlbmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwLTBcIiAqbmdJZj1cIiFub0RhdGFUcmVuZHMgJiYgIWxvYWRpbmdUcmVuZHNcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlciBweC0zXCIgaWQ9XCJGb290ZmFsbHRyZW5kXCI+PC9kaXY+XHJcblxyXG5cclxuICAgICAgICAgICAgICAgIDxkaXYgI3Rvb2x0aXBDb250YWluZXIgY2xhc3M9XCJ0b29sdGlwLWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b29sdGlwLWNvbnRlbnRcIiAqbmdJZj1cInRvb2x0aXBEYXRhXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250ZW50IHAtNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlIHRleHQtc3RhcnRcIj57e3Rvb2x0aXBEYXRhLmZ1bGxTdG9yZU5hbWV9fTwvU3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPlN1bTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPkF2Zzwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gLS0+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBUYWJsZSBmb3IgY291bnRzIGFuZCByYXRlcyBpbiBob3Jpem9udGFsIGZvcm1hdCAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlIHRhYmxlLWhvcml6b250YWwgdHJlbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cInRpdGxlIHRleHQtc3RhcnQgcHgtM1wiPnt7dG9vbHRpcERhdGEuZnVsbFN0b3JlTmFtZX19PC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cInRpdGxlIHRleHQtZW5kXCI+U3VtPC90aD5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3RvcmVJZGFycmF5Py5sZW5ndGggIT09IDFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggKm5nSWY9XCJ0eXBlICE9PSAnZGFpbHknXCIgY2xhc3M9XCJ0aXRsZSB0ZXh0LWVuZFwiPkF2ZzwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBDb3VudHMgU2VjdGlvbiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwidHJlbmQtbGFiZWxcIiBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxMHB4ICFpbXBvcnRhbnRcIj5Ub3RhbCBGb290ZmFsbDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJ2YWx1ZVwiIHN0eWxlPVwibGluZS1oZWlnaHQ6IDEwcHggIWltcG9ydGFudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7dG9vbHRpcERhdGEuZm9vdGZhbGxfY291bnR9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdG9yZUlkYXJyYXk/Lmxlbmd0aCAhPT0gMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cInR5cGUgIT09ICdkYWlseSdcIiBjbGFzcz1cInZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJsaW5lLWhlaWdodDogMTBweCAhaW1wb3J0YW50XCI+e3t0b29sdGlwRGF0YS5mb290ZmFsbF9jb3VudF9hdmd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwidHJlbmQtbGFiZWxcIiBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxMHB4ICFpbXBvcnRhbnRcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1MidcIj5MZXNzIHRoYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uYm91bmNlZExpbWl0Py52YWx1ZX19IG1pbnM8L3NwYW4+IDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiPkJvdW5jZWQgRm9vdGZhbGw8L3NwYW4+PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cInZhbHVlXCIgc3R5bGU9XCJsaW5lLWhlaWdodDogMTBweCAhaW1wb3J0YW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3t0b29sdGlwRGF0YS5ib3VuY2VkX2NvdW50fX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3RvcmVJZGFycmF5Py5sZW5ndGggIT09IDFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgKm5nSWY9XCJ0eXBlICE9PSAnZGFpbHknXCIgY2xhc3M9XCJ2YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwibGluZS1oZWlnaHQ6IDEwcHggIWltcG9ydGFudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3Rvb2x0aXBEYXRhLmJvdW5jZWRfZm9vdGZhbGxfY291bnRfYXZnfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cInRyZW5kLWxhYmVsXCIgc3R5bGU9XCJsaW5lLWhlaWdodDogMTBweCAhaW1wb3J0YW50XCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInXCI+TW9yZSB0aGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Y2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmJvdW5jZWRMaW1pdD8udmFsdWV9fSBtaW5zPC9zcGFuPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0gJzQ1MidcIj5FbmdhZ2Vyczwvc3Bhbj48L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwidmFsdWVcIiBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxMHB4ICFpbXBvcnRhbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3Rvb2x0aXBEYXRhLmVuZ2FnZXJzX2NvdW50fX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3RvcmVJZGFycmF5Py5sZW5ndGggIT09IDFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgKm5nSWY9XCJ0eXBlICE9PSAnZGFpbHknXCIgY2xhc3M9XCJ2YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwibGluZS1oZWlnaHQ6IDEwcHggIWltcG9ydGFudFwiPnt7dG9vbHRpcERhdGEuZW5nYWdlcnNfY291bnRfYXZnfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cInRyZW5kLWxhYmVsXCIgc3R5bGU9XCJsaW5lLWhlaWdodDogMTBweCAhaW1wb3J0YW50XCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInXCI+e3tjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8ubWlzc2VkT3Bwb3J0dW5pdHlGcm9tPy52YWx1ZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0ge3tjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8ubWlzc2VkT3Bwb3J0dW5pdHlUbz8udmFsdWV9fSBtaW5zPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiPk1pc3NlZCBPcHBvcnR1bml0aWVzPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cInZhbHVlXCIgc3R5bGU9XCJsaW5lLWhlaWdodDogMTBweCAhaW1wb3J0YW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3t0b29sdGlwRGF0YS5taXNzZWRPcHBvcnR1bml0eV9jb3VudH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0b3JlSWRhcnJheT8ubGVuZ3RoICE9PSAxXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwidHlwZSAhPT0gJ2RhaWx5J1wiIGNsYXNzPVwidmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxMHB4ICFpbXBvcnRhbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3t0b29sdGlwRGF0YS5taXNzZWRPcHBvcnR1bml0eV9jb3VudF9hdmd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyIHN0eWxlPVwibGluZS1oZWlnaHQ6IDEwcHggIWltcG9ydGFudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwidHJlbmQtbGFiZWxcIiBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxMHB4ICFpbXBvcnRhbnRcIj5Eb3duIFRpbWU8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwidmFsdWVcIiBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxMHB4ICFpbXBvcnRhbnRcIj57e3Rvb2x0aXBEYXRhLmRvd25fdGltZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9vbHRpcERhdGEuZG93bl90aW1lIDonLS0nfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0b3JlSWRhcnJheT8ubGVuZ3RoICE9PSAxXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwidHlwZSAhPT0gJ2RhaWx5J1wiIGNsYXNzPVwidmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxMHB4ICFpbXBvcnRhbnRcIj57e3Rvb2x0aXBEYXRhLmRvd25fdGltZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBSYXRlcyBTZWN0aW9uIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJ0cmVuZC1sYWJlbFwiIHN0eWxlPVwibGluZS1oZWlnaHQ6IDEwcHggIWltcG9ydGFudFwiPkR3ZWxsIFRpbWU8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwidmFsdWUgdGV4dC1ub3dyYXBcIiBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxMHB4ICFpbXBvcnRhbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3Rvb2x0aXBEYXRhLmF2Z0R3ZWxsVGltZS50b0ZpeGVkKDApfX0gTWluc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdG9yZUlkYXJyYXk/Lmxlbmd0aCAhPT0gMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cInR5cGUgIT09ICdkYWlseSdcIiBjbGFzcz1cInZhbHVlIHRleHQtbm93cmFwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJsaW5lLWhlaWdodDogMTBweCAhaW1wb3J0YW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7dG9vbHRpcERhdGEuYXZnRHdlbGxUaW1lLnRvRml4ZWQoMCl9fSBNaW5zXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJ0cmVuZC1sYWJlbFwiIHN0eWxlPVwibGluZS1oZWlnaHQ6IDEwcHggIWltcG9ydGFudFwiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJ1wiPiBNb3JlIHRoYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uY29udmVyc2lvbj8udmFsdWV9fSBtaW5zIFJhdGU8L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgIT09ICc0NTInXCI+Q29udmVyc2lvbjwvc3Bhbj48L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwidmFsdWVcIiBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxMHB4ICFpbXBvcnRhbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3Rvb2x0aXBEYXRhLmNvbnZlcnNpb25SYXRlLnRvRml4ZWQoMCl9fSVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3RvcmVJZGFycmF5Py5sZW5ndGggIT09IDFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgKm5nSWY9XCJ0eXBlICE9PSAnZGFpbHknXCIgY2xhc3M9XCJ2YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwibGluZS1oZWlnaHQ6IDEwcHggIWltcG9ydGFudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3Rvb2x0aXBEYXRhLmNvbnZlcnNpb25SYXRlLnRvRml4ZWQoMCl9fSVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICA8bGliLXBhZ2luYXRpb24gW2l0ZW1zUGVyUGFnZV09XCJwYWdlU2l6ZVRyZW5kc1wiIFtjdXJyZW50UGFnZV09XCJvZmZzZXRUcmVuZHNcIlxyXG4gICAgICAgICAgICAgICAgICAgIFt0b3RhbEl0ZW1zXT1cInRvdGFsSXRlbXNUcmVuZHNcIiBbcGFnaW5hdGlvblNpemVzXT1cInBhZ2luYXRpb25TaXplc1RyZW5kc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW3BhZ2VTaXplXT1cInBhZ2VTaXplVHJlbmRzXCIgKHBhZ2VDaGFuZ2UpPVwib25QYWdlQ2hhbmdlVHJlbmRzKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgIChwYWdlU2l6ZUNoYW5nZSk9XCJvblBhZ2VTaXplQ2hhbmdlVHJlbmRzKCRldmVudClcIj48L2xpYi1wYWdpbmF0aW9uPlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDwhLS0gPGxpYi10cmFmZmljLWNoYXJ0cyBjbGFzcz1cIm15LTJcIj48L2xpYi10cmFmZmljLWNoYXJ0cz4gLS0+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cIiEoc3RvcmVJZGFycmF5Py5sZW5ndGggPT09IDEgJiYgKHN0b3JlSWRhcnJheVswXSA9PT0gJzQ1OS0yJyB8fCBzdG9yZUlkYXJyYXlbMF0gPT09ICc0NTktNCcpKVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiY2FyZCBtdC0zXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBteS0zIG14LTJcIj5cclxuICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cIm5hdiBuYXYtc3RyZXRjaCBuYXYtbGluZS10YWJzMSBuYXYtbGluZS10YWJzIGJvcmRlci10cmFuc3BhcmVudCBmbGV4LW5vd3JhcFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSAqbmdJZj1cInRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ICE9PSc0NTknXCIgY2xhc3M9XCJuYXYtaXRlbSBuYXYtaXRlbTFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0ZWRUYWJzKCd0cmFmZmljJylcIj48YSBbbmdDbGFzc109XCJzZWxlY3RlZFRhYiA9PT0ndHJhZmZpYycgPyAnYWN0aXZlJyA6JydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJuYXYtbGluayBuYXYtbGluazEgY3Vyc29yLXBvaW50ZXIgbm8tYm9yZGVyIG1lLTYgXCI+VHJhZmZpYyAmIER3ZWxsPC9hPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwibmF2LWl0ZW0gbmF2LWl0ZW0xXCIgKGNsaWNrKT1cInNlbGVjdGVkVGFicygnZm9vdGZhbGwnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YSBbbmdDbGFzc109XCJzZWxlY3RlZFRhYiA9PT0nZm9vdGZhbGwnID8gJ2FjdGl2ZScgOicnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibmF2LWxpbmsgbmF2LWxpbmsxIGN1cnNvci1wb2ludGVyIG1lLTZcIj5Gb290ZmFsbDwvYT5cclxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz1cIm5hdi1pdGVtIG5hdi1pdGVtMVwiIChjbGljayk9XCJzZWxlY3RlZFRhYnMoJ2JvdW5jZWQnKVwiPjxhXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzZWxlY3RlZFRhYiA9PT0nYm91bmNlZCcgPyAnYWN0aXZlJyA6JydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJuYXYtbGluayBuYXYtbGluazEgY3Vyc29yLXBvaW50ZXIgbm8tYm9yZGVyIG1lLTYgXCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1MicgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0xlc3MgdGhhbiAnKyBmZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWUrICcgbWlucycgOiAnQm91bmNlZCd9fSBGb290ZmFsbDwvYT5cclxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz1cIm5hdi1pdGVtIG5hdi1pdGVtMVwiIChjbGljayk9XCJzZWxlY3RlZFRhYnMoJ2VuZ2FnZXJzJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGEgW25nQ2xhc3NdPVwic2VsZWN0ZWRUYWIgPT09J2VuZ2FnZXJzJyA/ICdhY3RpdmUnIDonJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1saW5rIG5hdi1saW5rMSBjdXJzb3ItcG9pbnRlciBtZS02XCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1MicgPyAnTW9yZSB0aGFuICcrXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWUgKycgbWlucycgOiAnRW5nYWdlcnMnfX08L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz1cIm5hdi1pdGVtIG5hdi1pdGVtMVwiIChjbGljayk9XCJzZWxlY3RlZFRhYnMoJ21pc3NlZE9wcG9ydHVuaXR5JylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGEgW25nQ2xhc3NdPVwic2VsZWN0ZWRUYWIgPT09J21pc3NlZE9wcG9ydHVuaXR5JyA/ICdhY3RpdmUnIDonJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1saW5rIG5hdi1saW5rMSBjdXJzb3ItcG9pbnRlciBtZS02XCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1MicgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlGcm9tLnZhbHVlKycgLSAnKyBmZWF0dXJlQ29uZmlnPy5taXNzZWRPcHBvcnR1bml0eVRvLnZhbHVlK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJyBtaW5zJzonTWlzc2VkIE9wcG9ydHVuaXR5J319PC9hPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiIGNsYXNzPVwibmF2LWl0ZW0gbmF2LWl0ZW0xXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdGVkVGFicygncG90ZW50aWFsQnV5ZXJzJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGEgW25nQ2xhc3NdPVwic2VsZWN0ZWRUYWIgPT09J3BvdGVudGlhbEJ1eWVycycgPyAnYWN0aXZlJyA6JydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJuYXYtbGluayBuYXYtbGluazEgY3Vyc29yLXBvaW50ZXIgbWUtNlwiPlBvdGVudGlhbCBCdXllcjwvYT5cclxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz1cIm5hdi1pdGVtIG5hdi1pdGVtMVwiIChjbGljayk9XCJzZWxlY3RlZFRhYnMoJ2NvbnZlcnNpb24nKVwiPjxhXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzZWxlY3RlZFRhYiA9PT0nY29udmVyc2lvbicgPyAnYWN0aXZlJyA6JydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJuYXYtbGluayBuYXYtbGluazEgY3Vyc29yLXBvaW50ZXIgbm8tYm9yZGVyIG1lLTYgXCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdNb3JlIHRoYW4gJysgZmVhdHVyZUNvbmZpZz8uY29udmVyc2lvbi52YWx1ZSArICcgbWlucyc6J0NvbnZlcnNpb24nfX08L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImNoYXJ0bG9hZGluZ1wiIGNsYXNzPVwicm93IGxvYWRlciAgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY2hhcnROb0RhdGFcIiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImltZy1ub2RhdGFcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGExLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS10aXRsZVwiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtc3ViXCI+VGhlcmUgaXMgbm8gcmVzdWx0IGZvciB0aGlzIDxzcGFuPnt7aGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0FuYWx5c2lzJyA6IHNlbGN0ZWRWYWx1ZX19PC9zcGFuPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMiBoLTEwMFwiICpuZ0lmPVwiIWNoYXJ0bG9hZGluZyAmJiAhY2hhcnROb0RhdGFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNlbGVjdGVkVGFiID09PSd0cmFmZmljJ1wiIGNsYXNzPVwibGVmdC1iYXJcIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktN1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTEwIG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3LTEwMFwiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIyNVwiIHZpZXdCb3g9XCIwIDAgMjQgMjVcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzIDIuMTI1TDMgMTQuMTI1SDEyTDExIDIyLjEyNUwyMSAxMC4xMjVIMTJMMTMgMi4xMjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM5OEEyQjNcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldERlbnNpdHlEd2VsbERhdGE/LmRlbnNpdHlEd2VsbENhcmQ/LmJ1c2llc3REYXkgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldERlbnNpdHlEd2VsbERhdGE/LmRlbnNpdHlEd2VsbENhcmQ/LmJ1c2llc3REYXkgOictLSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPkJ1c2llc3QgRGF5PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTEwIG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3LTEwMFwiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIyNVwiIHZpZXdCb3g9XCIwIDAgMjQgMjVcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzIDIuMTI1TDMgMTQuMTI1SDEyTDExIDIyLjEyNUwyMSAxMC4xMjVIMTJMMTMgMi4xMjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM5OEEyQjNcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldERlbnNpdHlEd2VsbERhdGE/LmRlbnNpdHlEd2VsbENhcmQ/LmJ1c2llc3RUaW1lID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXREZW5zaXR5RHdlbGxEYXRhPy5kZW5zaXR5RHdlbGxDYXJkPy5idXNpZXN0VGltZSA6Jy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+QnVzaWVzdCBUaW1lPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTEwIG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3LTEwMFwiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIyNVwiIHZpZXdCb3g9XCIwIDAgMjQgMjVcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzIDIuMTI1TDMgMTQuMTI1SDEyTDExIDIyLjEyNUwyMSAxMC4xMjVIMTJMMTMgMi4xMjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM5OEEyQjNcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldERlbnNpdHlEd2VsbERhdGE/LmRlbnNpdHlEd2VsbENhcmQ/LmF2Z0R3ZWxsVGltZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0RGVuc2l0eUR3ZWxsRGF0YT8uZGVuc2l0eUR3ZWxsQ2FyZD8uYXZnRHdlbGxUaW1lIDonLS0nfX0gTWluc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPkF2ZyBEd2VsbCBUaW1lPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTEwIG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3LTEwMFwiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIyNVwiIHZpZXdCb3g9XCIwIDAgMjQgMjVcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzIDIuMTI1TDMgMTQuMTI1SDEyTDExIDIyLjEyNUwyMSAxMC4xMjVIMTJMMTMgMi4xMjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM5OEEyQjNcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldERlbnNpdHlEd2VsbERhdGE/LmRlbnNpdHlEd2VsbENhcmQ/Lm1hbGVSYXRlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXREZW5zaXR5RHdlbGxEYXRhPy5kZW5zaXR5RHdlbGxDYXJkPy5tYWxlUmF0ZSA6Jy0tJ319JVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPk1hbGU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXREZW5zaXR5RHdlbGxEYXRhPy5kZW5zaXR5RHdlbGxDYXJkPy5mZW1hbGVSYXRlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXREZW5zaXR5RHdlbGxEYXRhPy5kZW5zaXR5RHdlbGxDYXJkPy5mZW1hbGVSYXRlIDonLS0nfX0lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+RmVtYWxlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2VsZWN0ZWRUYWIgPT09J2Zvb3RmYWxsJ1wiIGNsYXNzPVwibGVmdC1iYXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b3AtaGVhZGVyIHRleHQtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtYmFyLWNvdW50XCIgW25nU3R5bGVdPVwie1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1zaXplJzogKGdldE92ZXJhbGxDYXJkRGF0YT8uZm9vdGZhbGxDYXJkPy5mb290ZmFsbENvdW50LnRvTG9jYWxlU3RyaW5nKCk/Lmxlbmd0aCA+IDUgPyAnMjRweCcgOiAnMzZweCcpIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8uZm9vdGZhbGxDYXJkPy5mb290ZmFsbENvdW50ID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5mb290ZmFsbENhcmQ/LmZvb3RmYWxsQ291bnQudG9Mb2NhbGVTdHJpbmcoJ2VuLUlOJykgOictLSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWJhci10aXRsZVwiPkZvb3RmYWxsIENvdW50PC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInctMTAwXCI+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNzRcIiBoZWlnaHQ9XCIyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxOTQgMlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIG9wYWNpdHk9XCIwLjRcIiBkPVwiTTEgMUwxOTMgMVwiIHN0cm9rZT1cIiM5OURBRkZcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjAgMjFWMTlDMjAgMTcuOTM5MSAxOS41Nzg2IDE2LjkyMTcgMTguODI4NCAxNi4xNzE2QzE4LjA3ODMgMTUuNDIxNCAxNy4wNjA5IDE1IDE2IDE1SDhDNi45MzkxMyAxNSA1LjkyMTcyIDE1LjQyMTQgNS4xNzE1NyAxNi4xNzE2QzQuNDIxNDMgMTYuOTIxNyA0IDE3LjkzOTEgNCAxOVYyMU0xNiA3QzE2IDkuMjA5MTQgMTQuMjA5MSAxMSAxMiAxMUM5Ljc5MDg2IDExIDggOS4yMDkxNCA4IDdDOCA0Ljc5MDg2IDkuNzkwODYgMyAxMiAzQzE0LjIwOTEgMyAxNiA0Ljc5MDg2IDE2IDdaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5mb290ZmFsbENhcmQ/LnNpbmdsZUNvdW50ID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LmZvb3RmYWxsQ2FyZD8uc2luZ2xlQ291bnQudG9Mb2NhbGVTdHJpbmcoJ2VuLUlOJylcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Jy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+U2luZ2xlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJoZWFkZXJEYXRhLmNsaWVudCAhPT0nNDUyJ1wiIGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBteS01IG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjI2XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI2IDI0XCIgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjI2XCIgaGVpZ2h0PVwiMjRcIiBmaWxsPVwiI0RDRENEQ1wiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeD1cIi00NjAuNVwiIHk9XCItMzQwLjVcIiB3aWR0aD1cIjc4M1wiIGhlaWdodD1cIjE5NDdcIiByeD1cIjQuNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM5NzQ3RkZcIiBzdHJva2UtZGFzaGFycmF5PVwiMTAgNVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hc2sgaWQ9XCJwYXRoLTItaW5zaWRlLTFfNzA3XzEzMTA2XCIgZmlsbD1cIndoaXRlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTS0xODkgLTg5Qy0xODkgLTk1LjYyNzQgLTE4My42MjcgLTEwMSAtMTc3IC0xMDFIMjk1QzMwMS42MjcgLTEwMSAzMDcgLTk1LjYyNzQgMzA3IC04OVY4NUMzMDcgOTEuNjI3NCAzMDEuNjI3IDk3IDI5NSA5N0gtMTc3Qy0xODMuNjI3IDk3IC0xODkgOTEuNjI3NCAtMTg5IDg1Vi04OVpcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWFzaz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTS0xODkgLTg5Qy0xODkgLTk1LjYyNzQgLTE4My42MjcgLTEwMSAtMTc3IC0xMDFIMjk1QzMwMS42MjcgLTEwMSAzMDcgLTk1LjYyNzQgMzA3IC04OVY4NUMzMDcgOTEuNjI3NCAzMDEuNjI3IDk3IDI5NSA5N0gtMTc3Qy0xODMuNjI3IDk3IC0xODkgOTEuNjI3NCAtMTg5IDg1Vi04OVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNLTE5MCAtODlDLTE5MCAtOTYuMTc5NyAtMTg0LjE4IC0xMDIgLTE3NyAtMTAySDI5NEMzMDEuMTggLTEwMiAzMDcgLTk2LjE3OTcgMzA3IC04OUMzMDcgLTk1LjA3NTEgMzAxLjYyNyAtMTAwIDI5NSAtMTAwSC0xNzdDLTE4My4wNzUgLTEwMCAtMTg4IC05NS4wNzUxIC0xODggLTg5SC0xOTBaTTMwNyA4NUMzMDcgOTIuMTc5NyAzMDEuMTggOTggMjk0IDk4SC0xNzdDLTE4NC4xOCA5OCAtMTkwIDkyLjE3OTcgLTE5MCA4NUgtMTg4Qy0xODggOTEuMDc1MSAtMTgzLjA3NSA5NiAtMTc3IDk2SDI5NUMzMDEuNjI3IDk2IDMwNyA5MS4wNzUxIDMwNyA4NVpNLTE3NyA5OEMtMTg0LjE4IDk4IC0xOTAgOTIuMTc5NyAtMTkwIDg1Vi04OUMtMTkwIC05Ni4xNzk3IC0xODQuMTggLTEwMiAtMTc3IC0xMDJWLTEwMEMtMTgzLjA3NSAtMTAwIC0xODggLTk1LjA3NTEgLTE4OCAtODlWODVDLTE4OCA5MS4wNzUxIC0xODMuMDc1IDk2IC0xNzcgOTZWOThaTTMwNyAtMTAxVjk3Vi0xMDFaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiNEMEQ1RERcIiBtYXNrPVwidXJsKCNwYXRoLTItaW5zaWRlLTFfNzA3XzEzMTA2KVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hc2sgaWQ9XCJwYXRoLTYtaW5zaWRlLTJfNzA3XzEzMTA2XCIgZmlsbD1cIndoaXRlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTcuNzEwNjQgNy4zODQ2MkM4LjE5NTUyIDcuMzg0NjIgOC42NzU2NSA3LjI4OTExIDkuMTIzNjIgNy4xMDM1NkM5LjU3MTU5IDYuOTE4IDkuOTc4NjMgNi42NDYwMyAxMC4zMjE1IDYuMzAzMTZDMTAuNjY0NCA1Ljk2MDMgMTAuOTM2MyA1LjU1MzI2IDExLjEyMTkgNS4xMDUyOUMxMS4zMDc0IDQuNjU3MzIgMTEuNDAyOSA0LjE3NzE5IDExLjQwMjkgMy42OTIzMUMxMS40MDI5IDMuMjA3NDMgMTEuMzA3NCAyLjcyNzI5IDExLjEyMTkgMi4yNzkzMkMxMC45MzYzIDEuODMxMzUgMTAuNjY0NCAxLjQyNDMxIDEwLjMyMTUgMS4wODE0NUM5Ljk3ODYzIDAuNzM4NTkgOS41NzE1OSAwLjQ2NjYxNiA5LjEyMzYyIDAuMjgxMDZDOC42NzU2NSAwLjA5NTUwNDMgOC4xOTU1MiAtNy4yMjUyOWUtMDkgNy43MTA2NCAwQzYuNzMxMzggMS40NTkyMWUtMDggNS43OTIyMiAwLjM4OTAxIDUuMDk5NzggMS4wODE0NUM0LjQwNzM0IDEuNzczODkgNC4wMTgzMyAyLjcxMzA1IDQuMDE4MzMgMy42OTIzMUM0LjAxODMzIDQuNjcxNTcgNC40MDczNCA1LjYxMDcyIDUuMDk5NzggNi4zMDMxNkM1Ljc5MjIyIDYuOTk1NjEgNi43MzEzOCA3LjM4NDYyIDcuNzEwNjQgNy4zODQ2MlpNMTguNzg3NiA3LjM4NDYyQzE5LjI3MjQgNy4zODQ2MiAxOS43NTI2IDcuMjg5MTEgMjAuMjAwNSA3LjEwMzU2QzIwLjY0ODUgNi45MTggMjEuMDU1NiA2LjY0NjAzIDIxLjM5ODQgNi4zMDMxNkMyMS43NDEzIDUuOTYwMyAyMi4wMTMzIDUuNTUzMjYgMjIuMTk4OCA1LjEwNTI5QzIyLjM4NDQgNC42NTczMiAyMi40Nzk5IDQuMTc3MTkgMjIuNDc5OSAzLjY5MjMxQzIyLjQ3OTkgMy4yMDc0MyAyMi4zODQ0IDIuNzI3MjkgMjIuMTk4OCAyLjI3OTMyQzIyLjAxMzMgMS44MzEzNSAyMS43NDEzIDEuNDI0MzEgMjEuMzk4NCAxLjA4MTQ1QzIxLjA1NTYgMC43Mzg1OSAyMC42NDg1IDAuNDY2NjE2IDIwLjIwMDUgMC4yODEwNkMxOS43NTI2IDAuMDk1NTA0MyAxOS4yNzI0IC03LjIyNTI5ZS0wOSAxOC43ODc2IDBDMTcuODA4MyAxLjQ1OTIxZS0wOCAxNi44NjkxIDAuMzg5MDEgMTYuMTc2NyAxLjA4MTQ1QzE1LjQ4NDMgMS43NzM4OSAxNS4wOTUzIDIuNzEzMDUgMTUuMDk1MyAzLjY5MjMxQzE1LjA5NTMgNC42NzE1NyAxNS40ODQzIDUuNjEwNzIgMTYuMTc2NyA2LjMwMzE2QzE2Ljg2OTEgNi45OTU2MSAxNy44MDgzIDcuMzg0NjIgMTguNzg3NiA3LjM4NDYyWk0wLjk0MTQwNiAxMC43MzZDMC45NDE0MDYgMTAuNDU3NSAwLjk5NjI1OCAxMC4xODE4IDEuMTAyODMgOS45MjQ0OEMxLjIwOTQgOS42NjcxOSAxLjM2NTYgOS40MzM0MiAxLjU2MjUyIDkuMjM2NUMxLjc1OTQ0IDkuMDM5NTggMS45OTMyMSA4Ljg4MzM4IDIuMjUwNSA4Ljc3NjgxQzIuNTA3NzggOC42NzAyNCAyLjc4MzU0IDguNjE1MzkgMy4wNjIwMiA4LjYxNTM5SDguOTg0NDhDOC41NTE2OSA5LjM2MzQ1IDguMzI0NTIgMTAuMjEyNyA4LjMyNjAyIDExLjA3NjlDOC4zMjUxOSAxMS43NzU1IDguNDczNDEgMTIuNDY2MiA4Ljc2MDc5IDEzLjEwMjlDOS4wNDgxNiAxMy43Mzk2IDkuNDY4MDcgMTQuMzA3NyA5Ljk5MjQ4IDE0Ljc2OTJIOC42MDA0OEM4LjAxNDE4IDE0Ljc2ODcgNy40MzgwMyAxNC45MjIyIDYuOTI5NjkgMTUuMjE0NEM2LjQyMTM0IDE1LjUwNjUgNS45OTg2NCAxNS45MjcgNS43MDM4NyAxNi40MzM4QzMuNzIxMSAxNi4wNDQ5IDIuNTE2MTggMTUuMDc4MiAxLjgxNDY0IDEzLjk5MkMwLjk0MTQwNiAxMi42NCAwLjk0MTQwNiAxMS4yNDMxIDAuOTQxNDA2IDExLjAwMTJWMTAuNzM2Wk0xNy44OTc3IDE0Ljc2OTJDMTguNDg0IDE0Ljc2ODcgMTkuMDYwMiAxNC45MjIyIDE5LjU2ODUgMTUuMjE0NEMyMC4wNzY5IDE1LjUwNjUgMjAuNDk5NiAxNS45MjcgMjAuNzk0MyAxNi40MzM4QzIyLjc3NzEgMTYuMDQ0OSAyMy45ODIgMTUuMDc4MiAyNC42ODM2IDEzLjk5MkMyNS41NTY4IDEyLjY0IDI1LjU1NjggMTEuMjQzMSAyNS41NTY4IDExLjAwMTJWMTAuNzM2NkMyNS41NTY5IDEwLjQ1ODEgMjUuNTAyMSAxMC4xODIzIDI1LjM5NTUgOS45MjQ5QzI1LjI4OSA5LjY2NzU1IDI1LjEzMjggOS40MzM3IDI0LjkzNTkgOS4yMzY3MkMyNC43MzkgOS4wMzk3MyAyNC41MDUyIDguODgzNDggMjQuMjQ3OCA4Ljc3Njg3QzIzLjk5MDUgOC42NzAyNiAyMy43MTQ3IDguNjE1MzkgMjMuNDM2MiA4LjYxNTM5SDE3LjUxMzdDMTcuOTQ2NSA5LjM2MzQ1IDE4LjE3MzcgMTAuMjEyNyAxOC4xNzIyIDExLjA3NjlDMTguMTczIDExLjc3NTUgMTguMDI0OCAxMi40NjYyIDE3LjczNzQgMTMuMTAyOUMxNy40NSAxMy43Mzk2IDE3LjAzMDEgMTQuMzA3NyAxNi41MDU3IDE0Ljc2OTJIMTcuODk3N1pNMTYuOTQxNCAxMS4wNzY5QzE2Ljk0MTQgMTIuMDU2MiAxNi41NTI0IDEyLjk5NTMgMTUuODYgMTMuNjg3OEMxNS4xNjc1IDE0LjM4MDIgMTQuMjI4NCAxNC43NjkyIDEzLjI0OTEgMTQuNzY5MkMxMi4yNjk4IDE0Ljc2OTIgMTEuMzMwNyAxNC4zODAyIDEwLjYzODIgMTMuNjg3OEM5Ljk0NTggMTIuOTk1MyA5LjU1Njc5IDEyLjA1NjIgOS41NTY3OSAxMS4wNzY5QzkuNTU2NzkgMTAuMDk3NyA5Ljk0NTggOS4xNTg1MSAxMC42MzgyIDguNDY2MDdDMTEuMzMwNyA3Ljc3MzYzIDEyLjI2OTggNy4zODQ2MiAxMy4yNDkxIDcuMzg0NjJDMTQuMjI4NCA3LjM4NDYyIDE1LjE2NzUgNy43NzM2MyAxNS44NiA4LjQ2NjA3QzE2LjU1MjQgOS4xNTg1MSAxNi45NDE0IDEwLjA5NzcgMTYuOTQxNCAxMS4wNzY5Wk02LjQ3OTg3IDE4LjEyMDZDNi40Nzk4NyAxNy41NTgyIDYuNzAzMjkgMTcuMDE4OCA3LjEwMDk4IDE2LjYyMTFDNy40OTg2NyAxNi4yMjM0IDguMDM4MDYgMTYgOC42MDA0OCAxNkgxNy44OTc3QzE4LjQ2MDEgMTYgMTguOTk5NSAxNi4yMjM0IDE5LjM5NzIgMTYuNjIxMUMxOS43OTQ5IDE3LjAxODggMjAuMDE4MyAxNy41NTgyIDIwLjAxODMgMTguMTIwNlYxOC4zODU4QzIwLjAxODMgMTguNjI4MyAyMC4wMTgzIDIwLjAyNDYgMTkuMTQ1MSAyMS4zNzY2QzE4LjIzMjUgMjIuNzg5NSAxNi40Njk0IDI0IDEzLjI0OTEgMjRDMTAuMDI4OCAyNCA4LjI2NTcxIDIyLjc4OTUgNy4zNTMxIDIxLjM3NjZDNi40Nzk4NyAyMC4wMjQ2IDYuNDc5ODcgMTguNjI3NyA2LjQ3OTg3IDE4LjM4NThWMTguMTIwNlpcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWFzaz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTcuNzEwNjQgNy4zODQ2MkM4LjE5NTUyIDcuMzg0NjIgOC42NzU2NSA3LjI4OTExIDkuMTIzNjIgNy4xMDM1NkM5LjU3MTU5IDYuOTE4IDkuOTc4NjMgNi42NDYwMyAxMC4zMjE1IDYuMzAzMTZDMTAuNjY0NCA1Ljk2MDMgMTAuOTM2MyA1LjU1MzI2IDExLjEyMTkgNS4xMDUyOUMxMS4zMDc0IDQuNjU3MzIgMTEuNDAyOSA0LjE3NzE5IDExLjQwMjkgMy42OTIzMUMxMS40MDI5IDMuMjA3NDMgMTEuMzA3NCAyLjcyNzI5IDExLjEyMTkgMi4yNzkzMkMxMC45MzYzIDEuODMxMzUgMTAuNjY0NCAxLjQyNDMxIDEwLjMyMTUgMS4wODE0NUM5Ljk3ODYzIDAuNzM4NTkgOS41NzE1OSAwLjQ2NjYxNiA5LjEyMzYyIDAuMjgxMDZDOC42NzU2NSAwLjA5NTUwNDMgOC4xOTU1MiAtNy4yMjUyOWUtMDkgNy43MTA2NCAwQzYuNzMxMzggMS40NTkyMWUtMDggNS43OTIyMiAwLjM4OTAxIDUuMDk5NzggMS4wODE0NUM0LjQwNzM0IDEuNzczODkgNC4wMTgzMyAyLjcxMzA1IDQuMDE4MzMgMy42OTIzMUM0LjAxODMzIDQuNjcxNTcgNC40MDczNCA1LjYxMDcyIDUuMDk5NzggNi4zMDMxNkM1Ljc5MjIyIDYuOTk1NjEgNi43MzEzOCA3LjM4NDYyIDcuNzEwNjQgNy4zODQ2MlpNMTguNzg3NiA3LjM4NDYyQzE5LjI3MjQgNy4zODQ2MiAxOS43NTI2IDcuMjg5MTEgMjAuMjAwNSA3LjEwMzU2QzIwLjY0ODUgNi45MTggMjEuMDU1NiA2LjY0NjAzIDIxLjM5ODQgNi4zMDMxNkMyMS43NDEzIDUuOTYwMyAyMi4wMTMzIDUuNTUzMjYgMjIuMTk4OCA1LjEwNTI5QzIyLjM4NDQgNC42NTczMiAyMi40Nzk5IDQuMTc3MTkgMjIuNDc5OSAzLjY5MjMxQzIyLjQ3OTkgMy4yMDc0MyAyMi4zODQ0IDIuNzI3MjkgMjIuMTk4OCAyLjI3OTMyQzIyLjAxMzMgMS44MzEzNSAyMS43NDEzIDEuNDI0MzEgMjEuMzk4NCAxLjA4MTQ1QzIxLjA1NTYgMC43Mzg1OSAyMC42NDg1IDAuNDY2NjE2IDIwLjIwMDUgMC4yODEwNkMxOS43NTI2IDAuMDk1NTA0MyAxOS4yNzI0IC03LjIyNTI5ZS0wOSAxOC43ODc2IDBDMTcuODA4MyAxLjQ1OTIxZS0wOCAxNi44NjkxIDAuMzg5MDEgMTYuMTc2NyAxLjA4MTQ1QzE1LjQ4NDMgMS43NzM4OSAxNS4wOTUzIDIuNzEzMDUgMTUuMDk1MyAzLjY5MjMxQzE1LjA5NTMgNC42NzE1NyAxNS40ODQzIDUuNjEwNzIgMTYuMTc2NyA2LjMwMzE2QzE2Ljg2OTEgNi45OTU2MSAxNy44MDgzIDcuMzg0NjIgMTguNzg3NiA3LjM4NDYyWk0wLjk0MTQwNiAxMC43MzZDMC45NDE0MDYgMTAuNDU3NSAwLjk5NjI1OCAxMC4xODE4IDEuMTAyODMgOS45MjQ0OEMxLjIwOTQgOS42NjcxOSAxLjM2NTYgOS40MzM0MiAxLjU2MjUyIDkuMjM2NUMxLjc1OTQ0IDkuMDM5NTggMS45OTMyMSA4Ljg4MzM4IDIuMjUwNSA4Ljc3NjgxQzIuNTA3NzggOC42NzAyNCAyLjc4MzU0IDguNjE1MzkgMy4wNjIwMiA4LjYxNTM5SDguOTg0NDhDOC41NTE2OSA5LjM2MzQ1IDguMzI0NTIgMTAuMjEyNyA4LjMyNjAyIDExLjA3NjlDOC4zMjUxOSAxMS43NzU1IDguNDczNDEgMTIuNDY2MiA4Ljc2MDc5IDEzLjEwMjlDOS4wNDgxNiAxMy43Mzk2IDkuNDY4MDcgMTQuMzA3NyA5Ljk5MjQ4IDE0Ljc2OTJIOC42MDA0OEM4LjAxNDE4IDE0Ljc2ODcgNy40MzgwMyAxNC45MjIyIDYuOTI5NjkgMTUuMjE0NEM2LjQyMTM0IDE1LjUwNjUgNS45OTg2NCAxNS45MjcgNS43MDM4NyAxNi40MzM4QzMuNzIxMSAxNi4wNDQ5IDIuNTE2MTggMTUuMDc4MiAxLjgxNDY0IDEzLjk5MkMwLjk0MTQwNiAxMi42NCAwLjk0MTQwNiAxMS4yNDMxIDAuOTQxNDA2IDExLjAwMTJWMTAuNzM2Wk0xNy44OTc3IDE0Ljc2OTJDMTguNDg0IDE0Ljc2ODcgMTkuMDYwMiAxNC45MjIyIDE5LjU2ODUgMTUuMjE0NEMyMC4wNzY5IDE1LjUwNjUgMjAuNDk5NiAxNS45MjcgMjAuNzk0MyAxNi40MzM4QzIyLjc3NzEgMTYuMDQ0OSAyMy45ODIgMTUuMDc4MiAyNC42ODM2IDEzLjk5MkMyNS41NTY4IDEyLjY0IDI1LjU1NjggMTEuMjQzMSAyNS41NTY4IDExLjAwMTJWMTAuNzM2NkMyNS41NTY5IDEwLjQ1ODEgMjUuNTAyMSAxMC4xODIzIDI1LjM5NTUgOS45MjQ5QzI1LjI4OSA5LjY2NzU1IDI1LjEzMjggOS40MzM3IDI0LjkzNTkgOS4yMzY3MkMyNC43MzkgOS4wMzk3MyAyNC41MDUyIDguODgzNDggMjQuMjQ3OCA4Ljc3Njg3QzIzLjk5MDUgOC42NzAyNiAyMy43MTQ3IDguNjE1MzkgMjMuNDM2MiA4LjYxNTM5SDE3LjUxMzdDMTcuOTQ2NSA5LjM2MzQ1IDE4LjE3MzcgMTAuMjEyNyAxOC4xNzIyIDExLjA3NjlDMTguMTczIDExLjc3NTUgMTguMDI0OCAxMi40NjYyIDE3LjczNzQgMTMuMTAyOUMxNy40NSAxMy43Mzk2IDE3LjAzMDEgMTQuMzA3NyAxNi41MDU3IDE0Ljc2OTJIMTcuODk3N1pNMTYuOTQxNCAxMS4wNzY5QzE2Ljk0MTQgMTIuMDU2MiAxNi41NTI0IDEyLjk5NTMgMTUuODYgMTMuNjg3OEMxNS4xNjc1IDE0LjM4MDIgMTQuMjI4NCAxNC43NjkyIDEzLjI0OTEgMTQuNzY5MkMxMi4yNjk4IDE0Ljc2OTIgMTEuMzMwNyAxNC4zODAyIDEwLjYzODIgMTMuNjg3OEM5Ljk0NTggMTIuOTk1MyA5LjU1Njc5IDEyLjA1NjIgOS41NTY3OSAxMS4wNzY5QzkuNTU2NzkgMTAuMDk3NyA5Ljk0NTggOS4xNTg1MSAxMC42MzgyIDguNDY2MDdDMTEuMzMwNyA3Ljc3MzYzIDEyLjI2OTggNy4zODQ2MiAxMy4yNDkxIDcuMzg0NjJDMTQuMjI4NCA3LjM4NDYyIDE1LjE2NzUgNy43NzM2MyAxNS44NiA4LjQ2NjA3QzE2LjU1MjQgOS4xNTg1MSAxNi45NDE0IDEwLjA5NzcgMTYuOTQxNCAxMS4wNzY5Wk02LjQ3OTg3IDE4LjEyMDZDNi40Nzk4NyAxNy41NTgyIDYuNzAzMjkgMTcuMDE4OCA3LjEwMDk4IDE2LjYyMTFDNy40OTg2NyAxNi4yMjM0IDguMDM4MDYgMTYgOC42MDA0OCAxNkgxNy44OTc3QzE4LjQ2MDEgMTYgMTguOTk5NSAxNi4yMjM0IDE5LjM5NzIgMTYuNjIxMUMxOS43OTQ5IDE3LjAxODggMjAuMDE4MyAxNy41NTgyIDIwLjAxODMgMTguMTIwNlYxOC4zODU4QzIwLjAxODMgMTguNjI4MyAyMC4wMTgzIDIwLjAyNDYgMTkuMTQ1MSAyMS4zNzY2QzE4LjIzMjUgMjIuNzg5NSAxNi40Njk0IDI0IDEzLjI0OTEgMjRDMTAuMDI4OCAyNCA4LjI2NTcxIDIyLjc4OTUgNy4zNTMxIDIxLjM3NjZDNi40Nzk4NyAyMC4wMjQ2IDYuNDc5ODcgMTguNjI3NyA2LjQ3OTg3IDE4LjM4NThWMTguMTIwNlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjOThBMkIzXCIgc3Ryb2tlLXdpZHRoPVwiM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hc2s9XCJ1cmwoI3BhdGgtNi1pbnNpZGUtMl83MDdfMTMxMDYpXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8uZm9vdGZhbGxDYXJkPy5ncm91cENvdW50ID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LmZvb3RmYWxsQ2FyZD8uZ3JvdXBDb3VudC50b0xvY2FsZVN0cmluZygnZW4tSU4nKSA6Jy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+R3JvdXAgRm9vdGZhbGw8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNSBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIyNlwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNiAyNFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIyNlwiIGhlaWdodD1cIjI0XCIgZmlsbD1cIiNEQ0RDRENcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHg9XCItNDYwLjVcIiB5PVwiLTM0MC41XCIgd2lkdGg9XCI3ODNcIiBoZWlnaHQ9XCIxOTQ3XCIgcng9XCI0LjVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjOTc0N0ZGXCIgc3Ryb2tlLWRhc2hhcnJheT1cIjEwIDVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXNrIGlkPVwicGF0aC0yLWluc2lkZS0xXzcwN18xMzEwNlwiIGZpbGw9XCJ3aGl0ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0tMTg5IC04OUMtMTg5IC05NS42Mjc0IC0xODMuNjI3IC0xMDEgLTE3NyAtMTAxSDI5NUMzMDEuNjI3IC0xMDEgMzA3IC05NS42Mjc0IDMwNyAtODlWODVDMzA3IDkxLjYyNzQgMzAxLjYyNyA5NyAyOTUgOTdILTE3N0MtMTgzLjYyNyA5NyAtMTg5IDkxLjYyNzQgLTE4OSA4NVYtODlaXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hc2s+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0tMTg5IC04OUMtMTg5IC05NS42Mjc0IC0xODMuNjI3IC0xMDEgLTE3NyAtMTAxSDI5NUMzMDEuNjI3IC0xMDEgMzA3IC05NS42Mjc0IDMwNyAtODlWODVDMzA3IDkxLjYyNzQgMzAxLjYyNyA5NyAyOTUgOTdILTE3N0MtMTgzLjYyNyA5NyAtMTg5IDkxLjYyNzQgLTE4OSA4NVYtODlaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTS0xOTAgLTg5Qy0xOTAgLTk2LjE3OTcgLTE4NC4xOCAtMTAyIC0xNzcgLTEwMkgyOTRDMzAxLjE4IC0xMDIgMzA3IC05Ni4xNzk3IDMwNyAtODlDMzA3IC05NS4wNzUxIDMwMS42MjcgLTEwMCAyOTUgLTEwMEgtMTc3Qy0xODMuMDc1IC0xMDAgLTE4OCAtOTUuMDc1MSAtMTg4IC04OUgtMTkwWk0zMDcgODVDMzA3IDkyLjE3OTcgMzAxLjE4IDk4IDI5NCA5OEgtMTc3Qy0xODQuMTggOTggLTE5MCA5Mi4xNzk3IC0xOTAgODVILTE4OEMtMTg4IDkxLjA3NTEgLTE4My4wNzUgOTYgLTE3NyA5NkgyOTVDMzAxLjYyNyA5NiAzMDcgOTEuMDc1MSAzMDcgODVaTS0xNzcgOThDLTE4NC4xOCA5OCAtMTkwIDkyLjE3OTcgLTE5MCA4NVYtODlDLTE5MCAtOTYuMTc5NyAtMTg0LjE4IC0xMDIgLTE3NyAtMTAyVi0xMDBDLTE4My4wNzUgLTEwMCAtMTg4IC05NS4wNzUxIC0xODggLTg5Vjg1Qy0xODggOTEuMDc1MSAtMTgzLjA3NSA5NiAtMTc3IDk2Vjk4Wk0zMDcgLTEwMVY5N1YtMTAxWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjRDBENUREXCIgbWFzaz1cInVybCgjcGF0aC0yLWluc2lkZS0xXzcwN18xMzEwNilcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXNrIGlkPVwicGF0aC02LWluc2lkZS0yXzcwN18xMzEwNlwiIGZpbGw9XCJ3aGl0ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk03LjcxMDY0IDcuMzg0NjJDOC4xOTU1MiA3LjM4NDYyIDguNjc1NjUgNy4yODkxMSA5LjEyMzYyIDcuMTAzNTZDOS41NzE1OSA2LjkxOCA5Ljk3ODYzIDYuNjQ2MDMgMTAuMzIxNSA2LjMwMzE2QzEwLjY2NDQgNS45NjAzIDEwLjkzNjMgNS41NTMyNiAxMS4xMjE5IDUuMTA1MjlDMTEuMzA3NCA0LjY1NzMyIDExLjQwMjkgNC4xNzcxOSAxMS40MDI5IDMuNjkyMzFDMTEuNDAyOSAzLjIwNzQzIDExLjMwNzQgMi43MjcyOSAxMS4xMjE5IDIuMjc5MzJDMTAuOTM2MyAxLjgzMTM1IDEwLjY2NDQgMS40MjQzMSAxMC4zMjE1IDEuMDgxNDVDOS45Nzg2MyAwLjczODU5IDkuNTcxNTkgMC40NjY2MTYgOS4xMjM2MiAwLjI4MTA2QzguNjc1NjUgMC4wOTU1MDQzIDguMTk1NTIgLTcuMjI1MjllLTA5IDcuNzEwNjQgMEM2LjczMTM4IDEuNDU5MjFlLTA4IDUuNzkyMjIgMC4zODkwMSA1LjA5OTc4IDEuMDgxNDVDNC40MDczNCAxLjc3Mzg5IDQuMDE4MzMgMi43MTMwNSA0LjAxODMzIDMuNjkyMzFDNC4wMTgzMyA0LjY3MTU3IDQuNDA3MzQgNS42MTA3MiA1LjA5OTc4IDYuMzAzMTZDNS43OTIyMiA2Ljk5NTYxIDYuNzMxMzggNy4zODQ2MiA3LjcxMDY0IDcuMzg0NjJaTTE4Ljc4NzYgNy4zODQ2MkMxOS4yNzI0IDcuMzg0NjIgMTkuNzUyNiA3LjI4OTExIDIwLjIwMDUgNy4xMDM1NkMyMC42NDg1IDYuOTE4IDIxLjA1NTYgNi42NDYwMyAyMS4zOTg0IDYuMzAzMTZDMjEuNzQxMyA1Ljk2MDMgMjIuMDEzMyA1LjU1MzI2IDIyLjE5ODggNS4xMDUyOUMyMi4zODQ0IDQuNjU3MzIgMjIuNDc5OSA0LjE3NzE5IDIyLjQ3OTkgMy42OTIzMUMyMi40Nzk5IDMuMjA3NDMgMjIuMzg0NCAyLjcyNzI5IDIyLjE5ODggMi4yNzkzMkMyMi4wMTMzIDEuODMxMzUgMjEuNzQxMyAxLjQyNDMxIDIxLjM5ODQgMS4wODE0NUMyMS4wNTU2IDAuNzM4NTkgMjAuNjQ4NSAwLjQ2NjYxNiAyMC4yMDA1IDAuMjgxMDZDMTkuNzUyNiAwLjA5NTUwNDMgMTkuMjcyNCAtNy4yMjUyOWUtMDkgMTguNzg3NiAwQzE3LjgwODMgMS40NTkyMWUtMDggMTYuODY5MSAwLjM4OTAxIDE2LjE3NjcgMS4wODE0NUMxNS40ODQzIDEuNzczODkgMTUuMDk1MyAyLjcxMzA1IDE1LjA5NTMgMy42OTIzMUMxNS4wOTUzIDQuNjcxNTcgMTUuNDg0MyA1LjYxMDcyIDE2LjE3NjcgNi4zMDMxNkMxNi44NjkxIDYuOTk1NjEgMTcuODA4MyA3LjM4NDYyIDE4Ljc4NzYgNy4zODQ2MlpNMC45NDE0MDYgMTAuNzM2QzAuOTQxNDA2IDEwLjQ1NzUgMC45OTYyNTggMTAuMTgxOCAxLjEwMjgzIDkuOTI0NDhDMS4yMDk0IDkuNjY3MTkgMS4zNjU2IDkuNDMzNDIgMS41NjI1MiA5LjIzNjVDMS43NTk0NCA5LjAzOTU4IDEuOTkzMjEgOC44ODMzOCAyLjI1MDUgOC43NzY4MUMyLjUwNzc4IDguNjcwMjQgMi43ODM1NCA4LjYxNTM5IDMuMDYyMDIgOC42MTUzOUg4Ljk4NDQ4QzguNTUxNjkgOS4zNjM0NSA4LjMyNDUyIDEwLjIxMjcgOC4zMjYwMiAxMS4wNzY5QzguMzI1MTkgMTEuNzc1NSA4LjQ3MzQxIDEyLjQ2NjIgOC43NjA3OSAxMy4xMDI5QzkuMDQ4MTYgMTMuNzM5NiA5LjQ2ODA3IDE0LjMwNzcgOS45OTI0OCAxNC43NjkySDguNjAwNDhDOC4wMTQxOCAxNC43Njg3IDcuNDM4MDMgMTQuOTIyMiA2LjkyOTY5IDE1LjIxNDRDNi40MjEzNCAxNS41MDY1IDUuOTk4NjQgMTUuOTI3IDUuNzAzODcgMTYuNDMzOEMzLjcyMTEgMTYuMDQ0OSAyLjUxNjE4IDE1LjA3ODIgMS44MTQ2NCAxMy45OTJDMC45NDE0MDYgMTIuNjQgMC45NDE0MDYgMTEuMjQzMSAwLjk0MTQwNiAxMS4wMDEyVjEwLjczNlpNMTcuODk3NyAxNC43NjkyQzE4LjQ4NCAxNC43Njg3IDE5LjA2MDIgMTQuOTIyMiAxOS41Njg1IDE1LjIxNDRDMjAuMDc2OSAxNS41MDY1IDIwLjQ5OTYgMTUuOTI3IDIwLjc5NDMgMTYuNDMzOEMyMi43NzcxIDE2LjA0NDkgMjMuOTgyIDE1LjA3ODIgMjQuNjgzNiAxMy45OTJDMjUuNTU2OCAxMi42NCAyNS41NTY4IDExLjI0MzEgMjUuNTU2OCAxMS4wMDEyVjEwLjczNjZDMjUuNTU2OSAxMC40NTgxIDI1LjUwMjEgMTAuMTgyMyAyNS4zOTU1IDkuOTI0OUMyNS4yODkgOS42Njc1NSAyNS4xMzI4IDkuNDMzNyAyNC45MzU5IDkuMjM2NzJDMjQuNzM5IDkuMDM5NzMgMjQuNTA1MiA4Ljg4MzQ4IDI0LjI0NzggOC43NzY4N0MyMy45OTA1IDguNjcwMjYgMjMuNzE0NyA4LjYxNTM5IDIzLjQzNjIgOC42MTUzOUgxNy41MTM3QzE3Ljk0NjUgOS4zNjM0NSAxOC4xNzM3IDEwLjIxMjcgMTguMTcyMiAxMS4wNzY5QzE4LjE3MyAxMS43NzU1IDE4LjAyNDggMTIuNDY2MiAxNy43Mzc0IDEzLjEwMjlDMTcuNDUgMTMuNzM5NiAxNy4wMzAxIDE0LjMwNzcgMTYuNTA1NyAxNC43NjkySDE3Ljg5NzdaTTE2Ljk0MTQgMTEuMDc2OUMxNi45NDE0IDEyLjA1NjIgMTYuNTUyNCAxMi45OTUzIDE1Ljg2IDEzLjY4NzhDMTUuMTY3NSAxNC4zODAyIDE0LjIyODQgMTQuNzY5MiAxMy4yNDkxIDE0Ljc2OTJDMTIuMjY5OCAxNC43NjkyIDExLjMzMDcgMTQuMzgwMiAxMC42MzgyIDEzLjY4NzhDOS45NDU4IDEyLjk5NTMgOS41NTY3OSAxMi4wNTYyIDkuNTU2NzkgMTEuMDc2OUM5LjU1Njc5IDEwLjA5NzcgOS45NDU4IDkuMTU4NTEgMTAuNjM4MiA4LjQ2NjA3QzExLjMzMDcgNy43NzM2MyAxMi4yNjk4IDcuMzg0NjIgMTMuMjQ5MSA3LjM4NDYyQzE0LjIyODQgNy4zODQ2MiAxNS4xNjc1IDcuNzczNjMgMTUuODYgOC40NjYwN0MxNi41NTI0IDkuMTU4NTEgMTYuOTQxNCAxMC4wOTc3IDE2Ljk0MTQgMTEuMDc2OVpNNi40Nzk4NyAxOC4xMjA2QzYuNDc5ODcgMTcuNTU4MiA2LjcwMzI5IDE3LjAxODggNy4xMDA5OCAxNi42MjExQzcuNDk4NjcgMTYuMjIzNCA4LjAzODA2IDE2IDguNjAwNDggMTZIMTcuODk3N0MxOC40NjAxIDE2IDE4Ljk5OTUgMTYuMjIzNCAxOS4zOTcyIDE2LjYyMTFDMTkuNzk0OSAxNy4wMTg4IDIwLjAxODMgMTcuNTU4MiAyMC4wMTgzIDE4LjEyMDZWMTguMzg1OEMyMC4wMTgzIDE4LjYyODMgMjAuMDE4MyAyMC4wMjQ2IDE5LjE0NTEgMjEuMzc2NkMxOC4yMzI1IDIyLjc4OTUgMTYuNDY5NCAyNCAxMy4yNDkxIDI0QzEwLjAyODggMjQgOC4yNjU3MSAyMi43ODk1IDcuMzUzMSAyMS4zNzY2QzYuNDc5ODcgMjAuMDI0NiA2LjQ3OTg3IDE4LjYyNzcgNi40Nzk4NyAxOC4zODU4VjE4LjEyMDZaXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hc2s+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk03LjcxMDY0IDcuMzg0NjJDOC4xOTU1MiA3LjM4NDYyIDguNjc1NjUgNy4yODkxMSA5LjEyMzYyIDcuMTAzNTZDOS41NzE1OSA2LjkxOCA5Ljk3ODYzIDYuNjQ2MDMgMTAuMzIxNSA2LjMwMzE2QzEwLjY2NDQgNS45NjAzIDEwLjkzNjMgNS41NTMyNiAxMS4xMjE5IDUuMTA1MjlDMTEuMzA3NCA0LjY1NzMyIDExLjQwMjkgNC4xNzcxOSAxMS40MDI5IDMuNjkyMzFDMTEuNDAyOSAzLjIwNzQzIDExLjMwNzQgMi43MjcyOSAxMS4xMjE5IDIuMjc5MzJDMTAuOTM2MyAxLjgzMTM1IDEwLjY2NDQgMS40MjQzMSAxMC4zMjE1IDEuMDgxNDVDOS45Nzg2MyAwLjczODU5IDkuNTcxNTkgMC40NjY2MTYgOS4xMjM2MiAwLjI4MTA2QzguNjc1NjUgMC4wOTU1MDQzIDguMTk1NTIgLTcuMjI1MjllLTA5IDcuNzEwNjQgMEM2LjczMTM4IDEuNDU5MjFlLTA4IDUuNzkyMjIgMC4zODkwMSA1LjA5OTc4IDEuMDgxNDVDNC40MDczNCAxLjc3Mzg5IDQuMDE4MzMgMi43MTMwNSA0LjAxODMzIDMuNjkyMzFDNC4wMTgzMyA0LjY3MTU3IDQuNDA3MzQgNS42MTA3MiA1LjA5OTc4IDYuMzAzMTZDNS43OTIyMiA2Ljk5NTYxIDYuNzMxMzggNy4zODQ2MiA3LjcxMDY0IDcuMzg0NjJaTTE4Ljc4NzYgNy4zODQ2MkMxOS4yNzI0IDcuMzg0NjIgMTkuNzUyNiA3LjI4OTExIDIwLjIwMDUgNy4xMDM1NkMyMC42NDg1IDYuOTE4IDIxLjA1NTYgNi42NDYwMyAyMS4zOTg0IDYuMzAzMTZDMjEuNzQxMyA1Ljk2MDMgMjIuMDEzMyA1LjU1MzI2IDIyLjE5ODggNS4xMDUyOUMyMi4zODQ0IDQuNjU3MzIgMjIuNDc5OSA0LjE3NzE5IDIyLjQ3OTkgMy42OTIzMUMyMi40Nzk5IDMuMjA3NDMgMjIuMzg0NCAyLjcyNzI5IDIyLjE5ODggMi4yNzkzMkMyMi4wMTMzIDEuODMxMzUgMjEuNzQxMyAxLjQyNDMxIDIxLjM5ODQgMS4wODE0NUMyMS4wNTU2IDAuNzM4NTkgMjAuNjQ4NSAwLjQ2NjYxNiAyMC4yMDA1IDAuMjgxMDZDMTkuNzUyNiAwLjA5NTUwNDMgMTkuMjcyNCAtNy4yMjUyOWUtMDkgMTguNzg3NiAwQzE3LjgwODMgMS40NTkyMWUtMDggMTYuODY5MSAwLjM4OTAxIDE2LjE3NjcgMS4wODE0NUMxNS40ODQzIDEuNzczODkgMTUuMDk1MyAyLjcxMzA1IDE1LjA5NTMgMy42OTIzMUMxNS4wOTUzIDQuNjcxNTcgMTUuNDg0MyA1LjYxMDcyIDE2LjE3NjcgNi4zMDMxNkMxNi44NjkxIDYuOTk1NjEgMTcuODA4MyA3LjM4NDYyIDE4Ljc4NzYgNy4zODQ2MlpNMC45NDE0MDYgMTAuNzM2QzAuOTQxNDA2IDEwLjQ1NzUgMC45OTYyNTggMTAuMTgxOCAxLjEwMjgzIDkuOTI0NDhDMS4yMDk0IDkuNjY3MTkgMS4zNjU2IDkuNDMzNDIgMS41NjI1MiA5LjIzNjVDMS43NTk0NCA5LjAzOTU4IDEuOTkzMjEgOC44ODMzOCAyLjI1MDUgOC43NzY4MUMyLjUwNzc4IDguNjcwMjQgMi43ODM1NCA4LjYxNTM5IDMuMDYyMDIgOC42MTUzOUg4Ljk4NDQ4QzguNTUxNjkgOS4zNjM0NSA4LjMyNDUyIDEwLjIxMjcgOC4zMjYwMiAxMS4wNzY5QzguMzI1MTkgMTEuNzc1NSA4LjQ3MzQxIDEyLjQ2NjIgOC43NjA3OSAxMy4xMDI5QzkuMDQ4MTYgMTMuNzM5NiA5LjQ2ODA3IDE0LjMwNzcgOS45OTI0OCAxNC43NjkySDguNjAwNDhDOC4wMTQxOCAxNC43Njg3IDcuNDM4MDMgMTQuOTIyMiA2LjkyOTY5IDE1LjIxNDRDNi40MjEzNCAxNS41MDY1IDUuOTk4NjQgMTUuOTI3IDUuNzAzODcgMTYuNDMzOEMzLjcyMTEgMTYuMDQ0OSAyLjUxNjE4IDE1LjA3ODIgMS44MTQ2NCAxMy45OTJDMC45NDE0MDYgMTIuNjQgMC45NDE0MDYgMTEuMjQzMSAwLjk0MTQwNiAxMS4wMDEyVjEwLjczNlpNMTcuODk3NyAxNC43NjkyQzE4LjQ4NCAxNC43Njg3IDE5LjA2MDIgMTQuOTIyMiAxOS41Njg1IDE1LjIxNDRDMjAuMDc2OSAxNS41MDY1IDIwLjQ5OTYgMTUuOTI3IDIwLjc5NDMgMTYuNDMzOEMyMi43NzcxIDE2LjA0NDkgMjMuOTgyIDE1LjA3ODIgMjQuNjgzNiAxMy45OTJDMjUuNTU2OCAxMi42NCAyNS41NTY4IDExLjI0MzEgMjUuNTU2OCAxMS4wMDEyVjEwLjczNjZDMjUuNTU2OSAxMC40NTgxIDI1LjUwMjEgMTAuMTgyMyAyNS4zOTU1IDkuOTI0OUMyNS4yODkgOS42Njc1NSAyNS4xMzI4IDkuNDMzNyAyNC45MzU5IDkuMjM2NzJDMjQuNzM5IDkuMDM5NzMgMjQuNTA1MiA4Ljg4MzQ4IDI0LjI0NzggOC43NzY4N0MyMy45OTA1IDguNjcwMjYgMjMuNzE0NyA4LjYxNTM5IDIzLjQzNjIgOC42MTUzOUgxNy41MTM3QzE3Ljk0NjUgOS4zNjM0NSAxOC4xNzM3IDEwLjIxMjcgMTguMTcyMiAxMS4wNzY5QzE4LjE3MyAxMS43NzU1IDE4LjAyNDggMTIuNDY2MiAxNy43Mzc0IDEzLjEwMjlDMTcuNDUgMTMuNzM5NiAxNy4wMzAxIDE0LjMwNzcgMTYuNTA1NyAxNC43NjkySDE3Ljg5NzdaTTE2Ljk0MTQgMTEuMDc2OUMxNi45NDE0IDEyLjA1NjIgMTYuNTUyNCAxMi45OTUzIDE1Ljg2IDEzLjY4NzhDMTUuMTY3NSAxNC4zODAyIDE0LjIyODQgMTQuNzY5MiAxMy4yNDkxIDE0Ljc2OTJDMTIuMjY5OCAxNC43NjkyIDExLjMzMDcgMTQuMzgwMiAxMC42MzgyIDEzLjY4NzhDOS45NDU4IDEyLjk5NTMgOS41NTY3OSAxMi4wNTYyIDkuNTU2NzkgMTEuMDc2OUM5LjU1Njc5IDEwLjA5NzcgOS45NDU4IDkuMTU4NTEgMTAuNjM4MiA4LjQ2NjA3QzExLjMzMDcgNy43NzM2MyAxMi4yNjk4IDcuMzg0NjIgMTMuMjQ5MSA3LjM4NDYyQzE0LjIyODQgNy4zODQ2MiAxNS4xNjc1IDcuNzczNjMgMTUuODYgOC40NjYwN0MxNi41NTI0IDkuMTU4NTEgMTYuOTQxNCAxMC4wOTc3IDE2Ljk0MTQgMTEuMDc2OVpNNi40Nzk4NyAxOC4xMjA2QzYuNDc5ODcgMTcuNTU4MiA2LjcwMzI5IDE3LjAxODggNy4xMDA5OCAxNi42MjExQzcuNDk4NjcgMTYuMjIzNCA4LjAzODA2IDE2IDguNjAwNDggMTZIMTcuODk3N0MxOC40NjAxIDE2IDE4Ljk5OTUgMTYuMjIzNCAxOS4zOTcyIDE2LjYyMTFDMTkuNzk0OSAxNy4wMTg4IDIwLjAxODMgMTcuNTU4MiAyMC4wMTgzIDE4LjEyMDZWMTguMzg1OEMyMC4wMTgzIDE4LjYyODMgMjAuMDE4MyAyMC4wMjQ2IDE5LjE0NTEgMjEuMzc2NkMxOC4yMzI1IDIyLjc4OTUgMTYuNDY5NCAyNCAxMy4yNDkxIDI0QzEwLjAyODggMjQgOC4yNjU3MSAyMi43ODk1IDcuMzUzMSAyMS4zNzY2QzYuNDc5ODcgMjAuMDI0NiA2LjQ3OTg3IDE4LjYyNzcgNi40Nzk4NyAxOC4zODU4VjE4LjEyMDZaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXNrPVwidXJsKCNwYXRoLTYtaW5zaWRlLTJfNzA3XzEzMTA2KVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/LmZvb3RmYWxsQ2FyZD8uYWdlR3JvdXAgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8uZm9vdGZhbGxDYXJkPy5hZ2VHcm91cCA6Jy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+TW9zdCBDb21tb24gQWdlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMjZcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjYgMjRcIiBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMjZcIiBoZWlnaHQ9XCIyNFwiIGZpbGw9XCIjRENEQ0RDXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB4PVwiLTQ2MC41XCIgeT1cIi0zNDAuNVwiIHdpZHRoPVwiNzgzXCIgaGVpZ2h0PVwiMTk0N1wiIHJ4PVwiNC41XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk3NDdGRlwiIHN0cm9rZS1kYXNoYXJyYXk9XCIxMCA1XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWFzayBpZD1cInBhdGgtMi1pbnNpZGUtMV83MDdfMTMxMDZcIiBmaWxsPVwid2hpdGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNLTE4OSAtODlDLTE4OSAtOTUuNjI3NCAtMTgzLjYyNyAtMTAxIC0xNzcgLTEwMUgyOTVDMzAxLjYyNyAtMTAxIDMwNyAtOTUuNjI3NCAzMDcgLTg5Vjg1QzMwNyA5MS42Mjc0IDMwMS42MjcgOTcgMjk1IDk3SC0xNzdDLTE4My42MjcgOTcgLTE4OSA5MS42Mjc0IC0xODkgODVWLTg5WlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXNrPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNLTE4OSAtODlDLTE4OSAtOTUuNjI3NCAtMTgzLjYyNyAtMTAxIC0xNzcgLTEwMUgyOTVDMzAxLjYyNyAtMTAxIDMwNyAtOTUuNjI3NCAzMDcgLTg5Vjg1QzMwNyA5MS42Mjc0IDMwMS42MjcgOTcgMjk1IDk3SC0xNzdDLTE4My42MjcgOTcgLTE4OSA5MS42Mjc0IC0xODkgODVWLTg5WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0tMTkwIC04OUMtMTkwIC05Ni4xNzk3IC0xODQuMTggLTEwMiAtMTc3IC0xMDJIMjk0QzMwMS4xOCAtMTAyIDMwNyAtOTYuMTc5NyAzMDcgLTg5QzMwNyAtOTUuMDc1MSAzMDEuNjI3IC0xMDAgMjk1IC0xMDBILTE3N0MtMTgzLjA3NSAtMTAwIC0xODggLTk1LjA3NTEgLTE4OCAtODlILTE5MFpNMzA3IDg1QzMwNyA5Mi4xNzk3IDMwMS4xOCA5OCAyOTQgOThILTE3N0MtMTg0LjE4IDk4IC0xOTAgOTIuMTc5NyAtMTkwIDg1SC0xODhDLTE4OCA5MS4wNzUxIC0xODMuMDc1IDk2IC0xNzcgOTZIMjk1QzMwMS42MjcgOTYgMzA3IDkxLjA3NTEgMzA3IDg1Wk0tMTc3IDk4Qy0xODQuMTggOTggLTE5MCA5Mi4xNzk3IC0xOTAgODVWLTg5Qy0xOTAgLTk2LjE3OTcgLTE4NC4xOCAtMTAyIC0xNzcgLTEwMlYtMTAwQy0xODMuMDc1IC0xMDAgLTE4OCAtOTUuMDc1MSAtMTg4IC04OVY4NUMtMTg4IDkxLjA3NTEgLTE4My4wNzUgOTYgLTE3NyA5NlY5OFpNMzA3IC0xMDFWOTdWLTEwMVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiI0QwRDVERFwiIG1hc2s9XCJ1cmwoI3BhdGgtMi1pbnNpZGUtMV83MDdfMTMxMDYpXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWFzayBpZD1cInBhdGgtNi1pbnNpZGUtMl83MDdfMTMxMDZcIiBmaWxsPVwid2hpdGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNy43MTA2NCA3LjM4NDYyQzguMTk1NTIgNy4zODQ2MiA4LjY3NTY1IDcuMjg5MTEgOS4xMjM2MiA3LjEwMzU2QzkuNTcxNTkgNi45MTggOS45Nzg2MyA2LjY0NjAzIDEwLjMyMTUgNi4zMDMxNkMxMC42NjQ0IDUuOTYwMyAxMC45MzYzIDUuNTUzMjYgMTEuMTIxOSA1LjEwNTI5QzExLjMwNzQgNC42NTczMiAxMS40MDI5IDQuMTc3MTkgMTEuNDAyOSAzLjY5MjMxQzExLjQwMjkgMy4yMDc0MyAxMS4zMDc0IDIuNzI3MjkgMTEuMTIxOSAyLjI3OTMyQzEwLjkzNjMgMS44MzEzNSAxMC42NjQ0IDEuNDI0MzEgMTAuMzIxNSAxLjA4MTQ1QzkuOTc4NjMgMC43Mzg1OSA5LjU3MTU5IDAuNDY2NjE2IDkuMTIzNjIgMC4yODEwNkM4LjY3NTY1IDAuMDk1NTA0MyA4LjE5NTUyIC03LjIyNTI5ZS0wOSA3LjcxMDY0IDBDNi43MzEzOCAxLjQ1OTIxZS0wOCA1Ljc5MjIyIDAuMzg5MDEgNS4wOTk3OCAxLjA4MTQ1QzQuNDA3MzQgMS43NzM4OSA0LjAxODMzIDIuNzEzMDUgNC4wMTgzMyAzLjY5MjMxQzQuMDE4MzMgNC42NzE1NyA0LjQwNzM0IDUuNjEwNzIgNS4wOTk3OCA2LjMwMzE2QzUuNzkyMjIgNi45OTU2MSA2LjczMTM4IDcuMzg0NjIgNy43MTA2NCA3LjM4NDYyWk0xOC43ODc2IDcuMzg0NjJDMTkuMjcyNCA3LjM4NDYyIDE5Ljc1MjYgNy4yODkxMSAyMC4yMDA1IDcuMTAzNTZDMjAuNjQ4NSA2LjkxOCAyMS4wNTU2IDYuNjQ2MDMgMjEuMzk4NCA2LjMwMzE2QzIxLjc0MTMgNS45NjAzIDIyLjAxMzMgNS41NTMyNiAyMi4xOTg4IDUuMTA1MjlDMjIuMzg0NCA0LjY1NzMyIDIyLjQ3OTkgNC4xNzcxOSAyMi40Nzk5IDMuNjkyMzFDMjIuNDc5OSAzLjIwNzQzIDIyLjM4NDQgMi43MjcyOSAyMi4xOTg4IDIuMjc5MzJDMjIuMDEzMyAxLjgzMTM1IDIxLjc0MTMgMS40MjQzMSAyMS4zOTg0IDEuMDgxNDVDMjEuMDU1NiAwLjczODU5IDIwLjY0ODUgMC40NjY2MTYgMjAuMjAwNSAwLjI4MTA2QzE5Ljc1MjYgMC4wOTU1MDQzIDE5LjI3MjQgLTcuMjI1MjllLTA5IDE4Ljc4NzYgMEMxNy44MDgzIDEuNDU5MjFlLTA4IDE2Ljg2OTEgMC4zODkwMSAxNi4xNzY3IDEuMDgxNDVDMTUuNDg0MyAxLjc3Mzg5IDE1LjA5NTMgMi43MTMwNSAxNS4wOTUzIDMuNjkyMzFDMTUuMDk1MyA0LjY3MTU3IDE1LjQ4NDMgNS42MTA3MiAxNi4xNzY3IDYuMzAzMTZDMTYuODY5MSA2Ljk5NTYxIDE3LjgwODMgNy4zODQ2MiAxOC43ODc2IDcuMzg0NjJaTTAuOTQxNDA2IDEwLjczNkMwLjk0MTQwNiAxMC40NTc1IDAuOTk2MjU4IDEwLjE4MTggMS4xMDI4MyA5LjkyNDQ4QzEuMjA5NCA5LjY2NzE5IDEuMzY1NiA5LjQzMzQyIDEuNTYyNTIgOS4yMzY1QzEuNzU5NDQgOS4wMzk1OCAxLjk5MzIxIDguODgzMzggMi4yNTA1IDguNzc2ODFDMi41MDc3OCA4LjY3MDI0IDIuNzgzNTQgOC42MTUzOSAzLjA2MjAyIDguNjE1MzlIOC45ODQ0OEM4LjU1MTY5IDkuMzYzNDUgOC4zMjQ1MiAxMC4yMTI3IDguMzI2MDIgMTEuMDc2OUM4LjMyNTE5IDExLjc3NTUgOC40NzM0MSAxMi40NjYyIDguNzYwNzkgMTMuMTAyOUM5LjA0ODE2IDEzLjczOTYgOS40NjgwNyAxNC4zMDc3IDkuOTkyNDggMTQuNzY5Mkg4LjYwMDQ4QzguMDE0MTggMTQuNzY4NyA3LjQzODAzIDE0LjkyMjIgNi45Mjk2OSAxNS4yMTQ0QzYuNDIxMzQgMTUuNTA2NSA1Ljk5ODY0IDE1LjkyNyA1LjcwMzg3IDE2LjQzMzhDMy43MjExIDE2LjA0NDkgMi41MTYxOCAxNS4wNzgyIDEuODE0NjQgMTMuOTkyQzAuOTQxNDA2IDEyLjY0IDAuOTQxNDA2IDExLjI0MzEgMC45NDE0MDYgMTEuMDAxMlYxMC43MzZaTTE3Ljg5NzcgMTQuNzY5MkMxOC40ODQgMTQuNzY4NyAxOS4wNjAyIDE0LjkyMjIgMTkuNTY4NSAxNS4yMTQ0QzIwLjA3NjkgMTUuNTA2NSAyMC40OTk2IDE1LjkyNyAyMC43OTQzIDE2LjQzMzhDMjIuNzc3MSAxNi4wNDQ5IDIzLjk4MiAxNS4wNzgyIDI0LjY4MzYgMTMuOTkyQzI1LjU1NjggMTIuNjQgMjUuNTU2OCAxMS4yNDMxIDI1LjU1NjggMTEuMDAxMlYxMC43MzY2QzI1LjU1NjkgMTAuNDU4MSAyNS41MDIxIDEwLjE4MjMgMjUuMzk1NSA5LjkyNDlDMjUuMjg5IDkuNjY3NTUgMjUuMTMyOCA5LjQzMzcgMjQuOTM1OSA5LjIzNjcyQzI0LjczOSA5LjAzOTczIDI0LjUwNTIgOC44ODM0OCAyNC4yNDc4IDguNzc2ODdDMjMuOTkwNSA4LjY3MDI2IDIzLjcxNDcgOC42MTUzOSAyMy40MzYyIDguNjE1MzlIMTcuNTEzN0MxNy45NDY1IDkuMzYzNDUgMTguMTczNyAxMC4yMTI3IDE4LjE3MjIgMTEuMDc2OUMxOC4xNzMgMTEuNzc1NSAxOC4wMjQ4IDEyLjQ2NjIgMTcuNzM3NCAxMy4xMDI5QzE3LjQ1IDEzLjczOTYgMTcuMDMwMSAxNC4zMDc3IDE2LjUwNTcgMTQuNzY5MkgxNy44OTc3Wk0xNi45NDE0IDExLjA3NjlDMTYuOTQxNCAxMi4wNTYyIDE2LjU1MjQgMTIuOTk1MyAxNS44NiAxMy42ODc4QzE1LjE2NzUgMTQuMzgwMiAxNC4yMjg0IDE0Ljc2OTIgMTMuMjQ5MSAxNC43NjkyQzEyLjI2OTggMTQuNzY5MiAxMS4zMzA3IDE0LjM4MDIgMTAuNjM4MiAxMy42ODc4QzkuOTQ1OCAxMi45OTUzIDkuNTU2NzkgMTIuMDU2MiA5LjU1Njc5IDExLjA3NjlDOS41NTY3OSAxMC4wOTc3IDkuOTQ1OCA5LjE1ODUxIDEwLjYzODIgOC40NjYwN0MxMS4zMzA3IDcuNzczNjMgMTIuMjY5OCA3LjM4NDYyIDEzLjI0OTEgNy4zODQ2MkMxNC4yMjg0IDcuMzg0NjIgMTUuMTY3NSA3Ljc3MzYzIDE1Ljg2IDguNDY2MDdDMTYuNTUyNCA5LjE1ODUxIDE2Ljk0MTQgMTAuMDk3NyAxNi45NDE0IDExLjA3NjlaTTYuNDc5ODcgMTguMTIwNkM2LjQ3OTg3IDE3LjU1ODIgNi43MDMyOSAxNy4wMTg4IDcuMTAwOTggMTYuNjIxMUM3LjQ5ODY3IDE2LjIyMzQgOC4wMzgwNiAxNiA4LjYwMDQ4IDE2SDE3Ljg5NzdDMTguNDYwMSAxNiAxOC45OTk1IDE2LjIyMzQgMTkuMzk3MiAxNi42MjExQzE5Ljc5NDkgMTcuMDE4OCAyMC4wMTgzIDE3LjU1ODIgMjAuMDE4MyAxOC4xMjA2VjE4LjM4NThDMjAuMDE4MyAxOC42MjgzIDIwLjAxODMgMjAuMDI0NiAxOS4xNDUxIDIxLjM3NjZDMTguMjMyNSAyMi43ODk1IDE2LjQ2OTQgMjQgMTMuMjQ5MSAyNEMxMC4wMjg4IDI0IDguMjY1NzEgMjIuNzg5NSA3LjM1MzEgMjEuMzc2NkM2LjQ3OTg3IDIwLjAyNDYgNi40Nzk4NyAxOC42Mjc3IDYuNDc5ODcgMTguMzg1OFYxOC4xMjA2WlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXNrPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNy43MTA2NCA3LjM4NDYyQzguMTk1NTIgNy4zODQ2MiA4LjY3NTY1IDcuMjg5MTEgOS4xMjM2MiA3LjEwMzU2QzkuNTcxNTkgNi45MTggOS45Nzg2MyA2LjY0NjAzIDEwLjMyMTUgNi4zMDMxNkMxMC42NjQ0IDUuOTYwMyAxMC45MzYzIDUuNTUzMjYgMTEuMTIxOSA1LjEwNTI5QzExLjMwNzQgNC42NTczMiAxMS40MDI5IDQuMTc3MTkgMTEuNDAyOSAzLjY5MjMxQzExLjQwMjkgMy4yMDc0MyAxMS4zMDc0IDIuNzI3MjkgMTEuMTIxOSAyLjI3OTMyQzEwLjkzNjMgMS44MzEzNSAxMC42NjQ0IDEuNDI0MzEgMTAuMzIxNSAxLjA4MTQ1QzkuOTc4NjMgMC43Mzg1OSA5LjU3MTU5IDAuNDY2NjE2IDkuMTIzNjIgMC4yODEwNkM4LjY3NTY1IDAuMDk1NTA0MyA4LjE5NTUyIC03LjIyNTI5ZS0wOSA3LjcxMDY0IDBDNi43MzEzOCAxLjQ1OTIxZS0wOCA1Ljc5MjIyIDAuMzg5MDEgNS4wOTk3OCAxLjA4MTQ1QzQuNDA3MzQgMS43NzM4OSA0LjAxODMzIDIuNzEzMDUgNC4wMTgzMyAzLjY5MjMxQzQuMDE4MzMgNC42NzE1NyA0LjQwNzM0IDUuNjEwNzIgNS4wOTk3OCA2LjMwMzE2QzUuNzkyMjIgNi45OTU2MSA2LjczMTM4IDcuMzg0NjIgNy43MTA2NCA3LjM4NDYyWk0xOC43ODc2IDcuMzg0NjJDMTkuMjcyNCA3LjM4NDYyIDE5Ljc1MjYgNy4yODkxMSAyMC4yMDA1IDcuMTAzNTZDMjAuNjQ4NSA2LjkxOCAyMS4wNTU2IDYuNjQ2MDMgMjEuMzk4NCA2LjMwMzE2QzIxLjc0MTMgNS45NjAzIDIyLjAxMzMgNS41NTMyNiAyMi4xOTg4IDUuMTA1MjlDMjIuMzg0NCA0LjY1NzMyIDIyLjQ3OTkgNC4xNzcxOSAyMi40Nzk5IDMuNjkyMzFDMjIuNDc5OSAzLjIwNzQzIDIyLjM4NDQgMi43MjcyOSAyMi4xOTg4IDIuMjc5MzJDMjIuMDEzMyAxLjgzMTM1IDIxLjc0MTMgMS40MjQzMSAyMS4zOTg0IDEuMDgxNDVDMjEuMDU1NiAwLjczODU5IDIwLjY0ODUgMC40NjY2MTYgMjAuMjAwNSAwLjI4MTA2QzE5Ljc1MjYgMC4wOTU1MDQzIDE5LjI3MjQgLTcuMjI1MjllLTA5IDE4Ljc4NzYgMEMxNy44MDgzIDEuNDU5MjFlLTA4IDE2Ljg2OTEgMC4zODkwMSAxNi4xNzY3IDEuMDgxNDVDMTUuNDg0MyAxLjc3Mzg5IDE1LjA5NTMgMi43MTMwNSAxNS4wOTUzIDMuNjkyMzFDMTUuMDk1MyA0LjY3MTU3IDE1LjQ4NDMgNS42MTA3MiAxNi4xNzY3IDYuMzAzMTZDMTYuODY5MSA2Ljk5NTYxIDE3LjgwODMgNy4zODQ2MiAxOC43ODc2IDcuMzg0NjJaTTAuOTQxNDA2IDEwLjczNkMwLjk0MTQwNiAxMC40NTc1IDAuOTk2MjU4IDEwLjE4MTggMS4xMDI4MyA5LjkyNDQ4QzEuMjA5NCA5LjY2NzE5IDEuMzY1NiA5LjQzMzQyIDEuNTYyNTIgOS4yMzY1QzEuNzU5NDQgOS4wMzk1OCAxLjk5MzIxIDguODgzMzggMi4yNTA1IDguNzc2ODFDMi41MDc3OCA4LjY3MDI0IDIuNzgzNTQgOC42MTUzOSAzLjA2MjAyIDguNjE1MzlIOC45ODQ0OEM4LjU1MTY5IDkuMzYzNDUgOC4zMjQ1MiAxMC4yMTI3IDguMzI2MDIgMTEuMDc2OUM4LjMyNTE5IDExLjc3NTUgOC40NzM0MSAxMi40NjYyIDguNzYwNzkgMTMuMTAyOUM5LjA0ODE2IDEzLjczOTYgOS40NjgwNyAxNC4zMDc3IDkuOTkyNDggMTQuNzY5Mkg4LjYwMDQ4QzguMDE0MTggMTQuNzY4NyA3LjQzODAzIDE0LjkyMjIgNi45Mjk2OSAxNS4yMTQ0QzYuNDIxMzQgMTUuNTA2NSA1Ljk5ODY0IDE1LjkyNyA1LjcwMzg3IDE2LjQzMzhDMy43MjExIDE2LjA0NDkgMi41MTYxOCAxNS4wNzgyIDEuODE0NjQgMTMuOTkyQzAuOTQxNDA2IDEyLjY0IDAuOTQxNDA2IDExLjI0MzEgMC45NDE0MDYgMTEuMDAxMlYxMC43MzZaTTE3Ljg5NzcgMTQuNzY5MkMxOC40ODQgMTQuNzY4NyAxOS4wNjAyIDE0LjkyMjIgMTkuNTY4NSAxNS4yMTQ0QzIwLjA3NjkgMTUuNTA2NSAyMC40OTk2IDE1LjkyNyAyMC43OTQzIDE2LjQzMzhDMjIuNzc3MSAxNi4wNDQ5IDIzLjk4MiAxNS4wNzgyIDI0LjY4MzYgMTMuOTkyQzI1LjU1NjggMTIuNjQgMjUuNTU2OCAxMS4yNDMxIDI1LjU1NjggMTEuMDAxMlYxMC43MzY2QzI1LjU1NjkgMTAuNDU4MSAyNS41MDIxIDEwLjE4MjMgMjUuMzk1NSA5LjkyNDlDMjUuMjg5IDkuNjY3NTUgMjUuMTMyOCA5LjQzMzcgMjQuOTM1OSA5LjIzNjcyQzI0LjczOSA5LjAzOTczIDI0LjUwNTIgOC44ODM0OCAyNC4yNDc4IDguNzc2ODdDMjMuOTkwNSA4LjY3MDI2IDIzLjcxNDcgOC42MTUzOSAyMy40MzYyIDguNjE1MzlIMTcuNTEzN0MxNy45NDY1IDkuMzYzNDUgMTguMTczNyAxMC4yMTI3IDE4LjE3MjIgMTEuMDc2OUMxOC4xNzMgMTEuNzc1NSAxOC4wMjQ4IDEyLjQ2NjIgMTcuNzM3NCAxMy4xMDI5QzE3LjQ1IDEzLjczOTYgMTcuMDMwMSAxNC4zMDc3IDE2LjUwNTcgMTQuNzY5MkgxNy44OTc3Wk0xNi45NDE0IDExLjA3NjlDMTYuOTQxNCAxMi4wNTYyIDE2LjU1MjQgMTIuOTk1MyAxNS44NiAxMy42ODc4QzE1LjE2NzUgMTQuMzgwMiAxNC4yMjg0IDE0Ljc2OTIgMTMuMjQ5MSAxNC43NjkyQzEyLjI2OTggMTQuNzY5MiAxMS4zMzA3IDE0LjM4MDIgMTAuNjM4MiAxMy42ODc4QzkuOTQ1OCAxMi45OTUzIDkuNTU2NzkgMTIuMDU2MiA5LjU1Njc5IDExLjA3NjlDOS41NTY3OSAxMC4wOTc3IDkuOTQ1OCA5LjE1ODUxIDEwLjYzODIgOC40NjYwN0MxMS4zMzA3IDcuNzczNjMgMTIuMjY5OCA3LjM4NDYyIDEzLjI0OTEgNy4zODQ2MkMxNC4yMjg0IDcuMzg0NjIgMTUuMTY3NSA3Ljc3MzYzIDE1Ljg2IDguNDY2MDdDMTYuNTUyNCA5LjE1ODUxIDE2Ljk0MTQgMTAuMDk3NyAxNi45NDE0IDExLjA3NjlaTTYuNDc5ODcgMTguMTIwNkM2LjQ3OTg3IDE3LjU1ODIgNi43MDMyOSAxNy4wMTg4IDcuMTAwOTggMTYuNjIxMUM3LjQ5ODY3IDE2LjIyMzQgOC4wMzgwNiAxNiA4LjYwMDQ4IDE2SDE3Ljg5NzdDMTguNDYwMSAxNiAxOC45OTk1IDE2LjIyMzQgMTkuMzk3MiAxNi42MjExQzE5Ljc5NDkgMTcuMDE4OCAyMC4wMTgzIDE3LjU1ODIgMjAuMDE4MyAxOC4xMjA2VjE4LjM4NThDMjAuMDE4MyAxOC42MjgzIDIwLjAxODMgMjAuMDI0NiAxOS4xNDUxIDIxLjM3NjZDMTguMjMyNSAyMi43ODk1IDE2LjQ2OTQgMjQgMTMuMjQ5MSAyNEMxMC4wMjg4IDI0IDguMjY1NzEgMjIuNzg5NSA3LjM1MzEgMjEuMzc2NkM2LjQ3OTg3IDIwLjAyNDYgNi40Nzk4NyAxOC42Mjc3IDYuNDc5ODcgMTguMzg1OFYxOC4xMjA2WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM5OEEyQjNcIiBzdHJva2Utd2lkdGg9XCIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFzaz1cInVybCgjcGF0aC02LWluc2lkZS0yXzcwN18xMzEwNilcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5mb290ZmFsbENhcmQ/Lm1hbGVSYXRlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LmZvb3RmYWxsQ2FyZD8ubWFsZVJhdGUgOictLSd9fSVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5NYWxlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5mb290ZmFsbENhcmQ/LmZlbWFsZVJhdGUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8uZm9vdGZhbGxDYXJkPy5mZW1hbGVSYXRlIDonLS0nfX0lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+RmVtYWxlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2VsZWN0ZWRUYWIgPT09J2NvbnZlcnNpb24nXCIgY2xhc3M9XCJsZWZ0LWJhclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvcC1oZWFkZXIgdGV4dC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1iYXItY291bnRcIiBbbmdTdHlsZV09XCJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXNpemUnOiAoZ2V0T3ZlcmFsbENhcmREYXRhPy5jb252ZXJzaW9uQ2FyZD8uY29udmVyc2lvbkNvdW50LnRvTG9jYWxlU3RyaW5nKCk/Lmxlbmd0aCA+IDUgPyAnMjRweCcgOiAnMzZweCcpIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVwiPnt7Z2V0T3ZlcmFsbENhcmREYXRhPy5jb252ZXJzaW9uQ2FyZD8uY29udmVyc2lvbkNvdW50ID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5jb252ZXJzaW9uQ2FyZD8uY29udmVyc2lvbkNvdW50LnRvTG9jYWxlU3RyaW5nKCdlbi1JTicpIDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1iYXItdGl0bGVcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJyA/ICdNb3JlIHRoYW4gJytcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmVhdHVyZUNvbmZpZz8uY29udmVyc2lvbi52YWx1ZSsgJyBtaW5zJyA6J0NvbnZlcnNpb24nfX0gQ291bnQ8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidy0xMDBcIj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE3NFwiIGhlaWdodD1cIjJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE5NCAyXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggb3BhY2l0eT1cIjAuNFwiIGQ9XCJNMSAxTDE5MyAxXCIgc3Ryb2tlPVwiIzk5REFGRlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNSBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMyAyTDMgMTRIMTJMMTEgMjJMMjEgMTBIMTJMMTMgMlpcIiBzdHJva2U9XCIjOThBMkIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/LmNvbnZlcnNpb25DYXJkPy5jb252ZXJzaW9uUmF0ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5jb252ZXJzaW9uQ2FyZD8uY29udmVyc2lvblJhdGUgOictLSd9fSVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJyA/ICdNb3JlIHRoYW4gJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgZmVhdHVyZUNvbmZpZz8uY29udmVyc2lvbi52YWx1ZSArICcgbWlucycgOidDb252ZXJzaW9uJ319IFJhdGU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInRoaXMub2JqRGF0YVRyYWZmaWMubm9iID09PSBmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBteS01IG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzIDJMMyAxNEgxMkwxMSAyMkwyMSAxMEgxMkwxMyAyWlwiIHN0cm9rZT1cIiM5OEEyQjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8uY29udmVyc2lvbkNhcmQ/Lm1pblJhdGUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8uY29udmVyc2lvbkNhcmQ/Lm1pblJhdGUgOictLSd9fSVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj41IC0gMTUgTWluczwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwidGhpcy5vYmpEYXRhVHJhZmZpYy5ub2IgPT09IGZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMgMkwzIDE0SDEyTDExIDIyTDIxIDEwSDEyTDEzIDJaXCIgc3Ryb2tlPVwiIzk4QTJCM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5jb252ZXJzaW9uQ2FyZD8ubWF4UmF0ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5jb252ZXJzaW9uQ2FyZD8ubWF4UmF0ZSA6Jy0tJ319JVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPjE1IC0gNjAgTWluczwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwidGhpcy5vYmpEYXRhVHJhZmZpYy5ub2IgPT09IGZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMgMkwzIDE0SDEyTDExIDIyTDIxIDEwSDEyTDEzIDJaXCIgc3Ryb2tlPVwiIzk4QTJCM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5jb252ZXJzaW9uQ2FyZD8uYXZlcmFnZVJhdGUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8uY29udmVyc2lvbkNhcmQ/LmF2ZXJhZ2VSYXRlIDonLS0nfX0lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+MSBIciBvciBtb3JlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2VsZWN0ZWRUYWIgPT09J2VuZ2FnZXJzJ1wiIGNsYXNzPVwibGVmdC1iYXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b3AtaGVhZGVyIHRleHQtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtYmFyLWNvdW50XCIgW25nU3R5bGVdPVwie1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1zaXplJzogKGdldE92ZXJhbGxDYXJkRGF0YT8uZW5nYWdlcnNDYXJkPy5lbmdhZ2Vyc0NvdW50LnRvTG9jYWxlU3RyaW5nKCk/Lmxlbmd0aCA+IDUgPyAnMjRweCcgOiAnMzZweCcpIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVwiPnt7Z2V0T3ZlcmFsbENhcmREYXRhPy5lbmdhZ2Vyc0NhcmQ/LmVuZ2FnZXJzQ291bnQgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LmVuZ2FnZXJzQ2FyZD8uZW5nYWdlcnNDb3VudC50b0xvY2FsZVN0cmluZygnZW4tSU4nKSA6Jy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtYmFyLXRpdGxlXCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1MicgPyAnTW9yZSB0aGFuICcgK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWUgKyAnIG1pbnMnIDonRW5nYWdlcnMnfX0gQ291bnQ8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNSBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMyAyTDMgMTRIMTJMMTEgMjJMMjEgMTBIMTJMMTMgMlpcIiBzdHJva2U9XCIjOThBMkIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/LmVuZ2FnZXJzQ2FyZD8uZW5nYWdlcnNSYXRlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LmVuZ2FnZXJzQ2FyZD8uZW5nYWdlcnNSYXRlIDonLS0nfX0lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1MicgPyAnTW9yZSB0aGFuICdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSArICcgbWlucycgOidFbmdhZ2Vycyd9fSBSYXRlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMgMkwzIDE0SDEyTDExIDIyTDIxIDEwSDEyTDEzIDJaXCIgc3Ryb2tlPVwiIzk4QTJCM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5lbmdhZ2Vyc0NhcmQ/LmF2Z0R3ZWxsVGltZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5lbmdhZ2Vyc0NhcmQ/LmF2Z0R3ZWxsVGltZSA6Jy0tJ319IE1pbnNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5BdmcgZHdlbGwgVGltZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBteS01IG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzIDJMMyAxNEgxMkwxMSAyMkwyMSAxMEgxMkwxMyAyWlwiIHN0cm9rZT1cIiM5OEEyQjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8uZW5nYWdlcnNDYXJkPy5oaWdoRW5nYWdlbWVudFpvbmUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8uZW5nYWdlcnNDYXJkPy5oaWdoRW5nYWdlbWVudFpvbmUgOictLSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPkhpZ2ggRW5nYWdlbWVudCBab25lPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMgMkwzIDE0SDEyTDExIDIyTDIxIDEwSDEyTDEzIDJaXCIgc3Ryb2tlPVwiIzk4QTJCM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5lbmdhZ2Vyc0NhcmQ/Lmxvd0VuZ2FnZW1lbnRab25lID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LmVuZ2FnZXJzQ2FyZD8ubG93RW5nYWdlbWVudFpvbmUgOictLSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPkxvdyBFbmdhZ2VtZW50IFpvbmU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2VsZWN0ZWRUYWIgPT09J2JvdW5jZWQnXCIgY2xhc3M9XCJsZWZ0LWJhclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvcC1oZWFkZXIgdGV4dC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1iYXItY291bnRcIiBbbmdTdHlsZV09XCJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXNpemUnOiAoZ2V0T3ZlcmFsbENhcmREYXRhPy5ib3VuY2VkQ2FyZD8uYm91bmNlZENvdW50LnRvTG9jYWxlU3RyaW5nKCk/Lmxlbmd0aCA+IDUgPyAnMjRweCcgOiAnMzZweCcpIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVwiPnt7Z2V0T3ZlcmFsbENhcmREYXRhPy5ib3VuY2VkQ2FyZD8uYm91bmNlZENvdW50ID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5ib3VuY2VkQ2FyZD8uYm91bmNlZENvdW50LnRvTG9jYWxlU3RyaW5nKCdlbi1JTicpIDonLS0nfX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1iYXItdGl0bGVcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJyA/ICdMZXNzIHRoYW4gJyArXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSArICcgbWlucyc6J0JvdW5jZWQnfX0gQ291bnQ8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNSBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMyAyTDMgMTRIMTJMMTEgMjJMMjEgMTBIMTJMMTMgMlpcIiBzdHJva2U9XCIjOThBMkIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/LmJvdW5jZWRDYXJkPy5ib3VuY2VkUmF0ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5ib3VuY2VkQ2FyZD8uYm91bmNlZFJhdGUgOictLSd9fSVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJyA/ICdMZXNzIHRoYW4gJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlKycgbWlucyc6J0JvdW5jZWQnfX0gUmF0ZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBteS01IG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzIDJMMyAxNEgxMkwxMSAyMkwyMSAxMEgxMkwxMyAyWlwiIHN0cm9rZT1cIiM5OEEyQjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8uYm91bmNlZENhcmQ/LnBlYWtCb3VuY2VkSG91ciA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5ib3VuY2VkQ2FyZD8ucGVha0JvdW5jZWRIb3VyIDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5QZWFrIHt7aGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInID8gJ0xlc3NcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGFuICcrIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSArICcgbWlucyc6J0JvdW5jZWQnfX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNSBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMyAyTDMgMTRIMTJMMTEgMjJMMjEgMTBIMTJMMTMgMlpcIiBzdHJva2U9XCIjOThBMkIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/LmJvdW5jZWRDYXJkPy5tb3N0Q29tbW9uQWdlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LmJvdW5jZWRDYXJkPy5tb3N0Q29tbW9uQWdlIDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5Nb3N0IENvbW1vbiBBZ2U8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNSBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMyAyTDMgMTRIMTJMMTEgMjJMMjEgMTBIMTJMMTMgMlpcIiBzdHJva2U9XCIjOThBMkIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/LmJvdW5jZWRDYXJkPy5tYWxlUmF0ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5ib3VuY2VkQ2FyZD8ubWFsZVJhdGUgOictLSd9fSAlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+TWFsZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8uYm91bmNlZENhcmQ/LmZlbWFsZVJhdGUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8uYm91bmNlZENhcmQ/LmZlbWFsZVJhdGUgOictLSd9fSAlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+RmVtYWxlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNlbGVjdGVkVGFiID09PSdwb3RlbnRpYWxCdXllcnMnXCIgY2xhc3M9XCJsZWZ0LWJhclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvcC1oZWFkZXIgdGV4dC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1iYXItY291bnRcIiBbbmdTdHlsZV09XCJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXNpemUnOiAoZ2V0T3ZlcmFsbENhcmREYXRhPy5wb3RlbnRpYWxCdXllcnNDYXJkPy5wb3RlbnRpYWxCdXllcnNDb3VudC50b0xvY2FsZVN0cmluZygpPy5sZW5ndGggPiA1ID8gJzI0cHgnIDogJzM2cHgnKSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cIj57e2dldE92ZXJhbGxDYXJkRGF0YT8ucG90ZW50aWFsQnV5ZXJzQ2FyZD8ucG90ZW50aWFsQnV5ZXJzQ291bnQgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LnBvdGVudGlhbEJ1eWVyc0NhcmQ/LnBvdGVudGlhbEJ1eWVyc0NvdW50LnRvTG9jYWxlU3RyaW5nKCdlbi1JTicpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDonLS0nfX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1iYXItdGl0bGVcIj5Qb3RlbnRpYWwgQnV5ZXJzPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMgMkwzIDE0SDEyTDExIDIyTDIxIDEwSDEyTDEzIDJaXCIgc3Ryb2tlPVwiIzk4QTJCM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5wb3RlbnRpYWxCdXllcnNDYXJkPy5wb3RlbnRpYWxCdXllcnNSYXRlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LnBvdGVudGlhbEJ1eWVyc0NhcmQ/LnBvdGVudGlhbEJ1eWVyc1JhdGUgOictLSd9fSVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5CdXllcnMgUmF0ZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBteS01IG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTIwIDIxVjE5QzIwIDE3LjkzOTEgMTkuNTc4NiAxNi45MjE3IDE4LjgyODQgMTYuMTcxNkMxOC4wNzgzIDE1LjQyMTQgMTcuMDYwOSAxNSAxNiAxNUg4QzYuOTM5MTMgMTUgNS45MjE3MiAxNS40MjE0IDUuMTcxNTcgMTYuMTcxNkM0LjQyMTQzIDE2LjkyMTcgNCAxNy45MzkxIDQgMTlWMjFNMTYgN0MxNiA5LjIwOTE0IDE0LjIwOTEgMTEgMTIgMTFDOS43OTA4NiAxMSA4IDkuMjA5MTQgOCA3QzggNC43OTA4NiA5Ljc5MDg2IDMgMTIgM0MxNC4yMDkxIDMgMTYgNC43OTA4NiAxNiA3WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM5OEEyQjNcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8ucG90ZW50aWFsQnV5ZXJzQ2FyZD8uc2luZ2xlQ291bnQgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8ucG90ZW50aWFsQnV5ZXJzQ2FyZD8uc2luZ2xlQ291bnQudG9Mb2NhbGVTdHJpbmcoJ2VuLUlOJylcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Jy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+U2luZ2xlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMjZcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjYgMjRcIiBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMjZcIiBoZWlnaHQ9XCIyNFwiIGZpbGw9XCIjRENEQ0RDXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB4PVwiLTQ2MC41XCIgeT1cIi0zNDAuNVwiIHdpZHRoPVwiNzgzXCIgaGVpZ2h0PVwiMTk0N1wiIHJ4PVwiNC41XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk3NDdGRlwiIHN0cm9rZS1kYXNoYXJyYXk9XCIxMCA1XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWFzayBpZD1cInBhdGgtMi1pbnNpZGUtMV83MDdfMTMxMDZcIiBmaWxsPVwid2hpdGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNLTE4OSAtODlDLTE4OSAtOTUuNjI3NCAtMTgzLjYyNyAtMTAxIC0xNzcgLTEwMUgyOTVDMzAxLjYyNyAtMTAxIDMwNyAtOTUuNjI3NCAzMDcgLTg5Vjg1QzMwNyA5MS42Mjc0IDMwMS42MjcgOTcgMjk1IDk3SC0xNzdDLTE4My42MjcgOTcgLTE4OSA5MS42Mjc0IC0xODkgODVWLTg5WlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXNrPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNLTE4OSAtODlDLTE4OSAtOTUuNjI3NCAtMTgzLjYyNyAtMTAxIC0xNzcgLTEwMUgyOTVDMzAxLjYyNyAtMTAxIDMwNyAtOTUuNjI3NCAzMDcgLTg5Vjg1QzMwNyA5MS42Mjc0IDMwMS42MjcgOTcgMjk1IDk3SC0xNzdDLTE4My42MjcgOTcgLTE4OSA5MS42Mjc0IC0xODkgODVWLTg5WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0tMTkwIC04OUMtMTkwIC05Ni4xNzk3IC0xODQuMTggLTEwMiAtMTc3IC0xMDJIMjk0QzMwMS4xOCAtMTAyIDMwNyAtOTYuMTc5NyAzMDcgLTg5QzMwNyAtOTUuMDc1MSAzMDEuNjI3IC0xMDAgMjk1IC0xMDBILTE3N0MtMTgzLjA3NSAtMTAwIC0xODggLTk1LjA3NTEgLTE4OCAtODlILTE5MFpNMzA3IDg1QzMwNyA5Mi4xNzk3IDMwMS4xOCA5OCAyOTQgOThILTE3N0MtMTg0LjE4IDk4IC0xOTAgOTIuMTc5NyAtMTkwIDg1SC0xODhDLTE4OCA5MS4wNzUxIC0xODMuMDc1IDk2IC0xNzcgOTZIMjk1QzMwMS42MjcgOTYgMzA3IDkxLjA3NTEgMzA3IDg1Wk0tMTc3IDk4Qy0xODQuMTggOTggLTE5MCA5Mi4xNzk3IC0xOTAgODVWLTg5Qy0xOTAgLTk2LjE3OTcgLTE4NC4xOCAtMTAyIC0xNzcgLTEwMlYtMTAwQy0xODMuMDc1IC0xMDAgLTE4OCAtOTUuMDc1MSAtMTg4IC04OVY4NUMtMTg4IDkxLjA3NTEgLTE4My4wNzUgOTYgLTE3NyA5NlY5OFpNMzA3IC0xMDFWOTdWLTEwMVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiI0QwRDVERFwiIG1hc2s9XCJ1cmwoI3BhdGgtMi1pbnNpZGUtMV83MDdfMTMxMDYpXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWFzayBpZD1cInBhdGgtNi1pbnNpZGUtMl83MDdfMTMxMDZcIiBmaWxsPVwid2hpdGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNy43MTA2NCA3LjM4NDYyQzguMTk1NTIgNy4zODQ2MiA4LjY3NTY1IDcuMjg5MTEgOS4xMjM2MiA3LjEwMzU2QzkuNTcxNTkgNi45MTggOS45Nzg2MyA2LjY0NjAzIDEwLjMyMTUgNi4zMDMxNkMxMC42NjQ0IDUuOTYwMyAxMC45MzYzIDUuNTUzMjYgMTEuMTIxOSA1LjEwNTI5QzExLjMwNzQgNC42NTczMiAxMS40MDI5IDQuMTc3MTkgMTEuNDAyOSAzLjY5MjMxQzExLjQwMjkgMy4yMDc0MyAxMS4zMDc0IDIuNzI3MjkgMTEuMTIxOSAyLjI3OTMyQzEwLjkzNjMgMS44MzEzNSAxMC42NjQ0IDEuNDI0MzEgMTAuMzIxNSAxLjA4MTQ1QzkuOTc4NjMgMC43Mzg1OSA5LjU3MTU5IDAuNDY2NjE2IDkuMTIzNjIgMC4yODEwNkM4LjY3NTY1IDAuMDk1NTA0MyA4LjE5NTUyIC03LjIyNTI5ZS0wOSA3LjcxMDY0IDBDNi43MzEzOCAxLjQ1OTIxZS0wOCA1Ljc5MjIyIDAuMzg5MDEgNS4wOTk3OCAxLjA4MTQ1QzQuNDA3MzQgMS43NzM4OSA0LjAxODMzIDIuNzEzMDUgNC4wMTgzMyAzLjY5MjMxQzQuMDE4MzMgNC42NzE1NyA0LjQwNzM0IDUuNjEwNzIgNS4wOTk3OCA2LjMwMzE2QzUuNzkyMjIgNi45OTU2MSA2LjczMTM4IDcuMzg0NjIgNy43MTA2NCA3LjM4NDYyWk0xOC43ODc2IDcuMzg0NjJDMTkuMjcyNCA3LjM4NDYyIDE5Ljc1MjYgNy4yODkxMSAyMC4yMDA1IDcuMTAzNTZDMjAuNjQ4NSA2LjkxOCAyMS4wNTU2IDYuNjQ2MDMgMjEuMzk4NCA2LjMwMzE2QzIxLjc0MTMgNS45NjAzIDIyLjAxMzMgNS41NTMyNiAyMi4xOTg4IDUuMTA1MjlDMjIuMzg0NCA0LjY1NzMyIDIyLjQ3OTkgNC4xNzcxOSAyMi40Nzk5IDMuNjkyMzFDMjIuNDc5OSAzLjIwNzQzIDIyLjM4NDQgMi43MjcyOSAyMi4xOTg4IDIuMjc5MzJDMjIuMDEzMyAxLjgzMTM1IDIxLjc0MTMgMS40MjQzMSAyMS4zOTg0IDEuMDgxNDVDMjEuMDU1NiAwLjczODU5IDIwLjY0ODUgMC40NjY2MTYgMjAuMjAwNSAwLjI4MTA2QzE5Ljc1MjYgMC4wOTU1MDQzIDE5LjI3MjQgLTcuMjI1MjllLTA5IDE4Ljc4NzYgMEMxNy44MDgzIDEuNDU5MjFlLTA4IDE2Ljg2OTEgMC4zODkwMSAxNi4xNzY3IDEuMDgxNDVDMTUuNDg0MyAxLjc3Mzg5IDE1LjA5NTMgMi43MTMwNSAxNS4wOTUzIDMuNjkyMzFDMTUuMDk1MyA0LjY3MTU3IDE1LjQ4NDMgNS42MTA3MiAxNi4xNzY3IDYuMzAzMTZDMTYuODY5MSA2Ljk5NTYxIDE3LjgwODMgNy4zODQ2MiAxOC43ODc2IDcuMzg0NjJaTTAuOTQxNDA2IDEwLjczNkMwLjk0MTQwNiAxMC40NTc1IDAuOTk2MjU4IDEwLjE4MTggMS4xMDI4MyA5LjkyNDQ4QzEuMjA5NCA5LjY2NzE5IDEuMzY1NiA5LjQzMzQyIDEuNTYyNTIgOS4yMzY1QzEuNzU5NDQgOS4wMzk1OCAxLjk5MzIxIDguODgzMzggMi4yNTA1IDguNzc2ODFDMi41MDc3OCA4LjY3MDI0IDIuNzgzNTQgOC42MTUzOSAzLjA2MjAyIDguNjE1MzlIOC45ODQ0OEM4LjU1MTY5IDkuMzYzNDUgOC4zMjQ1MiAxMC4yMTI3IDguMzI2MDIgMTEuMDc2OUM4LjMyNTE5IDExLjc3NTUgOC40NzM0MSAxMi40NjYyIDguNzYwNzkgMTMuMTAyOUM5LjA0ODE2IDEzLjczOTYgOS40NjgwNyAxNC4zMDc3IDkuOTkyNDggMTQuNzY5Mkg4LjYwMDQ4QzguMDE0MTggMTQuNzY4NyA3LjQzODAzIDE0LjkyMjIgNi45Mjk2OSAxNS4yMTQ0QzYuNDIxMzQgMTUuNTA2NSA1Ljk5ODY0IDE1LjkyNyA1LjcwMzg3IDE2LjQzMzhDMy43MjExIDE2LjA0NDkgMi41MTYxOCAxNS4wNzgyIDEuODE0NjQgMTMuOTkyQzAuOTQxNDA2IDEyLjY0IDAuOTQxNDA2IDExLjI0MzEgMC45NDE0MDYgMTEuMDAxMlYxMC43MzZaTTE3Ljg5NzcgMTQuNzY5MkMxOC40ODQgMTQuNzY4NyAxOS4wNjAyIDE0LjkyMjIgMTkuNTY4NSAxNS4yMTQ0QzIwLjA3NjkgMTUuNTA2NSAyMC40OTk2IDE1LjkyNyAyMC43OTQzIDE2LjQzMzhDMjIuNzc3MSAxNi4wNDQ5IDIzLjk4MiAxNS4wNzgyIDI0LjY4MzYgMTMuOTkyQzI1LjU1NjggMTIuNjQgMjUuNTU2OCAxMS4yNDMxIDI1LjU1NjggMTEuMDAxMlYxMC43MzY2QzI1LjU1NjkgMTAuNDU4MSAyNS41MDIxIDEwLjE4MjMgMjUuMzk1NSA5LjkyNDlDMjUuMjg5IDkuNjY3NTUgMjUuMTMyOCA5LjQzMzcgMjQuOTM1OSA5LjIzNjcyQzI0LjczOSA5LjAzOTczIDI0LjUwNTIgOC44ODM0OCAyNC4yNDc4IDguNzc2ODdDMjMuOTkwNSA4LjY3MDI2IDIzLjcxNDcgOC42MTUzOSAyMy40MzYyIDguNjE1MzlIMTcuNTEzN0MxNy45NDY1IDkuMzYzNDUgMTguMTczNyAxMC4yMTI3IDE4LjE3MjIgMTEuMDc2OUMxOC4xNzMgMTEuNzc1NSAxOC4wMjQ4IDEyLjQ2NjIgMTcuNzM3NCAxMy4xMDI5QzE3LjQ1IDEzLjczOTYgMTcuMDMwMSAxNC4zMDc3IDE2LjUwNTcgMTQuNzY5MkgxNy44OTc3Wk0xNi45NDE0IDExLjA3NjlDMTYuOTQxNCAxMi4wNTYyIDE2LjU1MjQgMTIuOTk1MyAxNS44NiAxMy42ODc4QzE1LjE2NzUgMTQuMzgwMiAxNC4yMjg0IDE0Ljc2OTIgMTMuMjQ5MSAxNC43NjkyQzEyLjI2OTggMTQuNzY5MiAxMS4zMzA3IDE0LjM4MDIgMTAuNjM4MiAxMy42ODc4QzkuOTQ1OCAxMi45OTUzIDkuNTU2NzkgMTIuMDU2MiA5LjU1Njc5IDExLjA3NjlDOS41NTY3OSAxMC4wOTc3IDkuOTQ1OCA5LjE1ODUxIDEwLjYzODIgOC40NjYwN0MxMS4zMzA3IDcuNzczNjMgMTIuMjY5OCA3LjM4NDYyIDEzLjI0OTEgNy4zODQ2MkMxNC4yMjg0IDcuMzg0NjIgMTUuMTY3NSA3Ljc3MzYzIDE1Ljg2IDguNDY2MDdDMTYuNTUyNCA5LjE1ODUxIDE2Ljk0MTQgMTAuMDk3NyAxNi45NDE0IDExLjA3NjlaTTYuNDc5ODcgMTguMTIwNkM2LjQ3OTg3IDE3LjU1ODIgNi43MDMyOSAxNy4wMTg4IDcuMTAwOTggMTYuNjIxMUM3LjQ5ODY3IDE2LjIyMzQgOC4wMzgwNiAxNiA4LjYwMDQ4IDE2SDE3Ljg5NzdDMTguNDYwMSAxNiAxOC45OTk1IDE2LjIyMzQgMTkuMzk3MiAxNi42MjExQzE5Ljc5NDkgMTcuMDE4OCAyMC4wMTgzIDE3LjU1ODIgMjAuMDE4MyAxOC4xMjA2VjE4LjM4NThDMjAuMDE4MyAxOC42MjgzIDIwLjAxODMgMjAuMDI0NiAxOS4xNDUxIDIxLjM3NjZDMTguMjMyNSAyMi43ODk1IDE2LjQ2OTQgMjQgMTMuMjQ5MSAyNEMxMC4wMjg4IDI0IDguMjY1NzEgMjIuNzg5NSA3LjM1MzEgMjEuMzc2NkM2LjQ3OTg3IDIwLjAyNDYgNi40Nzk4NyAxOC42Mjc3IDYuNDc5ODcgMTguMzg1OFYxOC4xMjA2WlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXNrPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNy43MTA2NCA3LjM4NDYyQzguMTk1NTIgNy4zODQ2MiA4LjY3NTY1IDcuMjg5MTEgOS4xMjM2MiA3LjEwMzU2QzkuNTcxNTkgNi45MTggOS45Nzg2MyA2LjY0NjAzIDEwLjMyMTUgNi4zMDMxNkMxMC42NjQ0IDUuOTYwMyAxMC45MzYzIDUuNTUzMjYgMTEuMTIxOSA1LjEwNTI5QzExLjMwNzQgNC42NTczMiAxMS40MDI5IDQuMTc3MTkgMTEuNDAyOSAzLjY5MjMxQzExLjQwMjkgMy4yMDc0MyAxMS4zMDc0IDIuNzI3MjkgMTEuMTIxOSAyLjI3OTMyQzEwLjkzNjMgMS44MzEzNSAxMC42NjQ0IDEuNDI0MzEgMTAuMzIxNSAxLjA4MTQ1QzkuOTc4NjMgMC43Mzg1OSA5LjU3MTU5IDAuNDY2NjE2IDkuMTIzNjIgMC4yODEwNkM4LjY3NTY1IDAuMDk1NTA0MyA4LjE5NTUyIC03LjIyNTI5ZS0wOSA3LjcxMDY0IDBDNi43MzEzOCAxLjQ1OTIxZS0wOCA1Ljc5MjIyIDAuMzg5MDEgNS4wOTk3OCAxLjA4MTQ1QzQuNDA3MzQgMS43NzM4OSA0LjAxODMzIDIuNzEzMDUgNC4wMTgzMyAzLjY5MjMxQzQuMDE4MzMgNC42NzE1NyA0LjQwNzM0IDUuNjEwNzIgNS4wOTk3OCA2LjMwMzE2QzUuNzkyMjIgNi45OTU2MSA2LjczMTM4IDcuMzg0NjIgNy43MTA2NCA3LjM4NDYyWk0xOC43ODc2IDcuMzg0NjJDMTkuMjcyNCA3LjM4NDYyIDE5Ljc1MjYgNy4yODkxMSAyMC4yMDA1IDcuMTAzNTZDMjAuNjQ4NSA2LjkxOCAyMS4wNTU2IDYuNjQ2MDMgMjEuMzk4NCA2LjMwMzE2QzIxLjc0MTMgNS45NjAzIDIyLjAxMzMgNS41NTMyNiAyMi4xOTg4IDUuMTA1MjlDMjIuMzg0NCA0LjY1NzMyIDIyLjQ3OTkgNC4xNzcxOSAyMi40Nzk5IDMuNjkyMzFDMjIuNDc5OSAzLjIwNzQzIDIyLjM4NDQgMi43MjcyOSAyMi4xOTg4IDIuMjc5MzJDMjIuMDEzMyAxLjgzMTM1IDIxLjc0MTMgMS40MjQzMSAyMS4zOTg0IDEuMDgxNDVDMjEuMDU1NiAwLjczODU5IDIwLjY0ODUgMC40NjY2MTYgMjAuMjAwNSAwLjI4MTA2QzE5Ljc1MjYgMC4wOTU1MDQzIDE5LjI3MjQgLTcuMjI1MjllLTA5IDE4Ljc4NzYgMEMxNy44MDgzIDEuNDU5MjFlLTA4IDE2Ljg2OTEgMC4zODkwMSAxNi4xNzY3IDEuMDgxNDVDMTUuNDg0MyAxLjc3Mzg5IDE1LjA5NTMgMi43MTMwNSAxNS4wOTUzIDMuNjkyMzFDMTUuMDk1MyA0LjY3MTU3IDE1LjQ4NDMgNS42MTA3MiAxNi4xNzY3IDYuMzAzMTZDMTYuODY5MSA2Ljk5NTYxIDE3LjgwODMgNy4zODQ2MiAxOC43ODc2IDcuMzg0NjJaTTAuOTQxNDA2IDEwLjczNkMwLjk0MTQwNiAxMC40NTc1IDAuOTk2MjU4IDEwLjE4MTggMS4xMDI4MyA5LjkyNDQ4QzEuMjA5NCA5LjY2NzE5IDEuMzY1NiA5LjQzMzQyIDEuNTYyNTIgOS4yMzY1QzEuNzU5NDQgOS4wMzk1OCAxLjk5MzIxIDguODgzMzggMi4yNTA1IDguNzc2ODFDMi41MDc3OCA4LjY3MDI0IDIuNzgzNTQgOC42MTUzOSAzLjA2MjAyIDguNjE1MzlIOC45ODQ0OEM4LjU1MTY5IDkuMzYzNDUgOC4zMjQ1MiAxMC4yMTI3IDguMzI2MDIgMTEuMDc2OUM4LjMyNTE5IDExLjc3NTUgOC40NzM0MSAxMi40NjYyIDguNzYwNzkgMTMuMTAyOUM5LjA0ODE2IDEzLjczOTYgOS40NjgwNyAxNC4zMDc3IDkuOTkyNDggMTQuNzY5Mkg4LjYwMDQ4QzguMDE0MTggMTQuNzY4NyA3LjQzODAzIDE0LjkyMjIgNi45Mjk2OSAxNS4yMTQ0QzYuNDIxMzQgMTUuNTA2NSA1Ljk5ODY0IDE1LjkyNyA1LjcwMzg3IDE2LjQzMzhDMy43MjExIDE2LjA0NDkgMi41MTYxOCAxNS4wNzgyIDEuODE0NjQgMTMuOTkyQzAuOTQxNDA2IDEyLjY0IDAuOTQxNDA2IDExLjI0MzEgMC45NDE0MDYgMTEuMDAxMlYxMC43MzZaTTE3Ljg5NzcgMTQuNzY5MkMxOC40ODQgMTQuNzY4NyAxOS4wNjAyIDE0LjkyMjIgMTkuNTY4NSAxNS4yMTQ0QzIwLjA3NjkgMTUuNTA2NSAyMC40OTk2IDE1LjkyNyAyMC43OTQzIDE2LjQzMzhDMjIuNzc3MSAxNi4wNDQ5IDIzLjk4MiAxNS4wNzgyIDI0LjY4MzYgMTMuOTkyQzI1LjU1NjggMTIuNjQgMjUuNTU2OCAxMS4yNDMxIDI1LjU1NjggMTEuMDAxMlYxMC43MzY2QzI1LjU1NjkgMTAuNDU4MSAyNS41MDIxIDEwLjE4MjMgMjUuMzk1NSA5LjkyNDlDMjUuMjg5IDkuNjY3NTUgMjUuMTMyOCA5LjQzMzcgMjQuOTM1OSA5LjIzNjcyQzI0LjczOSA5LjAzOTczIDI0LjUwNTIgOC44ODM0OCAyNC4yNDc4IDguNzc2ODdDMjMuOTkwNSA4LjY3MDI2IDIzLjcxNDcgOC42MTUzOSAyMy40MzYyIDguNjE1MzlIMTcuNTEzN0MxNy45NDY1IDkuMzYzNDUgMTguMTczNyAxMC4yMTI3IDE4LjE3MjIgMTEuMDc2OUMxOC4xNzMgMTEuNzc1NSAxOC4wMjQ4IDEyLjQ2NjIgMTcuNzM3NCAxMy4xMDI5QzE3LjQ1IDEzLjczOTYgMTcuMDMwMSAxNC4zMDc3IDE2LjUwNTcgMTQuNzY5MkgxNy44OTc3Wk0xNi45NDE0IDExLjA3NjlDMTYuOTQxNCAxMi4wNTYyIDE2LjU1MjQgMTIuOTk1MyAxNS44NiAxMy42ODc4QzE1LjE2NzUgMTQuMzgwMiAxNC4yMjg0IDE0Ljc2OTIgMTMuMjQ5MSAxNC43NjkyQzEyLjI2OTggMTQuNzY5MiAxMS4zMzA3IDE0LjM4MDIgMTAuNjM4MiAxMy42ODc4QzkuOTQ1OCAxMi45OTUzIDkuNTU2NzkgMTIuMDU2MiA5LjU1Njc5IDExLjA3NjlDOS41NTY3OSAxMC4wOTc3IDkuOTQ1OCA5LjE1ODUxIDEwLjYzODIgOC40NjYwN0MxMS4zMzA3IDcuNzczNjMgMTIuMjY5OCA3LjM4NDYyIDEzLjI0OTEgNy4zODQ2MkMxNC4yMjg0IDcuMzg0NjIgMTUuMTY3NSA3Ljc3MzYzIDE1Ljg2IDguNDY2MDdDMTYuNTUyNCA5LjE1ODUxIDE2Ljk0MTQgMTAuMDk3NyAxNi45NDE0IDExLjA3NjlaTTYuNDc5ODcgMTguMTIwNkM2LjQ3OTg3IDE3LjU1ODIgNi43MDMyOSAxNy4wMTg4IDcuMTAwOTggMTYuNjIxMUM3LjQ5ODY3IDE2LjIyMzQgOC4wMzgwNiAxNiA4LjYwMDQ4IDE2SDE3Ljg5NzdDMTguNDYwMSAxNiAxOC45OTk1IDE2LjIyMzQgMTkuMzk3MiAxNi42MjExQzE5Ljc5NDkgMTcuMDE4OCAyMC4wMTgzIDE3LjU1ODIgMjAuMDE4MyAxOC4xMjA2VjE4LjM4NThDMjAuMDE4MyAxOC42MjgzIDIwLjAxODMgMjAuMDI0NiAxOS4xNDUxIDIxLjM3NjZDMTguMjMyNSAyMi43ODk1IDE2LjQ2OTQgMjQgMTMuMjQ5MSAyNEMxMC4wMjg4IDI0IDguMjY1NzEgMjIuNzg5NSA3LjM1MzEgMjEuMzc2NkM2LjQ3OTg3IDIwLjAyNDYgNi40Nzk4NyAxOC42Mjc3IDYuNDc5ODcgMTguMzg1OFYxOC4xMjA2WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM5OEEyQjNcIiBzdHJva2Utd2lkdGg9XCIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFzaz1cInVybCgjcGF0aC02LWluc2lkZS0yXzcwN18xMzEwNilcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5wb3RlbnRpYWxCdXllcnNDYXJkPy5ncm91cENvdW50ID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LnBvdGVudGlhbEJ1eWVyc0NhcmQ/Lmdyb3VwQ291bnQudG9Mb2NhbGVTdHJpbmcoJ2VuLUlOJylcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Jy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+R3JvdXA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNSBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMyAyTDMgMTRIMTJMMTEgMjJMMjEgMTBIMTJMMTMgMlpcIiBzdHJva2U9XCIjOThBMkIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/LnBvdGVudGlhbEJ1eWVyc0NhcmQ/Lm1vc3RDb21tb25BZ2UgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8ucG90ZW50aWFsQnV5ZXJzQ2FyZD8ubW9zdENvbW1vbkFnZSA6Jy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+TW9zdCBDb21tb24gQWdlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMgMkwzIDE0SDEyTDExIDIyTDIxIDEwSDEyTDEzIDJaXCIgc3Ryb2tlPVwiIzk4QTJCM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5wb3RlbnRpYWxCdXllcnNDYXJkPy5tYWxlUmF0ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5wb3RlbnRpYWxCdXllcnNDYXJkPy5tYWxlUmF0ZSA6Jy0tJ319ICVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5NYWxlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5wb3RlbnRpYWxCdXllcnNDYXJkPy5mZW1hbGVSYXRlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LnBvdGVudGlhbEJ1eWVyc0NhcmQ/LmZlbWFsZVJhdGUgOictLSd9fSAlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+RmVtYWxlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNlbGVjdGVkVGFiID09PSdtaXNzZWRPcHBvcnR1bml0eSdcIiBjbGFzcz1cImxlZnQtYmFyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9wLWhlYWRlciB0ZXh0LWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWJhci1jb3VudFwiIFtuZ1N0eWxlXT1cIntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtc2l6ZSc6IChnZXRPdmVyYWxsQ2FyZERhdGE/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FyZD8ubWlzc2VkT3Bwb3J0dW5pdHlDb3VudC50b0xvY2FsZVN0cmluZygpPy5sZW5ndGggPiA1ID8gJzI0cHgnIDogJzM2cHgnKSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cIj57e2dldE92ZXJhbGxDYXJkRGF0YT8ubWlzc2VkT3Bwb3J0dW5pdHlDYXJkPy5taXNzZWRPcHBvcnR1bml0eUNvdW50ID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/Lm1pc3NlZE9wcG9ydHVuaXR5Q291bnQudG9Mb2NhbGVTdHJpbmcoJ2VuLUlOJylcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOictLSd9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWJhci10aXRsZVwiPnt7aGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlGcm9tLnZhbHVlKycgLSAnK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZWF0dXJlQ29uZmlnPy5taXNzZWRPcHBvcnR1bml0eVRvLnZhbHVlICsgJyBtaW5zJyA6J01pc3NlZCBvcHBvcnR1bml0eSd9fSBDb3VudFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBteS01IG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzIDJMMyAxNEgxMkwxMSAyMkwyMSAxMEgxMkwxMyAyWlwiIHN0cm9rZT1cIiM5OEEyQjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8ubWlzc2VkT3Bwb3J0dW5pdHlDYXJkPy5taXNzZWRPcHBvcnR1bml0eVJhdGUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8ubWlzc2VkT3Bwb3J0dW5pdHlDYXJkPy5taXNzZWRPcHBvcnR1bml0eVJhdGUgOictLSd9fSVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJyA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlGcm9tLnZhbHVlKyAnIC0gJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICtmZWF0dXJlQ29uZmlnPy5taXNzZWRPcHBvcnR1bml0eVRvLnZhbHVlICsgJyBtaW5zJyA6J01pc3NlZCBvcHBvcnR1bml0eSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJhdGU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0nNDUyJ1wiIGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBteS01IG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzIDJMMyAxNEgxMkwxMSAyMkwyMSAxMEgxMkwxMyAyWlwiIHN0cm9rZT1cIiM5OEEyQjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcmQtbGFiZWwgaGVhZGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgZ2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/LmN1cnJlbmN5XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fTwvc3Bhbj4mbmJzcDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8ubWlzc2VkT3Bwb3J0dW5pdHlDYXJkPy5wb3RlbnRpYWxSZXZlbnVlTG9zcyA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZ2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/LnBvdGVudGlhbFJldmVudWVMb3NzIHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bWJlcikgOictLSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCIgW25nU3R5bGVdPVwie1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1zaXplJzogKGdldE92ZXJhbGxDYXJkRGF0YT8ubWlzc2VkT3Bwb3J0dW5pdHlDYXJkPy5wb3RlbnRpYWxSZXZlbnVlTG9zcy50b0xvY2FsZVN0cmluZygpPy5sZW5ndGggPiA4ID8gJzE2cHgnIDogJzE4cHgnKX1cIj48c3BhbiBjbGFzcz1cIm1lLTFcIiAqbmdJZj1cImdldE92ZXJhbGxDYXJkRGF0YT8ubWlzc2VkT3Bwb3J0dW5pdHlDYXJkPy5jdXJyZW5jeSA9PT0naW5yJ1wiPuKCuTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1lLTFcIiAqbmdJZj1cImdldE92ZXJhbGxDYXJkRGF0YT8ubWlzc2VkT3Bwb3J0dW5pdHlDYXJkPy5jdXJyZW5jeSA9PT0nZG9sbGFyJ1wiPiQ8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtZS0xXCIgKm5nSWY9XCJnZXRPdmVyYWxsQ2FyZERhdGE/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FyZD8uY3VycmVuY3kgPT09J2FlZCdcIj7Yry7YpTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8ubWlzc2VkT3Bwb3J0dW5pdHlDYXJkPy5wb3RlbnRpYWxSZXZlbnVlTG9zcyA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/LnBvdGVudGlhbFJldmVudWVMb3NzLnRvTG9jYWxlU3RyaW5nKCdlbi1JTicpIDonLS0nfX08L2Rpdj4tLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+UG90ZW50aWFsIFJldmVudWUgTG9zcyA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTIwIDIxVjE5QzIwIDE3LjkzOTEgMTkuNTc4NiAxNi45MjE3IDE4LjgyODQgMTYuMTcxNkMxOC4wNzgzIDE1LjQyMTQgMTcuMDYwOSAxNSAxNiAxNUg4QzYuOTM5MTMgMTUgNS45MjE3MiAxNS40MjE0IDUuMTcxNTcgMTYuMTcxNkM0LjQyMTQzIDE2LjkyMTcgNCAxNy45MzkxIDQgMTlWMjFNMTYgN0MxNiA5LjIwOTE0IDE0LjIwOTEgMTEgMTIgMTFDOS43OTA4NiAxMSA4IDkuMjA5MTQgOCA3QzggNC43OTA4NiA5Ljc5MDg2IDMgMTIgM0MxNC4yMDkxIDMgMTYgNC43OTA4NiAxNiA3WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM5OEEyQjNcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTEgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8ubWlzc2VkT3Bwb3J0dW5pdHlDYXJkPy5zaW5nbGVDb3VudCA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/LnNpbmdsZUNvdW50LnRvTG9jYWxlU3RyaW5nKCdlbi1JTicpOictLSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPlNpbmdsZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXgtMiBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI1XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjUgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNy42NTkxOCAxNi43NUgxNi45NTYxQzE3LjMxOTYgMTYuNzUgMTcuNjY4NyAxNi44OTQzIDE3LjkyNTggMTcuMTUxNEMxOC4xODI4IDE3LjQwODQgMTguMzI3MSAxNy43NTc2IDE4LjMyNzEgMTguMTIxMVYxOC4zODU3QzE4LjMyNzEgMTguNTc5MyAxOC4zMjU1IDE5LjY1NzkgMTcuNzA2MSAyMC43NTFMMTcuNTczMiAyMC45Njk3QzE2LjgxOTQgMjIuMTM2NyAxNS4zMTM3IDIzLjI1IDEyLjMwNzYgMjMuMjVDOS40ODkzNiAyMy4yNSA3Ljk4OTk2IDIyLjI3MTQgNy4xOTIzOCAyMS4xODc1TDcuMDQxOTkgMjAuOTY5N0M2LjI5MDI3IDE5LjgwNTkgNi4yODgwOSAxOC41OTE2IDYuMjg4MDkgMTguMzg1N1YxOC4xMjExQzYuMjg4MDkgMTcuODAzMSA2LjM5ODg0IDE3LjQ5NTggNi41OTg2MyAxNy4yNTJMNi42ODk0NSAxNy4xNTE0QzYuOTQ2NDkgMTYuODk0MyA3LjI5NTY3IDE2Ljc1IDcuNjU5MTggMTYuNzVaTTIuMTIxMDkgOS4zNjUyM0g2Ljg5OTQxQzYuNzI1MDEgOS45MTY1MiA2LjYzMzk3IDEwLjQ5MzEgNi42MzQ3NyAxMS4wNzYyQzYuNjMzOTUgMTEuNzgwOSA2Ljc2NDgxIDEyLjQ3ODYgNy4wMTk1MyAxMy4xMzM4TDcuMTM1NzQgMTMuNDExMUM3LjIzMTIxIDEzLjYyMjcgNy4zNDA4NiAxMy44MjcxIDcuNDYwOTQgMTQuMDI0NEM2LjkwMTU0IDE0LjA1MTEgNi4zNTM5IDE0LjE5MiA1Ljg1MTU2IDE0LjQzODVMNS42MTQyNiAxNC41NjQ1QzUuMTU3MTYgMTQuODI3MiA0Ljc1NyAxNS4xNzUgNC40MzM1OSAxNS41ODY5QzMuMDM2NzQgMTUuMjE1NSAyLjE2MzYxIDE0LjUxNjYgMS42MTkxNCAxMy43NTQ5TDEuNTAyOTMgMTMuNTg1QzAuNzUxMzU4IDEyLjQyMTIgMC43NSAxMS4yMDY5IDAuNzUgMTEuMDAxVjEwLjczNjNDMC43NSAxMC42MDEyIDAuNzY5NTEzIDEwLjQ2NjcgMC44MDg1OTQgMTAuMzM3OUwwLjg1NDQ5MiAxMC4yMTE5QzAuOTA2MTU0IDEwLjA4NzIgMC45NzUyMjUgOS45NzAyIDEuMDYwNTUgOS44NjYyMUwxLjE1MTM3IDkuNzY2NkMxLjI0Njg1IDkuNjcxMTMgMS4zNTU5NiA5LjU5MDc2IDEuNDc0NjEgOS41MjczNEwxLjU5NTcgOS40Njk3M0MxLjc2MTk5IDkuNDAwODUgMS45NDExIDkuMzY1MjMgMi4xMjEwOSA5LjM2NTIzWk0yMi40OTUxIDkuMzY1MjNDMjIuNjMwMSA5LjM2NTI3IDIyLjc2MzkgOS4zODU3NyAyMi44OTI2IDkuNDI0OEwyMy4wMTk1IDkuNDY5NzNDMjMuMTQ0MyA5LjUyMTQyIDIzLjI2MDMgOS41OTE0IDIzLjM2NDMgOS42NzY3NkwyMy40NjM5IDkuNzY2NkMyMy41NTkyIDkuODYyMDEgMjMuNjM5NyA5Ljk3MTMyIDIzLjcwMzEgMTAuMDg5OEwyMy43NjA3IDEwLjIxMTlDMjMuODI5NiAxMC4zNzgyIDIzLjg2NTMgMTAuNTU2MyAyMy44NjUyIDEwLjczNjNWMTEuMDAxQzIzLjg2NTIgMTEuMTk0IDIzLjg2MzcgMTIuMjczMSAyMy4yNDQxIDEzLjM2NjJMMjMuMTEyMyAxMy41ODVDMjIuNTc4NSAxNC40MTE0IDIxLjY4MTUgMTUuMTg4MSAyMC4xODA3IDE1LjU4NjlDMTkuODU3MyAxNS4xNzUyIDE5LjQ1NzkgMTQuODI3MSAxOS4wMDEgMTQuNTY0NUMxOC40MzYgMTQuMjM5OCAxNy44MDI0IDE0LjA1NTIgMTcuMTUzMyAxNC4wMjQ0QzE3LjIyMTUgMTMuOTEyNCAxNy4yODgzIDEzLjc5OTQgMTcuMzQ4NiAxMy42ODI2TDE3LjQ3OTUgMTMuNDExMUMxNy43NjkyIDEyLjc2OTEgMTcuOTM2IDEyLjA3OTYgMTcuOTcyNyAxMS4zNzc5TDE3Ljk4MDUgMTEuMDc2MkMxNy45ODEzIDEwLjQ5MzEgMTcuODkwMiA5LjkxNjUzIDE3LjcxNTggOS4zNjUyM0gyMi40OTUxWk0xMi4zMDc2IDguMTM0NzdDMTIuOTkwNSA4LjEzNDc3IDEzLjY0OTMgOC4zNzE2OSAxNC4xNzI5IDguODAwNzhMMTQuMzg4NyA4Ljk5NjA5QzE0Ljk0MDQgOS41NDc4OCAxNS4yNSAxMC4yOTY4IDE1LjI1IDExLjA3NzFDMTUuMjQ5OSAxMS43NTk3IDE1LjAxMjggMTIuNDE3OSAxNC41ODQgMTIuOTQxNEwxNC4zODg3IDEzLjE1NzJDMTMuODM2OSAxMy43MDkgMTMuMDg4IDE0LjAxOTUgMTIuMzA3NiAxNC4wMTk1QzExLjYyNDkgMTQuMDE5NSAxMC45NjY5IDEzLjc4MTUgMTAuNDQzNCAxMy4zNTI1TDEwLjIyNzUgMTMuMTU3MkM5LjY3NTggMTIuNjA1NSA5LjM2NTI5IDExLjg1NzQgOS4zNjUyMyAxMS4wNzcxQzkuMzY1MjMgMTAuMzk0NCA5LjYwMjI5IDkuNzM1NDggMTAuMDMxMiA5LjIxMTkxTDEwLjIyNzUgOC45OTYwOUMxMC43NzkzIDguNDQ0NTMgMTEuNTI3NSA4LjEzNDc5IDEyLjMwNzYgOC4xMzQ3N1pNNi43Njk1MyAwLjc1QzcuMDU5MjcgMC43NTAwMjkgNy4zNDY3OCAwLjc5MzE3IDcuNjIzMDUgMC44NzY5NTNMNy44OTU1MSAwLjk3MzYzM0M4LjE2MzMgMS4wODQ1NyA4LjQxMjQ5IDEuMjM0NzUgOC42MzU3NCAxLjQxNzk3TDguODQ5NjEgMS42MTEzM0M5LjA1NDQ5IDEuODE2MjEgOS4yMjgxMyAyLjA1MDEgOS4zNjQyNiAyLjMwNDY5TDkuNDg3MyAyLjU2NjQxQzkuNjM1MTcgMi45MjMzOCA5LjcxMTkxIDMuMzA1OTkgOS43MTE5MSAzLjY5MjM4QzkuNzExOSA0LjA3ODc1IDkuNjM1MTYgNC40NjE0IDkuNDg3MyA0LjgxODM2QzkuMzc2NDIgNS4wODYwMSA5LjIyNzA0IDUuMzM1NDMgOS4wNDM5NSA1LjU1ODU5TDguODQ5NjEgNS43NzI0NkM4LjU3NjQxIDYuMDQ1NjYgOC4yNTI0NSA2LjI2MzI3IDcuODk1NTEgNi40MTExM0M3LjUzODYyIDYuNTU4OTYgNy4xNTU4MiA2LjYzNDczIDYuNzY5NTMgNi42MzQ3N0w2LjQ3ODUyIDYuNjIwMTJDNS45MDExOSA2LjU2MjgxIDUuMzUzMDggNi4zMzY0MyA0LjkwNDMgNS45Njg3NUw0LjY4ODQ4IDUuNzcyNDZDNC4xMzY4OSA1LjIyMDcyIDMuODI3MTcgNC40NzI1NiAzLjgyNzE1IDMuNjkyMzhDMy44MjcxNSAzLjAwOTQ4IDQuMDY0MDYgMi4zNTA3NiA0LjQ5MzE2IDEuODI3MTVMNC42ODg0OCAxLjYxMTMzQzUuMTcxMjkgMS4xMjg1NiA1LjgwNDk4IDAuODMxNTA4IDYuNDc4NTIgMC43NjQ2NDhMNi43Njk1MyAwLjc1Wk0xNy44NDU3IDAuNzVDMTguMTM1NiAwLjc1IDE4LjQyMzggMC43OTMxIDE4LjcwMDIgMC44NzY5NTNMMTguOTcxNyAwLjk3MzYzM0MxOS4yMzk2IDEuMDg0NiAxOS40ODk2IDEuMjM0NjcgMTkuNzEyOSAxLjQxNzk3TDE5LjkyNjggMS42MTEzM0MyMC4xMzE2IDEuODE2MTIgMjAuMzA0MyAyLjA1MDIyIDIwLjQ0MDQgMi4zMDQ2OUwyMC41NjQ1IDIuNTY2NDFDMjAuNzEyMyAyLjkyMzM3IDIwLjc4ODEgMy4zMDYwMSAyMC43ODgxIDMuNjkyMzhDMjAuNzg4MSA0LjA3ODc1IDIwLjcxMjMgNC40NjE0MSAyMC41NjQ1IDQuODE4MzZDMjAuNDUzNiA1LjA4NiAyMC4zMDQyIDUuMzM1NDMgMjAuMTIxMSA1LjU1ODU5TDE5LjkyNjggNS43NzI0NkMxOS42NTM1IDYuMDQ1NjggMTkuMzI4NyA2LjI2MzI3IDE4Ljk3MTcgNi40MTExM0MxOC42MTQ5IDYuNTU4ODUgMTguMjMxOSA2LjYzNDc3IDE3Ljg0NTcgNi42MzQ3N0wxNy41NTU3IDYuNjIwMTJDMTYuOTc4MyA2LjU2Mjg1IDE2LjQzMDMgNi4zMzY0MSAxNS45ODE0IDUuOTY4NzVMMTUuNzY1NiA1Ljc3MjQ2QzE1LjIxNCA1LjIyMDcxIDE0LjkwNDMgNC40NzI2MiAxNC45MDQzIDMuNjkyMzhDMTQuOTA0MyAzLjAwOTQzIDE1LjE0MTEgMi4zNTA3NyAxNS41NzAzIDEuODI3MTVMMTUuNzY1NiAxLjYxMTMzQzE2LjI0ODUgMS4xMjg1NyAxNi44ODIxIDAuODMxNDYgMTcuNTU1NyAwLjc2NDY0OEwxNy44NDU3IDAuNzVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjEuNVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0xIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FyZD8uZ3JvdXBDb3VudCA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/Lmdyb3VwQ291bnQudG9Mb2NhbGVTdHJpbmcoJ2VuLUlOJyk6Jy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+R3JvdXA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBteS01IG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzIDJMMyAxNEgxMkwxMSAyMkwyMSAxMEgxMkwxMyAyWlwiIHN0cm9rZT1cIiM5OEEyQjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8ubWlzc2VkT3Bwb3J0dW5pdHlDYXJkPy5sb3dDb252ZXJzaW9uWm9uZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/Lmxvd0NvbnZlcnNpb25ab25lIDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5Mb3cgQ29udmVyc2lvbiBab25lPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMgMkwzIDE0SDEyTDExIDIyTDIxIDEwSDEyTDEzIDJaXCIgc3Ryb2tlPVwiIzk4QTJCM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/Lm1vc3RDb21tb25BZ2UgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8ubWlzc2VkT3Bwb3J0dW5pdHlDYXJkPy5tb3N0Q29tbW9uQWdlIDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5Nb3N0IENvbW1vbiBBZ2U8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNSBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMyAyTDMgMTRIMTJMMTEgMjJMMjEgMTBIMTJMMTMgMlpcIiBzdHJva2U9XCIjOThBMkIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FyZD8ubWFsZVJhdGUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8ubWlzc2VkT3Bwb3J0dW5pdHlDYXJkPy5tYWxlUmF0ZSA6Jy0tJ319ICVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5NYWxlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/LmZlbWFsZVJhdGUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8ubWlzc2VkT3Bwb3J0dW5pdHlDYXJkPy5mZW1hbGVSYXRlIDonLS0nfX0gJVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPkZlbWFsZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzZWxlY3RlZFRhYiA9PT0ndHJhZmZpYycgJiYgIWNoYXJ0bG9hZGluZyAmJiAhY2hhcnROb0RhdGFcIiBjbGFzcz1cImNvbC1tZC0xMCBoLTEwMCBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBweC0wXCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02IG10LTMgcHgtMFwiPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgYm9yZGVyLTAgcHQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcmQtbGFiZWxcIj5UcmFmZmljIERlbnNpdHkgPHN2ZyBwbGFjZW1lbnQ9XCJyaWdodFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5nYlRvb2x0aXA9XCJUcmFmZmljIGFuYWx5c2lzIGRpc3RyaWJ1dGlvbiBhY3Jvc3MgdGhlIGRheXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzM1Ml82ODgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNy45OTg3IDEwLjY2NjdWOC4wMDAwNE03Ljk5ODcgNS4zMzMzN0g4LjAwNTM2TTE0LjY2NTQgOC4wMDAwNEMxNC42NjU0IDExLjY4MTkgMTEuNjgwNiAxNC42NjY3IDcuOTk4NyAxNC42NjY3QzQuMzE2OCAxNC42NjY3IDEuMzMyMDMgMTEuNjgxOSAxLjMzMjAzIDguMDAwMDRDMS4zMzIwMyA0LjMxODE0IDQuMzE2OCAxLjMzMzM3IDcuOTk4NyAxLjMzMzM3QzExLjY4MDYgMS4zMzMzNyAxNC42NjU0IDQuMzE4MTQgMTQuNjY1NCA4LjAwMDA0WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8zMzUyXzY4OFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1zdWIgbWItMlwiPkJhc2VkIG9uIHt7Z2V0RGVuc2l0eUR3ZWxsRGF0YT8uZnJvbURhdGUgfCBkYXRlOidkZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1NTSwgeXl5eSd9fSDigJMge3tnZXREZW5zaXR5RHdlbGxEYXRhPy50b0RhdGUgfCBkYXRlOidkZCBNTU0sIHl5eXknfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdG9vbGJhciB0ZXh0LW5vd3JhcFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIiFjaGFydGxvYWRpbmcgJiYgIWNoYXJ0Tm9EYXRhXCIgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImV4cG9ydERlbnNpdHkoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLWRlZmF1bHQgcC0zIGJ0bi1vdXRsaW5lIGJ0bi1vdXRsaW5lLWRlZmF1bHQgcm91bmRlZC0zIHRleHQtbm93cmFwIGJvcmRlci12YWxcIj48c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4xMjUgMTMuMTI1SDE2LjM1NjNMMTQuNzQzOCAxNC43NDM4TDE1LjYyNSAxNS42MjVMMTguNzUgMTIuNUwxNS42MjUgOS4zNzVMMTQuNzQzOCAxMC4yNTYyTDE2LjM1NjMgMTEuODc1SDguMTI1VjEzLjEyNVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cImJsYWNrXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTMuNzUgOC43NTAwMVY2LjI1MDAxQzEzLjc1MDUgNi4xNjc3NiAxMy43MzQ3IDYuMDg2MjIgMTMuNzAzNiA2LjAxMDA3QzEzLjY3MjUgNS45MzM5MiAxMy42MjY3IDUuODY0NjYgMTMuNTY4OCA1LjgwNjI2TDkuMTkzNzUgMS40MzEyNkM5LjEzNTM1IDEuMzczMzMgOS4wNjYwOSAxLjMyNzUxIDguOTg5OTQgMS4yOTY0QzguOTEzNzkgMS4yNjUzIDguODMyMjUgMS4yNDk1MyA4Ljc1IDEuMjUwMDFIMi41QzIuMTY4NDggMS4yNTAwMSAxLjg1MDU0IDEuMzgxNzEgMS42MTYxMiAxLjYxNjEzQzEuMzgxNyAxLjg1MDU1IDEuMjUgMi4xNjg0OSAxLjI1IDIuNTAwMDFWMTcuNUMxLjI1IDE3LjgzMTUgMS4zODE3IDE4LjE0OTUgMS42MTYxMiAxOC4zODM5QzEuODUwNTQgMTguNjE4MyAyLjE2ODQ4IDE4Ljc1IDIuNSAxOC43NUgxMi41QzEyLjgzMTUgMTguNzUgMTMuMTQ5NSAxOC42MTgzIDEzLjM4MzkgMTguMzgzOUMxMy42MTgzIDE4LjE0OTUgMTMuNzUgMTcuODMxNSAxMy43NSAxNy41VjE2LjI1SDEyLjVWMTcuNUgyLjVWMi41MDAwMUg3LjVWNi4yNTAwMUM3LjUgNi41ODE1MyA3LjYzMTcgNi44OTk0NyA3Ljg2NjEyIDcuMTMzODlDOC4xMDA1NCA3LjM2ODMxIDguNDE4NDggNy41MDAwMSA4Ljc1IDcuNTAwMDFIMTIuNVY4Ljc1MDAxSDEzLjc1Wk04Ljc1IDYuMjUwMDFWMi43NTYyNkwxMi4yNDM4IDYuMjUwMDFIOC43NVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cImJsYWNrXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwidHJhZmZpY0hlYXRtYXBDaGFydFwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbXQtMyBweC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGJvcmRlci0wIHB0LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjYXJkLWxhYmVsXCI+RHdlbGwgVGltZSBTcGxpdCA8c3ZnIHBsYWNlbWVudD1cInJpZ2h0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmdiVG9vbHRpcD1cIlRpbWUtZGlzdHJpYnV0ZWQgZm9vdGZhbGwgd2l0aCBkZW1vZ3JhcGhpY3NcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzM1Ml82ODgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNy45OTg3IDEwLjY2NjdWOC4wMDAwNE03Ljk5ODcgNS4zMzMzN0g4LjAwNTM2TTE0LjY2NTQgOC4wMDAwNEMxNC42NjU0IDExLjY4MTkgMTEuNjgwNiAxNC42NjY3IDcuOTk4NyAxNC42NjY3QzQuMzE2OCAxNC42NjY3IDEuMzMyMDMgMTEuNjgxOSAxLjMzMjAzIDguMDAwMDRDMS4zMzIwMyA0LjMxODE0IDQuMzE2OCAxLjMzMzM3IDcuOTk4NyAxLjMzMzM3QzExLjY4MDYgMS4zMzMzNyAxNC42NjU0IDQuMzE4MTQgMTQuNjY1NCA4LjAwMDA0WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8zMzUyXzY4OFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXN1YiBtYi0yXCI+QmFzZWQgb24ge3tnZXREZW5zaXR5RHdlbGxEYXRhPy5mcm9tRGF0ZSB8IGRhdGU6J2RkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTU1NLCB5eXl5J319IOKAkyB7e2dldERlbnNpdHlEd2VsbERhdGE/LnRvRGF0ZSB8IGRhdGU6J2RkIE1NTSwgeXl5eSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdG9vbGJhciB0ZXh0LW5vd3JhcFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlbGVjdCBjbGFzcz1cImZvcm0tc2VsZWN0IGZvcm0tc2VsZWN0LXNtIHctYXV0byBkcm9wc2VsZWN0XCIgaWQ9XCJkYXRlU2VsZWN0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cIm9uRGF0ZUNoYW5nZSgkZXZlbnQpXCIgWyhuZ01vZGVsKV09XCJmb290ZmFsbERhdGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBkYXRhc2V0IG9mIHRyYWZmaWNEYXRhXCIgW3ZhbHVlXT1cImRhdGFzZXQudmFsdWVcIj57e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhc2V0LmxhYmVsIH19PC9vcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlbGVjdD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFjaGFydER3ZWxsTm9EYXRhICYmICFjaGFydER3ZWxsbG9hZGluZ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwiZHdlbGxCYXJDaGFydFwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjaGFydER3ZWxsTm9EYXRhXCIgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBtdC0yMCBtYi02XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCIgbXQtMjAgY2FyZC1ib2R5IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctbm9kYXRhLXRhYmxlXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvTm9kYXRhMS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXRpdGxlXCI+Tm8gZGF0YSBmb3VuZDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtc3ViXCI+VGhlcmUgaXMgbm8gcmVzdWx0IGZvciB0aGlzIER3ZWxsIFRpbWUgU3BsaXQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIWNoYXJ0bG9hZGluZyAmJiAhY2hhcnROb0RhdGEgJiYgKHNlbGVjdGVkVGFiID09PSdmb290ZmFsbCcgfHwgc2VsZWN0ZWRUYWIgPT09J2NvbnZlcnNpb24nIHx8IHNlbGVjdGVkVGFiID09PSdlbmdhZ2VycycgfHwgc2VsZWN0ZWRUYWIgPT09J2JvdW5jZWQnIHx8IHNlbGVjdGVkVGFiID09PSdwb3RlbnRpYWxCdXllcnMnIHx8IHNlbGVjdGVkVGFiID09PSdtaXNzZWRPcHBvcnR1bml0eScpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjb2wtbWQtMTAgaC0xMDAgcmlnaHQtYmFyIGJvcmRlci0xXCI+XHJcblxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIihmb290ZmFsbFZhbHVlID09PSdmb290ZmFsbCcgfHwgZm9vdGZhbGxWYWx1ZSA9PT0nY29udmVyc2lvbicgfHwgZm9vdGZhbGxWYWx1ZSA9PT0nZW5nYWdlcnMnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHx8IGZvb3RmYWxsVmFsdWUgPT09J21pc3NlZE9wcG9ydHVuaXR5JyB8fCBmb290ZmFsbFZhbHVlID09PSdwb3RlbnRpYWxCdXllcnMnIHx8IGZvb3RmYWxsVmFsdWUgPT09J2JvdW5jZWQnIHx8IGZvb3RmYWxsVmFsdWUgPT09J2RlbW9ncmFwaGljJyB8fCBmb290ZmFsbFZhbHVlID09PSdidXllcicpICYmICFkZXRhaWxlZENoYXJ0c1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNlbGVjdGVkVGFiICE9PSdwb3RlbnRpYWxCdXllcnMnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibmF2IG5hdi1zdHJldGNoIG5hdi1saW5lLXRhYnMxIG5hdi1saW5lLXRhYnMgYm9yZGVyLXRyYW5zcGFyZW50IGZsZXgtbm93cmFwIG15LTIgbXgtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJuYXYtaXRlbSBuYXYtaXRlbTFcIiAqbmdGb3I9XCJsZXQgZGF0YXNldCBvZiBkYXRhc2V0c0NhcmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uRGF0YXNldENoYW5nZShkYXRhc2V0LnZhbHVlKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgW25nQ2xhc3NdPVwiZm9vdGZhbGxWYWx1ZSA9PT1kYXRhc2V0LnZhbHVlID8gJ2FjdGl2ZScgOicnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1saW5rIG5hdi1saW5rMSBjdXJzb3ItcG9pbnRlciBtZS02XCI+e3sgZGF0YXNldC5sYWJlbCB9fTwvYT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHVsIGNsYXNzPVwibmF2IG5hdi10YWJzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwibmF2LWl0ZW1cIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPVwibmF2LWxpbmtcIiBbY2xhc3MuYWN0aXZlXT1cInNlbGVjdGVkVGFiID09PSBkYXRhc2V0LmxhYmVsXCI+e3sgZGF0YXNldC5sYWJlbCB9fTwvYT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8c2VsZWN0IGNsYXNzPVwiZm9ybS1zZWxlY3QgZm9ybS1zZWxlY3Qtc20gdy1hdXRvIG0tMyBkcm9wc2VsZWN0XCIgaWQ9XCJkYXRhc2V0U2VsZWN0XCIgWyhuZ01vZGVsKV09XCJmb290ZmFsbFZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwib25EYXRhc2V0Q2hhbmdlKCRldmVudClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IGRhdGFzZXQgb2YgZGF0YXNldHNcIiBbdmFsdWVdPVwiZGF0YXNldC52YWx1ZVwiPnt7IGRhdGFzZXQubGFiZWwgfX08L29wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWxlY3Q+ICAtLT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWJhci10aXRsZSBmdy1ib2xkIG10LTUgbWItMiBtcy0zXCIgKm5nSWY9XCJzZWxlY3RlZFRhYiA9PT0ncG90ZW50aWFsQnV5ZXJzJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7c2VsY3RlZFZhbHVlfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcy0zIHRleHQtc3ViXCI+QmFzZWQgb24ge3toZWFkZXJEYXRhPy5kYXRlPy5zdGFydERhdGUgfCBkYXRlOidkZCBNTU0sIHl5eXknfX0g4oCTXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3toZWFkZXJEYXRhPy5kYXRlPy5lbmREYXRlIHwgZGF0ZTonZGQgTU1NLCB5eXl5J319IDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJmb290ZmFsbFZhbHVlID09PSdkZW1vZ3JhcGhpYycgJiYgIWRldGFpbGVkQ2hhcnRzXCIgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIWRlbW9Ob0RhdGEgJiYgIWRlbW9sb2FkaW5nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiIGlkPVwiZGVtb0dyYXBoaWNzXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImRlbW9sb2FkaW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJyb3cgbG9hZGVyICBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZGVtb05vRGF0YVwiIGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2FyZC1ib2R5IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJkZW1vLWltZy1ub2RhdGFcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGExLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtdGl0bGVcIj5ObyBkYXRhIGZvdW5kPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS1zdWJcIj5UaGVyZSBpcyBubyByZXN1bHQgZm9yIHRoaXMgRGVtb2dyYXBoaWMgQW5hbHlzaXNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImZvb3RmYWxsVmFsdWUgPT09J2J1eWVyJyAmJiAhZGV0YWlsZWRDaGFydHNcIiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhYnV5ZXJzTm9EYXRhICYmICFidXllcnNsb2FkaW5nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiIGlkPVwiYnV5ZXJzQ2hhcnRzXCI+PC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJidXllcnNsb2FkaW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJyb3cgbG9hZGVyICBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiYnV5ZXJzTm9EYXRhXCIgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImRlbW8taW1nLW5vZGF0YVwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ljb25zL05vZGF0YTEuc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS10aXRsZVwiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXN1YlwiPlRoZXJlIGlzIG5vIHJlc3VsdCBmb3IgdGhpcyBCdXllciBBbmFseXNpczwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiAqbmdJZj1cInRoaXMub2JqRGF0YVRyYWZmaWMubm9iID09PSB0cnVlICYmIHNlbGVjdGVkVGFiID09PSdjb252ZXJzaW9uJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlciBtdC0zIG14LTNcIiBpZD1cInRlc3RHcmFwaGljc1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaWItcGFnaW5hdGlvbiBbaXRlbXNQZXJQYWdlXT1cInBhZ2VTaXplVHJhZmZpY0NhcmRcIiBbY3VycmVudFBhZ2VdPVwib2Zmc2V0VHJhZmZpY0NhcmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdG90YWxJdGVtc109XCJ0b3RhbEl0ZW1zVHJhZmZpY0NhcmRcIiBbcGFnaW5hdGlvblNpemVzXT1cInBhZ2luYXRpb25TaXplc1RyYWZmaWNDYXJkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BhZ2VTaXplXT1cInBhZ2VTaXplVHJhZmZpY0NhcmRcIiAocGFnZUNoYW5nZSk9XCJvblBhZ2VDaGFuZ2VUcmFmZmljQ2FyZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHBhZ2VTaXplQ2hhbmdlKT1cIm9uUGFnZVNpemVDaGFuZ2VUcmFmZmljQ2FyZCgkZXZlbnQpXCI+PC9saWItcGFnaW5hdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIodGhpcy5vYmpEYXRhVHJhZmZpYy5ub2IgPT09IHRydWUgJiYgc2VsZWN0ZWRUYWIgIT09J2NvbnZlcnNpb24nIHx8IHRoaXMub2JqRGF0YVRyYWZmaWMubm9iID09PSBmYWxzZSkgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImZvb3RmYWxsVmFsdWUgPT09J2Zvb3RmYWxsJyB8fCBmb290ZmFsbFZhbHVlID09PSdjb252ZXJzaW9uJyB8fCBmb290ZmFsbFZhbHVlID09PSdlbmdhZ2VycycgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB8fCBmb290ZmFsbFZhbHVlID09PSdtaXNzZWRPcHBvcnR1bml0eScgfHwgZm9vdGZhbGxWYWx1ZSA9PT0ncG90ZW50aWFsQnV5ZXJzJyB8fCBmb290ZmFsbFZhbHVlID09PSdib3VuY2VkJyAmJiAhZGV0YWlsZWRDaGFydHNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNoYXJ0LWNvbnRhaW5lciBweC0zIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyXCIgaWQ9XCJ0ZXN0R3JhcGhpY3NcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpYi1wYWdpbmF0aW9uIFtpdGVtc1BlclBhZ2VdPVwicGFnZVNpemVUcmFmZmljQ2FyZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY3VycmVudFBhZ2VdPVwib2Zmc2V0VHJhZmZpY0NhcmRcIiBbdG90YWxJdGVtc109XCJ0b3RhbEl0ZW1zVHJhZmZpY0NhcmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BhZ2luYXRpb25TaXplc109XCJwYWdpbmF0aW9uU2l6ZXNUcmFmZmljQ2FyZFwiIFtwYWdlU2l6ZV09XCJwYWdlU2l6ZVRyYWZmaWNDYXJkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChwYWdlQ2hhbmdlKT1cIm9uUGFnZUNoYW5nZVRyYWZmaWNDYXJkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHBhZ2VTaXplQ2hhbmdlKT1cIm9uUGFnZVNpemVDaGFuZ2VUcmFmZmljQ2FyZCgkZXZlbnQpXCI+PC9saWItcGFnaW5hdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZm9vdGZhbGxWYWx1ZSA9PT0nZm9vdGZhbGwnIHx8IGZvb3RmYWxsVmFsdWUgPT09J2NvbnZlcnNpb24nIHx8IGZvb3RmYWxsVmFsdWUgPT09J2VuZ2FnZXJzJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgZm9vdGZhbGxWYWx1ZSA9PT0nbWlzc2VkT3Bwb3J0dW5pdHknIHx8IGZvb3RmYWxsVmFsdWUgPT09J3BvdGVudGlhbEJ1eWVycycgfHwgZm9vdGZhbGxWYWx1ZSA9PT0nYm91bmNlZCcgJiYgIWRldGFpbGVkQ2hhcnRzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJoZWF0bWFwLWNvbnRhaW5lciBlbGVtZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyIG1iLTIgcHgtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmdy1ib2xkXCI+SG91cmx5IERhdGE8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaG91ci1idWNrZXQtZHJvcGRvd25cIiBuZ2JEcm9wZG93biBwbGFjZW1lbnQ9XCJib3R0b20tZW5kXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJob3VyLWJ1Y2tldC10b2dnbGVcIiBuZ2JEcm9wZG93blRvZ2dsZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgc2VsZWN0ZWRIb3VyQnVja2V0TGFiZWwgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNiA5bDYgNiA2LTZcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IG5nYkRyb3Bkb3duTWVudSBjbGFzcz1cImhvdXItYnVja2V0LW1lbnVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJob3VyLWJ1Y2tldC1pdGVtXCIgbmdiRHJvcGRvd25JdGVtXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgb3B0IG9mIGhvdXJCdWNrZXRPcHRpb25zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwib3B0LnZhbHVlID09PSBob3VyQnVja2V0VmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uSG91ckJ1Y2tldENoYW5nZShvcHQudmFsdWUpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBvcHQubGFiZWwgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJoZWF0bWFwY2hhcnRcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgKm5nSWY9XCJmb290ZmFsbFZhbHVlID09PSdmb290ZmFsbCcgfHwgZm9vdGZhbGxWYWx1ZSA9PT0nY29udmVyc2lvbicgfHwgZm9vdGZhbGxWYWx1ZSA9PT0nZW5nYWdlcnMnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHx8IGZvb3RmYWxsVmFsdWUgPT09J21pc3NlZE9wcG9ydHVuaXR5JyB8fCBmb290ZmFsbFZhbHVlID09PSdwb3RlbnRpYWxCdXllcnMnIHx8IGZvb3RmYWxsVmFsdWUgPT09J2JvdW5jZWQnICYmICFkZXRhaWxlZENoYXJ0c1wiIGNsYXNzPVwiY29sLW1kLTkgY2hhcnQtY29udGFpbmVyIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXJcIiBpZD1cInRlc3RHcmFwaGljc1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZm9vdGZhbGxWYWx1ZSA9PT0nZm9vdGZhbGwnIHx8IGZvb3RmYWxsVmFsdWUgPT09J2NvbnZlcnNpb24nIHx8IGZvb3RmYWxsVmFsdWUgPT09J2VuZ2FnZXJzJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB8fCBmb290ZmFsbFZhbHVlID09PSdtaXNzZWRPcHBvcnR1bml0eScgfHwgZm9vdGZhbGxWYWx1ZSA9PT0ncG90ZW50aWFsQnV5ZXJzJyB8fCBmb290ZmFsbFZhbHVlID09PSdib3VuY2VkJyAmJiAhZGV0YWlsZWRDaGFydHNcIiBjbGFzcz1cImNvbC1tZC0zIG10LTMgbWUtMCBwZS0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cImhlYXRtYXBjaGFydFwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJkZXRhaWxlZENoYXJ0c1wiIGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBteS01IG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwiYmFja1RvRm9vdGZhbGwoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDBcIiB2aWV3Qm94PVwiMCAwIDQwIDQwXCIgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBmaWx0ZXI9XCJ1cmwoI2ZpbHRlcjBfZF8yNTg1XzcwMzYpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHg9XCIyXCIgeT1cIjFcIiB3aWR0aD1cIjM2XCIgaGVpZ2h0PVwiMzZcIiByeD1cIjhcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB4PVwiMi41XCIgeT1cIjEuNVwiIHdpZHRoPVwiMzVcIiBoZWlnaHQ9XCIzNVwiIHJ4PVwiNy41XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiNEMEQ1RERcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0yNS44MzI3IDE5SDE0LjE2Nk0xNC4xNjYgMTlMMTkuOTk5MyAyNC44MzM0TTE0LjE2NiAxOUwxOS45OTkzIDEzLjE2NjdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWx0ZXIgaWQ9XCJmaWx0ZXIwX2RfMjU4NV83MDM2XCIgeD1cIjBcIiB5PVwiMFwiIHdpZHRoPVwiNDBcIiBoZWlnaHQ9XCI0MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXJVbml0cz1cInVzZXJTcGFjZU9uVXNlXCIgY29sb3ItaW50ZXJwb2xhdGlvbi1maWx0ZXJzPVwic1JHQlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT1cIjBcIiByZXN1bHQ9XCJCYWNrZ3JvdW5kSW1hZ2VGaXhcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQ29sb3JNYXRyaXggaW49XCJTb3VyY2VBbHBoYVwiIHR5cGU9XCJtYXRyaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz1cIjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ9XCJoYXJkQWxwaGFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlT2Zmc2V0IGR5PVwiMVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPVwiMVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCB0eXBlPVwibWF0cml4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9XCIwIDAgMCAwIDAuMDYyNzQ1MSAwIDAgMCAwIDAuMDk0MTE3NiAwIDAgMCAwIDAuMTU2ODYzIDAgMCAwIDAuMDUgMFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVCbGVuZCBtb2RlPVwibm9ybWFsXCIgaW4yPVwiQmFja2dyb3VuZEltYWdlRml4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ9XCJlZmZlY3QxX2Ryb3BTaGFkb3dfMjU4NV83MDM2XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUJsZW5kIG1vZGU9XCJub3JtYWxcIiBpbj1cIlNvdXJjZUdyYXBoaWNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluMj1cImVmZmVjdDFfZHJvcFNoYWRvd18yNTg1XzcwMzZcIiByZXN1bHQ9XCJzaGFwZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlsdGVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0LXByaW1hcnkgY3Vyc29yLXBvaW50ZXIgdGV4dC1kZWNvcmF0aW9uLXVuZGVybGluZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInN0b3JlVmlldyhzdG9yZUlkKVwiPnt7c3RvcmVOYW1lfX08L3NwYW4+PHNwYW4gY2xhc3M9XCJtcy0yXCI+Rm9vdGZhbGxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUcmVuZDwvc3Bhbj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXIgdGV4dC1zdWJcIj5CYXNlZCBvbiB7e2hlYWRlckRhdGE/LmRhdGU/LnN0YXJ0RGF0ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBkYXRlOidkZCBNTU0sIHl5eXknfX0gLSB7e2hlYWRlckRhdGE/LmRhdGU/LmVuZERhdGUgfCBkYXRlOidkZCBNTU0sIHl5eXknfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgbXgtNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiIGlkPVwiZGV0YWlsZWRDaGFydERpdlwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPCEtLSA8bGliLXRyYWZmaWMtY2FyZC1jaGFydHMgY2xhc3M9XCJteS0yXCI+PC9saWItdHJhZmZpYy1jYXJkLWNoYXJ0cz4gLS0+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImlzVk1TXCI+XHJcbiAgICAgICAgICAgIDxsaWItaW1nLXJ2cHNcclxuICAgICAgICAgICAgICAgICpuZ0lmPVwic3RvcmVJZGFycmF5Py5sZW5ndGggPT09IDEgJiYgKGNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5pc0Zvb3RmYWxsRGlyZWN0b3J5JiYhY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmlzRm9vdGZhbGxEaXJlY3Rvcnlvbmx5VGFuZ28gfHwgKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/LnVzZXJUeXBlID09PSAndGFuZ28nKVwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cIm15LTJcIj48L2xpYi1pbWctcnZwcz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSc0NTInICYmICFpc1ZNU1wiPlxyXG4gICAgICAgICAgICA8bGliLWltYWdlLWRvY1xyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJzdG9yZUlkYXJyYXk/Lmxlbmd0aCA9PT0gMSAmJiAoY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmlzRm9vdGZhbGxEaXJlY3RvcnkmJiFjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uaXNGb290ZmFsbERpcmVjdG9yeW9ubHlUYW5nbyB8fCAoZ3MudXNlckFjY2VzcyB8IGFzeW5jKT8udXNlclR5cGUgPT09ICd0YW5nbycpXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwibXktMlwiPjwvbGliLWltYWdlLWRvYz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiAqbmdJZj1cInN0b3JlSWRhcnJheT8ubGVuZ3RoID4gMVwiIGNsYXNzPVwiY29sLW1kLTYgbXQtM1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGgtMTAwXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBib3JkZXItMCBwdC0zXCI+XHJcbiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXRsZS10ZXh0IG1iLTJcIj5QZXJmb3JtYW5jZSBNYXRyaXhcclxuICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cInJpZ2h0XCIgbmdiVG9vbHRpcD1cIlN0b3JlIHBlcmZvcm1hbmNlIGJhc2VkIG9uIG1ldHJpY3Mgc2VsZWN0ZWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMTQzMl84MDAzNSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwNjUgMTAuNjY2NlY3Ljk5OTkyTTguMDAwNjUgNS4zMzMyNUg4LjAwNzMyTTE0LjY2NzMgNy45OTk5MkMxNC42NjczIDExLjY4MTggMTEuNjgyNiAxNC42NjY2IDguMDAwNjUgMTQuNjY2NkM0LjMxODc1IDE0LjY2NjYgMS4zMzM5OCAxMS42ODE4IDEuMzMzOTggNy45OTk5MkMxLjMzMzk4IDQuMzE4MDIgNC4zMTg3NSAxLjMzMzI1IDguMDAwNjUgMS4zMzMyNUMxMS42ODI2IDEuMzMzMjUgMTQuNjY3MyA0LjMxODAyIDE0LjY2NzMgNy45OTk5MlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8xNDMyXzgwMDM1XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1zdWIgbWItMlwiPnt7aGVhZGVyRGF0YT8uZGF0ZT8uc3RhcnREYXRlIHwgZGF0ZTonZGQgTU1NLCB5eXl5J319IOKAk1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB7e2hlYWRlckRhdGE/LmRhdGU/LmVuZERhdGUgfCBkYXRlOidkZCBNTU0sIHl5eXknfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdG9vbGJhclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpYi1yZWFjdGl2ZS1zZWxlY3QgW2Zvcm1Db250cm9sXT1cInRvcFN0b3Jlc1NlbGVjdENvbnRyb2xcIiBbaWRGaWVsZF09XCIndmFsdWUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuYW1lRmllbGRdPVwiJ2xhYmVsJ1wiIFtkYXRhXT1cInRvcFN0b3Jlc1wiIGNsYXNzPVwidy0xMDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2VUb3BTdG9yZXMoJGV2ZW50Py52YWx1ZSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9saWItcmVhY3RpdmUtc2VsZWN0PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8L2Zvcm0+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbXgtMyBhbGlnbi1pdGVtcy1jZW50ZXIgdy03NVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXMtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzZWxlY3QgY2xhc3M9XCJmb3JtLXNlbGVjdC1zbSBmb3JtLXNlbGVjdCBtZS0yIGRyb3BzZWxlY3RcIiBbKG5nTW9kZWwpXT1cImZvb3RmYWxsVmFsdWUxXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgb2JqIG9mIGdldEZpbHRlcmVkRm9vdGZhbGxEYXRhc2V0cygpXCIgW2lkXT1cIm9iai5sYWJlbFwiIFt2YWx1ZV09XCJvYmoudmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7b2JqLmxhYmVsfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9vcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJteC0yXCI+VnM8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNlbGVjdCBjbGFzcz1cImZvcm0tc2VsZWN0LXNtIGZvcm0tc2VsZWN0IG1zLTIgZHJvcHNlbGVjdFwiIFsobmdNb2RlbCldPVwiYm91bmNlVmFsdWUxXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJvbkJvdW5jZUNoYW5nZSgkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IG9iaiBvZiBnZXRGaWx0ZXJlZEJvdW5jZURhdGFzZXRzKClcIiBbaWRdPVwib2JqLmxhYmVsXCIgW3ZhbHVlXT1cIm9iai52YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3tvYmoubGFiZWx9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L29wdGlvbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJwZXJmb3JtYW5jZUxvYWRpbmdcIiBjbGFzcz1cInJvdyBsb2FkZXIgIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwicGVyZm9ybWFuY2Vub0RhdGFcIiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBtdC0yMCBtYi02XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIiBtdC0yMCBjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctbm9kYXRhLXRhYmxlXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvTm9kYXRhMS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS10aXRsZVwiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0nNDUyJ1wiIGNsYXNzPVwibm9kYXRhLXN1YlwiPlRoZXJlIGlzIG5vIHJlc3VsdCBmb3IgdGhpc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3tmb290ZmFsbExhYmVsIHwgdGl0bGVjYXNlfX0gdnMge3tib3VuY2VMYWJlbCB8IHRpdGxlY2FzZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInXCIgY2xhc3M9XCJub2RhdGEtc3ViXCI+VGhlcmUgaXMgbm8gcmVzdWx0IGZvciB0aGlzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQZXJmb3JtYW5jZSBNYXRyaXg8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFwZXJmb3JtYW5jZUxvYWRpbmcgJiYgIXBlcmZvcm1hbmNlbm9EYXRhXCIgY2xhc3M9XCJjYXJkLWJvZHlcIj5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicXVhZHJhbnQtY2hhcnRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXhpcy1sYWJlbHNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBYIEF4aXMgTGFiZWwgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ4LWF4aXMtbGFiZWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7Ym91bmNlTGFiZWwgfCB0aXRsZWNhc2V9fSAtPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gWSBBeGlzIExhYmVsIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwieS1heGlzLWxhYmVsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj57e2Zvb3RmYWxsTGFiZWwgfCB0aXRsZWNhc2V9fSAtPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSBUb3AgTGVmdCBRdWFkcmFudCAtLT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicXVhZHJhbnRcIiBpZD1cInExXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSc0NTInXCIgY2xhc3M9XCJsYWJlbDFcIj5IaWdoIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmb290ZmFsbExhYmVsPT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1Mic/J0xlc3MgdGhhbiAnK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSsgJyBtaW5zJzonQm91bmNlJ319PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmb290ZmFsbExhYmVsICE9PSdCb3VuY2VkIEZvb3RmYWxsJ1wiPnt7Zm9vdGZhbGxMYWJlbCB8IHRpdGxlY2FzZX19PC9zcGFuPiwgTG93XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImJvdW5jZUxhYmVsPT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1Mic/J0xlc3MgdGhhbiAnK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSsgJyBtaW5zJzonQm91bmNlJ319PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJib3VuY2VMYWJlbCAhPT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2JvdW5jZUxhYmVsIHwgdGl0bGVjYXNlfX08L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJ1wiIGNsYXNzPVwibGFiZWwxXCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZvb3RmYWxsTGFiZWw9PT0nRm9vdGZhbGwnXCI+SGlnaCA8L3NwYW4+IDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmb290ZmFsbExhYmVsPT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1Mic/J0xlc3MgdGhhbiAnK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSsgJyBtaW5zJzonQm91bmNlJ319PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmb290ZmFsbExhYmVsICE9PSdCb3VuY2VkIEZvb3RmYWxsJ1wiPnt7Zm9vdGZhbGxMYWJlbCB8IHRpdGxlY2FzZX19PC9zcGFuPiwgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImJvdW5jZUxhYmVsPT09J0Zvb3RmYWxsJ1wiPkxvdyA8L3NwYW4+IDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJib3VuY2VMYWJlbD09PSdCb3VuY2VkIEZvb3RmYWxsJ1wiPnt7aGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInPydMZXNzIHRoYW4gJytcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWUrICcgbWlucyc6J0JvdW5jZSd9fTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYm91bmNlTGFiZWwgIT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3tib3VuY2VMYWJlbCB8IHRpdGxlY2FzZX19PC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSBUb3AgUmlnaHQgUXVhZHJhbnQgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInF1YWRyYW50XCIgaWQ9XCJxMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0nNDUyJ1wiIGNsYXNzPVwibGFiZWwxXCI+SGlnaCA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZm9vdGZhbGxMYWJlbD09PSdCb3VuY2VkIEZvb3RmYWxsJ1wiPnt7aGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInPydMZXNzIHRoYW4gJytcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWUrICcgbWlucyc6J0JvdW5jZSd9fTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZm9vdGZhbGxMYWJlbCAhPT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2Zvb3RmYWxsTGFiZWwgfCB0aXRsZWNhc2V9fTwvc3Bhbj4sIEhpZ2hcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiYm91bmNlTGFiZWw9PT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJz8nTGVzcyB0aGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJytmZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWUrICcgbWlucyc6J0JvdW5jZSd9fTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYm91bmNlTGFiZWwgIT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3tib3VuY2VMYWJlbCB8IHRpdGxlY2FzZX19PC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1MidcIiBjbGFzcz1cImxhYmVsMVwiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmb290ZmFsbExhYmVsPT09J0Zvb3RmYWxsJ1wiPkhpZ2ggPC9zcGFuPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZm9vdGZhbGxMYWJlbD09PSdCb3VuY2VkIEZvb3RmYWxsJ1wiPnt7aGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInPydMZXNzIHRoYW4gJytcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWUrICcgbWlucyc6J0JvdW5jZSd9fTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZm9vdGZhbGxMYWJlbCAhPT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2Zvb3RmYWxsTGFiZWwgfCB0aXRsZWNhc2V9fTwvc3Bhbj4sIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJib3VuY2VMYWJlbD09PSdGb290ZmFsbCdcIj5IaWdoIDwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImJvdW5jZUxhYmVsPT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1Mic/J0xlc3MgdGhhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcrZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlKyAnIG1pbnMnOidCb3VuY2UnfX08L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImJvdW5jZUxhYmVsICE9PSdCb3VuY2VkIEZvb3RmYWxsJ1wiPnt7Ym91bmNlTGFiZWwgfCB0aXRsZWNhc2V9fTwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gQm90dG9tIExlZnQgUXVhZHJhbnQgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInF1YWRyYW50XCIgaWQ9XCJxM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0nNDUyJ1wiIGNsYXNzPVwibGFiZWwxXCI+TG93IDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmb290ZmFsbExhYmVsPT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1Mic/J0xlc3MgdGhhbiAnK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSsgJyBtaW5zJzonQm91bmNlJ319PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmb290ZmFsbExhYmVsICE9PSdCb3VuY2VkIEZvb3RmYWxsJ1wiPnt7Zm9vdGZhbGxMYWJlbCB8IHRpdGxlY2FzZX19PC9zcGFuPiwgTG93XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImJvdW5jZUxhYmVsPT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1Mic/J0xlc3MgdGhhbiAnK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSsgJyBtaW5zJzonQm91bmNlJ319PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJib3VuY2VMYWJlbCAhPT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2JvdW5jZUxhYmVsIHwgdGl0bGVjYXNlfX08L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJ1wiIGNsYXNzPVwibGFiZWwxXCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZvb3RmYWxsTGFiZWw9PT0nRm9vdGZhbGwnXCI+TG93IDwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZvb3RmYWxsTGFiZWw9PT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJz8nTGVzcyB0aGFuICcrXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlKyAnIG1pbnMnOidCb3VuY2UnfX08L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZvb3RmYWxsTGFiZWwgIT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3tmb290ZmFsbExhYmVsIHwgdGl0bGVjYXNlfX08L3NwYW4+LCA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYm91bmNlTGFiZWw9PT0nRm9vdGZhbGwnXCI+TG93IDwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImJvdW5jZUxhYmVsPT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1Mic/J0xlc3MgdGhhbiAnK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSsgJyBtaW5zJzonQm91bmNlJ319PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJib3VuY2VMYWJlbCAhPT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2JvdW5jZUxhYmVsIHwgdGl0bGVjYXNlfX08L3NwYW4+PC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSBCb3R0b20gUmlnaHQgUXVhZHJhbnQgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInF1YWRyYW50XCIgaWQ9XCJxNFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0nNDUyJ1wiIGNsYXNzPVwibGFiZWwxXCI+TG93IDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmb290ZmFsbExhYmVsPT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1Mic/J0xlc3MgdGhhbiAnK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSsgJyBtaW5zJzonQm91bmNlJ319PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmb290ZmFsbExhYmVsICE9PSdCb3VuY2VkIEZvb3RmYWxsJ1wiPnt7Zm9vdGZhbGxMYWJlbCB8IHRpdGxlY2FzZX19PC9zcGFuPiwgSGlnaFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJib3VuY2VMYWJlbD09PSdCb3VuY2VkIEZvb3RmYWxsJ1wiPnt7aGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInPydMZXNzIHRoYW4gJytcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWUrICcgbWlucyc6J0JvdW5jZSd9fTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYm91bmNlTGFiZWwgIT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3tib3VuY2VMYWJlbHwgdGl0bGVjYXNlfX08L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJ1wiIGNsYXNzPVwibGFiZWwxXCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZvb3RmYWxsTGFiZWw9PT0nRm9vdGZhbGwnXCI+TG93IDwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZvb3RmYWxsTGFiZWw9PT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJz8nTGVzcyB0aGFuICcrXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlKyAnIG1pbnMnOidCb3VuY2UnfX08L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZvb3RmYWxsTGFiZWwgIT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3tmb290ZmFsbExhYmVsIHwgdGl0bGVjYXNlfX08L3NwYW4+LCA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYm91bmNlTGFiZWw9PT0nRm9vdGZhbGwnXCI+SGlnaCA8L3NwYW4+IDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJib3VuY2VMYWJlbD09PSdCb3VuY2VkIEZvb3RmYWxsJ1wiPnt7aGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInPydMZXNzIHRoYW4gJytcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWUrICcgbWlucyc6J0JvdW5jZSd9fTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYm91bmNlTGFiZWwgIT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3tib3VuY2VMYWJlbHwgdGl0bGVjYXNlfX08L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBwb2ludCBvZiBwb2ludHNcIiBjbGFzcz1cInBvaW50XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW25nU3R5bGVdPVwieyd0b3AnOiBwb2ludC50b3AgKyAnJScsICdsZWZ0JzogcG9pbnQubGVmdCArICclJ31cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyXCIgKGNsaWNrKT1cInRvZ2dsZVRvb2x0aXAocG9pbnQubmFtZSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkb3RcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gQ2xpY2thYmxlIGxhYmVsIHRoYXQgdG9nZ2xlcyB0aGUgdG9vbHRpcCAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbCBtdC00XCIgc3R5bGU9XCJmb250LXNpemU6IDEwcHggIWltcG9ydGFudDtcIiBbYXR0ci50aXRsZV09XCJwb2ludC5uYW1lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSB7eyBwb2ludC5uYW1lIH19IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHBvaW50Lm5hbWUubGVuZ3RoID4gNyA/IChwb2ludC5uYW1lIHwgc2xpY2U6MDo3KSArICcuLicgOiBwb2ludC5uYW1lIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gQ3VzdG9tIFRvb2x0aXAgUG9wdXAgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b29sdGlwLXBvcHVwIHotNVwiICpuZ0lmPVwiYWN0aXZlVG9vbHRpcCA9PT0gcG9pbnQubmFtZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvb2x0aXAtY29udGVudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cInRleHQtd2hpdGUgY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwic3RvcmVWaWV3KHBvaW50LnN0b3JlSWQpXCI+e3sgcG9pbnQubmFtZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fTwvaDM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+QXZnIHt7Zm9vdGZhbGxMYWJlbCB8IHRpdGxlY2FzZX19OiB7eyBwb2ludC5hdmdGb290ZmFsbCB9fTwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cIm15LTJcIj5PcGVuIFRpbWU6IDxzdHJvbmc+e3sgcG9pbnQub3BlblRpbWUgfX08L3N0cm9uZz48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+Q2xvc2UgVGltZTogPHN0cm9uZz57eyBwb2ludC5jbG9zZVRpbWUgfX08L3N0cm9uZz48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b29sdGlwLWFycm93XCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gQWRkIG1vcmUgcG9pbnRzIGhlcmUgLS0+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2ICpuZ0lmPVwic3RvcmVJZGFycmF5Py5sZW5ndGggPiAxXCIgY2xhc3M9XCJjb2wtbWQtNiBtdC0zXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIHB4LTUgYm9yZGVyLTAgcHQtM1wiPlxyXG4gICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGl0bGUtdGV4dCBtYi0yXCI+Wm9uZSBEd2VsbCBUaW1lIFNwbGl0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJyaWdodFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZ2JUb29sdGlwPVwiT3ZlcmFsbCB6b25lIGNvbmNlbnRyYXRpb24gYW5kIGF2ZXJhZ2UgZHdlbGwgdGltZSBhY3Jvc3Mgc2VsZWN0ZWQgc3RvcmVzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzE0MzJfODAwMzUpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDY1IDEwLjY2NjZWNy45OTk5Mk04LjAwMDY1IDUuMzMzMjVIOC4wMDczMk0xNC42NjczIDcuOTk5OTJDMTQuNjY3MyAxMS42ODE4IDExLjY4MjYgMTQuNjY2NiA4LjAwMDY1IDE0LjY2NjZDNC4zMTg3NSAxNC42NjY2IDEuMzMzOTggMTEuNjgxOCAxLjMzMzk4IDcuOTk5OTJDMS4zMzM5OCA0LjMxODAyIDQuMzE4NzUgMS4zMzMyNSA4LjAwMDY1IDEuMzMzMjVDMTEuNjgyNiAxLjMzMzI1IDE0LjY2NzMgNC4zMTgwMiAxNC42NjczIDcuOTk5OTJaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMTQzMl84MDAzNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtc3ViIG1iLTJcIj57e2hlYWRlckRhdGE/LmRhdGU/LnN0YXJ0RGF0ZSB8IGRhdGU6J2RkIE1NTSwgeXl5eSd9fSDigJNcclxuICAgICAgICAgICAgICAgICAgICAgICAge3toZWFkZXJEYXRhPy5kYXRlPy5lbmREYXRlIHwgZGF0ZTonZGQgTU1NLCB5eXl5J319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9oMz5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLXRvb2xiYXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwiZ29Ub1pvbmUoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1saWdodC1wcmltYXJ5MSByb3VuZGVkLTMgdGV4dC1ub3dyYXAgYm9yZGVyLXZhbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1zLTJcIj5HbyB0byBab25lczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2Fsc3M9XCJjYXJkLWJvZHlcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhem9uZUxvYWRpbmcgJiYgIXpvbmVOb0RhdGFcIiBjbGFzcz1cImltYWdlLWNvbnRhaW5lciBwb3NpdGlvbi1yZWxhdGl2ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiYXNzZXRzL3RhbmdvL0ltYWdlcy96b25lLWltZy5zdmdcIiBhbHQ9XCJTdG9yZSBMYXlvdXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInB4LTUgaW1nLXNyYyBteS0zIGJhY2tncm91bmQtaW1hZ2VcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gPGltZyAqbmdJZj1cInpvbmVEd2VsbFRpbWVTcGxpdERhdGFbMF0/LnpvbmVOYW1lID09PSdPdmVyYWxsIFN0b3JlJ1wiIHNyYz1cImFzc2V0cy90YW5nby9JbWFnZXMvem9uZS1pbWcxLnN2Z1wiIGFsdD1cIlN0b3JlIExheW91dFwiIGNsYXNzPVwicHgtNSBpbWctc3JjIG15LTMgYmFja2dyb3VuZC1pbWFnZVwiIC8+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImNlbnRlcmVkXCI+Q2VudGVyZWQ8L2Rpdj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwib3ZlcmxheS1jb250ZW50XCIgKm5nRm9yPVwibGV0IHBvaW50IG9mIHpvbmVEd2VsbFRpbWVTcGxpdERhdGFcIj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInpvbmVEd2VsbFRpbWVTcGxpdERhdGFbMF0/LnpvbmVOYW1lICE9PSdPdmVyYWxsIFN0b3JlJ1wiIGNsYXNzPVwidG9wLXpvbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyIHRleHQtem9uZVwiPnt7em9uZUR3ZWxsVGltZVNwbGl0RGF0YVswXT8uem9uZU5hbWUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgem9uZUR3ZWxsVGltZVNwbGl0RGF0YVswXT8uem9uZU5hbWUgOidGcm9udCd9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtem9uZS12YWxcIj4gQ29uYzoge3sgem9uZUR3ZWxsVGltZVNwbGl0RGF0YVswXT8uY29uY2VudHJhdGlvblJhdGUgIT09bnVsbCA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6b25lRHdlbGxUaW1lU3BsaXREYXRhWzBdPy5jb25jZW50cmF0aW9uUmF0ZTonLS0nIH19JSA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC16b25lLXZhbFwiPkR3ZWxsIHRpbWU6IHt7IHpvbmVEd2VsbFRpbWVTcGxpdERhdGFbMF0/LmR3ZWxsVGltZSAhPT1udWxsID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHpvbmVEd2VsbFRpbWVTcGxpdERhdGFbMF0/LmR3ZWxsVGltZSA6Jy0tJyB9fSBNaW5zPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJ6b25lRHdlbGxUaW1lU3BsaXREYXRhWzBdPy56b25lTmFtZSA9PT0nT3ZlcmFsbCBTdG9yZSdcIiBjbGFzcz1cImNlbnRlcmVkLXpvbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyIHRleHQtem9uZVwiPnt7em9uZUR3ZWxsVGltZVNwbGl0RGF0YVswXT8uem9uZU5hbWUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgem9uZUR3ZWxsVGltZVNwbGl0RGF0YVswXT8uem9uZU5hbWUgOidGcm9udCd9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtem9uZS12YWxcIj4gQ29uYzoge3sgem9uZUR3ZWxsVGltZVNwbGl0RGF0YVswXT8uY29uY2VudHJhdGlvblJhdGUgIT09bnVsbCA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6b25lRHdlbGxUaW1lU3BsaXREYXRhWzBdPy5jb25jZW50cmF0aW9uUmF0ZTonLS0nIH19JSA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC16b25lLXZhbFwiPkR3ZWxsIHRpbWU6IHt7IHpvbmVEd2VsbFRpbWVTcGxpdERhdGFbMF0/LmR3ZWxsVGltZSAhPT1udWxsID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHpvbmVEd2VsbFRpbWVTcGxpdERhdGFbMF0/LmR3ZWxsVGltZTonLS0nIH19IE1pbnM8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInpvbmVEd2VsbFRpbWVTcGxpdERhdGFbMF0/LnpvbmVOYW1lICE9PSdPdmVyYWxsIFN0b3JlJ1wiIGNsYXNzPVwiYm90dG9tLXpvbmUgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlciB0ZXh0LXpvbmVcIj57e3pvbmVEd2VsbFRpbWVTcGxpdERhdGFbMV0/LnpvbmVOYW1lID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHpvbmVEd2VsbFRpbWVTcGxpdERhdGFbMl0/LnpvbmVOYW1lIDogJ0JhY2snfX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXpvbmUtdmFsXCI+IENvbmM6IHt7IHpvbmVEd2VsbFRpbWVTcGxpdERhdGFbMV0/LmNvbmNlbnRyYXRpb25SYXRlICE9PW51bGwgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgem9uZUR3ZWxsVGltZVNwbGl0RGF0YVsyXT8uY29uY2VudHJhdGlvblJhdGU6Jy0tJyB9fSUgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtem9uZS12YWxcIj5Ed2VsbCB0aW1lOiB7eyB6b25lRHdlbGxUaW1lU3BsaXREYXRhWzFdPy5kd2VsbFRpbWUgIT09bnVsbCA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6b25lRHdlbGxUaW1lU3BsaXREYXRhWzJdPy5kd2VsbFRpbWU6Jy0tJ319IE1pbnM8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSA8L2Rpdj4gLS0+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJ6b25lTG9hZGluZ1wiIGNsYXNzPVwicm93IGxvYWRlciAgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiem9uZU5vRGF0YVwiIGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBtYi02IFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm9ybWFsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibXQtNSBjYXJkLWJvZHkgcmlnaHQtYmFyIHB5LTIwIG14LTUgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiaW1nLW5vZGF0YS16b25lXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvbm90LWFwcGxpY2FibGUuc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXRpdGxlIG10LTNcIj5EYXRhIE5vdCBGb3VuZDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS1zdWJcIj5Ob3JtYWxpemVkIGRhdGEgaXMgbm90IGFwcGxpY2FibGU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhbm9ybWFsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibXQtNSBjYXJkLWJvZHkgcmlnaHQtYmFyIHB5LTIwIG14LTUgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiaW1nLW5vZGF0YS16b25lXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvTm9kYXRhMS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtdGl0bGVcIj5ObyBkYXRhIGZvdW5kPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXN1YlwiPlRoZXJlIGlzIG5vIHJlc3VsdCBmb3IgdGhpcyBab25lIER3ZWxsIFRpbWUgU3BsaXQ8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8IS0tIDxpbWcgY2xhc3M9XCJweC01IGltZy1zcmMgbWItM1wiIHNyYz1cImFzc2V0cy90YW5nby9JbWFnZXMvem9uZS1pbWcuc3ZnXCIgYWx0PVwiXCI+IC0tPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIHB4LTUgYm9yZGVyLTAgcHQtM1wiPlxyXG4gICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGl0bGUtdGV4dCBtYi0yXCI+U3RvcmUgT3BlcmF0aW9uc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgbmdiVG9vbHRpcD1cIkF2ZyBzdG9yZSBvcGVuICYgY2xvc2UgdGltZSBhY3Jvc3MgdGhlIHNlbGVjdGVkIHN0b3Jlc1wiIHBsYWNlbWVudD1cInRvcFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8xNDMyXzgwMDM1KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDY1IDEwLjY2NjZWNy45OTk5Mk04LjAwMDY1IDUuMzMzMjVIOC4wMDczMk0xNC42NjczIDcuOTk5OTJDMTQuNjY3MyAxMS42ODE4IDExLjY4MjYgMTQuNjY2NiA4LjAwMDY1IDE0LjY2NjZDNC4zMTg3NSAxNC42NjY2IDEuMzMzOTggMTEuNjgxOCAxLjMzMzk4IDcuOTk5OTJDMS4zMzM5OCA0LjMxODAyIDQuMzE4NzUgMS4zMzMyNSA4LjAwMDY1IDEuMzMzMjVDMTEuNjgyNiAxLjMzMzI1IDE0LjY2NzMgNC4zMTgwMiAxNC42NjczIDcuOTk5OTJaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8xNDMyXzgwMDM1XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1zdWIgbWItMlwiPnt7aGVhZGVyRGF0YT8uZGF0ZT8uc3RhcnREYXRlIHwgZGF0ZTonZGQgTU1NLCB5eXl5J319IOKAk1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB7e2hlYWRlckRhdGE/LmRhdGU/LmVuZERhdGUgfCBkYXRlOidkZCBNTU0sIHl5eXknfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdG9vbGJhclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gPGJ1dHRvbiAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1saWdodC1wcmltYXJ5MSByb3VuZGVkLTMgdGV4dC1ub3dyYXAgYm9yZGVyLXZhbFwiPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1zLTJcIj5HbyB0byBUcmF4PC9zcGFuPlxyXG4gICAgICAgIDwvYnV0dG9uPiAtLT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMyB0ZXh0LWNlbnRlciBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj48IS0te3tnZXRDYXJkRGF0YT8ucmV2ZW51ZT8udmFsdWUgPz8gJy0tJ319IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0yXCI+IDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC10aXRsZVwiPnt7c3RvcmVPcGVyYXRpb25EYXRhPy5vdmVyYWxsPy5hdmdPcGVuVGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgP3N0b3JlT3BlcmF0aW9uRGF0YT8ub3ZlcmFsbD8uYXZnT3BlblRpbWU6Jy0tJyB9fTwvc3Bhbj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiXCI+PHNwYW4gY2xhc3M9XCJzdWItaGVhZGVyXCI+QXZnLiBPcGVuIFRpbWU8L3NwYW4+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBtdC01IG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjMyNlwiIGhlaWdodD1cIjJcIiB2aWV3Qm94PVwiMCAwIDMyNiAyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGluZSB5MT1cIjAuNzVcIiB4Mj1cIjM1NlwiIHkyPVwiMC43NVwiIHN0cm9rZT1cIiNEMEQ1RERcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTMgdGV4dC1jZW50ZXIgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyXCI+PCEtLXt7Z2V0Q2FyZERhdGE/LnJldmVudWU/LnZhbHVlID8/ICctLSd9fSAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMlwiPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtdGl0bGVcIj57e3N0b3JlT3BlcmF0aW9uRGF0YT8ub3ZlcmFsbD8uYXZnQ2xvc2VUaW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/c3RvcmVPcGVyYXRpb25EYXRhPy5vdmVyYWxsPy5hdmdDbG9zZVRpbWU6Jy0tJyB9fTwvc3Bhbj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiXCI+PHNwYW4gY2xhc3M9XCJzdWItaGVhZGVyXCI+QXZnLiBDbG9zZSBUaW1lPC9zcGFuPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBjYXJkLWJvcmRlciBoLTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGVsbGlwc2UxIGJvcmRlci0wIHB4LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXIxIHRleHQtZGVjb3JhdGlvbi11bmRlcmxpbmUgY3Vyc29yLXBvaW50ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInN0b3JlVmlldyhzdG9yZU9wZXJhdGlvbkRhdGE/LnRvcExhdGVPcGVuPy5zdG9yZUlkKVwiPnt7c3RvcmVPcGVyYXRpb25EYXRhPy50b3BMYXRlT3Blbj8uc3RvcmVOYW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yZU9wZXJhdGlvbkRhdGE/LnRvcExhdGVPcGVuPy5zdG9yZU5hbWUgOictLSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWItaGVhZGVyIG10LTJcIj5Ub3AgTGF0ZSBPcGVuPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgcC0wIGgtNzVweCBtdC0zIG14LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj48IS0te3tnZXRDYXJkRGF0YT8ucmV2ZW51ZT8udmFsdWUgPz8gJy0tJ319IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTFcIj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyMVwiPnt7c3RvcmVPcGVyYXRpb25EYXRhPy50b3BMYXRlT3Blbj8uYXZnU3RvcmVPcGVuVGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/c3RvcmVPcGVyYXRpb25EYXRhPy50b3BMYXRlT3Blbj8uYXZnU3RvcmVPcGVuVGltZTonLS0nIH19PC9zcGFuPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWItaGVhZGVyXCI+QXZnLiBTdG9yZSBPcGVuaW5nIFRpbWU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02IG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQgY2FyZC1ib3JkZXIgaC0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBlbGxpcHNlMSBib3JkZXItMCBweC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtbiBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyMSB0ZXh0LWRlY29yYXRpb24tdW5kZXJsaW5lIGN1cnNvci1wb2ludGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzdG9yZVZpZXcoc3RvcmVPcGVyYXRpb25EYXRhPy50b3BFYXJseUNsb3NlPy5zdG9yZUlkKVwiPnt7c3RvcmVPcGVyYXRpb25EYXRhPy50b3BFYXJseUNsb3NlPy5zdG9yZU5hbWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JlT3BlcmF0aW9uRGF0YT8udG9wRWFybHlDbG9zZT8uc3RvcmVOYW1lIDonLS0nfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLWhlYWRlciBtdC0yXCI+VG9wIEVhcmx5IENsb3NlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgcC0wIGgtNzVweCBtdC0zIG14LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj48IS0te3tnZXRDYXJkRGF0YT8ucmV2ZW51ZT8udmFsdWUgPz8gJy0tJ319IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTFcIj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyMVwiPnt7c3RvcmVPcGVyYXRpb25EYXRhPy50b3BFYXJseUNsb3NlPy5hdmdTdG9yZUNsb3NlVGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/c3RvcmVPcGVyYXRpb25EYXRhPy50b3BFYXJseUNsb3NlPy5hdmdTdG9yZUNsb3NlVGltZTonLS0nIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJcIj5BdmcuIFN0b3JlIENsb3NpbmcgVGltZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2ICpuZ0lmPVwiIShzdG9yZUlkYXJyYXk/Lmxlbmd0aCA9PT0gMSAmJiAoc3RvcmVJZGFycmF5WzBdID09PSAnNDU5LTInIHx8IHN0b3JlSWRhcnJheVswXSA9PT0gJzQ1OS00JykpXCJcclxuICAgICAgICBjbGFzcz1cImNvbC1tZC0xMiBtdC0zXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQgbWItNVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgYm9yZGVyLTAgcHQtM1wiPlxyXG4gICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGl0bGUtdGV4dCBtYi0yXCI+U3VtbWFyeSBUYWJsZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtc3ViIG1iLTJcIj57e2hlYWRlckRhdGE/LmRhdGU/LnN0YXJ0RGF0ZSB8IGRhdGU6J2RkIE1NTSwgeXl5eSd9fSDigJNcclxuICAgICAgICAgICAgICAgICAgICAgICAge3toZWFkZXJEYXRhPy5kYXRlPy5lbmREYXRlIHwgZGF0ZTonZGQgTU1NLCB5eXl5J319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9oMz5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLXRvb2xiYXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIHBvc2l0aW9uLXJlbGF0aXZlIG15LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ZnLWljb24gc3ZnLWljb24tMSBwb3NpdGlvbi1hYnNvbHV0ZSBtcy0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IG9wYWNpdHk9XCIwLjVcIiB4PVwiMTcuMDM2NVwiIHk9XCIxNS4xMjIzXCIgd2lkdGg9XCI4LjE1NTQ2XCIgaGVpZ2h0PVwiMlwiIHJ4PVwiMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJyb3RhdGUoNDUgMTcuMDM2NSAxNS4xMjIzKVwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIj48L3JlY3Q+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTExIDE5QzYuNTU1NTYgMTkgMyAxNS40NDQ0IDMgMTFDMyA2LjU1NTU2IDYuNTU1NTYgMyAxMSAzQzE1LjQ0NDQgMyAxOSA2LjU1NTU2IDE5IDExQzE5IDE1LjQ0NDQgMTUuNDQ0NCAxOSAxMSAxOVpNMTEgNUM3LjUzMzMzIDUgNSA3LjUzMzMzIDUgMTFDNSAxNC40NjY3IDcuNTMzMzMgMTcgMTEgMTdDMTQuNDY2NyAxNyAxNyAxNC40NjY3IDE3IDExQzE3IDcuNTMzMzMgMTQuNDY2NyA1IDExIDVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJjdXJyZW50Q29sb3JcIj48L3BhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgKGNoYW5nZSk9XCJzZWFyY2hEYXRhKClcIiBbKG5nTW9kZWwpXT1cInNlYXJjaFZhbHVlXCIgdHlwZT1cInRleHRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIHBzLTE0IG1lLTJcIiBhdXRvY29tcGxldGU9XCJvZmZcIiBwbGFjZWhvbGRlcj1cIlNlYXJjaFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIGZpbHRlciBTdGFydCAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGxpYi1maWx0ZXJzIFtkYXRhT2JqZWN0XT1cImRhdGFPYmplY3RcIiAoYXBwbGllZEZpbHRlcnMpPVwiYXBwbHlGaWx0ZXJzKCRldmVudClcIj48L2xpYi1maWx0ZXJzPiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gZmlsdGVyIEVuZCAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gU3VtIEJ1dHRvbiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIoc3RvcmVJZGFycmF5Py5sZW5ndGggPiAxICYmIGhlYWRlckRhdGE/LmRhdGU/LnN0YXJ0RGF0ZSAhPT0gaGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSkgJiYgIW5vRGF0YSAmJiAhbG9hZGluZ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJvblZhbHVlVHlwZSgnc3VtJylcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tZGVmYXVsdCBteC0yIGJ0bi1vdXRsaW5lIGJ0bi1vdXRsaW5lLWRlZmF1bHQgcm91bmRlZC0zIHRleHQtbm93cmFwIGJvcmRlci12YWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2J0bi1saWdodCBidG4tcHJpbWFyeSB0ZXh0LXdoaXRlJzogdHlwZVZhbHVlID09PSAnc3VtJ31cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiIFtuZ1N0eWxlXT1cInsnc3Ryb2tlJzogdHlwZVZhbHVlID09PSAnc3VtJyA/ICcjRkZGRkZGJyA6ICcjMzQ0MDU0J31cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNOS45OTkzNSA0LjE2Njc1VjE1LjgzMzRNNC4xNjYwMiAxMC4wMDAxSDE1LjgzMjdcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcy0yXCIgW25nQ2xhc3NdPVwieyd0ZXh0LXdoaXRlJzogdHlwZVZhbHVlID09PSAnc3VtJ31cIj5TdW08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBBdmVyYWdlIEJ1dHRvbiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uICpuZ0lmPVwiKHN0b3JlSWRhcnJheT8ubGVuZ3RoID4gMSAmJiBoZWFkZXJEYXRhPy5kYXRlPy5zdGFydERhdGUgIT09IGhlYWRlckRhdGE/LmRhdGU/LmVuZERhdGUpIFxyXG4gJiYgIW5vRGF0YSAmJiAhbG9hZGluZ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJvblZhbHVlVHlwZSgnYXZlcmFnZScpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLWRlZmF1bHQgbXgtMiBidG4tb3V0bGluZSBidG4tb3V0bGluZS1kZWZhdWx0IHJvdW5kZWQtMyB0ZXh0LW5vd3JhcCBib3JkZXItdmFsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydidG4tbGlnaHQgYnRuLXByaW1hcnkgdGV4dC13aGl0ZSc6IHR5cGVWYWx1ZSA9PT0gJ2F2ZXJhZ2UnfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsnc3Ryb2tlJzogdHlwZVZhbHVlID09PSAnYXZlcmFnZScgPyAnI0ZGRkZGRicgOiAnIzEwMTgyOCd9XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTcuNSAxNy41SDguMzMzMzNDNS41ODMzMyAxNy41IDQuMjA4MzMgMTcuNSAzLjM1NDE3IDE2LjY0NThDMi41IDE1Ljc5MTcgMi41IDE0LjQxNjcgMi41IDExLjY2NjdWMi41TTUgMTBINS4wMDc1TTcuNDk5MTcgMTBINy41MDU4M005Ljk5NzUgMTBIMTAuMDA0Mk0xMi40OTU4IDEwSDEyLjUwMzNNMTQuOTk0MiAxMEgxNS4wMDE3TTE3LjQ5MjUgMTBIMTcuNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk01IDUuODMzNDFDNS41NjA4MyA0Ljg5ODQxIDYuMzIyNSA0LjE2Njc1IDcuNDk0MTcgNC4xNjY3NUMxMi40NDY3IDQuMTY2NzUgOS42NjI1IDE0LjE2NjcgMTQuOTg1IDE0LjE2NjdDMTYuMTY1IDE0LjE2NjcgMTYuOTIxNyAxMy40MzAxIDE3LjUgMTIuNTAwMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXMtMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J3RleHQtd2hpdGUnOiB0eXBlVmFsdWUgPT09ICdhdmVyYWdlJ31cIj5BdmVyYWdlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCIhbm9EYXRhICYmICFsb2FkaW5nXCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJleHBvcnRYTFNYKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IG14LTIgYnRuLW91dGxpbmUgYnRuLW91dGxpbmUtZGVmYXVsdCByb3VuZGVkLTMgdGV4dC1ub3dyYXAgYm9yZGVyLXZhbFwiPjxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xNy41IDEyLjVWMTUuODMzM0MxNy41IDE2LjI3NTQgMTcuMzI0NCAxNi42OTkzIDE3LjAxMTggMTcuMDExOEMxNi42OTkzIDE3LjMyNDQgMTYuMjc1NCAxNy41IDE1LjgzMzMgMTcuNUg0LjE2NjY3QzMuNzI0NjQgMTcuNSAzLjMwMDcyIDE3LjMyNDQgMi45ODgxNiAxNy4wMTE4QzIuNjc1NTkgMTYuNjk5MyAyLjUgMTYuMjc1NCAyLjUgMTUuODMzM1YxMi41TTE0LjE2NjcgNi42NjY2N0wxMCAyLjVNMTAgMi41TDUuODMzMzMgNi42NjY2N00xMCAyLjVWMTIuNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjxzcGFuIGNsYXNzPVwibXMtMlwiPkV4cG9ydDwvc3Bhbj4gPC9idXR0b24+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cImxvYWRpbmdcIiBjbGFzcz1cInJvdyBsb2FkZXIgIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm9EYXRhXCIgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctbm9kYXRhLXRhYmxlXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvTm9kYXRhMS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS10aXRsZVwiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS1zdWJcIj5UaGVyZSBpcyBubyByZXN1bHQgZm9yIHRoaXMgc3VtbWFyeSB0YWJsZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIW5vRGF0YSAmJiAhbG9hZGluZ1wiIGNhbHNzPVwiY2FyZC1ib2R5XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtcmVzcG9uc2l2ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cInctMTAwIHRhYmxlIGJvdHRvbS1ib3JkZXIgdGV4dC1ub3dyYXBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCdzdG9yZU5hbWUnKVwiPlN0b3JlIE5hbWUgPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJ3N0b3JlTmFtZScgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAnc3RvcmVOYW1lJyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJ3N0b3JlSWQnKVwiPlN0b3JlIElEIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICdzdG9yZUlkJyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICdzdG9yZUlkJyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoICpuZ0lmPVwic3RvcmVDb2RlXCIgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9uU29ydCgnc3RvcmVDb2RlJylcIj5TdG9yZSBDb2RlIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICdzdG9yZUNvZGUnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJ3N0b3JlQ29kZScgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCAqbmdJZj1cInN0b3JlSWRhcnJheT8ubGVuZ3RoID09PSAxXCIgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9uU29ydCgnZGF0ZScpXCI+RGF0ZSA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAnZGF0ZScgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAnZGF0ZScgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCdmb290ZmFsbENvdW50JylcIj5Gb290ZmFsbCA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAnZm9vdGZhbGxDb3VudCcgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAnZm9vdGZhbGxDb3VudCcgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCdib3VuY2VkQ291bnQnKVwiPnt7aGVhZGVyRGF0YT8uY2xpZW50XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA9PT0nNDUyJz8nTGVzcyB0aGFuICcrIHRoaXMuZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlICsnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW5zJzonQm91bmNlZCd9fSBGb290ZmFsbDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICdib3VuY2VkQ291bnQnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJ2JvdW5jZWRDb3VudCcgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCdlbmdhZ2Vyc0NvdW50JylcIj57e2hlYWRlckRhdGE/LmNsaWVudFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPT09JzQ1Mic/ICdNb3JlIHRoYW4gJysgZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlICsnIG1pbnMnOidFbmdhZ2Vycyd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICdlbmdhZ2Vyc0NvdW50JyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICdlbmdhZ2Vyc0NvdW50JyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25Tb3J0KCdtaXNzZWRPcHBvcnR1bml0eUNvdW50JylcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJz9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/Lm1pc3NlZE9wcG9ydHVuaXR5RnJvbS52YWx1ZSArICcgLSAnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlUby52YWx1ZSArJyBtaW5zJzonTWlzc2VkIE9wcG9ydHVuaXR5J319PHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJ21pc3NlZE9wcG9ydHVuaXR5Q291bnQnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJ21pc3NlZE9wcG9ydHVuaXR5Q291bnQnID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgIT09JzQ1MidcIiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCdwb3RlbnRpYWxCdXllcnNDb3VudCcpXCI+UG90ZW50aWFsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCdXllcnMgPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJ3BvdGVudGlhbEJ1eWVyc0NvdW50JyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICdwb3RlbnRpYWxCdXllcnNDb3VudCcgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCdjb252ZXJzaW9uUmF0ZScpXCI+e3toZWFkZXJEYXRhPy5jbGllbnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID09PSc0NTInPydNb3JlIHRoYW4gJysgZmVhdHVyZUNvbmZpZz8uY29udmVyc2lvbi52YWx1ZSArICcgbWlucyc6J0NvbnZlcnNpb24nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJhdGUgPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJ2NvbnZlcnNpb25SYXRlJyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICdjb252ZXJzaW9uUmF0ZScgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCdOT0JDb3VudCcpXCI+Tk9CIENvdW50IDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICdOT0JDb3VudCcgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAnTk9CQ291bnQnID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9uU29ydCgnYXZnRHdlbGxUaW1lJylcIj5BdmcuRHdlbGwgVGltZSA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAnYXZnRHdlbGxUaW1lJyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICdhdmdEd2VsbFRpbWUnID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9uU29ydCgnYXZnSW5mcmFEb3dudGltZScpXCI+QXZnLkluZnJhIERvd25UaW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJ2F2Z0luZnJhRG93bnRpbWUnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJ2F2Z0luZnJhRG93bnRpbWUnID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9uU29ydCgncGFzc2VyQnlfY291bnQnKVwiPlBhc3NlciBCeTxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICdwYXNzZXJCeV9jb3VudCcgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAncGFzc2VyQnlfY291bnQnID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9uU29ydCgnYmVsb3cxMicpXCI+QmVsb3cxMiA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAnYmVsb3cxMicgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAnYmVsb3cxMicgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCcxMy0xOScpXCI+MTMtMTkgPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJzEzLTE5JyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICcxMy0xOScgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCcyMC0zMCcpXCI+MjAtMzAgPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJzIwLTMwJyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICcyMC0zMCcgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0nMTkzJ1wiIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJzMxLTQwJylcIj4zMS00MCA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAnMzEtNDAnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJzMxLTQwJyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ID09PScxOTMnXCIgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9uU29ydCgnNDEtNTAnKVwiPjQxLTUwIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICc0MS01MCcgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAnNDEtNTAnID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09JzE5MydcIiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCc1MS02MCcpXCI+NTEtNjAgPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJzUxLTYwJyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICc1MS02MCcgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0nMTkzJ1wiIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJzMxLTQ1JylcIj4zMS00NSA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAnMzEtNDUnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJzMxLTQ1JyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PScxOTMnXCIgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9uU29ydCgnNDYtNTknKVwiPjQ2LTU5IDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICc0Ni01OScgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAnNDYtNTknID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9uU29ydCgnNjAgYWJvdmUnKVwiPjYwIGFib3ZlIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICc2MCBhYm92ZScgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAnNjAgYWJvdmUnID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9uU29ydCgnbWFsZScpXCI+TWFsZSA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAnbWFsZScgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAnbWFsZScgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCdmZW1hbGUnKVwiPkZlbWFsZSA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAnZmVtYWxlJyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICdmZW1hbGUnID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgb2JqIG9mIGdldFN1bW1hcnlUYWJsZURhdGE7bGV0IGk9aW5kZXg7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSAoY2xpY2spPVwic3RvcmVWaWV3KG9iailcIiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJ0ZXh0LXByaW1hcnkgdGV4dC1jYXBpdGFsaXplIHRleHQtZGVjb3JhdGlvbi11bmRlcmxpbmUgY3Vyc29yLXBvaW50ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic3RvcmVWaWV3KG9iai5zdG9yZUlkKVwiPnt7b2JqLnN0b3JlTmFtZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tvYmouc3RvcmVJZH19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgKm5nSWY9XCJzdG9yZUNvZGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgb2JqLnN0b3JlQ29kZSAhPT0gbnVsbCAmJiBvYmouc3RvcmVDb2RlICE9PSAnJyA/IG9iai5zdG9yZUNvZGUgOiAnLScgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cIm9iaj8uZGF0ZVwiPnt7b2JqPy5kYXRlIHwgZGF0ZTonTU1NIGRkLCB5eXl5J319PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tvYmouZm9vdGZhbGxDb3VudH19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tvYmouYm91bmNlZENvdW50fX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e29iai5lbmdhZ2Vyc0NvdW50fX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e29iai5taXNzZWRPcHBvcnR1bml0eUNvdW50fX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0nNDUyJ1wiPnt7b2JqLnBvdGVudGlhbEJ1eWVyc0NvdW50fX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e29iai5jb252ZXJzaW9uUmF0ZX19JTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7b2JqLk5PQkNvdW50fX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e29iai5hdmdEd2VsbFRpbWV9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7b2JqLmF2Z0luZnJhRG93bnRpbWV9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7b2JqLnBhc3NlckJ5X2NvdW50fX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e29iai5iZWxvdzEyfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e29ialsnMTMtMTknXX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tvYmpbJzIwLTMwJ119fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ID09PScxOTMnXCI+e3tvYmpbJzMxLTQwJ119fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ID09PScxOTMnXCI+e3tvYmpbXCI0MS01MFwiXX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09JzE5MydcIj57e29ialtcIjUxLTYwXCJdfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0nMTkzJ1wiPnt7b2JqWyczMS00NSddfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0nMTkzJ1wiPnt7b2JqW1wiNDYtNTlcIl19fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7b2JqW1wiNjAgYWJvdmVcIl19fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7b2JqLm1hbGV9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7b2JqLmZlbWFsZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC90YWJsZT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGxpYi1wYWdpbmF0aW9uIFtpdGVtc1BlclBhZ2VdPVwicGFnZVNpemVcIiBbY3VycmVudFBhZ2VdPVwib2Zmc2V0XCIgW3RvdGFsSXRlbXNdPVwidG90YWxJdGVtc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW3BhZ2luYXRpb25TaXplc109XCJwYWdpbmF0aW9uU2l6ZXNcIiBbcGFnZVNpemVdPVwicGFnZVNpemVcIiAocGFnZUNoYW5nZSk9XCJvblBhZ2VDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKHBhZ2VTaXplQ2hhbmdlKT1cIm9uUGFnZVNpemVDaGFuZ2UoJGV2ZW50KVwiPjwvbGliLXBhZ2luYXRpb24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG48L2Rpdj5cclxuXHJcbjxkaXYgKm5nSWY9XCJzaG93UmVwb3J0UHJvY2Vzc2luZ0NhcmQgJiYgIWRhdGFQcm9jZXNzZWRMb2FkaW5nXCIgY2xhc3M9XCJyb3cgcHgtM1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNhcmQgZGF0YXByb2Nlc3NlZCBwYi0wIHB4LTAgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgPGltZyBjbGFzcz1cImRhdGFwcm9jZXNzZWRnaWZcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9kYXRhX2FuYWx5c2VfZ2lmLmdpZlwiIGFsdD1cIlwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkYXRhcHJvY2Vzc2VkLXRpdGxlXCI+RGF0YSBiZWluZyBQcm9jZXNzZWQ8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0YXByb2Nlc3NlZC1zdWJcIj5EYXRhIGZvciB0aGUgc2VsZWN0ZWQgZGF0ZSB7eyB5ZXN0ZXJkYXlEYXRlIH19LCBpcyBjdXJyZW50bHkgYmVpbmcgcHJvY2Vzc2VkIGFuZFxyXG4gICAgICAgICAgICB3aWxsIGJlIGF2YWlsYWJsZSBzaG9ydGx5LjwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkYXRhcHJvY2Vzc2VkLXN1YlwiPiBJZiB5b3Ugd2lzaCB0byB2aWV3IGRhdGEgZm9yIG90aGVyIGRhdGVzLCBSZW1vdmUge3sgeWVzdGVyZGF5RGF0ZSB9fSBmcm9tIHlvdXJcclxuICAgICAgICAgICAgc2VsZWN0aW9uIG9yIGNob29zZSBhIGRpZmZlcmVudCBkYXRlIHJhbmdlLjwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG48L2Rpdj5cclxuPGRpdiAqbmdJZj1cImRhdGFQcm9jZXNzZWRMb2FkaW5nXCIgY2xhc3M9XCJjYXJkIHJvdyBsb2FkZXIgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48ZGl2ICpuZ0lmPVwiIXNob3dSZXBvcnRQcm9jZXNzaW5nQ2FyZCAmJiAhZGF0YVByb2Nlc3NlZExvYWRpbmcgJiYgaXNGb290ZmFsbFZpZXdcIiBjbGFzcz1cInJvd1wiPlxyXG4gICAgPGRpdiAqbmdJZj1cIihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy51c2VyVHlwZSA9PT0gJ3RhbmdvJyB8fCBjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uaXNOb3JtYWxpemVkXCJcclxuICAgICAgICBjbGFzcz1cImNvbC1tZC0xMiB0ZXh0LWVuZFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIGZvcm0tc3dpdGNoIG15LTJcIiBzdHlsZT1cImZsb2F0OiByaWdodCAhaW1wb3J0YW50O1wiPlxyXG4gICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0IGN1cnNvci1wb2ludGVyXCIgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJmbGV4U3dpdGNoQ2hlY2tEZWZhdWx0XCJcclxuICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cIm5vcm1hbGl6ZVwiIChjaGFuZ2UpPVwidG9nZ2xlTm9ybWFsaXplZmZvbmx5KCRldmVudClcIj48c3BhbiBjbGFzcz1cIm5vcm1hbGl6ZS10ZXh0XCI+Vmlld1xyXG4gICAgICAgICAgICAgICAgTm9ybWFsaXplZFxyXG4gICAgICAgICAgICAgICAgRGF0YTwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInJvdyBneC0zXCIgKm5nSWY9XCJzdG9yZUlkYXJyYXk/Lmxlbmd0aD4xXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0yXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGNhcmQtYm9yZGVyIGgtMTAwXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGgtMTAwIHBvc2l0aW9uLXJlbGF0aXZlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHgtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGVsbGlwc2UxIGJvcmRlci0wIHB4LTMgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNtLXpvb20tODAgdy0xMDAgZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW5cIiBbbmdiVG9vbHRpcF09XCJmb290ZmFsbFRvb2x0aXBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwicmlnaHRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gRGlzcGxheSBmb290ZmFsbCBjb3VudCBvciAnLS0nIGlmIG5vdCBhdmFpbGFibGUgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcmQtbGFiZWwgaGVhZGVyXCI+e3sgZ2V0Rm9vdGZhbGxDYXJkRGF0YT8uY2FyZD8uZm9vdGZhbGw/LmNvdW50ID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRGb290ZmFsbENhcmREYXRhPy5jYXJkPy5mb290ZmFsbD8uY291bnQudG9Mb2NhbGVTdHJpbmcoJ2VuLUlOJykgOiAnLS0nXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJcIj57e2Zvb3RmYWxsTmFtZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gU3dpdGNoIHRvZ2dsZSAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdG9vbGJhclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiB0ZXh0LWVuZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIGZvcm0tc3dpdGNoIHRleHQtZW5kXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cImZvcm0tY2hlY2staW5wdXQgbXQtMSBjdXJzb3ItcG9pbnRlclwiIHR5cGU9XCJjaGVja2JveFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cImZsZXhTd2l0Y2hDaGVja0RlZmF1bHRcIiBbKG5nTW9kZWwpXT1cImlzQXZlcmFnZUZvb3RmYWxsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwidG9nZ2xlQXZlcmFnZUZvb3RmYWxsKCRldmVudClcIiBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJpc0F2ZXJhZ2VGb290ZmFsbFwiIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbCBtdC01XCI+QXZlcmFnZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhaXNBdmVyYWdlRm9vdGZhbGxcIiBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgbXQtNVwiPkFjdHVhbDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2Zvb3RmYWxsVG9vbHRpcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9vbHRpcC1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz1cInRvb2x0aXAtdGl0bGUgdGV4dC1zdGFydFwiPkZvb3RmYWxsPC9oNT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXN0YXJ0XCI+VG90YWwgdW5pcXVlIHdhbGstaW5zIGludG8gdGhlIHNlbGVjdGVkIHN0b3Jlcy48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz1cInRleHQtc3RhcnRcIj57e2dldENhcmREYXRhPy5mb290ZmFsbD8uY291bnR9fTwvaDQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC05IHBlLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFtjbGFzcy5kLW5vbmVdPVwiIWZvb3RmYWxsbG9hZGluZ1wiIGNsYXNzPVwidGV4dC1jZW50ZXIgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCIgc3R5bGU9XCJoZWlnaHQ6MTAwcHhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImxvYWRlci1pbWdcIiBzcmM9XCJhc3NldHMvdGFuZ28vbGF5b3V0L0xvYWRlci5naWZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZm9vdGZhbGxOb2RhdGFcIiBjbGFzcz1cInJvd1wiPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXJkLWJvZHkgcGItMCBweC0wIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImZvb3RpbWctbm9kYXRhMVwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ljb25zL05vZGF0YTEuc3ZnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtdGl0bGUxXCI+Tm8gZGF0YSBmb3VuZDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwibm9kYXRhLXN1YlwiPlRoZXJlIGlzIG5vIHJlc3VsdCBmb3IgdGhpcyBjb252ZXJzaW9uIGZ1bm5lbDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW2NsYXNzLmQtbm9uZV09XCJmb290ZmFsbE5vZGF0YSB8fCBmb290ZmFsbGxvYWRpbmdcIiBjbGFzcz1cInRleHQtY2VudGVyXCIgaWQ9XCJGb290ZmFsbFwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTMgbXQtMyBhdmd3ZWVrbHlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMSBjdXJzb3ItcG9pbnRlciBmcy01XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiZGF0ZVR5cGUgPT09J2RhaWx5JyA/ICd0ZXh0LXByaW1hcnknIDonJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJkYXRlVmFsdWUoJ2RhaWx5JylcIj4xRDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtdC0xIGN1cnNvci1wb2ludGVyIGZzLTVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJkYXRlVHlwZSA9PT0nd2Vla2x5JyA/ICd0ZXh0LXByaW1hcnknIDonJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJkYXRlVmFsdWUoJ3dlZWtseScpXCI+MVc8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMSBjdXJzb3ItcG9pbnRlciBmcy01XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiZGF0ZVR5cGUgPT09J21vbnRobHknID8gJ3RleHQtcHJpbWFyeScgOicnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImRhdGVWYWx1ZSgnbW9udGhseScpXCI+MU08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWZvb3RlciBtcy0yIHAtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm10LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCIhZ2V0Rm9vdGZhbGxDYXJkRGF0YT8uZGF0YT8uZm9vdGZhbGw/LlByZXZpb3VzVmFyaWF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE4IDE4XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzIzMjhfNDY1NClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMS41IDlMNi43NSA0LjI1TDQuMjUgNi43NUwwLjUgM00xMS41IDlIOC41TTExLjUgOVY2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiNEOTJEMjBcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzIzMjhfNDY1NFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJnZXRGb290ZmFsbENhcmREYXRhPy5kYXRhPy5mb290ZmFsbD8uUHJldmlvdXNWYXJpYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzIxNl8xMTgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTEuNSAzTDYuNzUgNy43NUw0LjI1IDUuMjVMMC41IDlNMTEuNSAzSDguNU0xMS41IDNWNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMDM5ODU1XCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8zMjE2XzExOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImdldEZvb3RmYWxsQ2FyZERhdGE/LmRhdGE/LmZvb3RmYWxsPy5QcmV2aW91c0RhdGEgPT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWUgbXMtMlwiPjAlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm10LTIgbXMtMlwiPjxzcGFuIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJnZXRGb290ZmFsbENhcmREYXRhPy5kYXRhPy5mb290ZmFsbD8uUHJldmlvdXNEYXRhICE9PTBcIj57e2dldEZvb3RmYWxsQ2FyZERhdGE/LmRhdGE/LmZvb3RmYWxsPy5QcmV2aW91c0RhdGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGdldEZvb3RmYWxsQ2FyZERhdGE/LmRhdGE/LmZvb3RmYWxsPy5QcmV2aW91c0RhdGE6Jy0tJ319JTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwid2Vlay1mb250XCI+IHZzIFByZXZpb3VzIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J2RhaWx5J1wiPmRheTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSd3ZWVrbHknXCI+d2Vlazwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJkYXRlVHlwZSA9PT0nbW9udGhseSdcIj5tb250aDwvc3Bhbj4gPC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtM1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBjYXJkLWJvcmRlciBoLTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgZWxsaXBzZTEgYm9yZGVyLTAgcHgtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCIgW25nYlRvb2x0aXBdPVwiZG93blRvb2x0aXBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwicmlnaHRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLWhlYWRlcm5ld1wiPkF2ZyBEb3dudGltZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBtZS0yXCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGhlYWRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LmF2Z0Rvd25UaW1lID09PSAwXCI+MCBtaW5zPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBcIiAqbmdJZj1cImdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8uYXZnRG93blRpbWUgIT09IDBcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhcmQtbGFiZWwgaGVhZGVyXCI+e3tnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LmF2Z0Rvd25UaW1lID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5hdmdEb3duVGltZSA6Jy0tJ319IG1pbnMgPC9zcGFuPjxzcGFuIGNsYXNzPVwibXQtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiIWdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uZGF0YT8ubWF4X2Rvd250aW1lX3N0b3JlPy5QcmV2aW91c1ZhcmlhdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAxOCAxOFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8yMzI4XzQ2NTQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMS41IDlMNi43NSA0LjI1TDQuMjUgNi43NUwwLjUgM00xMS41IDlIOC41TTExLjUgOVY2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiI0Q5MkQyMFwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8yMzI4XzQ2NTRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cImdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uZGF0YT8ubWF4X2Rvd250aW1lX3N0b3JlPy5QcmV2aW91c1ZhcmlhdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zMjE2XzExOClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTExLjUgM0w2Ljc1IDcuNzVMNC4yNSA1LjI1TDAuNSA5TTExLjUgM0g4LjVNMTEuNSAzVjZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMDM5ODU1XCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzMyMTZfMTE4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMiBtcy0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5kYXRhPy5tYXhfZG93bnRpbWVfc3RvcmU/LlByZXZpb3VzRGF0YSA9PT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiPjAlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uZGF0YT8ubWF4X2Rvd250aW1lX3N0b3JlPy5QcmV2aW91c0RhdGEgIT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj57e2dldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uZGF0YT8ubWF4X2Rvd250aW1lX3N0b3JlPy5QcmV2aW91c0RhdGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uZGF0YT8ubWF4X2Rvd250aW1lX3N0b3JlPy5QcmV2aW91c0RhdGE6Jy0tJ319JTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3ZWVrLWZvbnRcIj4gdnMgUHJldmlvdXMgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSdkYWlseSdcIj5kYXk8L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSd3ZWVrbHknXCI+d2Vlazwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSdtb250aGx5J1wiPm1vbnRoPC9zcGFuPjwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJzdWItaGVhZGVyXCI+QXZnIERvd24gVGltZSA8L2Rpdj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgICpuZ0lmPVwiZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5hdmdEb3duVGltZSAmJiBnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LmF2Z0Rvd25UaW1lICE9PSAwIFwiIGNsYXNzPVwiY2FyZC1sYWJlbCBoZWFkZXIgdGV4dC1kZWNvcmF0aW9uLXVuZGVybGluZSBjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic3RvcmVWaWV3KGdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uZGF0YT8ubWF4X2Rvd250aW1lX3N0b3JlPy5zdG9yZV9pZClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5kYXRhPy5tYXhfZG93bnRpbWVfc3RvcmU/LnN0b3JlX25hbWV9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAgKm5nSWY9XCIhZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5hdmdEb3duVGltZSB8fCBnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LmF2Z0Rvd25UaW1lID09PSAwXCIgY2xhc3M9XCJoZWFkZXJcIj5Ob3QgQXZhaWxhYmxlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItaGVhZGVyXCI+SGlnaGVzdCBEb3dudGltZSBTdG9yZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2Rvd25Ub29sdGlwPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b29sdGlwLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwidG9vbHRpcC10aXRsZSB0ZXh0LXN0YXJ0XCI+QXZnIERvd24gVGltZTwvaDU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwidGV4dC1zdGFydFwiPkF2ZXJhZ2UgY2FtZXJhICYgbmV0d29yayBkb3dudGltZSBmb3IgdGhlIHNlbGVjdGVkIHN0b3Jlcy48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTdcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQgY2FyZC1ib3JkZXIgaC0xMDBcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgZ3gtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMCBkLWZsZXggZmxleC1jb2x1bW4gaC0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGdhcC0zIG1lLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgZWxsaXBzZTEgYm9yZGVyLTAgcHgtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJuZXdcIj5TdG9yZSBPcGVyYXRpb25zIDxzcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIG5nYlRvb2x0aXA9XCJBdmcgc3RvcmUgb3BlbiAmIGNsb3NlIHRpbWUgYWNyb3NzIHRoZSBzZWxlY3RlZCBzdG9yZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwidG9wXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMTQzMl84MDAzNSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwNjUgMTAuNjY2NlY3Ljk5OTkyTTguMDAwNjUgNS4zMzMyNUg4LjAwNzMyTTE0LjY2NzMgNy45OTk5MkMxNC42NjczIDExLjY4MTggMTEuNjgyNiAxNC42NjY2IDguMDAwNjUgMTQuNjY2NkM0LjMxODc1IDE0LjY2NjYgMS4zMzM5OCAxMS42ODE4IDEuMzMzOTggNy45OTk5MkMxLjMzMzk4IDQuMzE4MDIgNC4zMTg3NSAxLjMzMzI1IDguMDAwNjUgMS4zMzMyNUMxMS42ODI2IDEuMzMzMjUgMTQuNjY3MyA0LjMxODAyIDE0LjY2NzMgNy45OTk5MlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8xNDMyXzgwMDM1XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCI2XCIgaGVpZ2h0PVwiMTBcIiB2aWV3Qm94PVwiMCAwIDYgMTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEgOUw1IDVMMSAxXCIgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWFyb3VuZCBteS1hdXRvXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBBdmcgT3BlbiBUaW1lIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNSB0ZXh0LWNlbnRlciBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC10aXRsZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tzdG9yZU9wZXJhdGlvbkRhdGE/Lm92ZXJhbGw/LmF2Z09wZW5UaW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IHN0b3JlT3BlcmF0aW9uRGF0YT8ub3ZlcmFsbD8uYXZnT3BlblRpbWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJcIj5BdmcuIE9wZW4gVGltZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBEaXZpZGVyIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS08ZGl2IGNsYXNzPVwiY29sLW1kLTIgbXQtNSBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIxXCIgdmlld0JveD1cIjAgMCAyMCAxXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGluZSB5MT1cIjAuNVwiIHgyPVwiMjBcIiB5Mj1cIjAuNVwiIHN0cm9rZT1cIiNEMEQ1RERcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4tLT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBBdmcgQ2xvc2UgVGltZSAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTUgdGV4dC1jZW50ZXIgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtdGl0bGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7c3RvcmVPcGVyYXRpb25EYXRhPy5vdmVyYWxsPy5hdmdDbG9zZVRpbWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gc3RvcmVPcGVyYXRpb25EYXRhPy5vdmVyYWxsPy5hdmdDbG9zZVRpbWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJcIj5BdmcuIENsb3NlIFRpbWU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gZC1mbGV4IC0tPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gY2FyZC1ib2R5IC0tPlxyXG5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIGNvbC1tZC02IC0tPlxyXG5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMyBteS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGNhcmQtYm9yZGVyIGgtMTAwIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgZWxsaXBzZTEgYm9yZGVyLTAgcHgtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uIGN1cnNvci1wb2ludGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzdG9yZVZpZXcoc3RvcmVPcGVyYXRpb25EYXRhPy50b3BMYXRlT3Blbj8uc3RvcmVJZClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXJkLWxhYmVsbmV3IGhlYWRlciB0ZXh0LWRlY29yYXRpb24tdW5kZXJsaW5lXCI+e3tzdG9yZU9wZXJhdGlvbkRhdGE/LnRvcExhdGVPcGVuPy5zdG9yZU5hbWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmVPcGVyYXRpb25EYXRhPy50b3BMYXRlT3Blbj8uc3RvcmVOYW1lIDonLS0nfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3ViLWhlYWRlclwiPlRvcCBMYXRlIE9wZW48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IG10LTZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPjwhLS17e2dldENhcmREYXRhPy5yZXZlbnVlPy52YWx1ZSA/PyAnLS0nfX0gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMVwiPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXIxXCI+e3tzdG9yZU9wZXJhdGlvbkRhdGE/LnRvcExhdGVPcGVuPy5hdmdTdG9yZU9wZW5UaW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID9zdG9yZU9wZXJhdGlvbkRhdGE/LnRvcExhdGVPcGVuPy5hdmdTdG9yZU9wZW5UaW1lOictLScgfX08L3NwYW4+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJcIj5BdmcuIFN0b3JlIE9wZW5pbmcgVGltZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTMgbXktMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBjYXJkLWJvcmRlciBoLTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgZWxsaXBzZTEgYm9yZGVyLTAgcHgtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uIGN1cnNvci1wb2ludGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzdG9yZVZpZXcoc3RvcmVPcGVyYXRpb25EYXRhPy50b3BFYXJseUNsb3NlPy5zdG9yZUlkKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhcmQtbGFiZWxuZXcgaGVhZGVyIHRleHQtZGVjb3JhdGlvbi11bmRlcmxpbmVcIj57e3N0b3JlT3BlcmF0aW9uRGF0YT8udG9wRWFybHlDbG9zZT8uc3RvcmVOYW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JlT3BlcmF0aW9uRGF0YT8udG9wRWFybHlDbG9zZT8uc3RvcmVOYW1lIDonLS0nfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3ViLWhlYWRlclwiPlRvcCBFYXJseSBDbG9zZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbXQtNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyXCI+PCEtLXt7Z2V0Q2FyZERhdGE/LnJldmVudWU/LnZhbHVlID8/ICctLSd9fSAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xXCI+IDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlcjFcIj57e3N0b3JlT3BlcmF0aW9uRGF0YT8udG9wRWFybHlDbG9zZT8uYXZnU3RvcmVDbG9zZVRpbWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgP3N0b3JlT3BlcmF0aW9uRGF0YT8udG9wRWFybHlDbG9zZT8uYXZnU3RvcmVDbG9zZVRpbWU6Jy0tJyB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWItaGVhZGVyXCI+QXZnLiBTdG9yZSBDbG9zaW5nIFRpbWU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSByb3cgLS0+XHJcbiAgICAgICAgICAgIDwvZGl2PiA8IS0tIGNhcmQgLS0+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJyb3cgZ3gtMyBtYi00XCIgc3R5bGU9XCJoZWlnaHQ6MzAwcHhcIiAqbmdJZj1cInN0b3JlSWRhcnJheT8ubGVuZ3RoPT09MVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBjYXJkLWJvcmRlclwiIHN0eWxlPVwiaGVpZ2h0OjMwMHB4XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IHBvc2l0aW9uLXJlbGF0aXZlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHgtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGVsbGlwc2UxIGJvcmRlci0wIHB4LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCIgW25nYlRvb2x0aXBdPVwiZm9vdGZhbGxUb29sdGlwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwicmlnaHRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjYXJkLWxhYmVsIGhlYWRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgZ2V0Rm9vdGZhbGxDYXJkRGF0YT8uY2FyZD8uZm9vdGZhbGw/LmNvdW50XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGdldEZvb3RmYWxsQ2FyZERhdGE/LmNhcmQ/LmZvb3RmYWxsPy5jb3VudC50b0xvY2FsZVN0cmluZygnZW4tSU4nKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAnLS0nIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWItaGVhZGVyXCI+e3tmb290ZmFsbE5hbWV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10b29sYmFyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgdGV4dC1lbmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIGZvcm0tc3dpdGNoIHRleHQtZW5kXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dCBtdC0xIGN1cnNvci1wb2ludGVyXCIgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJpc0F2ZXJhZ2VGb290ZmFsbFwiIChjaGFuZ2UpPVwidG9nZ2xlQXZlcmFnZUZvb3RmYWxsKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImlzQXZlcmFnZUZvb3RmYWxsXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsIG10LTVcIj5BdmVyYWdlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIWlzQXZlcmFnZUZvb3RmYWxsXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsIG10LTVcIj5BY3R1YWw8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFRPT0xUSVAgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2Zvb3RmYWxsVG9vbHRpcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9vbHRpcC1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz1cInRvb2x0aXAtdGl0bGUgdGV4dC1zdGFydFwiPkZvb3RmYWxsPC9oNT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXN0YXJ0XCI+VG90YWwgdW5pcXVlIHdhbGstaW5zIGludG8gdGhlIHNlbGVjdGVkIHN0b3Jlcy48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz1cInRleHQtc3RhcnRcIj57e2dldENhcmREYXRhPy5mb290ZmFsbD8uY291bnR9fTwvaDQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMCBwZS0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBbY2xhc3MuZC1ub25lXT1cIiFmb290ZmFsbGxvYWRpbmdcIiBjbGFzcz1cInRleHQtY2VudGVyIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiIHN0eWxlPVwiaGVpZ2h0OjE4MHB4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJsb2FkZXItaW1nXCIgc3JjPVwiYXNzZXRzL3RhbmdvL2xheW91dC9Mb2FkZXIuZ2lmXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJmb290ZmFsbE5vZGF0YVwiIGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2FyZC1ib2R5IHBiLTAgcHgtMCBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJmb290aW1nLW5vZGF0YTFcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGExLnN2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS10aXRsZTFcIj5ObyBkYXRhIGZvdW5kPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFtjbGFzcy5kLW5vbmVdPVwiZm9vdGZhbGxOb2RhdGEgfHwgZm9vdGZhbGxsb2FkaW5nXCIgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiIHN0eWxlPVwiaGVpZ2h0OjE4MHB4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJGb290ZmFsbFwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0yIG10LTMgYXZnd2Vla2x5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm10LTEgY3Vyc29yLXBvaW50ZXIgZnMtNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cImRhdGVUeXBlID09PSdkYWlseScgPyAndGV4dC1wcmltYXJ5JyA6JydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZGF0ZVZhbHVlKCdkYWlseScpXCI+MUQ8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm10LTEgY3Vyc29yLXBvaW50ZXIgZnMtNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cImRhdGVUeXBlID09PSd3ZWVrbHknID8gJ3RleHQtcHJpbWFyeScgOicnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImRhdGVWYWx1ZSgnd2Vla2x5JylcIj4xVzwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMSBjdXJzb3ItcG9pbnRlciBmcy01XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiZGF0ZVR5cGUgPT09J21vbnRobHknID8gJ3RleHQtcHJpbWFyeScgOicnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImRhdGVWYWx1ZSgnbW9udGhseScpXCI+MU08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWZvb3RlciBtcy0yIHAtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm10LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCIhZ2V0Rm9vdGZhbGxDYXJkRGF0YT8uZGF0YT8uZm9vdGZhbGw/LlByZXZpb3VzVmFyaWF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE4IDE4XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzIzMjhfNDY1NClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMS41IDlMNi43NSA0LjI1TDQuMjUgNi43NUwwLjUgM00xMS41IDlIOC41TTExLjUgOVY2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiNEOTJEMjBcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzIzMjhfNDY1NFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJnZXRGb290ZmFsbENhcmREYXRhPy5kYXRhPy5mb290ZmFsbD8uUHJldmlvdXNWYXJpYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzIxNl8xMTgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTEuNSAzTDYuNzUgNy43NUw0LjI1IDUuMjVMMC41IDlNMTEuNSAzSDguNU0xMS41IDNWNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMDM5ODU1XCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8zMjE2XzExOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImdldEZvb3RmYWxsQ2FyZERhdGE/LmRhdGE/LmZvb3RmYWxsPy5QcmV2aW91c0RhdGEgPT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWUgbXMtMlwiPjAlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm10LTIgbXMtMlwiPjxzcGFuIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJnZXRGb290ZmFsbENhcmREYXRhPy5kYXRhPy5mb290ZmFsbD8uUHJldmlvdXNEYXRhICE9PTBcIj57e2dldEZvb3RmYWxsQ2FyZERhdGE/LmRhdGE/LmZvb3RmYWxsPy5QcmV2aW91c0RhdGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGdldEZvb3RmYWxsQ2FyZERhdGE/LmRhdGE/LmZvb3RmYWxsPy5QcmV2aW91c0RhdGE6Jy0tJ319JTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwid2Vlay1mb250XCI+IHZzIFByZXZpb3VzIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J2RhaWx5J1wiPmRheTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSd3ZWVrbHknXCI+d2Vlazwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJkYXRlVHlwZSA9PT0nbW9udGhseSdcIj5tb250aDwvc3Bhbj4gPC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSBweC0wIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIGNvbC1tZC0xMiAtLT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIHJvdyAtLT5cclxuXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtM1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBjYXJkLWJvcmRlciBoLTEwMFwiIHN0eWxlPVwiaGVpZ2h0OjEzMHB4ICFpbXBvcnRhbnRcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgcC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGVsbGlwc2UxIGJvcmRlci0wIHB4LTNcIiBzdHlsZT1cIm1pbi1oZWlnaHQ6NTRweFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCIgW25nYlRvb2x0aXBdPVwiZG93blRvb2x0aXBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwicmlnaHRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLWhlYWRlcm5ld1wiPkF2ZyBEb3dudGltZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBtZS0yXCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGhlYWRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LmF2Z0Rvd25UaW1lID09PSAwXCI+MCBtaW5zPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBcIiAqbmdJZj1cImdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8uYXZnRG93blRpbWUgIT09IDBcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhcmQtbGFiZWwgaGVhZGVyXCI+e3tnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LmF2Z0Rvd25UaW1lID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5hdmdEb3duVGltZSA6Jy0tJ319IG1pbnMgPC9zcGFuPjxzcGFuIGNsYXNzPVwibXQtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiIWdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uZGF0YT8ubWF4X2Rvd250aW1lX3N0b3JlPy5QcmV2aW91c1ZhcmlhdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAxOCAxOFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8yMzI4XzQ2NTQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMS41IDlMNi43NSA0LjI1TDQuMjUgNi43NUwwLjUgM00xMS41IDlIOC41TTExLjUgOVY2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiI0Q5MkQyMFwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8yMzI4XzQ2NTRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cImdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uZGF0YT8ubWF4X2Rvd250aW1lX3N0b3JlPy5QcmV2aW91c1ZhcmlhdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zMjE2XzExOClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTExLjUgM0w2Ljc1IDcuNzVMNC4yNSA1LjI1TDAuNSA5TTExLjUgM0g4LjVNMTEuNSAzVjZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMDM5ODU1XCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzMyMTZfMTE4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMiBtcy0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5kYXRhPy5tYXhfZG93bnRpbWVfc3RvcmU/LlByZXZpb3VzRGF0YSA9PT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiPjAlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uZGF0YT8ubWF4X2Rvd250aW1lX3N0b3JlPy5QcmV2aW91c0RhdGEgIT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj57e2dldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uZGF0YT8ubWF4X2Rvd250aW1lX3N0b3JlPy5QcmV2aW91c0RhdGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uZGF0YT8ubWF4X2Rvd250aW1lX3N0b3JlPy5QcmV2aW91c0RhdGE6Jy0tJ319JTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3ZWVrLWZvbnRcIj4gdnMgUHJldmlvdXMgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSdkYWlseSdcIj5kYXk8L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSd3ZWVrbHknXCI+d2Vlazwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSdtb250aGx5J1wiPm1vbnRoPC9zcGFuPjwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJzdWItaGVhZGVyXCI+QXZnIERvd24gVGltZSA8L2Rpdj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNkb3duVG9vbHRpcD5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9vbHRpcC1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz1cInRvb2x0aXAtdGl0bGUgdGV4dC1zdGFydFwiPkF2ZyBEb3duIFRpbWU8L2g1PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cInRleHQtc3RhcnRcIj5BdmVyYWdlIGNhbWVyYSAmIG5ldHdvcmsgZG93bnRpbWUgZm9yIHRoZSBzZWxlY3RlZCBzdG9yZXMuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGNhcmQtYm9yZGVyIGgtMTAwIG10LTJcIiBzdHlsZT1cImhlaWdodDoxNjRweCAhaW1wb3J0YW50XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBlbGxpcHNlMSBib3JkZXItMCBweC0zXCIgc3R5bGU9XCJtaW4taGVpZ2h0OjU0cHhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWItaGVhZGVybmV3XCI+U3RvcmUgT3BlcmF0aW9ucyA8c3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBuZ2JUb29sdGlwPVwiQXZnIHN0b3JlIG9wZW4gJiBjbG9zZSB0aW1lIGFjcm9zcyB0aGUgc2VsZWN0ZWQgc3RvcmVzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cInRvcFwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzE0MzJfODAwMzUpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDY1IDEwLjY2NjZWNy45OTk5Mk04LjAwMDY1IDUuMzMzMjVIOC4wMDczMk0xNC42NjczIDcuOTk5OTJDMTQuNjY3MyAxMS42ODE4IDExLjY4MjYgMTQuNjY2NiA4LjAwMDY1IDE0LjY2NjZDNC4zMTg3NSAxNC42NjY2IDEuMzMzOTggMTEuNjgxOCAxLjMzMzk4IDcuOTk5OTJDMS4zMzM5OCA0LjMxODAyIDQuMzE4NzUgMS4zMzMyNSA4LjAwMDY1IDEuMzMzMjVDMTEuNjgyNiAxLjMzMzI1IDE0LjY2NzMgNC4zMTgwMiAxNC42NjczIDcuOTk5OTJaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMTQzMl84MDAzNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWFyb3VuZCBtdC03XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gQXZnIE9wZW4gVGltZSAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC10aXRsZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7c3RvcmVPcGVyYXRpb25EYXRhPy5vdmVyYWxsPy5hdmdPcGVuVGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gc3RvcmVPcGVyYXRpb25EYXRhPy5vdmVyYWxsPy5hdmdPcGVuVGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWItaGVhZGVyXCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ0aGlzLmhlYWRlckRhdGE/LmRhdGU/LnN0YXJ0RGF0ZSE9PXRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZVwiPkF2Zy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+T3BlbiBUaW1lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gRGl2aWRlciAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLTxkaXYgY2xhc3M9XCJjb2wtbWQtMiBtdC01IG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIxXCIgdmlld0JveD1cIjAgMCAyMCAxXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaW5lIHkxPVwiMC41XCIgeDI9XCIyMFwiIHkyPVwiMC41XCIgc3Ryb2tlPVwiI0QwRDVERFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+LS0+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEF2ZyBDbG9zZSBUaW1lIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXIgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LXRpdGxlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tzdG9yZU9wZXJhdGlvbkRhdGE/Lm92ZXJhbGw/LmF2Z0Nsb3NlVGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gc3RvcmVPcGVyYXRpb25EYXRhPy5vdmVyYWxsPy5hdmdDbG9zZVRpbWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICctLSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLWhlYWRlclwiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwidGhpcy5oZWFkZXJEYXRhPy5kYXRlPy5zdGFydERhdGUhPT10aGlzLmhlYWRlckRhdGE/LmRhdGU/LmVuZERhdGVcIj5BdmcuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPkNsb3NlIFRpbWU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZG93blRvb2x0aXA+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvb2x0aXAtY29udGVudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9XCJ0b29sdGlwLXRpdGxlIHRleHQtc3RhcnRcIj5BdmcgRG93biBUaW1lPC9oNT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXN0YXJ0XCI+QXZlcmFnZSBjYW1lcmEgJiBuZXR3b3JrIGRvd250aW1lIGZvciB0aGUgc2VsZWN0ZWQgc3RvcmVzLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNSBcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQgcGItMiBcIiBzdHlsZT1cImhlaWdodDozMDBweDsgcGFkZGluZzo4cHhcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBib3JkZXItMCBwLTAgc20tem9vbS04MCBtYi0yIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGl0bGUtdGV4dFwiPlJlY2FwIFZpZGVvXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHBsYWNlbWVudD1cInJpZ2h0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZ2JUb29sdGlwPVwiQSBxdWljayByZWNhcCBvZiB0aGUgc3RvcmUgYWN0aXZpdHkgYWxvbmcgd2l0aCB0aGUgYXZnIHRlY2ggaW5mcmFzdHJ1Y3R1cmUgZG93bnRpbWUgc3RhdHVzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzE0MzJfODAwMzUpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwNjUgMTAuNjY2NlY3Ljk5OTkyTTguMDAwNjUgNS4zMzMyNUg4LjAwNzMyTTE0LjY2NzMgNy45OTk5MkMxNC42NjczIDExLjY4MTggMTEuNjgyNiAxNC42NjY2IDguMDAwNjUgMTQuNjY2NkM0LjMxODc1IDE0LjY2NjYgMS4zMzM5OCAxMS42ODE4IDEuMzMzOTggNy45OTk5MkMxLjMzMzk4IDQuMzE4MDIgNC4zMTg3NSAxLjMzMzI1IDguMDAwNjUgMS4zMzMyNUMxMS42ODI2IDEuMzMzMjUgMTQuNjY3MyA0LjMxODAyIDE0LjY2NzMgNy45OTk5MlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzE0MzJfODAwMzVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXN1YiBtYi0yXCI+RGF0ZWQ6IHt7aGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSB8IGRhdGU6JyBkZCBNTU0seXl5eSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24td3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWJ0blwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTRcIiB2aWV3Qm94PVwiMCAwIDE2IDE0XCIgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTkuNTIzNDQgMEMxMC4zOTk3IDAgMTEuMjM3IDAuMTc5NDkyIDEyLjAwMTMgMC41MDQ5OUMxMi43OTQzIDAuODQyNTQyIDEzLjUwNzggMS4zMzgxNiAxNC4xMDU1IDEuOTUyOThDMTQuNzAxOCAyLjU2NjQ3IDE1LjE4MzYgMy4zMDA1MiAxNS41MTE3IDQuMTE4OTVDMTUuODI4MSA0LjkwNTIzIDE2LjAwMjYgNS43NjY1MyAxNi4wMDI2IDYuNjY2NjdDMTYuMDAyNiA3LjU2ODE1IDE1LjgyODEgOC40Mjk0NCAxNS41MTE3IDkuMjE1NzNDMTUuMTgzNiAxMC4wMzE1IDE0LjcwMTggMTAuNzY1NSAxNC4xMDQyIDExLjM4MDNDMTMuNTA3OCAxMS45OTM4IDEyLjc5NDMgMTIuNDg5NSAxMS45OTg3IDEyLjgyN0MxMS4yMzQ0IDEzLjE1MjUgMTAuMzk3MSAxMy4zMzIgOS41MjIxNCAxMy4zMzJDOC42NDU4MyAxMy4zMzIgNy44MDg1OSAxMy4xNTI1IDcuMDQ0MjcgMTIuODI3QzYuMjUxMyAxMi40ODk1IDUuNTM3NzYgMTEuOTkzOCA0Ljk0MTQxIDExLjM4MDNMNC45NDAxIDExLjM3OUM0LjM0MjQ1IDEwLjc2NDIgMy44NjE5OCAxMC4wMzAxIDMuNTMzODUgOS4yMTU3M0MzLjQzMjI5IDguOTYyNTYgMy4zNDUwNSA4LjcwMjcgMy4yNzM0NCA4LjQzNjE0QzMuNDA4ODUgOC40NDk1MyAzLjU0Njg4IDguNDU2MjMgMy42ODYyIDguNDU2MjNDMy45NTA1MiA4LjQ1NjIzIDQuMjA4MzMgOC40MzIxMiA0LjQ1OTY0IDguMzg1MjRDNC41MDEzIDguNTEzODMgNC41NDY4NyA4LjY0MTA4IDQuNTk2MzUgOC43NjU2NkM0Ljg2NTg5IDkuNDM1NCA1LjI2MTcyIDEwLjAzODIgNS43NTM5MSAxMC41NDQ1QzYuMjQ2MDkgMTEuMDUwOCA2LjgzMzMzIDExLjQ1OCA3LjQ4MzA3IDExLjczNTNDOC4xMDkzOCAxMi4wMDE5IDguNzk4MTggMTIuMTUwNiA5LjUyMjE0IDEyLjE1MDZDMTAuMjQ2MSAxMi4xNTA2IDEwLjkzMzYgMTIuMDAzMiAxMS41NjEyIDExLjczNTNDMTIuMjEyMiAxMS40NTggMTIuNzk4MiAxMS4wNTA4IDEzLjI5MDQgMTAuNTQ0NUMxMy43ODI2IDEwLjAzODIgMTQuMTc4NCA5LjQzNDA2IDE0LjQ0NzkgOC43NjU2NkMxNC43MDcgOC4xMjEzNiAxNC44NTE2IDcuNDEyNzcgMTQuODUxNiA2LjY2ODAxQzE0Ljg1MTYgNS45MjMyNSAxNC43MDgzIDUuMjE1OTkgMTQuNDQ3OSA0LjU3MDM2QzE0LjE3ODQgMy45MDA2MSAxMy43ODI2IDMuMjk3ODQgMTMuMjkwNCAyLjc5MTUxQzEyLjc5ODIgMi4yODUxOCAxMi4yMTA5IDEuODc3OTcgMTEuNTYxMiAxLjYwMDdDMTAuOTM0OSAxLjMzNDE0IDEwLjI0NjEgMS4xODU0NSA5LjUyMjE0IDEuMTg1NDVDOC43OTgxOCAxLjE4NTQ1IDguMTEwNjggMS4zMzI4IDcuNDgzMDcgMS42MDA3QzcuNDI3MDggMS42MjQ4MSA3LjM3MTA5IDEuNjUwMjYgNy4zMTY0MSAxLjY3NTcxQzcuMTAyODYgMS4zMzAxMiA2Ljg0NTA1IDEuMDE2NjggNi41NDk0OCAwLjc0NDc1OUM2LjcxMDk0IDAuNjU5MDMyIDYuODc2MyAwLjU4MDAwMSA3LjA0NDI3IDAuNTA3NjY5QzcuODExMiAwLjE3OTQ5MiA4LjY0NzE0IDAgOS41MjM0NCAwWk04Ljc3OTk1IDMuNDk3NDJDOC43Nzk5NSAzLjMzNCA4Ljg0NTA1IDMuMTg2NjYgOC45NDc5MiAzLjA3OTVDOS4wNTIwOCAyLjk3MjM0IDkuMTk1MzEgMi45MDY3IDkuMzU0MTcgMi45MDY3QzkuNTEzMDIgMi45MDY3IDkuNjU2MjUgMi45NzIzNCA5Ljc2MDQyIDMuMDc5NUM5Ljg2NDU4IDMuMTg2NjYgOS45MjgzOSAzLjMzNCA5LjkyODM5IDMuNDk3NDJWNi42MDc3M0wxMi4xODc1IDcuOTg2MDdDMTIuMzIyOSA4LjA2OTEyIDEyLjQxNDEgOC4yMDE3MyAxMi40NTA1IDguMzQ3NzNDMTIuNDg3IDguNDkzNzQgMTIuNDcwMSA4LjY1NDQ4IDEyLjM4OTMgOC43OTM3OVY4Ljc5NTEyQzEyLjMwODYgOC45MzQ0MyAxMi4xNzk3IDkuMDI4MiAxMi4wMzc4IDkuMDY1N0MxMS44OTU4IDkuMTAzMjEgMTEuNzM5NiA5LjA4NTc5IDExLjYwNDIgOS4wMDI3NUgxMS42MDI5TDkuMDc1NTIgNy40NjA5OUM4Ljk4ODI4IDcuNDExNDMgOC45MTY2NyA3LjMzOTA5IDguODY0NTggNy4yNTMzN0M4LjgxMTIgNy4xNjM2MiA4Ljc3OTk1IDcuMDU3OCA4Ljc3OTk1IDYuOTQ1MjhWMy40OTc0MlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzY2NzA4NVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTMuNTEzMDIgMC4zNTM1MTZDNS40NTMxMiAwLjM1MzUxNiA3LjAyNjA0IDEuOTcxNjMgNy4wMjYwNCAzLjk2NzQ3QzcuMDI2MDQgNS45NjMzMiA1LjQ1MzEyIDcuNTgxNDMgMy41MTMwMiA3LjU4MTQzQzEuNTcyOTIgNy41ODE0MyAwIDUuOTYzMzIgMCAzLjk2NzQ3QzAgMS45NzE2MyAxLjU3MjkyIDAuMzUzNTE2IDMuNTEzMDIgMC4zNTM1MTZaTTMuNTEzMDIgNi4wMzk2N0w1LjM5ODQ0IDMuNjQxOThINC4yMjc4NlYyLjM2Njc4SDIuNzk4MThWMy42NDE5OEgxLjYyNzZMMy41MTMwMiA2LjAzOTY3WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjRjA0NDM4XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXMtMlwiICpuZ0lmPVwiZ2V0UmVjYXBWaWRlb0RhdGE/LmRvd25UaW1lID09PSAwXCI+MCBNaW5zPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcy0yXCIgKm5nSWY9XCJnZXRSZWNhcFZpZGVvRGF0YT8uZG93blRpbWUgIT09IDBcIj57e2dldFJlY2FwVmlkZW9EYXRhPy5kb3duVGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJy0tJ319IE1pbnM8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWJhZGdlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiZ2V0UmVjYXBWaWRlb0RhdGE/LmhlYWx0aCA9PT0nR09PRCdcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBpZD1cIkZyYW1lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGlkPVwiVmVjdG9yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTMuNDM0OSAyLjVDMTQuODIzOCAyLjUgMTUuOTg3MSAzLjAxMzg5IDE2LjkyNDkgNC4wNDE2N0MxNy44NjI3IDUuMDY5NDQgMTguMzMxMyA2LjI5MTY3IDE4LjMzMDcgNy43MDgzM0MxOC4zMzA3IDcuOTU4MzMgMTguMzE2OCA4LjIwNSAxOC4yODkxIDguNDQ4MzNDMTguMjYxMyA4LjY5MTY3IDE4LjIxMjcgOC45MzExMSAxOC4xNDMyIDkuMTY2NjdIMTIuOTM0OUwxMS41MTgyIDcuMDQxNjdDMTEuNDQ4OCA2LjkzMDU2IDExLjM1MTYgNi44NDAyOCAxMS4yMjY2IDYuNzcwODNDMTEuMTAxNiA2LjcwMTM5IDEwLjk2OTYgNi42NjY2NyAxMC44MzA3IDYuNjY2NjdDMTAuNjUwMiA2LjY2NjY3IDEwLjQ4NjggNi43MjIyMiAxMC4zNDA3IDYuODMzMzNDMTAuMTk0NiA2Ljk0NDQ0IDEwLjA5NDEgNy4wODMzMyAxMC4wMzkxIDcuMjVMOC45MTQwNiAxMC42MjVMOC4xODQ5IDkuNTQxNjdDOC4xMTU0NSA5LjQzMDU2IDguMDE4MjMgOS4zNDAyOCA3Ljg5MzIzIDkuMjcwODNDNy43NjgyMyA5LjIwMTM5IDcuNjM2MjggOS4xNjY2NyA3LjQ5NzQgOS4xNjY2N0gxLjg1MTU2QzEuNzgyMTIgOC45MzA1NiAxLjczMzUxIDguNjkwODMgMS43MDU3MyA4LjQ0NzVDMS42Nzc5NSA4LjIwNDE3IDEuNjY0MDYgNy45NjQ3MiAxLjY2NDA2IDcuNzI5MTdDMS42NjQwNiA2LjI5ODYxIDIuMTI5MzQgNS4wNjk0NCAzLjA1OTkgNC4wNDE2N0MzLjk5MDQ1IDMuMDEzODkgNS4xNTAxNyAyLjUgNi41MzkwNiAyLjVDNy4yMDU3MyAyLjUgNy44MzQzNCAyLjYzMTk0IDguNDI0OSAyLjg5NTgzQzkuMDE1NDUgMy4xNTk3MiA5LjUzOTYyIDMuNTI3NzggOS45OTc0IDRDMTAuNDQxOCAzLjUyNzc4IDEwLjk1OTMgMy4xNTk3MiAxMS41NDk5IDIuODk1ODNDMTIuMTQwNSAyLjYzMTk0IDEyLjc2ODggMi41IDEzLjQzNDkgMi41Wk05Ljk5NzQgMTcuNUM5Ljc0NzQgMTcuNSA5LjUwNzY3IDE3LjQ1NDcgOS4yNzgyMyAxNy4zNjQyQzkuMDQ4NzggMTcuMjczNiA4Ljg0NDA2IDE3LjEzODMgOC42NjQwNiAxNi45NTgzTDMuMDgwNzMgMTEuMzU0MkMyLjk5NzQgMTEuMjcwOCAyLjkyMTAxIDExLjE4NzUgMi44NTE1NiAxMS4xMDQyQzIuNzgyMTIgMTEuMDIwOCAyLjcxMjY3IDEwLjkzMDYgMi42NDMyMyAxMC44MzMzSDcuMDM5MDZMOC40NTU3MyAxMi45NTgzQzguNTI1MTcgMTMuMDY5NCA4LjYyMjQgMTMuMTU5NyA4Ljc0NzQgMTMuMjI5MkM4Ljg3MjQgMTMuMjk4NiA5LjAwNDM0IDEzLjMzMzMgOS4xNDMyMyAxMy4zMzMzQzkuMzIzNzggMTMuMzMzMyA5LjQ5MDQ1IDEzLjI3NzggOS42NDMyMyAxMy4xNjY3QzkuNzk2MDEgMTMuMDU1NiA5LjkwMDE3IDEyLjkxNjcgOS45NTU3MyAxMi43NUwxMS4wODA3IDkuMzc1TDExLjc4OTEgMTAuNDU4M0MxMS44NzI0IDEwLjU2OTQgMTEuOTc2NiAxMC42NTk3IDEyLjEwMTYgMTAuNzI5MkMxMi4yMjY2IDEwLjc5ODYgMTIuMzU4NSAxMC44MzMzIDEyLjQ5NzQgMTAuODMzM0gxNy4zMzA3TDE3LjEyMjQgMTEuMDgzM0wxNi45MTQxIDExLjMzMzNMMTEuMzA5OSAxNi45NTgzQzExLjEyOTMgMTcuMTM4OSAxMC45MjggMTcuMjc0NCAxMC43MDU3IDE3LjM2NUMxMC40ODM1IDE3LjQ1NTYgMTAuMjQ3NCAxNy41MDA2IDkuOTk3NCAxNy41WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzEyQjc2QVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiZ2V0UmVjYXBWaWRlb0RhdGE/LmhlYWx0aCA9PT0nQVZFUkFHRSdcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBpZD1cIkZyYW1lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGlkPVwiVmVjdG9yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTMuNDM0OSAyLjVDMTQuODIzOCAyLjUgMTUuOTg3MSAzLjAxMzg5IDE2LjkyNDkgNC4wNDE2N0MxNy44NjI3IDUuMDY5NDQgMTguMzMxMyA2LjI5MTY3IDE4LjMzMDcgNy43MDgzM0MxOC4zMzA3IDcuOTU4MzMgMTguMzE2OCA4LjIwNSAxOC4yODkxIDguNDQ4MzNDMTguMjYxMyA4LjY5MTY3IDE4LjIxMjcgOC45MzExMSAxOC4xNDMyIDkuMTY2NjdIMTIuOTM0OUwxMS41MTgyIDcuMDQxNjdDMTEuNDQ4OCA2LjkzMDU2IDExLjM1MTYgNi44NDAyOCAxMS4yMjY2IDYuNzcwODNDMTEuMTAxNiA2LjcwMTM5IDEwLjk2OTYgNi42NjY2NyAxMC44MzA3IDYuNjY2NjdDMTAuNjUwMiA2LjY2NjY3IDEwLjQ4NjggNi43MjIyMiAxMC4zNDA3IDYuODMzMzNDMTAuMTk0NiA2Ljk0NDQ0IDEwLjA5NDEgNy4wODMzMyAxMC4wMzkxIDcuMjVMOC45MTQwNiAxMC42MjVMOC4xODQ5IDkuNTQxNjdDOC4xMTU0NSA5LjQzMDU2IDguMDE4MjMgOS4zNDAyOCA3Ljg5MzIzIDkuMjcwODNDNy43NjgyMyA5LjIwMTM5IDcuNjM2MjggOS4xNjY2NyA3LjQ5NzQgOS4xNjY2N0gxLjg1MTU2QzEuNzgyMTIgOC45MzA1NiAxLjczMzUxIDguNjkwODMgMS43MDU3MyA4LjQ0NzVDMS42Nzc5NSA4LjIwNDE3IDEuNjY0MDYgNy45NjQ3MiAxLjY2NDA2IDcuNzI5MTdDMS42NjQwNiA2LjI5ODYxIDIuMTI5MzQgNS4wNjk0NCAzLjA1OTkgNC4wNDE2N0MzLjk5MDQ1IDMuMDEzODkgNS4xNTAxNyAyLjUgNi41MzkwNiAyLjVDNy4yMDU3MyAyLjUgNy44MzQzNCAyLjYzMTk0IDguNDI0OSAyLjg5NTgzQzkuMDE1NDUgMy4xNTk3MiA5LjUzOTYyIDMuNTI3NzggOS45OTc0IDRDMTAuNDQxOCAzLjUyNzc4IDEwLjk1OTMgMy4xNTk3MiAxMS41NDk5IDIuODk1ODNDMTIuMTQwNSAyLjYzMTk0IDEyLjc2ODggMi41IDEzLjQzNDkgMi41Wk05Ljk5NzQgMTcuNUM5Ljc0NzQgMTcuNSA5LjUwNzY3IDE3LjQ1NDcgOS4yNzgyMyAxNy4zNjQyQzkuMDQ4NzggMTcuMjczNiA4Ljg0NDA2IDE3LjEzODMgOC42NjQwNiAxNi45NTgzTDMuMDgwNzMgMTEuMzU0MkMyLjk5NzQgMTEuMjcwOCAyLjkyMTAxIDExLjE4NzUgMi44NTE1NiAxMS4xMDQyQzIuNzgyMTIgMTEuMDIwOCAyLjcxMjY3IDEwLjkzMDYgMi42NDMyMyAxMC44MzMzSDcuMDM5MDZMOC40NTU3MyAxMi45NTgzQzguNTI1MTcgMTMuMDY5NCA4LjYyMjQgMTMuMTU5NyA4Ljc0NzQgMTMuMjI5MkM4Ljg3MjQgMTMuMjk4NiA5LjAwNDM0IDEzLjMzMzMgOS4xNDMyMyAxMy4zMzMzQzkuMzIzNzggMTMuMzMzMyA5LjQ5MDQ1IDEzLjI3NzggOS42NDMyMyAxMy4xNjY3QzkuNzk2MDEgMTMuMDU1NiA5LjkwMDE3IDEyLjkxNjcgOS45NTU3MyAxMi43NUwxMS4wODA3IDkuMzc1TDExLjc4OTEgMTAuNDU4M0MxMS44NzI0IDEwLjU2OTQgMTEuOTc2NiAxMC42NTk3IDEyLjEwMTYgMTAuNzI5MkMxMi4yMjY2IDEwLjc5ODYgMTIuMzU4NSAxMC44MzMzIDEyLjQ5NzQgMTAuODMzM0gxNy4zMzA3TDE3LjEyMjQgMTEuMDgzM0wxNi45MTQxIDExLjMzMzNMMTEuMzA5OSAxNi45NTgzQzExLjEyOTMgMTcuMTM4OSAxMC45MjggMTcuMjc0NCAxMC43MDU3IDE3LjM2NUMxMC40ODM1IDE3LjQ1NTYgMTAuMjQ3NCAxNy41MDA2IDkuOTk3NCAxNy41WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiI0ZBQ0MxNVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiZ2V0UmVjYXBWaWRlb0RhdGE/LmhlYWx0aCA9PT0nQkFEJ1wiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGlkPVwiRnJhbWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggaWQ9XCJWZWN0b3JcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMy40MzQ5IDIuNUMxNC44MjM4IDIuNSAxNS45ODcxIDMuMDEzODkgMTYuOTI0OSA0LjA0MTY3QzE3Ljg2MjcgNS4wNjk0NCAxOC4zMzEzIDYuMjkxNjcgMTguMzMwNyA3LjcwODMzQzE4LjMzMDcgNy45NTgzMyAxOC4zMTY4IDguMjA1IDE4LjI4OTEgOC40NDgzM0MxOC4yNjEzIDguNjkxNjcgMTguMjEyNyA4LjkzMTExIDE4LjE0MzIgOS4xNjY2N0gxMi45MzQ5TDExLjUxODIgNy4wNDE2N0MxMS40NDg4IDYuOTMwNTYgMTEuMzUxNiA2Ljg0MDI4IDExLjIyNjYgNi43NzA4M0MxMS4xMDE2IDYuNzAxMzkgMTAuOTY5NiA2LjY2NjY3IDEwLjgzMDcgNi42NjY2N0MxMC42NTAyIDYuNjY2NjcgMTAuNDg2OCA2LjcyMjIyIDEwLjM0MDcgNi44MzMzM0MxMC4xOTQ2IDYuOTQ0NDQgMTAuMDk0MSA3LjA4MzMzIDEwLjAzOTEgNy4yNUw4LjkxNDA2IDEwLjYyNUw4LjE4NDkgOS41NDE2N0M4LjExNTQ1IDkuNDMwNTYgOC4wMTgyMyA5LjM0MDI4IDcuODkzMjMgOS4yNzA4M0M3Ljc2ODIzIDkuMjAxMzkgNy42MzYyOCA5LjE2NjY3IDcuNDk3NCA5LjE2NjY3SDEuODUxNTZDMS43ODIxMiA4LjkzMDU2IDEuNzMzNTEgOC42OTA4MyAxLjcwNTczIDguNDQ3NUMxLjY3Nzk1IDguMjA0MTcgMS42NjQwNiA3Ljk2NDcyIDEuNjY0MDYgNy43MjkxN0MxLjY2NDA2IDYuMjk4NjEgMi4xMjkzNCA1LjA2OTQ0IDMuMDU5OSA0LjA0MTY3QzMuOTkwNDUgMy4wMTM4OSA1LjE1MDE3IDIuNSA2LjUzOTA2IDIuNUM3LjIwNTczIDIuNSA3LjgzNDM0IDIuNjMxOTQgOC40MjQ5IDIuODk1ODNDOS4wMTU0NSAzLjE1OTcyIDkuNTM5NjIgMy41Mjc3OCA5Ljk5NzQgNEMxMC40NDE4IDMuNTI3NzggMTAuOTU5MyAzLjE1OTcyIDExLjU0OTkgMi44OTU4M0MxMi4xNDA1IDIuNjMxOTQgMTIuNzY4OCAyLjUgMTMuNDM0OSAyLjVaTTkuOTk3NCAxNy41QzkuNzQ3NCAxNy41IDkuNTA3NjcgMTcuNDU0NyA5LjI3ODIzIDE3LjM2NDJDOS4wNDg3OCAxNy4yNzM2IDguODQ0MDYgMTcuMTM4MyA4LjY2NDA2IDE2Ljk1ODNMMy4wODA3MyAxMS4zNTQyQzIuOTk3NCAxMS4yNzA4IDIuOTIxMDEgMTEuMTg3NSAyLjg1MTU2IDExLjEwNDJDMi43ODIxMiAxMS4wMjA4IDIuNzEyNjcgMTAuOTMwNiAyLjY0MzIzIDEwLjgzMzNINy4wMzkwNkw4LjQ1NTczIDEyLjk1ODNDOC41MjUxNyAxMy4wNjk0IDguNjIyNCAxMy4xNTk3IDguNzQ3NCAxMy4yMjkyQzguODcyNCAxMy4yOTg2IDkuMDA0MzQgMTMuMzMzMyA5LjE0MzIzIDEzLjMzMzNDOS4zMjM3OCAxMy4zMzMzIDkuNDkwNDUgMTMuMjc3OCA5LjY0MzIzIDEzLjE2NjdDOS43OTYwMSAxMy4wNTU2IDkuOTAwMTcgMTIuOTE2NyA5Ljk1NTczIDEyLjc1TDExLjA4MDcgOS4zNzVMMTEuNzg5MSAxMC40NTgzQzExLjg3MjQgMTAuNTY5NCAxMS45NzY2IDEwLjY1OTcgMTIuMTAxNiAxMC43MjkyQzEyLjIyNjYgMTAuNzk4NiAxMi4zNTg1IDEwLjgzMzMgMTIuNDk3NCAxMC44MzMzSDE3LjMzMDdMMTcuMTIyNCAxMS4wODMzTDE2LjkxNDEgMTEuMzMzM0wxMS4zMDk5IDE2Ljk1ODNDMTEuMTI5MyAxNy4xMzg5IDEwLjkyOCAxNy4yNzQ0IDEwLjcwNTcgMTcuMzY1QzEwLjQ4MzUgMTcuNDU1NiAxMC4yNDc0IDE3LjUwMDYgOS45OTc0IDE3LjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjRjA0NDM4XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXMtMlwiPnt7Z2V0UmVjYXBWaWRlb0RhdGE/LmhlYWx0aCA/PyAnLS0nfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjFcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMSAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGluZSB4MT1cIjAuNVwiIHkxPVwiMC41XCIgeDI9XCIwLjVcIiB5Mj1cIjIzLjVcIiBzdHJva2U9XCIjOThBMkIzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWxpbmtcIiAoY2xpY2spPVwiY2FtZXJhVmlldygpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBWaWV3IGNhbWVyYVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTdcIiBoZWlnaHQ9XCIxN1wiIHZpZXdCb3g9XCIwIDAgMTcgMTdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMy4zMzU5IDkuMTY4MjlWMTQuMTY4M0MxMy4zMzU5IDE0LjYxMDMgMTMuMTYwMyAxNS4wMzQyIDEyLjg0NzggMTUuMzQ2OEMxMi41MzUyIDE1LjY1OTQgMTIuMTExMyAxNS44MzUgMTEuNjY5MyAxNS44MzVIMi41MDI2QzIuMDYwNTggMTUuODM1IDEuNjM2NjUgMTUuNjU5NCAxLjMyNDA5IDE1LjM0NjhDMS4wMTE1MyAxNS4wMzQyIDAuODM1OTM4IDE0LjYxMDMgMC44MzU5MzggMTQuMTY4M1Y1LjAwMTYzQzAuODM1OTM4IDQuNTU5NiAxLjAxMTUzIDQuMTM1NjggMS4zMjQwOSAzLjgyMzEyQzEuNjM2NjUgMy41MTA1NiAyLjA2MDU4IDMuMzM0OTYgMi41MDI2IDMuMzM0OTZINy41MDI2TTEwLjgzNTkgMC44MzQ5NjFIMTUuODM1OU0xNS44MzU5IDAuODM0OTYxVjUuODM0OTZNMTUuODM1OSAwLjgzNDk2MUw2LjY2OTI3IDEwLjAwMTZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMDA5QkYzXCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJyZWNhcGxhb2RpbmdcIiBjbGFzcz1cInJvdyBsb2FkZXIgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGgtMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXIgcHQtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInJlY2Fwbm9EYXRhXCIgY2xhc3M9XCJyb3cgcHgtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5vcm1hbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhcmQtYm9keSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBtYi0xMCBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctbWFwMVwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ljb25zL25vdC1hcHBsaWNhYmxlLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS10aXRsZSBtdC0zXCI+RGF0YSBOb3QgRm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtc3ViXCI+Tm9ybWFsaXplZCBkYXRhIGlzIG5vdCBhcHBsaWNhYmxlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIW5vcm1hbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhcmQtYm9keSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctbWFwLXJlY2FwXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvTm9kYXRhMS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtdGl0bGVcIj5ObyBkYXRhIGZvdW5kPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXN1YlwiPlRoZXJlIGlzIG5vIHJlc3VsdCBmb3IgdGhpcyBSZWNhcCB2aWRlbzwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFyZWNhcGxhb2RpbmcgJiYgIXJlY2Fwbm9EYXRhXCIgY2xhc3M9XCJjYXJkLWJvZHkgcC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyAgaC0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcm91c2VsIGgtMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2Fyb3VzZWwtaW5uZXIgaC0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2Fyb3VzZWwtaXRlbSBoLTEwMFwiICpuZ0Zvcj1cImxldCBncm91cCBvZiByZWNhcHNHcm91cGVkOyBsZXQgaSA9IGluZGV4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJpID09PSBjdXJyZW50SW5kZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBnLTMgaC0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHBhaXIgb2YgZ3JvdXBcIiBbbmdDbGFzc109XCJjb2xWYWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgW3NyY109XCJwYWlyLnRodW1iSW1hZ2VcIiAoY2xpY2spPVwidmlkZW9DbGljayhwYWlyKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaW1hZ2UtdGh1bWIgbWItOCBkLWJsb2NrIHctMTAwIGN1cnNvci1wb2ludGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0PVwiSW1hZ2Uge3sgaSArIDEgfX1cIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBDb25kaXRpb25hbGx5IGRpc3BsYXkgUHJldmlvdXMgYnV0dG9uIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNhcm91c2VsLWNvbnRyb2wtcHJldlwiICpuZ0lmPVwiY3VycmVudEluZGV4ID4gMFwiIChjbGljayk9XCJwcmV2U2xpZGUoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb25cIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENvbmRpdGlvbmFsbHkgZGlzcGxheSBOZXh0IGJ1dHRvbiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJjYXJvdXNlbC1jb250cm9sLW5leHRcIiAqbmdJZj1cImN1cnJlbnRJbmRleCA8IHJlY2Fwc0dyb3VwZWQubGVuZ3RoIC0gMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm5leHRTbGlkZSgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvblwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gTmF2aWdhdGlvbiBEb3RzIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInJlY2Fwc0dyb3VwZWQubGVuZ3RoID4gMVwiIGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiY2Fyb3VzZWwtaW5kaWNhdG9yc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGdyb3VwIG9mIHJlY2Fwc0dyb3VwZWQ7IGxldCBpID0gaW5kZXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJpID09PSBjdXJyZW50SW5kZXhcIiAoY2xpY2spPVwiZ29Ub1NsaWRlKGkpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8dmlkZW8gY29udHJvbHMgYXV0b3BsYXkgY2xhc3M9XCJyZWNhcC1pbWcgcC0zXCIgW3NyY109XCJnZXRSZWNhcERhdGE/LnZpZGVvVVJMXCI+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxzb3VyY2UgIHR5cGU9XCJ2aWRlby9tcDRcIj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNvdXJjZSBbc3JjXT1cImdldFJlY2FwRGF0YT8udmlkZW9VUkxcIiB0eXBlPVwidmlkZW8vb2dnXCI+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDwvdmlkZW8+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgI21hcENvbnRhaW5lciBzdHlsZT1cImhlaWdodDoyMzBweDtcIj48L2Rpdj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImNvbC1tZC02IG1iLTNcIj48aW1nIHNyYz1cImFzc2V0cy90YW5nby9JbWFnZXMvcmVjYXAuc3ZnXCIgYWx0PVwiXCIgY2xhc3M9XCJyZWNhcC1pbWdcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02IG1iLTNcIj48aW1nIHNyYz1cImFzc2V0cy90YW5nby9JbWFnZXMvcmVjYXAuc3ZnXCIgYWx0PVwiXCIgY2xhc3M9XCJyZWNhcC1pbWdcIj48L2Rpdj4gLS0+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0nNDUyJ1wiPlxyXG4gICAgICAgIDxsaWItaW1hZ2UtZG9jXHJcbiAgICAgICAgICAgICpuZ0lmPVwic3RvcmVJZGFycmF5Py5sZW5ndGggPT09IDEgJiYgKGNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5pc0Zvb3RmYWxsRGlyZWN0b3J5JiYhY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmlzRm9vdGZhbGxEaXJlY3Rvcnlvbmx5VGFuZ28gfHwgKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/LnVzZXJUeXBlID09PSAndGFuZ28nKVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwibXktMlwiPjwvbGliLWltYWdlLWRvYz5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwic3RvcmVJZGFycmF5Py5sZW5ndGggPiAxICYmIChjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uaXNGb290ZmFsbERpcmVjdG9yeSYmIWNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5pc0Zvb3RmYWxsRGlyZWN0b3J5b25seVRhbmdvIHx8IChncy51c2VyQWNjZXNzIHwgYXN5bmMpPy51c2VyVHlwZSA9PT0gJ3RhbmdvJylcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImNvbC1tZC0xMiBoLTEwMCBtdC00XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLXJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaW1nLWRpcmVjIG0tNlwiPkltYWdlIERpcmVjdG9yeTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW4gbWItMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiaW1nLW5vZGF0YTFcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy93YXJuaW5nLWljb24uc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNpbmdsZXN0b3JlLXRpdGxlIG10LTNcIj5BdmFpbGFibGUgZm9yIFNpbmdsZSBTdG9yZSBWaWV3IE9ubHk8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2luZ2xlc3RvcmUtc3ViXCI+UGxlYXNlIHNlbGVjdCBvbmUgc3RvcmUgdG8gYWNjZXNzIHN0b3JlLXNwZWNpZmljIGltYWdlcyBhbmQgZGF0YS48L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQgbXQtNSBtYi01XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBib3JkZXItMCBwdC0zXCI+XHJcbiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXRsZS10ZXh0IG1iLTJcIj5TdW1tYXJ5IFRhYmxlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1zdWIgbWItMlwiPnt7aGVhZGVyRGF0YT8uZGF0ZT8uc3RhcnREYXRlIHwgZGF0ZTonZGQgTU1NLCB5eXl5J319IOKAk1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB7e2hlYWRlckRhdGE/LmRhdGU/LmVuZERhdGUgfCBkYXRlOidkZCBNTU0sIHl5eXknfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdG9vbGJhclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgcG9zaXRpb24tcmVsYXRpdmUgbXktMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdmctaWNvbiBzdmctaWNvbi0xIHBvc2l0aW9uLWFic29sdXRlIG1zLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgb3BhY2l0eT1cIjAuNVwiIHg9XCIxNy4wMzY1XCIgeT1cIjE1LjEyMjNcIiB3aWR0aD1cIjguMTU1NDZcIiBoZWlnaHQ9XCIyXCIgcng9XCIxXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cInJvdGF0ZSg0NSAxNy4wMzY1IDE1LjEyMjMpXCIgZmlsbD1cImN1cnJlbnRDb2xvclwiPjwvcmVjdD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTEgMTlDNi41NTU1NiAxOSAzIDE1LjQ0NDQgMyAxMUMzIDYuNTU1NTYgNi41NTU1NiAzIDExIDNDMTUuNDQ0NCAzIDE5IDYuNTU1NTYgMTkgMTFDMTkgMTUuNDQ0NCAxNS40NDQ0IDE5IDExIDE5Wk0xMSA1QzcuNTMzMzMgNSA1IDcuNTMzMzMgNSAxMUM1IDE0LjQ2NjcgNy41MzMzMyAxNyAxMSAxN0MxNC40NjY3IDE3IDE3IDE0LjQ2NjcgMTcgMTFDMTcgNy41MzMzMyAxNC40NjY3IDUgMTEgNVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cImN1cnJlbnRDb2xvclwiPjwvcGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCAoY2hhbmdlKT1cInNlYXJjaERhdGEoKVwiIFsobmdNb2RlbCldPVwic2VhcmNoVmFsdWVcIiB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgcHMtMTQgbWUtMlwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiIHBsYWNlaG9sZGVyPVwiU2VhcmNoXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gZmlsdGVyIFN0YXJ0IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8bGliLWZpbHRlcnMgW2RhdGFPYmplY3RdPVwiZGF0YU9iamVjdFwiIChhcHBsaWVkRmlsdGVycyk9XCJhcHBseUZpbHRlcnMoJGV2ZW50KVwiPjwvbGliLWZpbHRlcnM+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBmaWx0ZXIgRW5kIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBTdW0gQnV0dG9uIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIihzdG9yZUlkYXJyYXk/Lmxlbmd0aCA+IDEgJiYgaGVhZGVyRGF0YT8uZGF0ZT8uc3RhcnREYXRlICE9PSBoZWFkZXJEYXRhPy5kYXRlPy5lbmREYXRlKSAmJiAhbm9EYXRhICYmICFsb2FkaW5nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cIm9uVmFsdWVUeXBlKCdzdW0nKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IG14LTIgYnRuLW91dGxpbmUgYnRuLW91dGxpbmUtZGVmYXVsdCByb3VuZGVkLTMgdGV4dC1ub3dyYXAgYm9yZGVyLXZhbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnYnRuLWxpZ2h0IGJ0bi1wcmltYXJ5IHRleHQtd2hpdGUnOiB0eXBlVmFsdWUgPT09ICdzdW0nfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCIgW25nU3R5bGVdPVwieydzdHJva2UnOiB0eXBlVmFsdWUgPT09ICdzdW0nID8gJyNGRkZGRkYnIDogJyMzNDQwNTQnfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk05Ljk5OTM1IDQuMTY2NzVWMTUuODMzNE00LjE2NjAyIDEwLjAwMDFIMTUuODMyN1wiIHN0cm9rZS13aWR0aD1cIjEuNjdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1zLTJcIiBbbmdDbGFzc109XCJ7J3RleHQtd2hpdGUnOiB0eXBlVmFsdWUgPT09ICdzdW0nfVwiPlN1bTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEF2ZXJhZ2UgQnV0dG9uIC0tPlxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiAqbmdJZj1cIihzdG9yZUlkYXJyYXk/Lmxlbmd0aCA+IDEgJiYgaGVhZGVyRGF0YT8uZGF0ZT8uc3RhcnREYXRlICE9PSBoZWFkZXJEYXRhPy5kYXRlPy5lbmREYXRlKSBcclxuICYmICFub0RhdGEgJiYgIWxvYWRpbmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwib25WYWx1ZVR5cGUoJ2F2ZXJhZ2UnKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IG14LTIgYnRuLW91dGxpbmUgYnRuLW91dGxpbmUtZGVmYXVsdCByb3VuZGVkLTMgdGV4dC1ub3dyYXAgYm9yZGVyLXZhbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnYnRuLWxpZ2h0IGJ0bi1wcmltYXJ5IHRleHQtd2hpdGUnOiB0eXBlVmFsdWUgPT09ICdhdmVyYWdlJ31cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJ7J3N0cm9rZSc6IHR5cGVWYWx1ZSA9PT0gJ2F2ZXJhZ2UnID8gJyNGRkZGRkYnIDogJyMxMDE4MjgnfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTE3LjUgMTcuNUg4LjMzMzMzQzUuNTgzMzMgMTcuNSA0LjIwODMzIDE3LjUgMy4zNTQxNyAxNi42NDU4QzIuNSAxNS43OTE3IDIuNSAxNC40MTY3IDIuNSAxMS42NjY3VjIuNU01IDEwSDUuMDA3NU03LjQ5OTE3IDEwSDcuNTA1ODNNOS45OTc1IDEwSDEwLjAwNDJNMTIuNDk1OCAxMEgxMi41MDMzTTE0Ljk5NDIgMTBIMTUuMDAxN00xNy40OTI1IDEwSDE3LjVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNSA1LjgzMzQxQzUuNTYwODMgNC44OTg0MSA2LjMyMjUgNC4xNjY3NSA3LjQ5NDE3IDQuMTY2NzVDMTIuNDQ2NyA0LjE2Njc1IDkuNjYyNSAxNC4xNjY3IDE0Ljk4NSAxNC4xNjY3QzE2LjE2NSAxNC4xNjY3IDE2LjkyMTcgMTMuNDMwMSAxNy41IDEyLjUwMDFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1zLTJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyd0ZXh0LXdoaXRlJzogdHlwZVZhbHVlID09PSAnYXZlcmFnZSd9XCI+QXZlcmFnZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiIW5vRGF0YSAmJiAhbG9hZGluZ1wiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwiZXhwb3J0WExTWCgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tZGVmYXVsdCBteC0yIGJ0bi1vdXRsaW5lIGJ0bi1vdXRsaW5lLWRlZmF1bHQgcm91bmRlZC0zIHRleHQtbm93cmFwIGJvcmRlci12YWxcIj48c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTcuNSAxMi41VjE1LjgzMzNDMTcuNSAxNi4yNzU0IDE3LjMyNDQgMTYuNjk5MyAxNy4wMTE4IDE3LjAxMThDMTYuNjk5MyAxNy4zMjQ0IDE2LjI3NTQgMTcuNSAxNS44MzMzIDE3LjVINC4xNjY2N0MzLjcyNDY0IDE3LjUgMy4zMDA3MiAxNy4zMjQ0IDIuOTg4MTYgMTcuMDExOEMyLjY3NTU5IDE2LjY5OTMgMi41IDE2LjI3NTQgMi41IDE1LjgzMzNWMTIuNU0xNC4xNjY3IDYuNjY2NjdMMTAgMi41TTEwIDIuNUw1LjgzMzMzIDYuNjY2NjdNMTAgMi41VjEyLjVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48c3BhbiBjbGFzcz1cIm1zLTJcIj5FeHBvcnQ8L3NwYW4+IDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJsb2FkaW5nXCIgY2xhc3M9XCJyb3cgbG9hZGVyICBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5vRGF0YVwiIGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTEyIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiaW1nLW5vZGF0YS10YWJsZVwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ljb25zL05vZGF0YTEuc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtdGl0bGVcIj5ObyBkYXRhIGZvdW5kPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtc3ViXCI+VGhlcmUgaXMgbm8gcmVzdWx0IGZvciB0aGlzIHN1bW1hcnkgdGFibGU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFub0RhdGEgJiYgIWxvYWRpbmdcIiBjYWxzcz1cImNhcmQtYm9keVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLXJlc3BvbnNpdmVcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9XCJ3LTEwMCB0YWJsZSBib3R0b20tYm9yZGVyIHRleHQtbm93cmFwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggKm5nSWY9XCJzdG9yZUlkYXJyYXk/Lmxlbmd0aCA9PT0gMVwiIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJ2RhdGUnKVwiPkRhdGUgPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJ2RhdGUnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJ2RhdGUnID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9uU29ydCgnc3RvcmVOYW1lJylcIj5TdG9yZSBOYW1lIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICdzdG9yZU5hbWUnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJ3N0b3JlTmFtZScgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCdzdG9yZUlkJylcIj5TdG9yZSBJRCA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAnc3RvcmVJZCcgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAnc3RvcmVJZCcgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCAqbmdJZj1cInN0b3JlQ29kZVwiIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJ3N0b3JlQ29kZScpXCI+U3RvcmUgQ29kZSA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAnc3RvcmVDb2RlJyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICdzdG9yZUNvZGUnID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJ2Zvb3RmYWxsQ291bnQnKVwiPkZvb3RmYWxsIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICdmb290ZmFsbENvdW50JyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICdmb290ZmFsbENvdW50JyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJ2F2Z0luZnJhRG93bnRpbWUnKVwiPkF2ZyBJbmZyYSBEb3duVGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICdhdmdJbmZyYURvd250aW1lJyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICdhdmdJbmZyYURvd250aW1lJyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHIgKm5nRm9yPVwibGV0IG9iaiBvZiBnZXRTdW1tYXJ5VGFibGVEYXRhO2xldCBpPWluZGV4O1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gKGNsaWNrKT1cInN0b3JlVmlldyhvYmopXCIgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwib2JqPy5kYXRlXCI+e3tvYmo/LmRhdGUgfCBkYXRlOidNTU0gZGQsIHl5eXknfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cInRoaXMuc3RvcmVJZGFycmF5Py5sZW5ndGg9PT0xXCIgY2xhc3M9XCJ0ZXh0LWNhcGl0YWxpemVcIj57e29iai5zdG9yZU5hbWV9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwidGhpcy5zdG9yZUlkYXJyYXk/Lmxlbmd0aD4xXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0LXByaW1hcnkgdGV4dC1jYXBpdGFsaXplIHRleHQtZGVjb3JhdGlvbi11bmRlcmxpbmUgY3Vyc29yLXBvaW50ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic3RvcmVWaWV3KG9iai5zdG9yZUlkKVwiPnt7b2JqLnN0b3JlTmFtZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tvYmouc3RvcmVJZH19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgKm5nSWY9XCJzdG9yZUNvZGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgb2JqLnN0b3JlQ29kZSAhPT0gbnVsbCAmJiBvYmouc3RvcmVDb2RlICE9PSAnJyA/IG9iai5zdG9yZUNvZGUgOiAnLScgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tvYmouZm9vdGZhbGxDb3VudH19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tvYmouYXZnSW5mcmFEb3dudGltZX19PC90ZD5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGFibGU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxsaWItcGFnaW5hdGlvbiBbaXRlbXNQZXJQYWdlXT1cInBhZ2VTaXplXCIgW2N1cnJlbnRQYWdlXT1cIm9mZnNldFwiIFt0b3RhbEl0ZW1zXT1cInRvdGFsSXRlbXNcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtwYWdpbmF0aW9uU2l6ZXNdPVwicGFnaW5hdGlvblNpemVzXCIgW3BhZ2VTaXplXT1cInBhZ2VTaXplXCIgKHBhZ2VDaGFuZ2UpPVwib25QYWdlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgIChwYWdlU2l6ZUNoYW5nZSk9XCJvblBhZ2VTaXplQ2hhbmdlKCRldmVudClcIj48L2xpYi1wYWdpbmF0aW9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj4iXX0=
|
|
4140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhZmZpYy1hbmFseXNpcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1hbmFseXNlLXRyYWZmaWMvc3JjL2xpYi9jb21wb25lbnRzL3RyYWZmaWMtYW5hbHlzaXMvdHJhZmZpYy1hbmFseXNpcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1hbmFseXNlLXRyYWZmaWMvc3JjL2xpYi9jb21wb25lbnRzL3RyYWZmaWMtYW5hbHlzaXMvdHJhZmZpYy1hbmFseXNpcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQU1ULFNBQVMsRUFFVCxZQUFZLEVBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxLQUFLLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQztBQUMzQyxPQUFPLEtBQUssS0FBSyxNQUFNLHdCQUF3QixDQUFDO0FBQ2hELE9BQU8sa0JBQWtCLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxvQkFBb0IsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RSxPQUFPLEtBQUssVUFBVSxNQUFNLDZCQUE2QixDQUFDO0FBRTFELE9BQU8sRUFBRSxPQUFPLEVBQWdCLFNBQVMsRUFBVSxNQUFNLE1BQU0sQ0FBQztBQUdoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHOUMsT0FBTyxLQUFLLFFBQVEsTUFBTSxXQUFXLENBQUM7QUFFdEMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDckUsT0FBTyxLQUFLLFNBQVMsTUFBTSxXQUFXLENBQUM7QUFDdkMsT0FBTyxFQUFlLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFELE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQzs7Ozs7Ozs7Ozs7OztBQU8xQixNQUFNLE9BQU8sd0JB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b25lbnQsXHJcbiAgT25Jbml0LFxyXG4gIE9uRGVzdHJveSxcclxuICBOZ1pvbmUsXHJcbiAgRWxlbWVudFJlZixcclxuICBSZW5kZXJlcjIsXHJcbiAgVmlld0NoaWxkLFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIEhvc3RMaXN0ZW5lciwgQWZ0ZXJWaWV3SW5pdFxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCAqIGFzIGFtNSBmcm9tIFwiQGFtY2hhcnRzL2FtY2hhcnRzNVwiO1xyXG5pbXBvcnQgKiBhcyBhbTV4eSBmcm9tIFwiQGFtY2hhcnRzL2FtY2hhcnRzNS94eVwiO1xyXG5pbXBvcnQgYW01dGhlbWVzX0FuaW1hdGVkIGZyb20gXCJAYW1jaGFydHMvYW1jaGFydHM1L3RoZW1lcy9BbmltYXRlZFwiO1xyXG5pbXBvcnQgYW01dGhlbWVzX1Jlc3BvbnNpdmUgZnJvbSBcIkBhbWNoYXJ0cy9hbWNoYXJ0czUvdGhlbWVzL1Jlc3BvbnNpdmVcIjtcclxuaW1wb3J0ICogYXMgYW01cGVyY2VudCBmcm9tIFwiQGFtY2hhcnRzL2FtY2hhcnRzNS9wZXJjZW50XCI7XHJcbmltcG9ydCB7IFRyYWZmaWNTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3RyYWZmaWMuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBTdWJzY3JpcHRpb24sIHRha2VVbnRpbCwgZmlsdGVyIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IE5nYk1vZGFsLCBOZ2JUb29sdGlwIH0gZnJvbSBcIkBuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwXCI7XHJcbmltcG9ydCB7IEdsb2JhbFN0YXRlU2VydmljZSB9IGZyb20gXCJ0YW5nby1hcHAtdWktZ2xvYmFsXCI7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBFeGNlbFNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvZXhjZWwuc2VydmljZVwiO1xyXG5pbXBvcnQgKiBhcyBtYXBib3hnbCBmcm9tICdtYXBib3gtZ2wnO1xyXG5pbXBvcnQgeyBUb2FzdFNlcnZpY2UgfSBmcm9tIFwidGFuZ28tYXBwLXVpLXNoYXJlZFwiO1xyXG5pbXBvcnQgeyBWaWRlb1VybENvbXBvbmVudCB9IGZyb20gXCIuLi92aWRlby11cmwvdmlkZW8tdXJsLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgKiBhcyBib290c3RyYXAgZnJvbSBcImJvb3RzdHJhcFwiO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IGRheWpzIGZyb20gJ2RheWpzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImxpYi10cmFmZmljLWFuYWx5c2lzXCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi90cmFmZmljLWFuYWx5c2lzLmNvbXBvbmVudC5odG1sXCIsXHJcbiAgc3R5bGVVcmw6IFwiLi90cmFmZmljLWFuYWx5c2lzLmNvbXBvbmVudC5zY3NzXCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmFmZmljQW5hbHlzaXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgcHJpdmF0ZSBsaW5lcm9vdDogYW01LlJvb3Q7XHJcbiAgcHJpdmF0ZSBib3VuY2VkbGluZXJvb3Q6IGFtNS5Sb290O1xyXG4gIHByaXZhdGUgcG90ZW50aWFsQnV5ZXJzbGluZXJvb3Q6IGFtNS5Sb290O1xyXG4gIHByaXZhdGUgZW5nYWdlcnNsaW5lcm9vdDogYW01LlJvb3Q7XHJcbiAgc29ydGVkQ29sdW1uOiBhbnk7XHJcbiAgc29ydERpcmVjdGlvbjogYW55O1xyXG4gIHByaXZhdGUgY2hhcnQ6IGFueTtcclxuICBwcml2YXRlIHRvb2x0aXBFbGVtZW50OiBIVE1MRWxlbWVudDtcclxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcclxuICBnZXRDYXJkRGF0YTogYW55ID0gW107XHJcbiAgaGVhdE1hcERhdGE6IGFueSA9IFtdO1xyXG4gIGdldENhcmRHcmFwaERhdGE6IGFueTtcclxuICBnZXRTdW1tYXJ5VGFibGVEYXRhOiBhbnk7XHJcbiAgaXRlbXNQZXJQYWdlID0gMTA7XHJcbiAgY3VycmVudFBhZ2UgPSAxO1xyXG4gIHRvdGFsSXRlbXMgPSAxO1xyXG4gIHBhZ2luYXRpb25TaXplczphbnlbXSA9IFtdO1xyXG4gIHBhZ2VTaXplID0gMTA7XHJcbiAgb2Zmc2V0OiBudW1iZXIgPSAwO1xyXG4gIGxpbWl0OiBudW1iZXIgPSAxMDtcclxuICBnZXRSZWNhcFZpZGVvRGF0YTogYW55O1xyXG4gIHRhYmxlb2JqOiBhbnk7XHJcbiAgaGVhdE1hcHJvb3Q6IGFtNS5Sb290O1xyXG4gIHZhbHVlVHlwZT1cImFjdHVhbFwiXHJcbiAgZGF0ZVR5cGU9XCJ3ZWVrbHlcIjtcclxuICBwb2ludHM6YW55ID0gW107XHJcbiAgaGVhZGVyRGF0YTogYW55O1xyXG4gIHR5cGVWYWx1ZTogYW55ID0nc3VtJztcclxuICB2YWx1ZUNvbnZlcnNpb25SYXRlOiBhbnk7XHJcbiAgY29udmVyc2lvblZhbHVlOiBhbnk9Jyc7XHJcbiAgc2VhcmNoVmFsdWU6IGFueTtcclxuICBsb2FkaW5nOiBib29sZWFuID10cnVlO1xyXG4gIG5vRGF0YTogYm9vbGVhbiA9ZmFsc2U7XHJcbiAgY2FyZGxvYWRpbmc6IGJvb2xlYW4gPXRydWU7XHJcbiAgY2FyZE5vZGF0YTogYm9vbGVhbiA9ZmFsc2U7XHJcbiAgaGVhdGxvYWRpbmcgPSB0cnVlXHJcbiAgaGVhdG5vRGF0YSA9IGZhbHNlXHJcbiAgc3RvcmVJZGFycmF5OiBhbnkgPVtdO1xyXG4gIGdldFJlY2FwRGF0YTogYW55PVtdO1xyXG4gIGZvcm06IGFueTtcclxuICAgIGZvcm0xOiBhbnk7XHJcbiAgZGF0ZUxlbmd0aDogbnVtYmVyO1xyXG4gIHBlcmZvcm1hbmNlbm9EYXRhOiBib29sZWFuID1mYWxzZTtcclxuICBwZXJmb3JtYW5jZUxvYWRpbmc6IGJvb2xlYW4gPXRydWU7XHJcbiAgem9uZUR3ZWxsVGltZVNwbGl0RGF0YTogYW55PVtdO1xyXG4gIHN0b3JlT3BlcmF0aW9uRGF0YTogYW55PVtdO1xyXG4gIGZvb3RmYWxsTmFtZTogc3RyaW5nPSdBY3R1YWwgRm9vdGZhbGwnO1xyXG4gIGJvdW5jZUxhYmVsOiBhbnk7XHJcbiAgZm9vdGZhbGxMYWJlbDogYW55O1xyXG4gIGNvbFZhbHVlOiBhbnk7XHJcbiAgcmVjYXBsYW9kaW5nOiBib29sZWFuO1xyXG4gIHJlY2Fwbm9EYXRhOiBib29sZWFuO1xyXG4gIHJlY2Fwc0dyb3VwZWQ6IGFueVtdPVtdO1xyXG4gIGlzQXZlcmFnZTogYm9vbGVhbiA9IGZhbHNlOyAvLyBUb2dnbGUgc3RhdGUgZm9yIHRoZSBzd2l0Y2hcclxuICBpc0Rpc2FibGVkOiBib29sZWFuID1mYWxzZTtcclxuICB6b25lTG9hZGluZyA9IHRydWU7XHJcbiB6b25lTm9EYXRhID0gZmFsc2U7XHJcbiAgY2xpZW50RGF0YTogYW55O1xyXG4gIGZlYXR1cmVDb25maWc6IGFueTtcclxuICBub2I6IGJvb2xlYW47XHJcbiAgZm9yZWNhc3Q6IGFueTtcclxuICBtYXhGb290ZmFsbDogYW55O1xyXG4gIG1pbkZvb3RmYWxsOiBhbnk7XHJcbiAgaXNDb252ZXJzaW9uIDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHRvcFN0b3Jlc1NlbGVjdENvbnRyb2w6IEZvcm1Db250cm9sO1xyXG4gIHNob3dSZXBvcnRQcm9jZXNzaW5nQ2FyZDogYm9vbGVhbiA9IHRydWU7XHJcbiAgeWVzdGVyZGF5RGF0ZTogc3RyaW5nID0gJyc7XHJcbiAgZGF0YVByb2Nlc3NlZExvYWRpbmcgPSB0cnVlO1xyXG4gIGlzQXZlcmFnZUZvb3RmYWxsID0gZmFsc2U7XHJcbiAgaXNGb290ZmFsbFZpZXc6YW55O1xyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQnXSlcclxuICBoYW5kbGVDbGlja091dHNpZGUoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICAgIGNvbnN0IGNsaWNrZWRJbnNpZGUgPSAoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5jbG9zZXN0KCcudG9vbHRpcC1wb3B1cCwgLmxhYmVsJyk7XHJcbiAgICBpZiAoIWNsaWNrZWRJbnNpZGUpIHtcclxuICAgICAgdGhpcy5hY3RpdmVUb29sdGlwID0gbnVsbDtcclxuICAgIH1cclxuICB9XHJcbiAgYWN0aXZlVG9vbHRpcDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIGF1TG9jYXRpb25zOiBhbnlbXSA9IFtdO1xyXG4gIG1hcE9wdGlvbnM6IGdvb2dsZS5tYXBzLk1hcE9wdGlvbnMgPSB7XHJcbiAgICBtYXBJZDogXCJERU1PX01BUF9JRFwiLFxyXG4gICAgY2VudGVyOiB7IGxhdDogMCwgbG5nOiAwIH0sICAvLyBJbml0aWFsIGNlbnRlclxyXG4gICAgem9vbTogMSxcclxuICB9O1xyXG5cclxuICBwZXJmb3JtYW5jZURhdGE6YW55ID0gW107XHJcbiAgbXBhbG9hZGluZyA9dHJ1ZTtcclxuICBtYXBub0RhdGEgPSBmYWxzZTtcclxuICBmb290ZmFsbGRhdGFzZXRzID0gW1xyXG4gICAgeyB2YWx1ZTogJ2Zvb3RmYWxsJywgbGFiZWw6ICdGb290ZmFsbCcgfSxcclxuICAgIHsgdmFsdWU6ICdib3VuY2VkJywgbGFiZWw6ICdCb3VuY2VkIEZvb3RmYWxsJyB9LFxyXG4gICAgeyB2YWx1ZTogJ2VuZ2FnZXInLCBsYWJlbDogJ0VuZ2FnZXJzJyB9LFxyXG4gICAgeyB2YWx1ZTogJ21pc3NlZE9wcG9ydHVuaXR5JywgbGFiZWw6ICdNaXNzZWQgT3Bwb3J0dW5pdHknIH0sXHJcbiAgICB7IHZhbHVlOiAncG90ZW50aWFsQnV5ZXInLCBsYWJlbDogJ1BvdGVudGlhbCBCdXllcicgfSxcclxuICAgIHsgdmFsdWU6ICdjb252ZXJzaW9uJywgbGFiZWw6ICdDb252ZXJzaW9uJyB9XHJcbiAgXTtcclxuICBib3VuY2VkYXRhc2V0cyA9IFtcclxuICAgIHsgdmFsdWU6ICdmb290ZmFsbCcsIGxhYmVsOiAnRm9vdGZhbGwnIH0sXHJcbiAgICB7IHZhbHVlOiAnYm91bmNlZCcsIGxhYmVsOiAnQm91bmNlZCBGb290ZmFsbCcgfSxcclxuICAgIHsgdmFsdWU6ICdlbmdhZ2VyJywgbGFiZWw6ICdFbmdhZ2VycycgfSxcclxuICAgIHsgdmFsdWU6ICdtaXNzZWRPcHBvcnR1bml0eScsIGxhYmVsOiAnTWlzc2VkIE9wcG9ydHVuaXR5JyB9LFxyXG4gICAgeyB2YWx1ZTogJ3BvdGVudGlhbEJ1eWVyJywgbGFiZWw6ICdQb3RlbnRpYWwgQnV5ZXInIH0sXHJcbiAgICB7IHZhbHVlOiAnY29udmVyc2lvbicsIGxhYmVsOiAnQ29udmVyc2lvbicgfVxyXG4gIF07XHJcbiAgdG9wU3RvcmVzID0gW1xyXG4gICAgeyB2YWx1ZTogJzUnLCBsYWJlbDogJ1RvcCA1IFN0b3JlcycgfSxcclxuICAgIHsgdmFsdWU6ICcxMCcsIGxhYmVsOiAnVG9wIDEwIFN0b3JlcycgfSxcclxuICAgIHsgdmFsdWU6ICcxNScsIGxhYmVsOiAnVG9wIDE1IFN0b3JlcycgfSxcclxuICBdO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSB6b25lOiBOZ1pvbmUsXHJcbiAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxyXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLHByaXZhdGUgcm91dGVyOlJvdXRlcixwcml2YXRlIGV4Y2VsU2VydmljZTogRXhjZWxTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBzZXJ2aWNlOiBUcmFmZmljU2VydmljZSxwdWJsaWMgZ3M6IEdsb2JhbFN0YXRlU2VydmljZSwgcHJpdmF0ZSBmYjpGb3JtQnVpbGRlcixcclxuICAgIHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmLHByaXZhdGUgdG9hc3Q6VG9hc3RTZXJ2aWNlLCBwcml2YXRlIG1vZGFsU2VydmljZTogTmdiTW9kYWwsXHJcbiAgKSB7XHJcbiBcclxuICAgICAgICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgICAgICAgc2VsZWN0VmFsdWU6IG5ldyBGb3JtQ29udHJvbCgnJykgLy8gSW5pdGlhbGl6ZSBhcyBGb3JtQ29udHJvbFxyXG4gICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICB0aGlzLmZvcm0xID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgICAgICAgc2VsZWN0VmFsdWU6IG5ldyBGb3JtQ29udHJvbCgnJykgLy8gSW5pdGlhbGl6ZSBhcyBGb3JtQ29udHJvbFxyXG4gICAgICAgICB9KTtcclxuICB9XHJcbiAgQFZpZXdDaGlsZChcInRcIiwgeyBzdGF0aWM6IGZhbHNlIH0pIHRvb2x0aXA6IE5nYlRvb2x0aXA7XHJcbiAgdG9vbHRpcFZhbHVlOiBzdHJpbmc7XHJcbiAgYm91bmNlVmFsdWUxOmFueTtcclxuICBjbGllbnRBUElEYXRhOmFueTtcclxuICB1c2Vyczphbnk7XHJcbiAgIHN1YjI6U3Vic2NyaXB0aW9uIHwgdW5kZWZpbmVkXHJcbiAgIHByaXZhdGUgaXNJbml0aWFsaXplZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICBwcm9jZXNzVHlwZT1cIm1pc3NlZG9wcG9ydHVuaXRpZXNcIlxyXG4gICB0cmVuZHR5cGVWYWx1ZTogYW55ID0nYXZlcmFnZSc7XHJcbiAgIG5vcm1hbGl6ZTphbnk7XHJcbiAgIGlzVk1TOiBib29sZWFuID0gZmFsc2U7XHJcbiAgIG1hcEtleVVybDphbnk7XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAobWFwYm94Z2wgYXMgYW55KS5hY2Nlc3NUb2tlbiA9ICdway5leUoxSWpvaVltRnNZV3BwZEdGdVoyOGlMQ0poSWpvaVkyMHdaMnhpZW01NU1ERnhZVEozYjIxemIzRmpOSGR3YXlKOS5ubklJenQ3T2VZbFlIdWZHRThsRldRJztcclxuICAgIHRoaXMub2Zmc2V0ID0gMDtcclxuICAgIHRoaXMubGltaXQ9MTA7XHJcbiAgICBjb25zdCB1c2VyRGF0YTogYW55ID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcInVzZXItaW5mb1wiKSB8fCBcInt9XCIpO1xyXG4gICAgdGhpcy51c2VycyA9IHVzZXJEYXRhO1xyXG4gICAgdGhpcy50b3BTdG9yZXNTZWxlY3RDb250cm9sID0gbmV3IEZvcm1Db250cm9sKCc1Jyk7XHJcbiAgdGhpcy5zZXJ2aWNlLm1hcEtleVVybCA9IHRoaXMubWFwS2V5VXJsO1xyXG4gICAgLy8gY29uc3QgY2xpZW50RGF0YTphbnkgPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwiY2xpZW50LWRldGFpbHNcIikgfHwgXCJ7fVwiKTtcclxuICAgIC8vIHRoaXMuY2xpZW50RGF0YSA9IGNsaWVudERhdGFcclxuICAgIC8vIGNvbnN0IGNsaWVudEFQSURhdGE6YW55ID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcImNsaWVudEFQSS1kZXRhaWxzXCIpIHx8IFwie31cIik7XHJcbiAgICAvLyB0aGlzLmNsaWVudEFQSURhdGEgPSBjbGllbnRBUElEYXRhXHJcbiAgICB0aGlzLmdzPy5kYXRhUmFuZ2VWYWx1ZVxyXG4gICAgICA/LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLGRlYm91bmNlVGltZSgzMDApLClcclxuICAgICAgLnN1YnNjcmliZSgoZGF0YTogYW55KSA9PiB7XHJcbiAgICAgICAgaWYoZGF0YSl7XHJcbiAgICAgICAgICB0aGlzLmhlYWRlckRhdGEgPSBkYXRhO1xyXG4gICAgICAgICAgdGhpcy52YWx1ZUNvbnZlcnNpb25SYXRlPScnO1xyXG4gICAgICAgICAgdGhpcy5kYXRlTGVuZ3RoID0gZ2V0RGF5c0JldHdlZW5EYXRlcyhkYXRhPy5kYXRlLnN0YXJ0RGF0ZSwgZGF0YT8uZGF0ZS5lbmREYXRlKTtcclxuICAgICAgICAgIGlmICh0aGlzLmRhdGVMZW5ndGggPiAyOClcclxuICAgICAgICAgICAgdGhpcy5kYXRlVHlwZSA9IFwibW9udGhseVwiO1xyXG4gICAgICAgICAgZWxzZSBpZiAodGhpcy5kYXRlTGVuZ3RoID4gNSlcclxuICAgICAgICAgICAgdGhpcy5kYXRlVHlwZSA9IFwid2Vla2x5XCI7XHJcbiAgICAgICAgICBlbHNlIGlmKHRoaXMuZGF0ZUxlbmd0aCA9PT0gMClcclxuICAgICAgICAgICAgdGhpcy5kYXRlVHlwZSA9IFwid2Vla2x5XCI7XHJcbiAgICAgICAgICB0aGlzLnZhbHVlVHlwZT1cImFjdHVhbFwiO1xyXG4gICAgICAgICAgdGhpcy50eXBlVmFsdWU9XCJzdW1cIlxyXG4gICAgICAgICAgdGhpcy5pc0F2ZXJhZ2UgPSBmYWxzZVxyXG4gICAgICAgICAgdGhpcy5pc0F2ZXJhZ2VGb290ZmFsbCA9IGZhbHNlXHJcbiAgICAgICAgICB0aGlzLmNoZWNrVG9kYXlSZXBvcnRTdGF0dXMoKTtcclxuICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICBcclxuICB9ICBcclxuICBcclxuICBjaGVja1RvZGF5UmVwb3J0U3RhdHVzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5kYXRhUHJvY2Vzc2VkTG9hZGluZyA9IHRydWU7XHJcbiAgICBjb25zdCByZXBvcnRQYXJhbXMgPSB7XHJcbiAgICAgIGNsaWVudElkOiB0aGlzLmhlYWRlckRhdGE/LmNsaWVudCxcclxuICAgICAgZnJvbURhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uc3RhcnREYXRlLFxyXG4gICAgICB0b0RhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZVxyXG4gICAgfTtcclxuICAgIHRoaXMuc2VydmljZS5nZXRDaGVja1RvZGF5UmVwb3J0U3RhdHVzKHJlcG9ydFBhcmFtcylcclxuICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgIC5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICB0aGlzLmRhdGFQcm9jZXNzZWRMb2FkaW5nID0gZmFsc2VcclxuICAgICAgICB0aGlzLnNob3dSZXBvcnRQcm9jZXNzaW5nQ2FyZCA9IHJlcz8uZGF0YT8ucmVwb3J0U2VuZFN0YXR1cyA9PT0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnllc3RlcmRheURhdGUgPSByZXM/LmRhdGE/Lnllc3RlcmRheSB8fCAnJztcclxuICAgICAgICBpZiAoIXRoaXMuc2hvd1JlcG9ydFByb2Nlc3NpbmdDYXJkKSB7XHJcbiAgICAgICAgICB0aGlzLmluaXRpYWxpemVEYXNoYm9hcmREYXRhKClcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOiAoZXJyKSA9PiB7XHJcbiAgICAgICAgLy8gdGhpcy5pbml0aWFsaXplRGFzaGJvYXJkRGF0YSgpXHJcbiAgICAgICAgdGhpcy5zaG93UmVwb3J0UHJvY2Vzc2luZ0NhcmQgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmRhdGFQcm9jZXNzZWRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGluaXRpYWxpemVEYXNoYm9hcmREYXRhKCk6IHZvaWQge1xyXG4gICAgICB0aGlzLmRhdGFQcm9jZXNzZWRMb2FkaW5nID0gdHJ1ZVxyXG4gICAgICAgIHRoaXMuc3ViMiA9IHRoaXMuc2VydmljZT8uZ2V0QnJhbmREZXRhaWxzKHRoaXMudXNlcnM/LmNsaWVudElkID8gdGhpcy51c2Vycz8uY2xpZW50SWQ6dGhpcy5oZWFkZXJEYXRhPy5jbGllbnQpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoe1xyXG4gICAgICAgICAgbmV4dDogKHJlczphbnkpID0+IHtcclxuICAgICAgICAgICAgaWYocmVzICYmIHJlcy5jb2RlID09PSAyMDApe1xyXG4gICAgICAgICAgICAgIHRoaXMuZGF0YVByb2Nlc3NlZExvYWRpbmcgPSBmYWxzZVxyXG4gICAgICAgICAgICAgIHRoaXMuY2xpZW50RGF0YSA9IHJlcz8uZGF0YTtcclxuICAgICAgICAgICAgICB0aGlzLmZlYXR1cmVDb25maWcgPSB0aGlzLmNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzO1xyXG4gICAgICAgICAgICAgIHRoaXMuaXNGb290ZmFsbFZpZXcgPSB0aGlzLmZlYXR1cmVDb25maWc/LmlzRm9vdGZhbGxWaWV3IHx8IGZhbHNlO1xyXG4gICAgICAgICAgICAgIHRoaXMubm9ybWFsaXplID0gdGhpcy5jbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uaXNOb3JtYWxpemVkO1xyXG4gICAgICAgICAgICAgIHRoaXMuc3RvcmVJZGFycmF5ID0gdGhpcy5oZWFkZXJEYXRhPy5zdG9yZXMuZmlsdGVyKChzdG9yZTogYW55KSA9PiBzdG9yZS5jaGVja2VkKS5tYXAoKHN0b3JlOiBhbnkpID0+IHN0b3JlLnN0b3JlSWQpXHJcbiAgICAgICAgICAgICAgLy8gQ2xpZW50IDQ1NSwgU3RvcmUgMjY6IGFsd2F5cyBzaG93IGZ1bGwgc2luZ2xlLXN0b3JlIHRyYWZmaWMgdmlld1xyXG4gICAgICAgICAgICAgIGlmICh0aGlzLmhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1NScgJiYgdGhpcy5zdG9yZUlkYXJyYXkubGVuZ3RoID09PSAxICYmIHRoaXMuc3RvcmVJZGFycmF5WzBdID09PSAnNDU1LTI2Jykge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5pc0Zvb3RmYWxsVmlldyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB0aGlzLnRhYmxlb2JqID0ge1xyXG4gICAgICAgICAgICAgICAgZnJvbURhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZS5zdGFydERhdGUsXHJcbiAgICAgICAgICAgICAgICB0b0RhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZS5lbmREYXRlLFxyXG4gICAgICAgICAgICAgICAgc3RvcmVJZDogdGhpcy5oZWFkZXJEYXRhPy5zdG9yZXMuZmlsdGVyKChzdG9yZTogYW55KSA9PiBzdG9yZS5jaGVja2VkKS5tYXAoKHN0b3JlOiBhbnkpID0+IHN0b3JlLnN0b3JlSWQpLFxyXG4gICAgICAgICAgICAgICAgY2xpZW50SWQ6IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID8gdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgOicnLFxyXG4gICAgICAgICAgICAgICAgdmFsdWVUeXBlOiB0aGlzLnZhbHVlVHlwZSxcclxuICAgICAgICAgICAgICAgIG5vYjp0aGlzLmNsaWVudERhdGEuZmVhdHVyZUNvbmZpZ3MuaXNOT0IsXHJcbiAgICAgICAgICAgICAgICBkYXRlVHlwZTogdGhpcy5kYXRlVHlwZSxcclxuICAgICAgICAgICAgICAgIG5vcm1hbGl6ZTogdGhpcy5ub3JtYWxpemVcclxuICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgaWYgKHRoaXMuaXNGb290ZmFsbFZpZXcpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0Rm9vdGZhbGxDYXJkKCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmdldE1pc3NlZE9wcG9ydHVuaXR5Q2FyZCgpO1xyXG4gICAgICAgICAgICAgICAgIHRoaXMuZ2V0VGFibGUoKTtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5nZXRab25lVmFsdWUoKTtcclxuICAgICAgICAgICAgICAgICAgIGlmKHRoaXMuc3RvcmVJZGFycmF5Lmxlbmd0aCA9PT0gMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXRSZWNhcCgpO1xyXG4gICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1lbHNle1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmdldFZsdWVzKCk7XHJcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuaXNJbml0aWFsaXplZCkge1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmlzSW5pdGlhbGl6ZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaXNDb252ZXJzaW9uID10aGlzLmNsaWVudERhdGEuZmVhdHVyZUNvbmZpZ3MuaXNOT0JcclxuICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgdGhpcy5zZXJ2aWNlPy50b2dnbGVub2IodGhpcy5jbGllbnREYXRhLmZlYXR1cmVDb25maWdzLmlzTk9CKTtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5zZXJ2aWNlPy50b2dnbGVBdmVyYWdlKGZhbHNlKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRoaXMuaXNWTVMgID0gdGhpcy5jbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uaXNWTVMgfHwgZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAvLyBDbGllbnQgNDU1LCBTdG9yZSAyNjogc2hvdyBvbGQgaW1hZ2UgZGlyZWN0b3J5IChsaWItaW1hZ2UtZG9jKVxyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDU1JyAmJiB0aGlzLnN0b3JlSWRhcnJheS5sZW5ndGggPT09IDEgJiYgdGhpcy5zdG9yZUlkYXJyYXlbMF0gPT09ICc0NTUtMjYnKSB7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuaXNWTVMgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0Q29udmVyc2lvblZhbHVlKCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGFQcm9jZXNzZWRMb2FkaW5nID0gZmFsc2VcclxuICAgICAgICAgICAgICAgIC8vIHRoaXMuY29udmVyc2lvblZhbHVlID0gdGhpcy5jbGllbnREYXRhLmZlYXR1cmVDb25maWdzLmlzTk9CXHJcbiAgICAgICAgICAgICAgICAvLyA/IFwiTm9CIERlcml2ZWRcIlxyXG4gICAgICAgICAgICAgICAgLy8gOiB0aGlzLmNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzXHJcbiAgICAgICAgICAgICAgICAvLyAgICAgPy5taXNzZWRPcHBvcnR1bml0eUNhbGN1bGF0aW9uID09PSAnZW5nYWdlcnMtY29udmVyc2lvbidcclxuICAgICAgICAgICAgICAgIC8vID8gXCJlbmdhZ2Vyc1wiXHJcbiAgICAgICAgICAgICAgICAvLyA6IFwiZm9vdGZhbGxcIjtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0RnVubmFsKCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmdldFRhYmxlKCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnBlcmZvcm1hbmNlKCk7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLm5vcm1hbGl6ZSA9PT0gdHJ1ZSl7ICBcclxuICAgICAgICAgICAgICAgICAgdGhpcy56b25lRHdlbGxUaW1lU3BsaXREYXRhID1bXTtcclxuICAgICAgICAgICAgICAgICAgdGhpcy56b25lTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLnpvbmVOb0RhdGEgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLnN0b3JlT3BlcmF0aW9uRGF0YSA9W107XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuYXVMb2NhdGlvbnMgPVtdO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLm1wYWxvYWRpbmcgPWZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLm1hcG5vRGF0YT0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZXtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0Wm9uZSgpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5nZXRab25lVmFsdWUoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0TWFwKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB0aGlzLmdldEludGlhbCgpO1xyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vYiA9ICEhdGhpcy5jbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uaXNOT0I7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5jb252ZXJzaW9uVmFsdWUgPSB0aGlzLm5vYiA/ICdOb0IgRGVyaXZlZCcgOiB0aGlzLmNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5taXNzZWRPcHBvcnR1bml0eUNhbGN1bGF0aW9uID09PSdcImVuZ2FnZXJzLWNvbnZlcnNpb25cIicgPyAnY29udmVyc2lvbic6ICdmb290ZmFsbCcgO1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5jb252ZXJzaW9uVmFsdWUgPSB0aGlzLm5vYiA/ICdOb0IgRGVyaXZlZCcgOiAnZm9vdGZhbGwnO1xyXG4gICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgdGhpcy5vYmpEYXRhID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGZyb21EYXRlOiB0aGlzLmhlYWRlckRhdGE/LmRhdGU/LnN0YXJ0RGF0ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB0b0RhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yZUlkOiB0aGlzLmhlYWRlckRhdGE/LnN0b3Jlcy5maWx0ZXIoKHN0b3JlOiBhbnkpID0+IHN0b3JlLmNoZWNrZWQpLm1hcCgoc3RvcmU6IGFueSkgPT4gc3RvcmUuc3RvcmVJZCksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpZW50SWQ6IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NUeXBlOiB0aGlzLnByb2Nlc3NUeXBlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGVUeXBlOiB0aGlzLnR5cGUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyQnk6IHRoaXMudHJlbmR0eXBlVmFsdWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbGltaXQ6IDMxLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9mZnNldDogMCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZVR5cGU6IHRoaXMudmFsdWVUeXBlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG5vYjp0aGlzLm5vYixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBub3JtYWxpemU6IHRoaXMubm9ybWFsaXplXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLnN0b3JlSWRhcnJheT8ubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5ub3JtYWxpemUgPT09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXRSZWNhcFZpZGVvRGF0YSA9W11cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVjYXBsYW9kaW5nID1mYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVjYXBub0RhdGEgPXRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5nZXRSZWNhcCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRyZW5kdHlwZVZhbHVlID0gJ2FjdHVhbCc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXJ2aWNlPy50b2dnbGVub3JtYWxpemUodGhpcy5ub3JtYWxpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudHJlbmR0eXBlVmFsdWUgPSAnYXZlcmFnZSc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gQ2FsbCB0aGUgQVBJIGFmdGVyIG9iakRhdGEgaXMgZnVsbHkgcHJlcGFyZWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mb290ZmFsbFRyZW5kKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0ZUxlbmd0aCA9IGdldERheXNCZXR3ZWVuRGF0ZXModGhpcy5oZWFkZXJEYXRhPy5kYXRlLnN0YXJ0RGF0ZSwgdGhpcy5oZWFkZXJEYXRhPy5kYXRlLmVuZERhdGUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGFzZXRzID0gdGhpcy5kYXRhc2V0cy5maWx0ZXIoaXRlbSA9PiBpdGVtLnZhbHVlICE9PSAncG90ZW50aWFsQnV5ZXInKTtcclxuICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjb252ZXJzaW9uSXRlbSA9IHRoaXMuZGF0YXNldHMuZmluZChpdGVtID0+IGl0ZW0udmFsdWUgPT09ICdjb252ZXJzaW9uJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjb252ZXJzaW9uSXRlbSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNvbnZWYWx1ZSA9IHRoaXMuY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmNvbnZlcnNpb24/LnZhbHVlID8/ICdYJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBjb252ZXJzaW9uSXRlbS5sYWJlbCA9IGBNb3JlIHRoYW4gJHtjb252VmFsdWV9IG1pbnNgO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbWlzc2VkSXRlbSA9IHRoaXMuZGF0YXNldHMuZmluZChpdGVtID0+IGl0ZW0udmFsdWUgPT09ICdtaXNzZWRvcHBvcnR1bml0aWVzJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChtaXNzZWRJdGVtKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZnJvbSA9IHRoaXMuY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/Lm1pc3NlZE9wcG9ydHVuaXR5RnJvbT8udmFsdWUgPz8gJ1gnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRvID0gdGhpcy5jbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8ubWlzc2VkT3Bwb3J0dW5pdHlUbz8udmFsdWUgPz8gJ1knO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1pc3NlZEl0ZW0ubGFiZWwgPSBgJHtmcm9tfSAtICR7dG99IG1pbnNgO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGluaXRpYWxWYWx1ZSA9IHRoaXMuZ2V0SW5pdGlhbFZhbHVlKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2VsZWN0Q29udHJvbCA9IHRoaXMuZm9ybS5nZXQoJ3NlbGVjdFZhbHVlJykgYXMgRm9ybUNvbnRyb2w7XHJcbiAgICAgICAgaWYgKHNlbGVjdENvbnRyb2wpIHtcclxuICAgICAgICAgIHNlbGVjdENvbnRyb2wuc2V0VmFsdWUoaW5pdGlhbFZhbHVlKTtcclxuICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtMS5nZXQoJ3NlbGVjdFZhbHVlJyk/LnNldFZhbHVlKGluaXRpYWxWYWx1ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm0xID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcFN0b3Jlc1NlbGVjdENvbnRyb2w6IHRoaXMudG9wU3RvcmVzU2VsZWN0Q29udHJvbFxyXG4gICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRvcFN0b3Jlc1NlbGVjdENvbnRyb2wudmFsdWVDaGFuZ2VzXHJcbiAgICAgICAgICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKHZhbHVlOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkICYmIHZhbHVlICE9PSBudWxsICYmIHZhbHVlICE9PSAnJykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uVmFsdWVDaGFuZ2VUb3BTdG9yZXModmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRldGFpbGVkQ2hhcnRzPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gICB0aGlzLnNlbGVjdGVkVGFicygnZm9vdGZhbGwnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gICB0aGlzLnNlbGVjdGVkVGFiID0gXCJ0cmFmZmljXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBcInRyYWZmaWNcIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gICB0aGlzLnNlbGN0ZWRWYWx1ZSA9J1RyYWZmaWMgQW5hbHlzaXMnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyAgIHRoaXMuc2VsZWN0ZWRUYWJzKCd0cmFmZmljJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIH1cclxuICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YXNldHNDYXJkID0gW1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB7IHZhbHVlOiB0aGlzLmZvb3RmYWxsVmFsdWUsIGxhYmVsOiB0aGlzLnNlbGN0ZWRWYWx1ZSB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7IHZhbHVlOiBcImRlbW9ncmFwaGljXCIsIGxhYmVsOiBcIkRlbW9ncmFwaGljIEFuYWx5c2lzXCIgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgeyB2YWx1ZTogXCJidXllclwiLCBsYWJlbDogXCJCdXllciBBbmFseXNpc1wiIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICBdO1xyXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy50cmFmZmljRGF0YSA9IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgeyB2YWx1ZTogNywgbGFiZWw6IFwiTGFzdCA3IERheXNcIiB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7IHZhbHVlOiAzMCwgbGFiZWw6IFwiTGFzdCAzMCBEYXlzXCIgfSxcclxuICAgICAgICAgICAgICAgICAgICAgIF07XHJcbiAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvb3RmYWxsRGF0ZSA9dGhpcy50cmFmZmljRGF0YVswXS52YWx1ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5vYmpEYXRhVHJhZmZpYyA9IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZnJvbURhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uc3RhcnREYXRlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b0RhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmVJZDogdGhpcy5oZWFkZXJEYXRhPy5zdG9yZXMuZmlsdGVyKChzdG9yZTphbnkpID0+IHN0b3JlLmNoZWNrZWQpLm1hcCgoc3RvcmU6YW55KSA9PiBzdG9yZS5zdG9yZUlkKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xpZW50SWQ6dGhpcy5oZWFkZXJEYXRhPy5jbGllbnQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NUeXBlOiAnZm9vdGZhbGwnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBub3JtYWxpemVkRGF0YTogZmFsc2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlVHlwZSA6dGhpcy52YWx1ZVR5cGUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG5vYjp0aGlzLm5vYixcclxuICAgICAgICAgICAgICAgICAgICAgICAgbm9ybWFsaXplOiB0aGlzLm5vcm1hbGl6ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICAgIGlmKHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTknKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFRhYiA9IFwiZm9vdGZhbGxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBcImZvb3RmYWxsXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsY3RlZFZhbHVlID0nRm9vdGZhbGwgQW5hbHlzaXMnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkVGFicygnZm9vdGZhbGwnKTtcclxuICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSBcInRyYWZmaWNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBcInRyYWZmaWNcIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxjdGVkVmFsdWUgPSdUcmFmZmljIEFuYWx5c2lzJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFRhYnMoJ3RyYWZmaWMnKTtcclxuICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5jaGFydE5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5jaGFydGxvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAvLyB0aGlzLmNkPy5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICAgICAgICAvLyBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShcImNsaWVudEFQSS1kZXRhaWxzXCIsIEpTT04uc3RyaW5naWZ5KHRoaXMuY2xpZW50RGF0YT8uY2xpZW50QXBpKSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuc3ViMj8udW5zdWJzY3JpYmUoKVxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5zdWIyPy51bnN1YnNjcmliZSgpXHJcbiAgICAgICAgICAgIHRoaXMuZGF0YVByb2Nlc3NlZExvYWRpbmcgPSBmYWxzZVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIC8vIE9ubHkgcHJvY2VzcyB0aGUgbGF0ZXN0IGRhdGEgYWZ0ZXIgZGVib3VuY2UgdGltZVxyXG4gICAgICAvLyB0aGlzLmluaXRNYXAoKTtcclxuICAgICAgdGhpcy50b29sdGlwVmFsdWUgPSBcIkRlZmF1bHQgVG9vbHRpcCBUZXh0XCI7XHJcbiAgICAgICAgaWYgKHRoaXMuc3RvcmVJZGFycmF5Py5sZW5ndGggPT09IDEgJiYgdGhpcy5oZWFkZXJEYXRhPy5kYXRlPy5zdGFydERhdGUgPT09IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSkge1xyXG4gICAgICAgICAgdGhpcy5pc0Rpc2FibGVkID0gdHJ1ZVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLmlzRGlzYWJsZWQgPSBmYWxzZVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICBcclxuXHJcbiAgc2V0Q29udmVyc2lvblZhbHVlKCkge1xyXG4gICAgY29uc3QgY29udmVyc2lvblR5cGUgPSB0aGlzLmNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5jb252ZXJzaW9uQ2FsY3VsYXRpb247XHJcbiAgICBjb25zdCBpc05PQiA9IHRoaXMuY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmlzTk9CO1xyXG4gIFxyXG4gICAgaWYgKGlzTk9CKSB7XHJcbiAgICAgIHN3aXRjaCAoY29udmVyc2lvblR5cGUpIHtcclxuICAgICAgICBjYXNlICdmb290ZmFsbC1jb3VudCc6XHJcbiAgICAgICAgICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9ICdmb290ZmFsbCc7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdlbmdhZ2Vycy1jb3VudCc6XHJcbiAgICAgICAgICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9ICdlbmdhZ2Vycyc7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdiaWxsYWJsZS1lbnRpdGllcyc6XHJcbiAgICAgICAgICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9ICdQb3RlbnRpYWwgQnV5ZXJzJztcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9ICdmb290ZmFsbCc7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY29udmVyc2lvblZhbHVlID0gJ2Zvb3RmYWxsJztcclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgaXNSZWxldmFudENvbnZlcnNpb24odmFsdWU6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIFsnZm9vdGZhbGwnLCAnZW5nYWdlcnMnLCAnUG90ZW50aWFsIEJ1eWVycycsICdOb0IgRGVyaXZlZCddLmluY2x1ZGVzKHZhbHVlKTtcclxuICB9XHJcbiAgZ2V0Vmx1ZXMoKSB7XHJcbiAgICBpZiAodGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInKSB7XHJcbiAgICAgIHRoaXMuZm9vdGZhbGxkYXRhc2V0cyA9IFtcclxuICAgICAgICB7IHZhbHVlOiAnZm9vdGZhbGwnLCBsYWJlbDogJ0Zvb3RmYWxsJyB9LFxyXG4gICAgICAgIHsgdmFsdWU6ICdib3VuY2VkJywgbGFiZWw6IGBMZXNzIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZX0gbWlucyBGb290ZmFsbGAgfSxcclxuICAgICAgICB7IHZhbHVlOiAnZW5nYWdlcicsIGxhYmVsOiBgTW9yZSB0aGFuICR7dGhpcy5mZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWV9IG1pbnNgIH0sXHJcbiAgICAgICAgeyB2YWx1ZTogJ21pc3NlZE9wcG9ydHVuaXR5JywgbGFiZWw6IGAke3RoaXMuZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlGcm9tLnZhbHVlfSAtICR7dGhpcy5mZWF0dXJlQ29uZmlnPy5taXNzZWRPcHBvcnR1bml0eVRvLnZhbHVlfSBtaW5zYCB9LFxyXG4gICAgICAgIHsgdmFsdWU6ICdjb252ZXJzaW9uJywgbGFiZWw6IGBNb3JlIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmNvbnZlcnNpb24udmFsdWV9IG1pbnNgIH1cclxuICAgICAgXTtcclxuICAgICAgdGhpcy5ib3VuY2VkYXRhc2V0cyA9IFtcclxuICAgICAgICB7IHZhbHVlOiAnZm9vdGZhbGwnLCBsYWJlbDogJ0Zvb3RmYWxsJyB9LFxyXG4gICAgICAgIHsgdmFsdWU6ICdib3VuY2VkJywgbGFiZWw6IGBMZXNzIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZX0gbWlucyBGb290ZmFsbGAgfSxcclxuICAgICAgICB7IHZhbHVlOiAnZW5nYWdlcicsIGxhYmVsOiBgTW9yZSB0aGFuICR7dGhpcy5mZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWV9IG1pbnNgIH0sXHJcbiAgICAgICAgeyB2YWx1ZTogJ21pc3NlZE9wcG9ydHVuaXR5JywgbGFiZWw6IGAke3RoaXMuZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlGcm9tLnZhbHVlfS0ke3RoaXMuZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlUby52YWx1ZX0gbWluc2AgfSxcclxuICAgICAgICB7IHZhbHVlOiAnY29udmVyc2lvbicsIGxhYmVsOiBgTW9yZSB0aGFuICR7dGhpcy5mZWF0dXJlQ29uZmlnPy5jb252ZXJzaW9uLnZhbHVlfSBtaW5zYCB9XHJcbiAgICAgIF07XHJcbiAgICB9IFxyXG5cclxuICAgIHRoaXMuZm9vdGZhbGxWYWx1ZTEgPSB0aGlzLmZvb3RmYWxsZGF0YXNldHNbMF0udmFsdWU7XHJcbiAgICB0aGlzLmJvdW5jZVZhbHVlMSA9IHRoaXMuYm91bmNlZGF0YXNldHNbMV0udmFsdWU7XHJcbiAgICB0aGlzLmZvb3RmYWxsTGFiZWwgPSB0aGlzLmZvb3RmYWxsZGF0YXNldHNbMF0ubGFiZWw7XHJcbiAgICB0aGlzLmJvdW5jZUxhYmVsID0gdGhpcy5ib3VuY2VkYXRhc2V0c1sxXS5sYWJlbDtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIC8vIEluaXRpYWxpemUgdG9vbHRpcHMgYWZ0ZXIgdGhlIHZpZXcgaXMgaW5pdGlhbGl6ZWRcclxuICAgIGNvbnN0IHRvb2x0aXBUcmlnZ2VyTGlzdCA9IFtdLnNsaWNlLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnW2RhdGEtYnMtdG9nZ2xlPVwidG9vbHRpcFwiXScpKTtcclxuICAgIHRvb2x0aXBUcmlnZ2VyTGlzdC5mb3JFYWNoKGZ1bmN0aW9uICh0b29sdGlwVHJpZ2dlckVsKSB7XHJcbiAgICAgIG5ldyBib290c3RyYXAuVG9vbHRpcCh0b29sdGlwVHJpZ2dlckVsKTtcclxuICAgIH0pO1xyXG4gIH1cclxuICBnZXRGaWx0ZXJlZEJvdW5jZURhdGFzZXRzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuYm91bmNlZGF0YXNldHMuZmlsdGVyKGRhdGFzZXQgPT4gZGF0YXNldC52YWx1ZSAhPT0gdGhpcy5mb290ZmFsbFZhbHVlMSk7XHJcbiAgfVxyXG4gIFxyXG4gIC8vIEZpbHRlciB0aGUgZm9vdGZhbGwgb3B0aW9ucyB3aGVuIHRoZSBib3VuY2VWYWx1ZSBjaGFuZ2VzXHJcbiAgZ2V0RmlsdGVyZWRGb290ZmFsbERhdGFzZXRzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9vdGZhbGxkYXRhc2V0cy5maWx0ZXIoZGF0YXNldCA9PiBkYXRhc2V0LnZhbHVlICE9PSB0aGlzLmJvdW5jZVZhbHVlMSk7XHJcbiAgfVxyXG4gIGZvb3RmYWxsVmFsdWUxPSdmb290ZmFsbCdcclxuICBvblZhbHVlQ2hhbmdlKGV2dDogYW55KSB7XHJcbiAgICB0aGlzLmZvb3RmYWxsVmFsdWUxID0gZXZ0LnRhcmdldC52YWx1ZTtcclxuaWYoZXZ0LnRhcmdldC52YWx1ZSA9PSAnZm9vdGZhbGwnKVxyXG4gIHRoaXMuZm9vdGZhbGxMYWJlbCA9ICdGb290ZmFsbCdcclxuZWxzZSBpZihldnQudGFyZ2V0LnZhbHVlID09ICdib3VuY2VkJylcclxuICB0aGlzLmZvb3RmYWxsTGFiZWwgPSB0aGlzLmhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1Mic/YExlc3MgdGhhbiAke3RoaXMuZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlfSBtaW5zIEZvb3RmYWxsYDogJ0JvdW5jZWQgRm9vdGZhbGwnXHJcbmVsc2UgaWYoZXZ0LnRhcmdldC52YWx1ZSA9PSAnZW5nYWdlcicpXHJcbiAgdGhpcy5mb290ZmFsbExhYmVsID0gdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInP2BNb3JlIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZX0gbWluc2A6ICdFbmdhZ2VycydcclxuZWxzZSBpZihldnQudGFyZ2V0LnZhbHVlID09ICdtaXNzZWRPcHBvcnR1bml0eScpXHJcbiAgdGhpcy5mb290ZmFsbExhYmVsID0gdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInP2Ake3RoaXMuZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlGcm9tLnZhbHVlfS0ke3RoaXMuZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlUby52YWx1ZX0gbWluc2A6ICdNaXNzZWQgT3Bwb3J0dW5pdHknXHJcbmVsc2UgaWYoZXZ0LnRhcmdldC52YWx1ZSA9PSAncG90ZW50aWFsQnV5ZXInKVxyXG4gIHRoaXMuZm9vdGZhbGxMYWJlbCA9ICdQb3RlbnRpYWwgQnV5ZXInXHJcbmVsc2UgaWYoZXZ0LnRhcmdldC52YWx1ZSA9PSAnY29udmVyc2lvbicpXHJcbiAgdGhpcy5mb290ZmFsbExhYmVsID0gdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInP2BNb3JlIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmNvbnZlcnNpb24udmFsdWV9IG1pbnNgOiAnY29udmVyc2lvbidcclxuICAgIGlmKHRoaXMuZm9vdGZhbGxWYWx1ZTEgIT09IHRoaXMuYm91bmNlVmFsdWUxKVxyXG4gICAgICB0aGlzLnBlcmZvcm1hbmNlKCk7XHJcbiAgICBlbHNlIFxyXG4gICAgdGhpcy50b2FzdC5nZXRFcnJvclRvYXN0KCdTYW1lIHZhbHVlIG5vdCBmaWx0ZXJlZCcpXHJcbiAgfVxyXG4gIG9uQm91bmNlQ2hhbmdlKGV2dDogYW55KSB7XHJcbiAgICB0aGlzLmJvdW5jZVZhbHVlMSA9IGV2dC50YXJnZXQudmFsdWU7XHJcbiAgICBpZihldnQudGFyZ2V0LnZhbHVlID09ICdmb290ZmFsbCcpXHJcbiAgICAgIHRoaXMuYm91bmNlTGFiZWwgPSAnRm9vdGZhbGwnXHJcbiAgICBlbHNlIGlmKGV2dC50YXJnZXQudmFsdWUgPT0gJ2JvdW5jZWQnKVxyXG4gICAgICB0aGlzLmJvdW5jZUxhYmVsID0gdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInP2BMZXNzIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZX0gbWlucyBGb290ZmFsbGA6ICdCb3VuY2VkIEZvb3RmYWxsJ1xyXG4gICAgZWxzZSBpZihldnQudGFyZ2V0LnZhbHVlID09ICdlbmdhZ2VyJylcclxuICAgICAgdGhpcy5ib3VuY2VMYWJlbCA9IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJz9gTW9yZSB0aGFuICR7dGhpcy5mZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWV9IG1pbnNgOiAnRW5nYWdlcnMnXHJcbiAgICBlbHNlIGlmKGV2dC50YXJnZXQudmFsdWUgPT0gJ21pc3NlZE9wcG9ydHVuaXR5JylcclxuICAgICAgdGhpcy5ib3VuY2VMYWJlbCA9IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJz9gJHt0aGlzLmZlYXR1cmVDb25maWc/Lm1pc3NlZE9wcG9ydHVuaXR5RnJvbS52YWx1ZX0tJHt0aGlzLmZlYXR1cmVDb25maWc/Lm1pc3NlZE9wcG9ydHVuaXR5VG8udmFsdWV9IG1pbnNgOiAnTWlzc2VkIE9wcG9ydHVuaXR5J1xyXG4gICAgZWxzZSBpZihldnQudGFyZ2V0LnZhbHVlID09ICdwb3RlbnRpYWxCdXllcicpXHJcbiAgICAgIHRoaXMuYm91bmNlTGFiZWwgPSAnUG90ZW50aWFsIEJ1eWVyJ1xyXG4gICAgZWxzZSBpZihldnQudGFyZ2V0LnZhbHVlID09ICdjb252ZXJzaW9uJylcclxuICAgICAgdGhpcy5ib3VuY2VMYWJlbCA9IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJyA/IGBNb3JlIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmNvbnZlcnNpb24udmFsdWV9IG1pbnNgIDogJ2NvbnZlcnNpb24nXHJcbiAgICBpZih0aGlzLmZvb3RmYWxsVmFsdWUxICE9PSB0aGlzLmJvdW5jZVZhbHVlMSlcclxuICAgIHRoaXMucGVyZm9ybWFuY2UoKTtcclxuICBlbHNlIFxyXG4gIHRoaXMudG9hc3QuZ2V0RXJyb3JUb2FzdCgnU2FtZSB2YWx1ZSBub3QgZmlsdGVyZWQnKVxyXG4gIH1cclxuICBjb252ZXJ0UGVyY2VudFRvUGl4ZWxzKHBlcmNlbnQ6IHN0cmluZywgbWF4UGVyY2VudDogbnVtYmVyLCBiYXNlRGltZW5zaW9uOiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgLy8gUmVtb3ZlIHRoZSAnJScgc2lnbiBhbmQgcGFyc2UgdGhlIHZhbHVlXHJcbiAgICBjb25zdCB2YWx1ZSA9IHBhcnNlRmxvYXQocGVyY2VudC5yZXBsYWNlKCclJywgJycpKTtcclxuICAgIGlmIChpc05hTih2YWx1ZSkpIHJldHVybiAwO1xyXG4gIFxyXG4gICAgLy8gQ2FsY3VsYXRlIHBpeGVsIHZhbHVlIGJhc2VkIG9uIHRoZSBtYXhpbXVtIHBlcmNlbnRhZ2UgYW5kIGJhc2UgZGltZW5zaW9uXHJcbiAgICByZXR1cm4gKHZhbHVlIC8gbWF4UGVyY2VudCkgKiBiYXNlRGltZW5zaW9uO1xyXG4gIH1cclxuICBcclxuXHJcbiAgZ2V0TWF4UGVyY2VudGFnZShkYXRhOiBhbnlbXSwgZmllbGQ6IHN0cmluZyk6IG51bWJlciB7XHJcbiAgICAvLyBFeHRyYWN0IGFuZCByZXR1cm4gdGhlIG1heGltdW0gcGVyY2VudGFnZSB2YWx1ZSBmcm9tIHRoZSBmaWVsZFxyXG4gICAgcmV0dXJuIE1hdGgubWF4KC4uLmRhdGEubWFwKGl0ZW0gPT4gcGFyc2VGbG9hdChpdGVtW2ZpZWxkXSkgfHwgMCkpO1xyXG4gIH1cclxuICBcclxuICAvLyBub3JtYWxpemVEYXRhKGRhdGE6IGFueVtdKTogYW55W10ge1xyXG4gIC8vICAgY29uc3QgbWF4VG9wUGVyY2VudCA9IE1hdGgubWF4KC4uLmRhdGEubWFwKGl0ZW0gPT4gcGFyc2VGbG9hdChpdGVtLnRvcC5yZXBsYWNlKCclJywgJycpKSkpO1xyXG4gIC8vICAgY29uc3QgbWF4TGVmdFBlcmNlbnQgPSBNYXRoLm1heCguLi5kYXRhLm1hcChpdGVtID0+IHBhcnNlRmxvYXQoaXRlbS5sZWZ0LnJlcGxhY2UoJyUnLCAnJykpKSk7XHJcbiAgXHJcbiAgLy8gICByZXR1cm4gZGF0YS5tYXAoaXRlbSA9PiAoe1xyXG4gIC8vICAgICAuLi5pdGVtLFxyXG4gIC8vICAgICB0b3A6IHRoaXMuc2NhbGVQZXJjZW50KGl0ZW0udG9wLCBtYXhUb3BQZXJjZW50KSArICclJyxcclxuICAvLyAgICAgbGVmdDogdGhpcy5zY2FsZVBlcmNlbnQoaXRlbS5sZWZ0LCBtYXhMZWZ0UGVyY2VudCkgKyAnJSdcclxuICAvLyAgIH0pKTtcclxuICAvLyB9XHJcbiAgXHJcbiAgc2NhbGVQZXJjZW50KHBlcmNlbnQ6IHN0cmluZywgbWF4UGVyY2VudDogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IHBlcmNlbnRWYWx1ZSA9IHBhcnNlRmxvYXQocGVyY2VudC5yZXBsYWNlKCclJywgJycpKTtcclxuICAgIHJldHVybiAoKHBlcmNlbnRWYWx1ZSAvIG1heFBlcmNlbnQpICogMTAwKS50b0ZpeGVkKDIpO1xyXG4gIH1cclxuLy8gVG9nZ2xlIHRoZSB0b29sdGlwIGRpc3BsYXlcclxudG9nZ2xlVG9vbHRpcChwb2ludE5hbWU6IHN0cmluZykge1xyXG4gIHRoaXMuYWN0aXZlVG9vbHRpcCA9IHRoaXMuYWN0aXZlVG9vbHRpcCA9PT0gcG9pbnROYW1lID8gbnVsbCA6IHBvaW50TmFtZTtcclxufVxyXG5cclxucGVyZm9ybWFuY2UoKXtcclxuICB0aGlzLnBlcmZvcm1hbmNlTG9hZGluZyA9IHRydWU7XHJcbiAgdGhpcy5wZXJmb3JtYW5jZW5vRGF0YSA9IGZhbHNlO1xyXG4gIGxldCBvYmogPSB7XHJcbiAgICBjbGllbnRJZDp0aGlzLmhlYWRlckRhdGE/LmNsaWVudCxcclxuICAgIGZyb21EYXRlOiB0aGlzLmhlYWRlckRhdGE/LmRhdGUuc3RhcnREYXRlLFxyXG4gICAgdG9EYXRlOiB0aGlzLmhlYWRlckRhdGE/LmRhdGUuZW5kRGF0ZSxcclxuICAgIG5vcm1hbGl6ZTogdGhpcy5ub3JtYWxpemUsXHJcbiAgICBzdG9yZUlkOiB0aGlzLmhlYWRlckRhdGE/LnN0b3Jlcy5maWx0ZXIoKHN0b3JlOmFueSkgPT4gc3RvcmUuY2hlY2tlZCkubWFwKChzdG9yZTphbnkpID0+IHN0b3JlLnN0b3JlSWQpLFxyXG4gICBwcm9jZXNzdHlwZTE6IHRoaXMuZm9vdGZhbGxWYWx1ZTEsXHJcbiAgIHByb2Nlc3N0eXBlMiA6IHRoaXMuYm91bmNlVmFsdWUxLFxyXG4gICB0b3BTdG9yZXM6IHBhcnNlSW50KHRoaXMudG9wU3RvcmVzU2VsZWN0Q29udHJvbC52YWx1ZSksXHJcbiAgfTtcclxuICB0aGlzLnNlcnZpY2UucGVyZm9ybWFuY2VNYXRyaXgob2JqKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICA/LnN1YnNjcmliZSh7XHJcbiAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgdGhpcy5wZXJmb3JtYW5jZURhdGEgPSByZXM/LmRhdGE/LnBlcmZvcm1hbmNlRGF0YVxyXG4gICAgICAgIC8vIHRoaXMucGVyZm9ybWFuY2VEYXRhID0gdGhpcy5ub3JtYWxpemVEYXRhKHRoaXMucGVyZm9ybWFuY2VEYXRhKTtcclxuICAgICAgICAvLyBDYWxjdWxhdGUgbWF4aW11bSBwZXJjZW50YWdlc1xyXG4gICAgICAgIC8vIGNvbnN0IG1heFRvcCA9IE1hdGgubWF4KC4uLnRoaXMucGVyZm9ybWFuY2VEYXRhLm1hcCgoaXRlbTphbnkpID0+IHBhcnNlRmxvYXQoaXRlbS50b3AucmVwbGFjZSgnJScsICcnKSkpKTtcclxuICAgICAgICAvLyBjb25zdCBtYXhMZWZ0ID0gTWF0aC5tYXgoLi4udGhpcy5wZXJmb3JtYW5jZURhdGEubWFwKChpdGVtOmFueSkgPT4gcGFyc2VGbG9hdChpdGVtLmxlZnQucmVwbGFjZSgnJScsICcnKSkpKTtcclxuICAgICAgICBcclxuICAgICAgICAvLyBDb252ZXJ0IHBlcmZvcm1hbmNlIGRhdGEgdG8gcGl4ZWwgdmFsdWVzXHJcbiAgICAgICAgdGhpcy5wb2ludHMgPSB0aGlzLnBlcmZvcm1hbmNlRGF0YS5tYXAoKGRhdGE6IGFueSkgPT4gKHtcclxuICAgICAgICAgIG5hbWU6IGRhdGEuc3RvcmVOYW1lLFxyXG4gICAgICAgICAgc3RvcmVJZDogZGF0YS5zdG9yZUlkLFxyXG4gICAgICAgICAgYXZnRm9vdGZhbGw6IGRhdGEuYXZnLFxyXG4gICAgICAgICAgb3BlblRpbWU6IGRhdGEuYXZnT3BlblRpbWUsXHJcbiAgICAgICAgICBjbG9zZVRpbWU6IGRhdGEuYXZnQ2xvc2VUaW1lLFxyXG4gICAgICAgICAgdG9wOiBkYXRhLnRvcCwgLy8gQXNzdW1pbmcgNTAwcHggYXMgdGhlIGJhc2UgaGVpZ2h0XHJcbiAgICAgICAgICBsZWZ0OiBkYXRhLmxlZnQgIC8vIEFzc3VtaW5nIDEwMDBweCBhcyB0aGUgYmFzZSB3aWR0aFxyXG4gICAgICAgIH0pKTsgXHJcbiAgICAgICAgdGhpcy5wZXJmb3JtYW5jZUxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnBlcmZvcm1hbmNlbm9EYXRhID0gZmFsc2U7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5wZXJmb3JtYW5jZUxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnBlcmZvcm1hbmNlbm9EYXRhID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgb25WYWx1ZUNoYW5nZVRvcFN0b3JlcyhzZWxlY3RlZDogYW55KTogdm9pZCB7XHJcbiAgICBjb25zdCBwYXJzZWRWYWx1ZSA9IHBhcnNlSW50KHNlbGVjdGVkPy52YWx1ZSA/PyBzZWxlY3RlZCwgMTApO1xyXG4gICAgaWYgKCFpc05hTihwYXJzZWRWYWx1ZSkpIHtcclxuICAgICAgdGhpcy5wZXJmb3JtYW5jZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuICBnZXRUb29sdGlwVGV4dCgpOiBzdHJpbmcge1xyXG4gICAgLy8gTG9naWMgdG8gZGV0ZXJtaW5lIHRoZSB0b29sdGlwIHRleHRcclxuICAgIHJldHVybiBcIkR5bmFtaWMgVG9vbHRpcCBUZXh0IFwiICsgbmV3IERhdGUoKS50b0xvY2FsZVRpbWVTdHJpbmcoKTtcclxuICB9XHJcblxyXG4gIGdldEZ1bm5hbCgpe1xyXG4gICAgdGhpcy50YWJsZW9iai52YWx1ZVR5cGU9IHRoaXMudmFsdWVUeXBlLFxyXG4gICAgIHRoaXMudGFibGVvYmouZnJvbURhdGUgPSB0aGlzLmhlYWRlckRhdGE/LmRhdGUuc3RhcnREYXRlO1xyXG4gICAgIHRoaXMudGFibGVvYmoudG9EYXRlID0gdGhpcy5oZWFkZXJEYXRhPy5kYXRlLmVuZERhdGU7XHJcbiAgICAgaWYodGhpcy5jb252ZXJzaW9uVmFsdWUgPT09ICdmb290ZmFsbCcpe1xyXG4gICAgICB0aGlzLnRhYmxlb2JqLmNvbnZlcnNpb250eXBlID0gJ2Zvb3RmYWxsLWNvdW50JztcclxuICAgICB9IGlmICh0aGlzLmNvbnZlcnNpb25WYWx1ZSA9PT0gJ2VuZ2FnZXJzJyl7XHJcbiAgICAgIHRoaXMudGFibGVvYmouY29udmVyc2lvbnR5cGUgPSAnZW5nYWdlcnMtY291bnQnO1xyXG4gICAgIH1pZiAodGhpcy5jb252ZXJzaW9uVmFsdWUgPT09ICdQb3RlbnRpYWwgQnV5ZXJzJyl7XHJcbiAgICAgIHRoaXMudGFibGVvYmouY29udmVyc2lvbnR5cGUgPSAnYmlsbGFibGUtY291bnQnO1xyXG4gICAgIH0gaWYgKHRoaXMuY29udmVyc2lvblZhbHVlID09PSAnTm9CIERlcml2ZWQnKXtcclxuICAgICAgdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSA9ICdub2InO1xyXG4gICAgIH1cclxuICAgICBcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLm9mZnNldDtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnJlY2FwVmlkZW9EYXRlO1xyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmoubGltaXQ7IFxyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmouZXhwb3J0O1xyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmouc29ydDtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnNvcnRCeTtcclxuICAgIHRoaXMuaGVhdGxvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5oZWF0bm9EYXRhID0gZmFsc2U7XHJcbiAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLmRhdGVUeXBlXHJcbiAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgLmdldEZ1bm5lbENhcmRzKHRoaXMudGFibGVvYmopXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgIC8vIHRoaXMuZ2V0Q2FyZERhdGEgPSByZXM/LmRhdGE/LmNhcmQ7XHJcbiAgICAgICAgICAgIHRoaXMuaGVhdE1hcERhdGEgPSByZXM/LmRhdGE/LmZ1bm5lbENoYXJ0O1xyXG4gICAgICAgICAgIFxyXG4gICAgICAgICAgICB0aGlzLmhlYXRNYXAoKTtcclxuICAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmdldENhcmREYXRhID1bXTtcclxuICAgICAgICAgICAgdGhpcy5oZWF0TWFwRGF0YSA9W107XHJcbiAgICAgICAgICB0aGlzLmhlYXRsb2FkaW5nID0gZmFsc2VcclxuICAgICAgICAgIHRoaXMuaGVhdG5vRGF0YSA9IHRydWVcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgIHRoaXMuZ2V0Q2FyZERhdGEgPVtdO1xyXG4gICAgICAgICAgdGhpcy5oZWF0TWFwRGF0YSA9W107XHJcbiAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7fSxcclxuICAgICAgfSk7XHJcbiAgfVxyXG4gIGdldEZvb3RmYWxsQ2FyZERhdGE6YW55PVtdO1xyXG4gIGdldENvbnZlcnNpb25DYXJkRGF0YTphbnk9W107XHJcbiAgZ2V0Qm91bmNlZENhcmREYXRhOmFueSA9W107XHJcbiAgZ2V0RW5nYWdlcnNDYXJkRGF0YTphbnk9W107XHJcbiAgZ2V0UG90ZW50aWFsQnV5ZXJzQ2FyZERhdGE6YW55ID1bXTtcclxuICBnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE6YW55ID1bXTtcclxuICBnZXRQb3RlbnRpYWxCdXllcnNEYXRhOmFueT1bXTtcclxuICBnZXRJbnRpYWwoKXtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnJlY2FwVmlkZW9EYXRlO1xyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmouc29ydDtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnNvcnRCeTtcclxuICAgICh0aGlzLnRhYmxlb2JqLnZhbHVlVHlwZSA9IHRoaXMudmFsdWVUeXBlKSxcclxuICAgICh0aGlzLnRhYmxlb2JqLmZyb21EYXRlID0gdGhpcy5oZWFkZXJEYXRhPy5kYXRlLnN0YXJ0RGF0ZSk7XHJcbiAgdGhpcy50YWJsZW9iai50b0RhdGUgPSB0aGlzLmhlYWRlckRhdGE/LmRhdGUuZW5kRGF0ZTtcclxuICB0aGlzLmdldEZvb3RmYWxsQ2FyZCgpO1xyXG4gIHRoaXMuZ2V0Q29udmVyc2lvbkNhcmQoKTtcclxuICB0aGlzLmdldEJvdW5jZWRDYXJkKCk7XHJcbiAgdGhpcy5nZXRFbmdhZ2Vyc0NhcmQoKTtcclxuICB0aGlzLmdldFBvdGVudGlhbEJ1eWVyc0NhcmQoKTtcclxuICB0aGlzLmdldE1pc3NlZE9wcG9ydHVuaXR5Q2FyZCgpO1xyXG4gIHRoaXMuZ2V0UG90ZW50aWFsQnV5ZXJzKCk7XHJcbiAgfVxyXG4gIGZvb3RmYWxsbG9hZGluZyA9dHJ1ZTtcclxuICBmb290ZmFsbE5vZGF0YSA9ZmFsc2U7XHJcbiAgZ2V0Rm9vdGZhbGxDYXJkKCl7XHJcbiAgICB0aGlzLmZvb3RmYWxsbG9hZGluZyA9dHJ1ZTtcclxuICAgIHRoaXMuZm9vdGZhbGxOb2RhdGEgPWZhbHNlO1xyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmo/Lm9mZnNldDtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqPy5saW1pdDtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqPy5leHBvcnQ7XHJcbiAgICB0aGlzLnRhYmxlb2JqLmRhdGVUeXBlID0gdGhpcy5kYXRlVHlwZTtcclxuICAgIGNvbnNvbGUubG9nKFwi8J+agCB+IFRyYWZmaWNBbmFseXNpc0NvbXBvbmVudCB+IGdldEZvb3RmYWxsQ2FyZCB+IHRoaXMudGFibGVvYmo6XCIsIHRoaXMudGFibGVvYmopXHJcbiAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgLmdldEZvb3RkZmFsbENhcmRMaXN0KHRoaXMudGFibGVvYmopXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZ2V0Rm9vdGZhbGxDYXJkRGF0YSA9IHJlcz8uZGF0YTtcclxuICAgICAgICAgIGlmKHRoaXMuZ2V0Rm9vdGZhbGxDYXJkRGF0YT8uZGF0YT8uZm9vdGZhbGw/LmRhdGEubGVuZ3RoKXtcclxuICAgICAgICAgICAgdGhpcy5mb290ZmFsbGxpbmVDaGFydHMoKTtcclxuICAgICAgICAgICAgdGhpcy5mb290ZmFsbGxvYWRpbmcgPWZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmZvb3RmYWxsTm9kYXRhID1mYWxzZTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLmdldEZvb3RmYWxsQ2FyZERhdGEgPVtdO1xyXG4gICAgICAgICAgdGhpcy5mb290ZmFsbGxvYWRpbmcgPWZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5mb290ZmFsbE5vZGF0YSA9dHJ1ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIH0gZWxzZSB7IFxyXG4gICAgICAgICAgdGhpcy5nZXRGb290ZmFsbENhcmREYXRhID1bXTtcclxuICAgICAgICAgIHRoaXMuZm9vdGZhbGxsb2FkaW5nID1mYWxzZTtcclxuICAgICAgICAgIHRoaXMuZm9vdGZhbGxOb2RhdGEgPXRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgdGhpcy5nZXRGb290ZmFsbENhcmREYXRhID1bXTtcclxuICAgICAgICB0aGlzLmZvb3RmYWxsbG9hZGluZyA9ZmFsc2U7XHJcbiAgICAgICAgdGhpcy5mb290ZmFsbE5vZGF0YSA9dHJ1ZTtcclxuICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfSwgXHJcbiAgICAgIH0pXHJcbiAgfVxyXG4gIHNldENvbnZlcnNpb25UeXBlKGNvbnZlcnNpb25WYWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IG1hcDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcclxuICAgICAgJ2Zvb3RmYWxsJzogJ2Zvb3RmYWxsLWNvdW50JyxcclxuICAgICAgJ2VuZ2FnZXJzJzogJ2VuZ2FnZXJzLWNvdW50JyxcclxuICAgICAgJ1BvdGVudGlhbCBCdXllcnMnOiAnYmlsbGFibGUtY291bnQnLFxyXG4gICAgICAnTm9CIERlcml2ZWQnOiAnbm9iJyxcclxuICAgIH07XHJcbiAgICByZXR1cm4gbWFwW2NvbnZlcnNpb25WYWx1ZV0gfHwgJyc7XHJcbiAgfVxyXG4gIFxyXG4gIGdldENvbnZlcnNpb25DYXJkKCl7XHJcbiAgICBjb25zdCB7IHRhYmxlb2JqIH0gPSB0aGlzO1xyXG4gICAgZGVsZXRlIHRhYmxlb2JqLm9mZnNldDtcclxuICAgIGRlbGV0ZSB0YWJsZW9iai5saW1pdDtcclxuICAgIGRlbGV0ZSB0YWJsZW9iai5leHBvcnQ7XHJcbiAgICB0YWJsZW9iai5kYXRlVHlwZSA9IHRoaXMuZGF0ZVR5cGU7XHJcbiAgICB0YWJsZW9iai5jb252ZXJzaW9udHlwZSA9IHRoaXMuc2V0Q29udmVyc2lvblR5cGUodGhpcy5jb252ZXJzaW9uVmFsdWUpO1xyXG4gICAgICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAgICAgIC5nZXRDb252ZXJzaW9uQ2FyZExpc3QodGhpcy50YWJsZW9iailcclxuICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAgICA/LnN1YnNjcmliZSh7XHJcbiAgICAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgICAgdGhpcy5nZXRDb252ZXJzaW9uQ2FyZERhdGEgPSByZXM/LmRhdGE7XHJcbiAgICAgICAgICAgICAgLy8gIGlmICh0aGlzLm5vYikge1xyXG4gICAgICAgICAgICAgIC8vICAgdGhpcy52YWx1ZUNvbnZlcnNpb25SYXRlID0gdGhpcy5nZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/Lm5vYj8ubm9iO1xyXG4gICAgICAgICAgICAgIC8vICAgdGhpcy5jb252ZXJzaW9uVmFsdWUgPSAnTm9CIERlcml2ZWQnO1xyXG4gICAgICAgICAgICAgIC8vIH0gZWxzZSBpZiAodGhpcy5jbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8ubWlzc2VkT3Bwb3J0dW5pdHlDYWxjdWxhdGlvbiA9PT0gJ2VuZ2FnZXJzLWNvbnZlcnNpb24nKSB7XHJcbiAgICAgICAgICAgICAgLy8gICB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZW5nYWdlcnM/LnJhdGU7XHJcbiAgICAgICAgICAgICAgLy8gICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9ICdlbmdhZ2Vycyc7XHJcbiAgICAgICAgICAgICAgLy8gfSBlbHNlIHtcclxuICAgICAgICAgICAgICAvLyAgIHRoaXMudmFsdWVDb252ZXJzaW9uUmF0ZSA9IHRoaXMuZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5mb290ZmFsbD8ucmF0ZTtcclxuICAgICAgICAgICAgICAvLyAgIHRoaXMuY29udmVyc2lvblZhbHVlID0gJ2Zvb3RmYWxsJztcclxuICAgICAgICAgICAgICAvLyB9XHJcblxyXG4gICAgICAgICAgICAgIGNvbnN0IGNvbnZlcnNpb25UeXBlID0gdGhpcy5jbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uY29udmVyc2lvbkNhbGN1bGF0aW9uO1xyXG4gICAgICAgICAgICAgIGNvbnN0IGlzTk9CID0gdGhpcy5ub2I7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIGlmIChpc05PQikge1xyXG4gICAgICAgICAgICAgICAgc3dpdGNoIChjb252ZXJzaW9uVHlwZSkge1xyXG4gICAgICAgICAgICAgICAgICBjYXNlICdmb290ZmFsbC1jb3VudCc6XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy52YWx1ZUNvbnZlcnNpb25SYXRlID0gdGhpcy5nZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LmZvb3RmYWxsPy5yYXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29udmVyc2lvblZhbHVlID0gJ2Zvb3RmYWxsJztcclxuICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgY2FzZSAnZW5nYWdlcnMtY291bnQnOlxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudmFsdWVDb252ZXJzaW9uUmF0ZSA9IHRoaXMuZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5lbmdhZ2Vycz8ucmF0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9ICdlbmdhZ2Vycyc7XHJcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgIGNhc2UgJ2JpbGxhYmxlLWVudGl0aWVzJzpcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8ucG90ZW50aWFsQnV5ZXJzPy5yYXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29udmVyc2lvblZhbHVlID0gJ1BvdGVudGlhbCBCdXllcnMnO1xyXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0RGVmYXVsdENvbnZlcnNpb24oKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXREZWZhdWx0Q29udmVyc2lvbigpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgIH0gZWxzZSB7IFxyXG4gICAgICAgICAgICAgIHRoaXMuZ2V0Q29udmVyc2lvbkNhcmREYXRhID1bXTtcclxuICAgICAgICAgICB9XHJcbiAgICAgICAgIH0sXHJcbiAgICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgICB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YSA9W107XHJcbiAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgIH0sIFxyXG4gICAgICAgICB9KVxyXG4gICAgIH1cclxuXHJcbiAgICAgc2V0RGVmYXVsdENvbnZlcnNpb24oKSB7XHJcbiAgICAgIHRoaXMudmFsdWVDb252ZXJzaW9uUmF0ZSA9IHRoaXMuZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5mb290ZmFsbD8ucmF0ZTtcclxuICAgICAgdGhpcy5jb252ZXJzaW9uVmFsdWUgPSAnZm9vdGZhbGwnO1xyXG4gICAgfVxyXG4gICAgIGdldENvbnZlcnNpb25DYXJkMSgpe1xyXG4gICAgICBjb25zdCB7IHRhYmxlb2JqIH0gPSB0aGlzO1xyXG4gIGRlbGV0ZSB0YWJsZW9iai5vZmZzZXQ7XHJcbiAgZGVsZXRlIHRhYmxlb2JqLmxpbWl0O1xyXG4gIGRlbGV0ZSB0YWJsZW9iai5leHBvcnQ7XHJcbiAgdGFibGVvYmouZGF0ZVR5cGUgPSB0aGlzLmRhdGVUeXBlO1xyXG4gIHRhYmxlb2JqLmNvbnZlcnNpb250eXBlID0gdGhpcy5zZXRDb252ZXJzaW9uVHlwZSh0aGlzLmNvbnZlcnNpb25WYWx1ZSk7XHJcbiAgICAgICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAgICAgIC5nZXRDb252ZXJzaW9uQ2FyZExpc3QodGhpcy50YWJsZW9iailcclxuICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgIHRoaXMuZ2V0Q29udmVyc2lvbkNhcmREYXRhID0gcmVzPy5kYXRhO1xyXG4gICAgICAgICAgICAgICAgIGlmKHRoaXMuY29udmVyc2lvblZhbHVlID09PSAnZm9vdGZhbGwnKXtcclxuICAgICAgICAgICAgICAgICAgdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSA9ICdmb290ZmFsbC1jb3VudCc7ICB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZm9vdGZhbGw/LnJhdGU7XHJcbiAgICAgICAgICAgICAgICAgfSAgaWYgKHRoaXMuY29udmVyc2lvblZhbHVlID09PSAnZW5nYWdlcnMnKXtcclxuICAgICAgICAgICAgICAgICAgdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSA9ICdlbmdhZ2Vycy1jb3VudCc7IFxyXG4gICAgICAgICAgICAgICAgICB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZW5nYWdlcnM/LnJhdGU7XHJcbiAgICAgICAgICAgICAgICAgfWlmICh0aGlzLmNvbnZlcnNpb25WYWx1ZSA9PT0gJ1BvdGVudGlhbCBCdXllcnMnKXtcclxuICAgICAgICAgICAgICAgICAgdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSA9ICdiaWxsYWJsZS1jb3VudCc7IFxyXG4gICAgICAgICAgICAgICAgICB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8ucG90ZW50aWFsQnV5ZXJzPy5yYXRlO1xyXG4gICAgICAgICAgICAgICAgIH0gaWYgKHRoaXMuY29udmVyc2lvblZhbHVlID09PSAnTm9CIERlcml2ZWQnKXtcclxuICAgICAgICAgICAgICAgICAgdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSA9ICdub2InOyB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8ubm9iPy5ub2I7XHJcbiAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICB9IGVsc2UgeyBcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0Q29udmVyc2lvbkNhcmREYXRhID1bXTtcclxuICAgICAgICAgICAgIH1cclxuICAgICAgICAgICB9LFxyXG4gICAgICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgIHRoaXMuZ2V0Q29udmVyc2lvbkNhcmREYXRhID1bXTtcclxuICAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgIH0sIFxyXG4gICAgICAgICAgIH0pXHJcbiAgICAgICB9XHJcbiAgICAgYm91bmNlZE5vZGF0YSA9ZmFsc2U7XHJcbiAgICAgZ2V0Qm91bmNlZENhcmQoKXtcclxuICAgICAgZGVsZXRlIHRoaXMudGFibGVvYmoub2Zmc2V0O1xyXG4gICAgICBkZWxldGUgdGhpcy50YWJsZW9iai5saW1pdDtcclxuICAgICAgZGVsZXRlIHRoaXMudGFibGVvYmouZXhwb3J0O1xyXG4gICAgICB0aGlzLnRhYmxlb2JqLmRhdGVUeXBlPSB0aGlzLmRhdGVUeXBlO1xyXG4gICAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgICAuZ2V0Qm91bmNlZENhcmRMaXN0KHRoaXMudGFibGVvYmopXHJcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAgID8uc3Vic2NyaWJlKHtcclxuICAgICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgICB0aGlzLmdldEJvdW5jZWRDYXJkRGF0YSA9IHJlcz8uZGF0YTtcclxuICAgICAgICAgICAgICBpZih0aGlzLmdldEJvdW5jZWRDYXJkRGF0YT8uZGF0YT8uYm91bmNlZD8uZGF0YS5sZW5ndGgpe1xyXG4gICAgICAgICAgICAgIHRoaXMuYm91bmNlZGxpbmVDaGFydHMoKTtcclxuICAgICAgICAgICAgICB0aGlzLmJvdW5jZWROb2RhdGEgPWZhbHNlO1xyXG4gICAgICAgICAgICAgIH0gZWxzZXtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0Qm91bmNlZENhcmREYXRhID1bXTtcclxuICAgICAgICAgICAgICAgIHRoaXMuYm91bmNlZE5vZGF0YSA9dHJ1ZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7IFxyXG4gICAgICAgICAgICAgIHRoaXMuYm91bmNlZE5vZGF0YSA9dHJ1ZTtcclxuICAgICAgICAgICAgICB0aGlzLmdldEJvdW5jZWRDYXJkRGF0YSA9W107XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmdldEJvdW5jZWRDYXJkRGF0YSA9W107XHJcbiAgICAgICAgICB0aGlzLmJvdW5jZWROb2RhdGEgPXRydWU7XHJcbiAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB9LCBcclxuICAgICAgICB9KSBcclxuICAgIH1cclxuICAgIGVuZ2FnZXJzTm9kYXRhID1mYWxzZTtcclxuICAgIGdldEVuZ2FnZXJzQ2FyZCgpe1xyXG4gICAgICBkZWxldGUgdGhpcy50YWJsZW9iai5vZmZzZXQ7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLmxpbWl0O1xyXG4gICAgICBkZWxldGUgdGhpcy50YWJsZW9iai5leHBvcnQ7XHJcbiAgICAgIHRoaXMudGFibGVvYmouZGF0ZVR5cGU9IHRoaXMuZGF0ZVR5cGU7XHJcbiAgICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAgIC5nZXRFbmdhZ2Vyc0NhcmRMaXN0KHRoaXMudGFibGVvYmopXHJcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAgID8uc3Vic2NyaWJlKHtcclxuICAgICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgICB0aGlzLmdldEVuZ2FnZXJzQ2FyZERhdGEgPSByZXM/LmRhdGE7XHJcbiAgICAgICAgICAgICAgaWYodGhpcy5nZXRFbmdhZ2Vyc0NhcmREYXRhPy5kYXRhPy5lbmdhZ2Vycz8uZGF0YS5sZW5ndGgpe1xyXG4gICAgICAgICAgICAgIHRoaXMuZW5nYWdlcnNsaW5lQ2hhcnRzKCk7XHJcbiAgICAgICAgICAgICAgdGhpcy5lbmdhZ2Vyc05vZGF0YSA9ZmFsc2U7XHJcbiAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0RW5nYWdlcnNDYXJkRGF0YSA9W107XHJcbiAgICAgICAgICAgICAgdGhpcy5lbmdhZ2Vyc05vZGF0YSA9dHJ1ZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7IFxyXG4gICAgICAgICAgICAgIHRoaXMuZ2V0RW5nYWdlcnNDYXJkRGF0YSA9W107XHJcbiAgICAgICAgICAgICAgdGhpcy5lbmdhZ2Vyc05vZGF0YSA9dHJ1ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgIHRoaXMuZ2V0RW5nYWdlcnNDYXJkRGF0YSA9W107XHJcbiAgICAgICAgICB0aGlzLmVuZ2FnZXJzTm9kYXRhID10cnVlO1xyXG4gICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSwgXHJcbiAgICAgICAgfSlcclxuICAgIH1cclxuICAgIGdldE1pc3NlZE9wcG9ydHVuaXR5Q2FyZCgpe1xyXG4gICAgICB0aGlzLnRhYmxlb2JqLmNvdW50cnkgPSB0aGlzLmhlYWRlckRhdGE/LmNvdW50cnkuZmlsdGVyKChjb3VudHJpZXM6YW55KSA9PiBjb3VudHJpZXMuY2hlY2tlZCkubWFwKChjb3VudHJpZXM6YW55KSA9PiBjb3VudHJpZXMuY291bnRyeSk7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLm9mZnNldDtcclxuICAgICAgZGVsZXRlIHRoaXMudGFibGVvYmoubGltaXQ7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLmV4cG9ydDtcclxuICAgICAgdGhpcy50YWJsZW9iai5kYXRlVHlwZT0gdGhpcy5kYXRlVHlwZTtcclxuICAgICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAgIC5nZXRNaXNzZWRPcHBvcnR1bml0eUNhcmRMaXN0KHRoaXMudGFibGVvYmopXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhID0gcmVzPy5kYXRhO1xyXG4gICAgICAgICAgfSBlbHNlIHsgXHJcbiAgICAgICAgICAgIHRoaXMuZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhID1bXTtcclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICB0aGlzLmdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YSA9W107XHJcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH0sIFxyXG4gICAgICB9KVxyXG4gICAgfVxyXG4gICAgcG90ZW50aWFsTm9kYXRhID1mYWxzZTtcclxuICAgIGdldFBvdGVudGlhbEJ1eWVyc0NhcmQoKXtcclxuICAgICAgZGVsZXRlIHRoaXMudGFibGVvYmoub2Zmc2V0O1xyXG4gICAgICBkZWxldGUgdGhpcy50YWJsZW9iai5saW1pdDtcclxuICAgICAgZGVsZXRlIHRoaXMudGFibGVvYmouZXhwb3J0O1xyXG4gICAgICB0aGlzLnRhYmxlb2JqLmRhdGVUeXBlPSB0aGlzLmRhdGVUeXBlO1xyXG4gICAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgICAuZ2V0UG90ZW50aWFsQnV5ZXJzQ2FyZExpc3QodGhpcy50YWJsZW9iailcclxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgIHRoaXMuZ2V0UG90ZW50aWFsQnV5ZXJzQ2FyZERhdGEgPSByZXM/LmRhdGE7XHJcbiAgICAgICAgICAgICAgaWYodGhpcy5nZXRQb3RlbnRpYWxCdXllcnNDYXJkRGF0YT8uZGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5kYXRhLmxlbmd0aCl7XHJcbiAgICAgICAgICAgICAgdGhpcy5wb3RlbnRpYWxsaW5lQ2hhcnRzKCk7XHJcbiAgICAgICAgICAgICAgdGhpcy5wb3RlbnRpYWxOb2RhdGEgPWZhbHNlO1xyXG4gICAgICAgICAgICAgIH0gZWxzZSB7IFxyXG4gICAgICAgICAgICAgICAgdGhpcy5nZXRQb3RlbnRpYWxCdXllcnNDYXJkRGF0YSA9W107XHJcbiAgICAgICAgICAgICAgICB0aGlzLnBvdGVudGlhbE5vZGF0YSA9dHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9ICBlbHNlIHsgXHJcbiAgICAgICAgICAgICAgdGhpcy5nZXRQb3RlbnRpYWxCdXllcnNDYXJkRGF0YSA9W107XHJcbiAgICAgICAgICAgICAgdGhpcy5wb3RlbnRpYWxOb2RhdGEgPXRydWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmdldFBvdGVudGlhbEJ1eWVyc0NhcmREYXRhID1bXTtcclxuICAgICAgICAgIHRoaXMucG90ZW50aWFsTm9kYXRhID10cnVlO1xyXG4gICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSwgXHJcbiAgICAgICAgfSlcclxuICAgIH1cclxuXHJcbiAgICBnZXRQb3RlbnRpYWxCdXllcnMoKXtcclxuICAgICAgZGVsZXRlIHRoaXMudGFibGVvYmoub2Zmc2V0O1xyXG4gICAgICBkZWxldGUgdGhpcy50YWJsZW9iai5saW1pdDtcclxuICAgICAgZGVsZXRlIHRoaXMudGFibGVvYmouZXhwb3J0O1xyXG4gICAgICB0aGlzLnRhYmxlb2JqLmRhdGVUeXBlPSB0aGlzLmRhdGVUeXBlO1xyXG4gICAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgLmdldFBvdGVudGlhbEJ1eWVyc0Rpc3RyaWJ1dGlvbkNhcmRMaXN0KHRoaXMudGFibGVvYmopXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YSA9IHJlcz8uZGF0YT8uY2FyZDtcclxuICAgICAgICAgIH0gIGVsc2UgeyBcclxuICAgICAgICAgICAgdGhpcy5nZXRQb3RlbnRpYWxCdXllcnNEYXRhID1bXTtcclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICB0aGlzLmdldFBvdGVudGlhbEJ1eWVyc0RhdGEgPVtdO1xyXG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9LCBcclxuICAgICAgfSlcclxuICAgIH1cclxuXHJcblxyXG4gIGdldFJlY2FwKCkge1xyXG4gICAgdGhpcy5yZWNhcGxhb2RpbmcgPXRydWU7XHJcbiAgICB0aGlzLnJlY2Fwbm9EYXRhID1mYWxzZTtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnByb2Nlc3NUeXBlOyBkZWxldGUgdGhpcy50YWJsZW9iai5ub3JtYWxpemVkRGF0YTtcclxuICAgICBkZWxldGUgdGhpcy50YWJsZW9iai5kYXRlVHlwZTsgZGVsZXRlIHRoaXMudGFibGVvYmouZnJvbURhdGU7XHJcbiAgICAgZGVsZXRlIHRoaXMudGFibGVvYmoudG9EYXRlOyBkZWxldGUgdGhpcy50YWJsZW9iai52YWx1ZVR5cGU7IGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnByb2Nlc3NUeXBlO1xyXG4gICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnNlYXJjaDsgZGVsZXRlIHRoaXMudGFibGVvYmoub2Zmc2V0O1xyXG4gICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLmxpbWl0OyBkZWxldGUgdGhpcy50YWJsZW9iai5zb3J0Qnk7IGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnNvcnQ7XHJcbiAgICAgZGVsZXRlIHRoaXMudGFibGVvYmouZXhwb3J0O1xyXG4gICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLm5vcm1hbGl6ZTtcclxuICAgICB0aGlzLnRhYmxlb2JqLnJlY2FwVmlkZW9EYXRlID0gdGhpcy5oZWFkZXJEYXRhPy5kYXRlLmVuZERhdGU7XHJcbiAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgLmdldFJlY2FwVmlkZW8odGhpcy50YWJsZW9iailcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICA/LnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgdGhpcy5nZXRSZWNhcFZpZGVvRGF0YSA9IHJlcz8uZGF0YTtcclxuICAgICAgICAgICAgdGhpcy5nZXRSZWNhcERhdGEgPSByZXM/LmRhdGE/LnJlY2FwVmlkZW9EYXRhO1xyXG4gICAgICAgICAgICB0aGlzLmdyb3VwUmVjYXBzKCk7XHJcbiAgICAgICAgICAgIGlmKCF0aGlzLmdldFJlY2FwRGF0YS5sZW5ndGgpe1xyXG4gICAgICAgICAgICAgIHRoaXMucmVjYXBsYW9kaW5nID1mYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5yZWNhcG5vRGF0YSA9dHJ1ZTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICB0aGlzLnJlY2FwbGFvZGluZyA9ZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMucmVjYXBub0RhdGEgPWZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpOyAgICBcclxuICAgICAgICAgIH0gZWxzZXtcclxuICAgICAgICAgICAgdGhpcy5nZXRSZWNhcFZpZGVvRGF0YSA9W11cclxuICAgICAgICAgICAgdGhpcy5yZWNhcGxhb2RpbmcgPWZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLnJlY2Fwbm9EYXRhID10cnVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChlcnI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICB0aGlzLnJlY2FwbGFvZGluZyA9ZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLnJlY2Fwbm9EYXRhID10cnVlO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgY29tcGxldGU6ICgpID0+IHt9LFxyXG4gICAgICB9KTtcclxuICB9XHJcbiAgZ3JvdXBSZWNhcHMoKSB7XHJcbiAgICB0aGlzLnJlY2Fwc0dyb3VwZWQgPSBbXTtcclxuICAgIGxldCBncm91cFNpemUgPSB0aGlzLmdldFJlY2FwRGF0YS5sZW5ndGggPT09IDEgPyAxIDogMjtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5nZXRSZWNhcERhdGEubGVuZ3RoOyBpICs9IGdyb3VwU2l6ZSkge1xyXG4gICAgICB0aGlzLnJlY2Fwc0dyb3VwZWQucHVzaCh0aGlzLmdldFJlY2FwRGF0YS5zbGljZShpLCBpICsgZ3JvdXBTaXplKSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNvbFZhbHVlID0gdGhpcy5nZXRSZWNhcERhdGEubGVuZ3RoID09PSAxID8gJ2NvbC1tZC0xMicgOiAnY29sLW1kLTYnO1xyXG4gIH1cclxuICB2aWRlb0NsaWNrKG9iajphbnkpe1xyXG4gICAgY29uc3QgbW9kYWxSZWYgPSB0aGlzLm1vZGFsU2VydmljZS5vcGVuKFZpZGVvVXJsQ29tcG9uZW50LCB7XHJcbiAgICAgIGNlbnRlcmVkOiB0cnVlLFxyXG4gICAgICBzaXplOiBcImxnXCIsXHJcbiAgICAgIHNjcm9sbGFibGU6IHRydWUsXHJcbiAgICB9KTtcclxuICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLnZpZGVvVXJsID0gb2JqO1xyXG4gICAgbW9kYWxSZWYuY29tcG9uZW50SW5zdGFuY2UuZGF0ZT0gdGhpcy5oZWFkZXJEYXRhPy5kYXRlPy5lbmREYXRlXHJcbiAgICBtb2RhbFJlZi5yZXN1bHQudGhlbigocmVzdWx0OiBhbnkpID0+IHt9KTtcclxuICB9XHJcbiAgcHJldmlvdXNWYWx1ZTogYW55ID0gbnVsbDtcclxuICBjaGFuZ2VWYWx1ZShtZXRob2Q6IGFueSkge1xyXG4gICAgICB0aGlzLnByZXZpb3VzVmFsdWUgPSBtZXRob2Q7XHJcbiAgICAgIGlmICh0aGlzLnByZXZpb3VzVmFsdWUgPT09ICdwb3RlbnRpYWxCdXllcnMnKSB7XHJcbiAgICAgICAgdGhpcy5jb252ZXJzaW9uVmFsdWUgPSAnUG90ZW50aWFsIEJ1eWVycyc7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5jb252ZXJzaW9uVmFsdWUgPSBtZXRob2Q7XHJcbiAgICAgIH1cclxuICAgXHJcbiAgICAgIGNvbnN0IGlzQ29udmVyc2lvbiA9IHRoaXMuaXNDb252ZXJzaW9uID09PSB0cnVlO1xyXG4gICAgICBjb25zdCBjb252ZXJzaW9uVHlwZU1hcDogYW55ID0ge1xyXG4gICAgICAgIGZvb3RmYWxsOiB7XHJcbiAgICAgICAgICByYXRlOiB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZm9vdGZhbGw/LnJhdGUsXHJcbiAgICAgICAgICB0eXBlOiAnZm9vdGZhbGwtY291bnQnLFxyXG4gICAgICAgICAgbm9iOiBpc0NvbnZlcnNpb24gPyB0cnVlIDogZmFsc2VcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVuZ2FnZXJzOiB7XHJcbiAgICAgICAgICByYXRlOiB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZW5nYWdlcnM/LnJhdGUsXHJcbiAgICAgICAgICB0eXBlOiAnZW5nYWdlcnMtY291bnQnLFxyXG4gICAgICAgICAgbm9iOiBpc0NvbnZlcnNpb24gPyB0cnVlIDogZmFsc2VcclxuICAgICAgICB9LFxyXG4gICAgICAgIHBvdGVudGlhbEJ1eWVyczoge1xyXG4gICAgICAgICAgcmF0ZTogdGhpcy5nZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LnBvdGVudGlhbEJ1eWVycz8ucmF0ZSxcclxuICAgICAgICAgIHR5cGU6ICdiaWxsYWJsZS1jb3VudCcsXHJcbiAgICAgICAgICBub2I6IGlzQ29udmVyc2lvbiA/IHRydWUgOiBmYWxzZVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgJ05vQiBEZXJpdmVkJzoge1xyXG4gICAgICAgICAgcmF0ZTogdGhpcy5nZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/Lm5vYj8ubm9iLFxyXG4gICAgICAgICAgdHlwZTogJ25vYicsXHJcbiAgICAgICAgICBub2I6IHRydWUgLy8gYWx3YXlzIHRydWUgZm9yIE5vQiBEZXJpdmVkXHJcbiAgICAgICAgfVxyXG4gICAgICB9O1xyXG4gICAgICBcclxuICAgICAgY29uc3QgZGF0YSA9IGNvbnZlcnNpb25UeXBlTWFwW3RoaXMucHJldmlvdXNWYWx1ZV07XHJcbiAgICAgIFxyXG4gICAgICBpZiAoZGF0YSkge1xyXG4gICAgICAgIHRoaXMudmFsdWVDb252ZXJzaW9uUmF0ZSA9IGRhdGEucmF0ZTtcclxuICAgICAgICB0aGlzLnRhYmxlb2JqLm5vYiA9IGRhdGEubm9iO1xyXG4gICAgICAgIHRoaXMub2JqRGF0YS5ub2IgPSBkYXRhLm5vYjtcclxuICAgICAgICB0aGlzLm9iakRhdGFUcmFmZmljLm5vYiA9IGRhdGEubm9iO1xyXG4gICAgICAgIHRoaXMubm9iID0gZGF0YS5ub2I7XHJcbiAgICAgICAgdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSA9IGRhdGEudHlwZTtcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgLy8gdGhpcy5zZXJ2aWNlLnRvZ2dsZW5vYih0aGlzLnRhYmxlb2JqLm5vYik7XHJcbiAgICAgIHRoaXMuZ2V0RnVubmFsKCk7IFxyXG4gICAgICBpZih0aGlzLnRhYmxlb2JqLm5vYiA9PT1mYWxzZSlcclxuICAgICAgdGhpcy5nZXRDb252ZXJzaW9uQ2FyZDEoKTsgXHJcbiAgICAgIHRoaXMudGFibGVvYmouZnJvbURhdGU9IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZS5zdGFydERhdGUsXHJcbiAgICAgIHRoaXMudGFibGVvYmoudG9EYXRlPSB0aGlzLmhlYWRlckRhdGE/LmRhdGUuZW5kRGF0ZSxcclxuICAgICAgdGhpcy50YWJsZW9iai5zZWFyY2ggPSB0aGlzLnNlYXJjaFZhbHVlO1xyXG4gICAgICBkZWxldGUgdGhpcy50YWJsZW9iai5yZWNhcFZpZGVvRGF0ZTtcclxuICAgICAgdGhpcy5nZXRUYWJsZSgpO1xyXG4gICAgIHRoaXMuZm9vdGZhbGxUcmVuZCgpO1xyXG4gICAgIGlmKHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTknKXtcclxuICAgICAgdGhpcy5zZWxlY3RlZFRhYiA9IFwiZm9vdGZhbGxcIlxyXG4gICAgICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBcImZvb3RmYWxsXCI7XHJcbiAgICAgIHRoaXMuc2VsY3RlZFZhbHVlID0nRm9vdGZhbGwgQW5hbHlzaXMnO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkVGFicygnZm9vdGZhbGwnKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSBcInRyYWZmaWNcIlxyXG4gICAgICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBcInRyYWZmaWNcIjtcclxuICAgICAgdGhpcy5zZWxjdGVkVmFsdWUgPSdUcmFmZmljIEFuYWx5c2lzJztcclxuICAgICAgdGhpcy5zZWxlY3RlZFRhYnMoJ3RyYWZmaWMnKTtcclxuICAgIH1cclxuICAgXHJcbiAgICAvLyB9XHJcbiAgfVxyXG4gXHJcblxyXG4gIGdldFRhYmxlKCkge1xyXG4gICAgdGhpcy5saW1pdCA9MTA7XHJcbiAgICB0aGlzLnRhYmxlb2JqLm9mZnNldCA9IHRoaXMub2Zmc2V0ID0gdGhpcy5jdXJyZW50UGFnZSAtMTtcclxuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLm5vRGF0YSA9IGZhbHNlO1xyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmoucHJvY2Vzc1R5cGU7XHJcbiAgICBkZWxldGUgdGhpcy50YWJsZW9iai5ub3JtYWxpemVkRGF0YTtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLmRhdGVUeXBlO1xyXG4gICAgKHRoaXMudGFibGVvYmoubGltaXQgPSB0aGlzLmxpbWl0KTtcclxuICAgICh0aGlzLnRhYmxlb2JqLnNlYXJjaCA9IHRoaXMuc2VhcmNoVmFsdWUpLCBcclxuICAgICAodGhpcy50YWJsZW9iai52YWx1ZVR5cGUgPSB0aGlzLnR5cGVWYWx1ZSk7IFxyXG4gICAgICh0aGlzLnRhYmxlb2JqLmNvbnZlcnNpb250eXBlID0gdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSk7XHJcbiAgICAgdGhpcy50YWJsZW9iai5leHBvcnQgPSBmYWxzZTtcclxuICAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgLmdldFN1bW1hcnlUYWJsZUxpc3QodGhpcy50YWJsZW9iailcclxuICAgICAgPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgIGlmKHJlcz8uZGF0YS5zdW1tYXJ5RGF0YS5sZW5ndGggPT09MCl7XHJcbiAgICAgICAgICAgICAgdGhpcy5nZXRTdW1tYXJ5VGFibGVEYXRhID1bXVxyXG4gICAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIHRoaXMubm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB0aGlzLnRvdGFsSXRlbXMgPSAwOyBcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5nZXRTdW1tYXJ5VGFibGVEYXRhID0gcmVzPy5kYXRhLnN1bW1hcnlEYXRhO1xyXG4gICAgICAgICAgICB0aGlzLnRvdGFsSXRlbXMgPSByZXMuZGF0YT8udG90YWxDb3VudDtcclxuICAgICAgICB0aGlzLnN0b3JlQ29kZSA9cmVzLmRhdGE/LnN0b3JlQ29kZVN0YXR1c1xyXG4gICAgICAgICAgICB0aGlzLnNldFBhZ2luYXRpb25TaXplcygpO1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5ub0RhdGEgPSBmYWxzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5nZXRTdW1tYXJ5VGFibGVEYXRhID1bXVxyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5ub0RhdGEgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLnRvdGFsSXRlbXMgPSAwOyBcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChlcnI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBjb21wbGV0ZTogKCkgPT4ge30sXHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICBzZWFyY2hEYXRhKCkge1xyXG4gICAgdGhpcy50YWJsZW9iai5mcm9tRGF0ZT0gdGhpcy5oZWFkZXJEYXRhPy5kYXRlLnN0YXJ0RGF0ZSxcclxuICAgIHRoaXMudGFibGVvYmoudG9EYXRlPSB0aGlzLmhlYWRlckRhdGE/LmRhdGUuZW5kRGF0ZSxcclxuICAgIHRoaXMudGFibGVvYmouc2VhcmNoID0gdGhpcy5zZWFyY2hWYWx1ZTtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnJlY2FwVmlkZW9EYXRlO1xyXG4gICAgKHRoaXMudGFibGVvYmouY29udmVyc2lvbnR5cGUgPSB0aGlzLnRhYmxlb2JqLmNvbnZlcnNpb250eXBlKTtcclxuICAgIHRoaXMudGFibGVvYmouZXhwb3J0ID0gZmFsc2U7XHJcbiAgICB0aGlzLm9mZnNldCA9IDE7XHJcbiAgICB0aGlzLnRhYmxlb2JqLm9mZnNldCA9IHRoaXMub2Zmc2V0IC0xO1xyXG4gICAgdGhpcy5saW1pdD0xMDtcclxuICAgIHRoaXMuZ2V0VGFibGUoKTtcclxuICB9XHJcblxyXG4gIHNldFBhZ2luYXRpb25TaXplcygpIHtcclxuICAgIGlmICh0aGlzLnRvdGFsSXRlbXMgPiAxMCkge1xyXG4gICAgICB0aGlzLnBhZ2luYXRpb25TaXplcyA9IFsxMCwgMjAsIDMwXTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMucGFnaW5hdGlvblNpemVzID0gW3RoaXMudG90YWxJdGVtc107IC8vIEp1c3Qgb25lIG9wdGlvbiBpZiBsZXNzIHRoYW4gMTBcclxuICAgIH1cclxuICAgIHRoaXMucGFnZVNpemUgPSB0aGlzLnBhZ2luYXRpb25TaXplc1swXTtcclxuICB9XHJcbiAgc3RvcmVDb2RlOmFueT1mYWxzZTtcclxuICBvblBhZ2VDaGFuZ2UocGFnZU9mZnNldDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5ub0RhdGEgPSBmYWxzZTtcclxuICAgIHRoaXMub2Zmc2V0ID0gTnVtYmVyKHBhZ2VPZmZzZXQpO1xyXG4gICAgdGhpcy50YWJsZW9iai5vZmZzZXQgPSB0aGlzLm9mZnNldCAtMTtcclxuICAgICh0aGlzLnRhYmxlb2JqLmxpbWl0ID0gdGhpcy5saW1pdCksXHJcbiAgICAodGhpcy50YWJsZW9iai5zZWFyY2ggPSB0aGlzLnNlYXJjaFZhbHVlKSwgXHJcbiAgICAgKHRoaXMudGFibGVvYmoudmFsdWVUeXBlID0gdGhpcy50eXBlVmFsdWUpO1xyXG4gICAgdGhpcy50YWJsZW9iai5mcm9tRGF0ZT0gdGhpcy5oZWFkZXJEYXRhPy5kYXRlLnN0YXJ0RGF0ZSxcclxuICAgIHRoaXMudGFibGVvYmoudG9EYXRlPSB0aGlzLmhlYWRlckRhdGE/LmRhdGUuZW5kRGF0ZSxcclxuICAgIHRoaXMudGFibGVvYmouc2VhcmNoID0gdGhpcy5zZWFyY2hWYWx1ZTtcclxuICAgICh0aGlzLnRhYmxlb2JqLmNvbnZlcnNpb250eXBlID0gdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSk7XHJcbiAgICBkZWxldGUgdGhpcy50YWJsZW9iai5yZWNhcFZpZGVvRGF0ZTtcclxuICAgIHRoaXMudGFibGVvYmouZXhwb3J0ID0gZmFsc2U7XHJcbiAgICB0aGlzLnNlcnZpY2VcclxuICAgIC5nZXRTdW1tYXJ5VGFibGVMaXN0KHRoaXMudGFibGVvYmopXHJcbiAgICA/LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09PSAyMDApIHtcclxuICAgICAgICAgIGlmKHJlcz8uZGF0YS5zdW1tYXJ5RGF0YS5sZW5ndGggPT09MCl7XHJcbiAgICAgICAgICAgIHRoaXMuZ2V0U3VtbWFyeVRhYmxlRGF0YSA9W11cclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMubm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy50b3RhbEl0ZW1zID0gMDsgXHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5nZXRTdW1tYXJ5VGFibGVEYXRhID0gcmVzPy5kYXRhLnN1bW1hcnlEYXRhO1xyXG4gICAgICAgICAgdGhpcy50b3RhbEl0ZW1zID0gcmVzLmRhdGE/LnRvdGFsQ291bnQ7XHJcbiAgICAgICAgICB0aGlzLnN0b3JlQ29kZSA9cmVzLmRhdGE/LnN0b3JlQ29kZVN0YXR1c1xyXG4gICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLm5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLmdldFN1bW1hcnlUYWJsZURhdGEgPVtdXHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIHRoaXMubm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICAgIHRoaXMudG90YWxJdGVtcyA9IDA7IFxyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgICAgZXJyb3I6IChlcnI6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9LFxyXG4gICAgICBjb21wbGV0ZTogKCkgPT4ge30sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uUGFnZVNpemVDaGFuZ2UocGFnZVNpemU6IG51bWJlcikge1xyXG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMubm9EYXRhID0gZmFsc2U7XHJcbiAgICB0aGlzLnBhZ2VTaXplID0gTnVtYmVyKHBhZ2VTaXplKTtcclxuICAgIHRoaXMubGltaXQgPSBOdW1iZXIocGFnZVNpemUpO1xyXG4gICAgdGhpcy5jdXJyZW50UGFnZSA9IDE7XHJcbiAgICB0aGlzLm9mZnNldCA9IDA7XHJcbiAgICB0aGlzLnRhYmxlb2JqLm9mZnNldCA9IHRoaXMub2Zmc2V0O1xyXG4gICAgKHRoaXMudGFibGVvYmoubGltaXQgPSB0aGlzLmxpbWl0KSxcclxuICAgICh0aGlzLnRhYmxlb2JqLnZhbHVlVHlwZSA9IHRoaXMudHlwZVZhbHVlKTtcclxuICAgIHRoaXMudGFibGVvYmouZnJvbURhdGU9IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZS5zdGFydERhdGUsXHJcbiAgICB0aGlzLnRhYmxlb2JqLnRvRGF0ZT0gdGhpcy5oZWFkZXJEYXRhPy5kYXRlLmVuZERhdGUsXHJcbiAgICB0aGlzLnRhYmxlb2JqLnNlYXJjaCA9IHRoaXMuc2VhcmNoVmFsdWU7XHJcbiAgICAodGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSA9IHRoaXMudGFibGVvYmouY29udmVyc2lvbnR5cGUpO1xyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmoucmVjYXBWaWRlb0RhdGU7XHJcbiAgICB0aGlzLnRhYmxlb2JqLmV4cG9ydCA9IGZhbHNlO1xyXG4gICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAuZ2V0U3VtbWFyeVRhYmxlTGlzdCh0aGlzLnRhYmxlb2JqKVxyXG4gICAgPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgID8uc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICBpZihyZXM/LmRhdGEuc3VtbWFyeURhdGEubGVuZ3RoID09PTApe1xyXG4gICAgICAgICAgICB0aGlzLmdldFN1bW1hcnlUYWJsZURhdGEgPVtdXHJcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMudG90YWxJdGVtcyA9IDA7IFxyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuZ2V0U3VtbWFyeVRhYmxlRGF0YSA9IHJlcz8uZGF0YS5zdW1tYXJ5RGF0YTtcclxuICAgICAgICAgIHRoaXMudG90YWxJdGVtcyA9IHJlcy5kYXRhPy50b3RhbENvdW50O1xyXG4gIHRoaXMuc3RvcmVDb2RlID1yZXMuZGF0YT8uc3RvcmVDb2RlU3RhdHVzXHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIHRoaXMubm9EYXRhID0gZmFsc2U7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuZ2V0U3VtbWFyeVRhYmxlRGF0YSA9W11cclxuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5ub0RhdGEgPSB0cnVlO1xyXG4gICAgICAgICAgdGhpcy50b3RhbEl0ZW1zID0gMDsgXHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH0sXHJcbiAgICAgIGNvbXBsZXRlOiAoKSA9PiB7fSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25WYWx1ZVR5cGUodHlwZTphbnkpe1xyXG4gICAgdGhpcy50YWJsZW9iai5mcm9tRGF0ZT0gdGhpcy5oZWFkZXJEYXRhLmRhdGUuc3RhcnREYXRlLFxyXG4gICAgdGhpcy50YWJsZW9iai50b0RhdGU9IHRoaXMuaGVhZGVyRGF0YS5kYXRlLmVuZERhdGUsXHJcbiAgICBkZWxldGUgdGhpcy50YWJsZW9iai5yZWNhcFZpZGVvRGF0ZTtcclxuICAgIHRoaXMudGFibGVvYmouZXhwb3J0ID0gZmFsc2U7XHJcbiAgICAgdGhpcy50eXBlVmFsdWUgPXR5cGU7XHJcbiAgICB0aGlzLnRhYmxlb2JqLnZhbHVlVHlwZSA9dHlwZTtcclxuICAgICh0aGlzLnRhYmxlb2JqLmNvbnZlcnNpb250eXBlID0gdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSk7XHJcbiAgICB0aGlzLmdldFRhYmxlKCk7XHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xyXG4gICAgdGhpcy56b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcclxuICAgICAgaWYgKHRoaXMubGluZXJvb3QpIHtcclxuICAgICAgICB0aGlzLmxpbmVyb290LmRpc3Bvc2UoKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5ib3VuY2VkbGluZXJvb3QpIHtcclxuICAgICAgICB0aGlzLmJvdW5jZWRsaW5lcm9vdC5kaXNwb3NlKCk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMucG90ZW50aWFsQnV5ZXJzbGluZXJvb3QpIHtcclxuICAgICAgICB0aGlzLnBvdGVudGlhbEJ1eWVyc2xpbmVyb290LmRpc3Bvc2UoKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5lbmdhZ2Vyc2xpbmVyb290KSB7XHJcbiAgICAgICAgdGhpcy5lbmdhZ2Vyc2xpbmVyb290LmRpc3Bvc2UoKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5oZWF0TWFwcm9vdCkge1xyXG4gICAgICAgIHRoaXMuaGVhdE1hcHJvb3QuZGlzcG9zZSgpO1xyXG4gICAgICB9IGlmICh0aGlzLnJvb3RUcmVuZHMpIHtcclxuICAgICAgICB0aGlzLnJvb3RUcmVuZHMuZGlzcG9zZSgpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLmR3ZWxsUm9vdCkge1xyXG4gICAgICAgIHRoaXMuZHdlbGxSb290LmRpc3Bvc2UoKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5pbnRlcnZhbElkKSB7XHJcbiAgICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLmludGVydmFsSWQpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbiAgLy8gY2FyZCBsaW5lIENoYXJ0cyBTdGFydFxyXG5cclxuICBmb290ZmFsbGxpbmVDaGFydHMoKSB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3QgY2hhcnREaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcIkZvb3RmYWxsXCIpO1xyXG4gICAgICBpZiAoIWNoYXJ0RGl2KSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLmxpbmVyb290KSB7XHJcbiAgICAgICAgdGhpcy5saW5lcm9vdC5kaXNwb3NlKCk7XHJcbiAgICAgIH1cclxuICAgIGxldCByb290OiBhbnk7XHJcbiAgICByb290ID0gYW01LlJvb3QubmV3KFwiRm9vdGZhbGxcIik7XHJcbiAgICByb290LnNldFRoZW1lcyhbXHJcbiAgICAgIGFtNXRoZW1lc19BbmltYXRlZC5uZXcocm9vdCksXHJcbiAgICAgIGFtNXRoZW1lc19SZXNwb25zaXZlLm5ldyhyb290KSxcclxuICAgIF0pO1xyXG4gICAgbGV0IGNoYXJ0ID0gcm9vdC5jb250YWluZXIuY2hpbGRyZW4ucHVzaChcclxuICAgICAgYW01eHkuWFlDaGFydC5uZXcocm9vdCwge1xyXG4gICAgICAgIHBhblg6IHRydWUsXHJcbiAgICAgICAgcGFuWTogdHJ1ZSxcclxuICAgICAgICB3aGVlbFg6IFwicGFuWFwiLFxyXG4gICAgICAgIHdoZWVsWTogXCJ6b29tWFwiLFxyXG4gICAgICAgIHBpbmNoWm9vbVg6IHRydWUsXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG5cclxuICAgIC8vIEFkZCBkYXRhXHJcbiAgICBsZXQgZGF0YSA9IHRoaXMuZ2V0Rm9vdGZhbGxDYXJkRGF0YT8uZGF0YT8uZm9vdGZhbGw/LmRhdGEubWFwKChpdGVtOiBhbnkpID0+ICh7XHJcbiAgICAgIGRhdGU6IG5ldyBEYXRlKGl0ZW0uZGF0ZSkuZ2V0VGltZSgpLCAvLyBDb252ZXJ0IGRhdGUgc3RyaW5nIHRvIHRpbWVzdGFtcFxyXG4gICAgICB2YWx1ZTogTnVtYmVyKGl0ZW0udmFsdWUpLFxyXG4gICAgfSkpO1xyXG4gICAgIC8vIEVuc3VyZSB0aGF0IGRhdGEgaGFzIGF0IGxlYXN0IDIgcG9pbnRzIGZvciBsaW5lIGNoYXJ0XHJcbiAgICAgaWYgKGRhdGEubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgIGNvbnN0IGR1cGxpY2F0ZVBvaW50ID0geyAuLi5kYXRhWzBdIH07IC8vIENsb25lIHRoZSBleGlzdGluZyBwb2ludFxyXG4gICAgICBkdXBsaWNhdGVQb2ludC5kYXRlICs9IDE7IC8vIEFkZCBhIHNtYWxsIG9mZnNldCB0byB0aGUgZGF0ZVxyXG4gICAgICBkYXRhLnB1c2goZHVwbGljYXRlUG9pbnQpOyAvLyBBZGQgdGhlIGR1cGxpY2F0ZSBwb2ludCB0byBkYXRhXHJcbiAgICB9XHJcbiAgICBsZXQgY3Vyc29yID0gY2hhcnQuc2V0KFxyXG4gICAgICBcImN1cnNvclwiLFxyXG4gICAgICBhbTV4eS5YWUN1cnNvci5uZXcocm9vdCwge1xyXG4gICAgICAgIGJlaGF2aW9yOiBcIm5vbmVcIixcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgICBjdXJzb3IubGluZVkuc2V0KFwidmlzaWJsZVwiLCBmYWxzZSk7XHJcbiAgICAvLyBDcmVhdGUgYXhlc1xyXG4gICAgbGV0IHhBeGlzID0gY2hhcnQueEF4ZXMucHVzaChcclxuICAgICAgYW01eHkuRGF0ZUF4aXMubmV3KHJvb3QsIHtcclxuICAgICAgICBtYXhEZXZpYXRpb246IDAuNSxcclxuICAgICAgICBiYXNlSW50ZXJ2YWw6IHsgdGltZVVuaXQ6IFwiZGF5XCIsIGNvdW50OiAxIH0sXHJcbiAgICAgICAgcmVuZGVyZXI6IGFtNXh5LkF4aXNSZW5kZXJlclgubmV3KHJvb3QsIHsgfSksXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgeEF4aXMuZ2V0KFwicmVuZGVyZXJcIikuZ3JpZC50ZW1wbGF0ZS5zZXQoXCJmb3JjZUhpZGRlblwiLCB0cnVlKTtcclxuICAgIHhBeGlzLmdldChcInJlbmRlcmVyXCIpLmxhYmVscy50ZW1wbGF0ZS5zZXQoXCJmb3JjZUhpZGRlblwiLCB0cnVlKTtcclxuXHJcbiAgICBsZXQgeUF4aXMgPSBjaGFydC55QXhlcy5wdXNoKFxyXG4gICAgICBhbTV4eS5WYWx1ZUF4aXMubmV3KHJvb3QsIHtcclxuICAgICAgICByZW5kZXJlcjogYW01eHkuQXhpc1JlbmRlcmVyWS5uZXcocm9vdCwgeyB9KSxcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgICB5QXhpcy5nZXQoXCJyZW5kZXJlclwiKS5ncmlkLnRlbXBsYXRlLnNldChcImZvcmNlSGlkZGVuXCIsIHRydWUpO1xyXG4gICAgeUF4aXMuZ2V0KFwicmVuZGVyZXJcIikubGFiZWxzLnRlbXBsYXRlLnNldChcImZvcmNlSGlkZGVuXCIsIHRydWUpO1xyXG5cclxuICAgIC8vIENyZWF0ZSBzZXJpZXNcclxuICAgIGxldCBzZXJpZXMgPSBjaGFydC5zZXJpZXMucHVzaChcclxuICAgICAgYW01eHkuTGluZVNlcmllcy5uZXcocm9vdCwge1xyXG4gICAgICAgIG5hbWU6IFwiU2VyaWVzXCIsXHJcbiAgICAgICAgeEF4aXM6IHhBeGlzLFxyXG4gICAgICAgIHlBeGlzOiB5QXhpcyxcclxuICAgICAgICB2YWx1ZVlGaWVsZDogXCJ2YWx1ZVwiLFxyXG4gICAgICAgIHZhbHVlWEZpZWxkOiBcImRhdGVcIixcclxuICAgICAgICBzdHJva2U6IGFtNS5jb2xvcigweDAwYTNmZiksIC8vIFNldCB0aGUgbGluZSBjb2xvciBoZXJlIChyZWQgaW4gdGhpcyBjYXNlKVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIHNlcmllcy5idWxsZXRzLnB1c2goZnVuY3Rpb24gKCkge1xyXG4gICAgICBsZXQgYnVsbGV0Q2lyY2xlID0gYW01LkNpcmNsZS5uZXcocm9vdCwge1xyXG4gICAgICAgIHJhZGl1czogMCxcclxuICAgICAgICBmaWxsOiBzZXJpZXMuZ2V0KFwiZmlsbFwiKVxyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIGFtNS5CdWxsZXQubmV3KHJvb3QsIHtcclxuICAgICAgICBzcHJpdGU6IGJ1bGxldENpcmNsZVxyXG4gICAgICB9KVxyXG4gICAgfSlcclxuICAgIHNlcmllcy5kYXRhLnNldEFsbChkYXRhKTtcclxuICAgIHNlcmllcy5zZXQoXHJcbiAgICAgIFwidG9vbHRpcFwiLFxyXG4gICAgICBhbTUuVG9vbHRpcC5uZXcocm9vdCwge1xyXG4gICAgICAgIGxhYmVsVGV4dDogXCJ7dmFsdWVZfVwiLFxyXG4gICAgICAgIGdldEZpbGxGcm9tU3ByaXRlOiBmYWxzZSwgLy8gUHJldmVudHMgdGhlIHRvb2x0aXAgZnJvbSBpbmhlcml0aW5nIGNvbG9yIGZyb20gdGhlIHNwcml0ZVxyXG4gICAgICAgIGJhY2tncm91bmQ6IGFtNS5SZWN0YW5nbGUubmV3KHJvb3QsIHtcclxuICAgICAgICAgIGZpbGw6IGFtNS5jb2xvcigweGRhZjFmZiksIC8vIFNldCB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kIGNvbG9yIGhlcmUgKGJsdWUgaW4gdGhpcyBjYXNlKVxyXG4gICAgICAgIH0pLFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIHRoaXMubGluZXJvb3QgPSByb290O1xyXG4gIH0sMClcclxuICB9XHJcbiAgYm91bmNlZGxpbmVDaGFydHMoKSB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3QgY2hhcnREaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcIkJvdW5jZWRSYXRlXCIpO1xyXG4gICAgICBpZiAoIWNoYXJ0RGl2KSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLmJvdW5jZWRsaW5lcm9vdCkge1xyXG4gICAgICAgIHRoaXMuYm91bmNlZGxpbmVyb290LmRpc3Bvc2UoKTtcclxuICAgICAgfVxyXG4gICAgbGV0IHJvb3Q6IGFueTtcclxuICAgIHJvb3QgPSBhbTUuUm9vdC5uZXcoXCJCb3VuY2VkUmF0ZVwiKTtcclxuICAgIHJvb3Quc2V0VGhlbWVzKFtcclxuICAgICAgYW01dGhlbWVzX0FuaW1hdGVkLm5ldyhyb290KSxcclxuICAgICAgYW01dGhlbWVzX1Jlc3BvbnNpdmUubmV3KHJvb3QpLFxyXG4gICAgXSk7XHJcbiAgICBsZXQgY2hhcnQgPSByb290LmNvbnRhaW5lci5jaGlsZHJlbi5wdXNoKFxyXG4gICAgICBhbTV4eS5YWUNoYXJ0Lm5ldyhyb290LCB7XHJcbiAgICAgICAgcGFuWDogdHJ1ZSxcclxuICAgICAgICBwYW5ZOiB0cnVlLFxyXG4gICAgICAgIHdoZWVsWDogXCJwYW5YXCIsXHJcbiAgICAgICAgd2hlZWxZOiBcInpvb21YXCIsXHJcbiAgICAgICAgcGluY2hab29tWDogdHJ1ZSxcclxuICAgICAgfSlcclxuICAgICk7XHJcblxyXG4gICAgLy8gQWRkIGRhdGFcclxuICAgIGxldCBkYXRhID0gdGhpcy5nZXRCb3VuY2VkQ2FyZERhdGE/LmRhdGE/LmJvdW5jZWQ/LmRhdGEubWFwKChpdGVtOiBhbnkpID0+ICh7XHJcbiAgICAgIGRhdGU6IG5ldyBEYXRlKGl0ZW0uZGF0ZSkuZ2V0VGltZSgpLCAvLyBDb252ZXJ0IGRhdGUgc3RyaW5nIHRvIHRpbWVzdGFtcFxyXG4gICAgICB2YWx1ZTogTnVtYmVyKGl0ZW0udmFsdWUpLFxyXG4gICAgfSkpO1xyXG4gICAgbGV0IGN1cnNvciA9IGNoYXJ0LnNldChcclxuICAgICAgXCJjdXJzb3JcIixcclxuICAgICAgYW01eHkuWFlDdXJzb3IubmV3KHJvb3QsIHtcclxuICAgICAgICBiZWhhdmlvcjogXCJub25lXCIsXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgY3Vyc29yLmxpbmVZLnNldChcInZpc2libGVcIiwgZmFsc2UpO1xyXG4gICAgLy8gQ3JlYXRlIGF4ZXNcclxuICAgIGxldCB4QXhpcyA9IGNoYXJ0LnhBeGVzLnB1c2goXHJcbiAgICAgIGFtNXh5LkRhdGVBeGlzLm5ldyhyb290LCB7XHJcbiAgICAgICAgbWF4RGV2aWF0aW9uOiAwLjIsXHJcbiAgICAgICAgYmFzZUludGVydmFsOiB7IHRpbWVVbml0OiBcImRheVwiLCBjb3VudDogMSB9LFxyXG4gICAgICAgIHJlbmRlcmVyOiBhbTV4eS5BeGlzUmVuZGVyZXJYLm5ldyhyb290LCB7IG1pbm9yR3JpZEVuYWJsZWQ6IHRydWUgfSksXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgeEF4aXMuZ2V0KFwicmVuZGVyZXJcIikuZ3JpZC50ZW1wbGF0ZS5zZXQoXCJmb3JjZUhpZGRlblwiLCB0cnVlKTtcclxuICAgIHhBeGlzLmdldChcInJlbmRlcmVyXCIpLmxhYmVscy50ZW1wbGF0ZS5zZXQoXCJmb3JjZUhpZGRlblwiLCB0cnVlKTtcclxuXHJcbiAgICBsZXQgeUF4aXMgPSBjaGFydC55QXhlcy5wdXNoKFxyXG4gICAgICBhbTV4eS5WYWx1ZUF4aXMubmV3KHJvb3QsIHtcclxuICAgICAgICByZW5kZXJlcjogYW01eHkuQXhpc1JlbmRlcmVyWS5uZXcocm9vdCwgeyBwYW46IFwiem9vbVwiIH0pLFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIHlBeGlzLmdldChcInJlbmRlcmVyXCIpLmdyaWQudGVtcGxhdGUuc2V0KFwiZm9yY2VIaWRkZW5cIiwgdHJ1ZSk7XHJcbiAgICB5QXhpcy5nZXQoXCJyZW5kZXJlclwiKS5sYWJlbHMudGVtcGxhdGUuc2V0KFwiZm9yY2VIaWRkZW5cIiwgdHJ1ZSk7XHJcblxyXG4gICAgLy8gQ3JlYXRlIHNlcmllc1xyXG4gICAgbGV0IHNlcmllcyA9IGNoYXJ0LnNlcmllcy5wdXNoKFxyXG4gICAgICBhbTV4eS5MaW5lU2VyaWVzLm5ldyhyb290LCB7XHJcbiAgICAgICAgbmFtZTogXCJTZXJpZXNcIixcclxuICAgICAgICB4QXhpczogeEF4aXMsXHJcbiAgICAgICAgeUF4aXM6IHlBeGlzLFxyXG4gICAgICAgIHZhbHVlWUZpZWxkOiBcInZhbHVlXCIsXHJcbiAgICAgICAgdmFsdWVYRmllbGQ6IFwiZGF0ZVwiLFxyXG4gICAgICAgIHN0cm9rZTogYW01LmNvbG9yKDB4MDBhM2ZmKSwgLy8gU2V0IHRoZSBsaW5lIGNvbG9yIGhlcmUgKHJlZCBpbiB0aGlzIGNhc2UpXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgc2VyaWVzLmJ1bGxldHMucHVzaChmdW5jdGlvbiAoKSB7XHJcbiAgICAgIGxldCBidWxsZXRDaXJjbGUgPSBhbTUuQ2lyY2xlLm5ldyhyb290LCB7XHJcbiAgICAgICAgcmFkaXVzOiAwLFxyXG4gICAgICAgIGZpbGw6IHNlcmllcy5nZXQoXCJmaWxsXCIpXHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm4gYW01LkJ1bGxldC5uZXcocm9vdCwge1xyXG4gICAgICAgIHNwcml0ZTogYnVsbGV0Q2lyY2xlXHJcbiAgICAgIH0pXHJcbiAgICB9KVxyXG4gICAgc2VyaWVzLmRhdGEuc2V0QWxsKGRhdGEpO1xyXG4gICAgc2VyaWVzLnNldChcclxuICAgICAgXCJ0b29sdGlwXCIsXHJcbiAgICAgIGFtNS5Ub29sdGlwLm5ldyhyb290LCB7XHJcbiAgICAgICAgbGFiZWxUZXh0OiBcInt2YWx1ZVl9XCIsXHJcbiAgICAgICAgZ2V0RmlsbEZyb21TcHJpdGU6IGZhbHNlLCAvLyBQcmV2ZW50cyB0aGUgdG9vbHRpcCBmcm9tIGluaGVyaXRpbmcgY29sb3IgZnJvbSB0aGUgc3ByaXRlXHJcbiAgICAgICAgYmFja2dyb3VuZDogYW01LlJlY3RhbmdsZS5uZXcocm9vdCwge1xyXG4gICAgICAgICAgZmlsbDogYW01LmNvbG9yKDB4ZGFmMWZmKSwgLy8gU2V0IHRoZSB0b29sdGlwIGJhY2tncm91bmQgY29sb3IgaGVyZSAoYmx1ZSBpbiB0aGlzIGNhc2UpXHJcbiAgICAgICAgfSksXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgdGhpcy5ib3VuY2VkbGluZXJvb3QgPSByb290O1xyXG4gIH0sMClcclxuICB9XHJcblxyXG4gIHBvdGVudGlhbGxpbmVDaGFydHMoKSB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3QgY2hhcnREaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcIlBvdGVudGlhbEJ1eWVyc1wiKTtcclxuICAgICAgaWYgKCFjaGFydERpdikge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5wb3RlbnRpYWxCdXllcnNsaW5lcm9vdCkge1xyXG4gICAgICAgIHRoaXMucG90ZW50aWFsQnV5ZXJzbGluZXJvb3QuZGlzcG9zZSgpO1xyXG4gICAgICB9XHJcbiAgICBsZXQgcm9vdDogYW55O1xyXG4gICAgcm9vdCA9IGFtNS5Sb290Lm5ldyhcIlBvdGVudGlhbEJ1eWVyc1wiKTtcclxuICAgIHJvb3Quc2V0VGhlbWVzKFtcclxuICAgICAgYW01dGhlbWVzX0FuaW1hdGVkLm5ldyhyb290KSxcclxuICAgICAgYW01dGhlbWVzX1Jlc3BvbnNpdmUubmV3KHJvb3QpLFxyXG4gICAgXSk7XHJcbiAgICBsZXQgY2hhcnQgPSByb290LmNvbnRhaW5lci5jaGlsZHJlbi5wdXNoKFxyXG4gICAgICBhbTV4eS5YWUNoYXJ0Lm5ldyhyb290LCB7XHJcbiAgICAgICAgcGFuWDogdHJ1ZSxcclxuICAgICAgICBwYW5ZOiB0cnVlLFxyXG4gICAgICAgIHdoZWVsWDogXCJwYW5YXCIsXHJcbiAgICAgICAgd2hlZWxZOiBcInpvb21YXCIsXHJcbiAgICAgICAgcGluY2hab29tWDogdHJ1ZSxcclxuICAgICAgfSlcclxuICAgICk7XHJcblxyXG4gICAgLy8gQWRkIGRhdGFcclxuICAgIGxldCBkYXRhID0gdGhpcy5nZXRQb3RlbnRpYWxCdXllcnNDYXJkRGF0YT8uZGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5kYXRhLm1hcChcclxuICAgICAgKGl0ZW06IGFueSkgPT4gKHtcclxuICAgICAgICBkYXRlOiBuZXcgRGF0ZShpdGVtLmRhdGUpLmdldFRpbWUoKSwgLy8gQ29udmVydCBkYXRlIHN0cmluZyB0byB0aW1lc3RhbXBcclxuICAgICAgICB2YWx1ZTogTnVtYmVyKGl0ZW0udmFsdWUpLFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIGxldCBjdXJzb3IgPSBjaGFydC5zZXQoXHJcbiAgICAgIFwiY3Vyc29yXCIsXHJcbiAgICAgIGFtNXh5LlhZQ3Vyc29yLm5ldyhyb290LCB7XHJcbiAgICAgICAgYmVoYXZpb3I6IFwibm9uZVwiLFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIGN1cnNvci5saW5lWS5zZXQoXCJ2aXNpYmxlXCIsIGZhbHNlKTtcclxuICAgIC8vIENyZWF0ZSBheGVzXHJcbiAgICBsZXQgeEF4aXMgPSBjaGFydC54QXhlcy5wdXNoKFxyXG4gICAgICBhbTV4eS5EYXRlQXhpcy5uZXcocm9vdCwge1xyXG4gICAgICAgIG1heERldmlhdGlvbjogMC4yLFxyXG4gICAgICAgIGJhc2VJbnRlcnZhbDogeyB0aW1lVW5pdDogXCJkYXlcIiwgY291bnQ6IDEgfSxcclxuICAgICAgICByZW5kZXJlcjogYW01eHkuQXhpc1JlbmRlcmVyWC5uZXcocm9vdCwgeyBtaW5vckdyaWRFbmFibGVkOiB0cnVlIH0pLFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIHhBeGlzLmdldChcInJlbmRlcmVyXCIpLmdyaWQudGVtcGxhdGUuc2V0KFwiZm9yY2VIaWRkZW5cIiwgdHJ1ZSk7XHJcbiAgICB4QXhpcy5nZXQoXCJyZW5kZXJlclwiKS5sYWJlbHMudGVtcGxhdGUuc2V0KFwiZm9yY2VIaWRkZW5cIiwgdHJ1ZSk7XHJcblxyXG4gICAgbGV0IHlBeGlzID0gY2hhcnQueUF4ZXMucHVzaChcclxuICAgICAgYW01eHkuVmFsdWVBeGlzLm5ldyhyb290LCB7XHJcbiAgICAgICAgcmVuZGVyZXI6IGFtNXh5LkF4aXNSZW5kZXJlclkubmV3KHJvb3QsIHsgcGFuOiBcInpvb21cIiB9KSxcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgICB5QXhpcy5nZXQoXCJyZW5kZXJlclwiKS5ncmlkLnRlbXBsYXRlLnNldChcImZvcmNlSGlkZGVuXCIsIHRydWUpO1xyXG4gICAgeUF4aXMuZ2V0KFwicmVuZGVyZXJcIikubGFiZWxzLnRlbXBsYXRlLnNldChcImZvcmNlSGlkZGVuXCIsIHRydWUpO1xyXG5cclxuICAgIC8vIENyZWF0ZSBzZXJpZXNcclxuICAgIGxldCBzZXJpZXMgPSBjaGFydC5zZXJpZXMucHVzaChcclxuICAgICAgYW01eHkuTGluZVNlcmllcy5uZXcocm9vdCwge1xyXG4gICAgICAgIG5hbWU6IFwiU2VyaWVzXCIsXHJcbiAgICAgICAgeEF4aXM6IHhBeGlzLFxyXG4gICAgICAgIHlBeGlzOiB5QXhpcyxcclxuICAgICAgICB2YWx1ZVlGaWVsZDogXCJ2YWx1ZVwiLFxyXG4gICAgICAgIHZhbHVlWEZpZWxkOiBcImRhdGVcIixcclxuICAgICAgICBzdHJva2U6IGFtNS5jb2xvcigweDAwYTNmZiksIC8vIFNldCB0aGUgbGluZSBjb2xvciBoZXJlIChyZWQgaW4gdGhpcyBjYXNlKVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIHNlcmllcy5idWxsZXRzLnB1c2goZnVuY3Rpb24gKCkge1xyXG4gICAgICBsZXQgYnVsbGV0Q2lyY2xlID0gYW01LkNpcmNsZS5uZXcocm9vdCwge1xyXG4gICAgICAgIHJhZGl1czogMCxcclxuICAgICAgICBmaWxsOiBzZXJpZXMuZ2V0KFwiZmlsbFwiKVxyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIGFtNS5CdWxsZXQubmV3KHJvb3QsIHtcclxuICAgICAgICBzcHJpdGU6IGJ1bGxldENpcmNsZVxyXG4gICAgICB9KVxyXG4gICAgfSlcclxuICAgIHNlcmllcy5kYXRhLnNldEFsbChkYXRhKTtcclxuICAgIHNlcmllcy5zZXQoXHJcbiAgICAgIFwidG9vbHRpcFwiLFxyXG4gICAgICBhbTUuVG9vbHRpcC5uZXcocm9vdCwge1xyXG4gICAgICAgIGxhYmVsVGV4dDogXCJ7dmFsdWVZfVwiLFxyXG4gICAgICAgIGdldEZpbGxGcm9tU3ByaXRlOiBmYWxzZSwgLy8gUHJldmVudHMgdGhlIHRvb2x0aXAgZnJvbSBpbmhlcml0aW5nIGNvbG9yIGZyb20gdGhlIHNwcml0ZVxyXG4gICAgICAgIGJhY2tncm91bmQ6IGFtNS5SZWN0YW5nbGUubmV3KHJvb3QsIHtcclxuICAgICAgICAgIGZpbGw6IGFtNS5jb2xvcigweGRhZjFmZiksIC8vIFNldCB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kIGNvbG9yIGhlcmUgKGJsdWUgaW4gdGhpcyBjYXNlKVxyXG4gICAgICAgIH0pLFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIHRoaXMucG90ZW50aWFsQnV5ZXJzbGluZXJvb3QgPSByb290O1xyXG4gIH0sMClcclxuICB9XHJcblxyXG4gIGVuZ2FnZXJzbGluZUNoYXJ0cygpIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBjb25zdCBjaGFydERpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiZW5nYWdlcnNcIik7XHJcbiAgICAgIGlmICghY2hhcnREaXYpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuZW5nYWdlcnNsaW5lcm9vdCkge1xyXG4gICAgICAgIHRoaXMuZW5nYWdlcnNsaW5lcm9vdC5kaXNwb3NlKCk7XHJcbiAgICAgIH1cclxuICAgIGxldCByb290OiBhbnk7XHJcbiAgICByb290ID0gYW01LlJvb3QubmV3KFwiZW5nYWdlcnNcIik7XHJcbiAgICByb290LnNldFRoZW1lcyhbXHJcbiAgICAgIGFtNXRoZW1lc19BbmltYXRlZC5uZXcocm9vdCksXHJcbiAgICAgIGFtNXRoZW1lc19SZXNwb25zaXZlLm5ldyhyb290KSxcclxuICAgIF0pO1xyXG4gICAgbGV0IGNoYXJ0ID0gcm9vdC5jb250YWluZXIuY2hpbGRyZW4ucHVzaChcclxuICAgICAgYW01eHkuWFlDaGFydC5uZXcocm9vdCwge1xyXG4gICAgICAgIHBhblg6IHRydWUsXHJcbiAgICAgICAgcGFuWTogdHJ1ZSxcclxuICAgICAgICB3aGVlbFg6IFwicGFuWFwiLFxyXG4gICAgICAgIHdoZWVsWTogXCJ6b29tWFwiLFxyXG4gICAgICAgIHBpbmNoWm9vbVg6IHRydWUsXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG5cclxuICAgIC8vIEFkZCBkYXRhXHJcbiAgICBsZXQgZGF0YSA9IHRoaXMuZ2V0RW5nYWdlcnNDYXJkRGF0YT8uZGF0YT8uZW5nYWdlcnM/LmRhdGEubWFwKChpdGVtOiBhbnkpID0+ICh7XHJcbiAgICAgIGRhdGU6IG5ldyBEYXRlKGl0ZW0uZGF0ZSkuZ2V0VGltZSgpLCAvLyBDb252ZXJ0IGRhdGUgc3RyaW5nIHRvIHRpbWVzdGFtcFxyXG4gICAgICB2YWx1ZTogTnVtYmVyKGl0ZW0udmFsdWUpLFxyXG4gICAgfSkpO1xyXG4gICAgbGV0IGN1cnNvciA9IGNoYXJ0LnNldChcclxuICAgICAgXCJjdXJzb3JcIixcclxuICAgICAgYW01eHkuWFlDdXJzb3IubmV3KHJvb3QsIHtcclxuICAgICAgICBiZWhhdmlvcjogXCJub25lXCIsXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgY3Vyc29yLmxpbmVZLnNldChcInZpc2libGVcIiwgZmFsc2UpO1xyXG4gICAgLy8gQ3JlYXRlIGF4ZXNcclxuICAgIGxldCB4QXhpcyA9IGNoYXJ0LnhBeGVzLnB1c2goXHJcbiAgICAgIGFtNXh5LkRhdGVBeGlzLm5ldyhyb290LCB7XHJcbiAgICAgICAgbWF4RGV2aWF0aW9uOiAwLjIsXHJcbiAgICAgICAgYmFzZUludGVydmFsOiB7IHRpbWVVbml0OiBcImRheVwiLCBjb3VudDogMSB9LFxyXG4gICAgICAgIHJlbmRlcmVyOiBhbTV4eS5BeGlzUmVuZGVyZXJYLm5ldyhyb290LCB7IG1pbm9yR3JpZEVuYWJsZWQ6IHRydWUgfSksXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgeEF4aXMuZ2V0KFwicmVuZGVyZXJcIikuZ3JpZC50ZW1wbGF0ZS5zZXQoXCJmb3JjZUhpZGRlblwiLCB0cnVlKTtcclxuICAgIHhBeGlzLmdldChcInJlbmRlcmVyXCIpLmxhYmVscy50ZW1wbGF0ZS5zZXQoXCJmb3JjZUhpZGRlblwiLCB0cnVlKTtcclxuXHJcbiAgICBsZXQgeUF4aXMgPSBjaGFydC55QXhlcy5wdXNoKFxyXG4gICAgICBhbTV4eS5WYWx1ZUF4aXMubmV3KHJvb3QsIHtcclxuICAgICAgICByZW5kZXJlcjogYW01eHkuQXhpc1JlbmRlcmVyWS5uZXcocm9vdCwgeyBwYW46IFwiem9vbVwiIH0pLFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIHlBeGlzLmdldChcInJlbmRlcmVyXCIpLmdyaWQudGVtcGxhdGUuc2V0KFwiZm9yY2VIaWRkZW5cIiwgdHJ1ZSk7XHJcbiAgICB5QXhpcy5nZXQoXCJyZW5kZXJlclwiKS5sYWJlbHMudGVtcGxhdGUuc2V0KFwiZm9yY2VIaWRkZW5cIiwgdHJ1ZSk7XHJcblxyXG4gICAgLy8gQ3JlYXRlIHNlcmllc1xyXG4gICAgbGV0IHNlcmllcyA9IGNoYXJ0LnNlcmllcy5wdXNoKFxyXG4gICAgICBhbTV4eS5MaW5lU2VyaWVzLm5ldyhyb290LCB7XHJcbiAgICAgICAgbmFtZTogXCJTZXJpZXNcIixcclxuICAgICAgICB4QXhpczogeEF4aXMsXHJcbiAgICAgICAgeUF4aXM6IHlBeGlzLFxyXG4gICAgICAgIHZhbHVlWUZpZWxkOiBcInZhbHVlXCIsXHJcbiAgICAgICAgdmFsdWVYRmllbGQ6IFwiZGF0ZVwiLFxyXG4gICAgICAgIHN0cm9rZTogYW01LmNvbG9yKDB4MDBhM2ZmKSwgLy8gU2V0IHRoZSBsaW5lIGNvbG9yIGhlcmUgKHJlZCBpbiB0aGlzIGNhc2UpXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgc2VyaWVzLmJ1bGxldHMucHVzaChmdW5jdGlvbiAoKSB7XHJcbiAgICAgIGxldCBidWxsZXRDaXJjbGUgPSBhbTUuQ2lyY2xlLm5ldyhyb290LCB7XHJcbiAgICAgICAgcmFkaXVzOiAwLFxyXG4gICAgICAgIGZpbGw6IHNlcmllcy5nZXQoXCJmaWxsXCIpXHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm4gYW01LkJ1bGxldC5uZXcocm9vdCwge1xyXG4gICAgICAgIHNwcml0ZTogYnVsbGV0Q2lyY2xlXHJcbiAgICAgIH0pXHJcbiAgICB9KVxyXG4gICAgc2VyaWVzLmRhdGEuc2V0QWxsKGRhdGEpO1xyXG4gICAgc2VyaWVzLnNldChcclxuICAgICAgXCJ0b29sdGlwXCIsXHJcbiAgICAgIGFtNS5Ub29sdGlwLm5ldyhyb290LCB7XHJcbiAgICAgICAgbGFiZWxUZXh0OiBcInt2YWx1ZVl9XCIsXHJcbiAgICAgICAgZ2V0RmlsbEZyb21TcHJpdGU6IGZhbHNlLCAvLyBQcmV2ZW50cyB0aGUgdG9vbHRpcCBmcm9tIGluaGVyaXRpbmcgY29sb3IgZnJvbSB0aGUgc3ByaXRlXHJcbiAgICAgICAgYmFja2dyb3VuZDogYW01LlJlY3RhbmdsZS5uZXcocm9vdCwge1xyXG4gICAgICAgICAgZmlsbDogYW01LmNvbG9yKDB4ZGFmMWZmKSwgLy8gU2V0IHRoZSB0b29sdGlwIGJhY2tncm91bmQgY29sb3IgaGVyZSAoYmx1ZSBpbiB0aGlzIGNhc2UpXHJcbiAgICAgICAgfSksXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgdGhpcy5lbmdhZ2Vyc2xpbmVyb290ID0gcm9vdDtcclxuICB9LDApXHJcbiAgfVxyXG4gIC8vIGNhcmQgbGluZSBDaGFydHMgRW5kXHJcblxyXG4gIGhlYXRNYXAoKSB7XHJcbiAgICB0aGlzLmhlYXRsb2FkaW5nID0gZmFsc2VcclxuICAgIHRoaXMuaGVhdG5vRGF0YSA9IGZhbHNlXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3QgY2hhcnREaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImNoYXJ0ZGl2XCIpO1xyXG4gICAgICBpZiAoIWNoYXJ0RGl2KSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLmhlYXRNYXByb290KSB7XHJcbiAgICAgICAgdGhpcy5oZWF0TWFwcm9vdC5kaXNwb3NlKCk7XHJcbiAgICAgIH1cclxuICAgIGxldCByb290ID0gYW01LlJvb3QubmV3KFwiY2hhcnRkaXZcIik7XHJcbiAgICByb290LnNldFRoZW1lcyhbYW01dGhlbWVzX0FuaW1hdGVkLm5ldyhyb290KV0pO1xyXG5cclxuICAgIGxldCBjaGFydCA9IHJvb3QuY29udGFpbmVyLmNoaWxkcmVuLnB1c2goXHJcbiAgICAgIGFtNXBlcmNlbnQuU2xpY2VkQ2hhcnQubmV3KHJvb3QsIHtcclxuICAgICAgICBsYXlvdXQ6IHJvb3QudmVydGljYWxMYXlvdXQsXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIFxyXG4gICAgICBsZXQgZGF0YSA9IHRoaXMuaGVhdE1hcERhdGE7XHJcbiAgICBpZiAodGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInKSB7XHJcbiAgICAgIGRhdGEgPSBkYXRhLmZpbHRlcigoaXRlbTogYW55KSA9PiBpdGVtLmNhdGVnb3J5ICE9PSAnUG90ZW50aWFsIEJ1eWVycycpO1xyXG4gICAgICBkYXRhID0gZGF0YS5tYXAoKGl0ZW06YW55KSA9PiB7XHJcbiAgICAgICAgY29uc3QgY2F0ZWdvcnkgPSBpdGVtLmNhdGVnb3J5LnRvTG93ZXJDYXNlKCk7XHJcbiAgICAgIFxyXG4gICAgICAgIGNvbnN0IHVwZGF0ZWRDYXRlZ29yeSA9XHJcbiAgICAgICAgICBjYXRlZ29yeSA9PT0gJ2VuZ2FnZXJzJ1xyXG4gICAgICAgICAgICA/IGBNb3JlIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZX0gbWluc2BcclxuICAgICAgICAgICAgOiBjYXRlZ29yeSA9PT0gJ2JvdW5jZWQnXHJcbiAgICAgICAgICAgID8gYExlc3MgdGhhbiAke3RoaXMuZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlfSBtaW5zYFxyXG4gICAgICAgICAgICA6IGNhdGVnb3J5ID09PSAnY29udmVyc2lvbidcclxuICAgICAgICAgICAgPyBgTW9yZSB0aGFuICR7dGhpcy5mZWF0dXJlQ29uZmlnPy5jb252ZXJzaW9uLnZhbHVlfSBtaW5zYFxyXG4gICAgICAgICAgICA6IGNhdGVnb3J5ID09PSAnZm9vdGZhbGwnXHJcbiAgICAgICAgICAgID8gJ0Zvb3RmYWxsJ1xyXG4gICAgICAgICAgICA6IGAke3RoaXMuZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlGcm9tLnZhbHVlfS0ke3RoaXMuZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlUby52YWx1ZX0gbWluc2A7XHJcbiAgICAgIFxyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAuLi5pdGVtLFxyXG4gICAgICAgICAgY2F0ZWdvcnk6IHVwZGF0ZWRDYXRlZ29yeSxcclxuICAgICAgICB9O1xyXG4gICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgIGRhdGEuc29ydCgoYTphbnksIGI6YW55KSA9PiBiLnZhbHVlIC0gYS52YWx1ZSk7XHJcbiAgICBsZXQgc2VyaWVzID0gY2hhcnQuc2VyaWVzLnB1c2goXHJcbiAgICAgIGFtNXBlcmNlbnQuRnVubmVsU2VyaWVzLm5ldyhyb290LCB7XHJcbiAgICAgICAgYWxpZ25MYWJlbHM6IGZhbHNlLFxyXG4gICAgICAgIG9yaWVudGF0aW9uOiBcImhvcml6b250YWxcIixcclxuICAgICAgICB2YWx1ZUZpZWxkOiBcInZhbHVlXCIsXHJcbiAgICAgICAgY2F0ZWdvcnlGaWVsZDogXCJjYXRlZ29yeVwiLFxyXG4gICAgICAgIGJvdHRvbVJhdGlvOiAxLFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuXHJcbiAgICAgIFxyXG4gICAgc2VyaWVzLmRhdGEuc2V0QWxsKGRhdGEpO1xyXG4gICAgc2VyaWVzLmFwcGVhcigpO1xyXG4gICAgLy8gVXBkYXRlIHRoZSBsYWJlbCB0ZW1wbGF0ZSB0byBpbmNsdWRlIHRoZSBwZXJjZW50YWdlXHJcbiAgICBzZXJpZXMubGFiZWxzLnRlbXBsYXRlLnNldEFsbCh7XHJcbiAgICAgIHBvcHVsYXRlVGV4dDogdHJ1ZSxcclxuICAgICAgdGV4dDogXCJ7Y2F0ZWdvcnl9ICh7Y291bnR9JSlcXG5cXG57dmFsdWV9XCIsXHJcbiAgICAgIGZvbnRTaXplOlwiMTNweFwiLFxyXG4gICAgICBmb250V2VpZ2h0OlwiNDAwXCIsXHJcbiAgICAgIHRleHRBbGlnbjpcImNlbnRlclwiXHJcbiAgICB9KTtcclxuICAgICAgXHJcbiAgICB0aGlzLmhlYXRNYXByb290ID0gcm9vdDtcclxuICAgIGNoYXJ0LmFwcGVhcigxMDAwLCAxMDApO1xyXG4gIH0sMCk7XHJcblxyXG4gIH1cclxuXHJcbiAgdHlwZTogYW55ID0gXCJ3ZWVrbHlcIjtcclxuICBzZWxlY3RQbGFuKHR5cGU6IGFueSkge1xyXG4gICAgdGhpcy50eXBlID0gdHlwZTtcclxuICB9XHJcblxyXG4gIC8vIFRvZ2dsZSBmdW5jdGlvbiBmb3IgdGhlIHN3aXRjaFxyXG4gIHRvZ2dsZUF2ZXJhZ2UoZXZ0OmFueSkge1xyXG4gICAgLy8gdGhpcy50YWJsZW9iai5ub2IgPXRydWU7XHJcbiAgICB0aGlzLmlzQXZlcmFnZSA9IGV2dC50YXJnZXQuY2hlY2tlZDtcclxuICAgIHRoaXMuc2VydmljZS50b2dnbGVBdmVyYWdlKHRoaXMuaXNBdmVyYWdlKTtcclxuICAgIHRoaXMuc2VydmljZT8udG9nZ2xlbm9iKHRoaXMudGFibGVvYmoubm9iKTtcclxuICAgIHRoaXMudGFibGVvYmouZnJvbURhdGU9IHRoaXMuaGVhZGVyRGF0YS5kYXRlLnN0YXJ0RGF0ZSxcclxuICAgIHRoaXMudGFibGVvYmoudG9EYXRlPSB0aGlzLmhlYWRlckRhdGEuZGF0ZS5lbmREYXRlLFxyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmoucmVjYXBWaWRlb0RhdGU7XHJcbiAgICBkZWxldGUgdGhpcy50YWJsZW9iai5saW1pdDsgZGVsZXRlIHRoaXMudGFibGVvYmouZXhwb3J0O1xyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmoub2Zmc2V0O1xyXG4gICAgaWYodGhpcy5pc0F2ZXJhZ2UgPT09IHRydWUpe1xyXG4gICAgdGhpcy52YWx1ZVR5cGUgPSAnYXZlcmFnZSc7XHJcbiAgICAgdGhpcy5mb290ZmFsbE5hbWUgPSAnQXZnLiBGb290ZmFsbCdcclxuICAgdGhpcy50YWJsZW9iai52YWx1ZVR5cGUgPXRoaXMudmFsdWVUeXBlO1xyXG4gICB0aGlzLm9iakRhdGEudmFsdWVUeXBlID10aGlzLnZhbHVlVHlwZTtcclxuICAgdGhpcy5vYmpEYXRhVHJhZmZpYy52YWx1ZVR5cGUgPXRoaXMudmFsdWVUeXBlO1xyXG4gIC8vICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9ICcnO1xyXG4gICB0aGlzLnR5cGVWYWx1ZT0nYXZlcmFnZSc7XHJcbiAgLy8gIHRoaXMudmFsdWVDb252ZXJzaW9uUmF0ZSA9IHRoaXMuZ2V0Q2FyZERhdGE/LmNvbnZlcnNpb24/LnJhdGU7XHJcbiAgfSAgZWxzZSB7XHJcbiAgICAgdGhpcy5mb290ZmFsbE5hbWUgPSAnQWN0dWFsIEZvb3RmYWxsJ1xyXG4gICAgIHRoaXMudmFsdWVUeXBlPSdhY3R1YWwnO1xyXG4gICAgdGhpcy50YWJsZW9iai52YWx1ZVR5cGUgPSdhY3R1YWwnO1xyXG4gICAgdGhpcy5vYmpEYXRhLnZhbHVlVHlwZSA9J2FjdHVhbCc7XHJcbiAgICB0aGlzLm9iakRhdGFUcmFmZmljLnZhbHVlVHlwZSA9J2FjdHVhbCc7XHJcbiAgICB0aGlzLnR5cGVWYWx1ZT0nc3VtJztcclxuXHJcbiAgICAvLyB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENhcmREYXRhPy5jb252ZXJzaW9uPy5yYXRlO1xyXG4gIH0gICBcclxuICBpZiAodGhpcy5ub2IgJiYgdGhpcy5jbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uY29udmVyc2lvbkNhbGN1bGF0aW9uID09PSAnZm9vdGZhbGwtY291bnQnKSB7XHJcbiAgICB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZm9vdGZhbGw/LnJhdGU7XHJcbiAgICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9ICdmb290ZmFsbCc7XHJcbiAgfSBlbHNlIGlmICh0aGlzLm5vYiAmJiB0aGlzLmNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5jb252ZXJzaW9uQ2FsY3VsYXRpb24gPT09ICdlbmdhZ2Vycy1jb3VudCcpIHtcclxuICAgIHRoaXMudmFsdWVDb252ZXJzaW9uUmF0ZSA9IHRoaXMuZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5lbmdhZ2Vycz8ucmF0ZTtcclxuICAgIHRoaXMuY29udmVyc2lvblZhbHVlID0gJ2VuZ2FnZXJzJztcclxuICB9IGVsc2UgaWYgKHRoaXMubm9iICYmIHRoaXMuY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmNvbnZlcnNpb25DYWxjdWxhdGlvbiA9PT0gJ2JpbGxhYmxlLWVudGl0aWVzJykge1xyXG4gICAgdGhpcy52YWx1ZUNvbnZlcnNpb25SYXRlID0gdGhpcy5nZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LnBvdGVudGlhbEJ1eWVycz8ucmF0ZTtcclxuICAgIHRoaXMuY29udmVyc2lvblZhbHVlID0gJ1BvdGVudGlhbCBCdXllcnMnO1xyXG4gIH1cclxuLy8gICBpZih0aGlzLnRhYmxlb2JqLm5vYil7XHJcbi8vICAgICB0aGlzLnZhbHVlQ29udmVyc2lvblJhdGUgPSB0aGlzLmdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8ubm9iLm5vYjtcclxuLy8gICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9J05vQiBEZXJpdmVkJ1xyXG4vLyB9IGVsc2UgaWYgKHRoaXMuY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FsY3VsYXRpb24gPT09ICdlbmdhZ2Vycy1jb252ZXJzaW9uJykge1xyXG4vLyAgIHRoaXMudmFsdWVDb252ZXJzaW9uUmF0ZSA9IHRoaXMuZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5lbmdhZ2Vycz8ucmF0ZTtcclxuLy8gICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9ICdlbmdhZ2Vycyc7XHJcbi8vIH0gZWxzZSB7XHJcbi8vICAgdGhpcy52YWx1ZUNvbnZlcnNpb25SYXRlID0gdGhpcy5nZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LmZvb3RmYWxsPy5yYXRlO1xyXG4vLyAgIHRoaXMuY29udmVyc2lvblZhbHVlID0gJ2Zvb3RmYWxsJztcclxuLy8gfVxyXG4gIHRoaXMucHJldmlvdXNWYWx1ZSA9ICdmb290ZmFsbCc7IFxyXG4gIHRoaXMudGFibGVvYmoubm9ybWFsaXplID0gdGhpcy5ub3JtYWxpemVcclxuXHJcbiAgICB0aGlzLmdldEZ1bm5hbCgpO1xyXG4gICAgdGhpcy5nZXRGb290ZmFsbENhcmQoKTtcclxuICAgIHRoaXMuZ2V0Q29udmVyc2lvbkNhcmQoKTtcclxuICAgIHRoaXMuZ2V0Qm91bmNlZENhcmQoKTtcclxuICAgIHRoaXMuZ2V0RW5nYWdlcnNDYXJkKCk7XHJcbiAgICB0aGlzLmdldFBvdGVudGlhbEJ1eWVyc0NhcmQoKTtcclxuICAgIHRoaXMuZ2V0TWlzc2VkT3Bwb3J0dW5pdHlDYXJkKCk7XHJcbiAgICB0aGlzLmdldFBvdGVudGlhbEJ1eWVycygpO1xyXG4gICAgdGhpcy5nZXRUYWJsZSgpO1xyXG4gICAgdGhpcy5mb290ZmFsbFRyZW5kKCk7XHJcbiAgICBpZih0aGlzLmhlYWRlckRhdGE/LmNsaWVudCA9PT0nNDU5Jyl7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSBcImZvb3RmYWxsXCJcclxuICAgICAgdGhpcy5mb290ZmFsbFZhbHVlID0gXCJmb290ZmFsbFwiO1xyXG4gICAgICB0aGlzLnNlbGN0ZWRWYWx1ZSA9J0Zvb3RmYWxsIEFuYWx5c2lzJztcclxuICAgIHRoaXMuc2VsZWN0ZWRUYWJzKCdmb290ZmFsbCcpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZFRhYiA9IFwidHJhZmZpY1wiXHJcbiAgICAgIHRoaXMuZm9vdGZhbGxWYWx1ZSA9IFwidHJhZmZpY1wiO1xyXG4gICAgICB0aGlzLnNlbGN0ZWRWYWx1ZSA9J1RyYWZmaWMgQW5hbHlzaXMnO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkVGFicygndHJhZmZpYycpO1xyXG4gICAgfVxyXG4gICBcclxuICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuICB0b2dnbGVBdmVyYWdlRm9vdGZhbGwoZXZ0OmFueSkge1xyXG4gICAgLy8gdGhpcy50YWJsZW9iai5ub2IgPXRydWU7XHJcbiAgICB0aGlzLmlzQXZlcmFnZUZvb3RmYWxsID0gZXZ0LnRhcmdldC5jaGVja2VkO1xyXG4gICAgdGhpcy50YWJsZW9iai5mcm9tRGF0ZT0gdGhpcy5oZWFkZXJEYXRhLmRhdGUuc3RhcnREYXRlLFxyXG4gICAgdGhpcy50YWJsZW9iai50b0RhdGU9IHRoaXMuaGVhZGVyRGF0YS5kYXRlLmVuZERhdGUsXHJcbiAgICBkZWxldGUgdGhpcy50YWJsZW9iai5yZWNhcFZpZGVvRGF0ZTtcclxuICAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLmxpbWl0OyBkZWxldGUgdGhpcy50YWJsZW9iai5leHBvcnQ7XHJcbiAgICBkZWxldGUgdGhpcy50YWJsZW9iai5vZmZzZXQ7XHJcbiAgICBpZih0aGlzLmlzQXZlcmFnZUZvb3RmYWxsID09PSB0cnVlKXtcclxuICAgIHRoaXMudmFsdWVUeXBlID0gJ2F2ZXJhZ2UnO1xyXG4gICAgIHRoaXMuZm9vdGZhbGxOYW1lID0gJ0F2Zy4gRm9vdGZhbGwnXHJcbiAgIHRoaXMudGFibGVvYmoudmFsdWVUeXBlID10aGlzLnZhbHVlVHlwZTtcclxuICAgdGhpcy50eXBlVmFsdWU9J2F2ZXJhZ2UnO1xyXG4gIH0gIGVsc2Uge1xyXG4gICAgIHRoaXMuZm9vdGZhbGxOYW1lID0gJ0FjdHVhbCBGb290ZmFsbCdcclxuICAgICB0aGlzLnZhbHVlVHlwZT0nYWN0dWFsJztcclxuICAgIHRoaXMudGFibGVvYmoudmFsdWVUeXBlID0nYWN0dWFsJztcclxuXHJcbiAgfSAgIFxyXG4gIHRoaXMudGFibGVvYmoubm9ybWFsaXplID0gdGhpcy5ub3JtYWxpemVcclxuICAgIHRoaXMuZ2V0Rm9vdGZhbGxDYXJkKCk7XHJcbiAgICB0aGlzLmdldE1pc3NlZE9wcG9ydHVuaXR5Q2FyZCgpO1xyXG4gICBcclxuICAgXHJcbiAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcbiAgXHJcbiAgdG9nZ2xlQ29udmVyc2lvbihldnQ6YW55KXtcclxuICAgIHRoaXMuaXNDb252ZXJzaW9uID0gZXZ0LnRhcmdldC5jaGVja2VkOyBcclxuICAgIHRoaXMudGFibGVvYmoubm9ybWFsaXplID0gdGhpcy5ub3JtYWxpemVcclxuICAgIGlmKHRoaXMuY29udmVyc2lvblZhbHVlID09PSAnZm9vdGZhbGwnKXtcclxuICAgICAgdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSA9ICdmb290ZmFsbC1jb3VudCc7XHJcbiAgICAgfSBpZiAodGhpcy5jb252ZXJzaW9uVmFsdWUgPT09ICdlbmdhZ2Vycycpe1xyXG4gICAgICB0aGlzLnRhYmxlb2JqLmNvbnZlcnNpb250eXBlID0gJ2VuZ2FnZXJzLWNvdW50JztcclxuICAgICB9aWYgKHRoaXMuY29udmVyc2lvblZhbHVlID09PSAnUG90ZW50aWFsIEJ1eWVycycpe1xyXG4gICAgICB0aGlzLnRhYmxlb2JqLmNvbnZlcnNpb250eXBlID0gJ2JpbGxhYmxlLWNvdW50JztcclxuICAgICB9IGlmICh0aGlzLmNvbnZlcnNpb25WYWx1ZSA9PT0gJ05vQiBEZXJpdmVkJyl7XHJcbiAgICAgIHRoaXMudGFibGVvYmouY29udmVyc2lvbnR5cGUgPSAnbm9iJztcclxuICAgICB9XHJcbiAgICBpZih0aGlzLmlzQ29udmVyc2lvbiA9PXRydWUpe1xyXG4gICAgICB0aGlzLnRhYmxlb2JqLm5vYiA9IHRydWU7XHJcbiAgICAgIHRoaXMub2JqRGF0YS5ub2IgPSB0cnVlO1xyXG4gICAgICB0aGlzLm9iakRhdGFUcmFmZmljLm5vYiA9IHRydWU7IHRoaXMubm9iID10cnVlO1xyXG4gICAgfSAgZWxzZSB7XHJcbiAgICAgIGlmKHRoaXMudGFibGVvYmouY29udmVyc2lvbnR5cGUgPT09ICdub2InKXtcclxuICAgICAgICB0aGlzLnRhYmxlb2JqLm5vYiA9IHRydWU7XHJcbiAgICAgIHRoaXMub2JqRGF0YS5ub2IgPSB0cnVlO1xyXG4gICAgICB0aGlzLm9iakRhdGFUcmFmZmljLm5vYiA9IHRydWU7IHRoaXMubm9iID10cnVlOyBcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5ub2IgPWZhbHNlO1xyXG4gICAgICB0aGlzLnRhYmxlb2JqLm5vYiA9IGZhbHNlO1xyXG4gICAgICB0aGlzLm9iakRhdGEubm9iID0gZmFsc2U7XHJcbiAgICAgIHRoaXMub2JqRGF0YVRyYWZmaWMubm9iID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMuZ2V0RnVubmFsKCk7ICAgIFxyXG4gICAgdGhpcy5nZXRDb252ZXJzaW9uQ2FyZDEoKTsgXHJcbiAgICB0aGlzLmdldE1pc3NlZE9wcG9ydHVuaXR5Q2FyZCgpO1xyXG4gICAgdGhpcy5nZXRUYWJsZSgpO1xyXG4gICAgdGhpcy5mb290ZmFsbFRyZW5kKCk7IFxyXG4gICBcclxuICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSBcInRyYWZmaWNcIlxyXG4gICAgdGhpcy5mb290ZmFsbFZhbHVlID0gXCJ0cmFmZmljXCI7XHJcbiAgICB0aGlzLnNlbGN0ZWRWYWx1ZSA9J1RyYWZmaWMgQW5hbHlzaXMnO1xyXG4gICAgdGhpcy5zZWxlY3RlZFRhYnMoJ3RyYWZmaWMnKTtcclxuICB9XHJcblxyXG4gIGNhbWVyYVZpZXcoKXtcclxuICAgIHRoaXMuc3RvcmVJZGFycmF5ID0gdGhpcy5oZWFkZXJEYXRhPy5zdG9yZXMuZmlsdGVyKChzdG9yZTphbnkpID0+IHN0b3JlLmNoZWNrZWQpLm1hcCgoc3RvcmU6YW55KSA9PiBzdG9yZS5zdG9yZUlkKVxyXG4gICAgbGV0IGRhdGE6IGFueSA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJoZWFkZXItZmlsdGVyc1wiKSB8fCBcIlwiKTtcclxuICAgIGRhdGEuc3RvcmUgPSB0aGlzLnN0b3JlSWRhcnJheVswXTtcclxuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFwiaGVhZGVyLWZpbHRlcnNcIiwgSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xyXG4gICAgdGhpcy5ncy5kYXRhUmFuZ2VWYWx1ZS5uZXh0KGRhdGEpO1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiL21hbmFnZS9zdG9yZXMvY2FtZXJhc1wiXSwge1xyXG4gICAgICBxdWVyeVBhcmFtczogeyBzdG9yZUlkOiB0aGlzLnN0b3JlSWRhcnJheVswXX0sXHJcbiAgICB9KTtcclxuICB9XHJcbiAgbmF2aWdhdGVjYW1lcmFWaWV3KHN0b3JlSWQ6YW55KXtcclxuICAgIGxldCBkYXRhOiBhbnkgPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwiaGVhZGVyLWZpbHRlcnNcIikgfHwgXCJcIik7XHJcbiAgICBkYXRhLnN0b3JlID0gc3RvcmVJZDtcclxuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFwiaGVhZGVyLWZpbHRlcnNcIiwgSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xyXG4gICAgdGhpcy5ncy5kYXRhUmFuZ2VWYWx1ZS5uZXh0KGRhdGEpO1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiL21hbmFnZS9zdG9yZXMvY2FtZXJhc1wiXSwge1xyXG4gICAgICBxdWVyeVBhcmFtczogeyBzdG9yZUlkOiBzdG9yZUlkfSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZXhwb3J0WExTWCgpIHtcclxuICAgIHRoaXMudGFibGVvYmoub2Zmc2V0ID0gMDtcclxuICAgIHRoaXMudGFibGVvYmoubGltaXQgPSAxMDAwMDtcclxuICAgICh0aGlzLnRhYmxlb2JqLnZhbHVlVHlwZSA9IHRoaXMudHlwZVZhbHVlKTtcclxuICAgIHRoaXMudGFibGVvYmouZnJvbURhdGU9IHRoaXMuaGVhZGVyRGF0YS5kYXRlLnN0YXJ0RGF0ZSxcclxuICAgIHRoaXMudGFibGVvYmoudG9EYXRlPSB0aGlzLmhlYWRlckRhdGEuZGF0ZS5lbmREYXRlLFxyXG4gICAgdGhpcy50YWJsZW9iai5zZWFyY2ggPSB0aGlzLnNlYXJjaFZhbHVlO1xyXG4gICAgdGhpcy50YWJsZW9iai5leHBvcnQgPSB0cnVlO1xyXG4gICAgdGhpcy50YWJsZW9iai5ub3JtYWxpemUgPSB0aGlzLm5vcm1hbGl6ZVxyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmoucmVjYXBWaWRlb0RhdGU7XHJcbiAgICB0aGlzLnNlcnZpY2VcclxuICAgIC5nZXRTdW1tYXJ5VGFibGVMaXN0RXhwb3J0KHRoaXMudGFibGVvYmopXHJcbiAgICA/LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzKSB7XHJcbiAgICAgICAgICB0aGlzLmV4Y2VsU2VydmljZS5zYXZlQXNFeGNlbEZpbGUocmVzLCBcIlRyYWZmaWMgU3VtbWFyeSBUYWJsZSBcIik7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOiAoKSA9PiB7fSxcclxuICAgIH0pO1xyXG4gICAgdGhpcy50YWJsZW9iai5saW1pdCA9IHRoaXMubGltaXQ7XHJcbiAgICB0aGlzLnRhYmxlb2JqLmV4cG9ydCA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgb25Tb3J0KGNvbHVtbjogc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy5zb3J0ZWRDb2x1bW4gPT09IGNvbHVtbikge1xyXG4gICAgICB0aGlzLnNvcnREaXJlY3Rpb24gPSB0aGlzLnNvcnREaXJlY3Rpb24gPT09IDEgPyAtMSA6IDE7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNvcnRlZENvbHVtbiA9IGNvbHVtbjtcclxuICAgICAgdGhpcy5zb3J0RGlyZWN0aW9uID0gMTtcclxuICAgIH1cclxuICAgIHRoaXMudGFibGVvYmouZnJvbURhdGU9IHRoaXMuaGVhZGVyRGF0YS5kYXRlLnN0YXJ0RGF0ZSxcclxuICAgIHRoaXMudGFibGVvYmoudG9EYXRlPSB0aGlzLmhlYWRlckRhdGEuZGF0ZS5lbmREYXRlLFxyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmoucmVjYXBWaWRlb0RhdGU7XHJcbiAgICB0aGlzLnRhYmxlb2JqLnNvcnRCeSA9IHRoaXMuc29ydERpcmVjdGlvbiwgLy9bMS0+YXNjLCAtMS0+REVzY11cclxuICAgIHRoaXMudGFibGVvYmouc29ydCA9IHRoaXMuc29ydGVkQ29sdW1uLCAvLyBDb2x1bW4gTmFtZVxyXG4gICAgdGhpcy5nZXRUYWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgZ2V0TWFwKCkge1xyXG4gICAgdGhpcy5tcGFsb2FkaW5nID10cnVlO1xyXG4gICAgdGhpcy5tYXBub0RhdGE9IGZhbHNlO1xyXG4gICAgY29uc3Qgb2JqID0ge1xyXG4gICAgICBjbGllbnRJZDogdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQsXHJcbiAgICAgIHN0b3JlRGF0ZTogdGhpcy5oZWFkZXJEYXRhPy5kYXRlPy5lbmREYXRlLFxyXG4gICAgICBzdG9yZUlkOiB0aGlzLnN0b3JlSWRhcnJheVxyXG4gICAgfTtcclxuXHJcbiAgICB0aGlzLnNlcnZpY2UuZ2VNYXBzKG9iaik/LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKXtcclxuICAgICAgICAgIC8vIGlmIChyZXMgJiYgcmVzLmRhdGEgJiYgcmVzLmRhdGEuc3RvcmVEYXRhKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYXVMb2NhdGlvbnMgPSByZXMuZGF0YS5zdG9yZURhdGE7XHJcbiAgICAgICAgICBcclxuICAgICAgICAgICAgLy8gVXBkYXRlIG1hcE9wdGlvbnMgY2VudGVyIGlmIG5lZWRlZFxyXG4gICAgICAgICAgICBpZiAodGhpcy5hdUxvY2F0aW9ucy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgY29uc3QgZmlyc3RMb2NhdGlvbiA9IHRoaXMuYXVMb2NhdGlvbnNbMF07XHJcbiAgICAgICAgICAgICAgaWYgKGZpcnN0TG9jYXRpb24gJiYgdHlwZW9mIGZpcnN0TG9jYXRpb24ubGF0ID09PSAnbnVtYmVyJyAmJiB0eXBlb2YgZmlyc3RMb2NhdGlvbi5sbmcgPT09ICdudW1iZXInKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm1hcE9wdGlvbnMgPSB7XHJcbiAgICAgICAgICAgICAgICAgIC4uLnRoaXMubWFwT3B0aW9ucyxcclxuICAgICAgICAgICAgICAgICAgY2VudGVyOiB7IGxhdDogZmlyc3RMb2NhdGlvbi5sYXQsIGxuZzogZmlyc3RMb2NhdGlvbi5sbmcgfVxyXG4gICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4geyAgdGhpcy5nZXREYXRhKCk7IH0sMTAwKVxyXG4gICAgICAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICAgICAgfSBlbHNlIHt9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7fVxyXG4gICAgICAgICAgLy8gfVxyXG4gICAgICAgICAgdGhpcy5tcGFsb2FkaW5nID1mYWxzZTtcclxuICAgICAgICAgIHRoaXMubWFwbm9EYXRhPSBmYWxzZTtcclxuICAgICAgICAgIH0gZWxzZSBpZihyZXMgPT09IG51bGwpe1xyXG4gICAgICAgICAgICB0aGlzLm1hcG5vRGF0YT0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5tcGFsb2FkaW5nID1mYWxzZTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuYXVMb2NhdGlvbnMgPVtdO1xyXG4gICAgICAgICAgICB0aGlzLm1wYWxvYWRpbmcgPWZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm1hcG5vRGF0YT0gdHJ1ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoZXJyKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmF1TG9jYXRpb25zID1bXTtcclxuICAgICAgICAgIHRoaXMubXBhbG9hZGluZyA9ZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMubWFwbm9EYXRhPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG4gIG1hcDogbWFwYm94Z2wuTWFwO1xyXG4gIHByaXZhdGUgY2hlY2tNYXBDb250YWluZXJJbnRlcnZhbDogYW55O1xyXG4gIGdldERhdGEoKSB7XHJcbiAgICB0aGlzLmNoZWNrTWFwQ29udGFpbmVySW50ZXJ2YWwgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3QgbWFwQ29udGFpbmVyID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJyNtYXAnKTtcclxuICAgICAgaWYgKG1hcENvbnRhaW5lcikge1xyXG4gICAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5jaGVja01hcENvbnRhaW5lckludGVydmFsKTtcclxuICAgICAgICB0aGlzLmluaXRpYWxpemVNYXAobWFwQ29udGFpbmVyKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjbGVhckludGVydmFsKHRoaXMuY2hlY2tNYXBDb250YWluZXJJbnRlcnZhbCk7XHJcbiAgICAgICAgdGhpcy5pbml0aWFsaXplTWFwKG1hcENvbnRhaW5lcik7XHJcbiAgICAgIH1cclxuICAgIH0sIDEwMCk7XHJcblxyXG4gIH1cclxuICBpbml0aWFsaXplTWFwKG1hcENvbnRhaW5lcjogSFRNTEVsZW1lbnQpe1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7ICBcclxuICAgICAgY29uc3QgbWFwQ29udGFpbmVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ21hcCcpO1xyXG4gICAgICBpZiAoIW1hcENvbnRhaW5lcikge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgLy8gQ2hlY2sgdGhhdCBsb2NhdGlvbnMgZXhpc3QgYmVmb3JlIHByb2NlZWRpbmdcclxuICAgIGlmICh0aGlzLmF1TG9jYXRpb25zPy5sZW5ndGggPT09IDApIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gIFxyXG4gICAgY29uc3QgZ2VvanNvbiA9IHtcclxuICAgICAgJ3R5cGUnOiAnRmVhdHVyZUNvbGxlY3Rpb24nLFxyXG4gICAgICAnZmVhdHVyZXMnOiB0aGlzLmF1TG9jYXRpb25zLm1hcCgoc3RvcmUsIGluZGV4KSA9PiAoe1xyXG4gICAgICAgICd0eXBlJzogJ0ZlYXR1cmUnLFxyXG4gICAgICAgICdwcm9wZXJ0aWVzJzoge1xyXG4gICAgICAgICAgJ3N0b3JlTmFtZSc6IHN0b3JlLnN0b3JlTmFtZSwgICAgICAgICAvLyBTdG9yZSBuYW1lXHJcbiAgICAgICAgICAnaW1hZ2VJZCc6IDEwMTEgKyBpbmRleCwgICAgICAgICAgICAgIC8vIER5bmFtaWMgaW1hZ2UgSURcclxuICAgICAgICAgICdpY29uU2l6ZSc6IFs2MCwgNjBdLCAgICAgICAgICAgICAgICAgLy8gQWRqdXN0IGljb24gc2l6ZSBhcyBuZWVkZWRcclxuICAgICAgICAgICdmb290ZmFsbCc6IHN0b3JlLmF2Z0Zvb3RmYWxsLCAgICAgICAgLy8gRm9vdGZhbGwgZGF0YVxyXG4gICAgICAgICAgJ29wZW5UaW1lJzogc3RvcmUub3BlblRpbWUsICAgICAgICAgICAvLyBPcGVuIHRpbWVcclxuICAgICAgICAgICdjbG9zZVRpbWUnOiBzdG9yZS5jbG9zZVRpbWUsICAgICAgICAgLy8gQ2xvc2UgdGltZVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgJ2dlb21ldHJ5Jzoge1xyXG4gICAgICAgICAgJ3R5cGUnOiAnUG9pbnQnLFxyXG4gICAgICAgICAgJ2Nvb3JkaW5hdGVzJzogW3N0b3JlLmxuZywgc3RvcmUubGF0XSAgLy8gQ29vcmRpbmF0ZXMgZnJvbSBzdG9yZSBkYXRhXHJcbiAgICAgICAgfVxyXG4gICAgICB9KSlcclxuICAgIH07XHJcbiAgXHJcbiAgICAvLyBEeW5hbWljYWxseSBzZXQgbWFwIGNlbnRlciBiYXNlZCBvbiB0aGUgZmlyc3QgbG9jYXRpb25cclxuICAgIGNvbnN0IGZpcnN0TG9jYXRpb24gPSB0aGlzLmF1TG9jYXRpb25zWzBdO1xyXG4gXHJcbiAgICB0aGlzLm1hcCA9IG5ldyBtYXBib3hnbC5NYXAoe1xyXG4gICAgICBjb250YWluZXI6ICdtYXAnLFxyXG4gICAgICBzdHlsZTogJ21hcGJveDovL3N0eWxlcy9tYXBib3gvc3RyZWV0cy12MTInLFxyXG4gICAgICBjZW50ZXI6IFtmaXJzdExvY2F0aW9uLmxuZywgZmlyc3RMb2NhdGlvbi5sYXRdLCAvLyBDZW50ZXIgbWFwIG9uIHRoZSBmaXJzdCBsb2NhdGlvblxyXG4gICAgICB6b29tOiAxMCwgLy8gQWRqdXN0IHRoaXMgdmFsdWUgKDEgPSB3b3JsZCB2aWV3LCAyMCA9IGJ1aWxkaW5nIHZpZXcpXHJcbiAgICAgIG1heFpvb206IDIwLCAvLyBPcHRpb25hbDogTGltaXQgbWF4IHpvb20gbGV2ZWxcclxuICAgICAgbWluWm9vbTogMSAgIC8vIE9wdGlvbmFsOiBMaW1pdCBtaW4gem9vbSBsZXZlbFxyXG4gICAgfSk7XHJcbiAgXHJcbiAgICAvLyBBZGQgbWFya2VycyB0byB0aGUgbWFwXHJcbiAgICBnZW9qc29uLmZlYXR1cmVzLmZvckVhY2goKGZlYXR1cmUsIGZlYXR1cmVJbmRleCkgPT4ge1xyXG4gICAgICBjb25zdCB7IHByb3BlcnRpZXMsIGdlb21ldHJ5IH0gPSBmZWF0dXJlO1xyXG4gICAgICBjb25zdCBzdG9yZSA9IHRoaXMuYXVMb2NhdGlvbnNbZmVhdHVyZUluZGV4XTtcclxuICAgICAgY29uc3QgZWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcclxuICAgICAgY29uc3Qgd2lkdGggPSBwcm9wZXJ0aWVzLmljb25TaXplWzBdO1xyXG4gICAgICBjb25zdCBoZWlnaHQgPSBwcm9wZXJ0aWVzLmljb25TaXplWzFdO1xyXG4gICAgICBlbC5jbGFzc05hbWUgPSAnbWFya2VyJztcclxuICAgICAgZWwuaW5uZXJIVE1MID0gYFxyXG4gICAgICA8ZGl2IGNsYXNzPVwibWFya2VyLWljb25cIiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB3aWR0aDogJHt3aWR0aH1weDsgaGVpZ2h0OiAke2hlaWdodH1weDsgZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1HcmF5LTcwMCwgIzM0NDA1NCk7XHJcbnRleHQtYWxpZ246IGNlbnRlcjtcclxuZm9udC1mYW1pbHk6IEludGVyO1xyXG5mb250LXNpemU6IDkuMDA3cHg7XHJcbmZvbnQtc3R5bGU6IG5vcm1hbDtcclxuZm9udC13ZWlnaHQ6IDYwMDtcclxubGluZS1oZWlnaHQ6IDEzcHg7XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1hcmtlci1jb250ZW50XCIgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBhbGlnbi1pdGVtczogY2VudGVyO1wiPlxyXG4gICAgICAgICAgPHN2ZyBjbGFzcz1cIm1iLTFcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxM1wiIGhlaWdodD1cIjEzXCIgdmlld0JveD1cIjAgMCAxMyAxM1wiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgIDxwYXRoIGQ9XCJNMS4zMzY1NCAzLjM2MzdMMS4yOTY1OCAzLjQyNjExQzAuODc3Njk4IDQuMTY3MDEgMS4zMjQ5MyA1LjEwMzM1IDIuMTI5MzEgNS4yMTA3NkMyLjIwMjE4IDUuMjE5NjcgMi4yNjk5OSA1LjIyNDM4IDIuMzM2MjUgNS4yMjQzOEMyLjc3MDIxIDUuMjI0MzggMy4xNTM5IDUuMDM4MjEgMy40MjEzMiA0Ljc0NzkzTDMuODM2NjYgNC4yOTcxTDQuMjUwNTkgNC43NDkyM0M0LjUxNDc2IDUuMDM3NzggNC44OTc1OCA1LjIyNDM4IDUuMzM0NDggNS4yMjQzOEM1Ljc2OTQxIDUuMjI0MzggNi4xNTQ0MyA1LjAzNzUyIDYuNDE4MzcgNC43NDkyM0w2LjgzMzU5IDQuMjk1NjhMNy4yNDg4MiA0Ljc0OTIzQzcuNTEyNzUgNS4wMzc1MiA3Ljg5Nzc3IDUuMjI0MzggOC4zMzI3MSA1LjIyNDM4QzguNzY3NjQgNS4yMjQzOCA5LjE1MjY2IDUuMDM3NTIgOS40MTY2IDQuNzQ5MjNMOS44MzE4MiA0LjI5NTY4TDEwLjI0NyA0Ljc0OTIzQzEwLjUxMSA1LjAzNzUyIDEwLjg5NiA1LjIyNDM4IDExLjMzMDkgNS4yMjQzOEMxMS4zOTUgNS4yMjQzOCAxMS40NjQ5IDUuMjE5NjYgMTEuNTM3MiA1LjIxMDgzQzEyLjM1OTMgNS4wOTg3NSAxMi44MDggNC4xMTIyNSAxMi4zMjg2IDMuMzY0MDhDMTIuMzI4NiAzLjM2NDAzIDEyLjMyODUgMy4zNjM5OSAxMi4zMjg1IDMuMzYzOTVMMTEuMDA4OCAxLjMwNjIxTDExLjAwODEgMS4zMDUxMUMxMC45OTY3IDEuMjg3MjIgMTAuOTY4NiAxLjI2ODA0IDEwLjkzMzIgMS4yNjgwNEgyLjcyOTQyQzIuNjk0MDMgMS4yNjgwNCAyLjY2NTg5IDEuMjg3MjIgMi42NTQ0OCAxLjMwNTExTDIuNjU0MDEgMS4zMDU4NEwxLjMzNjU0IDMuMzYzN1pNMTEuMDczMSA3LjA2NjY3VjkuNDE3NTNWOS45ODA0OUgxMC41MTAxSDMuMTUyNDhIMi41ODk1MlY5LjQxNzUzVjcuMDY3MDJDMi41MDY3OCA3LjA3MzE4IDIuNDIzMDggNy4wNzYzNCAyLjMzODU1IDcuMDc2MzRDMi4zMDY3OSA3LjA3NjM0IDIuMjc1MjUgNy4wNzU4NyAyLjI0MzkyIDcuMDc0OTVWOS40MTc1M1YxMC44Njk2QzIuMjQzOTIgMTEuMzUyNiAyLjY0NDY3IDExLjc1ODcgMy4xNTI0OCAxMS43NTg3SDEwLjUxMDFDMTEuMDE3OSAxMS43NTg3IDExLjQxODcgMTEuMzUyNiAxMS40MTg3IDEwLjg2OTZWOS40MTc1M1Y3LjA3NTA5QzExLjM4ODggNy4wNzU5MSAxMS4zNTg3IDcuMDc2MzQgMTEuMzI4NiA3LjA3NjM0QzExLjI0MjggNy4wNzYzNCAxMS4xNTc1IDcuMDczMDggMTEuMDczMSA3LjA2NjY3WlwiIHN0cm9rZT1cIiMxMDE4MjhcIiBzdHJva2Utd2lkdGg9XCIxLjEyNTkyXCIvPlxyXG4gICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFya2VyLWxhYmVsXCIgc3R5bGU9XCJmb250LXNpemU6IDEwcHg7IHRleHQtYWxpZ246IGNlbnRlcjtcIj5cclxuICAgICAgICAgICAgJHtwcm9wZXJ0aWVzLnN0b3JlTmFtZX1cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIGA7XHJcbiAgICAgIC8vIGVsLnN0eWxlLmJhY2tncm91bmRJbWFnZSA9IGB1cmwoaHR0cHM6Ly9waWNzdW0ucGhvdG9zL2lkLyR7cHJvcGVydGllcy5pbWFnZUlkfS8ke3dpZHRofS8ke2hlaWdodH0pYDtcclxuICAgICAgZWwuc3R5bGUud2lkdGggPSBgJHt3aWR0aH1weGA7XHJcbiAgICAgIGVsLnN0eWxlLmhlaWdodCA9IGAke2hlaWdodH1weGA7XHJcbiAgICAgIGVsLnN0eWxlLmJhY2tncm91bmRTaXplID0gJzEwMCUnO1xyXG4gIFxyXG4gICAgICAvLyBDcmVhdGUgYSBwb3B1cCBpbnN0YW5jZSB3aXRoIHRoZSBmZWF0dXJlIHByb3BlcnRpZXNcclxuICAgICAgY29uc3QgcG9wdXAgPSBuZXcgbWFwYm94Z2wuUG9wdXAoeyBvZmZzZXQ6IDI1IH0pICBcclxuICAgICAgLy8gVXNlIHRoZSBjb29yZGluYXRlcyBmcm9tIHRoZSBmZWF0dXJlXHJcbiAgICAgIGNvbnN0IGNvb3JkaW5hdGVzOiBbbnVtYmVyLCBudW1iZXJdID0gZ2VvbWV0cnkuY29vcmRpbmF0ZXMgYXMgW251bWJlciwgbnVtYmVyXTtcclxuICAgICAgZWwuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5hZGp1c3RMYXlvdXQoc3RvcmUpO1xyXG4gICAgICB9KTtcclxuICAgICAgLy8gQWRkIG1hcmtlcnMgdG8gdGhlIG1hcFxyXG4gICAgICBuZXcgbWFwYm94Z2wuTWFya2VyKGVsKVxyXG4gICAgICAgIC5zZXRMbmdMYXQoY29vcmRpbmF0ZXMpXHJcbiAgICAgICAgLnNldFBvcHVwKHBvcHVwKSAgLy8gQXR0YWNoIHRoZSBwb3B1cCB0byB0aGUgbWFya2VyXHJcbiAgICAgICAgLmFkZFRvKHRoaXMubWFwKTtcclxuICAgIH0pO1xyXG4gICAgXHJcbiAgfSwxMDApXHJcbiAgfVxyXG4gIGFkanVzdExheW91dChkYXRhOiBhbnkpIHtcclxuICAgIGNvbnN0IGRhdGF2YWx1ZTogYW55ID0gSlNPTi5wYXJzZShcclxuICAgICAgbG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJoZWFkZXItZmlsdGVyc1wiKSB8fCBcInt9XCJcclxuICAgICk7XHJcbiAgICBjb25zdCBtYXRjaGVkU3RvcmVzID0gZGF0YXZhbHVlLnN0b3Jlcy5maWx0ZXIoKHN0b3JlOiBhbnkpID0+IHN0b3JlLmNoZWNrZWQgJiYgc3RvcmUuc3RvcmVJZCA9PT0gZGF0YS5zdG9yZUlkKTtcclxuICAgIC8vIFVwZGF0ZSB0aGUgYmFsYW5jZSBzdG9yZXMgKHRob3NlIG5vdCBpbiB0aGUgbWF0Y2hlZCBzdG9yZXMpIHRvIHNldCB0aGVpciBjaGVja2VkIHByb3BlcnR5IHRvIGZhbHNlXHJcbiAgICBkYXRhdmFsdWUuc3RvcmVzLmZvckVhY2goKHN0b3JlOiBhbnkpID0+IHtcclxuICAgICAgaWYgKCFtYXRjaGVkU3RvcmVzLnNvbWUoKG1hdGNoZWRTdG9yZTphbnkpID0+IG1hdGNoZWRTdG9yZS5zdG9yZUlkID09PSBzdG9yZS5zdG9yZUlkKSkge1xyXG4gICAgICAgIHN0b3JlLmNoZWNrZWQgPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfSk7IFxyXG4gICAgZGF0YXZhbHVlLnN0b3JlID0gZGF0YS5zdG9yZUlkO1xyXG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oXCJoZWFkZXItZmlsdGVyc1wiLCBKU09OLnN0cmluZ2lmeShkYXRhdmFsdWUpKTtcclxuICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpXHJcbiAgICB0aGlzLmdzLmRhdGFSYW5nZVZhbHVlLm5leHQoZGF0YXZhbHVlKVxyXG4gICAgdGhpcy5ncy5tYW5hZ2VSZWZyZXNoVHJpZ2dlci5uZXh0KHRydWUpO1xyXG4gICBcclxuICB9XHJcbiAgZXhwb3JlVmlldygpe1xyXG50aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9tYW5hZ2UvdHJhZmZpYy9leHBsb3JlJ10pXHJcbiAgfVxyXG4gIGRhdGVWYWx1ZSh0eXBlOmFueSl7XHJcbiAgICBkZWxldGUgdGhpcy50YWJsZW9iai5saW1pdDsgZGVsZXRlIHRoaXMudGFibGVvYmouZXhwb3J0O1xyXG4gICAgZGVsZXRlIHRoaXMudGFibGVvYmoub2Zmc2V0O1xyXG4gICAgdGhpcy50YWJsZW9iai5mcm9tRGF0ZT0gdGhpcy5oZWFkZXJEYXRhLmRhdGUuc3RhcnREYXRlLFxyXG4gICAgdGhpcy50YWJsZW9iai50b0RhdGU9IHRoaXMuaGVhZGVyRGF0YS5kYXRlLmVuZERhdGUsXHJcbiAgICBkZWxldGUgdGhpcy50YWJsZW9iai5yZWNhcFZpZGVvRGF0ZTtcclxuICAgIHRoaXMuZGF0ZVR5cGUgPSB0eXBlO1xyXG4gICAgdGhpcy50YWJsZW9iai5kYXRlVHlwZT0gdGhpcy5kYXRlVHlwZTtcclxuICAgIHRoaXMudGFibGVvYmoudmFsdWVUeXBlICA9IHRoaXMudmFsdWVUeXBlXHJcbiAgICB0aGlzLmdldEZvb3RmYWxsQ2FyZCgpO1xyXG4gICAgdGhpcy5nZXRDb252ZXJzaW9uQ2FyZCgpO1xyXG4gICAgdGhpcy5nZXRCb3VuY2VkQ2FyZCgpO1xyXG4gICAgdGhpcy5nZXRFbmdhZ2Vyc0NhcmQoKTtcclxuICAgIHRoaXMuZ2V0UG90ZW50aWFsQnV5ZXJzQ2FyZCgpO1xyXG4gICAgdGhpcy5nZXRNaXNzZWRPcHBvcnR1bml0eUNhcmQoKTtcclxuICAgIHRoaXMuZ2V0UG90ZW50aWFsQnV5ZXJzKCk7XHJcbiAgfVxyXG5cclxuXHJcbiAgZ2V0Wm9uZSgpe1xyXG4gICAgdGhpcy56b25lTG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLnpvbmVOb0RhdGEgPSBmYWxzZTtcclxuICAgIGNvbnN0IG9iaiA9IHtcclxuICAgICAgY2xpZW50SWQ6IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50LFxyXG4gICAgICBmcm9tRGF0ZTogdGhpcy5oZWFkZXJEYXRhPy5kYXRlPy5zdGFydERhdGUsXHJcbiAgICB0b0RhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSxcclxuICAgICAgc3RvcmVJZDogdGhpcy5zdG9yZUlkYXJyYXlcclxuICAgIH07XHJcblxyXG4gICAgdGhpcy5zZXJ2aWNlLnpvbmVEd2VsbFRpbWUob2JqKT8ucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYocmVzICYmIHJlcy5jb2RlID09PSAyMDApe1xyXG4gICAgICAgICAgICB0aGlzLnpvbmVEd2VsbFRpbWVTcGxpdERhdGEgPSByZXMuZGF0YS56b25lRHdlbGxUaW1lU3BsaXREYXRhO1xyXG4gICAgICAgICAgICB0aGlzLnpvbmVMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuem9uZU5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICAgICAgfSBlbHNle1xyXG4gICAgICAgICAgICB0aGlzLnpvbmVEd2VsbFRpbWVTcGxpdERhdGEgPVtdO1xyXG4gICAgICAgICAgICB0aGlzLnpvbmVMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuem9uZU5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvcjogKGVycikgPT4ge1xyXG4gICAgICAgICAgdGhpcy56b25lRHdlbGxUaW1lU3BsaXREYXRhPVtdO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH0pXHJcbiAgICBcclxuICB9XHJcbiAgZ2V0Wm9uZVZhbHVlKCl7XHJcbiAgICBjb25zdCBvYmogPSB7XHJcbiAgICAgIGNsaWVudElkOiB0aGlzLmhlYWRlckRhdGE/LmNsaWVudCxcclxuICAgICAgZnJvbURhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uc3RhcnREYXRlLFxyXG4gICAgdG9EYXRlOiB0aGlzLmhlYWRlckRhdGE/LmRhdGU/LmVuZERhdGUsXHJcbiAgICAgIHN0b3JlSWQ6IHRoaXMuc3RvcmVJZGFycmF5XHJcbiAgICB9O1xyXG5cclxuICAgIHRoaXMuc2VydmljZS5zdG9yZU9wZXJhdGlvbihvYmopPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZihyZXMgJiYgcmVzLmNvZGUgPT09IDIwMCl7XHJcbiAgICAgICAgICAgIHRoaXMuc3RvcmVPcGVyYXRpb25EYXRhID0gcmVzLmRhdGEuc3RvcmVPcGVyYXRpb25EYXRhWzBdO1xyXG4gICAgICAgICAgfSBlbHNle1xyXG4gICAgICAgICAgICB0aGlzLnN0b3JlT3BlcmF0aW9uRGF0YSA9W107XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvcjogKGVycikgPT4ge1xyXG4gICAgICAgICAgdGhpcy5zdG9yZU9wZXJhdGlvbkRhdGE9W107XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgfSlcclxuICAgIFxyXG4gIH1cclxuICBvbkRhdGVDaGFuZ2UoZXZlbnQ6YW55KXtcclxuICAgIHRoaXMuZGV0YWlsZWRDaGFydHMgPSBmYWxzZTtcclxuICAgIHRoaXMuZm9vdGZhbGxEYXRlID0gZXZlbnQudGFyZ2V0LnZhbHVlO1xyXG4gICAgdGhpcy5vYmpEYXRhVHJhZmZpYy5kYXRlUmFuZ2UgPU51bWJlcih0aGlzLmZvb3RmYWxsRGF0ZSk7XHJcbiB0aGlzLmdldER3ZWxsKCk7XHJcbiB0aGlzLnRyYWZmaWNEd2VsbCgpO1xyXG4gIH1cclxuICBzdG9yZVZpZXcoZGF0YTphbnkpe1xyXG4gICAgaWYodGhpcy5zdG9yZUlkYXJyYXk/Lmxlbmd0aD4xKXtcclxuICAgICAgY29uc3QgZGF0YXZhbHVlOiBhbnkgPSBKU09OLnBhcnNlKFxyXG4gICAgICAgIGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwiaGVhZGVyLWZpbHRlcnNcIikgfHwgXCJ7fVwiXHJcbiAgICAgICk7XHJcbiAgICAgIGNvbnN0IG1hdGNoZWRTdG9yZXMgPSBkYXRhdmFsdWUuc3RvcmVzLmZpbHRlcigoc3RvcmU6IGFueSkgPT4gc3RvcmUuY2hlY2tlZCAmJiBzdG9yZS5zdG9yZUlkID09PSBkYXRhKTtcclxuICAgICAgLy8gVXBkYXRlIHRoZSBiYWxhbmNlIHN0b3JlcyAodGhvc2Ugbm90IGluIHRoZSBtYXRjaGVkIHN0b3JlcykgdG8gc2V0IHRoZWlyIGNoZWNrZWQgcHJvcGVydHkgdG8gZmFsc2VcclxuICAgICAgZGF0YXZhbHVlLnN0b3Jlcy5mb3JFYWNoKChzdG9yZTogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKCFtYXRjaGVkU3RvcmVzLnNvbWUoKG1hdGNoZWRTdG9yZTphbnkpID0+IG1hdGNoZWRTdG9yZS5zdG9yZUlkID09PSBzdG9yZS5zdG9yZUlkKSkge1xyXG4gICAgICAgICAgc3RvcmUuY2hlY2tlZCA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7IFxyXG4gICAgICBkYXRhdmFsdWUuc3RvcmUgPSBkYXRhO1xyXG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShcImhlYWRlci1maWx0ZXJzXCIsIEpTT04uc3RyaW5naWZ5KGRhdGF2YWx1ZSkpO1xyXG4gICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKVxyXG4gICAgICB0aGlzLmdzLmRhdGFSYW5nZVZhbHVlLm5leHQoZGF0YXZhbHVlKVxyXG4gICAgICB0aGlzLmdzLm1hbmFnZVJlZnJlc2hUcmlnZ2VyLm5leHQodHJ1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGdvVG9ab25lKCl7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbXCIvbWFuYWdlL3pvbmVzL3YxXCJdKTsgXHJcblxyXG4gIH1cclxuXHJcbiAgY3VycmVudEluZGV4OiBudW1iZXIgPSAwO1xyXG4gIGludGVydmFsSWQ6IGFueTtcclxuXHJcblxyXG4gIHByZXZTbGlkZSgpIHtcclxuICAgIGlmICh0aGlzLmN1cnJlbnRJbmRleCA+IDApIHtcclxuICAgICAgdGhpcy5jdXJyZW50SW5kZXgtLTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5leHRTbGlkZSgpIHtcclxuICAgIGlmICh0aGlzLmN1cnJlbnRJbmRleCA8IHRoaXMucmVjYXBzR3JvdXBlZC5sZW5ndGggLSAxKSB7XHJcbiAgICAgIHRoaXMuY3VycmVudEluZGV4Kys7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnb1RvU2xpZGUoaW5kZXg6IG51bWJlcikge1xyXG4gICAgaWYgKGluZGV4ID49IDAgJiYgaW5kZXggPCB0aGlzLnJlY2Fwc0dyb3VwZWQubGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMuY3VycmVudEluZGV4ID0gaW5kZXg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIG5vYlVwbG9hZCgpe1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiL21hbmFnZS90cmFmZmljL25vYlwiXSk7IFxyXG4gIH1cclxuICBnb1RvTG9zcygpe1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiL21hbmFnZS9zZXR0aW5ncy9icmFuZC1kZXRhaWxcIl0pOyBcclxuICB9XHJcblxyXG4vLyBmb290ZmFsbCB0cmVuZCBwYXJ0c1xyXG5cclxuZ2V0RGF0ZVZhbHVlczogYW55O1xyXG5jaGFydFRyZW5kczogYW55O1xyXG5yb290VHJlbmRzOiBhbnk7XHJcbnlBeGlzOiBhbnk7XHJcbnhBeGlzOiBhbnk7IFxyXG5sZWdlbmQ6IGFueTtcclxuQFZpZXdDaGlsZCgndG9vbHRpcENvbnRhaW5lcicpIHRvb2x0aXBDb250YWluZXI6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xyXG50b29sdGlwRGF0YTogYW55O1xyXG5nZXRGb290ZmFsbFRyZW5kRGF0YTphbnk9W107XHJcbm9iakRhdGE6YW55O1xyXG5kYXRhc2V0cyA9IFtcclxuICB7IHZhbHVlOiAnbWlzc2Vkb3Bwb3J0dW5pdGllcycsIGxhYmVsOiAnTWlzc2VkIE9wcG9ydHVuaXR5JyB9LFxyXG4gIHsgdmFsdWU6ICdwb3RlbnRpYWxCdXllcicsIGxhYmVsOiAnUG90ZW50aWFsIEJ1eWVyJyB9LFxyXG4gIHsgdmFsdWU6ICdjb252ZXJzaW9uJywgbGFiZWw6ICdDb252ZXJzaW9uJyB9LFxyXG4gIHsgdmFsdWU6ICcnLCBsYWJlbDogJ05vIEZpbHRlcicgfVxyXG5dO1xyXG5cclxuaXRlbXNQZXJQYWdlVHJlbmRzID0gMTA7XHJcbmN1cnJlbnRQYWdlVHJlbmRzID0gMTtcclxudG90YWxJdGVtc1RyZW5kcyA9IDE7XHJcbnBhZ2luYXRpb25TaXplc1RyZW5kczogbnVtYmVyW10gPSBbXTtcclxucGFnZVNpemVUcmVuZHMgPSAzMTtcclxub2Zmc2V0VHJlbmRzIDogbnVtYmVyID0gMDtcclxubGltaXRUcmVuZHMgOiBudW1iZXIgPSAzMTtcclxuc2VsZWN0VmFsdWU9IG5ldyBGb3JtQ29udHJvbChcImRhdGFzZXQxXCIpO1xyXG5sb2FkaW5nVHJlbmRzID10cnVlO1xyXG5ub0RhdGFUcmVuZHMgPWZhbHNlO1xyXG4gIGdldEluaXRpYWxWYWx1ZSgpOiBzdHJpbmcge1xyXG4gICAgLy8gRm9yIGV4YW1wbGUsIHNlbGVjdGluZyB0aGUgc2Vjb25kIGl0ZW0gaW4gdGhlIGRhdGFzZXRcclxuICAgIHJldHVybiB0aGlzLmRhdGFzZXRzWzBdLnZhbHVlOyAvLyBDaGFuZ2UgYXMgbmVlZGVkXHJcbiAgfVxyXG4gIG9uVmFsdWVDaGFuZ2V0cmVuZChzZWxlY3RlZElkOiBhbnkpIHtcclxuICAgIHRoaXMub2JqRGF0YS5wcm9jZXNzVHlwZSA9IHNlbGVjdGVkSWQsXHJcbiAgICB0aGlzLmZvb3RmYWxsVHJlbmQoKTtcclxuICB9XHJcbiAgZ2V0IHNlbGVjdENvbnRyb2woKTogRm9ybUNvbnRyb2wge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybS5nZXQoJ3NlbGVjdFZhbHVlJykgYXMgRm9ybUNvbnRyb2w7XHJcbiAgfVxyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQnXSlcclxuICBvbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XHJcbiAgICBjb25zdCB0b29sdGlwRWxlbWVudCA9IHRoaXMudG9vbHRpcENvbnRhaW5lcj8ubmF0aXZlRWxlbWVudDtcclxuXHJcbiAgICAvLyBDaGVjayBpZiB0aGUgY2xpY2sgd2FzIG91dHNpZGUgdGhlIHRvb2x0aXBcclxuICAgIGlmICh0b29sdGlwRWxlbWVudCAmJiAhdG9vbHRpcEVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIE5vZGUpICYmIHRoaXMudG9vbHRpcFZpc2libGUpIHtcclxuICAgICAgdGhpcy5oaWRlVG9vbHRpcCgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zaG93ID1mYWxzZTtcclxuICB9XHJcbmZvb3RmYWxsVHJlbmQoKXsgXHJcbiAgdGhpcy5vZmZzZXRUcmVuZHMgPTA7XHJcbiAgdGhpcy5saW1pdFRyZW5kcyA9MzE7XHJcbiAgdGhpcy5sb2FkaW5nVHJlbmRzID10cnVlO1xyXG4gIHRoaXMubm9EYXRhVHJlbmRzID1mYWxzZTtcclxuICAodGhpcy5vYmpEYXRhLmNvbnZlcnNpb250eXBlID0gdGhpcy50YWJsZW9iai5jb252ZXJzaW9udHlwZSk7XHJcbiAgdGhpcy5zZXJ2aWNlXHJcbiAgLmdldGZvb3RmYWxsVHJlbmQodGhpcy5vYmpEYXRhKVxyXG4gIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICA/LnN1YnNjcmliZSh7XHJcbiAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgdGhpcy5nZXRGb290ZmFsbFRyZW5kRGF0YSA9IHJlcz8uZGF0YT8uZm9vdGZhbGxUcmVuZERhdGE7XHJcbiAgICAgICAgdGhpcy5nZXREYXRlVmFsdWVzID0gcmVzPy5kYXRhO1xyXG4gICAgICAgIHRoaXMudG90YWxJdGVtc1RyZW5kcyA9IHJlcy5kYXRhPy50b3RhbENvdW50O1xyXG4gICAgICAgIHRoaXMuc2V0UGFnaW5hdGlvblNpemVUcmVuZHMoKTtcclxuICAgICAgICB0aGlzLmNyZWF0ZUNoYXJ0KCkgLy8gQ2FsbCB3aXRoIGEgZGVsYXkgdG8gZW5zdXJlIHRoZSBlbGVtZW50IGlzIGluIHRoZSBET01cclxuICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTsgXHJcbiAgICAgICAgdGhpcy5sb2FkaW5nVHJlbmRzID1mYWxzZTtcclxuICAgICAgICB0aGlzLm5vRGF0YVRyZW5kcyA9ZmFsc2U7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nVHJlbmRzID1mYWxzZTtcclxuICAgICAgICB0aGlzLm5vRGF0YVRyZW5kcyA9dHJ1ZTtcclxuICAgICAgICB0aGlzLmdldEZvb3RmYWxsVHJlbmREYXRhID1bXTtcclxuICAgICAgfVxyXG4gICAgfSxcclxuICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9LFxyXG4gICAgY29tcGxldGU6ICgpID0+IHt9LFxyXG4gIH0pO1xyXG4gIFxyXG59XHJcbnNldFBhZ2luYXRpb25TaXplVHJlbmRzKCkge1xyXG4gIGlmICh0aGlzLnRvdGFsSXRlbXNUcmVuZHMgPiAzMSApIHtcclxuICAgIGlmKHRoaXMub2JqRGF0YS5mb3JlY2FzdCAmJiB0aGlzLnRvdGFsSXRlbXNUcmVuZHMgPiAzMSl7XHJcbiAgICAgIC8vIEZvcmVjYXN0IGFkZHMgZnV0dXJlIGJ1Y2tldHMgKGFjdHVhbCArIGZvcmVjYXN0KSDigJQgc2hvdyBBTEwgaXRlbXMgb24gb25lIHBhZ2VcclxuICAgICAgLy8gc28gbm90aGluZyBpcyBjdXQgb2ZmICh3YXMgaGFyZGNvZGVkIDYwLCB3aGljaCBkcm9wcGVkIGl0ZW1zIHdoZW4gdG90YWwgPiA2MCkuXHJcbiAgICAgIHRoaXMucGFnaW5hdGlvblNpemVzVHJlbmRzID0gW3RoaXMudG90YWxJdGVtc1RyZW5kc107XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgdGhpcy5wYWdpbmF0aW9uU2l6ZXNUcmVuZHMgPSBbMzFdO1xyXG4gICAgfVxyXG4gIH0gZWxzZSB7XHJcbiAgICB0aGlzLnBhZ2luYXRpb25TaXplc1RyZW5kcyA9IFt0aGlzLnRvdGFsSXRlbXNUcmVuZHNdOyAvLyBKdXN0IG9uZSBvcHRpb24gaWYgbGVzcyB0aGFuIDEwXHJcbiAgfVxyXG4gIHRoaXMucGFnZVNpemVUcmVuZHMgPSB0aGlzLnBhZ2luYXRpb25TaXplc1RyZW5kc1swXTtcclxufVxyXG5vblBhZ2VDaGFuZ2VUcmVuZHMocGFnZU9mZnNldFRyZW5kczogbnVtYmVyKSB7XHJcbiAgdGhpcy5vZmZzZXRUcmVuZHMgPSBOdW1iZXIocGFnZU9mZnNldFRyZW5kcyk7XHJcbiAgdGhpcy5vYmpEYXRhLm9mZnNldCA9IHRoaXMub2Zmc2V0VHJlbmRzIC0xO1xyXG4gIHRoaXMub2JqRGF0YS5saW1pdCA9IHRoaXMubGltaXRUcmVuZHM7XHJcbiAgdGhpcy5zZXJ2aWNlXHJcbiAgLmdldGZvb3RmYWxsVHJlbmQodGhpcy5vYmpEYXRhKVxyXG4gIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICA/LnN1YnNjcmliZSh7XHJcbiAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgdGhpcy5nZXRGb290ZmFsbFRyZW5kRGF0YSA9IHJlcz8uZGF0YS5mb290ZmFsbFRyZW5kRGF0YTtcclxuICAgICAgICBcclxuICAgICAgICB0aGlzLmdldERhdGVWYWx1ZXMgPSByZXM/LmRhdGE7XHJcbiAgICAgICAgdGhpcy50b3RhbEl0ZW1zVHJlbmRzID0gcmVzLmRhdGE/LnRvdGFsQ291bnQ7XHJcbiAgICAgICAgdGhpcy5jcmVhdGVDaGFydCgpIC8vIENhbGwgd2l0aCBhIGRlbGF5IHRvIGVuc3VyZSB0aGUgZWxlbWVudCBpcyBpbiB0aGUgRE9NXHJcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7IFxyXG5cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmxvYWRpbmcgPWZhbHNlO1xyXG4gICAgICAgIHRoaXMubm9EYXRhID10cnVlO1xyXG4gICAgICB9XHJcbiAgICB9LFxyXG4gICAgZXJyb3I6IChlcnI6IGFueSkgPT4ge1xyXG4gICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH0sXHJcbiAgICBjb21wbGV0ZTogKCkgPT4ge30sXHJcbiAgfSk7XHJcbiAgXHJcbn1cclxuXHJcbm9uUGFnZVNpemVDaGFuZ2VUcmVuZHMocGFnZVNpemVUcmVuZHM6IG51bWJlcikge1xyXG4gIHRoaXMucGFnZVNpemVUcmVuZHMgPSBOdW1iZXIocGFnZVNpemVUcmVuZHMpO1xyXG4gIHRoaXMubGltaXRUcmVuZHMgPSBOdW1iZXIocGFnZVNpemVUcmVuZHMpO1xyXG4gIHRoaXMuY3VycmVudFBhZ2VUcmVuZHMgPSAxO1xyXG4gIHRoaXMub2Zmc2V0VHJlbmRzID0gMDtcclxuICB0aGlzLm9iakRhdGEub2Zmc2V0ID0gdGhpcy5vZmZzZXRUcmVuZHM7XHJcbiAgdGhpcy5vYmpEYXRhLmxpbWl0ID0gdGhpcy5saW1pdFRyZW5kcztcclxuICB0aGlzLmZvb3RmYWxsVHJlbmQoKTtcclxufVxyXG4gY3JlYXRlQ2hhcnQoKSB7XHJcbiAgICB0aGlzLmxvYWRpbmdUcmVuZHMgPWZhbHNlO1xyXG4gICAgdGhpcy5ub0RhdGFUcmVuZHMgPWZhbHNlO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGNvbnN0IGNoYXJ0RGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJGb290ZmFsbHRyZW5kXCIpO1xyXG4gICAgICBpZiAoIWNoYXJ0RGl2KSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLnJvb3RUcmVuZHMpIHtcclxuICAgICAgICB0aGlzLnJvb3RUcmVuZHMuZGlzcG9zZSgpO1xyXG4gICAgICB9XHJcbiAgICB0aGlzLnJvb3RUcmVuZHMgID0gYW01LlJvb3QubmV3KCdGb290ZmFsbHRyZW5kJyk7XHJcbiAgICB0aGlzLnJvb3RUcmVuZHMuc2V0VGhlbWVzKFthbTV0aGVtZXNfQW5pbWF0ZWQubmV3KHRoaXMucm9vdFRyZW5kcyldKTtcclxuXHJcbiAgICB0aGlzLmNoYXJ0VHJlbmRzID0gdGhpcy5yb290VHJlbmRzLmNvbnRhaW5lci5jaGlsZHJlbi5wdXNoKFxyXG4gICAgICBhbTV4eS5YWUNoYXJ0Lm5ldyh0aGlzLnJvb3RUcmVuZHMsIHtcclxuICAgICAgICBwYW5YOiBmYWxzZSxcclxuICAgICAgICBwYW5ZOiBmYWxzZSxcclxuICAgICAgICB3aGVlbFg6ICdwYW5YJyxcclxuICAgICAgICB3aGVlbFk6ICd6b29tWCcsXHJcbiAgICAgICAgbGF5b3V0OiB0aGlzLnJvb3RUcmVuZHMudmVydGljYWxMYXlvdXRcclxuICAgICAgfSlcclxuICAgICk7XHJcblxyXG4gICAgdGhpcy5jaGFydFRyZW5kcy5zZXQoXCJzY3JvbGxiYXJYXCIsIGFtNS5TY3JvbGxiYXIubmV3KHRoaXMucm9vdFRyZW5kcywge1xyXG4gICAgICBvcmllbnRhdGlvbjogXCJob3Jpem9udGFsXCJcclxuICAgIH0pKTtcclxuICAgIGxldCB4UmVuZGVyZXIgPSBhbTV4eS5BeGlzUmVuZGVyZXJYLm5ldyh0aGlzLnJvb3RUcmVuZHMsIHtcclxuICAgICAgbWluR3JpZERpc3RhbmNlOiAyMCxcclxuICAgICAgbWlub3JHcmlkRW5hYmxlZDogdHJ1ZSxcclxuICAgIH0pO1xyXG4gICAgeFJlbmRlcmVyLmxhYmVscy50ZW1wbGF0ZS5zZXRBbGwoe1xyXG4gICAgICByb3RhdGlvbjogLTQ1LFxyXG4gICAgICBjZW50ZXJZOiBhbTUucDUwLFxyXG4gICAgICBjZW50ZXJYOiBhbTUucDEwMCxcclxuICAgICAgcGFkZGluZ1JpZ2h0OiA1LFxyXG4gICAgfSk7XHJcbiAgICAvLyB4UmVuZGVyZXIuZ3JpZC50ZW1wbGF0ZS5zZXRBbGwoe1xyXG4gICAgLy8gICBsb2NhdGlvbjogMSxcclxuICAgIC8vIH0pO1xyXG4gICAgY29uc3QgeEF4aXMgPSB0aGlzLmNoYXJ0VHJlbmRzLnhBeGVzLnB1c2goXHJcbiAgICAgIGFtNXh5LkNhdGVnb3J5QXhpcy5uZXcodGhpcy5yb290VHJlbmRzLCB7XHJcbiAgICAgICAgY2F0ZWdvcnlGaWVsZDogJ3N0b3JlTmFtZScsXHJcbiAgICAgICAgcmVuZGVyZXI6eFJlbmRlcmVyLFxyXG4gICAgICAgIHRvb2x0aXA6IGFtNS5Ub29sdGlwLm5ldyh0aGlzLnJvb3RUcmVuZHMsIHsgbGFiZWxUZXh0OiBcIntmdWxsU3RvcmVOYW1lfVwifSlcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgICB0aGlzLmdldEZvb3RmYWxsVHJlbmREYXRhLnNvcnQoKGE6IGFueSwgYjogYW55KSA9PiB7XHJcbiAgICAgIC8vIFBhcnNlIHN0b3JlTmFtZSBhcyBhIERhdGUgYW5kIGNvbXBhcmVcclxuICAgICAgY29uc3QgZGF0ZUEgPSBuZXcgRGF0ZShhLnN0b3JlTmFtZSk7XHJcbiAgICAgIGNvbnN0IGRhdGVCID0gbmV3IERhdGUoYi5zdG9yZU5hbWUpO1xyXG4gICAgICBcclxuICAgICAgLy8gU29ydCBpbiBhc2NlbmRpbmcgb3JkZXIgKG9sZGVzdCB0byBuZXdlc3QpXHJcbiAgICAgIHJldHVybiBkYXRlQS5nZXRUaW1lKCkgLSBkYXRlQi5nZXRUaW1lKCk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuZ2V0Rm9vdGZhbGxUcmVuZERhdGEgPSB0aGlzLmdldEZvb3RmYWxsVHJlbmREYXRhPy5tYXAoXHJcbiAgICAgIChpdGVtOiBhbnkpID0+ICh7XHJcbiAgICAgICAgZnVsbFN0b3JlTmFtZTogaXRlbS5zdG9yZU5hbWUsIC8vIEZ1bGwgc3RvcmUgbmFtZVxyXG4gICAgICAgIHN0b3JlTmFtZTogaXRlbS5zdG9yZU5hbWUsIC8vIGl0ZW0uc3RvcmVOYW1lLmxlbmd0aCA+IDIwID8gaXRlbS5zdG9yZU5hbWUuc2xpY2UoMCwgMjApICsgJy4uLicgOiBTaG9ydGVuZWQgZm9yIHhBeGlzXHJcbiAgICAgICAgZm9vdGZhbGw6IE51bWJlcihpdGVtLmZvb3RmYWxsX2NvdW50KSxcclxuICAgICAgICBjb252ZXJzaW9uOiBOdW1iZXIoaXRlbS5jb252ZXJzaW9uX2NvdW50KSxcclxuICAgICAgICBib3VuY2VkOiBOdW1iZXIoaXRlbS5ib3VuY2VkX2NvdW50KSxcclxuICAgICAgICBlbmdhZ2VyczogTnVtYmVyKGl0ZW0uZW5nYWdlcnNfY291bnQpLFxyXG4gICAgICAgIG1pc3NlZG9wcG9ydHVuaXRpZXM6IE51bWJlcihpdGVtLm1pc3NlZE9wcG9ydHVuaXR5X2NvdW50KSxcclxuICAgICAgICBwb3RlbnRpYWw6IE51bWJlcihpdGVtLnBvdGVudGlhbEJ1eWVyc19jb3VudCksXHJcbiAgICAgICAgYm91bmNlZF9jb3VudDppdGVtLmJvdW5jZWRfY291bnQsXHJcbiAgICAgICAgYXZnRHdlbGxUaW1lOml0ZW0uYXZnRHdlbGxUaW1lLFxyXG4gICAgICAgIGRvd25fdGltZTppdGVtLmRvd25fdGltZSxcclxuICAgICAgICBlbmdhZ2Vyc19jb3VudDppdGVtLmVuZ2FnZXJzX2NvdW50LFxyXG4gICAgICAgIGZvb3RmYWxsX2NvdW50Oml0ZW0uZm9vdGZhbGxfY291bnQsXHJcbiAgICAgICAgbWlzc2VkT3Bwb3J0dW5pdHlfY291bnQ6aXRlbS5taXNzZWRPcHBvcnR1bml0eV9jb3VudCxcclxuICAgICAgICBmb290ZmFsbF9jb3VudF9hdmc6aXRlbS5mb290ZmFsbF9jb3VudF9hdmcsXHJcbiAgICAgICAgYm91bmNlZF9mb290ZmFsbF9jb3VudF9hdmc6aXRlbS5ib3VuY2VkX2Zvb3RmYWxsX2NvdW50X2F2ZyxcclxuICAgICAgICBtaXNzZWRPcHBvcnR1bml0eV9jb3VudF9hdmc6aXRlbS5taXNzZWRPcHBvcnR1bml0eV9jb3VudF9hdmcsXHJcbiAgICAgICAgZW5nYWdlcnNfY291bnRfYXZnOml0ZW0uZW5nYWdlcnNfY291bnRfYXZnLFxyXG4gICAgICAgIGNvbnZlcnNpb25SYXRlOiBpdGVtLmNvbnZlcnNpb25SYXRlLFxyXG4gICAgICAgIGZvcmVjYXN0OiBpdGVtLmZvcmVjYXN0LFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgXHJcbiAgICB4QXhpcy5kYXRhPy5zZXRBbGwodGhpcy5nZXRGb290ZmFsbFRyZW5kRGF0YSk7IFxyXG4gICAgY29uc3QgeUF4aXMgPSB0aGlzLmNoYXJ0VHJlbmRzLnlBeGVzLnB1c2goXHJcbiAgICAgIGFtNXh5LlZhbHVlQXhpcy5uZXcodGhpcy5yb290VHJlbmRzLCB7XHJcbiAgICAgICAgbWluOjAsXHJcbiAgICAgICAgcmVuZGVyZXI6IGFtNXh5LkF4aXNSZW5kZXJlclkubmV3KHRoaXMucm9vdFRyZW5kcywge30pXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgLy8geUF4aXMuZ2V0KFwicmVuZGVyZXJcIikuZ3JpZC50ZW1wbGF0ZS5zZXQoXCJmb3JjZUhpZGRlblwiLCB0cnVlKTtcclxuICAgIC8vIHlBeGlzLmdldChcInJlbmRlcmVyXCIpLmxhYmVscy50ZW1wbGF0ZS5zZXQoXCJmb3JjZUhpZGRlblwiLCB0cnVlKTtcclxuICAgIC8vIFNldCB0aGUgdGl0bGUgb2YgdGhlIHktYXhpc1xyXG4gICAgeUF4aXMuY2hpbGRyZW4udW5zaGlmdChhbTUuTGFiZWwubmV3KHRoaXMucm9vdFRyZW5kcywge1xyXG4gICAgICByb3RhdGlvbjogLTkwLFxyXG4gICAgICAvLyB0ZXh0OiAnRm9vdGZhbGwnLCAvL2NhcGl0YWxpemVGaXJzdExldHRlcih0aGlzLm9iakRhdGEucHJvY2Vzc1R5cGUpLCAvLyBDYXBpdGFsaXplIHRoZSBmaXJzdCBsZXR0ZXJcclxuICAgICAgeTogYW01LnA1MCxcclxuICAgICAgY2VudGVyWDogYW01LnA1MCxcclxuICAgICAgZm9udEZhbWlseTogXCJBcmlhbFwiLCAvLyBTZXQgZm9udCBmYW1pbHlcclxuICAgICAgZm9udFNpemU6IFwiMTRweFwiLCAgICAvLyBTZXQgZm9udCBzaXplXHJcbiAgICAgIGZpbGw6IGFtNS5jb2xvcigweDAwMDAwMCkgLy8gU2V0IHRleHQgY29sb3IgKG9wdGlvbmFsKVxyXG4gICAgfSkpO1xyXG5pZih0aGlzLm9iakRhdGEucHJvY2Vzc1R5cGUgPT09J3BvdGVudGlhbEJ1eWVyJylcclxuICB0aGlzLm9iakRhdGEucHJvY2Vzc1R5cGUgPSdwb3RlbnRpYWwnXHJcbi8vIGlmKHRoaXMub2JqRGF0YS5wcm9jZXNzVHlwZSA9PT0nbWlzc2Vkb3Bwb3J0dW5pdGllcycpXHJcbi8vICAgdGhpcy5vYmpEYXRhLnByb2Nlc3NUeXBlID0nTWlzc2VkIE9wcG9ydHVuaXR5J1xyXG5jb25zdCBjYXBpdGFsaXplVGl0bGUgPSAodGV4dDogc3RyaW5nKTogc3RyaW5nID0+IHtcclxuICByZXR1cm4gdGV4dFxyXG4gICAgLnNwbGl0KCcgJylcclxuICAgIC5tYXAod29yZCA9PiB3b3JkLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgd29yZC5zbGljZSgxKS50b0xvd2VyQ2FzZSgpKVxyXG4gICAgLmpvaW4oJyAnKTtcclxufTtcclxuXHJcbi8vIEV4YW1wbGUgdXNhZ2VcclxuY29uc3QgcHJvY2Vzc1R5cGVUaXRsZSA9IGNhcGl0YWxpemVUaXRsZSh0aGlzLm9iakRhdGEucHJvY2Vzc1R5cGUpO1xyXG4gICAgLy8gdGhpcy5jcmVhdGVDb2x1bW5TZXJpZXMoJ0Zvb3RmYWxsJywgJ2Zvb3RmYWxsJywgeEF4aXMsIHlBeGlzLCBmYWxzZSwgYW01LmNvbG9yKDB4NjdiN2RjKSk7XHJcbiAgICB0aGlzLmNyZWF0ZUNvbHVtblNlcmllcygnQm91bmNlZCcsICdib3VuY2VkJywgeEF4aXMsIHlBeGlzLCB0cnVlLCBhbTUuY29sb3IoMHg2N2I3ZGMpKTtcclxuICAgIHRoaXMuY3JlYXRlQ29sdW1uU2VyaWVzKCdFbmdhZ2VycycsICdlbmdhZ2VycycsIHhBeGlzLCB5QXhpcywgdHJ1ZSwgYW01LmNvbG9yKDB4Njc5NGRjKSk7XHJcbiAgICAvLyA2NzcxZGNcclxuICAgIC8vIHRoaXMuY3JlYXRlQ29sdW1uU2VyaWVzKCdNaXNzZWQgT3Bwb3J0dW5pdHknLCAnbWlzc2Vkb3Bwb3J0dW5pdGllcycsIHhBeGlzLCB5QXhpcywgdHJ1ZSwgYW01LmNvbG9yKDB4Njc5NGRjKSk7XHJcbiAgICAvLyB0aGlzLmNyZWF0ZUNvbHVtblNlcmllcygnUG90ZW50aWFsIEJ1eWVyJywgJ3BvdGVudGlhbCcsIHhBeGlzLCB5QXhpcywgdHJ1ZSwgYW01LmNvbG9yKDB4ZGM2OWNmKSk7XHJcbiAgICAvLyB0aGlzLmNyZWF0ZUNvbHVtblNlcmllcygnQ29udmVyc2lvbicsICdjb252ZXJzaW9uJywgeEF4aXMsIHlBeGlzLCB0cnVlLCBhbTUuY29sb3IoMHg2NzcxZGMpKTtcclxuICAgIGlmKHRoaXMub2JqRGF0YS5wcm9jZXNzVHlwZSAhPT0nJyApe1xyXG4gICAgICBjb25zdCBteUNvbG9yID0gYW01LmNvbG9yKDB4MDBGRjAwKTtcclxuICAgIHRoaXMuY3JlYXRlTGluZVNlcmllcyhwcm9jZXNzVHlwZVRpdGxlLCB0aGlzLm9iakRhdGEucHJvY2Vzc1R5cGUsIHhBeGlzLCB5QXhpcywgbXlDb2xvcik7XHJcbiAgICB9XHJcbiAgICBjb25zdCBsZWdlbmQgPSB0aGlzLmNoYXJ0VHJlbmRzLmNoaWxkcmVuLnB1c2goXHJcbiAgICAgIGFtNS5MZWdlbmQubmV3KHRoaXMucm9vdFRyZW5kcywge1xyXG4gICAgICAgIGNlbnRlclg6IGFtNS5wNTAsXHJcbiAgICAgICAgeDogYW01LnA1MFxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuXHJcbiAgICBsZWdlbmQuZGF0YS5zZXRBbGwodGhpcy5jaGFydFRyZW5kcy5zZXJpZXMudmFsdWVzKTtcclxuXHJcbiAgICB0aGlzLmNoYXJ0VHJlbmRzLnNldCgnY3Vyc29yJywgYW01eHkuWFlDdXJzb3IubmV3KHRoaXMucm9vdFRyZW5kcywge1xyXG4gICAgICBiZWhhdmlvcjogJ25vbmUnXHJcbiAgICB9KSk7XHJcblxyXG4gICAgdGhpcy5jaGFydFRyZW5kcy5zZXJpZXMuZWFjaCgoc2VyaWVzOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHNlcmllcy5jb2x1bW5zKSB7XHJcbiAgICAgICAgc2VyaWVzLmNvbHVtbnMudGVtcGxhdGUuc2V0KFwiaW50ZXJhY3RpdmVcIiwgdHJ1ZSk7XHJcbiAgICAgICAgc2VyaWVzLmNvbHVtbnMudGVtcGxhdGUuZXZlbnRzLm9uKFwiY2xpY2tcIiwgKGV2OiBhbnkpID0+IHtcclxuICAgICAgICAgIGNvbnN0IGRhdGEgPSBldi50YXJnZXQuZGF0YUl0ZW0uZGF0YUNvbnRleHQ7XHJcbiAgICAgICAgICBjb25zdCB7IGNsaWVudFgsIGNsaWVudFkgfSA9IGV2Lm9yaWdpbmFsRXZlbnQ7XHJcbiAgICAgICAgICB0aGlzLnNob3dUb29sdGlwKGRhdGEsIGNsaWVudFgsIGNsaWVudFkpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHRoaXMuY2hhcnRUcmVuZHMuYXBwZWFyKDEwMDAsIDEwMCk7XHJcbiAgfSwxMDApXHJcbiAgfVxyXG5cclxuICB0b29sdGlwVmlzaWJsZSA9IGZhbHNlO1xyXG4gIHNob3dUb29sdGlwKGRhdGE6IGFueSwgeDogbnVtYmVyLCB5OiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRoaXMudG9vbHRpcFZpc2libGUgPSBmYWxzZTtcclxuICAgIHRoaXMudG9vbHRpcERhdGEgPSBkYXRhO1xyXG4gICAgY29uc3QgdG9vbHRpcEVsZW1lbnQgPSB0aGlzLnRvb2x0aXBDb250YWluZXI/Lm5hdGl2ZUVsZW1lbnQ7XHJcbiAgXHJcbiAgICAvLyBTZXQgdG9vbHRpcCBjb250ZW50IGFuZCBtYWtlIGl0IHZpc2libGUgdG8gY2FsY3VsYXRlIGRpbWVuc2lvbnNcclxuICAgIHRvb2x0aXBFbGVtZW50LnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xyXG4gICAgdG9vbHRpcEVsZW1lbnQuc3R5bGUudmlzaWJpbGl0eSA9ICdoaWRkZW4nOyAvLyBNYWtlIGl0IGludmlzaWJsZSBidXQgc3RpbGwgcHJlc2VudCBpbiB0aGUgRE9NXHJcbiAgXHJcbiAgICAvLyBGb3JjZSBhIHJlZmxvdyB0byBlbnN1cmUgZGltZW5zaW9ucyBhcmUgdXAtdG8tZGF0ZVxyXG4gICAgdG9vbHRpcEVsZW1lbnQuc3R5bGUucG9zaXRpb24gPSAnYWJzb2x1dGUnO1xyXG4gICAgXHJcbiAgICAvLyBXYWl0IGZvciB0aGUgbmV4dCBldmVudCBsb29wIHRvIGdldCBhY2N1cmF0ZSBkaW1lbnNpb25zXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3QgdG9vbHRpcFdpZHRoID0gdG9vbHRpcEVsZW1lbnQub2Zmc2V0V2lkdGg7XHJcbiAgICAgIGNvbnN0IHRvb2x0aXBIZWlnaHQgPSB0b29sdGlwRWxlbWVudC5vZmZzZXRIZWlnaHQ7XHJcbiAgICAgIGNvbnN0IHNjcmVlbldpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XHJcbiAgICAgIGNvbnN0IHNjcmVlbkhlaWdodCA9IHdpbmRvdy5pbm5lckhlaWdodDtcclxuICBcclxuICAgICAgLy8gQ2FsY3VsYXRlIGlmIHRoZXJlIGlzIGVub3VnaCBzcGFjZSBvbiB0aGUgcmlnaHQgc2lkZSwgb3RoZXJ3aXNlIHBsYWNlIGl0IG9uIHRoZSBsZWZ0XHJcbiAgICAgIGlmICh4ICsgdG9vbHRpcFdpZHRoID4gc2NyZWVuV2lkdGgpIHtcclxuICAgICAgICB0b29sdGlwRWxlbWVudC5zdHlsZS5sZWZ0ID0gYCR7eCAtIHRvb2x0aXBXaWR0aH1weGA7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdG9vbHRpcEVsZW1lbnQuc3R5bGUubGVmdCA9IGAke3h9cHhgO1xyXG4gICAgICB9XHJcbiAgXHJcbiAgICAgIC8vIENhbGN1bGF0ZSBpZiB0aGVyZSBpcyBlbm91Z2ggc3BhY2UgYXQgdGhlIGJvdHRvbSwgb3RoZXJ3aXNlIHBsYWNlIGl0IGF0IHRoZSB0b3BcclxuICAgICAgaWYgKHkgKyB0b29sdGlwSGVpZ2h0ID4gc2NyZWVuSGVpZ2h0KSB7XHJcbiAgICAgICAgdG9vbHRpcEVsZW1lbnQuc3R5bGUudG9wID0gYCR7eSAtIHRvb2x0aXBIZWlnaHR9cHhgO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRvb2x0aXBFbGVtZW50LnN0eWxlLnRvcCA9IGAke3l9cHhgO1xyXG4gICAgICB9XHJcbiAgXHJcbiAgICAgIHRvb2x0aXBFbGVtZW50LnN0eWxlLnZpc2liaWxpdHkgPSAndmlzaWJsZSc7IC8vIE1ha2UgaXQgdmlzaWJsZSBhZ2FpblxyXG4gICAgICB0aGlzLnRvb2x0aXBWaXNpYmxlID0gdHJ1ZTtcclxuICAgIH0sIDApO1xyXG4gIH1cclxuICBzZWxlY3RQbGFuVHJlbmRzKHR5cGU6IGFueSkge1xyXG4gICAgdGhpcy50eXBlID0gdHlwZTtcclxuICAgIHRoaXMub2JqRGF0YS5kYXRlVHlwZSA9dHlwZTtcclxuICAgIGlmKHR5cGUgPT09J21vbnRobHknICYmIHRoaXMuc3RvcmVJZGFycmF5Py5sZW5ndGggPT09IDEpXHJcbiAgICB0aGlzLm9iakRhdGEubGltaXQ9IDYwO1xyXG4gIGVsc2UgXHJcbiAgdGhpcy5vYmpEYXRhLmxpbWl0PSAzMTtcclxuICAgIHRoaXMub2JqRGF0YS5vZmZzZXQ9IDA7XHJcbiAgICB0aGlzLmZvb3RmYWxsVHJlbmQoKTtcclxuICAgIC8vIHRoaXMudXBkYXRlQ2hhcnREYXRhKCk7XHJcbiAgfVxyXG4gIGhpZGVUb29sdGlwKCk6IHZvaWQge1xyXG4gICAgdGhpcy50b29sdGlwVmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgY29uc3QgdG9vbHRpcEVsZW1lbnQgPSB0aGlzLnRvb2x0aXBDb250YWluZXI/Lm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICB0b29sdGlwRWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlQ29sdW1uU2VyaWVzKFxyXG4gICAgbmFtZTogc3RyaW5nLFxyXG4gICAgZmllbGROYW1lOiBzdHJpbmcsXHJcbiAgICB4QXhpczogYW01eHkuQ2F0ZWdvcnlBeGlzPGFtNXh5LkF4aXNSZW5kZXJlcj4sXHJcbiAgICB5QXhpczogYW01eHkuVmFsdWVBeGlzPGFtNXh5LkF4aXNSZW5kZXJlcj4sXHJcbiAgICBzdGFja2VkOiBib29sZWFuLFxyXG4gICAgY29sb3I6IGFtNS5Db2xvclxyXG4gICk6IHZvaWQge1xyXG5cclxuICAgIGlmICh0aGlzLmhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1MicpIHtcclxuICAgICAgaWYgKG5hbWUgPT09ICdCb3VuY2VkJykge1xyXG4gICAgICAgIG5hbWUgPSBgTGVzcyB0aGFuICR7dGhpcy5jbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uYm91bmNlZExpbWl0Py52YWx1ZSA/PyAnWCd9IG1pbnNgO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChuYW1lID09PSAnRW5nYWdlcnMnKSB7XHJcbiAgICAgICAgbmFtZSA9IGBNb3JlIHRoYW4gJHt0aGlzLmNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5ib3VuY2VkTGltaXQ/LnZhbHVlID8/ICdYJ30gbWluc2A7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGNvbnN0IHNlcmllcyA9IHRoaXMuY2hhcnRUcmVuZHMuc2VyaWVzLnB1c2goXHJcbiAgICAgIGFtNXh5LkNvbHVtblNlcmllcy5uZXcodGhpcy5yb290VHJlbmRzLCB7XHJcbiAgICAgICAgbmFtZTogbmFtZSxcclxuICAgICAgICB4QXhpczogeEF4aXMsXHJcbiAgICAgICAgeUF4aXM6IHlBeGlzLFxyXG4gICAgICAgIHZhbHVlWUZpZWxkOiBmaWVsZE5hbWUsXHJcbiAgICAgICAgY2F0ZWdvcnlYRmllbGQ6ICdzdG9yZU5hbWUnLFxyXG4gICAgICAgIHN0YWNrZWQ6IHN0YWNrZWQsXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgdGhpcy5nZXRGb290ZmFsbFRyZW5kRGF0YSA9IHRoaXMuZ2V0Rm9vdGZhbGxUcmVuZERhdGEubWFwKChpdGVtOiBhbnkpID0+IHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICAuLi5pdGVtLFxyXG4gICAgICAgIGR5bmFtaWNDb2x1bW46IHtcclxuICAgICAgICAgIGZpbGxPcGFjaXR5OiBpdGVtLmNvbHVtblNldHRpbmdzPy5maWxsT3BhY2l0eSA/PyAwLjgsXHJcbiAgICAgICAgICBzdHJva2VEYXNoYXJyYXk6IEFycmF5LmlzQXJyYXkoaXRlbS5jb2x1bW5TZXR0aW5ncz8uc3Ryb2tlRGFzaGFycmF5KVxyXG4gICAgICAgICAgICA/IGl0ZW0uY29sdW1uU2V0dGluZ3Muc3Ryb2tlRGFzaGFycmF5XHJcbiAgICAgICAgICAgIDogaXRlbS5jb2x1bW5TZXR0aW5ncz8uc3Ryb2tlRGFzaGFycmF5ID8gaXRlbS5jb2x1bW5TZXR0aW5ncy5zdHJva2VEYXNoYXJyYXkuc3BsaXQoJywnKS5tYXAoTnVtYmVyKSA6IFs1LCA1XSxcclxuICAgICAgICAgIHN0cm9rZVdpZHRoOiBpdGVtLmNvbHVtblNldHRpbmdzPy5zdHJva2VXaWR0aCA/PyAzXHJcbiAgICAgICAgfVxyXG4gICAgICB9O1xyXG4gICAgfSk7XHJcbiAgXHJcbiAgICAvLyBTZXQgZGF0YSBmb3Igc2VyaWVzXHJcbiAgICBzZXJpZXMuZGF0YS5zZXRBbGwodGhpcy5nZXRGb290ZmFsbFRyZW5kRGF0YSk7XHJcbiAgXHJcbiAgICAvLyBBZGFwdGVycyB0byBhcHBseSBjdXN0b20gY29sdW1uIHNldHRpbmdzXHJcbiAgICBzZXJpZXMuY29sdW1ucy50ZW1wbGF0ZS5hZGFwdGVycy5hZGQoXCJmaWxsT3BhY2l0eVwiLCAoZmlsbE9wYWNpdHk6IGFueSwgdGFyZ2V0OiBhbnkpID0+IHtcclxuICAgICAgY29uc3QgZGF0YUl0ZW0gPSB0YXJnZXQuZGF0YUl0ZW0/LmRhdGFDb250ZXh0IGFzIGFueTtcclxuICAgICAgaWYgKGRhdGFJdGVtPy5mb3JlY2FzdCAmJiBkYXRhSXRlbT8uZHluYW1pY0NvbHVtbikgeyBcclxuICAgICAgICByZXR1cm4gZGF0YUl0ZW0uZHluYW1pY0NvbHVtbi5maWxsT3BhY2l0eSA/PyBmaWxsT3BhY2l0eTsgXHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIGZpbGxPcGFjaXR5OyAvLyBEZWZhdWx0IG9wYWNpdHlcclxuICAgIH0pO1xyXG4gIFxyXG4gICAgc2VyaWVzLmNvbHVtbnMudGVtcGxhdGUuYWRhcHRlcnMuYWRkKFwic3Ryb2tlRGFzaGFycmF5XCIsIChzdHJva2VEYXNoYXJyYXk6IGFueSwgdGFyZ2V0OiBhbnkpID0+IHtcclxuICAgICAgY29uc3QgZGF0YUl0ZW0gPSB0YXJnZXQuZGF0YUl0ZW0/LmRhdGFDb250ZXh0IGFzIGFueTtcclxuICAgICAgaWYgKGRhdGFJdGVtPy5mb3JlY2FzdCAmJiBkYXRhSXRlbT8uZHluYW1pY0NvbHVtbikgeyBcclxuICAgICAgICByZXR1cm4gZGF0YUl0ZW0uZHluYW1pY0NvbHVtbi5zdHJva2VEYXNoYXJyYXkgPz8gc3Ryb2tlRGFzaGFycmF5OyBcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gc3Ryb2tlRGFzaGFycmF5OyAvLyBEZWZhdWx0IGRhc2ggYXJyYXlcclxuICAgIH0pO1xyXG4gIFxyXG4gICAgc2VyaWVzLmNvbHVtbnMudGVtcGxhdGUuYWRhcHRlcnMuYWRkKFwic3Ryb2tlV2lkdGhcIiwgKHN0cm9rZVdpZHRoOiBhbnksIHRhcmdldDogYW55KSA9PiB7XHJcbiAgICAgIGNvbnN0IGRhdGFJdGVtID0gdGFyZ2V0LmRhdGFJdGVtPy5kYXRhQ29udGV4dCBhcyBhbnk7XHJcbiAgICAgIGlmIChkYXRhSXRlbT8uZm9yZWNhc3QgJiYgZGF0YUl0ZW0/LmR5bmFtaWNDb2x1bW4pIHsgXHJcbiAgICAgICAgcmV0dXJuIGRhdGFJdGVtLmR5bmFtaWNDb2x1bW4uc3Ryb2tlV2lkdGggPz8gc3Ryb2tlV2lkdGg7IFxyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBzdHJva2VXaWR0aDsgLy8gRGVmYXVsdCBzdHJva2Ugd2lkdGhcclxuICAgIH0pO1xyXG4gIFxyXG4gICAgLy8gU2V0IGRlZmF1bHQgY29sb3IgYW5kIHN0cm9rZSBmb3IgdGhlIGNvbHVtbnNcclxuICAgIHNlcmllcy5jb2x1bW5zLnRlbXBsYXRlLnNldEFsbCh7XHJcbiAgICAgIGZpbGw6IGNvbG9yLCAvLyBTZXQgZmlsbCBjb2xvclxyXG4gICAgICBzdHJva2U6IGNvbG9yIC8vIFNldCBzdHJva2UgY29sb3JcclxuICAgIH0pO1xyXG4gIFxyXG4gICAgLy8gQWRkIGxhYmVscyB0byB0aGUgY29sdW1uc1xyXG4gICAgc2VyaWVzLmJ1bGxldHMucHVzaCgoKSA9PiB7XHJcbiAgICAgIHJldHVybiBhbTUuQnVsbGV0Lm5ldyh0aGlzLnJvb3RUcmVuZHMsIHtcclxuICAgICAgICBzcHJpdGU6IGFtNS5MYWJlbC5uZXcodGhpcy5yb290VHJlbmRzLCB7XHJcbiAgICAgICAgICB0ZXh0OiBcInt2YWx1ZVl9XCIsXHJcbiAgICAgICAgICBmaWxsOiB0aGlzLnJvb3RUcmVuZHMuaW50ZXJmYWNlQ29sb3JzLmdldChcImFsdGVybmF0aXZlVGV4dFwiKSxcclxuICAgICAgICAgIGNlbnRlclk6IGFtNS5wNTAsXHJcbiAgICAgICAgICBjZW50ZXJYOiBhbTUucDUwLFxyXG4gICAgICAgICAgcG9wdWxhdGVUZXh0OiB0cnVlLFxyXG4gICAgICAgICAgZm9udFNpemU6IDEyICAvLyBSZWR1Y2UgZm9udCBzaXplXHJcbiAgICAgICAgfSlcclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuIFxyXG4gICAgc2VyaWVzLmFwcGVhcigpO1xyXG4gIH1cclxuICBcclxuICBcclxuXHJcblxyXG5cclxuICBjcmVhdGVMaW5lU2VyaWVzKFxyXG4gICAgbmFtZTogc3RyaW5nLFxyXG4gICAgZmllbGROYW1lOiBzdHJpbmcsXHJcbiAgICB4QXhpczogYW01eHkuQ2F0ZWdvcnlBeGlzPGFtNXh5LkF4aXNSZW5kZXJlcj4sXHJcbiAgICB5QXhpczogYW01eHkuVmFsdWVBeGlzPGFtNXh5LkF4aXNSZW5kZXJlcj4sXHJcbiAgICBjb2xvcjogYW01LkNvbG9yXHJcbiAgKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInKSB7XHJcbiAgICAgIGlmIChuYW1lID09PSAnQ29udmVyc2lvbicpIHtcclxuICAgICAgICBuYW1lID0gYE1vcmUgdGhhbiAke3RoaXMuY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmNvbnZlcnNpb24/LnZhbHVlID8/ICdYJ30gbWluc2A7XHJcbiAgICAgIH1cclxuICAgIFxyXG4gICAgICBpZiAobmFtZSA9PT0gJ01pc3NlZG9wcG9ydHVuaXRpZXMnKSB7XHJcbiAgICAgICAgbmFtZSA9IGAke3RoaXMuY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/Lm1pc3NlZE9wcG9ydHVuaXR5RnJvbT8udmFsdWUgPz8gJ1gnfSAtICR7dGhpcy5jbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8ubWlzc2VkT3Bwb3J0dW5pdHlUbz8udmFsdWUgPz8gJ1knfSBtaW5zYDtcclxuICAgICAgfVxyXG4gICAgXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAobmFtZSA9PT0gJ01pc3NlZG9wcG9ydHVuaXRpZXMnKSB7XHJcbiAgICAgICAgbmFtZSA9ICdNaXNzZWQgT3Bwb3J0dW5pdHknO1xyXG4gICAgICB9XHJcbiAgICBcclxuICAgICAgaWYgKG5hbWUgPT09ICdQb3RlbnRpYWwnIHx8IG5hbWUgPT09ICdwb3RlbnRpYWxCdXllcicpIHtcclxuICAgICAgICBuYW1lID0gJ1BvdGVudGlhbCBCdXllcic7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgY29uc3Qgc2VyaWVzID0gdGhpcy5jaGFydFRyZW5kcy5zZXJpZXMucHVzaChcclxuICAgICAgYW01eHkuTGluZVNlcmllcy5uZXcodGhpcy5yb290VHJlbmRzLCB7XHJcbiAgICAgICAgbmFtZTogbmFtZSxcclxuICAgICAgICB4QXhpczogeEF4aXMsXHJcbiAgICAgICAgeUF4aXM6IHlBeGlzLFxyXG4gICAgICAgIHZhbHVlWUZpZWxkOiBmaWVsZE5hbWUsXHJcbiAgICAgICAgY2F0ZWdvcnlYRmllbGQ6ICdzdG9yZU5hbWUnLFxyXG4gICAgICAgIHRvb2x0aXA6IGFtNS5Ub29sdGlwLm5ldyh0aGlzLnJvb3RUcmVuZHMsIHtcclxuICAgICAgICAgIHBvaW50ZXJPcmllbnRhdGlvbjogXCJob3Jpem9udGFsXCIsXHJcbiAgICAgICAgICBsYWJlbFRleHQ6IFwiVG90YWwgRm9vdGZhbGw6IHtmb290ZmFsbH1cXG57bmFtZX06IHt2YWx1ZVl9IFwiLFxyXG4gICAgICAgICAgYmFja2dyb3VuZDogYW01LlJlY3RhbmdsZS5uZXcodGhpcy5yb290VHJlbmRzLCB7XHJcbiAgICAgICAgICAgIGZpbGw6IGFtNS5jb2xvcigweDAwRkYwMCkgLy8gU2V0IHRoZSBkZXNpcmVkIHRvb2x0aXAgYmFja2dyb3VuZCBjb2xvclxyXG4gICAgICAgICAgfSlcclxuICAgICAgICB9KVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICBcclxuICAgIC8vIEFwcGx5IGRlZmF1bHQgc3Ryb2tlIHNldHRpbmdzIGZvciB0aGUgbGluZSBzZXJpZXNcclxuICAgIHNlcmllcy5zdHJva2VzLnRlbXBsYXRlLnNldEFsbCh7XHJcbiAgICAgIHN0cm9rZVdpZHRoOiAyLFxyXG4gICAgICBzdHJva2U6IGFtNS5jb2xvcigweDAwRkYwMCksIC8vIERlZmF1bHQgc3Ryb2tlIGNvbG9yXHJcbiAgICAgIHRlbXBsYXRlRmllbGQ6IFwic3Ryb2tlU2V0dGluZ3NcIiwgLy8gUmVmZXIgdG8gc3Ryb2tlU2V0dGluZ3MgZm9yIGR5bmFtaWMgdXBkYXRlc1xyXG4gICAgICBmb250U2l6ZTogMTIgLy8gUmVkdWNlIGZvbnQgc2l6ZSBmb3IgbGFiZWxzXHJcbiAgICB9KTtcclxuICBcclxuICAgIC8vIE1hcCBkeW5hbWljIHNldHRpbmdzIGZvciBmb3JlY2FzdD10cnVlIGl0ZW1zXHJcbiAgICB0aGlzLmdldEZvb3RmYWxsVHJlbmREYXRhID0gdGhpcy5nZXRGb290ZmFsbFRyZW5kRGF0YS5tYXAoKGl0ZW06IGFueSkgPT4ge1xyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIC4uLml0ZW0sXHJcbiAgICAgICAgZHluYW1pY0xpbmU6IHtcclxuICAgICAgICAgIHN0cm9rZTogaXRlbS5zdHJva2VTZXR0aW5ncz8uc3Ryb2tlID8/IGFtNS5jb2xvcigweDAwRkYwMCksIC8vIERlZmF1bHQgdG8gZ3JlZW4gaWYgbm90IHNwZWNpZmllZFxyXG4gICAgICAgICAgc3Ryb2tlV2lkdGg6IGl0ZW0uc3Ryb2tlU2V0dGluZ3M/LnN0cm9rZVdpZHRoID8/IDUsXHJcbiAgICAgICAgICBzdHJva2VEYXNoYXJyYXk6IEFycmF5LmlzQXJyYXkoaXRlbS5zdHJva2VTZXR0aW5ncz8uc3Ryb2tlRGFzaGFycmF5KVxyXG4gICAgICAgICAgICA/IGl0ZW0uc3Ryb2tlU2V0dGluZ3Muc3Ryb2tlRGFzaGFycmF5XHJcbiAgICAgICAgICAgIDogaXRlbS5zdHJva2VTZXR0aW5ncz8uc3Ryb2tlRGFzaGFycmF5XHJcbiAgICAgICAgICAgID8gaXRlbS5zdHJva2VTZXR0aW5ncy5zdHJva2VEYXNoYXJyYXkuc3BsaXQoJywnKS5tYXAoTnVtYmVyKVxyXG4gICAgICAgICAgICA6IFs1LCA1XSAvLyBEZWZhdWx0IGRhc2ggYXJyYXlcclxuICAgICAgICB9XHJcbiAgICAgIH07XHJcbiAgICB9KTtcclxuICBcclxuICAgIC8vIFNldCBkYXRhIGZvciBzZXJpZXNcclxuICAgIHNlcmllcy5kYXRhLnNldEFsbCh0aGlzLmdldEZvb3RmYWxsVHJlbmREYXRhKTtcclxuICBcclxuICAvLyBBZGFwdGVyIHRvIGFwcGx5IGN1c3RvbSBzdHJva2Ugc2V0dGluZ3MgYmFzZWQgb24gZm9yZWNhc3RcclxuICBzZXJpZXMuc3Ryb2tlcy50ZW1wbGF0ZS5hZGFwdGVycy5hZGQoXCJzdHJva2VcIiwgKHN0cm9rZTogYW55LCB0YXJnZXQ6IGFueSkgPT4ge1xyXG4gICAgY29uc3QgZGF0YUl0ZW0gPSB0YXJnZXQuZGF0YUl0ZW0/LmRhdGFDb250ZXh0IGFzIGFueTtcclxuICAgIGlmIChkYXRhSXRlbT8uZm9yZWNhc3QgJiYgZGF0YUl0ZW0/LmR5bmFtaWNMaW5lKSB7XHJcbiAgICAgIHJldHVybiBkYXRhSXRlbS5keW5hbWljTGluZS5zdHJva2UgPz8gc3Ryb2tlOyAvLyBBcHBseSBkeW5hbWljIHN0cm9rZSBpZiBmb3JlY2FzdCBpcyB0cnVlXHJcbiAgICB9XHJcbiAgICByZXR1cm4gc3Ryb2tlOyAvLyBEZWZhdWx0IHN0cm9rZVxyXG4gIH0pO1xyXG5cclxuICBzZXJpZXMuc3Ryb2tlcy50ZW1wbGF0ZS5hZGFwdGVycy5hZGQoXCJzdHJva2VXaWR0aFwiLCAoc3Ryb2tlV2lkdGg6IGFueSwgdGFyZ2V0OiBhbnkpID0+IHtcclxuICAgIGNvbnN0IGRhdGFJdGVtID0gdGFyZ2V0LmRhdGFJdGVtPy5kYXRhQ29udGV4dCBhcyBhbnk7XHJcbiAgICBpZiAoZGF0YUl0ZW0/LmZvcmVjYXN0ICYmIGRhdGFJdGVtPy5keW5hbWljTGluZSkge1xyXG4gICAgICByZXR1cm4gZGF0YUl0ZW0uZHluYW1pY0xpbmUuc3Ryb2tlV2lkdGggPz8gc3Ryb2tlV2lkdGg7IC8vIEFwcGx5IGR5bmFtaWMgc3Ryb2tlIHdpZHRoXHJcbiAgICB9XHJcbiAgICByZXR1cm4gc3Ryb2tlV2lkdGg7IC8vIERlZmF1bHQgc3Ryb2tlIHdpZHRoXHJcbiAgfSk7XHJcblxyXG4gIHNlcmllcy5zdHJva2VzLnRlbXBsYXRlLmFkYXB0ZXJzLmFkZChcInN0cm9rZURhc2hhcnJheVwiLCAoc3Ryb2tlRGFzaGFycmF5OiBhbnksIHRhcmdldDogYW55KSA9PiB7XHJcbiAgICBjb25zdCBkYXRhSXRlbSA9IHRhcmdldC5kYXRhSXRlbT8uZGF0YUNvbnRleHQgYXMgYW55O1xyXG4gICAgaWYgKGRhdGFJdGVtPy5mb3JlY2FzdCAmJiBkYXRhSXRlbT8uZHluYW1pY0xpbmUpIHtcclxuICAgICAgLy8gRW5zdXJlIHRoZSBkYXNoIGFycmF5IGlzIGEgdmFsaWQgYXJyYXkgb2YgbnVtYmVycyBmb3IgcHJvcGVyIHJlbmRlcmluZ1xyXG4gICAgICByZXR1cm4gQXJyYXkuaXNBcnJheShkYXRhSXRlbS5keW5hbWljTGluZS5zdHJva2VEYXNoYXJyYXkpXHJcbiAgICAgICAgPyBkYXRhSXRlbS5keW5hbWljTGluZS5zdHJva2VEYXNoYXJyYXkgLy8gVXNlIGlmIGFscmVhZHkgaW4gYXJyYXkgZm9ybWF0XHJcbiAgICAgICAgOiBkYXRhSXRlbS5keW5hbWljTGluZS5zdHJva2VEYXNoYXJyYXlcclxuICAgICAgICA/IGRhdGFJdGVtLmR5bmFtaWNMaW5lLnN0cm9rZURhc2hhcnJheS5zcGxpdCgnLCcpLm1hcChOdW1iZXIpIC8vIENvbnZlcnQgc3RyaW5nIHRvIGFycmF5XHJcbiAgICAgICAgOiBbNSwgNV07IC8vIERlZmF1bHQgZGFzaCBhcnJheVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHN0cm9rZURhc2hhcnJheTsgLy8gRGVmYXVsdCBzdHJva2UgZGFzaCBhcnJheSBpZiBubyBjdXN0b20gc2V0dGluZ1xyXG4gIH0pO1xyXG5cclxuICBcclxuICAgIC8vIEFkZCBidWxsZXRzIChtYXJrZXJzKSB0byB0aGUgbGluZSBzZXJpZXNcclxuICAgIHNlcmllcy5idWxsZXRzLnB1c2goKCkgPT4ge1xyXG4gICAgICByZXR1cm4gYW01LkJ1bGxldC5uZXcodGhpcy5yb290VHJlbmRzLCB7XHJcbiAgICAgICAgc3ByaXRlOiBhbTUuQ2lyY2xlLm5ldyh0aGlzLnJvb3RUcmVuZHMsIHtcclxuICAgICAgICAgIHN0cm9rZVdpZHRoOiAxLFxyXG4gICAgICAgICAgc3Ryb2tlOiBhbTUuY29sb3IoMHgwMEZGMDApLFxyXG4gICAgICAgICAgcmFkaXVzOiAzLCAvLyBJbmNyZWFzZSByYWRpdXMgZm9yIHZpc2liaWxpdHlcclxuICAgICAgICAgIGZpbGw6IHRoaXMucm9vdFRyZW5kcy5pbnRlcmZhY2VDb2xvcnMuZ2V0KFwiYmFja2dyb3VuZFwiKVxyXG4gICAgICAgIH0pXHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgXHJcbiAgICAvLyBUcmlnZ2VyIHRoZSBhcHBlYXJhbmNlIG9mIHRoZSBzZXJpZXNcclxuICAgIHNlcmllcy5hcHBlYXIoKTtcclxuICBcclxuICAgIC8vIExvZyB0aGUgc2VyaWVzIGRhdGEgZm9yIGRlYnVnZ2luZ1xyXG4gIH1cclxuICBcclxuICBzaG93OiBib29sZWFuID1mYWxzZTtcclxuICBwcm9kdWN0dHJhaWxEcm9wZG93bihldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB0aGlzLnNob3cgPXRydWU7XHJcbiAgfVxyXG4gIGNoYW5nZVN0YXR1cyh0eXBlOmFueSl7XHJcbnRoaXMudHJlbmR0eXBlVmFsdWUgPSB0eXBlO1xyXG50aGlzLm9iakRhdGEuZmlsdGVyQnkgPXR5cGU7XHJcbnRoaXMuZm9vdGZhbGxUcmVuZCgpO1xyXG50aGlzLnNob3cgPWZhbHNlO1xyXG4gIH1cclxuXHJcblxyXG5cclxuICAvLyB0cmFmZmljIG92ZXJhbGwgY2FyZCBhbmQgY2hhcnRzXHJcblxyXG4gIHByaXZhdGUgcm9vdCE6IGFtNS5Sb290O1xyXG4gIC8vIHByaXZhdGUgY2hhcnQ6IGFtNXh5LlhZQ2hhcnQ7XHJcbiAgcHJpdmF0ZSBzZXJpZXM6IGFtNXh5LkNvbHVtblNlcmllcztcclxuICBwcml2YXRlIHJvb3QyOiBhbTUuUm9vdDtcclxuICBwcml2YXRlIGNoYXJ0MjogYW01eHkuWFlDaGFydDtcclxuICBwcml2YXRlIHNlcmllczI6IGFtNXh5LkNvbHVtblNlcmllcztcclxuICBkZXRhaWxlZFJvb3Q6IGFtNS5Sb290O1xyXG4gIGRldGFpbGVkQ2hhcnQ6IGFtNXh5LlhZQ2hhcnQ7XHJcbiAgZGV0YWlsZWRTZXJpZXM6IGFtNXh5LkNvbHVtblNlcmllcztcclxuICBkYXlqcyA9ZGF5anNcclxuICBoZWF0TWFwUm9vdDogYW01LlJvb3Q7XHJcbiAgaGVhdE1hcENoYXJ0OiBhbTV4eS5YWUNoYXJ0O1xyXG4gIGhlYXRNYXBTZXJpZXM6IGFtNXh5LkNvbHVtblNlcmllcztcclxuICBkd2VsbFJvb3Q6IGFtNS5Sb290O1xyXG4gIGR3ZWxsQ2hhcnQ6IGFtNXh5LlhZQ2hhcnQ7XHJcbiAgZHdlbGxTZXJpZXM6IGFtNXh5LkNvbHVtblNlcmllcztcclxuICBkZW1vR3JhcGhpY3NEYXRhOiBhbnk7XHJcbiAgZGVtb0dyYXBoaWNzcm9vdDogYW55O1xyXG4gIGJ1eWVyc3Jvb3Q6YW55O1xyXG5cclxuICBkYXRhOiBhbnk7XHJcbiAgY3VycmVudERhdGE6IGFueTtcclxuICBjdXJyZW50RGF0YTI6IGFueTtcclxuICBkZXRhaWxlZENoYXJ0czogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGRhdGU6IGFueTtcclxuICB2YWx1ZTogYW55O1xyXG4gIGZvb3RmYWxsVmFsdWU6IHN0cmluZyA9IFwidHJhZmZpY1wiO1xyXG4gIGRlbW9HcmFwaGljc0NoYXJ0SW5zdGFuY2U6IGFueTtcclxuICBidXllcnNDaGFydEluc3RhbmNlOmFueTtcclxuICBzZWxlY3RlZFRhYjogYW55ID0gXCJ0cmFmZmljXCI7XHJcbiAgZ2V0T3ZlcmFsbENhcmREYXRhOiBhbnkgPSBbXTtcclxuICAvLyBvYmpEYXRhOiBhbnk7XHJcbiAgZ2V0T3ZlcmFsbEhvdXJseURhdGE6IGFueTtcclxuICBob3VyQnVja2V0VmFsdWU6IG51bWJlciA9IDE7XHJcbiAgaG91ckJ1Y2tldE9wdGlvbnM6IGFueSA9IFtcclxuICAgIHsgdmFsdWU6IDEsIGxhYmVsOiBcIjEgSG91clwiIH0sXHJcbiAgICB7IHZhbHVlOiAyLCBsYWJlbDogXCIyIEhvdXJcIiB9LFxyXG4gICAgeyB2YWx1ZTogMywgbGFiZWw6IFwiMyBIb3VyXCIgfSxcclxuICAgIHsgdmFsdWU6IDQsIGxhYmVsOiBcIjQgSG91clwiIH0sXHJcbiAgXTtcclxuICBnZXRPdmVyYWxsQ2hhcnREYXRhOiBhbnk9W107XHJcbiAgZ2V0U2luZ2xlQ2hhcnREYXRhOiBhbnk7XHJcbiAgYnV5ZXJzRGF0YTogYW55O1xyXG4gIGdldERlbnNpdHlEd2VsbERhdGE6IGFueTtcclxuICB0cmFmZmljRGF0YTphbnk9IFtdO1xyXG4gIGZvb3RmYWxsRGF0ZTogYW55O1xyXG4gIHNlbGN0ZWRWYWx1ZTphbnkgPSdGb290ZmFsbCBBbmFseXNpcyc7XHJcbiAgY2hhcnROb0RhdGE6IGJvb2xlYW4gPWZhbHNlO1xyXG4gIGNoYXJ0bG9hZGluZzogYm9vbGVhbiA9dHJ1ZTtcclxuICB0b3RhbENvdW50OiBhbnk7XHJcbiAgZGVtb0dyYXBoaWNzU2VyaWVzOiBhbnk7XHJcblxyXG4gIGl0ZW1zUGVyUGFnZVRyYWZmaWNDYXJkID0gMTA7XHJcbiAgY3VycmVudFBhZ2VUcmFmZmljQ2FyZCA9IDE7XHJcbiAgdG90YWxJdGVtc1RyYWZmaWNDYXJkID0gMTtcclxuICBwYWdpbmF0aW9uU2l6ZXNUcmFmZmljQ2FyZDogbnVtYmVyW10gPSBbXTtcclxuICBwYWdlU2l6ZVRyYWZmaWNDYXJkOmFueT0yMDtcclxuICBvZmZzZXRUcmFmZmljQ2FyZDogbnVtYmVyID0gMDtcclxuICBsaW1pdFRyYWZmaWNDYXJkOiBudW1iZXIgPSAyMDtcclxuICBkZW1vTm9EYXRhID1mYWxzZTtcclxuICBkZW1vbG9hZGluZyA9ZmFsc2U7XHJcbiAgYnV5ZXJzTm9EYXRhID1mYWxzZTtcclxuICBidXllcnNsb2FkaW5nID1mYWxzZTtcclxuICBkYXRhc2V0c0NhcmQ6YW55ID1bXTtcclxuICBwcm9jZXNzVHlwZU5ldzphbnk7XHJcbiAgc2VsZWN0ZWRUYWJzKHR5cGU6IGFueSkge1xyXG4gICAgdGhpcy5kZXRhaWxlZENoYXJ0cyA9IGZhbHNlO1xyXG4gICAgdGhpcy5zZWxlY3RlZFRhYiA9IHR5cGU7XHJcbiAgICB0aGlzLm9iakRhdGFUcmFmZmljLnByb2Nlc3NUeXBlID0gdHlwZTtcclxuICAgIHRoaXMucHJvY2Vzc1R5cGVOZXcgPSB0eXBlO1xyXG4gICAgdGhpcy5vYmpEYXRhVHJhZmZpYy52YWx1ZVR5cGUgPXRoaXMudmFsdWVUeXBlO1xyXG4gICAgdGhpcy5vYmpEYXRhVHJhZmZpYy5jb3VudHJ5ID0gdGhpcy5oZWFkZXJEYXRhPy5jb3VudHJ5LmZpbHRlcigoY291bnRyaWVzOmFueSkgPT4gY291bnRyaWVzLmNoZWNrZWQpLm1hcCgoY291bnRyaWVzOmFueSkgPT4gY291bnRyaWVzLmNvdW50cnkpLFxyXG4gICAgdGhpcy5vYmpEYXRhVHJhZmZpYy5zdG9yZUlkID0gdGhpcy5oZWFkZXJEYXRhLnN0b3Jlcy5maWx0ZXIoKHN0b3JlOmFueSkgPT4gc3RvcmUuY2hlY2tlZCkubWFwKChzdG9yZTphbnkpID0+IHN0b3JlLnN0b3JlSWQpO1xyXG4gICBpZih0aGlzLnNlbGVjdGVkVGFiID09PSAndHJhZmZpYycpe1xyXG4gICB0aGlzLmdldER3ZWxsKCk7IHRoaXMudHJhZmZpY0R3ZWxsKCk7XHJcbiAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgfSBlbHNle1xyXG4gICAgaWYodGhpcy5zZWxlY3RlZFRhYiA9PT0gXCJmb290ZmFsbFwiKXtcclxuICAgICAgdGhpcy5mb290ZmFsbFZhbHVlID0gXCJmb290ZmFsbFwiO1xyXG4gICAgICB0aGlzLnNlbGN0ZWRWYWx1ZSA9J0Zvb3RmYWxsIEFuYWx5c2lzJ1xyXG4gICAgfSBlbHNlIGlmKHRoaXMuc2VsZWN0ZWRUYWIgPT09IFwiY29udmVyc2lvblwiKXtcclxuICAgICAgdGhpcy5mb290ZmFsbFZhbHVlID0gXCJjb252ZXJzaW9uXCI7XHJcbiAgICAgIHRoaXMuc2VsY3RlZFZhbHVlID0gdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInID8gYE1vcmUgdGhhbiAke3RoaXMuZmVhdHVyZUNvbmZpZz8uY29udmVyc2lvbi52YWx1ZX0gbWlucyBBbmFseXNpc2AgOiAnQ29udmVyc2lvbiBBbmFseXNpcydcclxuICAgIH0gZWxzZSBpZih0aGlzLnNlbGVjdGVkVGFiID09PSBcImVuZ2FnZXJzXCIpe1xyXG4gICAgICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBcImVuZ2FnZXJzXCI7XHJcbiAgICAgIHRoaXMuc2VsY3RlZFZhbHVlID0gdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInID8gYE1vcmUgdGhhbiAke3RoaXMuZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlfSBtaW5zIEFuYWx5c2lzYCA6ICdFbmdhZ2VycyBBbmFseXNpcydcclxuICAgIH0gZWxzZSBpZih0aGlzLnNlbGVjdGVkVGFiID09PSBcImJvdW5jZWRcIil7XHJcbiAgICAgIHRoaXMuZm9vdGZhbGxWYWx1ZSA9IFwiYm91bmNlZFwiO1xyXG4gICAgICB0aGlzLnNlbGN0ZWRWYWx1ZSA9IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJyA/IGBMZXNzIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZX0gbWlucyBBbmFseXNpc2AgOidCb3VuY2VkIEFuYWx5c2lzJ1xyXG4gICAgfSBlbHNlIGlmKHRoaXMuc2VsZWN0ZWRUYWIgPT09IFwicG90ZW50aWFsQnV5ZXJzXCIpe1xyXG4gICAgICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBcInBvdGVudGlhbEJ1eWVyc1wiO1xyXG4gICAgICB0aGlzLnNlbGN0ZWRWYWx1ZSA9J1BvdGVudGlhbCBCdXllciBBbmFseXNpcydcclxuICAgIH0gZWxzZSBpZih0aGlzLnNlbGVjdGVkVGFiID09PSBcIm1pc3NlZE9wcG9ydHVuaXR5XCIpe1xyXG4gICAgICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBcIm1pc3NlZE9wcG9ydHVuaXR5XCI7XHJcbiAgICAgIHRoaXMuc2VsY3RlZFZhbHVlID0gdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInID8gYCR7dGhpcy5mZWF0dXJlQ29uZmlnPy5taXNzZWRPcHBvcnR1bml0eUZyb20udmFsdWV9LSR7dGhpcy5mZWF0dXJlQ29uZmlnPy5taXNzZWRPcHBvcnR1bml0eVRvLnZhbHVlfSBtaW5zIEFuYWx5c2lzYCA6J01pc3NlZCBPcHBvcnR1bml0eSBBbmFseXNpcycgXHJcbiAgICB9IFxyXG4gICAgaWYodGhpcy5vYmpEYXRhVHJhZmZpYy5ub2IgPT09IHRydWUgJiYgdGhpcy5zZWxlY3RlZFRhYiA9PT0gXCJjb252ZXJzaW9uXCIpe1xyXG4gICAgICB0aGlzLnNlbGVjdGVkVGFiID0gXCJjb252ZXJzaW9uXCJcclxuICAgICAgIHRoaXMuZm9vdGZhbGxWYWx1ZSA9IFwiY29udmVyc2lvblwiO1xyXG4gICAgICB0aGlzLnNlbGN0ZWRWYWx1ZSA9J0NvbnZlcnNpb24gQW5hbHlzaXMnXHJcbiAgICAgIHRoaXMuZGF0YXNldHNDYXJkID0gW1xyXG4gICAgICAgIHsgdmFsdWU6IHRoaXMuc2VsZWN0ZWRUYWIsIGxhYmVsOiB0aGlzLnNlbGN0ZWRWYWx1ZSB9LFxyXG4gICAgICBdO1xyXG4gICAgICB0aGlzLm9iakRhdGFUcmFmZmljLmxpbWl0ID0yMCxcclxuICAgICAgdGhpcy5vdmVyYWxsQ2FyZCgpO1xyXG4gICAgICB0aGlzLm92ZXJhbGxDaGFydCgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJykge1xyXG4gICAgICAgIHRoaXMuZGF0YXNldHNDYXJkID0gW1xyXG4gICAgICAgICAgeyB2YWx1ZTogdGhpcy5zZWxlY3RlZFRhYiwgbGFiZWw6IHRoaXMuc2VsY3RlZFZhbHVlIH0sXHJcbiAgICAgICAgICB7IHZhbHVlOiBcImRlbW9ncmFwaGljXCIsIGxhYmVsOiBcIkRlbW9ncmFwaGljIEFuYWx5c2lzXCIgfVxyXG4gICAgICAgIF1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmRhdGFzZXRzQ2FyZCA9IFtcclxuICAgICAgICAgIHsgdmFsdWU6IHRoaXMuc2VsZWN0ZWRUYWIsIGxhYmVsOiB0aGlzLnNlbGN0ZWRWYWx1ZSB9LFxyXG4gICAgICAgICAgeyB2YWx1ZTogXCJkZW1vZ3JhcGhpY1wiLCBsYWJlbDogXCJEZW1vZ3JhcGhpYyBBbmFseXNpc1wiIH0sXHJcbiAgICAgIF1cclxuICAgICAgaWYodGhpcy5zZWxlY3RlZFRhYiAhPSdtaXNzZWRPcHBvcnR1bml0eScpe1xyXG4gICAgICAgIHRoaXMuZGF0YXNldHNDYXJkLnB1c2goeyB2YWx1ZTogXCJidXllclwiLCBsYWJlbDogXCJCdXllciBBbmFseXNpc1wiIH0sKVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLm9iakRhdGFUcmFmZmljLmxpbWl0ID0yMCxcclxuICAgIHRoaXMub3ZlcmFsbENhcmQoKTtcclxuICAgIHRoaXMub3ZlcmFsbEhvdXJseUNoYXJ0KCk7XHJcbiAgICB0aGlzLm92ZXJhbGxDaGFydCgpO1xyXG4gIH1cclxuICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcbiAgfVxyXG4gIGdldEZvb3RmYWxsRGVuc2l0eUR3ZWxsRGF0YTphbnkgPVtdO1xyXG4gIHRyYWZmaWNEd2VsbCgpe1xyXG4gICAgdGhpcy5jaGFydE5vRGF0YSA9IGZhbHNlO1xyXG4gICAgdGhpcy5jaGFydGxvYWRpbmcgPSB0cnVlO1xyXG4gICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMubGltaXQ7XHJcbiAgICBkZWxldGUgdGhpcy5vYmpEYXRhVHJhZmZpYy5vZmZzZXQ7XHJcbiAgICBkZWxldGUgdGhpcy5vYmpEYXRhVHJhZmZpYy5wcm9jZXNzVHlwZTtcclxuICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLmhvdXJGb3JtYXQ7XHJcbiAgICBkZWxldGUgdGhpcy5vYmpEYXRhVHJhZmZpYy5ub3JtYWxpemVkRGF0YVxyXG4gICAgdGhpcy5vYmpEYXRhVHJhZmZpYy5kYXRlUmFuZ2UgPU51bWJlcih0aGlzLmZvb3RmYWxsRGF0ZSk7XHJcbiAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgLmdldFRyYWZmaWNEZW5zaXR5RHdlbGwodGhpcy5vYmpEYXRhVHJhZmZpYylcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICA/LnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgdGhpcy5nZXRGb290ZmFsbERlbnNpdHlEd2VsbERhdGEgPSByZXM/LmRhdGE7XHJcbiAgICAgICAgICAgIHRoaXMudHJhZmZpY0hlYXRDaGFydCgpO1xyXG4gICAgICAgICAgICB0aGlzLmNoYXJ0Tm9EYXRhID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuY2hhcnRsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgfSBlbHNlIGlmKCFyZXMgfHwgcmVzLmNvZGUgPT09IDIwNCl7XHJcbiAgICAgICAgICAgIHRoaXMuY2hhcnROb0RhdGEgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmNoYXJ0bG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmdldEZvb3RmYWxsRGVuc2l0eUR3ZWxsRGF0YSA9W107XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmNoYXJ0Tm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICAgIHRoaXMuY2hhcnRsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLmdldEZvb3RmYWxsRGVuc2l0eUR3ZWxsRGF0YSA9W107XHJcbiAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7fSxcclxuICAgICAgfSk7IFxyXG4gIH1cclxuICBjaGFydER3ZWxsTm9EYXRhID0gZmFsc2U7XHJcbiAgICAgIGNoYXJ0RHdlbGxsb2FkaW5nID0gdHJ1ZTtcclxuICAgZ2V0RHdlbGwoKXtcclxuICAgICAgdGhpcy5jaGFydER3ZWxsTm9EYXRhID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuY2hhcnREd2VsbGxvYWRpbmcgPSB0cnVlO1xyXG4gICAgICBkZWxldGUgdGhpcy5vYmpEYXRhVHJhZmZpYy5saW1pdDtcclxuICAgICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMub2Zmc2V0O1xyXG4gICAgICBkZWxldGUgdGhpcy5vYmpEYXRhVHJhZmZpYy5wcm9jZXNzVHlwZTtcclxuICAgICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMuaG91ckZvcm1hdDtcclxuICAgICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMubm9ybWFsaXplZERhdGE7XHJcbiAgICAgIHRoaXMub2JqRGF0YVRyYWZmaWMuZGF0ZVJhbmdlID1OdW1iZXIodGhpcy5mb290ZmFsbERhdGUpO1xyXG4gICAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgICAuZ2V0RGVuc2l0eUR3ZWxsKHRoaXMub2JqRGF0YVRyYWZmaWMpXHJcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAgID8uc3Vic2NyaWJlKHtcclxuICAgICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAocmVzICYmIHJlcz8uY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5nZXREZW5zaXR5RHdlbGxEYXRhID0gcmVzPy5kYXRhO1xyXG4gICAgICAgICAgICAgIGlmKHRoaXMuZ2V0RGVuc2l0eUR3ZWxsRGF0YT8uZHdlbGxUaW1lU3BsaXQ/Lmxlbmd0aCA+MCl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmdldER3ZWxsQ2hhcnQoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuY2hhcnREd2VsbE5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jaGFydER3ZWxsbG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuY2hhcnREd2VsbE5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgdGhpcy5jaGFydER3ZWxsbG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBlbHNlIGlmKCFyZXMgfHwgcmVzLmNvZGUgPT09IDIwNCl7XHJcbiAgICAgICAgICAgICAgdGhpcy5jaGFydER3ZWxsTm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB0aGlzLmNoYXJ0RHdlbGxsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgdGhpcy5nZXREZW5zaXR5RHdlbGxEYXRhID1bXTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5jaGFydE5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuY2hhcnRsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgICB0aGlzLmdldERlbnNpdHlEd2VsbERhdGEgPVtdO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7fSxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIGluaXRDaGFydCgpOiB2b2lkIHtcclxuICAgICAgdGhpcy5jaGFydE5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmNoYXJ0bG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICBjb25zdCBjaGFydERpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwidGVzdEdyYXBoaWNzXCIpO1xyXG4gICAgICAgIGlmICghY2hhcnREaXYpIHtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRoaXMucm9vdCkge1xyXG4gICAgICAgICAgdGhpcy5yb290LmRpc3Bvc2UoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5yb290ID0gYW01LlJvb3QubmV3KFwidGVzdEdyYXBoaWNzXCIpO1xyXG4gIFxyXG4gICAgICAgIC8vIFNldCB0aGVtZXNcclxuICAgICAgICAvLyB0aGlzLnJvb3Quc2V0VGhlbWVzKFthbTV0aGVtZXNfQW5pbWF0ZWQubmV3KHRoaXMucm9vdCldKTtcclxuICAgICAgICAvLyBjb25zdCB0b3RhbENvdW50ID0gdGhpcy50b3RhbENvdW50O1xyXG4gICAgICAgIC8vIGNvbnN0IGR5bmFtaWNXaWR0aCA9IE1hdGgubWF4KDgwMCwgdG90YWxDb3VudCAqIDUwKTsgLy8gTWluaW11bSA4MDBweCBvciA1MHB4IHBlciBpdGVtXHJcbiAgICAgICAgLy8gQ3JlYXRlIGNoYXJ0XHJcbiAgICAgICAgdGhpcy5jaGFydCA9IHRoaXMucm9vdC5jb250YWluZXIuY2hpbGRyZW4ucHVzaChcclxuICAgICAgICAgIGFtNXh5LlhZQ2hhcnQubmV3KHRoaXMucm9vdCwge1xyXG4gICAgICAgICAgICBwYW5YOiB0cnVlLFxyXG4gICAgICAgICAgICBwYW5ZOiB0cnVlLFxyXG4gICAgICAgICAgICB3aGVlbFg6IFwicGFuWFwiLFxyXG4gICAgICAgICAgICB3aGVlbFk6IFwiem9vbVhcIixcclxuICAgICAgICAgICAgcGluY2hab29tWDogdHJ1ZSxcclxuICAgICAgICAgICAgcGFkZGluZ0xlZnQ6IDAsXHJcbiAgICAgICAgICAgIHBhZGRpbmdSaWdodDogMSxcclxuICAgICAgICAgICAgd2lkdGg6IGFtNS5wZXJjZW50KDEwMCksIC8vIExldCB0aGUgY2hhcnQgdGFrZSBmdWxsIHdpZHRoXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgLy8gdGhpcy5jaGFydC5wbG90Q29udGFpbmVyLnNldEFsbCh7XHJcbiAgICAgICAgLy8gICBtaW5XaWR0aDogZHluYW1pY1dpZHRoLCAvLyBTZXQgZHluYW1pYyBtaW4gd2lkdGggZm9yIHNjcm9sbGluZ1xyXG4gICAgICAgIC8vIH0pO1xyXG4gICAgICAgIC8vIEFkZCBjdXJzb3JcclxuICAgICAgICBsZXQgY3Vyc29yID0gdGhpcy5jaGFydC5zZXQoXCJjdXJzb3JcIiwgYW01eHkuWFlDdXJzb3IubmV3KHRoaXMucm9vdCwge30pKTtcclxuICAgICAgICBjdXJzb3IubGluZVkuc2V0KFwidmlzaWJsZVwiLCBmYWxzZSk7XHJcbiAgXHJcbiAgICAgICAgLy8gQ3JlYXRlIGF4ZXNcclxuICAgICAgICBsZXQgeFJlbmRlcmVyID0gYW01eHkuQXhpc1JlbmRlcmVyWC5uZXcodGhpcy5yb290LCB7XHJcbiAgICAgICAgICBtaW5HcmlkRGlzdGFuY2U6IDMwLFxyXG4gICAgICAgICAgbWlub3JHcmlkRW5hYmxlZDogdHJ1ZSxcclxuICAgICAgICB9KTtcclxuICBcclxuICAgICAgICB4UmVuZGVyZXIubGFiZWxzLnRlbXBsYXRlLnNldEFsbCh7XHJcbiAgICAgICAgICByb3RhdGlvbjogLTQ1LFxyXG4gICAgICAgICAgY2VudGVyWTogYW01LnA1MCxcclxuICAgICAgICAgIGNlbnRlclg6IGFtNS5wMTAwLFxyXG4gICAgICAgICAgcGFkZGluZ1JpZ2h0OiA1LFxyXG4gICAgICAgIH0pO1xyXG4gIFxyXG4gICAgICAgIHhSZW5kZXJlci5ncmlkLnRlbXBsYXRlLnNldEFsbCh7XHJcbiAgICAgICAgICBsb2NhdGlvbjogMSxcclxuICAgICAgICB9KTtcclxuICAgICAgICAvLyBBZGQgc2Nyb2xsYmFyXHJcbiAgICAgICAgdGhpcy5jaGFydC5zZXQoXHJcbiAgICAgICAgICBcInNjcm9sbGJhclhcIixcclxuICAgICAgICAgIGFtNS5TY3JvbGxiYXIubmV3KHRoaXMucm9vdCwge1xyXG4gICAgICAgICAgICBvcmllbnRhdGlvbjogXCJob3Jpem9udGFsXCIsXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgbGV0IHhBeGlzID0gdGhpcy5jaGFydC54QXhlcy5wdXNoKFxyXG4gICAgICAgICAgYW01eHkuQ2F0ZWdvcnlBeGlzLm5ldyh0aGlzLnJvb3QsIHtcclxuICAgICAgICAgICAgbWF4RGV2aWF0aW9uOiAwLjMsXHJcbiAgICAgICAgICAgIGNhdGVnb3J5RmllbGQ6IFwic3RvcmVOYW1lXCIsXHJcbiAgICAgICAgICAgIHJlbmRlcmVyOiB4UmVuZGVyZXIsXHJcbiAgICAgICAgICAgIC8vIHRvb2x0aXA6IGFtNS5Ub29sdGlwLm5ldyh0aGlzLnJvb3QsIHtsYWJlbFRleHQ6IFwie2Z1bGxTdG9yZU5hbWV9XCJ9KSxcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICBcclxuICAgICAgICBsZXQgeVJlbmRlcmVyID0gYW01eHkuQXhpc1JlbmRlcmVyWS5uZXcodGhpcy5yb290LCB7XHJcbiAgICAgICAgICBzdHJva2VPcGFjaXR5OiAwLjEsXHJcbiAgICAgICAgfSk7XHJcbiAgXHJcbiAgICAgICAgbGV0IHlBeGlzID0gdGhpcy5jaGFydC55QXhlcy5wdXNoKFxyXG4gICAgICAgICAgYW01eHkuVmFsdWVBeGlzLm5ldyh0aGlzLnJvb3QsIHtcclxuICAgICAgICAgICAgbWF4RGV2aWF0aW9uOiAwLjMsXHJcbiAgICAgICAgICAgIHJlbmRlcmVyOiB5UmVuZGVyZXIsXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgbGV0IGRhdGEgPSB0aGlzLmdldE92ZXJhbGxDaGFydERhdGE/LnN0b3JlRGF0YT8ubWFwKFxyXG4gICAgICAgICAgKGl0ZW06IGFueSkgPT4gKHtcclxuICAgICAgICAgICAgZnVsbFN0b3JlTmFtZTogaXRlbS5zdG9yZU5hbWUsIC8vIEZ1bGwgc3RvcmUgbmFtZVxyXG4gICAgICBzdG9yZU5hbWU6ICBpdGVtLnN0b3JlTmFtZSwgLy8gaXRlbS5zdG9yZU5hbWUubGVuZ3RoID4gMjAgPyBpdGVtLnN0b3JlTmFtZS5zbGljZSgwLCAyMCkgKyAnLi4uJyA6IFNob3J0ZW5lZCBmb3IgeEF4aXNcclxuICAgICAgdmFsdWU6IE51bWJlcihpdGVtLmNvdW50KSxcclxuICAgICAgc3RvcmVJZDogaXRlbS5zdG9yZUlkXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcblxyXG4gICBpZih0aGlzLmhlYWRlckRhdGEuY2xpZW50ID09PSc0NTInKXtcclxuICAgICAgICBpZih0aGlzLm9iakRhdGFUcmFmZmljLnByb2Nlc3NUeXBlID09PSBcImNvbnZlcnNpb25cIil7XHJcbiAgICAgICAgICB0aGlzLnByb2Nlc3NUeXBlTmV3ID0gdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInID8gYE1vcmUgdGhhbiAke3RoaXMuZmVhdHVyZUNvbmZpZz8uY29udmVyc2lvbi52YWx1ZX0gbWlucyBgIDogJ0NvbnZlcnNpb24nXHJcbiAgICAgICAgfSBpZih0aGlzLm9iakRhdGFUcmFmZmljLnByb2Nlc3NUeXBlID09PSBcImVuZ2FnZXJzXCIpe1xyXG4gICAgICAgXHJcbiAgICAgICAgICB0aGlzLnByb2Nlc3NUeXBlTmV3ID0gdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInID8gYE1vcmUgdGhhbiAke3RoaXMuZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlfSBtaW5zYCA6ICdFbmdhZ2VycydcclxuICAgICAgICB9IGlmKHRoaXMub2JqRGF0YVRyYWZmaWMucHJvY2Vzc1R5cGUgPT09IFwiYm91bmNlZFwiKXtcclxuICAgICAgICAgIHRoaXMuZm9vdGZhbGxWYWx1ZSA9IFwiYm91bmNlZFwiO1xyXG4gICAgICAgICAgdGhpcy5wcm9jZXNzVHlwZU5ldyA9IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJyA/IGBMZXNzIHRoYW4gJHt0aGlzLmZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZX0gbWluc2AgOidCb3VuY2VkJ1xyXG4gICAgICAgIH1cclxuICAgICAgICAgaWYodGhpcy5vYmpEYXRhVHJhZmZpYy5wcm9jZXNzVHlwZSA9PT0gXCJtaXNzZWRPcHBvcnR1bml0eVwiKXtcclxuICAgICAgICAgIHRoaXMucHJvY2Vzc1R5cGVOZXcgPSB0aGlzLmhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1MicgPyBgJHt0aGlzLmZlYXR1cmVDb25maWc/Lm1pc3NlZE9wcG9ydHVuaXR5RnJvbS52YWx1ZX0tJHt0aGlzLmZlYXR1cmVDb25maWc/Lm1pc3NlZE9wcG9ydHVuaXR5VG8udmFsdWV9IG1pbnNgIDonTWlzc2VkIE9wcG9ydHVuaXR5JyBcclxuICAgICAgICB9IFxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMucHJvY2Vzc1R5cGVOZXcgPSB0aGlzLm9iakRhdGFUcmFmZmljLnByb2Nlc3NUeXBlXHJcbiAgICAgIH1cclxuICAgIFxyXG4gICAgICAgIC8vIENyZWF0ZSBzZXJpZXNcclxuICAgICAgICB0aGlzLnNlcmllcyA9IHRoaXMuY2hhcnQuc2VyaWVzLnB1c2goXHJcbiAgICAgICAgICBhbTV4eS5Db2x1bW5TZXJpZXMubmV3KHRoaXMucm9vdCwge1xyXG4gICAgICAgICAgICBuYW1lOiBcIlNlcmllcyAxXCIsXHJcbiAgICAgICAgICAgIHhBeGlzOiB4QXhpcyxcclxuICAgICAgICAgICAgeUF4aXM6IHlBeGlzLFxyXG4gICAgICAgICAgICB2YWx1ZVlGaWVsZDogXCJ2YWx1ZVwiLFxyXG4gICAgICAgICAgICBjYXRlZ29yeVhGaWVsZDogXCJzdG9yZU5hbWVcIixcclxuICAgICAgICAgICAgdG9vbHRpcDogYW01LlRvb2x0aXAubmV3KHRoaXMucm9vdCwge1xyXG4gICAgICAgICAgICAgIGxhYmVsVGV4dDogYCR7KHRoaXMucHJvY2Vzc1R5cGVOZXcpfSwge2Z1bGxTdG9yZU5hbWV9OiB7dmFsdWVZfWAsXHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgICAgIHhBeGlzLmRhdGEuc2V0QWxsKGRhdGEpO1xyXG4gICAgICAgIHRoaXMuc2VyaWVzLmNvbHVtbnMudGVtcGxhdGUuc2V0QWxsKHsgc3Ryb2tlT3BhY2l0eTogMCB9KTtcclxuICAgICAgICB0aGlzLnNlcmllcy5jb2x1bW5zLnRlbXBsYXRlLmV2ZW50cy5vbihcImNsaWNrXCIsIChldjogYW55KSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBkYXRhSXRlbSA9IGV2LnRhcmdldC5kYXRhSXRlbS5kYXRhQ29udGV4dDtcclxuICAgICAgICAgIHRoaXMuaGFuZGxlQmFyQ2xpY2soZGF0YUl0ZW0pO1xyXG4gICAgICAgIH0pO1xyXG4gIFxyXG4gICAgICAgIHRoaXMuc2VyaWVzLmNvbHVtbnMudGVtcGxhdGUuc2V0QWxsKHsgc3Ryb2tlT3BhY2l0eTogMCB9KTtcclxuICBcclxuICAgICAgICB0aGlzLnNlcmllcy5kYXRhLnNldEFsbChkYXRhKTtcclxuICAgIC8vIFNldCB3aWR0aCBmb3IgY2hhcnQgY29udGFpbmVyIHRvIGVuYWJsZSBzY3JvbGxpbmdcclxuICAgIC8vIGNvbnN0IHRvdGFsQ291bnQgPSB0aGlzLnRvdGFsQ291bnQ7XHJcbiAgICAvLyBjb25zdCBpdGVtV2lkdGggPSA1MDsgLy8gV2lkdGggb2YgZWFjaCBpdGVtLCBhZGp1c3QgYXMgbmVlZGVkXHJcbiAgICAvLyBjb25zdCBtaW5XaWR0aCA9IHRvdGFsQ291bnQgKiBpdGVtV2lkdGg7IC8vIENhbGN1bGF0ZSB0b3RhbCB3aWR0aFxyXG4gICAgLy8gY2hhcnREaXYuc3R5bGUud2lkdGggPSBgJHtNYXRoLm1heChtaW5XaWR0aCwgMTAyNCl9cHhgOyAvLyBNaW5pbXVtIHdpZHRoIG9mIDgwMHB4XHJcbiAgICAgICAgLy8gTWFrZSBzdHVmZiBhbmltYXRlIG9uIGxvYWRcclxuICAgICAgICB0aGlzLnNlcmllcy5hcHBlYXIoMTAwMCk7XHJcbiAgICAgICAgdGhpcy5jaGFydC5hcHBlYXIoMTAwMCwgMTAwKTtcclxuICAgICAgfSwgMCk7XHJcbiAgICB9XHJcbiAgXHJcbiAgICBjYXBpdGFsaXplVGl0bGUodGV4dDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgcmV0dXJuIHRleHRcclxuICAgICAgICAudG9Mb3dlckNhc2UoKSAvLyBFbnN1cmUgdGhlIHN0cmluZyBpcyBpbiBsb3dlcmNhc2UgZmlyc3RcclxuICAgICAgICAuc3BsaXQoJyAnKSAgICAvLyBTcGxpdCB0aGUgc3RyaW5nIGludG8gd29yZHNcclxuICAgICAgICAubWFwKHdvcmQgPT4gd29yZC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHdvcmQuc2xpY2UoMSkpIC8vIENhcGl0YWxpemUgdGhlIGZpcnN0IGxldHRlciBvZiBlYWNoIHdvcmRcclxuICAgICAgICAuam9pbignICcpOyAgICAvLyBKb2luIHRoZSB3b3JkcyBiYWNrIHRvZ2V0aGVyXHJcbiAgICB9XHJcbiAgICBnZXRSYW5nZUNvbG9yKHJhdGU6IG51bWJlcik6IGFtNS5Db2xvciB7XHJcbiAgICAgIGxldCBjb2xvcjogYW01LkNvbG9yO1xyXG4gICAgICBpZiAocmF0ZSA+PSAwICYmIHJhdGUgPD0gMTApIHtcclxuICAgICAgICBjb2xvciA9IGFtNS5jb2xvcigweEVBRjhGRik7XHJcbiAgICAgIH0gZWxzZSBpZiAocmF0ZSA+IDEwICYmIHJhdGUgPD0gMjApIHtcclxuICAgICAgICBjb2xvciA9IGFtNS5jb2xvcigweENDRTlGRSk7XHJcbiAgICAgIH0gZWxzZSBpZiAocmF0ZSA+IDIwICYmIHJhdGUgPD0gMzApIHtcclxuICAgICAgICBjb2xvciA9IGFtNS5jb2xvcigweEIwRDZGQyk7XHJcbiAgICAgIH0gZWxzZSBpZiAocmF0ZSA+IDMwICYmIHJhdGUgPD0gNDApIHtcclxuICAgICAgICBjb2xvciA9IGFtNS5jb2xvcigweDk0QzJGQSk7XHJcbiAgICAgIH0gZWxzZSBpZiAocmF0ZSA+IDQwICYmIHJhdGUgPD0gNTUpIHtcclxuICAgICAgICBjb2xvciA9IGFtNS5jb2xvcigweDc4QTlGOCk7XHJcbiAgICAgIH0gZWxzZSBpZiAocmF0ZSA+IDU1ICYmIHJhdGUgPD0gNzUpIHtcclxuICAgICAgICBjb2xvciA9IGFtNS5jb2xvcigweDk5RDJGRCk7ICBcclxuICAgICAgfSBlbHNlIGlmIChyYXRlID4gNzUgJiYgcmF0ZSA8PSA5MCkge1xyXG4gICAgICAgIGNvbG9yID0gYW01LmNvbG9yKDB4NjZCQ0ZEKTsgICAgXHJcbiAgICAgIH0gIGVsc2UgaWYgKHJhdGUgPiA5MCAmJiByYXRlIDw9IDEwMCkge1xyXG4gICAgICAgIGNvbG9yID0gYW01LmNvbG9yKDB4MzQ2MEYzKTsgIFxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGNvbG9yID0gYW01LmNvbG9yKDB4RkZGKTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gY29sb3I7XHJcbiAgICB9XHJcbiAgICBpbml0SGVhdENoYXJ0KHNraXBMb2FkaW5nOiBib29sZWFuID0gZmFsc2UpIHtcclxuICAgICAgaWYgKCFza2lwTG9hZGluZykge1xyXG4gICAgICAgIHRoaXMuY2hhcnROb0RhdGEgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmNoYXJ0bG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGNoYXJ0RGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJoZWF0bWFwY2hhcnRcIik7XHJcbiAgICAgICAgaWYgKCFjaGFydERpdikge1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy5yb290Mikge1xyXG4gICAgICAgICAgdGhpcy5yb290Mi5kaXNwb3NlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIENyZWF0ZSByb290IGVsZW1lbnRcclxuICAgICAgICB0aGlzLnJvb3QyID0gYW01LlJvb3QubmV3KFwiaGVhdG1hcGNoYXJ0XCIpO1xyXG4gIFxyXG4gICAgICAgIHRoaXMucm9vdDIuY29udGFpbmVyLnNldEFsbCh7XHJcbiAgICAgICAgICB3aWR0aDogYW01LnBlcmNlbnQoMTAwKSxcclxuICAgICAgICB9KTtcclxuICBcclxuICAgICAgICAvLyBTZXQgdGhlbWVzXHJcbiAgICAgICAgdGhpcy5yb290Mi5zZXRUaGVtZXMoW1xyXG4gICAgICAgICAgYW01dGhlbWVzX0FuaW1hdGVkLm5ldyh0aGlzLnJvb3QyKSxcclxuICAgICAgICAgIGFtNXRoZW1lc19SZXNwb25zaXZlLm5ldyh0aGlzLnJvb3QyKSxcclxuICAgICAgICBdKTtcclxuICBcclxuICAgICAgICAvLyBDcmVhdGUgY2hhcnRcclxuICAgICAgICB0aGlzLmNoYXJ0MiA9IHRoaXMucm9vdDIuY29udGFpbmVyLmNoaWxkcmVuLnB1c2goXHJcbiAgICAgICAgICBhbTV4eS5YWUNoYXJ0Lm5ldyh0aGlzLnJvb3QyLCB7XHJcbiAgICAgICAgICAgIHBhblg6IGZhbHNlLFxyXG4gICAgICAgICAgICBwYW5ZOiBmYWxzZSxcclxuICAgICAgICAgICAgd2hlZWxYOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgd2hlZWxZOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgcGFkZGluZ0xlZnQ6IDAsXHJcbiAgICAgICAgICAgIGxheW91dDogdGhpcy5yb290Mi52ZXJ0aWNhbExheW91dCxcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICBcclxuICAgICAgICAvLyBDcmVhdGUgYXhlcyBhbmQgdGhlaXIgcmVuZGVyZXJzXHJcbiAgICAgICAgY29uc3QgeVJlbmRlcmVyID0gYW01eHkuQXhpc1JlbmRlcmVyWS5uZXcodGhpcy5yb290Miwge1xyXG4gICAgICAgICAgbWluR3JpZERpc3RhbmNlOiAyMCxcclxuICAgICAgICAgIGludmVyc2VkOiB0cnVlLFxyXG4gICAgICAgICAgb3Bwb3NpdGU6IHRydWUsXHJcbiAgICAgICAgICBtaW5vckdyaWRFbmFibGVkOiB0cnVlLFxyXG4gICAgICAgIH0pO1xyXG4gIFxyXG4gICAgICAgIHlSZW5kZXJlci5ncmlkLnRlbXBsYXRlLnNldChcInZpc2libGVcIiwgZmFsc2UpO1xyXG4gIFxyXG4gICAgICAgIGNvbnN0IHlBeGlzID0gdGhpcy5jaGFydDIueUF4ZXMucHVzaChcclxuICAgICAgICAgIGFtNXh5LkNhdGVnb3J5QXhpcy5uZXcodGhpcy5yb290Miwge1xyXG4gICAgICAgICAgICByZW5kZXJlcjogeVJlbmRlcmVyLFxyXG4gICAgICAgICAgICBjYXRlZ29yeUZpZWxkOiBcInRpbWVcIixcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICBcclxuICAgICAgICBjb25zdCB4UmVuZGVyZXIgPSBhbTV4eS5BeGlzUmVuZGVyZXJYLm5ldyh0aGlzLnJvb3QyLCB7XHJcbiAgICAgICAgICBtaW5HcmlkRGlzdGFuY2U6IDMwLFxyXG4gICAgICAgICAgb3Bwb3NpdGU6IHRydWUsXHJcbiAgICAgICAgICBtaW5vckdyaWRFbmFibGVkOiB0cnVlLFxyXG4gICAgICAgIH0pO1xyXG4gIFxyXG4gICAgICAgIHhSZW5kZXJlci5ncmlkLnRlbXBsYXRlLnNldChcInZpc2libGVcIiwgZmFsc2UpO1xyXG4gICAgICAgIC8vIEhpZGUgdGhlIG9uLWNoYXJ0IFwiSG91cmx5IERhdGFcIiBjYXRlZ29yeSBsYWJlbDsgdGhlIHBhbmVsIGhlYWRlciBhbHJlYWR5XHJcbiAgICAgICAgLy8gc2hvd3MgdGhlIFwiSG91cmx5IERhdGFcIiB0aXRsZSwgc28gdGhlIGF4aXMgbGFiZWwgaXMgYSBkdXBsaWNhdGUuXHJcbiAgICAgICAgeFJlbmRlcmVyLmxhYmVscy50ZW1wbGF0ZS5zZXQoXCJ2aXNpYmxlXCIsIGZhbHNlKTtcclxuXHJcbiAgICAgICAgY29uc3QgeEF4aXMgPSB0aGlzLmNoYXJ0Mi54QXhlcy5wdXNoKFxyXG4gICAgICAgICAgYW01eHkuQ2F0ZWdvcnlBeGlzLm5ldyh0aGlzLnJvb3QyLCB7XHJcbiAgICAgICAgICAgIHJlbmRlcmVyOiB4UmVuZGVyZXIsXHJcbiAgICAgICAgICAgIGNhdGVnb3J5RmllbGQ6IFwid2Vla2RheVwiLFxyXG4gICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gIFxyXG4gICAgICAgIC8vIENyZWF0ZSBzZXJpZXNcclxuICAgICAgICB0aGlzLnNlcmllczIgPSB0aGlzLmNoYXJ0Mi5zZXJpZXMucHVzaChcclxuICAgICAgICAgIGFtNXh5LkNvbHVtblNlcmllcy5uZXcodGhpcy5yb290Miwge1xyXG4gICAgICAgICAgICBjYWxjdWxhdGVBZ2dyZWdhdGVzOiB0cnVlLFxyXG4gICAgICAgICAgICBzdHJva2U6IGFtNS5jb2xvcigweGZmZmZmZiksXHJcbiAgICAgICAgICAgIGNsdXN0ZXJlZDogZmFsc2UsXHJcbiAgICAgICAgICAgIHhBeGlzOiB4QXhpcyxcclxuICAgICAgICAgICAgeUF4aXM6IHlBeGlzLFxyXG4gICAgICAgICAgICBjYXRlZ29yeVhGaWVsZDogXCJ3ZWVrZGF5XCIsXHJcbiAgICAgICAgICAgIGNhdGVnb3J5WUZpZWxkOiBcInRpbWVcIixcclxuICAgICAgICAgICAgdmFsdWVGaWVsZDogXCJyYXRlXCIsXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgdGhpcy5zZXJpZXMyLmNvbHVtbnMudGVtcGxhdGUuc2V0QWxsKHtcclxuICAgICAgICAgIHRvb2x0aXBUZXh0OiBcIntyYXRlfSVcIixcclxuICAgICAgICAgIHN0cm9rZU9wYWNpdHk6IDEsXHJcbiAgICAgICAgICBzdHJva2VXaWR0aDogMixcclxuICAgICAgICAgIHdpZHRoOiBhbTUucGVyY2VudCgxMDApLFxyXG4gICAgICAgICAgaGVpZ2h0OiBhbTUucGVyY2VudCgxMDApLFxyXG4gICAgICAgICAgZmlsbDogYW01LmNvbG9yKDB4ZmZmZmZmKSwgLy8gRGVmYXVsdCBjb2xvciBmb3IgY29sdW1uc1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIFxyXG4gICAgICAgIC8vIEFwcGx5IHJhbmdlLWJhc2VkIGNvbG9yIHJ1bGVzIGZvciBlYWNoIGRhdGEgaXRlbVxyXG4gICAgICAgIHRoaXMuc2VyaWVzMi5jb2x1bW5zLnRlbXBsYXRlLmFkYXB0ZXJzLmFkZChcImZpbGxcIiwgKGZpbGwsIHRhcmdldCkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgZGF0YUl0ZW0gPSB0YXJnZXQuZGF0YUl0ZW0/LmRhdGFDb250ZXh0IGFzIENoYXJ0RGF0YUl0ZW07IC8vIENhc3QgZGF0YUNvbnRleHQgdG8gQ2hhcnREYXRhSXRlbVxyXG4gICAgICAgICAgaWYgKGRhdGFJdGVtICYmIGRhdGFJdGVtLnJhdGUgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRSYW5nZUNvbG9yKGRhdGFJdGVtLnJhdGUpOyAvLyBHZXQgY29sb3IgYmFzZWQgb24gcmF0ZVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmV0dXJuIGZpbGw7XHJcbiAgICAgICAgfSk7XHJcbiAgXHJcbiAgICAgICAgdGhpcy5zZXJpZXMyLmJ1bGxldHMucHVzaCgoKSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gYW01LkJ1bGxldC5uZXcodGhpcy5yb290Miwge1xyXG4gICAgICAgICAgICBzcHJpdGU6IGFtNS5MYWJlbC5uZXcodGhpcy5yb290Miwge1xyXG4gICAgICAgICAgICAgIHRleHQ6IFwie3JhdGUuZm9ybWF0TnVtYmVyKCcjLiMnKX0lXCIsXHJcbiAgICAgICAgICAgICAgZmlsbDogYW01LmNvbG9yKDB4MDAwMDAwKSxcclxuICAgICAgICAgICAgICBjZW50ZXJZOiBhbTUucDUwLFxyXG4gICAgICAgICAgICAgIGNlbnRlclg6IGFtNS5wNTAsXHJcbiAgICAgICAgICAgICAgcG9wdWxhdGVUZXh0OiB0cnVlLFxyXG4gICAgICAgICAgICAgIGZvbnRTaXplOiAxMiwgLy8gUmVkdWNlIGZvbnQgc2l6ZVxyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG4gIFxyXG4gICAgICAgIC8vIFNldCBkYXRhXHJcbiAgICAgICAgY29uc3QgZGF0YSA9IHRoaXMuZ2V0T3ZlcmFsbEhvdXJseURhdGE/Lm1hcCgoaXRlbTogYW55KSA9PiAoe1xyXG4gICAgICAgICAgLi4uaXRlbSxcclxuICAgICAgICAgIHdlZWtkYXk6IFwiSG91cmx5IERhdGFcIixcclxuICAgICAgICB9KSk7XHJcbiAgICAgICAgdGhpcy5zZXJpZXMyLmRhdGEuc2V0QWxsKGRhdGEpO1xyXG4gIFxyXG4gICAgICAgIC8vIEF1dG8tcG9wdWxhdGUgWCBhbmQgWSBheGlzIGNhdGVnb3J5IGRhdGFcclxuICAgICAgICBjb25zdCB0aW1lczogc3RyaW5nW10gPSBbXTtcclxuICAgICAgICBhbTUuYXJyYXkuZWFjaChkYXRhLCBmdW5jdGlvbiAocm93OiBhbnkpIHtcclxuICAgICAgICAgIGlmICh0aW1lcy5pbmRleE9mKHJvdy50aW1lKSA9PT0gLTEpIHtcclxuICAgICAgICAgICAgdGltZXMucHVzaChyb3cudGltZSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgXHJcbiAgICAgICAgeEF4aXMuZGF0YS5zZXRBbGwoW3sgd2Vla2RheTogXCJIb3VybHkgRGF0YVwiIH1dKTsgLy8gU2V0IHNpbmdsZSBjYXRlZ29yeSBmb3IgeC1heGlzXHJcbiAgICAgICAgeUF4aXMuZGF0YS5zZXRBbGwoXHJcbiAgICAgICAgICB0aW1lcy5tYXAoZnVuY3Rpb24gKGl0ZW0pIHtcclxuICAgICAgICAgICAgcmV0dXJuIHsgdGltZTogaXRlbSB9O1xyXG4gICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gIFxyXG4gICAgICAgIHRoaXMuY2hhcnQyLmFwcGVhcigxMDAwLCAxMDApO1xyXG4gICAgICB9LCAwKTtcclxuICAgIH1cclxuICBcclxuICAgIG9uRGF0YXNldENoYW5nZShldmVudDogYW55KTogdm9pZCB7XHJcbiAgICAgIHRoaXMuZGV0YWlsZWRDaGFydHMgPSBmYWxzZTtcclxuICAgICAgLy8gY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxTZWxlY3RFbGVtZW50O1xyXG4gICAgICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBldmVudDtcclxuICAgICAgaWYgKHRoaXMuZm9vdGZhbGxWYWx1ZSA9PT0gXCJmb290ZmFsbFwiIHx8ICB0aGlzLmZvb3RmYWxsVmFsdWUgPT09IFwiY29udmVyc2lvblwiXHJcbiAgICAgICAgfHwgIHRoaXMuZm9vdGZhbGxWYWx1ZSA9PT0gXCJlbmdhZ2Vyc1wiIHx8ICB0aGlzLmZvb3RmYWxsVmFsdWUgPT09IFwiYm91bmNlZFwiXHJcbiAgICAgICAgfHwgIHRoaXMuZm9vdGZhbGxWYWx1ZSA9PT0gXCJwb3RlbnRpYWxCdXllclwiIHx8ICB0aGlzLmZvb3RmYWxsVmFsdWUgPT09IFwibWlzc2VkT3Bwb3J0dW5pdHlcIikge1xyXG4gICAgICAgIGlmICh0aGlzLnJvb3QpIHtcclxuICAgICAgICAgIHRoaXMucm9vdC5kaXNwb3NlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMub3ZlcmFsbEhvdXJseUNoYXJ0KCk7XHJcbiAgICAgICAgdGhpcy5vdmVyYWxsQ2hhcnQoKTtcclxuICAgICAgfSBlbHNlIGlmICh0aGlzLmZvb3RmYWxsVmFsdWUgPT09IFwiZGVtb2dyYXBoaWNcIikge1xyXG4gICAgICAgIC8vIERpc3Bvc2Ugb2YgYW55IHByZXZpb3VzIGNoYXJ0cyB0byBhdm9pZCBkdXBsaWNhdGVzXHJcbiAgICAgICAgaWYgKHRoaXMuZGVtb0dyYXBoaWNzcm9vdCkge1xyXG4gICAgICAgICAgdGhpcy5kZW1vR3JhcGhpY3Nyb290LmRpc3Bvc2UoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5nZXREZW1vR3JhcGhpY3MoKTtcclxuICAgICAgfSBcclxuICAgICAgZWxzZSBpZiAodGhpcy5mb290ZmFsbFZhbHVlID09PSBcImJ1eWVyXCIgJiYgdGhpcy5zZWxlY3RlZFRhYiAhPSAnbWlzc2VkT3Bwb3J0dW5pdHknKSB7XHJcbiAgICAgICAgLy8gRGlzcG9zZSBvZiBhbnkgcHJldmlvdXMgY2hhcnRzIHRvIGF2b2lkIGR1cGxpY2F0ZXNcclxuICAgICAgICBpZiAodGhpcy5idXllcnNyb290KSB7XHJcbiAgICAgICAgICB0aGlzLmJ1eWVyc3Jvb3QuZGlzcG9zZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmdldEJ1eWVycygpO1xyXG4gICAgICB9IFxyXG4gICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxuICBcclxuICAgYmFja1RvRm9vdGZhbGwoKSB7XHJcbiAgICB0aGlzLm9iakRhdGFUcmFmZmljLmxpbWl0ID0yMCxcclxuICAgICB0aGlzLm9iakRhdGFUcmFmZmljLnN0b3JlSWQgPSB0aGlzLmhlYWRlckRhdGEuc3RvcmVzLmZpbHRlcigoc3RvcmU6YW55KSA9PiBzdG9yZS5jaGVja2VkKS5tYXAoKHN0b3JlOmFueSkgPT4gc3RvcmUuc3RvcmVJZCksXHJcbiAgICAgdGhpcy5kZXRhaWxlZENoYXJ0cyA9IGZhbHNlO1xyXG4gICAgIHRoaXMub3ZlcmFsbEhvdXJseUNoYXJ0KCk7XHJcbiAgICAgdGhpcy5vdmVyYWxsQ2hhcnQoKTtcclxuICAgfVxyXG4gXHJcbiAgIGdldERlbW9HcmFwaGljcygpe1xyXG4gICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLmxpbWl0O1xyXG4gICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLm9mZnNldDtcclxuICAgICB0aGlzLmRlbW9Ob0RhdGEgPWZhbHNlO1xyXG4gICAgIHRoaXMuZGVtb2xvYWRpbmcgPSB0cnVlO1xyXG4gICAgIHRoaXMuc2VydmljZVxyXG4gICAgIC5nZXREZW1vR3JhcGhpY3NDaGFydCh0aGlzLm9iakRhdGFUcmFmZmljKVxyXG4gICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICA/LnN1YnNjcmliZSh7XHJcbiAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgdGhpcy5kZW1vR3JhcGhpY3NEYXRhID0gcmVzPy5kYXRhLmRlbW9ncmFwaGljRGF0YTtcclxuICAgICAgICAgICBcclxuICAgICAgICAgICB0aGlzLmRlbW9HcmFwaGljc0NoYXJ0KCk7XHJcbiAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7IFxyXG4gICAgICAgICAgIC8vIENhbGwgd2l0aCBhIGRlbGF5IHRvIGVuc3VyZSB0aGUgZWxlbWVudCBpcyBpbiB0aGUgRE9NXHJcbiAgICAgICAgICAgIHRoaXMuZGVtb05vRGF0YSA9ZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuZGVtb2xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICB0aGlzLmRlbW9Ob0RhdGEgPXRydWU7XHJcbiAgICAgICAgICAgdGhpcy5kZW1vbG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICB9XHJcbiAgICAgICB9LFxyXG4gICAgICAgZXJyb3I6IChlcnI6IGFueSkgPT4ge1xyXG4gICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgIH0sXHJcbiAgICAgICBjb21wbGV0ZTogKCkgPT4ge30sXHJcbiAgICAgfSk7XHJcbiAgICAgXHJcbiAgIH1cclxuICAgZGVtb0dyYXBoaWNzQ2hhcnQoKTogdm9pZCB7XHJcbiAgICAgdGhpcy5jaGFydE5vRGF0YSA9IGZhbHNlO1xyXG4gICAgIHRoaXMuY2hhcnRsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgdGhpcy5kZW1vTm9EYXRhID1mYWxzZTtcclxuICAgICB0aGlzLmRlbW9sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICBjb25zdCBkZW1vR3JhcGhpY3NEaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImRlbW9HcmFwaGljc1wiKTtcclxuICAgICAgIGlmICghZGVtb0dyYXBoaWNzRGl2KSB7XHJcbiAgICAgICAgIHJldHVybjtcclxuICAgICAgIH1cclxuICAgICAgIC8vIERpc3Bvc2Ugb2YgcHJldmlvdXMgY2hhcnQgaWYgaXQgZXhpc3RzXHJcbiAgICAgICBpZiAodGhpcy5kZW1vR3JhcGhpY3Nyb290KSB7XHJcbiAgICAgICAgIHRoaXMuZGVtb0dyYXBoaWNzcm9vdC5kaXNwb3NlKCk7XHJcbiAgICAgICB9XHJcbiBcclxuICAgICAgIC8vIENyZWF0ZSBhIG5ldyBjaGFydFxyXG4gICAgICAgdGhpcy5kZW1vR3JhcGhpY3Nyb290ID0gYW01LlJvb3QubmV3KGRlbW9HcmFwaGljc0Rpdik7XHJcbiAgICAgICB0aGlzLmRlbW9HcmFwaGljc3Jvb3Quc2V0VGhlbWVzKFtcclxuICAgICAgICAgYW01dGhlbWVzX0FuaW1hdGVkLm5ldyh0aGlzLmRlbW9HcmFwaGljc3Jvb3QpLFxyXG4gICAgICAgXSk7XHJcbiBcclxuICAgICAgIHRoaXMuZGVtb0dyYXBoaWNzQ2hhcnRJbnN0YW5jZSA9XHJcbiAgICAgICAgIHRoaXMuZGVtb0dyYXBoaWNzcm9vdC5jb250YWluZXIuY2hpbGRyZW4ucHVzaChcclxuICAgICAgICAgICBhbTV4eS5YWUNoYXJ0Lm5ldyh0aGlzLmRlbW9HcmFwaGljc3Jvb3QsIHtcclxuICAgICAgICAgICAgIHBhblg6IGZhbHNlLFxyXG4gICAgICAgICAgICAgcGFuWTogZmFsc2UsXHJcbiAgICAgICAgICAgICBwYWRkaW5nTGVmdDogMCxcclxuICAgICAgICAgICAgIHdoZWVsWDogXCJwYW5YXCIsXHJcbiAgICAgICAgICAgICB3aGVlbFk6IFwiem9vbVhcIixcclxuICAgICAgICAgICAgIGxheW91dDogdGhpcy5kZW1vR3JhcGhpY3Nyb290LnZlcnRpY2FsTGF5b3V0LFxyXG4gICAgICAgICAgIH0pXHJcbiAgICAgICAgICk7XHJcbiBcclxuICAgICAgIGxldCB4UmVuZGVyZXIgPSBhbTV4eS5BeGlzUmVuZGVyZXJYLm5ldyh0aGlzLmRlbW9HcmFwaGljc3Jvb3QsIHtcclxuICAgICAgICAgY2VsbFN0YXJ0TG9jYXRpb246IDAuMSxcclxuICAgICAgICAgY2VsbEVuZExvY2F0aW9uOiAwLjksXHJcbiAgICAgICAgIG1pbm9yR3JpZEVuYWJsZWQ6IHRydWUsXHJcbiAgICAgICB9KTtcclxuIFxyXG4gICAgICAgbGV0IHhBeGlzID0gdGhpcy5kZW1vR3JhcGhpY3NDaGFydEluc3RhbmNlLnhBeGVzLnB1c2goXHJcbiAgICAgICAgIGFtNXh5LkNhdGVnb3J5QXhpcy5uZXcodGhpcy5kZW1vR3JhcGhpY3Nyb290LCB7XHJcbiAgICAgICAgICAgY2F0ZWdvcnlGaWVsZDogXCJhZ2VcIixcclxuICAgICAgICAgICByZW5kZXJlcjogeFJlbmRlcmVyLFxyXG4gICAgICAgICAgIHRvb2x0aXA6IGFtNS5Ub29sdGlwLm5ldyh0aGlzLmRlbW9HcmFwaGljc3Jvb3QsIHt9KSxcclxuICAgICAgICAgfSlcclxuICAgICAgICk7XHJcbiAgICAgICB0aGlzLmRlbW9HcmFwaGljc0RhdGEgPSB0aGlzLmRlbW9HcmFwaGljc0RhdGE/Lm1hcChcclxuICAgICAgICAgKGl0ZW06IGFueSkgPT4gKHtcclxuICAgICAgICAgICBhZ2U6IGl0ZW0uYWdlLFxyXG4gICAgICAgICAgIGNvdW50OiBOdW1iZXIoaXRlbS5jb3VudCksXHJcbiAgICAgICAgICAgbWFsZUNvdW50OiBOdW1iZXIoaXRlbS5tYWxlQ291bnQpLFxyXG4gICAgICAgICAgIGZlbWFsZUNvdW50OiBOdW1iZXIoaXRlbS5mZW1hbGVDb3VudCksXHJcbiAgICAgICAgIH0pXHJcbiAgICAgICApO1xyXG4gICAgICAgeFJlbmRlcmVyLmdyaWQudGVtcGxhdGUuc2V0QWxsKHsgbG9jYXRpb246IDEgfSk7XHJcbiAgICAgICB4QXhpcy5kYXRhLnNldEFsbCh0aGlzLmRlbW9HcmFwaGljc0RhdGEpO1xyXG4gXHJcbiAgICAgICBsZXQgeUF4aXMgPSB0aGlzLmRlbW9HcmFwaGljc0NoYXJ0SW5zdGFuY2UueUF4ZXMucHVzaChcclxuICAgICAgICAgYW01eHkuVmFsdWVBeGlzLm5ldyh0aGlzLmRlbW9HcmFwaGljc3Jvb3QsIHtcclxuICAgICAgICAgICByZW5kZXJlcjogYW01eHkuQXhpc1JlbmRlcmVyWS5uZXcodGhpcy5kZW1vR3JhcGhpY3Nyb290LCB7XHJcbiAgICAgICAgICAgICBzdHJva2VPcGFjaXR5OiAwLjEsXHJcbiAgICAgICAgICAgfSksXHJcbiAgICAgICAgIH0pXHJcbiAgICAgICApO1xyXG4gICAgICAvLyBBZGQgbGVnZW5kXHJcbiAgICAgbGV0IGxlZ2VuZCA9IHRoaXMuZGVtb0dyYXBoaWNzQ2hhcnRJbnN0YW5jZS5jaGlsZHJlbi5wdXNoKFxyXG4gICAgICAgYW01LkxlZ2VuZC5uZXcodGhpcy5kZW1vR3JhcGhpY3Nyb290LCB7XHJcbiAgICAgICAgIHg6IGFtNS5wMTAwLCAgICAvLyBBbGlnbiB0byAxMDAlIHdpZHRoIChyaWdodCBzaWRlKVxyXG4gICAgICAgICB5OiBhbTUucDAsICAgICAgLy8gQWxpZ24gdG8gdGhlIHRvcFxyXG4gICAgICAgICBjZW50ZXJYOiBhbTUucDEwMCwgIC8vIEFsaWduIHRoZSBjZW50ZXIgb2YgdGhlIGxlZ2VuZCB0byBpdHMgcmlnaHRcclxuICAgICAgICAgY2VudGVyWTogYW01LnAwLCAgICAvLyBBbGlnbiB0aGUgdG9wIG9mIHRoZSBsZWdlbmQgdG8gdGhlIHRvcCBvZiB0aGUgY2hhcnRcclxuICAgICAgIH0pXHJcbiAgICAgKTtcclxuIFxyXG4gICAgIC8vIENyZWF0ZSB0aGUgc2VyaWVzIGFuZCBhZGQgZWFjaCB0byB0aGUgbGVnZW5kXHJcbiAgICAgY29uc3QgbWFsZVNlcmllcyA9IHRoaXMubWFrZVNlcmllcyhcIk1hbGVcIiwgXCJtYWxlQ291bnRcIiwgeEF4aXMsIHlBeGlzKTtcclxuICAgICBjb25zdCBmZW1hbGVTZXJpZXMgPSB0aGlzLm1ha2VTZXJpZXMoXCJGZW1hbGVcIiwgXCJmZW1hbGVDb3VudFwiLCB4QXhpcywgeUF4aXMpO1xyXG4gXHJcbiAgICAgbGVnZW5kLmRhdGEuc2V0QWxsKFttYWxlU2VyaWVzLCBmZW1hbGVTZXJpZXNdKTtcclxuICAgICAgIHRoaXMuZGVtb0dyYXBoaWNzQ2hhcnRJbnN0YW5jZS5hcHBlYXIoMTAwMCwgMTAwKTtcclxuIFxyXG4gICAgIH0sXHJcbiAgICAgICAgICAgIDApO1xyXG4gXHJcbiAgIH1cclxuICAgbWFrZVNlcmllcyhcclxuICAgICBuYW1lOiBhbnksXHJcbiAgICAgZmllbGROYW1lOiBhbnksXHJcbiAgICAgeEF4aXM6IGFtNXh5LkNhdGVnb3J5QXhpczxhbTV4eS5BeGlzUmVuZGVyZXI+LFxyXG4gICAgIHlBeGlzOiBhbTV4eS5WYWx1ZUF4aXM8YW01eHkuQXhpc1JlbmRlcmVyPlxyXG4gICApIHtcclxuICAgICBsZXQgc2VyaWVzID0gdGhpcy5kZW1vR3JhcGhpY3NDaGFydEluc3RhbmNlLnNlcmllcy5wdXNoKFxyXG4gICAgICAgYW01eHkuQ29sdW1uU2VyaWVzLm5ldyh0aGlzLmRlbW9HcmFwaGljc3Jvb3QsIHtcclxuICAgICAgICAgbmFtZTogbmFtZSxcclxuICAgICAgICAgeEF4aXM6IHhBeGlzLFxyXG4gICAgICAgICB5QXhpczogeUF4aXMsXHJcbiAgICAgICAgIHZhbHVlWUZpZWxkOiBmaWVsZE5hbWUsXHJcbiAgICAgICAgIGNhdGVnb3J5WEZpZWxkOiBcImFnZVwiLFxyXG4gICAgICAgfSlcclxuICAgICApO1xyXG4gICBcclxuICAgICBzZXJpZXMuY29sdW1ucy50ZW1wbGF0ZS5zZXRBbGwoe1xyXG4gICAgICAgdG9vbHRpcFRleHQ6IFwie25hbWV9LCB7Y2F0ZWdvcnlYfToge3ZhbHVlWX1cIixcclxuICAgICAgIHdpZHRoOiBhbTUucGVyY2VudCg5MCksXHJcbiAgICAgICB0b29sdGlwWTogMCxcclxuICAgICAgIHN0cm9rZU9wYWNpdHk6IDAsXHJcbiAgICAgfSk7XHJcbiAgIFxyXG4gICAgIHNlcmllcy5kYXRhLnNldEFsbCh0aGlzLmRlbW9HcmFwaGljc0RhdGEpO1xyXG4gICAgIHNlcmllcy5hcHBlYXIoKTtcclxuICAgXHJcbiAgICAgcmV0dXJuIHNlcmllczsgIC8vIFJldHVybiB0aGUgc2VyaWVzIHRvIGFkZCBpdCB0byB0aGUgbGVnZW5kXHJcbiAgIH1cclxuICAgZ2V0QnV5ZXJzKCl7XHJcbiAgICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMubGltaXQ7XHJcbiAgICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMub2Zmc2V0O1xyXG4gICAgIHRoaXMuYnV5ZXJzbG9hZGluZyA9IHRydWU7XHJcbiAgICAgdGhpcy5idXllcnNOb0RhdGEgPWZhbHNlO1xyXG4gICAgIHRoaXMuc2VydmljZVxyXG4gICAgIC5nZXRCdXllcnNDaGFydCh0aGlzLm9iakRhdGFUcmFmZmljKVxyXG4gICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICA/LnN1YnNjcmliZSh7XHJcbiAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgdGhpcy5idXllcnNEYXRhID0gcmVzPy5kYXRhLmJ1eWVyRGF0YTtcclxuICAgICAgICAgIFxyXG4gICAgICAgICAgdGhpcy5nZXRCdXllcnNDaGFydCgpOyAvLyBDYWxsIHdpdGggYSBkZWxheSB0byBlbnN1cmUgdGhlIGVsZW1lbnQgaXMgaW4gdGhlIERPTVxyXG4gICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7IFxyXG4gICAgICAgICAgdGhpcy5idXllcnNOb0RhdGEgPWZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5idXllcnNsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgIH0gZWxzZXtcclxuICAgICAgICAgICB0aGlzLmJ1eWVyc2xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICB0aGlzLmJ1eWVyc05vRGF0YSA9dHJ1ZTtcclxuICAgICAgICAgfVxyXG4gICAgICAgfSxcclxuICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICB9LFxyXG4gICAgICAgY29tcGxldGU6ICgpID0+IHt9LFxyXG4gICAgIH0pO1xyXG4gICB9XHJcbiAgIGdldEJ1eWVyc0NoYXJ0KCk6IHZvaWQge1xyXG4gICAgIHRoaXMuY2hhcnROb0RhdGEgPSBmYWxzZTtcclxuICAgICB0aGlzLmNoYXJ0bG9hZGluZyA9IGZhbHNlO1xyXG4gICAgIHRoaXMuYnV5ZXJzTm9EYXRhID1mYWxzZTtcclxuICAgICB0aGlzLmJ1eWVyc2xvYWRpbmcgPSBmYWxzZTtcclxuICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICBjb25zdCBidXllcnNEaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImJ1eWVyc0NoYXJ0c1wiKTtcclxuICAgICBpZiAoIWJ1eWVyc0Rpdikge1xyXG4gICAgICAgcmV0dXJuO1xyXG4gICAgIH1cclxuIFxyXG4gICAgIC8vIERpc3Bvc2Ugb2YgcHJldmlvdXMgY2hhcnQgaWYgaXQgZXhpc3RzXHJcbiAgICAgaWYgKHRoaXMuYnV5ZXJzcm9vdCkge1xyXG4gICAgICAgdGhpcy5idXllcnNyb290LmRpc3Bvc2UoKTtcclxuICAgICB9XHJcbiBcclxuICAgICAvLyBDcmVhdGUgYSBuZXcgY2hhcnRcclxuICAgICB0aGlzLmJ1eWVyc3Jvb3QgPSBhbTUuUm9vdC5uZXcoYnV5ZXJzRGl2KTtcclxuICAgICB0aGlzLmJ1eWVyc3Jvb3Quc2V0VGhlbWVzKFtcclxuICAgICAgIGFtNXRoZW1lc19BbmltYXRlZC5uZXcodGhpcy5idXllcnNyb290KSxcclxuICAgICBdKTtcclxuIFxyXG4gICAgIHRoaXMuYnV5ZXJzQ2hhcnRJbnN0YW5jZSA9XHJcbiAgICAgICB0aGlzLmJ1eWVyc3Jvb3QuY29udGFpbmVyLmNoaWxkcmVuLnB1c2goXHJcbiAgICAgICAgIGFtNXh5LlhZQ2hhcnQubmV3KHRoaXMuYnV5ZXJzcm9vdCwge1xyXG4gICAgICAgICAgIHBhblg6IGZhbHNlLFxyXG4gICAgICAgICAgIHBhblk6IGZhbHNlLFxyXG4gICAgICAgICAgIHBhZGRpbmdMZWZ0OiAwLFxyXG4gICAgICAgICAgIHdoZWVsWDogXCJwYW5YXCIsXHJcbiAgICAgICAgICAgd2hlZWxZOiBcInpvb21YXCIsXHJcbiAgICAgICAgICAgbGF5b3V0OiB0aGlzLmJ1eWVyc3Jvb3QudmVydGljYWxMYXlvdXQsXHJcbiAgICAgICAgIH0pXHJcbiAgICAgICApO1xyXG4gXHJcbiAgICAgbGV0IHhSZW5kZXJlciA9IGFtNXh5LkF4aXNSZW5kZXJlclgubmV3KHRoaXMuYnV5ZXJzcm9vdCwge1xyXG4gICAgICAgY2VsbFN0YXJ0TG9jYXRpb246IDAuMSxcclxuICAgICAgIGNlbGxFbmRMb2NhdGlvbjogMC45LFxyXG4gICAgICAgbWlub3JHcmlkRW5hYmxlZDogdHJ1ZSxcclxuICAgICB9KTtcclxuIFxyXG4gICAgIGxldCB4QXhpcyA9IHRoaXMuYnV5ZXJzQ2hhcnRJbnN0YW5jZS54QXhlcy5wdXNoKFxyXG4gICAgICAgYW01eHkuQ2F0ZWdvcnlBeGlzLm5ldyh0aGlzLmJ1eWVyc3Jvb3QsIHtcclxuICAgICAgICAgY2F0ZWdvcnlGaWVsZDogXCJhZ2VcIixcclxuICAgICAgICAgcmVuZGVyZXI6IHhSZW5kZXJlcixcclxuICAgICAgICAgdG9vbHRpcDogYW01LlRvb2x0aXAubmV3KHRoaXMuYnV5ZXJzcm9vdCwge30pLFxyXG4gICAgICAgfSlcclxuICAgICApO1xyXG4gICAgIHRoaXMuYnV5ZXJzRGF0YSA9IHRoaXMuYnV5ZXJzRGF0YT8ubWFwKFxyXG4gICAgICAgKGl0ZW06IGFueSkgPT4gKHtcclxuICAgICAgICAgYWdlOiBpdGVtLmFnZSxcclxuICAgICAgICAgc2luZ2xlQ291bnQ6IE51bWJlcihpdGVtLnNpbmdsZUNvdW50KSxcclxuICAgICAgICAgZ3JvdXBDb3VudDogTnVtYmVyKGl0ZW0uZ3JvdXBDb3VudCksXHJcbiAgICAgICB9KVxyXG4gICAgICk7XHJcbiAgICAgeFJlbmRlcmVyLmdyaWQudGVtcGxhdGUuc2V0QWxsKHsgbG9jYXRpb246IDEgfSk7XHJcbiAgICAgeEF4aXMuZGF0YS5zZXRBbGwodGhpcy5idXllcnNEYXRhKTtcclxuIFxyXG4gICAgIGxldCB5QXhpcyA9IHRoaXMuYnV5ZXJzQ2hhcnRJbnN0YW5jZS55QXhlcy5wdXNoKFxyXG4gICAgICAgYW01eHkuVmFsdWVBeGlzLm5ldyh0aGlzLmJ1eWVyc3Jvb3QsIHtcclxuICAgICAgICAgcmVuZGVyZXI6IGFtNXh5LkF4aXNSZW5kZXJlclkubmV3KHRoaXMuYnV5ZXJzcm9vdCwge1xyXG4gICAgICAgICAgIHN0cm9rZU9wYWNpdHk6IDAuMSxcclxuICAgICAgICAgfSksXHJcbiAgICAgICB9KVxyXG4gICAgICk7XHJcbiAgICAgbGV0IGxlZ2VuZCA9IHRoaXMuYnV5ZXJzQ2hhcnRJbnN0YW5jZS5jaGlsZHJlbi5wdXNoKFxyXG4gICAgICAgYW01LkxlZ2VuZC5uZXcodGhpcy5idXllcnNyb290LCB7XHJcbiAgICAgICAgIHg6IGFtNS5wMTAwLCAgICAvLyBBbGlnbiB0byAxMDAlIHdpZHRoIChyaWdodCBzaWRlKVxyXG4gICAgIHk6IGFtNS5wMCwgICAgICAvLyBBbGlnbiB0byB0aGUgdG9wXHJcbiAgICAgY2VudGVyWDogYW01LnAxMDAsICAvLyBBbGlnbiB0aGUgY2VudGVyIG9mIHRoZSBsZWdlbmQgdG8gaXRzIHJpZ2h0XHJcbiAgICAgY2VudGVyWTogYW01LnAwLCAgICAvLyBBbGlnbiB0aGUgdG9wIG9mIHRoZSBsZWdlbmQgdG8gdGhlIHRvcCBvZiB0aGUgY2hhcnRcclxuICAgICAgIH0pXHJcbiAgICAgKTtcclxuICAgICBcclxuICAgY29uc3Qgc2luZ2xlQ291bnQgPSAgdGhpcy5nZXRCdXllclNlcmllcyhcIlNpbmdsZVwiLCBcInNpbmdsZUNvdW50XCIsIHhBeGlzLCB5QXhpcyk7XHJcbiAgIGNvbnN0IGdyb3VwQ291bnQgPSAgdGhpcy5nZXRCdXllclNlcmllcyhcIkdyb3VwXCIsIFwiZ3JvdXBDb3VudFwiLCB4QXhpcywgeUF4aXMpO1xyXG4gICAgIGxlZ2VuZC5kYXRhLnNldEFsbChbc2luZ2xlQ291bnQsIGdyb3VwQ291bnRdKTtcclxuICAgICB0aGlzLmJ1eWVyc0NoYXJ0SW5zdGFuY2UuYXBwZWFyKDEwMDAsIDEwMCk7XHJcbiAgIH0sMCk7XHJcbiB9XHJcbiBnZXRCdXllclNlcmllcyhcclxuICAgbmFtZTogc3RyaW5nLFxyXG4gICBmaWVsZE5hbWU6IHN0cmluZyxcclxuICAgeEF4aXM6IGFtNXh5LkNhdGVnb3J5QXhpczxhbTV4eS5BeGlzUmVuZGVyZXI+LFxyXG4gICB5QXhpczogYW01eHkuVmFsdWVBeGlzPGFtNXh5LkF4aXNSZW5kZXJlcj5cclxuICkge1xyXG4gICBsZXQgc2VyaWVzID0gdGhpcy5idXllcnNDaGFydEluc3RhbmNlLnNlcmllcy5wdXNoKFxyXG4gICAgIGFtNXh5LkNvbHVtblNlcmllcy5uZXcodGhpcy5idXllcnNyb290LCB7XHJcbiAgICAgICBuYW1lOiBuYW1lLFxyXG4gICAgICAgeEF4aXM6IHhBeGlzLFxyXG4gICAgICAgeUF4aXM6IHlBeGlzLFxyXG4gICAgICAgdmFsdWVZRmllbGQ6IGZpZWxkTmFtZSxcclxuICAgICAgIGNhdGVnb3J5WEZpZWxkOiBcImFnZVwiLCAgLy8gQXNzdW1pbmcgXCJhZ2VcIiBpcyB0aGUgY2F0ZWdvcnkgZmllbGRcclxuICAgICB9KVxyXG4gICApO1xyXG4gXHJcbiAgIHNlcmllcy5jb2x1bW5zLnRlbXBsYXRlLnNldEFsbCh7XHJcbiAgICAgdG9vbHRpcFRleHQ6IFwie25hbWV9OiB7dmFsdWVZfVwiLFxyXG4gICAgIHdpZHRoOiBhbTUucGVyY2VudCg5MCksXHJcbiAgICAgdG9vbHRpcFk6IDAsXHJcbiAgICAgc3Ryb2tlT3BhY2l0eTogMCxcclxuICAgfSk7XHJcbiBcclxuICAgc2VyaWVzLmRhdGEuc2V0QWxsKHRoaXMuYnV5ZXJzRGF0YSk7ICAvLyBBc3N1bWluZyB5b3UgaGF2ZSBidXllcnNEYXRhXHJcbiBcclxuICAgcmV0dXJuIHNlcmllczsgIC8vIFJldHVybiB0aGUgc2VyaWVzIGZvciBsZWdlbmRcclxuIFxyXG4gfVxyXG4gb2JqRGF0YVRyYWZmaWM6YW55PXt9O1xyXG4gICAgb3ZlcmFsbENhcmQoKSB7XHJcbiAgICAgICh0aGlzLm9iakRhdGFUcmFmZmljLmxpbWl0ID0gMTApLCAodGhpcy5vYmpEYXRhVHJhZmZpYy5vZmZzZXQgPSAwKTtcclxuICAgICAgKHRoaXMub2JqRGF0YVRyYWZmaWMuY29udmVyc2lvbnR5cGUgPSB0aGlzLnRhYmxlb2JqLmNvbnZlcnNpb250eXBlKTtcclxuICAgICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMubm9ybWFsaXplZERhdGE7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLnJldmVudWU7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLmhvdXJGb3JtYXQ7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLmRhdGVSYW5nZTtcclxuICAgICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAgICAgLmdldE92ZXJhbGxDYXJkcyh0aGlzLm9iakRhdGFUcmFmZmljKVxyXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgICA/LnN1YnNjcmliZSh7XHJcbiAgICAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7ICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0T3ZlcmFsbENhcmREYXRhID0gcmVzPy5kYXRhOyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgY29tcGxldGU6ICgpID0+IHt9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gIFxyXG4gICAgZ2V0IHNlbGVjdGVkSG91ckJ1Y2tldExhYmVsKCk6IHN0cmluZyB7XHJcbiAgICAgIGNvbnN0IG9wdCA9IHRoaXMuaG91ckJ1Y2tldE9wdGlvbnM/LmZpbmQoKG86IGFueSkgPT4gby52YWx1ZSA9PT0gdGhpcy5ob3VyQnVja2V0VmFsdWUpO1xyXG4gICAgICByZXR1cm4gb3B0ID8gb3B0LmxhYmVsIDogXCIxIEhvdXJcIjtcclxuICAgIH1cclxuICAgIG9uSG91ckJ1Y2tldENoYW5nZSh2YWx1ZTogbnVtYmVyKTogdm9pZCB7XHJcbiAgICAgIGlmICh0aGlzLmhvdXJCdWNrZXRWYWx1ZSA9PT0gdmFsdWUpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5ob3VyQnVja2V0VmFsdWUgPSB2YWx1ZTtcclxuICAgICAgLy8gT25seSByZWZldGNoIHRoZSBob3VybHkgaGVhdG1hcC4gUGFzcyBza2lwTG9hZGluZyBzbyB0aGUgc2hhcmVkXHJcbiAgICAgIC8vIGNoYXJ0bG9hZGluZyBmbGFnIGlzbid0IHRvZ2dsZWQsIG90aGVyd2lzZSB0aGUgKm5nSWYgd3JhcHBpbmcgdGhlIHdob2xlXHJcbiAgICAgIC8vIGZvb3RmYWxsIHNlY3Rpb24gdW5tb3VudHMgdGhlIGNlbnRlciBjaGFydCAoI3Rlc3RHcmFwaGljcykgYW5kIGl0IG5ldmVyXHJcbiAgICAgIC8vIHJlcGFpbnRzIChvbmx5IHRoZSBoZWF0bWFwIGlzIHJlLXJlbmRlcmVkIG9uIGEgYnVja2V0IGNoYW5nZSkuXHJcbiAgICAgIHRoaXMub3ZlcmFsbEhvdXJseUNoYXJ0KHRydWUpO1xyXG4gICAgfVxyXG4gICAgb3ZlcmFsbEhvdXJseUNoYXJ0KHNraXBMb2FkaW5nOiBib29sZWFuID0gZmFsc2UpIHtcclxuICAgICAgaWYgKCFza2lwTG9hZGluZykge1xyXG4gICAgICAgIHRoaXMuY2hhcnROb0RhdGEgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmNoYXJ0bG9hZGluZyA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgICAgKHRoaXMub2JqRGF0YVRyYWZmaWMubGltaXQgPSAxMCksICh0aGlzLm9iakRhdGFUcmFmZmljLm9mZnNldCA9IDApO1xyXG4gICAgICBkZWxldGUgdGhpcy5vYmpEYXRhVHJhZmZpYy5ub3JtYWxpemVkRGF0YTtcclxuICAgICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMucmV2ZW51ZTtcclxuICBkZWxldGUgdGhpcy5vYmpEYXRhVHJhZmZpYy5ob3VyRm9ybWF0XHJcbiAgICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLmRhdGVSYW5nZTtcclxuICAgICAgdGhpcy5vYmpEYXRhVHJhZmZpYy5jb3VudHJ5ID0gdGhpcy5oZWFkZXJEYXRhPy5jb3VudHJ5LmZpbHRlcigoY291bnRyaWVzOmFueSkgPT4gY291bnRyaWVzLmNoZWNrZWQpLm1hcCgoY291bnRyaWVzOmFueSkgPT4gY291bnRyaWVzLmNvdW50cnkpO1xyXG4gICAgICAvLyBob3VyQnVja2V0IGlzIG9ubHkgdmFsaWQgZm9yIHRoZSBob3VybHkgY2hhcnQgQVBJLiBTZW5kIGl0IG9uIGEgY29weSBzbyBpdFxyXG4gICAgICAvLyBuZXZlciBsZWFrcyBpbnRvIHRoZSBzaGFyZWQgb2JqRGF0YVRyYWZmaWMgdXNlZCBieSBvdmVyYWxsQ2hhcnRfdjMgZXRjLlxyXG4gICAgICBjb25zdCBob3VybHlSZXF1ZXN0RGF0YSA9IHsgLi4udGhpcy5vYmpEYXRhVHJhZmZpYywgaG91ckJ1Y2tldDogdGhpcy5ob3VyQnVja2V0VmFsdWUgfTtcclxuICAgICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAgICAgLmdldE92ZXJhbGxIb3VybHlDaGFydChob3VybHlSZXF1ZXN0RGF0YSlcclxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgIGlmKHJlcz8uZGF0YT8uaG91cmx5RGF0YT8ubGVuZ3RoID4gMCl7XHJcbiAgICAgICAgICAgICAgICBpZiAoIXNraXBMb2FkaW5nKSB7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuY2hhcnROb0RhdGEgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5jaGFydGxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0T3ZlcmFsbEhvdXJseURhdGEgPSByZXM/LmRhdGE/LmhvdXJseURhdGE7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmluaXRIZWF0Q2hhcnQoc2tpcExvYWRpbmcpO1xyXG4gICAgICAgICAgICAgIH0gZWxzZXtcclxuICAgICAgICAgICAgICAgIC8vIE9uIGEgYnVja2V0IGNoYW5nZSBrZWVwIHRoZSBzZWN0aW9uIG1vdW50ZWQgKGRvbid0IGZsaXAgdGhlXHJcbiAgICAgICAgICAgICAgICAvLyBzaGFyZWQgbm8tZGF0YSBmbGFnLCB3aGljaCB3b3VsZCB1bm1vdW50IHRoZSBjZW50ZXIgY2hhcnQpO1xyXG4gICAgICAgICAgICAgICAgLy8ganVzdCBjbGVhciBhbmQgcmVwYWludCBhbiBlbXB0eSBoZWF0bWFwLlxyXG4gICAgICAgICAgICAgICAgaWYgKCFza2lwTG9hZGluZykge1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmNoYXJ0Tm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5jaGFydGxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0T3ZlcmFsbEhvdXJseURhdGE9W107XHJcbiAgICAgICAgICAgICAgICBpZiAoc2tpcExvYWRpbmcpIHtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5pbml0SGVhdENoYXJ0KHNraXBMb2FkaW5nKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIGlmICghc2tpcExvYWRpbmcpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuY2hhcnROb0RhdGEgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jaGFydGxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgdGhpcy5nZXRPdmVyYWxsSG91cmx5RGF0YT1bXTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgY29tcGxldGU6ICgpID0+IHt9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgb3ZlcmFsbENoYXJ0KCkge1xyXG4gICAgICB0aGlzLm9mZnNldFRyYWZmaWNDYXJkID0wO1xyXG4gICAgICB0aGlzLmxpbWl0VHJhZmZpY0NhcmQgPTIwO1xyXG4gICAgICB0aGlzLmNoYXJ0Tm9EYXRhID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuY2hhcnRsb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgKHRoaXMub2JqRGF0YVRyYWZmaWMubGltaXQgPSAyMCksICh0aGlzLm9iakRhdGFUcmFmZmljLm9mZnNldCA9IDApO1xyXG4gICAgICBkZWxldGUgdGhpcy5vYmpEYXRhVHJhZmZpYy5ub3JtYWxpemVkRGF0YTtcclxuICAgICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMucmV2ZW51ZTtcclxuICAgICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMuaG91ckZvcm1hdDtcclxuICAgICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMuZGF0ZVJhbmdlO1xyXG4gICAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgICAuZ2V0T3ZlcmFsbENoYXJ0KHRoaXMub2JqRGF0YVRyYWZmaWMpXHJcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLGRlYm91bmNlVGltZSgzMDApKVxyXG4gICAgICAgID8uc3Vic2NyaWJlKHtcclxuICAgICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgICB0aGlzLmdldE92ZXJhbGxDaGFydERhdGEgPSByZXM/LmRhdGE7XHJcbiAgICAgICAgICAgICAgdGhpcy50b3RhbEl0ZW1zVHJhZmZpY0NhcmQgPSByZXMuZGF0YS50b3RhbENvdW50XHJcbiAgICAgICAgICAgICAgdGhpcy5jaGFydE5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIHRoaXMuY2hhcnRsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgdGhpcy5pbml0Q2hhcnQoKTtcclxuICAgICAgICB0aGlzLnNldFBhZ2luYXRpb25TaXplc1RyYWZmaWNDYXJkKCk7XHJcbiAgICAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5jaGFydE5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgdGhpcy5jaGFydGxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgY29tcGxldGU6ICgpID0+IHt9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgc2V0UGFnaW5hdGlvblNpemVzVHJhZmZpY0NhcmQoKSB7XHJcbiAgICAgIGlmICh0aGlzLnRvdGFsSXRlbXNUcmFmZmljQ2FyZCA+IDIwKSB7XHJcbiAgICAgICAgdGhpcy5wYWdpbmF0aW9uU2l6ZXNUcmFmZmljQ2FyZCA9IFsyMF07XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5wYWdpbmF0aW9uU2l6ZXNUcmFmZmljQ2FyZCA9IFt0aGlzLnRvdGFsSXRlbXNUcmFmZmljQ2FyZF07IC8vIEp1c3Qgb25lIG9wdGlvbiBpZiBsZXNzIHRoYW4gMTBcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnBhZ2VTaXplVHJhZmZpY0NhcmQgPSB0aGlzLnBhZ2luYXRpb25TaXplc1RyYWZmaWNDYXJkWzBdO1xyXG4gICAgfVxyXG4gICAgb25QYWdlQ2hhbmdlVHJhZmZpY0NhcmQocGFnZU9mZnNldDogbnVtYmVyKSB7XHJcbiAgICAgIHRoaXMub2Zmc2V0VHJhZmZpY0NhcmQgPSBOdW1iZXIocGFnZU9mZnNldCk7XHJcbiAgICAgIHRoaXMub2JqRGF0YVRyYWZmaWMub2Zmc2V0ID0gdGhpcy5vZmZzZXRUcmFmZmljQ2FyZCAtMTtcclxuICAgICAgdGhpcy5vYmpEYXRhVHJhZmZpYy5saW1pdCA9IHRoaXMubGltaXRUcmFmZmljQ2FyZDtcclxuICAgICAgZGVsZXRlIHRoaXMub2JqRGF0YVRyYWZmaWMubm9ybWFsaXplZERhdGE7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLnJldmVudWU7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLmhvdXJGb3JtYXQ7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLm9iakRhdGFUcmFmZmljLmRhdGVSYW5nZTtcclxuICAgICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAgIC5nZXRPdmVyYWxsQ2hhcnQodGhpcy5vYmpEYXRhVHJhZmZpYylcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLGRlYm91bmNlVGltZSgzMDApKVxyXG4gICAgICA/LnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgdGhpcy5nZXRPdmVyYWxsQ2hhcnREYXRhID0gcmVzPy5kYXRhO1xyXG4gICAgICAgICAgICB0aGlzLnRvdGFsSXRlbXNUcmFmZmljQ2FyZCA9IHJlcy5kYXRhLnRvdGFsQ291bnRcclxuICAgICAgICAgICAgdGhpcy5jaGFydE5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmNoYXJ0bG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmluaXRDaGFydCgpO1xyXG4gICAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuY2hhcnROb0RhdGEgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmNoYXJ0bG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChlcnI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBjb21wbGV0ZTogKCkgPT4ge30sXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIFxyXG4gICAgb25QYWdlU2l6ZUNoYW5nZVRyYWZmaWNDYXJkKHBhZ2VTaXplOiBudW1iZXIpIHtcclxuICAgICAgdGhpcy5wYWdlU2l6ZVRyYWZmaWNDYXJkID0gTnVtYmVyKHBhZ2VTaXplKTtcclxuICAgICAgdGhpcy5saW1pdFRyYWZmaWNDYXJkID0gTnVtYmVyKHBhZ2VTaXplKTtcclxuICAgICAgdGhpcy5jdXJyZW50UGFnZVRyYWZmaWNDYXJkID0gMTtcclxuICAgICAgdGhpcy5vZmZzZXRUcmFmZmljQ2FyZCA9IDA7XHJcbiAgICAgIHRoaXMub2JqRGF0YVRyYWZmaWMub2Zmc2V0ID0gdGhpcy5vZmZzZXRUcmFmZmljQ2FyZDtcclxuICAgICAgdGhpcy5vYmpEYXRhVHJhZmZpYy5saW1pdCA9IHRoaXMubGltaXRUcmFmZmljQ2FyZDtcclxuICAgICAgdGhpcy5vdmVyYWxsQ2hhcnQoKTtcclxuICAgIH1cclxuXHJcbiAgICB0cmFmZmljSGVhdENoYXJ0KCkge1xyXG4gICAgICB0aGlzLmNoYXJ0Tm9EYXRhID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuY2hhcnRsb2FkaW5nID0gZmFsc2U7XHJcbiAgICBcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgY2hhcnREaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInRyYWZmaWNIZWF0bWFwQ2hhcnRcIik7XHJcbiAgICAgICAgaWYgKCFjaGFydERpdikge1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgIC8vIERpc3Bvc2Ugb2YgdGhlIHByZXZpb3VzIGNoYXJ0IGluc3RhbmNlIGlmIGl0IGV4aXN0c1xyXG4gICAgICAgIGlmICh0aGlzLmhlYXRNYXBSb290KSB7XHJcbiAgICAgICAgICB0aGlzLmhlYXRNYXBSb290LmRpc3Bvc2UoKTtcclxuICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAvLyBJbml0aWFsaXplIHRoZSBjaGFydCByb290XHJcbiAgICAgICAgdGhpcy5oZWF0TWFwUm9vdCA9IGFtNS5Sb290Lm5ldyhcInRyYWZmaWNIZWF0bWFwQ2hhcnRcIik7XHJcbiAgICAgICAgdGhpcy5oZWF0TWFwUm9vdC5jb250YWluZXIuc2V0QWxsKHtcclxuICAgICAgICAgIHdpZHRoOiBhbTUucGVyY2VudCgxMDApLFxyXG4gICAgICAgIH0pO1xyXG4gICAgXHJcbiAgICAgICAgLy8gQXBwbHkgdGhlbWVzXHJcbiAgICAgICAgdGhpcy5oZWF0TWFwUm9vdC5zZXRUaGVtZXMoW1xyXG4gICAgICAgICAgYW01dGhlbWVzX0FuaW1hdGVkLm5ldyh0aGlzLmhlYXRNYXBSb290KSxcclxuICAgICAgICAgIGFtNXRoZW1lc19SZXNwb25zaXZlLm5ldyh0aGlzLmhlYXRNYXBSb290KSxcclxuICAgICAgICBdKTtcclxuICAgIFxyXG4gICAgICAgIC8vIENyZWF0ZSB0aGUgY2hhcnRcclxuICAgICAgICB0aGlzLmhlYXRNYXBDaGFydCA9IHRoaXMuaGVhdE1hcFJvb3QuY29udGFpbmVyLmNoaWxkcmVuLnB1c2goXHJcbiAgICAgICAgICBhbTV4eS5YWUNoYXJ0Lm5ldyh0aGlzLmhlYXRNYXBSb290LCB7XHJcbiAgICAgICAgICAgIHBhblg6IGZhbHNlLFxyXG4gICAgICAgICAgICBwYW5ZOiBmYWxzZSxcclxuICAgICAgICAgICAgd2hlZWxYOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgd2hlZWxZOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgcGFkZGluZ0xlZnQ6IDAsXHJcbiAgICAgICAgICAgIGxheW91dDogdGhpcy5oZWF0TWFwUm9vdC52ZXJ0aWNhbExheW91dCxcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgIFxyXG4gICAgICAgIC8vIENyZWF0ZSBZLWF4aXNcclxuICAgICAgICBjb25zdCB5UmVuZGVyZXIgPSBhbTV4eS5BeGlzUmVuZGVyZXJZLm5ldyh0aGlzLmhlYXRNYXBSb290LCB7XHJcbiAgICAgICAgICB2aXNpYmxlOiBmYWxzZSxcclxuICAgICAgICAgIG1pbkdyaWREaXN0YW5jZTogMzAsXHJcbiAgICAgICAgICBpbnZlcnNlZDogdHJ1ZSxcclxuICAgICAgICAgIG1pbm9yR3JpZEVuYWJsZWQ6IHRydWUsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgeVJlbmRlcmVyLmdyaWQudGVtcGxhdGUuc2V0KFwidmlzaWJsZVwiLCBmYWxzZSk7XHJcbiAgICBcclxuICAgICAgICBjb25zdCB5QXhpcyA9IHRoaXMuaGVhdE1hcENoYXJ0LnlBeGVzLnB1c2goXHJcbiAgICAgICAgICBhbTV4eS5DYXRlZ29yeUF4aXMubmV3KHRoaXMuaGVhdE1hcFJvb3QsIHtcclxuICAgICAgICAgICAgbWF4RGV2aWF0aW9uOiAwLFxyXG4gICAgICAgICAgICByZW5kZXJlcjogeVJlbmRlcmVyLFxyXG4gICAgICAgICAgICBjYXRlZ29yeUZpZWxkOiBcImhvdXJcIixcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgIFxyXG4gICAgICAgIC8vIENyZWF0ZSBYLWF4aXNcclxuICAgICAgICBjb25zdCB4UmVuZGVyZXIgPSBhbTV4eS5BeGlzUmVuZGVyZXJYLm5ldyh0aGlzLmhlYXRNYXBSb290LCB7XHJcbiAgICAgICAgICB2aXNpYmxlOiBmYWxzZSxcclxuICAgICAgICAgIG1pbkdyaWREaXN0YW5jZTogMzAsXHJcbiAgICAgICAgICBtaW5vckdyaWRFbmFibGVkOiB0cnVlLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHhSZW5kZXJlci5ncmlkLnRlbXBsYXRlLnNldChcInZpc2libGVcIiwgZmFsc2UpO1xyXG4gICAgXHJcbiAgICAgICAgY29uc3QgeEF4aXMgPSB0aGlzLmhlYXRNYXBDaGFydC54QXhlcy5wdXNoKFxyXG4gICAgICAgICAgYW01eHkuQ2F0ZWdvcnlBeGlzLm5ldyh0aGlzLmhlYXRNYXBSb290LCB7XHJcbiAgICAgICAgICAgIHJlbmRlcmVyOiB4UmVuZGVyZXIsXHJcbiAgICAgICAgICAgIGNhdGVnb3J5RmllbGQ6IFwid2Vla2RheVwiLFxyXG4gICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgXHJcbiAgICAgICAgLy8gQWRkIFktYXhpcyBsYWJlbFxyXG4gICAgICAgIHlBeGlzLmNoaWxkcmVuLnVuc2hpZnQoXHJcbiAgICAgICAgICBhbTUuTGFiZWwubmV3KHRoaXMuaGVhdE1hcFJvb3QsIHtcclxuICAgICAgICAgICAgcm90YXRpb246IC05MCxcclxuICAgICAgICAgICAgdGV4dDogXCJIb3Vyc1wiLFxyXG4gICAgICAgICAgICB5OiBhbTUucDUwLFxyXG4gICAgICAgICAgICBjZW50ZXJYOiBhbTUucDUwLFxyXG4gICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsXCIsXHJcbiAgICAgICAgICAgIGZvbnRTaXplOiBcIjE0cHhcIixcclxuICAgICAgICAgICAgZmlsbDogYW01LmNvbG9yKDB4MDAwMDAwKSxcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgIFxyXG4gICAgICAgIC8vIENyZWF0ZSBzZXJpZXNcclxuICAgICAgICB0aGlzLmhlYXRNYXBTZXJpZXMgPSB0aGlzLmhlYXRNYXBDaGFydC5zZXJpZXMucHVzaChcclxuICAgICAgICAgIGFtNXh5LkNvbHVtblNlcmllcy5uZXcodGhpcy5oZWF0TWFwUm9vdCwge1xyXG4gICAgICAgICAgICBjYWxjdWxhdGVBZ2dyZWdhdGVzOiB0cnVlLFxyXG4gICAgICAgICAgICBzdHJva2U6IGFtNS5jb2xvcigweGZmZmZmZiksXHJcbiAgICAgICAgICAgIGNsdXN0ZXJlZDogZmFsc2UsXHJcbiAgICAgICAgICAgIHhBeGlzOiB4QXhpcyxcclxuICAgICAgICAgICAgeUF4aXM6IHlBeGlzLFxyXG4gICAgICAgICAgICBjYXRlZ29yeVhGaWVsZDogXCJ3ZWVrZGF5XCIsXHJcbiAgICAgICAgICAgIGNhdGVnb3J5WUZpZWxkOiBcImhvdXJcIixcclxuICAgICAgICAgICAgdmFsdWVGaWVsZDogXCJ2YWx1ZVwiLFxyXG4gICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgICAgIFxyXG4gICAgICAgIC8vIENvbmZpZ3VyZSBjb2x1bW4gYXBwZWFyYW5jZVxyXG4gICAgICAgIHRoaXMuaGVhdE1hcFNlcmllcy5jb2x1bW5zLnRlbXBsYXRlLnNldEFsbCh7XHJcbiAgICAgICAgICB0b29sdGlwVGV4dDogXCJ7dmFsdWV9XCIsXHJcbiAgICAgICAgICBzdHJva2VPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgc3Ryb2tlV2lkdGg6IDIsXHJcbiAgICAgICAgICB3aWR0aDogYW01LnBlcmNlbnQoMTAwKSxcclxuICAgICAgICAgIGhlaWdodDogYW01LnBlcmNlbnQoMTAwKSxcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgdGhpcy5oZWF0TWFwU2VyaWVzLmNvbHVtbnMudGVtcGxhdGUuYWRhcHRlcnMuYWRkKFwiZmlsbFwiLCAoZmlsbCwgdGFyZ2V0KSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBkYXRhSXRlbSA9IHRhcmdldC5kYXRhSXRlbT8uZGF0YUNvbnRleHQgYXMgeyB2YWx1ZTogbnVtYmVyIH07XHJcbiAgICAgICAgICByZXR1cm4gZGF0YUl0ZW0gJiYgZGF0YUl0ZW0udmFsdWUgIT09IHVuZGVmaW5lZCA/IHRoaXMuZ2V0UmFuZ2VDb2xvckR5bmFtaWMoZGF0YUl0ZW0udmFsdWUpIDogZmlsbDtcclxuICAgICAgICB9KTtcclxuICAgIFxyXG4gICAgICAgIC8vIFNldCBjb2x1bW4gY29sb3IgYmFzZWQgb24gdmFsdWVcclxuICAgICAgICAgICAgLy8gdGhpcy5oZWF0TWFwU2VyaWVzLmNvbHVtbnMudGVtcGxhdGUuYWRhcHRlcnMuYWRkKFwiZmlsbFwiLCAoZmlsbCwgdGFyZ2V0KSA9PiB7XHJcbiAgICAgICAgICAgIC8vICAgY29uc3QgZGF0YUl0ZW0gPSB0YXJnZXQuZGF0YUl0ZW0/LmRhdGFDb250ZXh0IGFzIHsgdmFsdWU6IG51bWJlciB9O1xyXG4gICAgICAgICAgICAvLyAgIHJldHVybiBkYXRhSXRlbSAmJiBkYXRhSXRlbS52YWx1ZSAhPT0gdW5kZWZpbmVkID8gdGhpcy5nZXRSYW5nZUNvbG9yMShkYXRhSXRlbS52YWx1ZSkgOiBmaWxsO1xyXG4gICAgICAgICAgICAvLyB9KTtcclxuICAgICAgICBcclxuICAgIFxyXG4gICAgICAgIC8vIEFkZCBidWxsZXQgZm9yIHZhbHVlIGxhYmVsc1xyXG4gICAgICAgIHRoaXMuaGVhdE1hcFNlcmllcy5idWxsZXRzLnB1c2goKCkgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIGFtNS5CdWxsZXQubmV3KHRoaXMuaGVhdE1hcFJvb3QsIHtcclxuICAgICAgICAgICAgc3ByaXRlOiBhbTUuTGFiZWwubmV3KHRoaXMuaGVhdE1hcFJvb3QsIHtcclxuICAgICAgICAgICAgICB0ZXh0OiBcInt2YWx1ZX1cIixcclxuICAgICAgICAgICAgICBmaWxsOiBhbTUuY29sb3IoMHgwMDAwMDApLFxyXG4gICAgICAgICAgICAgIGNlbnRlclk6IGFtNS5wNTAsXHJcbiAgICAgICAgICAgICAgY2VudGVyWDogYW01LnA1MCxcclxuICAgICAgICAgICAgICBwb3B1bGF0ZVRleHQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgZm9udFNpemU6IDEyLFxyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgXHJcbiAgICAgICAgLy8gUHJlcGFyZSBhbmQgc29ydCBkYXRhIGZvciB0aGUgY2hhcnRcclxuICAgICAgICBjb25zdCBoZWF0TWFwRGF0YTogYW55W10gPSBbXTtcclxuICAgICAgICBpZiAodGhpcy5nZXRGb290ZmFsbERlbnNpdHlEd2VsbERhdGEgJiYgdGhpcy5nZXRGb290ZmFsbERlbnNpdHlEd2VsbERhdGEudHJhZmZpY0RlbnNpdHkpIHtcclxuICAgICAgICAgIE9iamVjdC5rZXlzKHRoaXMuZ2V0Rm9vdGZhbGxEZW5zaXR5RHdlbGxEYXRhLnRyYWZmaWNEZW5zaXR5KS5mb3JFYWNoKGhvdXIgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmdldEZvb3RmYWxsRGVuc2l0eUR3ZWxsRGF0YS50cmFmZmljRGVuc2l0eVtob3VyXS5mb3JFYWNoKChkYXlEYXRhOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICBoZWF0TWFwRGF0YS5wdXNoKHtcclxuICAgICAgICAgICAgICAgIGhvdXI6IGRheURhdGEudGltZSxcclxuICAgICAgICAgICAgICAgIHdlZWtkYXk6IGRheURhdGEuZGF5LFxyXG4gICAgICAgICAgICAgICAgdmFsdWU6IHBhcnNlSW50KGRheURhdGEuZm9vdGZhbGxDb3VudCwgMTApLCAvLyBFbnN1cmUgaW50ZWdlciBwYXJzaW5nXHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXCJUcmFmZmljIGRlbnNpdHkgZGF0YSBpcyB1bmRlZmluZWQgb3IgbnVsbC5cIik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIC8vIFNldCBkYXRhIHRvIHRoZSBzZXJpZXNcclxuICAgICAgICB0aGlzLmhlYXRNYXBTZXJpZXMuZGF0YS5zZXRBbGwoaGVhdE1hcERhdGEpO1xyXG5cclxuICAgICAgICBjb25zdCB2aXNpYmxlVmFsdWVzID0gdGhpcy5oZWF0TWFwU2VyaWVzLmRhdGEudmFsdWVzLm1hcCgoZDphbnkpID0+IGQudmFsdWUpO1xyXG5cclxuICAgICAgICB0aGlzLm1heEZvb3RmYWxsID0gTWF0aC5tYXgoLi4udmlzaWJsZVZhbHVlcyk7XHJcbiAgICAgICAgdGhpcy5taW5Gb290ZmFsbCA9IE1hdGgubWluKC4uLnZpc2libGVWYWx1ZXMpO1xyXG5cclxuICAgICAgICAvLyBFeHRyYWN0IHVuaXF1ZSB3ZWVrZGF5cyBhbmQgaG91cnMsIHNvcnRlZFxyXG4gICAgICAgIGNvbnN0IHdlZWtkYXlzOiBzdHJpbmdbXSA9IEFycmF5LmZyb20obmV3IFNldChoZWF0TWFwRGF0YS5tYXAocm93ID0+IHJvdy53ZWVrZGF5KSkpO1xyXG4gICAgICAgIGNvbnN0IGhvdXJzOiBzdHJpbmdbXSA9IEFycmF5LmZyb20obmV3IFNldChoZWF0TWFwRGF0YS5tYXAocm93ID0+IHJvdy5ob3VyKSkpXHJcbiAgICAgICAgICAuc29ydCgoYSwgYikgPT4gYS5sb2NhbGVDb21wYXJlKGIpKTtcclxuICAgIFxyXG4gICAgICAgIC8vIFNldCBheGlzIGRhdGFcclxuICAgICAgICB4QXhpcy5kYXRhLnNldEFsbChcclxuICAgICAgICAgIHdlZWtkYXlzLm1hcChpdGVtID0+ICh7IHdlZWtkYXk6IGl0ZW0gfSkpXHJcbiAgICAgICAgKTtcclxuICAgIFxyXG4gICAgICAgIHlBeGlzLmRhdGEuc2V0QWxsKFxyXG4gICAgICAgICAgaG91cnMubWFwKGl0ZW0gPT4gKHsgaG91cjogaXRlbSB9KSlcclxuICAgICAgICApO1xyXG4gICAgXHJcbiAgICAgICAgLy8gRmluYWxpemUgY2hhcnQgYXBwZWFyYW5jZVxyXG4gICAgICAgIHRoaXMuaGVhdE1hcENoYXJ0LmFwcGVhcigxMDAwLCAxMDApO1xyXG4gICAgXHJcbiAgICAgICAgLy8gRW5zdXJlIHRoZSByb290IGlzIGFzc2lnbmVkIGNvcnJlY3RseVxyXG4gICAgICAgIHRoaXMuaGVhdE1hcFJvb3QgPSB0aGlzLmhlYXRNYXBSb290O1xyXG4gICAgXHJcbiAgICAgIH0sIDApO1xyXG4gIH1cclxuICBcclxuXHJcbiAgZ2V0UmFuZ2VDb2xvckR5bmFtaWMoZm9vdGZhbGxDb3VudDogbnVtYmVyKTogYW01LkNvbG9yIHtcclxuICAgIGxldCBtaW5Gb290ZmFsbCA9IHRoaXMubWluRm9vdGZhbGwgPz8gMDtcclxuICAgIGxldCBtYXhGb290ZmFsbCA9IHRoaXMubWF4Rm9vdGZhbGwgPz8gMTtcclxuICBcclxuICAgIGlmIChtYXhGb290ZmFsbCA9PT0gbWluRm9vdGZhbGwpIHJldHVybiBhbTUuY29sb3IoMHgwMDhlZGYpOyAvLyBQcmV2ZW50IGRpdmlzaW9uIGJ5IHplcm9cclxuICAgIGNvbnN0IG5vcm1hbGl6ZWRWYWx1ZSA9IChmb290ZmFsbENvdW50IC0gbWluRm9vdGZhbGwpIC8gKG1heEZvb3RmYWxsIC0gbWluRm9vdGZhbGwpO1xyXG4gICAgY29uc3QgY2xhbXBlZFZhbHVlID0gTWF0aC5taW4oTWF0aC5tYXgobm9ybWFsaXplZFZhbHVlLCAwKSwgMC41KTtcclxuICAgIGNvbnN0IGFkanVzdGVkVmFsdWUgPSBNYXRoLnBvdyhjbGFtcGVkVmFsdWUsIDAuNSk7ICAvLyBJbmNyZWFzZSBwb3dlciB0byBkYXJrZW4gZmFzdGVyXHJcbiAgICBjb25zdCBiYXNlQ29sb3IgPSBhbTUuY29sb3IoMHgwMDhlZGYpOyAgLy8gU3RhcnRpbmcgY29sb3IgKGxpZ2h0IGJsdWUpXHJcbiAgICBjb25zdCBhZGp1c3RlZENvbG9yID0gYW01LkNvbG9yLmxpZ2h0ZW4oYmFzZUNvbG9yLCAxIC0gYWRqdXN0ZWRWYWx1ZSk7XHJcbiAgICByZXR1cm4gYWRqdXN0ZWRDb2xvcjtcclxuICB9XHJcblxyXG5cclxuICAgIGdldFJhbmdlQ29sb3IxKGZvb3RmYWxsQ291bnQ6IG51bWJlcik6IGFtNS5Db2xvciB7XHJcbiAgICAgIGxldCBtYXhGb290ZmFsbDphbnk7XHJcbiAgICAgIGNvbnN0IG1pbkZvb3RmYWxsID0gMDsgIC8vIG1pbmltdW0gZXhwZWN0ZWQgZm9vdGZhbGxcclxuICAgICAgaWYodGhpcy5vYmpEYXRhVHJhZmZpYy5kYXRlUmFuZ2UgPTMwKVxyXG4gICAgICBtYXhGb290ZmFsbCA9IDM1MDA7XHJcbiAgICBlbHNlIFxyXG4gICAgbWF4Rm9vdGZhbGwgPSA3NTA7XHJcbiAgICAgIGNvbnN0IG5vcm1hbGl6ZWRWYWx1ZSA9IChmb290ZmFsbENvdW50IC0gbWluRm9vdGZhbGwpIC8gKG1heEZvb3RmYWxsIC0gbWluRm9vdGZhbGwpO1xyXG4gICAgICBjb25zdCBjbGFtcGVkVmFsdWUgPSBNYXRoLm1pbihNYXRoLm1heChub3JtYWxpemVkVmFsdWUsIDApLCAwLjUpO1xyXG4gICAgICBjb25zdCBhZGp1c3RlZFZhbHVlID0gTWF0aC5wb3coY2xhbXBlZFZhbHVlLCAwLjUpOyAgLy8gSW5jcmVhc2UgcG93ZXIgdG8gZGFya2VuIGZhc3RlclxyXG4gICAgICBjb25zdCBiYXNlQ29sb3IgPSBhbTUuY29sb3IoMHgwMDhlZGYpOyAgLy8gU3RhcnRpbmcgY29sb3IgKGxpZ2h0IGJsdWUpXHJcbiAgICAgIGNvbnN0IGFkanVzdGVkQ29sb3IgPSBhbTUuQ29sb3IubGlnaHRlbihiYXNlQ29sb3IsIDEgLSBhZGp1c3RlZFZhbHVlKTtcclxuICAgICAgcmV0dXJuIGFkanVzdGVkQ29sb3I7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIFxyXG4gICAgICBnZXREd2VsbENoYXJ0KCkge1xyXG4gICAgICAgIHRoaXMuY2hhcnREd2VsbE5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmNoYXJ0RHdlbGxsb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgIGNvbnN0IGNoYXJ0RGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJkd2VsbEJhckNoYXJ0XCIpO1xyXG4gICAgICAgICAgaWYgKCFjaGFydERpdikge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAodGhpcy5kd2VsbFJvb3QpIHtcclxuICAgICAgICAgICAgdGhpcy5kd2VsbFJvb3QuZGlzcG9zZSgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLy8gQ3JlYXRlIHJvb3QgZWxlbWVudFxyXG4gICAgICAgICAgdGhpcy5kd2VsbFJvb3QgPSBhbTUuUm9vdC5uZXcoXCJkd2VsbEJhckNoYXJ0XCIpO1xyXG4gICAgXHJcbiAgICAgICAgICAvLyBTZXQgdGhlbWVzXHJcbiAgICAgICAgICB0aGlzLmR3ZWxsUm9vdC5zZXRUaGVtZXMoW2FtNXRoZW1lc19BbmltYXRlZC5uZXcodGhpcy5kd2VsbFJvb3QpXSk7XHJcbiAgICBcclxuICAgICAgICAgIC8vIENyZWF0ZSBjaGFydFxyXG4gICAgICAgICAgdGhpcy5kd2VsbENoYXJ0ID0gdGhpcy5kd2VsbFJvb3QuY29udGFpbmVyLmNoaWxkcmVuLnB1c2goXHJcbiAgICAgICAgICAgIGFtNXh5LlhZQ2hhcnQubmV3KHRoaXMuZHdlbGxSb290LCB7XHJcbiAgICAgICAgICAgICAgcGFuWDogZmFsc2UsXHJcbiAgICAgICAgICAgICAgcGFuWTogZmFsc2UsXHJcbiAgICAgICAgICAgICAgd2hlZWxYOiBcInBhblhcIixcclxuICAgICAgICAgICAgICB3aGVlbFk6IFwiem9vbVhcIixcclxuICAgICAgICAgICAgICBwYWRkaW5nTGVmdDogMCxcclxuICAgICAgICAgICAgICBsYXlvdXQ6IHRoaXMuZHdlbGxSb290LnZlcnRpY2FsTGF5b3V0LFxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgKTtcclxuICAgIFxyXG4gICAgICAgICBsZXQgZGF0YSA9IHRoaXMuZ2V0RGVuc2l0eUR3ZWxsRGF0YS5kd2VsbFRpbWVTcGxpdD8ubWFwKFxyXG4gICAgICAgICAgICAoaXRlbTogYW55KSA9PiAoe1xyXG4gICAgICAgICAgICAgIHllYXI6IChpdGVtLmR3ZWxsX3RpbWUpICsgXCIgTWluc1wiLFxyXG4gICAgICAgICAgICAgIG1hbGVDb3VudDogTnVtYmVyKGl0ZW0ubWFsZUNvdW50X3ZhbHVlKSxcclxuICAgICAgICAgICAgICBtYWxlQ3VzdG9tOiBOdW1iZXIoaXRlbS5tYWxlQ291bnQpLFxyXG4gICAgICAgICAgICAgIGZlbWFsZUNvdW50OiBOdW1iZXIoaXRlbS5mZW1hbGVDb3VudF92YWx1ZSksXHJcbiAgICAgICAgICAgICAgZmVtYWxlQ3VzdG9tOiBOdW1iZXIoaXRlbS5mZW1hbGVDb3VudClcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAvLyBDcmVhdGUgYXhlc1xyXG4gICAgICAgICAgbGV0IHhSZW5kZXJlciA9IGFtNXh5LkF4aXNSZW5kZXJlclgubmV3KHRoaXMuZHdlbGxSb290LCB7XHJcbiAgICAgICAgICAgIG1pbkdyaWREaXN0YW5jZTogMzAsXHJcbiAgICAgICAgICAgIG1pbm9yR3JpZEVuYWJsZWQ6IHRydWUsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIGxldCB4QXhpcyA9IHRoaXMuZHdlbGxDaGFydC54QXhlcy5wdXNoKFxyXG4gICAgICAgICAgICBhbTV4eS5DYXRlZ29yeUF4aXMubmV3KHRoaXMuZHdlbGxSb290LCB7XHJcbiAgICAgICAgICAgICAgY2F0ZWdvcnlGaWVsZDogXCJ5ZWFyXCIsXHJcbiAgICAgICAgICAgICAgcmVuZGVyZXI6IHhSZW5kZXJlcixcclxuICAgICAgICAgICAgICB0b29sdGlwOiBhbTUuVG9vbHRpcC5uZXcodGhpcy5kd2VsbFJvb3QsIHt9KSxcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICk7XHJcbiAgICBcclxuICAgICAgICAgIHhSZW5kZXJlci5ncmlkLnRlbXBsYXRlLnNldEFsbCh7XHJcbiAgICAgICAgICAgIGxvY2F0aW9uOiAxLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICBcclxuICAgICAgICAgIHhBeGlzLmRhdGE/LnNldEFsbChkYXRhKTtcclxuICAgIFxyXG4gICAgICAgICAgbGV0IHlBeGlzID0gdGhpcy5kd2VsbENoYXJ0LnlBeGVzLnB1c2goXHJcbiAgICAgICAgICAgIGFtNXh5LlZhbHVlQXhpcy5uZXcodGhpcy5kd2VsbFJvb3QsIHtcclxuICAgICAgICAgICAgICBtaW46IDAsXHJcbiAgICAgICAgICAgICAgcmVuZGVyZXI6IGFtNXh5LkF4aXNSZW5kZXJlclkubmV3KHRoaXMuZHdlbGxSb290LCB7XHJcbiAgICAgICAgICAgICAgICBzdHJva2VPcGFjaXR5OiAwLjEsXHJcbiAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICApO1xyXG4gICAgXHJcbiAgICAgICAgICAvLyBBZGQgbGVnZW5kXHJcbiAgICAgICAgICBsZXQgbGVnZW5kID0gdGhpcy5kd2VsbENoYXJ0LmNoaWxkcmVuLnB1c2goXHJcbiAgICAgICAgICAgIGFtNS5MZWdlbmQubmV3KHRoaXMuZHdlbGxSb290LCB7XHJcbiAgICAgICAgICAgICAgY2VudGVyWDogYW01LnA1MCxcclxuICAgICAgICAgICAgICB4OiBhbTUucDUwLFxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgKTtcclxuICAgIFxyXG4gICAgICAgICAgLy8gQWRkIHNlcmllc1xyXG4gICAgICAgICAgLy8gY29uc3QgXHJcbiAgICAgICAgIFxyXG4gICAgICAgICAgdGhpcy5tYWtlU2VyaWVzMShcIk1hbGVcIiwgXCJtYWxlQ291bnRcIiwgeEF4aXMsIHlBeGlzLCBkYXRhLCBsZWdlbmQpO1xyXG4gICAgICAgICAgdGhpcy5tYWtlU2VyaWVzMShcIkZlbWFsZVwiLCBcImZlbWFsZUNvdW50XCIsIHhBeGlzLCB5QXhpcywgZGF0YSwgbGVnZW5kKTtcclxuICAgICAgICAgIC8vIE1ha2Ugc3R1ZmYgYW5pbWF0ZSBvbiBsb2FkXHJcbiAgICAgICAgICB0aGlzLmR3ZWxsQ2hhcnQuYXBwZWFyKDEwMDAsIDEwMCk7XHJcbiAgICAgICAgfSwgMTAwKTtcclxuICAgICAgfVxyXG4gICAgICBtYWtlU2VyaWVzMShuYW1lOiBzdHJpbmcsIGZpZWxkTmFtZTogc3RyaW5nLCB4QXhpczogYW55LCB5QXhpczogYW55LCBkYXRhOiBhbnksIGxlZ2VuZDogYW55KSB7XHJcbiAgICAgICAgbGV0IHNlcmllcyA9IHRoaXMuZHdlbGxDaGFydC5zZXJpZXMucHVzaChcclxuICAgICAgICAgIGFtNXh5LkNvbHVtblNlcmllcy5uZXcodGhpcy5kd2VsbFJvb3QsIHtcclxuICAgICAgICAgICAgbmFtZTogbmFtZSxcclxuICAgICAgICAgICAgc3RhY2tlZDogdHJ1ZSxcclxuICAgICAgICAgICAgeEF4aXM6IHhBeGlzLFxyXG4gICAgICAgICAgICB5QXhpczogeUF4aXMsXHJcbiAgICAgICAgICAgIHZhbHVlWUZpZWxkOiBmaWVsZE5hbWUsXHJcbiAgICAgICAgICAgIGNhdGVnb3J5WEZpZWxkOiBcInllYXJcIixcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgICAgXHJcbiAgICAgICAgc2VyaWVzLmNvbHVtbnMudGVtcGxhdGUuc2V0QWxsKHtcclxuICAgICAgICAgIHRvb2x0aXBUZXh0OiBgW2JvbGRde25hbWV9Wy9dXFxue2NhdGVnb3J5WH0sXFxuRm9vdGZhbGwgJToge2N1c3RvbVZhbHVlfSVgLFxyXG4gICAgICAgICAgdG9vbHRpcFk6IGFtNS5wZXJjZW50KDEwKSxcclxuICAgICAgICB9KTtcclxuICAgICAgXHJcbiAgICAgICAgaWYgKGRhdGE/Lmxlbmd0aCkge1xyXG4gICAgICAgICAgY29uc3QgZW5oYW5jZWREYXRhID0gZGF0YS5tYXAoKGQ6IGFueSkgPT4gKHtcclxuICAgICAgICAgICAgLi4uZCxcclxuICAgICAgICAgICAgY3VzdG9tVmFsdWU6IGRbZmllbGROYW1lID09PSBcIm1hbGVDb3VudFwiID8gXCJtYWxlQ3VzdG9tXCIgOiBcImZlbWFsZUN1c3RvbVwiXVxyXG4gICAgICAgICAgfSkpO1xyXG4gICAgICAgICAgc2VyaWVzLmRhdGEuc2V0QWxsKGVuaGFuY2VkRGF0YSk7XHJcbiAgICAgICAgfVxyXG4gICAgICBcclxuICAgICAgICBzZXJpZXMuYnVsbGV0cy5wdXNoKCgpID0+IHtcclxuICAgICAgICAgIGxldCBsYWJlbCA9IGFtNS5MYWJlbC5uZXcodGhpcy5kd2VsbFJvb3QsIHtcclxuICAgICAgICAgICAgdGV4dDogXCJ7dmFsdWVZfVwiLFxyXG4gICAgICAgICAgICBmaWxsOiB0aGlzLmR3ZWxsUm9vdC5pbnRlcmZhY2VDb2xvcnMuZ2V0KFwiYWx0ZXJuYXRpdmVUZXh0XCIpLFxyXG4gICAgICAgICAgICBjZW50ZXJZOiBhbTUucDUwLFxyXG4gICAgICAgICAgICBjZW50ZXJYOiBhbTUucDUwLFxyXG4gICAgICAgICAgICBwb3B1bGF0ZVRleHQ6IHRydWUsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgXHJcbiAgICAgICAgICBsYWJlbC5hZGFwdGVycy5hZGQoXCJ2aXNpYmxlXCIsICh2aXNpYmxlLCB0YXJnZXQpID0+IHtcclxuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSAodGFyZ2V0LmRhdGFJdGVtPy5kYXRhQ29udGV4dCBhcyBhbnkpPy5bZmllbGROYW1lXTtcclxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlICE9PSAwO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgIFxyXG4gICAgICAgICAgcmV0dXJuIGFtNS5CdWxsZXQubmV3KHRoaXMuZHdlbGxSb290LCB7XHJcbiAgICAgICAgICAgIHNwcml0ZTogbGFiZWwsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9KTtcclxuICAgICAgXHJcbiAgICAgICAgaWYgKGxlZ2VuZCkge1xyXG4gICAgICAgICAgbGVnZW5kLmRhdGEucHVzaChzZXJpZXMpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgXHJcbiAgICAgIFxyXG4gICAgICBzdG9yZU5hbWU6YW55O1xyXG4gICAgICBzdG9yZUlkOmFueTtcclxuICAgICAgZm9ybWF0RGF0ZShkYXRlU3RyaW5nOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmRheWpzKGRhdGVTdHJpbmcpLmZvcm1hdCgnREQgTU1NJyk7ICAvLyBPdXRwdXQ6ICcwMSBKYW4nXHJcbiAgICAgIH1cclxuICAgICAgICBoYW5kbGVCYXJDbGljayhkYXRhSXRlbTogYW55KTogdm9pZCB7XHJcbiAgICAgICAgICB0aGlzLnN0b3JlTmFtZSA9IGRhdGFJdGVtLmZ1bGxTdG9yZU5hbWU7XHJcbiAgICAgICAgICB0aGlzLnN0b3JlSWQgPSBkYXRhSXRlbS5zdG9yZUlkXHJcbiAgICAgICAgICB0aGlzLm9iakRhdGFUcmFmZmljLnN0b3JlSWQgPVtkYXRhSXRlbS5zdG9yZUlkXSxcclxuICAgICAgICAgIHRoaXMub2JqRGF0YVRyYWZmaWMubGltaXQgPTMxLFxyXG4gICAgICAgICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAgICAgICAgIC5nZXRTaW5nbGVTdG9yZUNoYXJ0KHRoaXMub2JqRGF0YVRyYWZmaWMpXHJcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgICAgICAgPy5zdWJzY3JpYmUoe1xyXG4gICAgICAgICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuZ2V0U2luZ2xlQ2hhcnREYXRhID0gcmVzPy5kYXRhLnN0b3JlRGF0YTtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5kZXRhaWxlZENoYXJ0cyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpOyBcclxuICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmdldFNpbmdsZVN0b3JlKCksIDApOyAvLyBDYWxsIHdpdGggYSBkZWxheSB0byBlbnN1cmUgdGhlIGVsZW1lbnQgaXMgaW4gdGhlIERPTVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgZXJyb3I6IChlcnI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICBjb21wbGV0ZTogKCkgPT4ge30sXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICBcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGdldFNpbmdsZVN0b3JlKCl7XHJcbiAgICAgICAgICAgIGNvbnN0IGNoYXJ0RGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJkZXRhaWxlZENoYXJ0RGl2XCIpO1xyXG4gICAgICAgICAgICBpZiAoIWNoYXJ0RGl2KSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgIGlmICh0aGlzLmRldGFpbGVkUm9vdCkge1xyXG4gICAgICAgICAgICAgIHRoaXMuZGV0YWlsZWRSb290LmRpc3Bvc2UoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgXHJcbiAgICAgICAgICAgIHRoaXMuZGV0YWlsZWRSb290ID0gYW01LlJvb3QubmV3KFwiZGV0YWlsZWRDaGFydERpdlwiKTtcclxuICAgICAgICAgICAgdGhpcy5kZXRhaWxlZFJvb3Quc2V0VGhlbWVzKFtcclxuICAgICAgICAgICAgICBhbTV0aGVtZXNfQW5pbWF0ZWQubmV3KHRoaXMuZGV0YWlsZWRSb290KSxcclxuICAgICAgICAgICAgXSk7XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgIHRoaXMuZGV0YWlsZWRDaGFydCA9IHRoaXMuZGV0YWlsZWRSb290LmNvbnRhaW5lci5jaGlsZHJlbi5wdXNoKFxyXG4gICAgICAgICAgICAgIGFtNXh5LlhZQ2hhcnQubmV3KHRoaXMuZGV0YWlsZWRSb290LCB7XHJcbiAgICAgICAgICAgICAgICBwYW5YOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgIHBhblk6IGZhbHNlLFxyXG4gICAgICAgICAgICAgICAgd2hlZWxYOiBcInBhblhcIixcclxuICAgICAgICAgICAgICAgIHdoZWVsWTogXCJ6b29tWFwiLFxyXG4gICAgICAgICAgICAgICAgcGFkZGluZ0xlZnQ6IDAsXHJcbiAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICBcclxuICAgICAgICAgICAgLy8gQWRkIGN1cnNvclxyXG4gICAgICAgICAgICBsZXQgY3Vyc29yID0gdGhpcy5kZXRhaWxlZENoYXJ0LnNldChcclxuICAgICAgICAgICAgICBcImN1cnNvclwiLFxyXG4gICAgICAgICAgICAgIGFtNXh5LlhZQ3Vyc29yLm5ldyh0aGlzLmRldGFpbGVkUm9vdCwge30pXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIGN1cnNvci5saW5lWS5zZXQoXCJ2aXNpYmxlXCIsIGZhbHNlKTtcclxuICAgICAgICBcclxuICAgICAgICAgICAgLy8gQ3JlYXRlIGF4ZXNcclxuICAgICAgICAgICAgbGV0IHhSZW5kZXJlciA9IGFtNXh5LkF4aXNSZW5kZXJlclgubmV3KHRoaXMuZGV0YWlsZWRSb290LCB7XHJcbiAgICAgICAgICAgICAgbWluR3JpZERpc3RhbmNlOiAzMCxcclxuICAgICAgICAgICAgICBtaW5vckdyaWRFbmFibGVkOiB0cnVlLFxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICBcclxuICAgICAgICAgICAgeFJlbmRlcmVyLmxhYmVscy50ZW1wbGF0ZS5zZXRBbGwoe1xyXG4gICAgICAgICAgICAgIHJvdGF0aW9uOiAtOTAsXHJcbiAgICAgICAgICAgICAgY2VudGVyWTogYW01LnA1MCxcclxuICAgICAgICAgICAgICBjZW50ZXJYOiBhbTUucDEwMCxcclxuICAgICAgICAgICAgICBwYWRkaW5nUmlnaHQ6IDE1LFxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICBcclxuICAgICAgICAgICAgeFJlbmRlcmVyLmdyaWQudGVtcGxhdGUuc2V0QWxsKHtcclxuICAgICAgICAgICAgICBsb2NhdGlvbjogMSxcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIC8vIEFkZCBzY3JvbGxiYXJcclxuICAgICAgICAgICAgdGhpcy5kZXRhaWxlZENoYXJ0LnNldChcclxuICAgICAgICAgICAgICBcInNjcm9sbGJhclhcIixcclxuICAgICAgICAgICAgICBhbTUuU2Nyb2xsYmFyLm5ldyh0aGlzLmRldGFpbGVkUm9vdCwge1xyXG4gICAgICAgICAgICAgICAgb3JpZW50YXRpb246IFwiaG9yaXpvbnRhbFwiLFxyXG4gICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIGxldCB4QXhpcyA9IHRoaXMuZGV0YWlsZWRDaGFydC54QXhlcy5wdXNoKFxyXG4gICAgICAgICAgICAgIGFtNXh5LkNhdGVnb3J5QXhpcy5uZXcodGhpcy5kZXRhaWxlZFJvb3QsIHtcclxuICAgICAgICAgICAgICAgIG1heERldmlhdGlvbjogMC4zLFxyXG4gICAgICAgICAgICAgICAgY2F0ZWdvcnlGaWVsZDogXCJkYXRlXCIsXHJcbiAgICAgICAgICAgICAgICByZW5kZXJlcjogeFJlbmRlcmVyLFxyXG4gICAgICAgICAgICAgICAgdG9vbHRpcDogYW01LlRvb2x0aXAubmV3KHRoaXMuZGV0YWlsZWRSb290LCB7fSksXHJcbiAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICBcclxuICAgICAgICAgICAgbGV0IHlSZW5kZXJlciA9IGFtNXh5LkF4aXNSZW5kZXJlclkubmV3KHRoaXMuZGV0YWlsZWRSb290LCB7XHJcbiAgICAgICAgICAgICAgc3Ryb2tlT3BhY2l0eTogMC4xLFxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICBcclxuICAgICAgICAgICAgbGV0IHlBeGlzID0gdGhpcy5kZXRhaWxlZENoYXJ0LnlBeGVzLnB1c2goXHJcbiAgICAgICAgICAgICAgYW01eHkuVmFsdWVBeGlzLm5ldyh0aGlzLmRldGFpbGVkUm9vdCwge1xyXG4gICAgICAgICAgICAgICAgbWF4RGV2aWF0aW9uOiAwLjMsXHJcbiAgICAgICAgICAgICAgICByZW5kZXJlcjogeVJlbmRlcmVyLFxyXG4gICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBsZXQgZGF0YSA9IHRoaXMuZ2V0U2luZ2xlQ2hhcnREYXRhLm1hcCgoaXRlbTogYW55KSA9PiAoe1xyXG4gICAgICAgICAgICAgIGRhdGU6IHRoaXMuZm9ybWF0RGF0ZShpdGVtLmRhdGUpLCAvLyBDb252ZXJ0IGRhdGUgc3RyaW5nIHRvIHRpbWVzdGFtcFxyXG4gICAgICAgICAgICAgIHZhbHVlOiBOdW1iZXIoaXRlbS5jb3VudCksIC8vIFVzZSBgY291bnRgIGFzIGB2YWx1ZWBcclxuICAgICAgICAgICAgfSkpO1xyXG4gICAgICAgICAgICBkYXRhLnNvcnQoKGE6IGFueSwgYjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgLy8gUGFyc2Ugc3RvcmVOYW1lIGFzIGEgRGF0ZSBhbmQgY29tcGFyZVxyXG4gICAgICAgICAgICAgIGNvbnN0IGRhdGVBID0gbmV3IERhdGUoYS5kYXRlKTtcclxuICAgICAgICAgICAgICBjb25zdCBkYXRlQiA9IG5ldyBEYXRlKGIuZGF0ZSk7XHJcbiAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgLy8gU29ydCBpbiBhc2NlbmRpbmcgb3JkZXIgKG9sZGVzdCB0byBuZXdlc3QpXHJcbiAgICAgICAgICAgICAgcmV0dXJuIGRhdGVBLmdldFRpbWUoKSAtIGRhdGVCLmdldFRpbWUoKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIC8vIENyZWF0ZSBzZXJpZXNcclxuICAgICAgICAgICAgdGhpcy5kZXRhaWxlZFNlcmllcyA9IHRoaXMuZGV0YWlsZWRDaGFydC5zZXJpZXMucHVzaChcclxuICAgICAgICAgICAgICBhbTV4eS5Db2x1bW5TZXJpZXMubmV3KHRoaXMuZGV0YWlsZWRSb290LCB7XHJcbiAgICAgICAgICAgICAgICBuYW1lOiBcIlNlcmllcyAyXCIsXHJcbiAgICAgICAgICAgICAgICB4QXhpczogeEF4aXMsXHJcbiAgICAgICAgICAgICAgICB5QXhpczogeUF4aXMsXHJcbiAgICAgICAgICAgICAgICB2YWx1ZVlGaWVsZDogXCJ2YWx1ZVwiLFxyXG4gICAgICAgICAgICAgICAgc2VxdWVuY2VkSW50ZXJwb2xhdGlvbjogdHJ1ZSxcclxuICAgICAgICAgICAgICAgIGNhdGVnb3J5WEZpZWxkOiBcImRhdGVcIixcclxuICAgICAgICAgICAgICAgIHRvb2x0aXA6IGFtNS5Ub29sdGlwLm5ldyh0aGlzLmRldGFpbGVkUm9vdCwge1xyXG4gICAgICAgICAgICAgICAgICBsYWJlbFRleHQ6IFwie3ZhbHVlWX1cIixcclxuICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIHRoaXMuZGV0YWlsZWRTZXJpZXMuY29sdW1ucy50ZW1wbGF0ZS5zZXRBbGwoeyBzdHJva2VPcGFjaXR5OiAwIH0pO1xyXG4gICAgICAgICAgICB4QXhpcy5kYXRhLnNldEFsbChkYXRhKTtcclxuICAgICAgICAgICAgdGhpcy5kZXRhaWxlZFNlcmllcy5kYXRhLnNldEFsbChkYXRhKTtcclxuICAgICAgICAgICAgdGhpcy5kZXRhaWxlZFNlcmllcy5hcHBlYXIoMTAwMCk7XHJcbiAgICAgICAgICAgIHRoaXMuZGV0YWlsZWRDaGFydC5hcHBlYXIoMTAwMCwgMTAwKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZvcmVjYXN0QXBpKGV2dDphbnkpe1xyXG4gICAgICAgICAgaWYoZXZ0LnRhcmdldC5jaGVja2VkKXtcclxuICAgICAgICAgICAgdGhpcy5vYmpEYXRhLmZvcmVjYXN0ID0gdHJ1ZVxyXG4gICAgICAgICAgICB0aGlzLm9iakRhdGEubm9ybWFsaXplID0gZmFsc2VcclxuICAgICAgICAgICAgdGhpcy5vYmpEYXRhLm5vYiA9IGZhbHNlXHJcbiAgICAgICAgICAgIHRoaXMub2JqRGF0YS5maWx0ZXJCeSA9ICdhdmVyYWdlJ1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5vYmpEYXRhLmZvcmVjYXN0ID0gZmFsc2VcclxuICAgICAgICAgICAgdGhpcy5vYmpEYXRhLm5vcm1hbGl6ZSA9IHRoaXMuY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmlzTm9ybWFsaXplZFxyXG4gICAgICAgICAgICB0aGlzLm9iakRhdGEubm9iID0gZmFsc2VcclxuICAgICAgICAgICAgdGhpcy5vYmpEYXRhLmZpbHRlckJ5ID0gJ2F2ZXJhZ2UnXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLmZvb3RmYWxsVHJlbmQoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdG9nZ2xlTm9ybWFsaXplZmZvbmx5KGV2dDphbnkpe1xyXG4gICAgICAgICAgdGhpcy5ub3JtYWxpemUgPWV2dC50YXJnZXQuY2hlY2tlZDtcclxuICAgICAgICAgICB0aGlzLnRhYmxlb2JqLm5vcm1hbGl6ZSA9IHRoaXMubm9ybWFsaXplICAgXHJcbiAgICAgICAgICAgdGhpcy50YWJsZW9iai5mcm9tRGF0ZSA9IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZS5zdGFydERhdGU7XHJcbiAgICAgICAgICAgdGhpcy50YWJsZW9iai50b0RhdGUgPSB0aGlzLmhlYWRlckRhdGE/LmRhdGUuZW5kRGF0ZTtcclxuICAgICAgICAgICBkZWxldGUgdGhpcy50YWJsZW9iai5yZWNhcFZpZGVvRGF0ZTsgICAgICAgXHJcbiAgICAgICAgICAgdGhpcy50YWJsZW9iai52YWx1ZVR5cGUgPXRoaXMudmFsdWVUeXBlXHJcbiAgICAgICAgICAgY29uc29sZS5sb2coXCLwn5qAIH4gVHJhZmZpY0FuYWx5c2lzQ29tcG9uZW50IH4gdG9nZ2xlTm9ybWFsaXplZmZvbmx5IH4gdGhpcy50YWJsZW9iajpcIiwgdGhpcy50YWJsZW9iailcclxuICAgICAgICAgICB0aGlzLmdldEZvb3RmYWxsQ2FyZCgpO1xyXG4gICAgICAgICAgIHRoaXMuZ2V0TWlzc2VkT3Bwb3J0dW5pdHlDYXJkKCk7XHJcbiAgICAgICAgICAgIHRoaXMuZ2V0VGFibGUoKTtcclxuICAgICAgICAgICAgdGhpcy5nZXRab25lVmFsdWUoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRvZ2dsZU5vcm1hbGl6ZShldnQ6YW55KXtcclxuICAgICAgICAgIHRoaXMubm9ybWFsaXplID1ldnQudGFyZ2V0LmNoZWNrZWQ7XHJcbiAgICAgICAgICB0aGlzLnRhYmxlb2JqLm5vcm1hbGl6ZSA9IHRoaXMubm9ybWFsaXplXHJcbiAgICAgICAgICB0aGlzLm9iakRhdGEubm9ybWFsaXplID0gdGhpcy5ub3JtYWxpemVcclxuICAgICAgICAgIHRoaXMub2JqRGF0YVRyYWZmaWMubm9ybWFsaXplID0gdGhpcy5ub3JtYWxpemVcclxuICAgICAgICAgIC8vIHRoaXMudGFibGVvYmouZm9yZWNhc3QgPSBmYWxzZVxyXG4gICAgICAgICAgdGhpcy5vYmpEYXRhLmZvcmVjYXN0ID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLmZvcmVjYXN0ID1mYWxzZTtcclxuICAgICAgICAgIC8vIHRoaXMub2JqRGF0YVRyYWZmaWMuZm9yZWNhc3QgPSBmYWxzZVxyXG4gICAgICAgICAgdGhpcy5jb252ZXJzaW9uVmFsdWUgPSB0aGlzLm5vYlxyXG4gICAgICAgICAgICAgID8gXCJOb0IgRGVyaXZlZFwiXHJcbiAgICAgICAgICAgICAgOiB0aGlzLmNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzXHJcbiAgICAgICAgICAgICAgICAgID8ubWlzc2VkT3Bwb3J0dW5pdHlDYWxjdWxhdGlvbiA9PT0gJ2VuZ2FnZXJzLWNvbnZlcnNpb24nXHJcbiAgICAgICAgICAgICAgPyBcImVuZ2FnZXJzXCJcclxuICAgICAgICAgICAgICA6IFwiZm9vdGZhbGxcIjtcclxuICAgICAgICAgIHRoaXMuZ2V0RnVubmFsKCk7XHJcbiAgICAgICAgICB0aGlzLmdldEZvb3RmYWxsQ2FyZCgpO1xyXG4gICAgICAgICAgdGhpcy5nZXRDb252ZXJzaW9uQ2FyZCgpO1xyXG4gICAgICAgICAgdGhpcy5nZXRCb3VuY2VkQ2FyZCgpO1xyXG4gICAgICAgICAgdGhpcy5nZXRFbmdhZ2Vyc0NhcmQoKTtcclxuICAgICAgICAgIHRoaXMuZ2V0UG90ZW50aWFsQnV5ZXJzQ2FyZCgpO1xyXG4gICAgICAgICAgdGhpcy5nZXRNaXNzZWRPcHBvcnR1bml0eUNhcmQoKTtcclxuICAgICAgICAgIHRoaXMuZ2V0UG90ZW50aWFsQnV5ZXJzKCk7XHJcbiAgICAgICAgICB0aGlzLnBlcmZvcm1hbmNlKCk7XHJcbiAgICAgICAgICB0aGlzLmdldFRhYmxlKCk7XHJcbiAgICAgICAgICB0aGlzLmZvb3RmYWxsVHJlbmQoKTtcclxuICAgICAgICAgIGlmKHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTknKXtcclxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFRhYiA9IFwiZm9vdGZhbGxcIlxyXG4gICAgICAgICAgICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBcImZvb3RmYWxsXCI7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsY3RlZFZhbHVlID0nRm9vdGZhbGwgQW5hbHlzaXMnO1xyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkVGFicygnZm9vdGZhbGwnKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSBcInRyYWZmaWNcIlxyXG4gICAgICAgICAgICB0aGlzLmZvb3RmYWxsVmFsdWUgPSBcInRyYWZmaWNcIjtcclxuICAgICAgICAgICAgdGhpcy5zZWxjdGVkVmFsdWUgPSdUcmFmZmljIEFuYWx5c2lzJztcclxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFRhYnMoJ3RyYWZmaWMnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmKHRoaXMubm9ybWFsaXplID09PSB0cnVlKXtcclxuICAgICAgICAgIHRoaXMuem9uZUR3ZWxsVGltZVNwbGl0RGF0YSA9W107XHJcbiAgICAgICAgICAgIHRoaXMuem9uZUxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy56b25lTm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5zdG9yZU9wZXJhdGlvbkRhdGEgPVtdO1xyXG4gICAgICAgICAgICB0aGlzLmF1TG9jYXRpb25zID1bXTtcclxuICAgICAgICAgICAgdGhpcy5tcGFsb2FkaW5nID1mYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5tYXBub0RhdGE9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuZm9yZWNhc3QgPWZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm9iakRhdGEuZm9yZWNhc3QgPSBmYWxzZTtcclxuICAgICAgICAgICAgaWYodGhpcy5zdG9yZUlkYXJyYXkubGVuZ3RoID09PSAxKXtcclxuICAgICAgICAgICAgdGhpcy5nZXRSZWNhcFZpZGVvRGF0YSA9W11cclxuICAgICAgICAgICAgdGhpcy5yZWNhcGxhb2RpbmcgPWZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLnJlY2Fwbm9EYXRhID10cnVlO1xyXG4gICAgICAgICAgICB0aGlzLnNlcnZpY2U/LnRvZ2dsZW5vcm1hbGl6ZSh0aGlzLm5vcm1hbGl6ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuZ2V0Wm9uZSgpOyB0aGlzLmdldFpvbmVWYWx1ZSgpO1xyXG4gICAgICAgICAgICB0aGlzLmdldE1hcCgpO1xyXG4gICAgICAgICAgICBpZih0aGlzLnN0b3JlSWRhcnJheS5sZW5ndGggPT09IDEpe1xyXG4gICAgICAgICAgICB0aGlzLmdldFJlY2FwKCk7XHJcbiAgICAgICAgICAgIHRoaXMuc2VydmljZT8udG9nZ2xlbm9ybWFsaXplKHRoaXMubm9ybWFsaXplKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgZXhwb3J0RGVuc2l0eSgpe1xyXG4gICAgICAgIGxldCBvYmogPXtcclxuICAgICAgICAgICBmcm9tRGF0ZTogdGhpcy5nZXREZW5zaXR5RHdlbGxEYXRhPy5mcm9tRGF0ZSxcclxuICAgICAgICAgICAgICB0b0RhdGU6IHRoaXMuZ2V0RGVuc2l0eUR3ZWxsRGF0YT8udG9EYXRlLFxyXG4gICAgICAgICAgICAgICAgZGF0ZVJhbmdlOiB0aGlzLm9iakRhdGFUcmFmZmljPy5kYXRlUmFuZ2UsXHJcbiAgICAgICAgICAgICAgc3RvcmVJZDogIHRoaXMuc3RvcmVJZGFycmF5LFxyXG4gICAgICAgICAgICAgIGNsaWVudElkOiB0aGlzLmhlYWRlckRhdGE/LmNsaWVudCxcclxuICAgICAgICAgICAgICBleHBvcnQ6dHJ1ZSxcclxuICAgICAgICAgICAgICBtb2R1bGU6XCJmb290ZmFsbFwiXHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAgICAgICAgIC5nZXRUcmFmZmljRGVuc2l0eUV4cG9ydChvYmopXHJcbiAgICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAgICAgICAgID8uc3Vic2NyaWJlKHtcclxuICAgICAgICAgICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICBpZiAocmVzKSB7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuZXhjZWxTZXJ2aWNlLnNhdmVBc0V4Y2VsRmlsZShyZXMsIFwiVHJhZmZpYyBEZW5zaXR5IFRhYmxlIFwiKTtcclxuICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRoaXMudG9hc3QuZ2V0RXJyb3JUb2FzdChyZXMpO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9LCBlcnJvcjogKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSBlcnI/LmVycm9yPy5tZXNzYWdlIHx8IGVycj8uZXJyb3I/LmVycm9yIHx8IGVycj8ubWVzc2FnZTtcclxuICAgICAgICAgICAgICB0aGlzLnRvYXN0LmdldEVycm9yVG9hc3QoZXJyb3JNZXNzYWdlKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG59XHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcbmludGVyZmFjZSBEYXRhQ29udGV4dCB7XHJcbiAgY2F0ZWdvcnk6IHN0cmluZztcclxuICB2YWx1ZTogbnVtYmVyO1xyXG4gIGNvdW50OiBudW1iZXI7XHJcbn1cclxuZnVuY3Rpb24gZ2V0RGF5c0JldHdlZW5EYXRlcyhmcm9tRGF0ZTogc3RyaW5nLCB0b0RhdGU6IHN0cmluZyk6IG51bWJlciB7XHJcbiAgLy8gUGFyc2UgdGhlIGRhdGUgc3RyaW5ncyBpbnRvIERhdGUgb2JqZWN0c1xyXG4gIGNvbnN0IHN0YXJ0ID0gbmV3IERhdGUoZnJvbURhdGUpO1xyXG4gIGNvbnN0IGVuZCA9IG5ldyBEYXRlKHRvRGF0ZSk7XHJcblxyXG4gIC8vIENhbGN1bGF0ZSB0aGUgZGlmZmVyZW5jZSBpbiBtaWxsaXNlY29uZHNcclxuICBjb25zdCBkaWZmZXJlbmNlSW5NcyA9IGVuZC5nZXRUaW1lKCkgLSBzdGFydC5nZXRUaW1lKCk7XHJcblxyXG4gIC8vIENvbnZlcnQgbWlsbGlzZWNvbmRzIHRvIGRheXMgKDEgZGF5ID0gODY0MDAwMDAgbWlsbGlzZWNvbmRzKVxyXG4gIGNvbnN0IG1pbGxpc2Vjb25kc1BlckRheSA9IDg2NDAwMDAwO1xyXG4gIGNvbnN0IGRpZmZlcmVuY2VJbkRheXMgPSBNYXRoLmZsb29yKGRpZmZlcmVuY2VJbk1zIC8gbWlsbGlzZWNvbmRzUGVyRGF5KTtcclxuXHJcbiAgcmV0dXJuIGRpZmZlcmVuY2VJbkRheXM7XHJcbn1cclxuXHJcbmludGVyZmFjZSBDaGFydERhdGFJdGVtIHtcclxuICByYXRlOiBudW1iZXI7XHJcbiAgY291bnQ6IG51bWJlcjtcclxuICB0aW1lOiBzdHJpbmc7XHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG4vLyBnZXRDYXJkKCkge1xyXG4vLyAgIHRoaXMudGFibGVvYmoudmFsdWVUeXBlPSB0aGlzLnZhbHVlVHlwZSxcclxuLy8gICB0aGlzLnRhYmxlb2JqLmZyb21EYXRlID0gdGhpcy5oZWFkZXJEYXRhPy5kYXRlLnN0YXJ0RGF0ZTtcclxuLy8gICB0aGlzLnRhYmxlb2JqLnRvRGF0ZSA9IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZS5lbmREYXRlO1xyXG4vLyAgZGVsZXRlIHRoaXMudGFibGVvYmoub2Zmc2V0O1xyXG4vLyAgZGVsZXRlIHRoaXMudGFibGVvYmoucmVjYXBWaWRlb0RhdGU7XHJcbi8vICBkZWxldGUgdGhpcy50YWJsZW9iai5saW1pdDsgXHJcbi8vICBkZWxldGUgdGhpcy50YWJsZW9iai5zb3J0O1xyXG4vLyAgZGVsZXRlIHRoaXMudGFibGVvYmouc29ydEJ5O1xyXG4vLyAgZGVsZXRlIHRoaXMudGFibGVvYmouZXhwb3J0O1xyXG4vLyAgIHRoaXMuaGVhdGxvYWRpbmcgPSB0cnVlO1xyXG4vLyAgIHRoaXMuaGVhdG5vRGF0YSA9IGZhbHNlO1xyXG4vLyAgZGVsZXRlIHRoaXMudGFibGVvYmouZGF0ZVR5cGVcclxuLy8gICB0aGlzLnNlcnZpY2VcclxuLy8gICAgIC5nZXRDYXJkTGlzdCh0aGlzLnRhYmxlb2JqKVxyXG4vLyAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4vLyAgICAgPy5zdWJzY3JpYmUoe1xyXG4vLyAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuLy8gICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09PSAyMDApIHtcclxuLy8gICAgICAgICAgIHRoaXMuZ2V0Q2FyZERhdGEgPSByZXM/LmRhdGE/LmNhcmQ7XHJcbi8vICAgICAgICAgICAvLyB0aGlzLmhlYXRNYXBEYXRhID0gcmVzPy5kYXRhPy5mdW5uZWxDaGFydDtcclxuICAgICAgICAgXHJcbi8vICAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuLy8gICAgICAgICB9IGVsc2Uge1xyXG4vLyAgICAgICAgICAgdGhpcy5nZXRDYXJkRGF0YSA9W107XHJcbi8vICAgICAgICAgICB0aGlzLmhlYXRNYXBEYXRhID1bXTtcclxuLy8gICAgICAgICB0aGlzLmhlYXRsb2FkaW5nID0gZmFsc2VcclxuLy8gICAgICAgICB0aGlzLmhlYXRub0RhdGEgPSB0cnVlXHJcbi8vICAgICAgICAgfVxyXG4vLyAgICAgICB9LFxyXG4vLyAgICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XHJcbi8vICAgICAgICAgdGhpcy5nZXRDYXJkRGF0YSA9W107XHJcbi8vICAgICAgICAgdGhpcy5oZWF0TWFwRGF0YSA9W107XHJcbi8vICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbi8vICAgICAgIH0sXHJcbi8vICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7fSxcclxuLy8gICAgIH0pO1xyXG4vLyB9XHJcblxyXG4vLyBnZXRDYXJkR3JhcGgoKSB7XHJcbi8vICAgdGhpcy5jYXJkbG9hZGluZyA9dHJ1ZTtcclxuLy8gICB0aGlzLmNhcmROb2RhdGEgPWZhbHNlO1xyXG4vLyAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLm5vcm1hbGl6ZWREYXRhO1xyXG4vLyAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnByb2Nlc3NUeXBlO1xyXG4vLyAgIHRoaXMudGFibGVvYmouZGF0ZVR5cGUgPSB0aGlzLmRhdGVUeXBlO1xyXG4vLyAgIGRlbGV0ZSB0aGlzLnRhYmxlb2JqLnNvcnQ7XHJcbi8vICAgZGVsZXRlIHRoaXMudGFibGVvYmouc29ydEJ5O1xyXG4vLyAgIHRoaXMuc2VydmljZVxyXG4vLyAgICAgLmdldENhcmRHcmFwaExpc3QodGhpcy50YWJsZW9iailcclxuLy8gICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuLy8gICAgID8uc3Vic2NyaWJlKHtcclxuLy8gICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbi8vICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKSB7XHJcbi8vICAgICAgICAgICB0aGlzLmdldENhcmRHcmFwaERhdGEgPSByZXM/LmRhdGE7XHJcbi8vICAgICAgICAgICBpZih0aGlzLm5vYil7XHJcbi8vICAgICAgICAgICAgIHRoaXMudmFsdWVDb252ZXJzaW9uUmF0ZSA9IHRoaXMuZ2V0Q2FyZEdyYXBoRGF0YT8uY29udmVyc2lvbj8ubm9iLm5vYjtcclxuLy8gICAgICAgICAgIHRoaXMuY29udmVyc2lvblZhbHVlID0nTm9CIERlcml2ZWQnXHJcbi8vICAgICAgICAgICB9ZWxzZSB7IFxyXG4vLyAgICAgICAgICAgdGhpcy52YWx1ZUNvbnZlcnNpb25SYXRlID0gIHRoaXMuZ2V0Q2FyZEdyYXBoRGF0YT8uY29udmVyc2lvbj8uZm9vdGZhbGwucmF0ZTtcclxuLy8gICAgICAgICAgICB0aGlzLmNvbnZlcnNpb25WYWx1ZSA9J2Zvb3RmYWxsJ1xyXG4vLyAgICAgICAgICAgfVxyXG4vLyAgICAgICAgICAgdGhpcy5jYXJkbG9hZGluZyA9ZmFsc2U7XHJcbi8vICAgICAgICAgICB0aGlzLmNhcmROb2RhdGEgPWZhbHNlOyAgICAgICAgICAgXHJcbi8vICAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuLy8gICAgICAgICB9IGVsc2UgaWYoIXJlcyB8fCByZXMuY29kZSA9PT0gMjA0KXtcclxuLy8gICAgICAgICAgIHRoaXMuZ2V0Q2FyZEdyYXBoRGF0YT1bXTtcclxuLy8gICAgICAgICAgIHRoaXMuY2FyZGxvYWRpbmcgPWZhbHNlO1xyXG4vLyAgICAgICAgICAgdGhpcy5jYXJkTm9kYXRhID10cnVlO1xyXG4vLyAgICAgICAgIH1cclxuLy8gICAgICAgfSxcclxuLy8gICAgICAgZXJyb3I6IChlcnI6IGFueSkgPT4ge1xyXG4vLyAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4vLyAgICAgICB9LFxyXG4vLyAgICAgICBjb21wbGV0ZTogKCkgPT4ge30sXHJcbi8vICAgICB9KTtcclxuLy8gfVxyXG4iLCI8c2NyaXB0PlxyXG4gICAgKGcgPT4geyB2YXIgaCwgYSwgaywgcCA9IFwiVGhlIEdvb2dsZSBNYXBzIEphdmFTY3JpcHQgQVBJXCIsIGMgPSBcImdvb2dsZVwiLCBsID0gXCJpbXBvcnRMaWJyYXJ5XCIsIHEgPSBcIl9faWJfX1wiLCBtID0gZG9jdW1lbnQsIGIgPSB3aW5kb3c7IGIgPSBiW2NdIHx8IChiW2NdID0ge30pOyB2YXIgZCA9IGIubWFwcyB8fCAoYi5tYXBzID0ge30pLCByID0gbmV3IFNldCwgZSA9IG5ldyBVUkxTZWFyY2hQYXJhbXMsIHUgPSAoKSA9PiBoIHx8IChoID0gbmV3IFByb21pc2UoYXN5bmMgKGYsIG4pID0+IHsgYXdhaXQgKGEgPSBtLmNyZWF0ZUVsZW1lbnQoXCJzY3JpcHRcIikpOyBlLnNldChcImxpYnJhcmllc1wiLCBbLi4ucl0gKyBcIlwiKTsgZm9yIChrIGluIGcpIGUuc2V0KGsucmVwbGFjZSgvW0EtWl0vZywgdCA9PiBcIl9cIiArIHRbMF0udG9Mb3dlckNhc2UoKSksIGdba10pOyBlLnNldChcImNhbGxiYWNrXCIsIGMgKyBcIi5tYXBzLlwiICsgcSk7IGEuc3JjID0gYGh0dHBzOi8vbWFwcy4ke2N9YXBpcy5jb20vbWFwcy9hcGkvanM/YCArIGU7IGRbcV0gPSBmOyBhLm9uZXJyb3IgPSAoKSA9PiBoID0gbihFcnJvcihwICsgXCIgY291bGQgbm90IGxvYWQuXCIpKTsgYS5ub25jZSA9IG0ucXVlcnlTZWxlY3RvcihcInNjcmlwdFtub25jZV1cIik/Lm5vbmNlIHx8IFwiXCI7IG0uaGVhZC5hcHBlbmQoYSkgfSkpOyBkW2xdID8gY29uc29sZS53YXJuKHAgKyBcIiBvbmx5IGxvYWRzIG9uY2UuIElnbm9yaW5nOlwiLCBnKSA6IGRbbF0gPSAoZiwgLi4ubikgPT4gci5hZGQoZikgJiYgdSgpLnRoZW4oKCkgPT4gZFtsXShmLCAuLi5uKSkgfSkoe1xyXG4gICAgICAgIHY6IFwid2Vla2x5XCIsXHJcbiAgICAgICAga2V5OiB7IG1hcEtleVVybCB9XHJcbiAgICB9KTtcclxuPC9zY3JpcHQ+XHJcbjxsaW5rIGhyZWY9J2h0dHBzOi8vYXBpLm1hcGJveC5jb20vbWFwYm94LWdsLWpzL3YyLjE1LjAvbWFwYm94LWdsLmNzcycgcmVsPSdzdHlsZXNoZWV0JyAvPlxyXG48c2NyaXB0IHNyYz0naHR0cHM6Ly9hcGkubWFwYm94LmNvbS9tYXBib3gtZ2wtanMvdjIuMTUuMC9tYXBib3gtZ2wuanMnPjwvc2NyaXB0PlxyXG5cclxuPGRpdiAqbmdJZj1cIiFzaG93UmVwb3J0UHJvY2Vzc2luZ0NhcmQgJiYgIWRhdGFQcm9jZXNzZWRMb2FkaW5nICYmICFpc0Zvb3RmYWxsVmlld1wiIGNsYXNzPVwicm93XCI+XHJcbiAgICA8ZGl2ICpuZ0lmPVwiKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/LnVzZXJUeXBlID09PSAndGFuZ28nIHx8IGNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5pc05vcm1hbGl6ZWRcIlxyXG4gICAgICAgIGNsYXNzPVwiY29sLW1kLTEyIHRleHQtZW5kXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgZm9ybS1zd2l0Y2ggbXktMlwiIHN0eWxlPVwiZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cImZvcm0tY2hlY2staW5wdXQgY3Vyc29yLXBvaW50ZXJcIiB0eXBlPVwiY2hlY2tib3hcIiBpZD1cImZsZXhTd2l0Y2hDaGVja0RlZmF1bHRcIlxyXG4gICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwibm9ybWFsaXplXCIgKGNoYW5nZSk9XCJ0b2dnbGVOb3JtYWxpemUoJGV2ZW50KVwiPjxzcGFuIGNsYXNzPVwibm9ybWFsaXplLXRleHRcIj5WaWV3IE5vcm1hbGl6ZWRcclxuICAgICAgICAgICAgICAgIERhdGE8L3NwYW4+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNyBoLTEwMFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC04IFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQgY2FyZC1ib3JkZXIgaC0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IHBvc2l0aW9uLXJlbGF0aXZlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB4LTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgZWxsaXBzZTEgYm9yZGVyLTAgcHgtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCIgW25nYlRvb2x0aXBdPVwiZm9vdGZhbGxUb29sdGlwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cInJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIERpc3BsYXkgZm9vdGZhbGwgY291bnQgb3IgJy0tJyBpZiBub3QgYXZhaWxhYmxlIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjYXJkLWxhYmVsIGhlYWRlclwiPnt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0Rm9vdGZhbGxDYXJkRGF0YT8uY2FyZD8uZm9vdGZhbGw/LmNvdW50LnRvTG9jYWxlU3RyaW5nKCdlbi1JTicpID8/ICctLSdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLWhlYWRlclwiPnt7Zm9vdGZhbGxOYW1lfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFN3aXRjaCB0b2dnbGUgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLXRvb2xiYXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgdGV4dC1lbmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVjayBmb3JtLXN3aXRjaCB0ZXh0LWVuZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0IG10LTEgY3Vyc29yLXBvaW50ZXJcIiB0eXBlPVwiY2hlY2tib3hcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJmbGV4U3dpdGNoQ2hlY2tEZWZhdWx0XCIgWyhuZ01vZGVsKV09XCJpc0F2ZXJhZ2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJ0b2dnbGVBdmVyYWdlKCRldmVudClcIiBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJpc0F2ZXJhZ2VcIiBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgbXQtNVwiPkF2ZXJhZ2U8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIWlzQXZlcmFnZVwiIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbCBtdC01XCI+QWN0dWFsPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNmb290ZmFsbFRvb2x0aXA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b29sdGlwLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz1cInRvb2x0aXAtdGl0bGUgdGV4dC1zdGFydFwiPkZvb3RmYWxsPC9oNT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwidGV4dC1zdGFydFwiPlRvdGFsIHVuaXF1ZSB3YWxrLWlucyBpbnRvIHRoZSBzZWxlY3RlZCBzdG9yZXMuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPVwidGV4dC1zdGFydFwiPnt7Z2V0Q2FyZERhdGE/LmZvb3RmYWxsPy5jb3VudH19PC9oND5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMFwiPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMCBwZS0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW2NsYXNzLmQtbm9uZV09XCIhZm9vdGZhbGxsb2FkaW5nXCIgY2xhc3M9XCJ0ZXh0LWNlbnRlciBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwibG9hZGVyLWltZ1wiIHNyYz1cImFzc2V0cy90YW5nby9sYXlvdXQvTG9hZGVyLmdpZlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImZvb3RmYWxsTm9kYXRhXCIgY2xhc3M9XCJyb3dcIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXJkLWJvZHkgcGItMCBweC0wIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJmb290aW1nLW5vZGF0YTFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGExLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtdGl0bGUxXCI+Tm8gZGF0YSBmb3VuZDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cIm5vZGF0YS1zdWJcIj5UaGVyZSBpcyBubyByZXN1bHQgZm9yIHRoaXMgY29udmVyc2lvbiBmdW5uZWw8L2Rpdj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFtjbGFzcy5kLW5vbmVdPVwiZm9vdGZhbGxOb2RhdGEgfHwgZm9vdGZhbGxsb2FkaW5nXCIgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiIGlkPVwiRm9vdGZhbGxcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTIgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMSBjdXJzb3ItcG9pbnRlciBmcy01XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cImRhdGVUeXBlID09PSdkYWlseScgPyAndGV4dC1wcmltYXJ5JyA6JydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImRhdGVWYWx1ZSgnZGFpbHknKVwiPjFEPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtdC0xIGN1cnNvci1wb2ludGVyIGZzLTVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiZGF0ZVR5cGUgPT09J3dlZWtseScgPyAndGV4dC1wcmltYXJ5JyA6JydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImRhdGVWYWx1ZSgnd2Vla2x5JylcIj4xVzwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMSBjdXJzb3ItcG9pbnRlciBmcy01XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cImRhdGVUeXBlID09PSdtb250aGx5JyA/ICd0ZXh0LXByaW1hcnknIDonJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZGF0ZVZhbHVlKCdtb250aGx5JylcIj4xTTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1mb290ZXIgbXMtMiBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm10LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiIWdldEZvb3RmYWxsQ2FyZERhdGE/LmRhdGE/LmZvb3RmYWxsPy5QcmV2aW91c1ZhcmlhdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE4IDE4XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8yMzI4XzQ2NTQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTExLjUgOUw2Ljc1IDQuMjVMNC4yNSA2Ljc1TDAuNSAzTTExLjUgOUg4LjVNMTEuNSA5VjZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiNEOTJEMjBcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8yMzI4XzQ2NTRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJnZXRGb290ZmFsbENhcmREYXRhPy5kYXRhPy5mb290ZmFsbD8uUHJldmlvdXNWYXJpYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzIxNl8xMTgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTExLjUgM0w2Ljc1IDcuNzVMNC4yNSA1LjI1TDAuNSA5TTExLjUgM0g4LjVNMTEuNSAzVjZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMwMzk4NTVcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8zMjE2XzExOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImdldEZvb3RmYWxsQ2FyZERhdGE/LmRhdGE/LmZvb3RmYWxsPy5QcmV2aW91c0RhdGEgPT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlIG1zLTJcIj4wJTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMiBtcy0yXCI+PHNwYW4gY2xhc3M9XCJwZXJjZW50LXZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJnZXRGb290ZmFsbENhcmREYXRhPy5kYXRhPy5mb290ZmFsbD8uUHJldmlvdXNEYXRhICE9PTBcIj57e2dldEZvb3RmYWxsQ2FyZERhdGE/LmRhdGE/LmZvb3RmYWxsPy5QcmV2aW91c0RhdGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBnZXRGb290ZmFsbENhcmREYXRhPy5kYXRhPy5mb290ZmFsbD8uUHJldmlvdXNEYXRhOictLSd9fSU8L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ3ZWVrLWZvbnRcIj4gdnMgUHJldmlvdXMgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J2RhaWx5J1wiPmRheTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJkYXRlVHlwZSA9PT0nd2Vla2x5J1wiPndlZWs8L3NwYW4+IDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSdtb250aGx5J1wiPm1vbnRoPC9zcGFuPiA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYgMTJMMTAgOEw2IDRcIiBzdHJva2U9XCIjOThBMkIzXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3NpdGlvbi1hYnNvbHV0ZSBsZWZ0LTUwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNiAxMkwxMCA4TDYgNFwiIHN0cm9rZT1cIiM5OEEyQjNcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02XCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB4LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgZWxsaXBzZTEgYm9yZGVyLTAgcHMtMiBwZS0wXCIgdHJpZ2dlcnM9XCJtb3VzZWVudGVyOm1vdXNlbGVhdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdiVG9vbHRpcF09XCJjb252ZXJzaW9uVG9vbHRpcFwiIHBsYWNlbWVudD1cInJpZ2h0XCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uIHctMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IHctMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC04IHRleHQtbm93cmFwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2FyZC1sYWJlbCBoZWFkZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ2YWx1ZUNvbnZlcnNpb25SYXRlID09PSAwXCI+MCU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2FyZC1sYWJlbCBoZWFkZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ2YWx1ZUNvbnZlcnNpb25SYXRlICE9PSAwXCI+e3t2YWx1ZUNvbnZlcnNpb25SYXRlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlQ29udmVyc2lvblJhdGUgOiAnLS0nfX0lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImlzQ29udmVyc2lvblwiIGNsYXNzPVwic3ViLWhlYWRlciBmdy1ib2xkXCI+Q29udmVyc2lvbjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTQgZC1mbGV4IGp1c3RpZnktY29udGVudC1lbmQgYWxpZ24taXRlbXMtZW5kIHBlLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgZm9ybS1zd2l0Y2ggY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cImZvcm0tY2hlY2staW5wdXQgY3Vyc29yLXBvaW50ZXJcIiB0eXBlPVwiY2hlY2tib3hcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiQ29udmVyc2lvblwiIFsobmdNb2RlbCldPVwiaXNDb252ZXJzaW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cInRvZ2dsZUNvbnZlcnNpb24oJGV2ZW50KVwiPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWItaGVhZGVyIG10LTFcIj48c3BhbiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1MidcIj5Nb3JlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYW4ge3tjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uY29udmVyc2lvbj8udmFsdWV9fSBtaW5zIFJhdGU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIWlzQ29udmVyc2lvblwiIGNsYXNzPVwic3ViLWhlYWRlclwiPkNvbnZlcnNpb25cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImNvbnZlcnNpb25WYWx1ZSA9PT0gJ2Zvb3RmYWxsJyB8fCBjb252ZXJzaW9uVmFsdWUgPT09ICdlbmdhZ2VycycgfHwgY29udmVyc2lvblZhbHVlID09PSAnUG90ZW50aWFsIEJ1eWVycycgfHwgY29udmVyc2lvblZhbHVlID09PSAnTm9CIERlcml2ZWQnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtIDxzcGFuICpuZ0lmPVwiY29udmVyc2lvblZhbHVlID09PSAnTm9CIERlcml2ZWQnOyBlbHNlIG90aGVyVmFsdWVzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTm9CIERlcml2ZWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjb3RoZXJWYWx1ZXM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgY29udmVyc2lvblZhbHVlIHwgdGl0bGVjYXNlIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+PHNwYW4gKm5nSWY9XCJpc0NvbnZlcnNpb25cIiBjbGFzcz1cInN1Yi1oZWFkZXJcIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImNvbnZlcnNpb25WYWx1ZSA9PT0gJ2Zvb3RmYWxsJyB8fCBjb252ZXJzaW9uVmFsdWUgPT09ICdlbmdhZ2VycycgfHwgY29udmVyc2lvblZhbHVlID09PSAnUG90ZW50aWFsIEJ1eWVycycgfHwgY29udmVyc2lvblZhbHVlID09PSAnTm9CIERlcml2ZWQnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvbnZlcnNpb25WYWx1ZSA9PT0gJ05vQiBEZXJpdmVkJzsgZWxzZSBvdGhlclZhbHVlc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbnZlcnNpb24gLSBOb0IgRGVyaXZlZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNvdGhlclZhbHVlcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBjb252ZXJzaW9uVmFsdWUgfCB0aXRsZWNhc2UgfX0gLSBOb0IgRGVyaXZlZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNjb252ZXJzaW9uVG9vbHRpcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvb2x0aXAtY29udGVudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwidG9vbHRpcC10aXRsZSB0ZXh0LXN0YXJ0XCIgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgIT09ICc0NTInXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29udmVyc2lvbiBSYXRlPC9oNT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwidGV4dC1zdGFydFwiPlRvdGFsICUgb2Yge3tjb252ZXJzaW9uVmFsdWV9fSB3aG8gc3BlbnQgbW9yZSB0aGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uY29udmVyc2lvbj8udmFsdWV9fSBtaW5zIGluIHRoZSBzdG9yZS5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImgtMTAwcHggcHQtMTAgcHgtMyByb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaC01MHB4IGNvbC1tZC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKm5nSWY9XCJjb252ZXJzaW9uVmFsdWUgIT09J2Zvb3RmYWxsJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cInRvcFwiIG5nYlRvb2x0aXA9XCJGb290ZmFsbFwiIChjbGljayk9XCJjaGFuZ2VWYWx1ZSgnZm9vdGZhbGwnKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNCAxOEg5LjVWMTkuMjVDOS41IDE5Ljk3OTMgOS4yMTAyNyAyMC42Nzg4IDguNjk0NTQgMjEuMTk0NUM4LjE3ODgyIDIxLjcxMDMgNy40NzkzNSAyMiA2Ljc1IDIyQzYuMDIwNjUgMjIgNS4zMjExOCAyMS43MTAzIDQuODA1NDYgMjEuMTk0NUM0LjI4OTczIDIwLjY3ODggNCAxOS45NzkzIDQgMTkuMjVWMThaTTggNi4xMTk5OUMxMCA2LjExOTk5IDExIDguOTk5OTkgMTEgMTFDMTEgMTIgMTAuNSAxMyAxMCAxNC41TDkuNSAxNkg0QzQgMTUgMy41IDEzLjUgMy41IDExQzMuNSA4LjQ5OTk5IDUuNDk4IDYuMTE5OTkgOCA2LjExOTk5Wk0yMC4wNTQgMTQuMDk4TDE5LjgzNyAxNS4zMjlDMTkuNzAyMyAxNi4wMzk2IDE5LjI5MzEgMTYuNjY4NiAxOC42OTggMTcuMDc5NkMxOC4xMDI5IDE3LjQ5MDcgMTcuMzY5OCAxNy42NTA4IDE2LjY1NzYgMTcuNTI1MkMxNS45NDUzIDE3LjM5OTYgMTUuMzExMSAxNi45OTg0IDE0Ljg5MjUgMTYuNDA4NkMxNC40NzM5IDE1LjgxODggMTQuMzA0NSAxNS4wODc4IDE0LjQyMSAxNC4zNzRMMTQuNjM3IDEzLjE0NEwyMC4wNTQgMTQuMDk4Wk0xOC4xNzggMS43MDQ5OUMyMC42NDIgMi4xMzg5OSAyMi4xOTYgNC44Mjk5OSAyMS43NjIgNy4yOTE5OUMyMS4zMjggOS43NTM5OSAyMC41NzUgMTEuMTQ0IDIwLjQwMiAxMi4xMjlMMTQuOTg1IDExLjE3NEwxNC43NTMgOS42MDk5OUMxNC41MjEgOC4wNDU5OSAxNC4yMDMgNi45NzM5OSAxNC4zNzYgNS45ODk5OUMxNC43MjMgNC4wMTk5OSAxNi4yMDggMS4zNTc5OSAxOC4xNzggMS43MDQ5OVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiM5OEEyQjNcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgcGxhY2VtZW50PVwidG9wXCIgbmdiVG9vbHRpcD1cIkZvb3RmYWxsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjb252ZXJzaW9uVmFsdWUgPT09J2Zvb3RmYWxsJ1wiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNCAxOEg5LjVWMTkuMjVDOS41IDE5Ljk3OTMgOS4yMTAyNyAyMC42Nzg4IDguNjk0NTQgMjEuMTk0NUM4LjE3ODgyIDIxLjcxMDMgNy40NzkzNSAyMiA2Ljc1IDIyQzYuMDIwNjUgMjIgNS4zMjExOCAyMS43MTAzIDQuODA1NDYgMjEuMTk0NUM0LjI4OTczIDIwLjY3ODggNCAxOS45NzkzIDQgMTkuMjVWMThaTTggNi4xMTk5OUMxMCA2LjExOTk5IDExIDguOTk5OTkgMTEgMTFDMTEgMTIgMTAuNSAxMyAxMCAxNC41TDkuNSAxNkg0QzQgMTUgMy41IDEzLjUgMy41IDExQzMuNSA4LjQ5OTk5IDUuNDk4IDYuMTE5OTkgOCA2LjExOTk5Wk0yMC4wNTQgMTQuMDk4TDE5LjgzNyAxNS4zMjlDMTkuNzAyMyAxNi4wMzk2IDE5LjI5MzEgMTYuNjY4NiAxOC42OTggMTcuMDc5NkMxOC4xMDI5IDE3LjQ5MDcgMTcuMzY5OCAxNy42NTA4IDE2LjY1NzYgMTcuNTI1MkMxNS45NDUzIDE3LjM5OTYgMTUuMzExMSAxNi45OTg0IDE0Ljg5MjUgMTYuNDA4NkMxNC40NzM5IDE1LjgxODggMTQuMzA0NSAxNS4wODc4IDE0LjQyMSAxNC4zNzRMMTQuNjM3IDEzLjE0NEwyMC4wNTQgMTQuMDk4Wk0xOC4xNzggMS43MDQ5OUMyMC42NDIgMi4xMzg5OSAyMi4xOTYgNC44Mjk5OSAyMS43NjIgNy4yOTE5OUMyMS4zMjggOS43NTM5OSAyMC41NzUgMTEuMTQ0IDIwLjQwMiAxMi4xMjlMMTQuOTg1IDExLjE3NEwxNC43NTMgOS42MDk5OUMxNC41MjEgOC4wNDU5OSAxNC4yMDMgNi45NzM5OSAxNC4zNzYgNS45ODk5OUMxNC43MjMgNC4wMTk5OSAxNi4yMDggMS4zNTc5OSAxOC4xNzggMS43MDQ5OVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMEEzRkZcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJoLTUwcHggY29sLW1kLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHBsYWNlbWVudD1cInRvcFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ2JUb29sdGlwXT1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1MicgPyAnTW9yZSB0aGFuICcrIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSArJyBtaW5zJyA6ICdFbmdhZ2VycydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKm5nSWY9XCJjb252ZXJzaW9uVmFsdWUgIT09J2VuZ2FnZXJzJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJjaGFuZ2VWYWx1ZSgnZW5nYWdlcnMnKVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTcgMjFWMTlDMTcgMTcuOTM5MSAxNi41Nzg2IDE2LjkyMTcgMTUuODI4NCAxNi4xNzE2QzE1LjA3ODMgMTUuNDIxNCAxNC4wNjA5IDE1IDEzIDE1SDVDMy45MzkxMyAxNSAyLjkyMTcyIDE1LjQyMTQgMi4xNzE1NyAxNi4xNzE2QzEuNDIxNDMgMTYuOTIxNyAxIDE3LjkzOTEgMSAxOVYyMU0yMyAyMVYxOUMyMi45OTkzIDE4LjExMzcgMjIuNzA0NCAxNy4yNTI4IDIyLjE2MTQgMTYuNTUyM0MyMS42MTg0IDE1Ljg1MTkgMjAuODU4MSAxNS4zNTE2IDIwIDE1LjEzTTE2IDMuMTNDMTYuODYwNCAzLjM1MDMgMTcuNjIzIDMuODUwNyAxOC4xNjc2IDQuNTUyMzFDMTguNzEyMiA1LjI1MzkyIDE5LjAwNzggNi4xMTY4MyAxOS4wMDc4IDcuMDA1QzE5LjAwNzggNy44OTMxNyAxOC43MTIyIDguNzU2MDggMTguMTY3NiA5LjQ1NzY5QzE3LjYyMyAxMC4xNTkzIDE2Ljg2MDQgMTAuNjU5NyAxNiAxMC44OE0xMyA3QzEzIDkuMjA5MTQgMTEuMjA5MSAxMSA5IDExQzYuNzkwODYgMTEgNSA5LjIwOTE0IDUgN0M1IDQuNzkwODYgNi43OTA4NiAzIDkgM0MxMS4yMDkxIDMgMTMgNC43OTA4NiAxMyA3WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjOThBMkIzXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgcGxhY2VtZW50PVwidG9wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nYlRvb2x0aXBdPVwiaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJyA/ICdNb3JlIHRoYW4gJysgZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlICsnIG1pbnMnIDogJ0VuZ2FnZXJzJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udmVyc2lvblZhbHVlID09PSdlbmdhZ2VycydcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTE3IDIxVjE5QzE3IDE3LjkzOTEgMTYuNTc4NiAxNi45MjE3IDE1LjgyODQgMTYuMTcxNkMxNS4wNzgzIDE1LjQyMTQgMTQuMDYwOSAxNSAxMyAxNUg1QzMuOTM5MTMgMTUgMi45MjE3MiAxNS40MjE0IDIuMTcxNTcgMTYuMTcxNkMxLjQyMTQzIDE2LjkyMTcgMSAxNy45MzkxIDEgMTlWMjFNMjMgMjFWMTlDMjIuOTk5MyAxOC4xMTM3IDIyLjcwNDQgMTcuMjUyOCAyMi4xNjE0IDE2LjU1MjNDMjEuNjE4NCAxNS44NTE5IDIwLjg1ODEgMTUuMzUxNiAyMCAxNS4xM00xNiAzLjEzQzE2Ljg2MDQgMy4zNTAzIDE3LjYyMyAzLjg1MDcgMTguMTY3NiA0LjU1MjMxQzE4LjcxMjIgNS4yNTM5MiAxOS4wMDc4IDYuMTE2ODMgMTkuMDA3OCA3LjAwNUMxOS4wMDc4IDcuODkzMTcgMTguNzEyMiA4Ljc1NjA4IDE4LjE2NzYgOS40NTc2OUMxNy42MjMgMTAuMTU5MyAxNi44NjA0IDEwLjY1OTcgMTYgMTAuODhNMTMgN0MxMyA5LjIwOTE0IDExLjIwOTEgMTEgOSAxMUM2Ljc5MDg2IDExIDUgOS4yMDkxNCA1IDdDNSA0Ljc5MDg2IDYuNzkwODYgMyA5IDNDMTEuMjA5MSAzIDEzIDQuNzkwODYgMTMgN1pcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzAwQTNGRlwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiIGNsYXNzPVwiaC01MHB4IGNvbC1tZC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBwbGFjZW1lbnQ9XCJ0b3BcIiBuZ2JUb29sdGlwPVwiUG90ZW50aWFsIEJ1eWVyc1wiIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImNvbnZlcnNpb25WYWx1ZSAhPT0nUG90ZW50aWFsIEJ1eWVycydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2hhbmdlVmFsdWUoJ3BvdGVudGlhbEJ1eWVycycpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBvcGFjaXR5PVwiMC4zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjAuMDAzOSAxOC4wMDJINC4wMDM5MUMzLjQwMzkxIDE4LjAwMiAzLjAwMzkxIDE3LjYwMiAzLjAwMzkxIDE3LjAwMlY3LjAwMTk1QzMuMDAzOTEgNi40MDE5NSAzLjQwMzkxIDYuMDAxOTUgNC4wMDM5MSA2LjAwMTk1SDIwLjAwMzlDMjAuNjAzOSA2LjAwMTk1IDIxLjAwMzkgNi40MDE5NSAyMS4wMDM5IDcuMDAxOTVWMTcuMDAyQzIxLjAwMzkgMTcuNjAyIDIwLjYwMzkgMTguMDAyIDIwLjAwMzkgMTguMDAyWk0xMi4wMDM5IDguMDAxOTVDMTAuMzAzOSA4LjAwMTk1IDkuMDAzOTEgOS44MDE5NSA5LjAwMzkxIDEyLjAwMkM5LjAwMzkxIDE0LjIwMiAxMC4zMDM5IDE2LjAwMiAxMi4wMDM5IDE2LjAwMkMxMy43MDM5IDE2LjAwMiAxNS4wMDM5IDE0LjIwMiAxNS4wMDM5IDEyLjAwMkMxNS4wMDM5IDkuODAxOTUgMTMuNzAzOSA4LjAwMTk1IDEyLjAwMzkgOC4wMDE5NVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiM5OEEyQjNcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xOC4wMDM5IDYuMDAxOTVIMjAuMDAzOUMyMC42MDM5IDYuMDAxOTUgMjEuMDAzOSA2LjQwMTk1IDIxLjAwMzkgNy4wMDE5NVY5LjAwMTk1QzE5LjMwMzkgOS4wMDE5NSAxOC4wMDM5IDcuNzAxOTUgMTguMDAzOSA2LjAwMTk1Wk02LjAwMzkxIDYuMDAxOTVINC4wMDM5MUMzLjQwMzkxIDYuMDAxOTUgMy4wMDM5MSA2LjQwMTk1IDMuMDAzOTEgNy4wMDE5NVY5LjAwMTk1QzQuNzAzOTEgOS4wMDE5NSA2LjAwMzkxIDcuNzAxOTUgNi4wMDM5MSA2LjAwMTk1Wk0yMS4wMDM5IDE3LjAwMlYxNS4wMDJDMTkuMzAzOSAxNS4wMDIgMTguMDAzOSAxNi4zMDIgMTguMDAzOSAxOC4wMDJIMjAuMDAzOUMyMC42MDM5IDE4LjAwMiAyMS4wMDM5IDE3LjYwMiAyMS4wMDM5IDE3LjAwMlpNMy4wMDM5MSAxNS4wMDJWMTcuMDAyQzMuMDAzOTEgMTcuNjAyIDMuNDAzOTEgMTguMDAyIDQuMDAzOTEgMTguMDAySDYuMDAzOTFDNi4wMDM5MSAxNi4zMDIgNC43MDM5MSAxNS4wMDIgMy4wMDM5MSAxNS4wMDJaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjOThBMkIzXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHBsYWNlbWVudD1cInRvcFwiIG5nYlRvb2x0aXA9XCJQb3RlbnRpYWwgQnV5ZXJzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjb252ZXJzaW9uVmFsdWUgPT09J1BvdGVudGlhbCBCdXllcnMnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBvcGFjaXR5PVwiMC4zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjAuMDAzOSAxOC4wMDJINC4wMDM5MUMzLjQwMzkxIDE4LjAwMiAzLjAwMzkxIDE3LjYwMiAzLjAwMzkxIDE3LjAwMlY3LjAwMTk1QzMuMDAzOTEgNi40MDE5NSAzLjQwMzkxIDYuMDAxOTUgNC4wMDM5MSA2LjAwMTk1SDIwLjAwMzlDMjAuNjAzOSA2LjAwMTk1IDIxLjAwMzkgNi40MDE5NSAyMS4wMDM5IDcuMDAxOTVWMTcuMDAyQzIxLjAwMzkgMTcuNjAyIDIwLjYwMzkgMTguMDAyIDIwLjAwMzkgMTguMDAyWk0xMi4wMDM5IDguMDAxOTVDMTAuMzAzOSA4LjAwMTk1IDkuMDAzOTEgOS44MDE5NSA5LjAwMzkxIDEyLjAwMkM5LjAwMzkxIDE0LjIwMiAxMC4zMDM5IDE2LjAwMiAxMi4wMDM5IDE2LjAwMkMxMy43MDM5IDE2LjAwMiAxNS4wMDM5IDE0LjIwMiAxNS4wMDM5IDEyLjAwMkMxNS4wMDM5IDkuODAxOTUgMTMuNzAzOSA4LjAwMTk1IDEyLjAwMzkgOC4wMDE5NVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMEEzRkZcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xOC4wMDM5IDYuMDAxOTVIMjAuMDAzOUMyMC42MDM5IDYuMDAxOTUgMjEuMDAzOSA2LjQwMTk1IDIxLjAwMzkgNy4wMDE5NVY5LjAwMTk1QzE5LjMwMzkgOS4wMDE5NSAxOC4wMDM5IDcuNzAxOTUgMTguMDAzOSA2LjAwMTk1Wk02LjAwMzkxIDYuMDAxOTVINC4wMDM5MUMzLjQwMzkxIDYuMDAxOTUgMy4wMDM5MSA2LjQwMTk1IDMuMDAzOTEgNy4wMDE5NVY5LjAwMTk1QzQuNzAzOTEgOS4wMDE5NSA2LjAwMzkxIDcuNzAxOTUgNi4wMDM5MSA2LjAwMTk1Wk0yMS4wMDM5IDE3LjAwMlYxNS4wMDJDMTkuMzAzOSAxNS4wMDIgMTguMDAzOSAxNi4zMDIgMTguMDAzOSAxOC4wMDJIMjAuMDAzOUMyMC42MDM5IDE4LjAwMiAyMS4wMDM5IDE3LjYwMiAyMS4wMDM5IDE3LjAwMlpNMy4wMDM5MSAxNS4wMDJWMTcuMDAyQzMuMDAzOTEgMTcuNjAyIDMuNDAzOTEgMTguMDAyIDQuMDAzOTEgMTguMDAySDYuMDAzOTFDNi4wMDM5MSAxNi4zMDIgNC43MDM5MSAxNS4wMDIgMy4wMDM5MSAxNS4wMDJaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDBBM0ZGXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4gY2xhc3M9XCJoLTUwcHggY29sLW1kLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBwbGFjZW1lbnQ9XCJ0b3BcIiBuZ2JUb29sdGlwPVwiTm9CIERlcml2ZWRcIiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKm5nSWY9XCJjb252ZXJzaW9uVmFsdWUgIT09J05vQiBEZXJpdmVkJ1wiIChjbGljayk9XCJjaGFuZ2VWYWx1ZSgnTm9CIERlcml2ZWQnKVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIG9wYWNpdHk9XCIwLjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTguMDAzOSAyMS42MDA1QzE2LjMwMzkgMjEuNjAwNSAxNS4wMDM5IDIwLjMwMDUgMTUuMDAzOSAxOC42MDA1VjIuNTAwNUMxNS4wMDM5IDIuMjAwNSAxNC42MDM5IDIuMDAwNDUgMTQuMzAzOSAyLjIwMDQ1TDEzLjAwMzkgMy42MDA0OEwxMS43MDM5IDIuMzAwNDlDMTEuMzAzOSAxLjkwMDQ5IDEwLjcwMzkgMS45MDA0OSAxMC4zMDM5IDIuMzAwNDlMOS4wMDM5MSAzLjYwMDQ4TDcuNzAzOTIgMi4zMDA0OUM3LjMwMzkyIDEuOTAwNDkgNi43MDM5IDEuOTAwNDkgNi4zMDM5IDIuMzAwNDlMNS4wMDM5MSAzLjYwMDQ4TDMuNzAzOTIgMi4zMDA0OUMzLjUwMzkyIDIuMTAwNDkgMy4wMDM5MSAyLjIwMDUgMy4wMDM5MSAzLjUwMDVWMTguNjAwNUMzLjAwMzkxIDIwLjMwMDUgNC4zMDM5MSAyMS42MDA1IDYuMDAzOTEgMjEuNjAwNUgxOC4wMDM5WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiM5OEEyQjNcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTEyLjAwNTkgMTIuNTk3MkgxMS4wMDU5QzEwLjQwNTkgMTIuNTk3MiAxMC4wMDU5IDEyLjE5NzIgMTAuMDA1OSAxMS41OTcyQzEwLjAwNTkgMTAuOTk3MiAxMC40MDU5IDEwLjU5NzIgMTEuMDA1OSAxMC41OTcySDEyLjAwNTlDMTIuNjA1OSAxMC41OTcyIDEzLjAwNTkgMTAuOTk3MiAxMy4wMDU5IDExLjU5NzJDMTMuMDA1OSAxMi4xOTcyIDEyLjYwNTkgMTIuNTk3MiAxMi4wMDU5IDEyLjU5NzJaTTkuMDA1ODYgMTEuNTk3MkM5LjAwNTg2IDEwLjk5NzIgOC42MDU4NiAxMC41OTcyIDguMDA1ODYgMTAuNTk3Mkg2LjAwNTg2QzUuNDA1ODYgMTAuNTk3MiA1LjAwNTg2IDEwLjk5NzIgNS4wMDU4NiAxMS41OTcyQzUuMDA1ODYgMTIuMTk3MiA1LjQwNTg2IDEyLjU5NzIgNi4wMDU4NiAxMi41OTcySDguMDA1ODZDOC42MDU4NiAxMi41OTcyIDkuMDA1ODYgMTIuMTk3MiA5LjAwNTg2IDExLjU5NzJaTTkuMDA1ODYgNy41OTcxN0M5LjAwNTg2IDYuOTk3MTcgOC42MDU4NiA2LjU5NzE3IDguMDA1ODYgNi41OTcxN0g2LjAwNTg2QzUuNDA1ODYgNi41OTcxNyA1LjAwNTg2IDYuOTk3MTcgNS4wMDU4NiA3LjU5NzE3QzUuMDA1ODYgOC4xOTcxNyA1LjQwNTg2IDguNTk3MTcgNi4wMDU4NiA4LjU5NzE3SDguMDA1ODZDOC42MDU4NiA4LjU5NzE3IDkuMDA1ODYgOC4xOTcxNyA5LjAwNTg2IDcuNTk3MTdaTTEzLjAwNTkgNy41OTcxN0MxMy4wMDU5IDYuOTk3MTcgMTIuNjA1OSA2LjU5NzE3IDEyLjAwNTkgNi41OTcxN0gxMS4wMDU5QzEwLjQwNTkgNi41OTcxNyAxMC4wMDU5IDYuOTk3MTcgMTAuMDA1OSA3LjU5NzE3QzEwLjAwNTkgOC4xOTcxNyAxMC40MDU5IDguNTk3MTcgMTEuMDA1OSA4LjU5NzE3SDEyLjAwNTlDMTIuNjA1OSA4LjU5NzE3IDEzLjAwNTkgOC4xOTcxNyAxMy4wMDU5IDcuNTk3MTdaTTEzLjAwNTkgMTUuNTk3MkMxMy4wMDU5IDE0Ljk5NzIgMTIuNjA1OSAxNC41OTcyIDEyLjAwNTkgMTQuNTk3MkgxMC4wMDU5QzkuNDA1ODYgMTQuNTk3MiA5LjAwNTg2IDE0Ljk5NzIgOS4wMDU4NiAxNS41OTcyQzkuMDA1ODYgMTYuMTk3MiA5LjQwNTg2IDE2LjU5NzIgMTAuMDA1OSAxNi41OTcySDEyLjAwNTlDMTIuNjA1OSAxNi41OTcyIDEzLjAwNTkgMTYuMTk3MiAxMy4wMDU5IDE1LjU5NzJaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzk4QTJCM1wiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTUuMDAyIDE4LjU5NzFDMTUuMDAyIDIwLjI5NzEgMTYuMzAyIDIxLjU5NzEgMTguMDAyIDIxLjU5NzFDMTkuNzAyIDIxLjU5NzEgMjEuMDAyIDIwLjI5NzEgMjEuMDAyIDE4LjU5NzFWMTIuNDk3MUMyMS4wMDIgMTIuMTk3MSAyMC42MDIgMTEuOTk3MSAyMC4zMDIgMTIuMTk3MUwxOS4wMDIgMTMuNTk3MUwxNy43MDIgMTIuMjk3MUMxNy4zMDIgMTEuODk3MSAxNi43MDIgMTEuODk3MSAxNi4zMDIgMTIuMjk3MUwxNS4wMDIgMTMuNTk3MVYxOC41OTcxWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiM5OEEyQjNcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBwbGFjZW1lbnQ9XCJ0b3BcIiBuZ2JUb29sdGlwPVwiTm9CIERlcml2ZWRcIiAqbmdJZj1cImNvbnZlcnNpb25WYWx1ZSA9PT0nTm9CIERlcml2ZWQnXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggb3BhY2l0eT1cIjAuM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xOC4wMDM5IDIxLjYwMDVDMTYuMzAzOSAyMS42MDA1IDE1LjAwMzkgMjAuMzAwNSAxNS4wMDM5IDE4LjYwMDVWMi41MDA1QzE1LjAwMzkgMi4yMDA1IDE0LjYwMzkgMi4wMDA0NSAxNC4zMDM5IDIuMjAwNDVMMTMuMDAzOSAzLjYwMDQ4TDExLjcwMzkgMi4zMDA0OUMxMS4zMDM5IDEuOTAwNDkgMTAuNzAzOSAxLjkwMDQ5IDEwLjMwMzkgMi4zMDA0OUw5LjAwMzkxIDMuNjAwNDhMNy43MDM5MiAyLjMwMDQ5QzcuMzAzOTIgMS45MDA0OSA2LjcwMzkgMS45MDA0OSA2LjMwMzkgMi4zMDA0OUw1LjAwMzkxIDMuNjAwNDhMMy43MDM5MiAyLjMwMDQ5QzMuNTAzOTIgMi4xMDA0OSAzLjAwMzkxIDIuMjAwNSAzLjAwMzkxIDMuNTAwNVYxOC42MDA1QzMuMDAzOTEgMjAuMzAwNSA0LjMwMzkxIDIxLjYwMDUgNi4wMDM5MSAyMS42MDA1SDE4LjAwMzlaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwQTNGRlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTIuMDA1OSAxMi41OTcySDExLjAwNTlDMTAuNDA1OSAxMi41OTcyIDEwLjAwNTkgMTIuMTk3MiAxMC4wMDU5IDExLjU5NzJDMTAuMDA1OSAxMC45OTcyIDEwLjQwNTkgMTAuNTk3MiAxMS4wMDU5IDEwLjU5NzJIMTIuMDA1OUMxMi42MDU5IDEwLjU5NzIgMTMuMDA1OSAxMC45OTcyIDEzLjAwNTkgMTEuNTk3MkMxMy4wMDU5IDEyLjE5NzIgMTIuNjA1OSAxMi41OTcyIDEyLjAwNTkgMTIuNTk3MlpNOS4wMDU4NiAxMS41OTcyQzkuMDA1ODYgMTAuOTk3MiA4LjYwNTg2IDEwLjU5NzIgOC4wMDU4NiAxMC41OTcySDYuMDA1ODZDNS40MDU4NiAxMC41OTcyIDUuMDA1ODYgMTAuOTk3MiA1LjAwNTg2IDExLjU5NzJDNS4wMDU4NiAxMi4xOTcyIDUuNDA1ODYgMTIuNTk3MiA2LjAwNTg2IDEyLjU5NzJIOC4wMDU4NkM4LjYwNTg2IDEyLjU5NzIgOS4wMDU4NiAxMi4xOTcyIDkuMDA1ODYgMTEuNTk3MlpNOS4wMDU4NiA3LjU5NzE3QzkuMDA1ODYgNi45OTcxNyA4LjYwNTg2IDYuNTk3MTcgOC4wMDU4NiA2LjU5NzE3SDYuMDA1ODZDNS40MDU4NiA2LjU5NzE3IDUuMDA1ODYgNi45OTcxNyA1LjAwNTg2IDcuNTk3MTdDNS4wMDU4NiA4LjE5NzE3IDUuNDA1ODYgOC41OTcxNyA2LjAwNTg2IDguNTk3MTdIOC4wMDU4NkM4LjYwNTg2IDguNTk3MTcgOS4wMDU4NiA4LjE5NzE3IDkuMDA1ODYgNy41OTcxN1pNMTMuMDA1OSA3LjU5NzE3QzEzLjAwNTkgNi45OTcxNyAxMi42MDU5IDYuNTk3MTcgMTIuMDA1OSA2LjU5NzE3SDExLjAwNTlDMTAuNDA1OSA2LjU5NzE3IDEwLjAwNTkgNi45OTcxNyAxMC4wMDU5IDcuNTk3MTdDMTAuMDA1OSA4LjE5NzE3IDEwLjQwNTkgOC41OTcxNyAxMS4wMDU5IDguNTk3MTdIMTIuMDA1OUMxMi42MDU5IDguNTk3MTcgMTMuMDA1OSA4LjE5NzE3IDEzLjAwNTkgNy41OTcxN1pNMTMuMDA1OSAxNS41OTcyQzEzLjAwNTkgMTQuOTk3MiAxMi42MDU5IDE0LjU5NzIgMTIuMDA1OSAxNC41OTcySDEwLjAwNTlDOS40MDU4NiAxNC41OTcyIDkuMDA1ODYgMTQuOTk3MiA5LjAwNTg2IDE1LjU5NzJDOS4wMDU4NiAxNi4xOTcyIDkuNDA1ODYgMTYuNTk3MiAxMC4wMDU5IDE2LjU5NzJIMTIuMDA1OUMxMi42MDU5IDE2LjU5NzIgMTMuMDA1OSAxNi4xOTcyIDEzLjAwNTkgMTUuNTk3MlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDBBM0ZGXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xNS4wMDIgMTguNTk3MUMxNS4wMDIgMjAuMjk3MSAxNi4zMDIgMjEuNTk3MSAxOC4wMDIgMjEuNTk3MUMxOS43MDIgMjEuNTk3MSAyMS4wMDIgMjAuMjk3MSAyMS4wMDIgMTguNTk3MVYxMi40OTcxQzIxLjAwMiAxMi4xOTcxIDIwLjYwMiAxMS45OTcxIDIwLjMwMiAxMi4xOTcxTDE5LjAwMiAxMy41OTcxTDE3LjcwMiAxMi4yOTcxQzE3LjMwMiAxMS44OTcxIDE2LjcwMiAxMS44OTcxIDE2LjMwMiAxMi4yOTcxTDE1LjAwMiAxMy41OTcxVjE4LjU5NzFaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwQTNGRlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1mb290ZXIgbXMtMyBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBwZS0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtdC0yIGNvbC1tZC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCIoY29udmVyc2lvblZhbHVlID09PSdmb290ZmFsbCcgJiYgIWdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZm9vdGZhbGwuUHJldmlvdXNWYXJpYXRpb24pIHx8IChjb252ZXJzaW9uVmFsdWUgPT09J2VuZ2FnZXJzJyAmJiAhZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5lbmdhZ2Vycy5QcmV2aW91c1ZhcmlhdGlvbikgfHwgKGNvbnZlcnNpb25WYWx1ZSA9PT0nUG90ZW50aWFsIEJ1eWVycycgJiYgIWdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8ucG90ZW50aWFsQnV5ZXJzLlByZXZpb3VzVmFyaWF0aW9uKSB8fCAoY29udmVyc2lvblZhbHVlID09PSdOb0IgRGVyaXZlZCcgJiYgIWdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8ubm9iLlByZXZpb3VzVmFyaWF0aW9uKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTggMThcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8yMzI4XzQ2NTQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMS41IDlMNi43NSA0LjI1TDQuMjUgNi43NUwwLjUgM00xMS41IDlIOC41TTExLjUgOVY2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiI0Q5MkQyMFwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8yMzI4XzQ2NTRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cIihjb252ZXJzaW9uVmFsdWUgPT09J2Zvb3RmYWxsJyAmJiBnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LmZvb3RmYWxsLlByZXZpb3VzVmFyaWF0aW9uKSB8fCAoY29udmVyc2lvblZhbHVlID09PSdlbmdhZ2VycycgJiYgZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5lbmdhZ2Vycy5QcmV2aW91c1ZhcmlhdGlvbikgfHwgKGNvbnZlcnNpb25WYWx1ZSA9PT0nUG90ZW50aWFsIEJ1eWVycycgJiYgZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5wb3RlbnRpYWxCdXllcnMuUHJldmlvdXNWYXJpYXRpb24pIHx8IChjb252ZXJzaW9uVmFsdWUgPT09J05vQiBEZXJpdmVkJyAmJiBnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/Lm5vYi5QcmV2aW91c1ZhcmlhdGlvbilcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzIxNl8xMTgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMS41IDNMNi43NSA3Ljc1TDQuMjUgNS4yNUwwLjUgOU0xMS41IDNIOC41TTExLjUgM1Y2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzAzOTg1NVwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8zMjE2XzExOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtdC0yIGNvbC1tZC05IHBlLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udmVyc2lvblZhbHVlID09PSdmb290ZmFsbCcgJiYgZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5mb290ZmFsbC5QcmV2aW91c0RhdGEgPT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj4wJTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udmVyc2lvblZhbHVlID09PSdmb290ZmFsbCcgJiYgZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5mb290ZmFsbC5QcmV2aW91c0RhdGEgIT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj57e2dldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZm9vdGZhbGwuUHJldmlvdXNEYXRhXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LmZvb3RmYWxsLlByZXZpb3VzRGF0YTonLS0nfX0lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjb252ZXJzaW9uVmFsdWUgPT09J2VuZ2FnZXJzJyAmJiBnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LmVuZ2FnZXJzLlByZXZpb3VzRGF0YSA9PT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiPjAlPC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udmVyc2lvblZhbHVlID09PSdlbmdhZ2VycycgJiYgZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5lbmdhZ2Vycy5QcmV2aW91c0RhdGEgIT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj57e2dldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8uZW5nYWdlcnMuUHJldmlvdXNEYXRhXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LmVuZ2FnZXJzLlByZXZpb3VzRGF0YTonLS0nfX0lPC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udmVyc2lvblZhbHVlID09PSdQb3RlbnRpYWwgQnV5ZXJzJyAmJiBnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LnBvdGVudGlhbEJ1eWVycy5QcmV2aW91c0RhdGEgPT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj4wJTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udmVyc2lvblZhbHVlID09PSdQb3RlbnRpYWwgQnV5ZXJzJyAmJiBnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LnBvdGVudGlhbEJ1eWVycy5QcmV2aW91c0RhdGEgIT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj57e2dldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8ucG90ZW50aWFsQnV5ZXJzLlByZXZpb3VzRGF0YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0Q29udmVyc2lvbkNhcmREYXRhPy5jb252ZXJzaW9uPy5wb3RlbnRpYWxCdXllcnMuUHJldmlvdXNEYXRhOictLSd9fSU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImNvbnZlcnNpb25WYWx1ZSA9PT0nTm9CIERlcml2ZWQnICYmIGdldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8ubm9iLlByZXZpb3VzRGF0YSA9PT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiPjAlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjb252ZXJzaW9uVmFsdWUgPT09J05vQiBEZXJpdmVkJyAmJiBnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/Lm5vYi5QcmV2aW91c0RhdGEgIT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj57e2dldENvbnZlcnNpb25DYXJkRGF0YT8uY29udmVyc2lvbj8ubm9iLlByZXZpb3VzRGF0YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/Lm5vYi5QcmV2aW91c0RhdGE6Jy0tJ319JTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8c3BhbiAqbmdJZj1cImNvbnZlcnNpb25WYWx1ZSA9PT0nTm9CIERlcml2ZWQnXCIgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+LS0lPC9zcGFuPiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8c3BhbiAqbmdJZj1cImNvbnZlcnNpb25WYWx1ZSA9PT0nJyAmJiBnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LlByZXZpb3VzRGF0YSA9PT0wXCIgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+MCU8L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNvbnZlcnNpb25WYWx1ZSA9PT0nJyAmJiBnZXRDb252ZXJzaW9uQ2FyZERhdGE/LmNvbnZlcnNpb24/LlByZXZpb3VzRGF0YSAhPT0wXCIgIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiPnt7Z2V0Q2FyZEdyYXBoRGF0YT8uY29udmVyc2lvbj8uUHJldmlvdXNEYXRhID8gZ2V0Q2FyZEdyYXBoRGF0YT8uY29udmVyc2lvbj8uUHJldmlvdXNEYXRhOictLSd9fSU8L3NwYW4+IC0tPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3ZWVrLWZvbnRcIj4gdnMgUHJldmlvdXMgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSdkYWlseSdcIj5kYXk8L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSd3ZWVrbHknXCI+d2Vlazwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSdtb250aGx5J1wiPm1vbnRoPC9zcGFuPjwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmlzTk9CXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjb2wtbWQtMiBweC0wIGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm5vYlVwbG9hZCgpXCI+PHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwidG9wXCIgbmdiVG9vbHRpcD1cIlVwbG9hZCBOb0JcIiB3aWR0aD1cIjMyXCIgaGVpZ2h0PVwiMzJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAzMiAzMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgZmlsdGVyPVwidXJsKCNmaWx0ZXIwX2RfNjE2MF80Mzk0KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHg9XCIyXCIgeT1cIjFcIiB3aWR0aD1cIjI4XCIgaGVpZ2h0PVwiMjhcIiByeD1cIjYuMjIyMjJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiI0VBRjhGRlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeD1cIjIuMzg4ODlcIiB5PVwiMS4zODg4OVwiIHdpZHRoPVwiMjcuMjIyMlwiIGhlaWdodD1cIjI3LjIyMjJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByeD1cIjUuODMzMzNcIiBzdHJva2U9XCIjRUFGOEZGXCIgc3Ryb2tlLXdpZHRoPVwiMC43Nzc3NzhcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfNjE2MF80Mzk0KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xOC41OTI5IDE3LjU5MjZMMTYuMDAwMyAxNU0xNi4wMDAzIDE1TDEzLjQwNzcgMTcuNTkyNk0xNi4wMDAzIDE1VjIwLjgzMzNNMjEuNDM4MiAxOS4xNDE3QzIyLjA3MDQgMTguNzk3IDIyLjU2OTggMTguMjUxNyAyMi44NTc2IDE3LjU5MTdDMjMuMTQ1NCAxNi45MzE3IDIzLjIwNTIgMTYuMTk0NyAyMy4wMjc2IDE1LjQ5NjlDMjIuODUgMTQuNzk5MiAyMi40NDUxIDE0LjE4MDQgMjEuODc2OCAxMy43Mzg0QzIxLjMwODUgMTMuMjk2MyAyMC42MDkyIDEzLjA1NiAxOS44ODkyIDEzLjA1NTZIMTkuMDcyNUMxOC44NzYzIDEyLjI5NjcgMTguNTEwNyAxMS41OTIzIDE4LjAwMyAxMC45OTUxQzE3LjQ5NTQgMTAuMzk3OSAxNi44NTkgOS45MjM2MiAxNi4xNDE2IDkuNjA3ODJDMTUuNDI0MyA5LjI5MjAxIDE0LjY0NDcgOS4xNDI5MyAxMy44NjE1IDkuMTcxNzlDMTMuMDc4MiA5LjIwMDY1IDEyLjMxMTcgOS40MDY2OSAxMS42MTk2IDkuNzc0NDNDMTAuOTI3NCAxMC4xNDIyIDEwLjMyNzYgMTAuNjYyIDkuODY1MzEgMTEuMjk0OUM5LjQwMjk5IDExLjkyNzggOS4wOTAxNiAxMi42NTczIDguOTUwMzUgMTMuNDI4NUM4LjgxMDU0IDE0LjE5OTcgOC44NDczOCAxNC45OTI2IDkuMDU4MSAxNS43NDc1QzkuMjY4ODEgMTYuNTAyNCA5LjY0NzkzIDE3LjE5OTcgMTAuMTY2OSAxNy43ODcxXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMwMDlCRjNcIiBzdHJva2Utd2lkdGg9XCIxLjI5ODg5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpbHRlciBpZD1cImZpbHRlcjBfZF82MTYwXzQzOTRcIiB4PVwiMC40NDQ0NDRcIiB5PVwiMC4yMjIyMjJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjMxLjExMTFcIiBoZWlnaHQ9XCIzMS4xMTExXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz1cInNSR0JcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT1cIjBcIiByZXN1bHQ9XCJCYWNrZ3JvdW5kSW1hZ2VGaXhcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCBpbj1cIlNvdXJjZUFscGhhXCIgdHlwZT1cIm1hdHJpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9XCIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAxMjcgMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ9XCJoYXJkQWxwaGFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVPZmZzZXQgZHk9XCIwLjc3Nzc3OFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249XCIwLjc3Nzc3OFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUNvbG9yTWF0cml4IHR5cGU9XCJtYXRyaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPVwiMCAwIDAgMCAwLjA2Mjc0NTEgMCAwIDAgMCAwLjA5NDExNzYgMCAwIDAgMCAwLjE1Njg2MyAwIDAgMCAwLjA1IDBcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVCbGVuZCBtb2RlPVwibm9ybWFsXCIgaW4yPVwiQmFja2dyb3VuZEltYWdlRml4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdD1cImVmZmVjdDFfZHJvcFNoYWRvd182MTYwXzQzOTRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVCbGVuZCBtb2RlPVwibm9ybWFsXCIgaW49XCJTb3VyY2VHcmFwaGljXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluMj1cImVmZmVjdDFfZHJvcFNoYWRvd182MTYwXzQzOTRcIiByZXN1bHQ9XCJzaGFwZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9maWx0ZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfNjE2MF80Mzk0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTUuNTU1NlwiIGhlaWdodD1cIjE1LjU1NTZcIiBmaWxsPVwid2hpdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDguMjIyNjYgNy4yMjIyMylcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTRcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGNhcmQtYm9yZGVyIGgtMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGVsbGlwc2UxIGJvcmRlci0wIHB4LTNcIiBbbmdiVG9vbHRpcF09XCJib3VuY2VkVG9vbHRpcFwiIHBsYWNlbWVudD1cInJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW4gXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcmQtbGFiZWwgaGVhZGVyXCI+e3tnZXRCb3VuY2VkQ2FyZERhdGE/LmNhcmQ/LmJvdW5jZWQ/LnJhdGUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldEJvdW5jZWRDYXJkRGF0YT8uY2FyZD8uYm91bmNlZD8ucmF0ZSA6Jy0tJ319JTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLWhlYWRlclwiPjxzcGFuICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiPkJvdW5jZWQgPC9zcGFuPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1MidcIj5MZXNzIHRoYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uYm91bmNlZExpbWl0Py52YWx1ZX19IG1pbnMgPC9zcGFuPiBSYXRlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjYm91bmNlZFRvb2x0aXA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b29sdGlwLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz1cInRvb2x0aXAtdGl0bGUgdGV4dC1zdGFydFwiICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiPkJvdW5jZWQgUmF0ZTwvaDU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cInRleHQtc3RhcnRcIj5Ub3RhbCB3YWxrLWlucyB3aG8gc3BlbnQgbGVzcyB0aGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uYm91bmNlZExpbWl0Py52YWx1ZX19IG1pbnMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgcC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJib3VuY2VkTm9kYXRhXCIgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXJkLWJvZHkgcGItMCBweC0wIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiaW1nLW5vZGF0YTFcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGExLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXRpdGxlMVwiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwibm9kYXRhLXN1YlwiPlRoZXJlIGlzIG5vIHJlc3VsdCBmb3IgdGhpcyBjb252ZXJzaW9uIGZ1bm5lbDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFib3VuY2VkTm9kYXRhXCIgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiIGlkPVwiQm91bmNlZFJhdGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1mb290ZXIgbXMtMiBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtdC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cImdldEJvdW5jZWRDYXJkRGF0YT8uZGF0YT8uYm91bmNlZD8uUHJldmlvdXNWYXJpYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAxOCAxOFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMjMyOF80NjU0KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMS41IDlMNi43NSA0LjI1TDQuMjUgNi43NUwwLjUgM00xMS41IDlIOC41TTExLjUgOVY2XCIgc3Ryb2tlPVwiIzAzOTg1NVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzIzMjhfNDY1NFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCIhZ2V0Qm91bmNlZENhcmREYXRhPy5kYXRhPy5ib3VuY2VkPy5QcmV2aW91c1ZhcmlhdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zMjE2XzExOClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTEuNSAzTDYuNzUgNy43NUw0LjI1IDUuMjVMMC41IDlNMTEuNSAzSDguNU0xMS41IDNWNlwiIHN0cm9rZT1cIiNEOTJEMjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8zMjE2XzExOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8c3ZnICpuZ0lmPVwiZ2V0Qm91bmNlZENhcmREYXRhPy5kYXRhPy5ib3VuY2VkPy5QcmV2aW91c1ZhcmlhdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zMjE2XzExOClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTEuNSAzTDYuNzUgNy43NUw0LjI1IDUuMjVMMC41IDlNMTEuNSAzSDguNU0xMS41IDNWNlwiIHN0cm9rZT1cIiMwMzk4NTVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8zMjE2XzExOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtdC0yIG1zLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImdldEJvdW5jZWRDYXJkRGF0YT8uZGF0YT8uYm91bmNlZD8uUHJldmlvdXNEYXRhID09PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj4wJTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImdldEJvdW5jZWRDYXJkRGF0YT8uZGF0YT8uYm91bmNlZD8uUHJldmlvdXNEYXRhICE9PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj57e2dldEJvdW5jZWRDYXJkRGF0YT8uZGF0YT8uYm91bmNlZD8uUHJldmlvdXNEYXRhID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0Qm91bmNlZENhcmREYXRhPy5kYXRhPy5ib3VuY2VkPy5QcmV2aW91c0RhdGE6Jy0tJ319JTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIndlZWstZm9udFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2cyBQcmV2aW91cyA8c3BhbiAqbmdJZj1cImRhdGVUeXBlID09PSdkYWlseSdcIj5kYXk8L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J3dlZWtseSdcIj53ZWVrPC9zcGFuPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJkYXRlVHlwZSA9PT0nbW9udGhseSdcIj5tb250aDwvc3Bhbj48L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC00IG10LTNcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGNhcmQtYm9yZGVyIGgtMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGVsbGlwc2UxIGJvcmRlci0wIHB4LTNcIiBbbmdiVG9vbHRpcF09XCJlbmdhZ2Vyc1Rvb2x0aXBcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tICAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtbiBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2FyZC1sYWJlbCBoZWFkZXJcIj57e2dldEVuZ2FnZXJzQ2FyZERhdGE/LmNhcmQ/LmVuZ2FnZXJzPy5yYXRlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRFbmdhZ2Vyc0NhcmREYXRhPy5jYXJkPy5lbmdhZ2Vycz8ucmF0ZSA6Jy0tJ319JTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLWhlYWRlclwiPjxzcGFuICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiPkVuZ2FnZXJzPC9zcGFuPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1MidcIj5Nb3JlIHRoYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uYm91bmNlZExpbWl0Py52YWx1ZX19IG1pbnM8L3NwYW4+IFJhdGU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNlbmdhZ2Vyc1Rvb2x0aXA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b29sdGlwLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz1cInRvb2x0aXAtdGl0bGUgdGV4dC1zdGFydFwiICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiPkVuZ2FnZXJzIFJhdGU8L2g1PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXN0YXJ0XCI+VG90YWwgd2Fsay1pbnMgd2hvIHNwZW50IG1vcmUgdGhhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Y2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmJvdW5jZWRMaW1pdD8udmFsdWV9fSBtaW5zIGludG8gdGhlIHNlbGVjdGVkIHN0b3Jlcy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZW5nYWdlcnNOb2RhdGFcIiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhcmQtYm9keSBwYi0wIHB4LTAgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctbm9kYXRhMVwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ljb25zL05vZGF0YTEuc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtdGl0bGUxXCI+Tm8gZGF0YSBmb3VuZDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJub2RhdGEtc3ViXCI+VGhlcmUgaXMgbm8gcmVzdWx0IGZvciB0aGlzIGNvbnZlcnNpb24gZnVubmVsPC9kaXY+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIWVuZ2FnZXJzTm9kYXRhXCIgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiIGlkPVwiZW5nYWdlcnNcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1mb290ZXIgbXMtMiBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtdC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cIiFnZXRFbmdhZ2Vyc0NhcmREYXRhPy5kYXRhPy5lbmdhZ2Vycz8uUHJldmlvdXNWYXJpYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAxOCAxOFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMjMyOF80NjU0KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMS41IDlMNi43NSA0LjI1TDQuMjUgNi43NUwwLjUgM00xMS41IDlIOC41TTExLjUgOVY2XCIgc3Ryb2tlPVwiI0Q5MkQyMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzIzMjhfNDY1NFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cImdldEVuZ2FnZXJzQ2FyZERhdGE/LmRhdGE/LmVuZ2FnZXJzPy5QcmV2aW91c1ZhcmlhdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zMjE2XzExOClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTEuNSAzTDYuNzUgNy43NUw0LjI1IDUuMjVMMC41IDlNMTEuNSAzSDguNU0xMS41IDNWNlwiIHN0cm9rZT1cIiMwMzk4NTVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8zMjE2XzExOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm10LTIgbXMtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZ2V0RW5nYWdlcnNDYXJkRGF0YT8uZGF0YT8uZW5nYWdlcnM/LlByZXZpb3VzRGF0YSA9PT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+MCU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJnZXRFbmdhZ2Vyc0NhcmREYXRhPy5kYXRhPy5lbmdhZ2Vycz8uUHJldmlvdXNEYXRhICE9PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj57e2dldEVuZ2FnZXJzQ2FyZERhdGE/LmRhdGE/LmVuZ2FnZXJzPy5QcmV2aW91c0RhdGEgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRFbmdhZ2Vyc0NhcmREYXRhPy5kYXRhPy5lbmdhZ2Vycz8uUHJldmlvdXNEYXRhOictLSd9fSU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3ZWVrLWZvbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdnMgUHJldmlvdXMgPHNwYW4gKm5nSWY9XCJkYXRlVHlwZSA9PT0nZGFpbHknXCI+ZGF5PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSd3ZWVrbHknXCI+d2Vlazwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J21vbnRobHknXCI+bW9udGg8L3NwYW4+PC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBjYXJkLWJvcmRlciBoLTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInXCIgY2xhc3M9XCJjYXJkLWhlYWRlciBlbGxpcHNlMSBib3JkZXItMCBweC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2FyZC1sYWJlbCBoZWFkZXJcIj57e2dldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8ubWlzc2Vkb3Bwb3J0dW5pdGllcz8ucmF0ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5taXNzZWRvcHBvcnR1bml0aWVzPy5yYXRlIDonLS0nfX0lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWItaGVhZGVyXCI+PHNwYW4gKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgIT09ICc0NTInXCI+TWlzc2VkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9wcG9ydHVuaXRpZXM8L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInXCI+e3tjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8ubWlzc2VkT3Bwb3J0dW5pdHlGcm9tPy52YWx1ZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0ge3tjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8ubWlzc2VkT3Bwb3J0dW5pdHlUbz8udmFsdWV9fSBtaW5zPC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiIGNsYXNzPVwiY2FyZC1oZWFkZXIgZWxsaXBzZTEgYm9yZGVyLTAgcHgtM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ2JUb29sdGlwXT1cIm1pc3NlZFRvb2x0aXBcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcmQtbGFiZWwgaGVhZGVyXCI+e3tnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/Lm1pc3NlZG9wcG9ydHVuaXRpZXM/LnJhdGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8ubWlzc2Vkb3Bwb3J0dW5pdGllcz8ucmF0ZSA6Jy0tJ319JTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLWhlYWRlclwiPjxzcGFuICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiPk1pc3NlZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPcHBvcnR1bml0aWVzPC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJ1wiPnt7Y2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/Lm1pc3NlZE9wcG9ydHVuaXR5RnJvbT8udmFsdWV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtIHt7Y2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/Lm1pc3NlZE9wcG9ydHVuaXR5VG8/LnZhbHVlfX0gbWluczwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNtaXNzZWRUb29sdGlwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9vbHRpcC1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9XCJ0b29sdGlwLXRpdGxlIHRleHQtc3RhcnRcIiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0gJzQ1MidcIj5NaXNzZWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPcHBvcnR1bml0aWVzPC9oNT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiIGNsYXNzPVwidGV4dC1zdGFydFwiPlRoZSBkaWZmZXJlbmNlIGJldHdlZW4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8ubWlzc2VkT3Bwb3J0dW5pdHlDYWxjdWxhdGlvbiA9PT0gJ2VuZ2FnZXJzLWNvbnZlcnNpb24nIHx8IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FsY3VsYXRpb24gPT09ICdncm91cC1jb252ZXJzaW9uJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8ubWlzc2VkT3Bwb3J0dW5pdHlDYWxjdWxhdGlvbiA9PT1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2VuZ2FnZXJzLWNvbnZlcnNpb24nID8gJ2VuZ2FnZXJzIGFuZCBjb252ZXJzaW9ucywnIDogJ3BvdGVudGlhbCBhbmQgY29udmVyc2lvbnMsJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93aW5nIHBvdGVudGlhbCBsb3NzLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJ1wiIGNsYXNzPVwidGV4dC1zdGFydFwiPlRoZSBkaWZmZXJlbmNlIGJldHdlZW4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8ubWlzc2VkT3Bwb3J0dW5pdHlDYWxjdWxhdGlvbiA9PT0gJ2VuZ2FnZXJzLWNvbnZlcnNpb24nIHx8IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FsY3VsYXRpb24gPT09ICdncm91cC1jb252ZXJzaW9uJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8ubWlzc2VkT3Bwb3J0dW5pdHlDYWxjdWxhdGlvbiA9PT0gJ2VuZ2FnZXJzLWNvbnZlcnNpb24nXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gKCdNb3JlIHRoYW4gJyArIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdD8udmFsdWUgKyAnIG1pbnMgYW5kIE1vcmUgdGhhbiAnICtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmVhdHVyZUNvbmZpZz8uY29udmVyc2lvbj8udmFsdWUgKyAnIG1pbnMnKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICgncG90ZW50aWFsIGFuZCBNb3JlIHRoYW4gJysgZmVhdHVyZUNvbmZpZz8uY29udmVyc2lvbj8udmFsdWUrICcgbWlucycpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNob3dpbmcgcG90ZW50aWFsIGxvc3MuPC9wPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMCBoLTkwcHggbXQtMyBteC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgIT09JzQ1MidcIiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC05XCI+PCEtLXt7Z2V0Q2FyZERhdGE/LnJldmVudWU/LnZhbHVlID8/ICctLSd9fSAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJteS0yXCI+PHNwYW4gY2xhc3M9XCJjYXJkLWxhYmVsIGhlYWRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtZS0xXCI+e3tnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LnJldmVudWU/LmN1cnJlbmN5fX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8ucmV2ZW51ZT8udmFsdWUudG9Mb2NhbGVTdHJpbmcoJ2VuLUlOJykgPz8gJy0tJ319PC9zcGFuPjwvZGl2PiAtLT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjYXJkLWxhYmVsIGhlYWRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5yZXZlbnVlPy5jdXJyZW5jeSB9fTwvc3Bhbj4mbmJzcDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nU3R5bGVdPVwie1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1zaXplJzogKGdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8ucmV2ZW51ZT8udmFsdWU/Lmxlbmd0aCA+IDYgPyAnMThweCcgOiAnMjBweCcpfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8ucmV2ZW51ZT8udmFsdWUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LnJldmVudWU/LnZhbHVlIHwgbnVtYmVyKSA6ICctLScgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cIm15LTJcIiAqbmdJZj1cImdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8ucmV2ZW51ZT8uY3VycmVuY3kgPT09J2FlZCdcIj4gPHNwYW4gY2xhc3M9XCJjYXJkLWxhYmVsIGhlYWRlclwiPjxzcGFuIGNsYXNzPVwibWUtMVwiPtivLtilPC9zcGFuPiB7e2dldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8ucmV2ZW51ZT8udmFsdWUudG9Mb2NhbGVTdHJpbmcoJ2VuLUlOJykgPz8gJy0tJ319PC9zcGFuPjwvZGl2PiAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0yXCIgKm5nSWY9XCJnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LnJldmVudWU/LmN1cnJlbmN5ID09PSdpbnInXCI+IDxzcGFuIGNsYXNzPVwiY2FyZC1sYWJlbCBoZWFkZXIxXCIgIFtuZ1N0eWxlXT1cIntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtc2l6ZSc6IChnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LnJldmVudWU/LnZhbHVlLnRvTG9jYWxlU3RyaW5nKCdlbi1JTicpPy5sZW5ndGggPiA2ID8gJzE4cHgnIDogJzIwcHgnKX1cIj48c3BhbiBjbGFzcz1cIm1lLTFcIj7igrk8L3NwYW4+e3tnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LnJldmVudWU/LnZhbHVlLnRvTG9jYWxlU3RyaW5nKCdlbi1JTicpID8/ICctLSd9fTwvc3Bhbj48L2Rpdj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTFcIj48c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgIT09ICc0NTInXCI+UG90ZW50aWFsIFJldmVudWUgTG9zcyA8L3NwYW4+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMyBtdC01XCI+PHN2ZyBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cImdvVG9Mb3NzKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCI0MFwiIGhlaWdodD1cIjQwXCIgdmlld0JveD1cIjAgMCA0MCA0MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGZpbHRlcj1cInVybCgjZmlsdGVyMF9kXzM4ODVfMjUzMSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHg9XCIyXCIgeT1cIjFcIiB3aWR0aD1cIjM2XCIgaGVpZ2h0PVwiMzZcIiByeD1cIjhcIiBmaWxsPVwiI0VBRjhGRlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB4PVwiMi41XCIgeT1cIjEuNVwiIHdpZHRoPVwiMzVcIiBoZWlnaHQ9XCIzNVwiIHJ4PVwiNy41XCIgc3Ryb2tlPVwiI0VBRjhGRlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzM4ODVfMjUzMSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTI3LjQ1ODUgMTcuMjI1MUMyNy44MTMzIDE4Ljg1NTYgMjcuNjcwNyAyMC41NjE0IDI3LjA1MDUgMjIuMTAyN0wyNS44NTkzIDIxLjM4MzhMMjYuMDE3IDI2LjA5N0wzMCAyMy44ODM0TDI4LjcxNyAyMy4xMDg2QzMwLjcxNzEgMTguNDgyMyAyOS4wNzI2IDEyLjkzMzMgMjQuNzc5OSAxMC4zNDA3QzIzLjMzMjggOS40NjYzMyAyMS42OTE4IDkuMDA0MDYgMjAuMDIwNiA5LjAwMDAzQzE4LjM0OTQgOC45OTU5OSAxNi43MDY0IDkuNDUwMzMgMTUuMjU1NSAxMC4zMTc3TDE2LjIwNDkgMTIuMDU0NEMxNy41OTMzIDExLjIyNDkgMTkuMTk1MyAxMC44NzEyIDIwLjc4NTggMTEuMDQzQzIyLjM3NjQgMTEuMjE0OSAyMy44NzU0IDExLjkwMzYgMjUuMDcyMyAxMy4wMTI1QzI2LjI2OTIgMTQuMTIxNCAyNy4xMDM3IDE1LjU5NDYgMjcuNDU4NSAxNy4yMjUxWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDBBM0ZGXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTEyLjU0MDIgMjAuNzc1OUMxMi4xODU0IDE5LjE0NTIgMTIuMzI4MiAxNy40MzkyIDEyLjk0ODUgMTUuODk3OEwxNC4xMzk4IDE2LjYxNjdMMTMuOTgyIDExLjkwMzVMMTAgMTQuMTE4MUwxMS4yODMgMTQuODkwOUM5LjI4MTk5IDE5LjUxODIgMTAuOTI2NCAyNS4wNjYyIDE1LjIxOTIgMjcuNjU4OEMxNi42NjYxIDI4LjUzMzMgMTguMzA3MSAyOC45OTU4IDE5Ljk3ODMgMjlDMjEuNjQ5NSAyOS4wMDQyIDIzLjI5MjYgMjguNTUgMjQuNzQzNSAyNy42ODI4TDIzLjc5NTEgMjUuOTQ2MUMyMi40MDY3IDI2Ljc3NiAyMC44MDQ1IDI3LjEzIDE5LjIxMzggMjYuOTU4M0MxNy42MjMgMjYuNzg2NyAxNi4xMjM3IDI2LjA5NzkgMTQuOTI2NyAyNC45ODlDMTMuNzI5NiAyMy44OCAxMi44OTUgMjIuNDA2NiAxMi41NDAyIDIwLjc3NTlaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMEEzRkZcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0yMS4wMzcyIDEzLjAwM0MyMS4wMzcyIDEyLjU1MTQgMjAuNjg3MSAxMi4xODUyIDIwLjI1NTIgMTIuMTg1MkMxOS44MjM0IDEyLjE4NTIgMTkuNDczMyAxMi41NTE0IDE5LjQ3MzMgMTMuMDAzVjE0LjM2NTlIMTguOTUyQzE4LjI2MDcgMTQuMzY1OSAxNy41OTc4IDE0LjY1MyAxNy4xMDkgMTUuMTY0MkMxNi42MjAxIDE1LjY3NTQgMTYuMzQ1NSAxNi4zNjg3IDE2LjM0NTUgMTcuMDkxNkMxNi4zNDU1IDE3LjgxNDYgMTYuNjIwMSAxOC41MDc5IDE3LjEwOSAxOS4wMTkxQzE3LjU5NzggMTkuNTMwMiAxOC4yNjA3IDE5LjgxNzQgMTguOTUyIDE5LjgxNzRIMTkuNDczM1YyMS45OThIMTcuMTI3NUMxNi42OTU2IDIxLjk5OCAxNi4zNDU1IDIyLjM2NDEgMTYuMzQ1NSAyMi44MTU4QzE2LjM0NTUgMjMuMjY3NCAxNi42OTU2IDIzLjYzMzUgMTcuMTI3NSAyMy42MzM1SDE5LjQ3MzNWMjQuOTk2NEMxOS40NzMzIDI1LjQ0OCAxOS44MjM0IDI1LjgxNDEgMjAuMjU1MiAyNS44MTQxQzIwLjY4NzEgMjUuODE0MSAyMS4wMzcyIDI1LjQ0OCAyMS4wMzcyIDI0Ljk5NjRWMjMuNjMzNUgyMS41NTg1QzIyLjI0OTggMjMuNjMzNSAyMi45MTI3IDIzLjM0NjMgMjMuNDAxNSAyMi44MzUxQzIzLjg5MDMgMjIuMzI0IDI0LjE2NDkgMjEuNjMwNiAyNC4xNjQ5IDIwLjkwNzdDMjQuMTY0OSAyMC4xODQ4IDIzLjg5MDMgMTkuNDkxNSAyMy40MDE1IDE4Ljk4MDNDMjIuOTEyNyAxOC40NjkxIDIyLjI0OTggMTguMTgyIDIxLjU1ODUgMTguMTgySDIxLjAzNzJWMTYuMDAxM0gyMi44NjE3QzIzLjI5MzYgMTYuMDAxMyAyMy42NDM3IDE1LjYzNTIgMjMuNjQzNyAxNS4xODM2QzIzLjY0MzcgMTQuNzMyIDIzLjI5MzYgMTQuMzY1OSAyMi44NjE3IDE0LjM2NTlIMjEuMDM3MlYxMy4wMDNaTTE4Ljk1MiAxNi4wMDEzSDE5LjQ3MzNWMTguMTgySDE4Ljk1MkMxOC42NzU1IDE4LjE4MiAxOC40MTAzIDE4LjA2NzEgMTguMjE0OCAxNy44NjI2QzE4LjAxOTMgMTcuNjU4MSAxNy45MDk0IDE3LjM4MDggMTcuOTA5NCAxNy4wOTE2QzE3LjkwOTQgMTYuODAyNSAxOC4wMTkzIDE2LjUyNTIgMTguMjE0OCAxNi4zMjA3QzE4LjQxMDMgMTYuMTE2MiAxOC42NzU1IDE2LjAwMTMgMTguOTUyIDE2LjAwMTNaTTIxLjAzNzIgMjEuOTk4VjE5LjgxNzRIMjEuNTU4NUMyMS44MzUgMTkuODE3NCAyMi4xMDAyIDE5LjkzMjMgMjIuMjk1NyAyMC4xMzY4QzIyLjQ5MTIgMjAuMzQxMiAyMi42MDExIDIwLjYxODYgMjIuNjAxMSAyMC45MDc3QzIyLjYwMTEgMjEuMTk2OSAyMi40OTEyIDIxLjQ3NDIgMjIuMjk1NyAyMS42Nzg3QzIyLjEwMDIgMjEuODgzMiAyMS44MzUgMjEuOTk4IDIxLjU1ODUgMjEuOTk4SDIxLjAzNzJaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMEEzRkZcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpbHRlciBpZD1cImZpbHRlcjBfZF8zODg1XzI1MzFcIiB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCI0MFwiIGhlaWdodD1cIjQwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXJVbml0cz1cInVzZXJTcGFjZU9uVXNlXCIgY29sb3ItaW50ZXJwb2xhdGlvbi1maWx0ZXJzPVwic1JHQlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUZsb29kIGZsb29kLW9wYWNpdHk9XCIwXCIgcmVzdWx0PVwiQmFja2dyb3VuZEltYWdlRml4XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCBpbj1cIlNvdXJjZUFscGhhXCIgdHlwZT1cIm1hdHJpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz1cIjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwXCIgcmVzdWx0PVwiaGFyZEFscGhhXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVPZmZzZXQgZHk9XCIxXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPVwiMVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQ29sb3JNYXRyaXggdHlwZT1cIm1hdHJpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz1cIjAgMCAwIDAgMC4wNjI3NDUxIDAgMCAwIDAgMC4wOTQxMTc2IDAgMCAwIDAgMC4xNTY4NjMgMCAwIDAgMC4wNSAwXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVCbGVuZCBtb2RlPVwibm9ybWFsXCIgaW4yPVwiQmFja2dyb3VuZEltYWdlRml4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0PVwiZWZmZWN0MV9kcm9wU2hhZG93XzM4ODVfMjUzMVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQmxlbmQgbW9kZT1cIm5vcm1hbFwiIGluPVwiU291cmNlR3JhcGhpY1wiIGluMj1cImVmZmVjdDFfZHJvcFNoYWRvd18zODg1XzI1MzFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ9XCJzaGFwZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZpbHRlcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzM4ODVfMjUzMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIGZpbGw9XCJ3aGl0ZVwiIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgxMCA5KVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWZvb3RlciBtcy0yIHAtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm10LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5kYXRhPy5taXNzZWRvcHBvcnR1bml0aWVzPy5QcmV2aW91c1ZhcmlhdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIiB2aWV3Qm94PVwiMCAwIDE4IDE4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8yMzI4XzQ2NTQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTExLjUgOUw2Ljc1IDQuMjVMNC4yNSA2Ljc1TDAuNSAzTTExLjUgOUg4LjVNMTEuNSA5VjZcIiBzdHJva2U9XCIjMDM5ODU1XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMjMyOF80NjU0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiIWdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uZGF0YT8ubWlzc2Vkb3Bwb3J0dW5pdGllcz8uUHJldmlvdXNWYXJpYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzIxNl8xMTgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTExLjUgM0w2Ljc1IDcuNzVMNC4yNSA1LjI1TDAuNSA5TTExLjUgM0g4LjVNMTEuNSAzVjZcIiBzdHJva2U9XCIjRDkyRDIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzIxNl8xMThcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcy0yIG10LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uZGF0YT8ubWlzc2Vkb3Bwb3J0dW5pdGllcz8uUHJldmlvdXNEYXRhID09PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj4wJTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uZGF0YT8ubWlzc2Vkb3Bwb3J0dW5pdGllcz8uUHJldmlvdXNEYXRhICE9PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj57e2dldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uZGF0YT8ubWlzc2Vkb3Bwb3J0dW5pdGllcz8uUHJldmlvdXNEYXRhXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5kYXRhPy5taXNzZWRvcHBvcnR1bml0aWVzPy5QcmV2aW91c0RhdGE6Jy0tJ319JTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIndlZWstZm9udFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2cyBQcmV2aW91cyA8c3BhbiAqbmdJZj1cImRhdGVUeXBlID09PSdkYWlseSdcIj5kYXk8L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J3dlZWtseSdcIj53ZWVrPC9zcGFuPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJkYXRlVHlwZSA9PT0nbW9udGhseSdcIj5tb250aDwvc3Bhbj48L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC00IG10LTMgaC0xMDBcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGNhcmQtYm9yZGVyIG1iLTUgcHktMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgcC0wIGgtOTBweCBtdC0zIG14LTNcIiBbbmdiVG9vbHRpcF09XCJkd2VsbFRvb2x0aXBcIiBwbGFjZW1lbnQ9XCJyaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMyBmbGV4LXNocmluay0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDFcIiB2aWV3Qm94PVwiMCAwIDQwIDQxXCIgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHk9XCIwLjVcIiB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDBcIiByeD1cIjIwXCIgZmlsbD1cIiNEQUYxRkZcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xNy42MzgyIDEyLjg5MjJDMTcuNjM4MiAxMi42ODM1IDE3LjcyMTIgMTIuNDgzMyAxNy44Njg4IDEyLjMzNTdDMTguMDE2NCAxMi4xODgxIDE4LjIxNjUgMTIuMTA1MiAxOC40MjUzIDEyLjEwNTJIMjEuNTczNEMyMS43ODIyIDEyLjEwNTIgMjEuOTgyMyAxMi4xODgxIDIyLjEyOTkgMTIuMzM1N0MyMi4yNzc1IDEyLjQ4MzMgMjIuMzYwNSAxMi42ODM1IDIyLjM2MDUgMTIuODkyMkMyMi4zNjA1IDEzLjEwMDkgMjIuMjc3NSAxMy4zMDExIDIyLjEyOTkgMTMuNDQ4N0MyMS45ODIzIDEzLjU5NjMgMjEuNzgyMiAxMy42NzkyIDIxLjU3MzQgMTMuNjc5MkgyMC43ODY0VjE0LjcyODZMMjAuNzg1MyAxNC43NzE2QzIyLjExNTYgMTQuOTE3NCAyMy4zNzY3IDE1LjQzOTggMjQuNDIwNCAxNi4yNzc1TDI0LjQyNzcgMTYuMjcxMkwyNS4yMTQ4IDE1LjQ4NDJDMjUuMzExIDE1LjM4MDYgMjUuNDMzMyAxNS4zMDQ4IDI1LjU2OSAxNS4yNjQ5QzI1LjcwNDYgMTUuMjI1MSAyNS44NDg1IDE1LjIyMjUgMjUuOTg1NSAxNS4yNTc1QzI2LjEyMjQgMTUuMjkyNSAyNi4yNDc0IDE1LjM2MzggMjYuMzQ3MiAxNS40NjM5QzI2LjQ0NzEgMTUuNTY0IDI2LjUxODEgMTUuNjg5MiAyNi41NTI3IDE1LjgyNjNDMjYuNTg3NyAxNS45NjMxIDI2LjU4NTIgMTYuMTA2OCAyNi41NDU1IDE2LjI0MjNDMjYuNTA1OCAxNi4zNzc4IDI2LjQzMDQgMTYuNTAwMiAyNi4zMjcxIDE2LjU5NjVMMjUuNTQwMSAxNy4zODM2TDI1LjUzMzggMTcuMzkwOUMyNi4zNjYyIDE4LjQzMzEgMjYuODg3NSAxOS42ODkxIDI3LjAzNzcgMjEuMDE0NEMyNy4xODc4IDIyLjMzOTcgMjYuOTYwNyAyMy42ODA1IDI2LjM4MjQgMjQuODgyNUMyNS44MDQyIDI2LjA4NDUgMjQuODk4MyAyNy4wOTg3IDIzLjc2OTEgMjcuODA4NkMyMi42Mzk5IDI4LjUxODQgMjEuMzMzMiAyOC44OTUgMTkuOTk5MyAyOC44OTVDMTguNjY1NSAyOC44OTUgMTcuMzU4OCAyOC41MTg0IDE2LjIyOTYgMjcuODA4NkMxNS4xMDA0IDI3LjA5ODcgMTQuMTk0NSAyNi4wODQ1IDEzLjYxNjMgMjQuODgyNUMxMy4wMzggMjMuNjgwNSAxMi44MTA5IDIyLjMzOTcgMTIuOTYxIDIxLjAxNDRDMTMuMTExMiAxOS42ODkxIDEzLjYzMjUgMTguNDMzMSAxNC40NjQ5IDE3LjM5MDlMMTQuNDU4NiAxNy4zODM2TDEzLjY3MTYgMTYuNTk2NUMxMy41MzI0IDE2LjQ0NzQgMTMuNDU2NiAxNi4yNSAxMy40NjAxIDE2LjA0NkMxMy40NjM2IDE1Ljg0MiAxMy41NDYyIDE1LjY0NzMgMTMuNjkwNSAxNS41MDMxQzEzLjgzNDcgMTUuMzU4OCAxNC4wMjk0IDE1LjI3NjIgMTQuMjMzNCAxNS4yNzI3QzE0LjQzNzQgMTUuMjY5MiAxNC42MzQ4IDE1LjM0NSAxNC43ODM5IDE1LjQ4NDJMMTUuNTcxIDE2LjI3MTJMMTUuNTc4MyAxNi4yNzc1QzE2LjYyMTcgMTUuNDQgMTcuODgyNCAxNC45MTc2IDE5LjIxMjMgMTQuNzcxNlYxMy42NzkySDE4LjQyNTNDMTguMjE2NSAxMy42NzkyIDE4LjAxNjQgMTMuNTk2MyAxNy44Njg4IDEzLjQ0ODdDMTcuNzIxMiAxMy4zMDExIDE3LjYzODIgMTMuMTAwOSAxNy42MzgyIDEyLjg5MjJaTTE5Ljk5OTMgMjcuMzIxMkMyMS40NjA2IDI3LjMyMTEgMjIuODYyIDI2Ljc0MDQgMjMuODk1MiAyNS43MDcxQzI0LjkyODQgMjQuNjczNyAyNS41MDg3IDIzLjI3MjIgMjUuNTA4NiAyMS44MTA5QzI1LjUwODUgMjAuMzQ5NiAyNC45Mjc4IDE4Ljk0ODIgMjMuODk0NSAxNy45MTVDMjIuODYxMSAxNi44ODE5IDIxLjQ1OTYgMTYuMzAxNSAxOS45OTgzIDE2LjMwMTZDMTguNTM3IDE2LjMwMTggMTcuMTM1NiAxNi44ODI0IDE2LjEwMjUgMTcuOTE1OEMxNS4wNjkzIDE4Ljk0OTIgMTQuNDg4OSAyMC4zNTA3IDE0LjQ4OSAyMS44MTE5QzE0LjQ4OTIgMjMuMjczMiAxNS4wNjk4IDI0LjY3NDYgMTYuMTAzMiAyNS43MDc4QzE3LjEzNjYgMjYuNzQxIDE4LjUzODEgMjcuMzIxMyAxOS45OTkzIDI3LjMyMTJaTTIwLjQwNzYgMjAuMjkwM0wyMS44MDMyIDE4Ljg5NDdDMjEuODc1OCAxOC44MTk1IDIxLjk2MjYgMTguNzU5NSAyMi4wNTg2IDE4LjcxODJDMjIuMTU0NiAxOC42NzY5IDIyLjI1NzkgMTguNjU1MSAyMi4zNjI0IDE4LjY1NDJDMjIuNDY2OSAxOC42NTMyIDIyLjU3MDUgMTguNjczMSAyMi42NjczIDE4LjcxMjZDMjIuNzY0IDE4Ljc1MjEgMjIuODUxOSAxOC44MTA1IDIyLjkyNTkgMTguODg0NEMyMi45OTk4IDE4Ljk1ODIgMjMuMDU4MyAxOS4wNDYxIDIzLjA5NzkgMTkuMTQyOEMyMy4xMzc1IDE5LjIzOTUgMjMuMTU3NSAxOS4zNDMxIDIzLjE1NjYgMTkuNDQ3NkMyMy4xNTU3IDE5LjU1MjEgMjMuMTM0MSAxOS42NTU0IDIzLjA5MjkgMTkuNzUxNUMyMy4wNTE3IDE5Ljg0NzUgMjIuOTkxOCAxOS45MzQ0IDIyLjkxNjYgMjAuMDA3TDIxLjUyMSAyMS40MDM3QzIxLjU4MyAyMS42MzcxIDIxLjU5MDYgMjEuODgxNSAyMS41NDMyIDIyLjExODJDMjEuNDk1OCAyMi4zNTUgMjEuMzk0OCAyMi41Nzc3IDIxLjI0NzggMjIuNzY5MkMyMS4xMDA4IDIyLjk2MDcgMjAuOTExOCAyMy4xMTU5IDIwLjY5NTMgMjMuMjIyOEMyMC40Nzg5IDIzLjMyOTggMjAuMjQwOCAyMy4zODU2IDE5Ljk5OTMgMjMuMzg2QzE5Ljc3NjYgMjMuMzg0MSAxOS41NTY3IDIzLjMzNDkgMTkuMzU0NCAyMy4yNDE2QzE5LjE1MjEgMjMuMTQ4MyAxOC45NzE4IDIzLjAxMzEgMTguODI1NyAyMi44NDVDMTguNjc5NSAyMi42NzY4IDE4LjU3MDcgMjIuNDc5NiAxOC41MDY2IDIyLjI2NjJDMTguNDQyNCAyMi4wNTI4IDE4LjQyNDMgMjEuODI4MyAxOC40NTM0IDIxLjYwNzRDMTguNDgyNSAyMS4zODY1IDE4LjU1ODIgMjEuMTc0MyAxOC42NzU1IDIwLjk4NDlDMTguNzkyOCAyMC43OTU1IDE4Ljk0OSAyMC42MzMyIDE5LjEzMzggMjAuNTA4NkMxOS4zMTg1IDIwLjM4NDEgMTkuNTI3NiAyMC4zMDAzIDE5Ljc0NzIgMjAuMjYyNkMxOS45NjY4IDIwLjIyNSAyMC4xOTE5IDIwLjIzNDQgMjAuNDA3NiAyMC4yOTAzWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzY2NzA4NVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGhlYWRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5hdmdEd2VsbFRpbWUgPT09IDBcIj4wIG1pbnM8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGhlYWRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5hdmdEd2VsbFRpbWUgIT09IDBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LmF2Z0R3ZWxsVGltZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8uYXZnRHdlbGxUaW1lIDonLS0nfX0gbWluc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItaGVhZGVyXCI+QXZnIER3ZWxsIFRpbWU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZHdlbGxUb29sdGlwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9vbHRpcC1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9XCJ0b29sdGlwLXRpdGxlIHRleHQtc3RhcnRcIj5BdmcgRHdlbGwgVGltZTwvaDU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cInRleHQtc3RhcnRcIj5BdmVyYWdlIHRpbWUgc3BlbnQgYnkge3toZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInID8gJ01vcmUgdGhhbiAnK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSArJyBtaW5zJyA6ICdlbmdhZ2Vycyd9fSBpbiB0aGUgc2VsZWN0ZWQgc3RvcmVzLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQgY2FyZC1ib3JkZXIgcHktMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgcC0wIGgtOTBweCBtdC0zIG14LTNcIiBbbmdiVG9vbHRpcF09XCJkb3duVG9vbHRpcFwiIHBsYWNlbWVudD1cInJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiNDBcIiBoZWlnaHQ9XCI0MVwiIHZpZXdCb3g9XCIwIDAgNDAgNDFcIiBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeT1cIjAuNVwiIHdpZHRoPVwiNDBcIiBoZWlnaHQ9XCI0MFwiIHJ4PVwiMjBcIiBmaWxsPVwiI0RBRjFGRlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTIxLjkwMDQgMTIuMTY3NUMyMi45OTU4IDEyLjE2NzUgMjQuMDQyMyAxMi4zOTE4IDI0Ljk5NzcgMTIuNzk4N0MyNS45ODg5IDEzLjIyMDcgMjYuODgwOSAxMy44NDAyIDI3LjYyNzkgMTQuNjA4N0MyOC4zNzM0IDE1LjM3NTYgMjguOTc1NiAxNi4yOTMxIDI5LjM4NTcgMTcuMzE2MkMyOS43ODEzIDE4LjI5OSAyOS45OTkzIDE5LjM3NTYgMjkuOTk5MyAyMC41MDA4QzI5Ljk5OTMgMjEuNjI3NyAyOS43ODEzIDIyLjcwNDMgMjkuMzg1NyAyMy42ODcxQzI4Ljk3NTYgMjQuNzA2OCAyOC4zNzM0IDI1LjYyNDQgMjcuNjI2MyAyNi4zOTI5QzI2Ljg4MDkgMjcuMTU5OCAyNS45ODg5IDI3Ljc3OTMgMjQuOTk0NSAyOC4yMDEyQzI0LjAzOTEgMjguNjA4MSAyMi45OTI1IDI4LjgzMjUgMjEuODk4OCAyOC44MzI1QzIwLjgwMzQgMjguODMyNSAxOS43NTY4IDI4LjYwODEgMTguODAxNCAyOC4yMDEyQzE3LjgxMDIgMjcuNzc5MyAxNi45MTgzIDI3LjE1OTggMTYuMTcyOSAyNi4zOTI5TDE2LjE3MTIgMjYuMzkxMkMxNS40MjQyIDI1LjYyMjcgMTQuODIzNiAyNC43MDUyIDE0LjQxMzQgMjMuNjg3MUMxNC4yODY1IDIzLjM3MDcgMTQuMTc3NCAyMy4wNDU5IDE0LjA4NzkgMjIuNzEyN0MxNC4yNTcyIDIyLjcyOTQgMTQuNDI5NyAyMi43Mzc4IDE0LjYwMzggMjIuNzM3OEMxNC45MzQyIDIyLjczNzggMTUuMjU2NSAyMi43MDc2IDE1LjU3MDYgMjIuNjQ5QzE1LjYyMjcgMjIuODA5OCAxNS42Nzk3IDIyLjk2ODggMTUuNzQxNSAyMy4xMjQ2QzE2LjA3ODUgMjMuOTYxNyAxNi41NzMyIDI0LjcxNTIgMTcuMTg4NSAyNS4zNDgxQzE3LjgwMzcgMjUuOTgxIDE4LjUzNzggMjYuNDkgMTkuMzQ5OSAyNi44MzY2QzIwLjEzMjggMjcuMTY5OCAyMC45OTM4IDI3LjM1NTcgMjEuODk4OCAyNy4zNTU3QzIyLjgwMzcgMjcuMzU1NyAyMy42NjMxIDI3LjE3MTUgMjQuNDQ3NiAyNi44MzY2QzI1LjI2MTQgMjYuNDkgMjUuOTkzOCAyNS45ODEgMjYuNjA5MSAyNS4zNDgxQzI3LjIyNDMgMjQuNzE1MiAyNy43MTkxIDIzLjk2MDEgMjguMDU2IDIzLjEyNDZDMjguMzc5OSAyMi4zMTkyIDI4LjU2MDUgMjEuNDMzNCAyOC41NjA1IDIwLjUwMjVDMjguNTYwNSAxOS41NzE1IDI4LjM4MTUgMTguNjg3NSAyOC4wNTYgMTcuODgwNEMyNy43MTkxIDE3LjA0MzIgMjcuMjI0MyAxNi4yODk4IDI2LjYwOTEgMTUuNjU2OUMyNS45OTM4IDE1LjAyNCAyNS4yNTk4IDE0LjUxNDkgMjQuNDQ3NiAxNC4xNjg0QzIzLjY2NDcgMTMuODM1MiAyMi44MDM3IDEzLjY0OTMgMjEuODk4OCAxMy42NDkzQzIwLjk5MzggMTMuNjQ5MyAyMC4xMzQ0IDEzLjgzMzUgMTkuMzQ5OSAxNC4xNjg0QzE5LjI3OTkgMTQuMTk4NSAxOS4yMSAxNC4yMzAzIDE5LjE0MTYgMTQuMjYyMUMxOC44NzQ3IDEzLjgzMDEgMTguNTUyNCAxMy40MzgzIDE4LjE4MjkgMTMuMDk4NEMxOC4zODQ4IDEyLjk5MTMgMTguNTkxNSAxMi44OTI1IDE4LjgwMTQgMTIuODAyMUMxOS43NjAxIDEyLjM5MTggMjAuODA1IDEyLjE2NzUgMjEuOTAwNCAxMi4xNjc1Wk0yMC45NzEgMTYuNTM5M0MyMC45NzEgMTYuMzM1IDIxLjA1MjQgMTYuMTUwOCAyMS4xODEgMTYuMDE2OUMyMS4zMTEyIDE1Ljg4MjkgMjEuNDkwMiAxNS44MDA5IDIxLjY4ODggMTUuODAwOUMyMS44ODc0IDE1LjgwMDkgMjIuMDY2NCAxNS44ODI5IDIyLjE5NjYgMTYuMDE2OUMyMi4zMjY4IDE2LjE1MDggMjIuNDA2NiAxNi4zMzUgMjIuNDA2NiAxNi41MzkzVjIwLjQyNzFMMjUuMjMwNSAyMi4xNTAxQzI1LjM5OTcgMjIuMjUzOSAyNS41MTM3IDIyLjQxOTYgMjUuNTU5MiAyMi42MDIxQzI1LjYwNDggMjIuNzg0NyAyNS41ODM3IDIyLjk4NTYgMjUuNDgyNyAyMy4xNTk3VjIzLjE2MTRDMjUuMzgxOCAyMy4zMzU1IDI1LjIyMDcgMjMuNDUyNyAyNS4wNDMzIDIzLjQ5OTZDMjQuODY1OSAyMy41NDY1IDI0LjY3MDYgMjMuNTI0NyAyNC41MDEzIDIzLjQyMDlIMjQuNDk5N0wyMS4zNDA1IDIxLjQ5MzdDMjEuMjMxNCAyMS40MzE4IDIxLjE0MTkgMjEuMzQxMyAyMS4wNzY4IDIxLjIzNDJDMjEuMDEwMSAyMS4xMjIgMjAuOTcxIDIwLjk4OTcgMjAuOTcxIDIwLjg0OTFWMTYuNTM5M1pcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiM2NjcwODVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTE0LjM5MTMgMTIuNjA5NUMxNi44MTY0IDEyLjYwOTUgMTguNzgyNiAxNC42MzIxIDE4Ljc4MjYgMTcuMTI2OUMxOC43ODI2IDE5LjYyMTggMTYuODE2NCAyMS42NDQ0IDE0LjM5MTMgMjEuNjQ0NEMxMS45NjYxIDIxLjY0NDQgMTAgMTkuNjIxOCAxMCAxNy4xMjY5QzEwIDE0LjYzMjEgMTEuOTY2MSAxMi42MDk1IDE0LjM5MTMgMTIuNjA5NVpNMTQuMzkxMyAxOS43MTcyTDE2Ljc0OCAxNi43MjAxSDE1LjI4NDhWMTUuMTI2MUgxMy40OTc3VjE2LjcyMDFIMTIuMDM0NUwxNC4zOTEzIDE5LjcxNzJaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjRjA0NDM4XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgaGVhZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LmF2Z0Rvd25UaW1lID09PSAwXCI+MCBtaW5zPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBoZWFkZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8uYXZnRG93blRpbWUgIT09IDBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LmF2Z0Rvd25UaW1lID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5hdmdEb3duVGltZSA6Jy0tJ319IG1pbnNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3ViLWhlYWRlclwiPkF2ZyBEb3duIFRpbWU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2Rvd25Ub29sdGlwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9vbHRpcC1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9XCJ0b29sdGlwLXRpdGxlIHRleHQtc3RhcnRcIj5BdmcgRG93biBUaW1lPC9oNT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwidGV4dC1zdGFydFwiPkF2ZXJhZ2UgY2FtZXJhICYgbmV0d29yayBkb3dudGltZSBmb3IgdGhlIHNlbGVjdGVkIHN0b3Jlcy48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgIT09ICc0NTInXCIgY2xhc3M9XCJjb2wtbWQtNCBtdC0zIHBvc2l0aW9uLXJlbGF0aXZlXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBjYXJkLWJvcmRlciBoLTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBlbGxpcHNlMSBib3JkZXItMCBweC0zXCIgW25nYlRvb2x0aXBdPVwicG90ZW50aWFsVG9vbHRpcFwiIHBsYWNlbWVudD1cInJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW4gXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcmQtbGFiZWwgaGVhZGVyXCI+e3tnZXRQb3RlbnRpYWxCdXllcnNDYXJkRGF0YT8uY2FyZD8ucG90ZW50aWFsQnV5ZXJzPy5yYXRlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRQb3RlbnRpYWxCdXllcnNDYXJkRGF0YT8uY2FyZD8ucG90ZW50aWFsQnV5ZXJzPy5yYXRlIDonLS0nfX0lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWItaGVhZGVyIFwiPlBvdGVudGlhbCBCdXllcnM8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNwb3RlbnRpYWxUb29sdGlwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9vbHRpcC1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9XCJ0b29sdGlwLXRpdGxlIHRleHQtc3RhcnRcIj5Qb3RlbnRpYWwgQnV5ZXJzPC9oNT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwidGV4dC1zdGFydFwiPk51bWJlciBvZiBncm91cHMgZW50ZXJpbmcgdGhlIHN0b3JlLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwicG90ZW50aWFsTm9kYXRhXCIgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXJkLWJvZHkgcGItMCBweC0wIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiaW1nLW5vZGF0YTFcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGExLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXRpdGxlMVwiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwibm9kYXRhLXN1YlwiPlRoZXJlIGlzIG5vIHJlc3VsdCBmb3IgdGhpcyBjb252ZXJzaW9uIGZ1bm5lbDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFwb3RlbnRpYWxOb2RhdGFcIiBjbGFzcz1cInRleHQtY2VudGVyXCIgaWQ9XCJQb3RlbnRpYWxCdXllcnNcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1mb290ZXIgbXMtMiBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtdC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cIiFnZXRQb3RlbnRpYWxCdXllcnNDYXJkRGF0YT8uZGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5QcmV2aW91c1ZhcmlhdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIiB2aWV3Qm94PVwiMCAwIDE4IDE4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8yMzI4XzQ2NTQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTExLjUgOUw2Ljc1IDQuMjVMNC4yNSA2Ljc1TDAuNSAzTTExLjUgOUg4LjVNMTEuNSA5VjZcIiBzdHJva2U9XCIjRDkyRDIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMjMyOF80NjU0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiZ2V0UG90ZW50aWFsQnV5ZXJzQ2FyZERhdGE/LmRhdGE/LnBvdGVudGlhbEJ1eWVycz8uUHJldmlvdXNWYXJpYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzIxNl8xMTgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTExLjUgM0w2Ljc1IDcuNzVMNC4yNSA1LjI1TDAuNSA5TTExLjUgM0g4LjVNMTEuNSAzVjZcIiBzdHJva2U9XCIjMDM5ODU1XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzIxNl8xMThcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtdC0yIG1zLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImdldFBvdGVudGlhbEJ1eWVyc0NhcmREYXRhPy5kYXRhPy5wb3RlbnRpYWxCdXllcnM/LlByZXZpb3VzRGF0YSA9PT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+MCU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJnZXRQb3RlbnRpYWxCdXllcnNDYXJkRGF0YT8uZGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5QcmV2aW91c0RhdGEgIT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiPnt7Z2V0UG90ZW50aWFsQnV5ZXJzQ2FyZERhdGE/LmRhdGE/LnBvdGVudGlhbEJ1eWVycz8uUHJldmlvdXNEYXRhXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gZ2V0UG90ZW50aWFsQnV5ZXJzQ2FyZERhdGE/LmRhdGE/LnBvdGVudGlhbEJ1eWVycz8uUHJldmlvdXNEYXRhOictLSd9fSU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3ZWVrLWZvbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdnMgUHJldmlvdXMgPHNwYW4gKm5nSWY9XCJkYXRlVHlwZSA9PT0nZGFpbHknXCI+ZGF5PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSd3ZWVrbHknXCI+d2Vlazwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J21vbnRobHknXCI+bW9udGg8L3NwYW4+PC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3NpdGlvbi1hYnNvbHV0ZSBlbmQtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYgMTJMMTAgOEw2IDRcIiBzdHJva2U9XCIjOThBMkIzXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiIGNsYXNzPVwiY29sLW1kLTggbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQgY2FyZC1ib3JkZXIgaC0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJweC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGVsbGlwc2UxIGJvcmRlci0wIHB4LTNcIiBbbmdiVG9vbHRpcF09XCJwb3RlbnRpYWxCdXllclRvb2x0aXBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJyaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjYXJkLWxhYmVsIGhlYWRlclwiPlBvdGVudGlhbCBCdXllciBEaXN0cmlidXRpb248L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJcIj5DYXRlZ29yeS13aXNlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjcG90ZW50aWFsQnV5ZXJUb29sdGlwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9vbHRpcC1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9XCJ0b29sdGlwLXRpdGxlIHRleHQtc3RhcnRcIj5Qb3RlbnRpYWwgQnV5ZXIgRGlzdHJpYnV0aW9uPC9oNT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwidGV4dC1zdGFydFwiPkF2ZXJhZ2UgZ3JvdXAgc2l6ZSwgYWxvbmcgd2l0aCB0aGUgY291bnQgb2YgaW5kaXZpZHVhbHNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzdXMgZ3JvdXBzIGVudGVyaW5nIHRoZSBzdG9yZS48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgcHgtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtc3RhcnQgbXMtMTAgIG10LTcgbWItM1wiPjxzcGFuPjxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI1XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNSAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjAuMjUgMjFWMTlDMjAuMjUgMTcuOTM5MSAxOS44Mjg2IDE2LjkyMTcgMTkuMDc4NCAxNi4xNzE2QzE4LjMyODMgMTUuNDIxNCAxNy4zMTA5IDE1IDE2LjI1IDE1SDguMjVDNy4xODkxMyAxNSA2LjE3MTcyIDE1LjQyMTQgNS40MjE1NyAxNi4xNzE2QzQuNjcxNDMgMTYuOTIxNyA0LjI1IDE3LjkzOTEgNC4yNSAxOVYyMU0xNi4yNSA3QzE2LjI1IDkuMjA5MTQgMTQuNDU5MSAxMSAxMi4yNSAxMUMxMC4wNDA5IDExIDguMjUgOS4yMDkxNCA4LjI1IDdDOC4yNSA0Ljc5MDg2IDEwLjA0MDkgMyAxMi4yNSAzQzE0LjQ1OTEgMyAxNi4yNSA0Ljc5MDg2IDE2LjI1IDdaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjOThBMkIzXCIgc3Ryb2tlLXdpZHRoPVwiMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNTaW5nbGU/LmNvdW50ICE9PSAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQgbXQtMiBtcy0xXCI+e3tnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc1NpbmdsZT8uY291bnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc1NpbmdsZT8uY291bnQudG9Mb2NhbGVTdHJpbmcoJ2VuLUlOJyk6Jy0tJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNTaW5nbGU/LmNvdW50ID09PSAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQgbXQtMiBtcy0xXCI+MDwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXIgbXMtMVwiPlNpbmdsZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtc3RhcnQgbXMtMTUgbWItM1wiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtZGVmYXVsdCB3ZWVrLWZvbnRcIiBbY2xhc3MuaW52aXNpYmxlXT1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzUyOCdcIj57e2dldFBvdGVudGlhbEJ1eWVyc0RhdGE/LnBvdGVudGlhbEJ1eWVycz8ucG90ZW50aWFsQnV5ZXJzU2luZ2xlPy5hZ2VHcm91cFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldFBvdGVudGlhbEJ1eWVyc0RhdGE/LnBvdGVudGlhbEJ1eWVycz8ucG90ZW50aWFsQnV5ZXJzU2luZ2xlPy5hZ2VHcm91cDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWdlPC9zcGFuPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtZm9vdGVyIG1zLTIgcC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtdC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCIhZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNTaW5nbGU/LlByZXZpb3VzVmFyaWF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAxOCAxOFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzIzMjhfNDY1NClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTExLjUgOUw2Ljc1IDQuMjVMNC4yNSA2Ljc1TDAuNSAzTTExLjUgOUg4LjVNMTEuNSA5VjZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjRDkyRDIwXCIgc3Ryb2tlLXdpZHRoPVwiMS41XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzIzMjhfNDY1NFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNTaW5nbGU/LlByZXZpb3VzVmFyaWF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzMyMTZfMTE4KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTEuNSAzTDYuNzUgNy43NUw0LjI1IDUuMjVMMC41IDlNMTEuNSAzSDguNU0xMS41IDNWNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMwMzk4NTVcIiBzdHJva2Utd2lkdGg9XCIxLjVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzIxNl8xMThcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtdC0yIG1zLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNTaW5nbGU/LlByZXZpb3VzRGF0YSA9PT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiPjAlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc1NpbmdsZT8uUHJldmlvdXNEYXRhICE9PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+e3tnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc1NpbmdsZT8uUHJldmlvdXNEYXRhXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc1NpbmdsZT8uUHJldmlvdXNEYXRhOictLSd9fSU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwid2Vlay1mb250XCI+IHZzIFByZXZpb3VzIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJkYXRlVHlwZSA9PT0nZGFpbHknXCI+ZGF5PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJkYXRlVHlwZSA9PT0nd2Vla2x5J1wiPndlZWs8L3NwYW4+IDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJkYXRlVHlwZSA9PT0nbW9udGhseSdcIj5tb250aDwvc3Bhbj48L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgcHgtMCBwb3NpdGlvbi1yZWxhdGl2ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtc3RhcnQgbXMtMTAgbXQtNyBtYi0zXCI+PHNwYW4+IDxzdmcgd2lkdGg9XCIyNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjYgMjRcIiBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjI2XCIgaGVpZ2h0PVwiMjRcIiBmaWxsPVwiI0RDRENEQ1wiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB4PVwiLTQ2MC41XCIgeT1cIi0zNDAuNVwiIHdpZHRoPVwiNzgzXCIgaGVpZ2h0PVwiMTk0N1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcng9XCI0LjVcIiBzdHJva2U9XCIjOTc0N0ZGXCIgc3Ryb2tlLWRhc2hhcnJheT1cIjEwIDVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hc2sgaWQ9XCJwYXRoLTItaW5zaWRlLTFfNzA3XzEzMTA2XCIgZmlsbD1cIndoaXRlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0tMTg5IC04OUMtMTg5IC05NS42Mjc0IC0xODMuNjI3IC0xMDEgLTE3NyAtMTAxSDI5NUMzMDEuNjI3IC0xMDEgMzA3IC05NS42Mjc0IDMwNyAtODlWODVDMzA3IDkxLjYyNzQgMzAxLjYyNyA5NyAyOTUgOTdILTE3N0MtMTgzLjYyNyA5NyAtMTg5IDkxLjYyNzQgLTE4OSA4NVYtODlaXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWFzaz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0tMTg5IC04OUMtMTg5IC05NS42Mjc0IC0xODMuNjI3IC0xMDEgLTE3NyAtMTAxSDI5NUMzMDEuNjI3IC0xMDEgMzA3IC05NS42Mjc0IDMwNyAtODlWODVDMzA3IDkxLjYyNzQgMzAxLjYyNyA5NyAyOTUgOTdILTE3N0MtMTgzLjYyNyA5NyAtMTg5IDkxLjYyNzQgLTE4OSA4NVYtODlaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTS0xOTAgLTg5Qy0xOTAgLTk2LjE3OTcgLTE4NC4xOCAtMTAyIC0xNzcgLTEwMkgyOTRDMzAxLjE4IC0xMDIgMzA3IC05Ni4xNzk3IDMwNyAtODlDMzA3IC05NS4wNzUxIDMwMS42MjcgLTEwMCAyOTUgLTEwMEgtMTc3Qy0xODMuMDc1IC0xMDAgLTE4OCAtOTUuMDc1MSAtMTg4IC04OUgtMTkwWk0zMDcgODVDMzA3IDkyLjE3OTcgMzAxLjE4IDk4IDI5NCA5OEgtMTc3Qy0xODQuMTggOTggLTE5MCA5Mi4xNzk3IC0xOTAgODVILTE4OEMtMTg4IDkxLjA3NTEgLTE4My4wNzUgOTYgLTE3NyA5NkgyOTVDMzAxLjYyNyA5NiAzMDcgOTEuMDc1MSAzMDcgODVaTS0xNzcgOThDLTE4NC4xOCA5OCAtMTkwIDkyLjE3OTcgLTE5MCA4NVYtODlDLTE5MCAtOTYuMTc5NyAtMTg0LjE4IC0xMDIgLTE3NyAtMTAyVi0xMDBDLTE4My4wNzUgLTEwMCAtMTg4IC05NS4wNzUxIC0xODggLTg5Vjg1Qy0xODggOTEuMDc1MSAtMTgzLjA3NSA5NiAtMTc3IDk2Vjk4Wk0zMDcgLTEwMVY5N1YtMTAxWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiNEMEQ1RERcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hc2s9XCJ1cmwoI3BhdGgtMi1pbnNpZGUtMV83MDdfMTMxMDYpXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXNrIGlkPVwicGF0aC02LWluc2lkZS0yXzcwN18xMzEwNlwiIGZpbGw9XCJ3aGl0ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNy43MTA2NCA3LjM4NDYyQzguMTk1NTIgNy4zODQ2MiA4LjY3NTY1IDcuMjg5MTEgOS4xMjM2MiA3LjEwMzU2QzkuNTcxNTkgNi45MTggOS45Nzg2MyA2LjY0NjAzIDEwLjMyMTUgNi4zMDMxNkMxMC42NjQ0IDUuOTYwMyAxMC45MzYzIDUuNTUzMjYgMTEuMTIxOSA1LjEwNTI5QzExLjMwNzQgNC42NTczMiAxMS40MDI5IDQuMTc3MTkgMTEuNDAyOSAzLjY5MjMxQzExLjQwMjkgMy4yMDc0MyAxMS4zMDc0IDIuNzI3MjkgMTEuMTIxOSAyLjI3OTMyQzEwLjkzNjMgMS44MzEzNSAxMC42NjQ0IDEuNDI0MzEgMTAuMzIxNSAxLjA4MTQ1QzkuOTc4NjMgMC43Mzg1OSA5LjU3MTU5IDAuNDY2NjE2IDkuMTIzNjIgMC4yODEwNkM4LjY3NTY1IDAuMDk1NTA0MyA4LjE5NTUyIC03LjIyNTI5ZS0wOSA3LjcxMDY0IDBDNi43MzEzOCAxLjQ1OTIxZS0wOCA1Ljc5MjIyIDAuMzg5MDEgNS4wOTk3OCAxLjA4MTQ1QzQuNDA3MzQgMS43NzM4OSA0LjAxODMzIDIuNzEzMDUgNC4wMTgzMyAzLjY5MjMxQzQuMDE4MzMgNC42NzE1NyA0LjQwNzM0IDUuNjEwNzIgNS4wOTk3OCA2LjMwMzE2QzUuNzkyMjIgNi45OTU2MSA2LjczMTM4IDcuMzg0NjIgNy43MTA2NCA3LjM4NDYyWk0xOC43ODc2IDcuMzg0NjJDMTkuMjcyNCA3LjM4NDYyIDE5Ljc1MjYgNy4yODkxMSAyMC4yMDA1IDcuMTAzNTZDMjAuNjQ4NSA2LjkxOCAyMS4wNTU2IDYuNjQ2MDMgMjEuMzk4NCA2LjMwMzE2QzIxLjc0MTMgNS45NjAzIDIyLjAxMzMgNS41NTMyNiAyMi4xOTg4IDUuMTA1MjlDMjIuMzg0NCA0LjY1NzMyIDIyLjQ3OTkgNC4xNzcxOSAyMi40Nzk5IDMuNjkyMzFDMjIuNDc5OSAzLjIwNzQzIDIyLjM4NDQgMi43MjcyOSAyMi4xOTg4IDIuMjc5MzJDMjIuMDEzMyAxLjgzMTM1IDIxLjc0MTMgMS40MjQzMSAyMS4zOTg0IDEuMDgxNDVDMjEuMDU1NiAwLjczODU5IDIwLjY0ODUgMC40NjY2MTYgMjAuMjAwNSAwLjI4MTA2QzE5Ljc1MjYgMC4wOTU1MDQzIDE5LjI3MjQgLTcuMjI1MjllLTA5IDE4Ljc4NzYgMEMxNy44MDgzIDEuNDU5MjFlLTA4IDE2Ljg2OTEgMC4zODkwMSAxNi4xNzY3IDEuMDgxNDVDMTUuNDg0MyAxLjc3Mzg5IDE1LjA5NTMgMi43MTMwNSAxNS4wOTUzIDMuNjkyMzFDMTUuMDk1MyA0LjY3MTU3IDE1LjQ4NDMgNS42MTA3MiAxNi4xNzY3IDYuMzAzMTZDMTYuODY5MSA2Ljk5NTYxIDE3LjgwODMgNy4zODQ2MiAxOC43ODc2IDcuMzg0NjJaTTAuOTQxNDA2IDEwLjczNkMwLjk0MTQwNiAxMC40NTc1IDAuOTk2MjU4IDEwLjE4MTggMS4xMDI4MyA5LjkyNDQ4QzEuMjA5NCA5LjY2NzE5IDEuMzY1NiA5LjQzMzQyIDEuNTYyNTIgOS4yMzY1QzEuNzU5NDQgOS4wMzk1OCAxLjk5MzIxIDguODgzMzggMi4yNTA1IDguNzc2ODFDMi41MDc3OCA4LjY3MDI0IDIuNzgzNTQgOC42MTUzOSAzLjA2MjAyIDguNjE1MzlIOC45ODQ0OEM4LjU1MTY5IDkuMzYzNDUgOC4zMjQ1MiAxMC4yMTI3IDguMzI2MDIgMTEuMDc2OUM4LjMyNTE5IDExLjc3NTUgOC40NzM0MSAxMi40NjYyIDguNzYwNzkgMTMuMTAyOUM5LjA0ODE2IDEzLjczOTYgOS40NjgwNyAxNC4zMDc3IDkuOTkyNDggMTQuNzY5Mkg4LjYwMDQ4QzguMDE0MTggMTQuNzY4NyA3LjQzODAzIDE0LjkyMjIgNi45Mjk2OSAxNS4yMTQ0QzYuNDIxMzQgMTUuNTA2NSA1Ljk5ODY0IDE1LjkyNyA1LjcwMzg3IDE2LjQzMzhDMy43MjExIDE2LjA0NDkgMi41MTYxOCAxNS4wNzgyIDEuODE0NjQgMTMuOTkyQzAuOTQxNDA2IDEyLjY0IDAuOTQxNDA2IDExLjI0MzEgMC45NDE0MDYgMTEuMDAxMlYxMC43MzZaTTE3Ljg5NzcgMTQuNzY5MkMxOC40ODQgMTQuNzY4NyAxOS4wNjAyIDE0LjkyMjIgMTkuNTY4NSAxNS4yMTQ0QzIwLjA3NjkgMTUuNTA2NSAyMC40OTk2IDE1LjkyNyAyMC43OTQzIDE2LjQzMzhDMjIuNzc3MSAxNi4wNDQ5IDIzLjk4MiAxNS4wNzgyIDI0LjY4MzYgMTMuOTkyQzI1LjU1NjggMTIuNjQgMjUuNTU2OCAxMS4yNDMxIDI1LjU1NjggMTEuMDAxMlYxMC43MzY2QzI1LjU1NjkgMTAuNDU4MSAyNS41MDIxIDEwLjE4MjMgMjUuMzk1NSA5LjkyNDlDMjUuMjg5IDkuNjY3NTUgMjUuMTMyOCA5LjQzMzcgMjQuOTM1OSA5LjIzNjcyQzI0LjczOSA5LjAzOTczIDI0LjUwNTIgOC44ODM0OCAyNC4yNDc4IDguNzc2ODdDMjMuOTkwNSA4LjY3MDI2IDIzLjcxNDcgOC42MTUzOSAyMy40MzYyIDguNjE1MzlIMTcuNTEzN0MxNy45NDY1IDkuMzYzNDUgMTguMTczNyAxMC4yMTI3IDE4LjE3MjIgMTEuMDc2OUMxOC4xNzMgMTEuNzc1NSAxOC4wMjQ4IDEyLjQ2NjIgMTcuNzM3NCAxMy4xMDI5QzE3LjQ1IDEzLjczOTYgMTcuMDMwMSAxNC4zMDc3IDE2LjUwNTcgMTQuNzY5MkgxNy44OTc3Wk0xNi45NDE0IDExLjA3NjlDMTYuOTQxNCAxMi4wNTYyIDE2LjU1MjQgMTIuOTk1MyAxNS44NiAxMy42ODc4QzE1LjE2NzUgMTQuMzgwMiAxNC4yMjg0IDE0Ljc2OTIgMTMuMjQ5MSAxNC43NjkyQzEyLjI2OTggMTQuNzY5MiAxMS4zMzA3IDE0LjM4MDIgMTAuNjM4MiAxMy42ODc4QzkuOTQ1OCAxMi45OTUzIDkuNTU2NzkgMTIuMDU2MiA5LjU1Njc5IDExLjA3NjlDOS41NTY3OSAxMC4wOTc3IDkuOTQ1OCA5LjE1ODUxIDEwLjYzODIgOC40NjYwN0MxMS4zMzA3IDcuNzczNjMgMTIuMjY5OCA3LjM4NDYyIDEzLjI0OTEgNy4zODQ2MkMxNC4yMjg0IDcuMzg0NjIgMTUuMTY3NSA3Ljc3MzYzIDE1Ljg2IDguNDY2MDdDMTYuNTUyNCA5LjE1ODUxIDE2Ljk0MTQgMTAuMDk3NyAxNi45NDE0IDExLjA3NjlaTTYuNDc5ODcgMTguMTIwNkM2LjQ3OTg3IDE3LjU1ODIgNi43MDMyOSAxNy4wMTg4IDcuMTAwOTggMTYuNjIxMUM3LjQ5ODY3IDE2LjIyMzQgOC4wMzgwNiAxNiA4LjYwMDQ4IDE2SDE3Ljg5NzdDMTguNDYwMSAxNiAxOC45OTk1IDE2LjIyMzQgMTkuMzk3MiAxNi42MjExQzE5Ljc5NDkgMTcuMDE4OCAyMC4wMTgzIDE3LjU1ODIgMjAuMDE4MyAxOC4xMjA2VjE4LjM4NThDMjAuMDE4MyAxOC42MjgzIDIwLjAxODMgMjAuMDI0NiAxOS4xNDUxIDIxLjM3NjZDMTguMjMyNSAyMi43ODk1IDE2LjQ2OTQgMjQgMTMuMjQ5MSAyNEMxMC4wMjg4IDI0IDguMjY1NzEgMjIuNzg5NSA3LjM1MzEgMjEuMzc2NkM2LjQ3OTg3IDIwLjAyNDYgNi40Nzk4NyAxOC42Mjc3IDYuNDc5ODcgMTguMzg1OFYxOC4xMjA2WlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hc2s+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNy43MTA2NCA3LjM4NDYyQzguMTk1NTIgNy4zODQ2MiA4LjY3NTY1IDcuMjg5MTEgOS4xMjM2MiA3LjEwMzU2QzkuNTcxNTkgNi45MTggOS45Nzg2MyA2LjY0NjAzIDEwLjMyMTUgNi4zMDMxNkMxMC42NjQ0IDUuOTYwMyAxMC45MzYzIDUuNTUzMjYgMTEuMTIxOSA1LjEwNTI5QzExLjMwNzQgNC42NTczMiAxMS40MDI5IDQuMTc3MTkgMTEuNDAyOSAzLjY5MjMxQzExLjQwMjkgMy4yMDc0MyAxMS4zMDc0IDIuNzI3MjkgMTEuMTIxOSAyLjI3OTMyQzEwLjkzNjMgMS44MzEzNSAxMC42NjQ0IDEuNDI0MzEgMTAuMzIxNSAxLjA4MTQ1QzkuOTc4NjMgMC43Mzg1OSA5LjU3MTU5IDAuNDY2NjE2IDkuMTIzNjIgMC4yODEwNkM4LjY3NTY1IDAuMDk1NTA0MyA4LjE5NTUyIC03LjIyNTI5ZS0wOSA3LjcxMDY0IDBDNi43MzEzOCAxLjQ1OTIxZS0wOCA1Ljc5MjIyIDAuMzg5MDEgNS4wOTk3OCAxLjA4MTQ1QzQuNDA3MzQgMS43NzM4OSA0LjAxODMzIDIuNzEzMDUgNC4wMTgzMyAzLjY5MjMxQzQuMDE4MzMgNC42NzE1NyA0LjQwNzM0IDUuNjEwNzIgNS4wOTk3OCA2LjMwMzE2QzUuNzkyMjIgNi45OTU2MSA2LjczMTM4IDcuMzg0NjIgNy43MTA2NCA3LjM4NDYyWk0xOC43ODc2IDcuMzg0NjJDMTkuMjcyNCA3LjM4NDYyIDE5Ljc1MjYgNy4yODkxMSAyMC4yMDA1IDcuMTAzNTZDMjAuNjQ4NSA2LjkxOCAyMS4wNTU2IDYuNjQ2MDMgMjEuMzk4NCA2LjMwMzE2QzIxLjc0MTMgNS45NjAzIDIyLjAxMzMgNS41NTMyNiAyMi4xOTg4IDUuMTA1MjlDMjIuMzg0NCA0LjY1NzMyIDIyLjQ3OTkgNC4xNzcxOSAyMi40Nzk5IDMuNjkyMzFDMjIuNDc5OSAzLjIwNzQzIDIyLjM4NDQgMi43MjcyOSAyMi4xOTg4IDIuMjc5MzJDMjIuMDEzMyAxLjgzMTM1IDIxLjc0MTMgMS40MjQzMSAyMS4zOTg0IDEuMDgxNDVDMjEuMDU1NiAwLjczODU5IDIwLjY0ODUgMC40NjY2MTYgMjAuMjAwNSAwLjI4MTA2QzE5Ljc1MjYgMC4wOTU1MDQzIDE5LjI3MjQgLTcuMjI1MjllLTA5IDE4Ljc4NzYgMEMxNy44MDgzIDEuNDU5MjFlLTA4IDE2Ljg2OTEgMC4zODkwMSAxNi4xNzY3IDEuMDgxNDVDMTUuNDg0MyAxLjc3Mzg5IDE1LjA5NTMgMi43MTMwNSAxNS4wOTUzIDMuNjkyMzFDMTUuMDk1MyA0LjY3MTU3IDE1LjQ4NDMgNS42MTA3MiAxNi4xNzY3IDYuMzAzMTZDMTYuODY5MSA2Ljk5NTYxIDE3LjgwODMgNy4zODQ2MiAxOC43ODc2IDcuMzg0NjJaTTAuOTQxNDA2IDEwLjczNkMwLjk0MTQwNiAxMC40NTc1IDAuOTk2MjU4IDEwLjE4MTggMS4xMDI4MyA5LjkyNDQ4QzEuMjA5NCA5LjY2NzE5IDEuMzY1NiA5LjQzMzQyIDEuNTYyNTIgOS4yMzY1QzEuNzU5NDQgOS4wMzk1OCAxLjk5MzIxIDguODgzMzggMi4yNTA1IDguNzc2ODFDMi41MDc3OCA4LjY3MDI0IDIuNzgzNTQgOC42MTUzOSAzLjA2MjAyIDguNjE1MzlIOC45ODQ0OEM4LjU1MTY5IDkuMzYzNDUgOC4zMjQ1MiAxMC4yMTI3IDguMzI2MDIgMTEuMDc2OUM4LjMyNTE5IDExLjc3NTUgOC40NzM0MSAxMi40NjYyIDguNzYwNzkgMTMuMTAyOUM5LjA0ODE2IDEzLjczOTYgOS40NjgwNyAxNC4zMDc3IDkuOTkyNDggMTQuNzY5Mkg4LjYwMDQ4QzguMDE0MTggMTQuNzY4NyA3LjQzODAzIDE0LjkyMjIgNi45Mjk2OSAxNS4yMTQ0QzYuNDIxMzQgMTUuNTA2NSA1Ljk5ODY0IDE1LjkyNyA1LjcwMzg3IDE2LjQzMzhDMy43MjExIDE2LjA0NDkgMi41MTYxOCAxNS4wNzgyIDEuODE0NjQgMTMuOTkyQzAuOTQxNDA2IDEyLjY0IDAuOTQxNDA2IDExLjI0MzEgMC45NDE0MDYgMTEuMDAxMlYxMC43MzZaTTE3Ljg5NzcgMTQuNzY5MkMxOC40ODQgMTQuNzY4NyAxOS4wNjAyIDE0LjkyMjIgMTkuNTY4NSAxNS4yMTQ0QzIwLjA3NjkgMTUuNTA2NSAyMC40OTk2IDE1LjkyNyAyMC43OTQzIDE2LjQzMzhDMjIuNzc3MSAxNi4wNDQ5IDIzLjk4MiAxNS4wNzgyIDI0LjY4MzYgMTMuOTkyQzI1LjU1NjggMTIuNjQgMjUuNTU2OCAxMS4yNDMxIDI1LjU1NjggMTEuMDAxMlYxMC43MzY2QzI1LjU1NjkgMTAuNDU4MSAyNS41MDIxIDEwLjE4MjMgMjUuMzk1NSA5LjkyNDlDMjUuMjg5IDkuNjY3NTUgMjUuMTMyOCA5LjQzMzcgMjQuOTM1OSA5LjIzNjcyQzI0LjczOSA5LjAzOTczIDI0LjUwNTIgOC44ODM0OCAyNC4yNDc4IDguNzc2ODdDMjMuOTkwNSA4LjY3MDI2IDIzLjcxNDcgOC42MTUzOSAyMy40MzYyIDguNjE1MzlIMTcuNTEzN0MxNy45NDY1IDkuMzYzNDUgMTguMTczNyAxMC4yMTI3IDE4LjE3MjIgMTEuMDc2OUMxOC4xNzMgMTEuNzc1NSAxOC4wMjQ4IDEyLjQ2NjIgMTcuNzM3NCAxMy4xMDI5QzE3LjQ1IDEzLjczOTYgMTcuMDMwMSAxNC4zMDc3IDE2LjUwNTcgMTQuNzY5MkgxNy44OTc3Wk0xNi45NDE0IDExLjA3NjlDMTYuOTQxNCAxMi4wNTYyIDE2LjU1MjQgMTIuOTk1MyAxNS44NiAxMy42ODc4QzE1LjE2NzUgMTQuMzgwMiAxNC4yMjg0IDE0Ljc2OTIgMTMuMjQ5MSAxNC43NjkyQzEyLjI2OTggMTQuNzY5MiAxMS4zMzA3IDE0LjM4MDIgMTAuNjM4MiAxMy42ODc4QzkuOTQ1OCAxMi45OTUzIDkuNTU2NzkgMTIuMDU2MiA5LjU1Njc5IDExLjA3NjlDOS41NTY3OSAxMC4wOTc3IDkuOTQ1OCA5LjE1ODUxIDEwLjYzODIgOC40NjYwN0MxMS4zMzA3IDcuNzczNjMgMTIuMjY5OCA3LjM4NDYyIDEzLjI0OTEgNy4zODQ2MkMxNC4yMjg0IDcuMzg0NjIgMTUuMTY3NSA3Ljc3MzYzIDE1Ljg2IDguNDY2MDdDMTYuNTUyNCA5LjE1ODUxIDE2Ljk0MTQgMTAuMDk3NyAxNi45NDE0IDExLjA3NjlaTTYuNDc5ODcgMTguMTIwNkM2LjQ3OTg3IDE3LjU1ODIgNi43MDMyOSAxNy4wMTg4IDcuMTAwOTggMTYuNjIxMUM3LjQ5ODY3IDE2LjIyMzQgOC4wMzgwNiAxNiA4LjYwMDQ4IDE2SDE3Ljg5NzdDMTguNDYwMSAxNiAxOC45OTk1IDE2LjIyMzQgMTkuMzk3MiAxNi42MjExQzE5Ljc5NDkgMTcuMDE4OCAyMC4wMTgzIDE3LjU1ODIgMjAuMDE4MyAxOC4xMjA2VjE4LjM4NThDMjAuMDE4MyAxOC42MjgzIDIwLjAxODMgMjAuMDI0NiAxOS4xNDUxIDIxLjM3NjZDMTguMjMyNSAyMi43ODk1IDE2LjQ2OTQgMjQgMTMuMjQ5MSAyNEMxMC4wMjg4IDI0IDguMjY1NzEgMjIuNzg5NSA3LjM1MzEgMjEuMzc2NkM2LjQ3OTg3IDIwLjAyNDYgNi40Nzk4NyAxOC42Mjc3IDYuNDc5ODcgMTguMzg1OFYxOC4xMjA2WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hc2s9XCJ1cmwoI3BhdGgtNi1pbnNpZGUtMl83MDdfMTMxMDYpXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNHcm91cD8uY291bnQgIT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGVmdC1jYXJkLWNvdW50IG1zLTEgbXQtMlwiPnt7Z2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNHcm91cD8uY291bnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc0dyb3VwPy5jb3VudC50b0xvY2FsZVN0cmluZygnZW4tSU4nKTonLS0nfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc0dyb3VwPy5jb3VudCA9PT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQgbXMtMSBtdC0yXCI+MDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXIgbXMtMVwiPkdyb3VwPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1zdGFydCBtcy0xNSBtYi0zXCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC1kZWZhdWx0IHdlZWstZm9udFwiIFtjbGFzcy5pbnZpc2libGVdPVwiaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNTI4J1wiPnt7Z2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNHcm91cD8uYWdlR3JvdXBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc0dyb3VwPy5hZ2VHcm91cDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWdlPC9zcGFuPjwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWZvb3RlciBtcy0yIHAtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiIWdldFBvdGVudGlhbEJ1eWVyc0RhdGE/LnBvdGVudGlhbEJ1eWVycz8ucG90ZW50aWFsQnV5ZXJzR3JvdXA/LlByZXZpb3VzVmFyaWF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAxOCAxOFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzIzMjhfNDY1NClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTExLjUgOUw2Ljc1IDQuMjVMNC4yNSA2Ljc1TDAuNSAzTTExLjUgOUg4LjVNMTEuNSA5VjZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjRDkyRDIwXCIgc3Ryb2tlLXdpZHRoPVwiMS41XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzIzMjhfNDY1NFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNHcm91cD8uUHJldmlvdXNWYXJpYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzIxNl8xMTgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMS41IDNMNi43NSA3Ljc1TDQuMjUgNS4yNUwwLjUgOU0xMS41IDNIOC41TTExLjUgM1Y2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzAzOTg1NVwiIHN0cm9rZS13aWR0aD1cIjEuNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8zMjE2XzExOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm10LTIgbXMtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc0dyb3VwPy5QcmV2aW91c0RhdGEgPT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBlcmNlbnQtdmFsdWVcIj4wJTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZ2V0UG90ZW50aWFsQnV5ZXJzRGF0YT8ucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNHcm91cD8uUHJldmlvdXNEYXRhICE9PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+e3tnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc0dyb3VwPy5QcmV2aW91c0RhdGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldFBvdGVudGlhbEJ1eWVyc0RhdGE/LnBvdGVudGlhbEJ1eWVycz8ucG90ZW50aWFsQnV5ZXJzR3JvdXA/LlByZXZpb3VzRGF0YTonLS0nfX0lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIndlZWstZm9udFwiPiB2cyBQcmV2aW91cyA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J2RhaWx5J1wiPmRheTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J3dlZWtseSdcIj53ZWVrPC9zcGFuPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J21vbnRobHknXCI+bW9udGg8L3NwYW4+PC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tYWJzb2x1dGUgbXQtNSBlbmQtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYgMTJMMTAgOEw2IDRcIiBzdHJva2U9XCIjOThBMkIzXCIgc3Ryb2tlLXdpZHRoPVwiMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMyBweC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlciBtdC03IG1iLTNcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc1BlcnNvbnM/LmNvdW50ICE9PSAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGVmdC1jYXJkLWNvdW50IG10LTJcIj57e2dldFBvdGVudGlhbEJ1eWVyc0RhdGE/LnBvdGVudGlhbEJ1eWVycz8ucG90ZW50aWFsQnV5ZXJzUGVyc29ucz8uY291bnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldFBvdGVudGlhbEJ1eWVyc0RhdGE/LnBvdGVudGlhbEJ1eWVycz8ucG90ZW50aWFsQnV5ZXJzUGVyc29ucz8uY291bnQudG9Mb2NhbGVTdHJpbmcoJ2VuLUlOJyk6Jy0tJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJnZXRQb3RlbnRpYWxCdXllcnNEYXRhPy5wb3RlbnRpYWxCdXllcnM/LnBvdGVudGlhbEJ1eWVyc1BlcnNvbnM/LmNvdW50ID09PSAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGVmdC1jYXJkLWNvdW50IG10LTJcIj4wPC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXIgbXMtMVwiPlBlcnNvbnM8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlciBtYi0zXCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtZGVmYXVsdCB3ZWVrLWZvbnRcIiBbY2xhc3MuaW52aXNpYmxlXT1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzUyOCdcIj57e2dldFBvdGVudGlhbEJ1eWVyc0RhdGE/LnBvdGVudGlhbEJ1eWVycz8ucG90ZW50aWFsQnV5ZXJzUGVyc29ucz8uYWdlR3JvdXBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldFBvdGVudGlhbEJ1eWVyc0RhdGEucG90ZW50aWFsQnV5ZXJzPy5wb3RlbnRpYWxCdXllcnNQZXJzb25zPy5hZ2VHcm91cDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFnZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWZvb3RlciB0ZXh0LWNlbnRlciBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMiBtcy0yXCI+PHNwYW4gY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtcy0yIHdlZWstZm9udFwiPiBBdmcuIEdyb3VwIHNpemU8L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02IDEyTDEwIDhMNiA0XCIgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNSBoLTEwMFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIG1iLTNcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGJvcmRlci0wIHB0LTMgcHMtNVwiPlxyXG4gICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGl0bGUtdGV4dFwiPjxzcGFuICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiPkNvbnZlcnNpb248L3NwYW4+IEZ1bm5lbFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0gJzQ1MidcIj4gPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIiBwbGFjZW1lbnQ9XCJ0b3BcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5nYlRvb2x0aXA9XCJUb3RhbCBvcHBvcnR1bml0eSBvZiBzYWxlcyBjb252ZXJzaW9uIHZlcnN1cyB0b3RhbCB3YWxraW5zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8xNDMyXzgwMDM1KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDY1IDEwLjY2NjZWNy45OTk5Mk04LjAwMDY1IDUuMzMzMjVIOC4wMDczMk0xNC42NjczIDcuOTk5OTJDMTQuNjY3MyAxMS42ODE4IDExLjY4MjYgMTQuNjY2NiA4LjAwMDY1IDE0LjY2NjZDNC4zMTg3NSAxNC42NjY2IDEuMzMzOTggMTEuNjgxOCAxLjMzMzk4IDcuOTk5OTJDMS4zMzM5OCA0LjMxODAyIDQuMzE4NzUgMS4zMzMyNSA4LjAwMDY1IDEuMzMzMjVDMTEuNjgyNiAxLjMzMzI1IDE0LjY2NzMgNC4zMTgwMiAxNC42NjczIDcuOTk5OTJaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8xNDMyXzgwMDM1XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiIHBsYWNlbWVudD1cInRvcFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nYlRvb2x0aXBdPVwiJ1RvdGFsIG9wcG9ydHVuaXR5IG9mIHNhbGVzIE1vcmUgdGhhbiAnICsgY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmNvbnZlcnNpb24/LnZhbHVlICsgJyBtaW5zIHZlcnN1cyB0b3RhbCB3YWxraW5zJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMTQzMl84MDAzNSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDA2NSAxMC42NjY2VjcuOTk5OTJNOC4wMDA2NSA1LjMzMzI1SDguMDA3MzJNMTQuNjY3MyA3Ljk5OTkyQzE0LjY2NzMgMTEuNjgxOCAxMS42ODI2IDE0LjY2NjYgOC4wMDA2NSAxNC42NjY2QzQuMzE4NzUgMTQuNjY2NiAxLjMzMzk4IDExLjY4MTggMS4zMzM5OCA3Ljk5OTkyQzEuMzMzOTggNC4zMTgwMiA0LjMxODc1IDEuMzMzMjUgOC4wMDA2NSAxLjMzMzI1QzExLjY4MjYgMS4zMzMyNSAxNC42NjczIDQuMzE4MDIgMTQuNjY3MyA3Ljk5OTkyWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMTQzMl84MDAzNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtc3ViIG1iLTJcIj57e2hlYWRlckRhdGE/LmRhdGU/LnN0YXJ0RGF0ZSB8IGRhdGU6J2RkIE1NTSwgeXl5eSd9fSDigJNcclxuICAgICAgICAgICAgICAgICAgICAgICAge3toZWFkZXJEYXRhPy5kYXRlPy5lbmREYXRlIHwgZGF0ZTonZGQgTU1NLCB5eXl5J319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9oMz5cclxuXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwLTBcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJoZWF0bG9hZGluZ1wiIGNsYXNzPVwicm93IGxvYWRlciBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgaC0yNzVweFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyIHB0LTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaGVhdG5vRGF0YVwiIGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiaW1nLW5vZGF0YVwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ljb25zL05vZGF0YTEuc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXRpdGxlXCI+Tm8gZGF0YSBmb3VuZDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS1zdWJcIj5UaGVyZSBpcyBubyByZXN1bHQgZm9yIHRoaXMgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgIT09JzQ1MidcIj5jb252ZXJzaW9uPC9zcGFuPiBmdW5uZWw8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhaGVhdGxvYWRpbmcgJiYgIWhlYXRub0RhdGFcIiBjbGFzcz1cInRleHQtY2VudGVyIG1iLTNcIiBpZD1cImNoYXJ0ZGl2XCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwibXBhbG9hZGluZyAmJiBzdG9yZUlkYXJyYXk/Lmxlbmd0aCA+IDEgfHwgbWFwbm9EYXRhICYmIHN0b3JlSWRhcnJheT8ubGVuZ3RoID4gMSB8fCAhc3RvcmVJZGFycmF5Py5sZW5ndGhcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImNhcmRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGJvcmRlci0wIHB0LTMgcHMtNyBwZS0wXCI+XHJcbiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXRsZS10ZXh0XCI+RXhwbG9yZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvaDM+XHJcblxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm1wYWxvYWRpbmdcIiBjbGFzcz1cInJvdyBsb2FkZXIgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGgtMjI1cHhcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyIHB0LTBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibWFwbm9EYXRhXCIgY2xhc3M9XCJyb3cgcHgtM1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub3JtYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhcmQtYm9keSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBtYi0xMCBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImltZy1tYXAxXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvbm90LWFwcGxpY2FibGUuc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtdGl0bGUgbXQtM1wiPkRhdGEgTm90IEZvdW5kPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtc3ViXCI+Tm9ybWFsaXplZCBkYXRhIGlzIG5vdCBhcHBsaWNhYmxlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFub3JtYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhcmQtYm9keSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImltZy1tYXBcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGExLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXRpdGxlXCI+Tm8gZGF0YSBmb3VuZDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXN1YlwiPlRoZXJlIGlzIG5vIHJlc3VsdCBmb3IgdGhpcyBTdG9yZSBtYXA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiIW1wYWxvYWRpbmcgJiYgIW1hcG5vRGF0YSAmJiBzdG9yZUlkYXJyYXk/Lmxlbmd0aCA+IDFcIiBjbGFzcz1cImNhcmRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGJvcmRlci0wIHB0LTMgcHMtNyBwZS0wXCI+XHJcbiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXRsZS10ZXh0XCI+RXhwbG9yZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvaDM+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10b29sYmFyIG10LTBcIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIiFtcGFsb2FkaW5nICYmICFtYXBub0RhdGFcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImV4cG9yZVZpZXcoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIG1lLTggYnRuLWxpZ2h0LXByaW1hcnkxIHJvdW5kZWQtMyB0ZXh0LW5vd3JhcCBib3JkZXItdmFsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXMtMlwiPkV4cGxvcmU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFtYXBub0RhdGFcIiBjbGFzcz1cImNhcmQtYm9keSBjb2wtbWQtMTIgcHQtMCBwYi01IHBzLTdcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJtYXBcIiBjbGFzcz1cInctMTAwXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJzdG9yZUlkYXJyYXk/Lmxlbmd0aCA9PT0gMVwiIGNsYXNzPVwiY2FyZCBwYi0yXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBib3JkZXItMCBwdC0zIHBzLTUgcGUtMFwiPlxyXG4gICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGl0bGUtdGV4dFwiPlJlY2FwIFZpZGVvXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgcGxhY2VtZW50PVwicmlnaHRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmdiVG9vbHRpcD1cIkEgcXVpY2sgcmVjYXAgb2YgdGhlIHN0b3JlIGFjdGl2aXR5IGFsb25nIHdpdGggdGhlIGF2ZyB0ZWNoIGluZnJhc3RydWN0dXJlIGRvd250aW1lIHN0YXR1c1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzE0MzJfODAwMzUpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDY1IDEwLjY2NjZWNy45OTk5Mk04LjAwMDY1IDUuMzMzMjVIOC4wMDczMk0xNC42NjczIDcuOTk5OTJDMTQuNjY3MyAxMS42ODE4IDExLjY4MjYgMTQuNjY2NiA4LjAwMDY1IDE0LjY2NjZDNC4zMTg3NSAxNC42NjY2IDEuMzMzOTggMTEuNjgxOCAxLjMzMzk4IDcuOTk5OTJDMS4zMzM5OCA0LjMxODAyIDQuMzE4NzUgMS4zMzMyNSA4LjAwMDY1IDEuMzMzMjVDMTEuNjgyNiAxLjMzMzI1IDE0LjY2NzMgNC4zMTgwMiAxNC42NjczIDcuOTk5OTJaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMTQzMl84MDAzNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtc3ViIG1iLTJcIj5EYXRlZDoge3toZWFkZXJEYXRhPy5kYXRlPy5lbmREYXRlIHwgZGF0ZTonIGRkIE1NTSx5eXl5J319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9oMz5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLXRvb2xiYXIgbXQtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IGJ0bi1vdXRsaW5lIGJ0bi1vdXRsaW5lLWRlZmF1bHQgcm91bmRlZC0zIHRleHQtbm93cmFwIGJvcmRlci12YWwgdGV4dC1zdGFydCBkaXNhYmxlZC1idXR0b25cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE0XCIgdmlld0JveD1cIjAgMCAxNiAxNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBpZD1cIkdyb3VwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggaWQ9XCJWZWN0b3JcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTkuNTE5NTMgMC4zMzM5ODRDMTAuMzk1OCAwLjMzMzk4NCAxMS4yMzMxIDAuNTEzNDc3IDExLjk5NzQgMC44Mzg5NzRDMTIuNzkwNCAxLjE3NjUzIDEzLjUwMzkgMS42NzIxNCAxNC4xMDE2IDIuMjg2OTdDMTQuNjk3OSAyLjkwMDQ2IDE1LjE3OTcgMy42MzQ1IDE1LjUwNzggNC40NTI5M0MxNS44MjQyIDUuMjM5MjIgMTUuOTk4NyA2LjEwMDUxIDE1Ljk5ODcgNy4wMDA2NUMxNS45OTg3IDcuOTAyMTMgMTUuODI0MiA4Ljc2MzQzIDE1LjUwNzggOS41NDk3MUMxNS4xNzk3IDEwLjM2NTUgMTQuNjk3OSAxMS4wOTk1IDE0LjEwMDMgMTEuNzE0M0MxMy41MDM5IDEyLjMyNzggMTIuNzkwNCAxMi44MjM0IDExLjk5NDggMTMuMTYxQzExLjIzMDUgMTMuNDg2NSAxMC4zOTMyIDEzLjY2NiA5LjUxODIzIDEzLjY2NkM4LjY0MTkzIDEzLjY2NiA3LjgwNDY5IDEzLjQ4NjUgNy4wNDAzNiAxMy4xNjFDNi4yNDc0IDEyLjgyMzQgNS41MzM4NSAxMi4zMjc4IDQuOTM3NSAxMS43MTQzTDQuOTM2MiAxMS43MTNDNC4zMzg1NCAxMS4wOTgyIDMuODU4MDcgMTAuMzY0MSAzLjUyOTk1IDkuNTQ5NzFDMy40MjgzOSA5LjI5NjU1IDMuMzQxMTUgOS4wMzY2OCAzLjI2OTUzIDguNzcwMTNDMy40MDQ5NSA4Ljc4MzUyIDMuNTQyOTcgOC43OTAyMiAzLjY4MjI5IDguNzkwMjJDMy45NDY2MSA4Ljc5MDIyIDQuMjA0NDMgOC43NjYxMSA0LjQ1NTczIDguNzE5MjJDNC40OTc0IDguODQ3ODIgNC41NDI5NyA4Ljk3NTA3IDQuNTkyNDUgOS4wOTk2NEM0Ljg2MTk4IDkuNzY5MzkgNS4yNTc4MSAxMC4zNzIyIDUuNzUgMTAuODc4NUM2LjI0MjE5IDExLjM4NDggNi44Mjk0MyAxMS43OTIgNy40NzkxNyAxMi4wNjkzQzguMTA1NDcgMTIuMzM1OSA4Ljc5NDI3IDEyLjQ4NDUgOS41MTgyMyAxMi40ODQ1QzEwLjI0MjIgMTIuNDg0NSAxMC45Mjk3IDEyLjMzNzIgMTEuNTU3MyAxMi4wNjkzQzEyLjIwODMgMTEuNzkyIDEyLjc5NDMgMTEuMzg0OCAxMy4yODY1IDEwLjg3ODVDMTMuNzc4NiAxMC4zNzIyIDE0LjE3NDUgOS43NjgwNSAxNC40NDQgOS4wOTk2NEMxNC43MDMxIDguNDU1MzQgMTQuODQ3NyA3Ljc0Njc1IDE0Ljg0NzcgNy4wMDE5OUMxNC44NDc3IDYuMjU3MjMgMTQuNzA0NCA1LjU0OTk4IDE0LjQ0NCA0LjkwNDM0QzE0LjE3NDUgNC4yMzQ1OSAxMy43Nzg2IDMuNjMxODIgMTMuMjg2NSAzLjEyNTQ5QzEyLjc5NDMgMi42MTkxNiAxMi4yMDcgMi4yMTE5NiAxMS41NTczIDEuOTM0NjhDMTAuOTMxIDEuNjY4MTIgMTAuMjQyMiAxLjUxOTQ0IDkuNTE4MjMgMS41MTk0NEM4Ljc5NDI3IDEuNTE5NDQgOC4xMDY3NyAxLjY2Njc4IDcuNDc5MTcgMS45MzQ2OEM3LjQyMzE4IDEuOTU4NzkgNy4zNjcxOSAxLjk4NDI0IDcuMzEyNSAyLjAwOTY5QzcuMDk4OTYgMS42NjQxIDYuODQxMTUgMS4zNTA2NiA2LjU0NTU3IDEuMDc4NzRDNi43MDcwMyAwLjk5MzAxNiA2Ljg3MjQgMC45MTM5ODYgNy4wNDAzNiAwLjg0MTY1M0M3LjgwNzI5IDAuNTEzNDc3IDguNjQzMjMgMC4zMzM5ODQgOS41MTk1MyAwLjMzMzk4NFpNOC43NzYwNCAzLjgzMTQxQzguNzc2MDQgMy42Njc5OSA4Ljg0MTE1IDMuNTIwNjQgOC45NDQwMSAzLjQxMzQ4QzkuMDQ4MTggMy4zMDYzMiA5LjE5MTQxIDMuMjQwNjkgOS4zNTAyNiAzLjI0MDY5QzkuNTA5MTEgMy4yNDA2OSA5LjY1MjM0IDMuMzA2MzIgOS43NTY1MSAzLjQxMzQ4QzkuODYwNjggMy41MjA2NCA5LjkyNDQ4IDMuNjY3OTkgOS45MjQ0OCAzLjgzMTQxVjYuOTQxNzFMMTIuMTgzNiA4LjMyMDA1QzEyLjMxOSA4LjQwMzEgMTIuNDEwMiA4LjUzNTcxIDEyLjQ0NjYgOC42ODE3MkMxMi40ODMxIDguODI3NzIgMTIuNDY2MSA4Ljk4ODQ2IDEyLjM4NTQgOS4xMjc3N1Y5LjEyOTExQzEyLjMwNDcgOS4yNjg0MiAxMi4xNzU4IDkuMzYyMTggMTIuMDMzOSA5LjM5OTY5QzExLjg5MTkgOS40MzcxOSAxMS43MzU3IDkuNDE5NzggMTEuNjAwMyA5LjMzNjczSDExLjU5OUw5LjA3MTYxIDcuNzk0OTdDOC45ODQzOCA3Ljc0NTQxIDguOTEyNzYgNy42NzMwOCA4Ljg2MDY4IDcuNTg3MzVDOC44MDcyOSA3LjQ5NzYgOC43NzYwNCA3LjM5MTc4IDguNzc2MDQgNy4yNzkyN1YzLjgzMTQxWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjNjY3MDg1XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBpZD1cIlZlY3Rvcl8yXCIgZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTMuNTEzMDIgMC42ODc2MjJDNS40NTMxMiAwLjY4NzYyMiA3LjAyNjA0IDIuMzA1NzMgNy4wMjYwNCA0LjMwMTU4QzcuMDI2MDQgNi4yOTc0MyA1LjQ1MzEyIDcuOTE1NTQgMy41MTMwMiA3LjkxNTU0QzEuNTcyOTIgNy45MTU1NCAwIDYuMjk3NDMgMCA0LjMwMTU4QzAgMi4zMDU3MyAxLjU3MjkyIDAuNjg3NjIyIDMuNTEzMDIgMC42ODc2MjJaTTMuNTEzMDIgNi4zNzM3OEw1LjM5ODQ0IDMuOTc2MDhINC4yMjc4NlYyLjcwMDg4SDIuNzk4MThWMy45NzYwOEgxLjYyNzZMMy41MTMwMiA2LjM3Mzc4WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjRjA0NDM4XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXMtMlwiICpuZ0lmPVwiZ2V0UmVjYXBWaWRlb0RhdGE/LmRvd25UaW1lID09PSAwXCI+MCBNaW5zPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1zLTJcIiAqbmdJZj1cImdldFJlY2FwVmlkZW9EYXRhPy5kb3duVGltZSAhPT0gMFwiPnt7Z2V0UmVjYXBWaWRlb0RhdGE/LmRvd25UaW1lID8/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnLS0nfX0gTWluczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tZGVmYXVsdCBteC0yIGJ0bi1vdXRsaW5lIGJ0bi1vdXRsaW5lLWRlZmF1bHQgcm91bmRlZC0zIHRleHQtbm93cmFwIGJvcmRlci12YWwgZGlzYWJsZWQtYnV0dG9uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJnZXRSZWNhcFZpZGVvRGF0YT8uaGVhbHRoID09PSdHT09EJ1wiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBpZD1cIkZyYW1lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggaWQ9XCJWZWN0b3JcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTEzLjQzNDkgMi41QzE0LjgyMzggMi41IDE1Ljk4NzEgMy4wMTM4OSAxNi45MjQ5IDQuMDQxNjdDMTcuODYyNyA1LjA2OTQ0IDE4LjMzMTMgNi4yOTE2NyAxOC4zMzA3IDcuNzA4MzNDMTguMzMwNyA3Ljk1ODMzIDE4LjMxNjggOC4yMDUgMTguMjg5MSA4LjQ0ODMzQzE4LjI2MTMgOC42OTE2NyAxOC4yMTI3IDguOTMxMTEgMTguMTQzMiA5LjE2NjY3SDEyLjkzNDlMMTEuNTE4MiA3LjA0MTY3QzExLjQ0ODggNi45MzA1NiAxMS4zNTE2IDYuODQwMjggMTEuMjI2NiA2Ljc3MDgzQzExLjEwMTYgNi43MDEzOSAxMC45Njk2IDYuNjY2NjcgMTAuODMwNyA2LjY2NjY3QzEwLjY1MDIgNi42NjY2NyAxMC40ODY4IDYuNzIyMjIgMTAuMzQwNyA2LjgzMzMzQzEwLjE5NDYgNi45NDQ0NCAxMC4wOTQxIDcuMDgzMzMgMTAuMDM5MSA3LjI1TDguOTE0MDYgMTAuNjI1TDguMTg0OSA5LjU0MTY3QzguMTE1NDUgOS40MzA1NiA4LjAxODIzIDkuMzQwMjggNy44OTMyMyA5LjI3MDgzQzcuNzY4MjMgOS4yMDEzOSA3LjYzNjI4IDkuMTY2NjcgNy40OTc0IDkuMTY2NjdIMS44NTE1NkMxLjc4MjEyIDguOTMwNTYgMS43MzM1MSA4LjY5MDgzIDEuNzA1NzMgOC40NDc1QzEuNjc3OTUgOC4yMDQxNyAxLjY2NDA2IDcuOTY0NzIgMS42NjQwNiA3LjcyOTE3QzEuNjY0MDYgNi4yOTg2MSAyLjEyOTM0IDUuMDY5NDQgMy4wNTk5IDQuMDQxNjdDMy45OTA0NSAzLjAxMzg5IDUuMTUwMTcgMi41IDYuNTM5MDYgMi41QzcuMjA1NzMgMi41IDcuODM0MzQgMi42MzE5NCA4LjQyNDkgMi44OTU4M0M5LjAxNTQ1IDMuMTU5NzIgOS41Mzk2MiAzLjUyNzc4IDkuOTk3NCA0QzEwLjQ0MTggMy41Mjc3OCAxMC45NTkzIDMuMTU5NzIgMTEuNTQ5OSAyLjg5NTgzQzEyLjE0MDUgMi42MzE5NCAxMi43Njg4IDIuNSAxMy40MzQ5IDIuNVpNOS45OTc0IDE3LjVDOS43NDc0IDE3LjUgOS41MDc2NyAxNy40NTQ3IDkuMjc4MjMgMTcuMzY0MkM5LjA0ODc4IDE3LjI3MzYgOC44NDQwNiAxNy4xMzgzIDguNjY0MDYgMTYuOTU4M0wzLjA4MDczIDExLjM1NDJDMi45OTc0IDExLjI3MDggMi45MjEwMSAxMS4xODc1IDIuODUxNTYgMTEuMTA0MkMyLjc4MjEyIDExLjAyMDggMi43MTI2NyAxMC45MzA2IDIuNjQzMjMgMTAuODMzM0g3LjAzOTA2TDguNDU1NzMgMTIuOTU4M0M4LjUyNTE3IDEzLjA2OTQgOC42MjI0IDEzLjE1OTcgOC43NDc0IDEzLjIyOTJDOC44NzI0IDEzLjI5ODYgOS4wMDQzNCAxMy4zMzMzIDkuMTQzMjMgMTMuMzMzM0M5LjMyMzc4IDEzLjMzMzMgOS40OTA0NSAxMy4yNzc4IDkuNjQzMjMgMTMuMTY2N0M5Ljc5NjAxIDEzLjA1NTYgOS45MDAxNyAxMi45MTY3IDkuOTU1NzMgMTIuNzVMMTEuMDgwNyA5LjM3NUwxMS43ODkxIDEwLjQ1ODNDMTEuODcyNCAxMC41Njk0IDExLjk3NjYgMTAuNjU5NyAxMi4xMDE2IDEwLjcyOTJDMTIuMjI2NiAxMC43OTg2IDEyLjM1ODUgMTAuODMzMyAxMi40OTc0IDEwLjgzMzNIMTcuMzMwN0wxNy4xMjI0IDExLjA4MzNMMTYuOTE0MSAxMS4zMzMzTDExLjMwOTkgMTYuOTU4M0MxMS4xMjkzIDE3LjEzODkgMTAuOTI4IDE3LjI3NDQgMTAuNzA1NyAxNy4zNjVDMTAuNDgzNSAxNy40NTU2IDEwLjI0NzQgMTcuNTAwNiA5Ljk5NzQgMTcuNVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzEyQjc2QVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiZ2V0UmVjYXBWaWRlb0RhdGE/LmhlYWx0aCA9PT0nQVZFUkFHRSdcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgaWQ9XCJGcmFtZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGlkPVwiVmVjdG9yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMy40MzQ5IDIuNUMxNC44MjM4IDIuNSAxNS45ODcxIDMuMDEzODkgMTYuOTI0OSA0LjA0MTY3QzE3Ljg2MjcgNS4wNjk0NCAxOC4zMzEzIDYuMjkxNjcgMTguMzMwNyA3LjcwODMzQzE4LjMzMDcgNy45NTgzMyAxOC4zMTY4IDguMjA1IDE4LjI4OTEgOC40NDgzM0MxOC4yNjEzIDguNjkxNjcgMTguMjEyNyA4LjkzMTExIDE4LjE0MzIgOS4xNjY2N0gxMi45MzQ5TDExLjUxODIgNy4wNDE2N0MxMS40NDg4IDYuOTMwNTYgMTEuMzUxNiA2Ljg0MDI4IDExLjIyNjYgNi43NzA4M0MxMS4xMDE2IDYuNzAxMzkgMTAuOTY5NiA2LjY2NjY3IDEwLjgzMDcgNi42NjY2N0MxMC42NTAyIDYuNjY2NjcgMTAuNDg2OCA2LjcyMjIyIDEwLjM0MDcgNi44MzMzM0MxMC4xOTQ2IDYuOTQ0NDQgMTAuMDk0MSA3LjA4MzMzIDEwLjAzOTEgNy4yNUw4LjkxNDA2IDEwLjYyNUw4LjE4NDkgOS41NDE2N0M4LjExNTQ1IDkuNDMwNTYgOC4wMTgyMyA5LjM0MDI4IDcuODkzMjMgOS4yNzA4M0M3Ljc2ODIzIDkuMjAxMzkgNy42MzYyOCA5LjE2NjY3IDcuNDk3NCA5LjE2NjY3SDEuODUxNTZDMS43ODIxMiA4LjkzMDU2IDEuNzMzNTEgOC42OTA4MyAxLjcwNTczIDguNDQ3NUMxLjY3Nzk1IDguMjA0MTcgMS42NjQwNiA3Ljk2NDcyIDEuNjY0MDYgNy43MjkxN0MxLjY2NDA2IDYuMjk4NjEgMi4xMjkzNCA1LjA2OTQ0IDMuMDU5OSA0LjA0MTY3QzMuOTkwNDUgMy4wMTM4OSA1LjE1MDE3IDIuNSA2LjUzOTA2IDIuNUM3LjIwNTczIDIuNSA3LjgzNDM0IDIuNjMxOTQgOC40MjQ5IDIuODk1ODNDOS4wMTU0NSAzLjE1OTcyIDkuNTM5NjIgMy41Mjc3OCA5Ljk5NzQgNEMxMC40NDE4IDMuNTI3NzggMTAuOTU5MyAzLjE1OTcyIDExLjU0OTkgMi44OTU4M0MxMi4xNDA1IDIuNjMxOTQgMTIuNzY4OCAyLjUgMTMuNDM0OSAyLjVaTTkuOTk3NCAxNy41QzkuNzQ3NCAxNy41IDkuNTA3NjcgMTcuNDU0NyA5LjI3ODIzIDE3LjM2NDJDOS4wNDg3OCAxNy4yNzM2IDguODQ0MDYgMTcuMTM4MyA4LjY2NDA2IDE2Ljk1ODNMMy4wODA3MyAxMS4zNTQyQzIuOTk3NCAxMS4yNzA4IDIuOTIxMDEgMTEuMTg3NSAyLjg1MTU2IDExLjEwNDJDMi43ODIxMiAxMS4wMjA4IDIuNzEyNjcgMTAuOTMwNiAyLjY0MzIzIDEwLjgzMzNINy4wMzkwNkw4LjQ1NTczIDEyLjk1ODNDOC41MjUxNyAxMy4wNjk0IDguNjIyNCAxMy4xNTk3IDguNzQ3NCAxMy4yMjkyQzguODcyNCAxMy4yOTg2IDkuMDA0MzQgMTMuMzMzMyA5LjE0MzIzIDEzLjMzMzNDOS4zMjM3OCAxMy4zMzMzIDkuNDkwNDUgMTMuMjc3OCA5LjY0MzIzIDEzLjE2NjdDOS43OTYwMSAxMy4wNTU2IDkuOTAwMTcgMTIuOTE2NyA5Ljk1NTczIDEyLjc1TDExLjA4MDcgOS4zNzVMMTEuNzg5MSAxMC40NTgzQzExLjg3MjQgMTAuNTY5NCAxMS45NzY2IDEwLjY1OTcgMTIuMTAxNiAxMC43MjkyQzEyLjIyNjYgMTAuNzk4NiAxMi4zNTg1IDEwLjgzMzMgMTIuNDk3NCAxMC44MzMzSDE3LjMzMDdMMTcuMTIyNCAxMS4wODMzTDE2LjkxNDEgMTEuMzMzM0wxMS4zMDk5IDE2Ljk1ODNDMTEuMTI5MyAxNy4xMzg5IDEwLjkyOCAxNy4yNzQ0IDEwLjcwNTcgMTcuMzY1QzEwLjQ4MzUgMTcuNDU1NiAxMC4yNDc0IDE3LjUwMDYgOS45OTc0IDE3LjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiNGQUNDMTVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cImdldFJlY2FwVmlkZW9EYXRhPy5oZWFsdGggPT09J0JBRCdcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgaWQ9XCJGcmFtZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGlkPVwiVmVjdG9yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMy40MzQ5IDIuNUMxNC44MjM4IDIuNSAxNS45ODcxIDMuMDEzODkgMTYuOTI0OSA0LjA0MTY3QzE3Ljg2MjcgNS4wNjk0NCAxOC4zMzEzIDYuMjkxNjcgMTguMzMwNyA3LjcwODMzQzE4LjMzMDcgNy45NTgzMyAxOC4zMTY4IDguMjA1IDE4LjI4OTEgOC40NDgzM0MxOC4yNjEzIDguNjkxNjcgMTguMjEyNyA4LjkzMTExIDE4LjE0MzIgOS4xNjY2N0gxMi45MzQ5TDExLjUxODIgNy4wNDE2N0MxMS40NDg4IDYuOTMwNTYgMTEuMzUxNiA2Ljg0MDI4IDExLjIyNjYgNi43NzA4M0MxMS4xMDE2IDYuNzAxMzkgMTAuOTY5NiA2LjY2NjY3IDEwLjgzMDcgNi42NjY2N0MxMC42NTAyIDYuNjY2NjcgMTAuNDg2OCA2LjcyMjIyIDEwLjM0MDcgNi44MzMzM0MxMC4xOTQ2IDYuOTQ0NDQgMTAuMDk0MSA3LjA4MzMzIDEwLjAzOTEgNy4yNUw4LjkxNDA2IDEwLjYyNUw4LjE4NDkgOS41NDE2N0M4LjExNTQ1IDkuNDMwNTYgOC4wMTgyMyA5LjM0MDI4IDcuODkzMjMgOS4yNzA4M0M3Ljc2ODIzIDkuMjAxMzkgNy42MzYyOCA5LjE2NjY3IDcuNDk3NCA5LjE2NjY3SDEuODUxNTZDMS43ODIxMiA4LjkzMDU2IDEuNzMzNTEgOC42OTA4MyAxLjcwNTczIDguNDQ3NUMxLjY3Nzk1IDguMjA0MTcgMS42NjQwNiA3Ljk2NDcyIDEuNjY0MDYgNy43MjkxN0MxLjY2NDA2IDYuMjk4NjEgMi4xMjkzNCA1LjA2OTQ0IDMuMDU5OSA0LjA0MTY3QzMuOTkwNDUgMy4wMTM4OSA1LjE1MDE3IDIuNSA2LjUzOTA2IDIuNUM3LjIwNTczIDIuNSA3LjgzNDM0IDIuNjMxOTQgOC40MjQ5IDIuODk1ODNDOS4wMTU0NSAzLjE1OTcyIDkuNTM5NjIgMy41Mjc3OCA5Ljk5NzQgNEMxMC40NDE4IDMuNTI3NzggMTAuOTU5MyAzLjE1OTcyIDExLjU0OTkgMi44OTU4M0MxMi4xNDA1IDIuNjMxOTQgMTIuNzY4OCAyLjUgMTMuNDM0OSAyLjVaTTkuOTk3NCAxNy41QzkuNzQ3NCAxNy41IDkuNTA3NjcgMTcuNDU0NyA5LjI3ODIzIDE3LjM2NDJDOS4wNDg3OCAxNy4yNzM2IDguODQ0MDYgMTcuMTM4MyA4LjY2NDA2IDE2Ljk1ODNMMy4wODA3MyAxMS4zNTQyQzIuOTk3NCAxMS4yNzA4IDIuOTIxMDEgMTEuMTg3NSAyLjg1MTU2IDExLjEwNDJDMi43ODIxMiAxMS4wMjA4IDIuNzEyNjcgMTAuOTMwNiAyLjY0MzIzIDEwLjgzMzNINy4wMzkwNkw4LjQ1NTczIDEyLjk1ODNDOC41MjUxNyAxMy4wNjk0IDguNjIyNCAxMy4xNTk3IDguNzQ3NCAxMy4yMjkyQzguODcyNCAxMy4yOTg2IDkuMDA0MzQgMTMuMzMzMyA5LjE0MzIzIDEzLjMzMzNDOS4zMjM3OCAxMy4zMzMzIDkuNDkwNDUgMTMuMjc3OCA5LjY0MzIzIDEzLjE2NjdDOS43OTYwMSAxMy4wNTU2IDkuOTAwMTcgMTIuOTE2NyA5Ljk1NTczIDEyLjc1TDExLjA4MDcgOS4zNzVMMTEuNzg5MSAxMC40NTgzQzExLjg3MjQgMTAuNTY5NCAxMS45NzY2IDEwLjY1OTcgMTIuMTAxNiAxMC43MjkyQzEyLjIyNjYgMTAuNzk4NiAxMi4zNTg1IDEwLjgzMzMgMTIuNDk3NCAxMC44MzMzSDE3LjMzMDdMMTcuMTIyNCAxMS4wODMzTDE2LjkxNDEgMTEuMzMzM0wxMS4zMDk5IDE2Ljk1ODNDMTEuMTI5MyAxNy4xMzg5IDEwLjkyOCAxNy4yNzQ0IDEwLjcwNTcgMTcuMzY1QzEwLjQ4MzUgMTcuNDU1NiAxMC4yNDc0IDE3LjUwMDYgOS45OTc0IDE3LjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiNGMDQ0MzhcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcy0yXCI+e3tnZXRSZWNhcFZpZGVvRGF0YT8uaGVhbHRoID8/ICctLSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJjYW1lcmFWaWV3KClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBteC0yIGJ0bi1saWdodC1wcmltYXJ5MSByb3VuZGVkLTMgdGV4dC1ub3dyYXAgYm9yZGVyLXZhbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1zLTJcIj5MaXZlIFZpZXc8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+IC0tPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cInJlY2FwbGFvZGluZ1wiIGNsYXNzPVwicm93IGxvYWRlciBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgaC0yMjVweFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXIgcHQtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJyZWNhcG5vRGF0YVwiIGNsYXNzPVwicm93IHB4LTNcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm9ybWFsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgbWItMTAgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctbWFwMVwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ljb25zL25vdC1hcHBsaWNhYmxlLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXRpdGxlIG10LTNcIj5EYXRhIE5vdCBGb3VuZDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXN1YlwiPk5vcm1hbGl6ZWQgZGF0YSBpcyBub3QgYXBwbGljYWJsZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhbm9ybWFsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctbWFwLXJlY2FwXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvTm9kYXRhMS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS10aXRsZVwiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS1zdWJcIj5UaGVyZSBpcyBubyByZXN1bHQgZm9yIHRoaXMgUmVjYXAgdmlkZW88L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFyZWNhcGxhb2RpbmcgJiYgIXJlY2Fwbm9EYXRhXCIgY2xhc3M9XCJjYXJkLWJvZHkgcC0wXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IG14LTNcIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcm91c2VsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJvdXNlbC1pbm5lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcm91c2VsLWl0ZW1cIiAqbmdGb3I9XCJsZXQgZ3JvdXAgb2YgcmVjYXBzR3JvdXBlZDsgbGV0IGkgPSBpbmRleFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJpID09PSBjdXJyZW50SW5kZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHBhaXIgb2YgZ3JvdXBcIiBbbmdDbGFzc109XCJjb2xWYWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBbc3JjXT1cInBhaXIudGh1bWJJbWFnZVwiIChjbGljayk9XCJ2aWRlb0NsaWNrKHBhaXIpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImltYWdlLXRodW1iIG1iLTggZC1ibG9jayB3LTEwMCBjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0PVwiSW1hZ2Uge3sgaSArIDEgfX1cIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gQ29uZGl0aW9uYWxseSBkaXNwbGF5IFByZXZpb3VzIGJ1dHRvbiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNhcm91c2VsLWNvbnRyb2wtcHJldlwiICpuZ0lmPVwiY3VycmVudEluZGV4ID4gMFwiIChjbGljayk9XCJwcmV2U2xpZGUoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvblwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENvbmRpdGlvbmFsbHkgZGlzcGxheSBOZXh0IGJ1dHRvbiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNhcm91c2VsLWNvbnRyb2wtbmV4dFwiICpuZ0lmPVwiY3VycmVudEluZGV4IDwgcmVjYXBzR3JvdXBlZC5sZW5ndGggLSAxXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJuZXh0U2xpZGUoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvblwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIE5hdmlnYXRpb24gRG90cyAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInJlY2Fwc0dyb3VwZWQubGVuZ3RoID4gMVwiIGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJjYXJvdXNlbC1pbmRpY2F0b3JzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBncm91cCBvZiByZWNhcHNHcm91cGVkOyBsZXQgaSA9IGluZGV4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJpID09PSBjdXJyZW50SW5kZXhcIiAoY2xpY2spPVwiZ29Ub1NsaWRlKGkpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gPHZpZGVvIGNvbnRyb2xzIGF1dG9wbGF5IGNsYXNzPVwicmVjYXAtaW1nIHAtM1wiIFtzcmNdPVwiZ2V0UmVjYXBEYXRhPy52aWRlb1VSTFwiPiAtLT5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tIDxzb3VyY2UgIHR5cGU9XCJ2aWRlby9tcDRcIj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSA8c291cmNlIFtzcmNdPVwiZ2V0UmVjYXBEYXRhPy52aWRlb1VSTFwiIHR5cGU9XCJ2aWRlby9vZ2dcIj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSA8L3ZpZGVvPiAtLT5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgI21hcENvbnRhaW5lciBzdHlsZT1cImhlaWdodDoyMzBweDtcIj48L2Rpdj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbWItM1wiPjxpbWcgc3JjPVwiYXNzZXRzL3RhbmdvL0ltYWdlcy9yZWNhcC5zdmdcIiBhbHQ9XCJcIiBjbGFzcz1cInJlY2FwLWltZ1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbWItM1wiPjxpbWcgc3JjPVwiYXNzZXRzL3RhbmdvL0ltYWdlcy9yZWNhcC5zdmdcIiBhbHQ9XCJcIiBjbGFzcz1cInJlY2FwLWltZ1wiPjwvZGl2PiAtLT5cclxuXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIG10LTNcIj5cclxuXHJcbiAgICAgICAgPCEtLSBmb290ZmFsbCB0cmVuZCBjaGFydHMgLS0+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cIiEoc3RvcmVJZGFycmF5Py5sZW5ndGggPT09IDEgJiYgKHN0b3JlSWRhcnJheVswXSA9PT0gJzQ1OS0yJyB8fCBzdG9yZUlkYXJyYXlbMF0gPT09ICc0NTktNCcpKVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiY2FyZFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgYm9yZGVyLTAgcHQtM1wiPlxyXG4gICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2FyZC1sYWJlbDEgbWItMlwiPkZvb3RmYWxsIFRyZW5kPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1zdWIgbWItMlwiPkJhc2VkIG9uIHt7Z2V0RGF0ZVZhbHVlcz8uZnJvbURhdGUgfCBkYXRlOidkZCBNTU0sIHl5eXknfX0g4oCTXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0RGF0ZVZhbHVlcz8udG9EYXRlIHwgZGF0ZTonZGQgTU1NLCB5eXl5J319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9oMz5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLXRvb2xiYXIgdGV4dC1ub3dyYXBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIHBvc2l0aW9uLXJlbGF0aXZlIG15LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS1iZWdpbjo6TmF2IGdyb3VwLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmF2LWdyb3VwIG5hdi1ncm91cC1vdXRsaW5lIGJvcmRlci0xIGJ0bi1ncm91cCBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lIHB4LTYgcHktM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInR5cGUgPT09ICdkYWlseScgPyAnYWN0aXZlUGxhbkJ0bicgOiAnaW5hY3RpdmVQbGFuQnRuJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RQbGFuVHJlbmRzKCdkYWlseScpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERheVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gTW9udGggQnV0dG9uIC0tPlxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBXZWVrIEJ1dHRvbiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lIHB4LTYgcHktM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInR5cGUgPT09ICd3ZWVrbHknID8gJ2FjdGl2ZVBsYW5CdG4nIDogJ2luYWN0aXZlUGxhbkJ0bidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0UGxhblRyZW5kcygnd2Vla2x5JylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV2Vla1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIERheSBCdXR0b24sIHZpc2libGUgb25seSBpZiBkYXRlTGVuZ3RoIGlzIHZhbGlkIGFuZCB0eXBlIGlzIGVpdGhlciAnd2Vla2x5JyBvciAnZGFpbHknIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLW91dGxpbmUgcHgtNiBweS0zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwidHlwZSA9PT0gJ21vbnRobHknID8gJ2FjdGl2ZVBsYW5CdG4nIDogJ2luYWN0aXZlUGxhbkJ0bidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0UGxhblRyZW5kcygnbW9udGhseScpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1vbnRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tZW5kOjpOYXYgZ3JvdXAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm14LTIgbXQtMyBkcm9wc2VsZWN0XCI+VHJlbmQ8L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGliLXJlYWN0aXZlLXNlbGVjdCBbZm9ybUNvbnRyb2xdPVwic2VsZWN0Q29udHJvbFwiIFtpZEZpZWxkXT1cIid2YWx1ZSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25hbWVGaWVsZF09XCInbGFiZWwnXCIgW2RhdGFdPVwiZGF0YXNldHNcIiBjbGFzcz1cInctMTAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh2YWx1ZUNoYW5nZSk9XCJvblZhbHVlQ2hhbmdldHJlbmQoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpYi1yZWFjdGl2ZS1zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9mb3JtPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNlbGVjdCBjbGFzcz1cImZvcm0tc2VsZWN0IGZvcm0tc2VsZWN0LXNtXCIgKGNoYW5nZSk9XCJvbkRhdGFzZXRDaGFuZ2UoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBkYXRhc2V0IG9mIGRhdGFzZXRzXCIgW3ZhbHVlXT1cImRhdGFzZXQudmFsdWVcIj57eyBkYXRhc2V0LmxhYmVsIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBtdC0xIG1zLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiAqbmdJZj1cInN0b3JlSWRhcnJheT8ubGVuZ3RoID09PSAxXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZC1mbGV4IG1zLTEgZHJvcHNlbGVjdCBtdC0yIGN1cnNvci1wb2ludGVyIHRleHQtbm93cmFwIGZzLTVcIj5Gb3JlY2FzdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzI2NDVfMjc0NTkpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTMuMzMzOTggMS4zMzMzMUwzLjQ2MDY1IDEuOTU5OThDMy41NTE0MiAyLjQwOTk4IDMuNzU2ODMgMi44Mjg5MyA0LjA1Njk5IDMuMTc2MjhDNC4zNTcxNSAzLjUyMzYyIDQuNzQxODkgMy43ODc1OSA1LjE3Mzk4IDMuOTQyNjVMNS4zMzM5OCAzLjk5OTk4TDUuMTczOTggNC4wNTczMUM0Ljc0MTg5IDQuMjEyMzcgNC4zNTcxNSA0LjQ3NjM0IDQuMDU2OTkgNC44MjM2OEMzLjc1NjgzIDUuMTcxMDMgMy41NTE0MiA1LjU4OTk4IDMuNDYwNjUgNi4wMzk5OEwzLjMzMzk4IDYuNjY2NjVMMy4yMDczMiA2LjAzOTk4QzMuMTE2NTQgNS41ODk5OCAyLjkxMTE0IDUuMTcxMDMgMi42MTA5OCA0LjgyMzY4QzIuMzEwODIgNC40NzYzNCAxLjkyNjA3IDQuMjEyMzcgMS40OTM5OCA0LjA1NzMxTDEuMzMzOTggMy45OTk5OEwxLjQ5Mzk4IDMuOTQyNjVDMS45MjYwNyAzLjc4NzU5IDIuMzEwODIgMy41MjM2MiAyLjYxMDk4IDMuMTc2MjhDMi45MTExNCAyLjgyODkzIDMuMTE2NTQgMi40MDk5OCAzLjIwNzMyIDEuOTU5OThMMy4zMzM5OCAxLjMzMzMxWk01LjMzMzk4IDEwLjY2NjZMNS40ODczMiAxMS41MTczQzUuNTI3MTMgMTEuNzM5MiA1LjYyMjU2IDExLjk0NzQgNS43NjQ2OCAxMi4xMjI0QzUuOTA2OCAxMi4yOTc0IDYuMDkwOTggMTIuNDMzNSA2LjI5OTk4IDEyLjUxOEw2LjY2NzMyIDEyLjY2NjZMNi4yOTk5OCAxMi44MTUzQzYuMDkwOTQgMTIuODk5NyA1LjkwNjY4IDEzLjAzNTYgNS43NjQ0NSAxMy4yMTA1QzUuNjIyMjEgMTMuMzg1NCA1LjUyNjYzIDEzLjU5MzUgNS40ODY2NSAxMy44MTUzTDUuMzMzOTggMTQuNjY2Nkw1LjE4MDY1IDEzLjgxNkM1LjE0MDg0IDEzLjU5NDEgNS4wNDU0MSAxMy4zODU5IDQuOTAzMjkgMTMuMjEwOUM0Ljc2MTE3IDEzLjAzNTkgNC41NzY5OSAxMi44OTk4IDQuMzY3OTggMTIuODE1M0w0LjAwMDY1IDEyLjY2NjZMNC4zNjc5OCAxMi41MThDNC41NzcwMyAxMi40MzM2IDQuNzYxMjkgMTIuMjk3NyA0LjkwMzUyIDEyLjEyMjhDNS4wNDU3NiAxMS45NDc5IDUuMTQxMzMgMTEuNzM5OCA1LjE4MTMyIDExLjUxOEw1LjMzMzk4IDEwLjY2NjZaTTEwLjY2NzMgMS45OTk5OEwxMS4wMzggMy43NjkzMUMxMS4yMjY5IDQuNjcxMzcgMTEuNjQ2MyA1LjUwOTA4IDEyLjI1NTQgNi4yMDA3NkMxMi44NjQ1IDYuODkyNDQgMTMuNjQyNCA3LjQxNDQ4IDE0LjUxMzMgNy43MTU5OEwxNS4zMzQgNy45OTk5OEwxNC41MTMzIDguMjgzOThDMTMuNjQyNCA4LjU4NTQ4IDEyLjg2NDUgOS4xMDc1MiAxMi4yNTU0IDkuNzk5MkMxMS42NDYzIDEwLjQ5MDkgMTEuMjI2OSAxMS4zMjg2IDExLjAzOCAxMi4yMzA2TDEwLjY2NzMgMTRMMTAuMjk2NyAxMi4yMzA2QzEwLjEwNzcgMTEuMzI4NiA5LjY4ODMgMTAuNDkwOSA5LjA3OTIyIDkuNzk5MkM4LjQ3MDE1IDkuMTA3NTIgNy42OTIyMyA4LjU4NTQ4IDYuODIxMzIgOC4yODM5OEw2LjAwMDY1IDcuOTk5OThMNi44MjEzMiA3LjcxNTk4QzcuNjkyMjMgNy40MTQ0OCA4LjQ3MDE1IDYuODkyNDQgOS4wNzkyMiA2LjIwMDc2QzkuNjg4MyA1LjUwOTA4IDEwLjEwNzcgNC42NzEzNyAxMC4yOTY3IDMuNzY5MzFMMTAuNjY3MyAxLjk5OTk4WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8yNjQ1XzI3NDU5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZm9ybS1jaGVjayBmb3JtLXN3aXRjaCBteC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dCAgY3Vyc29yLXBvaW50ZXJcIiB0eXBlPVwiY2hlY2tib3hcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImZvcmVjYXN0XCIgKGNsaWNrKT1cImZvcmVjYXN0QXBpKCRldmVudClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFvYmpEYXRhPy5mb3JlY2FzdFwiIGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmUgY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1zLTFcIiAoY2xpY2spPVwicHJvZHVjdHRyYWlsRHJvcGRvd24oJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTUgMTBIMTVNMi41IDVIMTcuNU03LjUgMTVIMTIuNVwiIHN0cm9rZT1cIiMzNDQwNTRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjY2NjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNob3dcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhcmQgcHktMiB3LTIwMHB4IHBvc2l0aW9uLWFic29sdXRlIHByb2R1Y3Rkcm9wIHRvcC0yMCBlbmQtMSBtdC0xMCB6LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsICpuZ0lmPVwiIW9iakRhdGE/LmZvcmVjYXN0XCIgY2xhc3M9XCJsaXN0LXVuc3R5bGVkIG1iLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGxpIGNsYXNzPVwicHJvZHVjdHRleHQgcHgtNSBpdGVtcyBjdXJzb3ItcG9pbnRlciBweS00XCIgW25nQ2xhc3NdPVwidHJlbmR0eXBlVmFsdWUgPT09J25vcm1hbGl6ZScgPyAnYmctZm9yY2FzdCc6JydcIiB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJjaGFuZ2VTdGF0dXMoJ25vcm1hbGl6ZScpXCI+Tm9ybWFsaXplXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz1cInRleHQtZW5kIG1zLTIwXCIgKm5nSWY9XCJ0cmVuZHR5cGVWYWx1ZSA9PT0nbm9ybWFsaXplJyA/ICdiZy1mb3JjYXN0JzonJ1wiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMy4zMzI3IDRMNS45OTkzNSAxMS4zMzMzTDIuNjY2MDIgOFwiIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIxLjVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgKm5nSWY9XCJzdG9yZUlkYXJyYXk/Lmxlbmd0aCA9PT0gMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwcm9kdWN0dGV4dCBweC01IGl0ZW1zIGN1cnNvci1wb2ludGVyIHB5LTRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInRyZW5kdHlwZVZhbHVlID09PSdhY3R1YWwnID8gJ2JnLWZvcmNhc3QnOicnXCIgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNoYW5nZVN0YXR1cygnYWN0dWFsJylcIj5BY3R1YWxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIGNsYXNzPVwidGV4dC1lbmQgbXMtMjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInRyZW5kdHlwZVZhbHVlID09PSdhY3R1YWwnID8gJ2JnLWZvcmNhc3QnOicnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzLjMzMjcgNEw1Ljk5OTM1IDExLjMzMzNMMi42NjYwMiA4XCIgc3Ryb2tlPVwiIzM0NDA1NFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSAqbmdJZj1cInN0b3JlSWRhcnJheT8ubGVuZ3RoID4gMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwcm9kdWN0dGV4dCBweC01IGl0ZW1zIGN1cnNvci1wb2ludGVyIHB5LTRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInRyZW5kdHlwZVZhbHVlID09PSdhdmVyYWdlJyA/ICdiZy1mb3JjYXN0JzonJ1wiIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJjaGFuZ2VTdGF0dXMoJ2F2ZXJhZ2UnKVwiPkF2ZXJhZ2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj4gPHN2ZyBjbGFzcz1cInRleHQtZW5kIG1zLTIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwidHJlbmR0eXBlVmFsdWUgPT09J2F2ZXJhZ2UnID8gJ2JnLWZvcmNhc3QnOicnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzLjMzMjcgNEw1Ljk5OTM1IDExLjMzMzNMMi42NjYwMiA4XCIgc3Ryb2tlPVwiIzM0NDA1NFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8bGkgY2xhc3M9XCJwcm9kdWN0dGV4dCBweC01IGl0ZW1zIGN1cnNvci1wb2ludGVyIHB5LTRcIiBbbmdDbGFzc109XCJ0cmVuZHR5cGVWYWx1ZSA9PT0ndGFyZ2V0JyA/ICdiZy1mb3JjYXN0JzonJ1wiIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2hhbmdlU3RhdHVzKCd0YXJnZXQnKVwiPlRhcmdldFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJ0ZXh0LWVuZCBtcy0yMFwiICpuZ0lmPVwidHJlbmR0eXBlVmFsdWUgPT09J3RhcmdldCcgPyAnYmctZm9yY2FzdCc6JydcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzLjMzMjcgNEw1Ljk5OTM1IDExLjMzMzNMMi42NjYwMiA4XCIgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L2xpPiAtLT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJwcm9kdWN0dGV4dCBweC01IGl0ZW1zIGN1cnNvci1wb2ludGVyIHB5LTRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInRyZW5kdHlwZVZhbHVlID09PSd3ZWVrZW5kcycgPyAnYmctZm9yY2FzdCc6JydcIiB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2hhbmdlU3RhdHVzKCd3ZWVrZW5kcycpXCI+V2Vla2VuZHNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIGNsYXNzPVwidGV4dC1lbmQgbXMtMjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInRyZW5kdHlwZVZhbHVlID09PSd3ZWVrZW5kcycgPyAnYmctZm9yY2FzdCc6JydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMuMzMyNyA0TDUuOTk5MzUgMTEuMzMzM0wyLjY2NjAyIDhcIiBzdHJva2U9XCIjMzQ0MDU0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz1cInByb2R1Y3R0ZXh0IHB4LTUgaXRlbXMgY3Vyc29yLXBvaW50ZXIgcHktNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwidHJlbmR0eXBlVmFsdWUgPT09J3dlZWtkYXlzJyA/ICdiZy1mb3JjYXN0JzonJ1wiIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJjaGFuZ2VTdGF0dXMoJ3dlZWtkYXlzJylcIj5XZWVrZGF5c1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJ0ZXh0LWVuZCBtcy0yMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwidHJlbmR0eXBlVmFsdWUgPT09J3dlZWtkYXlzJyA/ICdiZy1mb3JjYXN0JzonJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMy4zMzI3IDRMNS45OTkzNSAxMS4zMzMzTDIuNjY2MDIgOFwiIHN0cm9rZT1cIiMzNDQwNTRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibG9hZGluZ1RyZW5kc1wiIGNsYXNzPVwicm93IGxvYWRlciAgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub0RhdGFUcmVuZHNcIiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImltZy1ub2RhdGFcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGExLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXRpdGxlXCI+Tm8gZGF0YSBmb3VuZDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXN1YlwiPlRoZXJlIGlzIG5vIHJlc3VsdCBmb3IgdGhpcyBmb290ZmFsbCB0cmVuZDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMFwiICpuZ0lmPVwiIW5vRGF0YVRyZW5kcyAmJiAhbG9hZGluZ1RyZW5kc1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyIHB4LTNcIiBpZD1cIkZvb3RmYWxsdHJlbmRcIj48L2Rpdj5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgPGRpdiAjdG9vbHRpcENvbnRhaW5lciBjbGFzcz1cInRvb2x0aXAtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvb2x0aXAtY29udGVudFwiICpuZ0lmPVwidG9vbHRpcERhdGFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQgcC01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGl0bGUgdGV4dC1zdGFydFwiPnt7dG9vbHRpcERhdGEuZnVsbFN0b3JlTmFtZX19PC9TcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+U3VtPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+QXZnPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFRhYmxlIGZvciBjb3VudHMgYW5kIHJhdGVzIGluIGhvcml6b250YWwgZm9ybWF0IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPVwidGFibGUgdGFibGUtaG9yaXpvbnRhbCB0cmVuc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwidGl0bGUgdGV4dC1zdGFydCBweC0zXCI+e3t0b29sdGlwRGF0YS5mdWxsU3RvcmVOYW1lfX08L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwidGl0bGUgdGV4dC1lbmRcIj5TdW08L3RoPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdG9yZUlkYXJyYXk/Lmxlbmd0aCAhPT0gMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCAqbmdJZj1cInR5cGUgIT09ICdkYWlseSdcIiBjbGFzcz1cInRpdGxlIHRleHQtZW5kXCI+QXZnPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENvdW50cyBTZWN0aW9uIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJ0cmVuZC1sYWJlbFwiIHN0eWxlPVwibGluZS1oZWlnaHQ6IDEwcHggIWltcG9ydGFudFwiPlRvdGFsIEZvb3RmYWxsPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cInZhbHVlXCIgc3R5bGU9XCJsaW5lLWhlaWdodDogMTBweCAhaW1wb3J0YW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3t0b29sdGlwRGF0YS5mb290ZmFsbF9jb3VudH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0b3JlSWRhcnJheT8ubGVuZ3RoICE9PSAxXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwidHlwZSAhPT0gJ2RhaWx5J1wiIGNsYXNzPVwidmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxMHB4ICFpbXBvcnRhbnRcIj57e3Rvb2x0aXBEYXRhLmZvb3RmYWxsX2NvdW50X2F2Z319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJ0cmVuZC1sYWJlbFwiIHN0eWxlPVwibGluZS1oZWlnaHQ6IDEwcHggIWltcG9ydGFudFwiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ID09PSAnNDUyJ1wiPkxlc3MgdGhhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2NsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5ib3VuY2VkTGltaXQ/LnZhbHVlfX0gbWluczwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgIT09ICc0NTInXCI+Qm91bmNlZCBGb290ZmFsbDwvc3Bhbj48L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwidmFsdWVcIiBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxMHB4ICFpbXBvcnRhbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3Rvb2x0aXBEYXRhLmJvdW5jZWRfY291bnR9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdG9yZUlkYXJyYXk/Lmxlbmd0aCAhPT0gMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cInR5cGUgIT09ICdkYWlseSdcIiBjbGFzcz1cInZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJsaW5lLWhlaWdodDogMTBweCAhaW1wb3J0YW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7dG9vbHRpcERhdGEuYm91bmNlZF9mb290ZmFsbF9jb3VudF9hdmd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwidHJlbmQtbGFiZWxcIiBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxMHB4ICFpbXBvcnRhbnRcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1MidcIj5Nb3JlIHRoYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uYm91bmNlZExpbWl0Py52YWx1ZX19IG1pbnM8L3NwYW4+IDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSAnNDUyJ1wiPkVuZ2FnZXJzPC9zcGFuPjwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJ2YWx1ZVwiIHN0eWxlPVwibGluZS1oZWlnaHQ6IDEwcHggIWltcG9ydGFudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7dG9vbHRpcERhdGEuZW5nYWdlcnNfY291bnR9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdG9yZUlkYXJyYXk/Lmxlbmd0aCAhPT0gMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cInR5cGUgIT09ICdkYWlseSdcIiBjbGFzcz1cInZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJsaW5lLWhlaWdodDogMTBweCAhaW1wb3J0YW50XCI+e3t0b29sdGlwRGF0YS5lbmdhZ2Vyc19jb3VudF9hdmd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwidHJlbmQtbGFiZWxcIiBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxMHB4ICFpbXBvcnRhbnRcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1MidcIj57e2NsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5taXNzZWRPcHBvcnR1bml0eUZyb20/LnZhbHVlfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLSB7e2NsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5taXNzZWRPcHBvcnR1bml0eVRvPy52YWx1ZX19IG1pbnM8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgIT09ICc0NTInXCI+TWlzc2VkIE9wcG9ydHVuaXRpZXM8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwidmFsdWVcIiBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxMHB4ICFpbXBvcnRhbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3Rvb2x0aXBEYXRhLm1pc3NlZE9wcG9ydHVuaXR5X2NvdW50fX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3RvcmVJZGFycmF5Py5sZW5ndGggIT09IDFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgKm5nSWY9XCJ0eXBlICE9PSAnZGFpbHknXCIgY2xhc3M9XCJ2YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwibGluZS1oZWlnaHQ6IDEwcHggIWltcG9ydGFudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3Rvb2x0aXBEYXRhLm1pc3NlZE9wcG9ydHVuaXR5X2NvdW50X2F2Z319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHIgc3R5bGU9XCJsaW5lLWhlaWdodDogMTBweCAhaW1wb3J0YW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJ0cmVuZC1sYWJlbFwiIHN0eWxlPVwibGluZS1oZWlnaHQ6IDEwcHggIWltcG9ydGFudFwiPkRvd24gVGltZTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJ2YWx1ZVwiIHN0eWxlPVwibGluZS1oZWlnaHQ6IDEwcHggIWltcG9ydGFudFwiPnt7dG9vbHRpcERhdGEuZG93bl90aW1lID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b29sdGlwRGF0YS5kb3duX3RpbWUgOictLSd9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3RvcmVJZGFycmF5Py5sZW5ndGggIT09IDFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgKm5nSWY9XCJ0eXBlICE9PSAnZGFpbHknXCIgY2xhc3M9XCJ2YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwibGluZS1oZWlnaHQ6IDEwcHggIWltcG9ydGFudFwiPnt7dG9vbHRpcERhdGEuZG93bl90aW1lfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFJhdGVzIFNlY3Rpb24gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cInRyZW5kLWxhYmVsXCIgc3R5bGU9XCJsaW5lLWhlaWdodDogMTBweCAhaW1wb3J0YW50XCI+RHdlbGwgVGltZTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJ2YWx1ZSB0ZXh0LW5vd3JhcFwiIHN0eWxlPVwibGluZS1oZWlnaHQ6IDEwcHggIWltcG9ydGFudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7dG9vbHRpcERhdGEuYXZnRHdlbGxUaW1lLnRvRml4ZWQoMCl9fSBNaW5zXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0b3JlSWRhcnJheT8ubGVuZ3RoICE9PSAxXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwidHlwZSAhPT0gJ2RhaWx5J1wiIGNsYXNzPVwidmFsdWUgdGV4dC1ub3dyYXBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxMHB4ICFpbXBvcnRhbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3t0b29sdGlwRGF0YS5hdmdEd2VsbFRpbWUudG9GaXhlZCgwKX19IE1pbnNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cInRyZW5kLWxhYmVsXCIgc3R5bGU9XCJsaW5lLWhlaWdodDogMTBweCAhaW1wb3J0YW50XCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09ICc0NTInXCI+IE1vcmUgdGhhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2NsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5jb252ZXJzaW9uPy52YWx1ZX19IG1pbnMgUmF0ZTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0gJzQ1MidcIj5Db252ZXJzaW9uPC9zcGFuPjwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJ2YWx1ZVwiIHN0eWxlPVwibGluZS1oZWlnaHQ6IDEwcHggIWltcG9ydGFudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7dG9vbHRpcERhdGEuY29udmVyc2lvblJhdGUudG9GaXhlZCgwKX19JVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdG9yZUlkYXJyYXk/Lmxlbmd0aCAhPT0gMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cInR5cGUgIT09ICdkYWlseSdcIiBjbGFzcz1cInZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJsaW5lLWhlaWdodDogMTBweCAhaW1wb3J0YW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7dG9vbHRpcERhdGEuY29udmVyc2lvblJhdGUudG9GaXhlZCgwKX19JVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG5cclxuICAgICAgICAgICAgICAgIDxsaWItcGFnaW5hdGlvbiBbaXRlbXNQZXJQYWdlXT1cInBhZ2VTaXplVHJlbmRzXCIgW2N1cnJlbnRQYWdlXT1cIm9mZnNldFRyZW5kc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW3RvdGFsSXRlbXNdPVwidG90YWxJdGVtc1RyZW5kc1wiIFtwYWdpbmF0aW9uU2l6ZXNdPVwicGFnaW5hdGlvblNpemVzVHJlbmRzXCJcclxuICAgICAgICAgICAgICAgICAgICBbcGFnZVNpemVdPVwicGFnZVNpemVUcmVuZHNcIiAocGFnZUNoYW5nZSk9XCJvblBhZ2VDaGFuZ2VUcmVuZHMoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKHBhZ2VTaXplQ2hhbmdlKT1cIm9uUGFnZVNpemVDaGFuZ2VUcmVuZHMoJGV2ZW50KVwiPjwvbGliLXBhZ2luYXRpb24+XHJcblxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPCEtLSA8bGliLXRyYWZmaWMtY2hhcnRzIGNsYXNzPVwibXktMlwiPjwvbGliLXRyYWZmaWMtY2hhcnRzPiAtLT5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiIShzdG9yZUlkYXJyYXk/Lmxlbmd0aCA9PT0gMSAmJiAoc3RvcmVJZGFycmF5WzBdID09PSAnNDU5LTInIHx8IHN0b3JlSWRhcnJheVswXSA9PT0gJzQ1OS00JykpXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJjYXJkIG10LTNcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIG15LTMgbXgtMlwiPlxyXG4gICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwibmF2IG5hdi1zdHJldGNoIG5hdi1saW5lLXRhYnMxIG5hdi1saW5lLXRhYnMgYm9yZGVyLXRyYW5zcGFyZW50IGZsZXgtbm93cmFwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0lmPVwidGhpcy5oZWFkZXJEYXRhPy5jbGllbnQgIT09JzQ1OSdcIiBjbGFzcz1cIm5hdi1pdGVtIG5hdi1pdGVtMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RlZFRhYnMoJ3RyYWZmaWMnKVwiPjxhIFtuZ0NsYXNzXT1cInNlbGVjdGVkVGFiID09PSd0cmFmZmljJyA/ICdhY3RpdmUnIDonJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1saW5rIG5hdi1saW5rMSBjdXJzb3ItcG9pbnRlciBuby1ib3JkZXIgbWUtNiBcIj5UcmFmZmljICYgRHdlbGw8L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJuYXYtaXRlbSBuYXYtaXRlbTFcIiAoY2xpY2spPVwic2VsZWN0ZWRUYWJzKCdmb290ZmFsbCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxhIFtuZ0NsYXNzXT1cInNlbGVjdGVkVGFiID09PSdmb290ZmFsbCcgPyAnYWN0aXZlJyA6JydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJuYXYtbGluayBuYXYtbGluazEgY3Vyc29yLXBvaW50ZXIgbWUtNlwiPkZvb3RmYWxsPC9hPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwibmF2LWl0ZW0gbmF2LWl0ZW0xXCIgKGNsaWNrKT1cInNlbGVjdGVkVGFicygnYm91bmNlZCcpXCI+PGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNlbGVjdGVkVGFiID09PSdib3VuY2VkJyA/ICdhY3RpdmUnIDonJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1saW5rIG5hdi1saW5rMSBjdXJzb3ItcG9pbnRlciBuby1ib3JkZXIgbWUtNiBcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJyA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnTGVzcyB0aGFuICcrIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSsgJyBtaW5zJyA6ICdCb3VuY2VkJ319IEZvb3RmYWxsPC9hPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwibmF2LWl0ZW0gbmF2LWl0ZW0xXCIgKGNsaWNrKT1cInNlbGVjdGVkVGFicygnZW5nYWdlcnMnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YSBbbmdDbGFzc109XCJzZWxlY3RlZFRhYiA9PT0nZW5nYWdlcnMnID8gJ2FjdGl2ZScgOicnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibmF2LWxpbmsgbmF2LWxpbmsxIGN1cnNvci1wb2ludGVyIG1lLTZcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJyA/ICdNb3JlIHRoYW4gJytcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSArJyBtaW5zJyA6ICdFbmdhZ2Vycyd9fTwvYT5cclxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwibmF2LWl0ZW0gbmF2LWl0ZW0xXCIgKGNsaWNrKT1cInNlbGVjdGVkVGFicygnbWlzc2VkT3Bwb3J0dW5pdHknKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YSBbbmdDbGFzc109XCJzZWxlY3RlZFRhYiA9PT0nbWlzc2VkT3Bwb3J0dW5pdHknID8gJ2FjdGl2ZScgOicnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibmF2LWxpbmsgbmF2LWxpbmsxIGN1cnNvci1wb2ludGVyIG1lLTZcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJyA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZWF0dXJlQ29uZmlnPy5taXNzZWRPcHBvcnR1bml0eUZyb20udmFsdWUrJyAtICcrIGZlYXR1cmVDb25maWc/Lm1pc3NlZE9wcG9ydHVuaXR5VG8udmFsdWUrXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnIG1pbnMnOidNaXNzZWQgT3Bwb3J0dW5pdHknfX08L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8bGkgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgIT09ICc0NTInXCIgY2xhc3M9XCJuYXYtaXRlbSBuYXYtaXRlbTFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0ZWRUYWJzKCdwb3RlbnRpYWxCdXllcnMnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YSBbbmdDbGFzc109XCJzZWxlY3RlZFRhYiA9PT0ncG90ZW50aWFsQnV5ZXJzJyA/ICdhY3RpdmUnIDonJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1saW5rIG5hdi1saW5rMSBjdXJzb3ItcG9pbnRlciBtZS02XCI+UG90ZW50aWFsIEJ1eWVyPC9hPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwibmF2LWl0ZW0gbmF2LWl0ZW0xXCIgKGNsaWNrKT1cInNlbGVjdGVkVGFicygnY29udmVyc2lvbicpXCI+PGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNlbGVjdGVkVGFiID09PSdjb252ZXJzaW9uJyA/ICdhY3RpdmUnIDonJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1saW5rIG5hdi1saW5rMSBjdXJzb3ItcG9pbnRlciBuby1ib3JkZXIgbWUtNiBcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0gJzQ1MicgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ01vcmUgdGhhbiAnKyBmZWF0dXJlQ29uZmlnPy5jb252ZXJzaW9uLnZhbHVlICsgJyBtaW5zJzonQ29udmVyc2lvbid9fTwvYT5cclxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY2hhcnRsb2FkaW5nXCIgY2xhc3M9XCJyb3cgbG9hZGVyICBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjaGFydE5vRGF0YVwiIGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiaW1nLW5vZGF0YVwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ljb25zL05vZGF0YTEuc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXRpdGxlXCI+Tm8gZGF0YSBmb3VuZDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS1zdWJcIj5UaGVyZSBpcyBubyByZXN1bHQgZm9yIHRoaXMgPHNwYW4+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1MicgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnQW5hbHlzaXMnIDogc2VsY3RlZFZhbHVlfX08L3NwYW4+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0yIGgtMTAwXCIgKm5nSWY9XCIhY2hhcnRsb2FkaW5nICYmICFjaGFydE5vRGF0YVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2VsZWN0ZWRUYWIgPT09J3RyYWZmaWMnXCIgY2xhc3M9XCJsZWZ0LWJhclwiPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS03XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktMTAgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInctMTAwXCI+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjI1XCIgdmlld0JveD1cIjAgMCAyNCAyNVwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMgMi4xMjVMMyAxNC4xMjVIMTJMMTEgMjIuMTI1TDIxIDEwLjEyNUgxMkwxMyAyLjEyNVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0RGVuc2l0eUR3ZWxsRGF0YT8uZGVuc2l0eUR3ZWxsQ2FyZD8uYnVzaWVzdERheSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0RGVuc2l0eUR3ZWxsRGF0YT8uZGVuc2l0eUR3ZWxsQ2FyZD8uYnVzaWVzdERheSA6Jy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+QnVzaWVzdCBEYXk8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktMTAgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInctMTAwXCI+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjI1XCIgdmlld0JveD1cIjAgMCAyNCAyNVwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMgMi4xMjVMMyAxNC4xMjVIMTJMMTEgMjIuMTI1TDIxIDEwLjEyNUgxMkwxMyAyLjEyNVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0RGVuc2l0eUR3ZWxsRGF0YT8uZGVuc2l0eUR3ZWxsQ2FyZD8uYnVzaWVzdFRpbWUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldERlbnNpdHlEd2VsbERhdGE/LmRlbnNpdHlEd2VsbENhcmQ/LmJ1c2llc3RUaW1lIDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5CdXNpZXN0IFRpbWU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktMTAgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInctMTAwXCI+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjI1XCIgdmlld0JveD1cIjAgMCAyNCAyNVwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMgMi4xMjVMMyAxNC4xMjVIMTJMMTEgMjIuMTI1TDIxIDEwLjEyNUgxMkwxMyAyLjEyNVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0RGVuc2l0eUR3ZWxsRGF0YT8uZGVuc2l0eUR3ZWxsQ2FyZD8uYXZnRHdlbGxUaW1lID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXREZW5zaXR5RHdlbGxEYXRhPy5kZW5zaXR5RHdlbGxDYXJkPy5hdmdEd2VsbFRpbWUgOictLSd9fSBNaW5zXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+QXZnIER3ZWxsIFRpbWU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktMTAgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInctMTAwXCI+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjI1XCIgdmlld0JveD1cIjAgMCAyNCAyNVwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMgMi4xMjVMMyAxNC4xMjVIMTJMMTEgMjIuMTI1TDIxIDEwLjEyNUgxMkwxMyAyLjEyNVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0RGVuc2l0eUR3ZWxsRGF0YT8uZGVuc2l0eUR3ZWxsQ2FyZD8ubWFsZVJhdGUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldERlbnNpdHlEd2VsbERhdGE/LmRlbnNpdHlEd2VsbENhcmQ/Lm1hbGVSYXRlIDonLS0nfX0lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+TWFsZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldERlbnNpdHlEd2VsbERhdGE/LmRlbnNpdHlEd2VsbENhcmQ/LmZlbWFsZVJhdGUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldERlbnNpdHlEd2VsbERhdGE/LmRlbnNpdHlEd2VsbENhcmQ/LmZlbWFsZVJhdGUgOictLSd9fSVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5GZW1hbGU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzZWxlY3RlZFRhYiA9PT0nZm9vdGZhbGwnXCIgY2xhc3M9XCJsZWZ0LWJhclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvcC1oZWFkZXIgdGV4dC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1iYXItY291bnRcIiBbbmdTdHlsZV09XCJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXNpemUnOiAoZ2V0T3ZlcmFsbENhcmREYXRhPy5mb290ZmFsbENhcmQ/LmZvb3RmYWxsQ291bnQudG9Mb2NhbGVTdHJpbmcoKT8ubGVuZ3RoID4gNSA/ICcyNHB4JyA6ICczNnB4JykgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5mb290ZmFsbENhcmQ/LmZvb3RmYWxsQ291bnQgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LmZvb3RmYWxsQ2FyZD8uZm9vdGZhbGxDb3VudC50b0xvY2FsZVN0cmluZygnZW4tSU4nKSA6Jy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtYmFyLXRpdGxlXCI+Rm9vdGZhbGwgQ291bnQ8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidy0xMDBcIj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE3NFwiIGhlaWdodD1cIjJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE5NCAyXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggb3BhY2l0eT1cIjAuNFwiIGQ9XCJNMSAxTDE5MyAxXCIgc3Ryb2tlPVwiIzk5REFGRlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNSBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0yMCAyMVYxOUMyMCAxNy45MzkxIDE5LjU3ODYgMTYuOTIxNyAxOC44Mjg0IDE2LjE3MTZDMTguMDc4MyAxNS40MjE0IDE3LjA2MDkgMTUgMTYgMTVIOEM2LjkzOTEzIDE1IDUuOTIxNzIgMTUuNDIxNCA1LjE3MTU3IDE2LjE3MTZDNC40MjE0MyAxNi45MjE3IDQgMTcuOTM5MSA0IDE5VjIxTTE2IDdDMTYgOS4yMDkxNCAxNC4yMDkxIDExIDEyIDExQzkuNzkwODYgMTEgOCA5LjIwOTE0IDggN0M4IDQuNzkwODYgOS43OTA4NiAzIDEyIDNDMTQuMjA5MSAzIDE2IDQuNzkwODYgMTYgN1pcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjOThBMkIzXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/LmZvb3RmYWxsQ2FyZD8uc2luZ2xlQ291bnQgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8uZm9vdGZhbGxDYXJkPy5zaW5nbGVDb3VudC50b0xvY2FsZVN0cmluZygnZW4tSU4nKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5TaW5nbGU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImhlYWRlckRhdGEuY2xpZW50ICE9PSc0NTInXCIgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMjZcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjYgMjRcIiBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMjZcIiBoZWlnaHQ9XCIyNFwiIGZpbGw9XCIjRENEQ0RDXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB4PVwiLTQ2MC41XCIgeT1cIi0zNDAuNVwiIHdpZHRoPVwiNzgzXCIgaGVpZ2h0PVwiMTk0N1wiIHJ4PVwiNC41XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk3NDdGRlwiIHN0cm9rZS1kYXNoYXJyYXk9XCIxMCA1XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWFzayBpZD1cInBhdGgtMi1pbnNpZGUtMV83MDdfMTMxMDZcIiBmaWxsPVwid2hpdGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNLTE4OSAtODlDLTE4OSAtOTUuNjI3NCAtMTgzLjYyNyAtMTAxIC0xNzcgLTEwMUgyOTVDMzAxLjYyNyAtMTAxIDMwNyAtOTUuNjI3NCAzMDcgLTg5Vjg1QzMwNyA5MS42Mjc0IDMwMS42MjcgOTcgMjk1IDk3SC0xNzdDLTE4My42MjcgOTcgLTE4OSA5MS42Mjc0IC0xODkgODVWLTg5WlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXNrPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNLTE4OSAtODlDLTE4OSAtOTUuNjI3NCAtMTgzLjYyNyAtMTAxIC0xNzcgLTEwMUgyOTVDMzAxLjYyNyAtMTAxIDMwNyAtOTUuNjI3NCAzMDcgLTg5Vjg1QzMwNyA5MS42Mjc0IDMwMS42MjcgOTcgMjk1IDk3SC0xNzdDLTE4My42MjcgOTcgLTE4OSA5MS42Mjc0IC0xODkgODVWLTg5WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0tMTkwIC04OUMtMTkwIC05Ni4xNzk3IC0xODQuMTggLTEwMiAtMTc3IC0xMDJIMjk0QzMwMS4xOCAtMTAyIDMwNyAtOTYuMTc5NyAzMDcgLTg5QzMwNyAtOTUuMDc1MSAzMDEuNjI3IC0xMDAgMjk1IC0xMDBILTE3N0MtMTgzLjA3NSAtMTAwIC0xODggLTk1LjA3NTEgLTE4OCAtODlILTE5MFpNMzA3IDg1QzMwNyA5Mi4xNzk3IDMwMS4xOCA5OCAyOTQgOThILTE3N0MtMTg0LjE4IDk4IC0xOTAgOTIuMTc5NyAtMTkwIDg1SC0xODhDLTE4OCA5MS4wNzUxIC0xODMuMDc1IDk2IC0xNzcgOTZIMjk1QzMwMS42MjcgOTYgMzA3IDkxLjA3NTEgMzA3IDg1Wk0tMTc3IDk4Qy0xODQuMTggOTggLTE5MCA5Mi4xNzk3IC0xOTAgODVWLTg5Qy0xOTAgLTk2LjE3OTcgLTE4NC4xOCAtMTAyIC0xNzcgLTEwMlYtMTAwQy0xODMuMDc1IC0xMDAgLTE4OCAtOTUuMDc1MSAtMTg4IC04OVY4NUMtMTg4IDkxLjA3NTEgLTE4My4wNzUgOTYgLTE3NyA5NlY5OFpNMzA3IC0xMDFWOTdWLTEwMVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiI0QwRDVERFwiIG1hc2s9XCJ1cmwoI3BhdGgtMi1pbnNpZGUtMV83MDdfMTMxMDYpXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWFzayBpZD1cInBhdGgtNi1pbnNpZGUtMl83MDdfMTMxMDZcIiBmaWxsPVwid2hpdGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNy43MTA2NCA3LjM4NDYyQzguMTk1NTIgNy4zODQ2MiA4LjY3NTY1IDcuMjg5MTEgOS4xMjM2MiA3LjEwMzU2QzkuNTcxNTkgNi45MTggOS45Nzg2MyA2LjY0NjAzIDEwLjMyMTUgNi4zMDMxNkMxMC42NjQ0IDUuOTYwMyAxMC45MzYzIDUuNTUzMjYgMTEuMTIxOSA1LjEwNTI5QzExLjMwNzQgNC42NTczMiAxMS40MDI5IDQuMTc3MTkgMTEuNDAyOSAzLjY5MjMxQzExLjQwMjkgMy4yMDc0MyAxMS4zMDc0IDIuNzI3MjkgMTEuMTIxOSAyLjI3OTMyQzEwLjkzNjMgMS44MzEzNSAxMC42NjQ0IDEuNDI0MzEgMTAuMzIxNSAxLjA4MTQ1QzkuOTc4NjMgMC43Mzg1OSA5LjU3MTU5IDAuNDY2NjE2IDkuMTIzNjIgMC4yODEwNkM4LjY3NTY1IDAuMDk1NTA0MyA4LjE5NTUyIC03LjIyNTI5ZS0wOSA3LjcxMDY0IDBDNi43MzEzOCAxLjQ1OTIxZS0wOCA1Ljc5MjIyIDAuMzg5MDEgNS4wOTk3OCAxLjA4MTQ1QzQuNDA3MzQgMS43NzM4OSA0LjAxODMzIDIuNzEzMDUgNC4wMTgzMyAzLjY5MjMxQzQuMDE4MzMgNC42NzE1NyA0LjQwNzM0IDUuNjEwNzIgNS4wOTk3OCA2LjMwMzE2QzUuNzkyMjIgNi45OTU2MSA2LjczMTM4IDcuMzg0NjIgNy43MTA2NCA3LjM4NDYyWk0xOC43ODc2IDcuMzg0NjJDMTkuMjcyNCA3LjM4NDYyIDE5Ljc1MjYgNy4yODkxMSAyMC4yMDA1IDcuMTAzNTZDMjAuNjQ4NSA2LjkxOCAyMS4wNTU2IDYuNjQ2MDMgMjEuMzk4NCA2LjMwMzE2QzIxLjc0MTMgNS45NjAzIDIyLjAxMzMgNS41NTMyNiAyMi4xOTg4IDUuMTA1MjlDMjIuMzg0NCA0LjY1NzMyIDIyLjQ3OTkgNC4xNzcxOSAyMi40Nzk5IDMuNjkyMzFDMjIuNDc5OSAzLjIwNzQzIDIyLjM4NDQgMi43MjcyOSAyMi4xOTg4IDIuMjc5MzJDMjIuMDEzMyAxLjgzMTM1IDIxLjc0MTMgMS40MjQzMSAyMS4zOTg0IDEuMDgxNDVDMjEuMDU1NiAwLjczODU5IDIwLjY0ODUgMC40NjY2MTYgMjAuMjAwNSAwLjI4MTA2QzE5Ljc1MjYgMC4wOTU1MDQzIDE5LjI3MjQgLTcuMjI1MjllLTA5IDE4Ljc4NzYgMEMxNy44MDgzIDEuNDU5MjFlLTA4IDE2Ljg2OTEgMC4zODkwMSAxNi4xNzY3IDEuMDgxNDVDMTUuNDg0MyAxLjc3Mzg5IDE1LjA5NTMgMi43MTMwNSAxNS4wOTUzIDMuNjkyMzFDMTUuMDk1MyA0LjY3MTU3IDE1LjQ4NDMgNS42MTA3MiAxNi4xNzY3IDYuMzAzMTZDMTYuODY5MSA2Ljk5NTYxIDE3LjgwODMgNy4zODQ2MiAxOC43ODc2IDcuMzg0NjJaTTAuOTQxNDA2IDEwLjczNkMwLjk0MTQwNiAxMC40NTc1IDAuOTk2MjU4IDEwLjE4MTggMS4xMDI4MyA5LjkyNDQ4QzEuMjA5NCA5LjY2NzE5IDEuMzY1NiA5LjQzMzQyIDEuNTYyNTIgOS4yMzY1QzEuNzU5NDQgOS4wMzk1OCAxLjk5MzIxIDguODgzMzggMi4yNTA1IDguNzc2ODFDMi41MDc3OCA4LjY3MDI0IDIuNzgzNTQgOC42MTUzOSAzLjA2MjAyIDguNjE1MzlIOC45ODQ0OEM4LjU1MTY5IDkuMzYzNDUgOC4zMjQ1MiAxMC4yMTI3IDguMzI2MDIgMTEuMDc2OUM4LjMyNTE5IDExLjc3NTUgOC40NzM0MSAxMi40NjYyIDguNzYwNzkgMTMuMTAyOUM5LjA0ODE2IDEzLjczOTYgOS40NjgwNyAxNC4zMDc3IDkuOTkyNDggMTQuNzY5Mkg4LjYwMDQ4QzguMDE0MTggMTQuNzY4NyA3LjQzODAzIDE0LjkyMjIgNi45Mjk2OSAxNS4yMTQ0QzYuNDIxMzQgMTUuNTA2NSA1Ljk5ODY0IDE1LjkyNyA1LjcwMzg3IDE2LjQzMzhDMy43MjExIDE2LjA0NDkgMi41MTYxOCAxNS4wNzgyIDEuODE0NjQgMTMuOTkyQzAuOTQxNDA2IDEyLjY0IDAuOTQxNDA2IDExLjI0MzEgMC45NDE0MDYgMTEuMDAxMlYxMC43MzZaTTE3Ljg5NzcgMTQuNzY5MkMxOC40ODQgMTQuNzY4NyAxOS4wNjAyIDE0LjkyMjIgMTkuNTY4NSAxNS4yMTQ0QzIwLjA3NjkgMTUuNTA2NSAyMC40OTk2IDE1LjkyNyAyMC43OTQzIDE2LjQzMzhDMjIuNzc3MSAxNi4wNDQ5IDIzLjk4MiAxNS4wNzgyIDI0LjY4MzYgMTMuOTkyQzI1LjU1NjggMTIuNjQgMjUuNTU2OCAxMS4yNDMxIDI1LjU1NjggMTEuMDAxMlYxMC43MzY2QzI1LjU1NjkgMTAuNDU4MSAyNS41MDIxIDEwLjE4MjMgMjUuMzk1NSA5LjkyNDlDMjUuMjg5IDkuNjY3NTUgMjUuMTMyOCA5LjQzMzcgMjQuOTM1OSA5LjIzNjcyQzI0LjczOSA5LjAzOTczIDI0LjUwNTIgOC44ODM0OCAyNC4yNDc4IDguNzc2ODdDMjMuOTkwNSA4LjY3MDI2IDIzLjcxNDcgOC42MTUzOSAyMy40MzYyIDguNjE1MzlIMTcuNTEzN0MxNy45NDY1IDkuMzYzNDUgMTguMTczNyAxMC4yMTI3IDE4LjE3MjIgMTEuMDc2OUMxOC4xNzMgMTEuNzc1NSAxOC4wMjQ4IDEyLjQ2NjIgMTcuNzM3NCAxMy4xMDI5QzE3LjQ1IDEzLjczOTYgMTcuMDMwMSAxNC4zMDc3IDE2LjUwNTcgMTQuNzY5MkgxNy44OTc3Wk0xNi45NDE0IDExLjA3NjlDMTYuOTQxNCAxMi4wNTYyIDE2LjU1MjQgMTIuOTk1MyAxNS44NiAxMy42ODc4QzE1LjE2NzUgMTQuMzgwMiAxNC4yMjg0IDE0Ljc2OTIgMTMuMjQ5MSAxNC43NjkyQzEyLjI2OTggMTQuNzY5MiAxMS4zMzA3IDE0LjM4MDIgMTAuNjM4MiAxMy42ODc4QzkuOTQ1OCAxMi45OTUzIDkuNTU2NzkgMTIuMDU2MiA5LjU1Njc5IDExLjA3NjlDOS41NTY3OSAxMC4wOTc3IDkuOTQ1OCA5LjE1ODUxIDEwLjYzODIgOC40NjYwN0MxMS4zMzA3IDcuNzczNjMgMTIuMjY5OCA3LjM4NDYyIDEzLjI0OTEgNy4zODQ2MkMxNC4yMjg0IDcuMzg0NjIgMTUuMTY3NSA3Ljc3MzYzIDE1Ljg2IDguNDY2MDdDMTYuNTUyNCA5LjE1ODUxIDE2Ljk0MTQgMTAuMDk3NyAxNi45NDE0IDExLjA3NjlaTTYuNDc5ODcgMTguMTIwNkM2LjQ3OTg3IDE3LjU1ODIgNi43MDMyOSAxNy4wMTg4IDcuMTAwOTggMTYuNjIxMUM3LjQ5ODY3IDE2LjIyMzQgOC4wMzgwNiAxNiA4LjYwMDQ4IDE2SDE3Ljg5NzdDMTguNDYwMSAxNiAxOC45OTk1IDE2LjIyMzQgMTkuMzk3MiAxNi42MjExQzE5Ljc5NDkgMTcuMDE4OCAyMC4wMTgzIDE3LjU1ODIgMjAuMDE4MyAxOC4xMjA2VjE4LjM4NThDMjAuMDE4MyAxOC42MjgzIDIwLjAxODMgMjAuMDI0NiAxOS4xNDUxIDIxLjM3NjZDMTguMjMyNSAyMi43ODk1IDE2LjQ2OTQgMjQgMTMuMjQ5MSAyNEMxMC4wMjg4IDI0IDguMjY1NzEgMjIuNzg5NSA3LjM1MzEgMjEuMzc2NkM2LjQ3OTg3IDIwLjAyNDYgNi40Nzk4NyAxOC42Mjc3IDYuNDc5ODcgMTguMzg1OFYxOC4xMjA2WlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXNrPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNy43MTA2NCA3LjM4NDYyQzguMTk1NTIgNy4zODQ2MiA4LjY3NTY1IDcuMjg5MTEgOS4xMjM2MiA3LjEwMzU2QzkuNTcxNTkgNi45MTggOS45Nzg2MyA2LjY0NjAzIDEwLjMyMTUgNi4zMDMxNkMxMC42NjQ0IDUuOTYwMyAxMC45MzYzIDUuNTUzMjYgMTEuMTIxOSA1LjEwNTI5QzExLjMwNzQgNC42NTczMiAxMS40MDI5IDQuMTc3MTkgMTEuNDAyOSAzLjY5MjMxQzExLjQwMjkgMy4yMDc0MyAxMS4zMDc0IDIuNzI3MjkgMTEuMTIxOSAyLjI3OTMyQzEwLjkzNjMgMS44MzEzNSAxMC42NjQ0IDEuNDI0MzEgMTAuMzIxNSAxLjA4MTQ1QzkuOTc4NjMgMC43Mzg1OSA5LjU3MTU5IDAuNDY2NjE2IDkuMTIzNjIgMC4yODEwNkM4LjY3NTY1IDAuMDk1NTA0MyA4LjE5NTUyIC03LjIyNTI5ZS0wOSA3LjcxMDY0IDBDNi43MzEzOCAxLjQ1OTIxZS0wOCA1Ljc5MjIyIDAuMzg5MDEgNS4wOTk3OCAxLjA4MTQ1QzQuNDA3MzQgMS43NzM4OSA0LjAxODMzIDIuNzEzMDUgNC4wMTgzMyAzLjY5MjMxQzQuMDE4MzMgNC42NzE1NyA0LjQwNzM0IDUuNjEwNzIgNS4wOTk3OCA2LjMwMzE2QzUuNzkyMjIgNi45OTU2MSA2LjczMTM4IDcuMzg0NjIgNy43MTA2NCA3LjM4NDYyWk0xOC43ODc2IDcuMzg0NjJDMTkuMjcyNCA3LjM4NDYyIDE5Ljc1MjYgNy4yODkxMSAyMC4yMDA1IDcuMTAzNTZDMjAuNjQ4NSA2LjkxOCAyMS4wNTU2IDYuNjQ2MDMgMjEuMzk4NCA2LjMwMzE2QzIxLjc0MTMgNS45NjAzIDIyLjAxMzMgNS41NTMyNiAyMi4xOTg4IDUuMTA1MjlDMjIuMzg0NCA0LjY1NzMyIDIyLjQ3OTkgNC4xNzcxOSAyMi40Nzk5IDMuNjkyMzFDMjIuNDc5OSAzLjIwNzQzIDIyLjM4NDQgMi43MjcyOSAyMi4xOTg4IDIuMjc5MzJDMjIuMDEzMyAxLjgzMTM1IDIxLjc0MTMgMS40MjQzMSAyMS4zOTg0IDEuMDgxNDVDMjEuMDU1NiAwLjczODU5IDIwLjY0ODUgMC40NjY2MTYgMjAuMjAwNSAwLjI4MTA2QzE5Ljc1MjYgMC4wOTU1MDQzIDE5LjI3MjQgLTcuMjI1MjllLTA5IDE4Ljc4NzYgMEMxNy44MDgzIDEuNDU5MjFlLTA4IDE2Ljg2OTEgMC4zODkwMSAxNi4xNzY3IDEuMDgxNDVDMTUuNDg0MyAxLjc3Mzg5IDE1LjA5NTMgMi43MTMwNSAxNS4wOTUzIDMuNjkyMzFDMTUuMDk1MyA0LjY3MTU3IDE1LjQ4NDMgNS42MTA3MiAxNi4xNzY3IDYuMzAzMTZDMTYuODY5MSA2Ljk5NTYxIDE3LjgwODMgNy4zODQ2MiAxOC43ODc2IDcuMzg0NjJaTTAuOTQxNDA2IDEwLjczNkMwLjk0MTQwNiAxMC40NTc1IDAuOTk2MjU4IDEwLjE4MTggMS4xMDI4MyA5LjkyNDQ4QzEuMjA5NCA5LjY2NzE5IDEuMzY1NiA5LjQzMzQyIDEuNTYyNTIgOS4yMzY1QzEuNzU5NDQgOS4wMzk1OCAxLjk5MzIxIDguODgzMzggMi4yNTA1IDguNzc2ODFDMi41MDc3OCA4LjY3MDI0IDIuNzgzNTQgOC42MTUzOSAzLjA2MjAyIDguNjE1MzlIOC45ODQ0OEM4LjU1MTY5IDkuMzYzNDUgOC4zMjQ1MiAxMC4yMTI3IDguMzI2MDIgMTEuMDc2OUM4LjMyNTE5IDExLjc3NTUgOC40NzM0MSAxMi40NjYyIDguNzYwNzkgMTMuMTAyOUM5LjA0ODE2IDEzLjczOTYgOS40NjgwNyAxNC4zMDc3IDkuOTkyNDggMTQuNzY5Mkg4LjYwMDQ4QzguMDE0MTggMTQuNzY4NyA3LjQzODAzIDE0LjkyMjIgNi45Mjk2OSAxNS4yMTQ0QzYuNDIxMzQgMTUuNTA2NSA1Ljk5ODY0IDE1LjkyNyA1LjcwMzg3IDE2LjQzMzhDMy43MjExIDE2LjA0NDkgMi41MTYxOCAxNS4wNzgyIDEuODE0NjQgMTMuOTkyQzAuOTQxNDA2IDEyLjY0IDAuOTQxNDA2IDExLjI0MzEgMC45NDE0MDYgMTEuMDAxMlYxMC43MzZaTTE3Ljg5NzcgMTQuNzY5MkMxOC40ODQgMTQuNzY4NyAxOS4wNjAyIDE0LjkyMjIgMTkuNTY4NSAxNS4yMTQ0QzIwLjA3NjkgMTUuNTA2NSAyMC40OTk2IDE1LjkyNyAyMC43OTQzIDE2LjQzMzhDMjIuNzc3MSAxNi4wNDQ5IDIzLjk4MiAxNS4wNzgyIDI0LjY4MzYgMTMuOTkyQzI1LjU1NjggMTIuNjQgMjUuNTU2OCAxMS4yNDMxIDI1LjU1NjggMTEuMDAxMlYxMC43MzY2QzI1LjU1NjkgMTAuNDU4MSAyNS41MDIxIDEwLjE4MjMgMjUuMzk1NSA5LjkyNDlDMjUuMjg5IDkuNjY3NTUgMjUuMTMyOCA5LjQzMzcgMjQuOTM1OSA5LjIzNjcyQzI0LjczOSA5LjAzOTczIDI0LjUwNTIgOC44ODM0OCAyNC4yNDc4IDguNzc2ODdDMjMuOTkwNSA4LjY3MDI2IDIzLjcxNDcgOC42MTUzOSAyMy40MzYyIDguNjE1MzlIMTcuNTEzN0MxNy45NDY1IDkuMzYzNDUgMTguMTczNyAxMC4yMTI3IDE4LjE3MjIgMTEuMDc2OUMxOC4xNzMgMTEuNzc1NSAxOC4wMjQ4IDEyLjQ2NjIgMTcuNzM3NCAxMy4xMDI5QzE3LjQ1IDEzLjczOTYgMTcuMDMwMSAxNC4zMDc3IDE2LjUwNTcgMTQuNzY5MkgxNy44OTc3Wk0xNi45NDE0IDExLjA3NjlDMTYuOTQxNCAxMi4wNTYyIDE2LjU1MjQgMTIuOTk1MyAxNS44NiAxMy42ODc4QzE1LjE2NzUgMTQuMzgwMiAxNC4yMjg0IDE0Ljc2OTIgMTMuMjQ5MSAxNC43NjkyQzEyLjI2OTggMTQuNzY5MiAxMS4zMzA3IDE0LjM4MDIgMTAuNjM4MiAxMy42ODc4QzkuOTQ1OCAxMi45OTUzIDkuNTU2NzkgMTIuMDU2MiA5LjU1Njc5IDExLjA3NjlDOS41NTY3OSAxMC4wOTc3IDkuOTQ1OCA5LjE1ODUxIDEwLjYzODIgOC40NjYwN0MxMS4zMzA3IDcuNzczNjMgMTIuMjY5OCA3LjM4NDYyIDEzLjI0OTEgNy4zODQ2MkMxNC4yMjg0IDcuMzg0NjIgMTUuMTY3NSA3Ljc3MzYzIDE1Ljg2IDguNDY2MDdDMTYuNTUyNCA5LjE1ODUxIDE2Ljk0MTQgMTAuMDk3NyAxNi45NDE0IDExLjA3NjlaTTYuNDc5ODcgMTguMTIwNkM2LjQ3OTg3IDE3LjU1ODIgNi43MDMyOSAxNy4wMTg4IDcuMTAwOTggMTYuNjIxMUM3LjQ5ODY3IDE2LjIyMzQgOC4wMzgwNiAxNiA4LjYwMDQ4IDE2SDE3Ljg5NzdDMTguNDYwMSAxNiAxOC45OTk1IDE2LjIyMzQgMTkuMzk3MiAxNi42MjExQzE5Ljc5NDkgMTcuMDE4OCAyMC4wMTgzIDE3LjU1ODIgMjAuMDE4MyAxOC4xMjA2VjE4LjM4NThDMjAuMDE4MyAxOC42MjgzIDIwLjAxODMgMjAuMDI0NiAxOS4xNDUxIDIxLjM3NjZDMTguMjMyNSAyMi43ODk1IDE2LjQ2OTQgMjQgMTMuMjQ5MSAyNEMxMC4wMjg4IDI0IDguMjY1NzEgMjIuNzg5NSA3LjM1MzEgMjEuMzc2NkM2LjQ3OTg3IDIwLjAyNDYgNi40Nzk4NyAxOC42Mjc3IDYuNDc5ODcgMTguMzg1OFYxOC4xMjA2WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM5OEEyQjNcIiBzdHJva2Utd2lkdGg9XCIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFzaz1cInVybCgjcGF0aC02LWluc2lkZS0yXzcwN18xMzEwNilcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5mb290ZmFsbENhcmQ/Lmdyb3VwQ291bnQgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8uZm9vdGZhbGxDYXJkPy5ncm91cENvdW50LnRvTG9jYWxlU3RyaW5nKCdlbi1JTicpIDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5Hcm91cCBGb290ZmFsbDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBteS01IG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjI2XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI2IDI0XCIgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjI2XCIgaGVpZ2h0PVwiMjRcIiBmaWxsPVwiI0RDRENEQ1wiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeD1cIi00NjAuNVwiIHk9XCItMzQwLjVcIiB3aWR0aD1cIjc4M1wiIGhlaWdodD1cIjE5NDdcIiByeD1cIjQuNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM5NzQ3RkZcIiBzdHJva2UtZGFzaGFycmF5PVwiMTAgNVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hc2sgaWQ9XCJwYXRoLTItaW5zaWRlLTFfNzA3XzEzMTA2XCIgZmlsbD1cIndoaXRlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTS0xODkgLTg5Qy0xODkgLTk1LjYyNzQgLTE4My42MjcgLTEwMSAtMTc3IC0xMDFIMjk1QzMwMS42MjcgLTEwMSAzMDcgLTk1LjYyNzQgMzA3IC04OVY4NUMzMDcgOTEuNjI3NCAzMDEuNjI3IDk3IDI5NSA5N0gtMTc3Qy0xODMuNjI3IDk3IC0xODkgOTEuNjI3NCAtMTg5IDg1Vi04OVpcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWFzaz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTS0xODkgLTg5Qy0xODkgLTk1LjYyNzQgLTE4My42MjcgLTEwMSAtMTc3IC0xMDFIMjk1QzMwMS42MjcgLTEwMSAzMDcgLTk1LjYyNzQgMzA3IC04OVY4NUMzMDcgOTEuNjI3NCAzMDEuNjI3IDk3IDI5NSA5N0gtMTc3Qy0xODMuNjI3IDk3IC0xODkgOTEuNjI3NCAtMTg5IDg1Vi04OVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNLTE5MCAtODlDLTE5MCAtOTYuMTc5NyAtMTg0LjE4IC0xMDIgLTE3NyAtMTAySDI5NEMzMDEuMTggLTEwMiAzMDcgLTk2LjE3OTcgMzA3IC04OUMzMDcgLTk1LjA3NTEgMzAxLjYyNyAtMTAwIDI5NSAtMTAwSC0xNzdDLTE4My4wNzUgLTEwMCAtMTg4IC05NS4wNzUxIC0xODggLTg5SC0xOTBaTTMwNyA4NUMzMDcgOTIuMTc5NyAzMDEuMTggOTggMjk0IDk4SC0xNzdDLTE4NC4xOCA5OCAtMTkwIDkyLjE3OTcgLTE5MCA4NUgtMTg4Qy0xODggOTEuMDc1MSAtMTgzLjA3NSA5NiAtMTc3IDk2SDI5NUMzMDEuNjI3IDk2IDMwNyA5MS4wNzUxIDMwNyA4NVpNLTE3NyA5OEMtMTg0LjE4IDk4IC0xOTAgOTIuMTc5NyAtMTkwIDg1Vi04OUMtMTkwIC05Ni4xNzk3IC0xODQuMTggLTEwMiAtMTc3IC0xMDJWLTEwMEMtMTgzLjA3NSAtMTAwIC0xODggLTk1LjA3NTEgLTE4OCAtODlWODVDLTE4OCA5MS4wNzUxIC0xODMuMDc1IDk2IC0xNzcgOTZWOThaTTMwNyAtMTAxVjk3Vi0xMDFaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiNEMEQ1RERcIiBtYXNrPVwidXJsKCNwYXRoLTItaW5zaWRlLTFfNzA3XzEzMTA2KVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hc2sgaWQ9XCJwYXRoLTYtaW5zaWRlLTJfNzA3XzEzMTA2XCIgZmlsbD1cIndoaXRlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTcuNzEwNjQgNy4zODQ2MkM4LjE5NTUyIDcuMzg0NjIgOC42NzU2NSA3LjI4OTExIDkuMTIzNjIgNy4xMDM1NkM5LjU3MTU5IDYuOTE4IDkuOTc4NjMgNi42NDYwMyAxMC4zMjE1IDYuMzAzMTZDMTAuNjY0NCA1Ljk2MDMgMTAuOTM2MyA1LjU1MzI2IDExLjEyMTkgNS4xMDUyOUMxMS4zMDc0IDQuNjU3MzIgMTEuNDAyOSA0LjE3NzE5IDExLjQwMjkgMy42OTIzMUMxMS40MDI5IDMuMjA3NDMgMTEuMzA3NCAyLjcyNzI5IDExLjEyMTkgMi4yNzkzMkMxMC45MzYzIDEuODMxMzUgMTAuNjY0NCAxLjQyNDMxIDEwLjMyMTUgMS4wODE0NUM5Ljk3ODYzIDAuNzM4NTkgOS41NzE1OSAwLjQ2NjYxNiA5LjEyMzYyIDAuMjgxMDZDOC42NzU2NSAwLjA5NTUwNDMgOC4xOTU1MiAtNy4yMjUyOWUtMDkgNy43MTA2NCAwQzYuNzMxMzggMS40NTkyMWUtMDggNS43OTIyMiAwLjM4OTAxIDUuMDk5NzggMS4wODE0NUM0LjQwNzM0IDEuNzczODkgNC4wMTgzMyAyLjcxMzA1IDQuMDE4MzMgMy42OTIzMUM0LjAxODMzIDQuNjcxNTcgNC40MDczNCA1LjYxMDcyIDUuMDk5NzggNi4zMDMxNkM1Ljc5MjIyIDYuOTk1NjEgNi43MzEzOCA3LjM4NDYyIDcuNzEwNjQgNy4zODQ2MlpNMTguNzg3NiA3LjM4NDYyQzE5LjI3MjQgNy4zODQ2MiAxOS43NTI2IDcuMjg5MTEgMjAuMjAwNSA3LjEwMzU2QzIwLjY0ODUgNi45MTggMjEuMDU1NiA2LjY0NjAzIDIxLjM5ODQgNi4zMDMxNkMyMS43NDEzIDUuOTYwMyAyMi4wMTMzIDUuNTUzMjYgMjIuMTk4OCA1LjEwNTI5QzIyLjM4NDQgNC42NTczMiAyMi40Nzk5IDQuMTc3MTkgMjIuNDc5OSAzLjY5MjMxQzIyLjQ3OTkgMy4yMDc0MyAyMi4zODQ0IDIuNzI3MjkgMjIuMTk4OCAyLjI3OTMyQzIyLjAxMzMgMS44MzEzNSAyMS43NDEzIDEuNDI0MzEgMjEuMzk4NCAxLjA4MTQ1QzIxLjA1NTYgMC43Mzg1OSAyMC42NDg1IDAuNDY2NjE2IDIwLjIwMDUgMC4yODEwNkMxOS43NTI2IDAuMDk1NTA0MyAxOS4yNzI0IC03LjIyNTI5ZS0wOSAxOC43ODc2IDBDMTcuODA4MyAxLjQ1OTIxZS0wOCAxNi44NjkxIDAuMzg5MDEgMTYuMTc2NyAxLjA4MTQ1QzE1LjQ4NDMgMS43NzM4OSAxNS4wOTUzIDIuNzEzMDUgMTUuMDk1MyAzLjY5MjMxQzE1LjA5NTMgNC42NzE1NyAxNS40ODQzIDUuNjEwNzIgMTYuMTc2NyA2LjMwMzE2QzE2Ljg2OTEgNi45OTU2MSAxNy44MDgzIDcuMzg0NjIgMTguNzg3NiA3LjM4NDYyWk0wLjk0MTQwNiAxMC43MzZDMC45NDE0MDYgMTAuNDU3NSAwLjk5NjI1OCAxMC4xODE4IDEuMTAyODMgOS45MjQ0OEMxLjIwOTQgOS42NjcxOSAxLjM2NTYgOS40MzM0MiAxLjU2MjUyIDkuMjM2NUMxLjc1OTQ0IDkuMDM5NTggMS45OTMyMSA4Ljg4MzM4IDIuMjUwNSA4Ljc3NjgxQzIuNTA3NzggOC42NzAyNCAyLjc4MzU0IDguNjE1MzkgMy4wNjIwMiA4LjYxNTM5SDguOTg0NDhDOC41NTE2OSA5LjM2MzQ1IDguMzI0NTIgMTAuMjEyNyA4LjMyNjAyIDExLjA3NjlDOC4zMjUxOSAxMS43NzU1IDguNDczNDEgMTIuNDY2MiA4Ljc2MDc5IDEzLjEwMjlDOS4wNDgxNiAxMy43Mzk2IDkuNDY4MDcgMTQuMzA3NyA5Ljk5MjQ4IDE0Ljc2OTJIOC42MDA0OEM4LjAxNDE4IDE0Ljc2ODcgNy40MzgwMyAxNC45MjIyIDYuOTI5NjkgMTUuMjE0NEM2LjQyMTM0IDE1LjUwNjUgNS45OTg2NCAxNS45MjcgNS43MDM4NyAxNi40MzM4QzMuNzIxMSAxNi4wNDQ5IDIuNTE2MTggMTUuMDc4MiAxLjgxNDY0IDEzLjk5MkMwLjk0MTQwNiAxMi42NCAwLjk0MTQwNiAxMS4yNDMxIDAuOTQxNDA2IDExLjAwMTJWMTAuNzM2Wk0xNy44OTc3IDE0Ljc2OTJDMTguNDg0IDE0Ljc2ODcgMTkuMDYwMiAxNC45MjIyIDE5LjU2ODUgMTUuMjE0NEMyMC4wNzY5IDE1LjUwNjUgMjAuNDk5NiAxNS45MjcgMjAuNzk0MyAxNi40MzM4QzIyLjc3NzEgMTYuMDQ0OSAyMy45ODIgMTUuMDc4MiAyNC42ODM2IDEzLjk5MkMyNS41NTY4IDEyLjY0IDI1LjU1NjggMTEuMjQzMSAyNS41NTY4IDExLjAwMTJWMTAuNzM2NkMyNS41NTY5IDEwLjQ1ODEgMjUuNTAyMSAxMC4xODIzIDI1LjM5NTUgOS45MjQ5QzI1LjI4OSA5LjY2NzU1IDI1LjEzMjggOS40MzM3IDI0LjkzNTkgOS4yMzY3MkMyNC43MzkgOS4wMzk3MyAyNC41MDUyIDguODgzNDggMjQuMjQ3OCA4Ljc3Njg3QzIzLjk5MDUgOC42NzAyNiAyMy43MTQ3IDguNjE1MzkgMjMuNDM2MiA4LjYxNTM5SDE3LjUxMzdDMTcuOTQ2NSA5LjM2MzQ1IDE4LjE3MzcgMTAuMjEyNyAxOC4xNzIyIDExLjA3NjlDMTguMTczIDExLjc3NTUgMTguMDI0OCAxMi40NjYyIDE3LjczNzQgMTMuMTAyOUMxNy40NSAxMy43Mzk2IDE3LjAzMDEgMTQuMzA3NyAxNi41MDU3IDE0Ljc2OTJIMTcuODk3N1pNMTYuOTQxNCAxMS4wNzY5QzE2Ljk0MTQgMTIuMDU2MiAxNi41NTI0IDEyLjk5NTMgMTUuODYgMTMuNjg3OEMxNS4xNjc1IDE0LjM4MDIgMTQuMjI4NCAxNC43NjkyIDEzLjI0OTEgMTQuNzY5MkMxMi4yNjk4IDE0Ljc2OTIgMTEuMzMwNyAxNC4zODAyIDEwLjYzODIgMTMuNjg3OEM5Ljk0NTggMTIuOTk1MyA5LjU1Njc5IDEyLjA1NjIgOS41NTY3OSAxMS4wNzY5QzkuNTU2NzkgMTAuMDk3NyA5Ljk0NTggOS4xNTg1MSAxMC42MzgyIDguNDY2MDdDMTEuMzMwNyA3Ljc3MzYzIDEyLjI2OTggNy4zODQ2MiAxMy4yNDkxIDcuMzg0NjJDMTQuMjI4NCA3LjM4NDYyIDE1LjE2NzUgNy43NzM2MyAxNS44NiA4LjQ2NjA3QzE2LjU1MjQgOS4xNTg1MSAxNi45NDE0IDEwLjA5NzcgMTYuOTQxNCAxMS4wNzY5Wk02LjQ3OTg3IDE4LjEyMDZDNi40Nzk4NyAxNy41NTgyIDYuNzAzMjkgMTcuMDE4OCA3LjEwMDk4IDE2LjYyMTFDNy40OTg2NyAxNi4yMjM0IDguMDM4MDYgMTYgOC42MDA0OCAxNkgxNy44OTc3QzE4LjQ2MDEgMTYgMTguOTk5NSAxNi4yMjM0IDE5LjM5NzIgMTYuNjIxMUMxOS43OTQ5IDE3LjAxODggMjAuMDE4MyAxNy41NTgyIDIwLjAxODMgMTguMTIwNlYxOC4zODU4QzIwLjAxODMgMTguNjI4MyAyMC4wMTgzIDIwLjAyNDYgMTkuMTQ1MSAyMS4zNzY2QzE4LjIzMjUgMjIuNzg5NSAxNi40Njk0IDI0IDEzLjI0OTEgMjRDMTAuMDI4OCAyNCA4LjI2NTcxIDIyLjc4OTUgNy4zNTMxIDIxLjM3NjZDNi40Nzk4NyAyMC4wMjQ2IDYuNDc5ODcgMTguNjI3NyA2LjQ3OTg3IDE4LjM4NThWMTguMTIwNlpcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWFzaz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTcuNzEwNjQgNy4zODQ2MkM4LjE5NTUyIDcuMzg0NjIgOC42NzU2NSA3LjI4OTExIDkuMTIzNjIgNy4xMDM1NkM5LjU3MTU5IDYuOTE4IDkuOTc4NjMgNi42NDYwMyAxMC4zMjE1IDYuMzAzMTZDMTAuNjY0NCA1Ljk2MDMgMTAuOTM2MyA1LjU1MzI2IDExLjEyMTkgNS4xMDUyOUMxMS4zMDc0IDQuNjU3MzIgMTEuNDAyOSA0LjE3NzE5IDExLjQwMjkgMy42OTIzMUMxMS40MDI5IDMuMjA3NDMgMTEuMzA3NCAyLjcyNzI5IDExLjEyMTkgMi4yNzkzMkMxMC45MzYzIDEuODMxMzUgMTAuNjY0NCAxLjQyNDMxIDEwLjMyMTUgMS4wODE0NUM5Ljk3ODYzIDAuNzM4NTkgOS41NzE1OSAwLjQ2NjYxNiA5LjEyMzYyIDAuMjgxMDZDOC42NzU2NSAwLjA5NTUwNDMgOC4xOTU1MiAtNy4yMjUyOWUtMDkgNy43MTA2NCAwQzYuNzMxMzggMS40NTkyMWUtMDggNS43OTIyMiAwLjM4OTAxIDUuMDk5NzggMS4wODE0NUM0LjQwNzM0IDEuNzczODkgNC4wMTgzMyAyLjcxMzA1IDQuMDE4MzMgMy42OTIzMUM0LjAxODMzIDQuNjcxNTcgNC40MDczNCA1LjYxMDcyIDUuMDk5NzggNi4zMDMxNkM1Ljc5MjIyIDYuOTk1NjEgNi43MzEzOCA3LjM4NDYyIDcuNzEwNjQgNy4zODQ2MlpNMTguNzg3NiA3LjM4NDYyQzE5LjI3MjQgNy4zODQ2MiAxOS43NTI2IDcuMjg5MTEgMjAuMjAwNSA3LjEwMzU2QzIwLjY0ODUgNi45MTggMjEuMDU1NiA2LjY0NjAzIDIxLjM5ODQgNi4zMDMxNkMyMS43NDEzIDUuOTYwMyAyMi4wMTMzIDUuNTUzMjYgMjIuMTk4OCA1LjEwNTI5QzIyLjM4NDQgNC42NTczMiAyMi40Nzk5IDQuMTc3MTkgMjIuNDc5OSAzLjY5MjMxQzIyLjQ3OTkgMy4yMDc0MyAyMi4zODQ0IDIuNzI3MjkgMjIuMTk4OCAyLjI3OTMyQzIyLjAxMzMgMS44MzEzNSAyMS43NDEzIDEuNDI0MzEgMjEuMzk4NCAxLjA4MTQ1QzIxLjA1NTYgMC43Mzg1OSAyMC42NDg1IDAuNDY2NjE2IDIwLjIwMDUgMC4yODEwNkMxOS43NTI2IDAuMDk1NTA0MyAxOS4yNzI0IC03LjIyNTI5ZS0wOSAxOC43ODc2IDBDMTcuODA4MyAxLjQ1OTIxZS0wOCAxNi44NjkxIDAuMzg5MDEgMTYuMTc2NyAxLjA4MTQ1QzE1LjQ4NDMgMS43NzM4OSAxNS4wOTUzIDIuNzEzMDUgMTUuMDk1MyAzLjY5MjMxQzE1LjA5NTMgNC42NzE1NyAxNS40ODQzIDUuNjEwNzIgMTYuMTc2NyA2LjMwMzE2QzE2Ljg2OTEgNi45OTU2MSAxNy44MDgzIDcuMzg0NjIgMTguNzg3NiA3LjM4NDYyWk0wLjk0MTQwNiAxMC43MzZDMC45NDE0MDYgMTAuNDU3NSAwLjk5NjI1OCAxMC4xODE4IDEuMTAyODMgOS45MjQ0OEMxLjIwOTQgOS42NjcxOSAxLjM2NTYgOS40MzM0MiAxLjU2MjUyIDkuMjM2NUMxLjc1OTQ0IDkuMDM5NTggMS45OTMyMSA4Ljg4MzM4IDIuMjUwNSA4Ljc3NjgxQzIuNTA3NzggOC42NzAyNCAyLjc4MzU0IDguNjE1MzkgMy4wNjIwMiA4LjYxNTM5SDguOTg0NDhDOC41NTE2OSA5LjM2MzQ1IDguMzI0NTIgMTAuMjEyNyA4LjMyNjAyIDExLjA3NjlDOC4zMjUxOSAxMS43NzU1IDguNDczNDEgMTIuNDY2MiA4Ljc2MDc5IDEzLjEwMjlDOS4wNDgxNiAxMy43Mzk2IDkuNDY4MDcgMTQuMzA3NyA5Ljk5MjQ4IDE0Ljc2OTJIOC42MDA0OEM4LjAxNDE4IDE0Ljc2ODcgNy40MzgwMyAxNC45MjIyIDYuOTI5NjkgMTUuMjE0NEM2LjQyMTM0IDE1LjUwNjUgNS45OTg2NCAxNS45MjcgNS43MDM4NyAxNi40MzM4QzMuNzIxMSAxNi4wNDQ5IDIuNTE2MTggMTUuMDc4MiAxLjgxNDY0IDEzLjk5MkMwLjk0MTQwNiAxMi42NCAwLjk0MTQwNiAxMS4yNDMxIDAuOTQxNDA2IDExLjAwMTJWMTAuNzM2Wk0xNy44OTc3IDE0Ljc2OTJDMTguNDg0IDE0Ljc2ODcgMTkuMDYwMiAxNC45MjIyIDE5LjU2ODUgMTUuMjE0NEMyMC4wNzY5IDE1LjUwNjUgMjAuNDk5NiAxNS45MjcgMjAuNzk0MyAxNi40MzM4QzIyLjc3NzEgMTYuMDQ0OSAyMy45ODIgMTUuMDc4MiAyNC42ODM2IDEzLjk5MkMyNS41NTY4IDEyLjY0IDI1LjU1NjggMTEuMjQzMSAyNS41NTY4IDExLjAwMTJWMTAuNzM2NkMyNS41NTY5IDEwLjQ1ODEgMjUuNTAyMSAxMC4xODIzIDI1LjM5NTUgOS45MjQ5QzI1LjI4OSA5LjY2NzU1IDI1LjEzMjggOS40MzM3IDI0LjkzNTkgOS4yMzY3MkMyNC43MzkgOS4wMzk3MyAyNC41MDUyIDguODgzNDggMjQuMjQ3OCA4Ljc3Njg3QzIzLjk5MDUgOC42NzAyNiAyMy43MTQ3IDguNjE1MzkgMjMuNDM2MiA4LjYxNTM5SDE3LjUxMzdDMTcuOTQ2NSA5LjM2MzQ1IDE4LjE3MzcgMTAuMjEyNyAxOC4xNzIyIDExLjA3NjlDMTguMTczIDExLjc3NTUgMTguMDI0OCAxMi40NjYyIDE3LjczNzQgMTMuMTAyOUMxNy40NSAxMy43Mzk2IDE3LjAzMDEgMTQuMzA3NyAxNi41MDU3IDE0Ljc2OTJIMTcuODk3N1pNMTYuOTQxNCAxMS4wNzY5QzE2Ljk0MTQgMTIuMDU2MiAxNi41NTI0IDEyLjk5NTMgMTUuODYgMTMuNjg3OEMxNS4xNjc1IDE0LjM4MDIgMTQuMjI4NCAxNC43NjkyIDEzLjI0OTEgMTQuNzY5MkMxMi4yNjk4IDE0Ljc2OTIgMTEuMzMwNyAxNC4zODAyIDEwLjYzODIgMTMuNjg3OEM5Ljk0NTggMTIuOTk1MyA5LjU1Njc5IDEyLjA1NjIgOS41NTY3OSAxMS4wNzY5QzkuNTU2NzkgMTAuMDk3NyA5Ljk0NTggOS4xNTg1MSAxMC42MzgyIDguNDY2MDdDMTEuMzMwNyA3Ljc3MzYzIDEyLjI2OTggNy4zODQ2MiAxMy4yNDkxIDcuMzg0NjJDMTQuMjI4NCA3LjM4NDYyIDE1LjE2NzUgNy43NzM2MyAxNS44NiA4LjQ2NjA3QzE2LjU1MjQgOS4xNTg1MSAxNi45NDE0IDEwLjA5NzcgMTYuOTQxNCAxMS4wNzY5Wk02LjQ3OTg3IDE4LjEyMDZDNi40Nzk4NyAxNy41NTgyIDYuNzAzMjkgMTcuMDE4OCA3LjEwMDk4IDE2LjYyMTFDNy40OTg2NyAxNi4yMjM0IDguMDM4MDYgMTYgOC42MDA0OCAxNkgxNy44OTc3QzE4LjQ2MDEgMTYgMTguOTk5NSAxNi4yMjM0IDE5LjM5NzIgMTYuNjIxMUMxOS43OTQ5IDE3LjAxODggMjAuMDE4MyAxNy41NTgyIDIwLjAxODMgMTguMTIwNlYxOC4zODU4QzIwLjAxODMgMTguNjI4MyAyMC4wMTgzIDIwLjAyNDYgMTkuMTQ1MSAyMS4zNzY2QzE4LjIzMjUgMjIuNzg5NSAxNi40Njk0IDI0IDEzLjI0OTEgMjRDMTAuMDI4OCAyNCA4LjI2NTcxIDIyLjc4OTUgNy4zNTMxIDIxLjM3NjZDNi40Nzk4NyAyMC4wMjQ2IDYuNDc5ODcgMTguNjI3NyA2LjQ3OTg3IDE4LjM4NThWMTguMTIwNlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjOThBMkIzXCIgc3Ryb2tlLXdpZHRoPVwiM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hc2s9XCJ1cmwoI3BhdGgtNi1pbnNpZGUtMl83MDdfMTMxMDYpXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8uZm9vdGZhbGxDYXJkPy5hZ2VHcm91cCA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5mb290ZmFsbENhcmQ/LmFnZUdyb3VwIDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5Nb3N0IENvbW1vbiBBZ2U8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNSBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIyNlwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNiAyNFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIyNlwiIGhlaWdodD1cIjI0XCIgZmlsbD1cIiNEQ0RDRENcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHg9XCItNDYwLjVcIiB5PVwiLTM0MC41XCIgd2lkdGg9XCI3ODNcIiBoZWlnaHQ9XCIxOTQ3XCIgcng9XCI0LjVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjOTc0N0ZGXCIgc3Ryb2tlLWRhc2hhcnJheT1cIjEwIDVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXNrIGlkPVwicGF0aC0yLWluc2lkZS0xXzcwN18xMzEwNlwiIGZpbGw9XCJ3aGl0ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0tMTg5IC04OUMtMTg5IC05NS42Mjc0IC0xODMuNjI3IC0xMDEgLTE3NyAtMTAxSDI5NUMzMDEuNjI3IC0xMDEgMzA3IC05NS42Mjc0IDMwNyAtODlWODVDMzA3IDkxLjYyNzQgMzAxLjYyNyA5NyAyOTUgOTdILTE3N0MtMTgzLjYyNyA5NyAtMTg5IDkxLjYyNzQgLTE4OSA4NVYtODlaXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hc2s+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0tMTg5IC04OUMtMTg5IC05NS42Mjc0IC0xODMuNjI3IC0xMDEgLTE3NyAtMTAxSDI5NUMzMDEuNjI3IC0xMDEgMzA3IC05NS42Mjc0IDMwNyAtODlWODVDMzA3IDkxLjYyNzQgMzAxLjYyNyA5NyAyOTUgOTdILTE3N0MtMTgzLjYyNyA5NyAtMTg5IDkxLjYyNzQgLTE4OSA4NVYtODlaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTS0xOTAgLTg5Qy0xOTAgLTk2LjE3OTcgLTE4NC4xOCAtMTAyIC0xNzcgLTEwMkgyOTRDMzAxLjE4IC0xMDIgMzA3IC05Ni4xNzk3IDMwNyAtODlDMzA3IC05NS4wNzUxIDMwMS42MjcgLTEwMCAyOTUgLTEwMEgtMTc3Qy0xODMuMDc1IC0xMDAgLTE4OCAtOTUuMDc1MSAtMTg4IC04OUgtMTkwWk0zMDcgODVDMzA3IDkyLjE3OTcgMzAxLjE4IDk4IDI5NCA5OEgtMTc3Qy0xODQuMTggOTggLTE5MCA5Mi4xNzk3IC0xOTAgODVILTE4OEMtMTg4IDkxLjA3NTEgLTE4My4wNzUgOTYgLTE3NyA5NkgyOTVDMzAxLjYyNyA5NiAzMDcgOTEuMDc1MSAzMDcgODVaTS0xNzcgOThDLTE4NC4xOCA5OCAtMTkwIDkyLjE3OTcgLTE5MCA4NVYtODlDLTE5MCAtOTYuMTc5NyAtMTg0LjE4IC0xMDIgLTE3NyAtMTAyVi0xMDBDLTE4My4wNzUgLTEwMCAtMTg4IC05NS4wNzUxIC0xODggLTg5Vjg1Qy0xODggOTEuMDc1MSAtMTgzLjA3NSA5NiAtMTc3IDk2Vjk4Wk0zMDcgLTEwMVY5N1YtMTAxWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjRDBENUREXCIgbWFzaz1cInVybCgjcGF0aC0yLWluc2lkZS0xXzcwN18xMzEwNilcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXNrIGlkPVwicGF0aC02LWluc2lkZS0yXzcwN18xMzEwNlwiIGZpbGw9XCJ3aGl0ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk03LjcxMDY0IDcuMzg0NjJDOC4xOTU1MiA3LjM4NDYyIDguNjc1NjUgNy4yODkxMSA5LjEyMzYyIDcuMTAzNTZDOS41NzE1OSA2LjkxOCA5Ljk3ODYzIDYuNjQ2MDMgMTAuMzIxNSA2LjMwMzE2QzEwLjY2NDQgNS45NjAzIDEwLjkzNjMgNS41NTMyNiAxMS4xMjE5IDUuMTA1MjlDMTEuMzA3NCA0LjY1NzMyIDExLjQwMjkgNC4xNzcxOSAxMS40MDI5IDMuNjkyMzFDMTEuNDAyOSAzLjIwNzQzIDExLjMwNzQgMi43MjcyOSAxMS4xMjE5IDIuMjc5MzJDMTAuOTM2MyAxLjgzMTM1IDEwLjY2NDQgMS40MjQzMSAxMC4zMjE1IDEuMDgxNDVDOS45Nzg2MyAwLjczODU5IDkuNTcxNTkgMC40NjY2MTYgOS4xMjM2MiAwLjI4MTA2QzguNjc1NjUgMC4wOTU1MDQzIDguMTk1NTIgLTcuMjI1MjllLTA5IDcuNzEwNjQgMEM2LjczMTM4IDEuNDU5MjFlLTA4IDUuNzkyMjIgMC4zODkwMSA1LjA5OTc4IDEuMDgxNDVDNC40MDczNCAxLjc3Mzg5IDQuMDE4MzMgMi43MTMwNSA0LjAxODMzIDMuNjkyMzFDNC4wMTgzMyA0LjY3MTU3IDQuNDA3MzQgNS42MTA3MiA1LjA5OTc4IDYuMzAzMTZDNS43OTIyMiA2Ljk5NTYxIDYuNzMxMzggNy4zODQ2MiA3LjcxMDY0IDcuMzg0NjJaTTE4Ljc4NzYgNy4zODQ2MkMxOS4yNzI0IDcuMzg0NjIgMTkuNzUyNiA3LjI4OTExIDIwLjIwMDUgNy4xMDM1NkMyMC42NDg1IDYuOTE4IDIxLjA1NTYgNi42NDYwMyAyMS4zOTg0IDYuMzAzMTZDMjEuNzQxMyA1Ljk2MDMgMjIuMDEzMyA1LjU1MzI2IDIyLjE5ODggNS4xMDUyOUMyMi4zODQ0IDQuNjU3MzIgMjIuNDc5OSA0LjE3NzE5IDIyLjQ3OTkgMy42OTIzMUMyMi40Nzk5IDMuMjA3NDMgMjIuMzg0NCAyLjcyNzI5IDIyLjE5ODggMi4yNzkzMkMyMi4wMTMzIDEuODMxMzUgMjEuNzQxMyAxLjQyNDMxIDIxLjM5ODQgMS4wODE0NUMyMS4wNTU2IDAuNzM4NTkgMjAuNjQ4NSAwLjQ2NjYxNiAyMC4yMDA1IDAuMjgxMDZDMTkuNzUyNiAwLjA5NTUwNDMgMTkuMjcyNCAtNy4yMjUyOWUtMDkgMTguNzg3NiAwQzE3LjgwODMgMS40NTkyMWUtMDggMTYuODY5MSAwLjM4OTAxIDE2LjE3NjcgMS4wODE0NUMxNS40ODQzIDEuNzczODkgMTUuMDk1MyAyLjcxMzA1IDE1LjA5NTMgMy42OTIzMUMxNS4wOTUzIDQuNjcxNTcgMTUuNDg0MyA1LjYxMDcyIDE2LjE3NjcgNi4zMDMxNkMxNi44NjkxIDYuOTk1NjEgMTcuODA4MyA3LjM4NDYyIDE4Ljc4NzYgNy4zODQ2MlpNMC45NDE0MDYgMTAuNzM2QzAuOTQxNDA2IDEwLjQ1NzUgMC45OTYyNTggMTAuMTgxOCAxLjEwMjgzIDkuOTI0NDhDMS4yMDk0IDkuNjY3MTkgMS4zNjU2IDkuNDMzNDIgMS41NjI1MiA5LjIzNjVDMS43NTk0NCA5LjAzOTU4IDEuOTkzMjEgOC44ODMzOCAyLjI1MDUgOC43NzY4MUMyLjUwNzc4IDguNjcwMjQgMi43ODM1NCA4LjYxNTM5IDMuMDYyMDIgOC42MTUzOUg4Ljk4NDQ4QzguNTUxNjkgOS4zNjM0NSA4LjMyNDUyIDEwLjIxMjcgOC4zMjYwMiAxMS4wNzY5QzguMzI1MTkgMTEuNzc1NSA4LjQ3MzQxIDEyLjQ2NjIgOC43NjA3OSAxMy4xMDI5QzkuMDQ4MTYgMTMuNzM5NiA5LjQ2ODA3IDE0LjMwNzcgOS45OTI0OCAxNC43NjkySDguNjAwNDhDOC4wMTQxOCAxNC43Njg3IDcuNDM4MDMgMTQuOTIyMiA2LjkyOTY5IDE1LjIxNDRDNi40MjEzNCAxNS41MDY1IDUuOTk4NjQgMTUuOTI3IDUuNzAzODcgMTYuNDMzOEMzLjcyMTEgMTYuMDQ0OSAyLjUxNjE4IDE1LjA3ODIgMS44MTQ2NCAxMy45OTJDMC45NDE0MDYgMTIuNjQgMC45NDE0MDYgMTEuMjQzMSAwLjk0MTQwNiAxMS4wMDEyVjEwLjczNlpNMTcuODk3NyAxNC43NjkyQzE4LjQ4NCAxNC43Njg3IDE5LjA2MDIgMTQuOTIyMiAxOS41Njg1IDE1LjIxNDRDMjAuMDc2OSAxNS41MDY1IDIwLjQ5OTYgMTUuOTI3IDIwLjc5NDMgMTYuNDMzOEMyMi43NzcxIDE2LjA0NDkgMjMuOTgyIDE1LjA3ODIgMjQuNjgzNiAxMy45OTJDMjUuNTU2OCAxMi42NCAyNS41NTY4IDExLjI0MzEgMjUuNTU2OCAxMS4wMDEyVjEwLjczNjZDMjUuNTU2OSAxMC40NTgxIDI1LjUwMjEgMTAuMTgyMyAyNS4zOTU1IDkuOTI0OUMyNS4yODkgOS42Njc1NSAyNS4xMzI4IDkuNDMzNyAyNC45MzU5IDkuMjM2NzJDMjQuNzM5IDkuMDM5NzMgMjQuNTA1MiA4Ljg4MzQ4IDI0LjI0NzggOC43NzY4N0MyMy45OTA1IDguNjcwMjYgMjMuNzE0NyA4LjYxNTM5IDIzLjQzNjIgOC42MTUzOUgxNy41MTM3QzE3Ljk0NjUgOS4zNjM0NSAxOC4xNzM3IDEwLjIxMjcgMTguMTcyMiAxMS4wNzY5QzE4LjE3MyAxMS43NzU1IDE4LjAyNDggMTIuNDY2MiAxNy43Mzc0IDEzLjEwMjlDMTcuNDUgMTMuNzM5NiAxNy4wMzAxIDE0LjMwNzcgMTYuNTA1NyAxNC43NjkySDE3Ljg5NzdaTTE2Ljk0MTQgMTEuMDc2OUMxNi45NDE0IDEyLjA1NjIgMTYuNTUyNCAxMi45OTUzIDE1Ljg2IDEzLjY4NzhDMTUuMTY3NSAxNC4zODAyIDE0LjIyODQgMTQuNzY5MiAxMy4yNDkxIDE0Ljc2OTJDMTIuMjY5OCAxNC43NjkyIDExLjMzMDcgMTQuMzgwMiAxMC42MzgyIDEzLjY4NzhDOS45NDU4IDEyLjk5NTMgOS41NTY3OSAxMi4wNTYyIDkuNTU2NzkgMTEuMDc2OUM5LjU1Njc5IDEwLjA5NzcgOS45NDU4IDkuMTU4NTEgMTAuNjM4MiA4LjQ2NjA3QzExLjMzMDcgNy43NzM2MyAxMi4yNjk4IDcuMzg0NjIgMTMuMjQ5MSA3LjM4NDYyQzE0LjIyODQgNy4zODQ2MiAxNS4xNjc1IDcuNzczNjMgMTUuODYgOC40NjYwN0MxNi41NTI0IDkuMTU4NTEgMTYuOTQxNCAxMC4wOTc3IDE2Ljk0MTQgMTEuMDc2OVpNNi40Nzk4NyAxOC4xMjA2QzYuNDc5ODcgMTcuNTU4MiA2LjcwMzI5IDE3LjAxODggNy4xMDA5OCAxNi42MjExQzcuNDk4NjcgMTYuMjIzNCA4LjAzODA2IDE2IDguNjAwNDggMTZIMTcuODk3N0MxOC40NjAxIDE2IDE4Ljk5OTUgMTYuMjIzNCAxOS4zOTcyIDE2LjYyMTFDMTkuNzk0OSAxNy4wMTg4IDIwLjAxODMgMTcuNTU4MiAyMC4wMTgzIDE4LjEyMDZWMTguMzg1OEMyMC4wMTgzIDE4LjYyODMgMjAuMDE4MyAyMC4wMjQ2IDE5LjE0NTEgMjEuMzc2NkMxOC4yMzI1IDIyLjc4OTUgMTYuNDY5NCAyNCAxMy4yNDkxIDI0QzEwLjAyODggMjQgOC4yNjU3MSAyMi43ODk1IDcuMzUzMSAyMS4zNzY2QzYuNDc5ODcgMjAuMDI0NiA2LjQ3OTg3IDE4LjYyNzcgNi40Nzk4NyAxOC4zODU4VjE4LjEyMDZaXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hc2s+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk03LjcxMDY0IDcuMzg0NjJDOC4xOTU1MiA3LjM4NDYyIDguNjc1NjUgNy4yODkxMSA5LjEyMzYyIDcuMTAzNTZDOS41NzE1OSA2LjkxOCA5Ljk3ODYzIDYuNjQ2MDMgMTAuMzIxNSA2LjMwMzE2QzEwLjY2NDQgNS45NjAzIDEwLjkzNjMgNS41NTMyNiAxMS4xMjE5IDUuMTA1MjlDMTEuMzA3NCA0LjY1NzMyIDExLjQwMjkgNC4xNzcxOSAxMS40MDI5IDMuNjkyMzFDMTEuNDAyOSAzLjIwNzQzIDExLjMwNzQgMi43MjcyOSAxMS4xMjE5IDIuMjc5MzJDMTAuOTM2MyAxLjgzMTM1IDEwLjY2NDQgMS40MjQzMSAxMC4zMjE1IDEuMDgxNDVDOS45Nzg2MyAwLjczODU5IDkuNTcxNTkgMC40NjY2MTYgOS4xMjM2MiAwLjI4MTA2QzguNjc1NjUgMC4wOTU1MDQzIDguMTk1NTIgLTcuMjI1MjllLTA5IDcuNzEwNjQgMEM2LjczMTM4IDEuNDU5MjFlLTA4IDUuNzkyMjIgMC4zODkwMSA1LjA5OTc4IDEuMDgxNDVDNC40MDczNCAxLjc3Mzg5IDQuMDE4MzMgMi43MTMwNSA0LjAxODMzIDMuNjkyMzFDNC4wMTgzMyA0LjY3MTU3IDQuNDA3MzQgNS42MTA3MiA1LjA5OTc4IDYuMzAzMTZDNS43OTIyMiA2Ljk5NTYxIDYuNzMxMzggNy4zODQ2MiA3LjcxMDY0IDcuMzg0NjJaTTE4Ljc4NzYgNy4zODQ2MkMxOS4yNzI0IDcuMzg0NjIgMTkuNzUyNiA3LjI4OTExIDIwLjIwMDUgNy4xMDM1NkMyMC42NDg1IDYuOTE4IDIxLjA1NTYgNi42NDYwMyAyMS4zOTg0IDYuMzAzMTZDMjEuNzQxMyA1Ljk2MDMgMjIuMDEzMyA1LjU1MzI2IDIyLjE5ODggNS4xMDUyOUMyMi4zODQ0IDQuNjU3MzIgMjIuNDc5OSA0LjE3NzE5IDIyLjQ3OTkgMy42OTIzMUMyMi40Nzk5IDMuMjA3NDMgMjIuMzg0NCAyLjcyNzI5IDIyLjE5ODggMi4yNzkzMkMyMi4wMTMzIDEuODMxMzUgMjEuNzQxMyAxLjQyNDMxIDIxLjM5ODQgMS4wODE0NUMyMS4wNTU2IDAuNzM4NTkgMjAuNjQ4NSAwLjQ2NjYxNiAyMC4yMDA1IDAuMjgxMDZDMTkuNzUyNiAwLjA5NTUwNDMgMTkuMjcyNCAtNy4yMjUyOWUtMDkgMTguNzg3NiAwQzE3LjgwODMgMS40NTkyMWUtMDggMTYuODY5MSAwLjM4OTAxIDE2LjE3NjcgMS4wODE0NUMxNS40ODQzIDEuNzczODkgMTUuMDk1MyAyLjcxMzA1IDE1LjA5NTMgMy42OTIzMUMxNS4wOTUzIDQuNjcxNTcgMTUuNDg0MyA1LjYxMDcyIDE2LjE3NjcgNi4zMDMxNkMxNi44NjkxIDYuOTk1NjEgMTcuODA4MyA3LjM4NDYyIDE4Ljc4NzYgNy4zODQ2MlpNMC45NDE0MDYgMTAuNzM2QzAuOTQxNDA2IDEwLjQ1NzUgMC45OTYyNTggMTAuMTgxOCAxLjEwMjgzIDkuOTI0NDhDMS4yMDk0IDkuNjY3MTkgMS4zNjU2IDkuNDMzNDIgMS41NjI1MiA5LjIzNjVDMS43NTk0NCA5LjAzOTU4IDEuOTkzMjEgOC44ODMzOCAyLjI1MDUgOC43NzY4MUMyLjUwNzc4IDguNjcwMjQgMi43ODM1NCA4LjYxNTM5IDMuMDYyMDIgOC42MTUzOUg4Ljk4NDQ4QzguNTUxNjkgOS4zNjM0NSA4LjMyNDUyIDEwLjIxMjcgOC4zMjYwMiAxMS4wNzY5QzguMzI1MTkgMTEuNzc1NSA4LjQ3MzQxIDEyLjQ2NjIgOC43NjA3OSAxMy4xMDI5QzkuMDQ4MTYgMTMuNzM5NiA5LjQ2ODA3IDE0LjMwNzcgOS45OTI0OCAxNC43NjkySDguNjAwNDhDOC4wMTQxOCAxNC43Njg3IDcuNDM4MDMgMTQuOTIyMiA2LjkyOTY5IDE1LjIxNDRDNi40MjEzNCAxNS41MDY1IDUuOTk4NjQgMTUuOTI3IDUuNzAzODcgMTYuNDMzOEMzLjcyMTEgMTYuMDQ0OSAyLjUxNjE4IDE1LjA3ODIgMS44MTQ2NCAxMy45OTJDMC45NDE0MDYgMTIuNjQgMC45NDE0MDYgMTEuMjQzMSAwLjk0MTQwNiAxMS4wMDEyVjEwLjczNlpNMTcuODk3NyAxNC43NjkyQzE4LjQ4NCAxNC43Njg3IDE5LjA2MDIgMTQuOTIyMiAxOS41Njg1IDE1LjIxNDRDMjAuMDc2OSAxNS41MDY1IDIwLjQ5OTYgMTUuOTI3IDIwLjc5NDMgMTYuNDMzOEMyMi43NzcxIDE2LjA0NDkgMjMuOTgyIDE1LjA3ODIgMjQuNjgzNiAxMy45OTJDMjUuNTU2OCAxMi42NCAyNS41NTY4IDExLjI0MzEgMjUuNTU2OCAxMS4wMDEyVjEwLjczNjZDMjUuNTU2OSAxMC40NTgxIDI1LjUwMjEgMTAuMTgyMyAyNS4zOTU1IDkuOTI0OUMyNS4yODkgOS42Njc1NSAyNS4xMzI4IDkuNDMzNyAyNC45MzU5IDkuMjM2NzJDMjQuNzM5IDkuMDM5NzMgMjQuNTA1MiA4Ljg4MzQ4IDI0LjI0NzggOC43NzY4N0MyMy45OTA1IDguNjcwMjYgMjMuNzE0NyA4LjYxNTM5IDIzLjQzNjIgOC42MTUzOUgxNy41MTM3QzE3Ljk0NjUgOS4zNjM0NSAxOC4xNzM3IDEwLjIxMjcgMTguMTcyMiAxMS4wNzY5QzE4LjE3MyAxMS43NzU1IDE4LjAyNDggMTIuNDY2MiAxNy43Mzc0IDEzLjEwMjlDMTcuNDUgMTMuNzM5NiAxNy4wMzAxIDE0LjMwNzcgMTYuNTA1NyAxNC43NjkySDE3Ljg5NzdaTTE2Ljk0MTQgMTEuMDc2OUMxNi45NDE0IDEyLjA1NjIgMTYuNTUyNCAxMi45OTUzIDE1Ljg2IDEzLjY4NzhDMTUuMTY3NSAxNC4zODAyIDE0LjIyODQgMTQuNzY5MiAxMy4yNDkxIDE0Ljc2OTJDMTIuMjY5OCAxNC43NjkyIDExLjMzMDcgMTQuMzgwMiAxMC42MzgyIDEzLjY4NzhDOS45NDU4IDEyLjk5NTMgOS41NTY3OSAxMi4wNTYyIDkuNTU2NzkgMTEuMDc2OUM5LjU1Njc5IDEwLjA5NzcgOS45NDU4IDkuMTU4NTEgMTAuNjM4MiA4LjQ2NjA3QzExLjMzMDcgNy43NzM2MyAxMi4yNjk4IDcuMzg0NjIgMTMuMjQ5MSA3LjM4NDYyQzE0LjIyODQgNy4zODQ2MiAxNS4xNjc1IDcuNzczNjMgMTUuODYgOC40NjYwN0MxNi41NTI0IDkuMTU4NTEgMTYuOTQxNCAxMC4wOTc3IDE2Ljk0MTQgMTEuMDc2OVpNNi40Nzk4NyAxOC4xMjA2QzYuNDc5ODcgMTcuNTU4MiA2LjcwMzI5IDE3LjAxODggNy4xMDA5OCAxNi42MjExQzcuNDk4NjcgMTYuMjIzNCA4LjAzODA2IDE2IDguNjAwNDggMTZIMTcuODk3N0MxOC40NjAxIDE2IDE4Ljk5OTUgMTYuMjIzNCAxOS4zOTcyIDE2LjYyMTFDMTkuNzk0OSAxNy4wMTg4IDIwLjAxODMgMTcuNTU4MiAyMC4wMTgzIDE4LjEyMDZWMTguMzg1OEMyMC4wMTgzIDE4LjYyODMgMjAuMDE4MyAyMC4wMjQ2IDE5LjE0NTEgMjEuMzc2NkMxOC4yMzI1IDIyLjc4OTUgMTYuNDY5NCAyNCAxMy4yNDkxIDI0QzEwLjAyODggMjQgOC4yNjU3MSAyMi43ODk1IDcuMzUzMSAyMS4zNzY2QzYuNDc5ODcgMjAuMDI0NiA2LjQ3OTg3IDE4LjYyNzcgNi40Nzk4NyAxOC4zODU4VjE4LjEyMDZaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXNrPVwidXJsKCNwYXRoLTYtaW5zaWRlLTJfNzA3XzEzMTA2KVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/LmZvb3RmYWxsQ2FyZD8ubWFsZVJhdGUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8uZm9vdGZhbGxDYXJkPy5tYWxlUmF0ZSA6Jy0tJ319JVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPk1hbGU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/LmZvb3RmYWxsQ2FyZD8uZmVtYWxlUmF0ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5mb290ZmFsbENhcmQ/LmZlbWFsZVJhdGUgOictLSd9fSVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5GZW1hbGU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzZWxlY3RlZFRhYiA9PT0nY29udmVyc2lvbidcIiBjbGFzcz1cImxlZnQtYmFyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9wLWhlYWRlciB0ZXh0LWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWJhci1jb3VudFwiIFtuZ1N0eWxlXT1cIntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtc2l6ZSc6IChnZXRPdmVyYWxsQ2FyZERhdGE/LmNvbnZlcnNpb25DYXJkPy5jb252ZXJzaW9uQ291bnQudG9Mb2NhbGVTdHJpbmcoKT8ubGVuZ3RoID4gNSA/ICcyNHB4JyA6ICczNnB4JykgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XCI+e3tnZXRPdmVyYWxsQ2FyZERhdGE/LmNvbnZlcnNpb25DYXJkPy5jb252ZXJzaW9uQ291bnQgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LmNvbnZlcnNpb25DYXJkPy5jb252ZXJzaW9uQ291bnQudG9Mb2NhbGVTdHJpbmcoJ2VuLUlOJykgOictLSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWJhci10aXRsZVwiPnt7aGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInID8gJ01vcmUgdGhhbiAnK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZWF0dXJlQ29uZmlnPy5jb252ZXJzaW9uLnZhbHVlKyAnIG1pbnMnIDonQ29udmVyc2lvbid9fSBDb3VudDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3LTEwMFwiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTc0XCIgaGVpZ2h0PVwiMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTk0IDJcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBvcGFjaXR5PVwiMC40XCIgZD1cIk0xIDFMMTkzIDFcIiBzdHJva2U9XCIjOTlEQUZGXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBteS01IG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzIDJMMyAxNEgxMkwxMSAyMkwyMSAxMEgxMkwxMyAyWlwiIHN0cm9rZT1cIiM5OEEyQjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8uY29udmVyc2lvbkNhcmQ/LmNvbnZlcnNpb25SYXRlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LmNvbnZlcnNpb25DYXJkPy5jb252ZXJzaW9uUmF0ZSA6Jy0tJ319JVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPnt7aGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInID8gJ01vcmUgdGhhbiAnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyBmZWF0dXJlQ29uZmlnPy5jb252ZXJzaW9uLnZhbHVlICsgJyBtaW5zJyA6J0NvbnZlcnNpb24nfX0gUmF0ZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwidGhpcy5vYmpEYXRhVHJhZmZpYy5ub2IgPT09IGZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMgMkwzIDE0SDEyTDExIDIyTDIxIDEwSDEyTDEzIDJaXCIgc3Ryb2tlPVwiIzk4QTJCM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5jb252ZXJzaW9uQ2FyZD8ubWluUmF0ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5jb252ZXJzaW9uQ2FyZD8ubWluUmF0ZSA6Jy0tJ319JVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPjUgLSAxNSBNaW5zPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJ0aGlzLm9iakRhdGFUcmFmZmljLm5vYiA9PT0gZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNSBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMyAyTDMgMTRIMTJMMTEgMjJMMjEgMTBIMTJMMTMgMlpcIiBzdHJva2U9XCIjOThBMkIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/LmNvbnZlcnNpb25DYXJkPy5tYXhSYXRlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LmNvbnZlcnNpb25DYXJkPy5tYXhSYXRlIDonLS0nfX0lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+MTUgLSA2MCBNaW5zPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJ0aGlzLm9iakRhdGFUcmFmZmljLm5vYiA9PT0gZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNSBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMyAyTDMgMTRIMTJMMTEgMjJMMjEgMTBIMTJMMTMgMlpcIiBzdHJva2U9XCIjOThBMkIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/LmNvbnZlcnNpb25DYXJkPy5hdmVyYWdlUmF0ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5jb252ZXJzaW9uQ2FyZD8uYXZlcmFnZVJhdGUgOictLSd9fSVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj4xIEhyIG9yIG1vcmU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzZWxlY3RlZFRhYiA9PT0nZW5nYWdlcnMnXCIgY2xhc3M9XCJsZWZ0LWJhclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvcC1oZWFkZXIgdGV4dC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1iYXItY291bnRcIiBbbmdTdHlsZV09XCJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXNpemUnOiAoZ2V0T3ZlcmFsbENhcmREYXRhPy5lbmdhZ2Vyc0NhcmQ/LmVuZ2FnZXJzQ291bnQudG9Mb2NhbGVTdHJpbmcoKT8ubGVuZ3RoID4gNSA/ICcyNHB4JyA6ICczNnB4JykgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XCI+e3tnZXRPdmVyYWxsQ2FyZERhdGE/LmVuZ2FnZXJzQ2FyZD8uZW5nYWdlcnNDb3VudCA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8uZW5nYWdlcnNDYXJkPy5lbmdhZ2Vyc0NvdW50LnRvTG9jYWxlU3RyaW5nKCdlbi1JTicpIDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1iYXItdGl0bGVcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJyA/ICdNb3JlIHRoYW4gJyArXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSArICcgbWlucycgOidFbmdhZ2Vycyd9fSBDb3VudDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBteS01IG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzIDJMMyAxNEgxMkwxMSAyMkwyMSAxMEgxMkwxMyAyWlwiIHN0cm9rZT1cIiM5OEEyQjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8uZW5nYWdlcnNDYXJkPy5lbmdhZ2Vyc1JhdGUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8uZW5nYWdlcnNDYXJkPy5lbmdhZ2Vyc1JhdGUgOictLSd9fSVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJyA/ICdNb3JlIHRoYW4gJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlICsgJyBtaW5zJyA6J0VuZ2FnZXJzJ319IFJhdGU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNSBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMyAyTDMgMTRIMTJMMTEgMjJMMjEgMTBIMTJMMTMgMlpcIiBzdHJva2U9XCIjOThBMkIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/LmVuZ2FnZXJzQ2FyZD8uYXZnRHdlbGxUaW1lID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LmVuZ2FnZXJzQ2FyZD8uYXZnRHdlbGxUaW1lIDonLS0nfX0gTWluc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPkF2ZyBkd2VsbCBUaW1lPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMgMkwzIDE0SDEyTDExIDIyTDIxIDEwSDEyTDEzIDJaXCIgc3Ryb2tlPVwiIzk4QTJCM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5lbmdhZ2Vyc0NhcmQ/LmhpZ2hFbmdhZ2VtZW50Wm9uZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5lbmdhZ2Vyc0NhcmQ/LmhpZ2hFbmdhZ2VtZW50Wm9uZSA6Jy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+SGlnaCBFbmdhZ2VtZW50IFpvbmU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNSBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMyAyTDMgMTRIMTJMMTEgMjJMMjEgMTBIMTJMMTMgMlpcIiBzdHJva2U9XCIjOThBMkIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/LmVuZ2FnZXJzQ2FyZD8ubG93RW5nYWdlbWVudFpvbmUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8uZW5nYWdlcnNDYXJkPy5sb3dFbmdhZ2VtZW50Wm9uZSA6Jy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+TG93IEVuZ2FnZW1lbnQgWm9uZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzZWxlY3RlZFRhYiA9PT0nYm91bmNlZCdcIiBjbGFzcz1cImxlZnQtYmFyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9wLWhlYWRlciB0ZXh0LWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWJhci1jb3VudFwiIFtuZ1N0eWxlXT1cIntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtc2l6ZSc6IChnZXRPdmVyYWxsQ2FyZERhdGE/LmJvdW5jZWRDYXJkPy5ib3VuY2VkQ291bnQudG9Mb2NhbGVTdHJpbmcoKT8ubGVuZ3RoID4gNSA/ICcyNHB4JyA6ICczNnB4JykgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XCI+e3tnZXRPdmVyYWxsQ2FyZERhdGE/LmJvdW5jZWRDYXJkPy5ib3VuY2VkQ291bnQgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LmJvdW5jZWRDYXJkPy5ib3VuY2VkQ291bnQudG9Mb2NhbGVTdHJpbmcoJ2VuLUlOJykgOictLSd9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWJhci10aXRsZVwiPnt7aGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInID8gJ0xlc3MgdGhhbiAnICtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlICsgJyBtaW5zJzonQm91bmNlZCd9fSBDb3VudDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBteS01IG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzIDJMMyAxNEgxMkwxMSAyMkwyMSAxMEgxMkwxMyAyWlwiIHN0cm9rZT1cIiM5OEEyQjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8uYm91bmNlZENhcmQ/LmJvdW5jZWRSYXRlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LmJvdW5jZWRDYXJkPy5ib3VuY2VkUmF0ZSA6Jy0tJ319JVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPnt7aGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInID8gJ0xlc3MgdGhhbiAnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyBmZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWUrJyBtaW5zJzonQm91bmNlZCd9fSBSYXRlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMgMkwzIDE0SDEyTDExIDIyTDIxIDEwSDEyTDEzIDJaXCIgc3Ryb2tlPVwiIzk4QTJCM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5ib3VuY2VkQ2FyZD8ucGVha0JvdW5jZWRIb3VyID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LmJvdW5jZWRDYXJkPy5wZWFrQm91bmNlZEhvdXIgOictLSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPlBlYWsge3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1MicgPyAnTGVzc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYW4gJysgZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlICsgJyBtaW5zJzonQm91bmNlZCd9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBteS01IG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzIDJMMyAxNEgxMkwxMSAyMkwyMSAxMEgxMkwxMyAyWlwiIHN0cm9rZT1cIiM5OEEyQjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8uYm91bmNlZENhcmQ/Lm1vc3RDb21tb25BZ2UgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8uYm91bmNlZENhcmQ/Lm1vc3RDb21tb25BZ2UgOictLSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPk1vc3QgQ29tbW9uIEFnZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBteS01IG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzIDJMMyAxNEgxMkwxMSAyMkwyMSAxMEgxMkwxMyAyWlwiIHN0cm9rZT1cIiM5OEEyQjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8uYm91bmNlZENhcmQ/Lm1hbGVSYXRlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LmJvdW5jZWRDYXJkPy5tYWxlUmF0ZSA6Jy0tJ319ICVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5NYWxlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5ib3VuY2VkQ2FyZD8uZmVtYWxlUmF0ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5ib3VuY2VkQ2FyZD8uZmVtYWxlUmF0ZSA6Jy0tJ319ICVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5GZW1hbGU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2VsZWN0ZWRUYWIgPT09J3BvdGVudGlhbEJ1eWVycydcIiBjbGFzcz1cImxlZnQtYmFyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9wLWhlYWRlciB0ZXh0LWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWJhci1jb3VudFwiIFtuZ1N0eWxlXT1cIntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtc2l6ZSc6IChnZXRPdmVyYWxsQ2FyZERhdGE/LnBvdGVudGlhbEJ1eWVyc0NhcmQ/LnBvdGVudGlhbEJ1eWVyc0NvdW50LnRvTG9jYWxlU3RyaW5nKCk/Lmxlbmd0aCA+IDUgPyAnMjRweCcgOiAnMzZweCcpIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVwiPnt7Z2V0T3ZlcmFsbENhcmREYXRhPy5wb3RlbnRpYWxCdXllcnNDYXJkPy5wb3RlbnRpYWxCdXllcnNDb3VudCA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8ucG90ZW50aWFsQnV5ZXJzQ2FyZD8ucG90ZW50aWFsQnV5ZXJzQ291bnQudG9Mb2NhbGVTdHJpbmcoJ2VuLUlOJylcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOictLSd9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWJhci10aXRsZVwiPlBvdGVudGlhbCBCdXllcnM8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNSBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMyAyTDMgMTRIMTJMMTEgMjJMMjEgMTBIMTJMMTMgMlpcIiBzdHJva2U9XCIjOThBMkIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/LnBvdGVudGlhbEJ1eWVyc0NhcmQ/LnBvdGVudGlhbEJ1eWVyc1JhdGUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8ucG90ZW50aWFsQnV5ZXJzQ2FyZD8ucG90ZW50aWFsQnV5ZXJzUmF0ZSA6Jy0tJ319JVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPkJ1eWVycyBSYXRlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjAgMjFWMTlDMjAgMTcuOTM5MSAxOS41Nzg2IDE2LjkyMTcgMTguODI4NCAxNi4xNzE2QzE4LjA3ODMgMTUuNDIxNCAxNy4wNjA5IDE1IDE2IDE1SDhDNi45MzkxMyAxNSA1LjkyMTcyIDE1LjQyMTQgNS4xNzE1NyAxNi4xNzE2QzQuNDIxNDMgMTYuOTIxNyA0IDE3LjkzOTEgNCAxOVYyMU0xNiA3QzE2IDkuMjA5MTQgMTQuMjA5MSAxMSAxMiAxMUM5Ljc5MDg2IDExIDggOS4yMDkxNCA4IDdDOCA0Ljc5MDg2IDkuNzkwODYgMyAxMiAzQzE0LjIwOTEgMyAxNiA0Ljc5MDg2IDE2IDdaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5wb3RlbnRpYWxCdXllcnNDYXJkPy5zaW5nbGVDb3VudCA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5wb3RlbnRpYWxCdXllcnNDYXJkPy5zaW5nbGVDb3VudC50b0xvY2FsZVN0cmluZygnZW4tSU4nKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5TaW5nbGU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNSBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIyNlwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNiAyNFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIyNlwiIGhlaWdodD1cIjI0XCIgZmlsbD1cIiNEQ0RDRENcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHg9XCItNDYwLjVcIiB5PVwiLTM0MC41XCIgd2lkdGg9XCI3ODNcIiBoZWlnaHQ9XCIxOTQ3XCIgcng9XCI0LjVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjOTc0N0ZGXCIgc3Ryb2tlLWRhc2hhcnJheT1cIjEwIDVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXNrIGlkPVwicGF0aC0yLWluc2lkZS0xXzcwN18xMzEwNlwiIGZpbGw9XCJ3aGl0ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0tMTg5IC04OUMtMTg5IC05NS42Mjc0IC0xODMuNjI3IC0xMDEgLTE3NyAtMTAxSDI5NUMzMDEuNjI3IC0xMDEgMzA3IC05NS42Mjc0IDMwNyAtODlWODVDMzA3IDkxLjYyNzQgMzAxLjYyNyA5NyAyOTUgOTdILTE3N0MtMTgzLjYyNyA5NyAtMTg5IDkxLjYyNzQgLTE4OSA4NVYtODlaXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hc2s+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0tMTg5IC04OUMtMTg5IC05NS42Mjc0IC0xODMuNjI3IC0xMDEgLTE3NyAtMTAxSDI5NUMzMDEuNjI3IC0xMDEgMzA3IC05NS42Mjc0IDMwNyAtODlWODVDMzA3IDkxLjYyNzQgMzAxLjYyNyA5NyAyOTUgOTdILTE3N0MtMTgzLjYyNyA5NyAtMTg5IDkxLjYyNzQgLTE4OSA4NVYtODlaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTS0xOTAgLTg5Qy0xOTAgLTk2LjE3OTcgLTE4NC4xOCAtMTAyIC0xNzcgLTEwMkgyOTRDMzAxLjE4IC0xMDIgMzA3IC05Ni4xNzk3IDMwNyAtODlDMzA3IC05NS4wNzUxIDMwMS42MjcgLTEwMCAyOTUgLTEwMEgtMTc3Qy0xODMuMDc1IC0xMDAgLTE4OCAtOTUuMDc1MSAtMTg4IC04OUgtMTkwWk0zMDcgODVDMzA3IDkyLjE3OTcgMzAxLjE4IDk4IDI5NCA5OEgtMTc3Qy0xODQuMTggOTggLTE5MCA5Mi4xNzk3IC0xOTAgODVILTE4OEMtMTg4IDkxLjA3NTEgLTE4My4wNzUgOTYgLTE3NyA5NkgyOTVDMzAxLjYyNyA5NiAzMDcgOTEuMDc1MSAzMDcgODVaTS0xNzcgOThDLTE4NC4xOCA5OCAtMTkwIDkyLjE3OTcgLTE5MCA4NVYtODlDLTE5MCAtOTYuMTc5NyAtMTg0LjE4IC0xMDIgLTE3NyAtMTAyVi0xMDBDLTE4My4wNzUgLTEwMCAtMTg4IC05NS4wNzUxIC0xODggLTg5Vjg1Qy0xODggOTEuMDc1MSAtMTgzLjA3NSA5NiAtMTc3IDk2Vjk4Wk0zMDcgLTEwMVY5N1YtMTAxWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjRDBENUREXCIgbWFzaz1cInVybCgjcGF0aC0yLWluc2lkZS0xXzcwN18xMzEwNilcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXNrIGlkPVwicGF0aC02LWluc2lkZS0yXzcwN18xMzEwNlwiIGZpbGw9XCJ3aGl0ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk03LjcxMDY0IDcuMzg0NjJDOC4xOTU1MiA3LjM4NDYyIDguNjc1NjUgNy4yODkxMSA5LjEyMzYyIDcuMTAzNTZDOS41NzE1OSA2LjkxOCA5Ljk3ODYzIDYuNjQ2MDMgMTAuMzIxNSA2LjMwMzE2QzEwLjY2NDQgNS45NjAzIDEwLjkzNjMgNS41NTMyNiAxMS4xMjE5IDUuMTA1MjlDMTEuMzA3NCA0LjY1NzMyIDExLjQwMjkgNC4xNzcxOSAxMS40MDI5IDMuNjkyMzFDMTEuNDAyOSAzLjIwNzQzIDExLjMwNzQgMi43MjcyOSAxMS4xMjE5IDIuMjc5MzJDMTAuOTM2MyAxLjgzMTM1IDEwLjY2NDQgMS40MjQzMSAxMC4zMjE1IDEuMDgxNDVDOS45Nzg2MyAwLjczODU5IDkuNTcxNTkgMC40NjY2MTYgOS4xMjM2MiAwLjI4MTA2QzguNjc1NjUgMC4wOTU1MDQzIDguMTk1NTIgLTcuMjI1MjllLTA5IDcuNzEwNjQgMEM2LjczMTM4IDEuNDU5MjFlLTA4IDUuNzkyMjIgMC4zODkwMSA1LjA5OTc4IDEuMDgxNDVDNC40MDczNCAxLjc3Mzg5IDQuMDE4MzMgMi43MTMwNSA0LjAxODMzIDMuNjkyMzFDNC4wMTgzMyA0LjY3MTU3IDQuNDA3MzQgNS42MTA3MiA1LjA5OTc4IDYuMzAzMTZDNS43OTIyMiA2Ljk5NTYxIDYuNzMxMzggNy4zODQ2MiA3LjcxMDY0IDcuMzg0NjJaTTE4Ljc4NzYgNy4zODQ2MkMxOS4yNzI0IDcuMzg0NjIgMTkuNzUyNiA3LjI4OTExIDIwLjIwMDUgNy4xMDM1NkMyMC42NDg1IDYuOTE4IDIxLjA1NTYgNi42NDYwMyAyMS4zOTg0IDYuMzAzMTZDMjEuNzQxMyA1Ljk2MDMgMjIuMDEzMyA1LjU1MzI2IDIyLjE5ODggNS4xMDUyOUMyMi4zODQ0IDQuNjU3MzIgMjIuNDc5OSA0LjE3NzE5IDIyLjQ3OTkgMy42OTIzMUMyMi40Nzk5IDMuMjA3NDMgMjIuMzg0NCAyLjcyNzI5IDIyLjE5ODggMi4yNzkzMkMyMi4wMTMzIDEuODMxMzUgMjEuNzQxMyAxLjQyNDMxIDIxLjM5ODQgMS4wODE0NUMyMS4wNTU2IDAuNzM4NTkgMjAuNjQ4NSAwLjQ2NjYxNiAyMC4yMDA1IDAuMjgxMDZDMTkuNzUyNiAwLjA5NTUwNDMgMTkuMjcyNCAtNy4yMjUyOWUtMDkgMTguNzg3NiAwQzE3LjgwODMgMS40NTkyMWUtMDggMTYuODY5MSAwLjM4OTAxIDE2LjE3NjcgMS4wODE0NUMxNS40ODQzIDEuNzczODkgMTUuMDk1MyAyLjcxMzA1IDE1LjA5NTMgMy42OTIzMUMxNS4wOTUzIDQuNjcxNTcgMTUuNDg0MyA1LjYxMDcyIDE2LjE3NjcgNi4zMDMxNkMxNi44NjkxIDYuOTk1NjEgMTcuODA4MyA3LjM4NDYyIDE4Ljc4NzYgNy4zODQ2MlpNMC45NDE0MDYgMTAuNzM2QzAuOTQxNDA2IDEwLjQ1NzUgMC45OTYyNTggMTAuMTgxOCAxLjEwMjgzIDkuOTI0NDhDMS4yMDk0IDkuNjY3MTkgMS4zNjU2IDkuNDMzNDIgMS41NjI1MiA5LjIzNjVDMS43NTk0NCA5LjAzOTU4IDEuOTkzMjEgOC44ODMzOCAyLjI1MDUgOC43NzY4MUMyLjUwNzc4IDguNjcwMjQgMi43ODM1NCA4LjYxNTM5IDMuMDYyMDIgOC42MTUzOUg4Ljk4NDQ4QzguNTUxNjkgOS4zNjM0NSA4LjMyNDUyIDEwLjIxMjcgOC4zMjYwMiAxMS4wNzY5QzguMzI1MTkgMTEuNzc1NSA4LjQ3MzQxIDEyLjQ2NjIgOC43NjA3OSAxMy4xMDI5QzkuMDQ4MTYgMTMuNzM5NiA5LjQ2ODA3IDE0LjMwNzcgOS45OTI0OCAxNC43NjkySDguNjAwNDhDOC4wMTQxOCAxNC43Njg3IDcuNDM4MDMgMTQuOTIyMiA2LjkyOTY5IDE1LjIxNDRDNi40MjEzNCAxNS41MDY1IDUuOTk4NjQgMTUuOTI3IDUuNzAzODcgMTYuNDMzOEMzLjcyMTEgMTYuMDQ0OSAyLjUxNjE4IDE1LjA3ODIgMS44MTQ2NCAxMy45OTJDMC45NDE0MDYgMTIuNjQgMC45NDE0MDYgMTEuMjQzMSAwLjk0MTQwNiAxMS4wMDEyVjEwLjczNlpNMTcuODk3NyAxNC43NjkyQzE4LjQ4NCAxNC43Njg3IDE5LjA2MDIgMTQuOTIyMiAxOS41Njg1IDE1LjIxNDRDMjAuMDc2OSAxNS41MDY1IDIwLjQ5OTYgMTUuOTI3IDIwLjc5NDMgMTYuNDMzOEMyMi43NzcxIDE2LjA0NDkgMjMuOTgyIDE1LjA3ODIgMjQuNjgzNiAxMy45OTJDMjUuNTU2OCAxMi42NCAyNS41NTY4IDExLjI0MzEgMjUuNTU2OCAxMS4wMDEyVjEwLjczNjZDMjUuNTU2OSAxMC40NTgxIDI1LjUwMjEgMTAuMTgyMyAyNS4zOTU1IDkuOTI0OUMyNS4yODkgOS42Njc1NSAyNS4xMzI4IDkuNDMzNyAyNC45MzU5IDkuMjM2NzJDMjQuNzM5IDkuMDM5NzMgMjQuNTA1MiA4Ljg4MzQ4IDI0LjI0NzggOC43NzY4N0MyMy45OTA1IDguNjcwMjYgMjMuNzE0NyA4LjYxNTM5IDIzLjQzNjIgOC42MTUzOUgxNy41MTM3QzE3Ljk0NjUgOS4zNjM0NSAxOC4xNzM3IDEwLjIxMjcgMTguMTcyMiAxMS4wNzY5QzE4LjE3MyAxMS43NzU1IDE4LjAyNDggMTIuNDY2MiAxNy43Mzc0IDEzLjEwMjlDMTcuNDUgMTMuNzM5NiAxNy4wMzAxIDE0LjMwNzcgMTYuNTA1NyAxNC43NjkySDE3Ljg5NzdaTTE2Ljk0MTQgMTEuMDc2OUMxNi45NDE0IDEyLjA1NjIgMTYuNTUyNCAxMi45OTUzIDE1Ljg2IDEzLjY4NzhDMTUuMTY3NSAxNC4zODAyIDE0LjIyODQgMTQuNzY5MiAxMy4yNDkxIDE0Ljc2OTJDMTIuMjY5OCAxNC43NjkyIDExLjMzMDcgMTQuMzgwMiAxMC42MzgyIDEzLjY4NzhDOS45NDU4IDEyLjk5NTMgOS41NTY3OSAxMi4wNTYyIDkuNTU2NzkgMTEuMDc2OUM5LjU1Njc5IDEwLjA5NzcgOS45NDU4IDkuMTU4NTEgMTAuNjM4MiA4LjQ2NjA3QzExLjMzMDcgNy43NzM2MyAxMi4yNjk4IDcuMzg0NjIgMTMuMjQ5MSA3LjM4NDYyQzE0LjIyODQgNy4zODQ2MiAxNS4xNjc1IDcuNzczNjMgMTUuODYgOC40NjYwN0MxNi41NTI0IDkuMTU4NTEgMTYuOTQxNCAxMC4wOTc3IDE2Ljk0MTQgMTEuMDc2OVpNNi40Nzk4NyAxOC4xMjA2QzYuNDc5ODcgMTcuNTU4MiA2LjcwMzI5IDE3LjAxODggNy4xMDA5OCAxNi42MjExQzcuNDk4NjcgMTYuMjIzNCA4LjAzODA2IDE2IDguNjAwNDggMTZIMTcuODk3N0MxOC40NjAxIDE2IDE4Ljk5OTUgMTYuMjIzNCAxOS4zOTcyIDE2LjYyMTFDMTkuNzk0OSAxNy4wMTg4IDIwLjAxODMgMTcuNTU4MiAyMC4wMTgzIDE4LjEyMDZWMTguMzg1OEMyMC4wMTgzIDE4LjYyODMgMjAuMDE4MyAyMC4wMjQ2IDE5LjE0NTEgMjEuMzc2NkMxOC4yMzI1IDIyLjc4OTUgMTYuNDY5NCAyNCAxMy4yNDkxIDI0QzEwLjAyODggMjQgOC4yNjU3MSAyMi43ODk1IDcuMzUzMSAyMS4zNzY2QzYuNDc5ODcgMjAuMDI0NiA2LjQ3OTg3IDE4LjYyNzcgNi40Nzk4NyAxOC4zODU4VjE4LjEyMDZaXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hc2s+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk03LjcxMDY0IDcuMzg0NjJDOC4xOTU1MiA3LjM4NDYyIDguNjc1NjUgNy4yODkxMSA5LjEyMzYyIDcuMTAzNTZDOS41NzE1OSA2LjkxOCA5Ljk3ODYzIDYuNjQ2MDMgMTAuMzIxNSA2LjMwMzE2QzEwLjY2NDQgNS45NjAzIDEwLjkzNjMgNS41NTMyNiAxMS4xMjE5IDUuMTA1MjlDMTEuMzA3NCA0LjY1NzMyIDExLjQwMjkgNC4xNzcxOSAxMS40MDI5IDMuNjkyMzFDMTEuNDAyOSAzLjIwNzQzIDExLjMwNzQgMi43MjcyOSAxMS4xMjE5IDIuMjc5MzJDMTAuOTM2MyAxLjgzMTM1IDEwLjY2NDQgMS40MjQzMSAxMC4zMjE1IDEuMDgxNDVDOS45Nzg2MyAwLjczODU5IDkuNTcxNTkgMC40NjY2MTYgOS4xMjM2MiAwLjI4MTA2QzguNjc1NjUgMC4wOTU1MDQzIDguMTk1NTIgLTcuMjI1MjllLTA5IDcuNzEwNjQgMEM2LjczMTM4IDEuNDU5MjFlLTA4IDUuNzkyMjIgMC4zODkwMSA1LjA5OTc4IDEuMDgxNDVDNC40MDczNCAxLjc3Mzg5IDQuMDE4MzMgMi43MTMwNSA0LjAxODMzIDMuNjkyMzFDNC4wMTgzMyA0LjY3MTU3IDQuNDA3MzQgNS42MTA3MiA1LjA5OTc4IDYuMzAzMTZDNS43OTIyMiA2Ljk5NTYxIDYuNzMxMzggNy4zODQ2MiA3LjcxMDY0IDcuMzg0NjJaTTE4Ljc4NzYgNy4zODQ2MkMxOS4yNzI0IDcuMzg0NjIgMTkuNzUyNiA3LjI4OTExIDIwLjIwMDUgNy4xMDM1NkMyMC42NDg1IDYuOTE4IDIxLjA1NTYgNi42NDYwMyAyMS4zOTg0IDYuMzAzMTZDMjEuNzQxMyA1Ljk2MDMgMjIuMDEzMyA1LjU1MzI2IDIyLjE5ODggNS4xMDUyOUMyMi4zODQ0IDQuNjU3MzIgMjIuNDc5OSA0LjE3NzE5IDIyLjQ3OTkgMy42OTIzMUMyMi40Nzk5IDMuMjA3NDMgMjIuMzg0NCAyLjcyNzI5IDIyLjE5ODggMi4yNzkzMkMyMi4wMTMzIDEuODMxMzUgMjEuNzQxMyAxLjQyNDMxIDIxLjM5ODQgMS4wODE0NUMyMS4wNTU2IDAuNzM4NTkgMjAuNjQ4NSAwLjQ2NjYxNiAyMC4yMDA1IDAuMjgxMDZDMTkuNzUyNiAwLjA5NTUwNDMgMTkuMjcyNCAtNy4yMjUyOWUtMDkgMTguNzg3NiAwQzE3LjgwODMgMS40NTkyMWUtMDggMTYuODY5MSAwLjM4OTAxIDE2LjE3NjcgMS4wODE0NUMxNS40ODQzIDEuNzczODkgMTUuMDk1MyAyLjcxMzA1IDE1LjA5NTMgMy42OTIzMUMxNS4wOTUzIDQuNjcxNTcgMTUuNDg0MyA1LjYxMDcyIDE2LjE3NjcgNi4zMDMxNkMxNi44NjkxIDYuOTk1NjEgMTcuODA4MyA3LjM4NDYyIDE4Ljc4NzYgNy4zODQ2MlpNMC45NDE0MDYgMTAuNzM2QzAuOTQxNDA2IDEwLjQ1NzUgMC45OTYyNTggMTAuMTgxOCAxLjEwMjgzIDkuOTI0NDhDMS4yMDk0IDkuNjY3MTkgMS4zNjU2IDkuNDMzNDIgMS41NjI1MiA5LjIzNjVDMS43NTk0NCA5LjAzOTU4IDEuOTkzMjEgOC44ODMzOCAyLjI1MDUgOC43NzY4MUMyLjUwNzc4IDguNjcwMjQgMi43ODM1NCA4LjYxNTM5IDMuMDYyMDIgOC42MTUzOUg4Ljk4NDQ4QzguNTUxNjkgOS4zNjM0NSA4LjMyNDUyIDEwLjIxMjcgOC4zMjYwMiAxMS4wNzY5QzguMzI1MTkgMTEuNzc1NSA4LjQ3MzQxIDEyLjQ2NjIgOC43NjA3OSAxMy4xMDI5QzkuMDQ4MTYgMTMuNzM5NiA5LjQ2ODA3IDE0LjMwNzcgOS45OTI0OCAxNC43NjkySDguNjAwNDhDOC4wMTQxOCAxNC43Njg3IDcuNDM4MDMgMTQuOTIyMiA2LjkyOTY5IDE1LjIxNDRDNi40MjEzNCAxNS41MDY1IDUuOTk4NjQgMTUuOTI3IDUuNzAzODcgMTYuNDMzOEMzLjcyMTEgMTYuMDQ0OSAyLjUxNjE4IDE1LjA3ODIgMS44MTQ2NCAxMy45OTJDMC45NDE0MDYgMTIuNjQgMC45NDE0MDYgMTEuMjQzMSAwLjk0MTQwNiAxMS4wMDEyVjEwLjczNlpNMTcuODk3NyAxNC43NjkyQzE4LjQ4NCAxNC43Njg3IDE5LjA2MDIgMTQuOTIyMiAxOS41Njg1IDE1LjIxNDRDMjAuMDc2OSAxNS41MDY1IDIwLjQ5OTYgMTUuOTI3IDIwLjc5NDMgMTYuNDMzOEMyMi43NzcxIDE2LjA0NDkgMjMuOTgyIDE1LjA3ODIgMjQuNjgzNiAxMy45OTJDMjUuNTU2OCAxMi42NCAyNS41NTY4IDExLjI0MzEgMjUuNTU2OCAxMS4wMDEyVjEwLjczNjZDMjUuNTU2OSAxMC40NTgxIDI1LjUwMjEgMTAuMTgyMyAyNS4zOTU1IDkuOTI0OUMyNS4yODkgOS42Njc1NSAyNS4xMzI4IDkuNDMzNyAyNC45MzU5IDkuMjM2NzJDMjQuNzM5IDkuMDM5NzMgMjQuNTA1MiA4Ljg4MzQ4IDI0LjI0NzggOC43NzY4N0MyMy45OTA1IDguNjcwMjYgMjMuNzE0NyA4LjYxNTM5IDIzLjQzNjIgOC42MTUzOUgxNy41MTM3QzE3Ljk0NjUgOS4zNjM0NSAxOC4xNzM3IDEwLjIxMjcgMTguMTcyMiAxMS4wNzY5QzE4LjE3MyAxMS43NzU1IDE4LjAyNDggMTIuNDY2MiAxNy43Mzc0IDEzLjEwMjlDMTcuNDUgMTMuNzM5NiAxNy4wMzAxIDE0LjMwNzcgMTYuNTA1NyAxNC43NjkySDE3Ljg5NzdaTTE2Ljk0MTQgMTEuMDc2OUMxNi45NDE0IDEyLjA1NjIgMTYuNTUyNCAxMi45OTUzIDE1Ljg2IDEzLjY4NzhDMTUuMTY3NSAxNC4zODAyIDE0LjIyODQgMTQuNzY5MiAxMy4yNDkxIDE0Ljc2OTJDMTIuMjY5OCAxNC43NjkyIDExLjMzMDcgMTQuMzgwMiAxMC42MzgyIDEzLjY4NzhDOS45NDU4IDEyLjk5NTMgOS41NTY3OSAxMi4wNTYyIDkuNTU2NzkgMTEuMDc2OUM5LjU1Njc5IDEwLjA5NzcgOS45NDU4IDkuMTU4NTEgMTAuNjM4MiA4LjQ2NjA3QzExLjMzMDcgNy43NzM2MyAxMi4yNjk4IDcuMzg0NjIgMTMuMjQ5MSA3LjM4NDYyQzE0LjIyODQgNy4zODQ2MiAxNS4xNjc1IDcuNzczNjMgMTUuODYgOC40NjYwN0MxNi41NTI0IDkuMTU4NTEgMTYuOTQxNCAxMC4wOTc3IDE2Ljk0MTQgMTEuMDc2OVpNNi40Nzk4NyAxOC4xMjA2QzYuNDc5ODcgMTcuNTU4MiA2LjcwMzI5IDE3LjAxODggNy4xMDA5OCAxNi42MjExQzcuNDk4NjcgMTYuMjIzNCA4LjAzODA2IDE2IDguNjAwNDggMTZIMTcuODk3N0MxOC40NjAxIDE2IDE4Ljk5OTUgMTYuMjIzNCAxOS4zOTcyIDE2LjYyMTFDMTkuNzk0OSAxNy4wMTg4IDIwLjAxODMgMTcuNTU4MiAyMC4wMTgzIDE4LjEyMDZWMTguMzg1OEMyMC4wMTgzIDE4LjYyODMgMjAuMDE4MyAyMC4wMjQ2IDE5LjE0NTEgMjEuMzc2NkMxOC4yMzI1IDIyLjc4OTUgMTYuNDY5NCAyNCAxMy4yNDkxIDI0QzEwLjAyODggMjQgOC4yNjU3MSAyMi43ODk1IDcuMzUzMSAyMS4zNzY2QzYuNDc5ODcgMjAuMDI0NiA2LjQ3OTg3IDE4LjYyNzcgNi40Nzk4NyAxOC4zODU4VjE4LjEyMDZaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXNrPVwidXJsKCNwYXRoLTYtaW5zaWRlLTJfNzA3XzEzMTA2KVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/LnBvdGVudGlhbEJ1eWVyc0NhcmQ/Lmdyb3VwQ291bnQgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8ucG90ZW50aWFsQnV5ZXJzQ2FyZD8uZ3JvdXBDb3VudC50b0xvY2FsZVN0cmluZygnZW4tSU4nKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5Hcm91cDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBteS01IG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzIDJMMyAxNEgxMkwxMSAyMkwyMSAxMEgxMkwxMyAyWlwiIHN0cm9rZT1cIiM5OEEyQjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8ucG90ZW50aWFsQnV5ZXJzQ2FyZD8ubW9zdENvbW1vbkFnZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5wb3RlbnRpYWxCdXllcnNDYXJkPy5tb3N0Q29tbW9uQWdlIDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5Nb3N0IENvbW1vbiBBZ2U8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNSBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMyAyTDMgMTRIMTJMMTEgMjJMMjEgMTBIMTJMMTMgMlpcIiBzdHJva2U9XCIjOThBMkIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/LnBvdGVudGlhbEJ1eWVyc0NhcmQ/Lm1hbGVSYXRlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/LnBvdGVudGlhbEJ1eWVyc0NhcmQ/Lm1hbGVSYXRlIDonLS0nfX0gJVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPk1hbGU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/LnBvdGVudGlhbEJ1eWVyc0NhcmQ/LmZlbWFsZVJhdGUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldE92ZXJhbGxDYXJkRGF0YT8ucG90ZW50aWFsQnV5ZXJzQ2FyZD8uZmVtYWxlUmF0ZSA6Jy0tJ319ICVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5GZW1hbGU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2VsZWN0ZWRUYWIgPT09J21pc3NlZE9wcG9ydHVuaXR5J1wiIGNsYXNzPVwibGVmdC1iYXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b3AtaGVhZGVyIHRleHQtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtYmFyLWNvdW50XCIgW25nU3R5bGVdPVwie1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1zaXplJzogKGdldE92ZXJhbGxDYXJkRGF0YT8ubWlzc2VkT3Bwb3J0dW5pdHlDYXJkPy5taXNzZWRPcHBvcnR1bml0eUNvdW50LnRvTG9jYWxlU3RyaW5nKCk/Lmxlbmd0aCA+IDUgPyAnMjRweCcgOiAnMzZweCcpIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVwiPnt7Z2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/Lm1pc3NlZE9wcG9ydHVuaXR5Q291bnQgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FyZD8ubWlzc2VkT3Bwb3J0dW5pdHlDb3VudC50b0xvY2FsZVN0cmluZygnZW4tSU4nKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Jy0tJ319PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtYmFyLXRpdGxlXCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1MicgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZWF0dXJlQ29uZmlnPy5taXNzZWRPcHBvcnR1bml0eUZyb20udmFsdWUrJyAtICcrXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/Lm1pc3NlZE9wcG9ydHVuaXR5VG8udmFsdWUgKyAnIG1pbnMnIDonTWlzc2VkIG9wcG9ydHVuaXR5J319IENvdW50XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMgMkwzIDE0SDEyTDExIDIyTDIxIDEwSDEyTDEzIDJaXCIgc3Ryb2tlPVwiIzk4QTJCM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/Lm1pc3NlZE9wcG9ydHVuaXR5UmF0ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/Lm1pc3NlZE9wcG9ydHVuaXR5UmF0ZSA6Jy0tJ319JVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPnt7aGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZWF0dXJlQ29uZmlnPy5taXNzZWRPcHBvcnR1bml0eUZyb20udmFsdWUrICcgLSAnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgK2ZlYXR1cmVDb25maWc/Lm1pc3NlZE9wcG9ydHVuaXR5VG8udmFsdWUgKyAnIG1pbnMnIDonTWlzc2VkIG9wcG9ydHVuaXR5J319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmF0ZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSc0NTInXCIgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMgMkwzIDE0SDEyTDExIDIyTDIxIDEwSDEyTDEzIDJaXCIgc3Ryb2tlPVwiIzk4QTJCM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2FyZC1sYWJlbCBoZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBnZXRPdmVyYWxsQ2FyZERhdGE/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FyZD8uY3VycmVuY3lcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19PC9zcGFuPiZuYnNwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/LnBvdGVudGlhbFJldmVudWVMb3NzID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChnZXRPdmVyYWxsQ2FyZERhdGE/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FyZD8ucG90ZW50aWFsUmV2ZW51ZUxvc3MgfFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVtYmVyKSA6Jy0tJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIiBbbmdTdHlsZV09XCJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXNpemUnOiAoZ2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/LnBvdGVudGlhbFJldmVudWVMb3NzLnRvTG9jYWxlU3RyaW5nKCk/Lmxlbmd0aCA+IDggPyAnMTZweCcgOiAnMThweCcpfVwiPjxzcGFuIGNsYXNzPVwibWUtMVwiICpuZ0lmPVwiZ2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/LmN1cnJlbmN5ID09PSdpbnInXCI+4oK5PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWUtMVwiICpuZ0lmPVwiZ2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/LmN1cnJlbmN5ID09PSdkb2xsYXInXCI+JDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1lLTFcIiAqbmdJZj1cImdldE92ZXJhbGxDYXJkRGF0YT8ubWlzc2VkT3Bwb3J0dW5pdHlDYXJkPy5jdXJyZW5jeSA9PT0nYWVkJ1wiPtivLtilPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/LnBvdGVudGlhbFJldmVudWVMb3NzID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FyZD8ucG90ZW50aWFsUmV2ZW51ZUxvc3MudG9Mb2NhbGVTdHJpbmcoJ2VuLUlOJykgOictLSd9fTwvZGl2Pi0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5Qb3RlbnRpYWwgUmV2ZW51ZSBMb3NzIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjAgMjFWMTlDMjAgMTcuOTM5MSAxOS41Nzg2IDE2LjkyMTcgMTguODI4NCAxNi4xNzE2QzE4LjA3ODMgMTUuNDIxNCAxNy4wNjA5IDE1IDE2IDE1SDhDNi45MzkxMyAxNSA1LjkyMTcyIDE1LjQyMTQgNS4xNzE1NyAxNi4xNzE2QzQuNDIxNDMgMTYuOTIxNyA0IDE3LjkzOTEgNCAxOVYyMU0xNiA3QzE2IDkuMjA5MTQgMTQuMjA5MSAxMSAxMiAxMUM5Ljc5MDg2IDExIDggOS4yMDkxNCA4IDdDOCA0Ljc5MDg2IDkuNzkwODYgMyAxMiAzQzE0LjIwOTEgMyAxNiA0Ljc5MDg2IDE2IDdaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMSBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/LnNpbmdsZUNvdW50ID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FyZD8uc2luZ2xlQ291bnQudG9Mb2NhbGVTdHJpbmcoJ2VuLUlOJyk6Jy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+U2luZ2xlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBteC0yIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjVcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNSAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk03LjY1OTE4IDE2Ljc1SDE2Ljk1NjFDMTcuMzE5NiAxNi43NSAxNy42Njg3IDE2Ljg5NDMgMTcuOTI1OCAxNy4xNTE0QzE4LjE4MjggMTcuNDA4NCAxOC4zMjcxIDE3Ljc1NzYgMTguMzI3MSAxOC4xMjExVjE4LjM4NTdDMTguMzI3MSAxOC41NzkzIDE4LjMyNTUgMTkuNjU3OSAxNy43MDYxIDIwLjc1MUwxNy41NzMyIDIwLjk2OTdDMTYuODE5NCAyMi4xMzY3IDE1LjMxMzcgMjMuMjUgMTIuMzA3NiAyMy4yNUM5LjQ4OTM2IDIzLjI1IDcuOTg5OTYgMjIuMjcxNCA3LjE5MjM4IDIxLjE4NzVMNy4wNDE5OSAyMC45Njk3QzYuMjkwMjcgMTkuODA1OSA2LjI4ODA5IDE4LjU5MTYgNi4yODgwOSAxOC4zODU3VjE4LjEyMTFDNi4yODgwOSAxNy44MDMxIDYuMzk4ODQgMTcuNDk1OCA2LjU5ODYzIDE3LjI1Mkw2LjY4OTQ1IDE3LjE1MTRDNi45NDY0OSAxNi44OTQzIDcuMjk1NjcgMTYuNzUgNy42NTkxOCAxNi43NVpNMi4xMjEwOSA5LjM2NTIzSDYuODk5NDFDNi43MjUwMSA5LjkxNjUyIDYuNjMzOTcgMTAuNDkzMSA2LjYzNDc3IDExLjA3NjJDNi42MzM5NSAxMS43ODA5IDYuNzY0ODEgMTIuNDc4NiA3LjAxOTUzIDEzLjEzMzhMNy4xMzU3NCAxMy40MTExQzcuMjMxMjEgMTMuNjIyNyA3LjM0MDg2IDEzLjgyNzEgNy40NjA5NCAxNC4wMjQ0QzYuOTAxNTQgMTQuMDUxMSA2LjM1MzkgMTQuMTkyIDUuODUxNTYgMTQuNDM4NUw1LjYxNDI2IDE0LjU2NDVDNS4xNTcxNiAxNC44MjcyIDQuNzU3IDE1LjE3NSA0LjQzMzU5IDE1LjU4NjlDMy4wMzY3NCAxNS4yMTU1IDIuMTYzNjEgMTQuNTE2NiAxLjYxOTE0IDEzLjc1NDlMMS41MDI5MyAxMy41ODVDMC43NTEzNTggMTIuNDIxMiAwLjc1IDExLjIwNjkgMC43NSAxMS4wMDFWMTAuNzM2M0MwLjc1IDEwLjYwMTIgMC43Njk1MTMgMTAuNDY2NyAwLjgwODU5NCAxMC4zMzc5TDAuODU0NDkyIDEwLjIxMTlDMC45MDYxNTQgMTAuMDg3MiAwLjk3NTIyNSA5Ljk3MDIgMS4wNjA1NSA5Ljg2NjIxTDEuMTUxMzcgOS43NjY2QzEuMjQ2ODUgOS42NzExMyAxLjM1NTk2IDkuNTkwNzYgMS40NzQ2MSA5LjUyNzM0TDEuNTk1NyA5LjQ2OTczQzEuNzYxOTkgOS40MDA4NSAxLjk0MTEgOS4zNjUyMyAyLjEyMTA5IDkuMzY1MjNaTTIyLjQ5NTEgOS4zNjUyM0MyMi42MzAxIDkuMzY1MjcgMjIuNzYzOSA5LjM4NTc3IDIyLjg5MjYgOS40MjQ4TDIzLjAxOTUgOS40Njk3M0MyMy4xNDQzIDkuNTIxNDIgMjMuMjYwMyA5LjU5MTQgMjMuMzY0MyA5LjY3Njc2TDIzLjQ2MzkgOS43NjY2QzIzLjU1OTIgOS44NjIwMSAyMy42Mzk3IDkuOTcxMzIgMjMuNzAzMSAxMC4wODk4TDIzLjc2MDcgMTAuMjExOUMyMy44Mjk2IDEwLjM3ODIgMjMuODY1MyAxMC41NTYzIDIzLjg2NTIgMTAuNzM2M1YxMS4wMDFDMjMuODY1MiAxMS4xOTQgMjMuODYzNyAxMi4yNzMxIDIzLjI0NDEgMTMuMzY2MkwyMy4xMTIzIDEzLjU4NUMyMi41Nzg1IDE0LjQxMTQgMjEuNjgxNSAxNS4xODgxIDIwLjE4MDcgMTUuNTg2OUMxOS44NTczIDE1LjE3NTIgMTkuNDU3OSAxNC44MjcxIDE5LjAwMSAxNC41NjQ1QzE4LjQzNiAxNC4yMzk4IDE3LjgwMjQgMTQuMDU1MiAxNy4xNTMzIDE0LjAyNDRDMTcuMjIxNSAxMy45MTI0IDE3LjI4ODMgMTMuNzk5NCAxNy4zNDg2IDEzLjY4MjZMMTcuNDc5NSAxMy40MTExQzE3Ljc2OTIgMTIuNzY5MSAxNy45MzYgMTIuMDc5NiAxNy45NzI3IDExLjM3NzlMMTcuOTgwNSAxMS4wNzYyQzE3Ljk4MTMgMTAuNDkzMSAxNy44OTAyIDkuOTE2NTMgMTcuNzE1OCA5LjM2NTIzSDIyLjQ5NTFaTTEyLjMwNzYgOC4xMzQ3N0MxMi45OTA1IDguMTM0NzcgMTMuNjQ5MyA4LjM3MTY5IDE0LjE3MjkgOC44MDA3OEwxNC4zODg3IDguOTk2MDlDMTQuOTQwNCA5LjU0Nzg4IDE1LjI1IDEwLjI5NjggMTUuMjUgMTEuMDc3MUMxNS4yNDk5IDExLjc1OTcgMTUuMDEyOCAxMi40MTc5IDE0LjU4NCAxMi45NDE0TDE0LjM4ODcgMTMuMTU3MkMxMy44MzY5IDEzLjcwOSAxMy4wODggMTQuMDE5NSAxMi4zMDc2IDE0LjAxOTVDMTEuNjI0OSAxNC4wMTk1IDEwLjk2NjkgMTMuNzgxNSAxMC40NDM0IDEzLjM1MjVMMTAuMjI3NSAxMy4xNTcyQzkuNjc1OCAxMi42MDU1IDkuMzY1MjkgMTEuODU3NCA5LjM2NTIzIDExLjA3NzFDOS4zNjUyMyAxMC4zOTQ0IDkuNjAyMjkgOS43MzU0OCAxMC4wMzEyIDkuMjExOTFMMTAuMjI3NSA4Ljk5NjA5QzEwLjc3OTMgOC40NDQ1MyAxMS41Mjc1IDguMTM0NzkgMTIuMzA3NiA4LjEzNDc3Wk02Ljc2OTUzIDAuNzVDNy4wNTkyNyAwLjc1MDAyOSA3LjM0Njc4IDAuNzkzMTcgNy42MjMwNSAwLjg3Njk1M0w3Ljg5NTUxIDAuOTczNjMzQzguMTYzMyAxLjA4NDU3IDguNDEyNDkgMS4yMzQ3NSA4LjYzNTc0IDEuNDE3OTdMOC44NDk2MSAxLjYxMTMzQzkuMDU0NDkgMS44MTYyMSA5LjIyODEzIDIuMDUwMSA5LjM2NDI2IDIuMzA0NjlMOS40ODczIDIuNTY2NDFDOS42MzUxNyAyLjkyMzM4IDkuNzExOTEgMy4zMDU5OSA5LjcxMTkxIDMuNjkyMzhDOS43MTE5IDQuMDc4NzUgOS42MzUxNiA0LjQ2MTQgOS40ODczIDQuODE4MzZDOS4zNzY0MiA1LjA4NjAxIDkuMjI3MDQgNS4zMzU0MyA5LjA0Mzk1IDUuNTU4NTlMOC44NDk2MSA1Ljc3MjQ2QzguNTc2NDEgNi4wNDU2NiA4LjI1MjQ1IDYuMjYzMjcgNy44OTU1MSA2LjQxMTEzQzcuNTM4NjIgNi41NTg5NiA3LjE1NTgyIDYuNjM0NzMgNi43Njk1MyA2LjYzNDc3TDYuNDc4NTIgNi42MjAxMkM1LjkwMTE5IDYuNTYyODEgNS4zNTMwOCA2LjMzNjQzIDQuOTA0MyA1Ljk2ODc1TDQuNjg4NDggNS43NzI0NkM0LjEzNjg5IDUuMjIwNzIgMy44MjcxNyA0LjQ3MjU2IDMuODI3MTUgMy42OTIzOEMzLjgyNzE1IDMuMDA5NDggNC4wNjQwNiAyLjM1MDc2IDQuNDkzMTYgMS44MjcxNUw0LjY4ODQ4IDEuNjExMzNDNS4xNzEyOSAxLjEyODU2IDUuODA0OTggMC44MzE1MDggNi40Nzg1MiAwLjc2NDY0OEw2Ljc2OTUzIDAuNzVaTTE3Ljg0NTcgMC43NUMxOC4xMzU2IDAuNzUgMTguNDIzOCAwLjc5MzEgMTguNzAwMiAwLjg3Njk1M0wxOC45NzE3IDAuOTczNjMzQzE5LjIzOTYgMS4wODQ2IDE5LjQ4OTYgMS4yMzQ2NyAxOS43MTI5IDEuNDE3OTdMMTkuOTI2OCAxLjYxMTMzQzIwLjEzMTYgMS44MTYxMiAyMC4zMDQzIDIuMDUwMjIgMjAuNDQwNCAyLjMwNDY5TDIwLjU2NDUgMi41NjY0MUMyMC43MTIzIDIuOTIzMzcgMjAuNzg4MSAzLjMwNjAxIDIwLjc4ODEgMy42OTIzOEMyMC43ODgxIDQuMDc4NzUgMjAuNzEyMyA0LjQ2MTQxIDIwLjU2NDUgNC44MTgzNkMyMC40NTM2IDUuMDg2IDIwLjMwNDIgNS4zMzU0MyAyMC4xMjExIDUuNTU4NTlMMTkuOTI2OCA1Ljc3MjQ2QzE5LjY1MzUgNi4wNDU2OCAxOS4zMjg3IDYuMjYzMjcgMTguOTcxNyA2LjQxMTEzQzE4LjYxNDkgNi41NTg4NSAxOC4yMzE5IDYuNjM0NzcgMTcuODQ1NyA2LjYzNDc3TDE3LjU1NTcgNi42MjAxMkMxNi45NzgzIDYuNTYyODUgMTYuNDMwMyA2LjMzNjQxIDE1Ljk4MTQgNS45Njg3NUwxNS43NjU2IDUuNzcyNDZDMTUuMjE0IDUuMjIwNzEgMTQuOTA0MyA0LjQ3MjYyIDE0LjkwNDMgMy42OTIzOEMxNC45MDQzIDMuMDA5NDMgMTUuMTQxMSAyLjM1MDc3IDE1LjU3MDMgMS44MjcxNUwxNS43NjU2IDEuNjExMzNDMTYuMjQ4NSAxLjEyODU3IDE2Ljg4MjEgMC44MzE0NiAxNy41NTU3IDAuNzY0NjQ4TDE3Ljg0NTcgMC43NVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjOThBMkIzXCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTEgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8ubWlzc2VkT3Bwb3J0dW5pdHlDYXJkPy5ncm91cENvdW50ID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FyZD8uZ3JvdXBDb3VudC50b0xvY2FsZVN0cmluZygnZW4tSU4nKTonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXJcIj5Hcm91cDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMgMkwzIDE0SDEyTDExIDIyTDIxIDEwSDEyTDEzIDJaXCIgc3Ryb2tlPVwiIzk4QTJCM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMSBjYXJkLWxhYmVsIGxlZnQtY2FyZC1jb3VudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7Z2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/Lmxvd0NvbnZlcnNpb25ab25lID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRPdmVyYWxsQ2FyZERhdGE/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FyZD8ubG93Q29udmVyc2lvblpvbmUgOictLSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPkxvdyBDb252ZXJzaW9uIFpvbmU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXktNSBtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMyAyTDMgMTRIMTJMMTEgMjJMMjEgMTBIMTJMMTMgMlpcIiBzdHJva2U9XCIjOThBMkIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FyZD8ubW9zdENvbW1vbkFnZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/Lm1vc3RDb21tb25BZ2UgOictLSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPk1vc3QgQ29tbW9uIEFnZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBteS01IG1lLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtc2hyaW5rLTAgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzIDJMMyAxNEgxMkwxMSAyMkwyMSAxMEgxMkwxMyAyWlwiIHN0cm9rZT1cIiM5OEEyQjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTEgY2FyZC1sYWJlbCBsZWZ0LWNhcmQtY291bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2dldE92ZXJhbGxDYXJkRGF0YT8ubWlzc2VkT3Bwb3J0dW5pdHlDYXJkPy5tYWxlUmF0ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/Lm1hbGVSYXRlIDonLS0nfX0gJVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlclwiPk1hbGU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRPdmVyYWxsQ2FyZERhdGE/Lm1pc3NlZE9wcG9ydHVuaXR5Q2FyZD8uZmVtYWxlUmF0ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0T3ZlcmFsbENhcmREYXRhPy5taXNzZWRPcHBvcnR1bml0eUNhcmQ/LmZlbWFsZVJhdGUgOictLSd9fSAlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyXCI+RmVtYWxlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNlbGVjdGVkVGFiID09PSd0cmFmZmljJyAmJiAhY2hhcnRsb2FkaW5nICYmICFjaGFydE5vRGF0YVwiIGNsYXNzPVwiY29sLW1kLTEwIGgtMTAwIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IHB4LTBcIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbXQtMyBweC0wXCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBib3JkZXItMCBwdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2FyZC1sYWJlbFwiPlRyYWZmaWMgRGVuc2l0eSA8c3ZnIHBsYWNlbWVudD1cInJpZ2h0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmdiVG9vbHRpcD1cIlRyYWZmaWMgYW5hbHlzaXMgZGlzdHJpYnV0aW9uIGFjcm9zcyB0aGUgZGF5c1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zMzUyXzY4OClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk03Ljk5ODcgMTAuNjY2N1Y4LjAwMDA0TTcuOTk4NyA1LjMzMzM3SDguMDA1MzZNMTQuNjY1NCA4LjAwMDA0QzE0LjY2NTQgMTEuNjgxOSAxMS42ODA2IDE0LjY2NjcgNy45OTg3IDE0LjY2NjdDNC4zMTY4IDE0LjY2NjcgMS4zMzIwMyAxMS42ODE5IDEuMzMyMDMgOC4wMDAwNEMxLjMzMjAzIDQuMzE4MTQgNC4zMTY4IDEuMzMzMzcgNy45OTg3IDEuMzMzMzdDMTEuNjgwNiAxLjMzMzM3IDE0LjY2NTQgNC4zMTgxNCAxNC42NjU0IDguMDAwMDRaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjOThBMkIzXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzMzNTJfNjg4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXN1YiBtYi0yXCI+QmFzZWQgb24ge3tnZXREZW5zaXR5RHdlbGxEYXRhPy5mcm9tRGF0ZSB8IGRhdGU6J2RkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTU1NLCB5eXl5J319IOKAkyB7e2dldERlbnNpdHlEd2VsbERhdGE/LnRvRGF0ZSB8IGRhdGU6J2RkIE1NTSwgeXl5eSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10b29sYmFyIHRleHQtbm93cmFwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiIWNoYXJ0bG9hZGluZyAmJiAhY2hhcnROb0RhdGFcIiB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZXhwb3J0RGVuc2l0eSgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tZGVmYXVsdCBwLTMgYnRuLW91dGxpbmUgYnRuLW91dGxpbmUtZGVmYXVsdCByb3VuZGVkLTMgdGV4dC1ub3dyYXAgYm9yZGVyLXZhbFwiPjxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjEyNSAxMy4xMjVIMTYuMzU2M0wxNC43NDM4IDE0Ljc0MzhMMTUuNjI1IDE1LjYyNUwxOC43NSAxMi41TDE1LjYyNSA5LjM3NUwxNC43NDM4IDEwLjI1NjJMMTYuMzU2MyAxMS44NzVIOC4xMjVWMTMuMTI1WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiYmxhY2tcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMy43NSA4Ljc1MDAxVjYuMjUwMDFDMTMuNzUwNSA2LjE2Nzc2IDEzLjczNDcgNi4wODYyMiAxMy43MDM2IDYuMDEwMDdDMTMuNjcyNSA1LjkzMzkyIDEzLjYyNjcgNS44NjQ2NiAxMy41Njg4IDUuODA2MjZMOS4xOTM3NSAxLjQzMTI2QzkuMTM1MzUgMS4zNzMzMyA5LjA2NjA5IDEuMzI3NTEgOC45ODk5NCAxLjI5NjRDOC45MTM3OSAxLjI2NTMgOC44MzIyNSAxLjI0OTUzIDguNzUgMS4yNTAwMUgyLjVDMi4xNjg0OCAxLjI1MDAxIDEuODUwNTQgMS4zODE3MSAxLjYxNjEyIDEuNjE2MTNDMS4zODE3IDEuODUwNTUgMS4yNSAyLjE2ODQ5IDEuMjUgMi41MDAwMVYxNy41QzEuMjUgMTcuODMxNSAxLjM4MTcgMTguMTQ5NSAxLjYxNjEyIDE4LjM4MzlDMS44NTA1NCAxOC42MTgzIDIuMTY4NDggMTguNzUgMi41IDE4Ljc1SDEyLjVDMTIuODMxNSAxOC43NSAxMy4xNDk1IDE4LjYxODMgMTMuMzgzOSAxOC4zODM5QzEzLjYxODMgMTguMTQ5NSAxMy43NSAxNy44MzE1IDEzLjc1IDE3LjVWMTYuMjVIMTIuNVYxNy41SDIuNVYyLjUwMDAxSDcuNVY2LjI1MDAxQzcuNSA2LjU4MTUzIDcuNjMxNyA2Ljg5OTQ3IDcuODY2MTIgNy4xMzM4OUM4LjEwMDU0IDcuMzY4MzEgOC40MTg0OCA3LjUwMDAxIDguNzUgNy41MDAwMUgxMi41VjguNzUwMDFIMTMuNzVaTTguNzUgNi4yNTAwMVYyLjc1NjI2TDEyLjI0MzggNi4yNTAwMUg4Ljc1WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiYmxhY2tcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJ0cmFmZmljSGVhdG1hcENoYXJ0XCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBtdC0zIHB4LTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgYm9yZGVyLTAgcHQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcmQtbGFiZWxcIj5Ed2VsbCBUaW1lIFNwbGl0IDxzdmcgcGxhY2VtZW50PVwicmlnaHRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZ2JUb29sdGlwPVwiVGltZS1kaXN0cmlidXRlZCBmb290ZmFsbCB3aXRoIGRlbW9ncmFwaGljc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zMzUyXzY4OClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk03Ljk5ODcgMTAuNjY2N1Y4LjAwMDA0TTcuOTk4NyA1LjMzMzM3SDguMDA1MzZNMTQuNjY1NCA4LjAwMDA0QzE0LjY2NTQgMTEuNjgxOSAxMS42ODA2IDE0LjY2NjcgNy45OTg3IDE0LjY2NjdDNC4zMTY4IDE0LjY2NjcgMS4zMzIwMyAxMS42ODE5IDEuMzMyMDMgOC4wMDAwNEMxLjMzMjAzIDQuMzE4MTQgNC4zMTY4IDEuMzMzMzcgNy45OTg3IDEuMzMzMzdDMTEuNjgwNiAxLjMzMzM3IDE0LjY2NTQgNC4zMTgxNCAxNC42NjU0IDguMDAwMDRaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjOThBMkIzXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzMzNTJfNjg4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtc3ViIG1iLTJcIj5CYXNlZCBvbiB7e2dldERlbnNpdHlEd2VsbERhdGE/LmZyb21EYXRlIHwgZGF0ZTonZGRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNTU0sIHl5eXknfX0g4oCTIHt7Z2V0RGVuc2l0eUR3ZWxsRGF0YT8udG9EYXRlIHwgZGF0ZTonZGQgTU1NLCB5eXl5J319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10b29sYmFyIHRleHQtbm93cmFwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VsZWN0IGNsYXNzPVwiZm9ybS1zZWxlY3QgZm9ybS1zZWxlY3Qtc20gdy1hdXRvIGRyb3BzZWxlY3RcIiBpZD1cImRhdGVTZWxlY3RcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwib25EYXRlQ2hhbmdlKCRldmVudClcIiBbKG5nTW9kZWwpXT1cImZvb3RmYWxsRGF0ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IGRhdGFzZXQgb2YgdHJhZmZpY0RhdGFcIiBbdmFsdWVdPVwiZGF0YXNldC52YWx1ZVwiPnt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFzZXQubGFiZWwgfX08L29wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIWNoYXJ0RHdlbGxOb0RhdGEgJiYgIWNoYXJ0RHdlbGxsb2FkaW5nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJkd2VsbEJhckNoYXJ0XCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImNoYXJ0RHdlbGxOb0RhdGFcIiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTEyIG10LTIwIG1iLTZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIiBtdC0yMCBjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImltZy1ub2RhdGEtdGFibGVcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGExLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtdGl0bGVcIj5ObyBkYXRhIGZvdW5kPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS1zdWJcIj5UaGVyZSBpcyBubyByZXN1bHQgZm9yIHRoaXMgRHdlbGwgVGltZSBTcGxpdDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhY2hhcnRsb2FkaW5nICYmICFjaGFydE5vRGF0YSAmJiAoc2VsZWN0ZWRUYWIgPT09J2Zvb3RmYWxsJyB8fCBzZWxlY3RlZFRhYiA9PT0nY29udmVyc2lvbicgfHwgc2VsZWN0ZWRUYWIgPT09J2VuZ2FnZXJzJyB8fCBzZWxlY3RlZFRhYiA9PT0nYm91bmNlZCcgfHwgc2VsZWN0ZWRUYWIgPT09J3BvdGVudGlhbEJ1eWVycycgfHwgc2VsZWN0ZWRUYWIgPT09J21pc3NlZE9wcG9ydHVuaXR5JylcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNvbC1tZC0xMCBoLTEwMCByaWdodC1iYXIgYm9yZGVyLTFcIj5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiKGZvb3RmYWxsVmFsdWUgPT09J2Zvb3RmYWxsJyB8fCBmb290ZmFsbFZhbHVlID09PSdjb252ZXJzaW9uJyB8fCBmb290ZmFsbFZhbHVlID09PSdlbmdhZ2VycydcclxuICAgICAgICAgICAgICAgICAgICAgICAgfHwgZm9vdGZhbGxWYWx1ZSA9PT0nbWlzc2VkT3Bwb3J0dW5pdHknIHx8IGZvb3RmYWxsVmFsdWUgPT09J3BvdGVudGlhbEJ1eWVycycgfHwgZm9vdGZhbGxWYWx1ZSA9PT0nYm91bmNlZCcgfHwgZm9vdGZhbGxWYWx1ZSA9PT0nZGVtb2dyYXBoaWMnIHx8IGZvb3RmYWxsVmFsdWUgPT09J2J1eWVyJykgJiYgIWRldGFpbGVkQ2hhcnRzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2VsZWN0ZWRUYWIgIT09J3BvdGVudGlhbEJ1eWVycydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJuYXYgbmF2LXN0cmV0Y2ggbmF2LWxpbmUtdGFiczEgbmF2LWxpbmUtdGFicyBib3JkZXItdHJhbnNwYXJlbnQgZmxleC1ub3dyYXAgbXktMiBteC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz1cIm5hdi1pdGVtIG5hdi1pdGVtMVwiICpuZ0Zvcj1cImxldCBkYXRhc2V0IG9mIGRhdGFzZXRzQ2FyZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25EYXRhc2V0Q2hhbmdlKGRhdGFzZXQudmFsdWUpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBbbmdDbGFzc109XCJmb290ZmFsbFZhbHVlID09PWRhdGFzZXQudmFsdWUgPyAnYWN0aXZlJyA6JydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibmF2LWxpbmsgbmF2LWxpbmsxIGN1cnNvci1wb2ludGVyIG1lLTZcIj57eyBkYXRhc2V0LmxhYmVsIH19PC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8dWwgY2xhc3M9XCJuYXYgbmF2LXRhYnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJuYXYtaXRlbVwiID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9XCJuYXYtbGlua1wiIFtjbGFzcy5hY3RpdmVdPVwic2VsZWN0ZWRUYWIgPT09IGRhdGFzZXQubGFiZWxcIj57eyBkYXRhc2V0LmxhYmVsIH19PC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxzZWxlY3QgY2xhc3M9XCJmb3JtLXNlbGVjdCBmb3JtLXNlbGVjdC1zbSB3LWF1dG8gbS0zIGRyb3BzZWxlY3RcIiBpZD1cImRhdGFzZXRTZWxlY3RcIiBbKG5nTW9kZWwpXT1cImZvb3RmYWxsVmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJvbkRhdGFzZXRDaGFuZ2UoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgZGF0YXNldCBvZiBkYXRhc2V0c1wiIFt2YWx1ZV09XCJkYXRhc2V0LnZhbHVlXCI+e3sgZGF0YXNldC5sYWJlbCB9fTwvb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NlbGVjdD4gIC0tPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtYmFyLXRpdGxlIGZ3LWJvbGQgbXQtNSBtYi0yIG1zLTNcIiAqbmdJZj1cInNlbGVjdGVkVGFiID09PSdwb3RlbnRpYWxCdXllcnMnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tzZWxjdGVkVmFsdWV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1zLTMgdGV4dC1zdWJcIj5CYXNlZCBvbiB7e2hlYWRlckRhdGE/LmRhdGU/LnN0YXJ0RGF0ZSB8IGRhdGU6J2RkIE1NTSwgeXl5eSd9fSDigJNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2hlYWRlckRhdGE/LmRhdGU/LmVuZERhdGUgfCBkYXRlOidkZCBNTU0sIHl5eXknfX0gPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImZvb3RmYWxsVmFsdWUgPT09J2RlbW9ncmFwaGljJyAmJiAhZGV0YWlsZWRDaGFydHNcIiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhZGVtb05vRGF0YSAmJiAhZGVtb2xvYWRpbmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyXCIgaWQ9XCJkZW1vR3JhcGhpY3NcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZGVtb2xvYWRpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInJvdyBsb2FkZXIgIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJkZW1vTm9EYXRhXCIgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImRlbW8taW1nLW5vZGF0YVwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ljb25zL05vZGF0YTEuc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS10aXRsZVwiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXN1YlwiPlRoZXJlIGlzIG5vIHJlc3VsdCBmb3IgdGhpcyBEZW1vZ3JhcGhpYyBBbmFseXNpc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZm9vdGZhbGxWYWx1ZSA9PT0nYnV5ZXInICYmICFkZXRhaWxlZENoYXJ0c1wiIGNsYXNzPVwiY29sLW1kLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFidXllcnNOb0RhdGEgJiYgIWJ1eWVyc2xvYWRpbmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyXCIgaWQ9XCJidXllcnNDaGFydHNcIj48L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImJ1eWVyc2xvYWRpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInJvdyBsb2FkZXIgIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJidXllcnNOb0RhdGFcIiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTEyIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhcmQtYm9keSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiZGVtby1pbWctbm9kYXRhXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvTm9kYXRhMS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXRpdGxlXCI+Tm8gZGF0YSBmb3VuZDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtc3ViXCI+VGhlcmUgaXMgbm8gcmVzdWx0IGZvciB0aGlzIEJ1eWVyIEFuYWx5c2lzPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uICpuZ0lmPVwidGhpcy5vYmpEYXRhVHJhZmZpYy5ub2IgPT09IHRydWUgJiYgc2VsZWN0ZWRUYWIgPT09J2NvbnZlcnNpb24nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyIG10LTMgbXgtM1wiIGlkPVwidGVzdEdyYXBoaWNzXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpYi1wYWdpbmF0aW9uIFtpdGVtc1BlclBhZ2VdPVwicGFnZVNpemVUcmFmZmljQ2FyZFwiIFtjdXJyZW50UGFnZV09XCJvZmZzZXRUcmFmZmljQ2FyZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0b3RhbEl0ZW1zXT1cInRvdGFsSXRlbXNUcmFmZmljQ2FyZFwiIFtwYWdpbmF0aW9uU2l6ZXNdPVwicGFnaW5hdGlvblNpemVzVHJhZmZpY0NhcmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGFnZVNpemVdPVwicGFnZVNpemVUcmFmZmljQ2FyZFwiIChwYWdlQ2hhbmdlKT1cIm9uUGFnZUNoYW5nZVRyYWZmaWNDYXJkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocGFnZVNpemVDaGFuZ2UpPVwib25QYWdlU2l6ZUNoYW5nZVRyYWZmaWNDYXJkKCRldmVudClcIj48L2xpYi1wYWdpbmF0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIih0aGlzLm9iakRhdGFUcmFmZmljLm5vYiA9PT0gdHJ1ZSAmJiBzZWxlY3RlZFRhYiAhPT0nY29udmVyc2lvbicgfHwgdGhpcy5vYmpEYXRhVHJhZmZpYy5ub2IgPT09IGZhbHNlKSBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZm9vdGZhbGxWYWx1ZSA9PT0nZm9vdGZhbGwnIHx8IGZvb3RmYWxsVmFsdWUgPT09J2NvbnZlcnNpb24nIHx8IGZvb3RmYWxsVmFsdWUgPT09J2VuZ2FnZXJzJyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHx8IGZvb3RmYWxsVmFsdWUgPT09J21pc3NlZE9wcG9ydHVuaXR5JyB8fCBmb290ZmFsbFZhbHVlID09PSdwb3RlbnRpYWxCdXllcnMnIHx8IGZvb3RmYWxsVmFsdWUgPT09J2JvdW5jZWQnICYmICFkZXRhaWxlZENoYXJ0c1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2hhcnQtY29udGFpbmVyIHB4LTMgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXJcIiBpZD1cInRlc3RHcmFwaGljc1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGliLXBhZ2luYXRpb24gW2l0ZW1zUGVyUGFnZV09XCJwYWdlU2l6ZVRyYWZmaWNDYXJkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjdXJyZW50UGFnZV09XCJvZmZzZXRUcmFmZmljQ2FyZFwiIFt0b3RhbEl0ZW1zXT1cInRvdGFsSXRlbXNUcmFmZmljQ2FyZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGFnaW5hdGlvblNpemVzXT1cInBhZ2luYXRpb25TaXplc1RyYWZmaWNDYXJkXCIgW3BhZ2VTaXplXT1cInBhZ2VTaXplVHJhZmZpY0NhcmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHBhZ2VDaGFuZ2UpPVwib25QYWdlQ2hhbmdlVHJhZmZpY0NhcmQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocGFnZVNpemVDaGFuZ2UpPVwib25QYWdlU2l6ZUNoYW5nZVRyYWZmaWNDYXJkKCRldmVudClcIj48L2xpYi1wYWdpbmF0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJmb290ZmFsbFZhbHVlID09PSdmb290ZmFsbCcgfHwgZm9vdGZhbGxWYWx1ZSA9PT0nY29udmVyc2lvbicgfHwgZm9vdGZhbGxWYWx1ZSA9PT0nZW5nYWdlcnMnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB8fCBmb290ZmFsbFZhbHVlID09PSdtaXNzZWRPcHBvcnR1bml0eScgfHwgZm9vdGZhbGxWYWx1ZSA9PT0ncG90ZW50aWFsQnV5ZXJzJyB8fCBmb290ZmFsbFZhbHVlID09PSdib3VuY2VkJyAmJiAhZGV0YWlsZWRDaGFydHNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImhlYXRtYXAtY29udGFpbmVyIGVsZW1lbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBhbGlnbi1pdGVtcy1jZW50ZXIgbWItMiBweC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZ3LWJvbGRcIj5Ib3VybHkgRGF0YTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJob3VyLWJ1Y2tldC1kcm9wZG93blwiIG5nYkRyb3Bkb3duIHBsYWNlbWVudD1cImJvdHRvbS1lbmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImhvdXItYnVja2V0LXRvZ2dsZVwiIG5nYkRyb3Bkb3duVG9nZ2xlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj57eyBzZWxlY3RlZEhvdXJCdWNrZXRMYWJlbCB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02IDlsNiA2IDYtNlwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgbmdiRHJvcGRvd25NZW51IGNsYXNzPVwiaG91ci1idWNrZXQtbWVudVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImhvdXItYnVja2V0LWl0ZW1cIiBuZ2JEcm9wZG93bkl0ZW1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBvcHQgb2YgaG91ckJ1Y2tldE9wdGlvbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJvcHQudmFsdWUgPT09IGhvdXJCdWNrZXRWYWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25Ib3VyQnVja2V0Q2hhbmdlKG9wdC52YWx1ZSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IG9wdC5sYWJlbCB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cImhlYXRtYXBjaGFydFwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiAqbmdJZj1cImZvb3RmYWxsVmFsdWUgPT09J2Zvb3RmYWxsJyB8fCBmb290ZmFsbFZhbHVlID09PSdjb252ZXJzaW9uJyB8fCBmb290ZmFsbFZhbHVlID09PSdlbmdhZ2VycydcclxuICAgICAgICAgICAgICAgICAgICAgICAgfHwgZm9vdGZhbGxWYWx1ZSA9PT0nbWlzc2VkT3Bwb3J0dW5pdHknIHx8IGZvb3RmYWxsVmFsdWUgPT09J3BvdGVudGlhbEJ1eWVycycgfHwgZm9vdGZhbGxWYWx1ZSA9PT0nYm91bmNlZCcgJiYgIWRldGFpbGVkQ2hhcnRzXCIgY2xhc3M9XCJjb2wtbWQtOSBjaGFydC1jb250YWluZXIgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiIGlkPVwidGVzdEdyYXBoaWNzXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJmb290ZmFsbFZhbHVlID09PSdmb290ZmFsbCcgfHwgZm9vdGZhbGxWYWx1ZSA9PT0nY29udmVyc2lvbicgfHwgZm9vdGZhbGxWYWx1ZSA9PT0nZW5nYWdlcnMnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHx8IGZvb3RmYWxsVmFsdWUgPT09J21pc3NlZE9wcG9ydHVuaXR5JyB8fCBmb290ZmFsbFZhbHVlID09PSdwb3RlbnRpYWxCdXllcnMnIHx8IGZvb3RmYWxsVmFsdWUgPT09J2JvdW5jZWQnICYmICFkZXRhaWxlZENoYXJ0c1wiIGNsYXNzPVwiY29sLW1kLTMgbXQtMyBtZS0wIHBlLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwiaGVhdG1hcGNoYXJ0XCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gLS0+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImRldGFpbGVkQ2hhcnRzXCIgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG15LTUgbWUtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNocmluay0wIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJiYWNrVG9Gb290ZmFsbCgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiNDBcIiBoZWlnaHQ9XCI0MFwiIHZpZXdCb3g9XCIwIDAgNDAgNDBcIiBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGZpbHRlcj1cInVybCgjZmlsdGVyMF9kXzI1ODVfNzAzNilcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeD1cIjJcIiB5PVwiMVwiIHdpZHRoPVwiMzZcIiBoZWlnaHQ9XCIzNlwiIHJ4PVwiOFwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHg9XCIyLjVcIiB5PVwiMS41XCIgd2lkdGg9XCIzNVwiIGhlaWdodD1cIjM1XCIgcng9XCI3LjVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiI0QwRDVERFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTI1LjgzMjcgMTlIMTQuMTY2TTE0LjE2NiAxOUwxOS45OTkzIDI0LjgzMzRNMTQuMTY2IDE5TDE5Ljk5OTMgMTMuMTY2N1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpbHRlciBpZD1cImZpbHRlcjBfZF8yNTg1XzcwMzZcIiB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCI0MFwiIGhlaWdodD1cIjQwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlclVuaXRzPVwidXNlclNwYWNlT25Vc2VcIiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9XCJzUkdCXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PVwiMFwiIHJlc3VsdD1cIkJhY2tncm91bmRJbWFnZUZpeFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCBpbj1cIlNvdXJjZUFscGhhXCIgdHlwZT1cIm1hdHJpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPVwiMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMTI3IDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdD1cImhhcmRBbHBoYVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVPZmZzZXQgZHk9XCIxXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249XCIxXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUNvbG9yTWF0cml4IHR5cGU9XCJtYXRyaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz1cIjAgMCAwIDAgMC4wNjI3NDUxIDAgMCAwIDAgMC4wOTQxMTc2IDAgMCAwIDAgMC4xNTY4NjMgMCAwIDAgMC4wNSAwXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUJsZW5kIG1vZGU9XCJub3JtYWxcIiBpbjI9XCJCYWNrZ3JvdW5kSW1hZ2VGaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdD1cImVmZmVjdDFfZHJvcFNoYWRvd18yNTg1XzcwMzZcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQmxlbmQgbW9kZT1cIm5vcm1hbFwiIGluPVwiU291cmNlR3JhcGhpY1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4yPVwiZWZmZWN0MV9kcm9wU2hhZG93XzI1ODVfNzAzNlwiIHJlc3VsdD1cInNoYXBlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9maWx0ZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXgtMyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgbGVmdC1jYXJkLWNvdW50XCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRleHQtcHJpbWFyeSBjdXJzb3ItcG9pbnRlciB0ZXh0LWRlY29yYXRpb24tdW5kZXJsaW5lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic3RvcmVWaWV3KHN0b3JlSWQpXCI+e3tzdG9yZU5hbWV9fTwvc3Bhbj48c3BhbiBjbGFzcz1cIm1zLTJcIj5Gb290ZmFsbFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyZW5kPC9zcGFuPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlciB0ZXh0LXN1YlwiPkJhc2VkIG9uIHt7aGVhZGVyRGF0YT8uZGF0ZT8uc3RhcnREYXRlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGRhdGU6J2RkIE1NTSwgeXl5eSd9fSAtIHt7aGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSB8IGRhdGU6J2RkIE1NTSwgeXl5eSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBteC01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyXCIgaWQ9XCJkZXRhaWxlZENoYXJ0RGl2XCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8IS0tIDxsaWItdHJhZmZpYy1jYXJkLWNoYXJ0cyBjbGFzcz1cIm15LTJcIj48L2xpYi10cmFmZmljLWNhcmQtY2hhcnRzPiAtLT5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiaXNWTVNcIj5cclxuICAgICAgICAgICAgPGxpYi1pbWctcnZwc1xyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJzdG9yZUlkYXJyYXk/Lmxlbmd0aCA9PT0gMSAmJiAoY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmlzRm9vdGZhbGxEaXJlY3RvcnkmJiFjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uaXNGb290ZmFsbERpcmVjdG9yeW9ubHlUYW5nbyB8fCAoZ3MudXNlckFjY2VzcyB8IGFzeW5jKT8udXNlclR5cGUgPT09ICd0YW5nbycpXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwibXktMlwiPjwvbGliLWltZy1ydnBzPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgIT09JzQ1MicgJiYgIWlzVk1TXCI+XHJcbiAgICAgICAgICAgIDxsaWItaW1hZ2UtZG9jXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cInN0b3JlSWRhcnJheT8ubGVuZ3RoID09PSAxICYmIChjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uaXNGb290ZmFsbERpcmVjdG9yeSYmIWNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5pc0Zvb3RmYWxsRGlyZWN0b3J5b25seVRhbmdvIHx8IChncy51c2VyQWNjZXNzIHwgYXN5bmMpPy51c2VyVHlwZSA9PT0gJ3RhbmdvJylcIlxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJteS0yXCI+PC9saWItaW1hZ2UtZG9jPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2ICpuZ0lmPVwic3RvcmVJZGFycmF5Py5sZW5ndGggPiAxXCIgY2xhc3M9XCJjb2wtbWQtNiBtdC0zXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQgaC0xMDBcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGJvcmRlci0wIHB0LTNcIj5cclxuICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlLXRleHQgbWItMlwiPlBlcmZvcm1hbmNlIE1hdHJpeFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwicmlnaHRcIiBuZ2JUb29sdGlwPVwiU3RvcmUgcGVyZm9ybWFuY2UgYmFzZWQgb24gbWV0cmljcyBzZWxlY3RlZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8xNDMyXzgwMDM1KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDA2NSAxMC42NjY2VjcuOTk5OTJNOC4wMDA2NSA1LjMzMzI1SDguMDA3MzJNMTQuNjY3MyA3Ljk5OTkyQzE0LjY2NzMgMTEuNjgxOCAxMS42ODI2IDE0LjY2NjYgOC4wMDA2NSAxNC42NjY2QzQuMzE4NzUgMTQuNjY2NiAxLjMzMzk4IDExLjY4MTggMS4zMzM5OCA3Ljk5OTkyQzEuMzMzOTggNC4zMTgwMiA0LjMxODc1IDEuMzMzMjUgOC4wMDA2NSAxLjMzMzI1QzExLjY4MjYgMS4zMzMyNSAxNC42NjczIDQuMzE4MDIgMTQuNjY3MyA3Ljk5OTkyWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzE0MzJfODAwMzVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXN1YiBtYi0yXCI+e3toZWFkZXJEYXRhPy5kYXRlPy5zdGFydERhdGUgfCBkYXRlOidkZCBNTU0sIHl5eXknfX0g4oCTXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7aGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSB8IGRhdGU6J2RkIE1NTSwgeXl5eSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvaDM+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10b29sYmFyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGliLXJlYWN0aXZlLXNlbGVjdCBbZm9ybUNvbnRyb2xdPVwidG9wU3RvcmVzU2VsZWN0Q29udHJvbFwiIFtpZEZpZWxkXT1cIid2YWx1ZSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW25hbWVGaWVsZF09XCInbGFiZWwnXCIgW2RhdGFdPVwidG9wU3RvcmVzXCIgY2xhc3M9XCJ3LTEwMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAodmFsdWVDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZVRvcFN0b3JlcygkZXZlbnQ/LnZhbHVlKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xpYi1yZWFjdGl2ZS1zZWxlY3Q+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvZm9ybT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBteC0zIGFsaWduLWl0ZW1zLWNlbnRlciB3LTc1XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBtcy0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNlbGVjdCBjbGFzcz1cImZvcm0tc2VsZWN0LXNtIGZvcm0tc2VsZWN0IG1lLTIgZHJvcHNlbGVjdFwiIFsobmdNb2RlbCldPVwiZm9vdGZhbGxWYWx1ZTFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBvYmogb2YgZ2V0RmlsdGVyZWRGb290ZmFsbERhdGFzZXRzKClcIiBbaWRdPVwib2JqLmxhYmVsXCIgW3ZhbHVlXT1cIm9iai52YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3tvYmoubGFiZWx9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L29wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICA8L3NlbGVjdD5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm14LTJcIj5Wczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8c2VsZWN0IGNsYXNzPVwiZm9ybS1zZWxlY3Qtc20gZm9ybS1zZWxlY3QgbXMtMiBkcm9wc2VsZWN0XCIgWyhuZ01vZGVsKV09XCJib3VuY2VWYWx1ZTFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cIm9uQm91bmNlQ2hhbmdlKCRldmVudClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgb2JqIG9mIGdldEZpbHRlcmVkQm91bmNlRGF0YXNldHMoKVwiIFtpZF09XCJvYmoubGFiZWxcIiBbdmFsdWVdPVwib2JqLnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e29iai5sYWJlbH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvb3B0aW9uPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8L3NlbGVjdD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cInBlcmZvcm1hbmNlTG9hZGluZ1wiIGNsYXNzPVwicm93IGxvYWRlciAgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJwZXJmb3JtYW5jZW5vRGF0YVwiIGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTEyIG10LTIwIG1iLTZcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiIG10LTIwIGNhcmQtYm9keSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImltZy1ub2RhdGEtdGFibGVcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGExLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXRpdGxlXCI+Tm8gZGF0YSBmb3VuZDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSc0NTInXCIgY2xhc3M9XCJub2RhdGEtc3ViXCI+VGhlcmUgaXMgbm8gcmVzdWx0IGZvciB0aGlzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2Zvb3RmYWxsTGFiZWwgfCB0aXRsZWNhc2V9fSB2cyB7e2JvdW5jZUxhYmVsIHwgdGl0bGVjYXNlfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1MidcIiBjbGFzcz1cIm5vZGF0YS1zdWJcIj5UaGVyZSBpcyBubyByZXN1bHQgZm9yIHRoaXNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBlcmZvcm1hbmNlIE1hdHJpeDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIXBlcmZvcm1hbmNlTG9hZGluZyAmJiAhcGVyZm9ybWFuY2Vub0RhdGFcIiBjbGFzcz1cImNhcmQtYm9keVwiPlxyXG5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJxdWFkcmFudC1jaGFydFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheGlzLWxhYmVsc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFggQXhpcyBMYWJlbCAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIngtYXhpcy1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3tib3VuY2VMYWJlbCB8IHRpdGxlY2FzZX19IC0+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBZIEF4aXMgTGFiZWwgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ5LWF4aXMtbGFiZWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7Zm9vdGZhbGxMYWJlbCB8IHRpdGxlY2FzZX19IC0+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tIFRvcCBMZWZ0IFF1YWRyYW50IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJxdWFkcmFudFwiIGlkPVwicTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgIT09JzQ1MidcIiBjbGFzcz1cImxhYmVsMVwiPkhpZ2ggPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZvb3RmYWxsTGFiZWw9PT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJz8nTGVzcyB0aGFuICcrXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlKyAnIG1pbnMnOidCb3VuY2UnfX08L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZvb3RmYWxsTGFiZWwgIT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3tmb290ZmFsbExhYmVsIHwgdGl0bGVjYXNlfX08L3NwYW4+LCBMb3dcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiYm91bmNlTGFiZWw9PT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJz8nTGVzcyB0aGFuICcrXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlKyAnIG1pbnMnOidCb3VuY2UnfX08L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImJvdW5jZUxhYmVsICE9PSdCb3VuY2VkIEZvb3RmYWxsJ1wiPnt7Ym91bmNlTGFiZWwgfCB0aXRsZWNhc2V9fTwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInXCIgY2xhc3M9XCJsYWJlbDFcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZm9vdGZhbGxMYWJlbD09PSdGb290ZmFsbCdcIj5IaWdoIDwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZvb3RmYWxsTGFiZWw9PT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJz8nTGVzcyB0aGFuICcrXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlKyAnIG1pbnMnOidCb3VuY2UnfX08L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZvb3RmYWxsTGFiZWwgIT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3tmb290ZmFsbExhYmVsIHwgdGl0bGVjYXNlfX08L3NwYW4+LCA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYm91bmNlTGFiZWw9PT0nRm9vdGZhbGwnXCI+TG93IDwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImJvdW5jZUxhYmVsPT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1Mic/J0xlc3MgdGhhbiAnK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSsgJyBtaW5zJzonQm91bmNlJ319PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJib3VuY2VMYWJlbCAhPT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2JvdW5jZUxhYmVsIHwgdGl0bGVjYXNlfX08L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tIFRvcCBSaWdodCBRdWFkcmFudCAtLT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicXVhZHJhbnRcIiBpZD1cInEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSc0NTInXCIgY2xhc3M9XCJsYWJlbDFcIj5IaWdoIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmb290ZmFsbExhYmVsPT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1Mic/J0xlc3MgdGhhbiAnK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSsgJyBtaW5zJzonQm91bmNlJ319PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmb290ZmFsbExhYmVsICE9PSdCb3VuY2VkIEZvb3RmYWxsJ1wiPnt7Zm9vdGZhbGxMYWJlbCB8IHRpdGxlY2FzZX19PC9zcGFuPiwgSGlnaFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJib3VuY2VMYWJlbD09PSdCb3VuY2VkIEZvb3RmYWxsJ1wiPnt7aGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInPydMZXNzIHRoYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnK2ZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSsgJyBtaW5zJzonQm91bmNlJ319PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJib3VuY2VMYWJlbCAhPT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2JvdW5jZUxhYmVsIHwgdGl0bGVjYXNlfX08L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJ1wiIGNsYXNzPVwibGFiZWwxXCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZvb3RmYWxsTGFiZWw9PT0nRm9vdGZhbGwnXCI+SGlnaCA8L3NwYW4+IDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmb290ZmFsbExhYmVsPT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1Mic/J0xlc3MgdGhhbiAnK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSsgJyBtaW5zJzonQm91bmNlJ319PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmb290ZmFsbExhYmVsICE9PSdCb3VuY2VkIEZvb3RmYWxsJ1wiPnt7Zm9vdGZhbGxMYWJlbCB8IHRpdGxlY2FzZX19PC9zcGFuPiwgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImJvdW5jZUxhYmVsPT09J0Zvb3RmYWxsJ1wiPkhpZ2ggPC9zcGFuPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYm91bmNlTGFiZWw9PT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJz8nTGVzcyB0aGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJytmZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWUrICcgbWlucyc6J0JvdW5jZSd9fTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYm91bmNlTGFiZWwgIT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3tib3VuY2VMYWJlbCB8IHRpdGxlY2FzZX19PC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSBCb3R0b20gTGVmdCBRdWFkcmFudCAtLT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicXVhZHJhbnRcIiBpZD1cInEzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSc0NTInXCIgY2xhc3M9XCJsYWJlbDFcIj5Mb3cgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZvb3RmYWxsTGFiZWw9PT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJz8nTGVzcyB0aGFuICcrXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlKyAnIG1pbnMnOidCb3VuY2UnfX08L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZvb3RmYWxsTGFiZWwgIT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3tmb290ZmFsbExhYmVsIHwgdGl0bGVjYXNlfX08L3NwYW4+LCBMb3dcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiYm91bmNlTGFiZWw9PT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJz8nTGVzcyB0aGFuICcrXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlKyAnIG1pbnMnOidCb3VuY2UnfX08L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImJvdW5jZUxhYmVsICE9PSdCb3VuY2VkIEZvb3RmYWxsJ1wiPnt7Ym91bmNlTGFiZWwgfCB0aXRsZWNhc2V9fTwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInXCIgY2xhc3M9XCJsYWJlbDFcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZm9vdGZhbGxMYWJlbD09PSdGb290ZmFsbCdcIj5Mb3cgPC9zcGFuPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZm9vdGZhbGxMYWJlbD09PSdCb3VuY2VkIEZvb3RmYWxsJ1wiPnt7aGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInPydMZXNzIHRoYW4gJytcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWUrICcgbWlucyc6J0JvdW5jZSd9fTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZm9vdGZhbGxMYWJlbCAhPT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2Zvb3RmYWxsTGFiZWwgfCB0aXRsZWNhc2V9fTwvc3Bhbj4sIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJib3VuY2VMYWJlbD09PSdGb290ZmFsbCdcIj5Mb3cgPC9zcGFuPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYm91bmNlTGFiZWw9PT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJz8nTGVzcyB0aGFuICcrXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlKyAnIG1pbnMnOidCb3VuY2UnfX08L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImJvdW5jZUxhYmVsICE9PSdCb3VuY2VkIEZvb3RmYWxsJ1wiPnt7Ym91bmNlTGFiZWwgfCB0aXRsZWNhc2V9fTwvc3Bhbj48L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tIEJvdHRvbSBSaWdodCBRdWFkcmFudCAtLT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicXVhZHJhbnRcIiBpZD1cInE0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSc0NTInXCIgY2xhc3M9XCJsYWJlbDFcIj5Mb3cgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZvb3RmYWxsTGFiZWw9PT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2hlYWRlckRhdGE/LmNsaWVudCA9PT0nNDUyJz8nTGVzcyB0aGFuICcrXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmVhdHVyZUNvbmZpZz8uYm91bmNlZExpbWl0LnZhbHVlKyAnIG1pbnMnOidCb3VuY2UnfX08L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZvb3RmYWxsTGFiZWwgIT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3tmb290ZmFsbExhYmVsIHwgdGl0bGVjYXNlfX08L3NwYW4+LCBIaWdoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImJvdW5jZUxhYmVsPT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1Mic/J0xlc3MgdGhhbiAnK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSsgJyBtaW5zJzonQm91bmNlJ319PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJib3VuY2VMYWJlbCAhPT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2JvdW5jZUxhYmVsfCB0aXRsZWNhc2V9fTwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInXCIgY2xhc3M9XCJsYWJlbDFcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZm9vdGZhbGxMYWJlbD09PSdGb290ZmFsbCdcIj5Mb3cgPC9zcGFuPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZm9vdGZhbGxMYWJlbD09PSdCb3VuY2VkIEZvb3RmYWxsJ1wiPnt7aGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInPydMZXNzIHRoYW4gJytcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWUrICcgbWlucyc6J0JvdW5jZSd9fTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZm9vdGZhbGxMYWJlbCAhPT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2Zvb3RmYWxsTGFiZWwgfCB0aXRsZWNhc2V9fTwvc3Bhbj4sIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJib3VuY2VMYWJlbD09PSdGb290ZmFsbCdcIj5IaWdoIDwvc3Bhbj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImJvdW5jZUxhYmVsPT09J0JvdW5jZWQgRm9vdGZhbGwnXCI+e3toZWFkZXJEYXRhPy5jbGllbnQgPT09JzQ1Mic/J0xlc3MgdGhhbiAnK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmVDb25maWc/LmJvdW5jZWRMaW1pdC52YWx1ZSsgJyBtaW5zJzonQm91bmNlJ319PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJib3VuY2VMYWJlbCAhPT0nQm91bmNlZCBGb290ZmFsbCdcIj57e2JvdW5jZUxhYmVsfCB0aXRsZWNhc2V9fTwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHBvaW50IG9mIHBvaW50c1wiIGNsYXNzPVwicG9pbnRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJ7J3RvcCc6IHBvaW50LnRvcCArICclJywgJ2xlZnQnOiBwb2ludC5sZWZ0ICsgJyUnfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXJcIiAoY2xpY2spPVwidG9nZ2xlVG9vbHRpcChwb2ludC5uYW1lKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRvdFwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBDbGlja2FibGUgbGFiZWwgdGhhdCB0b2dnbGVzIHRoZSB0b29sdGlwIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxhYmVsIG10LTRcIiBzdHlsZT1cImZvbnQtc2l6ZTogMTBweCAhaW1wb3J0YW50O1wiIFthdHRyLnRpdGxlXT1cInBvaW50Lm5hbWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIHt7IHBvaW50Lm5hbWUgfX0gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgcG9pbnQubmFtZS5sZW5ndGggPiA3ID8gKHBvaW50Lm5hbWUgfCBzbGljZTowOjcpICsgJy4uJyA6IHBvaW50Lm5hbWUgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBDdXN0b20gVG9vbHRpcCBQb3B1cCAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvb2x0aXAtcG9wdXAgei01XCIgKm5nSWY9XCJhY3RpdmVUb29sdGlwID09PSBwb2ludC5uYW1lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9vbHRpcC1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwidGV4dC13aGl0ZSBjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJzdG9yZVZpZXcocG9pbnQuc3RvcmVJZClcIj57eyBwb2ludC5uYW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19PC9oMz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5Bdmcge3tmb290ZmFsbExhYmVsIHwgdGl0bGVjYXNlfX06IHt7IHBvaW50LmF2Z0Zvb3RmYWxsIH19PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwibXktMlwiPk9wZW4gVGltZTogPHN0cm9uZz57eyBwb2ludC5vcGVuVGltZSB9fTwvc3Ryb25nPjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5DbG9zZSBUaW1lOiA8c3Ryb25nPnt7IHBvaW50LmNsb3NlVGltZSB9fTwvc3Ryb25nPjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvb2x0aXAtYXJyb3dcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSBBZGQgbW9yZSBwb2ludHMgaGVyZSAtLT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgKm5nSWY9XCJzdG9yZUlkYXJyYXk/Lmxlbmd0aCA+IDFcIiBjbGFzcz1cImNvbC1tZC02IG10LTNcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgcHgtNSBib3JkZXItMCBwdC0zXCI+XHJcbiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXRsZS10ZXh0IG1iLTJcIj5ab25lIER3ZWxsIFRpbWUgU3BsaXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cInJpZ2h0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5nYlRvb2x0aXA9XCJPdmVyYWxsIHpvbmUgY29uY2VudHJhdGlvbiBhbmQgYXZlcmFnZSBkd2VsbCB0aW1lIGFjcm9zcyBzZWxlY3RlZCBzdG9yZXNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMTQzMl84MDAzNSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwNjUgMTAuNjY2NlY3Ljk5OTkyTTguMDAwNjUgNS4zMzMyNUg4LjAwNzMyTTE0LjY2NzMgNy45OTk5MkMxNC42NjczIDExLjY4MTggMTEuNjgyNiAxNC42NjY2IDguMDAwNjUgMTQuNjY2NkM0LjMxODc1IDE0LjY2NjYgMS4zMzM5OCAxMS42ODE4IDEuMzMzOTggNy45OTk5MkMxLjMzMzk4IDQuMzE4MDIgNC4zMTg3NSAxLjMzMzI1IDguMDAwNjUgMS4zMzMyNUMxMS42ODI2IDEuMzMzMjUgMTQuNjY3MyA0LjMxODAyIDE0LjY2NzMgNy45OTk5MlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8xNDMyXzgwMDM1XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1zdWIgbWItMlwiPnt7aGVhZGVyRGF0YT8uZGF0ZT8uc3RhcnREYXRlIHwgZGF0ZTonZGQgTU1NLCB5eXl5J319IOKAk1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB7e2hlYWRlckRhdGE/LmRhdGU/LmVuZERhdGUgfCBkYXRlOidkZCBNTU0sIHl5eXknfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdG9vbGJhclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJnb1RvWm9uZSgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLWxpZ2h0LXByaW1hcnkxIHJvdW5kZWQtMyB0ZXh0LW5vd3JhcCBib3JkZXItdmFsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXMtMlwiPkdvIHRvIFpvbmVzPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjYWxzcz1cImNhcmQtYm9keVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiF6b25lTG9hZGluZyAmJiAhem9uZU5vRGF0YVwiIGNsYXNzPVwiaW1hZ2UtY29udGFpbmVyIHBvc2l0aW9uLXJlbGF0aXZlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJhc3NldHMvdGFuZ28vSW1hZ2VzL3pvbmUtaW1nLnN2Z1wiIGFsdD1cIlN0b3JlIExheW91dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicHgtNSBpbWctc3JjIG15LTMgYmFja2dyb3VuZC1pbWFnZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSA8aW1nICpuZ0lmPVwiem9uZUR3ZWxsVGltZVNwbGl0RGF0YVswXT8uem9uZU5hbWUgPT09J092ZXJhbGwgU3RvcmUnXCIgc3JjPVwiYXNzZXRzL3RhbmdvL0ltYWdlcy96b25lLWltZzEuc3ZnXCIgYWx0PVwiU3RvcmUgTGF5b3V0XCIgY2xhc3M9XCJweC01IGltZy1zcmMgbXktMyBiYWNrZ3JvdW5kLWltYWdlXCIgLz4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiY2VudGVyZWRcIj5DZW50ZXJlZDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJvdmVybGF5LWNvbnRlbnRcIiAqbmdGb3I9XCJsZXQgcG9pbnQgb2Ygem9uZUR3ZWxsVGltZVNwbGl0RGF0YVwiPiAtLT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiem9uZUR3ZWxsVGltZVNwbGl0RGF0YVswXT8uem9uZU5hbWUgIT09J092ZXJhbGwgU3RvcmUnXCIgY2xhc3M9XCJ0b3Atem9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXIgdGV4dC16b25lXCI+e3t6b25lRHdlbGxUaW1lU3BsaXREYXRhWzBdPy56b25lTmFtZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6b25lRHdlbGxUaW1lU3BsaXREYXRhWzBdPy56b25lTmFtZSA6J0Zyb250J319PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC16b25lLXZhbFwiPiBDb25jOiB7eyB6b25lRHdlbGxUaW1lU3BsaXREYXRhWzBdPy5jb25jZW50cmF0aW9uUmF0ZSAhPT1udWxsID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHpvbmVEd2VsbFRpbWVTcGxpdERhdGFbMF0/LmNvbmNlbnRyYXRpb25SYXRlOictLScgfX0lIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXpvbmUtdmFsXCI+RHdlbGwgdGltZToge3sgem9uZUR3ZWxsVGltZVNwbGl0RGF0YVswXT8uZHdlbGxUaW1lICE9PW51bGwgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgem9uZUR3ZWxsVGltZVNwbGl0RGF0YVswXT8uZHdlbGxUaW1lIDonLS0nIH19IE1pbnM8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInpvbmVEd2VsbFRpbWVTcGxpdERhdGFbMF0/LnpvbmVOYW1lID09PSdPdmVyYWxsIFN0b3JlJ1wiIGNsYXNzPVwiY2VudGVyZWQtem9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXIgdGV4dC16b25lXCI+e3t6b25lRHdlbGxUaW1lU3BsaXREYXRhWzBdPy56b25lTmFtZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6b25lRHdlbGxUaW1lU3BsaXREYXRhWzBdPy56b25lTmFtZSA6J0Zyb250J319PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC16b25lLXZhbFwiPiBDb25jOiB7eyB6b25lRHdlbGxUaW1lU3BsaXREYXRhWzBdPy5jb25jZW50cmF0aW9uUmF0ZSAhPT1udWxsID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHpvbmVEd2VsbFRpbWVTcGxpdERhdGFbMF0/LmNvbmNlbnRyYXRpb25SYXRlOictLScgfX0lIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXpvbmUtdmFsXCI+RHdlbGwgdGltZToge3sgem9uZUR3ZWxsVGltZVNwbGl0RGF0YVswXT8uZHdlbGxUaW1lICE9PW51bGwgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgem9uZUR3ZWxsVGltZVNwbGl0RGF0YVswXT8uZHdlbGxUaW1lOictLScgfX0gTWluczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiem9uZUR3ZWxsVGltZVNwbGl0RGF0YVswXT8uem9uZU5hbWUgIT09J092ZXJhbGwgU3RvcmUnXCIgY2xhc3M9XCJib3R0b20tem9uZSBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyIHRleHQtem9uZVwiPnt7em9uZUR3ZWxsVGltZVNwbGl0RGF0YVsxXT8uem9uZU5hbWUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgem9uZUR3ZWxsVGltZVNwbGl0RGF0YVsyXT8uem9uZU5hbWUgOiAnQmFjayd9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtem9uZS12YWxcIj4gQ29uYzoge3sgem9uZUR3ZWxsVGltZVNwbGl0RGF0YVsxXT8uY29uY2VudHJhdGlvblJhdGUgIT09bnVsbCA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6b25lRHdlbGxUaW1lU3BsaXREYXRhWzJdPy5jb25jZW50cmF0aW9uUmF0ZTonLS0nIH19JSA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC16b25lLXZhbFwiPkR3ZWxsIHRpbWU6IHt7IHpvbmVEd2VsbFRpbWVTcGxpdERhdGFbMV0/LmR3ZWxsVGltZSAhPT1udWxsID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHpvbmVEd2VsbFRpbWVTcGxpdERhdGFbMl0/LmR3ZWxsVGltZTonLS0nfX0gTWluczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tIDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInpvbmVMb2FkaW5nXCIgY2xhc3M9XCJyb3cgbG9hZGVyICBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJ6b25lTm9EYXRhXCIgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTEyIG1iLTYgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub3JtYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtdC01IGNhcmQtYm9keSByaWdodC1iYXIgcHktMjAgbXgtNSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctbm9kYXRhLXpvbmVcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9ub3QtYXBwbGljYWJsZS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtdGl0bGUgbXQtM1wiPkRhdGEgTm90IEZvdW5kPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXN1YlwiPk5vcm1hbGl6ZWQgZGF0YSBpcyBub3QgYXBwbGljYWJsZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFub3JtYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtdC01IGNhcmQtYm9keSByaWdodC1iYXIgcHktMjAgbXgtNSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctbm9kYXRhLXpvbmVcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGExLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS10aXRsZVwiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtc3ViXCI+VGhlcmUgaXMgbm8gcmVzdWx0IGZvciB0aGlzIFpvbmUgRHdlbGwgVGltZSBTcGxpdDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwhLS0gPGltZyBjbGFzcz1cInB4LTUgaW1nLXNyYyBtYi0zXCIgc3JjPVwiYXNzZXRzL3RhbmdvL0ltYWdlcy96b25lLWltZy5zdmdcIiBhbHQ9XCJcIj4gLS0+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgcHgtNSBib3JkZXItMCBwdC0zXCI+XHJcbiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXRsZS10ZXh0IG1iLTJcIj5TdG9yZSBPcGVyYXRpb25zXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBuZ2JUb29sdGlwPVwiQXZnIHN0b3JlIG9wZW4gJiBjbG9zZSB0aW1lIGFjcm9zcyB0aGUgc2VsZWN0ZWQgc3RvcmVzXCIgcGxhY2VtZW50PVwidG9wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzE0MzJfODAwMzUpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwNjUgMTAuNjY2NlY3Ljk5OTkyTTguMDAwNjUgNS4zMzMyNUg4LjAwNzMyTTE0LjY2NzMgNy45OTk5MkMxNC42NjczIDExLjY4MTggMTEuNjgyNiAxNC42NjY2IDguMDAwNjUgMTQuNjY2NkM0LjMxODc1IDE0LjY2NjYgMS4zMzM5OCAxMS42ODE4IDEuMzMzOTggNy45OTk5MkMxLjMzMzk4IDQuMzE4MDIgNC4zMTg3NSAxLjMzMzI1IDguMDAwNjUgMS4zMzMyNUMxMS42ODI2IDEuMzMzMjUgMTQuNjY3MyA0LjMxODAyIDE0LjY2NzMgNy45OTk5MlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzE0MzJfODAwMzVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXN1YiBtYi0yXCI+e3toZWFkZXJEYXRhPy5kYXRlPy5zdGFydERhdGUgfCBkYXRlOidkZCBNTU0sIHl5eXknfX0g4oCTXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7aGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSB8IGRhdGU6J2RkIE1NTSwgeXl5eSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvaDM+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10b29sYmFyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSA8YnV0dG9uICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLWxpZ2h0LXByaW1hcnkxIHJvdW5kZWQtMyB0ZXh0LW5vd3JhcCBib3JkZXItdmFsXCI+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXMtMlwiPkdvIHRvIFRyYXg8L3NwYW4+XHJcbiAgICAgICAgPC9idXR0b24+IC0tPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0zIHRleHQtY2VudGVyIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPjwhLS17e2dldENhcmREYXRhPy5yZXZlbnVlPy52YWx1ZSA/PyAnLS0nfX0gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTJcIj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LXRpdGxlXCI+e3tzdG9yZU9wZXJhdGlvbkRhdGE/Lm92ZXJhbGw/LmF2Z09wZW5UaW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/c3RvcmVPcGVyYXRpb25EYXRhPy5vdmVyYWxsPy5hdmdPcGVuVGltZTonLS0nIH19PC9zcGFuPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJcIj48c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJcIj5BdmcuIE9wZW4gVGltZTwvc3Bhbj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02IG10LTUgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMzI2XCIgaGVpZ2h0PVwiMlwiIHZpZXdCb3g9XCIwIDAgMzI2IDJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaW5lIHkxPVwiMC43NVwiIHgyPVwiMzU2XCIgeTI9XCIwLjc1XCIgc3Ryb2tlPVwiI0QwRDVERFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMyB0ZXh0LWNlbnRlciBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj48IS0te3tnZXRDYXJkRGF0YT8ucmV2ZW51ZT8udmFsdWUgPz8gJy0tJ319IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0yXCI+IDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC10aXRsZVwiPnt7c3RvcmVPcGVyYXRpb25EYXRhPy5vdmVyYWxsPy5hdmdDbG9zZVRpbWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID9zdG9yZU9wZXJhdGlvbkRhdGE/Lm92ZXJhbGw/LmF2Z0Nsb3NlVGltZTonLS0nIH19PC9zcGFuPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJcIj48c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJcIj5BdmcuIENsb3NlIFRpbWU8L3NwYW4+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGNhcmQtYm9yZGVyIGgtMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgZWxsaXBzZTEgYm9yZGVyLTAgcHgtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW4gXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlcjEgdGV4dC1kZWNvcmF0aW9uLXVuZGVybGluZSBjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic3RvcmVWaWV3KHN0b3JlT3BlcmF0aW9uRGF0YT8udG9wTGF0ZU9wZW4/LnN0b3JlSWQpXCI+e3tzdG9yZU9wZXJhdGlvbkRhdGE/LnRvcExhdGVPcGVuPy5zdG9yZU5hbWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JlT3BlcmF0aW9uRGF0YT8udG9wTGF0ZU9wZW4/LnN0b3JlTmFtZSA6Jy0tJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXIgbXQtMlwiPlRvcCBMYXRlIE9wZW48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwLTAgaC03NXB4IG10LTMgbXgtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPjwhLS17e2dldENhcmREYXRhPy5yZXZlbnVlPy52YWx1ZSA/PyAnLS0nfX0gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMVwiPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXIxXCI+e3tzdG9yZU9wZXJhdGlvbkRhdGE/LnRvcExhdGVPcGVuPy5hdmdTdG9yZU9wZW5UaW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID9zdG9yZU9wZXJhdGlvbkRhdGE/LnRvcExhdGVPcGVuPy5hdmdTdG9yZU9wZW5UaW1lOictLScgfX08L3NwYW4+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJcIj5BdmcuIFN0b3JlIE9wZW5pbmcgVGltZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBjYXJkLWJvcmRlciBoLTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGVsbGlwc2UxIGJvcmRlci0wIHB4LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXIxIHRleHQtZGVjb3JhdGlvbi11bmRlcmxpbmUgY3Vyc29yLXBvaW50ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInN0b3JlVmlldyhzdG9yZU9wZXJhdGlvbkRhdGE/LnRvcEVhcmx5Q2xvc2U/LnN0b3JlSWQpXCI+e3tzdG9yZU9wZXJhdGlvbkRhdGE/LnRvcEVhcmx5Q2xvc2U/LnN0b3JlTmFtZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmVPcGVyYXRpb25EYXRhPy50b3BFYXJseUNsb3NlPy5zdG9yZU5hbWUgOictLSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWItaGVhZGVyIG10LTJcIj5Ub3AgRWFybHkgQ2xvc2U8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwLTAgaC03NXB4IG10LTMgbXgtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPjwhLS17e2dldENhcmREYXRhPy5yZXZlbnVlPy52YWx1ZSA/PyAnLS0nfX0gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMVwiPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC1oZWFkZXIxXCI+e3tzdG9yZU9wZXJhdGlvbkRhdGE/LnRvcEVhcmx5Q2xvc2U/LmF2Z1N0b3JlQ2xvc2VUaW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID9zdG9yZU9wZXJhdGlvbkRhdGE/LnRvcEVhcmx5Q2xvc2U/LmF2Z1N0b3JlQ2xvc2VUaW1lOictLScgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLWhlYWRlclwiPkF2Zy4gU3RvcmUgQ2xvc2luZyBUaW1lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgKm5nSWY9XCIhKHN0b3JlSWRhcnJheT8ubGVuZ3RoID09PSAxICYmIChzdG9yZUlkYXJyYXlbMF0gPT09ICc0NTktMicgfHwgc3RvcmVJZGFycmF5WzBdID09PSAnNDU5LTQnKSlcIlxyXG4gICAgICAgIGNsYXNzPVwiY29sLW1kLTEyIG10LTNcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBtYi01XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBib3JkZXItMCBwdC0zXCI+XHJcbiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXRsZS10ZXh0IG1iLTJcIj5TdW1tYXJ5IFRhYmxlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1zdWIgbWItMlwiPnt7aGVhZGVyRGF0YT8uZGF0ZT8uc3RhcnREYXRlIHwgZGF0ZTonZGQgTU1NLCB5eXl5J319IOKAk1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB7e2hlYWRlckRhdGE/LmRhdGU/LmVuZERhdGUgfCBkYXRlOidkZCBNTU0sIHl5eXknfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdG9vbGJhclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgcG9zaXRpb24tcmVsYXRpdmUgbXktMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdmctaWNvbiBzdmctaWNvbi0xIHBvc2l0aW9uLWFic29sdXRlIG1zLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgb3BhY2l0eT1cIjAuNVwiIHg9XCIxNy4wMzY1XCIgeT1cIjE1LjEyMjNcIiB3aWR0aD1cIjguMTU1NDZcIiBoZWlnaHQ9XCIyXCIgcng9XCIxXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cInJvdGF0ZSg0NSAxNy4wMzY1IDE1LjEyMjMpXCIgZmlsbD1cImN1cnJlbnRDb2xvclwiPjwvcmVjdD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTEgMTlDNi41NTU1NiAxOSAzIDE1LjQ0NDQgMyAxMUMzIDYuNTU1NTYgNi41NTU1NiAzIDExIDNDMTUuNDQ0NCAzIDE5IDYuNTU1NTYgMTkgMTFDMTkgMTUuNDQ0NCAxNS40NDQ0IDE5IDExIDE5Wk0xMSA1QzcuNTMzMzMgNSA1IDcuNTMzMzMgNSAxMUM1IDE0LjQ2NjcgNy41MzMzMyAxNyAxMSAxN0MxNC40NjY3IDE3IDE3IDE0LjQ2NjcgMTcgMTFDMTcgNy41MzMzMyAxNC40NjY3IDUgMTEgNVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cImN1cnJlbnRDb2xvclwiPjwvcGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCAoY2hhbmdlKT1cInNlYXJjaERhdGEoKVwiIFsobmdNb2RlbCldPVwic2VhcmNoVmFsdWVcIiB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgcHMtMTQgbWUtMlwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiIHBsYWNlaG9sZGVyPVwiU2VhcmNoXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gZmlsdGVyIFN0YXJ0IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8bGliLWZpbHRlcnMgW2RhdGFPYmplY3RdPVwiZGF0YU9iamVjdFwiIChhcHBsaWVkRmlsdGVycyk9XCJhcHBseUZpbHRlcnMoJGV2ZW50KVwiPjwvbGliLWZpbHRlcnM+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBmaWx0ZXIgRW5kIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBTdW0gQnV0dG9uIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIihzdG9yZUlkYXJyYXk/Lmxlbmd0aCA+IDEgJiYgaGVhZGVyRGF0YT8uZGF0ZT8uc3RhcnREYXRlICE9PSBoZWFkZXJEYXRhPy5kYXRlPy5lbmREYXRlKSAmJiAhbm9EYXRhICYmICFsb2FkaW5nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cIm9uVmFsdWVUeXBlKCdzdW0nKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IG14LTIgYnRuLW91dGxpbmUgYnRuLW91dGxpbmUtZGVmYXVsdCByb3VuZGVkLTMgdGV4dC1ub3dyYXAgYm9yZGVyLXZhbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnYnRuLWxpZ2h0IGJ0bi1wcmltYXJ5IHRleHQtd2hpdGUnOiB0eXBlVmFsdWUgPT09ICdzdW0nfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCIgW25nU3R5bGVdPVwieydzdHJva2UnOiB0eXBlVmFsdWUgPT09ICdzdW0nID8gJyNGRkZGRkYnIDogJyMzNDQwNTQnfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk05Ljk5OTM1IDQuMTY2NzVWMTUuODMzNE00LjE2NjAyIDEwLjAwMDFIMTUuODMyN1wiIHN0cm9rZS13aWR0aD1cIjEuNjdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1zLTJcIiBbbmdDbGFzc109XCJ7J3RleHQtd2hpdGUnOiB0eXBlVmFsdWUgPT09ICdzdW0nfVwiPlN1bTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEF2ZXJhZ2UgQnV0dG9uIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gKm5nSWY9XCIoc3RvcmVJZGFycmF5Py5sZW5ndGggPiAxICYmIGhlYWRlckRhdGE/LmRhdGU/LnN0YXJ0RGF0ZSAhPT0gaGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSkgXHJcbiAmJiAhbm9EYXRhICYmICFsb2FkaW5nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cIm9uVmFsdWVUeXBlKCdhdmVyYWdlJylcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tZGVmYXVsdCBteC0yIGJ0bi1vdXRsaW5lIGJ0bi1vdXRsaW5lLWRlZmF1bHQgcm91bmRlZC0zIHRleHQtbm93cmFwIGJvcmRlci12YWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2J0bi1saWdodCBidG4tcHJpbWFyeSB0ZXh0LXdoaXRlJzogdHlwZVZhbHVlID09PSAnYXZlcmFnZSd9XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nU3R5bGVdPVwieydzdHJva2UnOiB0eXBlVmFsdWUgPT09ICdhdmVyYWdlJyA/ICcjRkZGRkZGJyA6ICcjMTAxODI4J31cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xNy41IDE3LjVIOC4zMzMzM0M1LjU4MzMzIDE3LjUgNC4yMDgzMyAxNy41IDMuMzU0MTcgMTYuNjQ1OEMyLjUgMTUuNzkxNyAyLjUgMTQuNDE2NyAyLjUgMTEuNjY2N1YyLjVNNSAxMEg1LjAwNzVNNy40OTkxNyAxMEg3LjUwNTgzTTkuOTk3NSAxMEgxMC4wMDQyTTEyLjQ5NTggMTBIMTIuNTAzM00xNC45OTQyIDEwSDE1LjAwMTdNMTcuNDkyNSAxMEgxNy41XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTUgNS44MzM0MUM1LjU2MDgzIDQuODk4NDEgNi4zMjI1IDQuMTY2NzUgNy40OTQxNyA0LjE2Njc1QzEyLjQ0NjcgNC4xNjY3NSA5LjY2MjUgMTQuMTY2NyAxNC45ODUgMTQuMTY2N0MxNi4xNjUgMTQuMTY2NyAxNi45MjE3IDEzLjQzMDEgMTcuNSAxMi41MDAxXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcy0yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsndGV4dC13aGl0ZSc6IHR5cGVWYWx1ZSA9PT0gJ2F2ZXJhZ2UnfVwiPkF2ZXJhZ2U8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIiFub0RhdGEgJiYgIWxvYWRpbmdcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImV4cG9ydFhMU1goKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLWRlZmF1bHQgbXgtMiBidG4tb3V0bGluZSBidG4tb3V0bGluZS1kZWZhdWx0IHJvdW5kZWQtMyB0ZXh0LW5vd3JhcCBib3JkZXItdmFsXCI+PHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTE3LjUgMTIuNVYxNS44MzMzQzE3LjUgMTYuMjc1NCAxNy4zMjQ0IDE2LjY5OTMgMTcuMDExOCAxNy4wMTE4QzE2LjY5OTMgMTcuMzI0NCAxNi4yNzU0IDE3LjUgMTUuODMzMyAxNy41SDQuMTY2NjdDMy43MjQ2NCAxNy41IDMuMzAwNzIgMTcuMzI0NCAyLjk4ODE2IDE3LjAxMThDMi42NzU1OSAxNi42OTkzIDIuNSAxNi4yNzU0IDIuNSAxNS44MzMzVjEyLjVNMTQuMTY2NyA2LjY2NjY3TDEwIDIuNU0xMCAyLjVMNS44MzMzMyA2LjY2NjY3TTEwIDIuNVYxMi41XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PHNwYW4gY2xhc3M9XCJtcy0yXCI+RXhwb3J0PC9zcGFuPiA8L2J1dHRvbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibG9hZGluZ1wiIGNsYXNzPVwicm93IGxvYWRlciAgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub0RhdGFcIiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImltZy1ub2RhdGEtdGFibGVcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGExLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXRpdGxlXCI+Tm8gZGF0YSBmb3VuZDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXN1YlwiPlRoZXJlIGlzIG5vIHJlc3VsdCBmb3IgdGhpcyBzdW1tYXJ5IHRhYmxlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhbm9EYXRhICYmICFsb2FkaW5nXCIgY2Fsc3M9XCJjYXJkLWJvZHlcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1yZXNwb25zaXZlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPVwidy0xMDAgdGFibGUgYm90dG9tLWJvcmRlciB0ZXh0LW5vd3JhcFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJ3N0b3JlTmFtZScpXCI+U3RvcmUgTmFtZSA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAnc3RvcmVOYW1lJyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICdzdG9yZU5hbWUnID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9uU29ydCgnc3RvcmVJZCcpXCI+U3RvcmUgSUQgPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJ3N0b3JlSWQnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJ3N0b3JlSWQnID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggKm5nSWY9XCJzdG9yZUNvZGVcIiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCdzdG9yZUNvZGUnKVwiPlN0b3JlIENvZGUgPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJ3N0b3JlQ29kZScgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAnc3RvcmVDb2RlJyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoICpuZ0lmPVwic3RvcmVJZGFycmF5Py5sZW5ndGggPT09IDFcIiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCdkYXRlJylcIj5EYXRlIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICdkYXRlJyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICdkYXRlJyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJ2Zvb3RmYWxsQ291bnQnKVwiPkZvb3RmYWxsIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICdmb290ZmFsbENvdW50JyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICdmb290ZmFsbENvdW50JyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJ2JvdW5jZWRDb3VudCcpXCI+e3toZWFkZXJEYXRhPy5jbGllbnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID09PSc0NTInPydMZXNzIHRoYW4gJysgdGhpcy5mZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWUgKydcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbnMnOidCb3VuY2VkJ319IEZvb3RmYWxsPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJ2JvdW5jZWRDb3VudCcgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAnYm91bmNlZENvdW50JyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJ2VuZ2FnZXJzQ291bnQnKVwiPnt7aGVhZGVyRGF0YT8uY2xpZW50XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA9PT0nNDUyJz8gJ01vcmUgdGhhbiAnKyBmZWF0dXJlQ29uZmlnPy5ib3VuY2VkTGltaXQudmFsdWUgKycgbWlucyc6J0VuZ2FnZXJzJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJ2VuZ2FnZXJzQ291bnQnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJ2VuZ2FnZXJzQ291bnQnID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvblNvcnQoJ21pc3NlZE9wcG9ydHVuaXR5Q291bnQnKVwiPnt7aGVhZGVyRGF0YT8uY2xpZW50ID09PSc0NTInP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmVhdHVyZUNvbmZpZz8ubWlzc2VkT3Bwb3J0dW5pdHlGcm9tLnZhbHVlICsgJyAtICdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICtmZWF0dXJlQ29uZmlnPy5taXNzZWRPcHBvcnR1bml0eVRvLnZhbHVlICsnIG1pbnMnOidNaXNzZWQgT3Bwb3J0dW5pdHknfX08c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAnbWlzc2VkT3Bwb3J0dW5pdHlDb3VudCcgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAnbWlzc2VkT3Bwb3J0dW5pdHlDb3VudCcgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCAhPT0nNDUyJ1wiIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJ3BvdGVudGlhbEJ1eWVyc0NvdW50JylcIj5Qb3RlbnRpYWxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJ1eWVycyA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAncG90ZW50aWFsQnV5ZXJzQ291bnQnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJ3BvdGVudGlhbEJ1eWVyc0NvdW50JyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJ2NvbnZlcnNpb25SYXRlJylcIj57e2hlYWRlckRhdGE/LmNsaWVudFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPT09JzQ1Mic/J01vcmUgdGhhbiAnKyBmZWF0dXJlQ29uZmlnPy5jb252ZXJzaW9uLnZhbHVlICsgJyBtaW5zJzonQ29udmVyc2lvbid9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmF0ZSA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAnY29udmVyc2lvblJhdGUnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJ2NvbnZlcnNpb25SYXRlJyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJ05PQkNvdW50JylcIj5OT0IgQ291bnQgPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJ05PQkNvdW50JyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICdOT0JDb3VudCcgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCdhdmdEd2VsbFRpbWUnKVwiPkF2Zy5Ed2VsbCBUaW1lIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICdhdmdEd2VsbFRpbWUnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJ2F2Z0R3ZWxsVGltZScgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCdhdmdJbmZyYURvd250aW1lJylcIj5BdmcuSW5mcmEgRG93blRpbWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAnYXZnSW5mcmFEb3dudGltZScgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAnYXZnSW5mcmFEb3dudGltZScgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCdwYXNzZXJCeV9jb3VudCcpXCI+UGFzc2VyIEJ5PHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJ3Bhc3NlckJ5X2NvdW50JyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICdwYXNzZXJCeV9jb3VudCcgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCdiZWxvdzEyJylcIj5CZWxvdzEyIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICdiZWxvdzEyJyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICdiZWxvdzEyJyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJzEzLTE5JylcIj4xMy0xOSA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAnMTMtMTknICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJzEzLTE5JyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJzIwLTMwJylcIj4yMC0zMCA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAnMjAtMzAnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJzIwLTMwJyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ID09PScxOTMnXCIgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9uU29ydCgnMzEtNDAnKVwiPjMxLTQwIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICczMS00MCcgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAnMzEtNDAnID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09JzE5MydcIiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCc0MS01MCcpXCI+NDEtNTAgPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJzQxLTUwJyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICc0MS01MCcgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0nMTkzJ1wiIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJzUxLTYwJylcIj41MS02MCA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAnNTEtNjAnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJzUxLTYwJyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PScxOTMnXCIgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9uU29ydCgnMzEtNDUnKVwiPjMxLTQ1IDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICczMS00NScgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAnMzEtNDUnID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgIT09JzE5MydcIiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCc0Ni01OScpXCI+NDYtNTkgPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJzQ2LTU5JyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICc0Ni01OScgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCc2MCBhYm92ZScpXCI+NjAgYWJvdmUgPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJzYwIGFib3ZlJyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICc2MCBhYm92ZScgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCdtYWxlJylcIj5NYWxlIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICdtYWxlJyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICdtYWxlJyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJ2ZlbWFsZScpXCI+RmVtYWxlIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICdmZW1hbGUnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJ2ZlbWFsZScgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyICpuZ0Zvcj1cImxldCBvYmogb2YgZ2V0U3VtbWFyeVRhYmxlRGF0YTtsZXQgaT1pbmRleDtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIChjbGljayk9XCJzdG9yZVZpZXcob2JqKVwiIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cInRleHQtcHJpbWFyeSB0ZXh0LWNhcGl0YWxpemUgdGV4dC1kZWNvcmF0aW9uLXVuZGVybGluZSBjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzdG9yZVZpZXcob2JqLnN0b3JlSWQpXCI+e3tvYmouc3RvcmVOYW1lfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e29iai5zdG9yZUlkfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cInN0b3JlQ29kZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBvYmouc3RvcmVDb2RlICE9PSBudWxsICYmIG9iai5zdG9yZUNvZGUgIT09ICcnID8gb2JqLnN0b3JlQ29kZSA6ICctJyB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwib2JqPy5kYXRlXCI+e3tvYmo/LmRhdGUgfCBkYXRlOidNTU0gZGQsIHl5eXknfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e29iai5mb290ZmFsbENvdW50fX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e29iai5ib3VuY2VkQ291bnR9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7b2JqLmVuZ2FnZXJzQ291bnR9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7b2JqLm1pc3NlZE9wcG9ydHVuaXR5Q291bnR9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSc0NTInXCI+e3tvYmoucG90ZW50aWFsQnV5ZXJzQ291bnR9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7b2JqLmNvbnZlcnNpb25SYXRlfX0lPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tvYmouTk9CQ291bnR9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7b2JqLmF2Z0R3ZWxsVGltZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tvYmouYXZnSW5mcmFEb3dudGltZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tvYmoucGFzc2VyQnlfY291bnR9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7b2JqLmJlbG93MTJ9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7b2JqWycxMy0xOSddfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e29ialsnMjAtMzAnXX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09JzE5MydcIj57e29ialsnMzEtNDAnXX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgKm5nSWY9XCJoZWFkZXJEYXRhPy5jbGllbnQgPT09JzE5MydcIj57e29ialtcIjQxLTUwXCJdfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cImhlYWRlckRhdGE/LmNsaWVudCA9PT0nMTkzJ1wiPnt7b2JqW1wiNTEtNjBcIl19fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PScxOTMnXCI+e3tvYmpbJzMxLTQ1J119fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PScxOTMnXCI+e3tvYmpbXCI0Ni01OVwiXX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tvYmpbXCI2MCBhYm92ZVwiXX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tvYmoubWFsZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tvYmouZmVtYWxlfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8bGliLXBhZ2luYXRpb24gW2l0ZW1zUGVyUGFnZV09XCJwYWdlU2l6ZVwiIFtjdXJyZW50UGFnZV09XCJvZmZzZXRcIiBbdG90YWxJdGVtc109XCJ0b3RhbEl0ZW1zXCJcclxuICAgICAgICAgICAgICAgICAgICBbcGFnaW5hdGlvblNpemVzXT1cInBhZ2luYXRpb25TaXplc1wiIFtwYWdlU2l6ZV09XCJwYWdlU2l6ZVwiIChwYWdlQ2hhbmdlKT1cIm9uUGFnZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAocGFnZVNpemVDaGFuZ2UpPVwib25QYWdlU2l6ZUNoYW5nZSgkZXZlbnQpXCI+PC9saWItcGFnaW5hdGlvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbjwvZGl2PlxyXG5cclxuPGRpdiAqbmdJZj1cInNob3dSZXBvcnRQcm9jZXNzaW5nQ2FyZCAmJiAhZGF0YVByb2Nlc3NlZExvYWRpbmdcIiBjbGFzcz1cInJvdyBweC0zXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY2FyZCBkYXRhcHJvY2Vzc2VkIHBiLTAgcHgtMCBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICA8aW1nIGNsYXNzPVwiZGF0YXByb2Nlc3NlZGdpZlwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ljb25zL2RhdGFfYW5hbHlzZV9naWYuZ2lmXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRhdGFwcm9jZXNzZWQtdGl0bGVcIj5EYXRhIGJlaW5nIFByb2Nlc3NlZDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkYXRhcHJvY2Vzc2VkLXN1YlwiPkRhdGEgZm9yIHRoZSBzZWxlY3RlZCBkYXRlIHt7IHllc3RlcmRheURhdGUgfX0sIGlzIGN1cnJlbnRseSBiZWluZyBwcm9jZXNzZWQgYW5kXHJcbiAgICAgICAgICAgIHdpbGwgYmUgYXZhaWxhYmxlIHNob3J0bHkuPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRhdGFwcm9jZXNzZWQtc3ViXCI+IElmIHlvdSB3aXNoIHRvIHZpZXcgZGF0YSBmb3Igb3RoZXIgZGF0ZXMsIFJlbW92ZSB7eyB5ZXN0ZXJkYXlEYXRlIH19IGZyb20geW91clxyXG4gICAgICAgICAgICBzZWxlY3Rpb24gb3IgY2hvb3NlIGEgZGlmZmVyZW50IGRhdGUgcmFuZ2UuPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbjwvZGl2PlxyXG48ZGl2ICpuZ0lmPVwiZGF0YVByb2Nlc3NlZExvYWRpbmdcIiBjbGFzcz1cImNhcmQgcm93IGxvYWRlciBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjxkaXYgKm5nSWY9XCIhc2hvd1JlcG9ydFByb2Nlc3NpbmdDYXJkICYmICFkYXRhUHJvY2Vzc2VkTG9hZGluZyAmJiBpc0Zvb3RmYWxsVmlld1wiIGNsYXNzPVwicm93XCI+XHJcbiAgICA8ZGl2ICpuZ0lmPVwiKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/LnVzZXJUeXBlID09PSAndGFuZ28nIHx8IGNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5pc05vcm1hbGl6ZWRcIlxyXG4gICAgICAgIGNsYXNzPVwiY29sLW1kLTEyIHRleHQtZW5kXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgZm9ybS1zd2l0Y2ggbXktMlwiIHN0eWxlPVwiZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cImZvcm0tY2hlY2staW5wdXQgY3Vyc29yLXBvaW50ZXJcIiB0eXBlPVwiY2hlY2tib3hcIiBpZD1cImZsZXhTd2l0Y2hDaGVja0RlZmF1bHRcIlxyXG4gICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwibm9ybWFsaXplXCIgKGNoYW5nZSk9XCJ0b2dnbGVOb3JtYWxpemVmZm9ubHkoJGV2ZW50KVwiPjxzcGFuIGNsYXNzPVwibm9ybWFsaXplLXRleHRcIj5WaWV3XHJcbiAgICAgICAgICAgICAgICBOb3JtYWxpemVkXHJcbiAgICAgICAgICAgICAgICBEYXRhPC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwicm93IGd4LTNcIiAqbmdJZj1cInN0b3JlSWRhcnJheT8ubGVuZ3RoPjFcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQgY2FyZC1ib3JkZXIgaC0xMDBcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgaC0xMDAgcG9zaXRpb24tcmVsYXRpdmVcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJweC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgZWxsaXBzZTEgYm9yZGVyLTAgcHgtMyBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic20tem9vbS04MCB3LTEwMCBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiIFtuZ2JUb29sdGlwXT1cImZvb3RmYWxsVG9vbHRpcFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJyaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBEaXNwbGF5IGZvb3RmYWxsIGNvdW50IG9yICctLScgaWYgbm90IGF2YWlsYWJsZSAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2FyZC1sYWJlbCBoZWFkZXJcIj57eyBnZXRGb290ZmFsbENhcmREYXRhPy5jYXJkPy5mb290ZmFsbD8uY291bnQgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldEZvb3RmYWxsQ2FyZERhdGE/LmNhcmQ/LmZvb3RmYWxsPy5jb3VudC50b0xvY2FsZVN0cmluZygnZW4tSU4nKSA6ICctLSdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLWhlYWRlclwiPnt7Zm9vdGZhbGxOYW1lfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+XHJcbiAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBTd2l0Y2ggdG9nZ2xlIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10b29sYmFyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIHRleHQtZW5kXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgZm9ybS1zd2l0Y2ggdGV4dC1lbmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dCBtdC0xIGN1cnNvci1wb2ludGVyXCIgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiZmxleFN3aXRjaENoZWNrRGVmYXVsdFwiIFsobmdNb2RlbCldPVwiaXNBdmVyYWdlRm9vdGZhbGxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJ0b2dnbGVBdmVyYWdlRm9vdGZhbGwoJGV2ZW50KVwiIFtkaXNhYmxlZF09XCJpc0Rpc2FibGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImlzQXZlcmFnZUZvb3RmYWxsXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsIG10LTVcIj5BdmVyYWdlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFpc0F2ZXJhZ2VGb290ZmFsbFwiIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbCBtdC01XCI+QWN0dWFsPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZm9vdGZhbGxUb29sdGlwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b29sdGlwLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwidG9vbHRpcC10aXRsZSB0ZXh0LXN0YXJ0XCI+Rm9vdGZhbGw8L2g1PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cInRleHQtc3RhcnRcIj5Ub3RhbCB1bmlxdWUgd2Fsay1pbnMgaW50byB0aGUgc2VsZWN0ZWQgc3RvcmVzLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPVwidGV4dC1zdGFydFwiPnt7Z2V0Q2FyZERhdGE/LmZvb3RmYWxsPy5jb3VudH19PC9oND5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTkgcGUtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW2NsYXNzLmQtbm9uZV09XCIhZm9vdGZhbGxsb2FkaW5nXCIgY2xhc3M9XCJ0ZXh0LWNlbnRlciBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIiBzdHlsZT1cImhlaWdodDoxMDBweFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwibG9hZGVyLWltZ1wiIHNyYz1cImFzc2V0cy90YW5nby9sYXlvdXQvTG9hZGVyLmdpZlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJmb290ZmFsbE5vZGF0YVwiIGNsYXNzPVwicm93XCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhcmQtYm9keSBwYi0wIHB4LTAgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiZm9vdGltZy1ub2RhdGExXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvTm9kYXRhMS5zdmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS10aXRsZTFcIj5ObyBkYXRhIGZvdW5kPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJub2RhdGEtc3ViXCI+VGhlcmUgaXMgbm8gcmVzdWx0IGZvciB0aGlzIGNvbnZlcnNpb24gZnVubmVsPC9kaXY+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBbY2xhc3MuZC1ub25lXT1cImZvb3RmYWxsTm9kYXRhIHx8IGZvb3RmYWxsbG9hZGluZ1wiIGNsYXNzPVwidGV4dC1jZW50ZXJcIiBpZD1cIkZvb3RmYWxsXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMyBtdC0zIGF2Z3dlZWtseVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtdC0xIGN1cnNvci1wb2ludGVyIGZzLTVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJkYXRlVHlwZSA9PT0nZGFpbHknID8gJ3RleHQtcHJpbWFyeScgOicnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImRhdGVWYWx1ZSgnZGFpbHknKVwiPjFEPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm10LTEgY3Vyc29yLXBvaW50ZXIgZnMtNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cImRhdGVUeXBlID09PSd3ZWVrbHknID8gJ3RleHQtcHJpbWFyeScgOicnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImRhdGVWYWx1ZSgnd2Vla2x5JylcIj4xVzwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtdC0xIGN1cnNvci1wb2ludGVyIGZzLTVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJkYXRlVHlwZSA9PT0nbW9udGhseScgPyAndGV4dC1wcmltYXJ5JyA6JydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZGF0ZVZhbHVlKCdtb250aGx5JylcIj4xTTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtZm9vdGVyIG1zLTIgcC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cIiFnZXRGb290ZmFsbENhcmREYXRhPy5kYXRhPy5mb290ZmFsbD8uUHJldmlvdXNWYXJpYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTggMThcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMjMyOF80NjU0KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTExLjUgOUw2Ljc1IDQuMjVMNC4yNSA2Ljc1TDAuNSAzTTExLjUgOUg4LjVNMTEuNSA5VjZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiI0Q5MkQyMFwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMjMyOF80NjU0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cImdldEZvb3RmYWxsQ2FyZERhdGE/LmRhdGE/LmZvb3RmYWxsPy5QcmV2aW91c1ZhcmlhdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zMjE2XzExOClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMS41IDNMNi43NSA3Ljc1TDQuMjUgNS4yNUwwLjUgOU0xMS41IDNIOC41TTExLjUgM1Y2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMwMzk4NTVcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzMyMTZfMTE4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZ2V0Rm9vdGZhbGxDYXJkRGF0YT8uZGF0YT8uZm9vdGZhbGw/LlByZXZpb3VzRGF0YSA9PT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGVyY2VudC12YWx1ZSBtcy0yXCI+MCU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMiBtcy0yXCI+PHNwYW4gY2xhc3M9XCJwZXJjZW50LXZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImdldEZvb3RmYWxsQ2FyZERhdGE/LmRhdGE/LmZvb3RmYWxsPy5QcmV2aW91c0RhdGEgIT09MFwiPnt7Z2V0Rm9vdGZhbGxDYXJkRGF0YT8uZGF0YT8uZm9vdGZhbGw/LlByZXZpb3VzRGF0YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gZ2V0Rm9vdGZhbGxDYXJkRGF0YT8uZGF0YT8uZm9vdGZhbGw/LlByZXZpb3VzRGF0YTonLS0nfX0lPC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ3ZWVrLWZvbnRcIj4gdnMgUHJldmlvdXMgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJkYXRlVHlwZSA9PT0nZGFpbHknXCI+ZGF5PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J3dlZWtseSdcIj53ZWVrPC9zcGFuPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSdtb250aGx5J1wiPm1vbnRoPC9zcGFuPiA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0zXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGNhcmQtYm9yZGVyIGgtMTAwXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBlbGxpcHNlMSBib3JkZXItMCBweC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW5cIiBbbmdiVG9vbHRpcF09XCJkb3duVG9vbHRpcFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJyaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWItaGVhZGVybmV3XCI+QXZnIERvd250aW1lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG1lLTJcIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgaGVhZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8uYXZnRG93blRpbWUgPT09IDBcIj4wIG1pbnM8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIFwiICpuZ0lmPVwiZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5hdmdEb3duVGltZSAhPT0gMFwiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2FyZC1sYWJlbCBoZWFkZXJcIj57e2dldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8uYXZnRG93blRpbWUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LmF2Z0Rvd25UaW1lIDonLS0nfX0gbWlucyA8L3NwYW4+PHNwYW4gY2xhc3M9XCJtdC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCIhZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5kYXRhPy5tYXhfZG93bnRpbWVfc3RvcmU/LlByZXZpb3VzVmFyaWF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIiB2aWV3Qm94PVwiMCAwIDE4IDE4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzIzMjhfNDY1NClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTExLjUgOUw2Ljc1IDQuMjVMNC4yNSA2Ljc1TDAuNSAzTTExLjUgOUg4LjVNMTEuNSA5VjZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjRDkyRDIwXCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzIzMjhfNDY1NFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5kYXRhPy5tYXhfZG93bnRpbWVfc3RvcmU/LlByZXZpb3VzVmFyaWF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzMyMTZfMTE4KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTEuNSAzTDYuNzUgNy43NUw0LjI1IDUuMjVMMC41IDlNMTEuNSAzSDguNU0xMS41IDNWNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMwMzk4NTVcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzIxNl8xMThcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtdC0yIG1zLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmRhdGE/Lm1heF9kb3dudGltZV9zdG9yZT8uUHJldmlvdXNEYXRhID09PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+MCU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5kYXRhPy5tYXhfZG93bnRpbWVfc3RvcmU/LlByZXZpb3VzRGF0YSAhPT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiPnt7Z2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5kYXRhPy5tYXhfZG93bnRpbWVfc3RvcmU/LlByZXZpb3VzRGF0YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5kYXRhPy5tYXhfZG93bnRpbWVfc3RvcmU/LlByZXZpb3VzRGF0YTonLS0nfX0lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIndlZWstZm9udFwiPiB2cyBQcmV2aW91cyA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J2RhaWx5J1wiPmRheTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J3dlZWtseSdcIj53ZWVrPC9zcGFuPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J21vbnRobHknXCI+bW9udGg8L3NwYW4+PC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cInN1Yi1oZWFkZXJcIj5BdmcgRG93biBUaW1lIDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm14LTMgbXQtOVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAgKm5nSWY9XCJnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LmF2Z0Rvd25UaW1lICYmIGdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8uYXZnRG93blRpbWUgIT09IDAgXCIgY2xhc3M9XCJjYXJkLWxhYmVsIGhlYWRlciB0ZXh0LWRlY29yYXRpb24tdW5kZXJsaW5lIGN1cnNvci1wb2ludGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzdG9yZVZpZXcoZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5kYXRhPy5tYXhfZG93bnRpbWVfc3RvcmU/LnN0b3JlX2lkKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3tnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmRhdGE/Lm1heF9kb3dudGltZV9zdG9yZT8uc3RvcmVfbmFtZX19PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICAqbmdJZj1cIiFnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LmF2Z0Rvd25UaW1lIHx8IGdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8uYXZnRG93blRpbWUgPT09IDBcIiBjbGFzcz1cImhlYWRlclwiPk5vdCBBdmFpbGFibGU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN1Yi1oZWFkZXJcIj5IaWdoZXN0IERvd250aW1lIFN0b3JlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZG93blRvb2x0aXA+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvb2x0aXAtY29udGVudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9XCJ0b29sdGlwLXRpdGxlIHRleHQtc3RhcnRcIj5BdmcgRG93biBUaW1lPC9oNT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXN0YXJ0XCI+QXZlcmFnZSBjYW1lcmEgJiBuZXR3b3JrIGRvd250aW1lIGZvciB0aGUgc2VsZWN0ZWQgc3RvcmVzLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtN1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBjYXJkLWJvcmRlciBoLTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBneC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgcC0wIGQtZmxleCBmbGV4LWNvbHVtbiBoLTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTMgbWUtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBlbGxpcHNlMSBib3JkZXItMCBweC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLWhlYWRlcm5ld1wiPlN0b3JlIE9wZXJhdGlvbnMgPHNwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgbmdiVG9vbHRpcD1cIkF2ZyBzdG9yZSBvcGVuICYgY2xvc2UgdGltZSBhY3Jvc3MgdGhlIHNlbGVjdGVkIHN0b3Jlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJ0b3BcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8xNDMyXzgwMDM1KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDA2NSAxMC42NjY2VjcuOTk5OTJNOC4wMDA2NSA1LjMzMzI1SDguMDA3MzJNMTQuNjY3MyA3Ljk5OTkyQzE0LjY2NzMgMTEuNjgxOCAxMS42ODI2IDE0LjY2NjYgOC4wMDA2NSAxNC42NjY2QzQuMzE4NzUgMTQuNjY2NiAxLjMzMzk4IDExLjY4MTggMS4zMzM5OCA3Ljk5OTkyQzEuMzMzOTggNC4zMTgwMiA0LjMxODc1IDEuMzMzMjUgOC4wMDA2NSAxLjMzMzI1QzExLjY4MjYgMS4zMzMyNSAxNC42NjczIDQuMzE4MDIgMTQuNjY3MyA3Ljk5OTkyWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzE0MzJfODAwMzVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjZcIiBoZWlnaHQ9XCIxMFwiIHZpZXdCb3g9XCIwIDAgNiAxMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMSA5TDUgNUwxIDFcIiBzdHJva2U9XCIjOThBMkIzXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtYXJvdW5kIG15LWF1dG9cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEF2ZyBPcGVuIFRpbWUgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC01IHRleHQtY2VudGVyIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LXRpdGxlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3N0b3JlT3BlcmF0aW9uRGF0YT8ub3ZlcmFsbD8uYXZnT3BlblRpbWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gc3RvcmVPcGVyYXRpb25EYXRhPy5vdmVyYWxsPy5hdmdPcGVuVGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAnLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLWhlYWRlclwiPkF2Zy4gT3BlbiBUaW1lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIERpdmlkZXIgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLTxkaXYgY2xhc3M9XCJjb2wtbWQtMiBtdC01IG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjFcIiB2aWV3Qm94PVwiMCAwIDIwIDFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaW5lIHkxPVwiMC41XCIgeDI9XCIyMFwiIHkyPVwiMC41XCIgc3Ryb2tlPVwiI0QwRDVERFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pi0tPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEF2ZyBDbG9zZSBUaW1lIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNSB0ZXh0LWNlbnRlciBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImxlZnQtY2FyZC1jb3VudC10aXRsZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tzdG9yZU9wZXJhdGlvbkRhdGE/Lm92ZXJhbGw/LmF2Z0Nsb3NlVGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBzdG9yZU9wZXJhdGlvbkRhdGE/Lm92ZXJhbGw/LmF2Z0Nsb3NlVGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAnLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLWhlYWRlclwiPkF2Zy4gQ2xvc2UgVGltZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSBkLWZsZXggLS0+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gPCEtLSBjYXJkLWJvZHkgLS0+XHJcblxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gY29sLW1kLTYgLS0+XHJcblxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0zIG15LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQgY2FyZC1ib3JkZXIgaC0xMDAgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBlbGxpcHNlMSBib3JkZXItMCBweC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW4gY3Vyc29yLXBvaW50ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInN0b3JlVmlldyhzdG9yZU9wZXJhdGlvbkRhdGE/LnRvcExhdGVPcGVuPy5zdG9yZUlkKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhcmQtbGFiZWxuZXcgaGVhZGVyIHRleHQtZGVjb3JhdGlvbi11bmRlcmxpbmVcIj57e3N0b3JlT3BlcmF0aW9uRGF0YT8udG9wTGF0ZU9wZW4/LnN0b3JlTmFtZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yZU9wZXJhdGlvbkRhdGE/LnRvcExhdGVPcGVuPy5zdG9yZU5hbWUgOictLSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItaGVhZGVyXCI+VG9wIExhdGUgT3BlbjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbXQtNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyXCI+PCEtLXt7Z2V0Q2FyZERhdGE/LnJldmVudWU/LnZhbHVlID8/ICctLSd9fSAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xXCI+IDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LWhlYWRlcjFcIj57e3N0b3JlT3BlcmF0aW9uRGF0YT8udG9wTGF0ZU9wZW4/LmF2Z1N0b3JlT3BlblRpbWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgP3N0b3JlT3BlcmF0aW9uRGF0YT8udG9wTGF0ZU9wZW4/LmF2Z1N0b3JlT3BlblRpbWU6Jy0tJyB9fTwvc3Bhbj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ViLWhlYWRlclwiPkF2Zy4gU3RvcmUgT3BlbmluZyBUaW1lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMyBteS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGNhcmQtYm9yZGVyIGgtMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBlbGxpcHNlMSBib3JkZXItMCBweC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW4gY3Vyc29yLXBvaW50ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInN0b3JlVmlldyhzdG9yZU9wZXJhdGlvbkRhdGE/LnRvcEVhcmx5Q2xvc2U/LnN0b3JlSWQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2FyZC1sYWJlbG5ldyBoZWFkZXIgdGV4dC1kZWNvcmF0aW9uLXVuZGVybGluZVwiPnt7c3RvcmVPcGVyYXRpb25EYXRhPy50b3BFYXJseUNsb3NlPy5zdG9yZU5hbWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmVPcGVyYXRpb25EYXRhPy50b3BFYXJseUNsb3NlPy5zdG9yZU5hbWUgOictLSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItaGVhZGVyXCI+VG9wIEVhcmx5IENsb3NlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBtdC02XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj48IS0te3tnZXRDYXJkRGF0YT8ucmV2ZW51ZT8udmFsdWUgPz8gJy0tJ319IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTFcIj4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtaGVhZGVyMVwiPnt7c3RvcmVPcGVyYXRpb25EYXRhPy50b3BFYXJseUNsb3NlPy5hdmdTdG9yZUNsb3NlVGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/c3RvcmVPcGVyYXRpb25EYXRhPy50b3BFYXJseUNsb3NlPy5hdmdTdG9yZUNsb3NlVGltZTonLS0nIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJcIj5BdmcuIFN0b3JlIENsb3NpbmcgVGltZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIHJvdyAtLT5cclxuICAgICAgICAgICAgPC9kaXY+IDwhLS0gY2FyZCAtLT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInJvdyBneC0zIG1iLTRcIiBzdHlsZT1cImhlaWdodDozMDBweFwiICpuZ0lmPVwic3RvcmVJZGFycmF5Py5sZW5ndGg9PT0xXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC00XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGNhcmQtYm9yZGVyXCIgc3R5bGU9XCJoZWlnaHQ6MzAwcHhcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgcG9zaXRpb24tcmVsYXRpdmVcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJweC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgZWxsaXBzZTEgYm9yZGVyLTAgcHgtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW5cIiBbbmdiVG9vbHRpcF09XCJmb290ZmFsbFRvb2x0aXBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJyaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcmQtbGFiZWwgaGVhZGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBnZXRGb290ZmFsbENhcmREYXRhPy5jYXJkPy5mb290ZmFsbD8uY291bnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gZ2V0Rm9vdGZhbGxDYXJkRGF0YT8uY2FyZD8uZm9vdGZhbGw/LmNvdW50LnRvTG9jYWxlU3RyaW5nKCdlbi1JTicpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICctLScgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJcIj57e2Zvb3RmYWxsTmFtZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLXRvb2xiYXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiB0ZXh0LWVuZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgZm9ybS1zd2l0Y2ggdGV4dC1lbmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0IG10LTEgY3Vyc29yLXBvaW50ZXJcIiB0eXBlPVwiY2hlY2tib3hcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImlzQXZlcmFnZUZvb3RmYWxsXCIgKGNoYW5nZSk9XCJ0b2dnbGVBdmVyYWdlRm9vdGZhbGwoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJpc0Rpc2FibGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXNBdmVyYWdlRm9vdGZhbGxcIiBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgbXQtNVwiPkF2ZXJhZ2U8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhaXNBdmVyYWdlRm9vdGZhbGxcIiBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgbXQtNVwiPkFjdHVhbDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gVE9PTFRJUCAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZm9vdGZhbGxUb29sdGlwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b29sdGlwLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwidG9vbHRpcC10aXRsZSB0ZXh0LXN0YXJ0XCI+Rm9vdGZhbGw8L2g1PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cInRleHQtc3RhcnRcIj5Ub3RhbCB1bmlxdWUgd2Fsay1pbnMgaW50byB0aGUgc2VsZWN0ZWQgc3RvcmVzLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPVwidGV4dC1zdGFydFwiPnt7Z2V0Q2FyZERhdGE/LmZvb3RmYWxsPy5jb3VudH19PC9oND5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgcC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEwIHBlLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFtjbGFzcy5kLW5vbmVdPVwiIWZvb3RmYWxsbG9hZGluZ1wiIGNsYXNzPVwidGV4dC1jZW50ZXIgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCIgc3R5bGU9XCJoZWlnaHQ6MTgwcHhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImxvYWRlci1pbWdcIiBzcmM9XCJhc3NldHMvdGFuZ28vbGF5b3V0L0xvYWRlci5naWZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImZvb3RmYWxsTm9kYXRhXCIgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXJkLWJvZHkgcGItMCBweC0wIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImZvb3RpbWctbm9kYXRhMVwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ljb25zL05vZGF0YTEuc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXRpdGxlMVwiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW2NsYXNzLmQtbm9uZV09XCJmb290ZmFsbE5vZGF0YSB8fCBmb290ZmFsbGxvYWRpbmdcIiBjbGFzcz1cInRleHQtY2VudGVyXCIgc3R5bGU9XCJoZWlnaHQ6MTgwcHhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cIkZvb3RmYWxsXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTIgbXQtMyBhdmd3ZWVrbHlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMSBjdXJzb3ItcG9pbnRlciBmcy01XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiZGF0ZVR5cGUgPT09J2RhaWx5JyA/ICd0ZXh0LXByaW1hcnknIDonJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJkYXRlVmFsdWUoJ2RhaWx5JylcIj4xRDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMSBjdXJzb3ItcG9pbnRlciBmcy01XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiZGF0ZVR5cGUgPT09J3dlZWtseScgPyAndGV4dC1wcmltYXJ5JyA6JydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZGF0ZVZhbHVlKCd3ZWVrbHknKVwiPjFXPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtdC0xIGN1cnNvci1wb2ludGVyIGZzLTVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJkYXRlVHlwZSA9PT0nbW9udGhseScgPyAndGV4dC1wcmltYXJ5JyA6JydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZGF0ZVZhbHVlKCdtb250aGx5JylcIj4xTTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtZm9vdGVyIG1zLTIgcC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cIiFnZXRGb290ZmFsbENhcmREYXRhPy5kYXRhPy5mb290ZmFsbD8uUHJldmlvdXNWYXJpYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTggMThcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMjMyOF80NjU0KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTExLjUgOUw2Ljc1IDQuMjVMNC4yNSA2Ljc1TDAuNSAzTTExLjUgOUg4LjVNMTEuNSA5VjZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiI0Q5MkQyMFwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMjMyOF80NjU0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cImdldEZvb3RmYWxsQ2FyZERhdGE/LmRhdGE/LmZvb3RmYWxsPy5QcmV2aW91c1ZhcmlhdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zMjE2XzExOClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMS41IDNMNi43NSA3Ljc1TDQuMjUgNS4yNUwwLjUgOU0xMS41IDNIOC41TTExLjUgM1Y2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMwMzk4NTVcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzMyMTZfMTE4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZ2V0Rm9vdGZhbGxDYXJkRGF0YT8uZGF0YT8uZm9vdGZhbGw/LlByZXZpb3VzRGF0YSA9PT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGVyY2VudC12YWx1ZSBtcy0yXCI+MCU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMiBtcy0yXCI+PHNwYW4gY2xhc3M9XCJwZXJjZW50LXZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImdldEZvb3RmYWxsQ2FyZERhdGE/LmRhdGE/LmZvb3RmYWxsPy5QcmV2aW91c0RhdGEgIT09MFwiPnt7Z2V0Rm9vdGZhbGxDYXJkRGF0YT8uZGF0YT8uZm9vdGZhbGw/LlByZXZpb3VzRGF0YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gZ2V0Rm9vdGZhbGxDYXJkRGF0YT8uZGF0YT8uZm9vdGZhbGw/LlByZXZpb3VzRGF0YTonLS0nfX0lPC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ3ZWVrLWZvbnRcIj4gdnMgUHJldmlvdXMgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJkYXRlVHlwZSA9PT0nZGFpbHknXCI+ZGF5PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J3dlZWtseSdcIj53ZWVrPC9zcGFuPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGVUeXBlID09PSdtb250aGx5J1wiPm1vbnRoPC9zcGFuPiA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiA8IS0tIHB4LTAgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gY29sLW1kLTEyIC0tPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+IDwhLS0gcm93IC0tPlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0zXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGNhcmQtYm9yZGVyIGgtMTAwXCIgc3R5bGU9XCJoZWlnaHQ6MTMwcHggIWltcG9ydGFudFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgZWxsaXBzZTEgYm9yZGVyLTAgcHgtM1wiIHN0eWxlPVwibWluLWhlaWdodDo1NHB4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW5cIiBbbmdiVG9vbHRpcF09XCJkb3duVG9vbHRpcFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJyaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWItaGVhZGVybmV3XCI+QXZnIERvd250aW1lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG1lLTJcIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteC0zIG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIGNhcmQtbGFiZWwgaGVhZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImdldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8uYXZnRG93blRpbWUgPT09IDBcIj4wIG1pbnM8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS0xIFwiICpuZ0lmPVwiZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5jYXJkPy5hdmdEb3duVGltZSAhPT0gMFwiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2FyZC1sYWJlbCBoZWFkZXJcIj57e2dldE1pc3NlZE9wcG9ydHVuaXR5RGF0YT8uY2FyZD8uYXZnRG93blRpbWUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmNhcmQ/LmF2Z0Rvd25UaW1lIDonLS0nfX0gbWlucyA8L3NwYW4+PHNwYW4gY2xhc3M9XCJtdC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCIhZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5kYXRhPy5tYXhfZG93bnRpbWVfc3RvcmU/LlByZXZpb3VzVmFyaWF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIiB2aWV3Qm94PVwiMCAwIDE4IDE4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzIzMjhfNDY1NClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTExLjUgOUw2Ljc1IDQuMjVMNC4yNSA2Ljc1TDAuNSAzTTExLjUgOUg4LjVNMTEuNSA5VjZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjRDkyRDIwXCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzIzMjhfNDY1NFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnICpuZ0lmPVwiZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5kYXRhPy5tYXhfZG93bnRpbWVfc3RvcmU/LlByZXZpb3VzVmFyaWF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzMyMTZfMTE4KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTEuNSAzTDYuNzUgNy43NUw0LjI1IDUuMjVMMC41IDlNMTEuNSAzSDguNU0xMS41IDNWNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMwMzk4NTVcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzIxNl8xMThcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtdC0yIG1zLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJnZXRNaXNzZWRPcHBvcnR1bml0eURhdGE/LmRhdGE/Lm1heF9kb3dudGltZV9zdG9yZT8uUHJldmlvdXNEYXRhID09PTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXJjZW50LXZhbHVlXCI+MCU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5kYXRhPy5tYXhfZG93bnRpbWVfc3RvcmU/LlByZXZpb3VzRGF0YSAhPT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGVyY2VudC12YWx1ZVwiPnt7Z2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5kYXRhPy5tYXhfZG93bnRpbWVfc3RvcmU/LlByZXZpb3VzRGF0YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0TWlzc2VkT3Bwb3J0dW5pdHlEYXRhPy5kYXRhPy5tYXhfZG93bnRpbWVfc3RvcmU/LlByZXZpb3VzRGF0YTonLS0nfX0lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIndlZWstZm9udFwiPiB2cyBQcmV2aW91cyA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J2RhaWx5J1wiPmRheTwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J3dlZWtseSdcIj53ZWVrPC9zcGFuPiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0ZVR5cGUgPT09J21vbnRobHknXCI+bW9udGg8L3NwYW4+PC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cInN1Yi1oZWFkZXJcIj5BdmcgRG93biBUaW1lIDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2Rvd25Ub29sdGlwPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b29sdGlwLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwidG9vbHRpcC10aXRsZSB0ZXh0LXN0YXJ0XCI+QXZnIERvd24gVGltZTwvaDU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwidGV4dC1zdGFydFwiPkF2ZXJhZ2UgY2FtZXJhICYgbmV0d29yayBkb3dudGltZSBmb3IgdGhlIHNlbGVjdGVkIHN0b3Jlcy48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQgY2FyZC1ib3JkZXIgaC0xMDAgbXQtMlwiIHN0eWxlPVwiaGVpZ2h0OjE2NHB4ICFpbXBvcnRhbnRcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgcC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGVsbGlwc2UxIGJvcmRlci0wIHB4LTNcIiBzdHlsZT1cIm1pbi1oZWlnaHQ6NTRweFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJuZXdcIj5TdG9yZSBPcGVyYXRpb25zIDxzcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIG5nYlRvb2x0aXA9XCJBdmcgc3RvcmUgb3BlbiAmIGNsb3NlIHRpbWUgYWNyb3NzIHRoZSBzZWxlY3RlZCBzdG9yZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwidG9wXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMTQzMl84MDAzNSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwNjUgMTAuNjY2NlY3Ljk5OTkyTTguMDAwNjUgNS4zMzMyNUg4LjAwNzMyTTE0LjY2NzMgNy45OTk5MkMxNC42NjczIDExLjY4MTggMTEuNjgyNiAxNC42NjY2IDguMDAwNjUgMTQuNjY2NkM0LjMxODc1IDE0LjY2NjYgMS4zMzM5OCAxMS42ODE4IDEuMzMzOTggNy45OTk5MkMxLjMzMzk4IDQuMzE4MDIgNC4zMTg3NSAxLjMzMzI1IDguMDAwNjUgMS4zMzMyNUMxMS42ODI2IDEuMzMzMjUgMTQuNjY3MyA0LjMxODAyIDE0LjY2NzMgNy45OTk5MlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8xNDMyXzgwMDM1XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtYXJvdW5kIG10LTdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBBdmcgT3BlbiBUaW1lIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXIgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm15LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibGVmdC1jYXJkLWNvdW50LXRpdGxlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tzdG9yZU9wZXJhdGlvbkRhdGE/Lm92ZXJhbGw/LmF2Z09wZW5UaW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBzdG9yZU9wZXJhdGlvbkRhdGE/Lm92ZXJhbGw/LmF2Z09wZW5UaW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAnLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Yi1oZWFkZXJcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uc3RhcnREYXRlIT09dGhpcy5oZWFkZXJEYXRhPy5kYXRlPy5lbmREYXRlXCI+QXZnLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5PcGVuIFRpbWU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBEaXZpZGVyIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tPGRpdiBjbGFzcz1cImNvbC1tZC0yIG10LTUgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjFcIiB2aWV3Qm94PVwiMCAwIDIwIDFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpbmUgeTE9XCIwLjVcIiB4Mj1cIjIwXCIgeTI9XCIwLjVcIiBzdHJva2U9XCIjRDBENUREXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4tLT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gQXZnIENsb3NlIFRpbWUgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlciBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJsZWZ0LWNhcmQtY291bnQtdGl0bGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3N0b3JlT3BlcmF0aW9uRGF0YT8ub3ZlcmFsbD8uYXZnQ2xvc2VUaW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBzdG9yZU9wZXJhdGlvbkRhdGE/Lm92ZXJhbGw/LmF2Z0Nsb3NlVGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWItaGVhZGVyXCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ0aGlzLmhlYWRlckRhdGE/LmRhdGU/LnN0YXJ0RGF0ZSE9PXRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZVwiPkF2Zy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+Q2xvc2UgVGltZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNkb3duVG9vbHRpcD5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9vbHRpcC1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz1cInRvb2x0aXAtdGl0bGUgdGV4dC1zdGFydFwiPkF2ZyBEb3duIFRpbWU8L2g1PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cInRleHQtc3RhcnRcIj5BdmVyYWdlIGNhbWVyYSAmIG5ldHdvcmsgZG93bnRpbWUgZm9yIHRoZSBzZWxlY3RlZCBzdG9yZXMuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC01IFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBwYi0yIFwiIHN0eWxlPVwiaGVpZ2h0OjMwMHB4OyBwYWRkaW5nOjhweFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGJvcmRlci0wIHAtMCBzbS16b29tLTgwIG1iLTIgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXRsZS10ZXh0XCI+UmVjYXAgVmlkZW9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgcGxhY2VtZW50PVwicmlnaHRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5nYlRvb2x0aXA9XCJBIHF1aWNrIHJlY2FwIG9mIHRoZSBzdG9yZSBhY3Rpdml0eSBhbG9uZyB3aXRoIHRoZSBhdmcgdGVjaCBpbmZyYXN0cnVjdHVyZSBkb3dudGltZSBzdGF0dXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMTQzMl84MDAzNSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDA2NSAxMC42NjY2VjcuOTk5OTJNOC4wMDA2NSA1LjMzMzI1SDguMDA3MzJNMTQuNjY3MyA3Ljk5OTkyQzE0LjY2NzMgMTEuNjgxOCAxMS42ODI2IDE0LjY2NjYgOC4wMDA2NSAxNC42NjY2QzQuMzE4NzUgMTQuNjY2NiAxLjMzMzk4IDExLjY4MTggMS4zMzM5OCA3Ljk5OTkyQzEuMzMzOTggNC4zMTgwMiA0LjMxODc1IDEuMzMzMjUgOC4wMDA2NSAxLjMzMzI1QzExLjY4MjYgMS4zMzMyNSAxNC42NjczIDQuMzE4MDIgMTQuNjY3MyA3Ljk5OTkyWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMTQzMl84MDAzNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtc3ViIG1iLTJcIj5EYXRlZDoge3toZWFkZXJEYXRhPy5kYXRlPy5lbmREYXRlIHwgZGF0ZTonIGRkIE1NTSx5eXl5J319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvaDM+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tYnRuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNFwiIHZpZXdCb3g9XCIwIDAgMTYgMTRcIiBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOS41MjM0NCAwQzEwLjM5OTcgMCAxMS4yMzcgMC4xNzk0OTIgMTIuMDAxMyAwLjUwNDk5QzEyLjc5NDMgMC44NDI1NDIgMTMuNTA3OCAxLjMzODE2IDE0LjEwNTUgMS45NTI5OEMxNC43MDE4IDIuNTY2NDcgMTUuMTgzNiAzLjMwMDUyIDE1LjUxMTcgNC4xMTg5NUMxNS44MjgxIDQuOTA1MjMgMTYuMDAyNiA1Ljc2NjUzIDE2LjAwMjYgNi42NjY2N0MxNi4wMDI2IDcuNTY4MTUgMTUuODI4MSA4LjQyOTQ0IDE1LjUxMTcgOS4yMTU3M0MxNS4xODM2IDEwLjAzMTUgMTQuNzAxOCAxMC43NjU1IDE0LjEwNDIgMTEuMzgwM0MxMy41MDc4IDExLjk5MzggMTIuNzk0MyAxMi40ODk1IDExLjk5ODcgMTIuODI3QzExLjIzNDQgMTMuMTUyNSAxMC4zOTcxIDEzLjMzMiA5LjUyMjE0IDEzLjMzMkM4LjY0NTgzIDEzLjMzMiA3LjgwODU5IDEzLjE1MjUgNy4wNDQyNyAxMi44MjdDNi4yNTEzIDEyLjQ4OTUgNS41Mzc3NiAxMS45OTM4IDQuOTQxNDEgMTEuMzgwM0w0Ljk0MDEgMTEuMzc5QzQuMzQyNDUgMTAuNzY0MiAzLjg2MTk4IDEwLjAzMDEgMy41MzM4NSA5LjIxNTczQzMuNDMyMjkgOC45NjI1NiAzLjM0NTA1IDguNzAyNyAzLjI3MzQ0IDguNDM2MTRDMy40MDg4NSA4LjQ0OTUzIDMuNTQ2ODggOC40NTYyMyAzLjY4NjIgOC40NTYyM0MzLjk1MDUyIDguNDU2MjMgNC4yMDgzMyA4LjQzMjEyIDQuNDU5NjQgOC4zODUyNEM0LjUwMTMgOC41MTM4MyA0LjU0Njg3IDguNjQxMDggNC41OTYzNSA4Ljc2NTY2QzQuODY1ODkgOS40MzU0IDUuMjYxNzIgMTAuMDM4MiA1Ljc1MzkxIDEwLjU0NDVDNi4yNDYwOSAxMS4wNTA4IDYuODMzMzMgMTEuNDU4IDcuNDgzMDcgMTEuNzM1M0M4LjEwOTM4IDEyLjAwMTkgOC43OTgxOCAxMi4xNTA2IDkuNTIyMTQgMTIuMTUwNkMxMC4yNDYxIDEyLjE1MDYgMTAuOTMzNiAxMi4wMDMyIDExLjU2MTIgMTEuNzM1M0MxMi4yMTIyIDExLjQ1OCAxMi43OTgyIDExLjA1MDggMTMuMjkwNCAxMC41NDQ1QzEzLjc4MjYgMTAuMDM4MiAxNC4xNzg0IDkuNDM0MDYgMTQuNDQ3OSA4Ljc2NTY2QzE0LjcwNyA4LjEyMTM2IDE0Ljg1MTYgNy40MTI3NyAxNC44NTE2IDYuNjY4MDFDMTQuODUxNiA1LjkyMzI1IDE0LjcwODMgNS4yMTU5OSAxNC40NDc5IDQuNTcwMzZDMTQuMTc4NCAzLjkwMDYxIDEzLjc4MjYgMy4yOTc4NCAxMy4yOTA0IDIuNzkxNTFDMTIuNzk4MiAyLjI4NTE4IDEyLjIxMDkgMS44Nzc5NyAxMS41NjEyIDEuNjAwN0MxMC45MzQ5IDEuMzM0MTQgMTAuMjQ2MSAxLjE4NTQ1IDkuNTIyMTQgMS4xODU0NUM4Ljc5ODE4IDEuMTg1NDUgOC4xMTA2OCAxLjMzMjggNy40ODMwNyAxLjYwMDdDNy40MjcwOCAxLjYyNDgxIDcuMzcxMDkgMS42NTAyNiA3LjMxNjQxIDEuNjc1NzFDNy4xMDI4NiAxLjMzMDEyIDYuODQ1MDUgMS4wMTY2OCA2LjU0OTQ4IDAuNzQ0NzU5QzYuNzEwOTQgMC42NTkwMzIgNi44NzYzIDAuNTgwMDAxIDcuMDQ0MjcgMC41MDc2NjlDNy44MTEyIDAuMTc5NDkyIDguNjQ3MTQgMCA5LjUyMzQ0IDBaTTguNzc5OTUgMy40OTc0MkM4Ljc3OTk1IDMuMzM0IDguODQ1MDUgMy4xODY2NiA4Ljk0NzkyIDMuMDc5NUM5LjA1MjA4IDIuOTcyMzQgOS4xOTUzMSAyLjkwNjcgOS4zNTQxNyAyLjkwNjdDOS41MTMwMiAyLjkwNjcgOS42NTYyNSAyLjk3MjM0IDkuNzYwNDIgMy4wNzk1QzkuODY0NTggMy4xODY2NiA5LjkyODM5IDMuMzM0IDkuOTI4MzkgMy40OTc0MlY2LjYwNzczTDEyLjE4NzUgNy45ODYwN0MxMi4zMjI5IDguMDY5MTIgMTIuNDE0MSA4LjIwMTczIDEyLjQ1MDUgOC4zNDc3M0MxMi40ODcgOC40OTM3NCAxMi40NzAxIDguNjU0NDggMTIuMzg5MyA4Ljc5Mzc5VjguNzk1MTJDMTIuMzA4NiA4LjkzNDQzIDEyLjE3OTcgOS4wMjgyIDEyLjAzNzggOS4wNjU3QzExLjg5NTggOS4xMDMyMSAxMS43Mzk2IDkuMDg1NzkgMTEuNjA0MiA5LjAwMjc1SDExLjYwMjlMOS4wNzU1MiA3LjQ2MDk5QzguOTg4MjggNy40MTE0MyA4LjkxNjY3IDcuMzM5MDkgOC44NjQ1OCA3LjI1MzM3QzguODExMiA3LjE2MzYyIDguNzc5OTUgNy4wNTc4IDguNzc5OTUgNi45NDUyOFYzLjQ5NzQyWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjNjY3MDg1XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMy41MTMwMiAwLjM1MzUxNkM1LjQ1MzEyIDAuMzUzNTE2IDcuMDI2MDQgMS45NzE2MyA3LjAyNjA0IDMuOTY3NDdDNy4wMjYwNCA1Ljk2MzMyIDUuNDUzMTIgNy41ODE0MyAzLjUxMzAyIDcuNTgxNDNDMS41NzI5MiA3LjU4MTQzIDAgNS45NjMzMiAwIDMuOTY3NDdDMCAxLjk3MTYzIDEuNTcyOTIgMC4zNTM1MTYgMy41MTMwMiAwLjM1MzUxNlpNMy41MTMwMiA2LjAzOTY3TDUuMzk4NDQgMy42NDE5OEg0LjIyNzg2VjIuMzY2NzhIMi43OTgxOFYzLjY0MTk4SDEuNjI3NkwzLjUxMzAyIDYuMDM5NjdaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiNGMDQ0MzhcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcy0yXCIgKm5nSWY9XCJnZXRSZWNhcFZpZGVvRGF0YT8uZG93blRpbWUgPT09IDBcIj4wIE1pbnM8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1zLTJcIiAqbmdJZj1cImdldFJlY2FwVmlkZW9EYXRhPy5kb3duVGltZSAhPT0gMFwiPnt7Z2V0UmVjYXBWaWRlb0RhdGE/LmRvd25UaW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPz9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnLS0nfX0gTWluczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tYmFkZ2VcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJnZXRSZWNhcFZpZGVvRGF0YT8uaGVhbHRoID09PSdHT09EJ1wiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGlkPVwiRnJhbWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggaWQ9XCJWZWN0b3JcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMy40MzQ5IDIuNUMxNC44MjM4IDIuNSAxNS45ODcxIDMuMDEzODkgMTYuOTI0OSA0LjA0MTY3QzE3Ljg2MjcgNS4wNjk0NCAxOC4zMzEzIDYuMjkxNjcgMTguMzMwNyA3LjcwODMzQzE4LjMzMDcgNy45NTgzMyAxOC4zMTY4IDguMjA1IDE4LjI4OTEgOC40NDgzM0MxOC4yNjEzIDguNjkxNjcgMTguMjEyNyA4LjkzMTExIDE4LjE0MzIgOS4xNjY2N0gxMi45MzQ5TDExLjUxODIgNy4wNDE2N0MxMS40NDg4IDYuOTMwNTYgMTEuMzUxNiA2Ljg0MDI4IDExLjIyNjYgNi43NzA4M0MxMS4xMDE2IDYuNzAxMzkgMTAuOTY5NiA2LjY2NjY3IDEwLjgzMDcgNi42NjY2N0MxMC42NTAyIDYuNjY2NjcgMTAuNDg2OCA2LjcyMjIyIDEwLjM0MDcgNi44MzMzM0MxMC4xOTQ2IDYuOTQ0NDQgMTAuMDk0MSA3LjA4MzMzIDEwLjAzOTEgNy4yNUw4LjkxNDA2IDEwLjYyNUw4LjE4NDkgOS41NDE2N0M4LjExNTQ1IDkuNDMwNTYgOC4wMTgyMyA5LjM0MDI4IDcuODkzMjMgOS4yNzA4M0M3Ljc2ODIzIDkuMjAxMzkgNy42MzYyOCA5LjE2NjY3IDcuNDk3NCA5LjE2NjY3SDEuODUxNTZDMS43ODIxMiA4LjkzMDU2IDEuNzMzNTEgOC42OTA4MyAxLjcwNTczIDguNDQ3NUMxLjY3Nzk1IDguMjA0MTcgMS42NjQwNiA3Ljk2NDcyIDEuNjY0MDYgNy43MjkxN0MxLjY2NDA2IDYuMjk4NjEgMi4xMjkzNCA1LjA2OTQ0IDMuMDU5OSA0LjA0MTY3QzMuOTkwNDUgMy4wMTM4OSA1LjE1MDE3IDIuNSA2LjUzOTA2IDIuNUM3LjIwNTczIDIuNSA3LjgzNDM0IDIuNjMxOTQgOC40MjQ5IDIuODk1ODNDOS4wMTU0NSAzLjE1OTcyIDkuNTM5NjIgMy41Mjc3OCA5Ljk5NzQgNEMxMC40NDE4IDMuNTI3NzggMTAuOTU5MyAzLjE1OTcyIDExLjU0OTkgMi44OTU4M0MxMi4xNDA1IDIuNjMxOTQgMTIuNzY4OCAyLjUgMTMuNDM0OSAyLjVaTTkuOTk3NCAxNy41QzkuNzQ3NCAxNy41IDkuNTA3NjcgMTcuNDU0NyA5LjI3ODIzIDE3LjM2NDJDOS4wNDg3OCAxNy4yNzM2IDguODQ0MDYgMTcuMTM4MyA4LjY2NDA2IDE2Ljk1ODNMMy4wODA3MyAxMS4zNTQyQzIuOTk3NCAxMS4yNzA4IDIuOTIxMDEgMTEuMTg3NSAyLjg1MTU2IDExLjEwNDJDMi43ODIxMiAxMS4wMjA4IDIuNzEyNjcgMTAuOTMwNiAyLjY0MzIzIDEwLjgzMzNINy4wMzkwNkw4LjQ1NTczIDEyLjk1ODNDOC41MjUxNyAxMy4wNjk0IDguNjIyNCAxMy4xNTk3IDguNzQ3NCAxMy4yMjkyQzguODcyNCAxMy4yOTg2IDkuMDA0MzQgMTMuMzMzMyA5LjE0MzIzIDEzLjMzMzNDOS4zMjM3OCAxMy4zMzMzIDkuNDkwNDUgMTMuMjc3OCA5LjY0MzIzIDEzLjE2NjdDOS43OTYwMSAxMy4wNTU2IDkuOTAwMTcgMTIuOTE2NyA5Ljk1NTczIDEyLjc1TDExLjA4MDcgOS4zNzVMMTEuNzg5MSAxMC40NTgzQzExLjg3MjQgMTAuNTY5NCAxMS45NzY2IDEwLjY1OTcgMTIuMTAxNiAxMC43MjkyQzEyLjIyNjYgMTAuNzk4NiAxMi4zNTg1IDEwLjgzMzMgMTIuNDk3NCAxMC44MzMzSDE3LjMzMDdMMTcuMTIyNCAxMS4wODMzTDE2LjkxNDEgMTEuMzMzM0wxMS4zMDk5IDE2Ljk1ODNDMTEuMTI5MyAxNy4xMzg5IDEwLjkyOCAxNy4yNzQ0IDEwLjcwNTcgMTcuMzY1QzEwLjQ4MzUgMTcuNDU1NiAxMC4yNDc0IDE3LjUwMDYgOS45OTc0IDE3LjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMTJCNzZBXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJnZXRSZWNhcFZpZGVvRGF0YT8uaGVhbHRoID09PSdBVkVSQUdFJ1wiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGlkPVwiRnJhbWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggaWQ9XCJWZWN0b3JcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMy40MzQ5IDIuNUMxNC44MjM4IDIuNSAxNS45ODcxIDMuMDEzODkgMTYuOTI0OSA0LjA0MTY3QzE3Ljg2MjcgNS4wNjk0NCAxOC4zMzEzIDYuMjkxNjcgMTguMzMwNyA3LjcwODMzQzE4LjMzMDcgNy45NTgzMyAxOC4zMTY4IDguMjA1IDE4LjI4OTEgOC40NDgzM0MxOC4yNjEzIDguNjkxNjcgMTguMjEyNyA4LjkzMTExIDE4LjE0MzIgOS4xNjY2N0gxMi45MzQ5TDExLjUxODIgNy4wNDE2N0MxMS40NDg4IDYuOTMwNTYgMTEuMzUxNiA2Ljg0MDI4IDExLjIyNjYgNi43NzA4M0MxMS4xMDE2IDYuNzAxMzkgMTAuOTY5NiA2LjY2NjY3IDEwLjgzMDcgNi42NjY2N0MxMC42NTAyIDYuNjY2NjcgMTAuNDg2OCA2LjcyMjIyIDEwLjM0MDcgNi44MzMzM0MxMC4xOTQ2IDYuOTQ0NDQgMTAuMDk0MSA3LjA4MzMzIDEwLjAzOTEgNy4yNUw4LjkxNDA2IDEwLjYyNUw4LjE4NDkgOS41NDE2N0M4LjExNTQ1IDkuNDMwNTYgOC4wMTgyMyA5LjM0MDI4IDcuODkzMjMgOS4yNzA4M0M3Ljc2ODIzIDkuMjAxMzkgNy42MzYyOCA5LjE2NjY3IDcuNDk3NCA5LjE2NjY3SDEuODUxNTZDMS43ODIxMiA4LjkzMDU2IDEuNzMzNTEgOC42OTA4MyAxLjcwNTczIDguNDQ3NUMxLjY3Nzk1IDguMjA0MTcgMS42NjQwNiA3Ljk2NDcyIDEuNjY0MDYgNy43MjkxN0MxLjY2NDA2IDYuMjk4NjEgMi4xMjkzNCA1LjA2OTQ0IDMuMDU5OSA0LjA0MTY3QzMuOTkwNDUgMy4wMTM4OSA1LjE1MDE3IDIuNSA2LjUzOTA2IDIuNUM3LjIwNTczIDIuNSA3LjgzNDM0IDIuNjMxOTQgOC40MjQ5IDIuODk1ODNDOS4wMTU0NSAzLjE1OTcyIDkuNTM5NjIgMy41Mjc3OCA5Ljk5NzQgNEMxMC40NDE4IDMuNTI3NzggMTAuOTU5MyAzLjE1OTcyIDExLjU0OTkgMi44OTU4M0MxMi4xNDA1IDIuNjMxOTQgMTIuNzY4OCAyLjUgMTMuNDM0OSAyLjVaTTkuOTk3NCAxNy41QzkuNzQ3NCAxNy41IDkuNTA3NjcgMTcuNDU0NyA5LjI3ODIzIDE3LjM2NDJDOS4wNDg3OCAxNy4yNzM2IDguODQ0MDYgMTcuMTM4MyA4LjY2NDA2IDE2Ljk1ODNMMy4wODA3MyAxMS4zNTQyQzIuOTk3NCAxMS4yNzA4IDIuOTIxMDEgMTEuMTg3NSAyLjg1MTU2IDExLjEwNDJDMi43ODIxMiAxMS4wMjA4IDIuNzEyNjcgMTAuOTMwNiAyLjY0MzIzIDEwLjgzMzNINy4wMzkwNkw4LjQ1NTczIDEyLjk1ODNDOC41MjUxNyAxMy4wNjk0IDguNjIyNCAxMy4xNTk3IDguNzQ3NCAxMy4yMjkyQzguODcyNCAxMy4yOTg2IDkuMDA0MzQgMTMuMzMzMyA5LjE0MzIzIDEzLjMzMzNDOS4zMjM3OCAxMy4zMzMzIDkuNDkwNDUgMTMuMjc3OCA5LjY0MzIzIDEzLjE2NjdDOS43OTYwMSAxMy4wNTU2IDkuOTAwMTcgMTIuOTE2NyA5Ljk1NTczIDEyLjc1TDExLjA4MDcgOS4zNzVMMTEuNzg5MSAxMC40NTgzQzExLjg3MjQgMTAuNTY5NCAxMS45NzY2IDEwLjY1OTcgMTIuMTAxNiAxMC43MjkyQzEyLjIyNjYgMTAuNzk4NiAxMi4zNTg1IDEwLjgzMzMgMTIuNDk3NCAxMC44MzMzSDE3LjMzMDdMMTcuMTIyNCAxMS4wODMzTDE2LjkxNDEgMTEuMzMzM0wxMS4zMDk5IDE2Ljk1ODNDMTEuMTI5MyAxNy4xMzg5IDEwLjkyOCAxNy4yNzQ0IDEwLjcwNTcgMTcuMzY1QzEwLjQ4MzUgMTcuNDU1NiAxMC4yNDc0IDE3LjUwMDYgOS45OTc0IDE3LjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjRkFDQzE1XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJnZXRSZWNhcFZpZGVvRGF0YT8uaGVhbHRoID09PSdCQUQnXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgaWQ9XCJGcmFtZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBpZD1cIlZlY3RvclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTEzLjQzNDkgMi41QzE0LjgyMzggMi41IDE1Ljk4NzEgMy4wMTM4OSAxNi45MjQ5IDQuMDQxNjdDMTcuODYyNyA1LjA2OTQ0IDE4LjMzMTMgNi4yOTE2NyAxOC4zMzA3IDcuNzA4MzNDMTguMzMwNyA3Ljk1ODMzIDE4LjMxNjggOC4yMDUgMTguMjg5MSA4LjQ0ODMzQzE4LjI2MTMgOC42OTE2NyAxOC4yMTI3IDguOTMxMTEgMTguMTQzMiA5LjE2NjY3SDEyLjkzNDlMMTEuNTE4MiA3LjA0MTY3QzExLjQ0ODggNi45MzA1NiAxMS4zNTE2IDYuODQwMjggMTEuMjI2NiA2Ljc3MDgzQzExLjEwMTYgNi43MDEzOSAxMC45Njk2IDYuNjY2NjcgMTAuODMwNyA2LjY2NjY3QzEwLjY1MDIgNi42NjY2NyAxMC40ODY4IDYuNzIyMjIgMTAuMzQwNyA2LjgzMzMzQzEwLjE5NDYgNi45NDQ0NCAxMC4wOTQxIDcuMDgzMzMgMTAuMDM5MSA3LjI1TDguOTE0MDYgMTAuNjI1TDguMTg0OSA5LjU0MTY3QzguMTE1NDUgOS40MzA1NiA4LjAxODIzIDkuMzQwMjggNy44OTMyMyA5LjI3MDgzQzcuNzY4MjMgOS4yMDEzOSA3LjYzNjI4IDkuMTY2NjcgNy40OTc0IDkuMTY2NjdIMS44NTE1NkMxLjc4MjEyIDguOTMwNTYgMS43MzM1MSA4LjY5MDgzIDEuNzA1NzMgOC40NDc1QzEuNjc3OTUgOC4yMDQxNyAxLjY2NDA2IDcuOTY0NzIgMS42NjQwNiA3LjcyOTE3QzEuNjY0MDYgNi4yOTg2MSAyLjEyOTM0IDUuMDY5NDQgMy4wNTk5IDQuMDQxNjdDMy45OTA0NSAzLjAxMzg5IDUuMTUwMTcgMi41IDYuNTM5MDYgMi41QzcuMjA1NzMgMi41IDcuODM0MzQgMi42MzE5NCA4LjQyNDkgMi44OTU4M0M5LjAxNTQ1IDMuMTU5NzIgOS41Mzk2MiAzLjUyNzc4IDkuOTk3NCA0QzEwLjQ0MTggMy41Mjc3OCAxMC45NTkzIDMuMTU5NzIgMTEuNTQ5OSAyLjg5NTgzQzEyLjE0MDUgMi42MzE5NCAxMi43Njg4IDIuNSAxMy40MzQ5IDIuNVpNOS45OTc0IDE3LjVDOS43NDc0IDE3LjUgOS41MDc2NyAxNy40NTQ3IDkuMjc4MjMgMTcuMzY0MkM5LjA0ODc4IDE3LjI3MzYgOC44NDQwNiAxNy4xMzgzIDguNjY0MDYgMTYuOTU4M0wzLjA4MDczIDExLjM1NDJDMi45OTc0IDExLjI3MDggMi45MjEwMSAxMS4xODc1IDIuODUxNTYgMTEuMTA0MkMyLjc4MjEyIDExLjAyMDggMi43MTI2NyAxMC45MzA2IDIuNjQzMjMgMTAuODMzM0g3LjAzOTA2TDguNDU1NzMgMTIuOTU4M0M4LjUyNTE3IDEzLjA2OTQgOC42MjI0IDEzLjE1OTcgOC43NDc0IDEzLjIyOTJDOC44NzI0IDEzLjI5ODYgOS4wMDQzNCAxMy4zMzMzIDkuMTQzMjMgMTMuMzMzM0M5LjMyMzc4IDEzLjMzMzMgOS40OTA0NSAxMy4yNzc4IDkuNjQzMjMgMTMuMTY2N0M5Ljc5NjAxIDEzLjA1NTYgOS45MDAxNyAxMi45MTY3IDkuOTU1NzMgMTIuNzVMMTEuMDgwNyA5LjM3NUwxMS43ODkxIDEwLjQ1ODNDMTEuODcyNCAxMC41Njk0IDExLjk3NjYgMTAuNjU5NyAxMi4xMDE2IDEwLjcyOTJDMTIuMjI2NiAxMC43OTg2IDEyLjM1ODUgMTAuODMzMyAxMi40OTc0IDEwLjgzMzNIMTcuMzMwN0wxNy4xMjI0IDExLjA4MzNMMTYuOTE0MSAxMS4zMzMzTDExLjMwOTkgMTYuOTU4M0MxMS4xMjkzIDE3LjEzODkgMTAuOTI4IDE3LjI3NDQgMTAuNzA1NyAxNy4zNjVDMTAuNDgzNSAxNy40NTU2IDEwLjI0NzQgMTcuNTAwNiA5Ljk5NzQgMTcuNVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiNGMDQ0MzhcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcy0yXCI+e3tnZXRSZWNhcFZpZGVvRGF0YT8uaGVhbHRoID8/ICctLSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMVwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAxIDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaW5lIHgxPVwiMC41XCIgeTE9XCIwLjVcIiB4Mj1cIjAuNVwiIHkyPVwiMjMuNVwiIHN0cm9rZT1cIiM5OEEyQjNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tbGlua1wiIChjbGljayk9XCJjYW1lcmFWaWV3KClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZpZXcgY2FtZXJhXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxN1wiIGhlaWdodD1cIjE3XCIgdmlld0JveD1cIjAgMCAxNyAxN1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTEzLjMzNTkgOS4xNjgyOVYxNC4xNjgzQzEzLjMzNTkgMTQuNjEwMyAxMy4xNjAzIDE1LjAzNDIgMTIuODQ3OCAxNS4zNDY4QzEyLjUzNTIgMTUuNjU5NCAxMi4xMTEzIDE1LjgzNSAxMS42NjkzIDE1LjgzNUgyLjUwMjZDMi4wNjA1OCAxNS44MzUgMS42MzY2NSAxNS42NTk0IDEuMzI0MDkgMTUuMzQ2OEMxLjAxMTUzIDE1LjAzNDIgMC44MzU5MzggMTQuNjEwMyAwLjgzNTkzOCAxNC4xNjgzVjUuMDAxNjNDMC44MzU5MzggNC41NTk2IDEuMDExNTMgNC4xMzU2OCAxLjMyNDA5IDMuODIzMTJDMS42MzY2NSAzLjUxMDU2IDIuMDYwNTggMy4zMzQ5NiAyLjUwMjYgMy4zMzQ5Nkg3LjUwMjZNMTAuODM1OSAwLjgzNDk2MUgxNS44MzU5TTE1LjgzNTkgMC44MzQ5NjFWNS44MzQ5Nk0xNS44MzU5IDAuODM0OTYxTDYuNjY5MjcgMTAuMDAxNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMwMDlCRjNcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInJlY2FwbGFvZGluZ1wiIGNsYXNzPVwicm93IGxvYWRlciBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgaC0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lciBwdC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwicmVjYXBub0RhdGFcIiBjbGFzcz1cInJvdyBweC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm9ybWFsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2FyZC1ib2R5IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIG1iLTEwIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImltZy1tYXAxXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvbm90LWFwcGxpY2FibGUuc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhLXRpdGxlIG10LTNcIj5EYXRhIE5vdCBGb3VuZDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS1zdWJcIj5Ob3JtYWxpemVkIGRhdGEgaXMgbm90IGFwcGxpY2FibGU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhbm9ybWFsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2FyZC1ib2R5IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImltZy1tYXAtcmVjYXBcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGExLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS10aXRsZVwiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGEtc3ViXCI+VGhlcmUgaXMgbm8gcmVzdWx0IGZvciB0aGlzIFJlY2FwIHZpZGVvPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIXJlY2FwbGFvZGluZyAmJiAhcmVjYXBub0RhdGFcIiBjbGFzcz1cImNhcmQtYm9keSBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93ICBoLTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2Fyb3VzZWwgaC0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJvdXNlbC1pbm5lciBoLTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJvdXNlbC1pdGVtIGgtMTAwXCIgKm5nRm9yPVwibGV0IGdyb3VwIG9mIHJlY2Fwc0dyb3VwZWQ7IGxldCBpID0gaW5kZXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cImkgPT09IGN1cnJlbnRJbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGctMyBoLTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgcGFpciBvZiBncm91cFwiIFtuZ0NsYXNzXT1cImNvbFZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBbc3JjXT1cInBhaXIudGh1bWJJbWFnZVwiIChjbGljayk9XCJ2aWRlb0NsaWNrKHBhaXIpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpbWFnZS10aHVtYiBtYi04IGQtYmxvY2sgdy0xMDAgY3Vyc29yLXBvaW50ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHQ9XCJJbWFnZSB7eyBpICsgMSB9fVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENvbmRpdGlvbmFsbHkgZGlzcGxheSBQcmV2aW91cyBidXR0b24gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiY2Fyb3VzZWwtY29udHJvbC1wcmV2XCIgKm5nSWY9XCJjdXJyZW50SW5kZXggPiAwXCIgKGNsaWNrKT1cInByZXZTbGlkZSgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvblwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gQ29uZGl0aW9uYWxseSBkaXNwbGF5IE5leHQgYnV0dG9uIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNhcm91c2VsLWNvbnRyb2wtbmV4dFwiICpuZ0lmPVwiY3VycmVudEluZGV4IDwgcmVjYXBzR3JvdXBlZC5sZW5ndGggLSAxXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwibmV4dFNsaWRlKClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBOYXZpZ2F0aW9uIERvdHMgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwicmVjYXBzR3JvdXBlZC5sZW5ndGggPiAxXCIgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJjYXJvdXNlbC1pbmRpY2F0b3JzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgZ3JvdXAgb2YgcmVjYXBzR3JvdXBlZDsgbGV0IGkgPSBpbmRleFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cImkgPT09IGN1cnJlbnRJbmRleFwiIChjbGljayk9XCJnb1RvU2xpZGUoaSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDx2aWRlbyBjb250cm9scyBhdXRvcGxheSBjbGFzcz1cInJlY2FwLWltZyBwLTNcIiBbc3JjXT1cImdldFJlY2FwRGF0YT8udmlkZW9VUkxcIj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNvdXJjZSAgdHlwZT1cInZpZGVvL21wNFwiPiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8c291cmNlIFtzcmNdPVwiZ2V0UmVjYXBEYXRhPy52aWRlb1VSTFwiIHR5cGU9XCJ2aWRlby9vZ2dcIj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPC92aWRlbz4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiAjbWFwQ29udGFpbmVyIHN0eWxlPVwiaGVpZ2h0OjIzMHB4O1wiPjwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbWItM1wiPjxpbWcgc3JjPVwiYXNzZXRzL3RhbmdvL0ltYWdlcy9yZWNhcC5zdmdcIiBhbHQ9XCJcIiBjbGFzcz1cInJlY2FwLWltZ1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbWItM1wiPjxpbWcgc3JjPVwiYXNzZXRzL3RhbmdvL0ltYWdlcy9yZWNhcC5zdmdcIiBhbHQ9XCJcIiBjbGFzcz1cInJlY2FwLWltZ1wiPjwvZGl2PiAtLT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2ICpuZ0lmPVwiaGVhZGVyRGF0YT8uY2xpZW50ICE9PSc0NTInXCI+XHJcbiAgICAgICAgPGxpYi1pbWFnZS1kb2NcclxuICAgICAgICAgICAgKm5nSWY9XCJzdG9yZUlkYXJyYXk/Lmxlbmd0aCA9PT0gMSAmJiAoY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmlzRm9vdGZhbGxEaXJlY3RvcnkmJiFjbGllbnREYXRhPy5mZWF0dXJlQ29uZmlncz8uaXNGb290ZmFsbERpcmVjdG9yeW9ubHlUYW5nbyB8fCAoZ3MudXNlckFjY2VzcyB8IGFzeW5jKT8udXNlclR5cGUgPT09ICd0YW5nbycpXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJteS0yXCI+PC9saWItaW1hZ2UtZG9jPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJzdG9yZUlkYXJyYXk/Lmxlbmd0aCA+IDEgJiYgKGNsaWVudERhdGE/LmZlYXR1cmVDb25maWdzPy5pc0Zvb3RmYWxsRGlyZWN0b3J5JiYhY2xpZW50RGF0YT8uZmVhdHVyZUNvbmZpZ3M/LmlzRm9vdGZhbGxEaXJlY3Rvcnlvbmx5VGFuZ28gfHwgKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/LnVzZXJUeXBlID09PSAndGFuZ28nKVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiY29sLW1kLTEyIGgtMTAwIG10LTRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmRcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItcm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpbWctZGlyZWMgbS02XCI+SW1hZ2UgRGlyZWN0b3J5PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtbiBtYi0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctbm9kYXRhMVwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ljb25zL3dhcm5pbmctaWNvbi5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2luZ2xlc3RvcmUtdGl0bGUgbXQtM1wiPkF2YWlsYWJsZSBmb3IgU2luZ2xlIFN0b3JlIFZpZXcgT25seTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaW5nbGVzdG9yZS1zdWJcIj5QbGVhc2Ugc2VsZWN0IG9uZSBzdG9yZSB0byBhY2Nlc3Mgc3RvcmUtc3BlY2lmaWMgaW1hZ2VzIGFuZCBkYXRhLjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBtdC01IG1iLTVcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGJvcmRlci0wIHB0LTNcIj5cclxuICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlLXRleHQgbWItMlwiPlN1bW1hcnkgVGFibGU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXN1YiBtYi0yXCI+e3toZWFkZXJEYXRhPy5kYXRlPy5zdGFydERhdGUgfCBkYXRlOidkZCBNTU0sIHl5eXknfX0g4oCTXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7aGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSB8IGRhdGU6J2RkIE1NTSwgeXl5eSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvaDM+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10b29sYmFyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBwb3NpdGlvbi1yZWxhdGl2ZSBteS0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN2Zy1pY29uIHN2Zy1pY29uLTEgcG9zaXRpb24tYWJzb2x1dGUgbXMtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCBvcGFjaXR5PVwiMC41XCIgeD1cIjE3LjAzNjVcIiB5PVwiMTUuMTIyM1wiIHdpZHRoPVwiOC4xNTU0NlwiIGhlaWdodD1cIjJcIiByeD1cIjFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwicm90YXRlKDQ1IDE3LjAzNjUgMTUuMTIyMylcIiBmaWxsPVwiY3VycmVudENvbG9yXCI+PC9yZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMSAxOUM2LjU1NTU2IDE5IDMgMTUuNDQ0NCAzIDExQzMgNi41NTU1NiA2LjU1NTU2IDMgMTEgM0MxNS40NDQ0IDMgMTkgNi41NTU1NiAxOSAxMUMxOSAxNS40NDQ0IDE1LjQ0NDQgMTkgMTEgMTlaTTExIDVDNy41MzMzMyA1IDUgNy41MzMzMyA1IDExQzUgMTQuNDY2NyA3LjUzMzMzIDE3IDExIDE3QzE0LjQ2NjcgMTcgMTcgMTQuNDY2NyAxNyAxMUMxNyA3LjUzMzMzIDE0LjQ2NjcgNSAxMSA1WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCI+PC9wYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IChjaGFuZ2UpPVwic2VhcmNoRGF0YSgpXCIgWyhuZ01vZGVsKV09XCJzZWFyY2hWYWx1ZVwiIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBwcy0xNCBtZS0yXCIgYXV0b2NvbXBsZXRlPVwib2ZmXCIgcGxhY2Vob2xkZXI9XCJTZWFyY2hcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBmaWx0ZXIgU3RhcnQgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxsaWItZmlsdGVycyBbZGF0YU9iamVjdF09XCJkYXRhT2JqZWN0XCIgKGFwcGxpZWRGaWx0ZXJzKT1cImFwcGx5RmlsdGVycygkZXZlbnQpXCI+PC9saWItZmlsdGVycz4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIGZpbHRlciBFbmQgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFN1bSBCdXR0b24gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiKHN0b3JlSWRhcnJheT8ubGVuZ3RoID4gMSAmJiBoZWFkZXJEYXRhPy5kYXRlPy5zdGFydERhdGUgIT09IGhlYWRlckRhdGE/LmRhdGU/LmVuZERhdGUpICYmICFub0RhdGEgJiYgIWxvYWRpbmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwib25WYWx1ZVR5cGUoJ3N1bScpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLWRlZmF1bHQgbXgtMiBidG4tb3V0bGluZSBidG4tb3V0bGluZS1kZWZhdWx0IHJvdW5kZWQtMyB0ZXh0LW5vd3JhcCBib3JkZXItdmFsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydidG4tbGlnaHQgYnRuLXByaW1hcnkgdGV4dC13aGl0ZSc6IHR5cGVWYWx1ZSA9PT0gJ3N1bSd9XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIiBbbmdTdHlsZV09XCJ7J3N0cm9rZSc6IHR5cGVWYWx1ZSA9PT0gJ3N1bScgPyAnI0ZGRkZGRicgOiAnIzM0NDA1NCd9XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTkuOTk5MzUgNC4xNjY3NVYxNS44MzM0TTQuMTY2MDIgMTAuMDAwMUgxNS44MzI3XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXMtMlwiIFtuZ0NsYXNzXT1cInsndGV4dC13aGl0ZSc6IHR5cGVWYWx1ZSA9PT0gJ3N1bSd9XCI+U3VtPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gQXZlcmFnZSBCdXR0b24gLS0+XHJcblxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uICpuZ0lmPVwiKHN0b3JlSWRhcnJheT8ubGVuZ3RoID4gMSAmJiBoZWFkZXJEYXRhPy5kYXRlPy5zdGFydERhdGUgIT09IGhlYWRlckRhdGE/LmRhdGU/LmVuZERhdGUpIFxyXG4gJiYgIW5vRGF0YSAmJiAhbG9hZGluZ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJvblZhbHVlVHlwZSgnYXZlcmFnZScpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLWRlZmF1bHQgbXgtMiBidG4tb3V0bGluZSBidG4tb3V0bGluZS1kZWZhdWx0IHJvdW5kZWQtMyB0ZXh0LW5vd3JhcCBib3JkZXItdmFsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydidG4tbGlnaHQgYnRuLXByaW1hcnkgdGV4dC13aGl0ZSc6IHR5cGVWYWx1ZSA9PT0gJ2F2ZXJhZ2UnfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsnc3Ryb2tlJzogdHlwZVZhbHVlID09PSAnYXZlcmFnZScgPyAnI0ZGRkZGRicgOiAnIzEwMTgyOCd9XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTcuNSAxNy41SDguMzMzMzNDNS41ODMzMyAxNy41IDQuMjA4MzMgMTcuNSAzLjM1NDE3IDE2LjY0NThDMi41IDE1Ljc5MTcgMi41IDE0LjQxNjcgMi41IDExLjY2NjdWMi41TTUgMTBINS4wMDc1TTcuNDk5MTcgMTBINy41MDU4M005Ljk5NzUgMTBIMTAuMDA0Mk0xMi40OTU4IDEwSDEyLjUwMzNNMTQuOTk0MiAxMEgxNS4wMDE3TTE3LjQ5MjUgMTBIMTcuNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk01IDUuODMzNDFDNS41NjA4MyA0Ljg5ODQxIDYuMzIyNSA0LjE2Njc1IDcuNDk0MTcgNC4xNjY3NUMxMi40NDY3IDQuMTY2NzUgOS42NjI1IDE0LjE2NjcgMTQuOTg1IDE0LjE2NjdDMTYuMTY1IDE0LjE2NjcgMTYuOTIxNyAxMy40MzAxIDE3LjUgMTIuNTAwMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXMtMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J3RleHQtd2hpdGUnOiB0eXBlVmFsdWUgPT09ICdhdmVyYWdlJ31cIj5BdmVyYWdlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCIhbm9EYXRhICYmICFsb2FkaW5nXCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJleHBvcnRYTFNYKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IG14LTIgYnRuLW91dGxpbmUgYnRuLW91dGxpbmUtZGVmYXVsdCByb3VuZGVkLTMgdGV4dC1ub3dyYXAgYm9yZGVyLXZhbFwiPjxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xNy41IDEyLjVWMTUuODMzM0MxNy41IDE2LjI3NTQgMTcuMzI0NCAxNi42OTkzIDE3LjAxMTggMTcuMDExOEMxNi42OTkzIDE3LjMyNDQgMTYuMjc1NCAxNy41IDE1LjgzMzMgMTcuNUg0LjE2NjY3QzMuNzI0NjQgMTcuNSAzLjMwMDcyIDE3LjMyNDQgMi45ODgxNiAxNy4wMTE4QzIuNjc1NTkgMTYuNjk5MyAyLjUgMTYuMjc1NCAyLjUgMTUuODMzM1YxMi41TTE0LjE2NjcgNi42NjY2N0wxMCAyLjVNMTAgMi41TDUuODMzMzMgNi42NjY2N00xMCAyLjVWMTIuNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjxzcGFuIGNsYXNzPVwibXMtMlwiPkV4cG9ydDwvc3Bhbj4gPC9idXR0b24+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cImxvYWRpbmdcIiBjbGFzcz1cInJvdyBsb2FkZXIgIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm9EYXRhXCIgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctbm9kYXRhLXRhYmxlXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvTm9kYXRhMS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS10aXRsZVwiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YS1zdWJcIj5UaGVyZSBpcyBubyByZXN1bHQgZm9yIHRoaXMgc3VtbWFyeSB0YWJsZTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIW5vRGF0YSAmJiAhbG9hZGluZ1wiIGNhbHNzPVwiY2FyZC1ib2R5XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtcmVzcG9uc2l2ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cInctMTAwIHRhYmxlIGJvdHRvbS1ib3JkZXIgdGV4dC1ub3dyYXBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCAqbmdJZj1cInN0b3JlSWRhcnJheT8ubGVuZ3RoID09PSAxXCIgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9uU29ydCgnZGF0ZScpXCI+RGF0ZSA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic29ydGVkQ29sdW1uID09PSAnZGF0ZScgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAnZGF0ZScgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25Tb3J0KCdzdG9yZU5hbWUnKVwiPlN0b3JlIE5hbWUgPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJ3N0b3JlTmFtZScgJiYgc29ydERpcmVjdGlvbiA9PT0gMSA/ICdyb3RhdGUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDAxNiAzLjMzMzM3VjEyLjY2NjdNOC4wMDAxNiAxMi42NjY3TDEyLjY2NjggOC4wMDAwNE04LjAwMDE2IDEyLjY2NjdMMy4zMzM1IDguMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydGVkQ29sdW1uID09PSAnc3RvcmVOYW1lJyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblNvcnQoJ3N0b3JlSWQnKVwiPlN0b3JlIElEIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICdzdG9yZUlkJyAmJiBzb3J0RGlyZWN0aW9uID09PSAxID8gJ3JvdGF0ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDE2IDMuMzMzMzdWMTIuNjY2N004LjAwMDE2IDEyLjY2NjdMMTIuNjY2OCA4LjAwMDA0TTguMDAwMTYgMTIuNjY2N0wzLjMzMzUgOC4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0ZWRDb2x1bW4gPT09ICdzdG9yZUlkJyA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoICpuZ0lmPVwic3RvcmVDb2RlXCIgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9uU29ydCgnc3RvcmVDb2RlJylcIj5TdG9yZSBDb2RlIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzb3J0ZWRDb2x1bW4gPT09ICdzdG9yZUNvZGUnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJ3N0b3JlQ29kZScgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9uU29ydCgnZm9vdGZhbGxDb3VudCcpXCI+Rm9vdGZhbGwgPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJ2Zvb3RmYWxsQ291bnQnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJ2Zvb3RmYWxsQ291bnQnID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9uU29ydCgnYXZnSW5mcmFEb3dudGltZScpXCI+QXZnIEluZnJhIERvd25UaW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIFtuZ0NsYXNzXT1cInNvcnRlZENvbHVtbiA9PT0gJ2F2Z0luZnJhRG93bnRpbWUnICYmIHNvcnREaXJlY3Rpb24gPT09IDEgPyAncm90YXRlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwMTYgMy4zMzMzN1YxMi42NjY3TTguMDAwMTYgMTIuNjY2N0wxMi42NjY4IDguMDAwMDRNOC4wMDAxNiAxMi42NjY3TDMuMzMzNSA4LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRlZENvbHVtbiA9PT0gJ2F2Z0luZnJhRG93bnRpbWUnID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgb2JqIG9mIGdldFN1bW1hcnlUYWJsZURhdGE7bGV0IGk9aW5kZXg7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSAoY2xpY2spPVwic3RvcmVWaWV3KG9iailcIiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgKm5nSWY9XCJvYmo/LmRhdGVcIj57e29iaj8uZGF0ZSB8IGRhdGU6J01NTSBkZCwgeXl5eSd9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwidGhpcy5zdG9yZUlkYXJyYXk/Lmxlbmd0aD09PTFcIiBjbGFzcz1cInRleHQtY2FwaXRhbGl6ZVwiPnt7b2JqLnN0b3JlTmFtZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgKm5nSWY9XCJ0aGlzLnN0b3JlSWRhcnJheT8ubGVuZ3RoPjFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRleHQtcHJpbWFyeSB0ZXh0LWNhcGl0YWxpemUgdGV4dC1kZWNvcmF0aW9uLXVuZGVybGluZSBjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzdG9yZVZpZXcob2JqLnN0b3JlSWQpXCI+e3tvYmouc3RvcmVOYW1lfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e29iai5zdG9yZUlkfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cInN0b3JlQ29kZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBvYmouc3RvcmVDb2RlICE9PSBudWxsICYmIG9iai5zdG9yZUNvZGUgIT09ICcnID8gb2JqLnN0b3JlQ29kZSA6ICctJyB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e29iai5mb290ZmFsbENvdW50fX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e29iai5hdmdJbmZyYURvd250aW1lfX08L3RkPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC90YWJsZT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGxpYi1wYWdpbmF0aW9uIFtpdGVtc1BlclBhZ2VdPVwicGFnZVNpemVcIiBbY3VycmVudFBhZ2VdPVwib2Zmc2V0XCIgW3RvdGFsSXRlbXNdPVwidG90YWxJdGVtc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW3BhZ2luYXRpb25TaXplc109XCJwYWdpbmF0aW9uU2l6ZXNcIiBbcGFnZVNpemVdPVwicGFnZVNpemVcIiAocGFnZUNoYW5nZSk9XCJvblBhZ2VDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKHBhZ2VTaXplQ2hhbmdlKT1cIm9uUGFnZVNpemVDaGFuZ2UoJGV2ZW50KVwiPjwvbGliLXBhZ2luYXRpb24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
|