@eui/core 17.0.0-next.6 → 17.0.0-next.8

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.
Files changed (62) hide show
  1. package/assets/i18n-eui/bg.json +2 -1
  2. package/assets/i18n-eui/cs.json +2 -1
  3. package/assets/i18n-eui/da.json +2 -1
  4. package/assets/i18n-eui/de.json +2 -1
  5. package/assets/i18n-eui/el.json +2 -1
  6. package/assets/i18n-eui/en.json +2 -1
  7. package/assets/i18n-eui/es.json +2 -1
  8. package/assets/i18n-eui/et.json +2 -1
  9. package/assets/i18n-eui/fi.json +2 -1
  10. package/assets/i18n-eui/fr.json +2 -1
  11. package/assets/i18n-eui/ga.json +2 -1
  12. package/assets/i18n-eui/hr.json +2 -1
  13. package/assets/i18n-eui/hu.json +2 -1
  14. package/assets/i18n-eui/it.json +2 -1
  15. package/assets/i18n-eui/lt.json +2 -1
  16. package/assets/i18n-eui/lv.json +2 -1
  17. package/assets/i18n-eui/mt.json +2 -1
  18. package/assets/i18n-eui/nl.json +2 -1
  19. package/assets/i18n-eui/pl.json +2 -1
  20. package/assets/i18n-eui/pt.json +2 -1
  21. package/assets/i18n-eui/readme.md +8 -0
  22. package/assets/i18n-eui/ro.json +2 -1
  23. package/assets/i18n-eui/sk.json +2 -1
  24. package/assets/i18n-eui/sl.json +2 -1
  25. package/assets/i18n-eui/sv.json +2 -1
  26. package/esm2022/lib/eui-core.module.mjs +6 -6
  27. package/esm2022/lib/interceptors/add-lang-param.interceptor.mjs +4 -4
  28. package/esm2022/lib/interceptors/cache-prevention.interceptor.mjs +3 -3
  29. package/esm2022/lib/interceptors/cors-security.interceptor.mjs +3 -3
  30. package/esm2022/lib/interceptors/csrf-prevention.interceptor.mjs +3 -3
  31. package/esm2022/lib/interceptors/eu-login-session-timeout-handling.interceptor.mjs +3 -3
  32. package/esm2022/lib/interceptors/openid/openid-connect.interceptor.mjs +5 -5
  33. package/esm2022/lib/interceptors/openid/openid-connect.service.mjs +4 -4
  34. package/esm2022/lib/interceptors/ux-request-error-model.interceptor.mjs +5 -5
  35. package/esm2022/lib/services/dynamic-component/dynamic-component.service.mjs +4 -4
  36. package/esm2022/lib/services/dynamic-menu/dynamic-menu.service.mjs +4 -4
  37. package/esm2022/lib/services/errors/global-error-handler.mjs +4 -4
  38. package/esm2022/lib/services/errors/http-error-handler.interceptor.mjs +5 -5
  39. package/esm2022/lib/services/eui-app-shell.service.mjs +6 -7
  40. package/esm2022/lib/services/eui-timezone.service.mjs +3 -3
  41. package/esm2022/lib/services/growl/eui-growl.service.mjs +3 -3
  42. package/esm2022/lib/services/i18n/i18n.loader.mjs +5 -5
  43. package/esm2022/lib/services/i18n/i18n.service.mjs +5 -5
  44. package/esm2022/lib/services/i18n/i18n.service.mock.mjs +4 -4
  45. package/esm2022/lib/services/locale/locale.service.mjs +5 -5
  46. package/esm2022/lib/services/locale/locale.service.mock.mjs +5 -5
  47. package/esm2022/lib/services/log/log.module.mjs +4 -4
  48. package/esm2022/lib/services/log/log.service.mjs +5 -5
  49. package/esm2022/lib/services/permission/permission.service.mjs +5 -5
  50. package/esm2022/lib/services/queue/api-queue.service.mjs +4 -4
  51. package/esm2022/lib/services/storage/local-forage.service.mjs +5 -5
  52. package/esm2022/lib/services/storage/local-storage.service.mjs +5 -5
  53. package/esm2022/lib/services/storage/session-storage.service.mjs +5 -5
  54. package/esm2022/lib/services/store/effects/app.effects.mjs +5 -5
  55. package/esm2022/lib/services/store/store.service.mjs +5 -5
  56. package/esm2022/lib/services/store/store.service.mock.mjs +4 -4
  57. package/esm2022/lib/services/user/user.service.mjs +4 -4
  58. package/esm2022/lib/services/user/user.service.mock.mjs +4 -4
  59. package/fesm2022/eui-core.mjs +142 -143
  60. package/fesm2022/eui-core.mjs.map +1 -1
  61. package/lib/services/eui-app-shell.service.d.ts.map +1 -1
  62. package/package.json +1 -1
@@ -54,13 +54,13 @@ export class EuiDynamicMenuService {
54
54
  return true;
55
55
  });
56
56
  }
57
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiDynamicMenuService, deps: [{ token: i1.EuiPermissionService }, { token: i2.StoreService }], target: i0.ɵɵFactoryTarget.Injectable }); }
58
- /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiDynamicMenuService, providedIn: 'root' }); }
57
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.7", ngImport: i0, type: EuiDynamicMenuService, deps: [{ token: i1.EuiPermissionService }, { token: i2.StoreService }], target: i0.ɵɵFactoryTarget.Injectable }); }
58
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0-next.7", ngImport: i0, type: EuiDynamicMenuService, providedIn: 'root' }); }
59
59
  }
60
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiDynamicMenuService, decorators: [{
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.7", ngImport: i0, type: EuiDynamicMenuService, decorators: [{
61
61
  type: Injectable,
62
62
  args: [{
63
63
  providedIn: 'root',
64
64
  }]
65
- }], ctorParameters: function () { return [{ type: i1.EuiPermissionService }, { type: i2.StoreService }]; } });
65
+ }], ctorParameters: () => [{ type: i1.EuiPermissionService }, { type: i2.StoreService }] });
66
66
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1tZW51LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2R5bmFtaWMtbWVudS9keW5hbWljLW1lbnUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxZQUFZLEVBQWUsTUFBTSxXQUFXLENBQUM7Ozs7QUFPdEQsTUFBTSxPQUFPLHFCQUFxQjtJQUc5Qiw4REFBOEQ7SUFDOUQsc0ZBQXNGO0lBQ3RGLFlBQ1ksYUFBbUMsRUFDbkMsS0FBbUI7UUFEbkIsa0JBQWEsR0FBYixhQUFhLENBQXNCO1FBQ25DLFVBQUssR0FBTCxLQUFLLENBQWM7UUFOL0IsY0FBUyxHQUFlLEVBQUUsQ0FBQztRQVF2QixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUMvQyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7Z0JBQ2hCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQzthQUNuQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFlBQVk7UUFDUixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDMUIsQ0FBQztJQUVELDRCQUE0QixDQUFDLEtBQXlCO1FBQ2xELE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ3pCLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtnQkFDbEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsNEJBQTRCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQ3BFO1lBRUQsNENBQTRDO1lBQzVDLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtnQkFDcEIsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUU7b0JBQ25ELE9BQU8sS0FBSyxDQUFDO2lCQUNoQjthQUNKO1lBQ0QsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUNyQixLQUFLLE1BQU0sYUFBYSxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7b0JBQzdDLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLEVBQUU7d0JBQzlDLE9BQU8sS0FBSyxDQUFDO3FCQUNoQjtpQkFDSjthQUNKO1lBRUQsZ0VBQWdFO1lBQ2hFLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRTtnQkFDckIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7YUFDN0Q7WUFDRCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUU7Z0JBQ3RCLEtBQUssTUFBTSxjQUFjLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtvQkFDL0MsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsRUFBRTt3QkFDL0MsT0FBTyxJQUFJLENBQUM7cUJBQ2Y7aUJBQ0o7Z0JBQ0QsNERBQTREO2dCQUM1RCxPQUFPLEtBQUssQ0FBQzthQUNoQjtZQUVELDZEQUE2RDtZQUM3RCxPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7d0lBekRRLHFCQUFxQjs0SUFBckIscUJBQXFCLGNBRmxCLE1BQU07O2tHQUVULHFCQUFxQjtrQkFIakMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBnZXRVc2VyU3RhdGUsIEV1aU1lbnVJdGVtIH0gZnJvbSAnQGV1aS9iYXNlJztcbmltcG9ydCB7IEV1aVBlcm1pc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vcGVybWlzc2lvbi9wZXJtaXNzaW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RvcmVTZXJ2aWNlIH0gZnJvbSAnLi4vc3RvcmUvc3RvcmUuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEV1aUR5bmFtaWNNZW51U2VydmljZSB7XG4gICAgbWVudUxpbmtzOiBBcnJheTxhbnk+ID0gW107XG5cbiAgICAvLyBUT0RPOiBpdCBzaG91bGQgYmUgbW92ZWQgZXVpc2VydmljZSwgb3IgaXQgc2hvdWxkIGJlIHN0YXRpY1xuICAgIC8vIFRPRE86IGNhbiB3ZSBtb3ZlZCB0aGF0IHNlcnZpY2UgaW5zaWRlIHRoZSBtb2R1bGUgb2YgdGhlIGNvbXBvbmVudCB0aGF0J3MgdXNpbmcgaXQ/XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZXVpUGVybWlzc2lvbjogRXVpUGVybWlzc2lvblNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlU2VydmljZVxuICAgICkge1xuICAgICAgICB0aGlzLnN0b3JlLnNlbGVjdChnZXRVc2VyU3RhdGUpLnN1YnNjcmliZSgodXNlcikgPT4ge1xuICAgICAgICAgICAgaWYgKHVzZXIubWVudUxpbmtzKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5tZW51TGlua3MgPSB1c2VyLm1lbnVMaW5rcztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0TWVudUxpbmtzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5tZW51TGlua3M7XG4gICAgfVxuXG4gICAgZmlsdGVyRXVpTWVudUl0ZW1zV2l0aFJpZ2h0cyhsaW5rczogQXJyYXk8RXVpTWVudUl0ZW0+KTogQXJyYXk8RXVpTWVudUl0ZW0+IHtcbiAgICAgICAgcmV0dXJuIGxpbmtzLmZpbHRlcigobGluaykgPT4ge1xuICAgICAgICAgICAgaWYgKGxpbmsuaGFzQ2hpbGRyZW4pIHtcbiAgICAgICAgICAgICAgICBsaW5rLmNoaWxkcmVuID0gdGhpcy5maWx0ZXJFdWlNZW51SXRlbXNXaXRoUmlnaHRzKGxpbmsuY2hpbGRyZW4pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBGaXJzdCBjaGVjayBpZiB0aGUgdXNlciBpcyBkZW5pZWQgYWNjZXNzOlxuICAgICAgICAgICAgaWYgKGxpbmsuZGVuaWVkUmlnaHRJZCkge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmV1aVBlcm1pc3Npb24uY2hlY2tSaWdodChsaW5rLmRlbmllZFJpZ2h0SWQpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAobGluay5kZW5pZWRSaWdodElkcykge1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgZGVuaWVkUmlnaHRJZCBvZiBsaW5rLmRlbmllZFJpZ2h0SWRzKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmV1aVBlcm1pc3Npb24uY2hlY2tSaWdodChkZW5pZWRSaWdodElkKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBUaGVuIGNoZWNrIGlmIHRoZSB1c2VyIG5lZWRzIHRvIGJlIGFsbG93ZWQgYWNjZXNzIGV4cGxpY2l0bHk6XG4gICAgICAgICAgICBpZiAobGluay5hbGxvd2VkUmlnaHRJZCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmV1aVBlcm1pc3Npb24uY2hlY2tSaWdodChsaW5rLmFsbG93ZWRSaWdodElkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChsaW5rLmFsbG93ZWRSaWdodElkcykge1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgYWxsb3dlZFJpZ2h0SWQgb2YgbGluay5hbGxvd2VkUmlnaHRJZHMpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZXVpUGVybWlzc2lvbi5jaGVja1JpZ2h0KGFsbG93ZWRSaWdodElkKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gVXNlciBkb2Vzbid0IGhhdmUgb25lIG9mIHRoZSBhbGxvd2VkIHJpZ2h0cy4gRGVueSBhY2Nlc3M6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBBY2Nlc3MgdG8gdGhlIG1lbnUgaXRlbSBpcyBub3QgZGVuaWVkLCB0aGVyZWZvcmUgYWxsb3cgaXQ6XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
@@ -12,13 +12,13 @@ export class GlobalErrorHandler extends ErrorHandler {
12
12
  // throw error;
13
13
  super.handleError(error);
14
14
  }
15
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: GlobalErrorHandler, deps: [{ token: i1.LogService }], target: i0.ɵɵFactoryTarget.Injectable }); }
16
- /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: GlobalErrorHandler, providedIn: 'root' }); }
15
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.7", ngImport: i0, type: GlobalErrorHandler, deps: [{ token: i1.LogService }], target: i0.ɵɵFactoryTarget.Injectable }); }
16
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0-next.7", ngImport: i0, type: GlobalErrorHandler, providedIn: 'root' }); }
17
17
  }
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: GlobalErrorHandler, decorators: [{
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.7", ngImport: i0, type: GlobalErrorHandler, decorators: [{
19
19
  type: Injectable,
20
20
  args: [{
21
21
  providedIn: 'root',
22
22
  }]
23
- }], ctorParameters: function () { return [{ type: i1.LogService }]; } });
23
+ }], ctorParameters: () => [{ type: i1.LogService }] });
24
24
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWVycm9yLWhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2Vycm9ycy9nbG9iYWwtZXJyb3ItaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBT3pELE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxZQUFZO0lBQ2hELFlBQXNCLFVBQXNCO1FBQ3hDLEtBQUssRUFBRSxDQUFDO1FBRFUsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUU1QyxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQVU7UUFDbEIsWUFBWTtRQUNaLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFFekQsZUFBZTtRQUNmLEtBQUssQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQzt3SUFYUSxrQkFBa0I7NElBQWxCLGtCQUFrQixjQUZmLE1BQU07O2tHQUVULGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFcnJvckhhbmRsZXIsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTG9nU2VydmljZSB9IGZyb20gJy4uL2xvZy9pbmRleCc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEdsb2JhbEVycm9ySGFuZGxlciBleHRlbmRzIEVycm9ySGFuZGxlciB7XG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIGxvZ1NlcnZpY2U6IExvZ1NlcnZpY2UpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBoYW5kbGVFcnJvcihlcnJvcjogYW55KSB7XG4gICAgICAgIC8vIGxvZyBlcnJvclxuICAgICAgICB0aGlzLmxvZ1NlcnZpY2UuZXJyb3IoZXJyb3IubWVzc2FnZSB8fCBlcnJvci50b1N0cmluZygpKTtcblxuICAgICAgICAvLyB0aHJvdyBlcnJvcjtcbiAgICAgICAgc3VwZXIuaGFuZGxlRXJyb3IoZXJyb3IpO1xuICAgIH1cbn1cbiJdfQ==
@@ -43,13 +43,13 @@ export class HttpErrorHandlerInterceptor {
43
43
  // return the first matching route, if any
44
44
  return routes.length > 0 ? routes[0] : null;
45
45
  }
46
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: HttpErrorHandlerInterceptor, deps: [{ token: HTTP_ERROR_HANDLER_CONFIG_TOKEN }, { token: i0.Injector }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
47
- /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: HttpErrorHandlerInterceptor }); }
46
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.7", ngImport: i0, type: HttpErrorHandlerInterceptor, deps: [{ token: HTTP_ERROR_HANDLER_CONFIG_TOKEN }, { token: i0.Injector }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
47
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0-next.7", ngImport: i0, type: HttpErrorHandlerInterceptor }); }
48
48
  }
49
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: HttpErrorHandlerInterceptor, decorators: [{
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.7", ngImport: i0, type: HttpErrorHandlerInterceptor, decorators: [{
50
50
  type: Injectable
51
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
51
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
52
52
  type: Inject,
53
53
  args: [HTTP_ERROR_HANDLER_CONFIG_TOKEN]
54
- }] }, { type: i0.Injector }, { type: i1.Router }]; } });
54
+ }] }, { type: i0.Injector }, { type: i1.Router }] });
55
55
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1lcnJvci1oYW5kbGVyLmludGVyY2VwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9lcnJvcnMvaHR0cC1lcnJvci1oYW5kbGVyLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxpQkFBaUIsRUFBd0QsTUFBTSxzQkFBc0IsQ0FBQztBQUcvRyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHckMsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7OztBQUd2RSxNQUFNLE9BQU8sMkJBQTJCO0lBQ3BDLFlBQ3VELFNBQWlDLGlDQUFpQyxFQUMzRyxRQUFrQixFQUNsQixNQUFjO1FBRjJCLFdBQU0sR0FBTixNQUFNLENBQTREO1FBQzNHLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtJQUN6QixDQUFDO0lBRUosU0FBUyxDQUFDLEdBQXFCLEVBQUUsSUFBaUI7UUFDOUMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FDeEIsR0FBRyxDQUNDLEdBQUcsRUFBRSxHQUFFLENBQUMsRUFDUixDQUFDLEtBQVUsRUFBRSxFQUFFO1lBQ1gsd0JBQXdCO1lBQ3hCLElBQUksS0FBSyxZQUFZLGlCQUFpQixFQUFFO2dCQUNwQyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMvQyxNQUFNLElBQUksR0FBRyxXQUFXLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFFL0UsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLEVBQUU7b0JBQzFCLHFCQUFxQjtvQkFDckIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUNoQztxQkFBTSxJQUFJLE9BQU8sSUFBSSxLQUFLLFVBQVUsRUFBRTtvQkFDbkMsb0JBQW9CO29CQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2lCQUN6QzthQUNKO1FBQ0wsQ0FBQyxDQUNKLENBQ0osQ0FBQztJQUNOLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNPLGNBQWMsQ0FBQyxLQUF3QjtRQUM3QyxvQkFBb0I7UUFDcEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDL0MsTUFBTSxLQUFLLEdBQUcsSUFBSSxNQUFNLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQztZQUN2RSxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLFdBQVcsSUFBSSxPQUFPLEtBQUssQ0FBQyxPQUFPLEtBQUssV0FBVyxDQUFDLENBQUM7UUFDekgsQ0FBQyxDQUFDLENBQUM7UUFDSCwwQ0FBMEM7UUFDMUMsT0FBTyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDaEQsQ0FBQzt3SUE1Q1EsMkJBQTJCLGtCQUV4QiwrQkFBK0I7NElBRmxDLDJCQUEyQjs7a0dBQTNCLDJCQUEyQjtrQkFEdkMsVUFBVTs7MEJBR0YsTUFBTTsyQkFBQywrQkFBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSwgSHR0cEV2ZW50LCBIdHRwSGFuZGxlciwgSHR0cEludGVyY2VwdG9yLCBIdHRwUmVxdWVzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEh0dHBFcnJvckhhbmRsZXJDb25maWcsIEh0dHBFcnJvclJvdXRlQ29uZmlnIH0gZnJvbSAnQGV1aS9iYXNlJztcbmltcG9ydCB7IEhUVFBfRVJST1JfSEFORExFUl9DT05GSUdfVE9LRU4gfSBmcm9tICcuLi9jb25maWcvdG9rZW5zJztcbmltcG9ydCB7IERFRkFVTFRfSFRUUF9FUlJPUl9IQU5ETEVSX0NPTkZJRyB9IGZyb20gJy4uL2NvbmZpZy9kZWZhdWx0cyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBIdHRwRXJyb3JIYW5kbGVySW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KEhUVFBfRVJST1JfSEFORExFUl9DT05GSUdfVE9LRU4pIHByb3RlY3RlZCBjb25maWc6IEh0dHBFcnJvckhhbmRsZXJDb25maWcgPSBERUZBVUxUX0hUVFBfRVJST1JfSEFORExFUl9DT05GSUcsXG4gICAgICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgIHByb3RlY3RlZCByb3V0ZXI6IFJvdXRlclxuICAgICkge31cblxuICAgIGludGVyY2VwdChyZXE6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xuICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxKS5waXBlKFxuICAgICAgICAgICAgdGFwKFxuICAgICAgICAgICAgICAgICgpID0+IHt9LFxuICAgICAgICAgICAgICAgIChlcnJvcjogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGluIGNhc2Ugb2YgaHR0cCBlcnJvclxuICAgICAgICAgICAgICAgICAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBIdHRwRXJyb3JSZXNwb25zZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm91dGVDb25maWcgPSB0aGlzLmdldFJvdXRlQ29uZmlnKGVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJ1bGUgPSByb3V0ZUNvbmZpZyAmJiAocm91dGVDb25maWdbZXJyb3Iuc3RhdHVzXSB8fCByb3V0ZUNvbmZpZy5kZWZhdWx0KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBydWxlID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHBlcmZvcm0gYSByZWRpcmVjdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtydWxlXSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBydWxlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gY2FsbGJhY2sgZnVuY3Rpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBydWxlLmNhbGwobnVsbCwgZXJyb3IsIHRoaXMuaW5qZWN0b3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNlYXJjaCBpbiB0aGUgY29uZmlndXJhdGlvbiBmb3IgdGhlIGZpcnN0IG1hdGNoaW5nIHJvdXRlXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZXJyb3IgaHR0cCBlcnJvciByZXNwb25zZVxuICAgICAqIEByZXR1cm5zIEh0dHBFcnJvclJvdXRlQ29uZmlnIG9yIG51bGxcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgZ2V0Um91dGVDb25maWcoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKTogSHR0cEVycm9yUm91dGVDb25maWcgfCBudWxsIHtcbiAgICAgICAgLy8gZmlsdGVyIHRoZSByb3V0ZXNcbiAgICAgICAgY29uc3Qgcm91dGVzID0gdGhpcy5jb25maWcucm91dGVzLmZpbHRlcigocm91dGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJlZ2V4ID0gbmV3IFJlZ0V4cCgnXicgKyByb3V0ZS5wYXRoLnNwbGl0KCcqJykuam9pbignLionKSArICckJyk7XG4gICAgICAgICAgICByZXR1cm4gcmVnZXgudGVzdChlcnJvci51cmwpICYmICh0eXBlb2Ygcm91dGVbZXJyb3Iuc3RhdHVzXSAhPT0gJ3VuZGVmaW5lZCcgfHwgdHlwZW9mIHJvdXRlLmRlZmF1bHQgIT09ICd1bmRlZmluZWQnKTtcbiAgICAgICAgfSk7XG4gICAgICAgIC8vIHJldHVybiB0aGUgZmlyc3QgbWF0Y2hpbmcgcm91dGUsIGlmIGFueVxuICAgICAgICByZXR1cm4gcm91dGVzLmxlbmd0aCA+IDAgPyByb3V0ZXNbMF0gOiBudWxsO1xuICAgIH1cbn1cbiJdfQ==
@@ -212,7 +212,6 @@ export class EuiAppShellService {
212
212
  breakpoint,
213
213
  breakpoints,
214
214
  combinedLinks,
215
- appBaseFontSize: this.getBaseFontSize(),
216
215
  });
217
216
  // update the Store Language
218
217
  if (updateI18 && nextState.activeLanguage !== stateBeforeUpdate.activeLanguage) {
@@ -554,15 +553,15 @@ export class EuiAppShellService {
554
553
  }
555
554
  });
556
555
  }
557
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiAppShellService, deps: [{ token: GLOBAL_CONFIG_TOKEN, optional: true }, { token: i1.HttpClient }, { token: PLATFORM_ID }, { token: i2.Router }, { token: i3.StoreService }, { token: i4.I18nService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
558
- /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiAppShellService, providedIn: 'root' }); }
556
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.7", ngImport: i0, type: EuiAppShellService, deps: [{ token: GLOBAL_CONFIG_TOKEN, optional: true }, { token: i1.HttpClient }, { token: PLATFORM_ID }, { token: i2.Router }, { token: i3.StoreService }, { token: i4.I18nService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
557
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0-next.7", ngImport: i0, type: EuiAppShellService, providedIn: 'root' }); }
559
558
  }
