@rangertechnologies/ngnxt 2.1.238 → 2.1.240
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/environments/version.mjs +2 -2
- package/esm2022/lib/components/button/nxt-button.component.mjs +38 -7
- package/esm2022/lib/components/custom-dropdown/custom-dropdown.component.mjs +1 -1
- package/esm2022/lib/components/datatable/datatable.component.mjs +3 -3
- package/esm2022/lib/components/file-upload/file-upload.component.mjs +5 -2
- package/esm2022/lib/components/nxt-input/nxt-input.component.mjs +10 -4
- package/esm2022/lib/components/pick-location/pick-location.component.mjs +1 -1
- package/esm2022/lib/components/search-box/search-box.component.mjs +294 -158
- package/esm2022/lib/pages/booklet/booklet.component.mjs +6 -8
- package/esm2022/lib/pages/builder/properties/properties.component.mjs +1 -1
- package/esm2022/lib/pages/pdfDesigner/pdf-designer/pdf-designer.component.mjs +9 -3
- package/esm2022/lib/pages/pdfDesigner/pdf-properties/pdf-properties.component.mjs +2 -2
- package/esm2022/lib/pages/questionbook/questionbook.component.mjs +4 -4
- package/esm2022/lib/pages/questionnaire/questionnaire.component.mjs +2 -2
- package/esm2022/lib/services/translation.service.mjs +2 -1
- package/fesm2022/rangertechnologies-ngnxt.mjs +377 -197
- package/fesm2022/rangertechnologies-ngnxt.mjs.map +1 -1
- package/lib/components/button/nxt-button.component.d.ts +8 -3
- package/lib/components/nxt-input/nxt-input.component.d.ts +3 -1
- package/lib/components/search-box/search-box.component.d.ts +26 -10
- package/lib/pages/booklet/booklet.component.d.ts +1 -1
- package/lib/pages/pdfDesigner/pdf-designer/pdf-designer.component.d.ts +3 -1
- package/package.json +1 -1
- package/rangertechnologies-ngnxt-2.1.240.tgz +0 -0
- package/rangertechnologies-ngnxt-2.1.238.tgz +0 -0
|
@@ -174,7 +174,7 @@ export class FileUploadComponent {
|
|
|
174
174
|
let endpoint = fileMeta.endpoint;
|
|
175
175
|
let queryParameter = fileMeta.queryParameter;
|
|
176
176
|
let file = currentFile;
|
|
177
|
-
if (endpoint) {
|
|
177
|
+
if (endpoint && file[queryParameter]) {
|
|
178
178
|
this.isLoading = true;
|
|
179
179
|
const fullEndPoint = endpoint + '?' + queryParameter + '=' + file[queryParameter];
|
|
180
180
|
if (fullEndPoint) {
|
|
@@ -189,6 +189,9 @@ export class FileUploadComponent {
|
|
|
189
189
|
});
|
|
190
190
|
}
|
|
191
191
|
}
|
|
192
|
+
else {
|
|
193
|
+
this.viewLocalFile();
|
|
194
|
+
}
|
|
192
195
|
}
|
|
193
196
|
else {
|
|
194
197
|
this.viewLocalFile();
|
|
@@ -277,4 +280,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
277
280
|
}], error: [{
|
|
278
281
|
type: Input
|
|
279
282
|
}] } });
|
|
280
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnh0LWFwcC9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS11cGxvYWQvZmlsZS11cGxvYWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnh0LWFwcC9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS11cGxvYWQvZmlsZS11cGxvYWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBd0MsTUFBTSxlQUFlLENBQUM7QUFNckgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7OztBQVV0QyxNQUFNLE9BQU8sbUJBQW1CO0lBOEJWO0lBQXNDO0lBQWtDO0lBQ25GO0lBOUJDLGdCQUFnQixHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFDM0MsZUFBZSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFDM0MsUUFBUSxDQUFDO0lBQ1Qsa0JBQWtCLENBQUM7SUFDbkIsSUFBSSxHQUE4QixNQUFNLENBQUMsQ0FBQyw0QkFBNEI7SUFDdEUsZ0JBQWdCLENBQUM7SUFDakIsUUFBUSxDQUFDO0lBQ1QsS0FBSyxDQUFNO0lBQ3BCLGNBQWM7SUFDUCxnQkFBZ0IsR0FBYSxFQUFFLENBQUM7SUFDaEMsV0FBVyxHQUFXLENBQUMsQ0FBQyxDQUFFLG1CQUFtQjtJQUM3QyxRQUFRLEdBQVcsQ0FBQyxDQUFDLENBQUssZ0JBQWdCO0lBQzFDLGdCQUFnQixHQUFhLEVBQUUsQ0FBQztJQUdoQyxxQkFBcUIsR0FB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QUFtQixFQUFDLENBQUMsQ0FBQztRQUMvRSxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxDQUFDLHNCQUFzQjtRQUM3QyxJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxDQUFDLDJCQUEyQjtJQUNqRCxDQUFDO0lBQ0QsY0FBYztRQUNaLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsMkJBQTJCO1FBQzFFLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLENBQUMsaUNBQWlDO1FBQ3hELElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLENBQUMsc0NBQXNDO0lBQzVELENBQUM7d0dBclFVLG1CQUFtQjs0RkFBbkIsbUJBQW1CLDZWQ2xCaEMsMm00QkFzS00sc2lLRHpKRixZQUFZOzs0RkFLSCxtQkFBbUI7a0JBVC9CLFNBQVM7K0JBQ0UsaUJBQWlCLGNBQ2YsSUFBSSxXQUNQO3dCQUNQLFlBQVksRUFBRSxRQUFRO3FCQUN2QjtpS0FLUyxnQkFBZ0I7c0JBQXpCLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTTtnQkFDRSxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgRWxlbWVudFJlZiwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG4vLyBIQSAxOURFQzIzIGltcG9ydGVkIHRyYW5zbGF0aW9uIHNlcnZpY2VcbmltcG9ydCB7IEkxOG5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaTE4bi5zZXJ2aWNlJztcbmltcG9ydCB7IFNoYXJlZFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zaGFyZWQuc2VydmljZSc7XG5pbXBvcnQgeyBEYXRhU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2RhdGEuc2VydmljZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJMThuUGlwZSB9IGZyb20gJy4uLy4uL2kxOG4ucGlwZSc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBvZiB9IGZyb20gJ3J4anMnO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWZpbGUtdXBsb2FkJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSwgSTE4blBpcGVcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmlsZS11cGxvYWQuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVVcGxvYWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIEBPdXRwdXQoKSBzZWxlY3RlZEZpbGVEYXRhID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBPdXRwdXQoKSBkZWxldGVkRmlsZURhdGEgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQElucHV0KCkgYWxsRmlsZXM7XG4gIEBJbnB1dCgpIGxpbWl0RmlsZVVwbG9hZGluZztcbiAgQElucHV0KCkgbW9kZTogJ3ZpZXcnIHwgJ2VkaXQnIHwgJ3ByaW50JyA9ICdlZGl0JzsgLy8gU0tTMTFKVU4yNSBOZXcgbW9kZSBpbnB1dFxuICBASW5wdXQoKSBpc1Nob3dOb0ZpbGVJY29uO1xuICBASW5wdXQoKSBxdWVzdGlvbjtcbiAgQElucHV0KCkgZXJyb3I6IGFueTtcbiAgLy9SUyAwOUpBTjIwMjVcbiAgcHVibGljIGFsbG93ZWRGaWxlVHlwZXM6IHN0cmluZ1tdID0gW107XG4gIHB1YmxpYyBtYXhGaWxlU2l6ZTogbnVtYmVyID0gMDsgIC8vIGluIGJ5dGVzKEJpbmFyeSlcbiAgcHVibGljIG1heEZpbGVzOiBudW1iZXIgPSA0OyAgICAgLy8gZGVmYXVsdCBsaW1pdFxuICBwdWJsaWMgdmFsaWRhdGlvbkVycm9yczogc3RyaW5nW10gPSBbXTtcblxuXG4gIHB1YmxpYyBzZWxlY3RlZEZpbGVOYW1lQXJyYXk6IHN0cmluZ1tdID0gW107XG4gIHB1YmxpYyBjb3B5T2ZJbnB1dEFsbEZpbGVzO1xuICBwdWJsaWMgY29weU9mRmlsZVVwbG9hZGluZ0xpbWl0O1xuICBwdWJsaWMgZmlsZVVybDtcbiAgcHVibGljIGlzSW1hZ2UgPSBmYWxzZTtcbiAgcHVibGljIGZpbGVOYW1lID0gJyc7XG4gIGN1cnJlbnRGaWxlOiBhbnk7XG4gIHB1YmxpYyBzaG93UG9wdXAgPSBmYWxzZTsgLy8gU0tTMTFKVU4yNSBBZGQgcG9wdXAgdmlzaWJpbGl0eSBjb250cm9sXG4gIHZpZXdFZGl0OiBib29sZWFuID0gZmFsc2UgXG4gIG9yaWdpbmFsVmFsdWU6IGFueTsgLy8gU0tTMTNKVU4yNSBUbyBzdG9yZSB0aGUgb3JpZ2luYWwgdmFsdWUgd2hlbiBlbnRlcmluZyB2aWV3IGVkaXQgbW9kZVxuICBpc1NhdmVIb3ZlcmVkID0gZmFsc2U7XG4gIGlzRGlzY2FyZEhvdmVyZWQgPSBmYWxzZTtcbiAgaXNMb2FkaW5nID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBTaGFyZWRTZXJ2aWNlOiBTaGFyZWRTZXJ2aWNlLCBwcml2YXRlIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZSwgcHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcbiAgICBwdWJsaWMgaTE4blNlcnZpY2U6IEkxOG5TZXJ2aWNlXG4gICkgeyB9XG4gIC8vUlMgMDlKQU4yMDI1XG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuaW5pdGlhbGl6ZUZpbGVDb25maWdzKCk7XG4gIH1cbiAgbmdPbkNoYW5nZXMoc2ltcGxlQ2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChzaW1wbGVDaGFuZ2VzWydtb2RlJ10pIHtcbiAgICAgIHRoaXMubW9kZSA9IHNpbXBsZUNoYW5nZXNbJ21vZGUnXS5jdXJyZW50VmFsdWU7XG4gICAgfVxuICAgIGlmIChzaW1wbGVDaGFuZ2VzLmFsbEZpbGVzKSB7ICAvL1NLUzVOT1YyNVxuICAgICAgdGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzID0gc2ltcGxlQ2hhbmdlcy5hbGxGaWxlcy5jdXJyZW50VmFsdWUgfHwgW107XG4gICAgfVxuXG4gICAgaWYgKHNpbXBsZUNoYW5nZXMubGltaXRGaWxlVXBsb2FkaW5nKSB7XG4gICAgICB0aGlzLmNvcHlPZkZpbGVVcGxvYWRpbmdMaW1pdCA9IHNpbXBsZUNoYW5nZXMubGltaXRGaWxlVXBsb2FkaW5nPy5jdXJyZW50VmFsdWU7XG4gICAgfVxuXG4gIH1cblxuICAvL1JTIDA5SkFOMjAyNSBJbml0aWFsaXplcyBmaWxlIHVwbG9hZCBzZXR0aW5ncyAoYWxsb3dlZCB0eXBlcywgbWF4IHNpemUsIGFuZCBtYXggZmlsZXMpIGJ5IHBhcnNpbmcgbWV0YWRhdGEgZnJvbSBmaWVsZHNNZXRhXG4gIGluaXRpYWxpemVGaWxlQ29uZmlncygpIHtcbiAgICBpZiAodGhpcy5xdWVzdGlvbj8uZmllbGRzTWV0YSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgLy8gU0tTMjBNQVIyNSBjaGVjayBpZiBxdWVzdGlvbiBmaWVsZHNtZXRhIGlzIHN0cmluZ1xuICAgICAgICBjb25zdCBtZXRhRGF0YSA9IHR5cGVvZiB0aGlzLnF1ZXN0aW9uWydmaWVsZHNNZXRhJ10gPT09ICdvYmplY3QnID8gdGhpcy5xdWVzdGlvblsnZmllbGRzTWV0YSddIHx8IFtdIDogSlNPTi5wYXJzZSh0aGlzLnF1ZXN0aW9uWydmaWVsZHNNZXRhJ10pO1xuICAgICAgICBjb25zdCBmaWxlQ29uZmlnID0gbWV0YURhdGFbMF07ICAvLyBHZXQgZmlyc3QgY29uZmlnIG9iamVjdFxuICAgICAgICBpZiAoZmlsZUNvbmZpZykge1xuICAgICAgICAgIHRoaXMuYWxsb3dlZEZpbGVUeXBlcyA9IGZpbGVDb25maWcuYWxsb3dlZFR5cGVzIHx8IFtdO1xuICAgICAgICAgIHRoaXMubWF4RmlsZVNpemUgPSBmaWxlQ29uZmlnLm1heEZpbGVTaXplIHx8IDA7XG4gICAgICAgICAgdGhpcy5tYXhGaWxlcyA9IGZpbGVDb25maWcubWF4RmlsZXMgfHwgNTtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgLy8gY29uc29sZS5lcnJvcignRXJyb3IgcGFyc2luZyBmaWVsZHNNZXRhOicsIGVycm9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gU0tTMTFKVU4yNSBPcGVuIHRoZSBwb3B1cFxuICBvcGVuUG9wdXAoKSB7XG4gICAgdGhpcy5zaG93UG9wdXAgPSB0cnVlO1xuICAgIHRoaXMudmlld0ZpbGUodGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzWzBdKVxuICB9XG5cbiAgLy8gU0tTMTFKVU4yNSBDbG9zZSB0aGUgcG9wdXBcbiAgY2xvc2VQb3B1cCgpIHtcbiAgICB0aGlzLnNob3dQb3B1cCA9IGZhbHNlO1xuICB9XG4gIHVwbG9hZE11bHRpcGxlRmlsZXMoZXZlbnQ6IGFueSkge1xuICAgIGNvbnNvbGUubG9nKCdGaWxlIHVwbG9hZGVyIGluaXRpYXRlZCcpO1xuICAgIHRoaXMudmFsaWRhdGlvbkVycm9ycyA9IFtdOyAvLyBSUyAxN0pBTjIwMjUgQ2xlYXIgcHJldmlvdXMgZXJyb3JzXG4gICAgbGV0IGlucHV0RmlsZXM6IGFueVtdID0gdGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzID8gdGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzIDogW107XG4gICAgY29uc3Qgc2VsZWN0ZWRGaWxlRGF0YSA9IFtdO1xuICAgIGNvbnN0IHVwbG9hZGVkRmlsZXMgPSBldmVudC50YXJnZXQuZmlsZXM7XG5cbiAgICAvLyBSUyAwOUpBTjIwMjUgQ2hlY2sgZmlsZSBjb3VudCBsaW1pdFxuICAgIGlmICh1cGxvYWRlZEZpbGVzLmxlbmd0aCArIGlucHV0RmlsZXMubGVuZ3RoID4gdGhpcy5tYXhGaWxlcykge1xuICAgICAgdGhpcy52YWxpZGF0aW9uRXJyb3JzLnB1c2goYE1heGltdW0gJHt0aGlzLm1heEZpbGVzfSBmaWxlcyBhbGxvd2VkYCk7XG4gICAgICBldmVudC50YXJnZXQudmFsdWUgPSAnJztcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCByZWFkRmlsZXNQcm9taXNlcyA9IFtdO1xuXG4gICAgZm9yIChjb25zdCBlYWNoVXBsb2FkZWRGaWxlIG9mIHVwbG9hZGVkRmlsZXMpIHtcbiAgICAgIGNvbnN0IGZpbGU6IEZpbGUgPSBlYWNoVXBsb2FkZWRGaWxlO1xuXG4gICAgICAvL1JTIDA5SkFOMjAyNSBDaGVjayBmaWxlIHR5cGVcbiAgICAgIGNvbnN0IGZpbGVFeHQgPSAnLicgKyBmaWxlLm5hbWUuc3BsaXQoJy4nKS5wb3AoKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgaWYgKHRoaXMuYWxsb3dlZEZpbGVUeXBlcy5sZW5ndGggPiAwICYmICF0aGlzLmFsbG93ZWRGaWxlVHlwZXMuaW5jbHVkZXMoZmlsZUV4dCkpIHtcbiAgICAgICAgdGhpcy52YWxpZGF0aW9uRXJyb3JzLnB1c2goYEZpbGUgdHlwZSAke2ZpbGVFeHR9IG5vdCBhbGxvd2VkLiBBbGxvd2VkIHR5cGVzOiAke3RoaXMuYWxsb3dlZEZpbGVUeXBlcy5qb2luKCcsICcpfWApO1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgLy9SUyAwOUpBTjIwMjUgQ2hlY2sgZmlsZSBzaXplXG4gICAgICBpZiAodGhpcy5tYXhGaWxlU2l6ZSA+IDAgJiYgZmlsZS5zaXplID4gdGhpcy5tYXhGaWxlU2l6ZSkge1xuICAgICAgICB0aGlzLnZhbGlkYXRpb25FcnJvcnMucHVzaChgRmlsZSBcIiR7ZmlsZS5uYW1lfVwiIGV4Y2VlZHMgc2l6ZSBsaW1pdCBvZiAke3RoaXMubWF4RmlsZVNpemUgLyAxMDQ4NTc2fU1CYCk7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAoIXRoaXMudmFsaWRhdGlvbkVycm9ycy5sZW5ndGgpIHtcbiAgICAgICAgY29uc3QgZm9ybWF0ID0gZmlsZUV4dC5zdWJzdHJpbmcoMSk7XG4gICAgICAgIGNvbnN0IGZpbGVSZWFkUHJvbWlzZSA9IG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xuICAgICAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xuXG4gICAgICAgICAgcmVhZGVyLm9ubG9hZCA9ICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGZpbGVEYXRhID0ge1xuICAgICAgICAgICAgICBkb2M6IHJlYWRlci5yZXN1bHQsXG4gICAgICAgICAgICAgIG5hbWU6IGZpbGUubmFtZSxcbiAgICAgICAgICAgICAgdHlwZTogZmlsZS50eXBlLFxuICAgICAgICAgICAgICBmb3JtYXQsXG4gICAgICAgICAgICAgIHNpemU6IGZpbGUuc2l6ZSwgLy8gUlMgMTdKQU4yMDI1IFxuICAgICAgICAgICAgICBpZDogbnVsbCxcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHNlbGVjdGVkRmlsZURhdGEucHVzaChmaWxlRGF0YSk7XG4gICAgICAgICAgICBpbnB1dEZpbGVzLnB1c2goZmlsZURhdGEpO1xuICAgICAgICAgICAgcmVzb2x2ZSgpO1xuICAgICAgICAgIH07XG5cbiAgICAgICAgICByZWFkZXIub25lcnJvciA9ICgpID0+IHtcbiAgICAgICAgICAgIHJlamVjdCgpO1xuICAgICAgICAgICAgdGhpcy52YWxpZGF0aW9uRXJyb3JzLnB1c2goYEVycm9yIHJlYWRpbmcgZmlsZSBcIiR7ZmlsZS5uYW1lfVwiYCk7Ly8gUlMgMTdKQU4yMDI1IFxuICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuICAgICAgICByZWFkRmlsZXNQcm9taXNlcy5wdXNoKGZpbGVSZWFkUHJvbWlzZSk7XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChyZWFkRmlsZXNQcm9taXNlcy5sZW5ndGggPiAwKSB7XG4gICAgICAvLyBXYWl0IGZvciBhbGwgcHJvbWlzZXMgdG8gcmVzb2x2ZVxuICAgICAgUHJvbWlzZS5hbGwocmVhZEZpbGVzUHJvbWlzZXMpLnRoZW4oKCkgPT4ge1xuICAgICAgICB0aGlzLmNvcHlPZklucHV0QWxsRmlsZXMgPSBpbnB1dEZpbGVzO1xuICAgICAgICBjb25zb2xlLmxvZygndXBsb2FkZWRGaWxlcycsIGlucHV0RmlsZXMpO1xuICAgICAgICB0aGlzLnNlbGVjdGVkRmlsZURhdGEuZW1pdCh7cXVlc3Rpb24gOiB0aGlzLnF1ZXN0aW9uLCB2YWx1ZTogaW5wdXRGaWxlc30pO1xuICAgICAgfSkuY2F0Y2goKCkgPT4ge1xuICAgICAgICAvLyBjb25zb2xlLmVycm9yKCdFcnJvciByZWFkaW5nIGZpbGVzJyk7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS53YXJuKCdZb3UgY2FuIHVwbG9hZCBtYXggNSBmaWxlcycpO1xuICAgICAgLy8gdGhpcy50b2FzdHIud2FybmluZyhUT0FTVEVSX01FU1NBR0VTLk1BWF9GSVZFX0ZJTEVTLCBUT0FTVEVSX01FU1NBR0VTLldBUk5JTkdfVElUTEUpO1xuICAgIH1cblxuICAgIGV2ZW50LnRhcmdldC52YWx1ZSA9ICcnO1xuICB9XG5cbiAgZGVsZXRlRmlsZShjdXJyZW50RmlsZUluZGV4KSB7XG4gICAgY29uc3QgZGVsZXRlZEZpbGVOYW1lID0gdGhpcy5zZWxlY3RlZEZpbGVOYW1lQXJyYXkuc3BsaWNlKGN1cnJlbnRGaWxlSW5kZXgsIDEpO1xuICAgIGNvbnN0IGRlbGV0ZWRGaWxlID0gdGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzLnNwbGljZShjdXJyZW50RmlsZUluZGV4LCAxKTtcbiAgICB0aGlzLmNvcHlPZklucHV0QWxsRmlsZXMubGVuZ3RoID4gMCA/IHRoaXMudmlld0ZpbGUodGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzWzBdKSA6IHRoaXMudmlld0ZpbGUobnVsbCk7XG4gICAgY29uc29sZS5sb2coJ2VtaXQnLCBkZWxldGVkRmlsZVswXSk7XG4gICAgdGhpcy5kZWxldGVkRmlsZURhdGEuZW1pdChkZWxldGVkRmlsZVswXSk7XG4gICAgdGhpcy5zZWxlY3RlZEZpbGVEYXRhLmVtaXQoe3F1ZXN0aW9uIDogdGhpcy5xdWVzdGlvbiwgdmFsdWU6IHRoaXMuY29weU9mSW5wdXRBbGxGaWxlc30pO1xuICB9XG5cblxuICAvLyBWRCAyME1heTI0IC0gcHJldmlldyBjaGFuZ2VzXG4gIC8vIFJTIDA5REVDMjQgQ2hhbmdlZCBrZXlzXG4gIHZpZXdGaWxlKGN1cnJlbnRGaWxlKSB7XG4gICAgdGhpcy5jdXJyZW50RmlsZSA9IGN1cnJlbnRGaWxlO1xuICAgIC8vIEFQLTI1TUFSMjUgRW5zdXJlIHN1YlRleHQgaXMgcGFyc2VkIGludG8gYW4gb2JqZWN0IGlmIGl0J3Mgbm90IGFscmVhZHlcbiAgICB0aGlzLnF1ZXN0aW9uWydzdWJUZXh0J10gPSB0eXBlb2YgdGhpcy5xdWVzdGlvbj8uc3ViVGV4dCA9PT0gJ29iamVjdCcgPyB0aGlzLnF1ZXN0aW9uPy5zdWJUZXh0IDogSlNPTi5wYXJzZSh0aGlzLnF1ZXN0aW9uWydzdWJUZXh0J10pIHx8IHt9O1xuICAgIGlmICh0aGlzLnF1ZXN0aW9uLnN1YlRleHQgIT0gdW5kZWZpbmVkKSB7XG4gICAgICBsZXQgZmlsZU1ldGEgPSB0aGlzLnF1ZXN0aW9uLnN1YlRleHQ7XG4gICAgICBsZXQgZW5kcG9pbnQgPSBmaWxlTWV0YS5lbmRwb2ludDtcbiAgICAgIGxldCBxdWVyeVBhcmFtZXRlciA9IGZpbGVNZXRhLnF1ZXJ5UGFyYW1ldGVyO1xuICAgICAgbGV0IGZpbGUgPSBjdXJyZW50RmlsZTtcbiAgICAgIGlmIChlbmRwb2ludCkge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IHRydWVcbiAgICAgICAgY29uc3QgZnVsbEVuZFBvaW50ID0gZW5kcG9pbnQgKyAnPycgKyBxdWVyeVBhcmFtZXRlciArICc9JyArIGZpbGVbcXVlcnlQYXJhbWV0ZXJdO1xuICAgICAgICBpZiAoZnVsbEVuZFBvaW50KSB7XG4gICAgICAgICAgdGhpcy5kYXRhU2VydmljZS5hcGlSZXNwb25zZShmdWxsRW5kUG9pbnQpLnBpcGUoXG4gICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnZpZXdMb2NhbEZpbGUoKTsgLy8gQ2FsbCBmYWxsYmFjayBtZXRob2RcbiAgICAgICAgICAgICAgcmV0dXJuIG9mKG51bGwpOyAvLyBSZXR1cm4gYSBmYWxsYmFjayB2YWx1ZSB0byBrZWVwIG9ic2VydmFibGUgY2hhaW4gYWxpdmVcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKS5zdWJzY3JpYmUoKGFwaVJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICBpZiAoYXBpUmVzcG9uc2UpIHtcbiAgICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZVxuICAgICAgICAgICAgICB0aGlzLmhhbmRsZUZpbGVDb250ZW50KGFwaVJlc3BvbnNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZpZXdMb2NhbEZpbGUoKVxuICAgIH1cbiAgfVxuXG4gIC8vIC8vIFZEIDAzQXVnMjQgcHJvY2VzcyBsb2NhbCBwcmV2aWV3IFxuICB2aWV3TG9jYWxGaWxlKCkge1xuICAgIGlmICh0aGlzLmN1cnJlbnRGaWxlKSB7XG4gICAgICB0aGlzLnNldEZpbGVVcmwodGhpcy5jdXJyZW50RmlsZT8uZG9jKTtcbiAgICAgIHRoaXMuZmlsZU5hbWUgPSB0aGlzLmN1cnJlbnRGaWxlLm5hbWU7XG4gICAgICB0aGlzLmlzSW1hZ2UgPSB0aGlzLmN1cnJlbnRGaWxlLnR5cGU/LnN0YXJ0c1dpdGgoJ2ltYWdlLycpO1xuICAgIH1cblxuICB9XG5cblxuICBoYW5kbGVGaWxlQ29udGVudChmaWxlUmVzcG9uc2U6IGFueSkge1xuICAgIGNvbnN0IGJ5dGVBcnJheSA9IG5ldyBVaW50OEFycmF5KGZpbGVSZXNwb25zZS5jb250ZW50LmRhdGEpO1xuICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbYnl0ZUFycmF5XSwgeyB0eXBlOiBmaWxlUmVzcG9uc2UudHlwZSB9KTtcbiAgICBjb25zdCB1cmwgPSB3aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcbiAgICB0aGlzLnNldEZpbGVVcmwodXJsKTtcbiAgICB0aGlzLmlzSW1hZ2UgPSBmYWxzZTtcbiAgICBpZiAoZmlsZVJlc3BvbnNlLm5hbWUpIHtcbiAgICAgIHRoaXMuZmlsZU5hbWUgPSBmaWxlUmVzcG9uc2UubmFtZTtcbiAgICAgIGNvbnN0IGltYWdlRXh0ZW5zaW9ucyA9IFsnanBnJywgJ2pwZWcnLCAncG5nJywgJ2dpZicsICdibXAnLCAnd2VicCddO1xuICAgICAgY29uc3QgZmlsZUV4dGVuc2lvbiA9IGZpbGVSZXNwb25zZS5uYW1lLnNwbGl0KCcuJykucG9wKCk/LnRvTG93ZXJDYXNlKCk7XG4gICAgICB0aGlzLmlzSW1hZ2UgPSBpbWFnZUV4dGVuc2lvbnMuaW5jbHVkZXMoZmlsZUV4dGVuc2lvbiB8fCAnJyk7XG4gICAgfVxuICB9XG5cbiAgc2V0RmlsZVVybCh1cmw6IGFueSkge1xuICAgIGlmICh1cmwpIHtcbiAgICAgIHRoaXMuZmlsZVVybCA9IHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybCh1cmwpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmZpbGVVcmwgPSBudWxsOyAvLyBvciBoYW5kbGUgZ3JhY2VmdWxseVxuICAgIH1cbiAgfVxuXG4gIGdldERvY0ljb24oZG9jTmFtZSkge1xuICAgIGNvbnN0IGV4dCA9IGRvY05hbWUuc3BsaXQoJy4nKS5wb3AoLTEpO1xuICAgIHJldHVybiB0aGlzLlNoYXJlZFNlcnZpY2UuZG9jSWNvbihleHQpO1xuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgdGhpcy5maWxlTmFtZSA9ICcnO1xuICAgIHRoaXMuZmlsZVVybCA9ICcnO1xuICAgIHRoaXMuaXNJbWFnZSA9IGZhbHNlO1xuICAgIGlmICh0aGlzLmZpbGVVcmwpIHtcbiAgICAgIFVSTC5yZXZva2VPYmplY3RVUkwodGhpcy5maWxlVXJsKTtcbiAgICB9XG4gIH1cbiAgdmlld0VkaXRDbGljayhxdWVzOiBhbnkpIHtcbiAgICB0aGlzLm9yaWdpbmFsVmFsdWUgPSAgdGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzOyAvL1NLUzEzSlVOMjUgU3RvcmUgdGhlIG9yaWdpbmFsIHZhbHVlXG4gICAgdGhpcy52aWV3RWRpdCA9IHRydWU7IC8vIEVudGVyIHZpZXcgZWRpdCBtb2RlXG4gICAgdGhpcy5tb2RlID0gJ2VkaXQnO1xuICB9XG4gIHNhdmVDaGFuZ2VzKCkge1xuICAgIGxldCBxdWVzID0gdGhpcy5xdWVzdGlvblxuICAgIHF1ZXNbJ3NpbmdsZUZpZWxkQ2hhbmdlJ10gPSB0cnVlXG4gICAgdGhpcy5zZWxlY3RlZEZpbGVEYXRhLmVtaXQoe3F1ZXN0aW9uIDogcXVlcywgdmFsdWU6IHRoaXMuY29weU9mSW5wdXRBbGxGaWxlc30pO1xuICAgIHRoaXMudmlld0VkaXQgPSBmYWxzZTsgLy8gRXhpdCB2aWV3IGVkaXQgbW9kZVxuICAgIHRoaXMubW9kZSA9ICd2aWV3JzsgLy8gU3dpdGNoIGJhY2sgdG8gdmlldyBtb2RlXG4gIH1cbiAgZGlzY2FyZENoYW5nZXMoKSB7XG4gICAgdGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzID0gdGhpcy5vcmlnaW5hbFZhbHVlOyAvLyBSZXZlcnQgdG8gb3JpZ2luYWwgdmFsdWVcbiAgICB0aGlzLnZpZXdFZGl0ID0gZmFsc2U7IC8vIFNLUzEzSlVOMjUgRXhpdCB2aWV3IGVkaXQgbW9kZVxuICAgIHRoaXMubW9kZSA9ICd2aWV3JzsgLy8gU0tTMTNKVU4yNSBTd2l0Y2ggYmFjayB0byB2aWV3IG1vZGVcbiAgfVxufVxuIiwiPCEtLSBTS1MxMUpVTjI1IGZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sIC0tPlxuPGRpdiBjbGFzcz1cImZsZXggaG92ZXItd3JhcHBlclwiIHN0eWxlPVwiYWxpZ24taXRlbXM6IGNlbnRlcjsgZ2FwOiAxMHB4O1wiPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBmaWxlLWlubmVyLWRpdlwiPlxuICAgIDxzdmcgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIj5cbiAgICAgIDxyZWN0IHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIGZpbGw9XCJ1cmwoI3BhdHRlcm4wXzYxNl8zNTEyNSlcIiAvPlxuICAgICAgPGRlZnM+XG4gICAgICAgIDxwYXR0ZXJuIGlkPVwicGF0dGVybjBfNjE2XzM1MTI1XCIgcGF0dGVybkNvbnRlbnRVbml0cz1cIm9iamVjdEJvdW5kaW5nQm94XCIgd2lkdGg9XCIxXCIgaGVpZ2h0PVwiMVwiPlxuICAgICAgICAgIDx1c2UgeGxpbms6aHJlZj1cIiNpbWFnZTBfNjE2XzM1MTI1XCIgdHJhbnNmb3JtPVwic2NhbGUoMC4wMDE5NTMxMilcIiAvPlxuICAgICAgICA8L3BhdHRlcm4+XG4gICAgICAgIDxpbWFnZSBpZD1cImltYWdlMF82MTZfMzUxMjVcIiB3aWR0aD1cIjUxMlwiIGhlaWdodD1cIjUxMlwiIHByZXNlcnZlQXNwZWN0UmF0aW89XCJub25lXCJcbiAgICAgICAgICB4bGluazpocmVmPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFnQUFBQUlBQ0FZQUFBRDBlTlQ2QUFBQUNYQklXWE1BQUE3REFBQU93d0hIYjZoa0FBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCM2QzY3VhVzVyYzJOaGNHVXViM0pubSs0OEdnQUFJQUJKUkVGVWVKenQzWGZZSDFXWi8vRjNTRS9vQ2FFVEFnb2lKWFRwZ2dpS2dpdFIxSlVWWGN1NitMT2cvaXpzV3FLcmE4ZTY2cUxpZ29vSUFpcFd5a2FVSmlBZ1JVVnFJTFNFaENTVTlHVC9PTjlISHBLbmZPdmNaMmJlcit1NnI0QVhWK2FUbWNlY2U4NmNPVE1DVmNVNFlCcXdmYU8yQVRZREpnT1RHcitPQnpadS9QZGpnSWxGaDVSNlpCV3d1UEhQVHdMTGdjZUJSNEI1d0tPTlh4OEU3Z0h1QXVZQWF3cFBLbVZpUkhRQXRXd01zQ3V3ZTZPbU4vNTlxOGhRVWdrdEpUVURkd0EzQXpjMGFuWmtLS2tvTmdENW13d2NCQnpjcUgyQnNhR0pwR3BiUUdvRXJnSitDMXdETElrTUpQV0NEVUIrUnBFRy9HT0FGNVB1OEwxT1VweWx3QitBV2NBbHBJWmdkV2dpcVFzY1dQSXdIbmdKOENyZ2FKNStUaThwUDQ4QVB3TitBbHdHTEl1Tkk3WEhCaURPR05JZC9xdUJsd0hyeDhhUjFJYkhnWjhEWjVGbUIxYkZ4cEdhWndOUXZHY0Jid2JlQUd3ZUcwVlNGejBJL0JqNERtbFJvWlExRzRCaWpBU09CMDRHanNEekxsWGRGY0NYZ1F0eFZrQ1pjaURxclhHazUvci9CdXdjbkVWUzhlNEZ2Z21jRGp3V0cwVjZKaHVBM3RnRWVBL3dObURUNEN5UzRpMG1OUUdmSlcxSUpJV3pBZWl1OVlIL0Izd1FWL0pMV3RlVHBEVUNud1RtQm1kUnpka0FkTWM0NEozQSswbmI3a3JTVUJZQlgyelU0bUgrVzZrbmJBQTZkeHp3SldDSDZDQ1NTbWMrOEIvQVYzRnpJUlhNQnFCOTAwa0QvK0hCT1NTVjN6WEFPNERybzRPb1B0YUxEbEJDNDBrTGVhN0h3VjlTZHh4QTJtNzRkTklpWXFubm5BRm96YUhBdC9DVlBrbTk4d2p3cjZTdGhxV2VjUWFnT2V1VE92UExjZkNYMUZ1Ymt6WVEraTYrVGFRZWNnWmdlUHNEUHlCdDRTdEpSWm9EdkpIMG5RR3BxMFpHQjhqWWVxUlgrMzRJYkJhY1JWSTliUWo4RTJudDBTeGdUV3djVllrekFBT2JBcHhEMnJkZmtuSndDWEFpN2lTb0xyRUJXTmYrcEM5NmJSc2RSSkxXTW9mMENmR3Jvb09vL0Z3RStFd25BYi9Gd1Y5U25yWWhQUXA0WFhRUWxaOXJBSktScEUxOVBnMk1EczRpU1VNWkNieWNOSU43ZVhBV2xaZ05BRXdFZmdTOFBqcUlKRFZwQkdranN1MkJYd0tySXNPb25PcStCbUFMNEdmQWZ0RkJKS2xObDVGbUJKNklEcUp5cVhNRE1CVzRGTi92bDFSK1Z3SXZ3UzhMcWdWMWJRQ21rYnJtYWRGQkpLbExyZ2RlQkN5SURxSnlxR01Ec0F2cHpuK3I2Q0NTMUdVM0FFZGhFNkFtMUswQjJJMzBDczNrNkNDUzFDUFhBUy9BTlFFYVJwMzJBWGdXY0RFTy9wS3FiVC9ncDhEWTZDREtXMTFlQTl5V2RPZnZCaitTNm1BYXNDTndRWFFRNWFzT0RjQVd3TytBSGFLRFNGS0JkZ2ZHa2RZOFNldW9lZ013RWZnTjZkbS9KTlhOSWNCYzBoc0Mwak5VZVJIZ2VxU1AraHdmSFVTU0FxMEFqZ1IrSHgxRWVhbnlJc0F2NHVBdlNhT0JjL0hWWjYybHFnM0FXNEYzUm9lUXBFeHNRWm9SSFJNZFJQbW80aHFBL1VuZDdxam9JSktVa1cyQkRZRmZSd2RSSHFyV0FFd2hiZkc3YVhRUVNjclFBY0Q5d0kzUlFSU3ZTb3NBUndLWEFFZEVCNUdrakMwQkRnWCtHQjFFc2FxMEJ1QlVIUHdsYVRqamdRdEpNNmFxc2FyTUFPd0RYRTFhN1NwSkd0NlZwRzhHTEk4T29oaFZXQU13a2JUSHY5MnNKRFZ2TzJBVDRGZlJRUlNqQ2czQWZ3RkhSNGVRcEJMYUg3Z1B1Q2s2aUlwWDlrY0Fod1AvUy9uL0hKSVVaUmx3R0hCdGRCQVZxOHdENTNqZ1p0Sm5maVZKN1hzSTJCZDRNRHFJaWxQbXR3QStqb08vSkhYRGxxU2RBc2RHQjFGeHlyb0dZRHB3QnVWdVlDUXBKOXNDazRGZlJBZFJNY3JhQUp3RDdCQWRRcElxWmwvUzR3QTNDYXFCTXE0QmVDVndYblFJU2Fvb1B4OWNFMlZyQU1ZQ3QrS3pmMG5xcFlkSnN3RVBSQWRSNzVUdEdmcTdjUENYcEY3ciszeXdpd0lyckV4ckFOWUhma1RhK1UrUzFGdmJrSFlML0VsMEVQVkdtUnFBVTRHWFJvZVFwQnFaRHN3RnJvOE9vdTRyeXhxQWpZRzdTZnRXUzVLS3N3STRDcmc4T29pNnF5eHJBTjZMZzc4a1JSaE5ldnk2VFhRUWRWY1paZ0Fta0Q1V01TazZpQ1RWMkkzQXdjQ1M2Q0RxampMTUFMd1pCMzlKaXJZWDhOL1JJZFE5dVM4Q0hBbDhIOWcwT29na2llbkFBdnh5WUNYa1BnTndQTEJqZEFoSjB0OTlnZlFwZHBWYzdnM0F5ZEVCSkVuUE1KcTBTZEMwNkNEcVRNNkxBSGNFN2lEdmpKSlVWemVSRmdVK0ZSMUU3Y2w1QnVCZmNQQ1hwRnp0Q1p3ZUhVTHR5M1VSNEdqZ2YwamIvMHFTOHJRSDhEaHdkWFFRdFM3WEdZQmpTQitqa0NUbDdUT2t6d2VyWkhKdEFGNFRIVUNTMUpSUndMbjR4bGJwNVBpTWZRTHdDRTcvUzFLWjNBd2NCRHdaSFVUTnlYRUc0Q1U0K0V0UzJld0JuRVdlTjVZYVFJNkxBRDhLN0JvZFFwTFVzbDFJcndWZUdSMUV3OHV0VXhzRnpDTjkvbGVTVkQ2cmdXT0JYMFVIMGRCeWV3UndFQTcra2xSbTZ3RS9BSjRWSFVSRHk2MEJPQ1k2Z0NTcFk1c0FQd00yakE2aXdka0FTSko2WVJmZ1RQSjcxS3lHbkJZQlRnWStqejhza2xRVnp3R1dBNytQRHFKMTVUUURjREFPL3BKVU5mOUJXaFNvek9UV0FFaVNxbVU5NEd6U0l3Rmx4QVpBa3RSckd3QVhBaHRGQjlIVGNwbHlId3NzYXZ3cVNhcW1ud0F6Z0RYUlFaVFBETUJ6Y2ZDWHBLcDdPZkRoNkJCS2Nta0E5b2dPSUVrcXhFemdGZEVoWkFNZ1NTcldDT0M3K00yWGNEWUFrcVNpYlFCY2dGdS9oOHFsQVhodWRBQkpVcUYySW4wK09KZHhxSFp5MkFsd1BQQXA4bmtqUVpKVWpKMUpEY0NzNkNCMWxFUG50VDBPL3BKVVZ4OENUb2dPVVVlNU5BQ1NwSG9hQVp3QjdCWWRwRzV5YUFDbVJRZVFKSVZhbi9UNTRFblJRZW9raHdaZ20rZ0FrcVJ3MDREdmtjZTRWQXM1bk9qTm9nTklrckp3RFBDSjZCQjFrVU1ENEpTUEpLblBCNEZYUjRlb2d4d2FnTW5SQVNSSjJlamJLWER2NkNCVlp3TWdTY3JOZU9COEhCOTZLb2NHWUlQb0FKS2s3R3dQL0lBOE5xeXJwQndhQUQ4RExFa2F5TkdrbldMVkF6azBBR09pQTBpU3N2VSs0UFhSSWFvb2h5MTRueUk5NzVFa2FTQkxnRU9CUDBZSHFaSWNHb0NWK0l4SGtqUzAyY0Ird0x6b0lGV1J3eU1BQjM5SjBuQ21BdWNBbzZLRFZFVU9EWUFrU2MxNEFmRFo2QkJWa2NNamdEWFJBU1JKcGZJbTBoY0UxUUViQUVsUzJTd0ZEZ091aXc1U1pqWUFrcVF5dWgvWUY1Z2JIYVNzWEFNZ1NTcWpiWUVMY0MrWnR0a0FTSkxLNm1EZ0M5RWh5c3BIQUpLa3Nuc0w4TzNvRUdWakF5QkpLcnRscEVXQjEwWUhLUk1iQUVsU0ZUeEVXaFQ0WUhTUXNuQU5nQ1NwQ3JZRWZveGZtRzJhRFlBa3FTb09CTDRVSGFJc2ZBUWdTYXFhdHdLblI0ZkluUTJBSktscVZnQkhBcitQRHBJekd3QkpVaFU5VEZvVStFQjBrRnk1QmtDU1ZFVmI0S0xBSWRrQVNKS3E2Z0JjQ3pBb0d3QkpVcFdkQkp3Y0hTSkhyZ0dRSkZYZEN1QW80UExvSURteEFaQWsxY0Vqd0g2a3p3Z0xId0ZJa3VwaGMrQ253UGpvSUxtd0FaQWsxY1Zld0g5SGg4aUZEWUFrcVU1ZUI3d2pPa1FPWEFNZ1NhcWJsY0RSd0t6b0lKRnNBQ1JKZFRTZnRDandudWdnVVh3RUlFbXFvMG5BQmNDRTZDQlJiQUFrU1hXMUp6WGVLZEFHUUpKVVp5Y0M3NGtPRWNFMUFKS2t1bHNGSEF2OE9qcElrV3dBSkVtQ0JjRCt3RjNSUVlyaUl3QkprbUJUMHFMQWlkRkJpbUlESUVsU3NnZHdGbm5NanZlY0RZQWtTVStiQWJ3dk9rUVJjdWh5WEFNZ1NjckphdUE0NEpmUlFYckpCa0NTcEhVOVJsb1VlR2Qwa0Y3eEVZQWtTZXZhQlBnWnNHRjBrRjZ4QVpBa2FXQzdBR2VTeDJ4NTE5a0FTSkkwdUpjRHAwYUg2SVVjdWhyWEFFaVNjcllhZUJGd2FYU1FicklCa0NScGVBOEF1NU1XQjFhQ2p3QWtTUnJlMXNCcDBTRzZ5UmtBU1pLYU53TzRNRHBFTjlnQVNKTFV2TG1rUndGem80TjB5a2NBa2lRMWJ3cnc1ZWdRM2VBTWdDUkpyWHNWY0Y1MGlFN1lBRWlTMUxxNXdFN0FvdWdnN2ZJUmdDUkpyWnNDZkRRNlJDZWNBWkFrcVQwcmdiMkFXNk9EdE1NWkFFbVMyak1LK0dKMGlIYlpBRWlTMUw0WEFzZEZoMmlIandBa1Nlck1YY0N1d0xMb0lLMXdCa0NTcE03c0NKd1NIYUpWemdCSWt0UzV4Y0EwWUVGMGtHWTVBeUJKVXVjMkJONFZIYUlWemdCSWt0UWRpMGl6QUtYNFpMQXpBSklrZGNkR3dEdWlRelRMR1FCSmtycG5JV2tXWUdGMGtPRTRBeUJKVXZkc0RKd2NIYUlaemdCSWt0UmQ4MG16QUk5SEJ4bUtNd0NTSkhYWEpPQXQwU0dHNHd5QUpFbmRONXUwUWRDcTZDQ0RzUUdRRkdFNWNDOXBDOVU3Z1llQkI0RkhTTjlaZndwNGtvR25VQ2NBNDBqUFdpY0JtelZxYTlLMDZ3Nk4ycWlYZndDcENTOERMb29PTVJnYkFFbTl0aGk0QnJpeFVUZVJCdjFlM3hsdEIremVxSDJBZzRDdGVueE1xYjlMZ0tPalF3ekdCa0JTdHowQlhBcjhML0I3NEJieW1RYWRDaHdNSEVuNmkzbWIyRGlxdURYQVRxU0dOenMyQUpLNllRNXdQdkJ6MHFCZmxxK2k3UUljQzh3QW5rY2VmeWVxV2o0SmZDZzZ4RUJ5K0dHM0FaREthUzV3RG5BdWNCWGwvLy95TnNBcmdKT0F2WU96cURybUFOdVR6eXpZMzlrQVNHckZhdUJpNE51a3hVM0xZK1Awek83QTY0RTNrQllhU3AwNEJ2aDFkSWkxMlFCSWFzWVR3Tm5BYWNEdHdWbUtOQlo0TmZCdVlNL2dMQ3F2NzVGbWxySmlBeUJwS0k4QW53ZStSZnJTV1owZENmd2I4SUxvSUNxZFJjQVd3TkxvSVAyNUU2Q2tnY3dGL2ovcGZmclA0K0FQY0JtcENUZ1ErR1Z3RnBYTFJzQ0xva09zelFaQVVuOVBBaDhsRGZ4ZklHM0lvMmU2Qm5ncDhIemc2dUFzS284VG9nT3N6VWNBa2lBdDd2c2Y0TU9rSGZuVXZCbWtabW43NEJ6SzJ3SmdjMkJsZEpBK3pnQkl1cG0wT2M2YmNQQnZ4d1hBYzRHUGtka3pYbVZsVTlMam8yellBRWoxOVNUcE9mOCtwR2x0dFc4Sk1CUFlEWmdWRzBVWmUybDBnUDU4QkNEVjAxV2s5OXl6M0tLMDVFWUFid1UrQzJ3UW5FVjV1Um1ZSGgyaWp3MkFWQy9MU1ZQVm55SERuY2txWmlyd2ZlQ1E2Q0RLeGhwZ0N2Qm9kQkR3RVlCVUovZVNCcVAveE1HL0NMT0JJNENQNC9sV01vTDA5a2dXYkFDa2V2Z0Y2Vm4vZGRGQmFtWWw2YlhLSTRHSGc3TW9ENGRIQitoakF5QlYyeHJnSThCeHBOZVFGT055WUYvZ0Q5RkJGTzdRNkFCOVhBTWdWZGNxMHY3alowY0gwZCtOQmY2TDlNcWw2bWtsYVdmQThFMjJuQUdRcXVzVUhQeHpzd3g0TTNBcTN2elUxU2d5K2JDVURZQlVUZWNDWDRzT29VRjlHamlSMUJDb2Z2YUxEZ0EyQUZJVkxRTGVHUjFDdy9vaDZUdnhUMFFIVWVHeTJBdkFCa0NxbnErU1B1T3IvTTBpdlNvNFB6cUlDclZMZEFCd0VhQlVOU3RKWC9LN1B6cUlXckkzOEJ0Z2NuUVFGV0lSc0hGMENHY0FwR3I1S1E3K1pYUUQ2WHZ4aTZLRHFCQWJBVnRIaDdBQmtLcmxwOUVCMUxZYmdCZmptb0M2MkNFNmdBMkFWQzFYUlFkUVI2NEJqc2UzQStwZ2FuUUFHd0NwT2g0Qjdvb09vWTVkU3ZwU28rdWpxbTNiNkFBMkFGSjEzQkVkUUYzekk5SkhoRlJkMjBVSHNBR1Fxc01GWk5YeU1lQUgwU0hVTTFPaUE5Z0FTTld4TURxQXVtb05hZHZnRzZLRHFDYzJqUTVnQXlCVmgvOS9ycDZsd0t1d3Vhc2lHd0JKWFJPK3FFZzljUmN1Q3F5aThBYkFuUUNsNnJpUERGNHRhc01JVXZPeVU2T21rSFpKNjZ2UndKT04vM1loc0FTWURjd2hiWHAwSnpDdjJNZ2h2Z3E4UFRxRXVtWSt3VHMvMmdCSTFiRUsyQVI0UERySU1DWURoelhxVU5LKzZPTTcvRDN2QTY0RC9nQmMzYWhWSGY2ZXVaa0EvQkY0VG5RUWRjWGp3SWFSQVd3QXBHbzVGdmhGZElnQlBKZjBMSHNHc0J1OS83dG5QdkJMNEdla1BmWnpiNHFhdFM5cHM2ZlIwVUhVc1dYQXVPZ1EwZFpZbHRXMU9vdDhiQTc4TzNBenNlZmtDZUJid0Y2OS9lTVc1aFBFLzV4Wm5kZnF0UzlzMFp3QmtLcmxLV0FhTURjd3crN0FLY0NKd05qQUhBTzVHdmd5Y0I0Wi9BWGNwdkdrcHVwWjBVSFVzZEF4MkxjQXBHcVpRTHJyanJBMzhHdmdUOEFieVcvd0J6Z1FPSWYwYnYxTGc3TzBhd253dHVnUVVqZEVUOE5ZVnRWcUpmQThpck1kNmRIRHFpNy9PWXFvM3dQN2RQK1VGT0ljNHMrZjFWbUY4aEdBVkUxelNFM0FnejA4eGxqZ1E4Qjc2WHdWZjZTVndHZEplKytYNlN0ODJ3Ti93WVZrWmVZakFFbGR0dzB3aTk3dEN6QWR1SmJVQUpSNThBY1lCZndiNlJXNy9ZS3p0T0plNEN2UklWUmV6Z0JJMVRZWE9JbjBLbHczakFMZUQzd1VHTk9sM3pNbks0QjNBZCtJRHRLa2pVZ2JJWVZ1S0tPMk9RTWdxV2VtQUw4Q3ZnZnMwT0h2TlozMER2b25xZWJnRCtuOStxOEQzNlFjNzlvdkFqNGZIVUxsNUF5QVZCK3JTYzNBMTRCTFNjKytoek9DdEZ2ZjI0QVRxTmROdys5SUd4Zk5qdzR5alBXQmUzQVdvSXhDeDJBYkFLbWVuaVJ0blhzRjZXTXppMGwzazVEV0Qwd2w3Y3YvQW1ETGlJQ1p1QWw0SWZrM0FSOEVQaFVkUWkyekFZZ09JRWxEK0JPcENYZzBPc2dRTmlCOUdHbWo2Q0JxaVdzQUpDbGowNEhMeUh1Sy9YSGdPOUVoVkM3T0FFaFNjNjRqUFJKNUlqcklJS2FTM2dnWUZSMUVUWE1HUUpKS1lEL1NOd1J5ZlR0Z051bnJoMUpUYkFBa3FYa3ZCczRrMzc4N3Z4MGRRT1hoSXdCSmF0Mm5nVk9qUXd4Z0pPbVZ3RzJqZzZncFBnS1FwSkw1QVBBUDBTRUdzSW8wUXlFTnl4a0FTV3JQbzhCZXBBOHY1V1FuNFBib0VHcUtNd0NTVkVLVGdiUEpiOVg5MzBoN0YwaERzZ0dRcFBZZFN2cVNZRzdPaXc2Zy9Qa0lRSkk2c3hUWWpiU2xjaTU4REZBT2JnVWNIVUFxMkVMZ0R0SlU3U0xTTG02TFNQdnpMd00ySm4zZ1pTSnBpOWVwd0xPQjdYRFdMbGMvQjQ2TERyR1d2NUYrYnBTdjBERTR0MmRYVXRVOFR2cXEzQ3pnV3RKZDJkdzJmNit4cEwvUWR5Vk5QUjhPUEpjOEd2bTZPN1pSUDQ4TzBzK3ZzUUhRRUhMNGk4TVpBRlhObmNBUFNIOEJYMDl6bjkxdDF4VGcrY0R4cE5mU0p2VHdXQnJhWGFTR2JIbDBrSWFYa2xkRG9uWDVDQ0E2Z05RRkM0RnpnYk9BcTRqNXVWNmYxQWljU1BwNjNjaUFESFgzUnVDNzBTRWFKZ0lMZ0RIUlFUUW9HNERvQUZJSDVnTGZBRTRERmdkbjZXOHE4QjdnelRnclVLVGJTYk1BcTZPRE5Gd05IQkFkUW9OeUh3Q3BoQjRCUGdoc0Q4d2tyOEVmMG9kaDNrVnFCRDVHdWhOVTcrME12RHc2UkQ5WFJBZFF2bXdBcE5Zc0J6NUJHdmcvQXl3SlRUTzhSMGtOeW83QTEwaGJ4YXEzUGhnZG9KOHJvd01vWHo0Q2tKcDNCZkJXNE0vUlFUb3duZFFJSEJJZHBPTDJBVzZJRGdGc0JUd1FIVUtEOGhHQWxMbWx3TW5BWVpSNzhJZTBSZXhod0J0SWV3K29OMDZNRHREd0lPMi9kcXFLc3dHUWhuWS82VFc3YjFLZDJhbzFwQy9HVFNjdEVsUDMvU1A1dklYaGR3RTBJQnNBYVhDWGtMNzJkbTEwa0I2WlRkcE02SXRVcDduSnhaYWtjNXNER3dBTnlBWkFHdGhYZ0dPQStkRkJlbXc1NlhYQjQwbGJFYXQ3VG9nTzBQRFg2QURLa3cyQXRLN1BrMTZocTlPSytaOENSd0R6b29OVXlCSFJBUnB5K2tpUk1tSURJRDNUWjRIM1JZY0ljaDFwZ2VCOTBVRXFZaWRnNitnUXBLMnBwWFhZQUVoUCt6andnZWdRd2Y0S0hBVGNGaDJrSWc2UERrQjZEWEJwZEFqbHh3WkFTajRHZkRRNlJDWWVBSTRDN29rT1VnR0hSd2NnTGZCOE1EcUU4bU1ESUtXZDhtWUdaOGpOUTZRbTRKSG9JQ1czUjNTQWhvZWpBeWcvTmdDcXU1bWt1Myt0Nnk3U04rNmZpQTVTWWp0SEIyaDRLRHFBOG1NRG9EcjdHQTcrdzdrZWVCM3VFOUN1allBcDBTRndOMEFOd0FaQWRUVVRwLzJiOVJQUzl3UFVubWRIQndBZWp3NmcvTmdBcUk2ODgyL2QrNENib2tPVTFBN1JBY2p2YzlYS2dBMkE2dVpqZU9mZmptWEFhM0Mzd0hac0ZCMEFHd0FOd0FaQWRUSVRCLzlPM0U3YUswR3RXVDg2QUttQms1N0JCa0IxTVJPbi9idmhTNlJHUU0zYklEb0FMdUxVQUd3QVZBY3pjZkR2bHVYQU82SkRsRXdPRGNEcTZBREtqdzJBcXM0RmY5MTNDWEJSZEFpMXhBWkE2N0FCVUpYTnhHZit2ZkpobkZadVZnNEw4TVpHQjFCK2JBQlVWVFB4enIrWC9nUmNGaDJpSkhMWVNYRjhkQURseHdaQVZUUVRCLzhpZkRZNlFFbmtzQW5QdU9nQXlvOE5nS3JHWi83RnVRUzRNVHBFQ1N5S0RnQk1pQTZnL05nQXFFcG00alAvb3AwUkhhQUU3b29PQUV5T0RxRDgyQUNvS21iaW5YK0VId0VybzBOazdtL1JBYkFCMEFCR1JRZVF1cURNMC82VGdRT0I1d0hUU2M5cTF5ZnQzSFpIbzY0Q3JnWldCV1VjeWp6Z1V1REYwVUV5dFFDWUh4MENHd0JsYW8xbGRWQXpLWi8xZ0dPQUM0RVZOUGZudkIvNElIayt5ejJKK0orRFhPdnFEczVyTi8yWitITmhyVnUxRjMwQnJQTFdUTXJuQU5JcmRPMyttZThIamlvODlkQW1remFhaWY1NXlMRnkrSXp5Q05KSG5LTFBoYlZ1MVY3MEJiREtXVE1wbDlIQVYwblQrSjMrMlZjQjd5dzIvckJ1SnY1bklzZDZSU2NudFVzMkkvNDhXQU5YN1VWZkFLdDhOWk55R1EyY1QvZlB3MXVML0VNTTR5dkUvMXprVnF1QVNaMmMxQzdaai9oellRMWNvWHdMUUdYek1jclZBSXdHemdGbTlPRDMvaHJ3a2g3OHZ1MjRQRHBBaG00bWp3V0FPMFVIVUo1c0FGUW1EdjdQTkFvNEQ5aTdSNzkvSzNKWjdKYVRTNklETk93YUhVQjVzZ0ZRV1RqNEQyd0NjQzZ3WVkrUE01d0h5ZU9qTnprNU96cEFndzJBQm1RRG9ESnc4Qi9hanVTeEQwSU9HOTdrNGhiZ3B1Z1FEYnRGQjFDZWJBQ1VPd2YvNXJ3ZG1GYndNZGQyZS9EeGMvSzk2QUFOazRqL3VWQ21iQUNVTXdmLzVvMEMzaHR3M1A3dUNENStMbFlDUDRnTzBiQWZhUjhBYVIwMkFNcVZnMy9yL2hFWUczajhSd09QblpNZmt0WkU1R0QvNkFES2x3MkFjdVRnMzU1TmdZTURqNzh3OE5pNVdBVjhNanBFUHdkRkIxQytiQUNVR3dmL3pod2FlR3diZ1BSYVppNXJJY1lBaDBTSFVMNXNBSlFUQi8vTzdSSjQ3RVdCeDg3QmF1QVQwU0g2ZVI0d01UcUU4bVVEb0Z3NCtIZkg1b0hIWGhsNDdCejhOM0JiZEloK1hoQWRRSG16QVZBT0hQeTdaM3pnc2NjRUhqdmFROENwMFNIV2tzczIwY3FVRFlDaU9maDMxeE9CeHg0WGVPeG83eUt2UnlCYmtWNEJsQVpsQTZCSUR2N2ROeWZ3MkpHdklFYjZPV254WDA2T3hmZi9OUXdiQUVWeDhPK05Xd09QWGNjRlovY0RiNG9PTVlEam93TW9mellBaXZBNUhQeDc1YmVCeDk0bThOZ1JsZ0d2Qk9aR0IxbkxGT0NGMFNHVXYxSFJBVlE3WndBZmlBN1JndEhBanlqSEhkVnM0SStCeDk4dThOZ1IzZzVjR3gxaUFQK0lmN2VyQ2M0QXFFamZBOTRDcklrTzBxUytPLzh5RFA0QTN5SDIzTlpwQnVBYndMZWpRd3ppeE9nQVVyUFdXTFdvUzBrRGFsbU1CczRuL3J3MVd3dUJUWHB5SnBwM1BmSG5vWWc2azN4dm52WWcvdnhZelZjb3A0bFVoTDhBSndBcm9vTTBxVXpUL24wK0Fqd1dlUHlSd0hNQ2oxK1VINU1XL2EyT0RqS0lrNk1EU0sySTdzQ3MzdGJEd0ZUS28yeDMvbXVBV2FRQk9OSjA0czlEcitzODhyNXAyZ0JZVFB4NXNwcXZVTGxPWTZrYVZwRHUvR2RIQjJsU21WYjc5N2tQZUMzcEszU1I5ZzArZnE5ZFFEclBPVzkzL0hwU0V5Q1ZSblFIWnZXdVRxRTh5bmpuUDQvWWovLzA5MDNpejBldjZuenlYNzh5Q3JpYitITmx0VmExRjMwQnJON1VEeW1Qc2c3K2UvVGlaTFRwVnVMUFNTK3FESU0vcEZmL29zK1YxWHJWWHZRRnNMcGZkMUtlcVVnSC84NU5JLzZjOUtMS012aVBBRzRpL254WnJWY28xd0NvMjFZQ3J3TWVqdzdTaEw3Vi9tVjY1ajhQT0JLNE9UcElQOGRGQitpQkM0RFhVSTQzVjE1QldvUXBsVTUwQjJaMXQyWlNEcU5KZjhsSG42OVdhaTU1M2ZuMytRM3g1NmFiVlpZN2YwaHZmOXhHL0RtejJxdmFpNzRBVnZmcU92SitUYXFQMC83ZHN4R3dsUGp6MDYwcTArQVBjQkx4NTh4cXYyb3YrZ0pZM2FrVndON2t6enYvN25vNzhlZW5XMVcyd1g4OGNDL3g1ODFxdjJvditnSlkzYWxQcjMxaE0rVGczMzAzRW4rT3VsRmxHL3dCUGs3OGViTTZxOXFMdmdCVzUzVVhNR0h0QzVzWnAvMjc3d0RpejFFM3FveUQvelRnS2VMUG5kVloxVjcwQmJBNnI5ejN6SGZ3NzQwemlEOVBuVllaQjMrQWk0Zy9kMWJuVlh2UkY4RHFyR2F0ZTBtejRyUi9iMndITENQK1hIVlNaUjM4WDB2OHViTzZVN1VYZlFHczltc1ZzTSs2bHpRYkR2NjljenJ4NTZxVEt1dmdQeGw0aFBqelozV25haS82QWxqdDE1a0RYTTljT08zZk85c0R5NGsvWCsxV1dRZC9nSE9KUDM5Vzk2cjJvaStBMVY2dEFKNDF3UFhNZ1lOL2IzMmIrUFBWYnBWNThIOFQ4ZWZQNm03Vlh2UUZzTnFyTXdhNm1CbHcyciszOWlOdDl4eDl6dHFwTWcvK3p3SVdFMzhPcmU1VzdVVmZBS3YxV2dIc09OREZERmJHTy84eURmNmpLTzk3LzJVZS9DZFEzdk51RFYyMUYzMEJyTmJybkFHdlpLeVJ3SStKUHpldFZKa0dmNEQzRW4vTzJxa3lELzRBM3lmK0hGcTlxZHFMdmdCVzYvVzhBYTlrck04VGYxNWFxYklOL3RPQUo0Zy9iNjFXMlFmL2R4Ti9EcTNlVmUxRlh3Q3J0YnB5NE1zWTZwK0pQeSt0Vk5rRy96SEFOY1NmdDFhcjdJUC9ETkxqdHVqemFQV3VhaS82QWxpdDFXc0d2b3hoRHFWY0c5S1ViZkFIK0JMeDU2M1Zxc0xnWCtaWExhM21xdmFpTDREVmZEMEtqQjM0TW9iWW5ISnRpbExHd1g4R3NKcjRjOWRLT2ZoYlphbmFpNzRBVnZQMXBVR3VZWlNmRUg5T21xMHlEdjU3QUF1SlAzZXRsSU8vVmFhcXZlZ0xZRFZmMHdlNWhoRk9JdjU4TkZ0emdkMTdjeHA2WmcvUzVrVFI1NjZWY3ZDM3lsYTFGMzBCck9icVQ0TmR3QUJiQWZPSlB5Zk5sSU4vTWVYZ2I1V3hRcTBYSFVDbDhlUG9BUDE4R2RnME9rUVQ1Z0V2Qkc2SkR0S0NQWURMU0IrZEtZc0xTSXRUVjBRSGFkTU0wdDRhWlc1Z3BMWkVkMkJXYzdYTFlCZXdZUHRUamtWcDN2a1hVOTc1VzJXdTJvdStBTmJ3ZGR1Z1Y2OTRzNGcvSDhOVldSZjhPZmdYeThIZnFyM29DMkFOWDU4YjlPb1Y2NlhFbjR2aHlqdi9Zc3JCMzZwQzFWNzBCYkNHcnhjT2V2V0tkUjN4NTJLbzhzNi9tSEx3dDZwU3RSZDlBYXloNnlsZy9LQlhyemdIRUg4dWhpcnYvSXNwQjMrclNoWEt0d0Ewbk44RFM2SkRBQ2RIQnhpQ3EvMkw0V3AvcVdLaU96QnI2UHJJNEpldU1KTkpUVWowdVJpb3ZQTXZwcnp6dDZwWW9ad0IwSEN1amc0QXZCNFlGeDFpQU43NUY4TTdmNm1pb2pzd2EvQmFCV3cwK0tVcnpGWEVuNHUxeXp2L1lzbzdmNnZLVlh2UkY4QWF2UDQ4eEhVcnl1YWtSaVQ2WFBRdkIvOWl5c0hmcW5xRjhoR0FocExEMVBaeDVQVnpPZzg0a2p6T1RiT2M5aStlMC83S1hrNS9zU28vT2V3QWVGeDBnSDRjL0l2aDRDOFZ3QVpBUTdrMStQZ2pnRU9DTS9RcDYrQi9LUTcrUlhMd1YybU1pZzZnclAwdCtQZzdrTWRYLzhvNitIdm5YeXdIZjVXS013QWF5dXpnNCs4WGZQdytiOExCdjljYy9LV0MyUUJvTVBPQng0TXo3Qk44ZklCemdZdWlRN1RBd2I5NER2NHFKUnNBRGVhKzZBREFyc0hIWHdLY0VweWhGVDd6TDU2RHYwckxOUUFhek1QUkFZQnRnNDkvSHZCUWNJWm1lZWRmUEFkL2xab3pBQnJNL09nQXdOYkJ4ejg5K1BqTmN2QXZub08vU3M4R1FJTjVMUGo0RTRCTkFvOC9HN2d5OFBqTmN0cS9lQTcrcWdRYkFBMW1RZkR4dHd3K2ZnNGZRUnBPMytDL1dYU1FGamo0UzVsd0RZQUdzelQ0K0dPRGozOU44UEdINDdSLzhSejhWU25PQUdnd3k0S1BILzJ6ZVdmdzhZZDVNNmgyQUFBUTJVbEVRVlRpdEgveEhQeFZPYzRBYURETGc0OGYvYlA1WlBEeEIrT2RmL0VjL0ZWSjBYZFp5dGZLNE9OSC8yd3VDVDcrUUx6ekw1NkR2eW9yK2k1TCtZcitDeTk2QU40dytQaHI4ODYvZUE3K3FyVG91eXpsSzNvUjNxUEJ4OThwK1BqOU9mZ1h6OEZmbFdjRG9NR01DVDcrQW1CMTRQRjNEangyZjA3N0Y4L0JYN1ZnQTZEQlRBZysvaXBpTnlNNkl2RFlmWHpQdjNnTy9xb05Hd0FOWmxKMEFHTDM0ZCtOTkFCSGNmQXZub08vYXNVR1FJUFpORG9BY0Z2dzhkOFRkRndILytJNStLdDJiQUEwbUJ4bUFHNE5QdjdyZ0gwS1B1YnVPUGdYemNGZnRXUURvTUZFNzhVUGNFdnc4ZGNEdmdlc1g5RHhkaWV0OW5md0w0NkR2MnJMQmtDRG1Sb2RnUGdHQUdBWDBpRFg2OWNpSGZ5TDUrQXZCVnRqWlZzNXZIcDJQL0huWVEzd2UzcDNQdllBNW1id1oyeWx6cWZjQStjTTBuYlgwZWZScW5lRmNnWkFRNWthSFFDNEpEcEF3eUhBRmNEMlhmNTlEd04raTNmK1JmTE9YOElHUUVON1RuUUE0T0xvQVAzc0RGd0hITk9GMzJzRThDNVNnN05KRjM2L29qajRTK3FhNkNrWWEvRDYxQkRYclNpYmtUWUZpajRYL1dzMWFYSGdObTMrbWZZaVBWS0kvbk8wV2s3N1cxWjNxL2FpTDRBMWVGMDB4SFVyMG0rSlB4Y0QxVExnRE5JMC9uQ3phZU9BNDRGZmtCcUk2T3l0bG9PL1pYVy9RbzJJRGtBR0owR0R1bzg4MWdHOEFmaHVkSWhoUEFaY0NmeUZ0S0J2TVdscWYydlNyb0lIQU9QRDBuWEdhWCtwTjBMSFlCc0FEV2NyWXJma0JaZ0lQRXh4NytQcmFRNytVdStFanNFdUF0UndEb3dPQUR4Sm1vSldzUno4cFFxekFkQndjbWdBQUw0UkhhQm1IUHlsaXJNQjBIQU9pUTdROEFmU0h2bnFQUWQvcVFaY0E2RGhyQUttQUF1aWd3Q0hBN09pUTFTY2c3OVVITmNBS0dzamdTT2lRelQ4bHZUK3ZIckR3VitxRVJzQU5lTkYwUUg2K1JET0d2V0NnNzlVTXpZQWFzWkx5T2RuNVhmQTk2TkRWSXlEdjFSRHJnRlFzdzRoYlhTVGc4MkJ2d0liUndlcEFBZC9LWTVyQUZRS0owUUg2T2NSNE1QUklTckF3VitxTVdjQTFLdzVwRzJCVjBjSGFSaEplaTN3OE9BY1plWGdMOFZ6QmtDbHNBMzV2QTBBNmZYRTE1QzJDRlpySFB3bDJRQ29KVytNRHJDV1I0RFhrcG9CTmNmQlh4SmdBNkRXekNCOTRTNG5zNEJQUlljb0NRZC9TWDluQTZCV2pBUCtLVHJFQUQ0S25CMGRJbk1PL3BLZXdVV0FhdFU5d0xQSmI5cDlOUEJUNEpqb0lCbHk4SmZ5NUNKQWxjbzA0TGpvRUFOWUFid1N1Q282U0dZYy9DVU55QVpBN1hoM2RJQkJQQVc4RExnMk9rZ21IUHdsRGNvR1FPMDRERGdvT3NRZzVnTkhBcitKRGhMc2ZCejhKUTNCQmtEdG1oa2RZQWhQQU1jQ1owUUhDZklWNE5VNCtFdkszQnFydEhYSUFOY3pKeU9BajVNV0xFYWZxeUpxS2ZENnJweTVPRE9BNWNTZlM4c3Fva0w1Rm9BNk1RdDRRWFNJSmh3RmZJLzBFYUdxZXBnMGVGNGRIYVFEM3ZtcmJud0xRS1YxQkhtK0ViQzJTNEE5Z0l1amcvVElqMGwvUGdkL1NhVVNQUVZqZFZhM1U1Ni90RWNDYndNZUkvNjhkYU1lSlMzMEt6dW4vYTI2VnUxRlh3Q3I4enBsbmF1YXQ4MkJNMGxmTm93K2QrM1VhdUNId0JiZFBqRUJIUHl0T2xmdFJWOEFxL042RE5oeTdRdGJBb2NDbHhOLy9scXBTNEI5ZW5FeUFqajRXM1d2Mm91K0FGWjM2cnkxTDJ5SkhFcmFOeUQ2SEE1VlY1RVdNMWFGZzc5bEtmd0NXTjJybDFGdSs1SDJEbGhNL0xsY1E5clo4RHRVNTQ2L2o0Ty9aYVVLNVd1QTZxYjdTYXZSRjBZSDZkQkUwaUQxQnVENXBNV0RSVmtGWEFsY0NKd0ZMQ2p3MkVWd3RiLzB0TkF4MkFaQTNYWTJjR0owaUM3YWhMUzE4TkdObXRxRFl6d01YQUZjQlB5Q3RKMXhGVG40Uzg5a0F4QWRRRjEzSXFrUnFLS3B3TzdBYm8xZmR5V3R4cC9NOERNRkR3TVBBbk9BMjREcmdPdEpNeWRWNStBdnJjc0dJRHFBdW00aHNDY3dPenBJd1NZM2FtTGozeDlyL0xvQ2VJVDAzTHVPSFB5bGdka0FSQWRRVDl4RSttTGdrdWdnQ3VYZ0x3M09yWUJWU1hzQ1g0NE9vVkFPL2xMR2JBRFVTMjhCM2hRZFFpRWMvS1hNK1FoQXZiWWNlREhweTRHcUJ3ZC9xVG11QVlnT29KNmJUMW9QOExmb0lPbzVCMytwZWE0QlVPVk5BbjRGVElrT29wNXk4SmRLeEFaQVJka0IrQ213UVhRUTlZU0R2MVF5TmdBcTBnR2ttWUNKdy8ySEtoVUhmNm1FYkFCVXRJT0JDNEN4MFVIVUZRNytVa25aQUNqQzBjQ1BzQWtvdTFmaDRDK1ZsbThCS05JczBpZUVuNGdPb3BiOUUvQmRZRlIwRUtuRWZBdEF0WFVFOEV0Z3crZ2dhc25Kd0prNCtFdWxaZ09nYUllU1pnSzJqQTZpWVkwQVBnNThIZi91a0VyUFJ3REt4WVBBc2NDTjBVRTBvREhBZDBoVC81SzZ3NTBBb3dNb0c0dUJFNENMbzRQb0dTYVIzdHc0TERxSVZER3VBWkFhTmlTdENaaUpQNXU1MkJPNEZnZC9xWEtjQVZDdUxnSk9BaFpHQjZteDF3SGZCQ1pFQjVFcXloa0FhUURIQWRjQWUwY0hxYUdKd0xlQnMzRHdseXJMQmtBNTJ4bjRBK21Sd01qWUtMV3hIM0FEOEtib0lKSjZ5MGNBS292TGdUY0E5OGJHcUt4UndBZUJqK0RPZmxKUmZBc2dPb0JLNHluU2UraWZCMVlGWjZtU3ZZRFRnWDJqZzBnMVl3TVFIVUNsY3ozd0w3aG5RS2MyQVA0RGVEcytZcEVpdUFoUWF0RytwQ2JnTEdDTDRDeGx0QjdwRFl2YmdYZmg0Qy9Wa2pNQUtydkZ3S2VBTHdGTGc3T1V3UkhBRjBqVC9wSmkrUWdnT29BcVlTNXdHdkFWWUVsd2xod2RCSnhLMm01WlVoNXNBS0lEcUZJZUFENU4rbFR0azhGWmN2Qjg0TitCbzZLRFNGcUhEVUIwQUZYU1l1Qi9TRzhNM0I4YnBYQ2pnWmNEN3dFT0NNNGlhWEEyQU5FQlZHa3JnQXVCTTRCTGdOV3hjWHBxQitDZkc3VjFjQlpKdzdNQmlBNmcycmlQOUdqZ0hPQ3Z3Vm02WlNQZ1phUk5rbzRnai85UFMycU9EVUIwQU5YU3JjQ1BTWis1dlNVNFM2c21rUmJ6dlpMMGJIOXNiQnhKYmJJQmlBNmcycHNEWEF6OEJwZ0Z6SXVOczQ0eHdQN0EwY0NMZ0gzdzNYMnBDbXdBb2dOSWEva2JjSFdqL2dqOG1iUU5jUkhXSXozTDN3TTRzRkg3QU9NS09yNms0dGdBUkFlUWhyRWF1SWYwcU9CdVlIYmozKzhESGdYbTAvd21ST3NCbTVLbThiY0dwalpxQjJBWDRMbjRDVjZwTG13QW9nTklYZkFVcVJGWVFXb1lGalgrOTNIQStNWS9iMHdhL0NVSmJBQnNBQ1JKdGVUSGdDUkpVckZzQUNSSnFpRWJBRW1TYXNnR1FKS2tHcklCa0NTcGhtd0FKRW1xSVJzQVNaSnF5QVpBa3FRYXNnR1FKS21HYkFBa1Nhb2hHd0JKa21vb2h3WmdWWFFBU1pJS0ZqNzI1ZEFBTEk4T0lFbFN3WlpGQjdBQmtDU3BlRFlBMkFCSWt1ckhCb0FNVG9Ja1NRVUx2L25Ob1FGWUhCMUFrcVNDTFlvT2tFTUQ4R2gwQUVtU0NoWSs5dGtBU0pKVXZQQ3h6d1pBa3FUaWhZOTlPVFFBODZNRFNKSlVzQVhSQVhKb0FPWkVCNUFrcVdEM1JRZklvUUc0SnpxQUpFa0ZDeC83YkFBa1NTcmV2ZEVCUmtRSEFNWUJUNUZIRmttU2VtMDFNSUhnamZCeW1BRllDandVSFVLU3BJSThRQWE3NE9iUUFBRGNHaDFBa3FTQzNCSWRBUEpwQUc2T0RpQkpVa0d5R1BOeWFRQ3k2SVlrU1NwQUZtTmVMZzFBRnQyUUpFa0Z5R0xNeTJYbC9SalNsNUhHUlFlUkpLbUhsZ0FiQVN1aWcrUXlBN0FjdUQ0NmhDUkpQZllITWhqOElaOEdBT0RLNkFDU0pQWFlGZEVCK3RnQVNKSlVuR3pHdWx6V0FBQk1BdWFSVnlaSmtycGxOV21zV3hnZEJQS2FBWmdQL0NrNmhDUkpQWEk5bVF6K2tGY0RBUERMNkFDU0pQWElyNklEOUpkYkE1RFZ5WkVrcVl1eUd1TnllOTQrRXBnTGJCb2RSSktrTG5vVTJBSllGUjJrVDI0ekFLdUFpNk5EU0pMVVpiOG1vOEVmOG1zQUFNNkxEaUJKVXBlZEd4MWdiYms5QW9DMEhmRERwSzBTSlVrcXU0V2s2ZjlsMFVINnkzRUdZQ2x3VVhRSVNaSzY1RUl5Ry93aHp3WUE0RWZSQVNSSjZwTHNwdjhoejBjQUFLT0ErNEF0bzROSWt0U0JoNER0Z0pYUlFkYVc2d3pBU3VETTZCQ1NKSFhvTzJRNCtFTytNd0FBT3dCM2tHK1RJa25TVU5ZQXp3YnVpZzR5a0p3SDE3dUJXZEVoSkVscTB5VmtPdmhEM2cwQXdOZWpBMGlTMUtadlJBY1lTczZQQUNBMUtMY0R6NG9PSWtsU0MvNEc3RUw2QkhDV2NwOEJXQTE4S1RxRUpFa3RPbzJNQjMvSWZ3WUFZQUl3RzVnY0hVU1NwQ2JNQmJZSGxnVG5HRkx1TXdBQVQrRmFBRWxTZVh5TnpBZC9LTWNNQUtUdkF0eU5ud21XSk9WdFB1azE5c1hSUVlaVGhoa0FnRVhBRjZORFNKSTBqTTlSZ3NFZnlqTURBTEErNlgzS0tkRkJKRWthd0R4Z1IrRHg2Q0ROR0JrZG9BWExHNzhlSFpwQ2txU0JmUWo0WFhTSVpwVnBCZ0JnREhBcmFXdEZTWkp5Y1Nld0d4bCs5bmN3WlZrRDBHYzU4UDdvRUpJa3JlVVVTalQ0US9sbUFQcjhCaDhGU0pMeWNDbHdWSFNJVnBXMUFkZ2R1QUVZRlIxRWtsUnJ5NEU5Z2I5RUIybFZtUllCOWpjWG1BZ2NFaDFFa2xSci93bWNGeDJpSFdXZEFRQVlDOXhJK3RpQ0pFbEZ1NTEwOTc4ME9rZzd5cllJc0w5bHdNbkFtdWdna3FUYVdRMjhtWklPL2xEZVJ3QjlaZ05iQXZ0R0I1RWsxY3JYZ1c5R2graEVtUjhCOUprSS9CSFlPVHFJSktrVy9rSzY4WHdxT2tnbnl2d0lvTStUd0d0NWVxZEFTWko2WlJsd0lpVWYvS0g4andENlBBU3NBbzZNRGlKSnFyUVBBQmRHaCtpR0tqd0M2TE1lYVlPZ0YwWUhrU1JWMHErQWwxS1J4ZWRWYWdBQU5nV3VCNlpGQjVFa1ZjcHNZQjlnZm5TUWJxbkNHb0QrRmdBemdDWFJRU1JKbGJHVU5MWlVadkNINnF3QjZPOWg0RUhnSDZLRFNKSXE0WTJrUjh5VlVzVUdBT0FtWUVQZ3dPZ2drcVJTK3d4d1duU0lYcWphR29EKzFpUHR6endqT29na3FaVE9BMTVEMnZXdmNxcmNBQUNNQnk3RG1RQkpVbXV1Qlk2Z0F1LzdENmJxRFFEQUZPQUs0Tm5SUVNSSnBmQlg0RkRnMGVnZ3ZWUzF0d0FHTWhkNEFYQlBkQkJKVXZidUExNU14UWQvcU1jTVFKOGRnZDhCVzBVSGtTUmw2UUhnTU9EdTZDQkZxTU1NUUorN2dLT0JlZEZCSkVuWm1Rc2NSVTBHZjZoWEF3QndHNm03ZXlBNmlDUXBHdytUdmlYemwrZ2dSYXJUSTREK3RpZTlIYkJEY0E1SlVxelpwRy9JM0JrZHBHaDFtd0hvY3kvcDlZNDdnbk5Ja3VMY0RoeENEUWQvcUc4REFHbWw1NEdrVndRbFNmVnlEZW1SOEp6b0lGSHEzQUJBK3JEREM0Rnpvb05Ja2dwelB1bjE4TG5SUVNKVjlWc0FyVmdGWE5ENDU4TURjMGlTZXU4cndKdUJGZEZCb3RrQVBPMjNwRmNGWHd5TWpvMGlTZXF5cGNCYmdVOEJhNEt6WktHdWJ3RU1aVS9Tak1DMDZDQ1NwSzY0RDNnbGNGMTBrSnpVZlEzQVFHNEM5Z011amc0aVNlcllyNEM5Y1BCZmg0OEFCcllFK0FId0dHbWhpT2RKa3NwbEJmQUowclIvWmIvbzF3a2ZBUXh2TitCc1lQZm9JSktrcHZ3VmVDMXdZM1NRbkhsbk83eTV3Rm5BSnNDKzJEUkpVcTVXQTE4SFRnRHVEODZTUFFlejFod01mQXZZSlRxSUpPa1o3Z1QrQlpnVkhhUXNuQUZvemYzQWQwaDdCeHlFNTArU29xMEVQZ2U4bXBwdTZkc3Vad0RhdHl2d1JkTG5JeVZKeGZzTjhHNXE5aFcvYnZFMXdQYmRCaHhOYWdEK0hKeEZrdXJrRHVCVnBJM2JIUHpiNUJSMjUrNG1QUlo0RE5nYm1CZ2JSNUlxYXk3d0llQ2ZnVnVDczVTZWp3QzZheUx3ZHVEOXdLYkJXU1NwS2hZQVh3Vk9BeFlIWjZrTUc0RGUyQWc0aGRRTVRBN09Ja2xsTlk4MDhIOFpCLzZ1c3dIb3JiR2tsYW1uQXM4SnppSkpaWEUzNmF0OTM4SmQvSHJHQnFBWTZ3RXZCLzRWT0JJWFgwclMybFlEbHdMZkFIN1crSGYxa0ExQThiWUJUZ1RlQm13WG5FV1NvajFFMm0zMWROS2R2d3BpQXhCbkZPazF3bGNELzBCYU55QkpkYkFRK0Fsd0xuQUphVE1mRmN3R0lBOWpTZSt6dmdwNEVUQXBObzRrZGQyandLK0I4MGdiK0N5TGpTTWJnUHlNQlBZSGptblUzcmhtUUZMNXJBYXVKdzM2djJ6ODg2clFSSG9HRzREOGJRQThEemlFOURHaWc0SHhvWWtrYVYwcmdKdUJLNEVyZ010STcrOHJVellBNVRPYTlEWEMzWUU5Z09uQWMwbUxDNzJla25wdE5UQ0h0QVg2bjBnNzh0MUMycEozUldBdXRjZ0JvenJHQWxPQmFjRDJwSVpnTXJCWjQ5ZEp3QVJnUTlKamh0SEEraEZCSldYbENkTEF2WXEwMmM1VHdIelNNL3Q1alYvbkFQY0E5d0t6OGZsOUpmd2ZzTFIyV2RGbTFYWUFBQUFBU1VWT1JLNUNZSUk9XCIgLz5cbiAgICAgIDwvZGVmcz5cbiAgICA8L3N2Zz5cbiAgICBAaWYoY29weU9mSW5wdXRBbGxGaWxlcyAmJiBjb3B5T2ZJbnB1dEFsbEZpbGVzLmxlbmd0aCA+IDApe1xuICAgIDxzcGFuIChjbGljayk9XCJvcGVuUG9wdXAoKVwiIHN0eWxlPVwidGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IGN1cnNvcjogcG9pbnRlcjtcIj5cbiAgICAgIHt7IGNvcHlPZklucHV0QWxsRmlsZXMubGVuZ3RoID09PSAxID8gJzEgRmlsZSBBdHRhY2hlZCcgOiAnKycgKyBjb3B5T2ZJbnB1dEFsbEZpbGVzLmxlbmd0aCArICcgRmlsZXMgQXR0YWNoZWQnIH19XG4gICAgPC9zcGFuPlxuICAgIH1cbiAgICBAZWxzZSBpZihtb2RlID09PSAnZWRpdCcpIHtcbiAgICA8ZGl2PiBBZGQgZmlsZXMgPC9kaXY+XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICA8ZGl2PiBObyBmaWxlcyBhdHRhY2hlZDwvZGl2PlxuICAgIH1cbiAgICA8YnV0dG9uICpuZ0lmPVwibW9kZSA9PT0gJ2VkaXQnICYmICFxdWVzdGlvbi5pc1JlYWRPbmx5XCIgXG4gICAgICAgICAgICAoY2xpY2spPVwiZmlsZUlucHV0LmNsaWNrKClcIiBcbiAgICAgICAgICAgIGNsYXNzPVwiYWRkLWJ0bi1pY29uXCJcbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwicGx1cy1pY29uXCI+Kzwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cblxuICAgIDxpbnB1dCAjZmlsZUlucHV0IHR5cGU9XCJmaWxlXCIgbmFtZT1cImZpbGVVcGxvYWRcIiBtdWx0aXBsZT1cIm11bHRpcGxlXCIgW2FjY2VwdF09XCJhbGxvd2VkRmlsZVR5cGVzLmpvaW4oJywnKVwiXG4gICAgICAgICAgc3R5bGU9XCJkaXNwbGF5Om5vbmU7XCIgKGNoYW5nZSk9XCJ1cGxvYWRNdWx0aXBsZUZpbGVzKCRldmVudClcIiAvPlxuICA8L2Rpdj5cbiAgPCEtLSBTS1MxM0pVTjI1IGVkaXQgaWNvbiAtLT5cbiAgPHN2ZyAqbmdJZj1cIm1vZGUgIT09ICdlZGl0JyAmJiAhdmlld0VkaXQgJiYgIXF1ZXN0aW9uLmlzUmVhZE9ubHlcIiBjbGFzcz1cImVkaXQtaWNvblwiIChjbGljayk9XCJ2aWV3RWRpdENsaWNrKHF1ZXN0aW9uKVwiXG4gICAgd2lkdGg9XCIxM1wiIGhlaWdodD1cIjE0XCIgdmlld0JveD1cIjAgMCAxMyAxNFwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCJcbiAgICAgIGQ9XCJNMS45OTk4NyA5LjAwMTdMNC4zOTYwMiAxMS4zOTc5QzQuNTAzNzEgMTEuNTA1NSA0LjY2NTI1IDExLjUwNTUgNC43NzI5NCAxMS4zOTc5TDEwLjc0OTkgNS4zOTQwMUMxMC44NTc2IDUuMjg2MzEgMTAuODU3NiA1LjEyNDc3IDEwLjc0OTkgNS4wMTcwOEw4LjM4MDY0IDIuNjQ3ODVDOC4yNzI5NCAyLjU0MDE2IDguMTExNDEgMi41NDAxNiA4LjAwMzcxIDIuNjQ3ODVMMS45OTk4NyA4LjY1MTdDMS44OTIxNyA4Ljc1OTM5IDEuODkyMTcgOC45MjA5MyAxLjk5OTg3IDkuMDAxN1pNOS4xNjE0IDEuNTQ0MDFDOS4wNTM3MSAxLjY1MTcgOS4wNTM3MSAxLjgxMzI0IDkuMTYxNCAxLjkyMDkzTDExLjUzMDYgNC4yOTAxNkMxMS42MzgzIDQuMzk3ODUgMTEuNzk5OSA0LjM5Nzg1IDExLjkwNzYgNC4yOTAxNkwxMi41ODA2IDMuNjE3MDhDMTMuMDExNCAzLjIxMzI0IDEzLjAxMTQgMi41NjcwOCAxMi41ODA2IDIuMTM2MzFMMTEuMzE1MyAwLjg3MDkyOEMxMC44ODQ1IDAuNDQwMTU5IDEwLjIxMTQgMC40NDAxNTkgOS43ODA2MyAwLjg3MDkyOEw5LjE2MTQgMS41NDQwMVpNMC4wMDc1NTg2MiAxMi45ODYzQy0wLjA0NjI4NzUgMTMuMjU1NSAwLjE5NjAyIDEzLjQ5NzkgMC40NjUyNTEgMTMuNDQ0TDMuMzk5ODcgMTIuNzQ0QzMuNTA3NTYgMTIuNzE3MSAzLjU4ODMzIDEyLjY2MzIgMy42NDIxNyAxMi42MDk0TDMuNjk2MDIgMTIuNTU1NUMzLjc0OTg3IDEyLjUwMTcgMy43NzY3OSAxMi4zMTMyIDMuNjY5MSAxMi4yMDU1TDEuMjQ2MDIgOS43ODI0N0MxLjEzODMzIDkuNjc0NzggMC45NDk4NjYgOS43MDE3IDAuODk2MDIgOS43NTU1NEwwLjg0MjE3NCA5LjgwOTM5QzAuNzYxNDA1IDkuODkwMTYgMC43MzQ0ODIgOS45NzA5MyAwLjcwNzU1OSAxMC4wNTE3TDAuMDA3NTU4NjIgMTIuOTg2M1pcIlxuICAgICAgZmlsbD1cIiNCMEFEQUJcIiAvPlxuICA8L3N2Zz5cbiAgPCEtLSBTS1MxM0pVTjI1IHNhdmUgYW5kIGNhbmNlbCBpY29ucyAtLT5cbiAgPGRpdiAqbmdJZj1cInZpZXdFZGl0XCIgKG1vdXNlZW50ZXIpPVwiaXNTYXZlSG92ZXJlZCA9IHRydWVcIiAobW91c2VsZWF2ZSk9XCJpc1NhdmVIb3ZlcmVkID0gZmFsc2VcIlxuICAgIHN0eWxlPVwicGFkZGluZy1yaWdodDogNXB4O1wiPlxuICAgIDxzdmcgKm5nSWY9XCIhaXNTYXZlSG92ZXJlZFwiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiXG4gICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgICA8cGF0aFxuICAgICAgICBkPVwiTTUuOTUwMiAwLjVDOC45NjAwNiAwLjUwMDEwNiAxMS40MDA0IDIuOTQwMzEgMTEuNDAwNCA1Ljk1MDJDMTEuNDAwMyA4Ljk1OTk5IDguOTU5OTkgMTEuNDAwMyA1Ljk1MDIgMTEuNDAwNEMyLjk0MDMxIDExLjQwMDQgMC41MDAxMDYgOC45NjAwNiAwLjUgNS45NTAyQzAuNSAyLjk0MDI0IDIuOTQwMjQgMC41IDUuOTUwMiAwLjVaXCJcbiAgICAgICAgc3Ryb2tlPVwiIzgzN0Y4RVwiIC8+XG4gICAgICA8cGF0aFxuICAgICAgICBkPVwiTTguODgxMTEgMy44NDU4M0M4LjgzMjY5IDMuNzk3MiA4Ljc3NTEzIDMuNzU4NiA4LjcxMTc2IDMuNzMyMjdDOC42NDgzOCAzLjcwNTk0IDguNTgwNDMgMy42OTIzOCA4LjUxMTggMy42OTIzOEM4LjQ0MzE3IDMuNjkyMzggOC4zNzUyMSAzLjcwNTk0IDguMzExODQgMy43MzIyN0M4LjI0ODQ2IDMuNzU4NiA4LjE5MDkxIDMuNzk3MiA4LjE0MjQ5IDMuODQ1ODNMNC44MjY5IDcuMTYzNDdMMy4zNTI1MyA1LjY4OTFDMy4zMDQwMyA1LjY0MDYgMy4yNDY0NiA1LjYwMjEzIDMuMTgzMDkgNS41NzU4OEMzLjExOTcyIDUuNTQ5NjQgMy4wNTE4MSA1LjUzNjEzIDIuOTgzMjIgNS41MzYxM0MyLjkxNDYzIDUuNTM2MTMgMi44NDY3MiA1LjU0OTY0IDIuNzgzMzUgNS41NzU4OEMyLjcxOTk5IDUuNjAyMTMgMi42NjI0MSA1LjY0MDYgMi42MTM5MSA1LjY4OTFDMi41NjU0MSA1LjczNzYgMi41MjY5NCA1Ljc5NTE4IDIuNTAwNjkgNS44NTg1NEMyLjQ3NDQ1IDUuOTIxOTEgMi40NjA5NCA1Ljk4OTgyIDIuNDYwOTQgNi4wNTg0MUMyLjQ2MDk0IDYuMTI3IDIuNDc0NDUgNi4xOTQ5MSAyLjUwMDY5IDYuMjU4MjhDMi41MjY5NCA2LjMyMTY1IDIuNTY1NDEgNi4zNzkyMiAyLjYxMzkxIDYuNDI3NzJMNC40NTY3NyA4LjI3MDU4QzQuNTA1MTkgOC4zMTkyMiA0LjU2Mjc0IDguMzU3ODEgNC42MjYxMiA4LjM4NDE0QzQuNjg5NSA4LjQxMDQ3IDQuNzU3NDUgOC40MjQwMyA0LjgyNjA4IDguNDI0MDNDNC44OTQ3MSA4LjQyNDAzIDQuOTYyNjYgOC40MTA0NyA1LjAyNjA0IDguMzg0MTRDNS4wODk0MiA4LjM1NzgxIDUuMTQ2OTcgOC4zMTkyMiA1LjE5NTM5IDguMjcwNThMOC44ODExMSA0LjU4NDQ1QzguOTI5NzQgNC41MzYwMyA4Ljk2ODM0IDQuNDc4NDggOC45OTQ2NyA0LjQxNTFDOS4wMjEgNC4zNTE3MyA5LjAzNDU2IDQuMjgzNzcgOS4wMzQ1NiA0LjIxNTE0QzkuMDM0NTYgNC4xNDY1MSA5LjAyMSA0LjA3ODU2IDguOTk0NjcgNC4wMTUxOEM4Ljk2ODM0IDMuOTUxOCA4LjkyOTc0IDMuODk0MjUgOC44ODExMSAzLjg0NTgzWlwiXG4gICAgICAgIGZpbGw9XCIjODM3RjhFXCIgLz5cbiAgICA8L3N2Zz5cblxuICAgIDxzdmcgKm5nSWY9XCJpc1NhdmVIb3ZlcmVkXCIgKGNsaWNrKT1cInNhdmVDaGFuZ2VzKClcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTNcIiB2aWV3Qm94PVwiMCAwIDEyIDEzXCIgZmlsbD1cIm5vbmVcIlxuICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgPHBhdGhcbiAgICAgICAgZD1cIk01Ljk1IDEyLjgwMDRDOS4yMzYwOSAxMi44MDA0IDExLjkgMTAuMTM2NSAxMS45IDYuODUwMzlDMTEuOSAzLjU2NDMgOS4yMzYwOSAwLjkwMDM5MSA1Ljk1IDAuOTAwMzkxQzIuNjYzOTEgMC45MDAzOTEgMCAzLjU2NDMgMCA2Ljg1MDM5QzAgMTAuMTM2NSAyLjY2MzkxIDEyLjgwMDQgNS45NSAxMi44MDA0WlwiXG4gICAgICAgIGZpbGw9XCIjMjU5NTY2XCIgLz5cbiAgICAgIDxwYXRoXG4gICAgICAgIGQ9XCJNOC44ODExMSA0Ljc0NjIyQzguODMyNjkgNC42OTc1OSA4Ljc3NTEzIDQuNjU4OTkgOC43MTE3NiA0LjYzMjY2QzguNjQ4MzggNC42MDYzMyA4LjU4MDQzIDQuNTkyNzcgOC41MTE4IDQuNTkyNzdDOC40NDMxNyA0LjU5Mjc3IDguMzc1MjEgNC42MDYzMyA4LjMxMTg0IDQuNjMyNjZDOC4yNDg0NiA0LjY1ODk5IDguMTkwOTEgNC42OTc1OSA4LjE0MjQ5IDQuNzQ2MjJMNC44MjY5IDguMDYzODZMMy4zNTI1MyA2LjU4OTQ5QzMuMzA0MDMgNi41NDA5OSAzLjI0NjQ2IDYuNTAyNTIgMy4xODMwOSA2LjQ3NjI3QzMuMTE5NzIgNi40NTAwMyAzLjA1MTgxIDYuNDM2NTIgMi45ODMyMiA2LjQzNjUyQzIuOTE0NjMgNi40MzY1MiAyLjg0NjcyIDYuNDUwMDMgMi43ODMzNSA2LjQ3NjI3QzIuNzE5OTkgNi41MDI1MiAyLjY2MjQxIDYuNTQwOTkgMi42MTM5MSA2LjU4OTQ5QzIuNTY1NDEgNi42Mzc5OSAyLjUyNjk0IDYuNjk1NTcgMi41MDA2OSA2Ljc1ODkzQzIuNDc0NDUgNi44MjIzIDIuNDYwOTQgNi44OTAyMiAyLjQ2MDk0IDYuOTU4OEMyLjQ2MDk0IDcuMDI3MzkgMi40NzQ0NSA3LjA5NTMxIDIuNTAwNjkgNy4xNTg2N0MyLjUyNjk0IDcuMjIyMDQgMi41NjU0MSA3LjI3OTYxIDIuNjEzOTEgNy4zMjgxMUw0LjQ1Njc3IDkuMTcwOTdDNC41MDUxOSA5LjIxOTYxIDQuNTYyNzQgOS4yNTgyIDQuNjI2MTIgOS4yODQ1M0M0LjY4OTUgOS4zMTA4NiA0Ljc1NzQ1IDkuMzI0NDIgNC44MjYwOCA5LjMyNDQyQzQuODk0NzEgOS4zMjQ0MiA0Ljk2MjY2IDkuMzEwODYgNS4wMjYwNCA5LjI4NDUzQzUuMDg5NDIgOS4yNTgyIDUuMTQ2OTcgOS4yMTk2MSA1LjE5NTM5IDkuMTcwOTdMOC44ODExMSA1LjQ4NDg0QzguOTI5NzQgNS40MzY0MiA4Ljk2ODM0IDUuMzc4ODcgOC45OTQ2NyA1LjMxNTQ5QzkuMDIxIDUuMjUyMTIgOS4wMzQ1NiA1LjE4NDE2IDkuMDM0NTYgNS4xMTU1M0M5LjAzNDU2IDUuMDQ2OSA5LjAyMSA0Ljk3ODk1IDguOTk0NjcgNC45MTU1N0M4Ljk2ODM0IDQuODUyMiA4LjkyOTc0IDQuNzk0NjUgOC44ODExMSA0Ljc0NjIyWlwiXG4gICAgICAgIGZpbGw9XCJ3aGl0ZVwiIC8+XG4gICAgPC9zdmc+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwidmlld0VkaXRcIiAobW91c2VlbnRlcik9XCJpc0Rpc2NhcmRIb3ZlcmVkID0gdHJ1ZVwiIChtb3VzZWxlYXZlKT1cImlzRGlzY2FyZEhvdmVyZWQgPSBmYWxzZVwiPlxuICAgIDxzdmcgKm5nSWY9XCIhaXNEaXNjYXJkSG92ZXJlZFwiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiXG4gICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgICA8cGF0aFxuICAgICAgICBkPVwiTTcuMDU1NTUgNC4wMDg4M0w1Ljk0IDUuMTI0MzhMNC44MjQ0NSA0LjAwODgzQzQuNTc4NjEgMy43NjI5OSA0LjE4MTkxIDMuNzYyOTkgMy45MzYwNyA0LjAwODgzQzMuNjkwMjMgNC4yNTQ2NyAzLjY5MDIzIDQuNjUxMzcgMy45MzYwNyA0Ljg5NzIxTDUuMDUxNjIgNi4wMTI3NkwzLjkzNjA3IDcuMTI4MzFDMy42OTAyMyA3LjM3NDE1IDMuNjkwMjMgNy43NzA4NSAzLjkzNjA3IDguMDE2NjlDNC4xODE5MSA4LjI2MjUzIDQuNTc4NjEgOC4yNjI1MyA0LjgyNDQ1IDguMDE2NjlMNS45NCA2LjkwMTE0TDcuMDU1NTUgOC4wMTY2OUM3LjMwMTM5IDguMjYyNTMgNy42OTgwOSA4LjI2MjUzIDcuOTQzOTMgOC4wMTY2OUM4LjE4OTc3IDcuNzcwODUgOC4xODk3NyA3LjM3NDE1IDcuOTQzOTMgNy4xMjgzMUw2LjgyODM4IDYuMDEyNzZMNy45NDM5MyA0Ljg5NzIxQzguMTg5NzcgNC42NTEzNyA4LjE4OTc3IDQuMjU0NjcgNy45NDM5MyA0LjAwODgzQzcuNjk4MDkgMy43NzI4NSA3LjMwMDIxIDMuNzcyODUgNy4wNTU1NSA0LjAwODgzWk01Ljk0IDAuMDgyMDMxMkMyLjcwMDE3IDAuMDgyMDMxMiAwLjA4MDg1OTQgMi43MDEzNCAwLjA4MDg1OTQgNS45NDExOEMwLjA4MDg1OTQgOS4xODEwMSAyLjcwMDE3IDExLjgwMDMgNS45NCAxMS44MDAzQzkuMTc5ODMgMTEuODAwMyAxMS43OTkxIDkuMTgxMDEgMTEuNzk5MSA1Ljk0MTE4QzExLjc5OTEgMi43MDEzNCA5LjE3OTgzIDAuMDgyMDMxMiA1Ljk0IDAuMDgyMDMxMlpNNS45NCAxMC42MzY3QzMuMzU0MjYgMTAuNjM2NyAxLjI0NDIyIDguNTI2NjcgMS4yNDQyMiA1Ljk0MTE4QzEuMjQ0MjIgMy4zNTU1MyAzLjM1NDI2IDEuMjQ1NDkgNS45NCAxLjI0NTQ5QzguNTI1NTggMS4yNDU0OSAxMC42MzU2IDMuMzU1NTMgMTAuNjM1NiA1Ljk0MTE4QzEwLjYzNTYgOC41MjY2NyA4LjUyNTU4IDEwLjYzNjcgNS45NCAxMC42MzY3WlwiXG4gICAgICAgIGZpbGw9XCIjQjBBREFCXCIgLz5cbiAgICA8L3N2Zz5cblxuICAgIDxzdmcgKm5nSWY9XCJpc0Rpc2NhcmRIb3ZlcmVkXCIgKGNsaWNrKT1cImRpc2NhcmRDaGFuZ2VzKClcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTNcIiB2aWV3Qm94PVwiMCAwIDEyIDEzXCIgZmlsbD1cIm5vbmVcIlxuICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgPHBhdGhcbiAgICAgICAgZD1cIk03LjA1NTU1IDQuOTc0NzFMNS45NCA2LjA5MDI2TDQuODI0NDUgNC45NzQ3MUM0LjU3ODYxIDQuNzI4ODcgNC4xODE5MSA0LjcyODg3IDMuOTM2MDcgNC45NzQ3MUMzLjY5MDIzIDUuMjIwNTUgMy42OTAyMyA1LjYxNzI1IDMuOTM2MDcgNS44NjMwOUw1LjA1MTYyIDYuOTc4NjRMMy45MzYwNyA4LjA5NDE5QzMuNjkwMjMgOC4zNDAwMyAzLjY5MDIzIDguNzM2NzMgMy45MzYwNyA4Ljk4MjU3QzQuMTgxOTEgOS4yMjg0MSA0LjU3ODYxIDkuMjI4NDEgNC44MjQ0NSA4Ljk4MjU3TDUuOTQgNy44NjcwMkw3LjA1NTU1IDguOTgyNTdDNy4zMDEzOSA5LjIyODQxIDcuNjk4MDkgOS4yMjg0MSA3Ljk0MzkzIDguOTgyNTdDOC4xODk3NyA4LjczNjczIDguMTg5NzcgOC4zNDAwMyA3Ljk0MzkzIDguMDk0MTlMNi44MjgzOCA2Ljk3ODY0TDcuOTQzOTMgNS44NjMwOUM4LjE4OTc3IDUuNjE3MjUgOC4xODk3NyA1LjIyMDU1IDcuOTQzOTMgNC45NzQ3MUM3LjY5ODA5IDQuNzM4NzMgNy4zMDAyMSA0LjczODczIDcuMDU1NTUgNC45NzQ3MVpNNS45NCAxLjA2MDYyQzIuNzAwMTcgMS4wNjA2MiAwLjA4MDg1OTQgMy42Nzk5MyAwLjA4MDg1OTQgNi45MTk3N0MwLjA4MDg1OTQgMTAuMTU5NiAyLjcwMDE3IDEyLjc3ODkgNS45NCAxMi43Nzg5QzkuMTc5ODMgMTIuNzc4OSAxMS43OTkxIDEwLjE1OTYgMTEuNzk5MSA2LjkxOTc3QzExLjc5OTEgMy42Nzk5MyA5LjE3OTgzIDEuMDYwNjIgNS45NCAxLjA2MDYyWk01Ljk0IDExLjYxNTNDMy4zNTQyNiAxMS42MTUzIDEuMjQ0MjIgOS41MDUyNSAxLjI0NDIyIDYuOTE5NzdDMS4yNDQyMiA0LjMzNDEyIDMuMzU0MjYgMi4yMjQwOCA1Ljk0IDIuMjI0MDhDOC41MjU1OCAyLjIyNDA4IDEwLjYzNTYgNC4zMzQxMiAxMC42MzU2IDYuOTE5NzdDMTAuNjM1NiA5LjUwNTI1IDguNTI1NTggMTEuNjE1MyA1Ljk0IDExLjYxNTNaXCJcbiAgICAgICAgZmlsbD1cIiNGRjM2MzZcIiAvPlxuICAgIDwvc3ZnPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwiY29sLWxnLTZcIiBzdHlsZT1cInBhZGRpbmc6MDttYXJnaW4tdG9wOiAxMHB4O1wiPlxuICA8IS0tIEVycm9yIG1lc3NhZ2VzIHNlY3Rpb24gLS0+XG4gIDxkaXYgY2xhc3M9XCJmaWxlLWNvbnN0cmFpbnRzXCIgKm5nSWY9XCJ2YWxpZGF0aW9uRXJyb3JzLmxlbmd0aCA+IDBcIj5cbiAgICA8c21hbGwgY2xhc3M9XCJ0ZXh0LWRhbmdlclwiPlxuICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgZXJyb3Igb2YgdmFsaWRhdGlvbkVycm9yc1wiPnt7IGVycm9yIH19PC9kaXY+XG4gICAgPC9zbWFsbD5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPGRpdiAqbmdJZj1cImVycm9yXCIgY2xhc3M9XCJlcnJvci1tc2dcIiBzdHlsZT1cIm1hcmdpbi10b3A6IDEwcHg7XCI+e3txdWVzdGlvbj8uZXJyb3JNZXNzYWdlfX08L2Rpdj5cblxuPCEtLSBTS1MxMUpVTjI1IEZpbGUgU2VsZWN0aW9uIFBvcHVwIE1vZGFsIC0tPlxuPGRpdiBjbGFzcz1cImZpbGUtcG9wdXAtb3ZlcmxheVwiICpuZ0lmPVwic2hvd1BvcHVwXCIgKGNsaWNrKT1cImNsb3NlUG9wdXAoKVwiPlxuICA8ZGl2IGNsYXNzPVwiZmlsZS1wb3B1cC1tb2RhbFwiIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cbiAgICA8IS0tIEhlYWRlciAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiZmlsZS1wb3B1cC1oZWFkZXJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC10aXRsZVwiPnt7cXVlc3Rpb24ucXVlc3Rpb25UZXh0fX08L2Rpdj5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJjbG9zZS1idG5cIiAoY2xpY2spPVwiY2xvc2VQb3B1cCgpXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiY2xvc2UtaWNvblwiPsOXPC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG5cbiAgICA8IS0tIFNLUzExSlVOMjUgQ29udGVudCAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiZmlsZS1wb3B1cC1jb250ZW50XCI+XG4gICAgICA8IS0tIFNLUzExSlVOMjUgTGVmdCBQYW5lbCAtIEZpbGUgTGlzdCAtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJmaWxlLWxpc3QtcGFuZWxcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZpbGUtaXRlbVwiICpuZ0Zvcj1cImxldCBmaWxlIG9mIGNvcHlPZklucHV0QWxsRmlsZXM7IGxldCBpID0gaW5kZXhcIlxuICAgICAgICAgIFtjbGFzcy5zZWxlY3RlZF09XCJjdXJyZW50RmlsZSA9PT0gZmlsZVwiIChjbGljayk9XCJ2aWV3RmlsZShmaWxlKVwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWxlLWljb25cIj5cbiAgICAgICAgICAgIDxpbWcgc3R5bGU9XCJ3aWR0aDogMjhweDtoZWlnaHQ6IDI4cHg7XCIgW3NyY109XCJnZXREb2NJY29uKGZpbGU/Lm5hbWUpXCI+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZpbGUtZGV0YWlsc1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpbGUtbmFtZVwiPnt7IGZpbGUubmFtZSB9fTwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgKm5nSWY9XCIhcXVlc3Rpb24uaXNSZWFkT25seVwiIGNsYXNzPVwiZmlsZS1hY3Rpb25zXCI+XG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYWN0aW9uLWJ0blwiIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7IGRlbGV0ZUZpbGUoaSlcIiB0aXRsZT1cIkRlbGV0ZVwiPlxuICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIj5cbiAgICAgICAgICAgICAgICA8cG9seWxpbmUgcG9pbnRzPVwiMyw2IDUsNiAyMSw2XCI+PC9wb2x5bGluZT5cbiAgICAgICAgICAgICAgICA8cGF0aCBkPVwibTE5LDZ2MTRhMiwyIDAgMCwxIC0yLDJIN2EyLDIgMCAwLDEgLTIsLTJWNm0zLDBWNGEyLDIgMCAwLDEgMiwtMmg0YTIsMiAwIDAsMSAyLDJ2MlwiPjwvcGF0aD5cbiAgICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPCEtLSBFbXB0eSBzdGF0ZSAtLT5cbiAgICAgICAgPGRpdiBjbGFzcz1cImVtcHR5LXN0YXRlXCIgKm5nSWY9XCIhY29weU9mSW5wdXRBbGxGaWxlcyB8fCBjb3B5T2ZJbnB1dEFsbEZpbGVzLmxlbmd0aCA9PT0gMFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJlbXB0eS1pY29uXCI+8J+ThDwvZGl2PlxuICAgICAgICAgIDxwPk5vIGZpbGVzIHNlbGVjdGVkPC9wPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPCEtLSBBZGQgQnV0dG9uIC0tPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYWRkLWJ0blwiIChjbGljayk9XCJmaWxlSW5wdXQuY2xpY2soKVwiIHRpdGxlPVwiQWRkIGZpbGVcIj5cbiAgICAgICAgICArIEFkZCBNb3JlIEZpbGVzXG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDwhLS0gU0tTMTFKVU4yNSBSaWdodCBQYW5lbCAtIFByZXZpZXcgLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsZS1wcmV2aWV3LXBhbmVsXCI+XG4gICAgICAgIEBpZihjdXJyZW50RmlsZSl7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwcmV2aWV3LWNvbnRlbnRcIj5cbiAgICAgICAgICBAaWYoaXNJbWFnZSAmJiBmaWxlVXJsKXtcbiAgICAgICAgICA8aW1nIFtzcmNdPVwiZmlsZVVybFwiIGNsYXNzPVwicHJldmlldy1pbWFnZVwiIGFsdD1cIkZpbGUgUHJldmlld1wiIC8+XG4gICAgICAgICAgfVxuICAgICAgICAgIEBlbHNlIGlmKGZpbGVVcmwpe1xuICAgICAgICAgIDxpZnJhbWUgW3NyY109XCJmaWxlVXJsXCIgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiNTAwcHhcIj48L2lmcmFtZT5cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2UgaWYoaXNMb2FkaW5nKXtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsb2FkaW5nLWluZGljYXRvclwiPlxuICAgICAgICAgICAgICA8cD5Mb2FkaW5nIHByZXZpZXcuLi48L3A+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzcGlubmVyXCI+PC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIDxkaXY+VW5hYmxlIHRvIGxvYWQgdGhlIGZpbGUgcHJldmlldy48L2Rpdj5cbiAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICAgIEBlbHNle1xuICAgICAgICA8ZGl2IGNsYXNzPVwibm8tcHJldmlld1wiPlxuICAgICAgICAgIDxwPlNlbGVjdCBhIGZpbGUgdG8gcHJldmlldzwvcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PiJdfQ==
|
|
283
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnh0LWFwcC9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS11cGxvYWQvZmlsZS11cGxvYWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnh0LWFwcC9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS11cGxvYWQvZmlsZS11cGxvYWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBd0MsTUFBTSxlQUFlLENBQUM7QUFNckgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7OztBQVV0QyxNQUFNLE9BQU8sbUJBQW1CO0lBOEJWO0lBQXNDO0lBQWtDO0lBQ25GO0lBOUJDLGdCQUFnQixHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFDM0MsZUFBZSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFDM0MsUUFBUSxDQUFDO0lBQ1Qsa0JBQWtCLENBQUM7SUFDbkIsSUFBSSxHQUE4QixNQUFNLENBQUMsQ0FBQyw0QkFBNEI7SUFDdEUsZ0JBQWdCLENBQUM7SUFDakIsUUFBUSxDQUFDO0lBQ1QsS0FBSyxDQUFNO0lBQ3BCLGNBQWM7SUFDUCxnQkFBZ0IsR0FBYSxFQUFFLENBQUM7SUFDaEMsV0FBVyxHQUFXLENBQUMsQ0FBQyxDQUFFLG1CQUFtQjtJQUM3QyxRQUFRLEdBQVcsQ0FBQyxDQUFDLENBQUssZ0JBQWdCO0lBQzFDLGdCQUFnQixHQUFhLEVBQUUsQ0FBQztJQUdoQyxxQkFBcUIsR0FB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SUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFDLFFBQVEsRUFBRyxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsRUFBQyxDQUFDLENBQUM7UUFDL0UsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsQ0FBQyxzQkFBc0I7UUFDN0MsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsQ0FBQywyQkFBMkI7SUFDakQsQ0FBQztJQUNELGNBQWM7UUFDWixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLDJCQUEyQjtRQUMxRSxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxDQUFDLGlDQUFpQztRQUN4RCxJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxDQUFDLHNDQUFzQztJQUM1RCxDQUFDO3dHQXZRVSxtQkFBbUI7NEZBQW5CLG1CQUFtQiw2VkNsQmhDLDJtNEJBc0tNLHNpS0R6SkYsWUFBWTs7NEZBS0gsbUJBQW1CO2tCQVQvQixTQUFTOytCQUNFLGlCQUFpQixjQUNmLElBQUksV0FDUDt3QkFDUCxZQUFZLEVBQUUsUUFBUTtxQkFDdkI7aUtBS1MsZ0JBQWdCO3NCQUF6QixNQUFNO2dCQUNHLGVBQWU7c0JBQXhCLE1BQU07Z0JBQ0UsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIEVsZW1lbnRSZWYsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuLy8gSEEgMTlERUMyMyBpbXBvcnRlZCB0cmFuc2xhdGlvbiBzZXJ2aWNlXG5pbXBvcnQgeyBJMThuU2VydmljZSB9IGZyb20gJy4uLy4uL2kxOG4uc2VydmljZSc7XG5pbXBvcnQgeyBTaGFyZWRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2hhcmVkLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGF0YVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9kYXRhLnNlcnZpY2UnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSTE4blBpcGUgfSBmcm9tICcuLi8uLi9pMThuLnBpcGUnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgb2YgfSBmcm9tICdyeGpzJztcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1maWxlLXVwbG9hZCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsIEkxOG5QaXBlXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBGaWxlVXBsb2FkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBAT3V0cHV0KCkgc2VsZWN0ZWRGaWxlRGF0YSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgZGVsZXRlZEZpbGVEYXRhID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBJbnB1dCgpIGFsbEZpbGVzO1xuICBASW5wdXQoKSBsaW1pdEZpbGVVcGxvYWRpbmc7XG4gIEBJbnB1dCgpIG1vZGU6ICd2aWV3JyB8ICdlZGl0JyB8ICdwcmludCcgPSAnZWRpdCc7IC8vIFNLUzExSlVOMjUgTmV3IG1vZGUgaW5wdXRcbiAgQElucHV0KCkgaXNTaG93Tm9GaWxlSWNvbjtcbiAgQElucHV0KCkgcXVlc3Rpb247XG4gIEBJbnB1dCgpIGVycm9yOiBhbnk7XG4gIC8vUlMgMDlKQU4yMDI1XG4gIHB1YmxpYyBhbGxvd2VkRmlsZVR5cGVzOiBzdHJpbmdbXSA9IFtdO1xuICBwdWJsaWMgbWF4RmlsZVNpemU6IG51bWJlciA9IDA7ICAvLyBpbiBieXRlcyhCaW5hcnkpXG4gIHB1YmxpYyBtYXhGaWxlczogbnVtYmVyID0gNDsgICAgIC8vIGRlZmF1bHQgbGltaXRcbiAgcHVibGljIHZhbGlkYXRpb25FcnJvcnM6IHN0cmluZ1tdID0gW107XG5cblxuICBwdWJsaWMgc2VsZWN0ZWRGaWxlTmFtZUFycmF5OiBzdHJpbmdbXSA9IFtdO1xuICBwdWJsaWMgY29weU9mSW5wdXRBbGxGaWxlcztcbiAgcHVibGljIGNvcHlPZkZpbGVVcGxvYWRpbmdMaW1pdDtcbiAgcHVibGljIGZpbGVVcmw7XG4gIHB1YmxpYyBpc0ltYWdlID0gZmFsc2U7XG4gIHB1YmxpYyBmaWxlTmFtZSA9ICcnO1xuICBjdXJyZW50RmlsZTogYW55O1xuICBwdWJsaWMgc2hvd1BvcHVwID0gZmFsc2U7IC8vIFNLUzExSlVOMjUgQWRkIHBvcHVwIHZpc2liaWxpdHkgY29udHJvbFxuICB2aWV3RWRpdDogYm9vbGVhbiA9IGZhbHNlIFxuICBvcmlnaW5hbFZhbHVlOiBhbnk7IC8vIFNLUzEzSlVOMjUgVG8gc3RvcmUgdGhlIG9yaWdpbmFsIHZhbHVlIHdoZW4gZW50ZXJpbmcgdmlldyBlZGl0IG1vZGVcbiAgaXNTYXZlSG92ZXJlZCA9IGZhbHNlO1xuICBpc0Rpc2NhcmRIb3ZlcmVkID0gZmFsc2U7XG4gIGlzTG9hZGluZyA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgU2hhcmVkU2VydmljZTogU2hhcmVkU2VydmljZSwgcHJpdmF0ZSBkYXRhU2VydmljZTogRGF0YVNlcnZpY2UsIHByaXZhdGUgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIsXG4gICAgcHVibGljIGkxOG5TZXJ2aWNlOiBJMThuU2VydmljZVxuICApIHsgfVxuICAvL1JTIDA5SkFOMjAyNVxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmluaXRpYWxpemVGaWxlQ29uZmlncygpO1xuICB9XG4gIG5nT25DaGFuZ2VzKHNpbXBsZUNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoc2ltcGxlQ2hhbmdlc1snbW9kZSddKSB7XG4gICAgICB0aGlzLm1vZGUgPSBzaW1wbGVDaGFuZ2VzWydtb2RlJ10uY3VycmVudFZhbHVlO1xuICAgIH1cbiAgICBpZiAoc2ltcGxlQ2hhbmdlcy5hbGxGaWxlcykgeyAgLy9TS1M1Tk9WMjVcbiAgICAgIHRoaXMuY29weU9mSW5wdXRBbGxGaWxlcyA9IHNpbXBsZUNoYW5nZXMuYWxsRmlsZXMuY3VycmVudFZhbHVlIHx8IFtdO1xuICAgIH1cblxuICAgIGlmIChzaW1wbGVDaGFuZ2VzLmxpbWl0RmlsZVVwbG9hZGluZykge1xuICAgICAgdGhpcy5jb3B5T2ZGaWxlVXBsb2FkaW5nTGltaXQgPSBzaW1wbGVDaGFuZ2VzLmxpbWl0RmlsZVVwbG9hZGluZz8uY3VycmVudFZhbHVlO1xuICAgIH1cblxuICB9XG5cbiAgLy9SUyAwOUpBTjIwMjUgSW5pdGlhbGl6ZXMgZmlsZSB1cGxvYWQgc2V0dGluZ3MgKGFsbG93ZWQgdHlwZXMsIG1heCBzaXplLCBhbmQgbWF4IGZpbGVzKSBieSBwYXJzaW5nIG1ldGFkYXRhIGZyb20gZmllbGRzTWV0YVxuICBpbml0aWFsaXplRmlsZUNvbmZpZ3MoKSB7XG4gICAgaWYgKHRoaXMucXVlc3Rpb24/LmZpZWxkc01ldGEpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIC8vIFNLUzIwTUFSMjUgY2hlY2sgaWYgcXVlc3Rpb24gZmllbGRzbWV0YSBpcyBzdHJpbmdcbiAgICAgICAgY29uc3QgbWV0YURhdGEgPSB0eXBlb2YgdGhpcy5xdWVzdGlvblsnZmllbGRzTWV0YSddID09PSAnb2JqZWN0JyA/IHRoaXMucXVlc3Rpb25bJ2ZpZWxkc01ldGEnXSB8fCBbXSA6IEpTT04ucGFyc2UodGhpcy5xdWVzdGlvblsnZmllbGRzTWV0YSddKTtcbiAgICAgICAgY29uc3QgZmlsZUNvbmZpZyA9IG1ldGFEYXRhWzBdOyAgLy8gR2V0IGZpcnN0IGNvbmZpZyBvYmplY3RcbiAgICAgICAgaWYgKGZpbGVDb25maWcpIHtcbiAgICAgICAgICB0aGlzLmFsbG93ZWRGaWxlVHlwZXMgPSBmaWxlQ29uZmlnLmFsbG93ZWRUeXBlcyB8fCBbXTtcbiAgICAgICAgICB0aGlzLm1heEZpbGVTaXplID0gZmlsZUNvbmZpZy5tYXhGaWxlU2l6ZSB8fCAwO1xuICAgICAgICAgIHRoaXMubWF4RmlsZXMgPSBmaWxlQ29uZmlnLm1heEZpbGVzIHx8IDU7XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIC8vIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIHBhcnNpbmcgZmllbGRzTWV0YTonLCBlcnJvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIFNLUzExSlVOMjUgT3BlbiB0aGUgcG9wdXBcbiAgb3BlblBvcHVwKCkge1xuICAgIHRoaXMuc2hvd1BvcHVwID0gdHJ1ZTtcbiAgICB0aGlzLnZpZXdGaWxlKHRoaXMuY29weU9mSW5wdXRBbGxGaWxlc1swXSlcbiAgfVxuXG4gIC8vIFNLUzExSlVOMjUgQ2xvc2UgdGhlIHBvcHVwXG4gIGNsb3NlUG9wdXAoKSB7XG4gICAgdGhpcy5zaG93UG9wdXAgPSBmYWxzZTtcbiAgfVxuICB1cGxvYWRNdWx0aXBsZUZpbGVzKGV2ZW50OiBhbnkpIHtcbiAgICBjb25zb2xlLmxvZygnRmlsZSB1cGxvYWRlciBpbml0aWF0ZWQnKTtcbiAgICB0aGlzLnZhbGlkYXRpb25FcnJvcnMgPSBbXTsgLy8gUlMgMTdKQU4yMDI1IENsZWFyIHByZXZpb3VzIGVycm9yc1xuICAgIGxldCBpbnB1dEZpbGVzOiBhbnlbXSA9IHRoaXMuY29weU9mSW5wdXRBbGxGaWxlcyA/IHRoaXMuY29weU9mSW5wdXRBbGxGaWxlcyA6IFtdO1xuICAgIGNvbnN0IHNlbGVjdGVkRmlsZURhdGEgPSBbXTtcbiAgICBjb25zdCB1cGxvYWRlZEZpbGVzID0gZXZlbnQudGFyZ2V0LmZpbGVzO1xuXG4gICAgLy8gUlMgMDlKQU4yMDI1IENoZWNrIGZpbGUgY291bnQgbGltaXRcbiAgICBpZiAodXBsb2FkZWRGaWxlcy5sZW5ndGggKyBpbnB1dEZpbGVzLmxlbmd0aCA+IHRoaXMubWF4RmlsZXMpIHtcbiAgICAgIHRoaXMudmFsaWRhdGlvbkVycm9ycy5wdXNoKGBNYXhpbXVtICR7dGhpcy5tYXhGaWxlc30gZmlsZXMgYWxsb3dlZGApO1xuICAgICAgZXZlbnQudGFyZ2V0LnZhbHVlID0gJyc7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcmVhZEZpbGVzUHJvbWlzZXMgPSBbXTtcblxuICAgIGZvciAoY29uc3QgZWFjaFVwbG9hZGVkRmlsZSBvZiB1cGxvYWRlZEZpbGVzKSB7XG4gICAgICBjb25zdCBmaWxlOiBGaWxlID0gZWFjaFVwbG9hZGVkRmlsZTtcblxuICAgICAgLy9SUyAwOUpBTjIwMjUgQ2hlY2sgZmlsZSB0eXBlXG4gICAgICBjb25zdCBmaWxlRXh0ID0gJy4nICsgZmlsZS5uYW1lLnNwbGl0KCcuJykucG9wKCkudG9Mb3dlckNhc2UoKTtcbiAgICAgIGlmICh0aGlzLmFsbG93ZWRGaWxlVHlwZXMubGVuZ3RoID4gMCAmJiAhdGhpcy5hbGxvd2VkRmlsZVR5cGVzLmluY2x1ZGVzKGZpbGVFeHQpKSB7XG4gICAgICAgIHRoaXMudmFsaWRhdGlvbkVycm9ycy5wdXNoKGBGaWxlIHR5cGUgJHtmaWxlRXh0fSBub3QgYWxsb3dlZC4gQWxsb3dlZCB0eXBlczogJHt0aGlzLmFsbG93ZWRGaWxlVHlwZXMuam9pbignLCAnKX1gKTtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIC8vUlMgMDlKQU4yMDI1IENoZWNrIGZpbGUgc2l6ZVxuICAgICAgaWYgKHRoaXMubWF4RmlsZVNpemUgPiAwICYmIGZpbGUuc2l6ZSA+IHRoaXMubWF4RmlsZVNpemUpIHtcbiAgICAgICAgdGhpcy52YWxpZGF0aW9uRXJyb3JzLnB1c2goYEZpbGUgXCIke2ZpbGUubmFtZX1cIiBleGNlZWRzIHNpemUgbGltaXQgb2YgJHt0aGlzLm1heEZpbGVTaXplIC8gMTA0ODU3Nn1NQmApO1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKCF0aGlzLnZhbGlkYXRpb25FcnJvcnMubGVuZ3RoKSB7XG4gICAgICAgIGNvbnN0IGZvcm1hdCA9IGZpbGVFeHQuc3Vic3RyaW5nKDEpO1xuICAgICAgICBjb25zdCBmaWxlUmVhZFByb21pc2UgPSBuZXcgUHJvbWlzZTx2b2lkPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICAgICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcblxuICAgICAgICAgIHJlYWRlci5vbmxvYWQgPSAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBmaWxlRGF0YSA9IHtcbiAgICAgICAgICAgICAgZG9jOiByZWFkZXIucmVzdWx0LFxuICAgICAgICAgICAgICBuYW1lOiBmaWxlLm5hbWUsXG4gICAgICAgICAgICAgIHR5cGU6IGZpbGUudHlwZSxcbiAgICAgICAgICAgICAgZm9ybWF0LFxuICAgICAgICAgICAgICBzaXplOiBmaWxlLnNpemUsIC8vIFJTIDE3SkFOMjAyNSBcbiAgICAgICAgICAgICAgaWQ6IG51bGwsXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBzZWxlY3RlZEZpbGVEYXRhLnB1c2goZmlsZURhdGEpO1xuICAgICAgICAgICAgaW5wdXRGaWxlcy5wdXNoKGZpbGVEYXRhKTtcbiAgICAgICAgICAgIHJlc29sdmUoKTtcbiAgICAgICAgICB9O1xuXG4gICAgICAgICAgcmVhZGVyLm9uZXJyb3IgPSAoKSA9PiB7XG4gICAgICAgICAgICByZWplY3QoKTtcbiAgICAgICAgICAgIHRoaXMudmFsaWRhdGlvbkVycm9ycy5wdXNoKGBFcnJvciByZWFkaW5nIGZpbGUgXCIke2ZpbGUubmFtZX1cImApOy8vIFJTIDE3SkFOMjAyNSBcbiAgICAgICAgICB9O1xuICAgICAgICB9KTtcbiAgICAgICAgcmVhZEZpbGVzUHJvbWlzZXMucHVzaChmaWxlUmVhZFByb21pc2UpO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAocmVhZEZpbGVzUHJvbWlzZXMubGVuZ3RoID4gMCkge1xuICAgICAgLy8gV2FpdCBmb3IgYWxsIHByb21pc2VzIHRvIHJlc29sdmVcbiAgICAgIFByb21pc2UuYWxsKHJlYWRGaWxlc1Byb21pc2VzKS50aGVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzID0gaW5wdXRGaWxlcztcbiAgICAgICAgY29uc29sZS5sb2coJ3VwbG9hZGVkRmlsZXMnLCBpbnB1dEZpbGVzKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEZpbGVEYXRhLmVtaXQoe3F1ZXN0aW9uIDogdGhpcy5xdWVzdGlvbiwgdmFsdWU6IGlucHV0RmlsZXN9KTtcbiAgICAgIH0pLmNhdGNoKCgpID0+IHtcbiAgICAgICAgLy8gY29uc29sZS5lcnJvcignRXJyb3IgcmVhZGluZyBmaWxlcycpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUud2FybignWW91IGNhbiB1cGxvYWQgbWF4IDUgZmlsZXMnKTtcbiAgICAgIC8vIHRoaXMudG9hc3RyLndhcm5pbmcoVE9BU1RFUl9NRVNTQUdFUy5NQVhfRklWRV9GSUxFUywgVE9BU1RFUl9NRVNTQUdFUy5XQVJOSU5HX1RJVExFKTtcbiAgICB9XG5cbiAgICBldmVudC50YXJnZXQudmFsdWUgPSAnJztcbiAgfVxuXG4gIGRlbGV0ZUZpbGUoY3VycmVudEZpbGVJbmRleCkge1xuICAgIGNvbnN0IGRlbGV0ZWRGaWxlTmFtZSA9IHRoaXMuc2VsZWN0ZWRGaWxlTmFtZUFycmF5LnNwbGljZShjdXJyZW50RmlsZUluZGV4LCAxKTtcbiAgICBjb25zdCBkZWxldGVkRmlsZSA9IHRoaXMuY29weU9mSW5wdXRBbGxGaWxlcy5zcGxpY2UoY3VycmVudEZpbGVJbmRleCwgMSk7XG4gICAgdGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzLmxlbmd0aCA+IDAgPyB0aGlzLnZpZXdGaWxlKHRoaXMuY29weU9mSW5wdXRBbGxGaWxlc1swXSkgOiB0aGlzLnZpZXdGaWxlKG51bGwpO1xuICAgIGNvbnNvbGUubG9nKCdlbWl0JywgZGVsZXRlZEZpbGVbMF0pO1xuICAgIHRoaXMuZGVsZXRlZEZpbGVEYXRhLmVtaXQoZGVsZXRlZEZpbGVbMF0pO1xuICAgIHRoaXMuc2VsZWN0ZWRGaWxlRGF0YS5lbWl0KHtxdWVzdGlvbiA6IHRoaXMucXVlc3Rpb24sIHZhbHVlOiB0aGlzLmNvcHlPZklucHV0QWxsRmlsZXN9KTtcbiAgfVxuXG5cbiAgLy8gVkQgMjBNYXkyNCAtIHByZXZpZXcgY2hhbmdlc1xuICAvLyBSUyAwOURFQzI0IENoYW5nZWQga2V5c1xuICB2aWV3RmlsZShjdXJyZW50RmlsZSkge1xuICAgIHRoaXMuY3VycmVudEZpbGUgPSBjdXJyZW50RmlsZTtcbiAgICAvLyBBUC0yNU1BUjI1IEVuc3VyZSBzdWJUZXh0IGlzIHBhcnNlZCBpbnRvIGFuIG9iamVjdCBpZiBpdCdzIG5vdCBhbHJlYWR5XG4gICAgdGhpcy5xdWVzdGlvblsnc3ViVGV4dCddID0gdHlwZW9mIHRoaXMucXVlc3Rpb24/LnN1YlRleHQgPT09ICdvYmplY3QnID8gdGhpcy5xdWVzdGlvbj8uc3ViVGV4dCA6IEpTT04ucGFyc2UodGhpcy5xdWVzdGlvblsnc3ViVGV4dCddKSB8fCB7fTtcbiAgICBpZiAodGhpcy5xdWVzdGlvbi5zdWJUZXh0ICE9IHVuZGVmaW5lZCkge1xuICAgICAgbGV0IGZpbGVNZXRhID0gdGhpcy5xdWVzdGlvbi5zdWJUZXh0O1xuICAgICAgbGV0IGVuZHBvaW50ID0gZmlsZU1ldGEuZW5kcG9pbnQ7XG4gICAgICBsZXQgcXVlcnlQYXJhbWV0ZXIgPSBmaWxlTWV0YS5xdWVyeVBhcmFtZXRlcjtcbiAgICAgIGxldCBmaWxlID0gY3VycmVudEZpbGU7XG4gICAgICBpZiAoZW5kcG9pbnQgJiYgZmlsZVtxdWVyeVBhcmFtZXRlcl0pIHtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlXG4gICAgICAgIGNvbnN0IGZ1bGxFbmRQb2ludCA9IGVuZHBvaW50ICsgJz8nICsgcXVlcnlQYXJhbWV0ZXIgKyAnPScgKyBmaWxlW3F1ZXJ5UGFyYW1ldGVyXTtcbiAgICAgICAgaWYgKGZ1bGxFbmRQb2ludCkge1xuICAgICAgICAgIHRoaXMuZGF0YVNlcnZpY2UuYXBpUmVzcG9uc2UoZnVsbEVuZFBvaW50KS5waXBlKFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy52aWV3TG9jYWxGaWxlKCk7IC8vIENhbGwgZmFsbGJhY2sgbWV0aG9kXG4gICAgICAgICAgICAgIHJldHVybiBvZihudWxsKTsgLy8gUmV0dXJuIGEgZmFsbGJhY2sgdmFsdWUgdG8ga2VlcCBvYnNlcnZhYmxlIGNoYWluIGFsaXZlXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICkuc3Vic2NyaWJlKChhcGlSZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgaWYgKGFwaVJlc3BvbnNlKSB7XG4gICAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2VcbiAgICAgICAgICAgICAgdGhpcy5oYW5kbGVGaWxlQ29udGVudChhcGlSZXNwb25zZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMudmlld0xvY2FsRmlsZSgpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZpZXdMb2NhbEZpbGUoKVxuICAgIH1cbiAgfVxuXG4gIC8vIC8vIFZEIDAzQXVnMjQgcHJvY2VzcyBsb2NhbCBwcmV2aWV3IFxuICB2aWV3TG9jYWxGaWxlKCkge1xuICAgIGlmICh0aGlzLmN1cnJlbnRGaWxlKSB7XG4gICAgICB0aGlzLnNldEZpbGVVcmwodGhpcy5jdXJyZW50RmlsZT8uZG9jKTtcbiAgICAgIHRoaXMuZmlsZU5hbWUgPSB0aGlzLmN1cnJlbnRGaWxlLm5hbWU7XG4gICAgICB0aGlzLmlzSW1hZ2UgPSB0aGlzLmN1cnJlbnRGaWxlLnR5cGU/LnN0YXJ0c1dpdGgoJ2ltYWdlLycpO1xuICAgIH1cblxuICB9XG5cblxuICBoYW5kbGVGaWxlQ29udGVudChmaWxlUmVzcG9uc2U6IGFueSkge1xuICAgIGNvbnN0IGJ5dGVBcnJheSA9IG5ldyBVaW50OEFycmF5KGZpbGVSZXNwb25zZS5jb250ZW50LmRhdGEpO1xuICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbYnl0ZUFycmF5XSwgeyB0eXBlOiBmaWxlUmVzcG9uc2UudHlwZSB9KTtcbiAgICBjb25zdCB1cmwgPSB3aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcbiAgICB0aGlzLnNldEZpbGVVcmwodXJsKTtcbiAgICB0aGlzLmlzSW1hZ2UgPSBmYWxzZTtcbiAgICBpZiAoZmlsZVJlc3BvbnNlLm5hbWUpIHtcbiAgICAgIHRoaXMuZmlsZU5hbWUgPSBmaWxlUmVzcG9uc2UubmFtZTtcbiAgICAgIGNvbnN0IGltYWdlRXh0ZW5zaW9ucyA9IFsnanBnJywgJ2pwZWcnLCAncG5nJywgJ2dpZicsICdibXAnLCAnd2VicCddO1xuICAgICAgY29uc3QgZmlsZUV4dGVuc2lvbiA9IGZpbGVSZXNwb25zZS5uYW1lLnNwbGl0KCcuJykucG9wKCk/LnRvTG93ZXJDYXNlKCk7XG4gICAgICB0aGlzLmlzSW1hZ2UgPSBpbWFnZUV4dGVuc2lvbnMuaW5jbHVkZXMoZmlsZUV4dGVuc2lvbiB8fCAnJyk7XG4gICAgfVxuICB9XG5cbiAgc2V0RmlsZVVybCh1cmw6IGFueSkge1xuICAgIGlmICh1cmwpIHtcbiAgICAgIHRoaXMuZmlsZVVybCA9IHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybCh1cmwpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmZpbGVVcmwgPSBudWxsOyAvLyBvciBoYW5kbGUgZ3JhY2VmdWxseVxuICAgIH1cbiAgfVxuXG4gIGdldERvY0ljb24oZG9jTmFtZSkge1xuICAgIGNvbnN0IGV4dCA9IGRvY05hbWUuc3BsaXQoJy4nKS5wb3AoLTEpO1xuICAgIHJldHVybiB0aGlzLlNoYXJlZFNlcnZpY2UuZG9jSWNvbihleHQpO1xuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgdGhpcy5maWxlTmFtZSA9ICcnO1xuICAgIHRoaXMuZmlsZVVybCA9ICcnO1xuICAgIHRoaXMuaXNJbWFnZSA9IGZhbHNlO1xuICAgIGlmICh0aGlzLmZpbGVVcmwpIHtcbiAgICAgIFVSTC5yZXZva2VPYmplY3RVUkwodGhpcy5maWxlVXJsKTtcbiAgICB9XG4gIH1cbiAgdmlld0VkaXRDbGljayhxdWVzOiBhbnkpIHtcbiAgICB0aGlzLm9yaWdpbmFsVmFsdWUgPSAgdGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzOyAvL1NLUzEzSlVOMjUgU3RvcmUgdGhlIG9yaWdpbmFsIHZhbHVlXG4gICAgdGhpcy52aWV3RWRpdCA9IHRydWU7IC8vIEVudGVyIHZpZXcgZWRpdCBtb2RlXG4gICAgdGhpcy5tb2RlID0gJ2VkaXQnO1xuICB9XG4gIHNhdmVDaGFuZ2VzKCkge1xuICAgIGxldCBxdWVzID0gdGhpcy5xdWVzdGlvblxuICAgIHF1ZXNbJ3NpbmdsZUZpZWxkQ2hhbmdlJ10gPSB0cnVlXG4gICAgdGhpcy5zZWxlY3RlZEZpbGVEYXRhLmVtaXQoe3F1ZXN0aW9uIDogcXVlcywgdmFsdWU6IHRoaXMuY29weU9mSW5wdXRBbGxGaWxlc30pO1xuICAgIHRoaXMudmlld0VkaXQgPSBmYWxzZTsgLy8gRXhpdCB2aWV3IGVkaXQgbW9kZVxuICAgIHRoaXMubW9kZSA9ICd2aWV3JzsgLy8gU3dpdGNoIGJhY2sgdG8gdmlldyBtb2RlXG4gIH1cbiAgZGlzY2FyZENoYW5nZXMoKSB7XG4gICAgdGhpcy5jb3B5T2ZJbnB1dEFsbEZpbGVzID0gdGhpcy5vcmlnaW5hbFZhbHVlOyAvLyBSZXZlcnQgdG8gb3JpZ2luYWwgdmFsdWVcbiAgICB0aGlzLnZpZXdFZGl0ID0gZmFsc2U7IC8vIFNLUzEzSlVOMjUgRXhpdCB2aWV3IGVkaXQgbW9kZVxuICAgIHRoaXMubW9kZSA9ICd2aWV3JzsgLy8gU0tTMTNKVU4yNSBTd2l0Y2ggYmFjayB0byB2aWV3IG1vZGVcbiAgfVxufVxuIiwiPCEtLSBTS1MxMUpVTjI1IGZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sIC0tPlxuPGRpdiBjbGFzcz1cImZsZXggaG92ZXItd3JhcHBlclwiIHN0eWxlPVwiYWxpZ24taXRlbXM6IGNlbnRlcjsgZ2FwOiAxMHB4O1wiPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBmaWxlLWlubmVyLWRpdlwiPlxuICAgIDxzdmcgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIj5cbiAgICAgIDxyZWN0IHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIGZpbGw9XCJ1cmwoI3BhdHRlcm4wXzYxNl8zNTEyNSlcIiAvPlxuICAgICAgPGRlZnM+XG4gICAgICAgIDxwYXR0ZXJuIGlkPVwicGF0dGVybjBfNjE2XzM1MTI1XCIgcGF0dGVybkNvbnRlbnRVbml0cz1cIm9iamVjdEJvdW5kaW5nQm94XCIgd2lkdGg9XCIxXCIgaGVpZ2h0PVwiMVwiPlxuICAgICAgICAgIDx1c2UgeGxpbms6aHJlZj1cIiNpbWFnZTBfNjE2XzM1MTI1XCIgdHJhbnNmb3JtPVwic2NhbGUoMC4wMDE5NTMxMilcIiAvPlxuICAgICAgICA8L3BhdHRlcm4+XG4gICAgICAgIDxpbWFnZSBpZD1cImltYWdlMF82MTZfMzUxMjVcIiB3aWR0aD1cIjUxMlwiIGhlaWdodD1cIjUxMlwiIHByZXNlcnZlQXNwZWN0UmF0aW89XCJub25lXCJcbiAgICAgICAgICB4bGluazpocmVmPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFnQUFBQUlBQ0FZQUFBRDBlTlQ2QUFBQUNYQklXWE1BQUE3REFBQU93d0hIYjZoa0FBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCM2QzY3VhVzVyYzJOaGNHVXViM0pubSs0OEdnQUFJQUJKUkVGVWVKenQzWGZZSDFXWi8vRjNTRS9vQ2FFVEFnb2lKWFRwZ2dpS2dpdFIxSlVWWGN1NitMT2cvaXpzV3FLcmE4ZTY2cUxpZ29vSUFpcFd5a2FVSmlBZ1JVVnFJTFNFaENTVTlHVC9PTjlISHBLbmZPdmNaMmJlcit1NnI0QVhWK2FUbWNlY2U4NmNPVE1DVmNVNFlCcXdmYU8yQVRZREpnT1RHcitPQnpadS9QZGpnSWxGaDVSNlpCV3d1UEhQVHdMTGdjZUJSNEI1d0tPTlh4OEU3Z0h1QXVZQWF3cFBLbVZpUkhRQXRXd01zQ3V3ZTZPbU4vNTlxOGhRVWdrdEpUVURkd0EzQXpjMGFuWmtLS2tvTmdENW13d2NCQnpjcUgyQnNhR0pwR3BiUUdvRXJnSitDMXdETElrTUpQV0NEVUIrUnBFRy9HT0FGNVB1OEwxT1VweWx3QitBV2NBbHBJWmdkV2dpcVFzY1dQSXdIbmdKOENyZ2FKNStUaThwUDQ4QVB3TitBbHdHTEl1Tkk3WEhCaURPR05JZC9xdUJsd0hyeDhhUjFJYkhnWjhEWjVGbUIxYkZ4cEdhWndOUXZHY0Jid2JlQUd3ZUcwVlNGejBJL0JqNERtbFJvWlExRzRCaWpBU09CMDRHanNEekxsWGRGY0NYZ1F0eFZrQ1pjaURxclhHazUvci9CdXdjbkVWUzhlNEZ2Z21jRGp3V0cwVjZKaHVBM3RnRWVBL3dObURUNEN5UzRpMG1OUUdmSlcxSUpJV3pBZWl1OVlIL0Izd1FWL0pMV3RlVHBEVUNud1RtQm1kUnpka0FkTWM0NEozQSswbmI3a3JTVUJZQlgyelU0bUgrVzZrbmJBQTZkeHp3SldDSDZDQ1NTbWMrOEIvQVYzRnpJUlhNQnFCOTAwa0QvK0hCT1NTVjN6WEFPNERybzRPb1B0YUxEbEJDNDBrTGVhN0h3VjlTZHh4QTJtNzRkTklpWXFubm5BRm96YUhBdC9DVlBrbTk4d2p3cjZTdGhxV2VjUWFnT2V1VE92UExjZkNYMUZ1Ymt6WVEraTYrVGFRZWNnWmdlUHNEUHlCdDRTdEpSWm9EdkpIMG5RR3BxMFpHQjhqWWVxUlgrMzRJYkJhY1JWSTliUWo4RTJudDBTeGdUV3djVllrekFBT2JBcHhEMnJkZmtuSndDWEFpN2lTb0xyRUJXTmYrcEM5NmJSc2RSSkxXTW9mMENmR3Jvb09vL0Z3RStFd25BYi9Gd1Y5U25yWWhQUXA0WFhRUWxaOXJBSktScEUxOVBnMk1EczRpU1VNWkNieWNOSU43ZVhBV2xaZ05BRXdFZmdTOFBqcUlKRFZwQkdranN1MkJYd0tySXNPb25PcStCbUFMNEdmQWZ0RkJKS2xObDVGbUJKNklEcUp5cVhNRE1CVzRGTi92bDFSK1Z3SXZ3UzhMcWdWMWJRQ21rYnJtYWRGQkpLbExyZ2RlQkN5SURxSnlxR01Ec0F2cHpuK3I2Q0NTMUdVM0FFZGhFNkFtMUswQjJJMzBDczNrNkNDUzFDUFhBUy9BTlFFYVJwMzJBWGdXY0RFTy9wS3FiVC9ncDhEWTZDREtXMTFlQTl5V2RPZnZCaitTNm1BYXNDTndRWFFRNWFzT0RjQVd3TytBSGFLRFNGS0JkZ2ZHa2RZOFNldW9lZ013RWZnTjZkbS9KTlhOSWNCYzBoc0Mwak5VZVJIZ2VxU1AraHdmSFVTU0FxMEFqZ1IrSHgxRWVhbnlJc0F2NHVBdlNhT0JjL0hWWjYybHFnM0FXNEYzUm9lUXBFeHNRWm9SSFJNZFJQbW80aHFBL1VuZDdxam9JSktVa1cyQkRZRmZSd2RSSHFyV0FFd2hiZkc3YVhRUVNjclFBY0Q5d0kzUlFSU3ZTb3NBUndLWEFFZEVCNUdrakMwQkRnWCtHQjFFc2FxMEJ1QlVIUHdsYVRqamdRdEpNNmFxc2FyTUFPd0RYRTFhN1NwSkd0NlZwRzhHTEk4T29oaFZXQU13a2JUSHY5MnNKRFZ2TzJBVDRGZlJRUlNqQ2czQWZ3RkhSNGVRcEJMYUg3Z1B1Q2s2aUlwWDlrY0Fod1AvUy9uL0hKSVVaUmx3R0hCdGRCQVZxOHdENTNqZ1p0Sm5maVZKN1hzSTJCZDRNRHFJaWxQbXR3QStqb08vSkhYRGxxU2RBc2RHQjFGeHlyb0dZRHB3QnVWdVlDUXBKOXNDazRGZlJBZFJNY3JhQUp3RDdCQWRRcElxWmwvUzR3QTNDYXFCTXE0QmVDVndYblFJU2Fvb1B4OWNFMlZyQU1ZQ3QrS3pmMG5xcFlkSnN3RVBSQWRSNzVUdEdmcTdjUENYcEY3ciszeXdpd0lyckV4ckFOWUhma1RhK1UrUzFGdmJrSFlML0VsMEVQVkdtUnFBVTRHWFJvZVFwQnFaRHN3RnJvOE9vdTRyeXhxQWpZRzdTZnRXUzVLS3N3STRDcmc4T29pNnF5eHJBTjZMZzc4a1JSaE5ldnk2VFhRUWRWY1paZ0Fta0Q1V01TazZpQ1RWMkkzQXdjQ1M2Q0RxampMTUFMd1pCMzlKaXJZWDhOL1JJZFE5dVM4Q0hBbDhIOWcwT29na2llbkFBdnh5WUNYa1BnTndQTEJqZEFoSjB0OTlnZlFwZHBWYzdnM0F5ZEVCSkVuUE1KcTBTZEMwNkNEcVRNNkxBSGNFN2lEdmpKSlVWemVSRmdVK0ZSMUU3Y2w1QnVCZmNQQ1hwRnp0Q1p3ZUhVTHR5M1VSNEdqZ2YwamIvMHFTOHJRSDhEaHdkWFFRdFM3WEdZQmpTQitqa0NUbDdUT2t6d2VyWkhKdEFGNFRIVUNTMUpSUndMbjR4bGJwNVBpTWZRTHdDRTcvUzFLWjNBd2NCRHdaSFVUTnlYRUc0Q1U0K0V0UzJld0JuRVdlTjVZYVFJNkxBRDhLN0JvZFFwTFVzbDFJcndWZUdSMUV3OHV0VXhzRnpDTjkvbGVTVkQ2cmdXT0JYMFVIMGRCeWV3UndFQTcra2xSbTZ3RS9BSjRWSFVSRHk2MEJPQ1k2Z0NTcFk1c0FQd00yakE2aXdka0FTSko2WVJmZ1RQSjcxS3lHbkJZQlRnWStqejhza2xRVnp3R1dBNytQRHFKMTVUUURjREFPL3BKVU5mOUJXaFNvek9UV0FFaVNxbVU5NEd6U0l3Rmx4QVpBa3RSckd3QVhBaHRGQjlIVGNwbHlId3NzYXZ3cVNhcW1ud0F6Z0RYUlFaVFBETUJ6Y2ZDWHBLcDdPZkRoNkJCS2Nta0E5b2dPSUVrcXhFemdGZEVoWkFNZ1NTcldDT0M3K00yWGNEWUFrcVNpYlFCY2dGdS9oOHFsQVhodWRBQkpVcUYySW4wK09KZHhxSFp5MkFsd1BQQXA4bmtqUVpKVWpKMUpEY0NzNkNCMWxFUG50VDBPL3BKVVZ4OENUb2dPVVVlNU5BQ1NwSG9hQVp3QjdCWWRwRzV5YUFDbVJRZVFKSVZhbi9UNTRFblJRZW9raHdaZ20rZ0FrcVJ3MDREdmtjZTRWQXM1bk9qTm9nTklrckp3RFBDSjZCQjFrVU1ENEpTUEpLblBCNEZYUjRlb2d4d2FnTW5SQVNSSjJlamJLWER2NkNCVlp3TWdTY3JOZU9COEhCOTZLb2NHWUlQb0FKS2s3R3dQL0lBOE5xeXJwQndhQUQ4RExFa2F5TkdrbldMVkF6azBBR09pQTBpU3N2VSs0UFhSSWFvb2h5MTRueUk5NzVFa2FTQkxnRU9CUDBZSHFaSWNHb0NWK0l4SGtqUzAyY0Ird0x6b0lGV1J3eU1BQjM5SjBuQ21BdWNBbzZLRFZFVU9EWUFrU2MxNEFmRFo2QkJWa2NNamdEWFJBU1JKcGZJbTBoY0UxUUViQUVsUzJTd0ZEZ091aXc1U1pqWUFrcVF5dWgvWUY1Z2JIYVNzWEFNZ1NTcWpiWUVMY0MrWnR0a0FTSkxLNm1EZ0M5RWh5c3BIQUpLa3Nuc0w4TzNvRUdWakF5QkpLcnRscEVXQjEwWUhLUk1iQUVsU0ZUeEVXaFQ0WUhTUXNuQU5nQ1NwQ3JZRWZveGZtRzJhRFlBa3FTb09CTDRVSGFJc2ZBUWdTYXFhdHdLblI0ZkluUTJBSktscVZnQkhBcitQRHBJekd3QkpVaFU5VEZvVStFQjBrRnk1QmtDU1ZFVmI0S0xBSWRrQVNKS3E2Z0JjQ3pBb0d3QkpVcFdkQkp3Y0hTSkhyZ0dRSkZYZEN1QW80UExvSURteEFaQWsxY0Vqd0g2a3p3Z0xId0ZJa3VwaGMrQ253UGpvSUxtd0FaQWsxY1Zld0g5SGg4aUZEWUFrcVU1ZUI3d2pPa1FPWEFNZ1NhcWJsY0RSd0t6b0lKRnNBQ1JKZFRTZnRDandudWdnVVh3RUlFbXFvMG5BQmNDRTZDQlJiQUFrU1hXMUp6WGVLZEFHUUpKVVp5Y0M3NGtPRWNFMUFKS2t1bHNGSEF2OE9qcElrV3dBSkVtQ0JjRCt3RjNSUVlyaUl3QkprbUJUMHFMQWlkRkJpbUlESUVsU3NnZHdGbm5NanZlY0RZQWtTVStiQWJ3dk9rUVJjdWh5WEFNZ1NjckphdUE0NEpmUlFYckpCa0NTcEhVOVJsb1VlR2Qwa0Y3eEVZQWtTZXZhQlBnWnNHRjBrRjZ4QVpBa2FXQzdBR2VTeDJ4NTE5a0FTSkkwdUpjRHAwYUg2SVVjdWhyWEFFaVNjcllhZUJGd2FYU1FicklCa0NScGVBOEF1NU1XQjFhQ2p3QWtTUnJlMXNCcDBTRzZ5UmtBU1pLYU53TzRNRHBFTjlnQVNKTFV2TG1rUndGem80TjB5a2NBa2lRMWJ3cnc1ZWdRM2VBTWdDUkpyWHNWY0Y1MGlFN1lBRWlTMUxxNXdFN0FvdWdnN2ZJUmdDUkpyWnNDZkRRNlJDZWNBWkFrcVQwcmdiMkFXNk9EdE1NWkFFbVMyak1LK0dKMGlIYlpBRWlTMUw0WEFzZEZoMmlIandBa1Nlck1YY0N1d0xMb0lLMXdCa0NTcE03c0NKd1NIYUpWemdCSWt0UzV4Y0EwWUVGMGtHWTVBeUJKVXVjMkJONFZIYUlWemdCSWt0UWRpMGl6QUtYNFpMQXpBSklrZGNkR3dEdWlRelRMR1FCSmtycG5JV2tXWUdGMGtPRTRBeUJKVXZkc0RKd2NIYUlaemdCSWt0UmQ4MG16QUk5SEJ4bUtNd0NTSkhYWEpPQXQwU0dHNHd5QUpFbmRONXUwUWRDcTZDQ0RzUUdRRkdFNWNDOXBDOVU3Z1llQkI0RkhTTjlaZndwNGtvR25VQ2NBNDBqUFdpY0JtelZxYTlLMDZ3Nk4ycWlYZndDcENTOERMb29PTVJnYkFFbTl0aGk0QnJpeFVUZVJCdjFlM3hsdEIremVxSDJBZzRDdGVueE1xYjlMZ0tPalF3ekdCa0JTdHowQlhBcjhML0I3NEJieW1RYWRDaHdNSEVuNmkzbWIyRGlxdURYQVRxU0dOenMyQUpLNllRNXdQdkJ6MHFCZmxxK2k3UUljQzh3QW5rY2VmeWVxV2o0SmZDZzZ4RUJ5K0dHM0FaREthUzV3RG5BdWNCWGwvLy95TnNBcmdKT0F2WU96cURybUFOdVR6eXpZMzlrQVNHckZhdUJpNE51a3hVM0xZK1Awek83QTY0RTNrQllhU3AwNEJ2aDFkSWkxMlFCSWFzWVR3Tm5BYWNEdHdWbUtOQlo0TmZCdVlNL2dMQ3F2NzVGbWxySmlBeUJwS0k4QW53ZStSZnJTV1owZENmd2I4SUxvSUNxZFJjQVd3TkxvSVAyNUU2Q2tnY3dGL2ovcGZmclA0K0FQY0JtcENUZ1ErR1Z3RnBYTFJzQ0xva09zelFaQVVuOVBBaDhsRGZ4ZklHM0lvMmU2Qm5ncDhIemc2dUFzS284VG9nT3N6VWNBa2lBdDd2c2Y0TU9rSGZuVXZCbWtabW43NEJ6SzJ3SmdjMkJsZEpBK3pnQkl1cG0wT2M2YmNQQnZ4d1hBYzRHUGtka3pYbVZsVTlMam8yellBRWoxOVNUcE9mOCtwR2x0dFc4Sk1CUFlEWmdWRzBVWmUybDBnUDU4QkNEVjAxV2s5OXl6M0tLMDVFWUFid1UrQzJ3UW5FVjV1Um1ZSGgyaWp3MkFWQy9MU1ZQVm55SERuY2txWmlyd2ZlQ1E2Q0RLeGhwZ0N2Qm9kQkR3RVlCVUovZVNCcVAveE1HL0NMT0JJNENQNC9sV01vTDA5a2dXYkFDa2V2Z0Y2Vm4vZGRGQmFtWWw2YlhLSTRHSGc3TW9ENGRIQitoakF5QlYyeHJnSThCeHBOZVFGT055WUYvZ0Q5RkJGTzdRNkFCOVhBTWdWZGNxMHY3alowY0gwZCtOQmY2TDlNcWw2bWtsYVdmQThFMjJuQUdRcXVzVUhQeHpzd3g0TTNBcTN2elUxU2d5K2JDVURZQlVUZWNDWDRzT29VRjlHamlSMUJDb2Z2YUxEZ0EyQUZJVkxRTGVHUjFDdy9vaDZUdnhUMFFIVWVHeTJBdkFCa0NxbnErU1B1T3IvTTBpdlNvNFB6cUlDclZMZEFCd0VhQlVOU3RKWC9LN1B6cUlXckkzOEJ0Z2NuUVFGV0lSc0hGMENHY0FwR3I1S1E3K1pYUUQ2WHZ4aTZLRHFCQWJBVnRIaDdBQmtLcmxwOUVCMUxZYmdCZmptb0M2MkNFNmdBMkFWQzFYUlFkUVI2NEJqc2UzQStwZ2FuUUFHd0NwT2g0Qjdvb09vWTVkU3ZwU28rdWpxbTNiNkFBMkFGSjEzQkVkUUYzekk5SkhoRlJkMjBVSHNBR1Fxc01GWk5YeU1lQUgwU0hVTTFPaUE5Z0FTTld4TURxQXVtb05hZHZnRzZLRHFDYzJqUTVnQXlCVmgvOS9ycDZsd0t1d3Vhc2lHd0JKWFJPK3FFZzljUmN1Q3F5aThBYkFuUUNsNnJpUERGNHRhc01JVXZPeVU2T21rSFpKNjZ2UndKT04vM1loc0FTWURjd2hiWHAwSnpDdjJNZ2h2Z3E4UFRxRXVtWSt3VHMvMmdCSTFiRUsyQVI0UERySU1DWURoelhxVU5LKzZPTTcvRDN2QTY0RC9nQmMzYWhWSGY2ZXVaa0EvQkY0VG5RUWRjWGp3SWFSQVd3QXBHbzVGdmhGZElnQlBKZjBMSHNHc0J1OS83dG5QdkJMNEdla1BmWnpiNHFhdFM5cHM2ZlIwVUhVc1dYQXVPZ1EwZFpZbHRXMU9vdDhiQTc4TzNBenNlZmtDZUJid0Y2OS9lTVc1aFBFLzV4Wm5kZnF0UzlzMFp3QmtLcmxLV0FhTURjd3crN0FLY0NKd05qQUhBTzVHdmd5Y0I0Wi9BWGNwdkdrcHVwWjBVSFVzZEF4MkxjQXBHcVpRTHJyanJBMzhHdmdUOEFieVcvd0J6Z1FPSWYwYnYxTGc3TzBhd253dHVnUVVqZEVUOE5ZVnRWcUpmQThpck1kNmRIRHFpNy9PWXFvM3dQN2RQK1VGT0ljNHMrZjFWbUY4aEdBVkUxelNFM0FnejA4eGxqZ1E4Qjc2WHdWZjZTVndHZEplKytYNlN0ODJ3Ti93WVZrWmVZakFFbGR0dzB3aTk3dEN6QWR1SmJVQUpSNThBY1lCZndiNlJXNy9ZS3p0T0plNEN2UklWUmV6Z0JJMVRZWE9JbjBLbHczakFMZUQzd1VHTk9sM3pNbks0QjNBZCtJRHRLa2pVZ2JJWVZ1S0tPMk9RTWdxV2VtQUw4Q3ZnZnMwT0h2TlozMER2b25xZWJnRCtuOStxOEQzNlFjNzlvdkFqNGZIVUxsNUF5QVZCK3JTYzNBMTRCTFNjKytoek9DdEZ2ZjI0QVRxTmROdys5SUd4Zk5qdzR5alBXQmUzQVdvSXhDeDJBYkFLbWVuaVJ0blhzRjZXTXppMGwzazVEV0Qwd2w3Y3YvQW1ETGlJQ1p1QWw0SWZrM0FSOEVQaFVkUWkyekFZZ09JRWxEK0JPcENYZzBPc2dRTmlCOUdHbWo2Q0JxaVdzQUpDbGowNEhMeUh1Sy9YSGdPOUVoVkM3T0FFaFNjNjRqUFJKNUlqcklJS2FTM2dnWUZSMUVUWE1HUUpKS1lEL1NOd1J5ZlR0Z051bnJoMUpUYkFBa3FYa3ZCczRrMzc4N3Z4MGRRT1hoSXdCSmF0Mm5nVk9qUXd4Z0pPbVZ3RzJqZzZncFBnS1FwSkw1QVBBUDBTRUdzSW8wUXlFTnl4a0FTV3JQbzhCZXBBOHY1V1FuNFBib0VHcUtNd0NTVkVLVGdiUEpiOVg5MzBoN0YwaERzZ0dRcFBZZFN2cVNZRzdPaXc2Zy9Qa0lRSkk2c3hUWWpiU2xjaTU4REZBT2JnVWNIVUFxMkVMZ0R0SlU3U0xTTG02TFNQdnpMd00ySm4zZ1pTSnBpOWVwd0xPQjdYRFdMbGMvQjQ2TERyR1d2NUYrYnBTdjBERTR0MmRYVXRVOFR2cXEzQ3pnV3RKZDJkdzJmNit4cEwvUWR5Vk5QUjhPUEpjOEd2bTZPN1pSUDQ4TzBzK3ZzUUhRRUhMNGk4TVpBRlhObmNBUFNIOEJYMDl6bjkxdDF4VGcrY0R4cE5mU0p2VHdXQnJhWGFTR2JIbDBrSWFYa2xkRG9uWDVDQ0E2Z05RRkM0RnpnYk9BcTRqNXVWNmYxQWljU1BwNjNjaUFESFgzUnVDNzBTRWFKZ0lMZ0RIUlFUUW9HNERvQUZJSDVnTGZBRTRERmdkbjZXOHE4QjdnelRnclVLVGJTYk1BcTZPRE5Gd05IQkFkUW9OeUh3Q3BoQjRCUGdoc0Q4d2tyOEVmMG9kaDNrVnFCRDVHdWhOVTcrME12RHc2UkQ5WFJBZFF2bXdBcE5Zc0J6NUJHdmcvQXl3SlRUTzhSMGtOeW83QTEwaGJ4YXEzUGhnZG9KOHJvd01vWHo0Q2tKcDNCZkJXNE0vUlFUb3duZFFJSEJJZHBPTDJBVzZJRGdGc0JUd1FIVUtEOGhHQWxMbWx3TW5BWVpSNzhJZTBSZXhod0J0SWV3K29OMDZNRHREd0lPMi9kcXFLc3dHUWhuWS82VFc3YjFLZDJhbzFwQy9HVFNjdEVsUDMvU1A1dklYaGR3RTBJQnNBYVhDWGtMNzJkbTEwa0I2WlRkcE02SXRVcDduSnhaYWtjNXNER3dBTnlBWkFHdGhYZ0dPQStkRkJlbXc1NlhYQjQwbGJFYXQ3VG9nTzBQRFg2QURLa3cyQXRLN1BrMTZocTlPSytaOENSd0R6b29OVXlCSFJBUnB5K2tpUk1tSURJRDNUWjRIM1JZY0ljaDFwZ2VCOTBVRXFZaWRnNitnUXBLMnBwWFhZQUVoUCt6andnZWdRd2Y0S0hBVGNGaDJrSWc2UERrQjZEWEJwZEFqbHh3WkFTajRHZkRRNlJDWWVBSTRDN29rT1VnR0hSd2NnTGZCOE1EcUU4bU1ESUtXZDhtWUdaOGpOUTZRbTRKSG9JQ1czUjNTQWhvZWpBeWcvTmdDcXU1bWt1Myt0Nnk3U04rNmZpQTVTWWp0SEIyaDRLRHFBOG1NRG9EcjdHQTcrdzdrZWVCM3VFOUN1allBcDBTRndOMEFOd0FaQWRUVVRwLzJiOVJQUzl3UFVubWRIQndBZWp3NmcvTmdBcUk2ODgyL2QrNENib2tPVTFBN1JBY2p2YzlYS2dBMkE2dVpqZU9mZmptWEFhM0Mzd0hac0ZCMEFHd0FOd0FaQWRUSVRCLzlPM0U3YUswR3RXVDg2QUttQms1N0JCa0IxTVJPbi9idmhTNlJHUU0zYklEb0FMdUxVQUd3QVZBY3pjZkR2bHVYQU82SkRsRXdPRGNEcTZBREtqdzJBcXM0RmY5MTNDWEJSZEFpMXhBWkE2N0FCVUpYTnhHZit2ZkpobkZadVZnNEw4TVpHQjFCK2JBQlVWVFB4enIrWC9nUmNGaDJpSkhMWVNYRjhkQURseHdaQVZUUVRCLzhpZkRZNlFFbmtzQW5QdU9nQXlvOE5nS3JHWi83RnVRUzRNVHBFQ1N5S0RnQk1pQTZnL05nQXFFcG00alAvb3AwUkhhQUU3b29PQUV5T0RxRDgyQUNvS21iaW5YK0VId0VybzBOazdtL1JBYkFCMEFCR1JRZVF1cURNMC82VGdRT0I1d0hUU2M5cTF5ZnQzSFpIbzY0Q3JnWldCV1VjeWp6Z1V1REYwVUV5dFFDWUh4MENHd0JsYW8xbGRWQXpLWi8xZ0dPQUM0RVZOUGZudkIvNElIayt5ejJKK0orRFhPdnFEczVyTi8yWitITmhyVnUxRjMwQnJQTFdUTXJuQU5JcmRPMyttZThIamlvODlkQW1remFhaWY1NXlMRnkrSXp5Q05KSG5LTFBoYlZ1MVY3MEJiREtXVE1wbDlIQVYwblQrSjMrMlZjQjd5dzIvckJ1SnY1bklzZDZSU2NudFVzMkkvNDhXQU5YN1VWZkFLdDhOWk55R1EyY1QvZlB3MXVML0VNTTR5dkUvMXprVnF1QVNaMmMxQzdaai9oellRMWNvWHdMUUdYek1jclZBSXdHemdGbTlPRDMvaHJ3a2g3OHZ1MjRQRHBBaG00bWp3V0FPMFVIVUo1c0FGUW1EdjdQTkFvNEQ5aTdSNzkvSzNKWjdKYVRTNklETk93YUhVQjVzZ0ZRV1RqNEQyd0NjQzZ3WVkrUE01d0h5ZU9qTnprNU96cEFndzJBQm1RRG9ESnc4Qi9hanVTeEQwSU9HOTdrNGhiZ3B1Z1FEYnRGQjFDZWJBQ1VPd2YvNXJ3ZG1GYndNZGQyZS9EeGMvSzk2QUFOazRqL3VWQ21iQUNVTXdmLzVvMEMzaHR3M1A3dUNENStMbFlDUDRnTzBiQWZhUjhBYVIwMkFNcVZnMy9yL2hFWUczajhSd09QblpNZmt0WkU1R0QvNkFES2x3MkFjdVRnMzU1TmdZTURqNzh3OE5pNVdBVjhNanBFUHdkRkIxQytiQUNVR3dmL3pod2FlR3diZ1BSYVppNXJJY1lBaDBTSFVMNXNBSlFUQi8vTzdSSjQ3RVdCeDg3QmF1QVQwU0g2ZVI0d01UcUU4bVVEb0Z3NCtIZkg1b0hIWGhsNDdCejhOM0JiZEloK1hoQWRRSG16QVZBT0hQeTdaM3pnc2NjRUhqdmFROENwMFNIV2tzczIwY3FVRFlDaU9maDMxeE9CeHg0WGVPeG83eUt2UnlCYmtWNEJsQVpsQTZCSUR2N2ROeWZ3MkpHdklFYjZPV254WDA2T3hmZi9OUXdiQUVWeDhPK05Xd09QWGNjRlovY0RiNG9PTVlEam93TW9mellBaXZBNUhQeDc1YmVCeDk0bThOZ1JsZ0d2Qk9aR0IxbkxGT0NGMFNHVXYxSFJBVlE3WndBZmlBN1JndEhBanlqSEhkVnM0SStCeDk4dThOZ1IzZzVjR3gxaUFQK0lmN2VyQ2M0QXFFamZBOTRDcklrTzBxUytPLzh5RFA0QTN5SDIzTlpwQnVBYndMZWpRd3ppeE9nQVVyUFdXTFdvUzBrRGFsbU1CczRuL3J3MVd3dUJUWHB5SnBwM1BmSG5vWWc2azN4dm52WWcvdnhZelZjb3A0bFVoTDhBSndBcm9vTTBxVXpUL24wK0Fqd1dlUHlSd0hNQ2oxK1VINU1XL2EyT0RqS0lrNk1EU0sySTdzQ3MzdGJEd0ZUS28yeDMvbXVBV2FRQk9OSjA0czlEcitzODhyNXAyZ0JZVFB4NXNwcXZVTGxPWTZrYVZwRHUvR2RIQjJsU21WYjc5N2tQZUMzcEszU1I5ZzArZnE5ZFFEclBPVzkzL0hwU0V5Q1ZSblFIWnZXdVRxRTh5bmpuUDQvWWovLzA5MDNpejBldjZuenlYNzh5Q3JpYitITmx0VmExRjMwQnJON1VEeW1Qc2c3K2UvVGlaTFRwVnVMUFNTK3FESU0vcEZmL29zK1YxWHJWWHZRRnNMcGZkMUtlcVVnSC84NU5JLzZjOUtMS012aVBBRzRpL254WnJWY28xd0NvMjFZQ3J3TWVqdzdTaEw3Vi9tVjY1ajhQT0JLNE9UcElQOGRGQitpQkM0RFhVSTQzVjE1QldvUXBsVTUwQjJaMXQyWlNEcU5KZjhsSG42OVdhaTU1M2ZuMytRM3g1NmFiVlpZN2YwaHZmOXhHL0RtejJxdmFpNzRBVnZmcU92SitUYXFQMC83ZHN4R3dsUGp6MDYwcTArQVBjQkx4NTh4cXYyb3YrZ0pZM2FrVndON2t6enYvN25vNzhlZW5XMVcyd1g4OGNDL3g1ODFxdjJvditnSlkzYWxQcjMxaE0rVGczMzAzRW4rT3VsRmxHL3dCUGs3OGViTTZxOXFMdmdCVzUzVVhNR0h0QzVzWnAvMjc3d0RpejFFM3FveUQvelRnS2VMUG5kVloxVjcwQmJBNnI5ejN6SGZ3NzQwemlEOVBuVllaQjMrQWk0Zy9kMWJuVlh2UkY4RHFyR2F0ZTBtejRyUi9iMndITENQK1hIVlNaUjM4WDB2OHViTzZVN1VYZlFHczltc1ZzTSs2bHpRYkR2NjljenJ4NTZxVEt1dmdQeGw0aFBqelozV25haS82QWxqdDE1a0RYTTljT08zZk85c0R5NGsvWCsxV1dRZC9nSE9KUDM5Vzk2cjJvaStBMVY2dEFKNDF3UFhNZ1lOL2IzMmIrUFBWYnBWNThIOFQ4ZWZQNm03Vlh2UUZzTnFyTXdhNm1CbHcyciszOWlOdDl4eDl6dHFwTWcvK3p3SVdFMzhPcmU1VzdVVmZBS3YxV2dIc09OREZERmJHTy84eURmNmpLTzk3LzJVZS9DZFEzdk51RFYyMUYzMEJyTmJybkFHdlpLeVJ3SStKUHpldFZKa0dmNEQzRW4vTzJxa3lELzRBM3lmK0hGcTlxZHFMdmdCVzYvVzhBYTlrck04VGYxNWFxYklOL3RPQUo0Zy9iNjFXMlFmL2R4Ti9EcTNlVmUxRlh3Q3J0YnB5NE1zWTZwK0pQeSt0Vk5rRy96SEFOY1NmdDFhcjdJUC9ETkxqdHVqemFQV3VhaS82QWxpdDFXc0d2b3hoRHFWY0c5S1ViZkFIK0JMeDU2M1Zxc0xnWCtaWExhM21xdmFpTDREVmZEMEtqQjM0TW9iWW5ISnRpbExHd1g4R3NKcjRjOWRLT2ZoYlphbmFpNzRBVnZQMXBVR3VZWlNmRUg5T21xMHlEdjU3QUF1SlAzZXRsSU8vVmFhcXZlZ0xZRFZmMHdlNWhoRk9JdjU4TkZ0emdkMTdjeHA2WmcvUzVrVFI1NjZWY3ZDM3lsYTFGMzBCck9icVQ0TmR3QUJiQWZPSlB5Zk5sSU4vTWVYZ2I1V3hRcTBYSFVDbDhlUG9BUDE4R2RnME9rUVQ1Z0V2Qkc2SkR0S0NQWURMU0IrZEtZc0xTSXRUVjBRSGFkTU0wdDRhWlc1Z3BMWkVkMkJXYzdYTFlCZXdZUHRUamtWcDN2a1hVOTc1VzJXdTJvdStBTmJ3ZGR1Z1Y2OTRzNGcvSDhOVldSZjhPZmdYeThIZnFyM29DMkFOWDU4YjlPb1Y2NlhFbjR2aHlqdi9Zc3JCMzZwQzFWNzBCYkNHcnhjT2V2V0tkUjN4NTJLbzhzNi9tSEx3dDZwU3RSZDlBYXloNnlsZy9LQlhyemdIRUg4dWhpcnYvSXNwQjMrclNoWEt0d0Ewbk44RFM2SkRBQ2RIQnhpQ3EvMkw0V3AvcVdLaU96QnI2UHJJNEpldU1KTkpUVWowdVJpb3ZQTXZwcnp6dDZwWW9ad0IwSEN1amc0QXZCNFlGeDFpQU43NUY4TTdmNm1pb2pzd2EvQmFCV3cwK0tVcnpGWEVuNHUxeXp2L1lzbzdmNnZLVlh2UkY4QWF2UDQ4eEhVcnl1YWtSaVQ2WFBRdkIvOWl5c0hmcW5xRjhoR0FocExEMVBaeDVQVnpPZzg0a2p6T1RiT2M5aStlMC83S1hrNS9zU28vT2V3QWVGeDBnSDRjL0l2aDRDOFZ3QVpBUTdrMStQZ2pnRU9DTS9RcDYrQi9LUTcrUlhMd1YybU1pZzZnclAwdCtQZzdrTWRYLzhvNitIdm5YeXdIZjVXS013QWF5dXpnNCs4WGZQdytiOExCdjljYy9LV0MyUUJvTVBPQng0TXo3Qk44ZklCemdZdWlRN1RBd2I5NER2NHFKUnNBRGVhKzZBREFyc0hIWHdLY0VweWhGVDd6TDU2RHYwckxOUUFhek1QUkFZQnRnNDkvSHZCUWNJWm1lZWRmUEFkL2xab3pBQnJNL09nQXdOYkJ4ejg5K1BqTmN2QXZub08vU3M4R1FJTjVMUGo0RTRCTkFvOC9HN2d5OFBqTmN0cS9lQTcrcWdRYkFBMW1RZkR4dHd3K2ZnNGZRUnBPMytDL1dYU1FGamo0UzVsd0RZQUdzelQ0K0dPRGozOU44UEdINDdSLzhSejhWU25PQUdnd3k0S1BILzJ6ZVdmdzhZZDVNNmgyQUFBUTJVbEVRVlRpdEgveEhQeFZPYzRBYURETGc0OGYvYlA1WlBEeEIrT2RmL0VjL0ZWSjBYZFp5dGZLNE9OSC8yd3VDVDcrUUx6ekw1NkR2eW9yK2k1TCtZcitDeTk2QU40dytQaHI4ODYvZUE3K3FyVG91eXpsSzNvUjNxUEJ4OThwK1BqOU9mZ1h6OEZmbFdjRG9NR01DVDcrQW1CMTRQRjNEangyZjA3N0Y4L0JYN1ZnQTZEQlRBZysvaXBpTnlNNkl2RFlmWHpQdjNnTy9xb05Hd0FOWmxKMEFHTDM0ZCtOTkFCSGNmQXZub08vYXNVR1FJUFpORG9BY0Z2dzhkOFRkRndILytJNStLdDJiQUEwbUJ4bUFHNE5QdjdyZ0gwS1B1YnVPUGdYemNGZnRXUURvTUZFNzhVUGNFdnc4ZGNEdmdlc1g5RHhkaWV0OW5md0w0NkR2MnJMQmtDRG1Sb2RnUGdHQUdBWDBpRFg2OWNpSGZ5TDUrQXZCVnRqWlZzNXZIcDJQL0huWVEzd2UzcDNQdllBNW1id1oyeWx6cWZjQStjTTBuYlgwZWZScW5lRmNnWkFRNWthSFFDNEpEcEF3eUhBRmNEMlhmNTlEd04raTNmK1JmTE9YOElHUUVON1RuUUE0T0xvQVAzc0RGd0hITk9GMzJzRThDNVNnN05KRjM2L29qajRTK3FhNkNrWWEvRDYxQkRYclNpYmtUWUZpajRYL1dzMWFYSGdObTMrbWZZaVBWS0kvbk8wV2s3N1cxWjNxL2FpTDRBMWVGMDB4SFVyMG0rSlB4Y0QxVExnRE5JMC9uQ3phZU9BNDRGZmtCcUk2T3l0bG9PL1pYVy9RbzJJRGtBR0owR0R1bzg4MWdHOEFmaHVkSWhoUEFaY0NmeUZ0S0J2TVdscWYydlNyb0lIQU9QRDBuWEdhWCtwTjBMSFlCc0FEV2NyWXJma0JaZ0lQRXh4NytQcmFRNytVdStFanNFdUF0UndEb3dPQUR4Sm1vSldzUno4cFFxekFkQndjbWdBQUw0UkhhQm1IUHlsaXJNQjBIQU9pUTdROEFmU0h2bnFQUWQvcVFaY0E2RGhyQUttQUF1aWd3Q0hBN09pUTFTY2c3OVVITmNBS0dzamdTT2lRelQ4bHZUK3ZIckR3VitxRVJzQU5lTkYwUUg2K1JET0d2V0NnNzlVTXpZQWFzWkx5T2RuNVhmQTk2TkRWSXlEdjFSRHJnRlFzdzRoYlhTVGc4MkJ2d0liUndlcEFBZC9LWTVyQUZRS0owUUg2T2NSNE1QUklTckF3VitxTVdjQTFLdzVwRzJCVjBjSGFSaEplaTN3OE9BY1plWGdMOFZ6QmtDbHNBMzV2QTBBNmZYRTE1QzJDRlpySFB3bDJRQ29KVytNRHJDV1I0RFhrcG9CTmNmQlh4SmdBNkRXekNCOTRTNG5zNEJQUlljb0NRZC9TWDluQTZCV2pBUCtLVHJFQUQ0S25CMGRJbk1PL3BLZXdVV0FhdFU5d0xQSmI5cDlOUEJUNEpqb0lCbHk4SmZ5NUNKQWxjbzA0TGpvRUFOWUFid1N1Q282U0dZYy9DVU55QVpBN1hoM2RJQkJQQVc4RExnMk9rZ21IUHdsRGNvR1FPMDRERGdvT3NRZzVnTkhBcitKRGhMc2ZCejhKUTNCQmtEdG1oa2RZQWhQQU1jQ1owUUhDZklWNE5VNCtFdkszQnFydEhYSUFOY3pKeU9BajVNV0xFYWZxeUpxS2ZENnJweTVPRE9BNWNTZlM4c3Fva0w1Rm9BNk1RdDRRWFNJSmh3RmZJLzBFYUdxZXBnMGVGNGRIYVFEM3ZtcmJud0xRS1YxQkhtK0ViQzJTNEE5Z0l1amcvVElqMGwvUGdkL1NhVVNQUVZqZFZhM1U1Ni90RWNDYndNZUkvNjhkYU1lSlMzMEt6dW4vYTI2VnUxRlh3Q3I4enBsbmF1YXQ4MkJNMGxmTm93K2QrM1VhdUNId0JiZFBqRUJIUHl0T2xmdFJWOEFxL042RE5oeTdRdGJBb2NDbHhOLy9scXBTNEI5ZW5FeUFqajRXM1d2Mm91K0FGWjM2cnkxTDJ5SkhFcmFOeUQ2SEE1VlY1RVdNMWFGZzc5bEtmd0NXTjJybDFGdSs1SDJEbGhNL0xsY1E5clo4RHRVNTQ2L2o0Ty9aYVVLNVd1QTZxYjdTYXZSRjBZSDZkQkUwaUQxQnVENXBNV0RSVmtGWEFsY0NKd0ZMQ2p3MkVWd3RiLzB0TkF4MkFaQTNYWTJjR0owaUM3YWhMUzE4TkdObXRxRFl6d01YQUZjQlB5Q3RKMXhGVG40Uzg5a0F4QWRRRjEzSXFrUnFLS3B3TzdBYm8xZmR5V3R4cC9NOERNRkR3TVBBbk9BMjREcmdPdEpNeWRWNStBdnJjc0dJRHFBdW00aHNDY3dPenBJd1NZM2FtTGozeDlyL0xvQ2VJVDAzTHVPSFB5bGdka0FSQWRRVDl4RSttTGdrdWdnQ3VYZ0x3M09yWUJWU1hzQ1g0NE9vVkFPL2xMR2JBRFVTMjhCM2hRZFFpRWMvS1hNK1FoQXZiWWNlREhweTRHcUJ3ZC9xVG11QVlnT29KNmJUMW9QOExmb0lPbzVCMytwZWE0QlVPVk5BbjRGVElrT29wNXk4SmRLeEFaQVJka0IrQ213UVhRUTlZU0R2MVF5TmdBcTBnR2ttWUNKdy8ySEtoVUhmNm1FYkFCVXRJT0JDNEN4MFVIVUZRNytVa25aQUNqQzBjQ1BzQWtvdTFmaDRDK1ZsbThCS05JczBpZUVuNGdPb3BiOUUvQmRZRlIwRUtuRWZBdEF0WFVFOEV0Z3crZ2dhc25Kd0prNCtFdWxaZ09nYUllU1pnSzJqQTZpWVkwQVBnNThIZi91a0VyUFJ3REt4WVBBc2NDTjBVRTBvREhBZDBoVC81SzZ3NTBBb3dNb0c0dUJFNENMbzRQb0dTYVIzdHc0TERxSVZER3VBWkFhTmlTdENaaUpQNXU1MkJPNEZnZC9xWEtjQVZDdUxnSk9BaFpHQjZteDF3SGZCQ1pFQjVFcXloa0FhUURIQWRjQWUwY0hxYUdKd0xlQnMzRHdseXJMQmtBNTJ4bjRBK21Sd01qWUtMV3hIM0FEOEtib0lKSjZ5MGNBS292TGdUY0E5OGJHcUt4UndBZUJqK0RPZmxKUmZBc2dPb0JLNHluU2UraWZCMVlGWjZtU3ZZRFRnWDJqZzBnMVl3TVFIVUNsY3ozd0w3aG5RS2MyQVA0RGVEcytZcEVpdUFoUWF0RytwQ2JnTEdDTDRDeGx0QjdwRFl2YmdYZmg0Qy9Wa2pNQUtydkZ3S2VBTHdGTGc3T1V3UkhBRjBqVC9wSmkrUWdnT29BcVlTNXdHdkFWWUVsd2xod2RCSnhLMm01WlVoNXNBS0lEcUZJZUFENU4rbFR0azhGWmN2Qjg0TitCbzZLRFNGcUhEVUIwQUZYU1l1Qi9TRzhNM0I4YnBYQ2pnWmNEN3dFT0NNNGlhWEEyQU5FQlZHa3JnQXVCTTRCTGdOV3hjWHBxQitDZkc3VjFjQlpKdzdNQmlBNmcycmlQOUdqZ0hPQ3Z3Vm02WlNQZ1phUk5rbzRnai85UFMycU9EVUIwQU5YU3JjQ1BTWis1dlNVNFM2c21rUmJ6dlpMMGJIOXNiQnhKYmJJQmlBNmcycHNEWEF6OEJwZ0Z6SXVOczQ0eHdQN0EwY0NMZ0gzdzNYMnBDbXdBb2dOSWEva2JjSFdqL2dqOG1iUU5jUkhXSXozTDN3TTRzRkg3QU9NS09yNms0dGdBUkFlUWhyRWF1SWYwcU9CdVlIYmozKzhESGdYbTAvd21ST3NCbTVLbThiY0dwalpxQjJBWDRMbjRDVjZwTG13QW9nTklYZkFVcVJGWVFXb1lGalgrOTNIQStNWS9iMHdhL0NVSmJBQnNBQ1JKdGVUSGdDUkpVckZzQUNSSnFpRWJBRW1TYXNnR1FKS2tHcklCa0NTcGhtd0FKRW1xSVJzQVNaSnF5QVpBa3FRYXNnR1FKS21HYkFBa1Nhb2hHd0JKa21vb2h3WmdWWFFBU1pJS0ZqNzI1ZEFBTEk4T0lFbFN3WlpGQjdBQmtDU3BlRFlBMkFCSWt1ckhCb0FNVG9Ja1NRVUx2L25Ob1FGWUhCMUFrcVNDTFlvT2tFTUQ4R2gwQUVtU0NoWSs5dGtBU0pKVXZQQ3h6d1pBa3FUaWhZOTlPVFFBODZNRFNKSlVzQVhSQVhKb0FPWkVCNUFrcVdEM1JRZklvUUc0SnpxQUpFa0ZDeC83YkFBa1NTcmV2ZEVCUmtRSEFNWUJUNUZIRmttU2VtMDFNSUhnamZCeW1BRllDandVSFVLU3BJSThRQWE3NE9iUUFBRGNHaDFBa3FTQzNCSWRBUEpwQUc2T0RpQkpVa0d5R1BOeWFRQ3k2SVlrU1NwQUZtTmVMZzFBRnQyUUpFa0Z5R0xNeTJYbC9SalNsNUhHUlFlUkpLbUhsZ0FiQVN1aWcrUXlBN0FjdUQ0NmhDUkpQZllITWhqOElaOEdBT0RLNkFDU0pQWFlGZEVCK3RnQVNKSlVuR3pHdWx6V0FBQk1BdWFSVnlaSmtycGxOV21zV3hnZEJQS2FBWmdQL0NrNmhDUkpQWEk5bVF6K2tGY0RBUERMNkFDU0pQWElyNklEOUpkYkE1RFZ5WkVrcVl1eUd1TnllOTQrRXBnTGJCb2RSSktrTG5vVTJBSllGUjJrVDI0ekFLdUFpNk5EU0pMVVpiOG1vOEVmOG1zQUFNNkxEaUJKVXBlZEd4MWdiYms5QW9DMEhmRERwSzBTSlVrcXU0V2s2ZjlsMFVINnkzRUdZQ2x3VVhRSVNaSzY1RUl5Ry93aHp3WUE0RWZSQVNSSjZwTHNwdjhoejBjQUFLT0ErNEF0bzROSWt0U0JoNER0Z0pYUlFkYVc2d3pBU3VETTZCQ1NKSFhvTzJRNCtFTytNd0FBT3dCM2tHK1RJa25TVU5ZQXp3YnVpZzR5a0p3SDE3dUJXZEVoSkVscTB5VmtPdmhEM2cwQXdOZWpBMGlTMUtadlJBY1lTczZQQUNBMUtMY0R6NG9PSWtsU0MvNEc3RUw2QkhDV2NwOEJXQTE4S1RxRUpFa3RPbzJNQjMvSWZ3WUFZQUl3RzVnY0hVU1NwQ2JNQmJZSGxnVG5HRkx1TXdBQVQrRmFBRWxTZVh5TnpBZC9LTWNNQUtUdkF0eU5ud21XSk9WdFB1azE5c1hSUVlaVGhoa0FnRVhBRjZORFNKSTBqTTlSZ3NFZnlqTURBTEErNlgzS0tkRkJKRWthd0R4Z1IrRHg2Q0ROR0JrZG9BWExHNzhlSFpwQ2txU0JmUWo0WFhTSVpwVnBCZ0JnREhBcmFXdEZTWkp5Y1Nld0d4bCs5bmN3WlZrRDBHYzU4UDdvRUpJa3JlVVVTalQ0US9sbUFQcjhCaDhGU0pMeWNDbHdWSFNJVnBXMUFkZ2R1QUVZRlIxRWtsUnJ5NEU5Z2I5RUIybFZtUllCOWpjWG1BZ2NFaDFFa2xSci93bWNGeDJpSFdXZEFRQVlDOXhJK3RpQ0pFbEZ1NTEwOTc4ME9rZzd5cllJc0w5bHdNbkFtdWdna3FUYVdRMjhtWklPL2xEZVJ3QjlaZ05iQXZ0R0I1RWsxY3JYZ1c5R2graEVtUjhCOUprSS9CSFlPVHFJSktrVy9rSzY4WHdxT2tnbnl2d0lvTStUd0d0NWVxZEFTWko2WlJsd0lpVWYvS0g4andENlBBU3NBbzZNRGlKSnFyUVBBQmRHaCtpR0tqd0M2TE1lYVlPZ0YwWUhrU1JWMHErQWwxS1J4ZWRWYWdBQU5nV3VCNlpGQjVFa1ZjcHNZQjlnZm5TUWJxbkNHb0QrRmdBemdDWFJRU1JKbGJHVU5MWlVadkNINnF3QjZPOWg0RUhnSDZLRFNKSXE0WTJrUjh5VlVzVUdBT0FtWUVQZ3dPZ2drcVJTK3d4d1duU0lYcWphR29EKzFpUHR6endqT29na3FaVE9BMTVEMnZXdmNxcmNBQUNNQnk3RG1RQkpVbXV1Qlk2Z0F1LzdENmJxRFFEQUZPQUs0Tm5SUVNSSnBmQlg0RkRnMGVnZ3ZWUzF0d0FHTWhkNEFYQlBkQkJKVXZidUExNU14UWQvcU1jTVFKOGRnZDhCVzBVSGtTUmw2UUhnTU9EdTZDQkZxTU1NUUorN2dLT0JlZEZCSkVuWm1Rc2NSVTBHZjZoWEF3QndHNm03ZXlBNmlDUXBHdytUdmlYemwrZ2dSYXJUSTREK3RpZTlIYkJEY0E1SlVxelpwRy9JM0JrZHBHaDFtd0hvY3kvcDlZNDdnbk5Ja3VMY0RoeENEUWQvcUc4REFHbWw1NEdrVndRbFNmVnlEZW1SOEp6b0lGSHEzQUJBK3JEREM0Rnpvb05Ja2dwelB1bjE4TG5SUVNKVjlWc0FyVmdGWE5ENDU4TURjMGlTZXU4cndKdUJGZEZCb3RrQVBPMjNwRmNGWHd5TWpvMGlTZXF5cGNCYmdVOEJhNEt6WktHdWJ3RU1aVS9Tak1DMDZDQ1NwSzY0RDNnbGNGMTBrSnpVZlEzQVFHNEM5Z011amc0aVNlcllyNEM5Y1BCZmg0OEFCcllFK0FId0dHbWhpT2RKa3NwbEJmQUowclIvWmIvbzF3a2ZBUXh2TitCc1lQZm9JSktrcHZ3VmVDMXdZM1NRbkhsbk83eTV3Rm5BSnNDKzJEUkpVcTVXQTE4SFRnRHVEODZTUFFlejFod01mQXZZSlRxSUpPa1o3Z1QrQlpnVkhhUXNuQUZvemYzQWQwaDdCeHlFNTArU29xMEVQZ2U4bXBwdTZkc3Vad0RhdHl2d1JkTG5JeVZKeGZzTjhHNXE5aFcvYnZFMXdQYmRCaHhOYWdEK0hKeEZrdXJrRHVCVnBJM2JIUHpiNUJSMjUrNG1QUlo0RE5nYm1CZ2JSNUlxYXk3d0llQ2ZnVnVDczVTZWp3QzZheUx3ZHVEOXdLYkJXU1NwS2hZQVh3Vk9BeFlIWjZrTUc0RGUyQWc0aGRRTVRBN09Ja2xsTlk4MDhIOFpCLzZ1c3dIb3JiR2tsYW1uQXM4SnppSkpaWEUzNmF0OTM4SmQvSHJHQnFBWTZ3RXZCLzRWT0JJWFgwclMybFlEbHdMZkFIN1crSGYxa0ExQThiWUJUZ1RlQm13WG5FV1NvajFFMm0zMWROS2R2d3BpQXhCbkZPazF3bGNELzBCYU55QkpkYkFRK0Fsd0xuQUphVE1mRmN3R0lBOWpTZSt6dmdwNEVUQXBObzRrZGQyandLK0I4MGdiK0N5TGpTTWJnUHlNQlBZSGptblUzcmhtUUZMNXJBYXVKdzM2djJ6ODg2clFSSG9HRzREOGJRQThEemlFOURHaWc0SHhvWWtrYVYwcmdKdUJLNEVyZ010STcrOHJVellBNVRPYTlEWEMzWUU5Z09uQWMwbUxDNzJla25wdE5UQ0h0QVg2bjBnNzh0MUMycEozUldBdXRjZ0JvenJHQWxPQmFjRDJwSVpnTXJCWjQ5ZEp3QVJnUTlKamh0SEEraEZCSldYbENkTEF2WXEwMmM1VHdIelNNL3Q1alYvbkFQY0E5d0t6OGZsOUpmd2ZzTFIyV2RGbTFYWUFBQUFBU1VWT1JLNUNZSUk9XCIgLz5cbiAgICAgIDwvZGVmcz5cbiAgICA8L3N2Zz5cbiAgICBAaWYoY29weU9mSW5wdXRBbGxGaWxlcyAmJiBjb3B5T2ZJbnB1dEFsbEZpbGVzLmxlbmd0aCA+IDApe1xuICAgIDxzcGFuIChjbGljayk9XCJvcGVuUG9wdXAoKVwiIHN0eWxlPVwidGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IGN1cnNvcjogcG9pbnRlcjtcIj5cbiAgICAgIHt7IGNvcHlPZklucHV0QWxsRmlsZXMubGVuZ3RoID09PSAxID8gJzEgRmlsZSBBdHRhY2hlZCcgOiAnKycgKyBjb3B5T2ZJbnB1dEFsbEZpbGVzLmxlbmd0aCArICcgRmlsZXMgQXR0YWNoZWQnIH19XG4gICAgPC9zcGFuPlxuICAgIH1cbiAgICBAZWxzZSBpZihtb2RlID09PSAnZWRpdCcpIHtcbiAgICA8ZGl2PiBBZGQgZmlsZXMgPC9kaXY+XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICA8ZGl2PiBObyBmaWxlcyBhdHRhY2hlZDwvZGl2PlxuICAgIH1cbiAgICA8YnV0dG9uICpuZ0lmPVwibW9kZSA9PT0gJ2VkaXQnICYmICFxdWVzdGlvbi5pc1JlYWRPbmx5XCIgXG4gICAgICAgICAgICAoY2xpY2spPVwiZmlsZUlucHV0LmNsaWNrKClcIiBcbiAgICAgICAgICAgIGNsYXNzPVwiYWRkLWJ0bi1pY29uXCJcbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwicGx1cy1pY29uXCI+Kzwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cblxuICAgIDxpbnB1dCAjZmlsZUlucHV0IHR5cGU9XCJmaWxlXCIgbmFtZT1cImZpbGVVcGxvYWRcIiBtdWx0aXBsZT1cIm11bHRpcGxlXCIgW2FjY2VwdF09XCJhbGxvd2VkRmlsZVR5cGVzLmpvaW4oJywnKVwiXG4gICAgICAgICAgc3R5bGU9XCJkaXNwbGF5Om5vbmU7XCIgKGNoYW5nZSk9XCJ1cGxvYWRNdWx0aXBsZUZpbGVzKCRldmVudClcIiAvPlxuICA8L2Rpdj5cbiAgPCEtLSBTS1MxM0pVTjI1IGVkaXQgaWNvbiAtLT5cbiAgPHN2ZyAqbmdJZj1cIm1vZGUgIT09ICdlZGl0JyAmJiAhdmlld0VkaXQgJiYgIXF1ZXN0aW9uLmlzUmVhZE9ubHlcIiBjbGFzcz1cImVkaXQtaWNvblwiIChjbGljayk9XCJ2aWV3RWRpdENsaWNrKHF1ZXN0aW9uKVwiXG4gICAgd2lkdGg9XCIxM1wiIGhlaWdodD1cIjE0XCIgdmlld0JveD1cIjAgMCAxMyAxNFwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCJcbiAgICAgIGQ9XCJNMS45OTk4NyA5LjAwMTdMNC4zOTYwMiAxMS4zOTc5QzQuNTAzNzEgMTEuNTA1NSA0LjY2NTI1IDExLjUwNTUgNC43NzI5NCAxMS4zOTc5TDEwLjc0OTkgNS4zOTQwMUMxMC44NTc2IDUuMjg2MzEgMTAuODU3NiA1LjEyNDc3IDEwLjc0OTkgNS4wMTcwOEw4LjM4MDY0IDIuNjQ3ODVDOC4yNzI5NCAyLjU0MDE2IDguMTExNDEgMi41NDAxNiA4LjAwMzcxIDIuNjQ3ODVMMS45OTk4NyA4LjY1MTdDMS44OTIxNyA4Ljc1OTM5IDEuODkyMTcgOC45MjA5MyAxLjk5OTg3IDkuMDAxN1pNOS4xNjE0IDEuNTQ0MDFDOS4wNTM3MSAxLjY1MTcgOS4wNTM3MSAxLjgxMzI0IDkuMTYxNCAxLjkyMDkzTDExLjUzMDYgNC4yOTAxNkMxMS42MzgzIDQuMzk3ODUgMTEuNzk5OSA0LjM5Nzg1IDExLjkwNzYgNC4yOTAxNkwxMi41ODA2IDMuNjE3MDhDMTMuMDExNCAzLjIxMzI0IDEzLjAxMTQgMi41NjcwOCAxMi41ODA2IDIuMTM2MzFMMTEuMzE1MyAwLjg3MDkyOEMxMC44ODQ1IDAuNDQwMTU5IDEwLjIxMTQgMC40NDAxNTkgOS43ODA2MyAwLjg3MDkyOEw5LjE2MTQgMS41NDQwMVpNMC4wMDc1NTg2MiAxMi45ODYzQy0wLjA0NjI4NzUgMTMuMjU1NSAwLjE5NjAyIDEzLjQ5NzkgMC40NjUyNTEgMTMuNDQ0TDMuMzk5ODcgMTIuNzQ0QzMuNTA3NTYgMTIuNzE3MSAzLjU4ODMzIDEyLjY2MzIgMy42NDIxNyAxMi42MDk0TDMuNjk2MDIgMTIuNTU1NUMzLjc0OTg3IDEyLjUwMTcgMy43NzY3OSAxMi4zMTMyIDMuNjY5MSAxMi4yMDU1TDEuMjQ2MDIgOS43ODI0N0MxLjEzODMzIDkuNjc0NzggMC45NDk4NjYgOS43MDE3IDAuODk2MDIgOS43NTU1NEwwLjg0MjE3NCA5LjgwOTM5QzAuNzYxNDA1IDkuODkwMTYgMC43MzQ0ODIgOS45NzA5MyAwLjcwNzU1OSAxMC4wNTE3TDAuMDA3NTU4NjIgMTIuOTg2M1pcIlxuICAgICAgZmlsbD1cIiNCMEFEQUJcIiAvPlxuICA8L3N2Zz5cbiAgPCEtLSBTS1MxM0pVTjI1IHNhdmUgYW5kIGNhbmNlbCBpY29ucyAtLT5cbiAgPGRpdiAqbmdJZj1cInZpZXdFZGl0XCIgKG1vdXNlZW50ZXIpPVwiaXNTYXZlSG92ZXJlZCA9IHRydWVcIiAobW91c2VsZWF2ZSk9XCJpc1NhdmVIb3ZlcmVkID0gZmFsc2VcIlxuICAgIHN0eWxlPVwicGFkZGluZy1yaWdodDogNXB4O1wiPlxuICAgIDxzdmcgKm5nSWY9XCIhaXNTYXZlSG92ZXJlZFwiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiXG4gICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgICA8cGF0aFxuICAgICAgICBkPVwiTTUuOTUwMiAwLjVDOC45NjAwNiAwLjUwMDEwNiAxMS40MDA0IDIuOTQwMzEgMTEuNDAwNCA1Ljk1MDJDMTEuNDAwMyA4Ljk1OTk5IDguOTU5OTkgMTEuNDAwMyA1Ljk1MDIgMTEuNDAwNEMyLjk0MDMxIDExLjQwMDQgMC41MDAxMDYgOC45NjAwNiAwLjUgNS45NTAyQzAuNSAyLjk0MDI0IDIuOTQwMjQgMC41IDUuOTUwMiAwLjVaXCJcbiAgICAgICAgc3Ryb2tlPVwiIzgzN0Y4RVwiIC8+XG4gICAgICA8cGF0aFxuICAgICAgICBkPVwiTTguODgxMTEgMy44NDU4M0M4LjgzMjY5IDMuNzk3MiA4Ljc3NTEzIDMuNzU4NiA4LjcxMTc2IDMuNzMyMjdDOC42NDgzOCAzLjcwNTk0IDguNTgwNDMgMy42OTIzOCA4LjUxMTggMy42OTIzOEM4LjQ0MzE3IDMuNjkyMzggOC4zNzUyMSAzLjcwNTk0IDguMzExODQgMy43MzIyN0M4LjI0ODQ2IDMuNzU4NiA4LjE5MDkxIDMuNzk3MiA4LjE0MjQ5IDMuODQ1ODNMNC44MjY5IDcuMTYzNDdMMy4zNTI1MyA1LjY4OTFDMy4zMDQwMyA1LjY0MDYgMy4yNDY0NiA1LjYwMjEzIDMuMTgzMDkgNS41NzU4OEMzLjExOTcyIDUuNTQ5NjQgMy4wNTE4MSA1LjUzNjEzIDIuOTgzMjIgNS41MzYxM0MyLjkxNDYzIDUuNTM2MTMgMi44NDY3MiA1LjU0OTY0IDIuNzgzMzUgNS41NzU4OEMyLjcxOTk5IDUuNjAyMTMgMi42NjI0MSA1LjY0MDYgMi42MTM5MSA1LjY4OTFDMi41NjU0MSA1LjczNzYgMi41MjY5NCA1Ljc5NTE4IDIuNTAwNjkgNS44NTg1NEMyLjQ3NDQ1IDUuOTIxOTEgMi40NjA5NCA1Ljk4OTgyIDIuNDYwOTQgNi4wNTg0MUMyLjQ2MDk0IDYuMTI3IDIuNDc0NDUgNi4xOTQ5MSAyLjUwMDY5IDYuMjU4MjhDMi41MjY5NCA2LjMyMTY1IDIuNTY1NDEgNi4zNzkyMiAyLjYxMzkxIDYuNDI3NzJMNC40NTY3NyA4LjI3MDU4QzQuNTA1MTkgOC4zMTkyMiA0LjU2Mjc0IDguMzU3ODEgNC42MjYxMiA4LjM4NDE0QzQuNjg5NSA4LjQxMDQ3IDQuNzU3NDUgOC40MjQwMyA0LjgyNjA4IDguNDI0MDNDNC44OTQ3MSA4LjQyNDAzIDQuOTYyNjYgOC40MTA0NyA1LjAyNjA0IDguMzg0MTRDNS4wODk0MiA4LjM1NzgxIDUuMTQ2OTcgOC4zMTkyMiA1LjE5NTM5IDguMjcwNThMOC44ODExMSA0LjU4NDQ1QzguOTI5NzQgNC41MzYwMyA4Ljk2ODM0IDQuNDc4NDggOC45OTQ2NyA0LjQxNTFDOS4wMjEgNC4zNTE3MyA5LjAzNDU2IDQuMjgzNzcgOS4wMzQ1NiA0LjIxNTE0QzkuMDM0NTYgNC4xNDY1MSA5LjAyMSA0LjA3ODU2IDguOTk0NjcgNC4wMTUxOEM4Ljk2ODM0IDMuOTUxOCA4LjkyOTc0IDMuODk0MjUgOC44ODExMSAzLjg0NTgzWlwiXG4gICAgICAgIGZpbGw9XCIjODM3RjhFXCIgLz5cbiAgICA8L3N2Zz5cblxuICAgIDxzdmcgKm5nSWY9XCJpc1NhdmVIb3ZlcmVkXCIgKGNsaWNrKT1cInNhdmVDaGFuZ2VzKClcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTNcIiB2aWV3Qm94PVwiMCAwIDEyIDEzXCIgZmlsbD1cIm5vbmVcIlxuICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgPHBhdGhcbiAgICAgICAgZD1cIk01Ljk1IDEyLjgwMDRDOS4yMzYwOSAxMi44MDA0IDExLjkgMTAuMTM2NSAxMS45IDYuODUwMzlDMTEuOSAzLjU2NDMgOS4yMzYwOSAwLjkwMDM5MSA1Ljk1IDAuOTAwMzkxQzIuNjYzOTEgMC45MDAzOTEgMCAzLjU2NDMgMCA2Ljg1MDM5QzAgMTAuMTM2NSAyLjY2MzkxIDEyLjgwMDQgNS45NSAxMi44MDA0WlwiXG4gICAgICAgIGZpbGw9XCIjMjU5NTY2XCIgLz5cbiAgICAgIDxwYXRoXG4gICAgICAgIGQ9XCJNOC44ODExMSA0Ljc0NjIyQzguODMyNjkgNC42OTc1OSA4Ljc3NTEzIDQuNjU4OTkgOC43MTE3NiA0LjYzMjY2QzguNjQ4MzggNC42MDYzMyA4LjU4MDQzIDQuNTkyNzcgOC41MTE4IDQuNTkyNzdDOC40NDMxNyA0LjU5Mjc3IDguMzc1MjEgNC42MDYzMyA4LjMxMTg0IDQuNjMyNjZDOC4yNDg0NiA0LjY1ODk5IDguMTkwOTEgNC42OTc1OSA4LjE0MjQ5IDQuNzQ2MjJMNC44MjY5IDguMDYzODZMMy4zNTI1MyA2LjU4OTQ5QzMuMzA0MDMgNi41NDA5OSAzLjI0NjQ2IDYuNTAyNTIgMy4xODMwOSA2LjQ3NjI3QzMuMTE5NzIgNi40NTAwMyAzLjA1MTgxIDYuNDM2NTIgMi45ODMyMiA2LjQzNjUyQzIuOTE0NjMgNi40MzY1MiAyLjg0NjcyIDYuNDUwMDMgMi43ODMzNSA2LjQ3NjI3QzIuNzE5OTkgNi41MDI1MiAyLjY2MjQxIDYuNTQwOTkgMi42MTM5MSA2LjU4OTQ5QzIuNTY1NDEgNi42Mzc5OSAyLjUyNjk0IDYuNjk1NTcgMi41MDA2OSA2Ljc1ODkzQzIuNDc0NDUgNi44MjIzIDIuNDYwOTQgNi44OTAyMiAyLjQ2MDk0IDYuOTU4OEMyLjQ2MDk0IDcuMDI3MzkgMi40NzQ0NSA3LjA5NTMxIDIuNTAwNjkgNy4xNTg2N0MyLjUyNjk0IDcuMjIyMDQgMi41NjU0MSA3LjI3OTYxIDIuNjEzOTEgNy4zMjgxMUw0LjQ1Njc3IDkuMTcwOTdDNC41MDUxOSA5LjIxOTYxIDQuNTYyNzQgOS4yNTgyIDQuNjI2MTIgOS4yODQ1M0M0LjY4OTUgOS4zMTA4NiA0Ljc1NzQ1IDkuMzI0NDIgNC44MjYwOCA5LjMyNDQyQzQuODk0NzEgOS4zMjQ0MiA0Ljk2MjY2IDkuMzEwODYgNS4wMjYwNCA5LjI4NDUzQzUuMDg5NDIgOS4yNTgyIDUuMTQ2OTcgOS4yMTk2MSA1LjE5NTM5IDkuMTcwOTdMOC44ODExMSA1LjQ4NDg0QzguOTI5NzQgNS40MzY0MiA4Ljk2ODM0IDUuMzc4ODcgOC45OTQ2NyA1LjMxNTQ5QzkuMDIxIDUuMjUyMTIgOS4wMzQ1NiA1LjE4NDE2IDkuMDM0NTYgNS4xMTU1M0M5LjAzNDU2IDUuMDQ2OSA5LjAyMSA0Ljk3ODk1IDguOTk0NjcgNC45MTU1N0M4Ljk2ODM0IDQuODUyMiA4LjkyOTc0IDQuNzk0NjUgOC44ODExMSA0Ljc0NjIyWlwiXG4gICAgICAgIGZpbGw9XCJ3aGl0ZVwiIC8+XG4gICAgPC9zdmc+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwidmlld0VkaXRcIiAobW91c2VlbnRlcik9XCJpc0Rpc2NhcmRIb3ZlcmVkID0gdHJ1ZVwiIChtb3VzZWxlYXZlKT1cImlzRGlzY2FyZEhvdmVyZWQgPSBmYWxzZVwiPlxuICAgIDxzdmcgKm5nSWY9XCIhaXNEaXNjYXJkSG92ZXJlZFwiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiXG4gICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgICA8cGF0aFxuICAgICAgICBkPVwiTTcuMDU1NTUgNC4wMDg4M0w1Ljk0IDUuMTI0MzhMNC44MjQ0NSA0LjAwODgzQzQuNTc4NjEgMy43NjI5OSA0LjE4MTkxIDMuNzYyOTkgMy45MzYwNyA0LjAwODgzQzMuNjkwMjMgNC4yNTQ2NyAzLjY5MDIzIDQuNjUxMzcgMy45MzYwNyA0Ljg5NzIxTDUuMDUxNjIgNi4wMTI3NkwzLjkzNjA3IDcuMTI4MzFDMy42OTAyMyA3LjM3NDE1IDMuNjkwMjMgNy43NzA4NSAzLjkzNjA3IDguMDE2NjlDNC4xODE5MSA4LjI2MjUzIDQuNTc4NjEgOC4yNjI1MyA0LjgyNDQ1IDguMDE2NjlMNS45NCA2LjkwMTE0TDcuMDU1NTUgOC4wMTY2OUM3LjMwMTM5IDguMjYyNTMgNy42OTgwOSA4LjI2MjUzIDcuOTQzOTMgOC4wMTY2OUM4LjE4OTc3IDcuNzcwODUgOC4xODk3NyA3LjM3NDE1IDcuOTQzOTMgNy4xMjgzMUw2LjgyODM4IDYuMDEyNzZMNy45NDM5MyA0Ljg5NzIxQzguMTg5NzcgNC42NTEzNyA4LjE4OTc3IDQuMjU0NjcgNy45NDM5MyA0LjAwODgzQzcuNjk4MDkgMy43NzI4NSA3LjMwMDIxIDMuNzcyODUgNy4wNTU1NSA0LjAwODgzWk01Ljk0IDAuMDgyMDMxMkMyLjcwMDE3IDAuMDgyMDMxMiAwLjA4MDg1OTQgMi43MDEzNCAwLjA4MDg1OTQgNS45NDExOEMwLjA4MDg1OTQgOS4xODEwMSAyLjcwMDE3IDExLjgwMDMgNS45NCAxMS44MDAzQzkuMTc5ODMgMTEuODAwMyAxMS43OTkxIDkuMTgxMDEgMTEuNzk5MSA1Ljk0MTE4QzExLjc5OTEgMi43MDEzNCA5LjE3OTgzIDAuMDgyMDMxMiA1Ljk0IDAuMDgyMDMxMlpNNS45NCAxMC42MzY3QzMuMzU0MjYgMTAuNjM2NyAxLjI0NDIyIDguNTI2NjcgMS4yNDQyMiA1Ljk0MTE4QzEuMjQ0MjIgMy4zNTU1MyAzLjM1NDI2IDEuMjQ1NDkgNS45NCAxLjI0NTQ5QzguNTI1NTggMS4yNDU0OSAxMC42MzU2IDMuMzU1NTMgMTAuNjM1NiA1Ljk0MTE4QzEwLjYzNTYgOC41MjY2NyA4LjUyNTU4IDEwLjYzNjcgNS45NCAxMC42MzY3WlwiXG4gICAgICAgIGZpbGw9XCIjQjBBREFCXCIgLz5cbiAgICA8L3N2Zz5cblxuICAgIDxzdmcgKm5nSWY9XCJpc0Rpc2NhcmRIb3ZlcmVkXCIgKGNsaWNrKT1cImRpc2NhcmRDaGFuZ2VzKClcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTNcIiB2aWV3Qm94PVwiMCAwIDEyIDEzXCIgZmlsbD1cIm5vbmVcIlxuICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgPHBhdGhcbiAgICAgICAgZD1cIk03LjA1NTU1IDQuOTc0NzFMNS45NCA2LjA5MDI2TDQuODI0NDUgNC45NzQ3MUM0LjU3ODYxIDQuNzI4ODcgNC4xODE5MSA0LjcyODg3IDMuOTM2MDcgNC45NzQ3MUMzLjY5MDIzIDUuMjIwNTUgMy42OTAyMyA1LjYxNzI1IDMuOTM2MDcgNS44NjMwOUw1LjA1MTYyIDYuOTc4NjRMMy45MzYwNyA4LjA5NDE5QzMuNjkwMjMgOC4zNDAwMyAzLjY5MDIzIDguNzM2NzMgMy45MzYwNyA4Ljk4MjU3QzQuMTgxOTEgOS4yMjg0MSA0LjU3ODYxIDkuMjI4NDEgNC44MjQ0NSA4Ljk4MjU3TDUuOTQgNy44NjcwMkw3LjA1NTU1IDguOTgyNTdDNy4zMDEzOSA5LjIyODQxIDcuNjk4MDkgOS4yMjg0MSA3Ljk0MzkzIDguOTgyNTdDOC4xODk3NyA4LjczNjczIDguMTg5NzcgOC4zNDAwMyA3Ljk0MzkzIDguMDk0MTlMNi44MjgzOCA2Ljk3ODY0TDcuOTQzOTMgNS44NjMwOUM4LjE4OTc3IDUuNjE3MjUgOC4xODk3NyA1LjIyMDU1IDcuOTQzOTMgNC45NzQ3MUM3LjY5ODA5IDQuNzM4NzMgNy4zMDAyMSA0LjczODczIDcuMDU1NTUgNC45NzQ3MVpNNS45NCAxLjA2MDYyQzIuNzAwMTcgMS4wNjA2MiAwLjA4MDg1OTQgMy42Nzk5MyAwLjA4MDg1OTQgNi45MTk3N0MwLjA4MDg1OTQgMTAuMTU5NiAyLjcwMDE3IDEyLjc3ODkgNS45NCAxMi43Nzg5QzkuMTc5ODMgMTIuNzc4OSAxMS43OTkxIDEwLjE1OTYgMTEuNzk5MSA2LjkxOTc3QzExLjc5OTEgMy42Nzk5MyA5LjE3OTgzIDEuMDYwNjIgNS45NCAxLjA2MDYyWk01Ljk0IDExLjYxNTNDMy4zNTQyNiAxMS42MTUzIDEuMjQ0MjIgOS41MDUyNSAxLjI0NDIyIDYuOTE5NzdDMS4yNDQyMiA0LjMzNDEyIDMuMzU0MjYgMi4yMjQwOCA1Ljk0IDIuMjI0MDhDOC41MjU1OCAyLjIyNDA4IDEwLjYzNTYgNC4zMzQxMiAxMC42MzU2IDYuOTE5NzdDMTAuNjM1NiA5LjUwNTI1IDguNTI1NTggMTEuNjE1MyA1Ljk0IDExLjYxNTNaXCJcbiAgICAgICAgZmlsbD1cIiNGRjM2MzZcIiAvPlxuICAgIDwvc3ZnPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwiY29sLWxnLTZcIiBzdHlsZT1cInBhZGRpbmc6MDttYXJnaW4tdG9wOiAxMHB4O1wiPlxuICA8IS0tIEVycm9yIG1lc3NhZ2VzIHNlY3Rpb24gLS0+XG4gIDxkaXYgY2xhc3M9XCJmaWxlLWNvbnN0cmFpbnRzXCIgKm5nSWY9XCJ2YWxpZGF0aW9uRXJyb3JzLmxlbmd0aCA+IDBcIj5cbiAgICA8c21hbGwgY2xhc3M9XCJ0ZXh0LWRhbmdlclwiPlxuICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgZXJyb3Igb2YgdmFsaWRhdGlvbkVycm9yc1wiPnt7IGVycm9yIH19PC9kaXY+XG4gICAgPC9zbWFsbD5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPGRpdiAqbmdJZj1cImVycm9yXCIgY2xhc3M9XCJlcnJvci1tc2dcIiBzdHlsZT1cIm1hcmdpbi10b3A6IDEwcHg7XCI+e3txdWVzdGlvbj8uZXJyb3JNZXNzYWdlfX08L2Rpdj5cblxuPCEtLSBTS1MxMUpVTjI1IEZpbGUgU2VsZWN0aW9uIFBvcHVwIE1vZGFsIC0tPlxuPGRpdiBjbGFzcz1cImZpbGUtcG9wdXAtb3ZlcmxheVwiICpuZ0lmPVwic2hvd1BvcHVwXCIgKGNsaWNrKT1cImNsb3NlUG9wdXAoKVwiPlxuICA8ZGl2IGNsYXNzPVwiZmlsZS1wb3B1cC1tb2RhbFwiIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cbiAgICA8IS0tIEhlYWRlciAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiZmlsZS1wb3B1cC1oZWFkZXJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC10aXRsZVwiPnt7cXVlc3Rpb24ucXVlc3Rpb25UZXh0fX08L2Rpdj5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJjbG9zZS1idG5cIiAoY2xpY2spPVwiY2xvc2VQb3B1cCgpXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiY2xvc2UtaWNvblwiPsOXPC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG5cbiAgICA8IS0tIFNLUzExSlVOMjUgQ29udGVudCAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiZmlsZS1wb3B1cC1jb250ZW50XCI+XG4gICAgICA8IS0tIFNLUzExSlVOMjUgTGVmdCBQYW5lbCAtIEZpbGUgTGlzdCAtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJmaWxlLWxpc3QtcGFuZWxcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZpbGUtaXRlbVwiICpuZ0Zvcj1cImxldCBmaWxlIG9mIGNvcHlPZklucHV0QWxsRmlsZXM7IGxldCBpID0gaW5kZXhcIlxuICAgICAgICAgIFtjbGFzcy5zZWxlY3RlZF09XCJjdXJyZW50RmlsZSA9PT0gZmlsZVwiIChjbGljayk9XCJ2aWV3RmlsZShmaWxlKVwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWxlLWljb25cIj5cbiAgICAgICAgICAgIDxpbWcgc3R5bGU9XCJ3aWR0aDogMjhweDtoZWlnaHQ6IDI4cHg7XCIgW3NyY109XCJnZXREb2NJY29uKGZpbGU/Lm5hbWUpXCI+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZpbGUtZGV0YWlsc1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpbGUtbmFtZVwiPnt7IGZpbGUubmFtZSB9fTwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgKm5nSWY9XCIhcXVlc3Rpb24uaXNSZWFkT25seVwiIGNsYXNzPVwiZmlsZS1hY3Rpb25zXCI+XG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYWN0aW9uLWJ0blwiIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7IGRlbGV0ZUZpbGUoaSlcIiB0aXRsZT1cIkRlbGV0ZVwiPlxuICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIj5cbiAgICAgICAgICAgICAgICA8cG9seWxpbmUgcG9pbnRzPVwiMyw2IDUsNiAyMSw2XCI+PC9wb2x5bGluZT5cbiAgICAgICAgICAgICAgICA8cGF0aCBkPVwibTE5LDZ2MTRhMiwyIDAgMCwxIC0yLDJIN2EyLDIgMCAwLDEgLTIsLTJWNm0zLDBWNGEyLDIgMCAwLDEgMiwtMmg0YTIsMiAwIDAsMSAyLDJ2MlwiPjwvcGF0aD5cbiAgICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPCEtLSBFbXB0eSBzdGF0ZSAtLT5cbiAgICAgICAgPGRpdiBjbGFzcz1cImVtcHR5LXN0YXRlXCIgKm5nSWY9XCIhY29weU9mSW5wdXRBbGxGaWxlcyB8fCBjb3B5T2ZJbnB1dEFsbEZpbGVzLmxlbmd0aCA9PT0gMFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJlbXB0eS1pY29uXCI+8J+ThDwvZGl2PlxuICAgICAgICAgIDxwPk5vIGZpbGVzIHNlbGVjdGVkPC9wPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPCEtLSBBZGQgQnV0dG9uIC0tPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYWRkLWJ0blwiIChjbGljayk9XCJmaWxlSW5wdXQuY2xpY2soKVwiIHRpdGxlPVwiQWRkIGZpbGVcIj5cbiAgICAgICAgICArIEFkZCBNb3JlIEZpbGVzXG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDwhLS0gU0tTMTFKVU4yNSBSaWdodCBQYW5lbCAtIFByZXZpZXcgLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsZS1wcmV2aWV3LXBhbmVsXCI+XG4gICAgICAgIEBpZihjdXJyZW50RmlsZSl7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwcmV2aWV3LWNvbnRlbnRcIj5cbiAgICAgICAgICBAaWYoaXNJbWFnZSAmJiBmaWxlVXJsKXtcbiAgICAgICAgICA8aW1nIFtzcmNdPVwiZmlsZVVybFwiIGNsYXNzPVwicHJldmlldy1pbWFnZVwiIGFsdD1cIkZpbGUgUHJldmlld1wiIC8+XG4gICAgICAgICAgfVxuICAgICAgICAgIEBlbHNlIGlmKGZpbGVVcmwpe1xuICAgICAgICAgIDxpZnJhbWUgW3NyY109XCJmaWxlVXJsXCIgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiNTAwcHhcIj48L2lmcmFtZT5cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2UgaWYoaXNMb2FkaW5nKXtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsb2FkaW5nLWluZGljYXRvclwiPlxuICAgICAgICAgICAgICA8cD5Mb2FkaW5nIHByZXZpZXcuLi48L3A+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzcGlubmVyXCI+PC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIDxkaXY+VW5hYmxlIHRvIGxvYWQgdGhlIGZpbGUgcHJldmlldy48L2Rpdj5cbiAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICAgIEBlbHNle1xuICAgICAgICA8ZGl2IGNsYXNzPVwibm8tcHJldmlld1wiPlxuICAgICAgICAgIDxwPlNlbGVjdCBhIGZpbGUgdG8gcHJldmlldzwvcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PiJdfQ==
|