barsa-sap-ui 0.0.6 → 1.0.248

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 (197) hide show
  1. package/esm2020/lib/apply-conditional-formmatings.directive.mjs +1 -1
  2. package/esm2020/lib/barsa-asp-viewer/barsa-asp-viewer.component.mjs +2 -2
  3. package/esm2020/lib/barsa-date-time-picker/barsa-date-time-picker.component.mjs +1 -1
  4. package/esm2020/lib/barsa-list-file-linear/barsa-list-file-linear.component.mjs +4 -4
  5. package/esm2020/lib/barsa-monaco-editor/barsa-monaco-editor.component.mjs +14 -14
  6. package/esm2020/lib/barsa-network-offline/barsa-network-offline.component.mjs +20 -12
  7. package/esm2020/lib/barsa-sap-ui-routing.module.mjs +1 -1
  8. package/esm2020/lib/barsa-sap-ui.module.mjs +25 -16
  9. package/esm2020/lib/barsa-search-form/barsa-search-form.component.mjs +3 -3
  10. package/esm2020/lib/barsa-table-header/barsa-table-header.component.mjs +4 -4
  11. package/esm2020/lib/barsa-table-row/barsa-table-row.component.mjs +3 -3
  12. package/esm2020/lib/barsa-tinyemce/barsa-tinyemce.component.mjs +6 -6
  13. package/esm2020/lib/barsa-tree-item/barsa-tree-item.component.mjs +23 -12
  14. package/esm2020/lib/barsa-ulv-main/barsa-ulv-main.component.mjs +8 -7
  15. package/esm2020/lib/blob-viewer/blob-viewer.component.mjs +60 -0
  16. package/esm2020/lib/breadcrumb/breadcrumb.component.mjs +3 -3
  17. package/esm2020/lib/captcha-field/captcha-field.component.mjs +1 -1
  18. package/esm2020/lib/card-item/card-item.component.mjs +4 -4
  19. package/esm2020/lib/card-view-content/card-view-content.component.mjs +3 -3
  20. package/esm2020/lib/column-matrix-renderer/column-matrix-renderer.component.mjs +3 -3
  21. package/esm2020/lib/column-matrix-renderer/matrix-value.pipe.mjs +1 -1
  22. package/esm2020/lib/column-renderer/column-renderer.component.mjs +6 -5
  23. package/esm2020/lib/constants.mjs +1 -1
  24. package/esm2020/lib/custom-date-time/custom-date-time.component.mjs +1 -1
  25. package/esm2020/lib/device-info-field-base.mjs +1 -1
  26. package/esm2020/lib/download-files.directive.mjs +33 -0
  27. package/esm2020/lib/empty-page/empty-page.component.mjs +3 -3
  28. package/esm2020/lib/file-in-dialog/file-in-dialog.component.mjs +1 -1
  29. package/esm2020/lib/file-viewer/file-viewer.component.mjs +47 -0
  30. package/esm2020/lib/file-viewer-content/file-viewer-content.component.mjs +49 -0
  31. package/esm2020/lib/file-viewer-popover/file-viewer-popover.component.mjs +34 -0
  32. package/esm2020/lib/form-dialog/form-dialog.component.mjs +3 -3
  33. package/esm2020/lib/form-dialog-less/form-dialog-less.component.mjs +1 -1
  34. package/esm2020/lib/form-page/form-page.component.mjs +17 -17
  35. package/esm2020/lib/form-page-base.mjs +1 -1
  36. package/esm2020/lib/form-toolbar-button/form-toolbar-button.component.mjs +3 -3
  37. package/esm2020/lib/form-wizard/form-wizard.component.mjs +3 -3
  38. package/esm2020/lib/fullscreen-dialog.directive.mjs +1 -1
  39. package/esm2020/lib/fullscreen-files.directive.mjs +39 -0
  40. package/esm2020/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.mjs +3 -3
  41. package/esm2020/lib/gantt-dhtml-chart-view/gantt-dhtml-chart-view.component.mjs +1 -1
  42. package/esm2020/lib/global-search/global-search.component.mjs +1 -1
  43. package/esm2020/lib/global-search-module/global-search-module.component.mjs +1 -1
  44. package/esm2020/lib/global-search-panel/global-search-panel.component.mjs +1 -1
  45. package/esm2020/lib/header-avatar/header-avatar.component.mjs +1 -1
  46. package/esm2020/lib/header-facet-form/header-facet-form.component.mjs +1 -1
  47. package/esm2020/lib/header-facet-key-value/header-facet-key-value.component.mjs +1 -1
  48. package/esm2020/lib/header-facet-microchart/header-facet-microchart.component.mjs +3 -3
  49. package/esm2020/lib/header-facet-plain-text/header-facet-plain-text.component.mjs +3 -3
  50. package/esm2020/lib/header-facet-rate/header-facet-rate.component.mjs +1 -1
  51. package/esm2020/lib/hyperlink/hyperlink.component.mjs +1 -1
  52. package/esm2020/lib/index.mjs +18 -3
  53. package/esm2020/lib/inline-save-and-cancel/inline-save-and-cancel.component.mjs +1 -1
  54. package/esm2020/lib/layout-actions/layout-actions.component.mjs +1 -1
  55. package/esm2020/lib/layout-control/layout-control.component.mjs +4 -4
  56. package/esm2020/lib/layout-wizard/layout-wizard.component.mjs +25 -3
  57. package/esm2020/lib/list-item/list-item.component.mjs +3 -3
  58. package/esm2020/lib/ly-empty-space/ly-empty-space.component.mjs +5 -7
  59. package/esm2020/lib/ly-horizontal-layout/ly-horizontal-layout.component.mjs +8 -7
  60. package/esm2020/lib/ly-layout-container/ly-layout-container.component.mjs +3 -3
  61. package/esm2020/lib/ly-layout-container-of-root/ly-layout-container-of-root.component.mjs +3 -3
  62. package/esm2020/lib/ly-layout-field-label/ly-layout-field-label.component.mjs +1 -1
  63. package/esm2020/lib/ly-layout-panel/ly-layout-panel.component.mjs +9 -3
  64. package/esm2020/lib/ly-line/ly-line.component.mjs +1 -1
  65. package/esm2020/lib/ly-simple-label/ly-simple-label.component.mjs +6 -10
  66. package/esm2020/lib/ly-tab-container/ly-tab-container.component.mjs +7 -3
  67. package/esm2020/lib/ly-tab-page/ly-tab-page.component.mjs +3 -3
  68. package/esm2020/lib/ly-vertical-layout/ly-vertical-layout.component.mjs +8 -7
  69. package/esm2020/lib/mask/mask.component.mjs +3 -3
  70. package/esm2020/lib/message-strip/message-strip.component.mjs +1 -1
  71. package/esm2020/lib/models/grid-data-provider.mjs +2 -2
  72. package/esm2020/lib/models/grid-view.mjs +1 -1
  73. package/esm2020/lib/no-data/no-data.component.mjs +3 -3
  74. package/esm2020/lib/page-with-form-handler-base.mjs +1 -1
  75. package/esm2020/lib/page-with-header/page-with-header.component.mjs +1 -1
  76. package/esm2020/lib/progress-indicator/progress-indicator.component.mjs +1 -1
  77. package/esm2020/lib/report-navigator/report-navigator.component.mjs +3 -3
  78. package/esm2020/lib/report-new-top-form/report-new-top-form.component.mjs +3 -3
  79. package/esm2020/lib/report-search-fields-hidden-settings/report-search-fields-hidden-settings.component.mjs +3 -3
  80. package/esm2020/lib/report-search-fields-manage/report-search-fields-manage.component.mjs +3 -3
  81. package/esm2020/lib/report-tree-base.mjs +4 -1
  82. package/esm2020/lib/report-view-renderer.directive.mjs +32 -2
  83. package/esm2020/lib/responsive-toolbar/responsive-toolbar.component.mjs +1 -1
  84. package/esm2020/lib/responsive-toolbar-renderer/responsive-toolbar-renderer.component.mjs +1 -1
  85. package/esm2020/lib/rich-text-static/rich-text-static.component.mjs +1 -1
  86. package/esm2020/lib/sap-ui-report-base.component.mjs +87 -64
  87. package/esm2020/lib/search-panel/search-panel.component.mjs +1 -1
  88. package/esm2020/lib/static-text/static-text.component.mjs +3 -3
  89. package/esm2020/lib/ui-asp-report-viewer/ui-asp-report-viewer.component.mjs +3 -3
  90. package/esm2020/lib/ui-button/ui-button.component.mjs +3 -3
  91. package/esm2020/lib/ui-calendar/ui-calendar.component.mjs +3 -3
  92. package/esm2020/lib/ui-card-view/ui-card-view.component.mjs +3 -3
  93. package/esm2020/lib/ui-check-box/ui-check-box.component.mjs +3 -3
  94. package/esm2020/lib/ui-color-ui/ui-color-ui.component.mjs +1 -1
  95. package/esm2020/lib/ui-container-with-button/ui-container-with-button.component.mjs +3 -3
  96. package/esm2020/lib/ui-date-range-ex/ui-date-range-ex.component.mjs +3 -3
  97. package/esm2020/lib/ui-date-time/ui-date-time.component.mjs +3 -3
  98. package/esm2020/lib/ui-editable-grid/ui-editable-grid.component.mjs +3 -3
  99. package/esm2020/lib/ui-exception-form/ui-exception-form.component.mjs +1 -1
  100. package/esm2020/lib/ui-file-linear-list-box/ui-file-linear-list-box.component.mjs +29 -90
  101. package/esm2020/lib/ui-form-panel/ui-form-panel.component.mjs +3 -3
  102. package/esm2020/lib/ui-gantt-chart/ui-gantt-chart.component.mjs +3 -3
  103. package/esm2020/lib/ui-graph/ui-graph.component.mjs +1 -1
  104. package/esm2020/lib/ui-grid/ui-grid.component.mjs +3 -3
  105. package/esm2020/lib/ui-grid-columns/ui-grid-columns.component.mjs +3 -3
  106. package/esm2020/lib/ui-grid-filter-item/ui-grid-filter-item.component.mjs +1 -1
  107. package/esm2020/lib/ui-grid-filter-settings/ui-grid-filter-settings.component.mjs +1 -1
  108. package/esm2020/lib/ui-grid-sort-item/ui-grid-sort-item.component.mjs +1 -1
  109. package/esm2020/lib/ui-grid-sort-setting/ui-grid-sort-setting.component.mjs +1 -1
  110. package/esm2020/lib/ui-info-bar-panel/ui-info-bar-panel.component.mjs +1 -1
  111. package/esm2020/lib/ui-label/ui-label.component.mjs +3 -3
  112. package/esm2020/lib/ui-linear-list-container-with-button/ui-linear-list-container-with-button.component.mjs +2 -2
  113. package/esm2020/lib/ui-list-view/ui-list-view.component.mjs +4 -3
  114. package/esm2020/lib/ui-matrix-view/ui-matrix-view.component.mjs +3 -3
  115. package/esm2020/lib/ui-mo-info-combo-viewer/ui-mo-info-combo-viewer.component.mjs +3 -3
  116. package/esm2020/lib/ui-mo-info-general-object-ui/ui-mo-info-general-object-ui.component.mjs +1 -1
  117. package/esm2020/lib/ui-mo-info-sub-form-ui/ui-mo-info-sub-form-ui.component.mjs +3 -3
  118. package/esm2020/lib/ui-mo-info-ulv-combo/ui-mo-info-ulv-combo.component.mjs +19 -14
  119. package/esm2020/lib/ui-monaco-editor/ui-monaco-editor.component.mjs +3 -3
  120. package/esm2020/lib/ui-multi-select-combo/ui-multi-select-combo.component.mjs +26 -9
  121. package/esm2020/lib/ui-num-decimal-ui/ui-num-decimal-ui.component.mjs +1 -1
  122. package/esm2020/lib/ui-num-int-ui/ui-num-int-ui.component.mjs +3 -3
  123. package/esm2020/lib/ui-pdf-viewer/ui-pdf-viewer.component.mjs +19 -20
  124. package/esm2020/lib/ui-picture-file/ui-picture-file.component.mjs +26 -30
  125. package/esm2020/lib/ui-pictures-info/ui-pictures-info.component.mjs +39 -31
  126. package/esm2020/lib/ui-radio-group/ui-radio-group.component.mjs +3 -3
  127. package/esm2020/lib/ui-read-only-field/ui-read-only-field.component.mjs +3 -3
  128. package/esm2020/lib/ui-report-container/ui-report-container.component.mjs +3 -3
  129. package/esm2020/lib/ui-search-command-info-ui/ui-search-command-info-ui.component.mjs +1 -1
  130. package/esm2020/lib/ui-simple-combo/ui-simple-combo.component.mjs +3 -3
  131. package/esm2020/lib/ui-single-picture/ui-single-picture.component.mjs +1 -1
  132. package/esm2020/lib/ui-switch-button/ui-switch-button.component.mjs +3 -3
  133. package/esm2020/lib/ui-table-view/ui-table-view.component.mjs +8 -3
  134. package/esm2020/lib/ui-text-area/ui-text-area.component.mjs +3 -3
  135. package/esm2020/lib/ui-text-field/ui-text-field.component.mjs +1 -1
  136. package/esm2020/lib/ui-text-field-auto-complete/ui-text-field-auto-complete.component.mjs +3 -3
  137. package/esm2020/lib/ui-time-span/ui-time-span.component.mjs +1 -1
  138. package/esm2020/lib/ui-tinymce/ui-tinymce.component.mjs +1 -1
  139. package/esm2020/lib/ui-tree/ui-tree.component.mjs +26 -3
  140. package/esm2020/lib/ui-tree-view/ui-tree-view.component.mjs +9 -3
  141. package/esm2020/lib/ui-ulv-form-multi-select-ui/ui-ulv-form-multi-select-ui.component.mjs +2 -2
  142. package/esm2020/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.mjs +6 -3
  143. package/esm2020/lib/ui-workflow-panel-ui/ui-workflow-panel-ui.component.mjs +1 -1
  144. package/esm2020/lib/ul-loading-mask-ui/ul-loading-mask-ui.component.mjs +7 -2
  145. package/esm2020/lib/ul-msg-box-adapter/ul-msg-box-adapter.component.mjs +3 -3
  146. package/esm2020/lib/ul-notify-popup/ul-notify-popup.component.mjs +1 -1
  147. package/esm2020/lib/ul-toast-adapter/ul-toast-adapter.component.mjs +1 -1
  148. package/esm2020/lib/ulv-column-settings/ulv-column-settings.component.mjs +3 -3
  149. package/esm2020/lib/ulv-context-menu/ulv-context-menu.component.mjs +3 -3
  150. package/esm2020/lib/ulv-filter-settings/ulv-filter-settings.component.mjs +3 -3
  151. package/esm2020/lib/ulv-form-multi-select/ulv-form-multi-select.component.mjs +5 -5
  152. package/esm2020/lib/ulv-groupby-settings/ulv-groupby-settings.component.mjs +3 -3
  153. package/esm2020/lib/ulv-paging/ulv-paging.component.mjs +1 -1
  154. package/esm2020/lib/ulv-selection/ulv-selection.component.mjs +2 -2
  155. package/esm2020/lib/ulv-settings/ulv-settings.component.mjs +1 -1
  156. package/esm2020/lib/ulv-sort-settings/ulv-sort-settings.component.mjs +3 -3
  157. package/esm2020/lib/ulv-toolbar/ulv-toolbar.component.mjs +11 -5
  158. package/esm2020/lib/wizard-layout.directive.mjs +1 -1
  159. package/esm2020/public-api.mjs +7 -1
  160. package/fesm2015/barsa-sap-ui.mjs +888 -542
  161. package/fesm2015/barsa-sap-ui.mjs.map +1 -1
  162. package/fesm2020/barsa-sap-ui.mjs +879 -541
  163. package/fesm2020/barsa-sap-ui.mjs.map +1 -1
  164. package/lib/barsa-network-offline/barsa-network-offline.component.d.ts +3 -2
  165. package/lib/barsa-sap-ui.module.d.ts +31 -25
  166. package/lib/barsa-tree-item/barsa-tree-item.component.d.ts +7 -1
  167. package/lib/barsa-ulv-main/barsa-ulv-main.component.d.ts +3 -1
  168. package/lib/blob-viewer/blob-viewer.component.d.ts +20 -0
  169. package/lib/download-files.directive.d.ts +9 -0
  170. package/lib/file-viewer/file-viewer.component.d.ts +21 -0
  171. package/lib/file-viewer-content/file-viewer-content.component.d.ts +18 -0
  172. package/lib/file-viewer-popover/file-viewer-popover.component.d.ts +13 -0
  173. package/lib/fullscreen-files.directive.d.ts +15 -0
  174. package/lib/index.d.ts +8 -4
  175. package/lib/layout-control/layout-control.component.d.ts +5 -5
  176. package/lib/layout-wizard/layout-wizard.component.d.ts +1 -0
  177. package/lib/ly-empty-space/ly-empty-space.component.d.ts +1 -3
  178. package/lib/ly-horizontal-layout/ly-horizontal-layout.component.d.ts +4 -3
  179. package/lib/ly-simple-label/ly-simple-label.component.d.ts +1 -3
  180. package/lib/ly-tab-container/ly-tab-container.component.d.ts +3 -1
  181. package/lib/ly-vertical-layout/ly-vertical-layout.component.d.ts +4 -3
  182. package/lib/report-tree-base.d.ts +2 -1
  183. package/lib/report-view-renderer.directive.d.ts +10 -1
  184. package/lib/sap-ui-report-base.component.d.ts +13 -4
  185. package/lib/ui-file-linear-list-box/ui-file-linear-list-box.component.d.ts +15 -18
  186. package/lib/ui-multi-select-combo/ui-multi-select-combo.component.d.ts +9 -3
  187. package/lib/ui-pdf-viewer/ui-pdf-viewer.component.d.ts +5 -6
  188. package/lib/ui-picture-file/ui-picture-file.component.d.ts +4 -6
  189. package/lib/ui-pictures-info/ui-pictures-info.component.d.ts +8 -7
  190. package/lib/ui-table-view/ui-table-view.component.d.ts +1 -0
  191. package/lib/ui-tree/ui-tree.component.d.ts +5 -0
  192. package/lib/ui-tree-view/ui-tree-view.component.d.ts +7 -1
  193. package/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.d.ts +2 -1
  194. package/lib/ul-loading-mask-ui/ul-loading-mask-ui.component.d.ts +2 -1
  195. package/lib/ulv-toolbar/ulv-toolbar.component.d.ts +4 -1
  196. package/package.json +3 -3
  197. package/public-api.d.ts +6 -0
@@ -156,6 +156,12 @@ import { FormToolbarButtonComponent } from './form-toolbar-button/form-toolbar-b
156
156
  import { BarsaSearchFormComponent } from './barsa-search-form/barsa-search-form.component';
157
157
  import { ReportNewTopFormComponent } from './report-new-top-form/report-new-top-form.component';
158
158
  import { BarsaNetworkOfflineComponent } from './barsa-network-offline/barsa-network-offline.component';