560
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiAppShellService, decorators: [{
559
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.7", ngImport: i0, type: EuiAppShellService, decorators: [{
561
560
  type: Injectable,
562
561
  args: [{
563
562
  providedIn: 'root',
564
563
  }]
565
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
564
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
566
565
  type: Optional
567
566
  }, {
568
567
  type: Inject,
@@ -572,5 +571,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.4",
572
571
  args: [PLATFORM_ID]
573
572
  }] }, { type: i2.Router }, { type: i3.StoreService }, { type: i4.I18nService, decorators: [{
574
573
  type: Optional
575
- }] }]; } });
576
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLWFwcC1zaGVsbC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9ldWktYXBwLXNoZWxsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUMxRCxPQUFPLEVBQUUsY0FBYyxFQUFnQixhQUFhLEVBQTRCLE1BQU0sV0FBVyxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXRELE9BQU8sRUFBVSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV4RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxPQUFPLE1BQU0sbUJBQW1CLENBQUM7QUFDeEMsT0FBTyxHQUFHLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFnRWhDLE1BQU0sWUFBWSxHQUFZO0lBQzFCLE9BQU8sRUFBRSxFQUFFO0lBQ1gsWUFBWSxFQUFFLEVBQUU7SUFDaEIsV0FBVyxFQUFFLEVBQUU7SUFDZixlQUFlLEVBQUUsRUFBRTtJQUNuQixTQUFTLEVBQUUsSUFBSTtJQUNmLFlBQVksRUFBRSxJQUFJO0lBQ2xCLHFCQUFxQixFQUFFLElBQUk7SUFDM0IsYUFBYSxFQUFFLElBQUk7SUFDbkIsY0FBYyxFQUFFLEtBQUs7SUFDckIsZUFBZSxFQUFFLEtBQUs7SUFDdEIsb0JBQW9CLEVBQUUsS0FBSztJQUMzQiw0QkFBNEIsRUFBRSxLQUFLO0lBQ25DLHNCQUFzQixFQUFFLElBQUk7SUFDNUIsVUFBVSxFQUFF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LE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRTtZQUM3RCxJQUFJLFVBQVUsS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRTtnQkFDMUMsSUFBSSxDQUFDLFFBQVEsQ0FDVDtvQkFDSSxHQUFHLElBQUksQ0FBQyxLQUFLO29CQUNiLGNBQWMsRUFBRSxVQUFVO2lCQUM3QixFQUNELEtBQUssQ0FDUixDQUFDO2FBQ0w7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7d0lBN2pCUSxrQkFBa0Isa0JBK0dILG1CQUFtQix1REFFL0IsV0FBVzs0SUFqSGQsa0JBQWtCLGNBRmYsTUFBTTs7a0dBRVQsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7MEJBZ0hRLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsbUJBQW1COzswQkFFdEMsTUFBTTsyQkFBQyxXQUFXOzswQkFHbEIsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwsIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBkZWZlciwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRXVpRXVMYW5ndWFnZXMsIEdsb2JhbENvbmZpZywgZ2V0QWN0aXZlTGFuZywgRXVpTGFuZ3VhZ2UsIEV1aU1lbnVJdGVtIH0gZnJvbSAnQGV1aS9iYXNlJztcbmltcG9ydCB7IEdMT0JBTF9DT05GSUdfVE9LRU4gfSBmcm9tICcuL2NvbmZpZy90b2tlbnMnO1xuaW1wb3J0IHsgSTE4blNlcnZpY2UgfSBmcm9tICcuL2kxOG4nO1xuaW1wb3J0IHsgUm91dGVyLCBOYXZpZ2F0aW9uRW5kIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFN0b3JlU2VydmljZSB9IGZyb20gJy4vc3RvcmUvc3RvcmUuc2VydmljZSc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IGlzRXF1YWwgZnJvbSAnbG9kYXNoLWVzL2lzRXF1YWwnO1xuaW1wb3J0IGdldCBmcm9tICdsb2Rhc2gtZXMvZ2V0JztcblxuZXhwb3J0IGludGVyZmFjZSBVSVN0YXRlIHtcbiAgICAvLyBhcHAgc3RhdGVcbiAgICBhcHBOYW1lPzogc3RyaW5nO1xuICAgIGFwcFNob3J0TmFtZT86IHN0cmluZztcbiAgICBhcHBTdWJUaXRsZT86IHN0cmluZztcbiAgICBhcHBCYXNlRm9udFNpemU/OiBzdHJpbmc7XG5cbiAgICAvLyB1c2VyIHN0YXRlXG4gICAgdXNlckluZm9zPzogc3RyaW5nO1xuICAgIHVzZXJTdWJJbmZvcz86IHN0cmluZztcbiAgICBpbXBlcnNvbmF0ZWRVc2VySW5mb3M/OiBzdHJpbmc7XG5cbiAgICAvLyBTaWRlYmFyIHN0YXRlXG4gICAgaXNTaWRlYmFyT3Blbj86IGJvb2xlYW47XG4gICAgaXNTaWRlYmFySG92ZXI/OiBib29sZWFuO1xuICAgIGlzU2lkZWJhckFjdGl2ZT86IGJvb2xlYW47XG4gICAgaXNTaWRlYmFySW5uZXJBY3RpdmU/OiBib29sZWFuO1xuICAgIGlzU2lkZWJhclN0YXRlQ2xvc2VXaXRoSWNvbnM/OiBib29sZWFuO1xuICAgIGlzU2lkZWJhckV4cGFuZE9uSG92ZXI/OiBib29sZWFuO1xuICAgIGhhc1NpZGViYXI/OiBib29sZWFuO1xuICAgIGhhc0JyZWFkY3J1bWI/OiBib29sZWFuO1xuICAgIGhhc0hlYWRlcj86IGJvb2xlYW47XG4gICAgaGFzSGVhZGVyTG9nbz86IGJvb2xlYW47XG4gICAgaGFzSGVhZGVyRW52aXJvbm1lbnQ/OiBib29sZWFuO1xuICAgIGhhc1Rvb2xiYXI/OiBib29sZWFuO1xuICAgIGhhc1Rvb2xiYXJNZW51PzogYm9vbGVhbjtcbiAgICBlbnZpcm9ubWVudFZhbHVlPzogc3RyaW5nO1xuICAgIGlzU2lkZWJhckhpZGRlbj86IGJvb2xlYW47XG4gICAgaGFzVG9wTWVzc2FnZT86IGJvb2xlYW47XG5cbiAgICAvLyB3aW5kb3cgc3RhdGVcbiAgICB3aW5kb3dXaWR0aD86IG51bWJlcjtcbiAgICB3aW5kb3dIZWlnaHQ/OiBudW1iZXI7XG4gICAgbWFpbkNvbnRlbnRIZWlnaHQ/OiBudW1iZXI7XG4gICAgcGFnZUhlYWRlckhlaWdodD86IG51bWJlcjtcbiAgICBicmVha3BvaW50Pzogc3RyaW5nO1xuICAgIHdyYXBwZXJDbGFzc2VzPzogc3RyaW5nO1xuICAgIGJyZWFrcG9pbnRzPzogYW55O1xuXG4gICAgLy8gbmF2aWdhdGlvbiBzdGF0ZVxuICAgIG1lbnVMaW5rcz86IEV1aU1lbnVJdGVtW107XG4gICAgc2lkZWJhckxpbmtzPzogRXVpTWVudUl0ZW1bXTtcbiAgICBjb21iaW5lZExpbmtzPzogRXVpTWVudUl0ZW1bXTtcblxuICAgIC8vIG90aGVyIHN0YXRlc1xuICAgIGlzQmxvY2tEb2N1bWVudEFjdGl2ZT86IGJvb2xlYW47XG5cbiAgICAvLyBkZXZpY2UgaW5mb1xuICAgIGRldmljZUluZm86IGFueTtcblxuICAgIC8vIGxhbmd1YWdlIGluZm9zXG4gICAgYWN0aXZlTGFuZ3VhZ2U6IHN0cmluZztcbiAgICBsYW5ndWFnZXM6IChzdHJpbmcgfCBFdWlMYW5ndWFnZSlbXTtcblxuICAgIC8vIGFwcCBtZXRhZGF0YVxuICAgIGFwcE1ldGFkYXRhOiBhbnk7XG5cbiAgICAvLyB2YXJpb3VzIGR5bmFtaWMgc3RhdGVcbiAgICBoYXNNb2RhbEFjdGl2ZT86IGJvb2xlYW47XG4gICAgaXNEaW1tZXJBY3RpdmU/OiBib29sZWFuOyAvLyBVc2FnZTogbWFwIHRvIGV1aSBiYXNlIGRpcmVjdGl2ZSBpbnB1dCBjb2VyY2UgZXVpSGlnaGxpZ2h0ZWRcbn1cblxuY29uc3QgaW5pdGlhbFN0YXRlOiBVSVN0YXRlID0ge1xuICAgIGFwcE5hbWU6ICcnLFxuICAgIGFwcFNob3J0TmFtZTogJycsXG4gICAgYXBwU3ViVGl0bGU6ICcnLFxuICAgIGFwcEJhc2VGb250U2l6ZTogJycsXG4gICAgdXNlckluZm9zOiBudWxsLFxuICAgIHVzZXJTdWJJbmZvczogbnVsbCxcbiAgICBpbXBlcnNvbmF0ZWRVc2VySW5mb3M6IG51bGwsXG4gICAgaXNTaWRlYmFyT3BlbjogdHJ1ZSxcbiAgICBpc1NpZGViYXJIb3ZlcjogZmFsc2UsXG4gICAgaXNTaWRlYmFyQWN0aXZlOiBmYWxzZSxcbiAgICBpc1NpZGViYXJJbm5lckFjdGl2ZTogZmFsc2UsXG4gICAgaXNTaWRlYmFyU3RhdGVDbG9zZVdpdGhJY29uczogZmFsc2UsXG4gICAgaXNTaWRlYmFyRXhwYW5kT25Ib3ZlcjogdHJ1ZSxcbiAgICBoYXNTaWRlYmFyOiBmYWxzZSxcbiAgICBoYXNIZWFkZXI6IGZhbHNlLFxuICAgIGhhc0JyZWFkY3J1bWI6IGZhbHNlLFxuICAgIGhhc0hlYWRlckxvZ286IGZhbHNlLFxuICAgIGhhc0hlYWRlckVudmlyb25tZW50OiBmYWxzZSxcbiAgICBoYXNUb29sYmFyOiBmYWxzZSxcbiAgICBoYXNUb29sYmFyTWVudTogZmFsc2UsXG4gICAgZW52aXJvbm1lbnRWYWx1ZTogJycsXG4gICAgaXNTaWRlYmFySGlkZGVuOiBmYWxzZSxcbiAgICBoYXNUb3BNZXNzYWdlOiBmYWxzZSxcbiAgICB3aW5kb3dXaWR0aDogMCxcbiAgICB3aW5kb3dIZWlnaHQ6IDAsXG4gICAgbWFpbkNvbnRlbnRIZWlnaHQ6IDAsXG4gICAgcGFnZUhlYWRlckhlaWdodDogMCxcbiAgICB3cmFwcGVyQ2xhc3NlczogJycsXG4gICAgYnJlYWtwb2ludDogJycsXG4gICAgYnJlYWtwb2ludHM6IHtcbiAgICAgICAgaXNNb2JpbGU6IGZhbHNlLFxuICAgICAgICBpc1RhYmxldDogZmFsc2UsXG4gICAgICAgIGlzTHREZXNrdG9wOiBmYWxzZSxcbiAgICAgICAgaXNEZXNrdG9wOiBmYWxzZSxcbiAgICAgICAgaXNYTDogZmFsc2UsXG4gICAgICAgIGlzWFhMOiBmYWxzZSxcbiAgICAgICAgaXNGSEQ6IGZhbHNlLFxuICAgICAgICBpczJLOiBmYWxzZSxcbiAgICAgICAgaXM0SzogZmFsc2UsXG4gICAgfSxcbiAgICBtZW51TGlua3M6IFtdLFxuICAgIHNpZGViYXJMaW5rczogW10sXG4gICAgY29tYmluZWRMaW5rczogW10sXG4gICAgaXNCbG9ja0RvY3VtZW50QWN0aXZlOiBmYWxzZSxcbiAgICBkZXZpY2VJbmZvOiBudWxsLFxuICAgIGFjdGl2ZUxhbmd1YWdlOiAnZW4nLFxuICAgIGxhbmd1YWdlczogRXVpRXVMYW5ndWFnZXMuZ2V0TGFuZ3VhZ2VzKCksXG4gICAgYXBwTWV0YWRhdGE6IG51bGwsXG4gICAgaGFzTW9kYWxBY3RpdmU6IGZhbHNlLFxuICAgIGlzRGltbWVyQWN0aXZlOiBmYWxzZSxcbn07XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEV1aUFwcFNoZWxsU2VydmljZSB7XG4gICAgbmF2aWdhdGlvblN0YXJ0Q3VzdG9tSGFuZGxlcjogKCkgPT4gdm9pZDtcbiAgICBuYXZpZ2F0aW9uRW5kQ3VzdG9tSGFuZGxlcjogKCkgPT4gdm9pZDtcblxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBnZXQgc3RhdGUkKCk6IE9ic2VydmFibGU8VUlTdGF0ZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc3RhdGUkLmFzT2JzZXJ2YWJsZSgpO1xuICAgIH1cblxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBleHBvc2VkIG9ic2VydmFibGVzXG5cbiAgICBnZXQgYnJlYWtwb2ludCQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2JyZWFrcG9pbnQkLmFzT2JzZXJ2YWJsZSgpO1xuICAgIH1cblxuICAgIGdldCBicmVha3BvaW50cyQoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2JyZWFrcG9pbnRzJC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gc3RhdGUgb3BlcmF0aW9uc1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS1cbiAgICBnZXQgc3RhdGUoKTogVUlTdGF0ZSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zdGF0ZSQuZ2V0VmFsdWUoKTtcbiAgICB9XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gcHVibGljIHNldHRlcnMgYW5kIGZ1bmN0aW9uc1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBzZXQgaXNTaWRlYmFyT3Blbihpc09wZW46IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgICAgICAuLi50aGlzLnN0YXRlLFxuICAgICAgICAgICAgaXNTaWRlYmFyT3BlbjogaXNPcGVuLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXQgaXNTaWRlYmFyT3BlbigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RhdGUuaXNTaWRlYmFyT3BlbjtcbiAgICB9XG5cbiAgICBzZXQgaXNTaWRlYmFySG92ZXIoaXNIb3ZlcjogYm9vbGVhbikge1xuICAgICAgICBpZiAodGhpcy5zdGF0ZS5pc1NpZGViYXJFeHBhbmRPbkhvdmVyKSB7XG4gICAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgICAgICAgICAuLi50aGlzLnN0YXRlLFxuICAgICAgICAgICAgICAgIGlzU2lkZWJhckhvdmVyOiBpc0hvdmVyLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXQgaXNTaWRlYmFySG92ZXIoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0YXRlLmlzU2lkZWJhckhvdmVyO1xuICAgIH1cblxuICAgIHNldCBpc1NpZGViYXJBY3RpdmUoaXNBY3RpdmU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgICAgICAuLi50aGlzLnN0YXRlLFxuICAgICAgICAgICAgaXNTaWRlYmFyQWN0aXZlOiBpc0FjdGl2ZSxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgc2V0IGlzU2lkZWJhcklubmVyQWN0aXZlKGlzT3BlbjogYm9vbGVhbikge1xuICAgICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgICAgIC4uLnRoaXMuc3RhdGUsXG4gICAgICAgICAgICBpc1NpZGViYXJJbm5lckFjdGl2ZTogaXNPcGVuLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBzZXQgc2lkZWJhckxpbmtzKGxpbmtzOiBFdWlNZW51SXRlbVtdKSB7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICAgICAgLi4udGhpcy5zdGF0ZSxcbiAgICAgICAgICAgIHNpZGViYXJMaW5rczogbGlua3MsXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHNldCBtZW51TGlua3MobGlua3M6IEV1aU1lbnVJdGVtW10pIHtcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgICAgICAuLi50aGlzLnN0YXRlLFxuICAgICAgICAgICAgbWVudUxpbmtzOiBsaW5rcyxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgc2V0IGlzQmxvY2tEb2N1bWVudEFjdGl2ZShpc0FjdGl2ZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgICAgIC4uLnRoaXMuc3RhdGUsXG4gICAgICAgICAgICBpc0Jsb2NrRG9jdW1lbnRBY3RpdmU6IGlzQWN0aXZlLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXQgaGFzSGVhZGVyKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zdGF0ZS5oYXNIZWFkZXI7XG4gICAgfVxuXG4gICAgLy8gRWRpdCBtb2RlXG4gICAgZ2V0IGlzRGltbWVyQWN0aXZlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zdGF0ZS5pc0RpbW1lckFjdGl2ZTtcbiAgICB9XG5cbiAgICBzZXQgaXNEaW1tZXJBY3RpdmUoaXNBY3RpdmU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgICAgICAuLi50aGlzLnN0YXRlLFxuICAgICAgICAgICAgaXNEaW1tZXJBY3RpdmU6IGlzQWN0aXZlLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNzc1ZhcnMgPSBbXTtcbiAgICBwcml2YXRlIF9zdGF0ZSQ6IEJlaGF2aW9yU3ViamVjdDxVSVN0YXRlPjtcbiAgICBwcml2YXRlIF9icmVha3BvaW50JDogQmVoYXZpb3JTdWJqZWN0PHN0cmluZz47XG4gICAgcHJpdmF0ZSBfYnJlYWtwb2ludHMkOiBCZWhhdmlvclN1YmplY3Q8YW55PjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEdMT0JBTF9DT05GSUdfVE9LRU4pIHByb3RlY3RlZCBjb25maWc6IEdsb2JhbENvbmZpZyxcbiAgICAgICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgICAgICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwcml2YXRlIHBsYXRmb3JtSWQ6IG9iamVjdCxcbiAgICAgICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgcHJpdmF0ZSBzdG9yZVNlcnZpY2U6IFN0b3JlU2VydmljZSxcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBpMThuU2VydmljZTogSTE4blNlcnZpY2VcbiAgICApIHtcbiAgICAgICAgbGV0IHN0YXRlV2l0aENvbmZpZyA9IGluaXRpYWxTdGF0ZTtcbiAgICAgICAgY29uc3QgbGFuZ3VhZ2VzID0gY29uZmlnPy5pMThuPy5pMThuU2VydmljZT8ubGFuZ3VhZ2VzIHx8IGluaXRpYWxTdGF0ZS5sYW5ndWFnZXM7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRMYW5ndWFnZSA9IGNvbmZpZz8uaTE4bj8uaTE4blNlcnZpY2U/LmRlZmF1bHRMYW5ndWFnZSB8fCBpbml0aWFsU3RhdGUuYWN0aXZlTGFuZ3VhZ2U7XG4gICAgICAgIHN0YXRlV2l0aENvbmZpZyA9IHtcbiAgICAgICAgICAgIC4uLnN0YXRlV2l0aENvbmZpZyxcbiAgICAgICAgICAgIC4uLntcbiAgICAgICAgICAgICAgICBsYW5ndWFnZXMsXG4gICAgICAgICAgICAgICAgYWN0aXZlTGFuZ3VhZ2U6IGRlZmF1bHRMYW5ndWFnZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH07XG4gICAgICAgIHRoaXMuX3N0YXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Qoc3RhdGVXaXRoQ29uZmlnKTtcbiAgICAgICAgdGhpcy5fYnJlYWtwb2ludCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KCcnKTtcbiAgICAgICAgdGhpcy5fYnJlYWtwb2ludHMkID0gbmV3IEJlaGF2aW9yU3ViamVjdCh7fSk7XG4gICAgICAgIHRoaXMuYmluZEFjdGl2ZUxhbmd1YWdlVG9BcHBTaGVsbFN0YXRlKCk7XG5cbiAgICAgICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgICAgICAgIHJvdXRlci5ldmVudHMuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpIHtcbiAgICAgICAgICAgICAgICAgICAgd2luZG93LnNjcm9sbFRvKDAsIDApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2V0U3RhdGUobmV4dFN0YXRlOiBVSVN0YXRlLCB1cGRhdGVJMTggPSB0cnVlKSB7XG4gICAgICAgIGxldCBicmVha3BvaW50LCBicmVha3BvaW50cywgd3JhcHBlckNsYXNzZXM7XG4gICAgICAgIGxldCBjb21iaW5lZExpbmtzO1xuXG4gICAgICAgIGNvbnN0IHN0YXRlID0gdGhpcy5zdGF0ZTtcblxuICAgICAgICAvLyBjaGVjayBpZiB3aW5kb3cgd2lkdGggaGFzIGJlZW4gdXBkYXRlZCBmcm9tIHByZXZpb3VzIHN0YXRlXG4gICAgICAgIGlmICh0aGlzLnN0YXRlLndpbmRvd1dpZHRoICE9PSBuZXh0U3RhdGUud2luZG93V2lkdGgpIHtcbiAgICAgICAgICAgIGJyZWFrcG9pbnQgPSB0aGlzLmdldEJyZWFrcG9pbnQobmV4dFN0YXRlLndpbmRvd1dpZHRoKTtcbiAgICAgICAgICAgIGJyZWFrcG9pbnRzID0gdGhpcy5nZXRCcmVha3BvaW50cyhicmVha3BvaW50KTtcblxuICAgICAgICAgICAgdGhpcy5fYnJlYWtwb2ludCQubmV4dChicmVha3BvaW50KTtcbiAgICAgICAgICAgIHRoaXMuX2JyZWFrcG9pbnRzJC5uZXh0KGJyZWFrcG9pbnRzKTtcblxuICAgICAgICAgICAgLy8gaWYgbm90IHByb3BhZ2F0ZSB0aGUgb2xkIG9uZXMgd2l0aG91dCBkb2luZyBhbnkgY2FsY3VsYXRpb25zXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBicmVha3BvaW50ID0gc3RhdGUuYnJlYWtwb2ludDtcbiAgICAgICAgICAgIGJyZWFrcG9pbnRzID0gc3RhdGUuYnJlYWtwb2ludHM7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBmaW5hbGx5IGdldCB0aGUgd3JhcHBlciBjbGFzc2VzIHdoZW4gYm90aCB0aGUgc3RhdGUgYW5kIGJyZWFrcG9pbnQgYXJlIGtub3duXG4gICAgICAgIHdyYXBwZXJDbGFzc2VzID0gdGhpcy5nZXRXcmFwcGVyQ2xhc3NlcyhuZXh0U3RhdGUsIGJyZWFrcG9pbnQpO1xuXG4gICAgICAgIC8vIGNoZWNrIGlmIHRoZSBtZW51TGlua3Mgb3Igc2lkZWJhckxpbmtzIGhhdmUgY2hhbmdlZCBmcm9tIHByZXZpb3VzIHN0YXRlXG4gICAgICAgIGlmICh0aGlzLnN0YXRlLm1lbnVMaW5rcyAhPT0gbmV4dFN0YXRlLm1lbnVMaW5rcyB8fCB0aGlzLnN0YXRlLnNpZGViYXJMaW5rcyAhPT0gbmV4dFN0YXRlLnNpZGViYXJMaW5rcykge1xuICAgICAgICAgICAgY29tYmluZWRMaW5rcyA9IFsuLi5uZXh0U3RhdGUubWVudUxpbmtzLCAuLi5uZXh0U3RhdGUuc2lkZWJhckxpbmtzXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbWJpbmVkTGlua3MgPSB0aGlzLnN0YXRlLmNvbWJpbmVkTGlua3M7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzdGF0ZUJlZm9yZVVwZGF0ZSA9IHsgLi4udGhpcy5zdGF0ZSB9O1xuXG4gICAgICAgIC8vIHdlIHB1dCBpdCBhbGwgdG9nZXRoZXIgd2l0aCB0aGUgY2FsY3VsYXRlZCBwcm9wZXJ0aWVzXG4gICAgICAgIHRoaXMuX3N0YXRlJC5uZXh0KHtcbiAgICAgICAgICAgIC4uLm5leHRTdGF0ZSxcbiAgICAgICAgICAgIHdyYXBwZXJDbGFzc2VzLFxuICAgICAgICAgICAgYnJlYWtwb2ludCxcbiAgICAgICAgICAgIGJyZWFrcG9pbnRzLFxuICAgICAgICAgICAgY29tYmluZWRMaW5rcyxcbiAgICAgICAgICAgIGFwcEJhc2VGb250U2l6ZTogdGhpcy5nZXRCYXNlRm9udFNpemUoKSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gdXBkYXRlIHRoZSBTdG9yZSBMYW5ndWFnZVxuICAgICAgICBpZiAodXBkYXRlSTE4ICYmIG5leHRTdGF0ZS5hY3RpdmVMYW5ndWFnZSAhPT0gc3RhdGVCZWZvcmVVcGRhdGUuYWN0aXZlTGFuZ3VhZ2UpIHtcbiAgICAgICAgICAgIHRoaXMuaTE4blNlcnZpY2UudXBkYXRlU3RhdGUoeyBhY3RpdmVMYW5nOiBuZXh0U3RhdGUuYWN0aXZlTGFuZ3VhZ2UgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBFbWl0cyBhIHNsaWNlIGZyb20gdGhlIHN0YXRlIHdoZXRoZXIgdGhhdCBjaGFuZ2VzXG4gICAgICpcbiAgICAgKiBAcGFyYW0ga2V5IGNhbiBiZSAna2V5JyBvciAna2V5LnN1Yi5zdWInXG4gICAgICovXG4gICAgZ2V0U3RhdGUoa2V5Pzogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgcmV0dXJuIGRlZmVyKCgpID0+XG4gICAgICAgICAgICAvLyBjaGVjayBpZiBrZXkgZXhpc3RzXG4gICAgICAgICAgICBrZXlcbiAgICAgICAgICAgICAgICA/IHRoaXMuc3RhdGUkLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgbWFwKChzdGF0ZSkgPT4gZ2V0KHN0YXRlLCBrZXkpKSxcbiAgICAgICAgICAgICAgICAgICAgICAvLyBmaWx0ZXIoKHN0YXRlKSA9PiBzdGF0ZSksXG4gICAgICAgICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKHgsIHkpID0+IGlzRXF1YWwoeCwgeSkpXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgOiB0aGlzLnN0YXRlJFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBzaWRlYmFyVG9nZ2xlKCkge1xuICAgICAgICB0aGlzLmlzU2lkZWJhck9wZW4gPSAhdGhpcy5zdGF0ZS5pc1NpZGViYXJPcGVuO1xuICAgIH1cblxuICAgIC8vIEVkaXQgbW9kZVxuICAgIHB1YmxpYyBkaW1tZXJBY3RpdmVUb2dnbGUoKSB7XG4gICAgICAgIGNvbnN0IGlzQWN0aXZlID0gdGhpcy5pc0RpbW1lckFjdGl2ZTtcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgICAgICAuLi50aGlzLnN0YXRlLFxuICAgICAgICAgICAgaXNEaW1tZXJBY3RpdmU6ICFpc0FjdGl2ZSxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuYWN0aXZhdGVFZGl0TW9kZUNzc1ZhcnMoIWlzQWN0aXZlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0RGltbWVyQWN0aXZlU3RhdGUoYWN0aXZlU3RhdGU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgICAgICAuLi50aGlzLnN0YXRlLFxuICAgICAgICAgICAgaXNEaW1tZXJBY3RpdmU6IGFjdGl2ZVN0YXRlLFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5hY3RpdmF0ZUVkaXRNb2RlQ3NzVmFycyhhY3RpdmVTdGF0ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFjdGl2YXRlRWRpdE1vZGVDc3NWYXJzKGlzQWN0aXZlOiBib29sZWFuKSB7XG4gICAgICAgIGlmIChpc0FjdGl2ZSkge1xuICAgICAgICAgICAgdGhpcy5fc2V0Q3NzVmFyVmFsdWUoJy0tZXVpLWRvY3BhZ2UtbmF2aWdhdGlvbi16LWluZGV4JywgJ2luaGVyaXQnKTsgLy8gUmVzZXQgZG9jLXBhZ2UtbmF2aWdhdGlvbi1jb2x1bW4gei1pbmRleFxuICAgICAgICAgICAgdGhpcy5fc2V0Q3NzVmFyVmFsdWUoJy0tZXVpLXotaW5kZXgtc2lkZWJhcicsICdpbmhlcml0Jyk7IC8vIFJlc2V0IGV1aS1hcHAtc2lkZWJhciB6LWluZGV4XG4gICAgICAgICAgICB0aGlzLl9zZXRDc3NWYXJWYWx1ZSgnLS1ldWktei1pbmRleC1yb290JywgJ2luaGVyaXQnKTsgLy8gUmVzZXQgZXVpLWFwcC1tYWluLWNvbnRlbnQgei1pbmRleFxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fc2V0Q3NzVmFyVmFsdWUoJy0tZXVpLWRvY3BhZ2UtbmF2aWdhdGlvbi16LWluZGV4JywgJzInKTsgLy8gUmVzdG9yZSBkb2MtcGFnZS1uYXZpZ2F0aW9uLWNvbHVtbiB6LWluZGV4XG4gICAgICAgICAgICB0aGlzLl9zZXRDc3NWYXJWYWx1ZSgnLS1ldWktei1pbmRleC1zaWRlYmFyJywgJzEwNDQnKTsgLy8gUmVzdG9yZSBldWktYXBwLXNpZGViYXIgei1pbmRleFxuICAgICAgICAgICAgdGhpcy5fc2V0Q3NzVmFyVmFsdWUoJy0tZXVpLXotaW5kZXgtcm9vdCcsICcxJyk7IC8vIFJlc3RvcmUgZXVpLWFwcC1tYWluLWNvbnRlbnQgei1pbmRleFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBwdWJsaWMgbWV0aG9kc1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tXG4gICAgcHVibGljIGZldGNoQXBwTWV0YWRhdGEobWV0YWRhdGFGaWxlUGF0aCA9ICdhc3NldHMvYXBwLW1ldGFkYXRhLmpzb24nKSB7XG4gICAgICAgIHRoaXMuZ2V0SnNvbihtZXRhZGF0YUZpbGVQYXRoKS50aGVuKChkYXRhKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgICAgICAgICAuLi50aGlzLnN0YXRlLFxuICAgICAgICAgICAgICAgIGFwcE1ldGFkYXRhOiBkYXRhLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBhY3RpdmF0ZVNpZGViYXIoKSB7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICAgICAgLi4udGhpcy5zdGF0ZSxcbiAgICAgICAgICAgIGhhc1NpZGViYXI6IHRydWUsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICghdGhpcy5zdGF0ZS5pc1NpZGViYXJIaWRkZW4pIHtcbiAgICAgICAgICAgIHRoaXMuYWN0aXZhdGVTaWRlYmFyQ3NzVmFycygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGFjdGl2YXRlU2lkZWJhckhlYWRlcigpIHtcbiAgICAgICAgdGhpcy5hY3RpdmF0ZVNpZGViYXJIZWFkZXJDc3NWYXJzKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFjdGl2YXRlU2lkZWJhckZvb3RlcigpIHtcbiAgICAgICAgdGhpcy5hY3RpdmF0ZVNpZGViYXJGb290ZXJDc3NWYXJzKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFjdGl2YXRlSGVhZGVyKCkge1xuICAgICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgICAgIC4uLnRoaXMuc3RhdGUsXG4gICAgICAgICAgICBoYXNIZWFkZXI6IHRydWUsXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmFjdGl2YXRlSGVhZGVyQ3NzVmFycygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhY3RpdmF0ZUJyZWFkY3J1bWIoKSB7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICAgICAgLi4udGhpcy5zdGF0ZSxcbiAgICAgICAgICAgIGhhc0JyZWFkY3J1bWI6IHRydWUsXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmFjdGl2YXRlQnJlYWRjcnVtYkNzc1ZhcnMoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWN0aXZhdGVUb3BNZXNzYWdlKGhlaWdodDogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICAgICAgLi4udGhpcy5zdGF0ZSxcbiAgICAgICAgICAgIGhhc1RvcE1lc3NhZ2U6IHRydWUsXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmFjdGl2YXRlVG9wTWVzc2FnZUNzc1ZhcnMoaGVpZ2h0KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWN0aXZhdGVUb29sYmFyKCkge1xuICAgICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgICAgIC4uLnRoaXMuc3RhdGUsXG4gICAgICAgICAgICBoYXNUb29sYmFyOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5hY3RpdmF0ZVRvb2xiYXJDc3NWYXJzKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFjdGl2YXRlVG9vbGJhck1lbnUoKSB7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICAgICAgLi4udGhpcy5zdGF0ZSxcbiAgICAgICAgICAgIGhhc1Rvb2xiYXJNZW51OiB0cnVlLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZmV0Y2hDc3NWYXJzKCkge1xuICAgICAgICBjb25zdCBjc3NWYXJOYW1lcyA9IFtcbiAgICAgICAgICAgICctLWV1aS1hcHAtaGVhZGVyLWhlaWdodC1kZWZhdWx0JyxcbiAgICAgICAgICAgICctLWV1aS1hcHAtaGVhZGVyLWhlaWdodC1hY3RpdmUnLFxuICAgICAgICAgICAgJy0tZXVpLWFwcC1oZWFkZXItaGVpZ2h0LXNocmluaycsXG4gICAgICAgICAgICAnLS1ldWktYXBwLWJyZWFkY3J1bWItaGVpZ2h0LWRlZmF1bHQnLFxuICAgICAgICAgICAgJy0tZXVpLWFwcC1icmVhZGNydW1iLWhlaWdodC1hY3RpdmUnLFxuICAgICAgICAgICAgJy0tZXVpLWFwcC10b3AtbWVzc2FnZS1oZWlnaHQtZGVmYXVsdCcsXG4gICAgICAgICAgICAnLS1ldWktYXBwLXRvcC1tZXNzYWdlLWhlaWdodC1hY3RpdmUnLFxuICAgICAgICAgICAgJy0tZXVpLWFwcC10b3AtbWVzc2FnZS1oZWlnaHQtc2hyaW5rJyxcbiAgICAgICAgICAgICctLWV1aS1hcHAtdG9vbGJhci1oZWlnaHQtZGVmYXVsdCcsXG4gICAgICAgICAgICAnLS1ldWktYXBwLXRvb2xiYXItaGVpZ2h0LWFjdGl2ZScsXG4gICAgICAgICAgICAnLS1ldWktYXBwLXNpZGViYXItd2lkdGgtZGVmYXVsdCcsXG4gICAgICAgICAgICAnLS1ldWktYXBwLXNpZGViYXItd2lkdGgtYWN0aXZlJyxcbiAgICAgICAgICAgICctLWV1aS1hcHAtc2lkZWJhci13aWR0aC1jbG9zZS1kZWZhdWx0JyxcbiAgICAgICAgICAgICctLWV1aS1hcHAtc2lkZWJhci13aWR0aC1jbG9zZS1hY3RpdmUnLFxuICAgICAgICAgICAgJy0tZXVpLWFwcC1zaWRlYmFyLWhlYWRlci1oZWlnaHQtZGVmYXVsdCcsXG4gICAgICAgICAgICAnLS1ldWktYXBwLXNpZGViYXItaGVhZGVyLWhlaWdodC1hY3RpdmUnLFxuICAgICAgICAgICAgJy0tZXVpLWFwcC1zaWRlYmFyLWZvb3Rlci1oZWlnaHQtZGVmYXVsdCcsXG4gICAgICAgICAgICAnLS1ldWktYXBwLXNpZGViYXItZm9vdGVyLWhlaWdodC1hY3RpdmUnLFxuICAgICAgICBdO1xuXG4gICAgICAgIHRoaXMuY3NzVmFycyA9IGNzc1Zhck5hbWVzLm1hcCgodikgPT4gKHsga2V5OiB2LCB2YWx1ZTogdGhpcy5nZXRDc3NWYXJWYWx1ZSh2KSB9KSk7XG4gICAgfVxuXG4gICAgcHVibGljIGluaXRDc3NWYXJzKCkge1xuICAgICAgICB0aGlzLnNldENzc1ZhcignLS1ldWktYXBwLWhlYWRlci1oZWlnaHQtZGVmYXVsdCcsICctLWV1aS1hcHAtaGVhZGVyLWhlaWdodCcpO1xuICAgICAgICB0aGlzLnNldENzc1ZhcignLS1ldWktYXBwLWJyZWFkY3J1bWItaGVpZ2h0LWRlZmF1bHQnLCAnLS1ldWktYXBwLWJyZWFkY3J1bWItaGVpZ2h0Jyk7XG4gICAgICAgIHRoaXMuc2V0Q3NzVmFyKCctLWV1aS1hcHAtdG9wLW1lc3NhZ2UtaGVpZ2h0LWRlZmF1bHQnLCAnLS1ldWktYXBwLXRvcC1tZXNzYWdlLWhlaWdodCcpO1xuICAgICAgICB0aGlzLnNldENzc1ZhcignLS1ldWktYXBwLXRvb2xiYXItaGVpZ2h0LWRlZmF1bHQnLCAnLS1ldWktYXBwLXRvb2xiYXItaGVpZ2h0Jyk7XG4gICAgICAgIHRoaXMuc2V0Q3NzVmFyKCctLWV1aS1hcHAtc2lkZWJhci13aWR0aC1kZWZhdWx0JywgJy0tZXVpLWFwcC1zaWRlYmFyLXdpZHRoJyk7XG4gICAgICAgIHRoaXMuc2V0Q3NzVmFyKCctLWV1aS1hcHAtc2lkZWJhci13aWR0aC1jbG9zZS1kZWZhdWx0JywgJy0tZXVpLWFwcC1zaWRlYmFyLXdpZHRoLWNsb3NlJyk7XG4gICAgICAgIHRoaXMuc2V0Q3NzVmFyKCctLWV1aS1hcHAtc2lkZWJhci1oZWFkZXItaGVpZ2h0LWRlZmF1bHQnLCAnLS1ldWktYXBwLXNpZGViYXItaGVhZGVyLWhlaWdodCcpO1xuICAgICAgICB0aGlzLnNldENzc1ZhcignLS1ldWktYXBwLXNpZGViYXItZm9vdGVyLWhlaWdodC1kZWZhdWx0JywgJy0tZXVpLWFwcC1zaWRlYmFyLWZvb3Rlci1oZWlnaHQnKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWN0aXZhdGVIZWFkZXJDc3NWYXJzKCkge1xuICAgICAgICB0aGlzLnNldENzc1ZhcignLS1ldWktYXBwLWhlYWRlci1oZWlnaHQtYWN0aXZlJywgJy0tZXVpLWFwcC1oZWFkZXItaGVpZ2h0Jyk7XG4gICAgfVxuICAgIHB1YmxpYyBhY3RpdmF0ZUJyZWFkY3J1bWJDc3NWYXJzKCkge1xuICAgICAgICB0aGlzLnNldENzc1ZhcignLS1ldWktYXBwLWJyZWFkY3J1bWItaGVpZ2h0LWFjdGl2ZScsICctLWV1aS1hcHAtYnJlYWRjcnVtYi1oZWlnaHQnKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWN0aXZhdGVUb3BNZXNzYWdlQ3NzVmFycyhoZWlnaHQ6IG51bWJlcikge1xuICAgICAgICB0aGlzLl9zZXRDc3NWYXJWYWx1ZSgnLS1ldWktYXBwLXRvcC1tZXNzYWdlLWhlaWdodCcsIGAke2hlaWdodH1weGApO1xuICAgIH1cblxuICAgIHB1YmxpYyBhY3RpdmF0ZVRvb2xiYXJDc3NWYXJzKCkge1xuICAgICAgICB0aGlzLnNldENzc1ZhcignLS1ldWktYXBwLXRvb2xiYXItaGVpZ2h0LWFjdGl2ZScsICctLWV1aS1hcHAtdG9vbGJhci1oZWlnaHQnKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWN0aXZhdGVGb290ZXJDc3NWYXJzKCkge1xuICAgICAgICB0aGlzLnNldENzc1ZhcignLS1ldWktYXBwLWZvb3Rlci1oZWlnaHQtYWN0aXZlJywgJy0tZXVpLWFwcC1mb290ZXItaGVpZ2h0Jyk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldEhlYWRlclNocmlua0Nzc1ZhcihhY3RpdmU6IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKGFjdGl2ZSkge1xuICAgICAgICAgICAgdGhpcy5zZXRDc3NWYXIoJy0tZXVpLWFwcC1oZWFkZXItaGVpZ2h0LXNocmluaycsICctLWV1aS1hcHAtaGVhZGVyLWhlaWdodCcpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5zZXRDc3NWYXIoJy0tZXVpLWFwcC1oZWFkZXItaGVpZ2h0LWFjdGl2ZScsICctLWV1aS1hcHAtaGVhZGVyLWhlaWdodCcpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGFjdGl2YXRlU2lkZWJhckNzc1ZhcnMoKSB7XG4gICAgICAgIHRoaXMuc2V0Q3NzVmFyKCctLWV1aS1hcHAtc2lkZWJhci13aWR0aC1hY3RpdmUnLCAnLS1ldWktYXBwLXNpZGViYXItd2lkdGgnKTtcbiAgICAgICAgdGhpcy5zZXRDc3NWYXIoJy0tZXVpLWFwcC1zaWRlYmFyLXdpZHRoLWNsb3NlLWFjdGl2ZScsICctLWV1aS1hcHAtc2lkZWJhci13aWR0aC1jbG9zZScpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZW1vdmVTaWRlYmFyQ3NzVmFycygpIHtcbiAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnJlbW92ZVByb3BlcnR5KCctLWV1aS1hcHAtc2lkZWJhci1oZWFkZXItaGVpZ2h0Jyk7XG4gICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgnLS1ldWktYXBwLXNpZGViYXItZm9vdGVyLWhlaWdodCcpO1xuICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUucmVtb3ZlUHJvcGVydHkoJy0tZXVpLWFwcC1zaWRlYmFyLXdpZHRoJyk7XG4gICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgnLS1ldWktYXBwLXNpZGViYXItd2lkdGgtY2xvc2UnKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWN0aXZhdGVTaWRlYmFySGVhZGVyQ3NzVmFycygpIHtcbiAgICAgICAgdGhpcy5zZXRDc3NWYXIoJy0tZXVpLWFwcC1zaWRlYmFyLWhlYWRlci1oZWlnaHQtYWN0aXZlJywgJy0tZXVpLWFwcC1zaWRlYmFyLWhlYWRlci1oZWlnaHQnKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWN0aXZhdGVTaWRlYmFyRm9vdGVyQ3NzVmFycygpIHtcbiAgICAgICAgdGhpcy5zZXRDc3NWYXIoJy0tZXVpLWFwcC1zaWRlYmFyLWZvb3Rlci1oZWlnaHQtYWN0aXZlJywgJy0tZXVpLWFwcC1zaWRlYmFyLWZvb3Rlci1oZWlnaHQnKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSB2aWV3cG9ydCBoZWlnaHQgYW5kIHdpZHRoIGFuZCBtdWx0aXBsZSBpdCBieSAxJSB0byBnZXQgYSB2YWx1ZSBmb3IgYSB2aC92dyB1bml0XG4gICAgICogU2V0cyB0aGUgdmFsdWUgaW4gdGhlIC0tZXVpLWFwcC12aCBjdXN0b20gcHJvcGVydHkgdG8gdGhlIHJvb3Qgb2YgdGhlIGRvY3VtZW50XG4gICAgICogU2V0cyB0aGUgdmFsdWUgaW4gdGhlIC0tZXVpLWFwcC12dyBjdXN0b20gcHJvcGVydHkgdG8gdGhlIHJvb3Qgb2YgdGhlIGRvY3VtZW50XG4gICAgICogRXhhbXBsZSBmb3IgMTAwJSBoZWlnaHQ6IGNhbGModmFyKC0tZXVpLWFwcC12aCwgMXZoKSAqIDEwMCk7XG4gICAgICogRXhhbXBsZSBmb3IgNTAlIGhlaWdodDogY2FsYyh2YXIoLS1ldWktYXBwLXZoLCAxdmgpICogNTApO1xuICAgICAqIEV4YW1wbGUgZm9yIDUwJSB3aWR0aDogY2FsYyh2YXIoLS1ldWktYXBwLXZ3LCAxdncpICogNTApO1xuICAgICAqL1xuICAgIHB1YmxpYyBzZXRBcHBWaWV3cG9ydENzc1ZhcnMoKSB7XG4gICAgICAgIGxldCB2aCA9IHdpbmRvdy5pbm5lckhlaWdodCAqIDAuMDE7XG4gICAgICAgIGxldCB2dyA9IHdpbmRvdy5pbm5lcldpZHRoICogMC4wMTtcbiAgICAgICAgdGhpcy5fc2V0Q3NzVmFyVmFsdWUoJy0tZXVpLWFwcC12aCcsIGAke3ZofXB4YCk7XG4gICAgICAgIHRoaXMuX3NldENzc1ZhclZhbHVlKCctLWV1aS1hcHAtdncnLCBgJHt2d31weGApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIGN1cnJlbnQgdmFsdWUgb2YgLS1ldWktYmFzZS1mb250LXNpemUgQ1NTIHZhcmlhYmxlXG4gICAgICovXG4gICAgcHVibGljIGdldEJhc2VGb250U2l6ZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5zdGF0ZS5hcHBCYXNlRm9udFNpemUgfHwgdGhpcy5nZXRDc3NWYXJWYWx1ZSgnLS1ldWktYmFzZS1mb250LXNpemUnKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBVcGRhdGVzIHRoZSBjdXJyZW50IHZhbHVlIG9mIC0tZXVpLWJhc2UtZm9udC1zaXplIENTUyB2YXJpYWJsZSBhbmQgdGhlIFVJU3RhdGUgYXBwQmFzZUZvbnRTaXplXG4gICAgICovXG4gICAgcHVibGljIHNldEJhc2VGb250U2l6ZShuZXdzaXplOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXRTdGF0ZShcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAuLi50aGlzLnN0YXRlLFxuICAgICAgICAgICAgICAgIGFwcEJhc2VGb250U2l6ZTogbmV3c2l6ZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBmYWxzZVxuICAgICAgICApO1xuICAgICAgICB0aGlzLl9zZXRDc3NWYXJWYWx1ZSgnLS1ldWktYmFzZS1mb250LXNpemUnLCBuZXdzaXplKTtcbiAgICB9XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBwcml2YXRlIGdldHRlcnNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS1cbiAgICBwcml2YXRlIGdldENzc1ZhclZhbHVlKGlucHV0UHJvcGVydHkpIHtcbiAgICAgICAgcmV0dXJuIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KS5nZXRQcm9wZXJ0eVZhbHVlKGlucHV0UHJvcGVydHkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0Q3NzVmFyKGlucHV0UHJvcGVydHksIG91dHB1dFByb3BlcnR5KSB7XG4gICAgICAgIGNvbnN0IGNzc1ZhclZhbHVlID0gdGhpcy5jc3NWYXJzLmZpbHRlcigodikgPT4gdi5rZXkgPT09IGlucHV0UHJvcGVydHkpWzBdLnZhbHVlO1xuICAgICAgICB0aGlzLl9zZXRDc3NWYXJWYWx1ZShvdXRwdXRQcm9wZXJ0eSwgY3NzVmFyVmFsdWUpO1xuICAgICAgICAvLyBjb25zb2xlLmxvZyhpbnB1dFByb3BlcnR5LCBvdXRwdXRQcm9wZXJ0eSwgY3NzVmFyVmFsdWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3NldENzc1ZhclZhbHVlKHZhck5hbWUsIHZhclZhbHVlKSB7XG4gICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSh2YXJOYW1lLCB2YXJWYWx1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRXcmFwcGVyQ2xhc3NlcyhzdGF0ZTogVUlTdGF0ZSwgYnJlYWtwb2ludDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IGNsYXNzZXM6IHN0cmluZ1tdID0gW107XG5cbiAgICAgICAgY2xhc3Nlcy5wdXNoKGJyZWFrcG9pbnQpO1xuXG4gICAgICAgIGlmIChzdGF0ZS5oYXNTaWRlYmFyKSB7XG4gICAgICAgICAgICBpZiAoc3RhdGUuaXNTaWRlYmFyT3BlbiAmJiAoc3RhdGUuaXNTaWRlYmFyQWN0aXZlIHx8IHN0YXRlLmlzU2lkZWJhcklubmVyQWN0aXZlKSkge1xuICAgICAgICAgICAgICAgIGNsYXNzZXMucHVzaCgnc2lkZWJhci1zdGF0ZS1vcGVuJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXN0YXRlLmlzU2lkZWJhck9wZW4gJiYgKHN0YXRlLmlzU2lkZWJhckFjdGl2ZSB8fCBzdGF0ZS5pc1NpZGViYXJJbm5lckFjdGl2ZSkpIHtcbiAgICAgICAgICAgICAgICBjbGFzc2VzLnB1c2goJ3NpZGViYXItc3RhdGUtY2xvc2UnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChzdGF0ZS5pc1NpZGViYXJBY3RpdmUpIHtcbiAgICAgICAgICAgICAgICBjbGFzc2VzLnB1c2goJ3NpZGViYXItYWN0aXZlJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoc3RhdGUuaXNTaWRlYmFySW5uZXJBY3RpdmUpIHtcbiAgICAgICAgICAgICAgICBjbGFzc2VzLnB1c2goJ3NpZGViYXItaW5uZXItYWN0aXZlJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoc3RhdGUuaXNTaWRlYmFyU3RhdGVDbG9zZVdpdGhJY29ucykge1xuICAgICAgICAgICAgICAgIGNsYXNzZXMucHVzaCgnc2lkZWJhci1zdGF0ZS1jbG9zZS13aXRoLWljb25zJyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIE5FVyBBUFAtU0hFTEwgcHJvcHNcbiAgICAgICAgICAgIGlmIChzdGF0ZS5pc1NpZGViYXJIaWRkZW4pIHtcbiAgICAgICAgICAgICAgICBjbGFzc2VzLnB1c2goJ3NpZGViYXItLWhpZGRlbicpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHN0YXRlLmlzU2lkZWJhck9wZW4pIHtcbiAgICAgICAgICAgICAgICBjbGFzc2VzLnB1c2goJ3NpZGViYXItLW9wZW4nKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKCdzaWRlYmFyLS1jbG9zZScpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHN0YXRlLmlzU2lkZWJhckhvdmVyKSB7XG4gICAgICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKCdzaWRlYmFyLS1ob3ZlcicpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChzdGF0ZS5kZXZpY2VJbmZvICYmIHN0YXRlLmRldmljZUluZm8uaXNGRikge1xuICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKCdmZicpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChzdGF0ZS5kZXZpY2VJbmZvICYmIHN0YXRlLmRldmljZUluZm8uaXNJRSkge1xuICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKCdpZScpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChzdGF0ZS5kZXZpY2VJbmZvICYmIHN0YXRlLmRldmljZUluZm8uaXNJRTExKSB7XG4gICAgICAgICAgICBjbGFzc2VzLnB1c2goJ2llMTEnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoc3RhdGUuZGV2aWNlSW5mbyAmJiBzdGF0ZS5kZXZpY2VJbmZvLmlzQ2hyb21lKSB7XG4gICAgICAgICAgICBjbGFzc2VzLnB1c2goJ2Nocm9tZScpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjbGFzc2VzLmpvaW4oJyAnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEJyZWFrcG9pbnQod2luZG93V2lkdGg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgICAgIGxldCBia3AgPSAnJztcblxuICAgICAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgICAgICAgIGNhc2Ugd2luZG93V2lkdGggPj0gMCAmJiB3aW5kb3dXaWR0aCA8IDU3NjpcbiAgICAgICAgICAgICAgICBia3AgPSAneHMnO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSB3aW5kb3dXaWR0aCA+PSA1NzYgJiYgd2luZG93V2lkdGggPCA3Njg6XG4gICAgICAgICAgICAgICAgYmtwID0gJ3NtJztcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2Ugd2luZG93V2lkdGggPj0gNzY4ICYmIHdpbmRvd1dpZHRoIDwgOTkyOlxuICAgICAgICAgICAgICAgIGJrcCA9ICdtZCc7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIHdpbmRvd1dpZHRoID49IDk5MiAmJiB3aW5kb3dXaWR0aCA8IDEyMDA6XG4gICAgICAgICAgICAgICAgYmtwID0gJ2xnJztcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2Ugd2luZG93V2lkdGggPj0gMTIwMCAmJiB3aW5kb3dXaWR0aCA8IDE0MDA6XG4gICAgICAgICAgICAgICAgYmtwID0gJ3hsJztcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2Ugd2luZG93V2lkdGggPj0gMTQwMCAmJiB3aW5kb3dXaWR0aCA8IDE5MjA6XG4gICAgICAgICAgICAgICAgYmtwID0gJ3h4bCc7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIHdpbmRvd1dpZHRoID49IDE5MjAgJiYgd2luZG93V2lkdGggPCAyNTYwOlxuICAgICAgICAgICAgICAgIGJrcCA9ICdmaGQnO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSB3aW5kb3dXaWR0aCA+PSAyNTYwICYmIHdpbmRvd1dpZHRoIDwgMzg0MDpcbiAgICAgICAgICAgICAgICBia3AgPSAnMmsnO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSB3aW5kb3dXaWR0aCA+PSAzODQwOlxuICAgICAgICAgICAgICAgIGJrcCA9ICc0ayc7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGJrcDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEJyZWFrcG9pbnRzKGJrcDogc3RyaW5nKTogYW55IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGlzTW9iaWxlOiBia3AgPT09ICd4cycgfHwgYmtwID09PSAnc20nLFxuICAgICAgICAgICAgaXNUYWJsZXQ6IGJrcCA9PT0gJ21kJyxcbiAgICAgICAgICAgIGlzTHREZXNrdG9wOiBia3AgPT09ICd4cycgfHwgYmtwID09PSAnc20nIHx8IGJrcCA9PT0gJ21kJyxcbiAgICAgICAgICAgIGlzRGVza3RvcDogYmtwID09PSAnbGcnLFxuICAgICAgICAgICAgaXNYTDogYmtwID09PSAneGwnLFxuICAgICAgICAgICAgaXNYWEw6IGJrcCA9PT0gJ3h4bCcsXG4gICAgICAgICAgICBpc0ZIRDogYmtwID09PSAnZmhkJyxcbiAgICAgICAgICAgIGlzMks6IGJrcCA9PT0gJzJrJyxcbiAgICAgICAgICAgIGlzNEs6IGJrcCA9PT0gJzRrJyxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEpzb24odXJsOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldCh1cmwpLnRvUHJvbWlzZSgpLnRoZW4odGhpcy5leHRyYWN0RGF0YSkuY2F0Y2godGhpcy5oYW5kbGVFcnJvcik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBleHRyYWN0RGF0YShyZXM6IFJlc3BvbnNlKSB7XG4gICAgICAgIGNvbnN0IGJvZHkgPSByZXM7XG4gICAgICAgIHJldHVybiBib2R5IHx8IHt9O1xuICAgIH1cblxuICAgIHByaXZhdGUgaGFuZGxlRXJyb3IoZXJyb3I6IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0FuIGVycm9yIG9jY3VycmVkJywgZXJyb3IpO1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoZXJyb3IubWVzc2FnZSB8fCBlcnJvcik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBiaW5kQWN0aXZlTGFuZ3VhZ2VUb0FwcFNoZWxsU3RhdGUoKSB7XG4gICAgICAgIHRoaXMuc3RvcmVTZXJ2aWNlLnNlbGVjdChnZXRBY3RpdmVMYW5nKS5zdWJzY3JpYmUoKGFjdGl2ZUxhbmcpID0+IHtcbiAgICAgICAgICAgIGlmIChhY3RpdmVMYW5nICE9PSB0aGlzLnN0YXRlLmFjdGl2ZUxhbmd1YWdlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRTdGF0ZShcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgLi4udGhpcy5zdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGFjdGl2ZUxhbmd1YWdlOiBhY3RpdmVMYW5nLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBmYWxzZVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
574
+ }] }] });
575
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLWFwcC1zaGVsbC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9ldWktYXBwLXNoZWxsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUMxRCxPQUFPLEVBQUUsY0FBYyxFQUFnQixhQUFhLEVBQTRCLE1BQU0sV0FBVyxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXRELE9BQU8sRUFBVSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV4RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxPQUFPLE1BQU0sbUJBQW1CLENBQUM7QUFDeEMsT0FBTyxHQUFHLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFnRWhDLE1BQU0sWUFBWSxHQUFZO0lBQzFCLE9BQU8sRUFBRSxFQUFFO0lBQ1gsWUFBWSxFQUFFLEVBQUU7SUFDaEIsV0FBVyxFQUFFLEVBQUU7SUFDZixlQUFlLEVBQUUsRUFBRTtJQUNuQixTQUFTLEVBQUUsSUFBSTtJQUNmLFlBQVksRUFBRSxJQUFJO0lBQ2xCLHFCQUFxQixFQUFFLElBQUk7SUFDM0IsYUFBYSxFQUFFLElBQUk7SUFDbkIsY0FBYyxFQUFFLEtBQUs7SUFDckIsZUFBZSxFQUFFLEtBQUs7SUFDdEIsb0JBQW9CLEVBQUUsS0FBSztJQUMzQiw0QkFBNEIsRUFBRSxLQUFLO0lBQ25DLHNCQUFzQixFQUFFLElBQUk7SUFDNUIsVUFBVSxFQUFF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LENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDN0QsSUFBSSxVQUFVLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUU7Z0JBQzFDLElBQUksQ0FBQyxRQUFRLENBQ1Q7b0JBQ0ksR0FBRyxJQUFJLENBQUMsS0FBSztvQkFDYixjQUFjLEVBQUUsVUFBVTtpQkFDN0IsRUFDRCxLQUFLLENBQ1IsQ0FBQzthQUNMO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO3dJQTVqQlEsa0JBQWtCLGtCQStHSCxtQkFBbUIsdURBRS9CLFdBQVc7NElBakhkLGtCQUFrQixjQUZmLE1BQU07O2tHQUVULGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQWdIUSxRQUFROzswQkFBSSxNQUFNOzJCQUFDLG1CQUFtQjs7MEJBRXRDLE1BQU07MkJBQUMsV0FBVzs7MEJBR2xCLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIE9wdGlvbmFsLCBQTEFURk9STV9JRCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZGVmZXIsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEV1aUV1TGFuZ3VhZ2VzLCBHbG9iYWxDb25maWcsIGdldEFjdGl2ZUxhbmcsIEV1aUxhbmd1YWdlLCBFdWlNZW51SXRlbSB9IGZyb20gJ0BldWkvYmFzZSc7XG5pbXBvcnQgeyBHTE9CQUxfQ09ORklHX1RPS0VOIH0gZnJvbSAnLi9jb25maWcvdG9rZW5zJztcbmltcG9ydCB7IEkxOG5TZXJ2aWNlIH0gZnJvbSAnLi9pMThuJztcbmltcG9ydCB7IFJvdXRlciwgTmF2aWdhdGlvbkVuZCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBTdG9yZVNlcnZpY2UgfSBmcm9tICcuL3N0b3JlL3N0b3JlLnNlcnZpY2UnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCBpc0VxdWFsIGZyb20gJ2xvZGFzaC1lcy9pc0VxdWFsJztcbmltcG9ydCBnZXQgZnJvbSAnbG9kYXNoLWVzL2dldCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVUlTdGF0ZSB7XG4gICAgLy8gYXBwIHN0YXRlXG4gICAgYXBwTmFtZT86IHN0cmluZztcbiAgICBhcHBTaG9ydE5hbWU/OiBzdHJpbmc7XG4gICAgYXBwU3ViVGl0bGU/OiBzdHJpbmc7XG4gICAgYXBwQmFzZUZvbnRTaXplPzogc3RyaW5nO1xuXG4gICAgLy8gdXNlciBzdGF0ZVxuICAgIHVzZXJJbmZvcz86IHN0cmluZztcbiAgICB1c2VyU3ViSW5mb3M/OiBzdHJpbmc7XG4gICAgaW1wZXJzb25hdGVkVXNlckluZm9zPzogc3RyaW5nO1xuXG4gICAgLy8gU2lkZWJhciBzdGF0ZVxuICAgIGlzU2lkZWJhck9wZW4/OiBib29sZWFuO1xuICAgIGlzU2lkZWJhckhvdmVyPzogYm9vbGVhbjtcbiAgICBpc1NpZGViYXJBY3RpdmU/OiBib29sZWFuO1xuICAgIGlzU2lkZWJhcklubmVyQWN0aXZlPzogYm9vbGVhbjtcbiAgICBpc1NpZGViYXJTdGF0ZUNsb3NlV2l0aEljb25zPzogYm9vbGVhbjtcbiAgICBpc1NpZGViYXJFeHBhbmRPbkhvdmVyPzogYm9vbGVhbjtcbiAgICBoYXNTaWRlYmFyPzogYm9vbGVhbjtcbiAgICBoYXNCcmVhZGNydW1iPzogYm9vbGVhbjtcbiAgICBoYXNIZWFkZXI/OiBib29sZWFuO1xuICAgIGhhc0hlYWRlckxvZ28/OiBib29sZWFuO1xuICAgIGhhc0hlYWRlckVudmlyb25tZW50PzogYm9vbGVhbjtcbiAgICBoYXNUb29sYmFyPzogYm9vbGVhbjtcbiAgICBoYXNUb29sYmFyTWVudT86IGJvb2xlYW47XG4gICAgZW52aXJvbm1lbnRWYWx1ZT86IHN0cmluZztcbiAgICBpc1NpZGViYXJIaWRkZW4/OiBib29sZWFuO1xuICAgIGhhc1RvcE1lc3NhZ2U/OiBib29sZWFuO1xuXG4gICAgLy8gd2luZG93IHN0YXRlXG4gICAgd2luZG93V2lkdGg/OiBudW1iZXI7XG4gICAgd2luZG93SGVpZ2h0PzogbnVtYmVyO1xuICAgIG1haW5Db250ZW50SGVpZ2h0PzogbnVtYmVyO1xuICAgIHBhZ2VIZWFkZXJIZWlnaHQ/OiBudW1iZXI7XG4gICAgYnJlYWtwb2ludD86IHN0cmluZztcbiAgICB3cmFwcGVyQ2xhc3Nlcz86IHN0cmluZztcbiAgICBicmVha3BvaW50cz86IGFueTtcblxuICAgIC8vIG5hdmlnYXRpb24gc3RhdGVcbiAgICBtZW51TGlua3M/OiBFdWlNZW51SXRlbVtdO1xuICAgIHNpZGViYXJMaW5rcz86IEV1aU1lbnVJdGVtW107XG4gICAgY29tYmluZWRMaW5rcz86IEV1aU1lbnVJdGVtW107XG5cbiAgICAvLyBvdGhlciBzdGF0ZXNcbiAgICBpc0Jsb2NrRG9jdW1lbnRBY3RpdmU/OiBib29sZWFuO1xuXG4gICAgLy8gZGV2aWNlIGluZm9cbiAgICBkZXZpY2VJbmZvOiBhbnk7XG5cbiAgICAvLyBsYW5ndWFnZSBpbmZvc1xuICAgIGFjdGl2ZUxhbmd1YWdlOiBzdHJpbmc7XG4gICAgbGFuZ3VhZ2VzOiAoc3RyaW5nIHwgRXVpTGFuZ3VhZ2UpW107XG5cbiAgICAvLyBhcHAgbWV0YWRhdGFcbiAgICBhcHBNZXRhZGF0YTogYW55O1xuXG4gICAgLy8gdmFyaW91cyBkeW5hbWljIHN0YXRlXG4gICAgaGFzTW9kYWxBY3RpdmU/OiBib29sZWFuO1xuICAgIGlzRGltbWVyQWN0aXZlPzogYm9vbGVhbjsgLy8gVXNhZ2U6IG1hcCB0byBldWkgYmFzZSBkaXJlY3RpdmUgaW5wdXQgY29lcmNlIGV1aUhpZ2hsaWdodGVkXG59XG5cbmNvbnN0IGluaXRpYWxTdGF0ZTogVUlTdGF0ZSA9IHtcbiAgICBhcHBOYW1lOiAnJyxcbiAgICBhcHBTaG9ydE5hbWU6ICcnLFxuICAgIGFwcFN1YlRpdGxlOiAnJyxcbiAgICBhcHBCYXNlRm9udFNpemU6ICcnLFxuICAgIHVzZXJJbmZvczogbnVsbCxcbiAgICB1c2VyU3ViSW5mb3M6IG51bGwsXG4gICAgaW1wZXJzb25hdGVkVXNlckluZm9zOiBudWxsLFxuICAgIGlzU2lkZWJhck9wZW46IHRydWUsXG4gICAgaXNTaWRlYmFySG92ZXI6IGZhbHNlLFxuICAgIGlzU2lkZWJhckFjdGl2ZTogZmFsc2UsXG4gICAgaXNTaWRlYmFySW5uZXJBY3RpdmU6IGZhbHNlLFxuICAgIGlzU2lkZWJhclN0YXRlQ2xvc2VXaXRoSWNvbnM6IGZhbHNlLFxuICAgIGlzU2lkZWJhckV4cGFuZE9uSG92ZXI6IHRydWUsXG4gICAgaGFzU2lkZWJhcjogZmFsc2UsXG4gICAgaGFzSGVhZGVyOiBmYWxzZSxcbiAgICBoYXNCcmVhZGNydW1iOiBmYWxzZSxcbiAgICBoYXNIZWFkZXJMb2dvOiBmYWxzZSxcbiAgICBoYXNIZWFkZXJFbnZpcm9ubWVudDogZmFsc2UsXG4gICAgaGFzVG9vbGJhcjogZmFsc2UsXG4gICAgaGFzVG9vbGJhck1lbnU6IGZhbHNlLFxuICAgIGVudmlyb25tZW50VmFsdWU6ICcnLFxuICAgIGlzU2lkZWJhckhpZGRlbjogZmFsc2UsXG4gICAgaGFzVG9wTWVzc2FnZTogZmFsc2UsXG4gICAgd2luZG93V2lkdGg6IDAsXG4gICAgd2luZG93SGVpZ2h0OiAwLFxuICAgIG1haW5Db250ZW50SGVpZ2h0OiAwLFxuICAgIHBhZ2VIZWFkZXJIZWlnaHQ6IDAsXG4gICAgd3JhcHBlckNsYXNzZXM6ICcnLFxuICAgIGJyZWFrcG9pbnQ6ICcnLFxuICAgIGJyZWFrcG9pbnRzOiB7XG4gICAgICAgIGlzTW9iaWxlOiBmYWxzZSxcbiAgICAgICAgaXNUYWJsZXQ6IGZhbHNlLFxuICAgICAgICBpc0x0RGVza3RvcDogZmFsc2UsXG4gICAgICAgIGlzRGVza3RvcDogZmFsc2UsXG4gICAgICAgIGlzWEw6IGZhbHNlLFxuICAgICAgICBpc1hYTDogZmFsc2UsXG4gICAgICAgIGlzRkhEOiBmYWxzZSxcbiAgICAgICAgaXMySzogZmFsc2UsXG4gICAgICAgIGlzNEs6IGZhbHNlLFxuICAgIH0sXG4gICAgbWVudUxpbmtzOiBbXSxcbiAgICBzaWRlYmFyTGlua3M6IFtdLFxuICAgIGNvbWJpbmVkTGlua3M6IFtdLFxuICAgIGlzQmxvY2tEb2N1bWVudEFjdGl2ZTogZmFsc2UsXG4gICAgZGV2aWNlSW5mbzogbnVsbCxcbiAgICBhY3RpdmVMYW5ndWFnZTogJ2VuJyxcbiAgICBsYW5ndWFnZXM6IEV1aUV1TGFuZ3VhZ2VzLmdldExhbmd1YWdlcygpLFxuICAgIGFwcE1ldGFkYXRhOiBudWxsLFxuICAgIGhhc01vZGFsQWN0aXZlOiBmYWxzZSxcbiAgICBpc0RpbW1lckFjdGl2ZTogZmFsc2UsXG59O1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBFdWlBcHBTaGVsbFNlcnZpY2Uge1xuICAgIG5hdmlnYXRpb25TdGFydEN1c3RvbUhhbmRsZXI6ICgpID0+IHZvaWQ7XG4gICAgbmF2aWdhdGlvbkVuZEN1c3RvbUhhbmRsZXI6ICgpID0+IHZvaWQ7XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgZ2V0IHN0YXRlJCgpOiBPYnNlcnZhYmxlPFVJU3RhdGU+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3N0YXRlJC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gZXhwb3NlZCBvYnNlcnZhYmxlc1xuXG4gICAgZ2V0IGJyZWFrcG9pbnQkKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9icmVha3BvaW50JC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICBnZXQgYnJlYWtwb2ludHMkKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9icmVha3BvaW50cyQuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIHN0YXRlIG9wZXJhdGlvbnNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tXG4gICAgZ2V0IHN0YXRlKCk6IFVJU3RhdGUge1xuICAgICAgICByZXR1cm4gdGhpcy5fc3RhdGUkLmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIHB1YmxpYyBzZXR0ZXJzIGFuZCBmdW5jdGlvbnNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgc2V0IGlzU2lkZWJhck9wZW4oaXNPcGVuOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICAgICAgLi4udGhpcy5zdGF0ZSxcbiAgICAgICAgICAgIGlzU2lkZWJhck9wZW46IGlzT3BlbixcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0IGlzU2lkZWJhck9wZW4oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0YXRlLmlzU2lkZWJhck9wZW47XG4gICAgfVxuXG4gICAgc2V0IGlzU2lkZWJhckhvdmVyKGlzSG92ZXI6IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKHRoaXMuc3RhdGUuaXNTaWRlYmFyRXhwYW5kT25Ib3Zlcikge1xuICAgICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgICAgICAgICAgLi4udGhpcy5zdGF0ZSxcbiAgICAgICAgICAgICAgICBpc1NpZGViYXJIb3ZlcjogaXNIb3ZlcixcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IGlzU2lkZWJhckhvdmVyKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zdGF0ZS5pc1NpZGViYXJIb3ZlcjtcbiAgICB9XG5cbiAgICBzZXQgaXNTaWRlYmFyQWN0aXZlKGlzQWN0aXZlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICAgICAgLi4udGhpcy5zdGF0ZSxcbiAgICAgICAgICAgIGlzU2lkZWJhckFjdGl2ZTogaXNBY3RpdmUsXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHNldCBpc1NpZGViYXJJbm5lckFjdGl2ZShpc09wZW46IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgICAgICAuLi50aGlzLnN0YXRlLFxuICAgICAgICAgICAgaXNTaWRlYmFySW5uZXJBY3RpdmU6IGlzT3BlbixcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgc2V0IHNpZGViYXJMaW5rcyhsaW5rczogRXVpTWVudUl0ZW1bXSkge1xuICAgICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgICAgIC4uLnRoaXMuc3RhdGUsXG4gICAgICAgICAgICBzaWRlYmFyTGlua3M6IGxpbmtzLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBzZXQgbWVudUxpbmtzKGxpbmtzOiBFdWlNZW51SXRlbVtdKSB7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICAgICAgLi4udGhpcy5zdGF0ZSxcbiAgICAgICAgICAgIG1lbnVMaW5rczogbGlua3MsXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHNldCBpc0Jsb2NrRG9jdW1lbnRBY3RpdmUoaXNBY3RpdmU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgICAgICAuLi50aGlzLnN0YXRlLFxuICAgICAgICAgICAgaXNCbG9ja0RvY3VtZW50QWN0aXZlOiBpc0FjdGl2ZSxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0IGhhc0hlYWRlcigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RhdGUuaGFzSGVhZGVyO1xuICAgIH1cblxuICAgIC8vIEVkaXQgbW9kZVxuICAgIGdldCBpc0RpbW1lckFjdGl2ZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RhdGUuaXNEaW1tZXJBY3RpdmU7XG4gICAgfVxuXG4gICAgc2V0IGlzRGltbWVyQWN0aXZlKGlzQWN0aXZlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICAgICAgLi4udGhpcy5zdGF0ZSxcbiAgICAgICAgICAgIGlzRGltbWVyQWN0aXZlOiBpc0FjdGl2ZSxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjc3NWYXJzID0gW107XG4gICAgcHJpdmF0ZSBfc3RhdGUkOiBCZWhhdmlvclN1YmplY3Q8VUlTdGF0ZT47XG4gICAgcHJpdmF0ZSBfYnJlYWtwb2ludCQ6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+O1xuICAgIHByaXZhdGUgX2JyZWFrcG9pbnRzJDogQmVoYXZpb3JTdWJqZWN0PGFueT47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChHTE9CQUxfQ09ORklHX1RPS0VOKSBwcm90ZWN0ZWQgY29uZmlnOiBHbG9iYWxDb25maWcsXG4gICAgICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgICAgICAgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBvYmplY3QsXG4gICAgICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgIHByaXZhdGUgc3RvcmVTZXJ2aWNlOiBTdG9yZVNlcnZpY2UsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgaTE4blNlcnZpY2U6IEkxOG5TZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIGxldCBzdGF0ZVdpdGhDb25maWcgPSBpbml0aWFsU3RhdGU7XG4gICAgICAgIGNvbnN0IGxhbmd1YWdlcyA9IGNvbmZpZz8uaTE4bj8uaTE4blNlcnZpY2U/Lmxhbmd1YWdlcyB8fCBpbml0aWFsU3RhdGUubGFuZ3VhZ2VzO1xuICAgICAgICBjb25zdCBkZWZhdWx0TGFuZ3VhZ2UgPSBjb25maWc/LmkxOG4/LmkxOG5TZXJ2aWNlPy5kZWZhdWx0TGFuZ3VhZ2UgfHwgaW5pdGlhbFN0YXRlLmFjdGl2ZUxhbmd1YWdlO1xuICAgICAgICBzdGF0ZVdpdGhDb25maWcgPSB7XG4gICAgICAgICAgICAuLi5zdGF0ZVdpdGhDb25maWcsXG4gICAgICAgICAgICAuLi57XG4gICAgICAgICAgICAgICAgbGFuZ3VhZ2VzLFxuICAgICAgICAgICAgICAgIGFjdGl2ZUxhbmd1YWdlOiBkZWZhdWx0TGFuZ3VhZ2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9O1xuICAgICAgICB0aGlzLl9zdGF0ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHN0YXRlV2l0aENvbmZpZyk7XG4gICAgICAgIHRoaXMuX2JyZWFrcG9pbnQkID0gbmV3IEJlaGF2aW9yU3ViamVjdCgnJyk7XG4gICAgICAgIHRoaXMuX2JyZWFrcG9pbnRzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Qoe30pO1xuICAgICAgICB0aGlzLmJpbmRBY3RpdmVMYW5ndWFnZVRvQXBwU2hlbGxTdGF0ZSgpO1xuXG4gICAgICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICAgICAgICByb3V0ZXIuZXZlbnRzLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpbmRvdy5zY3JvbGxUbygwLCAwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNldFN0YXRlKG5leHRTdGF0ZTogVUlTdGF0ZSwgdXBkYXRlSTE4ID0gdHJ1ZSkge1xuICAgICAgICBsZXQgYnJlYWtwb2ludCwgYnJlYWtwb2ludHMsIHdyYXBwZXJDbGFzc2VzO1xuICAgICAgICBsZXQgY29tYmluZWRMaW5rcztcblxuICAgICAgICBjb25zdCBzdGF0ZSA9IHRoaXMuc3RhdGU7XG5cbiAgICAgICAgLy8gY2hlY2sgaWYgd2luZG93IHdpZHRoIGhhcyBiZWVuIHVwZGF0ZWQgZnJvbSBwcmV2aW91cyBzdGF0ZVxuICAgICAgICBpZiAodGhpcy5zdGF0ZS53aW5kb3dXaWR0aCAhPT0gbmV4dFN0YXRlLndpbmRvd1dpZHRoKSB7XG4gICAgICAgICAgICBicmVha3BvaW50ID0gdGhpcy5nZXRCcmVha3BvaW50KG5leHRTdGF0ZS53aW5kb3dXaWR0aCk7XG4gICAgICAgICAgICBicmVha3BvaW50cyA9IHRoaXMuZ2V0QnJlYWtwb2ludHMoYnJlYWtwb2ludCk7XG5cbiAgICAgICAgICAgIHRoaXMuX2JyZWFrcG9pbnQkLm5leHQoYnJlYWtwb2ludCk7XG4gICAgICAgICAgICB0aGlzLl9icmVha3BvaW50cyQubmV4dChicmVha3BvaW50cyk7XG5cbiAgICAgICAgICAgIC8vIGlmIG5vdCBwcm9wYWdhdGUgdGhlIG9sZCBvbmVzIHdpdGhvdXQgZG9pbmcgYW55IGNhbGN1bGF0aW9uc1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgYnJlYWtwb2ludCA9IHN0YXRlLmJyZWFrcG9pbnQ7XG4gICAgICAgICAgICBicmVha3BvaW50cyA9IHN0YXRlLmJyZWFrcG9pbnRzO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gZmluYWxseSBnZXQgdGhlIHdyYXBwZXIgY2xhc3NlcyB3aGVuIGJvdGggdGhlIHN0YXRlIGFuZCBicmVha3BvaW50IGFyZSBrbm93blxuICAgICAgICB3cmFwcGVyQ2xhc3NlcyA9IHRoaXMuZ2V0V3JhcHBlckNsYXNzZXMobmV4dFN0YXRlLCBicmVha3BvaW50KTtcblxuICAgICAgICAvLyBjaGVjayBpZiB0aGUgbWVudUxpbmtzIG9yIHNpZGViYXJMaW5rcyBoYXZlIGNoYW5nZWQgZnJvbSBwcmV2aW91cyBzdGF0ZVxuICAgICAgICBpZiAodGhpcy5zdGF0ZS5tZW51TGlua3MgIT09IG5leHRTdGF0ZS5tZW51TGlua3MgfHwgdGhpcy5zdGF0ZS5zaWRlYmFyTGlua3MgIT09IG5leHRTdGF0ZS5zaWRlYmFyTGlua3MpIHtcbiAgICAgICAgICAgIGNvbWJpbmVkTGlua3MgPSBbLi4ubmV4dFN0YXRlLm1lbnVMaW5rcywgLi4ubmV4dFN0YXRlLnNpZGViYXJMaW5rc107XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb21iaW5lZExpbmtzID0gdGhpcy5zdGF0ZS5jb21iaW5lZExpbmtzO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgc3RhdGVCZWZvcmVVcGRhdGUgPSB7IC4uLnRoaXMuc3RhdGUgfTtcblxuICAgICAgICAvLyB3ZSBwdXQgaXQgYWxsIHRvZ2V0aGVyIHdpdGggdGhlIGNhbGN1bGF0ZWQgcHJvcGVydGllc1xuICAgICAgICB0aGlzLl9zdGF0ZSQubmV4dCh7XG4gICAgICAgICAgICAuLi5uZXh0U3RhdGUsXG4gICAgICAgICAgICB3cmFwcGVyQ2xhc3NlcyxcbiAgICAgICAgICAgIGJyZWFrcG9pbnQsXG4gICAgICAgICAgICBicmVha3BvaW50cyxcbiAgICAgICAgICAgIGNvbWJpbmVkTGlua3MsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIHVwZGF0ZSB0aGUgU3RvcmUgTGFuZ3VhZ2VcbiAgICAgICAgaWYgKHVwZGF0ZUkxOCAmJiBuZXh0U3RhdGUuYWN0aXZlTGFuZ3VhZ2UgIT09IHN0YXRlQmVmb3JlVXBkYXRlLmFjdGl2ZUxhbmd1YWdlKSB7XG4gICAgICAgICAgICB0aGlzLmkxOG5TZXJ2aWNlLnVwZGF0ZVN0YXRlKHsgYWN0aXZlTGFuZzogbmV4dFN0YXRlLmFjdGl2ZUxhbmd1YWdlIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRW1pdHMgYSBzbGljZSBmcm9tIHRoZSBzdGF0ZSB3aGV0aGVyIHRoYXQgY2hhbmdlc1xuICAgICAqXG4gICAgICogQHBhcmFtIGtleSBjYW4gYmUgJ2tleScgb3IgJ2tleS5zdWIuc3ViJ1xuICAgICAqL1xuICAgIGdldFN0YXRlKGtleT86IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIHJldHVybiBkZWZlcigoKSA9PlxuICAgICAgICAgICAgLy8gY2hlY2sgaWYga2V5IGV4aXN0c1xuICAgICAgICAgICAga2V5XG4gICAgICAgICAgICAgICAgPyB0aGlzLnN0YXRlJC5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgIG1hcCgoc3RhdGUpID0+IGdldChzdGF0ZSwga2V5KSksXG4gICAgICAgICAgICAgICAgICAgICAgLy8gZmlsdGVyKChzdGF0ZSkgPT4gc3RhdGUpLFxuICAgICAgICAgICAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCh4LCB5KSA9PiBpc0VxdWFsKHgsIHkpKVxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIDogdGhpcy5zdGF0ZSRcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2lkZWJhclRvZ2dsZSgpIHtcbiAgICAgICAgdGhpcy5pc1NpZGViYXJPcGVuID0gIXRoaXMuc3RhdGUuaXNTaWRlYmFyT3BlbjtcbiAgICB9XG5cbiAgICAvLyBFZGl0IG1vZGVcbiAgICBwdWJsaWMgZGltbWVyQWN0aXZlVG9nZ2xlKCkge1xuICAgICAgICBjb25zdCBpc0FjdGl2ZSA9IHRoaXMuaXNEaW1tZXJBY3RpdmU7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICAgICAgLi4udGhpcy5zdGF0ZSxcbiAgICAgICAgICAgIGlzRGltbWVyQWN0aXZlOiAhaXNBY3RpdmUsXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmFjdGl2YXRlRWRpdE1vZGVDc3NWYXJzKCFpc0FjdGl2ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldERpbW1lckFjdGl2ZVN0YXRlKGFjdGl2ZVN0YXRlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICAgICAgLi4udGhpcy5zdGF0ZSxcbiAgICAgICAgICAgIGlzRGltbWVyQWN0aXZlOiBhY3RpdmVTdGF0ZSxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuYWN0aXZhdGVFZGl0TW9kZUNzc1ZhcnMoYWN0aXZlU3RhdGUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhY3RpdmF0ZUVkaXRNb2RlQ3NzVmFycyhpc0FjdGl2ZTogYm9vbGVhbikge1xuICAgICAgICBpZiAoaXNBY3RpdmUpIHtcbiAgICAgICAgICAgIHRoaXMuX3NldENzc1ZhclZhbHVlKCctLWV1aS1kb2NwYWdlLW5hdmlnYXRpb24tei1pbmRleCcsICdpbmhlcml0Jyk7IC8vIFJlc2V0IGRvYy1wYWdlLW5hdmlnYXRpb24tY29sdW1uIHotaW5kZXhcbiAgICAgICAgICAgIHRoaXMuX3NldENzc1ZhclZhbHVlKCctLWV1aS16LWluZGV4LXNpZGViYXInLCAnaW5oZXJpdCcpOyAvLyBSZXNldCBldWktYXBwLXNpZGViYXIgei1pbmRleFxuICAgICAgICAgICAgdGhpcy5fc2V0Q3NzVmFyVmFsdWUoJy0tZXVpLXotaW5kZXgtcm9vdCcsICdpbmhlcml0Jyk7IC8vIFJlc2V0IGV1aS1hcHAtbWFpbi1jb250ZW50IHotaW5kZXhcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX3NldENzc1ZhclZhbHVlKCctLWV1aS1kb2NwYWdlLW5hdmlnYXRpb24tei1pbmRleCcsICcyJyk7IC8vIFJlc3RvcmUgZG9jLXBhZ2UtbmF2aWdhdGlvbi1jb2x1bW4gei1pbmRleFxuICAgICAgICAgICAgdGhpcy5fc2V0Q3NzVmFyVmFsdWUoJy0tZXVpLXotaW5kZXgtc2lkZWJhcicsICcxMDQ0Jyk7IC8vIFJlc3RvcmUgZXVpLWFwcC1zaWRlYmFyIHotaW5kZXhcbiAgICAgICAgICAgIHRoaXMuX3NldENzc1ZhclZhbHVlKCctLWV1aS16LWluZGV4LXJvb3QnLCAnMScpOyAvLyBSZXN0b3JlIGV1aS1hcHAtbWFpbi1jb250ZW50IHotaW5kZXhcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIC0tLS0tLS0tLS0tLS0tXG4gICAgLy8gcHVibGljIG1ldGhvZHNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLVxuICAgIHB1YmxpYyBmZXRjaEFwcE1ldGFkYXRhKG1ldGFkYXRhRmlsZVBhdGggPSAnYXNzZXRzL2FwcC1tZXRhZGF0YS5qc29uJykge1xuICAgICAgICB0aGlzLmdldEpzb24obWV0YWRhdGFGaWxlUGF0aCkudGhlbigoZGF0YSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgICAgICAgICAgLi4udGhpcy5zdGF0ZSxcbiAgICAgICAgICAgICAgICBhcHBNZXRhZGF0YTogZGF0YSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWN0aXZhdGVTaWRlYmFyKCkge1xuICAgICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgICAgIC4uLnRoaXMuc3RhdGUsXG4gICAgICAgICAgICBoYXNTaWRlYmFyOiB0cnVlLFxuICAgICAgICB9KTtcblxuICAgICAgICBpZiAoIXRoaXMuc3RhdGUuaXNTaWRlYmFySGlkZGVuKSB7XG4gICAgICAgICAgICB0aGlzLmFjdGl2YXRlU2lkZWJhckNzc1ZhcnMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhY3RpdmF0ZVNpZGViYXJIZWFkZXIoKSB7XG4gICAgICAgIHRoaXMuYWN0aXZhdGVTaWRlYmFySGVhZGVyQ3NzVmFycygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhY3RpdmF0ZVNpZGViYXJGb290ZXIoKSB7XG4gICAgICAgIHRoaXMuYWN0aXZhdGVTaWRlYmFyRm9vdGVyQ3NzVmFycygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhY3RpdmF0ZUhlYWRlcigpIHtcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgICAgICAuLi50aGlzLnN0YXRlLFxuICAgICAgICAgICAgaGFzSGVhZGVyOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5hY3RpdmF0ZUhlYWRlckNzc1ZhcnMoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWN0aXZhdGVCcmVhZGNydW1iKCkge1xuICAgICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgICAgIC4uLnRoaXMuc3RhdGUsXG4gICAgICAgICAgICBoYXNCcmVhZGNydW1iOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5hY3RpdmF0ZUJyZWFkY3J1bWJDc3NWYXJzKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFjdGl2YXRlVG9wTWVzc2FnZShoZWlnaHQ6IG51bWJlcikge1xuICAgICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgICAgIC4uLnRoaXMuc3RhdGUsXG4gICAgICAgICAgICBoYXNUb3BNZXNzYWdlOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5hY3RpdmF0ZVRvcE1lc3NhZ2VDc3NWYXJzKGhlaWdodCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFjdGl2YXRlVG9vbGJhcigpIHtcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgICAgICAuLi50aGlzLnN0YXRlLFxuICAgICAgICAgICAgaGFzVG9vbGJhcjogdHJ1ZSxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuYWN0aXZhdGVUb29sYmFyQ3NzVmFycygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhY3RpdmF0ZVRvb2xiYXJNZW51KCkge1xuICAgICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgICAgIC4uLnRoaXMuc3RhdGUsXG4gICAgICAgICAgICBoYXNUb29sYmFyTWVudTogdHJ1ZSxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGZldGNoQ3NzVmFycygpIHtcbiAgICAgICAgY29uc3QgY3NzVmFyTmFtZXMgPSBbXG4gICAgICAgICAgICAnLS1ldWktYXBwLWhlYWRlci1oZWlnaHQtZGVmYXVsdCcsXG4gICAgICAgICAgICAnLS1ldWktYXBwLWhlYWRlci1oZWlnaHQtYWN0aXZlJyxcbiAgICAgICAgICAgICctLWV1aS1hcHAtaGVhZGVyLWhlaWdodC1zaHJpbmsnLFxuICAgICAgICAgICAgJy0tZXVpLWFwcC1icmVhZGNydW1iLWhlaWdodC1kZWZhdWx0JyxcbiAgICAgICAgICAgICctLWV1aS1hcHAtYnJlYWRjcnVtYi1oZWlnaHQtYWN0aXZlJyxcbiAgICAgICAgICAgICctLWV1aS1hcHAtdG9wLW1lc3NhZ2UtaGVpZ2h0LWRlZmF1bHQnLFxuICAgICAgICAgICAgJy0tZXVpLWFwcC10b3AtbWVzc2FnZS1oZWlnaHQtYWN0aXZlJyxcbiAgICAgICAgICAgICctLWV1aS1hcHAtdG9wLW1lc3NhZ2UtaGVpZ2h0LXNocmluaycsXG4gICAgICAgICAgICAnLS1ldWktYXBwLXRvb2xiYXItaGVpZ2h0LWRlZmF1bHQnLFxuICAgICAgICAgICAgJy0tZXVpLWFwcC10b29sYmFyLWhlaWdodC1hY3RpdmUnLFxuICAgICAgICAgICAgJy0tZXVpLWFwcC1zaWRlYmFyLXdpZHRoLWRlZmF1bHQnLFxuICAgICAgICAgICAgJy0tZXVpLWFwcC1zaWRlYmFyLXdpZHRoLWFjdGl2ZScsXG4gICAgICAgICAgICAnLS1ldWktYXBwLXNpZGViYXItd2lkdGgtY2xvc2UtZGVmYXVsdCcsXG4gICAgICAgICAgICAnLS1ldWktYXBwLXNpZGViYXItd2lkdGgtY2xvc2UtYWN0aXZlJyxcbiAgICAgICAgICAgICctLWV1aS1hcHAtc2lkZWJhci1oZWFkZXItaGVpZ2h0LWRlZmF1bHQnLFxuICAgICAgICAgICAgJy0tZXVpLWFwcC1zaWRlYmFyLWhlYWRlci1oZWlnaHQtYWN0aXZlJyxcbiAgICAgICAgICAgICctLWV1aS1hcHAtc2lkZWJhci1mb290ZXItaGVpZ2h0LWRlZmF1bHQnLFxuICAgICAgICAgICAgJy0tZXVpLWFwcC1zaWRlYmFyLWZvb3Rlci1oZWlnaHQtYWN0aXZlJyxcbiAgICAgICAgXTtcblxuICAgICAgICB0aGlzLmNzc1ZhcnMgPSBjc3NWYXJOYW1lcy5tYXAoKHYpID0+ICh7IGtleTogdiwgdmFsdWU6IHRoaXMuZ2V0Q3NzVmFyVmFsdWUodikgfSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBpbml0Q3NzVmFycygpIHtcbiAgICAgICAgdGhpcy5zZXRDc3NWYXIoJy0tZXVpLWFwcC1oZWFkZXItaGVpZ2h0LWRlZmF1bHQnLCAnLS1ldWktYXBwLWhlYWRlci1oZWlnaHQnKTtcbiAgICAgICAgdGhpcy5zZXRDc3NWYXIoJy0tZXVpLWFwcC1icmVhZGNydW1iLWhlaWdodC1kZWZhdWx0JywgJy0tZXVpLWFwcC1icmVhZGNydW1iLWhlaWdodCcpO1xuICAgICAgICB0aGlzLnNldENzc1ZhcignLS1ldWktYXBwLXRvcC1tZXNzYWdlLWhlaWdodC1kZWZhdWx0JywgJy0tZXVpLWFwcC10b3AtbWVzc2FnZS1oZWlnaHQnKTtcbiAgICAgICAgdGhpcy5zZXRDc3NWYXIoJy0tZXVpLWFwcC10b29sYmFyLWhlaWdodC1kZWZhdWx0JywgJy0tZXVpLWFwcC10b29sYmFyLWhlaWdodCcpO1xuICAgICAgICB0aGlzLnNldENzc1ZhcignLS1ldWktYXBwLXNpZGViYXItd2lkdGgtZGVmYXVsdCcsICctLWV1aS1hcHAtc2lkZWJhci13aWR0aCcpO1xuICAgICAgICB0aGlzLnNldENzc1ZhcignLS1ldWktYXBwLXNpZGViYXItd2lkdGgtY2xvc2UtZGVmYXVsdCcsICctLWV1aS1hcHAtc2lkZWJhci13aWR0aC1jbG9zZScpO1xuICAgICAgICB0aGlzLnNldENzc1ZhcignLS1ldWktYXBwLXNpZGViYXItaGVhZGVyLWhlaWdodC1kZWZhdWx0JywgJy0tZXVpLWFwcC1zaWRlYmFyLWhlYWRlci1oZWlnaHQnKTtcbiAgICAgICAgdGhpcy5zZXRDc3NWYXIoJy0tZXVpLWFwcC1zaWRlYmFyLWZvb3Rlci1oZWlnaHQtZGVmYXVsdCcsICctLWV1aS1hcHAtc2lkZWJhci1mb290ZXItaGVpZ2h0Jyk7XG4gICAgfVxuXG4gICAgcHVibGljIGFjdGl2YXRlSGVhZGVyQ3NzVmFycygpIHtcbiAgICAgICAgdGhpcy5zZXRDc3NWYXIoJy0tZXVpLWFwcC1oZWFkZXItaGVpZ2h0LWFjdGl2ZScsICctLWV1aS1hcHAtaGVhZGVyLWhlaWdodCcpO1xuICAgIH1cbiAgICBwdWJsaWMgYWN0aXZhdGVCcmVhZGNydW1iQ3NzVmFycygpIHtcbiAgICAgICAgdGhpcy5zZXRDc3NWYXIoJy0tZXVpLWFwcC1icmVhZGNydW1iLWhlaWdodC1hY3RpdmUnLCAnLS1ldWktYXBwLWJyZWFkY3J1bWItaGVpZ2h0Jyk7XG4gICAgfVxuXG4gICAgcHVibGljIGFjdGl2YXRlVG9wTWVzc2FnZUNzc1ZhcnMoaGVpZ2h0OiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5fc2V0Q3NzVmFyVmFsdWUoJy0tZXVpLWFwcC10b3AtbWVzc2FnZS1oZWlnaHQnLCBgJHtoZWlnaHR9cHhgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWN0aXZhdGVUb29sYmFyQ3NzVmFycygpIHtcbiAgICAgICAgdGhpcy5zZXRDc3NWYXIoJy0tZXVpLWFwcC10b29sYmFyLWhlaWdodC1hY3RpdmUnLCAnLS1ldWktYXBwLXRvb2xiYXItaGVpZ2h0Jyk7XG4gICAgfVxuXG4gICAgcHVibGljIGFjdGl2YXRlRm9vdGVyQ3NzVmFycygpIHtcbiAgICAgICAgdGhpcy5zZXRDc3NWYXIoJy0tZXVpLWFwcC1mb290ZXItaGVpZ2h0LWFjdGl2ZScsICctLWV1aS1hcHAtZm9vdGVyLWhlaWdodCcpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXRIZWFkZXJTaHJpbmtDc3NWYXIoYWN0aXZlOiBib29sZWFuKSB7XG4gICAgICAgIGlmIChhY3RpdmUpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0Q3NzVmFyKCctLWV1aS1hcHAtaGVhZGVyLWhlaWdodC1zaHJpbmsnLCAnLS1ldWktYXBwLWhlYWRlci1oZWlnaHQnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2V0Q3NzVmFyKCctLWV1aS1hcHAtaGVhZGVyLWhlaWdodC1hY3RpdmUnLCAnLS1ldWktYXBwLWhlYWRlci1oZWlnaHQnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhY3RpdmF0ZVNpZGViYXJDc3NWYXJzKCkge1xuICAgICAgICB0aGlzLnNldENzc1ZhcignLS1ldWktYXBwLXNpZGViYXItd2lkdGgtYWN0aXZlJywgJy0tZXVpLWFwcC1zaWRlYmFyLXdpZHRoJyk7XG4gICAgICAgIHRoaXMuc2V0Q3NzVmFyKCctLWV1aS1hcHAtc2lkZWJhci13aWR0aC1jbG9zZS1hY3RpdmUnLCAnLS1ldWktYXBwLXNpZGViYXItd2lkdGgtY2xvc2UnKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVtb3ZlU2lkZWJhckNzc1ZhcnMoKSB7XG4gICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgnLS1ldWktYXBwLXNpZGViYXItaGVhZGVyLWhlaWdodCcpO1xuICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUucmVtb3ZlUHJvcGVydHkoJy0tZXVpLWFwcC1zaWRlYmFyLWZvb3Rlci1oZWlnaHQnKTtcbiAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnJlbW92ZVByb3BlcnR5KCctLWV1aS1hcHAtc2lkZWJhci13aWR0aCcpO1xuICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUucmVtb3ZlUHJvcGVydHkoJy0tZXVpLWFwcC1zaWRlYmFyLXdpZHRoLWNsb3NlJyk7XG4gICAgfVxuXG4gICAgcHVibGljIGFjdGl2YXRlU2lkZWJhckhlYWRlckNzc1ZhcnMoKSB7XG4gICAgICAgIHRoaXMuc2V0Q3NzVmFyKCctLWV1aS1hcHAtc2lkZWJhci1oZWFkZXItaGVpZ2h0LWFjdGl2ZScsICctLWV1aS1hcHAtc2lkZWJhci1oZWFkZXItaGVpZ2h0Jyk7XG4gICAgfVxuXG4gICAgcHVibGljIGFjdGl2YXRlU2lkZWJhckZvb3RlckNzc1ZhcnMoKSB7XG4gICAgICAgIHRoaXMuc2V0Q3NzVmFyKCctLWV1aS1hcHAtc2lkZWJhci1mb290ZXItaGVpZ2h0LWFjdGl2ZScsICctLWV1aS1hcHAtc2lkZWJhci1mb290ZXItaGVpZ2h0Jyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgdmlld3BvcnQgaGVpZ2h0IGFuZCB3aWR0aCBhbmQgbXVsdGlwbGUgaXQgYnkgMSUgdG8gZ2V0IGEgdmFsdWUgZm9yIGEgdmgvdncgdW5pdFxuICAgICAqIFNldHMgdGhlIHZhbHVlIGluIHRoZSAtLWV1aS1hcHAtdmggY3VzdG9tIHByb3BlcnR5IHRvIHRoZSByb290IG9mIHRoZSBkb2N1bWVudFxuICAgICAqIFNldHMgdGhlIHZhbHVlIGluIHRoZSAtLWV1aS1hcHAtdncgY3VzdG9tIHByb3BlcnR5IHRvIHRoZSByb290IG9mIHRoZSBkb2N1bWVudFxuICAgICAqIEV4YW1wbGUgZm9yIDEwMCUgaGVpZ2h0OiBjYWxjKHZhcigtLWV1aS1hcHAtdmgsIDF2aCkgKiAxMDApO1xuICAgICAqIEV4YW1wbGUgZm9yIDUwJSBoZWlnaHQ6IGNhbGModmFyKC0tZXVpLWFwcC12aCwgMXZoKSAqIDUwKTtcbiAgICAgKiBFeGFtcGxlIGZvciA1MCUgd2lkdGg6IGNhbGModmFyKC0tZXVpLWFwcC12dywgMXZ3KSAqIDUwKTtcbiAgICAgKi9cbiAgICBwdWJsaWMgc2V0QXBwVmlld3BvcnRDc3NWYXJzKCkge1xuICAgICAgICBsZXQgdmggPSB3aW5kb3cuaW5uZXJIZWlnaHQgKiAwLjAxO1xuICAgICAgICBsZXQgdncgPSB3aW5kb3cuaW5uZXJXaWR0aCAqIDAuMDE7XG4gICAgICAgIHRoaXMuX3NldENzc1ZhclZhbHVlKCctLWV1aS1hcHAtdmgnLCBgJHt2aH1weGApO1xuICAgICAgICB0aGlzLl9zZXRDc3NWYXJWYWx1ZSgnLS1ldWktYXBwLXZ3JywgYCR7dnd9cHhgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBjdXJyZW50IHZhbHVlIG9mIC0tZXVpLWJhc2UtZm9udC1zaXplIENTUyB2YXJpYWJsZVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRCYXNlRm9udFNpemUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RhdGUuYXBwQmFzZUZvbnRTaXplIHx8IHRoaXMuZ2V0Q3NzVmFyVmFsdWUoJy0tZXVpLWJhc2UtZm9udC1zaXplJyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVXBkYXRlcyB0aGUgY3VycmVudCB2YWx1ZSBvZiAtLWV1aS1iYXNlLWZvbnQtc2l6ZSBDU1MgdmFyaWFibGUgYW5kIHRoZSBVSVN0YXRlIGFwcEJhc2VGb250U2l6ZVxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRCYXNlRm9udFNpemUobmV3c2l6ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgLi4udGhpcy5zdGF0ZSxcbiAgICAgICAgICAgICAgICBhcHBCYXNlRm9udFNpemU6IG5ld3NpemUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZmFsc2VcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5fc2V0Q3NzVmFyVmFsdWUoJy0tZXVpLWJhc2UtZm9udC1zaXplJywgbmV3c2l6ZSk7XG4gICAgfVxuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gcHJpdmF0ZSBnZXR0ZXJzXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tXG4gICAgcHJpdmF0ZSBnZXRDc3NWYXJWYWx1ZShpbnB1dFByb3BlcnR5KSB7XG4gICAgICAgIHJldHVybiBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkuZ2V0UHJvcGVydHlWYWx1ZShpbnB1dFByb3BlcnR5KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldENzc1ZhcihpbnB1dFByb3BlcnR5LCBvdXRwdXRQcm9wZXJ0eSkge1xuICAgICAgICBjb25zdCBjc3NWYXJWYWx1ZSA9IHRoaXMuY3NzVmFycy5maWx0ZXIoKHYpID0+IHYua2V5ID09PSBpbnB1dFByb3BlcnR5KVswXS52YWx1ZTtcbiAgICAgICAgdGhpcy5fc2V0Q3NzVmFyVmFsdWUob3V0cHV0UHJvcGVydHksIGNzc1ZhclZhbHVlKTtcbiAgICAgICAgLy8gY29uc29sZS5sb2coaW5wdXRQcm9wZXJ0eSwgb3V0cHV0UHJvcGVydHksIGNzc1ZhclZhbHVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zZXRDc3NWYXJWYWx1ZSh2YXJOYW1lLCB2YXJWYWx1ZSkge1xuICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkodmFyTmFtZSwgdmFyVmFsdWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0V3JhcHBlckNsYXNzZXMoc3RhdGU6IFVJU3RhdGUsIGJyZWFrcG9pbnQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGxldCBjbGFzc2VzOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgICAgIGNsYXNzZXMucHVzaChicmVha3BvaW50KTtcblxuICAgICAgICBpZiAoc3RhdGUuaGFzU2lkZWJhcikge1xuICAgICAgICAgICAgaWYgKHN0YXRlLmlzU2lkZWJhck9wZW4gJiYgKHN0YXRlLmlzU2lkZWJhckFjdGl2ZSB8fCBzdGF0ZS5pc1NpZGViYXJJbm5lckFjdGl2ZSkpIHtcbiAgICAgICAgICAgICAgICBjbGFzc2VzLnB1c2goJ3NpZGViYXItc3RhdGUtb3BlbicpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCFzdGF0ZS5pc1NpZGViYXJPcGVuICYmIChzdGF0ZS5pc1NpZGViYXJBY3RpdmUgfHwgc3RhdGUuaXNTaWRlYmFySW5uZXJBY3RpdmUpKSB7XG4gICAgICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKCdzaWRlYmFyLXN0YXRlLWNsb3NlJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoc3RhdGUuaXNTaWRlYmFyQWN0aXZlKSB7XG4gICAgICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKCdzaWRlYmFyLWFjdGl2ZScpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHN0YXRlLmlzU2lkZWJhcklubmVyQWN0aXZlKSB7XG4gICAgICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKCdzaWRlYmFyLWlubmVyLWFjdGl2ZScpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHN0YXRlLmlzU2lkZWJhclN0YXRlQ2xvc2VXaXRoSWNvbnMpIHtcbiAgICAgICAgICAgICAgICBjbGFzc2VzLnB1c2goJ3NpZGViYXItc3RhdGUtY2xvc2Utd2l0aC1pY29ucycpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBORVcgQVBQLVNIRUxMIHByb3BzXG4gICAgICAgICAgICBpZiAoc3RhdGUuaXNTaWRlYmFySGlkZGVuKSB7XG4gICAgICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKCdzaWRlYmFyLS1oaWRkZW4nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChzdGF0ZS5pc1NpZGViYXJPcGVuKSB7XG4gICAgICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKCdzaWRlYmFyLS1vcGVuJyk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNsYXNzZXMucHVzaCgnc2lkZWJhci0tY2xvc2UnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChzdGF0ZS5pc1NpZGViYXJIb3Zlcikge1xuICAgICAgICAgICAgICAgIGNsYXNzZXMucHVzaCgnc2lkZWJhci0taG92ZXInKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoc3RhdGUuZGV2aWNlSW5mbyAmJiBzdGF0ZS5kZXZpY2VJbmZvLmlzRkYpIHtcbiAgICAgICAgICAgIGNsYXNzZXMucHVzaCgnZmYnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoc3RhdGUuZGV2aWNlSW5mbyAmJiBzdGF0ZS5kZXZpY2VJbmZvLmlzSUUpIHtcbiAgICAgICAgICAgIGNsYXNzZXMucHVzaCgnaWUnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoc3RhdGUuZGV2aWNlSW5mbyAmJiBzdGF0ZS5kZXZpY2VJbmZvLmlzSUUxMSkge1xuICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKCdpZTExJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHN0YXRlLmRldmljZUluZm8gJiYgc3RhdGUuZGV2aWNlSW5mby5pc0Nocm9tZSkge1xuICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKCdjaHJvbWUnKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY2xhc3Nlcy5qb2luKCcgJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRCcmVha3BvaW50KHdpbmRvd1dpZHRoOiBudW1iZXIpOiBzdHJpbmcge1xuICAgICAgICBsZXQgYmtwID0gJyc7XG5cbiAgICAgICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICAgICAgICBjYXNlIHdpbmRvd1dpZHRoID49IDAgJiYgd2luZG93V2lkdGggPCA1NzY6XG4gICAgICAgICAgICAgICAgYmtwID0gJ3hzJztcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2Ugd2luZG93V2lkdGggPj0gNTc2ICYmIHdpbmRvd1dpZHRoIDwgNzY4OlxuICAgICAgICAgICAgICAgIGJrcCA9ICdzbSc7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIHdpbmRvd1dpZHRoID49IDc2OCAmJiB3aW5kb3dXaWR0aCA8IDk5MjpcbiAgICAgICAgICAgICAgICBia3AgPSAnbWQnO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSB3aW5kb3dXaWR0aCA+PSA5OTIgJiYgd2luZG93V2lkdGggPCAxMjAwOlxuICAgICAgICAgICAgICAgIGJrcCA9ICdsZyc7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIHdpbmRvd1dpZHRoID49IDEyMDAgJiYgd2luZG93V2lkdGggPCAxNDAwOlxuICAgICAgICAgICAgICAgIGJrcCA9ICd4bCc7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIHdpbmRvd1dpZHRoID49IDE0MDAgJiYgd2luZG93V2lkdGggPCAxOTIwOlxuICAgICAgICAgICAgICAgIGJrcCA9ICd4eGwnO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSB3aW5kb3dXaWR0aCA+PSAxOTIwICYmIHdpbmRvd1dpZHRoIDwgMjU2MDpcbiAgICAgICAgICAgICAgICBia3AgPSAnZmhkJztcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2Ugd2luZG93V2lkdGggPj0gMjU2MCAmJiB3aW5kb3dXaWR0aCA8IDM4NDA6XG4gICAgICAgICAgICAgICAgYmtwID0gJzJrJztcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2Ugd2luZG93V2lkdGggPj0gMzg0MDpcbiAgICAgICAgICAgICAgICBia3AgPSAnNGsnO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBia3A7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRCcmVha3BvaW50cyhia3A6IHN0cmluZyk6IGFueSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpc01vYmlsZTogYmtwID09PSAneHMnIHx8IGJrcCA9PT0gJ3NtJyxcbiAgICAgICAgICAgIGlzVGFibGV0OiBia3AgPT09ICdtZCcsXG4gICAgICAgICAgICBpc0x0RGVza3RvcDogYmtwID09PSAneHMnIHx8IGJrcCA9PT0gJ3NtJyB8fCBia3AgPT09ICdtZCcsXG4gICAgICAgICAgICBpc0Rlc2t0b3A6IGJrcCA9PT0gJ2xnJyxcbiAgICAgICAgICAgIGlzWEw6IGJrcCA9PT0gJ3hsJyxcbiAgICAgICAgICAgIGlzWFhMOiBia3AgPT09ICd4eGwnLFxuICAgICAgICAgICAgaXNGSEQ6IGJrcCA9PT0gJ2ZoZCcsXG4gICAgICAgICAgICBpczJLOiBia3AgPT09ICcyaycsXG4gICAgICAgICAgICBpczRLOiBia3AgPT09ICc0aycsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRKc29uKHVybDogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodXJsKS50b1Byb21pc2UoKS50aGVuKHRoaXMuZXh0cmFjdERhdGEpLmNhdGNoKHRoaXMuaGFuZGxlRXJyb3IpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZXh0cmFjdERhdGEocmVzOiBSZXNwb25zZSkge1xuICAgICAgICBjb25zdCBib2R5ID0gcmVzO1xuICAgICAgICByZXR1cm4gYm9keSB8fCB7fTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhhbmRsZUVycm9yKGVycm9yOiBhbnkpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdBbiBlcnJvciBvY2N1cnJlZCcsIGVycm9yKTtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KGVycm9yLm1lc3NhZ2UgfHwgZXJyb3IpO1xuICAgIH1cblxuICAgIHByaXZhdGUgYmluZEFjdGl2ZUxhbmd1YWdlVG9BcHBTaGVsbFN0YXRlKCkge1xuICAgICAgICB0aGlzLnN0b3JlU2VydmljZS5zZWxlY3QoZ2V0QWN0aXZlTGFuZykuc3Vic2NyaWJlKChhY3RpdmVMYW5nKSA9PiB7XG4gICAgICAgICAgICBpZiAoYWN0aXZlTGFuZyAhPT0gdGhpcy5zdGF0ZS5hY3RpdmVMYW5ndWFnZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLnRoaXMuc3RhdGUsXG4gICAgICAgICAgICAgICAgICAgICAgICBhY3RpdmVMYW5ndWFnZTogYWN0aXZlTGFuZyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZmFsc2VcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
@@ -707,10 +707,10 @@ export class EuiTimezoneService {
707
707
  getTimezone(tz) {
708
708
  return EUI_TIMEZONES.find((item) => item.name === tz);
709
709
  }
710
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiTimezoneService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
711
- /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiTimezoneService }); }
710
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.7", ngImport: i0, type: EuiTimezoneService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
711
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0-next.7", ngImport: i0, type: EuiTimezoneService }); }
712
712
  }