159
+ import { BlobViewerComponent } from './blob-viewer/blob-viewer.component';
160
+ import { FileViewerComponent } from './file-viewer/file-viewer.component';
161
+ import { FileViewerContentComponent } from './file-viewer-content/file-viewer-content.component';
162
+ import { FileViewerPopoverComponent } from './file-viewer-popover/file-viewer-popover.component';
163
+ import { DownloadFilesDirective } from './download-files.directive';
164
+ import { FullscreenFilesDirective } from './fullscreen-files.directive';
159
165
  export const components = [
160
166
  UiTextFieldComponent,
161
167
  LyLayoutFieldLabelComponent,
@@ -301,7 +307,11 @@ export const components = [
301
307
  FormToolbarButtonComponent,
302
308
  BarsaSearchFormComponent,
303
309
  ReportNewTopFormComponent,
304
- BarsaNetworkOfflineComponent
310
+ BarsaNetworkOfflineComponent,
311
+ FileViewerContentComponent,
312
+ FileViewerPopoverComponent,
313
+ FileViewerComponent,
314
+ BlobViewerComponent
305
315
  ];
306
316
  export const pipes = [
307
317
  UploadFileStatusPipe,
@@ -317,7 +327,9 @@ export const directives = [
317
327
  ColRendererDirective,
318
328
  ApplyConditionalFormatsDirective,
319
329
  ReportViewRendererDirective,
320
- FullscreenDialogDirective
330
+ FullscreenDialogDirective,
331
+ FullscreenFilesDirective,
332
+ DownloadFilesDirective
321
333
  ];
322
334
  export const INIT_SAPFIORI = (rtlService, contentDensityService, themeService, portalService) => () => {
323
335
  rtlService.rtl.next(BarsaApi.LoginFormData.IsRtl);
@@ -359,6 +371,9 @@ export const INIT_SAPFIORI = (rtlService, contentDensityService, themeService, p
359
371
  const { ContentDensity$Caption, Theme$Caption } = userSettings;
360
372
  contentDensity = ContentDensity$Caption;
361
373
  theme = Theme$Caption;
374
+ if (!contentDensity) {
375
+ contentDensity = ContentDensityMode.COMPACT;
376
+ }
362
377
  }
363
378
  if (getDeviceIsMobile() || getDeviceIsPhone()) {
364
379
  contentDensity = ContentDensityMode.COZY;
@@ -412,4 +427,4 @@ export const INIT_SAPFIORI = (rtlService, contentDensityService, themeService, p
412
427
  }
413
428
  });
414
429
  };
415
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTBELGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkgsT0FBTyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBaUIsTUFBTSxzQkFBc0IsQ0FBQztBQUN2SCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTlCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3RHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxxRUFBcUUsQ0FBQztBQUN2SCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUM3RixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUMvRyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUNsRyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUN0RyxPQUFPLEVBQUUs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QUFhLENBQUMsQ0FBQzt3QkFDckMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztxQkFDN0M7b0JBQ0QsTUFBTTthQUNiO1NBQ0o7UUFDRCxJQUFJLEtBQUssRUFBRTtZQUNQLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRTtnQkFDNUIsUUFBUSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxNQUFNLENBQUMsQ0FBQzthQUN0RTtpQkFBTTtnQkFDSCxRQUFRLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxDQUFDO2FBQ3ZFO1lBQ0QsYUFBYSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7U0FDeEQ7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJ0bFNlcnZpY2UsIFRoZW1lc1NlcnZpY2UsIEdsb2JhbENvbnRlbnREZW5zaXR5U2VydmljZSwgQ29udGVudERlbnNpdHlNb2RlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlJztcclxuaW1wb3J0IHsgQmFyc2FBcGksIGdldERldmljZUlzTW9iaWxlLCBnZXREZXZpY2VJc1Bob25lLCBnZXREZXZpY2VJc1RhYmxldCwgUG9ydGFsU2VydmljZSB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcclxuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBVaVRleHRGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vdWktdGV4dC1maWVsZC91aS10ZXh0LWZpZWxkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEx5TGF5b3V0RmllbGRMYWJlbENvbXBvbmVudCB9IGZyb20gJy4vbHktbGF5b3V0LWZpZWxkLWxhYmVsL2x5LWxheW91dC1maWVsZC1sYWJlbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUNoZWNrQm94Q29tcG9uZW50IH0gZnJvbSAnLi91aS1jaGVjay1ib3gvdWktY2hlY2stYm94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpU2ltcGxlQ29tYm9Db21wb25lbnQgfSBmcm9tICcuL3VpLXNpbXBsZS1jb21iby91aS1zaW1wbGUtY29tYm8uY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlSYWRpb0dyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi91aS1yYWRpby1ncm91cC91aS1yYWRpby1ncm91cC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUdyaWRDb21wb25lbnQgfSBmcm9tICcuL3VpLWdyaWQvdWktZ3JpZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMeUxheW91dENvbnRhaW5lck9mUm9vdENvbXBvbmVudCB9IGZyb20gJy4vbHktbGF5b3V0LWNvbnRhaW5lci1vZi1yb290L2x5LWxheW91dC1jb250YWluZXItb2Ytcm9vdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMeUxheW91dFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9seS1sYXlvdXQtcGFuZWwvbHktbGF5b3V0LXBhbmVsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpUmVhZE9ubHlGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vdWktcmVhZC1vbmx5LWZpZWxkL3VpLXJlYWQtb25seS1maWVsZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUNvbnRhaW5lcldpdGhCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3VpLWNvbnRhaW5lci13aXRoLWJ1dHRvbi91aS1jb250YWluZXItd2l0aC1idXR0b24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlQaWN0dXJlRmlsZUNvbXBvbmVudCB9IGZyb20gJy4vdWktcGljdHVyZS1maWxlL3VpLXBpY3R1cmUtZmlsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaU1vSW5mb1VsdkNvbWJvQ29tcG9uZW50IH0gZnJvbSAnLi91aS1tby1pbmZvLXVsdi1jb21iby91aS1tby1pbmZvLXVsdi1jb21iby5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaU11bHRpU2VsZWN0Q29tYm9Db21wb25lbnQgfSBmcm9tICcuL3VpLW11bHRpLXNlbGVjdC1jb21iby91aS1tdWx0aS1zZWxlY3QtY29tYm8uY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlOdW1EZWNpbWFsVWlDb21wb25lbnQgfSBmcm9tICcuL3VpLW51bS1kZWNpbWFsLXVpL3VpLW51bS1kZWNpbWFsLXVpLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpTnVtSW50VWlDb21wb25lbnQgfSBmcm9tICcuL3VpLW51bS1pbnQtdWkvdWktbnVtLWludC11aS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaVRpbWVTcGFuQ29tcG9uZW50IH0gZnJvbSAnLi91aS10aW1lLXNwYW4vdWktdGltZS1zcGFuLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpRmlsZUxpbmVhckxpc3RCb3hDb21wb25lbnQgfSBmcm9tICcuL3VpLWZpbGUtbGluZWFyLWxpc3QtYm94L3VpLWZpbGUtbGluZWFyLWxpc3QtYm94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEx5RW1wdHlTcGFjZUNvbXBvbmVudCB9IGZyb20gJy4vbHktZW1wdHktc3BhY2UvbHktZW1wdHktc3BhY2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlTaW5nbGVQaWN0dXJlQ29tcG9uZW50IH0gZnJvbSAnLi91aS1zaW5nbGUtcGljdHVyZS91aS1zaW5nbGUtcGljdHVyZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVbHZTZWxlY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL3Vsdi1zZWxlY3Rpb24vdWx2LXNlbGVjdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVbHZUb29sYmFyQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtdG9vbGJhci91bHYtdG9vbGJhci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVbHZQYWdpbmdDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1wYWdpbmcvdWx2LXBhZ2luZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUdyaWRTb3J0U2V0dGluZ0NvbXBvbmVudCB9IGZyb20gJy4vdWktZ3JpZC1zb3J0LXNldHRpbmcvdWktZ3JpZC1zb3J0LXNldHRpbmcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlHcmlkU29ydEl0ZW1Db21wb25lbnQgfSBmcm9tICcuL3VpLWdyaWQtc29ydC1pdGVtL3VpLWdyaWQtc29ydC1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpR3JpZENvbHVtbnNDb21wb25lbnQgfSBmcm9tICcuL3VpLWdyaWQtY29sdW1ucy91aS1ncmlkLWNvbHVtbnMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWFza0NvbXBvbmVudCB9IGZyb20gJy4vbWFzay9tYXNrLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpSW5mb0JhclBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi91aS1pbmZvLWJhci1wYW5lbC91aS1pbmZvLWJhci1wYW5lbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUZvcm1QYW5lbFRvb2xiYXJDb21wb25lbnQgfSBmcm9tICcuL3VpLWZvcm0tcGFuZWwtdG9vbGJhci91aS1mb3JtLXBhbmVsLXRvb2xiYXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlGb3JtUGFuZWxDb21wb25lbnQgfSBmcm9tICcuL3VpLWZvcm0tcGFuZWwvdWktZm9ybS1wYW5lbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaVNlYXJjaENvbW1hbmRJbmZvVWlDb21wb25lbnQgfSBmcm9tICcuL3VpLXNlYXJjaC1jb21tYW5kLWluZm8tdWkvdWktc2VhcmNoLWNvbW1hbmQtaW5mby11aS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVbHZTZXR0aW5nc0NvbXBvbmVudCB9IGZyb20gJy4vdWx2LXNldHRpbmdzL3Vsdi1zZXR0aW5ncy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaVRpbnltY2VDb21wb25lbnQgfSBmcm9tICcuL3VpLXRpbnltY2UvdWktdGlueW1jZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vdWktYnV0dG9uL3VpLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaURhdGVUaW1lQ29tcG9uZW50IH0gZnJvbSAnLi91aS1kYXRlLXRpbWUvdWktZGF0ZS10aW1lLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZvcm1EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tZGlhbG9nL2Zvcm0tZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEhlYWRlckZhY2V0S2V5VmFsdWVDb21wb25lbnQgfSBmcm9tICcuL2hlYWRlci1mYWNldC1rZXktdmFsdWUvaGVhZGVyLWZhY2V0LWtleS12YWx1ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBIZWFkZXJGYWNldEZvcm1Db21wb25lbnQgfSBmcm9tICcuL2hlYWRlci1mYWNldC1mb3JtL2hlYWRlci1mYWNldC1mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEhlYWRlckZhY2V0UmF0ZUNvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyLWZhY2V0LXJhdGUvaGVhZGVyLWZhY2V0LXJhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSGVhZGVyRmFjZXRQcm9ncmVzc0NvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyLWZhY2V0LXByb2dyZXNzL2hlYWRlci1mYWNldC1wcm9ncmVzcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBIZWFkZXJGYWNldE1pY3JvY2hhcnRDb21wb25lbnQgfSBmcm9tICcuL2hlYWRlci1mYWNldC1taWNyb2NoYXJ0L2hlYWRlci1mYWNldC1taWNyb2NoYXJ0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEhlYWRlckZhY2V0UGxhaW5UZXh0Q29tcG9uZW50IH0gZnJvbSAnLi9oZWFkZXItZmFjZXQtcGxhaW4tdGV4dC9oZWFkZXItZmFjZXQtcGxhaW4tdGV4dC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaU1vSW5mb1N1YkZvcm1VaUNvbXBvbmVudCB9IGZyb20gJy4vdWktbW8taW5mby1zdWItZm9ybS11aS91aS1tby1pbmZvLXN1Yi1mb3JtLXVpLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlc3BvbnNpdmVUb29sYmFyQ29tcG9uZW50IH0gZnJvbSAnLi9yZXNwb25zaXZlLXRvb2xiYXIvcmVzcG9uc2l2ZS10b29sYmFyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlc3BvbnNpdmVUb29sYmFyUmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuL3Jlc3BvbnNpdmUtdG9vbGJhci1yZW5kZXJlci9yZXNwb25zaXZlLXRvb2xiYXItcmVuZGVyZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlUZXh0QXJlYUNvbXBvbmVudCB9IGZyb20gJy4vdWktdGV4dC1hcmVhL3VpLXRleHQtYXJlYS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMYXlvdXRDb250cm9sQ29tcG9uZW50IH0gZnJvbSAnLi9sYXlvdXQtY29udHJvbC9sYXlvdXQtY29udHJvbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMYXlvdXRXaXphcmRDb21wb25lbnQgfSBmcm9tICcuL2xheW91dC13aXphcmQvbGF5b3V0LXdpemFyZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGb3JtV2l6YXJkQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLXdpemFyZC9mb3JtLXdpemFyZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBXaXphcmRMYXlvdXREaXJlY3RpdmUgfSBmcm9tICcuL3dpemFyZC1sYXlvdXQuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgRm9ybURpYWxvZ0xlc3NDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tZGlhbG9nLWxlc3MvZm9ybS1kaWFsb2ctbGVzcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGb3JtUGFnZUNvbXBvbmVudCB9IGZyb20gJy4vZm9ybS1wYWdlL2Zvcm0tcGFnZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSaWNoVGV4dFN0YXRpY0NvbXBvbmVudCB9IGZyb20gJy4vcmljaC10ZXh0LXN0YXRpYy9yaWNoLXRleHQtc3RhdGljLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpUGljdHVyZXNJbmZvQ29tcG9uZW50IH0gZnJvbSAnLi91aS1waWN0dXJlcy1pbmZvL3VpLXBpY3R1cmVzLWluZm8uY29tcG9uZW50JztcclxuaW1wb3J0IHsgTHlIb3Jpem9udGFsTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9seS1ob3Jpem9udGFsLWxheW91dC9seS1ob3Jpem9udGFsLWxheW91dC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMeVZlcnRpY2FsTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9seS12ZXJ0aWNhbC1sYXlvdXQvbHktdmVydGljYWwtbGF5b3V0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEx5VGFiQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9seS10YWItY29udGFpbmVyL2x5LXRhYi1jb250YWluZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTHlUYWJQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9seS10YWItcGFnZS9seS10YWItcGFnZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMeUxhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi9seS1sYWJlbC9seS1sYWJlbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb2xSZW5kZXJlckRpcmVjdGl2ZSB9IGZyb20gJy4vY29sLXJlbmRlcmVyLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFVpTW9JbmZvQ29tYm9WaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL3VpLW1vLWluZm8tY29tYm8tdmlld2VyL3VpLW1vLWluZm8tY29tYm8tdmlld2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVsTXNnQm94QWRhcHRlckNvbXBvbmVudCB9IGZyb20gJy4vdWwtbXNnLWJveC1hZGFwdGVyL3VsLW1zZy1ib3gtYWRhcHRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQYWdlV2l0aEhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vcGFnZS13aXRoLWhlYWRlci9wYWdlLXdpdGgtaGVhZGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEhlYWRlckF2YXRhckNvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyLWF2YXRhci9oZWFkZXItYXZhdGFyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFwcGx5Q29uZGl0aW9uYWxGb3JtYXRzRGlyZWN0aXZlIH0gZnJvbSAnLi9hcHBseS1jb25kaXRpb25hbC1mb3JtbWF0aW5ncy5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBFbXB0eVBhZ2VDb21wb25lbnQgfSBmcm9tICcuL2VtcHR5LXBhZ2UvZW1wdHktcGFnZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaVdvcmtmbG93UGFuZWxVaUNvbXBvbmVudCB9IGZyb20gJy4vdWktd29ya2Zsb3ctcGFuZWwtdWkvdWktd29ya2Zsb3ctcGFuZWwtdWkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWx2Q29udGV4dE1lbnVDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1jb250ZXh0LW1lbnUvdWx2LWNvbnRleHQtbWVudS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVbExvYWRpbmdNYXNrVWlDb21wb25lbnQgfSBmcm9tICcuL3VsLWxvYWRpbmctbWFzay11aS91bC1sb2FkaW5nLW1hc2stdWkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlUZXh0RmllbGRBdXRvQ29tcGxldGVDb21wb25lbnQgfSBmcm9tICcuL3VpLXRleHQtZmllbGQtYXV0by1jb21wbGV0ZS91aS10ZXh0LWZpZWxkLWF1dG8tY29tcGxldGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2FwdGNoYUZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi9jYXB0Y2hhLWZpZWxkL2NhcHRjaGEtZmllbGQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTHlTaW1wbGVMYWJlbENvbXBvbmVudCB9IGZyb20gJy4vbHktc2ltcGxlLWxhYmVsL2x5LXNpbXBsZS1sYWJlbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBHbG9iYWxTZWFyY2hQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vZ2xvYmFsLXNlYXJjaC1wYW5lbC9nbG9iYWwtc2VhcmNoLXBhbmVsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEdsb2JhbFNlYXJjaE1vZHVsZUNvbXBvbmVudCB9IGZyb20gJy4vZ2xvYmFsLXNlYXJjaC1tb2R1bGUvZ2xvYmFsLXNlYXJjaC1tb2R1bGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgR2xvYmFsU2VhcmNoQ29tcG9uZW50IH0gZnJvbSAnLi9nbG9iYWwtc2VhcmNoL2dsb2JhbC1zZWFyY2guY29tcG9uZW50JztcclxuaW1wb3J0IHsgSHlwZXJsaW5rQ29tcG9uZW50IH0gZnJvbSAnLi9oeXBlcmxpbmsvaHlwZXJsaW5rLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFN0YXRpY1RleHRDb21wb25lbnQgfSBmcm9tICcuL3N0YXRpYy10ZXh0L3N0YXRpYy10ZXh0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVsVG9hc3RBZGFwdGVyQ29tcG9uZW50IH0gZnJvbSAnLi91bC10b2FzdC1hZGFwdGVyL3VsLXRvYXN0LWFkYXB0ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWVzc2FnZVN0cmlwQ29tcG9uZW50IH0gZnJvbSAnLi9tZXNzYWdlLXN0cmlwL21lc3NhZ2Utc3RyaXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlMaW5lYXJMaXN0Q29udGFpbmVyV2l0aEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vdWktbGluZWFyLWxpc3QtY29udGFpbmVyLXdpdGgtYnV0dG9uL3VpLWxpbmVhci1saXN0LWNvbnRhaW5lci13aXRoLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGdW5kYW1lbnRhbER5bmFtaWNGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9mdW5kYW1lbnRhbC1keW5hbWljLWZvcm0vZnVuZGFtZW50YWwtZHluYW1pYy1mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExheW91dEFjdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL2xheW91dC1hY3Rpb25zL2xheW91dC1hY3Rpb25zLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEx5TGF5b3V0Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9seS1sYXlvdXQtY29udGFpbmVyL2x5LWxheW91dC1jb250YWluZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlVbHZGb3JtTXVsdGlTZWxlY3RVaUNvbXBvbmVudCB9IGZyb20gJy4vdWktdWx2LWZvcm0tbXVsdGktc2VsZWN0LXVpL3VpLXVsdi1mb3JtLW11bHRpLXNlbGVjdC11aS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVbHZGb3JtTXVsdGlTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1mb3JtLW11bHRpLXNlbGVjdC91bHYtZm9ybS1tdWx0aS1zZWxlY3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWx2Q29sdW1uU2V0dGluZ3NDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1jb2x1bW4tc2V0dGluZ3MvdWx2LWNvbHVtbi1zZXR0aW5ncy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVbHZGaWx0ZXJTZXR0aW5nc0NvbXBvbmVudCB9IGZyb20gJy4vdWx2LWZpbHRlci1zZXR0aW5ncy91bHYtZmlsdGVyLXNldHRpbmdzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVsdlNvcnRTZXR0aW5nc0NvbXBvbmVudCB9IGZyb20gJy4vdWx2LXNvcnQtc2V0dGluZ3MvdWx2LXNvcnQtc2V0dGluZ3MuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWx2R3JvdXBieVNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtZ3JvdXBieS1zZXR0aW5ncy91bHYtZ3JvdXBieS1zZXR0aW5ncy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYUxpc3RGaWxlTGluZWFyQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1saXN0LWZpbGUtbGluZWFyL2JhcnNhLWxpc3QtZmlsZS1saW5lYXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlQZGZWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL3VpLXBkZi12aWV3ZXIvdWktcGRmLXZpZXdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYVRpbnllbWNlQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS10aW55ZW1jZS9iYXJzYS10aW55ZW1jZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaU1vbmFjb0VkaXRvckNvbXBvbmVudCB9IGZyb20gJy4vdWktbW9uYWNvLWVkaXRvci91aS1tb25hY28tZWRpdG9yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhTW9uYWNvRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1tb25hY28tZWRpdG9yL2JhcnNhLW1vbmFjby1lZGl0b3IuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FEYXRlVGltZVBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtZGF0ZS10aW1lLXBpY2tlci9iYXJzYS1kYXRlLXRpbWUtcGlja2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhVHJlZUl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXRyZWUtaXRlbS9iYXJzYS10cmVlLWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgVXBsb2FkRmlsZVN0YXR1c1BpcGUgfSBmcm9tICcuL3VwbG9hZC1maWxlLXN0YXR1cy5waXBlJztcclxuaW1wb3J0IHsgVWlTd2l0Y2hCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3VpLXN3aXRjaC1idXR0b24vdWktc3dpdGNoLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUNvbG9yVWlDb21wb25lbnQgfSBmcm9tICcuL3VpLWNvbG9yLXVpL3VpLWNvbG9yLXVpLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEx5TGluZUNvbXBvbmVudCB9IGZyb20gJy4vbHktbGluZS9seS1saW5lLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpVWx2TWFpblVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS11bHYtbWFpbi11aS91aS11bHYtbWFpbi11aS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZXBvcnROYXZpZ2F0b3JDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydC1uYXZpZ2F0b3IvcmVwb3J0LW5hdmlnYXRvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYW5hZ2VGaWx0ZXJzUmVwb3J0Q29tcG9uZW50IH0gZnJvbSAnLi9tYW5hZ2UtZmlsdGVycy1yZXBvcnQvbWFuYWdlLWZpbHRlcnMtcmVwb3J0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlcG9ydFNlYXJjaEZpZWxkc01hbmFnZUNvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0LXNlYXJjaC1maWVsZHMtbWFuYWdlL3JlcG9ydC1zZWFyY2gtZmllbGRzLW1hbmFnZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZXBvcnRTZWFyY2hGaWVsZHNIaWRkZW5TZXR0aW5nc0NvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0LXNlYXJjaC1maWVsZHMtaGlkZGVuLXNldHRpbmdzL3JlcG9ydC1zZWFyY2gtZmllbGRzLWhpZGRlbi1zZXR0aW5ncy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTZWFyY2hQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vc2VhcmNoLXBhbmVsL3NlYXJjaC1wYW5lbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZXBvcnRTZWFyY2hQYW5lbFNhdmVDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydC1zZWFyY2gtcGFuZWwtc2F2ZS9yZXBvcnQtc2VhcmNoLXBhbmVsLXNhdmUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlHcmlkRmlsdGVyU2V0dGluZ3NDb21wb25lbnQgfSBmcm9tICcuL3VpLWdyaWQtZmlsdGVyLXNldHRpbmdzL3VpLWdyaWQtZmlsdGVyLXNldHRpbmdzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpR3JpZEZpbHRlckl0ZW1Db21wb25lbnQgfSBmcm9tICcuL3VpLWdyaWQtZmlsdGVyLWl0ZW0vdWktZ3JpZC1maWx0ZXItaXRlbS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTYXBGb250UGlwZSB9IGZyb20gJy4vc2FwLWZvbnQucGlwZSc7XHJcbmltcG9ydCB7IFNhcEZvbnRDbGFzc1BpcGUgfSBmcm9tICcuL3NhcC1mb250LWNsYXNzLnBpcGUnO1xyXG5pbXBvcnQgeyBVaURhdGVSYW5nZUV4Q29tcG9uZW50IH0gZnJvbSAnLi91aS1kYXRlLXJhbmdlLWV4L3VpLWRhdGUtcmFuZ2UtZXguY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWxOb3RpZnlQb3B1cENvbXBvbmVudCB9IGZyb20gJy4vdWwtbm90aWZ5LXBvcHVwL3VsLW5vdGlmeS1wb3B1cC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaVRhYmxlVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdWktdGFibGUtdmlldy91aS10YWJsZS12aWV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpTGlzdFZpZXdDb21wb25lbnQgfSBmcm9tICcuL3VpLWxpc3Qtdmlldy91aS1saXN0LXZpZXcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3RyaW5nVG9BcnJheVBpcGUsIFVpQ2FyZFZpZXdDb21wb25lbnQgfSBmcm9tICcuL3VpLWNhcmQtdmlldy91aS1jYXJkLXZpZXcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlSZXBvcnRDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL3VpLXJlcG9ydC1jb250YWluZXIvdWktcmVwb3J0LWNvbnRhaW5lci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOb0RhdGFDb21wb25lbnQgfSBmcm9tICcuL25vLWRhdGEvbm8tZGF0YS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb2x1bW5SZW5kZXJlckNvbXBvbmVudCB9IGZyb20gJy4vY29sdW1uLXJlbmRlcmVyL2NvbHVtbi1yZW5kZXJlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBJbmxpbmVTYXZlQW5kQ2FuY2VsQ29tcG9uZW50IH0gZnJvbSAnLi9pbmxpbmUtc2F2ZS1hbmQtY2FuY2VsL2lubGluZS1zYXZlLWFuZC1jYW5jZWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlUcmVlVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdWktdHJlZS12aWV3L3VpLXRyZWUtdmlldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaVRyZWVDb21wb25lbnQgfSBmcm9tICcuL3VpLXRyZWUvdWktdHJlZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUNhbGVuZGFyQ29tcG9uZW50IH0gZnJvbSAnLi91aS1jYWxlbmRhci91aS1jYWxlbmRhci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOb2RlSGFzT25lRGVwdGhMZXZlbFBpcGUgfSBmcm9tICcuL2JhcnNhLXRyZWUtaXRlbS9ub2RlLWhhcy1vbmUtZGVwdGgtbGV2ZWwucGlwZSc7XHJcbmltcG9ydCB7IFVpQXNwUmVwb3J0Vmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi91aS1hc3AtcmVwb3J0LXZpZXdlci91aS1hc3AtcmVwb3J0LXZpZXdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUdyYXBoQ29tcG9uZW50IH0gZnJvbSAnLi91aS1ncmFwaC91aS1ncmFwaC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUV4Y2VwdGlvbkZvcm1Db21wb25lbnQgfSBmcm9tICcuL3VpLWV4Y2VwdGlvbi1mb3JtL3VpLWV4Y2VwdGlvbi1mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpRWRpdGFibGVHcmlkQ29tcG9uZW50IH0gZnJvbSAnLi91aS1lZGl0YWJsZS1ncmlkL3VpLWVkaXRhYmxlLWdyaWQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29sdW1uTWF0cml4UmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbHVtbi1tYXRyaXgtcmVuZGVyZXIvY29sdW1uLW1hdHJpeC1yZW5kZXJlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaU1hdHJpeFZpZXdDb21wb25lbnQgfSBmcm9tICcuL3VpLW1hdHJpeC12aWV3L3VpLW1hdHJpeC12aWV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1c3RvbURhdGVUaW1lQ29tcG9uZW50IH0gZnJvbSAnLi9jdXN0b20tZGF0ZS10aW1lL2N1c3RvbS1kYXRlLXRpbWUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0cml4VmFsdWVQaXBlIH0gZnJvbSAnLi9jb2x1bW4tbWF0cml4LXJlbmRlcmVyL21hdHJpeC12YWx1ZS5waXBlJztcclxuaW1wb3J0IHsgQmFyc2FBc3BWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWFzcC12aWV3ZXIvYmFyc2EtYXNwLXZpZXdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGaWxlSW5EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2ZpbGUtaW4tZGlhbG9nL2ZpbGUtaW4tZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IER5bmFtaWNQYWdlU2l6ZVBpcGUgfSBmcm9tICcuL2R5bmFtaWMtcGFnZS1zaXplLnBpcGUnO1xyXG5pbXBvcnQgeyBSZXBvcnRWaWV3UmVuZGVyZXJEaXJlY3RpdmUgfSBmcm9tICcuL3JlcG9ydC12aWV3LXJlbmRlcmVyLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFVpTW9JbmZvR2VuZXJhbE9iamVjdFVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS1tby1pbmZvLWdlbmVyYWwtb2JqZWN0LXVpL3VpLW1vLWluZm8tZ2VuZXJhbC1vYmplY3QtdWkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlHYW50dENoYXJ0Q29tcG9uZW50IH0gZnJvbSAnLi91aS1nYW50dC1jaGFydC91aS1nYW50dC1jaGFydC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBHYW50dERodG1sQ2hhcnRWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9nYW50dC1kaHRtbC1jaGFydC12aWV3L2dhbnR0LWRodG1sLWNoYXJ0LXZpZXcuY29tcG9uZW50JztcclxuXHJcbmltcG9ydCB7IEZ1bGxzY3JlZW5EaWFsb2dEaXJlY3RpdmUgfSBmcm9tICcuL2Z1bGxzY3JlZW4tZGlhbG9nLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFByb2dyZXNzSW5kaWNhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9wcm9ncmVzcy1pbmRpY2F0b3IvcHJvZ3Jlc3MtaW5kaWNhdG9yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENhcmRWaWV3Q29udGVudENvbXBvbmVudCB9IGZyb20gJy4vY2FyZC12aWV3LWNvbnRlbnQvY2FyZC12aWV3LWNvbnRlbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2FyZEl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2NhcmQtaXRlbS9jYXJkLWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlDYXJkVmlld0hvcml6b250YWxHcm91cENvbXBvbmVudCB9IGZyb20gJy4vdWktY2FyZC12aWV3LWhvcml6b250YWwtZ3JvdXAvdWktY2FyZC12aWV3LWhvcml6b250YWwtZ3JvdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGl0bGVDb21wb25lbnQgfSBmcm9tICcuL3RpdGxlL3RpdGxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhVWx2TWFpbkNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtdWx2LW1haW4vYmFyc2EtdWx2LW1haW4uY29tcG9uZW50JztcclxuaW1wb3J0IHsgTGlzdEl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2xpc3QtaXRlbS9saXN0LWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgSHRyZWVDcmVhdGVOZXdDb21wb25lbnQgfSBmcm9tICcuL2h0cmVlLWNyZWF0ZS1uZXcvaHRyZWUtY3JlYXRlLW5ldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYVRhYmxlUm93Q29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS10YWJsZS1yb3cvYmFyc2EtdGFibGUtcm93LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhVGFibGVIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXRhYmxlLWhlYWRlci9iYXJzYS10YWJsZS1oZWFkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQnJlYWRjcnVtYkNvbXBvbmVudCB9IGZyb20gJy4vYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpTGFiZWxDb21wb25lbnQgfSBmcm9tICcuL3VpLWxhYmVsL3VpLWxhYmVsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZvcm1Ub29sYmFyQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLXRvb2xiYXItYnV0dG9uL2Zvcm0tdG9vbGJhci1idXR0b24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FTZWFyY2hGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1zZWFyY2gtZm9ybS9iYXJzYS1zZWFyY2gtZm9ybS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZXBvcnROZXdUb3BGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnQtbmV3LXRvcC1mb3JtL3JlcG9ydC1uZXctdG9wLWZvcm0uY29tcG9uZW50JztcclxuXHJcbmltcG9ydCB7IEJhcnNhTmV0d29ya09mZmxpbmVDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLW5ldHdvcmstb2ZmbGluZS9iYXJzYS1uZXR3b3JrLW9mZmxpbmUuY29tcG9uZW50JztcclxuXHJcbmV4cG9ydCBjb25zdCBjb21wb25lbnRzID0gW1xyXG4gICAgVWlUZXh0RmllbGRDb21wb25lbnQsXHJcbiAgICBMeUxheW91dEZpZWxkTGFiZWxDb21wb25lbnQsXHJcbiAgICBVaUNoZWNrQm94Q29tcG9uZW50LFxyXG4gICAgVWlTaW1wbGVDb21ib0NvbXBvbmVudCxcclxuICAgIFVpUmFkaW9Hcm91cENvbXBvbmVudCxcclxuICAgIFVpR3JpZENvbXBvbmVudCxcclxuICAgIEx5TGF5b3V0Q29udGFpbmVyT2ZSb290Q29tcG9uZW50LFxyXG4gICAgTHlMYXlvdXRQYW5lbENvbXBvbmVudCxcclxuICAgIFVpUmVhZE9ubHlGaWVsZENvbXBvbmVudCxcclxuICAgIFVpQ29udGFpbmVyV2l0aEJ1dHRvbkNvbXBvbmVudCxcclxuICAgIFVpUGljdHVyZUZpbGVDb21wb25lbnQsXHJcbiAgICBVaU1vSW5mb1VsdkNvbWJvQ29tcG9uZW50LFxyXG4gICAgVWlNdWx0aVNlbGVjdENvbWJvQ29tcG9uZW50LFxyXG4gICAgVWlOdW1EZWNpbWFsVWlDb21wb25lbnQsXHJcbiAgICBVaU51bUludFVpQ29tcG9uZW50LFxyXG4gICAgVWlUaW1lU3BhbkNvbXBvbmVudCxcclxuICAgIFVpRmlsZUxpbmVhckxpc3RCb3hDb21wb25lbnQsXHJcbiAgICBMeUVtcHR5U3BhY2VDb21wb25lbnQsXHJcbiAgICBVaVNpbmdsZVBpY3R1cmVDb21wb25lbnQsXHJcbiAgICBVbHZTZWxlY3Rpb25Db21wb25lbnQsXHJcbiAgICBVbHZUb29sYmFyQ29tcG9uZW50LFxyXG4gICAgVWx2UGFnaW5nQ29tcG9uZW50LFxyXG4gICAgVWlHcmlkU29ydFNldHRpbmdDb21wb25lbnQsXHJcbiAgICBVaUdyaWRTb3J0SXRlbUNvbXBvbmVudCxcclxuICAgIFVpR3JpZENvbHVtbnNDb21wb25lbnQsXHJcbiAgICBNYXNrQ29tcG9uZW50LFxyXG4gICAgVWlJbmZvQmFyUGFuZWxDb21wb25lbnQsXHJcbiAgICBVaUZvcm1QYW5lbFRvb2xiYXJDb21wb25lbnQsXHJcbiAgICBVaUZvcm1QYW5lbENvbXBvbmVudCxcclxuICAgIFVpU2VhcmNoQ29tbWFuZEluZm9VaUNvbXBvbmVudCxcclxuICAgIFVsdlNldHRpbmdzQ29tcG9uZW50LFxyXG4gICAgVWlUaW55bWNlQ29tcG9uZW50LFxyXG4gICAgVWlCdXR0b25Db21wb25lbnQsXHJcbiAgICBVaURhdGVUaW1lQ29tcG9uZW50LFxyXG4gICAgRm9ybURpYWxvZ0NvbXBvbmVudCxcclxuICAgIEhlYWRlckZhY2V0S2V5VmFsdWVDb21wb25lbnQsXHJcbiAgICBIZWFkZXJGYWNldEZvcm1Db21wb25lbnQsXHJcbiAgICBIZWFkZXJGYWNldFJhdGVDb21wb25lbnQsXHJcbiAgICBIZWFkZXJGYWNldFByb2dyZXNzQ29tcG9uZW50LFxyXG4gICAgSGVhZGVyRmFjZXRNaWNyb2NoYXJ0Q29tcG9uZW50LFxyXG4gICAgSGVhZGVyRmFjZXRQbGFpblRleHRDb21wb25lbnQsXHJcbiAgICBVaU1vSW5mb1N1YkZvcm1VaUNvbXBvbmVudCxcclxuICAgIFJlc3BvbnNpdmVUb29sYmFyQ29tcG9uZW50LFxyXG4gICAgUmVzcG9uc2l2ZVRvb2xiYXJSZW5kZXJlckNvbXBvbmVudCxcclxuICAgIFVpVGV4dEFyZWFDb21wb25lbnQsXHJcbiAgICBMYXlvdXRDb250cm9sQ29tcG9uZW50LFxyXG4gICAgTGF5b3V0V2l6YXJkQ29tcG9uZW50LFxyXG4gICAgRm9ybVdpemFyZENvbXBvbmVudCxcclxuICAgIEZvcm1EaWFsb2dMZXNzQ29tcG9uZW50LFxyXG4gICAgRm9ybVBhZ2VDb21wb25lbnQsXHJcbiAgICBSaWNoVGV4dFN0YXRpY0NvbXBvbmVudCxcclxuICAgIFVpUGljdHVyZXNJbmZvQ29tcG9uZW50LFxyXG4gICAgTHlIb3Jpem9udGFsTGF5b3V0Q29tcG9uZW50LFxyXG4gICAgTHlWZXJ0aWNhbExheW91dENvbXBvbmVudCxcclxuICAgIEx5VGFiQ29udGFpbmVyQ29tcG9uZW50LFxyXG4gICAgTHlUYWJQYWdlQ29tcG9uZW50LFxyXG4gICAgTHlMYWJlbENvbXBvbmVudCxcclxuICAgIFVpTW9JbmZvQ29tYm9WaWV3ZXJDb21wb25lbnQsXHJcbiAgICBVbE1zZ0JveEFkYXB0ZXJDb21wb25lbnQsXHJcbiAgICBVaVRyZWVDb21wb25lbnQsXHJcbiAgICBQYWdlV2l0aEhlYWRlckNvbXBvbmVudCxcclxuICAgIEhlYWRlckF2YXRhckNvbXBvbmVudCxcclxuICAgIEVtcHR5UGFnZUNvbXBvbmVudCxcclxuICAgIFVpV29ya2Zsb3dQYW5lbFVpQ29tcG9uZW50LFxyXG4gICAgVWx2Q29udGV4dE1lbnVDb21wb25lbnQsXHJcbiAgICBVbExvYWRpbmdNYXNrVWlDb21wb25lbnQsXHJcbiAgICBVaVRleHRGaWVsZEF1dG9Db21wbGV0ZUNvbXBvbmVudCxcclxuICAgIENhcHRjaGFGaWVsZENvbXBvbmVudCxcclxuICAgIEx5U2ltcGxlTGFiZWxDb21wb25lbnQsXHJcbiAgICBHbG9iYWxTZWFyY2hQYW5lbENvbXBvbmVudCxcclxuICAgIEdsb2JhbFNlYXJjaE1vZHVsZUNvbXBvbmVudCxcclxuICAgIEdsb2JhbFNlYXJjaENvbXBvbmVudCxcclxuICAgIEh5cGVybGlua0NvbXBvbmVudCxcclxuICAgIFN0YXRpY1RleHRDb21wb25lbnQsXHJcbiAgICBVbFRvYXN0QWRhcHRlckNvbXBvbmVudCxcclxuICAgIE1lc3NhZ2VTdHJpcENvbXBvbmVudCxcclxuICAgIFVpTGluZWFyTGlzdENvbnRhaW5lcldpdGhCdXR0b25Db21wb25lbnQsXHJcbiAgICBGdW5kYW1lbnRhbER5bmFtaWNGb3JtQ29tcG9uZW50LFxyXG4gICAgTGF5b3V0QWN0aW9uc0NvbXBvbmVudCxcclxuICAgIEx5TGF5b3V0Q29udGFpbmVyQ29tcG9uZW50LFxyXG4gICAgVWlVbHZGb3JtTXVsdGlTZWxlY3RVaUNvbXBvbmVudCxcclxuICAgIFVsdkZvcm1NdWx0aVNlbGVjdENvbXBvbmVudCxcclxuICAgIFVsdkNvbHVtblNldHRpbmdzQ29tcG9uZW50LFxyXG4gICAgVWx2RmlsdGVyU2V0dGluZ3NDb21wb25lbnQsXHJcbiAgICBVbHZTb3J0U2V0dGluZ3NDb21wb25lbnQsXHJcbiAgICBVbHZHcm91cGJ5U2V0dGluZ3NDb21wb25lbnQsXHJcbiAgICBCYXJzYUxpc3RGaWxlTGluZWFyQ29tcG9uZW50LFxyXG4gICAgVWlQZGZWaWV3ZXJDb21wb25lbnQsXHJcbiAgICBCYXJzYVRpbnllbWNlQ29tcG9uZW50LFxyXG4gICAgVWlNb25hY29FZGl0b3JDb21wb25lbnQsXHJcbiAgICBCYXJzYU1vbmFjb0VkaXRvckNvbXBvbmVudCxcclxuICAgIEJhcnNhRGF0ZVRpbWVQaWNrZXJDb21wb25lbnQsXHJcbiAgICBCYXJzYVRyZWVJdGVtQ29tcG9uZW50LFxyXG4gICAgVWlTd2l0Y2hCdXR0b25Db21wb25lbnQsXHJcbiAgICBVaUNvbG9yVWlDb21wb25lbnQsXHJcbiAgICBMeUxpbmVDb21wb25lbnQsXHJcbiAgICBVaVVsdk1haW5VaUNvbXBvbmVudCxcclxuICAgIFJlcG9ydE5hdmlnYXRvckNvbXBvbmVudCxcclxuICAgIE1hbmFnZUZpbHRlcnNSZXBvcnRDb21wb25lbnQsXHJcbiAgICBSZXBvcnRTZWFyY2hGaWVsZHNNYW5hZ2VDb21wb25lbnQsXHJcbiAgICBSZXBvcnRTZWFyY2hGaWVsZHNIaWRkZW5TZXR0aW5nc0NvbXBvbmVudCxcclxuICAgIFNlYXJjaFBhbmVsQ29tcG9uZW50LFxyXG4gICAgUmVwb3J0U2VhcmNoUGFuZWxTYXZlQ29tcG9uZW50LFxyXG4gICAgVWlHcmlkRmlsdGVyU2V0dGluZ3NDb21wb25lbnQsXHJcbiAgICBVaUdyaWRGaWx0ZXJJdGVtQ29tcG9uZW50LFxyXG4gICAgVWlEYXRlUmFuZ2VFeENvbXBvbmVudCxcclxuICAgIFVsTm90aWZ5UG9wdXBDb21wb25lbnQsXHJcbiAgICBVaVRhYmxlVmlld0NvbXBvbmVudCxcclxuICAgIFVpTGlzdFZpZXdDb21wb25lbnQsXHJcbiAgICBVaUNhcmRWaWV3Q29tcG9uZW50LFxyXG4gICAgVWlSZXBvcnRDb250YWluZXJDb21wb25lbnQsXHJcbiAgICBOb0RhdGFDb21wb25lbnQsXHJcbiAgICBDb2x1bW5SZW5kZXJlckNvbXBvbmVudCxcclxuICAgIElubGluZVNhdmVBbmRDYW5jZWxDb21wb25lbnQsXHJcbiAgICBVaVRyZWVWaWV3Q29tcG9uZW50LFxyXG4gICAgSW5saW5lU2F2ZUFuZENhbmNlbENvbXBvbmVudCxcclxuICAgIFVpQ2FsZW5kYXJDb21wb25lbnQsXHJcbiAgICBVaUFzcFJlcG9ydFZpZXdlckNvbXBvbmVudCxcclxuICAgIFVpR3JhcGhDb21wb25lbnQsXHJcbiAgICBVaUV4Y2VwdGlvbkZvcm1Db21wb25lbnQsXHJcbiAgICBVaUVkaXRhYmxlR3JpZENvbXBvbmVudCxcclxuICAgIENvbHVtbk1hdHJpeFJlbmRlcmVyQ29tcG9uZW50LFxyXG4gICAgVWlNYXRyaXhWaWV3Q29tcG9uZW50LFxyXG4gICAgQ3VzdG9tRGF0ZVRpbWVDb21wb25lbnQsXHJcbiAgICBCYXJzYUFzcFZpZXdlckNvbXBvbmVudCxcclxuICAgIEZpbGVJbkRpYWxvZ0NvbXBvbmVudCxcclxuICAgIFVpTW9JbmZvR2VuZXJhbE9iamVjdFVpQ29tcG9uZW50LFxyXG4gICAgVWlHYW50dENoYXJ0Q29tcG9uZW50LFxyXG4gICAgR2FudHREaHRtbENoYXJ0Vmlld0NvbXBvbmVudCxcclxuICAgIFByb2dyZXNzSW5kaWNhdG9yQ29tcG9uZW50LFxyXG4gICAgQ2FyZFZpZXdDb250ZW50Q29tcG9uZW50LFxyXG4gICAgQ2FyZEl0ZW1Db21wb25lbnQsXHJcbiAgICBVaUNhcmRWaWV3SG9yaXpvbnRhbEdyb3VwQ29tcG9uZW50LFxyXG4gICAgVGl0bGVDb21wb25lbnQsXHJcbiAgICBCYXJzYVVsdk1haW5Db21wb25lbnQsXHJcbiAgICBMaXN0SXRlbUNvbXBvbmVudCxcclxuICAgIEh0cmVlQ3JlYXRlTmV3Q29tcG9uZW50LFxyXG4gICAgQmFyc2FUYWJsZUhlYWRlckNvbXBvbmVudCxcclxuICAgIEJhcnNhVGFibGVSb3dDb21wb25lbnQsXHJcbiAgICBCcmVhZGNydW1iQ29tcG9uZW50LFxyXG4gICAgVWlMYWJlbENvbXBvbmVudCxcclxuICAgIEZvcm1Ub29sYmFyQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgQmFyc2FTZWFyY2hGb3JtQ29tcG9uZW50LFxyXG4gICAgUmVwb3J0TmV3VG9wRm9ybUNvbXBvbmVudCxcclxuICAgIEJhcnNhTmV0d29ya09mZmxpbmVDb21wb25lbnRcclxuXTtcclxuZXhwb3J0IGNvbnN0IHBpcGVzID0gW1xyXG4gICAgVXBsb2FkRmlsZVN0YXR1c1BpcGUsXHJcbiAgICBTYXBGb250UGlwZSxcclxuICAgIFNhcEZvbnRDbGFzc1BpcGUsXHJcbiAgICBTdHJpbmdUb0FycmF5UGlwZSxcclxuICAgIE5vZGVIYXNPbmVEZXB0aExldmVsUGlwZSxcclxuICAgIE1hdHJpeFZhbHVlUGlwZSxcclxuICAgIER5bmFtaWNQYWdlU2l6ZVBpcGVcclxuXTtcclxuZXhwb3J0IGNvbnN0IGRpcmVjdGl2ZXMgPSBbXHJcbiAgICBXaXphcmRMYXlvdXREaXJlY3RpdmUsXHJcbiAgICBDb2xSZW5kZXJlckRpcmVjdGl2ZSxcclxuICAgIEFwcGx5Q29uZGl0aW9uYWxGb3JtYXRzRGlyZWN0aXZlLFxyXG4gICAgUmVwb3J0Vmlld1JlbmRlcmVyRGlyZWN0aXZlLFxyXG4gICAgRnVsbHNjcmVlbkRpYWxvZ0RpcmVjdGl2ZVxyXG5dO1xyXG5cclxuZXhwb3J0IGNvbnN0IElOSVRfU0FQRklPUkkgPVxyXG4gICAgKFxyXG4gICAgICAgIHJ0bFNlcnZpY2U6IFJ0bFNlcnZpY2UsXHJcbiAgICAgICAgY29udGVudERlbnNpdHlTZXJ2aWNlOiBHbG9iYWxDb250ZW50RGVuc2l0eVNlcnZpY2UsXHJcbiAgICAgICAgdGhlbWVTZXJ2aWNlOiBUaGVtZXNTZXJ2aWNlLFxyXG4gICAgICAgIHBvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2VcclxuICAgICkgPT5cclxuICAgICgpID0+IHtcclxuICAgICAgICBydGxTZXJ2aWNlLnJ0bC5uZXh0KEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuSXNSdGwpO1xyXG4gICAgICAgIGxldCBmb250RmFtaWx5ID0gJ0lSQU5ZZWthbkRpZ2l0cyc7XHJcbiAgICAgICAgaWYgKEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuQ3VsdHVyZSA9PT0gJ2VuLVVTJykge1xyXG4gICAgICAgICAgICBmb250RmFtaWx5ID0gJ0lSQU5TYW5zV2ViJztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IGNzcyA9IGAqIHtcclxuICAgIC0tZmREeW5hbWljUGFnZV9UaXRsZV9Gb250X0ZhbWlseTogJyR7Zm9udEZhbWlseX0nO1xyXG4gICAgLS1zYXBGb250RmFtaWx5OiAnJHtmb250RmFtaWx5fSc7XHJcbiAgICAtLWZkV2l6YXJkX0xhYmVsX0ZvbnRfRmFtaWx5OiAnJHtmb250RmFtaWx5fSc7XHJcbiAgICAtLXNhcEZvbnRMaWdodEZhbWlseTogJyR7Zm9udEZhbWlseX0nO1xyXG4gICAgLS1zYXBGb250SGVhZGVyRmFtaWx5OiAnJHtmb250RmFtaWx5fSc7XHJcbiAgICAtLV91aTVfaW5wdXRfY29tcGFjdF9oZWlnaHQ6IDEuNjI1cmVtO1xyXG4gICAgLS1zYXBGb250U2l6ZTogMC44ODVyZW07XHJcbiAgICAvKiAtLXNhcENvbnRlbnRfSGVhZGVyU2hhZG93OiBub25lOyAqL1xyXG59YCxcclxuICAgICAgICAgICAgaGVhZCA9IGRvY3VtZW50LmhlYWQgfHwgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXSxcclxuICAgICAgICAgICAgc3R5bGU6IGFueSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3N0eWxlJyk7XHJcblxyXG4gICAgICAgIGhlYWQuYXBwZW5kQ2hpbGQoc3R5bGUpO1xyXG5cclxuICAgICAgICBzdHlsZS50eXBlID0gJ3RleHQvY3NzJztcclxuICAgICAgICBpZiAoc3R5bGUuc3R5bGVTaGVldCkge1xyXG4gICAgICAgICAgICAvLyBUaGlzIGlzIHJlcXVpcmVkIGZvciBJRTggYW5kIGJlbG93LlxyXG4gICAgICAgICAgICBzdHlsZS5zdHlsZVNoZWV0LmNzc1RleHQgPSBjc3M7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgc3R5bGUuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoY3NzKSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBwb3J0YWxTZXJ2aWNlLnVzZXJQb3J0YWxTZXR0aW5ncyQucGlwZShmaWx0ZXIoKGMpID0+IGMgIT0gbnVsbCkpLnN1YnNjcmliZSgodXNlclNldHRpbmdzKSA9PiB7XHJcbiAgICAgICAgICAgIGxldCBjb250ZW50RGVuc2l0eTogYW55O1xyXG4gICAgICAgICAgICBsZXQgdGhlbWU6IGFueTtcclxuICAgICAgICAgICAgaWYgKCF1c2VyU2V0dGluZ3MpIHtcclxuICAgICAgICAgICAgICAgIGlmIChnZXREZXZpY2VJc01vYmlsZSgpIHx8IGdldERldmljZUlzUGhvbmUoKSB8fCBnZXREZXZpY2VJc1RhYmxldCgpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudERlbnNpdHkgPSBDb250ZW50RGVuc2l0eU1vZGUuQ09aWTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudERlbnNpdHkgPSBDb250ZW50RGVuc2l0eU1vZGUuQ09NUEFDVDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHsgQ29udGVudERlbnNpdHkkQ2FwdGlvbiwgVGhlbWUkQ2FwdGlvbiB9ID0gdXNlclNldHRpbmdzO1xyXG4gICAgICAgICAgICAgICAgY29udGVudERlbnNpdHkgPSBDb250ZW50RGVuc2l0eSRDYXB0aW9uO1xyXG4gICAgICAgICAgICAgICAgdGhlbWUgPSBUaGVtZSRDYXB0aW9uO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmIChnZXREZXZpY2VJc01vYmlsZSgpIHx8IGdldERldmljZUlzUGhvbmUoKSkge1xyXG4gICAgICAgICAgICAgICAgY29udGVudERlbnNpdHkgPSBDb250ZW50RGVuc2l0eU1vZGUuQ09aWTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAoY29udGVudERlbnNpdHkpIHtcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50RGVuc2l0eVNlcnZpY2UudXBkYXRlQ29udGVudERlbnNpdHkoY29udGVudERlbnNpdHkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgY29uc3QgYm9keUNsYXNzQ29tcGFjdCA9ICd1aTUtY29udGVudC1kZW5zaXR5LWNvbXBhY3QnO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgYm9keUNsYXNzQ29uZGVuc2VkID0gJ3VpNS1jb250ZW50LWRlbnNpdHktY29uZGVuc2VkJztcclxuICAgICAgICAgICAgICAgIGNvbnN0IGJvZHlDbGFzc0NvenkgPSAndWk1LWNvbnRlbnQtZGVuc2l0eS1jb3p5JztcclxuICAgICAgICAgICAgICAgIGNvbnN0IGJvZHkgPSBkb2N1bWVudD8uYm9keTtcclxuICAgICAgICAgICAgICAgIHN3aXRjaCAoY29udGVudERlbnNpdHkpIHtcclxuICAgICAgICAgICAgICAgICAgICBjYXNlICdjb25kZW5zZWQnOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWJvZHkuY2xhc3NMaXN0LmNvbnRhaW5zKGJvZHlDbGFzc0NvbmRlbnNlZCkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5hZGQoYm9keUNsYXNzQ29uZGVuc2VkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LnJlbW92ZShib2R5Q2xhc3NDb21wYWN0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LnJlbW92ZShib2R5Q2xhc3NDb3p5KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnY296eSc6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghYm9keS5jbGFzc0xpc3QuY29udGFpbnMoYm9keUNsYXNzQ296eSkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5hZGQoYm9keUNsYXNzQ296eSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5yZW1vdmUoYm9keUNsYXNzQ29tcGFjdCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5yZW1vdmUoYm9keUNsYXNzQ29uZGVuc2VkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgICBjYXNlICdjb21wYWN0JzpcclxuICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFib2R5LmNsYXNzTGlzdC5jb250YWlucyhib2R5Q2xhc3NDb21wYWN0KSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LmFkZChib2R5Q2xhc3NDb21wYWN0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LnJlbW92ZShib2R5Q2xhc3NDb3p5KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LnJlbW92ZShib2R5Q2xhc3NDb25kZW5zZWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmICh0aGVtZSkge1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoZW1lLmluZGV4T2YoJ2RhcmsnKSA+IC0xKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdjb2xvci1zY2hlbWUnLCAnZGFyaycpO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2NvbG9yLXNjaGVtZScsICdsaWdodCcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgcG9ydGFsU2VydmljZS5zZXRUaGVtZSh0aGVtZVNlcnZpY2Uuc2V0VGhlbWUodGhlbWUpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfTtcclxuIl19
430
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTBELGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkgsT0FBTyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBaUIsTUFBTSxzQkFBc0IsQ0FBQztBQUN2SCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTlCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3RHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxxRUFBcUUsQ0FBQztBQUN2SCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUM3RixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUMvRyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUNsRyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUN0RyxPQUFPLEVBQUUs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LCBUaGVtZXNTZXJ2aWNlLCBHbG9iYWxDb250ZW50RGVuc2l0eVNlcnZpY2UsIENvbnRlbnREZW5zaXR5TW9kZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XHJcbmltcG9ydCB7IEJhcnNhQXBpLCBnZXREZXZpY2VJc01vYmlsZSwgZ2V0RGV2aWNlSXNQaG9uZSwgZ2V0RGV2aWNlSXNUYWJsZXQsIFBvcnRhbFNlcnZpY2UgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMnO1xyXG5cclxuaW1wb3J0IHsgVWlUZXh0RmllbGRDb21wb25lbnQgfSBmcm9tICcuL3VpLXRleHQtZmllbGQvdWktdGV4dC1maWVsZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMeUxheW91dEZpZWxkTGFiZWxDb21wb25lbnQgfSBmcm9tICcuL2x5LWxheW91dC1maWVsZC1sYWJlbC9seS1sYXlvdXQtZmllbGQtbGFiZWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlDaGVja0JveENvbXBvbmVudCB9IGZyb20gJy4vdWktY2hlY2stYm94L3VpLWNoZWNrLWJveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaVNpbXBsZUNvbWJvQ29tcG9uZW50IH0gZnJvbSAnLi91aS1zaW1wbGUtY29tYm8vdWktc2ltcGxlLWNvbWJvLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpUmFkaW9Hcm91cENvbXBvbmVudCB9IGZyb20gJy4vdWktcmFkaW8tZ3JvdXAvdWktcmFkaW8tZ3JvdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlHcmlkQ29tcG9uZW50IH0gZnJvbSAnLi91aS1ncmlkL3VpLWdyaWQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTHlMYXlvdXRDb250YWluZXJPZlJvb3RDb21wb25lbnQgfSBmcm9tICcuL2x5LWxheW91dC1jb250YWluZXItb2Ytcm9vdC9seS1sYXlvdXQtY29udGFpbmVyLW9mLXJvb3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTHlMYXlvdXRQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vbHktbGF5b3V0LXBhbmVsL2x5LWxheW91dC1wYW5lbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaVJlYWRPbmx5RmllbGRDb21wb25lbnQgfSBmcm9tICcuL3VpLXJlYWQtb25seS1maWVsZC91aS1yZWFkLW9ubHktZmllbGQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlDb250YWluZXJXaXRoQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi91aS1jb250YWluZXItd2l0aC1idXR0b24vdWktY29udGFpbmVyLXdpdGgtYnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpUGljdHVyZUZpbGVDb21wb25lbnQgfSBmcm9tICcuL3VpLXBpY3R1cmUtZmlsZS91aS1waWN0dXJlLWZpbGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlNb0luZm9VbHZDb21ib0NvbXBvbmVudCB9IGZyb20gJy4vdWktbW8taW5mby11bHYtY29tYm8vdWktbW8taW5mby11bHYtY29tYm8uY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlNdWx0aVNlbGVjdENvbWJvQ29tcG9uZW50IH0gZnJvbSAnLi91aS1tdWx0aS1zZWxlY3QtY29tYm8vdWktbXVsdGktc2VsZWN0LWNvbWJvLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpTnVtRGVjaW1hbFVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS1udW0tZGVjaW1hbC11aS91aS1udW0tZGVjaW1hbC11aS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaU51bUludFVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS1udW0taW50LXVpL3VpLW51bS1pbnQtdWkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlUaW1lU3BhbkNvbXBvbmVudCB9IGZyb20gJy4vdWktdGltZS1zcGFuL3VpLXRpbWUtc3Bhbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUZpbGVMaW5lYXJMaXN0Qm94Q29tcG9uZW50IH0gZnJvbSAnLi91aS1maWxlLWxpbmVhci1saXN0LWJveC91aS1maWxlLWxpbmVhci1saXN0LWJveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMeUVtcHR5U3BhY2VDb21wb25lbnQgfSBmcm9tICcuL2x5LWVtcHR5LXNwYWNlL2x5LWVtcHR5LXNwYWNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpU2luZ2xlUGljdHVyZUNvbXBvbmVudCB9IGZyb20gJy4vdWktc2luZ2xlLXBpY3R1cmUvdWktc2luZ2xlLXBpY3R1cmUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWx2U2VsZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtc2VsZWN0aW9uL3Vsdi1zZWxlY3Rpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWx2VG9vbGJhckNvbXBvbmVudCB9IGZyb20gJy4vdWx2LXRvb2xiYXIvdWx2LXRvb2xiYXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWx2UGFnaW5nQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtcGFnaW5nL3Vsdi1wYWdpbmcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlHcmlkU29ydFNldHRpbmdDb21wb25lbnQgfSBmcm9tICcuL3VpLWdyaWQtc29ydC1zZXR0aW5nL3VpLWdyaWQtc29ydC1zZXR0aW5nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpR3JpZFNvcnRJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi91aS1ncmlkLXNvcnQtaXRlbS91aS1ncmlkLXNvcnQtaXRlbS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUdyaWRDb2x1bW5zQ29tcG9uZW50IH0gZnJvbSAnLi91aS1ncmlkLWNvbHVtbnMvdWktZ3JpZC1jb2x1bW5zLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hc2tDb21wb25lbnQgfSBmcm9tICcuL21hc2svbWFzay5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUluZm9CYXJQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vdWktaW5mby1iYXItcGFuZWwvdWktaW5mby1iYXItcGFuZWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlGb3JtUGFuZWxUb29sYmFyQ29tcG9uZW50IH0gZnJvbSAnLi91aS1mb3JtLXBhbmVsLXRvb2xiYXIvdWktZm9ybS1wYW5lbC10b29sYmFyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpRm9ybVBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi91aS1mb3JtLXBhbmVsL3VpLWZvcm0tcGFuZWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlTZWFyY2hDb21tYW5kSW5mb1VpQ29tcG9uZW50IH0gZnJvbSAnLi91aS1zZWFyY2gtY29tbWFuZC1pbmZvLXVpL3VpLXNlYXJjaC1jb21tYW5kLWluZm8tdWkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWx2U2V0dGluZ3NDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1zZXR0aW5ncy91bHYtc2V0dGluZ3MuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlUaW55bWNlQ29tcG9uZW50IH0gZnJvbSAnLi91aS10aW55bWNlL3VpLXRpbnltY2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3VpLWJ1dHRvbi91aS1idXR0b24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlEYXRlVGltZUNvbXBvbmVudCB9IGZyb20gJy4vdWktZGF0ZS10aW1lL3VpLWRhdGUtdGltZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGb3JtRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLWRpYWxvZy9mb3JtLWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBIZWFkZXJGYWNldEtleVZhbHVlQ29tcG9uZW50IH0gZnJvbSAnLi9oZWFkZXItZmFjZXQta2V5LXZhbHVlL2hlYWRlci1mYWNldC1rZXktdmFsdWUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSGVhZGVyRmFjZXRGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9oZWFkZXItZmFjZXQtZm9ybS9oZWFkZXItZmFjZXQtZm9ybS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBIZWFkZXJGYWNldFJhdGVDb21wb25lbnQgfSBmcm9tICcuL2hlYWRlci1mYWNldC1yYXRlL2hlYWRlci1mYWNldC1yYXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEhlYWRlckZhY2V0UHJvZ3Jlc3NDb21wb25lbnQgfSBmcm9tICcuL2hlYWRlci1mYWNldC1wcm9ncmVzcy9oZWFkZXItZmFjZXQtcHJvZ3Jlc3MuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSGVhZGVyRmFjZXRNaWNyb2NoYXJ0Q29tcG9uZW50IH0gZnJvbSAnLi9oZWFkZXItZmFjZXQtbWljcm9jaGFydC9oZWFkZXItZmFjZXQtbWljcm9jaGFydC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBIZWFkZXJGYWNldFBsYWluVGV4dENvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyLWZhY2V0LXBsYWluLXRleHQvaGVhZGVyLWZhY2V0LXBsYWluLXRleHQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlNb0luZm9TdWJGb3JtVWlDb21wb25lbnQgfSBmcm9tICcuL3VpLW1vLWluZm8tc3ViLWZvcm0tdWkvdWktbW8taW5mby1zdWItZm9ybS11aS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZXNwb25zaXZlVG9vbGJhckNvbXBvbmVudCB9IGZyb20gJy4vcmVzcG9uc2l2ZS10b29sYmFyL3Jlc3BvbnNpdmUtdG9vbGJhci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZXNwb25zaXZlVG9vbGJhclJlbmRlcmVyQ29tcG9uZW50IH0gZnJvbSAnLi9yZXNwb25zaXZlLXRvb2xiYXItcmVuZGVyZXIvcmVzcG9uc2l2ZS10b29sYmFyLXJlbmRlcmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpVGV4dEFyZWFDb21wb25lbnQgfSBmcm9tICcuL3VpLXRleHQtYXJlYS91aS10ZXh0LWFyZWEuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTGF5b3V0Q29udHJvbENvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0LWNvbnRyb2wvbGF5b3V0LWNvbnRyb2wuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTGF5b3V0V2l6YXJkQ29tcG9uZW50IH0gZnJvbSAnLi9sYXlvdXQtd2l6YXJkL2xheW91dC13aXphcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybVdpemFyZENvbXBvbmVudCB9IGZyb20gJy4vZm9ybS13aXphcmQvZm9ybS13aXphcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgV2l6YXJkTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi93aXphcmQtbGF5b3V0LmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEZvcm1EaWFsb2dMZXNzQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLWRpYWxvZy1sZXNzL2Zvcm0tZGlhbG9nLWxlc3MuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybVBhZ2VDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tcGFnZS9mb3JtLXBhZ2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmljaFRleHRTdGF0aWNDb21wb25lbnQgfSBmcm9tICcuL3JpY2gtdGV4dC1zdGF0aWMvcmljaC10ZXh0LXN0YXRpYy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaVBpY3R1cmVzSW5mb0NvbXBvbmVudCB9IGZyb20gJy4vdWktcGljdHVyZXMtaW5mby91aS1waWN0dXJlcy1pbmZvLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEx5SG9yaXpvbnRhbExheW91dENvbXBvbmVudCB9IGZyb20gJy4vbHktaG9yaXpvbnRhbC1sYXlvdXQvbHktaG9yaXpvbnRhbC1sYXlvdXQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTHlWZXJ0aWNhbExheW91dENvbXBvbmVudCB9IGZyb20gJy4vbHktdmVydGljYWwtbGF5b3V0L2x5LXZlcnRpY2FsLWxheW91dC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMeVRhYkNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vbHktdGFiLWNvbnRhaW5lci9seS10YWItY29udGFpbmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEx5VGFiUGFnZUNvbXBvbmVudCB9IGZyb20gJy4vbHktdGFiLXBhZ2UvbHktdGFiLXBhZ2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTHlMYWJlbENvbXBvbmVudCB9IGZyb20gJy4vbHktbGFiZWwvbHktbGFiZWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29sUmVuZGVyZXJEaXJlY3RpdmUgfSBmcm9tICcuL2NvbC1yZW5kZXJlci5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBVaU1vSW5mb0NvbWJvVmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi91aS1tby1pbmZvLWNvbWJvLXZpZXdlci91aS1tby1pbmZvLWNvbWJvLXZpZXdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVbE1zZ0JveEFkYXB0ZXJDb21wb25lbnQgfSBmcm9tICcuL3VsLW1zZy1ib3gtYWRhcHRlci91bC1tc2ctYm94LWFkYXB0ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUGFnZVdpdGhIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL3BhZ2Utd2l0aC1oZWFkZXIvcGFnZS13aXRoLWhlYWRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBIZWFkZXJBdmF0YXJDb21wb25lbnQgfSBmcm9tICcuL2hlYWRlci1hdmF0YXIvaGVhZGVyLWF2YXRhci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBcHBseUNvbmRpdGlvbmFsRm9ybWF0c0RpcmVjdGl2ZSB9IGZyb20gJy4vYXBwbHktY29uZGl0aW9uYWwtZm9ybW1hdGluZ3MuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgRW1wdHlQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9lbXB0eS1wYWdlL2VtcHR5LXBhZ2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlXb3JrZmxvd1BhbmVsVWlDb21wb25lbnQgfSBmcm9tICcuL3VpLXdvcmtmbG93LXBhbmVsLXVpL3VpLXdvcmtmbG93LXBhbmVsLXVpLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVsdkNvbnRleHRNZW51Q29tcG9uZW50IH0gZnJvbSAnLi91bHYtY29udGV4dC1tZW51L3Vsdi1jb250ZXh0LW1lbnUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWxMb2FkaW5nTWFza1VpQ29tcG9uZW50IH0gZnJvbSAnLi91bC1sb2FkaW5nLW1hc2stdWkvdWwtbG9hZGluZy1tYXNrLXVpLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpVGV4dEZpZWxkQXV0b0NvbXBsZXRlQ29tcG9uZW50IH0gZnJvbSAnLi91aS10ZXh0LWZpZWxkLWF1dG8tY29tcGxldGUvdWktdGV4dC1maWVsZC1hdXRvLWNvbXBsZXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENhcHRjaGFGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vY2FwdGNoYS1maWVsZC9jYXB0Y2hhLWZpZWxkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEx5U2ltcGxlTGFiZWxDb21wb25lbnQgfSBmcm9tICcuL2x5LXNpbXBsZS1sYWJlbC9seS1zaW1wbGUtbGFiZWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgR2xvYmFsU2VhcmNoUGFuZWxDb21wb25lbnQgfSBmcm9tICcuL2dsb2JhbC1zZWFyY2gtcGFuZWwvZ2xvYmFsLXNlYXJjaC1wYW5lbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBHbG9iYWxTZWFyY2hNb2R1bGVDb21wb25lbnQgfSBmcm9tICcuL2dsb2JhbC1zZWFyY2gtbW9kdWxlL2dsb2JhbC1zZWFyY2gtbW9kdWxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEdsb2JhbFNlYXJjaENvbXBvbmVudCB9IGZyb20gJy4vZ2xvYmFsLXNlYXJjaC9nbG9iYWwtc2VhcmNoLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEh5cGVybGlua0NvbXBvbmVudCB9IGZyb20gJy4vaHlwZXJsaW5rL2h5cGVybGluay5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTdGF0aWNUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi9zdGF0aWMtdGV4dC9zdGF0aWMtdGV4dC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVbFRvYXN0QWRhcHRlckNvbXBvbmVudCB9IGZyb20gJy4vdWwtdG9hc3QtYWRhcHRlci91bC10b2FzdC1hZGFwdGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1lc3NhZ2VTdHJpcENvbXBvbmVudCB9IGZyb20gJy4vbWVzc2FnZS1zdHJpcC9tZXNzYWdlLXN0cmlwLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpTGluZWFyTGlzdENvbnRhaW5lcldpdGhCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3VpLWxpbmVhci1saXN0LWNvbnRhaW5lci13aXRoLWJ1dHRvbi91aS1saW5lYXItbGlzdC1jb250YWluZXItd2l0aC1idXR0b24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgRnVuZGFtZW50YWxEeW5hbWljRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vZnVuZGFtZW50YWwtZHluYW1pYy1mb3JtL2Z1bmRhbWVudGFsLWR5bmFtaWMtZm9ybS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMYXlvdXRBY3Rpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9sYXlvdXQtYWN0aW9ucy9sYXlvdXQtYWN0aW9ucy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMeUxheW91dENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vbHktbGF5b3V0LWNvbnRhaW5lci9seS1sYXlvdXQtY29udGFpbmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpVWx2Rm9ybU11bHRpU2VsZWN0VWlDb21wb25lbnQgfSBmcm9tICcuL3VpLXVsdi1mb3JtLW11bHRpLXNlbGVjdC11aS91aS11bHYtZm9ybS1tdWx0aS1zZWxlY3QtdWkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWx2Rm9ybU11bHRpU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi91bHYtZm9ybS1tdWx0aS1zZWxlY3QvdWx2LWZvcm0tbXVsdGktc2VsZWN0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVsdkNvbHVtblNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtY29sdW1uLXNldHRpbmdzL3Vsdi1jb2x1bW4tc2V0dGluZ3MuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWx2RmlsdGVyU2V0dGluZ3NDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1maWx0ZXItc2V0dGluZ3MvdWx2LWZpbHRlci1zZXR0aW5ncy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVbHZTb3J0U2V0dGluZ3NDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1zb3J0LXNldHRpbmdzL3Vsdi1zb3J0LXNldHRpbmdzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVsdkdyb3VwYnlTZXR0aW5nc0NvbXBvbmVudCB9IGZyb20gJy4vdWx2LWdyb3VwYnktc2V0dGluZ3MvdWx2LWdyb3VwYnktc2V0dGluZ3MuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FMaXN0RmlsZUxpbmVhckNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtbGlzdC1maWxlLWxpbmVhci9iYXJzYS1saXN0LWZpbGUtbGluZWFyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpUGRmVmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi91aS1wZGYtdmlld2VyL3VpLXBkZi12aWV3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FUaW55ZW1jZUNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtdGlueWVtY2UvYmFyc2EtdGlueWVtY2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlNb25hY29FZGl0b3JDb21wb25lbnQgfSBmcm9tICcuL3VpLW1vbmFjby1lZGl0b3IvdWktbW9uYWNvLWVkaXRvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYU1vbmFjb0VkaXRvckNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtbW9uYWNvLWVkaXRvci9iYXJzYS1tb25hY28tZWRpdG9yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhRGF0ZVRpbWVQaWNrZXJDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWRhdGUtdGltZS1waWNrZXIvYmFyc2EtZGF0ZS10aW1lLXBpY2tlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYVRyZWVJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS10cmVlLWl0ZW0vYmFyc2EtdHJlZS1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVwbG9hZEZpbGVTdGF0dXNQaXBlIH0gZnJvbSAnLi91cGxvYWQtZmlsZS1zdGF0dXMucGlwZSc7XHJcbmltcG9ydCB7IFVpU3dpdGNoQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi91aS1zd2l0Y2gtYnV0dG9uL3VpLXN3aXRjaC1idXR0b24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlDb2xvclVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS1jb2xvci11aS91aS1jb2xvci11aS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMeUxpbmVDb21wb25lbnQgfSBmcm9tICcuL2x5LWxpbmUvbHktbGluZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaVVsdk1haW5VaUNvbXBvbmVudCB9IGZyb20gJy4vdWktdWx2LW1haW4tdWkvdWktdWx2LW1haW4tdWkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmVwb3J0TmF2aWdhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnQtbmF2aWdhdG9yL3JlcG9ydC1uYXZpZ2F0b3IuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWFuYWdlRmlsdGVyc1JlcG9ydENvbXBvbmVudCB9IGZyb20gJy4vbWFuYWdlLWZpbHRlcnMtcmVwb3J0L21hbmFnZS1maWx0ZXJzLXJlcG9ydC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZXBvcnRTZWFyY2hGaWVsZHNNYW5hZ2VDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydC1zZWFyY2gtZmllbGRzLW1hbmFnZS9yZXBvcnQtc2VhcmNoLWZpZWxkcy1tYW5hZ2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmVwb3J0U2VhcmNoRmllbGRzSGlkZGVuU2V0dGluZ3NDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydC1zZWFyY2gtZmllbGRzLWhpZGRlbi1zZXR0aW5ncy9yZXBvcnQtc2VhcmNoLWZpZWxkcy1oaWRkZW4tc2V0dGluZ3MuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2VhcmNoUGFuZWxDb21wb25lbnQgfSBmcm9tICcuL3NlYXJjaC1wYW5lbC9zZWFyY2gtcGFuZWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmVwb3J0U2VhcmNoUGFuZWxTYXZlQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnQtc2VhcmNoLXBhbmVsLXNhdmUvcmVwb3J0LXNlYXJjaC1wYW5lbC1zYXZlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpR3JpZEZpbHRlclNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi91aS1ncmlkLWZpbHRlci1zZXR0aW5ncy91aS1ncmlkLWZpbHRlci1zZXR0aW5ncy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUdyaWRGaWx0ZXJJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi91aS1ncmlkLWZpbHRlci1pdGVtL3VpLWdyaWQtZmlsdGVyLWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2FwRm9udFBpcGUgfSBmcm9tICcuL3NhcC1mb250LnBpcGUnO1xyXG5pbXBvcnQgeyBTYXBGb250Q2xhc3NQaXBlIH0gZnJvbSAnLi9zYXAtZm9udC1jbGFzcy5waXBlJztcclxuaW1wb3J0IHsgVWlEYXRlUmFuZ2VFeENvbXBvbmVudCB9IGZyb20gJy4vdWktZGF0ZS1yYW5nZS1leC91aS1kYXRlLXJhbmdlLWV4LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVsTm90aWZ5UG9wdXBDb21wb25lbnQgfSBmcm9tICcuL3VsLW5vdGlmeS1wb3B1cC91bC1ub3RpZnktcG9wdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlUYWJsZVZpZXdDb21wb25lbnQgfSBmcm9tICcuL3VpLXRhYmxlLXZpZXcvdWktdGFibGUtdmlldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUxpc3RWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi91aS1saXN0LXZpZXcvdWktbGlzdC12aWV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFN0cmluZ1RvQXJyYXlQaXBlLCBVaUNhcmRWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi91aS1jYXJkLXZpZXcvdWktY2FyZC12aWV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpUmVwb3J0Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi91aS1yZXBvcnQtY29udGFpbmVyL3VpLXJlcG9ydC1jb250YWluZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTm9EYXRhQ29tcG9uZW50IH0gZnJvbSAnLi9uby1kYXRhL25vLWRhdGEuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29sdW1uUmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbHVtbi1yZW5kZXJlci9jb2x1bW4tcmVuZGVyZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSW5saW5lU2F2ZUFuZENhbmNlbENvbXBvbmVudCB9IGZyb20gJy4vaW5saW5lLXNhdmUtYW5kLWNhbmNlbC9pbmxpbmUtc2F2ZS1hbmQtY2FuY2VsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpVHJlZVZpZXdDb21wb25lbnQgfSBmcm9tICcuL3VpLXRyZWUtdmlldy91aS10cmVlLXZpZXcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlUcmVlQ29tcG9uZW50IH0gZnJvbSAnLi91aS10cmVlL3VpLXRyZWUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlDYWxlbmRhckNvbXBvbmVudCB9IGZyb20gJy4vdWktY2FsZW5kYXIvdWktY2FsZW5kYXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTm9kZUhhc09uZURlcHRoTGV2ZWxQaXBlIH0gZnJvbSAnLi9iYXJzYS10cmVlLWl0ZW0vbm9kZS1oYXMtb25lLWRlcHRoLWxldmVsLnBpcGUnO1xyXG5pbXBvcnQgeyBVaUFzcFJlcG9ydFZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vdWktYXNwLXJlcG9ydC12aWV3ZXIvdWktYXNwLXJlcG9ydC12aWV3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlHcmFwaENvbXBvbmVudCB9IGZyb20gJy4vdWktZ3JhcGgvdWktZ3JhcGguY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlFeGNlcHRpb25Gb3JtQ29tcG9uZW50IH0gZnJvbSAnLi91aS1leGNlcHRpb24tZm9ybS91aS1leGNlcHRpb24tZm9ybS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUVkaXRhYmxlR3JpZENvbXBvbmVudCB9IGZyb20gJy4vdWktZWRpdGFibGUtZ3JpZC91aS1lZGl0YWJsZS1ncmlkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbHVtbk1hdHJpeFJlbmRlcmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb2x1bW4tbWF0cml4LXJlbmRlcmVyL2NvbHVtbi1tYXRyaXgtcmVuZGVyZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlNYXRyaXhWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi91aS1tYXRyaXgtdmlldy91aS1tYXRyaXgtdmlldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdXN0b21EYXRlVGltZUNvbXBvbmVudCB9IGZyb20gJy4vY3VzdG9tLWRhdGUtdGltZS9jdXN0b20tZGF0ZS10aW1lLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdHJpeFZhbHVlUGlwZSB9IGZyb20gJy4vY29sdW1uLW1hdHJpeC1yZW5kZXJlci9tYXRyaXgtdmFsdWUucGlwZSc7XHJcbmltcG9ydCB7IEJhcnNhQXNwVmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1hc3Atdmlld2VyL2JhcnNhLWFzcC12aWV3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRmlsZUluRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9maWxlLWluLWRpYWxvZy9maWxlLWluLWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEeW5hbWljUGFnZVNpemVQaXBlIH0gZnJvbSAnLi9keW5hbWljLXBhZ2Utc2l6ZS5waXBlJztcclxuaW1wb3J0IHsgUmVwb3J0Vmlld1JlbmRlcmVyRGlyZWN0aXZlIH0gZnJvbSAnLi9yZXBvcnQtdmlldy1yZW5kZXJlci5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBVaU1vSW5mb0dlbmVyYWxPYmplY3RVaUNvbXBvbmVudCB9IGZyb20gJy4vdWktbW8taW5mby1nZW5lcmFsLW9iamVjdC11aS91aS1tby1pbmZvLWdlbmVyYWwtb2JqZWN0LXVpLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpR2FudHRDaGFydENvbXBvbmVudCB9IGZyb20gJy4vdWktZ2FudHQtY2hhcnQvdWktZ2FudHQtY2hhcnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgR2FudHREaHRtbENoYXJ0Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vZ2FudHQtZGh0bWwtY2hhcnQtdmlldy9nYW50dC1kaHRtbC1jaGFydC12aWV3LmNvbXBvbmVudCc7XHJcblxyXG5pbXBvcnQgeyBGdWxsc2NyZWVuRGlhbG9nRGlyZWN0aXZlIH0gZnJvbSAnLi9mdWxsc2NyZWVuLWRpYWxvZy5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBQcm9ncmVzc0luZGljYXRvckNvbXBvbmVudCB9IGZyb20gJy4vcHJvZ3Jlc3MtaW5kaWNhdG9yL3Byb2dyZXNzLWluZGljYXRvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDYXJkVmlld0NvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL2NhcmQtdmlldy1jb250ZW50L2NhcmQtdmlldy1jb250ZW50LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENhcmRJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9jYXJkLWl0ZW0vY2FyZC1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpQ2FyZFZpZXdIb3Jpem9udGFsR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL3VpLWNhcmQtdmlldy1ob3Jpem9udGFsLWdyb3VwL3VpLWNhcmQtdmlldy1ob3Jpem9udGFsLWdyb3VwLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRpdGxlQ29tcG9uZW50IH0gZnJvbSAnLi90aXRsZS90aXRsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYVVsdk1haW5Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXVsdi1tYWluL2JhcnNhLXVsdi1tYWluLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExpc3RJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9saXN0LWl0ZW0vbGlzdC1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEh0cmVlQ3JlYXRlTmV3Q29tcG9uZW50IH0gZnJvbSAnLi9odHJlZS1jcmVhdGUtbmV3L2h0cmVlLWNyZWF0ZS1uZXcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FUYWJsZVJvd0NvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtdGFibGUtcm93L2JhcnNhLXRhYmxlLXJvdy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYVRhYmxlSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS10YWJsZS1oZWFkZXIvYmFyc2EtdGFibGUtaGVhZGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJyZWFkY3J1bWJDb21wb25lbnQgfSBmcm9tICcuL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUxhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi91aS1sYWJlbC91aS1sYWJlbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGb3JtVG9vbGJhckJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vZm9ybS10b29sYmFyLWJ1dHRvbi9mb3JtLXRvb2xiYXItYnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhU2VhcmNoRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2Etc2VhcmNoLWZvcm0vYmFyc2Etc2VhcmNoLWZvcm0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmVwb3J0TmV3VG9wRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0LW5ldy10b3AtZm9ybS9yZXBvcnQtbmV3LXRvcC1mb3JtLmNvbXBvbmVudCc7XHJcblxyXG5pbXBvcnQgeyBCYXJzYU5ldHdvcmtPZmZsaW5lQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1uZXR3b3JrLW9mZmxpbmUvYmFyc2EtbmV0d29yay1vZmZsaW5lLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJsb2JWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL2Jsb2Itdmlld2VyL2Jsb2Itdmlld2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZpbGVWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL2ZpbGUtdmlld2VyL2ZpbGUtdmlld2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZpbGVWaWV3ZXJDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi9maWxlLXZpZXdlci1jb250ZW50L2ZpbGUtdmlld2VyLWNvbnRlbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRmlsZVZpZXdlclBvcG92ZXJDb21wb25lbnQgfSBmcm9tICcuL2ZpbGUtdmlld2VyLXBvcG92ZXIvZmlsZS12aWV3ZXItcG9wb3Zlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEb3dubG9hZEZpbGVzRGlyZWN0aXZlIH0gZnJvbSAnLi9kb3dubG9hZC1maWxlcy5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBGdWxsc2NyZWVuRmlsZXNEaXJlY3RpdmUgfSBmcm9tICcuL2Z1bGxzY3JlZW4tZmlsZXMuZGlyZWN0aXZlJztcclxuXHJcbmV4cG9ydCBjb25zdCBjb21wb25lbnRzID0gW1xyXG4gICAgVWlUZXh0RmllbGRDb21wb25lbnQsXHJcbiAgICBMeUxheW91dEZpZWxkTGFiZWxDb21wb25lbnQsXHJcbiAgICBVaUNoZWNrQm94Q29tcG9uZW50LFxyXG4gICAgVWlTaW1wbGVDb21ib0NvbXBvbmVudCxcclxuICAgIFVpUmFkaW9Hcm91cENvbXBvbmVudCxcclxuICAgIFVpR3JpZENvbXBvbmVudCxcclxuICAgIEx5TGF5b3V0Q29udGFpbmVyT2ZSb290Q29tcG9uZW50LFxyXG4gICAgTHlMYXlvdXRQYW5lbENvbXBvbmVudCxcclxuICAgIFVpUmVhZE9ubHlGaWVsZENvbXBvbmVudCxcclxuICAgIFVpQ29udGFpbmVyV2l0aEJ1dHRvbkNvbXBvbmVudCxcclxuICAgIFVpUGljdHVyZUZpbGVDb21wb25lbnQsXHJcbiAgICBVaU1vSW5mb1VsdkNvbWJvQ29tcG9uZW50LFxyXG4gICAgVWlNdWx0aVNlbGVjdENvbWJvQ29tcG9uZW50LFxyXG4gICAgVWlOdW1EZWNpbWFsVWlDb21wb25lbnQsXHJcbiAgICBVaU51bUludFVpQ29tcG9uZW50LFxyXG4gICAgVWlUaW1lU3BhbkNvbXBvbmVudCxcclxuICAgIFVpRmlsZUxpbmVhckxpc3RCb3hDb21wb25lbnQsXHJcbiAgICBMeUVtcHR5U3BhY2VDb21wb25lbnQsXHJcbiAgICBVaVNpbmdsZVBpY3R1cmVDb21wb25lbnQsXHJcbiAgICBVbHZTZWxlY3Rpb25Db21wb25lbnQsXHJcbiAgICBVbHZUb29sYmFyQ29tcG9uZW50LFxyXG4gICAgVWx2UGFnaW5nQ29tcG9uZW50LFxyXG4gICAgVWlHcmlkU29ydFNldHRpbmdDb21wb25lbnQsXHJcbiAgICBVaUdyaWRTb3J0SXRlbUNvbXBvbmVudCxcclxuICAgIFVpR3JpZENvbHVtbnNDb21wb25lbnQsXHJcbiAgICBNYXNrQ29tcG9uZW50LFxyXG4gICAgVWlJbmZvQmFyUGFuZWxDb21wb25lbnQsXHJcbiAgICBVaUZvcm1QYW5lbFRvb2xiYXJDb21wb25lbnQsXHJcbiAgICBVaUZvcm1QYW5lbENvbXBvbmVudCxcclxuICAgIFVpU2VhcmNoQ29tbWFuZEluZm9VaUNvbXBvbmVudCxcclxuICAgIFVsdlNldHRpbmdzQ29tcG9uZW50LFxyXG4gICAgVWlUaW55bWNlQ29tcG9uZW50LFxyXG4gICAgVWlCdXR0b25Db21wb25lbnQsXHJcbiAgICBVaURhdGVUaW1lQ29tcG9uZW50LFxyXG4gICAgRm9ybURpYWxvZ0NvbXBvbmVudCxcclxuICAgIEhlYWRlckZhY2V0S2V5VmFsdWVDb21wb25lbnQsXHJcbiAgICBIZWFkZXJGYWNldEZvcm1Db21wb25lbnQsXHJcbiAgICBIZWFkZXJGYWNldFJhdGVDb21wb25lbnQsXHJcbiAgICBIZWFkZXJGYWNldFByb2dyZXNzQ29tcG9uZW50LFxyXG4gICAgSGVhZGVyRmFjZXRNaWNyb2NoYXJ0Q29tcG9uZW50LFxyXG4gICAgSGVhZGVyRmFjZXRQbGFpblRleHRDb21wb25lbnQsXHJcbiAgICBVaU1vSW5mb1N1YkZvcm1VaUNvbXBvbmVudCxcclxuICAgIFJlc3BvbnNpdmVUb29sYmFyQ29tcG9uZW50LFxyXG4gICAgUmVzcG9uc2l2ZVRvb2xiYXJSZW5kZXJlckNvbXBvbmVudCxcclxuICAgIFVpVGV4dEFyZWFDb21wb25lbnQsXHJcbiAgICBMYXlvdXRDb250cm9sQ29tcG9uZW50LFxyXG4gICAgTGF5b3V0V2l6YXJkQ29tcG9uZW50LFxyXG4gICAgRm9ybVdpemFyZENvbXBvbmVudCxcclxuICAgIEZvcm1EaWFsb2dMZXNzQ29tcG9uZW50LFxyXG4gICAgRm9ybVBhZ2VDb21wb25lbnQsXHJcbiAgICBSaWNoVGV4dFN0YXRpY0NvbXBvbmVudCxcclxuICAgIFVpUGljdHVyZXNJbmZvQ29tcG9uZW50LFxyXG4gICAgTHlIb3Jpem9udGFsTGF5b3V0Q29tcG9uZW50LFxyXG4gICAgTHlWZXJ0aWNhbExheW91dENvbXBvbmVudCxcclxuICAgIEx5VGFiQ29udGFpbmVyQ29tcG9uZW50LFxyXG4gICAgTHlUYWJQYWdlQ29tcG9uZW50LFxyXG4gICAgTHlMYWJlbENvbXBvbmVudCxcclxuICAgIFVpTW9JbmZvQ29tYm9WaWV3ZXJDb21wb25lbnQsXHJcbiAgICBVbE1zZ0JveEFkYXB0ZXJDb21wb25lbnQsXHJcbiAgICBVaVRyZWVDb21wb25lbnQsXHJcbiAgICBQYWdlV2l0aEhlYWRlckNvbXBvbmVudCxcclxuICAgIEhlYWRlckF2YXRhckNvbXBvbmVudCxcclxuICAgIEVtcHR5UGFnZUNvbXBvbmVudCxcclxuICAgIFVpV29ya2Zsb3dQYW5lbFVpQ29tcG9uZW50LFxyXG4gICAgVWx2Q29udGV4dE1lbnVDb21wb25lbnQsXHJcbiAgICBVbExvYWRpbmdNYXNrVWlDb21wb25lbnQsXHJcbiAgICBVaVRleHRGaWVsZEF1dG9Db21wbGV0ZUNvbXBvbmVudCxcclxuICAgIENhcHRjaGFGaWVsZENvbXBvbmVudCxcclxuICAgIEx5U2ltcGxlTGFiZWxDb21wb25lbnQsXHJcbiAgICBHbG9iYWxTZWFyY2hQYW5lbENvbXBvbmVudCxcclxuICAgIEdsb2JhbFNlYXJjaE1vZHVsZUNvbXBvbmVudCxcclxuICAgIEdsb2JhbFNlYXJjaENvbXBvbmVudCxcclxuICAgIEh5cGVybGlua0NvbXBvbmVudCxcclxuICAgIFN0YXRpY1RleHRDb21wb25lbnQsXHJcbiAgICBVbFRvYXN0QWRhcHRlckNvbXBvbmVudCxcclxuICAgIE1lc3NhZ2VTdHJpcENvbXBvbmVudCxcclxuICAgIFVpTGluZWFyTGlzdENvbnRhaW5lcldpdGhCdXR0b25Db21wb25lbnQsXHJcbiAgICBGdW5kYW1lbnRhbER5bmFtaWNGb3JtQ29tcG9uZW50LFxyXG4gICAgTGF5b3V0QWN0aW9uc0NvbXBvbmVudCxcclxuICAgIEx5TGF5b3V0Q29udGFpbmVyQ29tcG9uZW50LFxyXG4gICAgVWlVbHZGb3JtTXVsdGlTZWxlY3RVaUNvbXBvbmVudCxcclxuICAgIFVsdkZvcm1NdWx0aVNlbGVjdENvbXBvbmVudCxcclxuICAgIFVsdkNvbHVtblNldHRpbmdzQ29tcG9uZW50LFxyXG4gICAgVWx2RmlsdGVyU2V0dGluZ3NDb21wb25lbnQsXHJcbiAgICBVbHZTb3J0U2V0dGluZ3NDb21wb25lbnQsXHJcbiAgICBVbHZHcm91cGJ5U2V0dGluZ3NDb21wb25lbnQsXHJcbiAgICBCYXJzYUxpc3RGaWxlTGluZWFyQ29tcG9uZW50LFxyXG4gICAgVWlQZGZWaWV3ZXJDb21wb25lbnQsXHJcbiAgICBCYXJzYVRpbnllbWNlQ29tcG9uZW50LFxyXG4gICAgVWlNb25hY29FZGl0b3JDb21wb25lbnQsXHJcbiAgICBCYXJzYU1vbmFjb0VkaXRvckNvbXBvbmVudCxcclxuICAgIEJhcnNhRGF0ZVRpbWVQaWNrZXJDb21wb25lbnQsXHJcbiAgICBCYXJzYVRyZWVJdGVtQ29tcG9uZW50LFxyXG4gICAgVWlTd2l0Y2hCdXR0b25Db21wb25lbnQsXHJcbiAgICBVaUNvbG9yVWlDb21wb25lbnQsXHJcbiAgICBMeUxpbmVDb21wb25lbnQsXHJcbiAgICBVaVVsdk1haW5VaUNvbXBvbmVudCxcclxuICAgIFJlcG9ydE5hdmlnYXRvckNvbXBvbmVudCxcclxuICAgIE1hbmFnZUZpbHRlcnNSZXBvcnRDb21wb25lbnQsXHJcbiAgICBSZXBvcnRTZWFyY2hGaWVsZHNNYW5hZ2VDb21wb25lbnQsXHJcbiAgICBSZXBvcnRTZWFyY2hGaWVsZHNIaWRkZW5TZXR0aW5nc0NvbXBvbmVudCxcclxuICAgIFNlYXJjaFBhbmVsQ29tcG9uZW50LFxyXG4gICAgUmVwb3J0U2VhcmNoUGFuZWxTYXZlQ29tcG9uZW50LFxyXG4gICAgVWlHcmlkRmlsdGVyU2V0dGluZ3NDb21wb25lbnQsXHJcbiAgICBVaUdyaWRGaWx0ZXJJdGVtQ29tcG9uZW50LFxyXG4gICAgVWlEYXRlUmFuZ2VFeENvbXBvbmVudCxcclxuICAgIFVsTm90aWZ5UG9wdXBDb21wb25lbnQsXHJcbiAgICBVaVRhYmxlVmlld0NvbXBvbmVudCxcclxuICAgIFVpTGlzdFZpZXdDb21wb25lbnQsXHJcbiAgICBVaUNhcmRWaWV3Q29tcG9uZW50LFxyXG4gICAgVWlSZXBvcnRDb250YWluZXJDb21wb25lbnQsXHJcbiAgICBOb0RhdGFDb21wb25lbnQsXHJcbiAgICBDb2x1bW5SZW5kZXJlckNvbXBvbmVudCxcclxuICAgIElubGluZVNhdmVBbmRDYW5jZWxDb21wb25lbnQsXHJcbiAgICBVaVRyZWVWaWV3Q29tcG9uZW50LFxyXG4gICAgSW5saW5lU2F2ZUFuZENhbmNlbENvbXBvbmVudCxcclxuICAgIFVpQ2FsZW5kYXJDb21wb25lbnQsXHJcbiAgICBVaUFzcFJlcG9ydFZpZXdlckNvbXBvbmVudCxcclxuICAgIFVpR3JhcGhDb21wb25lbnQsXHJcbiAgICBVaUV4Y2VwdGlvbkZvcm1Db21wb25lbnQsXHJcbiAgICBVaUVkaXRhYmxlR3JpZENvbXBvbmVudCxcclxuICAgIENvbHVtbk1hdHJpeFJlbmRlcmVyQ29tcG9uZW50LFxyXG4gICAgVWlNYXRyaXhWaWV3Q29tcG9uZW50LFxyXG4gICAgQ3VzdG9tRGF0ZVRpbWVDb21wb25lbnQsXHJcbiAgICBCYXJzYUFzcFZpZXdlckNvbXBvbmVudCxcclxuICAgIEZpbGVJbkRpYWxvZ0NvbXBvbmVudCxcclxuICAgIFVpTW9JbmZvR2VuZXJhbE9iamVjdFVpQ29tcG9uZW50LFxyXG4gICAgVWlHYW50dENoYXJ0Q29tcG9uZW50LFxyXG4gICAgR2FudHREaHRtbENoYXJ0Vmlld0NvbXBvbmVudCxcclxuICAgIFByb2dyZXNzSW5kaWNhdG9yQ29tcG9uZW50LFxyXG4gICAgQ2FyZFZpZXdDb250ZW50Q29tcG9uZW50LFxyXG4gICAgQ2FyZEl0ZW1Db21wb25lbnQsXHJcbiAgICBVaUNhcmRWaWV3SG9yaXpvbnRhbEdyb3VwQ29tcG9uZW50LFxyXG4gICAgVGl0bGVDb21wb25lbnQsXHJcbiAgICBCYXJzYVVsdk1haW5Db21wb25lbnQsXHJcbiAgICBMaXN0SXRlbUNvbXBvbmVudCxcclxuICAgIEh0cmVlQ3JlYXRlTmV3Q29tcG9uZW50LFxyXG4gICAgQmFyc2FUYWJsZUhlYWRlckNvbXBvbmVudCxcclxuICAgIEJhcnNhVGFibGVSb3dDb21wb25lbnQsXHJcbiAgICBCcmVhZGNydW1iQ29tcG9uZW50LFxyXG4gICAgVWlMYWJlbENvbXBvbmVudCxcclxuICAgIEZvcm1Ub29sYmFyQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgQmFyc2FTZWFyY2hGb3JtQ29tcG9uZW50LFxyXG4gICAgUmVwb3J0TmV3VG9wRm9ybUNvbXBvbmVudCxcclxuICAgIEJhcnNhTmV0d29ya09mZmxpbmVDb21wb25lbnQsXHJcbiAgICBGaWxlVmlld2VyQ29udGVudENvbXBvbmVudCxcclxuICAgIEZpbGVWaWV3ZXJQb3BvdmVyQ29tcG9uZW50LFxyXG4gICAgRmlsZVZpZXdlckNvbXBvbmVudCxcclxuICAgIEJsb2JWaWV3ZXJDb21wb25lbnRcclxuXTtcclxuZXhwb3J0IGNvbnN0IHBpcGVzID0gW1xyXG4gICAgVXBsb2FkRmlsZVN0YXR1c1BpcGUsXHJcbiAgICBTYXBGb250UGlwZSxcclxuICAgIFNhcEZvbnRDbGFzc1BpcGUsXHJcbiAgICBTdHJpbmdUb0FycmF5UGlwZSxcclxuICAgIE5vZGVIYXNPbmVEZXB0aExldmVsUGlwZSxcclxuICAgIE1hdHJpeFZhbHVlUGlwZSxcclxuICAgIER5bmFtaWNQYWdlU2l6ZVBpcGVcclxuXTtcclxuZXhwb3J0IGNvbnN0IGRpcmVjdGl2ZXMgPSBbXHJcbiAgICBXaXphcmRMYXlvdXREaXJlY3RpdmUsXHJcbiAgICBDb2xSZW5kZXJlckRpcmVjdGl2ZSxcclxuICAgIEFwcGx5Q29uZGl0aW9uYWxGb3JtYXRzRGlyZWN0aXZlLFxyXG4gICAgUmVwb3J0Vmlld1JlbmRlcmVyRGlyZWN0aXZlLFxyXG4gICAgRnVsbHNjcmVlbkRpYWxvZ0RpcmVjdGl2ZSxcclxuICAgIEZ1bGxzY3JlZW5GaWxlc0RpcmVjdGl2ZSxcclxuICAgIERvd25sb2FkRmlsZXNEaXJlY3RpdmVcclxuXTtcclxuXHJcbmV4cG9ydCBjb25zdCBJTklUX1NBUEZJT1JJID1cclxuICAgIChcclxuICAgICAgICBydGxTZXJ2aWNlOiBSdGxTZXJ2aWNlLFxyXG4gICAgICAgIGNvbnRlbnREZW5zaXR5U2VydmljZTogR2xvYmFsQ29udGVudERlbnNpdHlTZXJ2aWNlLFxyXG4gICAgICAgIHRoZW1lU2VydmljZTogVGhlbWVzU2VydmljZSxcclxuICAgICAgICBwb3J0YWxTZXJ2aWNlOiBQb3J0YWxTZXJ2aWNlXHJcbiAgICApID0+XHJcbiAgICAoKSA9PiB7XHJcbiAgICAgICAgcnRsU2VydmljZS5ydGwubmV4dChCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLklzUnRsKTtcclxuICAgICAgICBsZXQgZm9udEZhbWlseSA9ICdJUkFOWWVrYW5EaWdpdHMnO1xyXG4gICAgICAgIGlmIChCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLkN1bHR1cmUgPT09ICdlbi1VUycpIHtcclxuICAgICAgICAgICAgZm9udEZhbWlseSA9ICdJUkFOU2Fuc1dlYic7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBjc3MgPSBgKiB7XHJcbiAgICAtLWZkRHluYW1pY1BhZ2VfVGl0bGVfRm9udF9GYW1pbHk6ICcke2ZvbnRGYW1pbHl9JztcclxuICAgIC0tc2FwRm9udEZhbWlseTogJyR7Zm9udEZhbWlseX0nO1xyXG4gICAgLS1mZFdpemFyZF9MYWJlbF9Gb250X0ZhbWlseTogJyR7Zm9udEZhbWlseX0nO1xyXG4gICAgLS1zYXBGb250TGlnaHRGYW1pbHk6ICcke2ZvbnRGYW1pbHl9JztcclxuICAgIC0tc2FwRm9udEhlYWRlckZhbWlseTogJyR7Zm9udEZhbWlseX0nO1xyXG4gICAgLS1fdWk1X2lucHV0X2NvbXBhY3RfaGVpZ2h0OiAxLjYyNXJlbTtcclxuICAgIC0tc2FwRm9udFNpemU6IDAuODg1cmVtO1xyXG4gICAgLyogLS1zYXBDb250ZW50X0hlYWRlclNoYWRvdzogbm9uZTsgKi9cclxufWAsXHJcbiAgICAgICAgICAgIGhlYWQgPSBkb2N1bWVudC5oZWFkIHx8IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdoZWFkJylbMF0sXHJcbiAgICAgICAgICAgIHN0eWxlOiBhbnkgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzdHlsZScpO1xyXG5cclxuICAgICAgICBoZWFkLmFwcGVuZENoaWxkKHN0eWxlKTtcclxuXHJcbiAgICAgICAgc3R5bGUudHlwZSA9ICd0ZXh0L2Nzcyc7XHJcbiAgICAgICAgaWYgKHN0eWxlLnN0eWxlU2hlZXQpIHtcclxuICAgICAgICAgICAgLy8gVGhpcyBpcyByZXF1aXJlZCBmb3IgSUU4IGFuZCBiZWxvdy5cclxuICAgICAgICAgICAgc3R5bGUuc3R5bGVTaGVldC5jc3NUZXh0ID0gY3NzO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHN0eWxlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGNzcykpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcG9ydGFsU2VydmljZS51c2VyUG9ydGFsU2V0dGluZ3MkLnBpcGUoZmlsdGVyKChjKSA9PiBjICE9IG51bGwpKS5zdWJzY3JpYmUoKHVzZXJTZXR0aW5ncykgPT4ge1xyXG4gICAgICAgICAgICBsZXQgY29udGVudERlbnNpdHk6IGFueTtcclxuICAgICAgICAgICAgbGV0IHRoZW1lOiBhbnk7XHJcbiAgICAgICAgICAgIGlmICghdXNlclNldHRpbmdzKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAoZ2V0RGV2aWNlSXNNb2JpbGUoKSB8fCBnZXREZXZpY2VJc1Bob25lKCkgfHwgZ2V0RGV2aWNlSXNUYWJsZXQoKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnREZW5zaXR5ID0gQ29udGVudERlbnNpdHlNb2RlLkNPWlk7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnREZW5zaXR5ID0gQ29udGVudERlbnNpdHlNb2RlLkNPTVBBQ1Q7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCB7IENvbnRlbnREZW5zaXR5JENhcHRpb24sIFRoZW1lJENhcHRpb24gfSA9IHVzZXJTZXR0aW5ncztcclxuICAgICAgICAgICAgICAgIGNvbnRlbnREZW5zaXR5ID0gQ29udGVudERlbnNpdHkkQ2FwdGlvbjtcclxuICAgICAgICAgICAgICAgIHRoZW1lID0gVGhlbWUkQ2FwdGlvbjtcclxuICAgICAgICAgICAgICAgIGlmICghY29udGVudERlbnNpdHkpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50RGVuc2l0eSA9IENvbnRlbnREZW5zaXR5TW9kZS5DT01QQUNUO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmIChnZXREZXZpY2VJc01vYmlsZSgpIHx8IGdldERldmljZUlzUGhvbmUoKSkge1xyXG4gICAgICAgICAgICAgICAgY29udGVudERlbnNpdHkgPSBDb250ZW50RGVuc2l0eU1vZGUuQ09aWTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAoY29udGVudERlbnNpdHkpIHtcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50RGVuc2l0eVNlcnZpY2UudXBkYXRlQ29udGVudERlbnNpdHkoY29udGVudERlbnNpdHkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgY29uc3QgYm9keUNsYXNzQ29tcGFjdCA9ICd1aTUtY29udGVudC1kZW5zaXR5LWNvbXBhY3QnO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgYm9keUNsYXNzQ29uZGVuc2VkID0gJ3VpNS1jb250ZW50LWRlbnNpdHktY29uZGVuc2VkJztcclxuICAgICAgICAgICAgICAgIGNvbnN0IGJvZHlDbGFzc0NvenkgPSAndWk1LWNvbnRlbnQtZGVuc2l0eS1jb3p5JztcclxuICAgICAgICAgICAgICAgIGNvbnN0IGJvZHkgPSBkb2N1bWVudD8uYm9keTtcclxuICAgICAgICAgICAgICAgIHN3aXRjaCAoY29udGVudERlbnNpdHkpIHtcclxuICAgICAgICAgICAgICAgICAgICBjYXNlICdjb25kZW5zZWQnOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWJvZHkuY2xhc3NMaXN0LmNvbnRhaW5zKGJvZHlDbGFzc0NvbmRlbnNlZCkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5hZGQoYm9keUNsYXNzQ29uZGVuc2VkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LnJlbW92ZShib2R5Q2xhc3NDb21wYWN0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LnJlbW92ZShib2R5Q2xhc3NDb3p5KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnY296eSc6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghYm9keS5jbGFzc0xpc3QuY29udGFpbnMoYm9keUNsYXNzQ296eSkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5hZGQoYm9keUNsYXNzQ296eSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5yZW1vdmUoYm9keUNsYXNzQ29tcGFjdCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5yZW1vdmUoYm9keUNsYXNzQ29uZGVuc2VkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgICBjYXNlICdjb21wYWN0JzpcclxuICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFib2R5LmNsYXNzTGlzdC5jb250YWlucyhib2R5Q2xhc3NDb21wYWN0KSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LmFkZChib2R5Q2xhc3NDb21wYWN0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LnJlbW92ZShib2R5Q2xhc3NDb3p5KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LnJlbW92ZShib2R5Q2xhc3NDb25kZW5zZWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmICh0aGVtZSkge1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoZW1lLmluZGV4T2YoJ2RhcmsnKSA+IC0xKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdjb2xvci1zY2hlbWUnLCAnZGFyaycpO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2NvbG9yLXNjaGVtZScsICdsaWdodCcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgcG9ydGFsU2VydmljZS5zZXRUaGVtZSh0aGVtZVNlcnZpY2Uuc2V0VGhlbWUodGhlbWUpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfTtcclxuIl19
@@ -29,4 +29,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
29
29
  }], cancel: [{
30
30
  type: Output
31
31
  }] } });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLXNhdmUtYW5kLWNhbmNlbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi9pbmxpbmUtc2F2ZS1hbmQtY2FuY2VsL2lubGluZS1zYXZlLWFuZC1jYW5jZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvaW5saW5lLXNhdmUtYW5kLWNhbmNlbC9pbmxpbmUtc2F2ZS1hbmQtY2FuY2VsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQU9yRCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsYUFBYTtJQU4vRDs7UUFPYyxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMxQixXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztLQVl6QztJQVZHLE1BQU0sQ0FBQyxDQUFDO1FBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNqQixDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDcEIsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFDRCxRQUFRLENBQUMsQ0FBQztRQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbkIsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3BCLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN2QixDQUFDOzt5SEFiUSw0QkFBNEI7NkdBQTVCLDRCQUE0Qiw0SkNUekMsa05BRUE7MkZET2EsNEJBQTRCO2tCQU54QyxTQUFTOytCQUNJLGtEQUFrRCxtQkFHM0MsdUJBQXVCLENBQUMsTUFBTTs4QkFHckMsSUFBSTtzQkFBYixNQUFNO2dCQUNHLE1BQU07c0JBQWYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JzdS1pbmxpbmUtc2F2ZS1hbmQtY2FuY2VsLFtpbmxpbmVTYXZlQW5kQ2FuY2VsXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2lubGluZS1zYXZlLWFuZC1jYW5jZWwuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2lubGluZS1zYXZlLWFuZC1jYW5jZWwuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBJbmxpbmVTYXZlQW5kQ2FuY2VsQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gICAgQE91dHB1dCgpIHNhdmUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgQE91dHB1dCgpIGNhbmNlbCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIG9uU2F2ZShlKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2F2ZS5lbWl0KCk7XG4gICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG4gICAgb25DYW5jZWwoZSk6IHZvaWQge1xuICAgICAgICB0aGlzLmNhbmNlbC5lbWl0KCk7XG4gICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG59XG4iLCI8ZmRwLWJ1dHRvbiBnbHlwaD1cImFjY2VwdFwiIHJvbGU9XCJzYXZlXCIgKGNsaWNrKT1cIm9uU2F2ZSgkZXZlbnQpXCI+PC9mZHAtYnV0dG9uPlxyXG48ZmRwLWJ1dHRvbiBidXR0b25UeXBlPVwibmVnYXRpdmVcIiBnbHlwaD1cImRlY2xpbmVcIiByb2xlPVwiY2FuZWNsIGZvcm1cIiAoY2xpY2spPVwib25DYW5jZWwoJGV2ZW50KVwiPjwvZmRwLWJ1dHRvbj5cclxuIl19
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLXNhdmUtYW5kLWNhbmNlbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi9pbmxpbmUtc2F2ZS1hbmQtY2FuY2VsL2lubGluZS1zYXZlLWFuZC1jYW5jZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvaW5saW5lLXNhdmUtYW5kLWNhbmNlbC9pbmxpbmUtc2F2ZS1hbmQtY2FuY2VsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQU9yRCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsYUFBYTtJQU4vRDs7UUFPYyxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMxQixXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztLQVl6QztJQVZHLE1BQU0sQ0FBQyxDQUFDO1FBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNqQixDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDcEIsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFDRCxRQUFRLENBQUMsQ0FBQztRQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbkIsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3BCLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN2QixDQUFDOzt5SEFiUSw0QkFBNEI7NkdBQTVCLDRCQUE0Qiw0SkNUekMsa05BRUE7MkZET2EsNEJBQTRCO2tCQU54QyxTQUFTOytCQUNJLGtEQUFrRCxtQkFHM0MsdUJBQXVCLENBQUMsTUFBTTs4QkFHckMsSUFBSTtzQkFBYixNQUFNO2dCQUNHLE1BQU07c0JBQWYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYnN1LWlubGluZS1zYXZlLWFuZC1jYW5jZWwsW2lubGluZVNhdmVBbmRDYW5jZWxdJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9pbmxpbmUtc2F2ZS1hbmQtY2FuY2VsLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2lubGluZS1zYXZlLWFuZC1jYW5jZWwuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbmxpbmVTYXZlQW5kQ2FuY2VsQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XHJcbiAgICBAT3V0cHV0KCkgc2F2ZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICAgIEBPdXRwdXQoKSBjYW5jZWwgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgb25TYXZlKGUpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnNhdmUuZW1pdCgpO1xyXG4gICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgfVxyXG4gICAgb25DYW5jZWwoZSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuY2FuY2VsLmVtaXQoKTtcclxuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxufVxyXG4iLCI8ZmRwLWJ1dHRvbiBnbHlwaD1cImFjY2VwdFwiIHJvbGU9XCJzYXZlXCIgKGNsaWNrKT1cIm9uU2F2ZSgkZXZlbnQpXCI+PC9mZHAtYnV0dG9uPlxyXG48ZmRwLWJ1dHRvbiBidXR0b25UeXBlPVwibmVnYXRpdmVcIiBnbHlwaD1cImRlY2xpbmVcIiByb2xlPVwiY2FuZWNsIGZvcm1cIiAoY2xpY2spPVwib25DYW5jZWwoJGV2ZW50KVwiPjwvZmRwLWJ1dHRvbj5cclxuIl19
@@ -62,4 +62,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
62
62
  }], workflowChoiceSelect: [{
63
63
  type: Output
64
64
  }] } });
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWFjdGlvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvbGF5b3V0LWFjdGlvbnMvbGF5b3V0LWFjdGlvbnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvbGF5b3V0LWFjdGlvbnMvbGF5b3V0LWFjdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4RyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7OztBQU9uRixNQUFNLE9BQU8sc0JBQXVCLFNBQVEsd0JBQXdCO0lBWWhFLFlBQXNCLFFBQWlCO1FBQ25DLEtBQUssRUFBRSxDQUFDO1FBRFUsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQVA3Qix5QkFBb0IsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBSXpELGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFbEIsbUJBQWMsR0FBRyxDQUFDLENBQUM7SUFHbkIsQ0FBQztJQUNELFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDO1lBQ3RFLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWM7U0FDdEMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFFBQVEsR0FBRyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3BDLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7UUFDN0Msd0NBQXdDO1FBQ3hDLElBQUksZUFBZSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDNUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDdkIsSUFBSSxPQUFPLENBQUMsS0FBSyxRQUFRLEVBQUU7b0JBQ3ZCLENBQUMsQ0FBQyxNQUFNLEdBQUcsVUFBVSxDQUFDO2lCQUN6QjtZQUNMLENBQUMsQ0FBQyxDQUFDO1lBQ0gsTUFBTSxVQUFVLEdBQUcsZUFBZSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDL0QsSUFBSSxVQUFVLENBQUMsTUFBTSxFQUFFO2dCQUNuQixVQUFVLENBQUMsTUFBTSxHQUFHLFlBQVksQ0FBQzthQUNwQztTQUNKO0lBQ0wsQ0FBQztJQUNELGdCQUFnQjtRQUNaLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUNELHdCQUF3QixDQUFDLGNBQWM7UUFDbkMsSUFBSSxDQUFDLHNCQUFzQixHQUFHLGNBQWMsQ0FBQztRQUM3QyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxRCxDQUFDOzttSEExQ1Esc0JBQXNCO3VHQUF0QixzQkFBc0Isd1JDVm5DLHN6TUFtSEE7MkZEekdhLHNCQUFzQjtrQkFObEMsU0FBUzsrQkFDSSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTTs4RkFHdEMsZUFBZTtzQkFBdkIsS0FBSztnQkFDRyx3QkFBd0I7c0JBQWhDLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDSSxvQkFBb0I7c0JBQTdCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPdmVybGF5LCBTY3JvbGxTdHJhdGVneSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEZvcm1Ub29sYmFyQmFzZUNvbXBvbmVudCwgZ2V0RGV2aWNlSXNNb2JpbGUgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JzdS1sYXlvdXQtYWN0aW9ucycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2xheW91dC1hY3Rpb25zLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9sYXlvdXQtYWN0aW9ucy5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIExheW91dEFjdGlvbnNDb21wb25lbnQgZXh0ZW5kcyBGb3JtVG9vbGJhckJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBJbnB1dCgpIHdvcmtmbG93QnV0dG9uczogYW55W107XG4gICAgQElucHV0KCkgd29ya2Zsb3dCdXR0b25zQ29tYm9Nb2RlOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGNhblNlbmQ6IGJvb2xlYW47XG4gICAgQElucHV0KCkgc2ltcGxlOiBib29sZWFuO1xuICAgIEBPdXRwdXQoKSB3b3JrZmxvd0Nob2ljZVNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICAgIHNlbGVjdGVkV29ya2Zsb3dCdXR0b246IGFueTtcbiAgICBpc01vYmlsZTogYm9vbGVhbjtcbiAgICByZXBvc2l0aW9uU2Nyb2xsU3RyYXRlZ3k6IFNjcm9sbFN0cmF0ZWd5O1xuICAgIGF1dG9DbG9zZSA9IGZhbHNlO1xuXG4gICAgc2Nyb2xsVGhyb3R0bGUgPSAwO1xuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfb3ZlcmxheTogT3ZlcmxheSkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5yZXBvc2l0aW9uU2Nyb2xsU3RyYXRlZ3kgPSB0aGlzLl9vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMucmVwb3NpdGlvbih7XG4gICAgICAgICAgICBhdXRvQ2xvc2U6IHRoaXMuYXV0b0Nsb3NlLFxuICAgICAgICAgICAgc2Nyb2xsVGhyb3R0bGU6IHRoaXMuc2Nyb2xsVGhyb3R0bGVcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuaXNNb2JpbGUgPSBnZXREZXZpY2VJc01vYmlsZSgpO1xuICAgICAgICBjb25zdCB3b3JrZmxvd0J1dHRvbnMgPSB0aGlzLndvcmtmbG93QnV0dG9ucztcbiAgICAgICAgLy8gdGhpcy53b3JrZmxvd0J1dHRvbnNDb21ib01vZGUgPSB0cnVlO1xuICAgICAgICBpZiAod29ya2Zsb3dCdXR0b25zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMuYnV0dG9ucy5mb3JFYWNoKChjKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBjID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgICAgICAgICBjLmRlc2lnbiA9ICdzdGFuZGFyZCc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdCBsYXN0QnV0dG9uID0gd29ya2Zsb3dCdXR0b25zW3dvcmtmbG93QnV0dG9ucy5sZW5ndGggLSAxXTtcbiAgICAgICAgICAgIGlmIChsYXN0QnV0dG9uLkNob2ljZSkge1xuICAgICAgICAgICAgICAgIGxhc3RCdXR0b24uZGVzaWduID0gJ2VtcGhhc2l6ZWQnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIG9uQWNjZXB0V29ya2Zsb3coKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Ub29sQ2xpY2sodGhpcy5zZWxlY3RlZFdvcmtmbG93QnV0dG9uKTtcbiAgICB9XG4gICAgb25Xb3JrZmxvd0J1dHRvblNlbGVjdGVkKHdvcmtmbG93QnV0dG9uKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRXb3JrZmxvd0J1dHRvbiA9IHdvcmtmbG93QnV0dG9uO1xuICAgICAgICB0aGlzLndvcmtmbG93Q2hvaWNlU2VsZWN0LmVtaXQod29ya2Zsb3dCdXR0b24uQ2hvaWNlKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic2ltcGxlID8gYnV0dG9uc01vZGUgOiBkZWZhdWx0VGVtcGxhdGVcIj4gPC9uZy1jb250YWluZXI+XHJcbjxuZy10ZW1wbGF0ZSAjZGVmYXVsdFRlbXBsYXRlPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInZpc2libGVcIj5cclxuICAgICAgICA8ZGl2IGZkLWJhciBiYXJEZXNpZ249XCJmb290ZXJcIiBbaW5QYWdlXT1cInRydWVcIiAqbmdJZj1cImJ1dHRvbnMubGVuZ3RoIHx8IHdvcmtmbG93QnV0dG9ucz8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgIDxkaXYgZmQtYmFyLWxlZnQgKm5nSWY9XCJjYW5TZW5kICYmIGZhbHNlXCI+XHJcbiAgICAgICAgICAgICAgICA8ZmQtYmFyLWVsZW1lbnQgY2xhc3M9XCJmb3J3YXJkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZkLXBvcG92ZXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2ZvY3VzVHJhcHBlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2ZvY3VzQXV0b0NhcHR1cmVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbG9zZU9uT3V0c2lkZUNsaWNrXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3Njcm9sbFN0cmF0ZWd5XT1cInJlcG9zaXRpb25TY3JvbGxTdHJhdGVneVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICNmb3J3YXJkUG9wb3ZlclxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGZkLXBvcG92ZXItY29udHJvbCBjbGFzcz1cImZvcndhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gZmQtYnV0dG9uIFtmZFR5cGVdPVwiJ3N0YW5kYXJkJ1wiIFtsYWJlbF09XCInRm9yd2FyZCcgfCBiYmJUcmFuc2xhdGVcIj48L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9mZC1wb3BvdmVyLWNvbnRyb2w+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1wb3BvdmVyLWJvZHkgc3R5bGU9XCJtaW4td2lkdGg6IDMwdnc7IG1heC13aWR0aDogMzB2dzsgbWluLWhlaWdodDogMzB2aFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBmZC1wb3BvdmVyLWJvZHktaGVhZGVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZmQtYmFyIGJhckRlc2lnbj1cImhlYWRlclwiIFtjb3p5XT1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBmZC1iYXItcmlnaHQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmQtYmFyLWVsZW1lbnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZC1idXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImZvcndhcmRQb3BvdmVyLmNsb3NlKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZmRUeXBlXT1cIid0cmFuc3BhcmVudCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZ2x5cGhdPVwiJ2RlY2xpbmUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZkLWJhci1lbGVtZW50PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBmZC1iYXItbGVmdD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmQtYmFyLWVsZW1lbnQ+2KfYsdis2KfYuSDZgdix2YUg2KjZhyDYtNiu2LUg2K/bjNqv2LEgPC9mZC1iYXItZWxlbWVudD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJucmMtZm9ybS1uZXdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tZXJqYVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NldHRpbmdzXT1cIntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWV0YVR5cGVEZWY6IHsgSWQ6ICcnLCAkQ2FwdGlvbjogJycgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWV0YVZpZXc6IHsgSWQ6ICcnLCAkQ2FwdGlvbjogJycgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGlzYWJsZUdlbmVyYXRlSWQ6IHRydWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2JucmMtZm9ybS1uZXc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLXBvcG92ZXItYm9keS1mb290ZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBmZC1iYXIgYmFyRGVzaWduPVwiZm9vdGVyXCIgW2NvenldPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLWJhci1yaWdodD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1idXR0b24tYmFyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidTZW5kJyB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmRUeXBlPVwiZW1waGFzaXplZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9mZC1idXR0b24tYmFyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLWJ1dHRvbi1iYXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ0NhbmNlbCcgfCBiYmJUcmFuc2xhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmZFR5cGVdPVwiJ3RyYW5zcGFyZW50J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImZvcndhcmRQb3BvdmVyLmNsb3NlKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvZmQtYnV0dG9uLWJhcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9mZC1wb3BvdmVyLWJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9mZC1wb3BvdmVyPlxyXG4gICAgICAgICAgICAgICAgPC9mZC1iYXItZWxlbWVudD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgZmQtYmFyLXJpZ2h0PlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIndvcmtmbG93QnV0dG9uc0NvbWJvTW9kZSAmJiB3b3JrZmxvd0J1dHRvbnMubGVuZ3RoID4gMDsgZWxzZSBidXR0b25zTW9kZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxmZC1zcGxpdC1idXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgW2ZpeGVkV2lkdGhdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmZFR5cGU9XCJlbXBoYXNpemVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW21haW5BY3Rpb25dPVwieyBtYWluQWN0aW9uVGl0bGU6ICdTZWxlY3QnIHwgYmJiVHJhbnNsYXRlIH1cIlxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGZkLW1lbnU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZC1tZW51LWl0ZW1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgYnRuIG9mIHdvcmtmbG93QnV0dG9uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uV29ya2Zsb3dCdXR0b25TZWxlY3RlZChidG4pXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLW1lbnUtaW50ZXJhY3RpdmU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZkLW1lbnUtdGl0bGU+e3sgYnRuLnRleHQgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZkLW1lbnU+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9mZC1zcGxpdC1idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZkLWJ1dHRvbi1iYXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2ZkVHlwZV09XCIncG9zaXRpdmUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidTZW5kJyB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhc2VsZWN0ZWRXb3JrZmxvd0J1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtnbHlwaF09XCInYWNjZXB0J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkFjY2VwdFdvcmtmbG93KClcIlxyXG4gICAgICAgICAgICAgICAgICAgID48L2ZkLWJ1dHRvbi1iYXI+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBidG4gb2YgYnV0dG9uczsgbGV0IGkgPSBpbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxmZC1idXR0b24tYmFyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYnRuICE9PSAnLSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbZmRUeXBlXT1cImJ0bi5kZXNpZ24gPyBidG4uZGVzaWduIDogYnRuLkRhdGE/Lkpzb25FeHRyYVByb3A/LkRlc2lnblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJidG4udGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtnbHlwaF09XCJidG4ubmV3SWNvbiA/IGJ0bi5uZXdJY29uIDogYnRuLkRhdGE/Lkpzb25FeHRyYVByb3A/Lkljb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25Ub29sQ2xpY2soYnRuKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgPjwvZmQtYnV0dG9uLWJhcj5cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPGRpdiAqbmdJZj1cImlzTW9iaWxlXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgaGVpZ2h0OiA0cmVtXCI+PC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy10ZW1wbGF0ZSAjYnV0dG9uc01vZGU+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBidG4gb2Ygd29ya2Zsb3dCdXR0b25zOyBsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgICAgPGZkLWJ1dHRvbi1iYXJcclxuICAgICAgICAgICAgKm5nSWY9XCJidG4gIT09ICctJ1wiXHJcbiAgICAgICAgICAgIFthdHRyLndvcmtmbG93QnV0dG9uXT1cInRydWVcIlxyXG4gICAgICAgICAgICBbZmRUeXBlXT1cImJ0bi5kZXNpZ24gPyBidG4uZGVzaWduIDogYnRuLkRhdGE/Lkpzb25FeHRyYVByb3A/LkRlc2lnblwiXHJcbiAgICAgICAgICAgIFtsYWJlbF09XCJidG4udGV4dFwiXHJcbiAgICAgICAgICAgIFtnbHlwaF09XCJidG4ubmV3SWNvbiA/IGJ0bi5uZXdJY29uIDogYnRuLkRhdGE/Lkpzb25FeHRyYVByb3A/Lkljb25cIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwib25Ub29sQ2xpY2soYnRuKVwiXHJcbiAgICAgICAgPjwvZmQtYnV0dG9uLWJhcj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWFjdGlvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvbGF5b3V0LWFjdGlvbnMvbGF5b3V0LWFjdGlvbnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvbGF5b3V0LWFjdGlvbnMvbGF5b3V0LWFjdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4RyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7OztBQU9uRixNQUFNLE9BQU8sc0JBQXVCLFNBQVEsd0JBQXdCO0lBWWhFLFlBQXNCLFFBQWlCO1FBQ25DLEtBQUssRUFBRSxDQUFDO1FBRFUsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQVA3Qix5QkFBb0IsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBSXpELGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFbEIsbUJBQWMsR0FBRyxDQUFDLENBQUM7SUFHbkIsQ0FBQztJQUNELFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDO1lBQ3RFLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWM7U0FDdEMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFFBQVEsR0FBRyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3BDLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7UUFDN0Msd0NBQXdDO1FBQ3hDLElBQUksZUFBZSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDNUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDdkIsSUFBSSxPQUFPLENBQUMsS0FBSyxRQUFRLEVBQUU7b0JBQ3ZCLENBQUMsQ0FBQyxNQUFNLEdBQUcsVUFBVSxDQUFDO2lCQUN6QjtZQUNMLENBQUMsQ0FBQyxDQUFDO1lBQ0gsTUFBTSxVQUFVLEdBQUcsZUFBZSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDL0QsSUFBSSxVQUFVLENBQUMsTUFBTSxFQUFFO2dCQUNuQixVQUFVLENBQUMsTUFBTSxHQUFHLFlBQVksQ0FBQzthQUNwQztTQUNKO0lBQ0wsQ0FBQztJQUNELGdCQUFnQjtRQUNaLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUNELHdCQUF3QixDQUFDLGNBQWM7UUFDbkMsSUFBSSxDQUFDLHNCQUFzQixHQUFHLGNBQWMsQ0FBQztRQUM3QyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxRCxDQUFDOzttSEExQ1Esc0JBQXNCO3VHQUF0QixzQkFBc0Isd1JDVm5DLHN6TUFtSEE7MkZEekdhLHNCQUFzQjtrQkFObEMsU0FBUzsrQkFDSSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTTs4RkFHdEMsZUFBZTtzQkFBdkIsS0FBSztnQkFDRyx3QkFBd0I7c0JBQWhDLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDSSxvQkFBb0I7c0JBQTdCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPdmVybGF5LCBTY3JvbGxTdHJhdGVneSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IEZvcm1Ub29sYmFyQmFzZUNvbXBvbmVudCwgZ2V0RGV2aWNlSXNNb2JpbGUgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdic3UtbGF5b3V0LWFjdGlvbnMnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2xheW91dC1hY3Rpb25zLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2xheW91dC1hY3Rpb25zLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTGF5b3V0QWN0aW9uc0NvbXBvbmVudCBleHRlbmRzIEZvcm1Ub29sYmFyQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgICBASW5wdXQoKSB3b3JrZmxvd0J1dHRvbnM6IGFueVtdO1xyXG4gICAgQElucHV0KCkgd29ya2Zsb3dCdXR0b25zQ29tYm9Nb2RlOiBib29sZWFuO1xyXG4gICAgQElucHV0KCkgY2FuU2VuZDogYm9vbGVhbjtcclxuICAgIEBJbnB1dCgpIHNpbXBsZTogYm9vbGVhbjtcclxuICAgIEBPdXRwdXQoKSB3b3JrZmxvd0Nob2ljZVNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gICAgc2VsZWN0ZWRXb3JrZmxvd0J1dHRvbjogYW55O1xyXG4gICAgaXNNb2JpbGU6IGJvb2xlYW47XHJcbiAgICByZXBvc2l0aW9uU2Nyb2xsU3RyYXRlZ3k6IFNjcm9sbFN0cmF0ZWd5O1xyXG4gICAgYXV0b0Nsb3NlID0gZmFsc2U7XHJcblxyXG4gICAgc2Nyb2xsVGhyb3R0bGUgPSAwO1xyXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIF9vdmVybGF5OiBPdmVybGF5KSB7XHJcbiAgICAgICAgc3VwZXIoKTtcclxuICAgIH1cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICAgICAgdGhpcy5yZXBvc2l0aW9uU2Nyb2xsU3RyYXRlZ3kgPSB0aGlzLl9vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMucmVwb3NpdGlvbih7XHJcbiAgICAgICAgICAgIGF1dG9DbG9zZTogdGhpcy5hdXRvQ2xvc2UsXHJcbiAgICAgICAgICAgIHNjcm9sbFRocm90dGxlOiB0aGlzLnNjcm9sbFRocm90dGxlXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5pc01vYmlsZSA9IGdldERldmljZUlzTW9iaWxlKCk7XHJcbiAgICAgICAgY29uc3Qgd29ya2Zsb3dCdXR0b25zID0gdGhpcy53b3JrZmxvd0J1dHRvbnM7XHJcbiAgICAgICAgLy8gdGhpcy53b3JrZmxvd0J1dHRvbnNDb21ib01vZGUgPSB0cnVlO1xyXG4gICAgICAgIGlmICh3b3JrZmxvd0J1dHRvbnMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICB0aGlzLmJ1dHRvbnMuZm9yRWFjaCgoYykgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBjID09PSAnb2JqZWN0Jykge1xyXG4gICAgICAgICAgICAgICAgICAgIGMuZGVzaWduID0gJ3N0YW5kYXJkJztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIGNvbnN0IGxhc3RCdXR0b24gPSB3b3JrZmxvd0J1dHRvbnNbd29ya2Zsb3dCdXR0b25zLmxlbmd0aCAtIDFdO1xyXG4gICAgICAgICAgICBpZiAobGFzdEJ1dHRvbi5DaG9pY2UpIHtcclxuICAgICAgICAgICAgICAgIGxhc3RCdXR0b24uZGVzaWduID0gJ2VtcGhhc2l6ZWQnO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgb25BY2NlcHRXb3JrZmxvdygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9uVG9vbENsaWNrKHRoaXMuc2VsZWN0ZWRXb3JrZmxvd0J1dHRvbik7XHJcbiAgICB9XHJcbiAgICBvbldvcmtmbG93QnV0dG9uU2VsZWN0ZWQod29ya2Zsb3dCdXR0b24pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkV29ya2Zsb3dCdXR0b24gPSB3b3JrZmxvd0J1dHRvbjtcclxuICAgICAgICB0aGlzLndvcmtmbG93Q2hvaWNlU2VsZWN0LmVtaXQod29ya2Zsb3dCdXR0b24uQ2hvaWNlKTtcclxuICAgIH1cclxufVxyXG4iLCI8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic2ltcGxlID8gYnV0dG9uc01vZGUgOiBkZWZhdWx0VGVtcGxhdGVcIj4gPC9uZy1jb250YWluZXI+XHJcbjxuZy10ZW1wbGF0ZSAjZGVmYXVsdFRlbXBsYXRlPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInZpc2libGVcIj5cclxuICAgICAgICA8ZGl2IGZkLWJhciBiYXJEZXNpZ249XCJmb290ZXJcIiBbaW5QYWdlXT1cInRydWVcIiAqbmdJZj1cImJ1dHRvbnMubGVuZ3RoIHx8IHdvcmtmbG93QnV0dG9ucz8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgIDxkaXYgZmQtYmFyLWxlZnQgKm5nSWY9XCJjYW5TZW5kICYmIGZhbHNlXCI+XHJcbiAgICAgICAgICAgICAgICA8ZmQtYmFyLWVsZW1lbnQgY2xhc3M9XCJmb3J3YXJkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZkLXBvcG92ZXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2ZvY3VzVHJhcHBlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2ZvY3VzQXV0b0NhcHR1cmVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbG9zZU9uT3V0c2lkZUNsaWNrXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3Njcm9sbFN0cmF0ZWd5XT1cInJlcG9zaXRpb25TY3JvbGxTdHJhdGVneVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICNmb3J3YXJkUG9wb3ZlclxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGZkLXBvcG92ZXItY29udHJvbCBjbGFzcz1cImZvcndhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gZmQtYnV0dG9uIFtmZFR5cGVdPVwiJ3N0YW5kYXJkJ1wiIFtsYWJlbF09XCInRm9yd2FyZCcgfCBiYmJUcmFuc2xhdGVcIj48L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9mZC1wb3BvdmVyLWNvbnRyb2w+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1wb3BvdmVyLWJvZHkgc3R5bGU9XCJtaW4td2lkdGg6IDMwdnc7IG1heC13aWR0aDogMzB2dzsgbWluLWhlaWdodDogMzB2aFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBmZC1wb3BvdmVyLWJvZHktaGVhZGVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZmQtYmFyIGJhckRlc2lnbj1cImhlYWRlclwiIFtjb3p5XT1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBmZC1iYXItcmlnaHQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmQtYmFyLWVsZW1lbnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZC1idXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImZvcndhcmRQb3BvdmVyLmNsb3NlKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZmRUeXBlXT1cIid0cmFuc3BhcmVudCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZ2x5cGhdPVwiJ2RlY2xpbmUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZkLWJhci1lbGVtZW50PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBmZC1iYXItbGVmdD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmQtYmFyLWVsZW1lbnQ+2KfYsdis2KfYuSDZgdix2YUg2KjZhyDYtNiu2LUg2K/bjNqv2LEgPC9mZC1iYXItZWxlbWVudD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJucmMtZm9ybS1uZXdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tZXJqYVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NldHRpbmdzXT1cIntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWV0YVR5cGVEZWY6IHsgSWQ6ICcnLCAkQ2FwdGlvbjogJycgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWV0YVZpZXc6IHsgSWQ6ICcnLCAkQ2FwdGlvbjogJycgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGlzYWJsZUdlbmVyYXRlSWQ6IHRydWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2JucmMtZm9ybS1uZXc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLXBvcG92ZXItYm9keS1mb290ZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBmZC1iYXIgYmFyRGVzaWduPVwiZm9vdGVyXCIgW2NvenldPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLWJhci1yaWdodD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1idXR0b24tYmFyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidTZW5kJyB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmRUeXBlPVwiZW1waGFzaXplZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9mZC1idXR0b24tYmFyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLWJ1dHRvbi1iYXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ0NhbmNlbCcgfCBiYmJUcmFuc2xhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmZFR5cGVdPVwiJ3RyYW5zcGFyZW50J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImZvcndhcmRQb3BvdmVyLmNsb3NlKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvZmQtYnV0dG9uLWJhcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9mZC1wb3BvdmVyLWJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9mZC1wb3BvdmVyPlxyXG4gICAgICAgICAgICAgICAgPC9mZC1iYXItZWxlbWVudD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgZmQtYmFyLXJpZ2h0PlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIndvcmtmbG93QnV0dG9uc0NvbWJvTW9kZSAmJiB3b3JrZmxvd0J1dHRvbnMubGVuZ3RoID4gMDsgZWxzZSBidXR0b25zTW9kZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxmZC1zcGxpdC1idXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgW2ZpeGVkV2lkdGhdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmZFR5cGU9XCJlbXBoYXNpemVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW21haW5BY3Rpb25dPVwieyBtYWluQWN0aW9uVGl0bGU6ICdTZWxlY3QnIHwgYmJiVHJhbnNsYXRlIH1cIlxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGZkLW1lbnU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZC1tZW51LWl0ZW1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgYnRuIG9mIHdvcmtmbG93QnV0dG9uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uV29ya2Zsb3dCdXR0b25TZWxlY3RlZChidG4pXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLW1lbnUtaW50ZXJhY3RpdmU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZkLW1lbnUtdGl0bGU+e3sgYnRuLnRleHQgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZkLW1lbnU+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9mZC1zcGxpdC1idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZkLWJ1dHRvbi1iYXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2ZkVHlwZV09XCIncG9zaXRpdmUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidTZW5kJyB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhc2VsZWN0ZWRXb3JrZmxvd0J1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtnbHlwaF09XCInYWNjZXB0J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkFjY2VwdFdvcmtmbG93KClcIlxyXG4gICAgICAgICAgICAgICAgICAgID48L2ZkLWJ1dHRvbi1iYXI+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBidG4gb2YgYnV0dG9uczsgbGV0IGkgPSBpbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxmZC1idXR0b24tYmFyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYnRuICE9PSAnLSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbZmRUeXBlXT1cImJ0bi5kZXNpZ24gPyBidG4uZGVzaWduIDogYnRuLkRhdGE/Lkpzb25FeHRyYVByb3A/LkRlc2lnblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJidG4udGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtnbHlwaF09XCJidG4ubmV3SWNvbiA/IGJ0bi5uZXdJY29uIDogYnRuLkRhdGE/Lkpzb25FeHRyYVByb3A/Lkljb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25Ub29sQ2xpY2soYnRuKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgPjwvZmQtYnV0dG9uLWJhcj5cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPGRpdiAqbmdJZj1cImlzTW9iaWxlXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgaGVpZ2h0OiA0cmVtXCI+PC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy10ZW1wbGF0ZSAjYnV0dG9uc01vZGU+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBidG4gb2Ygd29ya2Zsb3dCdXR0b25zOyBsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgICAgPGZkLWJ1dHRvbi1iYXJcclxuICAgICAgICAgICAgKm5nSWY9XCJidG4gIT09ICctJ1wiXHJcbiAgICAgICAgICAgIFthdHRyLndvcmtmbG93QnV0dG9uXT1cInRydWVcIlxyXG4gICAgICAgICAgICBbZmRUeXBlXT1cImJ0bi5kZXNpZ24gPyBidG4uZGVzaWduIDogYnRuLkRhdGE/Lkpzb25FeHRyYVByb3A/LkRlc2lnblwiXHJcbiAgICAgICAgICAgIFtsYWJlbF09XCJidG4udGV4dFwiXHJcbiAgICAgICAgICAgIFtnbHlwaF09XCJidG4ubmV3SWNvbiA/IGJ0bi5uZXdJY29uIDogYnRuLkRhdGE/Lkpzb25FeHRyYVByb3A/Lkljb25cIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwib25Ub29sQ2xpY2soYnRuKVwiXHJcbiAgICAgICAgPjwvZmQtYnV0dG9uLWJhcj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
@@ -8,7 +8,7 @@ import * as i4 from "@angular/common";
8
8
  import * as i5 from "../ly-label/ly-label.component";
9
9
  export class LayoutControlComponent extends LayoutItemBaseComponent {
10
10
  constructor(formPanelService, el, _contentDensityService, domSanitizer, _cdr, _ngZone, _renderer2, _bbbTranslate) {
11
- super(formPanelService);
11
+ super(formPanelService, _cdr);
12
12
  this.formPanelService = formPanelService;
13
13
  this.el = el;
14
14
  this.domSanitizer = domSanitizer;
@@ -147,10 +147,10 @@ export class LayoutControlComponent extends LayoutItemBaseComponent {
147
147
  }
148
148
  }
149
149
  LayoutControlComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: LayoutControlComponent, deps: [{ token: i1.FormPanelService }, { token: i0.ElementRef }, { token: i2.ContentDensityService }, { token: i3.DomSanitizer }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i1.BbbTranslatePipe }], target: i0.ɵɵFactoryTarget.Component });
150
- LayoutControlComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: LayoutControlComponent, selector: "bsu-layout-control", inputs: { inlineEdit: "inlineEdit", caption: "caption", focusControl: "focusControl", showLabel: "showLabel", maxLabelWidth: "maxLabelWidth", hasHorizontalText: "hasHorizontalText", contentDensity: "contentDensity", flex: "flex", RefreshLabel: "RefreshLabel", SetVisible: "SetVisible" }, host: { properties: { "class.layout-control": "this.layoutControlClass", "class.row-direction": "this.isRowDirection", "class.row-reverse-direction": "this.isRowReverseDirection", "class.column-direction": "this.isColumnDirection", "class.column-reverse-direction": "this.isColumnReverseDirection", "class.container-field": "this.isContainer", "style.max-width": "this.maxWidth", "style.min-width": "this.minWidth", "style.min-height": "this.minHeight", "style.height": "this.height", "attr.isChekbox": "this.isCheckbox", "attr.isButton": "this.isSinglePicture", "attr.minWidth": "this.attrMinWidth", "attr.controlId": "this.attrControlId", "attr.caption": "this.attrCaption" } }, providers: [LayoutService], viewQueries: [{ propertyName: "canvasRef", first: true, predicate: ["canvas"], descendants: true, static: true }, { propertyName: "tempLabelRef", first: true, predicate: ["tempLabelRef"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"!hide\">\n <ng-container *ngIf=\"labelVisible && !isCheckbox\">\n <bsu-ly-label\n [attr.labelWidth]=\"labelWidth\"\n [attr.canvasWidth]=\"canvasWidth\"\n [attrRtl]\n [class.no-padding]=\"config.Padding[0] === 0\"\n [config]=\"config\"\n [caption]=\"labelCaption\"\n [originalWidth]=\"labelWidth\"\n [style.min-width]=\"\n isCheckbox ? 'auto' : isColumnDirection || isColumnReverseDirection ? '100%' : maxLabelWidth + 'px'\n \"\n [style.width]=\"\n isCheckbox ? 'auto' : isColumnDirection || isColumnReverseDirection ? '100%' : maxLabelWidth + 'px'\n \"\n [isMandatory]=\"isMandatory\"\n [fieldIcon]=\"fieldIcon\"\n [originalXtype]=\"originalXtype\"\n [textVisible]=\"textVisible\"\n [isColumn]=\"isColumnDirection || isColumnReverseDirection\"\n ></bsu-ly-label>\n </ng-container>\n <label [attr.visible]=\"labelVisible\" class=\"horizontal-label\" [innerHtml]=\"emptyText\"></label>\n <bnrc-field-ui\n [attr.xtype]=\"config.FieldUi.originalXtype\"\n [attr.fieldWidth]=\"layoutControlWidth\"\n [attr.isCheckbox]=\"isCheckbox\"\n [style.flex-grow]=\"isCheckbox ? 1 : 0\"\n [class.no-padding]=\"config.Padding[0] === 0\"\n [customField]=\"config.FieldUi\"\n [layoutInfo]=\"config\"\n [inlineEdit]=\"inlineEdit\"\n [focusControl]=\"focusControl\"\n [isSearchPanel]=\"isSearchPanel\"\n [style.height]=\"isUlv ? '100%' : 'auto'\"\n [attr.isulv]=\"isUlv\"\n ></bnrc-field-ui>\n</ng-container>\n", styles: [":host{width:100%;display:flex}.form-item-label-container{display:flex;position:relative}.lbl-temp{position:absolute;visibility:hidden}bsu-ly-label{padding:0 5px;margin:auto}bnrc-field-ui{padding:0 5px;margin:auto}bnrc-field-ui[xtype=\"Ui.CheckBox\"]{padding:0}@media screen and (max-width: 599px){:host{height:auto}bnrc-field-ui{height:auto}}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1.FieldUiComponent, selector: "bnrc-field-ui", inputs: ["isSearchPanel", "customField", "layoutInfo", "inlineEdit", "focusControl"] }, { kind: "directive", type: i1.AttrRtlDirective, selector: "[attrRtl]", inputs: ["attrRtl"] }, { kind: "component", type: i5.LyLabelComponent, selector: "bsu-ly-label", inputs: ["originalWidth", "minWidth", "caption", "isColumn", "isMandatory", "fieldIcon", "originalXtype", "textVisible"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
150
+ LayoutControlComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: LayoutControlComponent, selector: "bsu-layout-control", inputs: { inlineEdit: "inlineEdit", caption: "caption", focusControl: "focusControl", showLabel: "showLabel", maxLabelWidth: "maxLabelWidth", hasHorizontalText: "hasHorizontalText", contentDensity: "contentDensity", flex: "flex", RefreshLabel: "RefreshLabel", SetVisible: "SetVisible" }, host: { properties: { "class.layout-control": "this.layoutControlClass", "class.row-direction": "this.isRowDirection", "class.row-reverse-direction": "this.isRowReverseDirection", "class.column-direction": "this.isColumnDirection", "class.column-reverse-direction": "this.isColumnReverseDirection", "class.container-field": "this.isContainer", "style.max-width": "this.maxWidth", "style.min-width": "this.minWidth", "style.min-height": "this.minHeight", "style.height": "this.height", "attr.isChekbox": "this.isCheckbox", "attr.isButton": "this.isSinglePicture", "attr.minWidth": "this.attrMinWidth", "attr.controlId": "this.attrControlId", "attr.caption": "this.attrCaption" } }, providers: [LayoutService], viewQueries: [{ propertyName: "canvasRef", first: true, predicate: ["canvas"], descendants: true, static: true }, { propertyName: "tempLabelRef", first: true, predicate: ["tempLabelRef"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"!hide\">\r\n <ng-container *ngIf=\"labelVisible && !isCheckbox\">\r\n <bsu-ly-label\r\n [attr.labelWidth]=\"labelWidth\"\r\n [attr.canvasWidth]=\"canvasWidth\"\r\n [attrRtl]\r\n [class.no-padding]=\"config.Padding[0] === 0\"\r\n [config]=\"config\"\r\n [caption]=\"labelCaption\"\r\n [originalWidth]=\"labelWidth\"\r\n [style.min-width]=\"\r\n isCheckbox ? 'auto' : isColumnDirection || isColumnReverseDirection ? '100%' : maxLabelWidth + 'px'\r\n \"\r\n [style.width]=\"\r\n isCheckbox ? 'auto' : isColumnDirection || isColumnReverseDirection ? '100%' : maxLabelWidth + 'px'\r\n \"\r\n [isMandatory]=\"isMandatory\"\r\n [fieldIcon]=\"fieldIcon\"\r\n [originalXtype]=\"originalXtype\"\r\n [textVisible]=\"textVisible\"\r\n [isColumn]=\"isColumnDirection || isColumnReverseDirection\"\r\n ></bsu-ly-label>\r\n </ng-container>\r\n <label [attr.visible]=\"labelVisible\" class=\"horizontal-label\" [innerHtml]=\"emptyText\"></label>\r\n <bnrc-field-ui\r\n [attr.xtype]=\"config.FieldUi.originalXtype\"\r\n [attr.fieldWidth]=\"layoutControlWidth\"\r\n [attr.isCheckbox]=\"isCheckbox\"\r\n [style.flex-grow]=\"isCheckbox ? 1 : 0\"\r\n [class.no-padding]=\"config.Padding[0] === 0\"\r\n [customField]=\"config.FieldUi\"\r\n [layoutInfo]=\"config\"\r\n [inlineEdit]=\"inlineEdit\"\r\n [focusControl]=\"focusControl\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n [style.height]=\"isUlv ? '100%' : 'auto'\"\r\n [attr.isulv]=\"isUlv\"\r\n ></bnrc-field-ui>\r\n</ng-container>\r\n", styles: [":host{width:100%;display:flex}.form-item-label-container{display:flex;position:relative}.lbl-temp{position:absolute;visibility:hidden}bsu-ly-label{padding:0 5px;margin:auto}bnrc-field-ui{padding:0 5px;margin:auto}bnrc-field-ui[xtype=\"Ui.CheckBox\"]{padding:0}@media screen and (max-width: 599px){:host{height:auto}bnrc-field-ui{height:auto}}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1.FieldUiComponent, selector: "bnrc-field-ui", inputs: ["isSearchPanel", "customField", "layoutInfo", "inlineEdit", "focusControl"] }, { kind: "directive", type: i1.AttrRtlDirective, selector: "[attrRtl]", inputs: ["attrRtl"] }, { kind: "component", type: i5.LyLabelComponent, selector: "bsu-ly-label", inputs: ["originalWidth", "minWidth", "caption", "isColumn", "isMandatory", "fieldIcon", "originalXtype", "textVisible"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
151
151
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: LayoutControlComponent, decorators: [{
152
152
  type: Component,
153
- args: [{ selector: 'bsu-layout-control', providers: [LayoutService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!hide\">\n <ng-container *ngIf=\"labelVisible && !isCheckbox\">\n <bsu-ly-label\n [attr.labelWidth]=\"labelWidth\"\n [attr.canvasWidth]=\"canvasWidth\"\n [attrRtl]\n [class.no-padding]=\"config.Padding[0] === 0\"\n [config]=\"config\"\n [caption]=\"labelCaption\"\n [originalWidth]=\"labelWidth\"\n [style.min-width]=\"\n isCheckbox ? 'auto' : isColumnDirection || isColumnReverseDirection ? '100%' : maxLabelWidth + 'px'\n \"\n [style.width]=\"\n isCheckbox ? 'auto' : isColumnDirection || isColumnReverseDirection ? '100%' : maxLabelWidth + 'px'\n \"\n [isMandatory]=\"isMandatory\"\n [fieldIcon]=\"fieldIcon\"\n [originalXtype]=\"originalXtype\"\n [textVisible]=\"textVisible\"\n [isColumn]=\"isColumnDirection || isColumnReverseDirection\"\n ></bsu-ly-label>\n </ng-container>\n <label [attr.visible]=\"labelVisible\" class=\"horizontal-label\" [innerHtml]=\"emptyText\"></label>\n <bnrc-field-ui\n [attr.xtype]=\"config.FieldUi.originalXtype\"\n [attr.fieldWidth]=\"layoutControlWidth\"\n [attr.isCheckbox]=\"isCheckbox\"\n [style.flex-grow]=\"isCheckbox ? 1 : 0\"\n [class.no-padding]=\"config.Padding[0] === 0\"\n [customField]=\"config.FieldUi\"\n [layoutInfo]=\"config\"\n [inlineEdit]=\"inlineEdit\"\n [focusControl]=\"focusControl\"\n [isSearchPanel]=\"isSearchPanel\"\n [style.height]=\"isUlv ? '100%' : 'auto'\"\n [attr.isulv]=\"isUlv\"\n ></bnrc-field-ui>\n</ng-container>\n", styles: [":host{width:100%;display:flex}.form-item-label-container{display:flex;position:relative}.lbl-temp{position:absolute;visibility:hidden}bsu-ly-label{padding:0 5px;margin:auto}bnrc-field-ui{padding:0 5px;margin:auto}bnrc-field-ui[xtype=\"Ui.CheckBox\"]{padding:0}@media screen and (max-width: 599px){:host{height:auto}bnrc-field-ui{height:auto}}\n"] }]
153
+ args: [{ selector: 'bsu-layout-control', providers: [LayoutService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!hide\">\r\n <ng-container *ngIf=\"labelVisible && !isCheckbox\">\r\n <bsu-ly-label\r\n [attr.labelWidth]=\"labelWidth\"\r\n [attr.canvasWidth]=\"canvasWidth\"\r\n [attrRtl]\r\n [class.no-padding]=\"config.Padding[0] === 0\"\r\n [config]=\"config\"\r\n [caption]=\"labelCaption\"\r\n [originalWidth]=\"labelWidth\"\r\n [style.min-width]=\"\r\n isCheckbox ? 'auto' : isColumnDirection || isColumnReverseDirection ? '100%' : maxLabelWidth + 'px'\r\n \"\r\n [style.width]=\"\r\n isCheckbox ? 'auto' : isColumnDirection || isColumnReverseDirection ? '100%' : maxLabelWidth + 'px'\r\n \"\r\n [isMandatory]=\"isMandatory\"\r\n [fieldIcon]=\"fieldIcon\"\r\n [originalXtype]=\"originalXtype\"\r\n [textVisible]=\"textVisible\"\r\n [isColumn]=\"isColumnDirection || isColumnReverseDirection\"\r\n ></bsu-ly-label>\r\n </ng-container>\r\n <label [attr.visible]=\"labelVisible\" class=\"horizontal-label\" [innerHtml]=\"emptyText\"></label>\r\n <bnrc-field-ui\r\n [attr.xtype]=\"config.FieldUi.originalXtype\"\r\n [attr.fieldWidth]=\"layoutControlWidth\"\r\n [attr.isCheckbox]=\"isCheckbox\"\r\n [style.flex-grow]=\"isCheckbox ? 1 : 0\"\r\n [class.no-padding]=\"config.Padding[0] === 0\"\r\n [customField]=\"config.FieldUi\"\r\n [layoutInfo]=\"config\"\r\n [inlineEdit]=\"inlineEdit\"\r\n [focusControl]=\"focusControl\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n [style.height]=\"isUlv ? '100%' : 'auto'\"\r\n [attr.isulv]=\"isUlv\"\r\n ></bnrc-field-ui>\r\n</ng-container>\r\n", styles: [":host{width:100%;display:flex}.form-item-label-container{display:flex;position:relative}.lbl-temp{position:absolute;visibility:hidden}bsu-ly-label{padding:0 5px;margin:auto}bnrc-field-ui{padding:0 5px;margin:auto}bnrc-field-ui[xtype=\"Ui.CheckBox\"]{padding:0}@media screen and (max-width: 599px){:host{height:auto}bnrc-field-ui{height:auto}}\n"] }]
154
154
  }], ctorParameters: function () { return [{ type: i1.FormPanelService }, { type: i0.ElementRef }, { type: i2.ContentDensityService }, { type: i3.DomSanitizer }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i1.BbbTranslatePipe }]; }, propDecorators: { canvasRef: [{
155
155
  type: ViewChild,
156
156
  args: ['canvas', { static: true }]
@@ -226,4 +226,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
226
226
  }], SetVisible: [{
227
227
  type: Input
228
228
  }] } });
229
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWNvbnRyb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvbGF5b3V0LWNvbnRyb2wvbGF5b3V0LWNvbnRyb2wuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvbGF5b3V0LWNvbnRyb2wvbGF5b3V0LWNvbnRyb2wuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxVQUFVLEVBQ1YsV0FBVyxFQUNYLEtBQUssRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBTTFCLE1BQU0sZUFBZSxDQUFDO0FBS3ZCLE9BQU8sRUFDSCxRQUFRLEVBQ1IsdUJBQXVCLEVBQ3ZCLGFBQWEsRUFFYixpQkFBaUIsRUFFcEIsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7OztBQVM5QixNQUFNLE9BQU8sc0JBQXVCLFNBQVEsdUJBQXVCO0lBK0MvRCxZQUNjLGdCQUFrQyxFQUNyQyxFQUFjLEVBQ3JCLHNCQUE2QyxFQUNyQyxZQUEwQixFQUMxQixJQUF1QixFQUN2QixPQUFlLEVBQ2YsVUFBcUIsRUFDckIsYUFBK0I7UUFFdkMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFUZCxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ3JDLE9BQUUsR0FBRixFQUFFLENBQVk7UUFFYixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixTQUFJLEdBQUosSUFBSSxDQUFtQjtRQUN2QixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2YsZUFBVSxHQUFWLFVBQVUsQ0FBVztRQUNyQixrQkFBYSxHQUFiLGFBQWEsQ0FBa0I7UUFqRE4sdUJBQWtCLEdBQUcsSUFBSSxDQUFDO1FBS3pCLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBSXhCLGNBQVMsR0FBRyxTQUFTLENBQUM7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LGNBQWM7Z0JBQ0ksVUFBVTtzQkFBeEMsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBQ0MsUUFBUTtzQkFBckMsV0FBVzt1QkFBQyxlQUFlO2dCQUNFLGVBQWU7c0JBQTVDLFdBQVc7dUJBQUMsZUFBZTtnQkFDRSxZQUFZO3NCQUF6QyxXQUFXO3VCQUFDLGVBQWU7Z0JBQ0csYUFBYTtzQkFBM0MsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBQ0EsV0FBVztzQkFBdkMsV0FBVzt1QkFBQyxjQUFjO2dCQUNsQixVQUFVO3NCQUFsQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBMklHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBRUcsVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5wdXQsXG4gICAgVmlld0NoaWxkLFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIE5nWm9uZSxcbiAgICBSZW5kZXJlcjIsXG4gICAgT25Jbml0LFxuICAgIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVIdG1sIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5LCBDb250ZW50RGVuc2l0eVNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xuXG5pbXBvcnQge1xuICAgIEJhcnNhQXBpLFxuICAgIExheW91dEl0ZW1CYXNlQ29tcG9uZW50LFxuICAgIExheW91dFNlcnZpY2UsXG4gICAgRm9ybVBhbmVsU2VydmljZSxcbiAgICBnZXREZXZpY2VJc01vYmlsZSxcbiAgICBCYmJUcmFuc2xhdGVQaXBlXG59IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdic3UtbGF5b3V0LWNvbnRyb2wnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9sYXlvdXQtY29udHJvbC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vbGF5b3V0LWNvbnRyb2wuY29tcG9uZW50LnNjc3MnXSxcbiAgICBwcm92aWRlcnM6IFtMYXlvdXRTZXJ2aWNlXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBMYXlvdXRDb250cm9sQ29tcG9uZW50IGV4dGVuZHMgTGF5b3V0SXRlbUJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBWaWV3Q2hpbGQoJ2NhbnZhcycsIHsgc3RhdGljOiB0cnVlIH0pXG4gICAgY2FudmFzUmVmOiBFbGVtZW50UmVmO1xuICAgIEBWaWV3Q2hpbGQoJ3RlbXBMYWJlbFJlZicsIHsgcmVhZDogRWxlbWVudFJlZiwgc3RhdGljOiB0cnVlIH0pXG4gICAgdGVtcExhYmVsUmVmOiBFbGVtZW50UmVmO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5sYXlvdXQtY29udHJvbCcpIGxheW91dENvbnRyb2xDbGFzcyA9IHRydWU7XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5yb3ctZGlyZWN0aW9uJykgaXNSb3dEaXJlY3Rpb247XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5yb3ctcmV2ZXJzZS1kaXJlY3Rpb24nKSBpc1Jvd1JldmVyc2VEaXJlY3Rpb247XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jb2x1bW4tZGlyZWN0aW9uJykgaXNDb2x1bW5EaXJlY3Rpb247XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jb2x1bW4tcmV2ZXJzZS1kaXJlY3Rpb24nKSBpc0NvbHVtblJldmVyc2VEaXJlY3Rpb247XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jb250YWluZXItZmllbGQnKSBpc0NvbnRhaW5lciA9IHRydWU7XG4gICAgLy8gQEhvc3RCaW5kaW5nKCdzdHlsZS52aXNpYmlsaXR5JykgdmlzaWJpbGl0eTogc3RyaW5nO1xuICAgIEBIb3N0QmluZGluZygnc3R5bGUubWF4LXdpZHRoJykgbWF4V2lkdGg7XG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS5taW4td2lkdGgnKSBtaW5XaWR0aDtcbiAgICBASG9zdEJpbmRpbmcoJ3N0eWxlLm1pbi1oZWlnaHQnKSBtaW5IZWlnaHQgPSAnMi4yNXJlbSc7XG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS5oZWlnaHQnKSBoZWlnaHQ7XG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmlzQ2hla2JveCcpIGlzQ2hlY2tib3g7XG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmlzQnV0dG9uJykgaXNCdXR0b247XG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmlzQnV0dG9uJykgaXNTaW5nbGVQaWN0dXJlO1xuICAgIEBIb3N0QmluZGluZygnYXR0ci5taW5XaWR0aCcpIGF0dHJNaW5XaWR0aDtcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuY29udHJvbElkJykgYXR0ckNvbnRyb2xJZDtcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuY2FwdGlvbicpIGF0dHJDYXB0aW9uO1xuICAgIEBJbnB1dCgpIGlubGluZUVkaXQ6IGJvb2xlYW47XG4gICAgQElucHV0KCkgY2FwdGlvbjogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGZvY3VzQ29udHJvbDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBzaG93TGFiZWw6IGJvb2xlYW47XG4gICAgQElucHV0KCkgbWF4TGFiZWxXaWR0aDogbnVtYmVyO1xuICAgIEBJbnB1dCgpIGhhc0hvcml6b250YWxUZXh0OiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGNvbnRlbnREZW5zaXR5OiBDb250ZW50RGVuc2l0eTtcbiAgICBASW5wdXQoKSBmbGV4OiBzdHJpbmc7XG4gICAgaGlkZSA9IHRydWU7XG4gICAgbGF5b3V0U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgd3JhcENvbnRlbnQ6IGJvb2xlYW47XG4gICAgbGFiZWxXaWR0aDogbnVtYmVyO1xuICAgIGxhYmVsQ2FwdGlvbjogc3RyaW5nIHwgU2FmZUh0bWw7XG4gICAgbGFiZWxWaXNpYmxlPzogYm9vbGVhbjtcbiAgICBsYXlvdXRTZXRTaXplOiBib29sZWFuO1xuICAgIHJ0bCQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgaXNVbHY6IGJvb2xlYW47XG4gICAgY2FudmFzV2lkdGg6IG51bWJlcjtcbiAgICBpc01hbmRhdG9yeTogYm9vbGVhbjtcbiAgICBmaWVsZEljb246IHN0cmluZztcbiAgICBvcmlnaW5hbFh0eXBlOiBzdHJpbmc7XG4gICAgdGV4dFZpc2libGU6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gICAgZW1wdHlUZXh0ID0gdGhpcy5kb21TYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwoJyYjODIwMzsnKTtcbiAgICBsYXlvdXRDb250cm9sV2lkdGg6IG51bWJlcjtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIGZvcm1QYW5lbFNlcnZpY2U6IEZvcm1QYW5lbFNlcnZpY2UsXG4gICAgICAgIHB1YmxpYyBlbDogRWxlbWVudFJlZixcbiAgICAgICAgX2NvbnRlbnREZW5zaXR5U2VydmljZTogQ29udGVudERlbnNpdHlTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGRvbVNhbml0aXplcjogRG9tU2FuaXRpemVyLFxuICAgICAgICBwcml2YXRlIF9jZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgcHJpdmF0ZSBfcmVuZGVyZXIyOiBSZW5kZXJlcjIsXG4gICAgICAgIHByaXZhdGUgX2JiYlRyYW5zbGF0ZTogQmJiVHJhbnNsYXRlUGlwZVxuICAgICkge1xuICAgICAgICBzdXBlcihmb3JtUGFuZWxTZXJ2aWNlKTtcbiAgICAgICAgaWYgKHRoaXMuY29udGVudERlbnNpdHkgPT09ICdjb21wYWN0Jykge1xuICAgICAgICAgICAgdGhpcy5taW5IZWlnaHQgPSAnMnJlbSc7XG4gICAgICAgIH1cbiAgICB9XG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uQ2hhbmdlcyhjaGFuZ2VzKTtcbiAgICAgICAgY29uc3QgeyBmbGV4IH0gPSBjaGFuZ2VzO1xuICAgICAgICBpZiAoZmxleCkge1xuICAgICAgICAgICAgdGhpcy5fc2V0RmxleChmbGV4LmN1cnJlbnRWYWx1ZSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIHRoaXMuX3NldEZsZXgodGhpcy5mbGV4KTtcbiAgICAgICAgaWYgKHRoaXMuaW5saW5lRWRpdCkge1xuICAgICAgICAgICAgdGhpcy5taW5IZWlnaHQgPSAnYXV0byc7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5sYXlvdXRDb250cm9sV2lkdGggPSAodGhpcy5lbC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5jbGllbnRXaWR0aDtcbiAgICAgICAgY29uc3QgY29uZmlnID0gdGhpcy5jb25maWc7XG4gICAgICAgIGlmIChjb25maWcuRmllbGRVaS5vcmlnaW5hbFh0eXBlID09PSAnVWkuVWx2TWFpblVpJykge1xuICAgICAgICAgICAgdGhpcy5pc1VsdiA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5hdHRyQ2FwdGlvbiA9IGNvbmZpZy5DYXB0aW9uLnJlcGxhY2UoJzonLCAnJyk7XG4gICAgICAgIHRoaXMuYXR0ckNvbnRyb2xJZCA9IGNvbmZpZy5Db250cm9sSWQ7XG4gICAgICAgIHRoaXMuaXNCdXR0b24gPSBjb25maWcuRmllbGRVaS5vcmlnaW5hbFh0eXBlID09PSAnVWkuQnV0dG9uJztcbiAgICAgICAgbGV0IGxhYmVsQ2FwdGlvbiA9IGNvbmZpZy5DYXB0aW9uO1xuICAgICAgICBpZiAoY29uZmlnLkZpZWxkVWkuU2V0dGluZz8uSXNNYW5kYXRvcnkpIHtcbiAgICAgICAgICAgIGlmIChsYWJlbENhcHRpb24uaW5kZXhPZignKicpIDwgMCkge1xuICAgICAgICAgICAgICAgIGxhYmVsQ2FwdGlvbiA9IGxhYmVsQ2FwdGlvbiArICcgKic7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBsYWJlbENhcHRpb24gPSBsYWJlbENhcHRpb24ucmVwbGFjZSgnKicsICcnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaXNDaGVja2JveCA9IGNvbmZpZy5GaWVsZFVpLm9yaWdpbmFsWHR5cGUgPT09ICdVaS5DaGVja0JveCc7XG4gICAgICAgIHRoaXMuaXNTaW5nbGVQaWN0dXJlID0gY29uZmlnLkZpZWxkVWkub3JpZ2luYWxYdHlwZSA9PT0gJ1VpLlNpbmdsZVBpY3R1cmUnO1xuICAgICAgICB0aGlzLmxhYmVsQ2FwdGlvbiA9IHRoaXMuZG9tU2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKHRoaXMuX2JiYlRyYW5zbGF0ZS50cmFuc2Zvcm0obGFiZWxDYXB0aW9uKSk7XG4gICAgICAgIHRoaXMubGFiZWxWaXNpYmxlID0gY29uZmlnLlRleHRWaXNpYmxlICYmIHRoaXMuc2hvd0xhYmVsICE9PSBmYWxzZTtcblxuICAgICAgICB0aGlzLmlzUm93RGlyZWN0aW9uID0gY29uZmlnLlRleHRMb2NhdGlvbiA9PT0gJ1JpZ2h0JyB8fCBjb25maWcuVGV4dExvY2F0aW9uID09PSAnRGVmYXVsdCc7XG4gICAgICAgIHRoaXMuaXNSb3dSZXZlcnNlRGlyZWN0aW9uID0gY29uZmlnLlRleHRMb2NhdGlvbiA9PT0gJ0xlZnQnO1xuICAgICAgICB0aGlzLmlzQ29sdW1uRGlyZWN0aW9uID0gY29uZmlnLlRleHRMb2NhdGlvbiA9PT0gJ1RvcCcgfHwgdGhpcy5pc1NlYXJjaFBhbmVsO1xuICAgICAgICB0aGlzLmlzQ29sdW1uUmV2ZXJzZURpcmVjdGlvbiA9IGNvbmZpZy5UZXh0TG9jYXRpb24gPT09ICdCb3R0b20nO1xuXG4gICAgICAgIGNvbmZpZy5GaWVsZFVpLkxheW91dENvbnRyb2wgPSB0aGlzO1xuXG4gICAgICAgIHRoaXMuX3NldEhpZGUoY29uZmlnLkZpZWxkVWkuU2V0dGluZy5Jc1Zpc2libGUgPT09IGZhbHNlID8gdHJ1ZSA6IGZhbHNlKTtcbiAgICAgICAgdGhpcy5pc01hbmRhdG9yeSA9IGNvbmZpZy5GaWVsZFVpLlNldHRpbmc/LklzTWFuZGF0b3J5O1xuICAgICAgICB0aGlzLmZpZWxkSWNvbiA9IGNvbmZpZy5GaWVsZFVpLlNldHRpbmcuRmllbGRJY29uO1xuICAgICAgICB0aGlzLm9yaWdpbmFsWHR5cGUgPSBjb25maWcuRmllbGRVaS5vcmlnaW5hbFh0eXBlO1xuICAgICAgICB0aGlzLnRleHRWaXNpYmxlID0gY29uZmlnLlRleHRWaXNpYmxlO1xuICAgICAgICBpZiAoY29uZmlnLkZpZWxkVWkub3JpZ2luYWxYdHlwZSA9PT0gJ1VpLlNlYXJjaENvbW1hbmRJbmZvVWknKSB7XG4gICAgICAgICAgICB0aGlzLmxhYmVsQ2FwdGlvbiA9ICcmIzgyMDM7JztcbiAgICAgICAgICAgIHRoaXMubGFiZWxWaXNpYmxlID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMudGV4dFZpc2libGUgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucHJlcGFyZU1pbkFuZE1heFNpemUoKTtcbiAgICB9XG4gICAgX3Jlc2l6ZVVsdkJ5RGV2aWNlKGRldmljZSk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuaXNVbHYpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBsZXQgZGV2aWNlSGVpZ2h0ID0gJ0Rlc2t0b3BIZWlnaHQnO1xuICAgICAgICBzd2l0Y2ggKGRldmljZSkge1xuICAgICAgICAgICAgY2FzZSAncyc6XG4gICAgICAgICAgICAgICAgZGV2aWNlSGVpZ2h0ID0gJ01vYmlsZUhlaWdodCc7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdtJzpcbiAgICAgICAgICAgICAgICBkZXZpY2VIZWlnaHQgPSAnVGFibGV0SGVpZ2h0JztcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmhlaWdodCA9IEJhcnNhQXBpLkNvbW1vbi5VdGlsLlRyeUdldFZhbHVlKFxuICAgICAgICAgICAgdGhpcy5jb25maWcsXG4gICAgICAgICAgICAnRmllbGRVaS5TZXR0aW5nLkNsYXNzTmFtZXMuQ3VzdG9tVWkuUGFyYW1ldGVycy4nICsgZGV2aWNlSGVpZ2h0LFxuICAgICAgICAgICAgJ2F1dG8nXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICAgIHByZXBhcmVNaW5BbmRNYXhTaXplKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBjb25maWcgPSB0aGlzLmNvbmZpZztcbiAgICAgICAgY29uc3QgbGF5b3V0SW5mbyA9IGNvbmZpZztcbiAgICAgICAgY29uc3QgaXNCdXR0b24gPSB0aGlzLmlzQnV0dG9uO1xuICAgICAgICBjb25zdCBpc1NpbmdsZVBpY3R1cmUgPSB0aGlzLmlzU2luZ2xlUGljdHVyZTtcbiAgICAgICAgY29uc3QgaXNDaGVja2JveCA9IHRoaXMuaXNDaGVja2JveDtcbiAgICAgICAgaWYgKCF0aGlzLmlubGluZUVkaXQgJiYgbGF5b3V0SW5mbyAmJiAoaXNCdXR0b24gfHwgaXNDaGVja2JveCB8fCBpc1NpbmdsZVBpY3R1cmUpKSB7XG4gICAgICAgICAgICB0aGlzLmF0dHJNaW5XaWR0aCA9IGNvbmZpZy5Cb3VuZHMud2lkdGg7XG4gICAgICAgICAgICBsZXQgZXh0cmFWYWwgPSAwO1xuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICgoaXNCdXR0b24gfHwgaXNDaGVja2JveCkgJiYgbGF5b3V0SW5mby5GaWVsZFVpLlNldHRpbmc/LkZpZWxkSWNvbikgfHxcbiAgICAgICAgICAgICAgICBsYXlvdXRJbmZvLkZpZWxkVWkuU2V0dGluZy5Kc29uRXh0cmFQcm9wPy5HbHlwaFxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgZXh0cmFWYWwgPSAxODtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHsgTWF4U2l6ZSwgTWluU2l6ZSB9ID0gbGF5b3V0SW5mbztcbiAgICAgICAgICAgIGlmIChNYXhTaXplPy53aWR0aCA+IDAgJiYgIXRoaXMuaXNDaGVja2JveCkge1xuICAgICAgICAgICAgICAgIHRoaXMubWF4V2lkdGggPSBNYXhTaXplLndpZHRoICsgZXh0cmFWYWwgKyAncHgnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKE1pblNpemU/LndpZHRoID4gMCkge1xuICAgICAgICAgICAgICAgIHRoaXMubWluV2lkdGggPSBNaW5TaXplLndpZHRoICsgZXh0cmFWYWwgKyAncHgnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmlzU2VhcmNoUGFuZWwpIHtcbiAgICAgICAgICAgIHRoaXMuYXR0ck1pbldpZHRoID0gdGhpcy5tYXhMYWJlbFdpZHRoICsgMjAwO1xuXG4gICAgICAgICAgICB0aGlzLm1heFdpZHRoID0gJzMyMHB4JztcbiAgICAgICAgfVxuICAgICAgICBpZiAoZ2V0RGV2aWNlSXNNb2JpbGUoKSkge1xuICAgICAgICAgICAgdGhpcy5taW5XaWR0aCA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyogZXNsaW50LWRpc2FibGUgKi9cbiAgICBASW5wdXQoKSBSZWZyZXNoTGFiZWwgPSAoKSA9PiB7fTtcbiAgICAvKiBlc2xpbnQtZGlzYWJsZSAqL1xuICAgIEBJbnB1dCgpIFNldFZpc2libGUgPSAodmlzaWJsZSwgcmVmcmVzaCkgPT4ge1xuICAgICAgICB0aGlzLl9uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX3NldEhpZGUoIXZpc2libGUpO1xuICAgICAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfSk7XG4gICAgfTtcbiAgICBwcml2YXRlIF9zZXRIaWRlKGhpZGU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgaGlkZSA9IHRoaXMuY29uZmlnLkZpZWxkVWkuU2V0dGluZy5IaWRlU2VhcmNoQ29tbWFuZEluZm9VaSA9PT0gdHJ1ZSA/IHRydWUgOiBoaWRlOyAvLyBoaWRlIGRlZmF1bHQgYnV0dG9ucyBvZiBzZWFyY2ggcGFuZWxcbiAgICAgICAgdGhpcy5oaWRlID0gaGlkZTtcbiAgICAgICAgaWYgKGhpZGUpIHtcbiAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyMi5hZGRDbGFzcyh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICdoaWRlLWZvcm0taXRlbScpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fcmVuZGVyZXIyLnJlbW92ZUNsYXNzKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ2hpZGUtZm9ybS1pdGVtJyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcHJpdmF0ZSBfc2V0RmxleChmbGV4OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgaWYgKHR5cGVvZiBmbGV4ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgdGhpcy5fcmVuZGVyZXIyLnNldFN0eWxlKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ2ZsZXgnLCBmbGV4KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCIhaGlkZVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsYWJlbFZpc2libGUgJiYgIWlzQ2hlY2tib3hcIj5cbiAgICAgICAgPGJzdS1seS1sYWJlbFxuICAgICAgICAgICAgW2F0dHIubGFiZWxXaWR0aF09XCJsYWJlbFdpZHRoXCJcbiAgICAgICAgICAgIFthdHRyLmNhbnZhc1dpZHRoXT1cImNhbnZhc1dpZHRoXCJcbiAgICAgICAgICAgIFthdHRyUnRsXVxuICAgICAgICAgICAgW2NsYXNzLm5vLXBhZGRpbmddPVwiY29uZmlnLlBhZGRpbmdbMF0gPT09IDBcIlxuICAgICAgICAgICAgW2NvbmZpZ109XCJjb25maWdcIlxuICAgICAgICAgICAgW2NhcHRpb25dPVwibGFiZWxDYXB0aW9uXCJcbiAgICAgICAgICAgIFtvcmlnaW5hbFdpZHRoXT1cImxhYmVsV2lkdGhcIlxuICAgICAgICAgICAgW3N0eWxlLm1pbi13aWR0aF09XCJcbiAgICAgICAgICAgICAgICBpc0NoZWNrYm94ID8gJ2F1dG8nIDogaXNDb2x1bW5EaXJlY3Rpb24gfHwgaXNDb2x1bW5SZXZlcnNlRGlyZWN0aW9uID8gJzEwMCUnIDogbWF4TGFiZWxXaWR0aCArICdweCdcbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgICBbc3R5bGUud2lkdGhdPVwiXG4gICAgICAgICAgICAgICAgaXNDaGVja2JveCA/ICdhdXRvJyA6IGlzQ29sdW1uRGlyZWN0aW9uIHx8IGlzQ29sdW1uUmV2ZXJzZURpcmVjdGlvbiA/ICcxMDAlJyA6IG1heExhYmVsV2lkdGggKyAncHgnXG4gICAgICAgICAgICBcIlxuICAgICAgICAgICAgW2lzTWFuZGF0b3J5XT1cImlzTWFuZGF0b3J5XCJcbiAgICAgICAgICAgIFtmaWVsZEljb25dPVwiZmllbGRJY29uXCJcbiAgICAgICAgICAgIFtvcmlnaW5hbFh0eXBlXT1cIm9yaWdpbmFsWHR5cGVcIlxuICAgICAgICAgICAgW3RleHRWaXNpYmxlXT1cInRleHRWaXNpYmxlXCJcbiAgICAgICAgICAgIFtpc0NvbHVtbl09XCJpc0NvbHVtbkRpcmVjdGlvbiB8fCBpc0NvbHVtblJldmVyc2VEaXJlY3Rpb25cIlxuICAgICAgICA+PC9ic3UtbHktbGFiZWw+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGxhYmVsIFthdHRyLnZpc2libGVdPVwibGFiZWxWaXNpYmxlXCIgY2xhc3M9XCJob3Jpem9udGFsLWxhYmVsXCIgW2lubmVySHRtbF09XCJlbXB0eVRleHRcIj48L2xhYmVsPlxuICAgIDxibnJjLWZpZWxkLXVpXG4gICAgICAgIFthdHRyLnh0eXBlXT1cImNvbmZpZy5GaWVsZFVpLm9yaWdpbmFsWHR5cGVcIlxuICAgICAgICBbYXR0ci5maWVsZFdpZHRoXT1cImxheW91dENvbnRyb2xXaWR0aFwiXG4gICAgICAgIFthdHRyLmlzQ2hlY2tib3hdPVwiaXNDaGVja2JveFwiXG4gICAgICAgIFtzdHlsZS5mbGV4LWdyb3ddPVwiaXNDaGVja2JveCA/IDEgOiAwXCJcbiAgICAgICAgW2NsYXNzLm5vLXBhZGRpbmddPVwiY29uZmlnLlBhZGRpbmdbMF0gPT09IDBcIlxuICAgICAgICBbY3VzdG9tRmllbGRdPVwiY29uZmlnLkZpZWxkVWlcIlxuICAgICAgICBbbGF5b3V0SW5mb109XCJjb25maWdcIlxuICAgICAgICBbaW5saW5lRWRpdF09XCJpbmxpbmVFZGl0XCJcbiAgICAgICAgW2ZvY3VzQ29udHJvbF09XCJmb2N1c0NvbnRyb2xcIlxuICAgICAgICBbaXNTZWFyY2hQYW5lbF09XCJpc1NlYXJjaFBhbmVsXCJcbiAgICAgICAgW3N0eWxlLmhlaWdodF09XCJpc1VsdiA/ICcxMDAlJyA6ICdhdXRvJ1wiXG4gICAgICAgIFthdHRyLmlzdWx2XT1cImlzVWx2XCJcbiAgICA+PC9ibnJjLWZpZWxkLXVpPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
229
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWNvbnRyb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvbGF5b3V0LWNvbnRyb2wvbGF5b3V0LWNvbnRyb2wuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvbGF5b3V0LWNvbnRyb2wvbGF5b3V0LWNvbnRyb2wuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxVQUFVLEVBQ1YsV0FBVyxFQUNYLEtBQUssRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBTTFCLE1BQU0sZUFBZSxDQUFDO0FBS3ZCLE9BQU8sRUFDSCxRQUFRLEVBQ1IsdUJBQXVCLEVBQ3ZCLGFBQWEsRUFFYixpQkFBaUIsRUFFcEIsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7OztBQVM5QixNQUFNLE9BQU8sc0JBQXVCLFNBQVEsdUJBQXVCO0lBK0MvRCxZQUNjLGdCQUFrQyxFQUNyQyxFQUFjLEVBQ3JCLHNCQUE2QyxFQUNuQyxZQUEwQixFQUMxQixJQUF1QixFQUN2QixPQUFlLEVBQ2YsVUFBcUIsRUFDckIsYUFBK0I7UUFFekMsS0FBSyxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxDQUFDO1FBVHBCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDckMsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUVYLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLFNBQUksR0FBSixJQUFJLENBQW1CO1FBQ3ZCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDZixlQUFVLEdBQVYsVUFBVSxDQUFXO1FBQ3JCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQjtRQWpEUix1QkFBa0IsR0FBRyxJQUFJLENBQUM7UUFLekIsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFJeEIsY0FBUyxHQUFHLFNBQVMsQ0FBQztRQWdCdkQsU0FBSSxHQUFHLElBQUksQ0FBQztRQWNaLGNBQVMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLHVCQUF1QixDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBMkhqRSxvQkFBb0I7UUFDWCxpQkFBWSxHQUFHLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUNqQyxvQkFBb0I7UUFDWCxlQUFVLEdBQUcsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEVBQUU7WUFDdkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO2dCQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDOUIsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUM7UUF0SEUsSUFBSSxJQUFJLENBQUMsY0FBYyxLQUFLLFNBQVMsRUFBRTtZQUNuQyxJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQztTQUMzQjtJQUNMLENBQUM7SUFDRCxXQUFXLENBQUMsT0FBc0I7UUFDOUIsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMzQixNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQ3pCLElBQUksSUFBSSxFQUFFO1lBQ04sSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7U0FDcEM7SUFDTCxDQUFDO0lBQ0QsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDakIsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUM7U0FDM0I7UUFDRCxJQUFJLENBQUMsa0JBQWtCLEdBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUE2QixDQUFDLFdBQVcsQ0FBQztRQUM3RSxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzNCLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEtBQUssY0FBYyxFQUFFO1lBQ2pELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1NBQ3JCO1FBQ0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEtBQUssV0FBVyxDQUFDO1FBQzdELElBQUksWUFBWSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDbEMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxXQUFXLEVBQUU7WUFDckMsSUFBSSxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDL0IsWUFBWSxHQUFHLFlBQVksR0FBRyxJQUFJLENBQUM7YUFDdEM7U0FDSjthQUFNO1lBQ0gsWUFBWSxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQ2hEO1FBRUQsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLGFBQWEsS0FBSyxhQUFhLENBQUM7UUFDakUsSUFBSSxDQUFDLGVBQWUsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLGFBQWEsS0FBSyxrQkFBa0IsQ0FBQztRQUMzRSxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztRQUMxRyxJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxLQUFLLENBQUM7UUFFbkUsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUMsWUFBWSxLQUFLLE9BQU8sSUFBSSxNQUFNLENBQUMsWUFBWSxLQUFLLFNBQVMsQ0FBQztRQUMzRixJQUFJLENBQUMscUJBQXFCLEdBQUcsTUFBTSxDQUFDLFlBQVksS0FBSyxNQUFNLENBQUM7UUFDNUQsSUFBSSxDQUFDLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxZQUFZLEtBQUssS0FBSyxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDN0UsSUFBSSxDQUFDLHdCQUF3QixHQUFHLE1BQU0sQ0FBQyxZQUFZLEtBQUssUUFBUSxDQUFDO1FBRWpFLE1BQU0sQ0FBQyxPQUFPLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztRQUVwQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekUsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUM7UUFDdkQsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFDbEQsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQztRQUNsRCxJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDdEMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLGFBQWEsS0FBSyx3QkFBd0IsRUFBRTtZQUMzRCxJQUFJLENBQUMsWUFBWSxHQUFHLFNBQVMsQ0FBQztZQUM5QixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztZQUN6QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztTQUMzQjtRQUNELElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFDRCxrQkFBa0IsQ0FBQyxNQUFNO1FBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2IsT0FBTztTQUNWO1FBQ0QsSUFBSSxZQUFZLEdBQUcsZUFBZSxDQUFDO1FBQ25DLFFBQVEsTUFBTSxFQUFFO1lBQ1osS0FBSyxHQUFHO2dCQUNKLFlBQVksR0FBRyxjQUFjLENBQUM7Z0JBQzlCLE1BQU07WUFDVixLQUFLLEdBQUc7Z0JBQ0osWUFBWSxHQUFHLGNBQWMsQ0FBQztnQkFDOUIsTUFBTTtTQUNiO1FBQ0QsSUFBSSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQzFDLElBQUksQ0FBQyxNQUFNLEVBQ1gsaURBQWlELEdBQUcsWUFBWSxFQUNoRSxNQUFNLENBQ1QsQ0FBQztRQUNGLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUNELG9CQUFvQjtRQUNoQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzNCLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQztRQUMxQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQy9CLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7UUFDN0MsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUNuQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxVQUFVLElBQUksQ0FBQyxRQUFRLElBQUksVUFBVSxJQUFJLGVBQWUsQ0FBQyxFQUFFO1lBQy9FLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFDeEMsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFDO1lBQ2pCLElBQ0ksQ0FBQyxDQUFDLFFBQVEsSUFBSSxVQUFVLENBQUMsSUFBSSxVQUFVLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUM7Z0JBQ25FLFVBQVUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxLQUFLLEVBQ2pEO2dCQUNFLFFBQVEsR0FBRyxFQUFFLENBQUM7YUFDakI7WUFDRCxNQUFNLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLFVBQVUsQ0FBQztZQUN4QyxJQUFJLE9BQU8sRUFBRSxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDeEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsS0FBSyxHQUFHLFFBQVEsR0FBRyxJQUFJLENBQUM7YUFDbkQ7WUFDRCxJQUFJLE9BQU8sRUFBRSxLQUFLLEdBQUcsQ0FBQyxFQUFFO2dCQUNwQixJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxLQUFLLEdBQUcsUUFBUSxHQUFHLElBQUksQ0FBQzthQUNuRDtTQUNKO1FBQ0QsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3BCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLENBQUM7WUFFN0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7U0FDM0I7UUFDRCxJQUFJLGlCQUFpQixFQUFFLEVBQUU7WUFDckIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7U0FDeEI7SUFDTCxDQUFDO0lBVU8sUUFBUSxDQUFDLElBQWE7UUFDMUIsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyx1QkFBdUIsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsdUNBQXVDO1FBQzFILElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksSUFBSSxFQUFFO1lBQ04sSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztTQUNyRTthQUFNO1lBQ0gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztTQUN4RTtJQUNMLENBQUM7SUFDTyxRQUFRLENBQUMsSUFBWTtRQUN6QixJQUFJLE9BQU8sSUFBSSxLQUFLLFdBQVcsRUFBRTtZQUM3QixJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7U0FDakU7SUFDTCxDQUFDOzttSEE5TFEsc0JBQXNCO3VHQUF0QixzQkFBc0Iscy9CQUhwQixDQUFDLGFBQWEsQ0FBQyx1TkFNUyxVQUFVLHVGQ3BDakQsaXhEQXVDQTsyRkROYSxzQkFBc0I7a0JBUGxDLFNBQVM7K0JBQ0ksb0JBQW9CLGFBR25CLENBQUMsYUFBYSxDQUFDLG1CQUNULHVCQUF1QixDQUFDLE1BQU07MlNBSS9DLFNBQVM7c0JBRFIsU0FBUzt1QkFBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUdyQyxZQUFZO3NCQURYLFNBQVM7dUJBQUMsY0FBYyxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUd4QixrQkFBa0I7c0JBQXRELFdBQVc7dUJBQUMsc0JBQXNCO2dCQUNDLGNBQWM7c0JBQWpELFdBQVc7dUJBQUMscUJBQXFCO2dCQUNVLHFCQUFxQjtzQkFBaEUsV0FBVzt1QkFBQyw2QkFBNkI7Z0JBQ0gsaUJBQWlCO3NCQUF2RCxXQUFXO3VCQUFDLHdCQUF3QjtnQkFDVSx3QkFBd0I7c0JBQXRFLFdBQVc7dUJBQUMsZ0NBQWdDO2dCQUNQLFdBQVc7c0JBQWhELFdBQVc7dUJBQUMsdUJBQXVCO2dCQUVKLFFBQVE7c0JBQXZDLFdBQVc7dUJBQUMsaUJBQWlCO2dCQUNFLFFBQVE7c0JBQXZDLFdBQVc7dUJBQUMsaUJBQWlCO2dCQUNHLFNBQVM7c0JBQXpDLFdBQVc7dUJBQUMsa0JBQWtCO2dCQUNGLE1BQU07c0JBQWxDLFdBQVc7dUJBQUMsY0FBYztnQkFDSSxVQUFVO3NCQUF4QyxXQUFXO3VCQUFDLGdCQUFnQjtnQkFDQyxRQUFRO3NCQUFyQyxXQUFXO3VCQUFDLGVBQWU7Z0JBQ0UsZUFBZTtzQkFBNUMsV0FBVzt1QkFBQyxlQUFlO2dCQUNFLFlBQVk7c0JBQXpDLFdBQVc7dUJBQUMsZUFBZTtnQkFDRyxhQUFhO3NCQUEzQyxXQUFXO3VCQUFDLGdCQUFnQjtnQkFDQSxXQUFXO3NCQUF2QyxXQUFXO3VCQUFDLGNBQWM7Z0JBQ2xCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkEySUcsWUFBWTtzQkFBcEIsS0FBSztnQkFFRyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICAgIENvbXBvbmVudCxcclxuICAgIEVsZW1lbnRSZWYsXHJcbiAgICBIb3N0QmluZGluZyxcclxuICAgIElucHV0LFxyXG4gICAgVmlld0NoaWxkLFxyXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIE5nWm9uZSxcclxuICAgIFJlbmRlcmVyMixcclxuICAgIE9uSW5pdCxcclxuICAgIFNpbXBsZUNoYW5nZXNcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlSHRtbCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ29udGVudERlbnNpdHksIENvbnRlbnREZW5zaXR5U2VydmljZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XHJcblxyXG5pbXBvcnQge1xyXG4gICAgQmFyc2FBcGksXHJcbiAgICBMYXlvdXRJdGVtQmFzZUNvbXBvbmVudCxcclxuICAgIExheW91dFNlcnZpY2UsXHJcbiAgICBGb3JtUGFuZWxTZXJ2aWNlLFxyXG4gICAgZ2V0RGV2aWNlSXNNb2JpbGUsXHJcbiAgICBCYmJUcmFuc2xhdGVQaXBlXHJcbn0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2JzdS1sYXlvdXQtY29udHJvbCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vbGF5b3V0LWNvbnRyb2wuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vbGF5b3V0LWNvbnRyb2wuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIHByb3ZpZGVyczogW0xheW91dFNlcnZpY2VdLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIExheW91dENvbnRyb2xDb21wb25lbnQgZXh0ZW5kcyBMYXlvdXRJdGVtQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgICBAVmlld0NoaWxkKCdjYW52YXMnLCB7IHN0YXRpYzogdHJ1ZSB9KVxyXG4gICAgY2FudmFzUmVmOiBFbGVtZW50UmVmO1xyXG4gICAgQFZpZXdDaGlsZCgndGVtcExhYmVsUmVmJywgeyByZWFkOiBFbGVtZW50UmVmLCBzdGF0aWM6IHRydWUgfSlcclxuICAgIHRlbXBMYWJlbFJlZjogRWxlbWVudFJlZjtcclxuXHJcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmxheW91dC1jb250cm9sJykgbGF5b3V0Q29udHJvbENsYXNzID0gdHJ1ZTtcclxuICAgIEBIb3N0QmluZGluZygnY2xhc3Mucm93LWRpcmVjdGlvbicpIGlzUm93RGlyZWN0aW9uO1xyXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5yb3ctcmV2ZXJzZS1kaXJlY3Rpb24nKSBpc1Jvd1JldmVyc2VEaXJlY3Rpb247XHJcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmNvbHVtbi1kaXJlY3Rpb24nKSBpc0NvbHVtbkRpcmVjdGlvbjtcclxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuY29sdW1uLXJldmVyc2UtZGlyZWN0aW9uJykgaXNDb2x1bW5SZXZlcnNlRGlyZWN0aW9uO1xyXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jb250YWluZXItZmllbGQnKSBpc0NvbnRhaW5lciA9IHRydWU7XHJcbiAgICAvLyBASG9zdEJpbmRpbmcoJ3N0eWxlLnZpc2liaWxpdHknKSB2aXNpYmlsaXR5OiBzdHJpbmc7XHJcbiAgICBASG9zdEJpbmRpbmcoJ3N0eWxlLm1heC13aWR0aCcpIG1heFdpZHRoO1xyXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS5taW4td2lkdGgnKSBtaW5XaWR0aDtcclxuICAgIEBIb3N0QmluZGluZygnc3R5bGUubWluLWhlaWdodCcpIG1pbkhlaWdodCA9ICcyLjI1cmVtJztcclxuICAgIEBIb3N0QmluZGluZygnc3R5bGUuaGVpZ2h0JykgaGVpZ2h0O1xyXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmlzQ2hla2JveCcpIGlzQ2hlY2tib3g7XHJcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuaXNCdXR0b24nKSBpc0J1dHRvbjtcclxuICAgIEBIb3N0QmluZGluZygnYXR0ci5pc0J1dHRvbicpIGlzU2luZ2xlUGljdHVyZTtcclxuICAgIEBIb3N0QmluZGluZygnYXR0ci5taW5XaWR0aCcpIGF0dHJNaW5XaWR0aDtcclxuICAgIEBIb3N0QmluZGluZygnYXR0ci5jb250cm9sSWQnKSBhdHRyQ29udHJvbElkO1xyXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmNhcHRpb24nKSBhdHRyQ2FwdGlvbjtcclxuICAgIEBJbnB1dCgpIGlubGluZUVkaXQ6IGJvb2xlYW47XHJcbiAgICBASW5wdXQoKSBjYXB0aW9uOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBmb2N1c0NvbnRyb2w6IGJvb2xlYW47XHJcbiAgICBASW5wdXQoKSBzaG93TGFiZWw6IGJvb2xlYW47XHJcbiAgICBASW5wdXQoKSBtYXhMYWJlbFdpZHRoOiBudW1iZXI7XHJcbiAgICBASW5wdXQoKSBoYXNIb3Jpem9udGFsVGV4dDogYm9vbGVhbjtcclxuICAgIEBJbnB1dCgpIGNvbnRlbnREZW5zaXR5OiBDb250ZW50RGVuc2l0eTtcclxuICAgIEBJbnB1dCgpIGZsZXg6IHN0cmluZztcclxuICAgIGhpZGUgPSB0cnVlO1xyXG4gICAgbGF5b3V0U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcbiAgICB3cmFwQ29udGVudDogYm9vbGVhbjtcclxuICAgIGxhYmVsV2lkdGg6IG51bWJlcjtcclxuICAgIGxhYmVsQ2FwdGlvbjogc3RyaW5nIHwgU2FmZUh0bWw7XHJcbiAgICBsYWJlbFZpc2libGU/OiBib29sZWFuO1xyXG4gICAgbGF5b3V0U2V0U2l6ZTogYm9vbGVhbjtcclxuICAgIHJ0bCQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcbiAgICBpc1VsdjogYm9vbGVhbjtcclxuICAgIGNhbnZhc1dpZHRoOiBudW1iZXI7XHJcbiAgICBpc01hbmRhdG9yeTogYm9vbGVhbjtcclxuICAgIGZpZWxkSWNvbjogc3RyaW5nO1xyXG4gICAgb3JpZ2luYWxYdHlwZTogc3RyaW5nO1xyXG4gICAgdGV4dFZpc2libGU6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XHJcbiAgICBlbXB0eVRleHQgPSB0aGlzLmRvbVNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbCgnJiM4MjAzOycpO1xyXG4gICAgbGF5b3V0Q29udHJvbFdpZHRoOiBudW1iZXI7XHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcm90ZWN0ZWQgZm9ybVBhbmVsU2VydmljZTogRm9ybVBhbmVsU2VydmljZSxcclxuICAgICAgICBwdWJsaWMgZWw6IEVsZW1lbnRSZWYsXHJcbiAgICAgICAgX2NvbnRlbnREZW5zaXR5U2VydmljZTogQ29udGVudERlbnNpdHlTZXJ2aWNlLFxyXG4gICAgICAgIHByb3RlY3RlZCBkb21TYW5pdGl6ZXI6IERvbVNhbml0aXplcixcclxuICAgICAgICBwcm90ZWN0ZWQgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICAgICAgcHJvdGVjdGVkIF9uZ1pvbmU6IE5nWm9uZSxcclxuICAgICAgICBwcm90ZWN0ZWQgX3JlbmRlcmVyMjogUmVuZGVyZXIyLFxyXG4gICAgICAgIHByb3RlY3RlZCBfYmJiVHJhbnNsYXRlOiBCYmJUcmFuc2xhdGVQaXBlXHJcbiAgICApIHtcclxuICAgICAgICBzdXBlcihmb3JtUGFuZWxTZXJ2aWNlLCBfY2RyKTtcclxuICAgICAgICBpZiAodGhpcy5jb250ZW50RGVuc2l0eSA9PT0gJ2NvbXBhY3QnKSB7XHJcbiAgICAgICAgICAgIHRoaXMubWluSGVpZ2h0ID0gJzJyZW0nO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uQ2hhbmdlcyhjaGFuZ2VzKTtcclxuICAgICAgICBjb25zdCB7IGZsZXggfSA9IGNoYW5nZXM7XHJcbiAgICAgICAgaWYgKGZsZXgpIHtcclxuICAgICAgICAgICAgdGhpcy5fc2V0RmxleChmbGV4LmN1cnJlbnRWYWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgICAgICB0aGlzLl9zZXRGbGV4KHRoaXMuZmxleCk7XHJcbiAgICAgICAgaWYgKHRoaXMuaW5saW5lRWRpdCkge1xyXG4gICAgICAgICAgICB0aGlzLm1pbkhlaWdodCA9ICdhdXRvJztcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5sYXlvdXRDb250cm9sV2lkdGggPSAodGhpcy5lbC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5jbGllbnRXaWR0aDtcclxuICAgICAgICBjb25zdCBjb25maWcgPSB0aGlzLmNvbmZpZztcclxuICAgICAgICBpZiAoY29uZmlnLkZpZWxkVWkub3JpZ2luYWxYdHlwZSA9PT0gJ1VpLlVsdk1haW5VaScpIHtcclxuICAgICAgICAgICAgdGhpcy5pc1VsdiA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuYXR0ckNhcHRpb24gPSBjb25maWcuQ2FwdGlvbi5yZXBsYWNlKCc6JywgJycpO1xyXG4gICAgICAgIHRoaXMuYXR0ckNvbnRyb2xJZCA9IGNvbmZpZy5Db250cm9sSWQ7XHJcbiAgICAgICAgdGhpcy5pc0J1dHRvbiA9IGNvbmZpZy5GaWVsZFVpLm9yaWdpbmFsWHR5cGUgPT09ICdVaS5CdXR0b24nO1xyXG4gICAgICAgIGxldCBsYWJlbENhcHRpb24gPSBjb25maWcuQ2FwdGlvbjtcclxuICAgICAgICBpZiAoY29uZmlnLkZpZWxkVWkuU2V0dGluZz8uSXNNYW5kYXRvcnkpIHtcclxuICAgICAgICAgICAgaWYgKGxhYmVsQ2FwdGlvbi5pbmRleE9mKCcqJykgPCAwKSB7XHJcbiAgICAgICAgICAgICAgICBsYWJlbENhcHRpb24gPSBsYWJlbENhcHRpb24gKyAnIConO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgbGFiZWxDYXB0aW9uID0gbGFiZWxDYXB0aW9uLnJlcGxhY2UoJyonLCAnJyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmlzQ2hlY2tib3ggPSBjb25maWcuRmllbGRVaS5vcmlnaW5hbFh0eXBlID09PSAnVWkuQ2hlY2tCb3gnO1xyXG4gICAgICAgIHRoaXMuaXNTaW5nbGVQaWN0dXJlID0gY29uZmlnLkZpZWxkVWkub3JpZ2luYWxYdHlwZSA9PT0gJ1VpLlNpbmdsZVBpY3R1cmUnO1xyXG4gICAgICAgIHRoaXMubGFiZWxDYXB0aW9uID0gdGhpcy5kb21TYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwodGhpcy5fYmJiVHJhbnNsYXRlLnRyYW5zZm9ybShsYWJlbENhcHRpb24pKTtcclxuICAgICAgICB0aGlzLmxhYmVsVmlzaWJsZSA9IGNvbmZpZy5UZXh0VmlzaWJsZSAmJiB0aGlzLnNob3dMYWJlbCAhPT0gZmFsc2U7XHJcblxyXG4gICAgICAgIHRoaXMuaXNSb3dEaXJlY3Rpb24gPSBjb25maWcuVGV4dExvY2F0aW9uID09PSAnUmlnaHQnIHx8IGNvbmZpZy5UZXh0TG9jYXRpb24gPT09ICdEZWZhdWx0JztcclxuICAgICAgICB0aGlzLmlzUm93UmV2ZXJzZURpcmVjdGlvbiA9IGNvbmZpZy5UZXh0TG9jYXRpb24gPT09ICdMZWZ0JztcclxuICAgICAgICB0aGlzLmlzQ29sdW1uRGlyZWN0aW9uID0gY29uZmlnLlRleHRMb2NhdGlvbiA9PT0gJ1RvcCcgfHwgdGhpcy5pc1NlYXJjaFBhbmVsO1xyXG4gICAgICAgIHRoaXMuaXNDb2x1bW5SZXZlcnNlRGlyZWN0aW9uID0gY29uZmlnLlRleHRMb2NhdGlvbiA9PT0gJ0JvdHRvbSc7XHJcblxyXG4gICAgICAgIGNvbmZpZy5GaWVsZFVpLkxheW91dENvbnRyb2wgPSB0aGlzO1xyXG5cclxuICAgICAgICB0aGlzLl9zZXRIaWRlKGNvbmZpZy5GaWVsZFVpLlNldHRpbmcuSXNWaXNpYmxlID09PSBmYWxzZSA/IHRydWUgOiBmYWxzZSk7XHJcbiAgICAgICAgdGhpcy5pc01hbmRhdG9yeSA9IGNvbmZpZy5GaWVsZFVpLlNldHRpbmc/LklzTWFuZGF0b3J5O1xyXG4gICAgICAgIHRoaXMuZmllbGRJY29uID0gY29uZmlnLkZpZWxkVWkuU2V0dGluZy5GaWVsZEljb247XHJcbiAgICAgICAgdGhpcy5vcmlnaW5hbFh0eXBlID0gY29uZmlnLkZpZWxkVWkub3JpZ2luYWxYdHlwZTtcclxuICAgICAgICB0aGlzLnRleHRWaXNpYmxlID0gY29uZmlnLlRleHRWaXNpYmxlO1xyXG4gICAgICAgIGlmIChjb25maWcuRmllbGRVaS5vcmlnaW5hbFh0eXBlID09PSAnVWkuU2VhcmNoQ29tbWFuZEluZm9VaScpIHtcclxuICAgICAgICAgICAgdGhpcy5sYWJlbENhcHRpb24gPSAnJiM4MjAzOyc7XHJcbiAgICAgICAgICAgIHRoaXMubGFiZWxWaXNpYmxlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy50ZXh0VmlzaWJsZSA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMucHJlcGFyZU1pbkFuZE1heFNpemUoKTtcclxuICAgIH1cclxuICAgIF9yZXNpemVVbHZCeURldmljZShkZXZpY2UpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXRoaXMuaXNVbHYpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBsZXQgZGV2aWNlSGVpZ2h0ID0gJ0Rlc2t0b3BIZWlnaHQnO1xyXG4gICAgICAgIHN3aXRjaCAoZGV2aWNlKSB7XHJcbiAgICAgICAgICAgIGNhc2UgJ3MnOlxyXG4gICAgICAgICAgICAgICAgZGV2aWNlSGVpZ2h0ID0gJ01vYmlsZUhlaWdodCc7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSAnbSc6XHJcbiAgICAgICAgICAgICAgICBkZXZpY2VIZWlnaHQgPSAnVGFibGV0SGVpZ2h0JztcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmhlaWdodCA9IEJhcnNhQXBpLkNvbW1vbi5VdGlsLlRyeUdldFZhbHVlKFxyXG4gICAgICAgICAgICB0aGlzLmNvbmZpZyxcclxuICAgICAgICAgICAgJ0ZpZWxkVWkuU2V0dGluZy5DbGFzc05hbWVzLkN1c3RvbVVpLlBhcmFtZXRlcnMuJyArIGRldmljZUhlaWdodCxcclxuICAgICAgICAgICAgJ2F1dG8nXHJcbiAgICAgICAgKTtcclxuICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG4gICAgcHJlcGFyZU1pbkFuZE1heFNpemUoKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgY29uZmlnID0gdGhpcy5jb25maWc7XHJcbiAgICAgICAgY29uc3QgbGF5b3V0SW5mbyA9IGNvbmZpZztcclxuICAgICAgICBjb25zdCBpc0J1dHRvbiA9IHRoaXMuaXNCdXR0b247XHJcbiAgICAgICAgY29uc3QgaXNTaW5nbGVQaWN0dXJlID0gdGhpcy5pc1NpbmdsZVBpY3R1cmU7XHJcbiAgICAgICAgY29uc3QgaXNDaGVja2JveCA9IHRoaXMuaXNDaGVja2JveDtcclxuICAgICAgICBpZiAoIXRoaXMuaW5saW5lRWRpdCAmJiBsYXlvdXRJbmZvICYmIChpc0J1dHRvbiB8fCBpc0NoZWNrYm94IHx8IGlzU2luZ2xlUGljdHVyZSkpIHtcclxuICAgICAgICAgICAgdGhpcy5hdHRyTWluV2lkdGggPSBjb25maWcuQm91bmRzLndpZHRoO1xyXG4gICAgICAgICAgICBsZXQgZXh0cmFWYWwgPSAwO1xyXG4gICAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgICAgICAoKGlzQnV0dG9uIHx8IGlzQ2hlY2tib3gpICYmIGxheW91dEluZm8uRmllbGRVaS5TZXR0aW5nPy5GaWVsZEljb24pIHx8XHJcbiAgICAgICAgICAgICAgICBsYXlvdXRJbmZvLkZpZWxkVWkuU2V0dGluZy5Kc29uRXh0cmFQcm9wPy5HbHlwaFxyXG4gICAgICAgICAgICApIHtcclxuICAgICAgICAgICAgICAgIGV4dHJhVmFsID0gMTg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgY29uc3QgeyBNYXhTaXplLCBNaW5TaXplIH0gPSBsYXlvdXRJbmZvO1xyXG4gICAgICAgICAgICBpZiAoTWF4U2l6ZT8ud2lkdGggPiAwICYmICF0aGlzLmlzQ2hlY2tib3gpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubWF4V2lkdGggPSBNYXhTaXplLndpZHRoICsgZXh0cmFWYWwgKyAncHgnO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmIChNaW5TaXplPy53aWR0aCA+IDApIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubWluV2lkdGggPSBNaW5TaXplLndpZHRoICsgZXh0cmFWYWwgKyAncHgnO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLmlzU2VhcmNoUGFuZWwpIHtcclxuICAgICAgICAgICAgdGhpcy5hdHRyTWluV2lkdGggPSB0aGlzLm1heExhYmVsV2lkdGggKyAyMDA7XHJcblxyXG4gICAgICAgICAgICB0aGlzLm1heFdpZHRoID0gJzMyMHB4JztcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGdldERldmljZUlzTW9iaWxlKCkpIHtcclxuICAgICAgICAgICAgdGhpcy5taW5XaWR0aCA9IG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLyogZXNsaW50LWRpc2FibGUgKi9cclxuICAgIEBJbnB1dCgpIFJlZnJlc2hMYWJlbCA9ICgpID0+IHt9O1xyXG4gICAgLyogZXNsaW50LWRpc2FibGUgKi9cclxuICAgIEBJbnB1dCgpIFNldFZpc2libGUgPSAodmlzaWJsZSwgcmVmcmVzaCkgPT4ge1xyXG4gICAgICAgIHRoaXMuX25nWm9uZS5ydW4oKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl9zZXRIaWRlKCF2aXNpYmxlKTtcclxuICAgICAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB9KTtcclxuICAgIH07XHJcbiAgICBwcml2YXRlIF9zZXRIaWRlKGhpZGU6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgICAgICBoaWRlID0gdGhpcy5jb25maWcuRmllbGRVaS5TZXR0aW5nLkhpZGVTZWFyY2hDb21tYW5kSW5mb1VpID09PSB0cnVlID8gdHJ1ZSA6IGhpZGU7IC8vIGhpZGUgZGVmYXVsdCBidXR0b25zIG9mIHNlYXJjaCBwYW5lbFxyXG4gICAgICAgIHRoaXMuaGlkZSA9IGhpZGU7XHJcbiAgICAgICAgaWYgKGhpZGUpIHtcclxuICAgICAgICAgICAgdGhpcy5fcmVuZGVyZXIyLmFkZENsYXNzKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ2hpZGUtZm9ybS1pdGVtJyk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5fcmVuZGVyZXIyLnJlbW92ZUNsYXNzKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ2hpZGUtZm9ybS1pdGVtJyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBfc2V0RmxleChmbGV4OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgICBpZiAodHlwZW9mIGZsZXggIT09ICd1bmRlZmluZWQnKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyMi5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICdmbGV4JywgZmxleCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCIhaGlkZVwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxhYmVsVmlzaWJsZSAmJiAhaXNDaGVja2JveFwiPlxyXG4gICAgICAgIDxic3UtbHktbGFiZWxcclxuICAgICAgICAgICAgW2F0dHIubGFiZWxXaWR0aF09XCJsYWJlbFdpZHRoXCJcclxuICAgICAgICAgICAgW2F0dHIuY2FudmFzV2lkdGhdPVwiY2FudmFzV2lkdGhcIlxyXG4gICAgICAgICAgICBbYXR0clJ0bF1cclxuICAgICAgICAgICAgW2NsYXNzLm5vLXBhZGRpbmddPVwiY29uZmlnLlBhZGRpbmdbMF0gPT09IDBcIlxyXG4gICAgICAgICAgICBbY29uZmlnXT1cImNvbmZpZ1wiXHJcbiAgICAgICAgICAgIFtjYXB0aW9uXT1cImxhYmVsQ2FwdGlvblwiXHJcbiAgICAgICAgICAgIFtvcmlnaW5hbFdpZHRoXT1cImxhYmVsV2lkdGhcIlxyXG4gICAgICAgICAgICBbc3R5bGUubWluLXdpZHRoXT1cIlxyXG4gICAgICAgICAgICAgICAgaXNDaGVja2JveCA/ICdhdXRvJyA6IGlzQ29sdW1uRGlyZWN0aW9uIHx8IGlzQ29sdW1uUmV2ZXJzZURpcmVjdGlvbiA/ICcxMDAlJyA6IG1heExhYmVsV2lkdGggKyAncHgnXHJcbiAgICAgICAgICAgIFwiXHJcbiAgICAgICAgICAgIFtzdHlsZS53aWR0aF09XCJcclxuICAgICAgICAgICAgICAgIGlzQ2hlY2tib3ggPyAnYXV0bycgOiBpc0NvbHVtbkRpcmVjdGlvbiB8fCBpc0NvbHVtblJldmVyc2VEaXJlY3Rpb24gPyAnMTAwJScgOiBtYXhMYWJlbFdpZHRoICsgJ3B4J1xyXG4gICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICBbaXNNYW5kYXRvcnldPVwiaXNNYW5kYXRvcnlcIlxyXG4gICAgICAgICAgICBbZmllbGRJY29uXT1cImZpZWxkSWNvblwiXHJcbiAgICAgICAgICAgIFtvcmlnaW5hbFh0eXBlXT1cIm9yaWdpbmFsWHR5cGVcIlxyXG4gICAgICAgICAgICBbdGV4dFZpc2libGVdPVwidGV4dFZpc2libGVcIlxyXG4gICAgICAgICAgICBbaXNDb2x1bW5dPVwiaXNDb2x1bW5EaXJlY3Rpb24gfHwgaXNDb2x1bW5SZXZlcnNlRGlyZWN0aW9uXCJcclxuICAgICAgICA+PC9ic3UtbHktbGFiZWw+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxsYWJlbCBbYXR0ci52aXNpYmxlXT1cImxhYmVsVmlzaWJsZVwiIGNsYXNzPVwiaG9yaXpvbnRhbC1sYWJlbFwiIFtpbm5lckh0bWxdPVwiZW1wdHlUZXh0XCI+PC9sYWJlbD5cclxuICAgIDxibnJjLWZpZWxkLXVpXHJcbiAgICAgICAgW2F0dHIueHR5cGVdPVwiY29uZmlnLkZpZWxkVWkub3JpZ2luYWxYdHlwZVwiXHJcbiAgICAgICAgW2F0dHIuZmllbGRXaWR0aF09XCJsYXlvdXRDb250cm9sV2lkdGhcIlxyXG4gICAgICAgIFthdHRyLmlzQ2hlY2tib3hdPVwiaXNDaGVja2JveFwiXHJcbiAgICAgICAgW3N0eWxlLmZsZXgtZ3Jvd109XCJpc0NoZWNrYm94ID8gMSA6IDBcIlxyXG4gICAgICAgIFtjbGFzcy5uby1wYWRkaW5nXT1cImNvbmZpZy5QYWRkaW5nWzBdID09PSAwXCJcclxuICAgICAgICBbY3VzdG9tRmllbGRdPVwiY29uZmlnLkZpZWxkVWlcIlxyXG4gICAgICAgIFtsYXlvdXRJbmZvXT1cImNvbmZpZ1wiXHJcbiAgICAgICAgW2lubGluZUVkaXRdPVwiaW5saW5lRWRpdFwiXHJcbiAgICAgICAgW2ZvY3VzQ29udHJvbF09XCJmb2N1c0NvbnRyb2xcIlxyXG4gICAgICAgIFtpc1NlYXJjaFBhbmVsXT1cImlzU2VhcmNoUGFuZWxcIlxyXG4gICAgICAgIFtzdHlsZS5oZWlnaHRdPVwiaXNVbHYgPyAnMTAwJScgOiAnYXV0bydcIlxyXG4gICAgICAgIFthdHRyLmlzdWx2XT1cImlzVWx2XCJcclxuICAgID48L2JucmMtZmllbGQtdWk+XHJcbjwvbmctY29udGFpbmVyPlxyXG4iXX0=