713
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiTimezoneService, decorators: [{
713
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.7", ngImport: i0, type: EuiTimezoneService, decorators: [{
714
714
  type: Injectable
715
715
  }] });
716
716
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLXRpbWV6b25lLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2V1aS10aW1lem9uZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9CQUFvQjtBQUVwQixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUUzQyxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUc7SUFDekIsRUFBRSxFQUFFLGFBQWE7SUFDakIsRUFBRSxFQUFFLGVBQWU7SUFDbkIsRUFBRSxFQUFFLFNBQVM7SUFDYixFQUFFLEVBQUUsU0FBUztJQUNiLEVBQUUsRUFBRSxnQkFBZ0I7SUFDcEIsRUFBRSxFQUFFLFNBQVM7SUFDYixFQUFFLEVBQUUsUUFBUTtJQUNaLEVBQUUsRUFBRSxVQUFVO0lBQ2QsRUFBRSxFQUFFLFlBQVk7SUFDaEIsRUFBRSxFQUFFLHFCQUFxQjtJQUN6QixFQUFFLEVBQUUsV0FBVztJQUNmLEVBQUUsRUFBRSxTQUFTO0lBQ2IsRUFBRSxFQUFFLE9BQU87SUFDWCxFQUFFLEVBQUUsV0FBVztJQUNmLEVBQUUsRUFBRSxTQUFTO0lBQ2IsRUFBRSxFQUFFLFlBQVk7SUFDaEIsRUFBRSxFQUFFLFNBQVM7SUFDYixFQUFFLEVBQUUsU0FBUztJQUNiLEVBQUUsRUFBRSxZQUFZO0lBQ2hCLEVBQUUsRUFBRSxVQUFVO0lBQ2QsRUFBRSxFQUFFLFNBQVM7SUFDYixFQUFFLEVBQUUsU0FBUztJQUNiLEVBQUUsRUFBRSxRQUFRO0lBQ1osRUFBRSxFQUFFLE9BQU87SUFDWCxFQUFFLEVBQUUsU0FBUztJQUNiLEVBQUUsRUFBRSxRQUFRO0lBQ1osRUFBRSxFQUFFLFNBQVM7SUFDYixFQUFFLEVBQUUsd0JBQXdCO0lBQzVCLEVBQUUsRUFBRSxVQUFVO0lBQ2QsRUFBRSxFQUFFLGVBQWU7SUFDbkIsRUFBRSxFQUFFLFFBQVE7SUFDWixFQUFFLEVBQUUsd0JBQXdCO0lBQzVC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LEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUUsNkJBQTZCLEVBQUU7SUFDOUQsRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLElBQUksRUFBRSwrQkFBK0IsRUFBRTtDQUNuRSxDQUFDO0FBR0YsTUFBTSxPQUFPLGtCQUFrQjtJQUMzQjs7T0FFRztJQUNILFdBQVcsQ0FBQyxHQUFXO1FBQ25CLE9BQU8sYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUN6RCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxZQUFZO1FBQ1IsTUFBTSxHQUFHLEdBQWEsRUFBRSxDQUFDO1FBQ3pCLEtBQUssTUFBTSxJQUFJLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUMzQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ2xCO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDZixDQUFDO0lBRUQsWUFBWTtRQUNSLE9BQU8sYUFBYSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxXQUFXLENBQUMsRUFBVTtRQUNsQixPQUFPLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDMUQsQ0FBQzt3SUF6QlEsa0JBQWtCOzRJQUFsQixrQkFBa0I7O2tHQUFsQixrQkFBa0I7a0JBRDlCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSAqL1xuXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBjb25zdCBFVUlfQ09VTlRSSUVTID0ge1xuICAgIEFGOiAnQWZnaGFuaXN0YW4nLFxuICAgIEFYOiAnQWxhbmQgSXNsYW5kcycsXG4gICAgQUw6ICdBbGJhbmlhJyxcbiAgICBEWjogJ0FsZ2VyaWEnLFxuICAgIEFTOiAnQW1lcmljYW4gU2Ftb2EnLFxuICAgIEFEOiAnQW5kb3JyYScsXG4gICAgQU86ICdBbmdvbGEnLFxuICAgIEFJOiAnQW5ndWlsbGEnLFxuICAgIEFROiAnQW50YXJjdGljYScsXG4gICAgQUc6ICdBbnRpZ3VhIGFuZCBCYXJidWRhJyxcbiAgICBBUjogJ0FyZ2VudGluYScsXG4gICAgQU06ICdBcm1lbmlhJyxcbiAgICBBVzogJ0FydWJhJyxcbiAgICBBVTogJ0F1c3RyYWxpYScsXG4gICAgQVQ6ICdBdXN0cmlhJyxcbiAgICBBWjogJ0F6ZXJiYWlqYW4nLFxuICAgIEJTOiAnQmFoYW1hcycsXG4gICAgQkg6ICdCYWhyYWluJyxcbiAgICBCRDogJ0JhbmdsYWRlc2gnLFxuICAgIEJCOiAnQmFyYmFkb3MnLFxuICAgIEJZOiAnQmVsYXJ1cycsXG4gICAgQkU6ICdCZWxnaXVtJyxcbiAgICBCWjogJ0JlbGl6ZScsXG4gICAgQko6ICdCZW5pbicsXG4gICAgQk06ICdCZXJtdWRhJyxcbiAgICBCVDogJ0JodXRhbicsXG4gICAgQk86ICdCb2xpdmlhJyxcbiAgICBCQTogJ0Jvc25pYSBhbmQgSGVyemVnb3ZpbmEnLFxuICAgIEJXOiAnQm90c3dhbmEnLFxuICAgIEJWOiAnQm91dmV0IElzbGFuZCcsXG4gICAgQlI6ICdCcmF6aWwnLFxuICAgIFZHOiAnQnJpdGlzaCBWaXJnaW4gSXNsYW5kcycsXG4gICAgSU86ICdCcml0aXNoIEluZGlhbiBPY2VhbiBUZXJyaXRvcnknLFxuICAgIEJOOiAnQnJ1bmVpIERhcnVzc2FsYW0nLFxuICAgIEJHOiAnQnVsZ2FyaWEnLFxuICAgIEJGOiAnQnVya2luYSBGYXNvJyxcbiAgICBCSTogJ0J1cnVuZGknLFxuICAgIEtIOiAnQ2FtYm9kaWEnLFxuICAgIENNOiAnQ2FtZXJvb24nLFxuICAgIENBOiAnQ2FuYWRhJyxcbiAgICBDVjogJ0NhcGUgVmVyZGUnLFxuICAgIEtZOiAnQ2F5bWFuIElzbGFuZHMnLFxuICAgIENGOiAnQ2VudHJhbCBBZnJpY2FuIFJlcHVibGljJyxcbiAgICBURDogJ0NoYWQnLFxuICAgIENMOiAnQ2hpbGUnLFxuICAgIENOOiAnQ2hpbmEnLFxuICAgIEhLOiAnSG9uZyBLb25nJyxcbiAgICBNTzogJ01hY2FvJyxcbiAgICBDWDogJ0NocmlzdG1hcyBJc2xhbmQnLFxuICAgIENDOiAnQ29jb3MgKEtlZWxpbmcpIElzbGFuZHMnLFxuICAgIENPOiAnQ29sb21iaWEnLFxuICAgIEtNOiAnQ29tb3JvcycsXG4gICAgQ0c6ICdDb25nbyAoQnJhenphdmlsbGUpJyxcbiAgICBDRDogJ0NvbmdvLCAoS2luc2hhc2EpJyxcbiAgICBDSzogJ0Nvb2sgSXNsYW5kcycsXG4gICAgQ1I6ICdDb3N0YSBSaWNhJyxcbiAgICBDSTogXCJDw7R0ZSBkJ0l2b2lyZVwiLFxuICAgIEhSOiAnQ3JvYXRpYScsXG4gICAgQ1U6ICdDdWJhJyxcbiAgICBDWTogJ0N5cHJ1cycsXG4gICAgQ1o6ICdDemVjaCBSZXB1YmxpYycsXG4gICAgREs6ICdEZW5tYXJrJyxcbiAgICBESjogJ0RqaWJvdXRpJyxcbiAgICBETTogJ0RvbWluaWNhJyxcbiAgICBETzogJ0RvbWluaWNhbiBSZXB1YmxpYycsXG4gICAgRUM6ICdFY3VhZG9yJyxcbiAgICBFRzogJ0VneXB0JyxcbiAgICBTVjogJ0VsIFNhbHZhZG9yJyxcbiAgICBHUTogJ0VxdWF0b3JpYWwgR3VpbmVhJyxcbiAgICBFUjogJ0VyaXRyZWEnLFxuICAgIEVFOiAnRXN0b25pYScsXG4gICAgRVQ6ICdFdGhpb3BpYScsXG4gICAgRks6ICdGYWxrbGFuZCBJc2xhbmRzIChNYWx2aW5hcyknLFxuICAgIEZPOiAnRmFyb2UgSXNsYW5kcycsXG4gICAgRko6ICdGaWppJyxcbiAgICBGSTogJ0ZpbmxhbmQnLFxuICAgIEZSOiAnRnJhbmNlJyxcbiAgICBHRjogJ0ZyZW5jaCBHdWlhbmEnLFxuICAgIFBGOiAnRnJlbmNoIFBvbHluZXNpYScsXG4gICAgVEY6ICdGcmVuY2ggU291dGhlcm4gVGVycml0b3JpZXMnLFxuICAgIEdBOiAnR2Fib24nLFxuICAgIEdNOiAnR2FtYmlhJyxcbiAgICBHRTogJ0dlb3JnaWEnLFxuICAgIERFOiAnR2VybWFueScsXG4gICAgR0g6ICdHaGFuYScsXG4gICAgR0k6ICdHaWJyYWx0YXInLFxuICAgIEdSOiAnR3JlZWNlJyxcbiAgICBHTDogJ0dyZWVubGFuZCcsXG4gICAgR0Q6ICdHcmVuYWRhJyxcbiAgICBHUDogJ0d1YWRlbG91cGUnLFxuICAgIEdVOiAnR3VhbScsXG4gICAgR1Q6ICdHdWF0ZW1hbGEnLFxuICAgIEdHOiAnR3Vlcm5zZXknLFxuICAgIEdOOiAnR3VpbmVhJyxcbiAgICBHVzogJ0d1aW5lYS1CaXNzYXUnLFxuICAgIEdZOiAnR3V5YW5hJyxcbiAgICBIVDogJ0hhaXRpJyxcbiAgICBITTogJ0hlYXJkIGFuZCBNY2RvbmFsZCBJc2xhbmRzJyxcbiAgICBWQTogJ1ZhdGljYW4gQ2l0eSBTdGF0ZScsXG4gICAgSE46ICdIb25kdXJhcycsXG4gICAgSFU6ICdIdW5nYXJ5JyxcbiAgICBJUzogJ0ljZWxhbmQnLFxuICAgIElOOiAnSW5kaWEnLFxuICAgIElEOiAnSW5kb25lc2lhJyxcbiAgICBJUjogJ0lyYW4nLFxuICAgIElROiAnSXJhcScsXG4gICAgSUU6ICdJcmVsYW5kJyxcbiAgICBJTTogJ0lzbGUgb2YgTWFuJyxcbiAgICBJTDogJ0lzcmFlbCcsXG4gICAgSVQ6ICdJdGFseScsXG4gICAgSk06ICdKYW1haWNhJyxcbiAgICBKUDogJ0phcGFuJyxcbiAgICBKRTogJ0plcnNleScsXG4gICAgSk86ICdKb3JkYW4nLFxuICAgIEtaOiAnS2F6YWtoc3RhbicsXG4gICAgS0U6ICdLZW55YScsXG4gICAgS0k6ICdLaXJpYmF0aScsXG4gICAgS1A6ICdLb3JlYSAoTm9ydGgpJyxcbiAgICBLUjogJ0tvcmVhIChTb3V0aCknLFxuICAgIEtXOiAnS3V3YWl0JyxcbiAgICBLRzogJ0t5cmd5enN0YW4nLFxuICAgIExBOiAnTGFvIFBEUicsXG4gICAgTFY6ICdMYXR2aWEnLFxuICAgIExCOiAnTGViYW5vbicsXG4gICAgTFM6ICdMZXNvdGhvJyxcbiAgICBMUjogJ0xpYmVyaWEnLFxuICAgIExZOiAnTGlieWEnLFxuICAgIExJOiAnTGllY2h0ZW5zdGVpbicsXG4gICAgTFQ6ICdMaXRodWFuaWEnLFxuICAgIExVOiAnTHV4ZW1ib3VyZycsXG4gICAgTUs6ICdNYWNlZG9uaWEnLFxuICAgIE1HOiAnTWFkYWdhc2NhcicsXG4gICAgTVc6ICdNYWxhd2knLFxuICAgIE1ZOiAnTWFsYXlzaWEnLFxuICAgIE1WOiAnTWFsZGl2ZXMnLFxuICAgIE1MOiAnTWFsaScsXG4gICAgTVQ6ICdNYWx0YScsXG4gICAgTUg6ICdNYXJzaGFsbCBJc2xhbmRzJyxcbiAgICBNUTogJ01hcnRpbmlxdWUnLFxuICAgIE1SOiAnTWF1cml0YW5pYScsXG4gICAgTVU6ICdNYXVyaXRpdXMnLFxuICAgIFlUOiAnTWF5b3R0ZScsXG4gICAgTVg6ICdNZXhpY28nLFxuICAgIEZNOiAnTWljcm9uZXNpYScsXG4gICAgTUQ6ICdNb2xkb3ZhJyxcbiAgICBNQzogJ01vbmFjbycsXG4gICAgTU46ICdNb25nb2xpYScsXG4gICAgTUU6ICdNb250ZW5lZ3JvJyxcbiAgICBNUzogJ01vbnRzZXJyYXQnLFxuICAgIE1BOiAnTW9yb2NjbycsXG4gICAgTVo6ICdNb3phbWJpcXVlJyxcbiAgICBNTTogJ015YW5tYXInLFxuICAgIE5BOiAnTmFtaWJpYScsXG4gICAgTlI6ICdOYXVydScsXG4gICAgTlA6ICdOZXBhbCcsXG4gICAgTkw6ICdOZXRoZXJsYW5kcycsXG4gICAgQU46ICdOZXRoZXJsYW5kcyBBbnRpbGxlcycsXG4gICAgTkM6ICdOZXcgQ2FsZWRvbmlhJyxcbiAgICBOWjogJ05ldyBaZWFsYW5kJyxcbiAgICBOSTogJ05pY2FyYWd1YScsXG4gICAgTkU6ICdOaWdlcicsXG4gICAgTkc6ICdOaWdlcmlhJyxcbiAgICBOVTogJ05pdWUnLFxuICAgIE5GOiAnTm9yZm9sayBJc2xhbmQnLFxuICAgIE1QOiAnTm9ydGhlcm4gTWFyaWFuYSBJc2xhbmRzJyxcbiAgICBOTzogJ05vcndheScsXG4gICAgT006ICdPbWFuJyxcbiAgICBQSzogJ1Bha2lzdGFuJyxcbiAgICBQVzogJ1BhbGF1JyxcbiAgICBQUzogJ1BhbGVzdGluaWFuIFRlcnJpdG9yeScsXG4gICAgUEE6ICdQYW5hbWEnLFxuICAgIFBHOiAnUGFwdWEgTmV3IEd1aW5lYScsXG4gICAgUFk6ICdQYXJhZ3VheScsXG4gICAgUEU6ICdQZXJ1JyxcbiAgICBQSDogJ1BoaWxpcHBpbmVzJyxcbiAgICBQTjogJ1BpdGNhaXJuJyxcbiAgICBQTDogJ1BvbGFuZCcsXG4gICAgUFQ6ICdQb3J0dWdhbCcsXG4gICAgUFI6ICdQdWVydG8gUmljbycsXG4gICAgUUE6ICdRYXRhcicsXG4gICAgUkU6ICdSw6l1bmlvbicsXG4gICAgUk86ICdSb21hbmlhJyxcbiAgICBSVTogJ1J1c3NpYW4gRmVkZXJhdGlvbicsXG4gICAgUlc6ICdSd2FuZGEnLFxuICAgIEJMOiAnU2FpbnQtQmFydGjDqWxlbXknLFxuICAgIFNIOiAnU2FpbnQgSGVsZW5hJyxcbiAgICBLTjogJ1NhaW50IEtpdHRzIGFuZCBOZXZpcycsXG4gICAgTEM6ICdTYWludCBMdWNpYScsXG4gICAgTUY6ICdTYWludC1NYXJ0aW4gKEZyZW5jaCBwYXJ0KScsXG4gICAgUE06ICdTYWludCBQaWVycmUgYW5kIE1pcXVlbG9uJyxcbiAgICBWQzogJ1NhaW50IFZpbmNlbnQgYW5kIEdyZW5hZGluZXMnLFxuICAgIFdTOiAnU2Ftb2EnLFxuICAgIFNNOiAnU2FuIE1hcmlubycsXG4gICAgU1Q6ICdTYW8gVG9tZSBhbmQgUHJpbmNpcGUnLFxuICAgIFNBOiAnU2F1ZGkgQXJhYmlhJyxcbiAgICBTTjogJ1NlbmVnYWwnLFxuICAgIFJTOiAnU2VyYmlhJyxcbiAgICBTQzogJ1NleWNoZWxsZXMnLFxuICAgIFNMOiAnU2llcnJhIExlb25lJyxcbiAgICBTRzogJ1NpbmdhcG9yZScsXG4gICAgU0s6ICdTbG92YWtpYScsXG4gICAgU0k6ICdTbG92ZW5pYScsXG4gICAgU0I6ICdTb2xvbW9uIElzbGFuZHMnLFxuICAgIFNPOiAnU29tYWxpYScsXG4gICAgWkE6ICdTb3V0aCBBZnJpY2EnLFxuICAgIEdTOiAnU291dGggR2VvcmdpYSBhbmQgdGhlIFNvdXRoIFNhbmR3aWNoIElzbGFuZHMnLFxuICAgIFNTOiAnU291dGggU3VkYW4nLFxuICAgIEVTOiAnU3BhaW4nLFxuICAgIExLOiAnU3JpIExhbmthJyxcbiAgICBTRDogJ1N1ZGFuJyxcbiAgICBTUjogJ1N1cmluYW1lJyxcbiAgICBTSjogJ1N2YWxiYXJkIGFuZCBKYW4gTWF5ZW4gSXNsYW5kcycsXG4gICAgU1o6ICdTd2F6aWxhbmQnLFxuICAgIFNFOiAnU3dlZGVuJyxcbiAgICBDSDogJ1N3aXR6ZXJsYW5kJyxcbiAgICBTWTogJ1N5cmlhJyxcbiAgICBUVzogJ1RhaXdhbicsXG4gICAgVEo6ICdUYWppa2lzdGFuJyxcbiAgICBUWjogJ1RhbnphbmlhJyxcbiAgICBUSDogJ1RoYWlsYW5kJyxcbiAgICBUTDogJ1RpbW9yLUxlc3RlJyxcbiAgICBURzogJ1RvZ28nLFxuICAgIFRLOiAnVG9rZWxhdScsXG4gICAgVE86ICdUb25nYScsXG4gICAgVFQ6ICdUcmluaWRhZCBhbmQgVG9iYWdvJyxcbiAgICBUTjogJ1R1bmlzaWEnLFxuICAgIFRSOiAnVHVya2V5JyxcbiAgICBUTTogJ1R1cmttZW5pc3RhbicsXG4gICAgVEM6ICdUdXJrcyBhbmQgQ2FpY29zIElzbGFuZHMnLFxuICAgIFRWOiAnVHV2YWx1JyxcbiAgICBVRzogJ1VnYW5kYScsXG4gICAgVUE6ICdVa3JhaW5lJyxcbiAgICBBRTogJ1VuaXRlZCBBcmFiIEVtaXJhdGVzJyxcbiAgICBHQjogJ1VuaXRlZCBLaW5nZG9tIChHQiknLFxuICAgIFVTOiAnVW5pdGVkIFN0YXRlcyBvZiBBbWVyaWNhIChVU0EpJyxcbiAgICBVTTogJ1VTIE1pbm9yIE91dGx5aW5nIElzbGFuZHMnLFxuICAgIFVZOiAnVXJ1Z3VheScsXG4gICAgVVo6ICdVemJla2lzdGFuJyxcbiAgICBWVTogJ1ZhbnVhdHUnLFxuICAgIFZFOiAnVmVuZXp1ZWxhJyxcbiAgICBWTjogJ1ZpZXQgTmFtJyxcbiAgICBWSTogJ1ZpcmdpbiBJc2xhbmRzLCBVUycsXG4gICAgV0Y6ICdXYWxsaXMgYW5kIEZ1dHVuYSBJc2xhbmRzJyxcbiAgICBFSDogJ1dlc3Rlcm4gU2FoYXJhJyxcbiAgICBZRTogJ1llbWVuJyxcbiAgICBaTTogJ1phbWJpYScsXG4gICAgWlc6ICdaaW1iYWJ3ZScsXG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIEV1aVRpbWVab25lIHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgZGVzYzogc3RyaW5nO1xufVxuXG5leHBvcnQgY29uc3QgRVVJX1RJTUVaT05FUzogRXVpVGltZVpvbmVbXSA9IFtcbiAgICB7IG5hbWU6ICdFdXJvcGUvQW5kb3JyYScsIGRlc2M6ICdBbmRvcnJhIC0gQW5kb3JyYSAoR01UKzAyOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL0R1YmFpJywgZGVzYzogJ1VuaXRlZCBBcmFiIEVtaXJhdGVzIC0gRHViYWkgKEdNVCswNDowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9LYWJ1bCcsIGRlc2M6ICdBZmdoYW5pc3RhbiAtIEthYnVsIChHTVQrMDQ6MzApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvQW50aWd1YScsIGRlc2M6ICdBbnRpZ3VhIGFuZCBCYXJidWRhIC0gQW50aWd1YSAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0FuZ3VpbGxhJywgZGVzYzogJ0FuZ3VpbGxhIC0gQW5ndWlsbGEgKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL1RpcmFuZScsIGRlc2M6ICdBbGJhbmlhIC0gVGlyYW5lIChHTVQrMDI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvWWVyZXZhbicsIGRlc2M6ICdBcm1lbmlhIC0gWWVyZXZhbiAoR01UKzA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvTHVhbmRhJywgZGVzYzogJ0FuZ29sYSAtIEx1YW5kYSAoR01UKzAxOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbnRhcmN0aWNhL01jTXVyZG8nLCBkZXNjOiAnQW50YXJjdGljYSAtIE1jTXVyZG8gKEdNVCsxMjowMCknIH0sXG4gICAgeyBuYW1lOiAnQW50YXJjdGljYS9Sb3RoZXJhJywgZGVzYzogJ0FudGFyY3RpY2EgLSBSb3RoZXJhIChHTVQtMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FudGFyY3RpY2EvUGFsbWVyJywgZGVzYzogJ0FudGFyY3RpY2EgLSBQYWxtZXIgKEdNVC0wMzowMCknIH0sXG4gICAgeyBuYW1lOiAnQW50YXJjdGljYS9NYXdzb24nLCBkZXNjOiAnQW50YXJjdGljYSAtIE1hd3NvbiAoR01UKzA1OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbnRhcmN0aWNhL0RhdmlzJywgZGVzYzogJ0FudGFyY3RpY2EgLSBEYXZpcyAoR01UKzA3OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbnRhcmN0aWNhL0Nhc2V5JywgZGVzYzogJ0FudGFyY3RpY2EgLSBDYXNleSAoR01UKzA4OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbnRhcmN0aWNhL1Zvc3RvaycsIGRlc2M6ICdBbnRhcmN0aWNhIC0gVm9zdG9rIChHTVQrMDY6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FudGFyY3RpY2EvRHVtb250RFVydmlsbGUnLCBkZXNjOiAnQW50YXJjdGljYSAtIER1bW9udERVcnZpbGxlIChHTVQrMTA6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FudGFyY3RpY2EvU3lvd2EnLCBkZXNjOiAnQW50YXJjdGljYSAtIFN5b3dhIChHTVQrMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FudGFyY3RpY2EvVHJvbGwnLCBkZXNjOiAnQW50YXJjdGljYSAtIFRyb2xsIChHTVQrMDI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvQXJnZW50aW5hL0J1ZW5vc19BaXJlcycsIGRlc2M6ICdBcmdlbnRpbmEgLSBCdWVub3MgQWlyZXMgKEdNVC0wMzowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9BcmdlbnRpbmEvQ29yZG9iYScsIGRlc2M6ICdBcmdlbnRpbmEgLSBDb3Jkb2JhIChHTVQtMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvQXJnZW50aW5hL1NhbHRhJywgZGVzYzogJ0FyZ2VudGluYSAtIFNhbHRhIChHTVQtMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvQXJnZW50aW5hL0p1anV5JywgZGVzYzogJ0FyZ2VudGluYSAtIEp1anV5IChHTVQtMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvQXJnZW50aW5hL1R1Y3VtYW4nLCBkZXNjOiAnQXJnZW50aW5hIC0gVHVjdW1hbiAoR01ULTAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0FyZ2VudGluYS9DYXRhbWFyY2EnLCBkZXNjOiAnQXJnZW50aW5hIC0gQ2F0YW1hcmNhIChHTVQtMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvQXJnZW50aW5hL0xhX1Jpb2phJywgZGVzYzogJ0FyZ2VudGluYSAtIExhIFJpb2phIChHTVQtMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvQXJnZW50aW5hL1Nhbl9KdWFuJywgZGVzYzogJ0FyZ2VudGluYSAtIFNhbiBKdWFuIChHTVQtMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvQXJnZW50aW5hL01lbmRvemEnLCBkZXNjOiAnQXJnZW50aW5hIC0gTWVuZG96YSAoR01ULTAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0FyZ2VudGluYS9TYW5fTHVpcycsIGRlc2M6ICdBcmdlbnRpbmEgLSBTYW4gTHVpcyAoR01ULTAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0FyZ2VudGluYS9SaW9fR2FsbGVnb3MnLCBkZXNjOiAnQXJnZW50aW5hIC0gUmlvIEdhbGxlZ29zIChHTVQtMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvQXJnZW50aW5hL1VzaHVhaWEnLCBkZXNjOiAnQXJnZW50aW5hIC0gVXNodWFpYSAoR01ULTAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdQYWNpZmljL1BhZ29fUGFnbycsIGRlc2M6ICdBbWVyaWNhbiBTYW1vYSAtIFBhZ28gUGFnbyAoR01ULTExOjAwKScgfSxcbiAgICB7IG5hbWU6ICdQYWNpZmljL1NhbW9hJywgZGVzYzogJ0FtZXJpY2FuIFNhbW9hIC0gU2Ftb2EgKEdNVC0xMTowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL1ZpZW5uYScsIGRlc2M6ICdBdXN0cmlhIC0gVmllbm5hIChHTVQrMDI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0F1c3RyYWxpYS9Mb3JkX0hvd2UnLCBkZXNjOiAnQXVzdHJhbGlhIC0gTG9yZCBIb3dlIChHTVQrMTA6MzApJyB9LFxuICAgIHsgbmFtZTogJ0FudGFyY3RpY2EvTWFjcXVhcmllJywgZGVzYzogJ0F1c3RyYWxpYSAtIE1hY3F1YXJpZSAoR01UKzExOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBdXN0cmFsaWEvSG9iYXJ0JywgZGVzYzogJ0F1c3RyYWxpYSAtIEhvYmFydCAoR01UKzEwOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBdXN0cmFsaWEvQ3VycmllJywgZGVzYzogJ0F1c3RyYWxpYSAtIEN1cnJpZSAoR01UKzEwOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBdXN0cmFsaWEvTWVsYm91cm5lJywgZGVzYzogJ0F1c3RyYWxpYSAtIE1lbGJvdXJuZSAoR01UKzEwOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBdXN0cmFsaWEvU3lkbmV5JywgZGVzYzogJ0F1c3RyYWxpYSAtIFN5ZG5leSAoR01UKzEwOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBdXN0cmFsaWEvQnJva2VuX0hpbGwnLCBkZXNjOiAnQXVzdHJhbGlhIC0gQnJva2VuIEhpbGwgKEdNVCswOTozMCknIH0sXG4gICAgeyBuYW1lOiAnQXVzdHJhbGlhL0JyaXNiYW5lJywgZGVzYzogJ0F1c3RyYWxpYSAtIEJyaXNiYW5lIChHTVQrMTA6MDApJyB9LFxuICAgIHsgbmFtZTogJ0F1c3RyYWxpYS9MaW5kZW1hbicsIGRlc2M6ICdBdXN0cmFsaWEgLSBMaW5kZW1hbiAoR01UKzEwOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBdXN0cmFsaWEvQWRlbGFpZGUnLCBkZXNjOiAnQXVzdHJhbGlhIC0gQWRlbGFpZGUgKEdNVCswOTozMCknIH0sXG4gICAgeyBuYW1lOiAnQXVzdHJhbGlhL0RhcndpbicsIGRlc2M6ICdBdXN0cmFsaWEgLSBEYXJ3aW4gKEdNVCswOTozMCknIH0sXG4gICAgeyBuYW1lOiAnQXVzdHJhbGlhL1BlcnRoJywgZGVzYzogJ0F1c3RyYWxpYSAtIFBlcnRoIChHTVQrMDg6MDApJyB9LFxuICAgIHsgbmFtZTogJ0F1c3RyYWxpYS9FdWNsYScsIGRlc2M6ICdBdXN0cmFsaWEgLSBFdWNsYSAoR01UKzA4OjQ1KScgfSxcbiAgICB7IG5hbWU6ICdBdXN0cmFsaWEvQ2FuYmVycmEnLCBkZXNjOiAnQXVzdHJhbGlhIC0gQ2FuYmVycmEgKEdNVCsxMDowMCknIH0sXG4gICAgeyBuYW1lOiAnQXVzdHJhbGlhL1F1ZWVuc2xhbmQnLCBkZXNjOiAnQXVzdHJhbGlhIC0gUXVlZW5zbGFuZCAoR01UKzEwOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBdXN0cmFsaWEvVGFzbWFuaWEnLCBkZXNjOiAnQXVzdHJhbGlhIC0gVGFzbWFuaWEgKEdNVCsxMDowMCknIH0sXG4gICAgeyBuYW1lOiAnQXVzdHJhbGlhL1ZpY3RvcmlhJywgZGVzYzogJ0F1c3RyYWxpYSAtIFZpY3RvcmlhIChHTVQrMTA6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvQXJ1YmEnLCBkZXNjOiAnQXJ1YmEgLSBBcnViYSAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdFdXJvcGUvTWFyaWVoYW1uJywgZGVzYzogJ0FsYW5kIElzbGFuZHMgLSBNYXJpZWhhbW4gKEdNVCswMzowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9CYWt1JywgZGVzYzogJ0F6ZXJiYWlqYW4gLSBCYWt1IChHTVQrMDQ6MDApJyB9LFxuICAgIHsgbmFtZTogJ0V1cm9wZS9TYXJhamV2bycsIGRlc2M6ICdCb3NuaWEgYW5kIEhlcnplZ292aW5hIC0gU2FyYWpldm8gKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9CYXJiYWRvcycsIGRlc2M6ICdCYXJiYWRvcyAtIEJhcmJhZG9zIChHTVQtMDQ6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvRGhha2EnLCBkZXNjOiAnQmFuZ2xhZGVzaCAtIERoYWthIChHTVQrMDY6MDApJyB9LFxuICAgIHsgbmFtZTogJ0V1cm9wZS9CcnVzc2VscycsIGRlc2M6ICdCZWxnaXVtIC0gQnJ1c3NlbHMgKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL091YWdhZG91Z291JywgZGVzYzogJ0J1cmtpbmEgRmFzbyAtIE91YWdhZG91Z291IChHTVQrMDA6MDApJyB9LFxuICAgIHsgbmFtZTogJ0V1cm9wZS9Tb2ZpYScsIGRlc2M6ICdCdWxnYXJpYSAtIFNvZmlhIChHTVQrMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvQmFocmFpbicsIGRlc2M6ICdCYWhyYWluIC0gQmFocmFpbiAoR01UKzAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvQnVqdW1idXJhJywgZGVzYzogJ0J1cnVuZGkgLSBCdWp1bWJ1cmEgKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL1BvcnRvLU5vdm8nLCBkZXNjOiAnQmVuaW4gLSBQb3J0by1Ob3ZvIChHTVQrMDE6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvU3RfQmFydGhlbGVteScsIGRlc2M6ICdTYWludC1CYXJ0aMOpbGVteSAtIFN0IEJhcnRoZWxlbXkgKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnQXRsYW50aWMvQmVybXVkYScsIGRlc2M6ICdCZXJtdWRhIC0gQmVybXVkYSAoR01ULTAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL0JydW5laScsIGRlc2M6ICdCcnVuZWkgRGFydXNzYWxhbSAtIEJydW5laSAoR01UKzA4OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0xhX1BheicsIGRlc2M6ICdCb2xpdmlhIC0gTGEgUGF6IChHTVQtMDQ6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvS3JhbGVuZGlqaycsIGRlc2M6ICdCUSAtIEtyYWxlbmRpamsgKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9Ob3JvbmhhJywgZGVzYzogJ0JyYXppbCAtIE5vcm9uaGEgKEdNVC0wMjowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9CZWxlbScsIGRlc2M6ICdCcmF6aWwgLSBCZWxlbSAoR01ULTAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0ZvcnRhbGV6YScsIGRlc2M6ICdCcmF6aWwgLSBGb3J0YWxlemEgKEdNVC0wMzowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9SZWNpZmUnLCBkZXNjOiAnQnJhemlsIC0gUmVjaWZlIChHTVQtMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvQXJhZ3VhaW5hJywgZGVzYzogJ0JyYXppbCAtIEFyYWd1YWluYSAoR01ULTAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL01hY2VpbycsIGRlc2M6ICdCcmF6aWwgLSBNYWNlaW8gKEdNVC0wMzowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9CYWhpYScsIGRlc2M6ICdCcmF6aWwgLSBCYWhpYSAoR01ULTAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL1Nhb19QYXVsbycsIGRlc2M6ICdCcmF6aWwgLSBTYW8gUGF1bG8gKEdNVC0wMzowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9DYW1wb19HcmFuZGUnLCBkZXNjOiAnQnJhemlsIC0gQ2FtcG8gR3JhbmRlIChHTVQtMDQ6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvQ3VpYWJhJywgZGVzYzogJ0JyYXppbCAtIEN1aWFiYSAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL1NhbnRhcmVtJywgZGVzYzogJ0JyYXppbCAtIFNhbnRhcmVtIChHTVQtMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvUG9ydG9fVmVsaG8nLCBkZXNjOiAnQnJhemlsIC0gUG9ydG8gVmVsaG8gKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9Cb2FfVmlzdGEnLCBkZXNjOiAnQnJhemlsIC0gQm9hIFZpc3RhIChHTVQtMDQ6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvTWFuYXVzJywgZGVzYzogJ0JyYXppbCAtIE1hbmF1cyAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0VpcnVuZXBlJywgZGVzYzogJ0JyYXppbCAtIEVpcnVuZXBlIChHTVQtMDU6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvUmlvX0JyYW5jbycsIGRlc2M6ICdCcmF6aWwgLSBSaW8gQnJhbmNvIChHTVQtMDU6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvTmFzc2F1JywgZGVzYzogJ0JhaGFtYXMgLSBOYXNzYXUgKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9UaGltcGh1JywgZGVzYzogJ0JodXRhbiAtIFRoaW1waHUgKEdNVCswNjowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL0dhYm9yb25lJywgZGVzYzogJ0JvdHN3YW5hIC0gR2Fib3JvbmUgKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL01pbnNrJywgZGVzYzogJ0JlbGFydXMgLSBNaW5zayAoR01UKzAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0JlbGl6ZScsIGRlc2M6ICdCZWxpemUgLSBCZWxpemUgKEdNVC0wNjowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9TdF9Kb2hucycsIGRlc2M6ICdDYW5hZGEgLSBTdCBKb2hucyAoR01ULTAyOjMwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0hhbGlmYXgnLCBkZXNjOiAnQ2FuYWRhIC0gSGFsaWZheCAoR01ULTAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0dsYWNlX0JheScsIGRlc2M6ICdDYW5hZGEgLSBHbGFjZSBCYXkgKEdNVC0wMzowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9Nb25jdG9uJywgZGVzYzogJ0NhbmFkYSAtIE1vbmN0b24gKEdNVC0wMzowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9Hb29zZV9CYXknLCBkZXNjOiAnQ2FuYWRhIC0gR29vc2UgQmF5IChHTVQtMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvQmxhbmMtU2FibG9uJywgZGVzYzogJ0NhbmFkYSAtIEJsYW5jLVNhYmxvbiAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL1Rvcm9udG8nLCBkZXNjOiAnQ2FuYWRhIC0gVG9yb250byAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL05pcGlnb24nLCBkZXNjOiAnQ2FuYWRhIC0gTmlwaWdvbiAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL1RodW5kZXJfQmF5JywgZGVzYzogJ0NhbmFkYSAtIFRodW5kZXIgQmF5IChHTVQtMDQ6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvSXFhbHVpdCcsIGRlc2M6ICdDYW5hZGEgLSBJcWFsdWl0IChHTVQtMDQ6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvUGFuZ25pcnR1bmcnLCBkZXNjOiAnQ2FuYWRhIC0gUGFuZ25pcnR1bmcgKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9SZXNvbHV0ZScsIGRlc2M6ICdDYW5hZGEgLSBSZXNvbHV0ZSAoR01ULTA1OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0F0aWtva2FuJywgZGVzYzogJ0NhbmFkYSAtIEF0aWtva2FuIChHTVQtMDU6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvUmFua2luX0lubGV0JywgZGVzYzogJ0NhbmFkYSAtIFJhbmtpbiBJbmxldCAoR01ULTA1OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL1dpbm5pcGVnJywgZGVzYzogJ0NhbmFkYSAtIFdpbm5pcGVnIChHTVQtMDU6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvUmFpbnlfUml2ZXInLCBkZXNjOiAnQ2FuYWRhIC0gUmFpbnkgUml2ZXIgKEdNVC0wNTowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9SZWdpbmEnLCBkZXNjOiAnQ2FuYWRhIC0gUmVnaW5hIChHTVQtMDY6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvU3dpZnRfQ3VycmVudCcsIGRlc2M6ICdDYW5hZGEgLSBTd2lmdCBDdXJyZW50IChHTVQtMDY6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvRWRtb250b24nLCBkZXNjOiAnQ2FuYWRhIC0gRWRtb250b24gKEdNVC0wNjowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9DYW1icmlkZ2VfQmF5JywgZGVzYzogJ0NhbmFkYSAtIENhbWJyaWRnZSBCYXkgKEdNVC0wNjowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9ZZWxsb3drbmlmZScsIGRlc2M6ICdDYW5hZGEgLSBZZWxsb3drbmlmZSAoR01ULTA2OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0ludXZpaycsIGRlc2M6ICdDYW5hZGEgLSBJbnV2aWsgKEdNVC0wNjowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9DcmVzdG9uJywgZGVzYzogJ0NhbmFkYSAtIENyZXN0b24gKEdNVC0wNzowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9EYXdzb25fQ3JlZWsnLCBkZXNjOiAnQ2FuYWRhIC0gRGF3c29uIENyZWVrIChHTVQtMDc6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvVmFuY291dmVyJywgZGVzYzogJ0NhbmFkYSAtIFZhbmNvdXZlciAoR01ULTA3OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL1doaXRlaG9yc2UnLCBkZXNjOiAnQ2FuYWRhIC0gV2hpdGVob3JzZSAoR01ULTA3OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0Rhd3NvbicsIGRlc2M6ICdDYW5hZGEgLSBEYXdzb24gKEdNVC0wNzowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9Nb250cmVhbCcsIGRlc2M6ICdDYW5hZGEgLSBNb250cmVhbCAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdDYW5hZGEvQXRsYW50aWMnLCBkZXNjOiAnQ2FuYWRhIC0gQXRsYW50aWMgKEdNVC0wMzowMCknIH0sXG4gICAgeyBuYW1lOiAnQ2FuYWRhL0NlbnRyYWwnLCBkZXNjOiAnQ2FuYWRhIC0gQ2VudHJhbCAoR01ULTA1OjAwKScgfSxcbiAgICB7IG5hbWU6ICdDYW5hZGEvRWFzdGVybicsIGRlc2M6ICdDYW5hZGEgLSBFYXN0ZXJuIChHTVQtMDQ6MDApJyB9LFxuICAgIHsgbmFtZTogJ0NhbmFkYS9Nb3VudGFpbicsIGRlc2M6ICdDYW5hZGEgLSBNb3VudGFpbiAoR01ULTA2OjAwKScgfSxcbiAgICB7IG5hbWU6ICdDYW5hZGEvTmV3Zm91bmRsYW5kJywgZGVzYzogJ0NhbmFkYSAtIE5ld2ZvdW5kbGFuZCAoR01ULTAyOjMwKScgfSxcbiAgICB7IG5hbWU6ICdDYW5hZGEvUGFjaWZpYycsIGRlc2M6ICdDYW5hZGEgLSBQYWNpZmljIChHTVQtMDc6MDApJyB9LFxuICAgIHsgbmFtZTogJ0NhbmFkYS9TYXNrYXRjaGV3YW4nLCBkZXNjOiAnQ2FuYWRhIC0gU2Fza2F0Y2hld2FuIChHTVQtMDY6MDApJyB9LFxuICAgIHsgbmFtZTogJ0NhbmFkYS9ZdWtvbicsIGRlc2M6ICdDYW5hZGEgLSBZdWtvbiAoR01ULTA3OjAwKScgfSxcbiAgICB7IG5hbWU6ICdJbmRpYW4vQ29jb3MnLCBkZXNjOiAnQ29jb3MgKEtlZWxpbmcpIElzbGFuZHMgLSBDb2NvcyAoR01UKzA2OjMwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvS2luc2hhc2EnLCBkZXNjOiAnQ29uZ28sIChLaW5zaGFzYSkgLSBLaW5zaGFzYSAoR01UKzAxOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvTHVidW1iYXNoaScsIGRlc2M6ICdDb25nbywgKEtpbnNoYXNhKSAtIEx1YnVtYmFzaGkgKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL0Jhbmd1aScsIGRlc2M6ICdDZW50cmFsIEFmcmljYW4gUmVwdWJsaWMgLSBCYW5ndWkgKEdNVCswMTowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL0JyYXp6YXZpbGxlJywgZGVzYzogJ0NvbmdvIChCcmF6emF2aWxsZSkgLSBCcmF6emF2aWxsZSAoR01UKzAxOjAwKScgfSxcbiAgICB7IG5hbWU6ICdFdXJvcGUvWnVyaWNoJywgZGVzYzogJ1N3aXR6ZXJsYW5kIC0gWnVyaWNoIChHTVQrMDI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FmcmljYS9BYmlkamFuJywgZGVzYzogXCJDw7R0ZSBkJ0l2b2lyZSAtIEFiaWRqYW4gKEdNVCswMDowMClcIiB9LFxuICAgIHsgbmFtZTogJ1BhY2lmaWMvUmFyb3RvbmdhJywgZGVzYzogJ0Nvb2sgSXNsYW5kcyAtIFJhcm90b25nYSAoR01ULTEwOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL1NhbnRpYWdvJywgZGVzYzogJ0NoaWxlIC0gU2FudGlhZ28gKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnUGFjaWZpYy9FYXN0ZXInLCBkZXNjOiAnQ2hpbGUgLSBFYXN0ZXIgKEdNVC0wNjowMCknIH0sXG4gICAgeyBuYW1lOiAnQ2hpbGUvQ29udGluZW50YWwnLCBkZXNjOiAnQ2hpbGUgLSBDb250aW5lbnRhbCAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdDaGlsZS9FYXN0ZXJJc2xhbmQnLCBkZXNjOiAnQ2hpbGUgLSBFYXN0ZXJJc2xhbmQgKEdNVC0wNjowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL0RvdWFsYScsIGRlc2M6ICdDYW1lcm9vbiAtIERvdWFsYSAoR01UKzAxOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL1NoYW5naGFpJywgZGVzYzogJ0NoaW5hIC0gU2hhbmdoYWkgKEdNVCswODowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9IYXJiaW4nLCBkZXNjOiAnQ2hpbmEgLSBIYXJiaW4gKEdNVCswODowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9DaG9uZ3FpbmcnLCBkZXNjOiAnQ2hpbmEgLSBDaG9uZ3FpbmcgKEdNVCswODowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9VcnVtcWknLCBkZXNjOiAnQ2hpbmEgLSBVcnVtcWkgKEdNVCswNjowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9LYXNoZ2FyJywgZGVzYzogJ0NoaW5hIC0gS2FzaGdhciAoR01UKzA2OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0JvZ290YScsIGRlc2M6ICdDb2xvbWJpYSAtIEJvZ290YSAoR01ULTA1OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0Nvc3RhX1JpY2EnLCBkZXNjOiAnQ29zdGEgUmljYSAtIENvc3RhIFJpY2EgKEdNVC0wNjowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9IYXZhbmEnLCBkZXNjOiAnQ3ViYSAtIEhhdmFuYSAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBdGxhbnRpYy9DYXBlX1ZlcmRlJywgZGVzYzogJ0NhcGUgVmVyZGUgLSBDYXBlIFZlcmRlIChHTVQtMDE6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvQ3VyYWNhbycsIGRlc2M6ICdDVyAtIEN1cmFjYW8gKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnSW5kaWFuL0NocmlzdG1hcycsIGRlc2M6ICdDaHJpc3RtYXMgSXNsYW5kIC0gQ2hyaXN0bWFzIChHTVQrMDc6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvTmljb3NpYScsIGRlc2M6ICdDeXBydXMgLSBOaWNvc2lhIChHTVQrMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0V1cm9wZS9QcmFndWUnLCBkZXNjOiAnQ3plY2ggUmVwdWJsaWMgLSBQcmFndWUgKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL0JlcmxpbicsIGRlc2M6ICdHZXJtYW55IC0gQmVybGluIChHTVQrMDI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FmcmljYS9Eamlib3V0aScsIGRlc2M6ICdEamlib3V0aSAtIERqaWJvdXRpIChHTVQrMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0V1cm9wZS9Db3BlbmhhZ2VuJywgZGVzYzogJ0Rlbm1hcmsgLSBDb3BlbmhhZ2VuIChHTVQrMDI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvRG9taW5pY2EnLCBkZXNjOiAnRG9taW5pY2EgLSBEb21pbmljYSAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL1NhbnRvX0RvbWluZ28nLCBkZXNjOiAnRG9taW5pY2FuIFJlcHVibGljIC0gU2FudG8gRG9taW5nbyAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvQWxnaWVycycsIGRlc2M6ICdBbGdlcmlhIC0gQWxnaWVycyAoR01UKzAxOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0d1YXlhcXVpbCcsIGRlc2M6ICdFY3VhZG9yIC0gR3VheWFxdWlsIChHTVQtMDU6MDApJyB9LFxuICAgIHsgbmFtZTogJ1BhY2lmaWMvR2FsYXBhZ29zJywgZGVzYzogJ0VjdWFkb3IgLSBHYWxhcGFnb3MgKEdNVC0wNjowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL1RhbGxpbm4nLCBkZXNjOiAnRXN0b25pYSAtIFRhbGxpbm4gKEdNVCswMzowMCknIH0sXG4gICAgeyBuYW1lOiAnRWd5cHQnLCBkZXNjOiAnRWd5cHQgLSBFZ3lwdCAoR01UKzAyOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvRWxfQWFpdW4nLCBkZXNjOiAnV2VzdGVybiBTYWhhcmEgLSBFbCBBYWl1biAoR01UKzAwOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvQXNtYXJhJywgZGVzYzogJ0VyaXRyZWEgLSBBc21hcmEgKEdNVCswMzowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL01hZHJpZCcsIGRlc2M6ICdTcGFpbiAtIE1hZHJpZCAoR01UKzAyOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvQ2V1dGEnLCBkZXNjOiAnU3BhaW4gLSBDZXV0YSAoR01UKzAyOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBdGxhbnRpYy9DYW5hcnknLCBkZXNjOiAnU3BhaW4gLSBDYW5hcnkgKEdNVCswMTowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL0FkZGlzX0FiYWJhJywgZGVzYzogJ0V0aGlvcGlhIC0gQWRkaXMgQWJhYmEgKEdNVCswMzowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL0hlbHNpbmtpJywgZGVzYzogJ0ZpbmxhbmQgLSBIZWxzaW5raSAoR01UKzAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdQYWNpZmljL0ZpamknLCBkZXNjOiAnRmlqaSAtIEZpamkgKEdNVCsxMjowMCknIH0sXG4gICAgeyBuYW1lOiAnQXRsYW50aWMvU3RhbmxleScsIGRlc2M6ICdGYWxrbGFuZCBJc2xhbmRzIChNYWx2aW5hcykgLSBTdGFubGV5IChHTVQtMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ1BhY2lmaWMvQ2h1dWsnLCBkZXNjOiAnTWljcm9uZXNpYSAtIENodXVrIChHTVQrMTA6MDApJyB9LFxuICAgIHsgbmFtZTogJ1BhY2lmaWMvUG9obnBlaScsIGRlc2M6ICdNaWNyb25lc2lhIC0gUG9obnBlaSAoR01UKzExOjAwKScgfSxcbiAgICB7IG5hbWU6ICdQYWNpZmljL0tvc3JhZScsIGRlc2M6ICdNaWNyb25lc2lhIC0gS29zcmFlIChHTVQrMTE6MDApJyB9LFxuICAgIHsgbmFtZTogJ0F0bGFudGljL0Zhcm9lJywgZGVzYzogJ0Zhcm9lIElzbGFuZHMgLSBGYXJvZSAoR01UKzAxOjAwKScgfSxcbiAgICB7IG5hbWU6ICdFdXJvcGUvUGFyaXMnLCBkZXNjOiAnRnJhbmNlIC0gUGFyaXMgKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL0xpYnJldmlsbGUnLCBkZXNjOiAnR2Fib24gLSBMaWJyZXZpbGxlIChHTVQrMDE6MDApJyB9LFxuICAgIHsgbmFtZTogJ0V1cm9wZS9Mb25kb24nLCBkZXNjOiAnVW5pdGVkIEtpbmdkb20gKEdCKSAtIExvbmRvbiAoR01UKzAxOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0dyZW5hZGEnLCBkZXNjOiAnR3JlbmFkYSAtIEdyZW5hZGEgKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9UYmlsaXNpJywgZGVzYzogJ0dlb3JnaWEgLSBUYmlsaXNpIChHTVQrMDQ6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvQ2F5ZW5uZScsIGRlc2M6ICdGcmVuY2ggR3VpYW5hIC0gQ2F5ZW5uZSAoR01ULTAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdFdXJvcGUvR3Vlcm5zZXknLCBkZXNjOiAnR3Vlcm5zZXkgLSBHdWVybnNleSAoR01UKzAxOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvQWNjcmEnLCBkZXNjOiAnR2hhbmEgLSBBY2NyYSAoR01UKzAwOjAwKScgfSxcbiAgICB7IG5hbWU6ICdFdXJvcGUvR2licmFsdGFyJywgZGVzYzogJ0dpYnJhbHRhciAtIEdpYnJhbHRhciAoR01UKzAyOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0dvZHRoYWInLCBkZXNjOiAnR3JlZW5sYW5kIC0gR29kdGhhYiAoR01ULTAyOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0Rhbm1hcmtzaGF2bicsIGRlc2M6ICdHcmVlbmxhbmQgLSBEYW5tYXJrc2hhdm4gKEdNVCswMDowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9TY29yZXNieXN1bmQnLCBkZXNjOiAnR3JlZW5sYW5kIC0gU2NvcmVzYnlzdW5kIChHTVQrMDA6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvVGh1bGUnLCBkZXNjOiAnR3JlZW5sYW5kIC0gVGh1bGUgKEdNVC0wMzowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL0Jhbmp1bCcsIGRlc2M6ICdHYW1iaWEgLSBCYW5qdWwgKEdNVCswMDowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL0NvbmFrcnknLCBkZXNjOiAnR3VpbmVhIC0gQ29uYWtyeSAoR01UKzAwOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0d1YWRlbG91cGUnLCBkZXNjOiAnR3VhZGVsb3VwZSAtIEd1YWRlbG91cGUgKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL01hbGFibycsIGRlc2M6ICdFcXVhdG9yaWFsIEd1aW5lYSAtIE1hbGFibyAoR01UKzAxOjAwKScgfSxcbiAgICB7IG5hbWU6ICdFdXJvcGUvQXRoZW5zJywgZGVzYzogJ0dyZWVjZSAtIEF0aGVucyAoR01UKzAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBdGxhbnRpYy9Tb3V0aF9HZW9yZ2lhJywgZGVzYzogJ1NvdXRoIEdlb3JnaWEgYW5kIHRoZSBTb3V0aCBTYW5kd2ljaCBJc2xhbmRzIC0gU291dGggR2VvcmdpYSAoR01ULTAyOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0d1YXRlbWFsYScsIGRlc2M6ICdHdWF0ZW1hbGEgLSBHdWF0ZW1hbGEgKEdNVC0wNjowMCknIH0sXG4gICAgeyBuYW1lOiAnUGFjaWZpYy9HdWFtJywgZGVzYzogJ0d1YW0gLSBHdWFtIChHTVQrMTA6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FmcmljYS9CaXNzYXUnLCBkZXNjOiAnR3VpbmVhLUJpc3NhdSAtIEJpc3NhdSAoR01UKzAwOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0d1eWFuYScsIGRlc2M6ICdHdXlhbmEgLSBHdXlhbmEgKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9Ib25nX0tvbmcnLCBkZXNjOiAnSG9uZyBLb25nIC0gSG9uZyBLb25nIChHTVQrMDg6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvVGVndWNpZ2FscGEnLCBkZXNjOiAnSG9uZHVyYXMgLSBUZWd1Y2lnYWxwYSAoR01ULTA2OjAwKScgfSxcbiAgICB7IG5hbWU6ICdFdXJvcGUvWmFncmViJywgZGVzYzogJ0Nyb2F0aWEgLSBaYWdyZWIgKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9Qb3J0LWF1LVByaW5jZScsIGRlc2M6ICdIYWl0aSAtIFBvcnQtYXUtUHJpbmNlIChHTVQtMDQ6MDApJyB9LFxuICAgIHsgbmFtZTogJ0V1cm9wZS9CdWRhcGVzdCcsIGRlc2M6ICdIdW5nYXJ5IC0gQnVkYXBlc3QgKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9KYWthcnRhJywgZGVzYzogJ0luZG9uZXNpYSAtIEpha2FydGEgKEdNVCswNzowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9Qb250aWFuYWsnLCBkZXNjOiAnSW5kb25lc2lhIC0gUG9udGlhbmFrIChHTVQrMDc6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvTWFrYXNzYXInLCBkZXNjOiAnSW5kb25lc2lhIC0gTWFrYXNzYXIgKEdNVCswODowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9KYXlhcHVyYScsIGRlc2M6ICdJbmRvbmVzaWEgLSBKYXlhcHVyYSAoR01UKzA5OjAwKScgfSxcbiAgICB7IG5hbWU6ICdFdXJvcGUvRHVibGluJywgZGVzYzogJ0lyZWxhbmQgLSBEdWJsaW4gKEdNVCswMTowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9KZXJ1c2FsZW0nLCBkZXNjOiAnSXNyYWVsIC0gSmVydXNhbGVtIChHTVQrMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0V1cm9wZS9Jc2xlX29mX01hbicsIGRlc2M6ICdJc2xlIG9mIE1hbiAtIElzbGUgb2ZfTWFuIChHTVQrMDE6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvS29sa2F0YScsIGRlc2M6ICdJbmRpYSAtIEtvbGthdGEgKEdNVCswNTozMCknIH0sXG4gICAgeyBuYW1lOiAnSW5kaWFuL0NoYWdvcycsIGRlc2M6ICdCcml0aXNoIEluZGlhbiBPY2VhbiBUZXJyaXRvcnkgLSBDaGFnb3MgKEdNVCswNjowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9CYWdoZGFkJywgZGVzYzogJ0lyYXEgLSBCYWdoZGFkIChHTVQrMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvVGVocmFuJywgZGVzYzogJ0lyYW4gLSBUZWhyYW4gKEdNVCswNDozMCknIH0sXG4gICAgeyBuYW1lOiAnQXRsYW50aWMvUmV5a2phdmlrJywgZGVzYzogJ0ljZWxhbmQgLSBSZXlramF2aWsgKEdNVCswMDowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL1JvbWUnLCBkZXNjOiAnSXRhbHkgLSBSb21lIChHTVQrMDI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0V1cm9wZS9KZXJzZXknLCBkZXNjOiAnSmVyc2V5IC0gSmVyc2V5IChHTVQrMDE6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvSmFtYWljYScsIGRlc2M6ICdKYW1haWNhIC0gSmFtYWljYSAoR01ULTA1OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL0FtbWFuJywgZGVzYzogJ0pvcmRhbiAtIEFtbWFuIChHTVQrMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvVG9reW8nLCBkZXNjOiAnSmFwYW4gLSBUb2t5byAoR01UKzA5OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvTmFpcm9iaScsIGRlc2M6ICdLZW55YSAtIE5haXJvYmkgKEdNVCswMzowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9CaXNoa2VrJywgZGVzYzogJ0t5cmd5enN0YW4gLSBCaXNoa2VrIChHTVQrMDY6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvUGhub21fUGVuaCcsIGRlc2M6ICdDYW1ib2RpYSAtIFBobm9tIFBlbmggKEdNVCswNzowMCknIH0sXG4gICAgeyBuYW1lOiAnUGFjaWZpYy9UYXJhd2EnLCBkZXNjOiAnS2lyaWJhdGkgLSBUYXJhd2EgKEdNVCsxMjowMCknIH0sXG4gICAgeyBuYW1lOiAnUGFjaWZpYy9FbmRlcmJ1cnknLCBkZXNjOiAnS2lyaWJhdGkgLSBFbmRlcmJ1cnkgKEdNVCsxMzowMCknIH0sXG4gICAgeyBuYW1lOiAnUGFjaWZpYy9LaXJpdGltYXRpJywgZGVzYzogJ0tpcmliYXRpIC0gS2lyaXRpbWF0aSAoR01UKzE0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdJbmRpYW4vQ29tb3JvJywgZGVzYzogJ0NvbW9yb3MgLSBDb21vcm8gKEdNVCswMzowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9TdF9LaXR0cycsIGRlc2M6ICdTYWludCBLaXR0cyBhbmQgTmV2aXMgLSBTdCBLaXR0cyAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL1B5b25neWFuZycsIGRlc2M6ICdLb3JlYSAoTm9ydGgpIC0gUHlvbmd5YW5nIChHTVQrMDk6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvU2VvdWwnLCBkZXNjOiAnS29yZWEgKFNvdXRoKSAtIFNlb3VsIChHTVQrMDk6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvS3V3YWl0JywgZGVzYzogJ0t1d2FpdCAtIEt1d2FpdCAoR01UKzAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0NheW1hbicsIGRlc2M6ICdDYXltYW4gSXNsYW5kcyAtIENheW1hbiAoR01ULTA1OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL0FsbWF0eScsIGRlc2M6ICdLYXpha2hzdGFuIC0gQWxtYXR5IChHTVQrMDY6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvUXl6eWxvcmRhJywgZGVzYzogJ0themFraHN0YW4gLSBReXp5bG9yZGEgKEdNVCswNjowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9BcXRvYmUnLCBkZXNjOiAnS2F6YWtoc3RhbiAtIEFxdG9iZSAoR01UKzA1OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL0FxdGF1JywgZGVzYzogJ0themFraHN0YW4gLSBBcXRhdSAoR01UKzA1OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL09yYWwnLCBkZXNjOiAnS2F6YWtoc3RhbiAtIE9yYWwgKEdNVCswNTowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9WaWVudGlhbmUnLCBkZXNjOiAnTGFvIFBEUiAtIFZpZW50aWFuZSAoR01UKzA3OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL0JlaXJ1dCcsIGRlc2M6ICdMZWJhbm9uIC0gQmVpcnV0IChHTVQrMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvU3RfTHVjaWEnLCBkZXNjOiAnU2FpbnQgTHVjaWEgLSBTdCBMdWNpYSAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdFdXJvcGUvVmFkdXonLCBkZXNjOiAnTGllY2h0ZW5zdGVpbiAtIFZhZHV6IChHTVQrMDI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvQ29sb21ibycsIGRlc2M6ICdTcmkgTGFua2EgLSBDb2xvbWJvIChHTVQrMDU6MzApJyB9LFxuICAgIHsgbmFtZTogJ0FmcmljYS9Nb25yb3ZpYScsIGRlc2M6ICdMaWJlcmlhIC0gTW9ucm92aWEgKEdNVCswMDowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL01hc2VydScsIGRlc2M6ICdMZXNvdGhvIC0gTWFzZXJ1IChHTVQrMDI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0V1cm9wZS9WaWxuaXVzJywgZGVzYzogJ0xpdGh1YW5pYSAtIFZpbG5pdXMgKEdNVCswMzowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL0x1eGVtYm91cmcnLCBkZXNjOiAnTHV4ZW1ib3VyZyAtIEx1eGVtYm91cmcgKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL1JpZ2EnLCBkZXNjOiAnTGF0dmlhIC0gUmlnYSAoR01UKzAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvVHJpcG9saScsIGRlc2M6ICdMaWJ5YSAtIFRyaXBvbGkgKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL0Nhc2FibGFuY2EnLCBkZXNjOiAnTW9yb2NjbyAtIENhc2FibGFuY2EgKEdNVCswMDowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL01vbmFjbycsIGRlc2M6ICdNb25hY28gLSBNb25hY28gKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL0NoaXNpbmF1JywgZGVzYzogJ01vbGRvdmEgLSBDaGlzaW5hdSAoR01UKzAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdFdXJvcGUvUG9kZ29yaWNhJywgZGVzYzogJ01vbnRlbmVncm8gLSBQb2Rnb3JpY2EgKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9NYXJpZ290JywgZGVzYzogJ1NhaW50LU1hcnRpbiAoRnJlbmNoIHBhcnQpIC0gTWFyaWdvdCAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdJbmRpYW4vQW50YW5hbmFyaXZvJywgZGVzYzogJ01hZGFnYXNjYXIgLSBBbnRhbmFuYXJpdm8gKEdNVCswMzowMCknIH0sXG4gICAgeyBuYW1lOiAnUGFjaWZpYy9NYWp1cm8nLCBkZXNjOiAnTWFyc2hhbGwgSXNsYW5kcyAtIE1hanVybyAoR01UKzEyOjAwKScgfSxcbiAgICB7IG5hbWU6ICdQYWNpZmljL0t3YWphbGVpbicsIGRlc2M6ICdNYXJzaGFsbCBJc2xhbmRzIC0gS3dhamFsZWluIChHTVQrMTI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0V1cm9wZS9Ta29wamUnLCBkZXNjOiAnTWFjZWRvbmlhIC0gU2tvcGplIChHTVQrMDI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FmcmljYS9CYW1ha28nLCBkZXNjOiAnTWFsaSAtIEJhbWFrbyAoR01UKzAwOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL1Jhbmdvb24nLCBkZXNjOiAnTXlhbm1hciAtIFJhbmdvb24gKEdNVCswNjozMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9VbGFhbmJhYXRhcicsIGRlc2M6ICdNb25nb2xpYSAtIFVsYWFuYmFhdGFyIChHTVQrMDg6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvSG92ZCcsIGRlc2M6ICdNb25nb2xpYSAtIEhvdmQgKEdNVCswNzowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9DaG9pYmFsc2FuJywgZGVzYzogJ01vbmdvbGlhIC0gQ2hvaWJhbHNhbiAoR01UKzA4OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL01hY2F1JywgZGVzYzogJ01hY2FvIC0gTWFjYXUgKEdNVCswODowMCknIH0sXG4gICAgeyBuYW1lOiAnUGFjaWZpYy9TYWlwYW4nLCBkZXNjOiAnTm9ydGhlcm4gTWFyaWFuYSBJc2xhbmRzIC0gU2FpcGFuIChHTVQrMTA6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvTWFydGluaXF1ZScsIGRlc2M6ICdNYXJ0aW5pcXVlIC0gTWFydGluaXF1ZSAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvTm91YWtjaG90dCcsIGRlc2M6ICdNYXVyaXRhbmlhIC0gTm91YWtjaG90dCAoR01UKzAwOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL01vbnRzZXJyYXQnLCBkZXNjOiAnTW9udHNlcnJhdCAtIE1vbnRzZXJyYXQgKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL01hbHRhJywgZGVzYzogJ01hbHRhIC0gTWFsdGEgKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnSW5kaWFuL01hdXJpdGl1cycsIGRlc2M6ICdNYXVyaXRpdXMgLSBNYXVyaXRpdXMgKEdNVCswNDowMCknIH0sXG4gICAgeyBuYW1lOiAnSW5kaWFuL01hbGRpdmVzJywgZGVzYzogJ01hbGRpdmVzIC0gTWFsZGl2ZXMgKEdNVCswNTowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL0JsYW50eXJlJywgZGVzYzogJ01hbGF3aSAtIEJsYW50eXJlIChHTVQrMDI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvTWV4aWNvX0NpdHknLCBkZXNjOiAnTWV4aWNvIC0gTWV4aWNvIENpdHkgKEdNVC0wNTowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9DYW5jdW4nLCBkZXNjOiAnTWV4aWNvIC0gQ2FuY3VuIChHTVQtMDU6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvTWVyaWRhJywgZGVzYzogJ01leGljbyAtIE1lcmlkYSAoR01ULTA1OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL01vbnRlcnJleScsIGRlc2M6ICdNZXhpY28gLSBNb250ZXJyZXkgKEdNVC0wNTowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9NYXRhbW9yb3MnLCBkZXNjOiAnTWV4aWNvIC0gTWF0YW1vcm9zIChHTVQtMDU6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvTWF6YXRsYW4nLCBkZXNjOiAnTWV4aWNvIC0gTWF6YXRsYW4gKEdNVC0wNjowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9DaGlodWFodWEnLCBkZXNjOiAnTWV4aWNvIC0gQ2hpaHVhaHVhIChHTVQtMDY6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvT2ppbmFnYScsIGRlc2M6ICdNZXhpY28gLSBPamluYWdhIChHTVQtMDY6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvSGVybW9zaWxsbycsIGRlc2M6ICdNZXhpY28gLSBIZXJtb3NpbGxvIChHTVQtMDc6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvVGlqdWFuYScsIGRlc2M6ICdNZXhpY28gLSBUaWp1YW5hIChHTVQtMDc6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvU2FudGFfSXNhYmVsJywgZGVzYzogJ01leGljbyAtIFNhbnRhIElzYWJlbCAoR01ULTA3OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0JhaGlhX0JhbmRlcmFzJywgZGVzYzogJ01leGljbyAtIEJhaGlhIEJhbmRlcmFzIChHTVQtMDU6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvS3VhbGFfTHVtcHVyJywgZGVzYzogJ01hbGF5c2lhIC0gS3VhbGEgTHVtcHVyIChHTVQrMDg6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvS3VjaGluZycsIGRlc2M6ICdNYWxheXNpYSAtIEt1Y2hpbmcgKEdNVCswODowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL01hcHV0bycsIGRlc2M6ICdNb3phbWJpcXVlIC0gTWFwdXRvIChHTVQrMDI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FmcmljYS9XaW5kaG9laycsIGRlc2M6ICdOYW1pYmlhIC0gV2luZGhvZWsgKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnUGFjaWZpYy9Ob3VtZWEnLCBkZXNjOiAnTmV3IENhbGVkb25pYSAtIE5vdW1lYSAoR01UKzExOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvTmlhbWV5JywgZGVzYzogJ05pZ2VyIC0gTmlhbWV5IChHTVQrMDE6MDApJyB9LFxuICAgIHsgbmFtZTogJ1BhY2lmaWMvTm9yZm9saycsIGRlc2M6ICdOb3Jmb2xrIElzbGFuZCAtIE5vcmZvbGsgKEdNVCsxMTowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL0xhZ29zJywgZGVzYzogJ05pZ2VyaWEgLSBMYWdvcyAoR01UKzAxOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL01hbmFndWEnLCBkZXNjOiAnTmljYXJhZ3VhIC0gTWFuYWd1YSAoR01ULTA2OjAwKScgfSxcbiAgICB7IG5hbWU6ICdFdXJvcGUvQW1zdGVyZGFtJywgZGVzYzogJ05ldGhlcmxhbmRzIC0gQW1zdGVyZGFtIChHTVQrMDI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0V1cm9wZS9Pc2xvJywgZGVzYzogJ05vcndheSAtIE9zbG8gKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9LYXRobWFuZHUnLCBkZXNjOiAnTmVwYWwgLSBLYXRobWFuZHUgKEdNVCswNTo0NSknIH0sXG4gICAgeyBuYW1lOiAnUGFjaWZpYy9OYXVydScsIGRlc2M6ICdOYXVydSAtIE5hdXJ1IChHTVQrMTI6MDApJyB9LFxuICAgIHsgbmFtZTogJ1BhY2lmaWMvTml1ZScsIGRlc2M6ICdOaXVlIC0gTml1ZSAoR01ULTExOjAwKScgfSxcbiAgICB7IG5hbWU6ICdQYWNpZmljL0F1Y2tsYW5kJywgZGVzYzogJ05ldyBaZWFsYW5kIC0gQXVja2xhbmQgKEdNVCsxMjowMCknIH0sXG4gICAgeyBuYW1lOiAnUGFjaWZpYy9DaGF0aGFtJywgZGVzYzogJ05ldyBaZWFsYW5kIC0gQ2hhdGhhbSAoR01UKzEyOjQ1KScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL011c2NhdCcsIGRlc2M6ICdPbWFuIC0gTXVzY2F0IChHTVQrMDQ6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvUGFuYW1hJywgZGVzYzogJ1BhbmFtYSAtIFBhbmFtYSAoR01ULTA1OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0xpbWEnLCBkZXNjOiAnUGVydSAtIExpbWEgKEdNVC0wNTowMCknIH0sXG4gICAgeyBuYW1lOiAnUGFjaWZpYy9UYWhpdGknLCBkZXNjOiAnRnJlbmNoIFBvbHluZXNpYSAtIFRhaGl0aSAoR01ULTEwOjAwKScgfSxcbiAgICB7IG5hbWU6ICdQYWNpZmljL01hcnF1ZXNhcycsIGRlc2M6ICdGcmVuY2ggUG9seW5lc2lhIC0gTWFycXVlc2FzIChHTVQtMDk6MzApJyB9LFxuICAgIHsgbmFtZTogJ1BhY2lmaWMvR2FtYmllcicsIGRlc2M6ICdGcmVuY2ggUG9seW5lc2lhIC0gR2FtYmllciAoR01ULTA5OjAwKScgfSxcbiAgICB7IG5hbWU6ICdQYWNpZmljL1BvcnRfTW9yZXNieScsIGRlc2M6ICdQYXB1YSBOZXcgR3VpbmVhIC0gUG9ydCBNb3Jlc2J5IChHTVQrMTA6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvTWFuaWxhJywgZGVzYzogJ1BoaWxpcHBpbmVzIC0gTWFuaWxhIChHTVQrMDg6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvS2FyYWNoaScsIGRlc2M6ICdQYWtpc3RhbiAtIEthcmFjaGkgKEdNVCswNTowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL1dhcnNhdycsIGRlc2M6ICdQb2xhbmQgLSBXYXJzYXcgKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnUG9sYW5kJywgZGVzYzogJ1BvbGFuZCAtIFBvbGFuZCAoR01UKzAyOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL01pcXVlbG9uJywgZGVzYzogJ1NhaW50IFBpZXJyZSBhbmQgTWlxdWVsb24gLSBNaXF1ZWxvbiAoR01ULTAyOjAwKScgfSxcbiAgICB7IG5hbWU6ICdQYWNpZmljL1BpdGNhaXJuJywgZGVzYzogJ1BpdGNhaXJuIC0gUGl0Y2Fpcm4gKEdNVC0wODowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9QdWVydG9fUmljbycsIGRlc2M6ICdQdWVydG8gUmljbyAtIFB1ZXJ0byBSaWNvIChHTVQtMDQ6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvR2F6YScsIGRlc2M6ICdQYWxlc3RpbmlhbiBUZXJyaXRvcnkgLSBHYXphIChHTVQrMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvSGVicm9uJywgZGVzYzogJ1BhbGVzdGluaWFuIFRlcnJpdG9yeSAtIEhlYnJvbiAoR01UKzAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdFdXJvcGUvTGlzYm9uJywgZGVzYzogJ1BvcnR1Z2FsIC0gTGlzYm9uIChHTVQrMDE6MDApJyB9LFxuICAgIHsgbmFtZTogJ0F0bGFudGljL01hZGVpcmEnLCBkZXNjOiAnUG9ydHVnYWwgLSBNYWRlaXJhIChHTVQrMDE6MDApJyB9LFxuICAgIHsgbmFtZTogJ0F0bGFudGljL0F6b3JlcycsIGRlc2M6ICdQb3J0dWdhbCAtIEF6b3JlcyAoR01UKzAwOjAwKScgfSxcbiAgICB7IG5hbWU6ICdQYWNpZmljL1BhbGF1JywgZGVzYzogJ1BhbGF1IC0gUGFsYXUgKEdNVCswOTowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9Bc3VuY2lvbicsIGRlc2M6ICdQYXJhZ3VheSAtIEFzdW5jaW9uIChHTVQtMDQ6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvUWF0YXInLCBkZXNjOiAnUWF0YXIgLSBRYXRhciAoR01UKzAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdJbmRpYW4vUmV1bmlvbicsIGRlc2M6ICdSw6l1bmlvbiAtIFJldW5pb24gKEdNVCswNDowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL0J1Y2hhcmVzdCcsIGRlc2M6ICdSb21hbmlhIC0gQnVjaGFyZXN0IChHTVQrMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0V1cm9wZS9CZWxncmFkZScsIGRlc2M6ICdTZXJiaWEgLSBCZWxncmFkZSAoR01UKzAyOjAwKScgfSxcbiAgICB7IG5hbWU6ICdFdXJvcGUvS2FsaW5pbmdyYWQnLCBkZXNjOiAnUnVzc2lhbiBGZWRlcmF0aW9uIC0gS2FsaW5pbmdyYWQgKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL01vc2NvdycsIGRlc2M6ICdSdXNzaWFuIEZlZGVyYXRpb24gLSBNb3Njb3cgKEdNVCswMzowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL1ZvbGdvZ3JhZCcsIGRlc2M6ICdSdXNzaWFuIEZlZGVyYXRpb24gLSBWb2xnb2dyYWQgKEdNVCswMzowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL1NhbWFyYScsIGRlc2M6ICdSdXNzaWFuIEZlZGVyYXRpb24gLSBTYW1hcmEgKEdNVCswNDowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL1NpbWZlcm9wb2wnLCBkZXNjOiAnUnVzc2lhbiBGZWRlcmF0aW9uIC0gU2ltZmVyb3BvbCAoR01UKzAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL1lla2F0ZXJpbmJ1cmcnLCBkZXNjOiAnUnVzc2lhbiBGZWRlcmF0aW9uIC0gWWVrYXRlcmluYnVyZyAoR01UKzA1OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL09tc2snLCBkZXNjOiAnUnVzc2lhbiBGZWRlcmF0aW9uIC0gT21zayAoR01UKzA2OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL05vdm9zaWJpcnNrJywgZGVzYzogJ1J1c3NpYW4gRmVkZXJhdGlvbiAtIE5vdm9zaWJpcnNrIChHTVQrMDc6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvTm92b2t1em5ldHNrJywgZGVzYzogJ1J1c3NpYW4gRmVkZXJhdGlvbiAtIE5vdm9rdXpuZXRzayAoR01UKzA3OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL0tyYXNub3lhcnNrJywgZGVzYzogJ1J1c3NpYW4gRmVkZXJhdGlvbiAtIEtyYXNub3lhcnNrIChHTVQrMDc6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvSXJrdXRzaycsIGRlc2M6ICdSdXNzaWFuIEZlZGVyYXRpb24gLSBJcmt1dHNrIChHTVQrMDg6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvWWFrdXRzaycsIGRlc2M6ICdSdXNzaWFuIEZlZGVyYXRpb24gLSBZYWt1dHNrIChHTVQrMDk6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvS2hhbmR5Z2EnLCBkZXNjOiAnUnVzc2lhbiBGZWRlcmF0aW9uIC0gS2hhbmR5Z2EgKEdNVCswOTowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9WbGFkaXZvc3RvaycsIGRlc2M6ICdSdXNzaWFuIEZlZGVyYXRpb24gLSBWbGFkaXZvc3RvayAoR01UKzEwOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL1Nha2hhbGluJywgZGVzYzogJ1J1c3NpYW4gRmVkZXJhdGlvbiAtIFNha2hhbGluIChHTVQrMTE6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvVXN0LU5lcmEnLCBkZXNjOiAnUnVzc2lhbiBGZWRlcmF0aW9uIC0gVXN0LU5lcmEgKEdNVCsxMDowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9NYWdhZGFuJywgZGVzYzogJ1J1c3NpYW4gRmVkZXJhdGlvbiAtIE1hZ2FkYW4gKEdNVCsxMTowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9LYW1jaGF0a2EnLCBkZXNjOiAnUnVzc2lhbiBGZWRlcmF0aW9uIC0gS2FtY2hhdGthIChHTVQrMTI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvQW5hZHlyJywgZGVzYzogJ1J1c3NpYW4gRmVkZXJhdGlvbiAtIEFuYWR5ciAoR01UKzEyOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvS2lnYWxpJywgZGVzYzogJ1J3YW5kYSAtIEtpZ2FsaSAoR01UKzAyOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL1JpeWFkaCcsIGRlc2M6ICdTYXVkaSBBcmFiaWEgLSBSaXlhZGggKEdNVCswMzowMCknIH0sXG4gICAgeyBuYW1lOiAnUGFjaWZpYy9HdWFkYWxjYW5hbCcsIGRlc2M6ICdTb2xvbW9uIElzbGFuZHMgLSBHdWFkYWxjYW5hbCAoR01UKzExOjAwKScgfSxcbiAgICB7IG5hbWU6ICdJbmRpYW4vTWFoZScsIGRlc2M6ICdTZXljaGVsbGVzIC0gTWFoZSAoR01UKzA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvS2hhcnRvdW0nLCBkZXNjOiAnU3VkYW4gLSBLaGFydG91bSAoR01UKzAyOjAwKScgfSxcbiAgICB7IG5hbWU6ICdFdXJvcGUvU3RvY2tob2xtJywgZGVzYzogJ1N3ZWRlbiAtIFN0b2NraG9sbSAoR01UKzAyOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL1NpbmdhcG9yZScsIGRlc2M6ICdTaW5nYXBvcmUgLSBTaW5nYXBvcmUgKEdNVCswODowMCknIH0sXG4gICAgeyBuYW1lOiAnQXRsYW50aWMvU3RfSGVsZW5hJywgZGVzYzogJ1NhaW50IEhlbGVuYSAtIFN0IEhlbGVuYSAoR01UKzAwOjAwKScgfSxcbiAgICB7IG5hbWU6ICdFdXJvcGUvTGp1YmxqYW5hJywgZGVzYzogJ1Nsb3ZlbmlhIC0gTGp1YmxqYW5hIChHTVQrMDI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FyY3RpYy9Mb25neWVhcmJ5ZW4nLCBkZXNjOiAnU3ZhbGJhcmQgYW5kIEphbiBNYXllbiBJc2xhbmRzIC0gTG9uZ3llYXJieWVuIChHTVQrMDI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0V1cm9wZS9CcmF0aXNsYXZhJywgZGVzYzogJ1Nsb3Zha2lhIC0gQnJhdGlzbGF2YSAoR01UKzAyOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvRnJlZXRvd24nLCBkZXNjOiAnU2llcnJhIExlb25lIC0gRnJlZXRvd24gKEdNVCswMDowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL1Nhbl9NYXJpbm8nLCBkZXNjOiAnU2FuIE1hcmlubyAtIFNhbiBNYXJpbm8gKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL0Rha2FyJywgZGVzYzogJ1NlbmVnYWwgLSBEYWthciAoR01UKzAwOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvTW9nYWRpc2h1JywgZGVzYzogJ1NvbWFsaWEgLSBNb2dhZGlzaHUgKEdNVCswMzowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9QYXJhbWFyaWJvJywgZGVzYzogJ1N1cmluYW1lIC0gUGFyYW1hcmlibyAoR01ULTAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvSnViYScsIGRlc2M6ICdTb3V0aCBTdWRhbiAtIEp1YmEgKEdNVCswMzowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL1Nhb19Ub21lJywgZGVzYzogJ1NhbyBUb21lIGFuZCBQcmluY2lwZSAtIFNhbyBUb21lIChHTVQrMDE6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvRWxfU2FsdmFkb3InLCBkZXNjOiAnRWwgU2FsdmFkb3IgLSBFbCBTYWx2YWRvciAoR01ULTA2OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0xvd2VyX1ByaW5jZXMnLCBkZXNjOiAnU1ggLSBMb3dlciBQcmluY2VzIChHTVQtMDQ6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvRGFtYXNjdXMnLCBkZXNjOiAnU3lyaWEgLSBEYW1hc2N1cyAoR01UKzAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvTWJhYmFuZScsIGRlc2M6ICdTd2F6aWxhbmQgLSBNYmFiYW5lIChHTVQrMDI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvR3JhbmRfVHVyaycsIGRlc2M6ICdUdXJrcyBhbmQgQ2FpY29zIElzbGFuZHMgLSBHcmFuZCBUdXJrIChHTVQtMDQ6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FmcmljYS9OZGphbWVuYScsIGRlc2M6ICdDaGFkIC0gTmRqYW1lbmEgKEdNVCswMTowMCknIH0sXG4gICAgeyBuYW1lOiAnSW5kaWFuL0tlcmd1ZWxlbicsIGRlc2M6ICdGcmVuY2ggU291dGhlcm4gVGVycml0b3JpZXMgLSBLZXJndWVsZW4gKEdNVCswNTowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL0xvbWUnLCBkZXNjOiAnVG9nbyAtIExvbWUgKEdNVCswMDowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9CYW5na29rJywgZGVzYzogJ1RoYWlsYW5kIC0gQmFuZ2tvayAoR01UKzA3OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL0R1c2hhbmJlJywgZGVzYzogJ1RhamlraXN0YW4gLSBEdXNoYW5iZSAoR01UKzA1OjAwKScgfSxcbiAgICB7IG5hbWU6ICdQYWNpZmljL0Zha2FvZm8nLCBkZXNjOiAnVG9rZWxhdSAtIEZha2FvZm8gKEdNVCsxMzowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9EaWxpJywgZGVzYzogJ1RpbW9yLUxlc3RlIC0gRGlsaSAoR01UKzA5OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL0FzaGdhYmF0JywgZGVzYzogJ1R1cmttZW5pc3RhbiAtIEFzaGdhYmF0IChHTVQrMDU6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FmcmljYS9UdW5pcycsIGRlc2M6ICdUdW5pc2lhIC0gVHVuaXMgKEdNVCswMTowMCknIH0sXG4gICAgeyBuYW1lOiAnUGFjaWZpYy9Ub25nYXRhcHUnLCBkZXNjOiAnVG9uZ2EgLSBUb25nYXRhcHUgKEdNVCsxMzowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL0lzdGFuYnVsJywgZGVzYzogJ1R1cmtleSAtIElzdGFuYnVsIChHTVQrMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvUG9ydF9vZl9TcGFpbicsIGRlc2M6ICdUcmluaWRhZCBhbmQgVG9iYWdvIC0gUG9ydCBvZl9TcGFpbiAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdQYWNpZmljL0Z1bmFmdXRpJywgZGVzYzogJ1R1dmFsdSAtIEZ1bmFmdXRpIChHTVQrMTI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvVGFpcGVpJywgZGVzYzogJ1RhaXdhbiAtIFRhaXBlaSAoR01UKzA4OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvRGFyX2VzX1NhbGFhbScsIGRlc2M6ICdUYW56YW5pYSAtIERhciBlc19TYWxhYW0gKEdNVCswMzowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL0tpZXYnLCBkZXNjOiAnVWtyYWluZSAtIEtpZXYgKEdNVCswMzowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL1V6aGdvcm9kJywgZGVzYzogJ1VrcmFpbmUgLSBVemhnb3JvZCAoR01UKzAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdFdXJvcGUvWmFwb3Jvemh5ZScsIGRlc2M6ICdVa3JhaW5lIC0gWmFwb3Jvemh5ZSAoR01UKzAzOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBZnJpY2EvS2FtcGFsYScsIGRlc2M6ICdVZ2FuZGEgLSBLYW1wYWxhIChHTVQrMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ1BhY2lmaWMvSm9obnN0b24nLCBkZXNjOiAnVVMgTWlub3IgT3V0bHlpbmcgSXNsYW5kcyAtIEpvaG5zdG9uIChHTVQtMTA6MDApJyB9LFxuICAgIHsgbmFtZTogJ1BhY2lmaWMvTWlkd2F5JywgZGVzYzogJ1VTIE1pbm9yIE91dGx5aW5nIElzbGFuZHMgLSBNaWR3YXkgKEdNVC0xMTowMCknIH0sXG4gICAgeyBuYW1lOiAnUGFjaWZpYy9XYWtlJywgZGVzYzogJ1VTIE1pbm9yIE91dGx5aW5nIElzbGFuZHMgLSBXYWtlIChHTVQrMTI6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvTmV3X1lvcmsnLCBkZXNjOiAnVW5pdGVkIFN0YXRlcyBvZiBBbWVyaWNhIChVU0EpIC0gTmV3IFlvcmsgKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9EZXRyb2l0JywgZGVzYzogJ1VuaXRlZCBTdGF0ZXMgb2YgQW1lcmljYSAoVVNBKSAtIERldHJvaXQgKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9LZW50dWNreS9Mb3Vpc3ZpbGxlJywgZGVzYzogJ1VuaXRlZCBTdGF0ZXMgb2YgQW1lcmljYSAoVVNBKSAtIExvdWlzdmlsbGUgKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9LZW50dWNreS9Nb250aWNlbGxvJywgZGVzYzogJ1VuaXRlZCBTdGF0ZXMgb2YgQW1lcmljYSAoVVNBKSAtIE1vbnRpY2VsbG8gKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9JbmRpYW5hL0luZGlhbmFwb2xpcycsIGRlc2M6ICdVbml0ZWQgU3RhdGVzIG9mIEFtZXJpY2EgKFVTQSkgLSBJbmRpYW5hcG9saXMgKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9JbmRpYW5hL1ZpbmNlbm5lcycsIGRlc2M6ICdVbml0ZWQgU3RhdGVzIG9mIEFtZXJpY2EgKFVTQSkgLSBWaW5jZW5uZXMgKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9JbmRpYW5hL1dpbmFtYWMnLCBkZXNjOiAnVW5pdGVkIFN0YXRlcyBvZiBBbWVyaWNhIChVU0EpIC0gV2luYW1hYyAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0luZGlhbmEvTWFyZW5nbycsIGRlc2M6ICdVbml0ZWQgU3RhdGVzIG9mIEFtZXJpY2EgKFVTQSkgLSBNYXJlbmdvIChHTVQtMDQ6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvSW5kaWFuYS9QZXRlcnNidXJnJywgZGVzYzogJ1VuaXRlZCBTdGF0ZXMgb2YgQW1lcmljYSAoVVNBKSAtIFBldGVyc2J1cmcgKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9JbmRpYW5hL1ZldmF5JywgZGVzYzogJ1VuaXRlZCBTdGF0ZXMgb2YgQW1lcmljYSAoVVNBKSAtIFZldmF5IChHTVQtMDQ6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvQ2hpY2FnbycsIGRlc2M6ICdVbml0ZWQgU3RhdGVzIG9mIEFtZXJpY2EgKFVTQSkgLSBDaGljYWdvIChHTVQtMDU6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvSW5kaWFuYS9UZWxsX0NpdHknLCBkZXNjOiAnVW5pdGVkIFN0YXRlcyBvZiBBbWVyaWNhIChVU0EpIC0gVGVsbCBDaXR5IChHTVQtMDU6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvSW5kaWFuYS9Lbm94JywgZGVzYzogJ1VuaXRlZCBTdGF0ZXMgb2YgQW1lcmljYSAoVVNBKSAtIEtub3ggKEdNVC0wNTowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9NZW5vbWluZWUnLCBkZXNjOiAnVW5pdGVkIFN0YXRlcyBvZiBBbWVyaWNhIChVU0EpIC0gTWVub21pbmVlIChHTVQtMDU6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvTm9ydGhfRGFrb3RhL0NlbnRlcicsIGRlc2M6ICdVbml0ZWQgU3RhdGVzIG9mIEFtZXJpY2EgKFVTQSkgLSBDZW50ZXIgKEdNVC0wNTowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9Ob3J0aF9EYWtvdGEvTmV3X1NhbGVtJywgZGVzYzogJ1VuaXRlZCBTdGF0ZXMgb2YgQW1lcmljYSAoVVNBKSAtIE5ldyBTYWxlbSAoR01ULTA1OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL05vcnRoX0Rha290YS9CZXVsYWgnLCBkZXNjOiAnVW5pdGVkIFN0YXRlcyBvZiBBbWVyaWNhIChVU0EpIC0gQmV1bGFoIChHTVQtMDU6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvRGVudmVyJywgZGVzYzogJ1VuaXRlZCBTdGF0ZXMgb2YgQW1lcmljYSAoVVNBKSAtIERlbnZlciAoR01ULTA2OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL0JvaXNlJywgZGVzYzogJ1VuaXRlZCBTdGF0ZXMgb2YgQW1lcmljYSAoVVNBKSAtIEJvaXNlIChHTVQtMDY6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvUGhvZW5peCcsIGRlc2M6ICdVbml0ZWQgU3RhdGVzIG9mIEFtZXJpY2EgKFVTQSkgLSBQaG9lbml4IChHTVQtMDc6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvTG9zX0FuZ2VsZXMnLCBkZXNjOiAnVW5pdGVkIFN0YXRlcyBvZiBBbWVyaWNhIChVU0EpIC0gTG9zIEFuZ2VsZXMgKEdNVC0wNzowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9BbmNob3JhZ2UnLCBkZXNjOiAnVW5pdGVkIFN0YXRlcyBvZiBBbWVyaWNhIChVU0EpIC0gQW5jaG9yYWdlIChHTVQtMDg6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvSnVuZWF1JywgZGVzYzogJ1VuaXRlZCBTdGF0ZXMgb2YgQW1lcmljYSAoVVNBKSAtIEp1bmVhdSAoR01ULTA4OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL1NpdGthJywgZGVzYzogJ1VuaXRlZCBTdGF0ZXMgb2YgQW1lcmljYSAoVVNBKSAtIFNpdGthIChHTVQtMDg6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvWWFrdXRhdCcsIGRlc2M6ICdVbml0ZWQgU3RhdGVzIG9mIEFtZXJpY2EgKFVTQSkgLSBZYWt1dGF0IChHTVQtMDg6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvTm9tZScsIGRlc2M6ICdVbml0ZWQgU3RhdGVzIG9mIEFtZXJpY2EgKFVTQSkgLSBOb21lIChHTVQtMDg6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvQWRhaycsIGRlc2M6ICdVbml0ZWQgU3RhdGVzIG9mIEFtZXJpY2EgKFVTQSkgLSBBZGFrIChHTVQtMDk6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvTWV0bGFrYXRsYScsIGRlc2M6ICdVbml0ZWQgU3RhdGVzIG9mIEFtZXJpY2EgKFVTQSkgLSBNZXRsYWthdGxhIChHTVQtMDg6MDApJyB9LFxuICAgIHsgbmFtZTogJ1BhY2lmaWMvSG9ub2x1bHUnLCBkZXNjOiAnVW5pdGVkIFN0YXRlcyBvZiBBbWVyaWNhIChVU0EpIC0gSG9ub2x1bHUgKEdNVC0xMDowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9Nb250ZXZpZGVvJywgZGVzYzogJ1VydWd1YXkgLSBNb250ZXZpZGVvIChHTVQtMDM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvU2FtYXJrYW5kJywgZGVzYzogJ1V6YmVraXN0YW4gLSBTYW1hcmthbmQgKEdNVCswNTowMCknIH0sXG4gICAgeyBuYW1lOiAnQXNpYS9UYXNoa2VudCcsIGRlc2M6ICdVemJla2lzdGFuIC0gVGFzaGtlbnQgKEdNVCswNTowMCknIH0sXG4gICAgeyBuYW1lOiAnRXVyb3BlL1ZhdGljYW4nLCBkZXNjOiAnVmF0aWNhbiBDaXR5IFN0YXRlIC0gVmF0aWNhbiAoR01UKzAyOjAwKScgfSxcbiAgICB7IG5hbWU6ICdBbWVyaWNhL1N0X1ZpbmNlbnQnLCBkZXNjOiAnU2FpbnQgVmluY2VudCBhbmQgR3JlbmFkaW5lcyAtIFN0IFZpbmNlbnQgKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9DYXJhY2FzJywgZGVzYzogJ1ZlbmV6dWVsYSAtIENhcmFjYXMgKEdNVC0wNDowMCknIH0sXG4gICAgeyBuYW1lOiAnQW1lcmljYS9Ub3J0b2xhJywgZGVzYzogJ0JyaXRpc2ggVmlyZ2luIElzbGFuZHMgLSBUb3J0b2xhIChHTVQtMDQ6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FtZXJpY2EvU3RfVGhvbWFzJywgZGVzYzogJ1ZpcmdpbiBJc2xhbmRzLCBVUyAtIFN0IFRob21hcyAoR01ULTA0OjAwKScgfSxcbiAgICB7IG5hbWU6ICdBc2lhL0hvX0NoaV9NaW5oJywgZGVzYzogJ1ZpZXQgTmFtIC0gSG8gQ2hpX01pbmggKEdNVCswNzowMCknIH0sXG4gICAgeyBuYW1lOiAnUGFjaWZpYy9FZmF0ZScsIGRlc2M6ICdWYW51YXR1IC0gRWZhdGUgKEdNVCsxMTowMCknIH0sXG4gICAgeyBuYW1lOiAnUGFjaWZpYy9XYWxsaXMnLCBkZXNjOiAnV2FsbGlzIGFuZCBGdXR1bmEgSXNsYW5kcyAtIFdhbGxpcyAoR01UKzEyOjAwKScgfSxcbiAgICB7IG5hbWU6ICdQYWNpZmljL0FwaWEnLCBkZXNjOiAnU2Ftb2EgLSBBcGlhIChHTVQrMTM6MDApJyB9LFxuICAgIHsgbmFtZTogJ0FzaWEvQWRlbicsIGRlc2M6ICdZZW1lbiAtIEFkZW4gKEdNVCswMzowMCknIH0sXG4gICAgeyBuYW1lOiAnSW5kaWFuL01heW90dGUnLCBkZXNjOiAnTWF5b3R0ZSAtIE1heW90dGUgKEdNVCswMzowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL0pvaGFubmVzYnVyZycsIGRlc2M6ICdTb3V0aCBBZnJpY2EgLSBKb2hhbm5lc2J1cmcgKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL0x1c2FrYScsIGRlc2M6ICdaYW1iaWEgLSBMdXNha2EgKEdNVCswMjowMCknIH0sXG4gICAgeyBuYW1lOiAnQWZyaWNhL0hhcmFyZScsIGRlc2M6ICdaaW1iYWJ3ZSAtIEhhcmFyZSAoR01UKzAyOjAwKScgfSxcbl07XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBFdWlUaW1lem9uZVNlcnZpY2Uge1xuICAgIC8qKlxuICAgICAqIENvbnZlcnQgY291bnRyeSBJU08gY29kZSB0byBjb3VudHJ5IG5hbWUgKGluIGVuZ2xpc2gpXG4gICAgICovXG4gICAgaXNvMmNvdW50cnkoaXNvOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gRVVJX0NPVU5UUklFU1tpc29dID8gRVVJX0NPVU5UUklFU1tpc29dIDogaXNvO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIGxpc3Qgb2YgSVNPLWNvZGVzIGZvciBhbGwgY291bnRyaWVzXG4gICAgICovXG4gICAgZ2V0Q291bnRyaWVzKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgY29uc3QgcmVzOiBzdHJpbmdbXSA9IFtdO1xuICAgICAgICBmb3IgKGNvbnN0IHByb3Agb2YgT2JqZWN0LmtleXMoRVVJX0NPVU5UUklFUykpIHtcbiAgICAgICAgICAgIHJlcy5wdXNoKHByb3ApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXM7XG4gICAgfVxuXG4gICAgZ2V0VGltZXpvbmVzKCk6IEV1aVRpbWVab25lW10ge1xuICAgICAgICByZXR1cm4gRVVJX1RJTUVaT05FUztcbiAgICB9XG5cbiAgICBnZXRUaW1lem9uZSh0ejogc3RyaW5nKTogRXVpVGltZVpvbmUge1xuICAgICAgICByZXR1cm4gRVVJX1RJTUVaT05FUy5maW5kKChpdGVtKSA9PiBpdGVtLm5hbWUgPT09IHR6KTtcbiAgICB9XG59XG4iXX0=