barsa-novin-ray-core 2.2.61 → 2.2.63
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/abstract-classes/layout-panel-base.mjs +3 -1
- package/esm2022/lib/barsa-novin-ray-core.module.mjs +10 -6
- package/esm2022/lib/dynamic-component/base-view-item-props.mjs +26 -16
- package/esm2022/lib/field-ui/field-ui.component.mjs +1 -1
- package/esm2022/lib/form/form.component.mjs +2 -2
- package/esm2022/lib/pipes/index.mjs +2 -1
- package/esm2022/lib/pipes/th-image-icon.pipe.mjs +2 -3
- package/esm2022/lib/pipes/toolbar-settings.pipe.mjs +27 -0
- package/esm2022/lib/root-portal/root-portal.component.mjs +47 -1
- package/esm2022/lib/services/index.mjs +2 -1
- package/esm2022/lib/services/tabpage.service.mjs +13 -0
- package/fesm2022/barsa-novin-ray-core.mjs +120 -23
- package/fesm2022/barsa-novin-ray-core.mjs.map +1 -1
- package/lib/abstract-classes/layout-panel-base.d.ts +1 -0
- package/lib/barsa-novin-ray-core.module.d.ts +42 -41
- package/lib/dynamic-component/base-view-item-props.d.ts +6 -5
- package/lib/pipes/index.d.ts +1 -0
- package/lib/pipes/toolbar-settings.pipe.d.ts +8 -0
- package/lib/services/index.d.ts +1 -0
- package/lib/services/tabpage.service.d.ts +7 -0
- package/package.json +1 -1
|
@@ -13,6 +13,7 @@ export class LayoutPanelBaseComponent extends LayoutItemBaseComponent {
|
|
|
13
13
|
this.portalService = portalService;
|
|
14
14
|
this.layoutService = layoutService;
|
|
15
15
|
this._cdr = _cdr;
|
|
16
|
+
this.layoutControlCount = 0;
|
|
16
17
|
this.id = getUniqueId(4);
|
|
17
18
|
layoutService.id = 'panel' + this.id;
|
|
18
19
|
this.formPanelService.isSearchPanel$.subscribe((isSearchPanel) => {
|
|
@@ -32,6 +33,7 @@ export class LayoutPanelBaseComponent extends LayoutItemBaseComponent {
|
|
|
32
33
|
this._calcWidth(item);
|
|
33
34
|
break;
|
|
34
35
|
case 'Ly.LayoutControl':
|
|
36
|
+
this.layoutControlCount++;
|
|
35
37
|
this._setLabelWidth(item);
|
|
36
38
|
break;
|
|
37
39
|
}
|
|
@@ -63,4 +65,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
63
65
|
}], config: [{
|
|
64
66
|
type: Input
|
|
65
67
|
}] } });
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LXBhbmVsLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1ub3Zpbi1yYXktY29yZS9zcmMvbGliL2Fic3RyYWN0LWNsYXNzZXMvbGF5b3V0LXBhbmVsLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFzQix1QkFBdUIsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFFdkgsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFHMUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7O0FBVTdELE1BQU0sT0FBTyx3QkFBeUIsU0FBUSx1QkFBdUI7SUFRakUsWUFDVyxFQUFjLEVBQ1gsZ0JBQWtDLEVBQ2xDLGFBQTRCLEVBQ3BCLGFBQTRCLEVBQ3BDLElBQXVCO1FBRWpDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsQ0FBQztRQU52QixPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQ1gscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUNwQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUNwQyxTQUFJLEdBQUosSUFBSSxDQUFtQjtRQU5yQyx1QkFBa0IsR0FBRyxDQUFDLENBQUM7UUFTbkIsSUFBSSxDQUFDLEVBQUUsR0FBRyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDekIsYUFBYSxDQUFDLEVBQUUsR0FBRyxPQUFPLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUNyQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFO1lBQzdELElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO1FBQ3ZDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUNELFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDeEQsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQztRQUNuRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBQ1MsVUFBVSxDQUFDLE1BQU07UUFDdkIsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUMxQixRQUFRLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDakIsS0FBSyxlQUFlO29CQUNoQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUN0QixNQUFNO2dCQUNWLEtBQUssa0JBQWtCO29CQUNuQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztvQkFDMUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDMUIsTUFBTTtZQUNkLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFDUyxjQUFjLENBQUMsSUFBUztRQUM5QixNQUFNLFlBQVksR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekMsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNmLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ2pELENBQUM7SUFDTCxDQUFDOytHQTlDUSx3QkFBd0I7bUdBQXhCLHdCQUF3QiwrSkFKdkIsRUFBRTs7NEZBSUgsd0JBQXdCO2tCQU5wQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFFBQVEsRUFBRSxFQUFFO29CQUNaLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxVQUFVLEVBQUUsS0FBSztpQkFDcEI7OzBCQWFRLElBQUk7eUVBWEEsU0FBUztzQkFBakIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5wdXQsIENvbXBvbmVudCwgU2VsZiwgRWxlbWVudFJlZiwgT25Jbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBnZXRMYWJlbFdpZHRoLCBnZXRVbmlxdWVJZCB9IGZyb20gJy4uL2NvbnN0YW50cyc7XHJcbmltcG9ydCB7IEZvcm1QYW5lbFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9mb3JtLXBhbmVsLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMYXlvdXRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvbGF5b3V0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMYXlvdXRJdGVtQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0LWl0ZW0tYmFzZSc7XHJcbmltcG9ydCB7IExheW91dFNldHRpbmcgfSBmcm9tICcuL21vZGVscyc7XHJcbmltcG9ydCB7IFBvcnRhbFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9wb3J0YWwuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYm5yYy1sYXlvdXQtcGFuZWwtYmFzZScsXHJcbiAgICB0ZW1wbGF0ZTogJycsXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIHN0YW5kYWxvbmU6IGZhbHNlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMYXlvdXRQYW5lbEJhc2VDb21wb25lbnQgZXh0ZW5kcyBMYXlvdXRJdGVtQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgICBASW5wdXQoKSBwYXJlbnREb206IEhUTUxFbGVtZW50O1xyXG4gICAgQElucHV0KCkgaXNQYW5lbDogYm9vbGVhbjtcclxuICAgIEBJbnB1dCgpIGNvbmZpZzogTGF5b3V0U2V0dGluZztcclxuICAgIG1heExhYmVsV2lkdGgkOiBPYnNlcnZhYmxlPG51bWJlcj47XHJcbiAgICBpc1NlYXJjaFBhbmVsOiBib29sZWFuO1xyXG4gICAgaWQ6IHN0cmluZztcclxuICAgIGxheW91dENvbnRyb2xDb3VudCA9IDA7XHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwdWJsaWMgZWw6IEVsZW1lbnRSZWYsXHJcbiAgICAgICAgcHJvdGVjdGVkIGZvcm1QYW5lbFNlcnZpY2U6IEZvcm1QYW5lbFNlcnZpY2UsXHJcbiAgICAgICAgcHJvdGVjdGVkIHBvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UsXHJcbiAgICAgICAgQFNlbGYoKSBwcm90ZWN0ZWQgbGF5b3V0U2VydmljZTogTGF5b3V0U2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWZcclxuICAgICkge1xyXG4gICAgICAgIHN1cGVyKGZvcm1QYW5lbFNlcnZpY2UsIF9jZHIpO1xyXG4gICAgICAgIHRoaXMuaWQgPSBnZXRVbmlxdWVJZCg0KTtcclxuICAgICAgICBsYXlvdXRTZXJ2aWNlLmlkID0gJ3BhbmVsJyArIHRoaXMuaWQ7XHJcbiAgICAgICAgdGhpcy5mb3JtUGFuZWxTZXJ2aWNlLmlzU2VhcmNoUGFuZWwkLnN1YnNjcmliZSgoaXNTZWFyY2hQYW5lbCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmlzU2VhcmNoUGFuZWwgPSBpc1NlYXJjaFBhbmVsO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgICAgICB0aGlzLmZvcm1QYW5lbFNlcnZpY2UuZm9ybUNvbnRhaW5lckRvbSA9IHRoaXMucGFyZW50RG9tO1xyXG4gICAgICAgIHRoaXMubWF4TGFiZWxXaWR0aCQgPSB0aGlzLmxheW91dFNlcnZpY2UubWF4V2lkdGgkO1xyXG4gICAgICAgIHRoaXMuX2NhbGNXaWR0aCh0aGlzLmNvbmZpZyk7XHJcbiAgICB9XHJcbiAgICBwcm90ZWN0ZWQgX2NhbGNXaWR0aChjb25maWcpOiB2b2lkIHtcclxuICAgICAgICBjb25maWcuaXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICBzd2l0Y2ggKGl0ZW0ueHR5cGUpIHtcclxuICAgICAgICAgICAgICAgIGNhc2UgJ0x5LkxheW91dEpvaW4nOlxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2NhbGNXaWR0aChpdGVtKTtcclxuICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgIGNhc2UgJ0x5LkxheW91dENvbnRyb2wnOlxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubGF5b3V0Q29udHJvbENvdW50Kys7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fc2V0TGFiZWxXaWR0aChpdGVtKTtcclxuICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIF9zZXRMYWJlbFdpZHRoKGl0ZW06IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGNvbnRyb2xXaWR0aCA9IGdldExhYmVsV2lkdGgoaXRlbSk7XHJcbiAgICAgICAgaWYgKGNvbnRyb2xXaWR0aCkge1xyXG4gICAgICAgICAgICB0aGlzLmxheW91dFNlcnZpY2Uuc2V0TWF4V2lkdGgoY29udHJvbFdpZHRoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -32,9 +32,9 @@ import { FormFieldReportPageComponent } from './abstract-classes';
|
|
|
32
32
|
import { PortalPageSidebarComponent } from './portal-page/portal-sidebar.component';
|
|
33
33
|
import { BarsaSapUiFormPageModule } from './form-page-routing';
|
|
34
34
|
import { ResizableModule } from './resizable-module/resizable.module';
|
|
35
|
-
import { BreadcrumbService, UploadService, ApiService, LogService, BarsaDialogService, PortalService, UiService, LayoutService, DynamicComponentService, NetworkStatusService, AudioRecordingService, VideoRecordingService, PromptUpdateService, BarsaStorageService, LocalStorageService, IndexedDbService, NotificationService, ServiceWorkerNotificationService, ServiceWorkerCommuncationService, SaveScrollPositionService } from './services';
|
|
35
|
+
import { BreadcrumbService, UploadService, ApiService, LogService, BarsaDialogService, PortalService, UiService, LayoutService, TabpageService, DynamicComponentService, NetworkStatusService, AudioRecordingService, VideoRecordingService, PromptUpdateService, BarsaStorageService, LocalStorageService, IndexedDbService, NotificationService, ServiceWorkerNotificationService, ServiceWorkerCommuncationService, SaveScrollPositionService } from './services';
|
|
36
36
|
import { DynamicCommandDirective, ItemsRendererDirective, NumbersOnlyInputDirective, PlaceHolderDirective, RenderUlvPaginDirective, ImageLazyDirective, UntilInViewDirective, IntersectionObserverDirective, EllipsifyDirective, TableResizerDirective, ColumnResizerDirective, AttrRtlDirective, RenderUlvViewerDirective, UlvCommandDirective, WorfkflowwChoiceCommandDirective, CopyDirective, EllapsisTextDirective, FillEmptySpaceDirective, FormCloseDirective, MobileDirective, BodyClickDirective, CountDownDirective, RouteFormChangeDirective, DynamicStyleDirective, NowraptextDirective, LabelmandatoryDirective, AbsoluteDivBodyDirective, LoadExternalFilesDirective, StopPropagationDirective, PreventDefaultDirective, RenderUlvDirective, PrintFilesDirective, SaveImageDirective, WebOtpDirective } from './directives';
|
|
37
|
-
import { NumeralPipe, CanUploadFilePipe, RemoveNewlinePipe, ConvertToStylePipe, FilterPipe, FilterTabPipe, FilterStringPipe, FioriIconPipe, SortPipe, GroupByPipe, MultipleGroupByPipe, MoValuePipe, MoReportValuePipe, HeaderFacetValuePipe, PictureFieldSourcePipe, TlbButtonsPipe, SeperatorFixPipe, MoReportValueConcatPipe, ContextMenuPipe, BbbTranslatePipe, BarsaIconDictPipe, FileInfoCountPipe, ControlUiPipe, VisibleValuePipe, DateTimeToCaptionPipe, FilterToolbarControlPipe, ListCountPipe, TotalSummaryPipe, MergeFieldsToColumnsPipe, FindColumnByDbNamePipe, FilterColumnsByDetailsPipe, MoInfoUlvMoListPipe, MoInfoUlvPagingPipe, ReversePipe, ColumnCustomUiPipe, SanitizeTextPipe, ColumnCustomComponentPipe, ColumnIconPipe, ColumnValuePipe, RowNumberPipe, ComboRowImagePipe, IsExpandedNodePipe, ThImageOrIconePipe, FindPreviewColumnPipe, ReplacePipe, FilterWorkflowInMobilePipe, HideColumnsInmobilePipe, StringToNumberPipe, ColumnValueOfParametersPipe, HideAcceptCancelButtonsPipe, FilterInlineActionListPipe, IsImagePipe } from './pipes';
|
|
37
|
+
import { NumeralPipe, CanUploadFilePipe, RemoveNewlinePipe, ConvertToStylePipe, FilterPipe, FilterTabPipe, FilterStringPipe, FioriIconPipe, SortPipe, GroupByPipe, MultipleGroupByPipe, MoValuePipe, MoReportValuePipe, HeaderFacetValuePipe, PictureFieldSourcePipe, TlbButtonsPipe, SeperatorFixPipe, MoReportValueConcatPipe, ContextMenuPipe, BbbTranslatePipe, BarsaIconDictPipe, FileInfoCountPipe, ControlUiPipe, VisibleValuePipe, DateTimeToCaptionPipe, FilterToolbarControlPipe, ListCountPipe, TotalSummaryPipe, MergeFieldsToColumnsPipe, FindColumnByDbNamePipe, FilterColumnsByDetailsPipe, MoInfoUlvMoListPipe, MoInfoUlvPagingPipe, ReversePipe, ColumnCustomUiPipe, SanitizeTextPipe, ColumnCustomComponentPipe, ColumnIconPipe, ColumnValuePipe, RowNumberPipe, ComboRowImagePipe, IsExpandedNodePipe, ThImageOrIconePipe, FindPreviewColumnPipe, ReplacePipe, FilterWorkflowInMobilePipe, HideColumnsInmobilePipe, StringToNumberPipe, ColumnValueOfParametersPipe, HideAcceptCancelButtonsPipe, FilterInlineActionListPipe, IsImagePipe, ToolbarSettingsPipe } from './pipes';
|
|
38
38
|
import * as i0 from "@angular/core";
|
|
39
39
|
import * as i1 from "./services";
|
|
40
40
|
const components = [
|
|
@@ -150,7 +150,8 @@ const pipes = [
|
|
|
150
150
|
ColumnValueOfParametersPipe,
|
|
151
151
|
HideAcceptCancelButtonsPipe,
|
|
152
152
|
FilterInlineActionListPipe,
|
|
153
|
-
IsImagePipe
|
|
153
|
+
IsImagePipe,
|
|
154
|
+
ToolbarSettingsPipe
|
|
154
155
|
];
|
|
155
156
|
const functionL1 = function () {
|
|
156
157
|
if (BarsaApi.LoginFormData.Culture === 'fa-IR') {
|
|
@@ -247,6 +248,7 @@ export class BarsaNovinRayCoreModule extends BaseModule {
|
|
|
247
248
|
BarsaDialogService,
|
|
248
249
|
UiService,
|
|
249
250
|
LayoutService,
|
|
251
|
+
TabpageService,
|
|
250
252
|
DynamicComponentService,
|
|
251
253
|
BreadcrumbService,
|
|
252
254
|
AuthGuard,
|
|
@@ -339,7 +341,8 @@ export class BarsaNovinRayCoreModule extends BaseModule {
|
|
|
339
341
|
ColumnValueOfParametersPipe,
|
|
340
342
|
HideAcceptCancelButtonsPipe,
|
|
341
343
|
FilterInlineActionListPipe,
|
|
342
|
-
IsImagePipe,
|
|
344
|
+
IsImagePipe,
|
|
345
|
+
ToolbarSettingsPipe, PlaceHolderDirective,
|
|
343
346
|
NumbersOnlyInputDirective,
|
|
344
347
|
RenderUlvViewerDirective,
|
|
345
348
|
RenderUlvPaginDirective,
|
|
@@ -450,7 +453,8 @@ export class BarsaNovinRayCoreModule extends BaseModule {
|
|
|
450
453
|
ColumnValueOfParametersPipe,
|
|
451
454
|
HideAcceptCancelButtonsPipe,
|
|
452
455
|
FilterInlineActionListPipe,
|
|
453
|
-
IsImagePipe,
|
|
456
|
+
IsImagePipe,
|
|
457
|
+
ToolbarSettingsPipe, PlaceHolderDirective,
|
|
454
458
|
NumbersOnlyInputDirective,
|
|
455
459
|
RenderUlvViewerDirective,
|
|
456
460
|
RenderUlvPaginDirective,
|
|
@@ -509,4 +513,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
509
513
|
providers: [provideHttpClient(withInterceptorsFromDi())]
|
|
510
514
|
}]
|
|
511
515
|
}], ctorParameters: () => [{ type: i1.DynamicComponentService }, { type: i0.ComponentFactoryResolver }] });
|
|
512
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2Etbm92aW4tcmF5LWNvcmUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9iYXJzYS1ub3Zpbi1yYXktY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILGVBQWUsRUFFZixZQUFZLEVBRVosUUFBUSxFQUNSLGdCQUFnQixFQUNuQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDNUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDekYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDN0UsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdkYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7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U0FBUyxFQUFFLENBQUMsaUJBQWlCLENBQUMsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDO2lCQUMzRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBBUFBfSU5JVElBTElaRVIsXHJcbiAgICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgICBFcnJvckhhbmRsZXIsXHJcbiAgICBNb2R1bGVXaXRoUHJvdmlkZXJzLFxyXG4gICAgTmdNb2R1bGUsXHJcbiAgICBOT19FUlJPUlNfU0NIRU1BXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IHByb3ZpZGVIdHRwQ2xpZW50LCB3aXRoSW50ZXJjZXB0b3JzRnJvbURpIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBUaXRsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQgeyBpc0luTG9jYWxNb2RlIH0gZnJvbSAnLi9jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IEZvcm1Db21wb25lbnQgfSBmcm9tICcuL2Zvcm0vZm9ybS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGaWVsZFVpQ29tcG9uZW50IH0gZnJvbSAnLi9maWVsZC11aS9maWVsZC11aS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZXBvcnRDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydC1jb250YWluZXIvcmVwb3J0LWNvbnRhaW5lci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBbmNob3JTY3JvbGxEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvYW5jaG9yLXNjcm9sbC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBCYXJzYU5vdmluUmF5Q29yZVJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL2JhcnNhLW5vdmluLXJheS1jb3JlLXJvdXRpbmcubW9kdWxlJztcclxuaW1wb3J0IHsgTW9kYWxSb290Q29tcG9uZW50IH0gZnJvbSAnLi9tb2RhbC1yb290LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZvcm1OZXdDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tbmV3L2Zvcm0tbmV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJvb3RQb3J0YWxDb21wb25lbnQgfSBmcm9tICcuL3Jvb3QtcG9ydGFsL3Jvb3QtcG9ydGFsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEF1dGhHdWFyZCB9IGZyb20gJy4vYXV0aC1ndWFyZCc7XHJcblxyXG5pbXBvcnQge1xyXG4gICAgRHluYW1pY0Zvcm1Db21wb25lbnQsXHJcbiAgICBEeW5hbWljSXRlbUNvbXBvbmVudCxcclxuICAgIEJhc2VEeW5hbWljQ29tcG9uZW50LFxyXG4gICAgRHluYW1pY0Zvcm1Ub29sYmFyaXRlbUNvbXBvbmVudCxcclxuICAgIER5bmFtaWNMYXlvdXRDb21wb25lbnRcclxufSBmcm9tICcuL2R5bmFtaWMtY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmVkaXJlY3RIb21lR3VhcmQgfSBmcm9tICcuL3JlZGlyZWN0LWhvbWUtZ3VhcmQnO1xyXG5pbXBvcnQgeyBOb3RGb3VuZENvbXBvbmVudCB9IGZyb20gJy4vbm90LWZvdW5kL25vdC1mb3VuZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSb290UGFnZUNvbXBvbmVudCB9IGZyb20gJy4vcm9vdC1wYWdlL3Jvb3QtcGFnZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXNlTW9kdWxlIH0gZnJvbSAnLi9iYXNlLm1vZHVsZSc7XHJcbmltcG9ydCB7IFBvcnRhbFBhZ2VDb21wb25lbnQgfSBmcm9tICcuL3BvcnRhbC1wYWdlL3BvcnRhbC1wYWdlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEdsb2JhbEVycm9ySGFuZGxlciB9IGZyb20gJy4vZ2xvYmFsLWVycm9yLWhhbmRsZXInO1xyXG5cclxuaW1wb3J0IHsgUmVkaXJlY3RSZXBvcnROYXZpZ2F0b3JDb21tYW5kQ29tcG9uZW50IH0gZnJvbSAnLi9yZWRpcmVjdC1yZXBvcnQtbmF2aWdhdG9yLWNvbW1hbmQvcmVkaXJlY3QtcmVwb3J0LW5hdmlnYXRvci1jb21tYW5kLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEVtcHR5UGFnZVdpdGhSb3V0ZXJBbmRSb3V0ZXJPdXRsZXRDb21wb25lbnQgfSBmcm9tICcuL2VtcHR5LXBhZ2Utd2l0aC1yb3V0ZXItYW5kLXJvdXRlci1vdXRsZXQvZW1wdHktcGFnZS13aXRoLXJvdXRlci1hbmQtcm91dGVyLW91dGxldC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCdXR0b25Mb2FkaW5nQ29tcG9uZW50IH0gZnJvbSAnLi9idXR0b24tbG9hZGluZy9idXR0b24tbG9hZGluZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVbmxpbWl0U2Vzc2lvbkNvbXBvbmVudCB9IGZyb20gJy4vdW5saW1pdC1zZXNzaW9uL3VubGltaXQtc2Vzc2lvbi5jb21wb25lbnQnO1xyXG5cclxuaW1wb3J0IHsgRW1wdHlQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9lbXB0eS1wYWdlL2VtcHR5LXBhZ2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FBcGkgfSBmcm9tICcuL2Fic3RyYWN0LWNsYXNzZXMvYmFyc2EtYXBpJztcclxuaW1wb3J0IHsgRm9ybVBhZ2VDb21wb25lbnQgfSBmcm9tICcuL2Fic3RyYWN0LWNsYXNzZXMvZm9ybS1wYWdlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZvcm1GaWVsZFJlcG9ydFBhZ2VDb21wb25lbnQgfSBmcm9tICcuL2Fic3RyYWN0LWNsYXNzZXMnO1xyXG5pbXBvcnQgeyBQb3J0YWxQYWdlU2lkZWJhckNvbXBvbmVudCB9IGZyb20gJy4vcG9ydGFsLXBhZ2UvcG9ydGFsLXNpZGViYXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FTYXBVaUZvcm1QYWdlTW9kdWxlIH0gZnJvbSAnLi9mb3JtLXBhZ2Utcm91dGluZyc7XHJcbmltcG9ydCB7IFJlc2l6YWJsZU1vZHVsZSB9IGZyb20gJy4vcmVzaXphYmxlLW1vZHVsZS9yZXNpemFibGUubW9kdWxlJztcclxuaW1wb3J0IHtcclxuICAgIEJyZWFkY3J1bWJTZXJ2aWNlLFxyXG4gICAgVXBsb2FkU2VydmljZSxcclxuICAgIEFwaVNlcnZpY2UsXHJcbiAgICBMb2dTZXJ2aWNlLFxyXG4gICAgQmFyc2FEaWFsb2dTZXJ2aWNlLFxyXG4gICAgUG9ydGFsU2VydmljZSxcclxuICAgIFVpU2VydmljZSxcclxuICAgIExheW91dFNlcnZpY2UsXHJcbiAgICBEeW5hbWljQ29tcG9uZW50U2VydmljZSxcclxuICAgIE5ldHdvcmtTdGF0dXNTZXJ2aWNlLFxyXG4gICAgQXVkaW9SZWNvcmRpbmdTZXJ2aWNlLFxyXG4gICAgVmlkZW9SZWNvcmRpbmdTZXJ2aWNlLFxyXG4gICAgUHJvbXB0VXBkYXRlU2VydmljZSxcclxuICAgIEJhcnNhU3RvcmFnZVNlcnZpY2UsXHJcbiAgICBMb2NhbFN0b3JhZ2VTZXJ2aWNlLFxyXG4gICAgSW5kZXhlZERiU2VydmljZSxcclxuICAgIE5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbiAgICBTZXJ2aWNlV29ya2VyTm90aWZpY2F0aW9uU2VydmljZSxcclxuICAgIFNlcnZpY2VXb3JrZXJDb21tdW5jYXRpb25TZXJ2aWNlLFxyXG4gICAgU2F2ZVNjcm9sbFBvc2l0aW9uU2VydmljZVxyXG59IGZyb20gJy4vc2VydmljZXMnO1xyXG5pbXBvcnQge1xyXG4gICAgRHluYW1pY0NvbW1hbmREaXJlY3RpdmUsXHJcbiAgICBJdGVtc1JlbmRlcmVyRGlyZWN0aXZlLFxyXG4gICAgTnVtYmVyc09ubHlJbnB1dERpcmVjdGl2ZSxcclxuICAgIFBsYWNlSG9sZGVyRGlyZWN0aXZlLFxyXG4gICAgUmVuZGVyVWx2UGFnaW5EaXJlY3RpdmUsXHJcbiAgICBJbWFnZUxhenlEaXJlY3RpdmUsXHJcbiAgICBVbnRpbEluVmlld0RpcmVjdGl2ZSxcclxuICAgIEludGVyc2VjdGlvbk9ic2VydmVyRGlyZWN0aXZlLFxyXG4gICAgRWxsaXBzaWZ5RGlyZWN0aXZlLFxyXG4gICAgVGFibGVSZXNpemVyRGlyZWN0aXZlLFxyXG4gICAgQ29sdW1uUmVzaXplckRpcmVjdGl2ZSxcclxuICAgIEF0dHJSdGxEaXJlY3RpdmUsXHJcbiAgICBSZW5kZXJVbHZWaWV3ZXJEaXJlY3RpdmUsXHJcbiAgICBVbHZDb21tYW5kRGlyZWN0aXZlLFxyXG4gICAgV29yZmtmbG93d0Nob2ljZUNvbW1hbmREaXJlY3RpdmUsXHJcbiAgICBDb3B5RGlyZWN0aXZlLFxyXG4gICAgRWxsYXBzaXNUZXh0RGlyZWN0aXZlLFxyXG4gICAgRmlsbEVtcHR5U3BhY2VEaXJlY3RpdmUsXHJcbiAgICBGb3JtQ2xvc2VEaXJlY3RpdmUsXHJcbiAgICBNb2JpbGVEaXJlY3RpdmUsXHJcbiAgICBCb2R5Q2xpY2tEaXJlY3RpdmUsXHJcbiAgICBDb3VudERvd25EaXJlY3RpdmUsXHJcbiAgICBSb3V0ZUZvcm1DaGFuZ2VEaXJlY3RpdmUsXHJcbiAgICBEeW5hbWljU3R5bGVEaXJlY3RpdmUsXHJcbiAgICBOb3dyYXB0ZXh0RGlyZWN0aXZlLFxyXG4gICAgTGFiZWxtYW5kYXRvcnlEaXJlY3RpdmUsXHJcbiAgICBBYnNvbHV0ZURpdkJvZHlEaXJlY3RpdmUsXHJcbiAgICBMb2FkRXh0ZXJuYWxGaWxlc0RpcmVjdGl2ZSxcclxuICAgIFN0b3BQcm9wYWdhdGlvbkRpcmVjdGl2ZSxcclxuICAgIFByZXZlbnREZWZhdWx0RGlyZWN0aXZlLFxyXG4gICAgUmVuZGVyVWx2RGlyZWN0aXZlLFxyXG4gICAgUHJpbnRGaWxlc0RpcmVjdGl2ZSxcclxuICAgIFNhdmVJbWFnZURpcmVjdGl2ZSxcclxuICAgIFdlYk90cERpcmVjdGl2ZVxyXG59IGZyb20gJy4vZGlyZWN0aXZlcyc7XHJcbmltcG9ydCB7XHJcbiAgICBOdW1lcmFsUGlwZSxcclxuICAgIENhblVwbG9hZEZpbGVQaXBlLFxyXG4gICAgUmVtb3ZlTmV3bGluZVBpcGUsXHJcbiAgICBDb252ZXJ0VG9TdHlsZVBpcGUsXHJcbiAgICBGaWx0ZXJQaXBlLFxyXG4gICAgRmlsdGVyVGFiUGlwZSxcclxuICAgIEZpbHRlclN0cmluZ1BpcGUsXHJcbiAgICBGaW9yaUljb25QaXBlLFxyXG4gICAgU29ydFBpcGUsXHJcbiAgICBHcm91cEJ5UGlwZSxcclxuICAgIE11bHRpcGxlR3JvdXBCeVBpcGUsXHJcbiAgICBNb1ZhbHVlUGlwZSxcclxuICAgIE1vUmVwb3J0VmFsdWVQaXBlLFxyXG4gICAgSGVhZGVyRmFjZXRWYWx1ZVBpcGUsXHJcbiAgICBQaWN0dXJlRmllbGRTb3VyY2VQaXBlLFxyXG4gICAgVGxiQnV0dG9uc1BpcGUsXHJcbiAgICBTZXBlcmF0b3JGaXhQaXBlLFxyXG4gICAgTW9SZXBvcnRWYWx1ZUNvbmNhdFBpcGUsXHJcbiAgICBDb250ZXh0TWVudVBpcGUsXHJcbiAgICBCYmJUcmFuc2xhdGVQaXBlLFxyXG4gICAgQmFyc2FJY29uRGljdFBpcGUsXHJcbiAgICBGaWxlSW5mb0NvdW50UGlwZSxcclxuICAgIENvbnRyb2xVaVBpcGUsXHJcbiAgICBWaXNpYmxlVmFsdWVQaXBlLFxyXG4gICAgRGF0ZVRpbWVUb0NhcHRpb25QaXBlLFxyXG4gICAgRmlsdGVyVG9vbGJhckNvbnRyb2xQaXBlLFxyXG4gICAgTGlzdENvdW50UGlwZSxcclxuICAgIFRvdGFsU3VtbWFyeVBpcGUsXHJcbiAgICBNZXJnZUZpZWxkc1RvQ29sdW1uc1BpcGUsXHJcbiAgICBGaW5kQ29sdW1uQnlEYk5hbWVQaXBlLFxyXG4gICAgRmlsdGVyQ29sdW1uc0J5RGV0YWlsc1BpcGUsXHJcbiAgICBNb0luZm9VbHZNb0xpc3RQaXBlLFxyXG4gICAgTW9JbmZvVWx2UGFnaW5nUGlwZSxcclxuICAgIFJldmVyc2VQaXBlLFxyXG4gICAgQ29sdW1uQ3VzdG9tVWlQaXBlLFxyXG4gICAgU2FuaXRpemVUZXh0UGlwZSxcclxuICAgIENvbHVtbkN1c3RvbUNvbXBvbmVudFBpcGUsXHJcbiAgICBDb2x1bW5JY29uUGlwZSxcclxuICAgIENvbHVtblZhbHVlUGlwZSxcclxuICAgIFJvd051bWJlclBpcGUsXHJcbiAgICBDb21ib1Jvd0ltYWdlUGlwZSxcclxuICAgIElzRXhwYW5kZWROb2RlUGlwZSxcclxuICAgIFRoSW1hZ2VPckljb25lUGlwZSxcclxuICAgIEZpbmRQcmV2aWV3Q29sdW1uUGlwZSxcclxuICAgIFJlcGxhY2VQaXBlLFxyXG4gICAgRmlsdGVyV29ya2Zsb3dJbk1vYmlsZVBpcGUsXHJcbiAgICBIaWRlQ29sdW1uc0lubW9iaWxlUGlwZSxcclxuICAgIFN0cmluZ1RvTnVtYmVyUGlwZSxcclxuICAgIENvbHVtblZhbHVlT2ZQYXJhbWV0ZXJzUGlwZSxcclxuICAgIEhpZGVBY2NlcHRDYW5jZWxCdXR0b25zUGlwZSxcclxuICAgIEZpbHRlcklubGluZUFjdGlvbkxpc3RQaXBlLFxyXG4gICAgSXNJbWFnZVBpcGVcclxufSBmcm9tICcuL3BpcGVzJztcclxuXHJcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby12YXJcclxuZGVjbGFyZSB2YXIgQkJCOiBhbnk7XHJcblxyXG5jb25zdCBjb21wb25lbnRzID0gW1xyXG4gICAgRm9ybUNvbXBvbmVudCxcclxuICAgIEZpZWxkVWlDb21wb25lbnQsXHJcbiAgICBOb3RGb3VuZENvbXBvbmVudCxcclxuICAgIFJvb3RQYWdlQ29tcG9uZW50LFxyXG4gICAgUm9vdFBvcnRhbENvbXBvbmVudCxcclxuICAgIFJlcG9ydENvbnRhaW5lckNvbXBvbmVudCxcclxuICAgIEZvcm1OZXdDb21wb25lbnQsXHJcbiAgICBNb2RhbFJvb3RDb21wb25lbnQsXHJcbiAgICBQb3J0YWxQYWdlQ29tcG9uZW50LFxyXG4gICAgUG9ydGFsUGFnZVNpZGViYXJDb21wb25lbnQsXHJcbiAgICBSZWRpcmVjdFJlcG9ydE5hdmlnYXRvckNvbW1hbmRDb21wb25lbnQsXHJcbiAgICBFbXB0eVBhZ2VXaXRoUm91dGVyQW5kUm91dGVyT3V0bGV0Q29tcG9uZW50LFxyXG4gICAgRHluYW1pY0l0ZW1Db21wb25lbnQsXHJcbiAgICBEeW5hbWljRm9ybUNvbXBvbmVudCxcclxuICAgIEJhc2VEeW5hbWljQ29tcG9uZW50LFxyXG4gICAgRHluYW1pY0Zvcm1Ub29sYmFyaXRlbUNvbXBvbmVudCxcclxuICAgIER5bmFtaWNMYXlvdXRDb21wb25lbnQsXHJcbiAgICBFbXB0eVBhZ2VDb21wb25lbnQsXHJcbiAgICBGb3JtUGFnZUNvbXBvbmVudCxcclxuICAgIEZvcm1GaWVsZFJlcG9ydFBhZ2VDb21wb25lbnQsXHJcbiAgICBCdXR0b25Mb2FkaW5nQ29tcG9uZW50LFxyXG4gICAgVW5saW1pdFNlc3Npb25Db21wb25lbnRcclxuXTtcclxuY29uc3QgZGlyZWN0aXZlcyA9IFtcclxuICAgIFBsYWNlSG9sZGVyRGlyZWN0aXZlLFxyXG4gICAgTnVtYmVyc09ubHlJbnB1dERpcmVjdGl2ZSxcclxuICAgIFJlbmRlclVsdlZpZXdlckRpcmVjdGl2ZSxcclxuICAgIFJlbmRlclVsdlBhZ2luRGlyZWN0aXZlLFxyXG4gICAgQW5jaG9yU2Nyb2xsRGlyZWN0aXZlLFxyXG4gICAgSXRlbXNSZW5kZXJlckRpcmVjdGl2ZSxcclxuICAgIFVsdkNvbW1hbmREaXJlY3RpdmUsXHJcbiAgICBEeW5hbWljQ29tbWFuZERpcmVjdGl2ZSxcclxuICAgIFdvcmZrZmxvd3dDaG9pY2VDb21tYW5kRGlyZWN0aXZlLFxyXG4gICAgSW1hZ2VMYXp5RGlyZWN0aXZlLFxyXG4gICAgVW50aWxJblZpZXdEaXJlY3RpdmUsXHJcbiAgICBJbnRlcnNlY3Rpb25PYnNlcnZlckRpcmVjdGl2ZSxcclxuICAgIEVsbGlwc2lmeURpcmVjdGl2ZSxcclxuICAgIFRhYmxlUmVzaXplckRpcmVjdGl2ZSxcclxuICAgIENvbHVtblJlc2l6ZXJEaXJlY3RpdmUsXHJcbiAgICBBdHRyUnRsRGlyZWN0aXZlLFxyXG4gICAgQ29weURpcmVjdGl2ZSxcclxuICAgIEVsbGFwc2lzVGV4dERpcmVjdGl2ZSxcclxuICAgIEZpbGxFbXB0eVNwYWNlRGlyZWN0aXZlLFxyXG4gICAgRm9ybUNsb3NlRGlyZWN0aXZlLFxyXG4gICAgTW9iaWxlRGlyZWN0aXZlLFxyXG4gICAgQm9keUNsaWNrRGlyZWN0aXZlLFxyXG4gICAgQ291bnREb3duRGlyZWN0aXZlLFxyXG4gICAgUm91dGVGb3JtQ2hhbmdlRGlyZWN0aXZlLFxyXG4gICAgRHluYW1pY1N0eWxlRGlyZWN0aXZlLFxyXG4gICAgTm93cmFwdGV4dERpcmVjdGl2ZSxcclxuICAgIExhYmVsbWFuZGF0b3J5RGlyZWN0aXZlLFxyXG4gICAgQWJzb2x1dGVEaXZCb2R5RGlyZWN0aXZlLFxyXG4gICAgTG9hZEV4dGVybmFsRmlsZXNEaXJlY3RpdmUsXHJcbiAgICBTdG9wUHJvcGFnYXRpb25EaXJlY3RpdmUsXHJcbiAgICBQcmV2ZW50RGVmYXVsdERpcmVjdGl2ZSxcclxuICAgIFJlbmRlclVsdkRpcmVjdGl2ZSxcclxuICAgIFByaW50RmlsZXNEaXJlY3RpdmUsXHJcbiAgICBTYXZlSW1hZ2VEaXJlY3RpdmUsXHJcbiAgICBXZWJPdHBEaXJlY3RpdmVcclxuXTtcclxuY29uc3QgcGlwZXMgPSBbXHJcbiAgICBOdW1lcmFsUGlwZSxcclxuICAgIENhblVwbG9hZEZpbGVQaXBlLFxyXG4gICAgUmVtb3ZlTmV3bGluZVBpcGUsXHJcbiAgICBDb252ZXJ0VG9TdHlsZVBpcGUsXHJcbiAgICBGaWx0ZXJQaXBlLFxyXG4gICAgRmlsdGVyVGFiUGlwZSxcclxuICAgIEZpbHRlclN0cmluZ1BpcGUsXHJcbiAgICBGaW9yaUljb25QaXBlLFxyXG4gICAgU29ydFBpcGUsXHJcbiAgICBHcm91cEJ5UGlwZSxcclxuICAgIE11bHRpcGxlR3JvdXBCeVBpcGUsXHJcbiAgICBNb1ZhbHVlUGlwZSxcclxuICAgIE1vUmVwb3J0VmFsdWVQaXBlLFxyXG4gICAgSGVhZGVyRmFjZXRWYWx1ZVBpcGUsXHJcbiAgICBQaWN0dXJlRmllbGRTb3VyY2VQaXBlLFxyXG4gICAgVGxiQnV0dG9uc1BpcGUsXHJcbiAgICBTZXBlcmF0b3JGaXhQaXBlLFxyXG4gICAgTW9SZXBvcnRWYWx1ZUNvbmNhdFBpcGUsXHJcbiAgICBDb250ZXh0TWVudVBpcGUsXHJcbiAgICBCYmJUcmFuc2xhdGVQaXBlLFxyXG4gICAgQmFyc2FJY29uRGljdFBpcGUsXHJcbiAgICBGaWxlSW5mb0NvdW50UGlwZSxcclxuICAgIENvbnRyb2xVaVBpcGUsXHJcbiAgICBWaXNpYmxlVmFsdWVQaXBlLFxyXG4gICAgRGF0ZVRpbWVUb0NhcHRpb25QaXBlLFxyXG4gICAgRmlsdGVyVG9vbGJhckNvbnRyb2xQaXBlLFxyXG4gICAgTGlzdENvdW50UGlwZSxcclxuICAgIFRvdGFsU3VtbWFyeVBpcGUsXHJcbiAgICBNZXJnZUZpZWxkc1RvQ29sdW1uc1BpcGUsXHJcbiAgICBGaW5kQ29sdW1uQnlEYk5hbWVQaXBlLFxyXG4gICAgRmlsdGVyQ29sdW1uc0J5RGV0YWlsc1BpcGUsXHJcbiAgICBNb0luZm9VbHZNb0xpc3RQaXBlLFxyXG4gICAgTW9JbmZvVWx2UGFnaW5nUGlwZSxcclxuICAgIFJldmVyc2VQaXBlLFxyXG4gICAgQ29sdW1uQ3VzdG9tVWlQaXBlLFxyXG4gICAgU2FuaXRpemVUZXh0UGlwZSxcclxuICAgIENvbHVtbkN1c3RvbUNvbXBvbmVudFBpcGUsXHJcbiAgICBDb2x1bW5JY29uUGlwZSxcclxuICAgIENvbHVtblZhbHVlUGlwZSxcclxuICAgIFJvd051bWJlclBpcGUsXHJcbiAgICBDb21ib1Jvd0ltYWdlUGlwZSxcclxuICAgIElzRXhwYW5kZWROb2RlUGlwZSxcclxuICAgIFRoSW1hZ2VPckljb25lUGlwZSxcclxuICAgIEZpbmRQcmV2aWV3Q29sdW1uUGlwZSxcclxuICAgIFJlcGxhY2VQaXBlLFxyXG4gICAgRmlsdGVyV29ya2Zsb3dJbk1vYmlsZVBpcGUsXHJcbiAgICBIaWRlQ29sdW1uc0lubW9iaWxlUGlwZSxcclxuICAgIFN0cmluZ1RvTnVtYmVyUGlwZSxcclxuICAgIENvbHVtblZhbHVlT2ZQYXJhbWV0ZXJzUGlwZSxcclxuICAgIEhpZGVBY2NlcHRDYW5jZWxCdXR0b25zUGlwZSxcclxuICAgIEZpbHRlcklubGluZUFjdGlvbkxpc3RQaXBlLFxyXG4gICAgSXNJbWFnZVBpcGVcclxuXTtcclxuY29uc3QgZnVuY3Rpb25MMSA9IGZ1bmN0aW9uICgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmIChCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLkN1bHR1cmUgPT09ICdmYS1JUicpIHtcclxuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZmV0Y2goYC9Mb2NhbGl6YXRpb24vVHJhbnNsYXRpb24vZGF0YV8ke0JhcnNhQXBpLkxvZ2luRm9ybURhdGEuQ3VsdHVyZX0uanNvbmApXHJcbiAgICAgICAgLnRoZW4oZnVuY3Rpb24gKHJlcykge1xyXG4gICAgICAgICAgICByZXR1cm4gcmVzLmpzb24oKTtcclxuICAgICAgICB9KVxyXG4gICAgICAgIC50aGVuKGZ1bmN0aW9uIChyZXMpIHtcclxuICAgICAgICAgICAgaWYgKEJCQikge1xyXG4gICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGVcclxuICAgICAgICAgICAgICAgIEJCQiA9IHsgLi4uQmFyc2FBcGkuQkJCLCAuLi5yZXMgfTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG59O1xyXG5jb25zdCBmdW5jdGlvbkwyID0gZnVuY3Rpb24gKHBvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UsIHRpdGxlU2VydmljZTogVGl0bGUpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgcG9ydGFsU2VydmljZS5sb2FkVXNlclBvcnRhbFNldHRpbmcoKTtcclxuICAgIHBvcnRhbFNlcnZpY2UubG9hZFBvcnRhbERhdGFTeW5jKCk7XHJcbiAgICBpZiAocG9ydGFsU2VydmljZS5wb3J0YWxEYXRhPy5UaXRsZSkge1xyXG4gICAgICAgIHRpdGxlU2VydmljZS5zZXRUaXRsZShwb3J0YWxTZXJ2aWNlLnBvcnRhbERhdGE/LlRpdGxlKTtcclxuICAgIH1cclxuICAgIGlmIChCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLklzQW5vbnltb3VzICYmICFCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLklzU2VydmljZURlc2spIHtcclxuICAgICAgICByZXR1cm4gcG9ydGFsU2VydmljZS5sb2FkU3lzdGVtKEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuUG9ydGFsU3lzdGVtSWQpOyAvLyBsb2dpbiBmb3JtIG5lZWQganVzdCBwb3J0YWwgc3lzdGVtXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiBwb3J0YWxTZXJ2aWNlLmxvYWRTeXN0ZW0oKTsgLy8gbG9hZCBhbGwgc3lzdGVtcyBpZiB1c2VyIGlzIGxvZ2dlZCBpblxyXG4gICAgfVxyXG59O1xyXG5ATmdNb2R1bGUoe1xyXG4gICAgZGVjbGFyYXRpb25zOiBbLi4uY29tcG9uZW50cywgLi4ucGlwZXMsIC4uLmRpcmVjdGl2ZXNdLFxyXG4gICAgZXhwb3J0czogWy4uLmNvbXBvbmVudHMsIC4uLnBpcGVzLCAuLi5kaXJlY3RpdmVzXSxcclxuICAgIHNjaGVtYXM6IFtOT19FUlJPUlNfU0NIRU1BXSxcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBDb21tb25Nb2R1bGUsXHJcbiAgICAgICAgQmFyc2FOb3ZpblJheUNvcmVSb3V0aW5nTW9kdWxlLFxyXG4gICAgICAgIEJhcnNhU2FwVWlGb3JtUGFnZU1vZHVsZSxcclxuICAgICAgICBSZXNpemFibGVNb2R1bGUsXHJcbiAgICAgICAgRm9ybXNNb2R1bGUsXHJcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZVxyXG4gICAgXSxcclxuICAgIHByb3ZpZGVyczogW3Byb3ZpZGVIdHRwQ2xpZW50KHdpdGhJbnRlcmNlcHRvcnNGcm9tRGkoKSldXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCYXJzYU5vdmluUmF5Q29yZU1vZHVsZSBleHRlbmRzIEJhc2VNb2R1bGUge1xyXG4gICAgcHJvdGVjdGVkIGR5bmFtaWNDb21wb25lbnRzID0gWy4uLmNvbXBvbmVudHNdO1xyXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIGRjbTogRHluYW1pY0NvbXBvbmVudFNlcnZpY2UsIHByb3RlY3RlZCBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcikge1xyXG4gICAgICAgIHN1cGVyKGRjbSwgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCAnQmFyc2FOb3ZpblJheUNvcmVNb2R1bGUnKTtcclxuICAgIH1cclxuICAgIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8QmFyc2FOb3ZpblJheUNvcmVNb2R1bGU+IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBuZ01vZHVsZTogQmFyc2FOb3ZpblJheUNvcmVNb2R1bGUsXHJcbiAgICAgICAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcclxuICAgICAgICAgICAgICAgICAgICB1c2VGYWN0b3J5OlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3J0YWxTZXJ2aWNlOiBQb3J0YWxTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGVTZXJ2aWNlOiBUaXRsZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb21wdFVwZGF0ZVNlcnZpY2U6IFByb21wdFVwZGF0ZVNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXJzYVN0b3JhZ2VTZXJ2aWNlOiBCYXJzYVN0b3JhZ2VTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3dDb21tdW5pY2F0aW9uOiBTZXJ2aWNlV29ya2VyQ29tbXVuY2F0aW9uU2VydmljZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldHdvcmtTdGF0dXNTZXJ2aWNlOiBOZXR3b3JrU3RhdHVzU2VydmljZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlcjogUm91dGVyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICkgPT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaW5Mb2NhbE1vZGUgPSBpc0luTG9jYWxNb2RlKCk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHBvcnRhbFNlcnZpY2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubG9hZFNlcnZlclN0YXJ0dXBEYXRhKClcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbigoKSA9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcm9taXNlLmFsbChbZnVuY3Rpb25MMSgpLCBmdW5jdGlvbkwyKHBvcnRhbFNlcnZpY2UsIHRpdGxlU2VydmljZSldKS5maW5hbGx5KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb21wdFVwZGF0ZVNlcnZpY2UuY2hlY2tGb3JVcGRhdGUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhcnNhU3RvcmFnZVNlcnZpY2UuaW5pdCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3dDb21tdW5pY2F0aW9uLmluaXQoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChlKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghaW5Mb2NhbE1vZGUgJiYgIW5hdmlnYXRvci5vbkxpbmUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCduby1pbnRlcm5ldCcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm91dGVyLm5hdmlnYXRlKFsnbm8taW50ZXJuZXQnXSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3V0ZXIubmF2aWdhdGUoWydzZXJ2ZXItY29ubmVjdGlvbi1lcnJvciddKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgZGVwczogW1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBQb3J0YWxTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBUaXRsZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgUHJvbXB0VXBkYXRlU2VydmljZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgQmFyc2FTdG9yYWdlU2VydmljZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgU2VydmljZVdvcmtlckNvbW11bmNhdGlvblNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIE5ldHdvcmtTdGF0dXNTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBSb3V0ZXJcclxuICAgICAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICAgICAgICAgIG11bHRpOiB0cnVlXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IEVycm9ySGFuZGxlcixcclxuICAgICAgICAgICAgICAgICAgICB1c2VDbGFzczogR2xvYmFsRXJyb3JIYW5kbGVyXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcclxuICAgICAgICAgICAgICAgICAgICB1c2VGYWN0b3J5OiAobm90aWZpY2F0aW9uU2VydmljZTogTm90aWZpY2F0aW9uU2VydmljZSkgPT4gKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBCYXJzYUFwaS5VbC5Ob3RpZmljYXRpb25NYW5hZ2VyLm9uKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNob3dQb3B1cDogbm90aWZpY2F0aW9uU2VydmljZS5hZGROb3RpZmljYXRpb24uYmluZChub3RpZmljYXRpb25TZXJ2aWNlKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB1Ymxpc2hFdmVudDogbm90aWZpY2F0aW9uU2VydmljZS5oYW5kbGVUb3BpYy5iaW5kKG5vdGlmaWNhdGlvblNlcnZpY2UpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgZGVwczogW05vdGlmaWNhdGlvblNlcnZpY2VdLFxyXG4gICAgICAgICAgICAgICAgICAgIG11bHRpOiB0cnVlXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgLi4ucGlwZXMsXHJcbiAgICAgICAgICAgICAgICBQb3J0YWxTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgVXBsb2FkU2VydmljZSxcclxuICAgICAgICAgICAgICAgIEFwaVNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICBMb2dTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgQmFyc2FEaWFsb2dTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgVWlTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgTGF5b3V0U2VydmljZSxcclxuICAgICAgICAgICAgICAgIER5bmFtaWNDb21wb25lbnRTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgQnJlYWRjcnVtYlNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICBBdXRoR3VhcmQsXHJcbiAgICAgICAgICAgICAgICBOZXR3b3JrU3RhdHVzU2VydmljZSxcclxuICAgICAgICAgICAgICAgIEF1ZGlvUmVjb3JkaW5nU2VydmljZSxcclxuICAgICAgICAgICAgICAgIFZpZGVvUmVjb3JkaW5nU2VydmljZSxcclxuICAgICAgICAgICAgICAgIFJlZGlyZWN0SG9tZUd1YXJkLFxyXG4gICAgICAgICAgICAgICAgUHJvbXB0VXBkYXRlU2VydmljZSxcclxuICAgICAgICAgICAgICAgIE5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICBTZXJ2aWNlV29ya2VyTm90aWZpY2F0aW9uU2VydmljZSxcclxuICAgICAgICAgICAgICAgIFNhdmVTY3JvbGxQb3NpdGlvblNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICBMb2NhbFN0b3JhZ2VTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgSW5kZXhlZERiU2VydmljZSxcclxuICAgICAgICAgICAgICAgIEJiYlRyYW5zbGF0ZVBpcGUsXHJcbiAgICAgICAgICAgICAgICBCYXJzYVN0b3JhZ2VTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgU2VydmljZVdvcmtlckNvbW11bmNhdGlvblNlcnZpY2VcclxuICAgICAgICAgICAgXVxyXG4gICAgICAgIH07XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
516
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2Etbm92aW4tcmF5LWNvcmUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9iYXJzYS1ub3Zpbi1yYXktY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILGVBQWUsRUFFZixZQUFZLEVBRVosUUFBUSxFQUNSLGdCQUFnQixFQUNuQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDNUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDekYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDN0UsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdkYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7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Q1osOEJBQThCO3dCQUM5Qix3QkFBd0I7d0JBQ3hCLGVBQWU7d0JBQ2YsV0FBVzt3QkFDWCxtQkFBbUI7cUJBQ3RCO29CQUNELFNBQVMsRUFBRSxDQUFDLGlCQUFpQixDQUFDLHNCQUFzQixFQUFFLENBQUMsQ0FBQztpQkFDM0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQVBQX0lOSVRJQUxJWkVSLFxyXG4gICAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxyXG4gICAgRXJyb3JIYW5kbGVyLFxyXG4gICAgTW9kdWxlV2l0aFByb3ZpZGVycyxcclxuICAgIE5nTW9kdWxlLFxyXG4gICAgTk9fRVJST1JTX1NDSEVNQVxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBwcm92aWRlSHR0cENsaWVudCwgd2l0aEludGVyY2VwdG9yc0Zyb21EaSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgVGl0bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHsgaXNJbkxvY2FsTW9kZSB9IGZyb20gJy4vY29uc3RhbnRzJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5pbXBvcnQgeyBGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtL2Zvcm0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgRmllbGRVaUNvbXBvbmVudCB9IGZyb20gJy4vZmllbGQtdWkvZmllbGQtdWkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmVwb3J0Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnQtY29udGFpbmVyL3JlcG9ydC1jb250YWluZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQW5jaG9yU2Nyb2xsRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2FuY2hvci1zY3JvbGwuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQmFyc2FOb3ZpblJheUNvcmVSb3V0aW5nTW9kdWxlIH0gZnJvbSAnLi9iYXJzYS1ub3Zpbi1yYXktY29yZS1yb3V0aW5nLm1vZHVsZSc7XHJcbmltcG9ydCB7IE1vZGFsUm9vdENvbXBvbmVudCB9IGZyb20gJy4vbW9kYWwtcm9vdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGb3JtTmV3Q29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLW5ldy9mb3JtLW5ldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSb290UG9ydGFsQ29tcG9uZW50IH0gZnJvbSAnLi9yb290LXBvcnRhbC9yb290LXBvcnRhbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBdXRoR3VhcmQgfSBmcm9tICcuL2F1dGgtZ3VhcmQnO1xyXG5cclxuaW1wb3J0IHtcclxuICAgIER5bmFtaWNGb3JtQ29tcG9uZW50LFxyXG4gICAgRHluYW1pY0l0ZW1Db21wb25lbnQsXHJcbiAgICBCYXNlRHluYW1pY0NvbXBvbmVudCxcclxuICAgIER5bmFtaWNGb3JtVG9vbGJhcml0ZW1Db21wb25lbnQsXHJcbiAgICBEeW5hbWljTGF5b3V0Q29tcG9uZW50XHJcbn0gZnJvbSAnLi9keW5hbWljLWNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlZGlyZWN0SG9tZUd1YXJkIH0gZnJvbSAnLi9yZWRpcmVjdC1ob21lLWd1YXJkJztcclxuaW1wb3J0IHsgTm90Rm91bmRDb21wb25lbnQgfSBmcm9tICcuL25vdC1mb3VuZC9ub3QtZm91bmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUm9vdFBhZ2VDb21wb25lbnQgfSBmcm9tICcuL3Jvb3QtcGFnZS9yb290LXBhZ2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFzZU1vZHVsZSB9IGZyb20gJy4vYmFzZS5tb2R1bGUnO1xyXG5pbXBvcnQgeyBQb3J0YWxQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9wb3J0YWwtcGFnZS9wb3J0YWwtcGFnZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBHbG9iYWxFcnJvckhhbmRsZXIgfSBmcm9tICcuL2dsb2JhbC1lcnJvci1oYW5kbGVyJztcclxuXHJcbmltcG9ydCB7IFJlZGlyZWN0UmVwb3J0TmF2aWdhdG9yQ29tbWFuZENvbXBvbmVudCB9IGZyb20gJy4vcmVkaXJlY3QtcmVwb3J0LW5hdmlnYXRvci1jb21tYW5kL3JlZGlyZWN0LXJlcG9ydC1uYXZpZ2F0b3ItY29tbWFuZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFbXB0eVBhZ2VXaXRoUm91dGVyQW5kUm91dGVyT3V0bGV0Q29tcG9uZW50IH0gZnJvbSAnLi9lbXB0eS1wYWdlLXdpdGgtcm91dGVyLWFuZC1yb3V0ZXItb3V0bGV0L2VtcHR5LXBhZ2Utd2l0aC1yb3V0ZXItYW5kLXJvdXRlci1vdXRsZXQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQnV0dG9uTG9hZGluZ0NvbXBvbmVudCB9IGZyb20gJy4vYnV0dG9uLWxvYWRpbmcvYnV0dG9uLWxvYWRpbmcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVW5saW1pdFNlc3Npb25Db21wb25lbnQgfSBmcm9tICcuL3VubGltaXQtc2Vzc2lvbi91bmxpbWl0LXNlc3Npb24uY29tcG9uZW50JztcclxuXHJcbmltcG9ydCB7IEVtcHR5UGFnZUNvbXBvbmVudCB9IGZyb20gJy4vZW1wdHktcGFnZS9lbXB0eS1wYWdlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhQXBpIH0gZnJvbSAnLi9hYnN0cmFjdC1jbGFzc2VzL2JhcnNhLWFwaSc7XHJcbmltcG9ydCB7IEZvcm1QYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9hYnN0cmFjdC1jbGFzc2VzL2Zvcm0tcGFnZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGb3JtRmllbGRSZXBvcnRQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9hYnN0cmFjdC1jbGFzc2VzJztcclxuaW1wb3J0IHsgUG9ydGFsUGFnZVNpZGViYXJDb21wb25lbnQgfSBmcm9tICcuL3BvcnRhbC1wYWdlL3BvcnRhbC1zaWRlYmFyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhU2FwVWlGb3JtUGFnZU1vZHVsZSB9IGZyb20gJy4vZm9ybS1wYWdlLXJvdXRpbmcnO1xyXG5pbXBvcnQgeyBSZXNpemFibGVNb2R1bGUgfSBmcm9tICcuL3Jlc2l6YWJsZS1tb2R1bGUvcmVzaXphYmxlLm1vZHVsZSc7XHJcbmltcG9ydCB7XHJcbiAgICBCcmVhZGNydW1iU2VydmljZSxcclxuICAgIFVwbG9hZFNlcnZpY2UsXHJcbiAgICBBcGlTZXJ2aWNlLFxyXG4gICAgTG9nU2VydmljZSxcclxuICAgIEJhcnNhRGlhbG9nU2VydmljZSxcclxuICAgIFBvcnRhbFNlcnZpY2UsXHJcbiAgICBVaVNlcnZpY2UsXHJcbiAgICBMYXlvdXRTZXJ2aWNlLFxyXG4gICAgVGFicGFnZVNlcnZpY2UsXHJcbiAgICBEeW5hbWljQ29tcG9uZW50U2VydmljZSxcclxuICAgIE5ldHdvcmtTdGF0dXNTZXJ2aWNlLFxyXG4gICAgQXVkaW9SZWNvcmRpbmdTZXJ2aWNlLFxyXG4gICAgVmlkZW9SZWNvcmRpbmdTZXJ2aWNlLFxyXG4gICAgUHJvbXB0VXBkYXRlU2VydmljZSxcclxuICAgIEJhcnNhU3RvcmFnZVNlcnZpY2UsXHJcbiAgICBMb2NhbFN0b3JhZ2VTZXJ2aWNlLFxyXG4gICAgSW5kZXhlZERiU2VydmljZSxcclxuICAgIE5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbiAgICBTZXJ2aWNlV29ya2VyTm90aWZpY2F0aW9uU2VydmljZSxcclxuICAgIFNlcnZpY2VXb3JrZXJDb21tdW5jYXRpb25TZXJ2aWNlLFxyXG4gICAgU2F2ZVNjcm9sbFBvc2l0aW9uU2VydmljZVxyXG59IGZyb20gJy4vc2VydmljZXMnO1xyXG5pbXBvcnQge1xyXG4gICAgRHluYW1pY0NvbW1hbmREaXJlY3RpdmUsXHJcbiAgICBJdGVtc1JlbmRlcmVyRGlyZWN0aXZlLFxyXG4gICAgTnVtYmVyc09ubHlJbnB1dERpcmVjdGl2ZSxcclxuICAgIFBsYWNlSG9sZGVyRGlyZWN0aXZlLFxyXG4gICAgUmVuZGVyVWx2UGFnaW5EaXJlY3RpdmUsXHJcbiAgICBJbWFnZUxhenlEaXJlY3RpdmUsXHJcbiAgICBVbnRpbEluVmlld0RpcmVjdGl2ZSxcclxuICAgIEludGVyc2VjdGlvbk9ic2VydmVyRGlyZWN0aXZlLFxyXG4gICAgRWxsaXBzaWZ5RGlyZWN0aXZlLFxyXG4gICAgVGFibGVSZXNpemVyRGlyZWN0aXZlLFxyXG4gICAgQ29sdW1uUmVzaXplckRpcmVjdGl2ZSxcclxuICAgIEF0dHJSdGxEaXJlY3RpdmUsXHJcbiAgICBSZW5kZXJVbHZWaWV3ZXJEaXJlY3RpdmUsXHJcbiAgICBVbHZDb21tYW5kRGlyZWN0aXZlLFxyXG4gICAgV29yZmtmbG93d0Nob2ljZUNvbW1hbmREaXJlY3RpdmUsXHJcbiAgICBDb3B5RGlyZWN0aXZlLFxyXG4gICAgRWxsYXBzaXNUZXh0RGlyZWN0aXZlLFxyXG4gICAgRmlsbEVtcHR5U3BhY2VEaXJlY3RpdmUsXHJcbiAgICBGb3JtQ2xvc2VEaXJlY3RpdmUsXHJcbiAgICBNb2JpbGVEaXJlY3RpdmUsXHJcbiAgICBCb2R5Q2xpY2tEaXJlY3RpdmUsXHJcbiAgICBDb3VudERvd25EaXJlY3RpdmUsXHJcbiAgICBSb3V0ZUZvcm1DaGFuZ2VEaXJlY3RpdmUsXHJcbiAgICBEeW5hbWljU3R5bGVEaXJlY3RpdmUsXHJcbiAgICBOb3dyYXB0ZXh0RGlyZWN0aXZlLFxyXG4gICAgTGFiZWxtYW5kYXRvcnlEaXJlY3RpdmUsXHJcbiAgICBBYnNvbHV0ZURpdkJvZHlEaXJlY3RpdmUsXHJcbiAgICBMb2FkRXh0ZXJuYWxGaWxlc0RpcmVjdGl2ZSxcclxuICAgIFN0b3BQcm9wYWdhdGlvbkRpcmVjdGl2ZSxcclxuICAgIFByZXZlbnREZWZhdWx0RGlyZWN0aXZlLFxyXG4gICAgUmVuZGVyVWx2RGlyZWN0aXZlLFxyXG4gICAgUHJpbnRGaWxlc0RpcmVjdGl2ZSxcclxuICAgIFNhdmVJbWFnZURpcmVjdGl2ZSxcclxuICAgIFdlYk90cERpcmVjdGl2ZVxyXG59IGZyb20gJy4vZGlyZWN0aXZlcyc7XHJcbmltcG9ydCB7XHJcbiAgICBOdW1lcmFsUGlwZSxcclxuICAgIENhblVwbG9hZEZpbGVQaXBlLFxyXG4gICAgUmVtb3ZlTmV3bGluZVBpcGUsXHJcbiAgICBDb252ZXJ0VG9TdHlsZVBpcGUsXHJcbiAgICBGaWx0ZXJQaXBlLFxyXG4gICAgRmlsdGVyVGFiUGlwZSxcclxuICAgIEZpbHRlclN0cmluZ1BpcGUsXHJcbiAgICBGaW9yaUljb25QaXBlLFxyXG4gICAgU29ydFBpcGUsXHJcbiAgICBHcm91cEJ5UGlwZSxcclxuICAgIE11bHRpcGxlR3JvdXBCeVBpcGUsXHJcbiAgICBNb1ZhbHVlUGlwZSxcclxuICAgIE1vUmVwb3J0VmFsdWVQaXBlLFxyXG4gICAgSGVhZGVyRmFjZXRWYWx1ZVBpcGUsXHJcbiAgICBQaWN0dXJlRmllbGRTb3VyY2VQaXBlLFxyXG4gICAgVGxiQnV0dG9uc1BpcGUsXHJcbiAgICBTZXBlcmF0b3JGaXhQaXBlLFxyXG4gICAgTW9SZXBvcnRWYWx1ZUNvbmNhdFBpcGUsXHJcbiAgICBDb250ZXh0TWVudVBpcGUsXHJcbiAgICBCYmJUcmFuc2xhdGVQaXBlLFxyXG4gICAgQmFyc2FJY29uRGljdFBpcGUsXHJcbiAgICBGaWxlSW5mb0NvdW50UGlwZSxcclxuICAgIENvbnRyb2xVaVBpcGUsXHJcbiAgICBWaXNpYmxlVmFsdWVQaXBlLFxyXG4gICAgRGF0ZVRpbWVUb0NhcHRpb25QaXBlLFxyXG4gICAgRmlsdGVyVG9vbGJhckNvbnRyb2xQaXBlLFxyXG4gICAgTGlzdENvdW50UGlwZSxcclxuICAgIFRvdGFsU3VtbWFyeVBpcGUsXHJcbiAgICBNZXJnZUZpZWxkc1RvQ29sdW1uc1BpcGUsXHJcbiAgICBGaW5kQ29sdW1uQnlEYk5hbWVQaXBlLFxyXG4gICAgRmlsdGVyQ29sdW1uc0J5RGV0YWlsc1BpcGUsXHJcbiAgICBNb0luZm9VbHZNb0xpc3RQaXBlLFxyXG4gICAgTW9JbmZvVWx2UGFnaW5nUGlwZSxcclxuICAgIFJldmVyc2VQaXBlLFxyXG4gICAgQ29sdW1uQ3VzdG9tVWlQaXBlLFxyXG4gICAgU2FuaXRpemVUZXh0UGlwZSxcclxuICAgIENvbHVtbkN1c3RvbUNvbXBvbmVudFBpcGUsXHJcbiAgICBDb2x1bW5JY29uUGlwZSxcclxuICAgIENvbHVtblZhbHVlUGlwZSxcclxuICAgIFJvd051bWJlclBpcGUsXHJcbiAgICBDb21ib1Jvd0ltYWdlUGlwZSxcclxuICAgIElzRXhwYW5kZWROb2RlUGlwZSxcclxuICAgIFRoSW1hZ2VPckljb25lUGlwZSxcclxuICAgIEZpbmRQcmV2aWV3Q29sdW1uUGlwZSxcclxuICAgIFJlcGxhY2VQaXBlLFxyXG4gICAgRmlsdGVyV29ya2Zsb3dJbk1vYmlsZVBpcGUsXHJcbiAgICBIaWRlQ29sdW1uc0lubW9iaWxlUGlwZSxcclxuICAgIFN0cmluZ1RvTnVtYmVyUGlwZSxcclxuICAgIENvbHVtblZhbHVlT2ZQYXJhbWV0ZXJzUGlwZSxcclxuICAgIEhpZGVBY2NlcHRDYW5jZWxCdXR0b25zUGlwZSxcclxuICAgIEZpbHRlcklubGluZUFjdGlvbkxpc3RQaXBlLFxyXG4gICAgSXNJbWFnZVBpcGUsXHJcbiAgICBUb29sYmFyU2V0dGluZ3NQaXBlXHJcbn0gZnJvbSAnLi9waXBlcyc7XHJcblxyXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdmFyXHJcbmRlY2xhcmUgdmFyIEJCQjogYW55O1xyXG5cclxuY29uc3QgY29tcG9uZW50cyA9IFtcclxuICAgIEZvcm1Db21wb25lbnQsXHJcbiAgICBGaWVsZFVpQ29tcG9uZW50LFxyXG4gICAgTm90Rm91bmRDb21wb25lbnQsXHJcbiAgICBSb290UGFnZUNvbXBvbmVudCxcclxuICAgIFJvb3RQb3J0YWxDb21wb25lbnQsXHJcbiAgICBSZXBvcnRDb250YWluZXJDb21wb25lbnQsXHJcbiAgICBGb3JtTmV3Q29tcG9uZW50LFxyXG4gICAgTW9kYWxSb290Q29tcG9uZW50LFxyXG4gICAgUG9ydGFsUGFnZUNvbXBvbmVudCxcclxuICAgIFBvcnRhbFBhZ2VTaWRlYmFyQ29tcG9uZW50LFxyXG4gICAgUmVkaXJlY3RSZXBvcnROYXZpZ2F0b3JDb21tYW5kQ29tcG9uZW50LFxyXG4gICAgRW1wdHlQYWdlV2l0aFJvdXRlckFuZFJvdXRlck91dGxldENvbXBvbmVudCxcclxuICAgIER5bmFtaWNJdGVtQ29tcG9uZW50LFxyXG4gICAgRHluYW1pY0Zvcm1Db21wb25lbnQsXHJcbiAgICBCYXNlRHluYW1pY0NvbXBvbmVudCxcclxuICAgIER5bmFtaWNGb3JtVG9vbGJhcml0ZW1Db21wb25lbnQsXHJcbiAgICBEeW5hbWljTGF5b3V0Q29tcG9uZW50LFxyXG4gICAgRW1wdHlQYWdlQ29tcG9uZW50LFxyXG4gICAgRm9ybVBhZ2VDb21wb25lbnQsXHJcbiAgICBGb3JtRmllbGRSZXBvcnRQYWdlQ29tcG9uZW50LFxyXG4gICAgQnV0dG9uTG9hZGluZ0NvbXBvbmVudCxcclxuICAgIFVubGltaXRTZXNzaW9uQ29tcG9uZW50XHJcbl07XHJcbmNvbnN0IGRpcmVjdGl2ZXMgPSBbXHJcbiAgICBQbGFjZUhvbGRlckRpcmVjdGl2ZSxcclxuICAgIE51bWJlcnNPbmx5SW5wdXREaXJlY3RpdmUsXHJcbiAgICBSZW5kZXJVbHZWaWV3ZXJEaXJlY3RpdmUsXHJcbiAgICBSZW5kZXJVbHZQYWdpbkRpcmVjdGl2ZSxcclxuICAgIEFuY2hvclNjcm9sbERpcmVjdGl2ZSxcclxuICAgIEl0ZW1zUmVuZGVyZXJEaXJlY3RpdmUsXHJcbiAgICBVbHZDb21tYW5kRGlyZWN0aXZlLFxyXG4gICAgRHluYW1pY0NvbW1hbmREaXJlY3RpdmUsXHJcbiAgICBXb3Jma2Zsb3d3Q2hvaWNlQ29tbWFuZERpcmVjdGl2ZSxcclxuICAgIEltYWdlTGF6eURpcmVjdGl2ZSxcclxuICAgIFVudGlsSW5WaWV3RGlyZWN0aXZlLFxyXG4gICAgSW50ZXJzZWN0aW9uT2JzZXJ2ZXJEaXJlY3RpdmUsXHJcbiAgICBFbGxpcHNpZnlEaXJlY3RpdmUsXHJcbiAgICBUYWJsZVJlc2l6ZXJEaXJlY3RpdmUsXHJcbiAgICBDb2x1bW5SZXNpemVyRGlyZWN0aXZlLFxyXG4gICAgQXR0clJ0bERpcmVjdGl2ZSxcclxuICAgIENvcHlEaXJlY3RpdmUsXHJcbiAgICBFbGxhcHNpc1RleHREaXJlY3RpdmUsXHJcbiAgICBGaWxsRW1wdHlTcGFjZURpcmVjdGl2ZSxcclxuICAgIEZvcm1DbG9zZURpcmVjdGl2ZSxcclxuICAgIE1vYmlsZURpcmVjdGl2ZSxcclxuICAgIEJvZHlDbGlja0RpcmVjdGl2ZSxcclxuICAgIENvdW50RG93bkRpcmVjdGl2ZSxcclxuICAgIFJvdXRlRm9ybUNoYW5nZURpcmVjdGl2ZSxcclxuICAgIER5bmFtaWNTdHlsZURpcmVjdGl2ZSxcclxuICAgIE5vd3JhcHRleHREaXJlY3RpdmUsXHJcbiAgICBMYWJlbG1hbmRhdG9yeURpcmVjdGl2ZSxcclxuICAgIEFic29sdXRlRGl2Qm9keURpcmVjdGl2ZSxcclxuICAgIExvYWRFeHRlcm5hbEZpbGVzRGlyZWN0aXZlLFxyXG4gICAgU3RvcFByb3BhZ2F0aW9uRGlyZWN0aXZlLFxyXG4gICAgUHJldmVudERlZmF1bHREaXJlY3RpdmUsXHJcbiAgICBSZW5kZXJVbHZEaXJlY3RpdmUsXHJcbiAgICBQcmludEZpbGVzRGlyZWN0aXZlLFxyXG4gICAgU2F2ZUltYWdlRGlyZWN0aXZlLFxyXG4gICAgV2ViT3RwRGlyZWN0aXZlXHJcbl07XHJcbmNvbnN0IHBpcGVzID0gW1xyXG4gICAgTnVtZXJhbFBpcGUsXHJcbiAgICBDYW5VcGxvYWRGaWxlUGlwZSxcclxuICAgIFJlbW92ZU5ld2xpbmVQaXBlLFxyXG4gICAgQ29udmVydFRvU3R5bGVQaXBlLFxyXG4gICAgRmlsdGVyUGlwZSxcclxuICAgIEZpbHRlclRhYlBpcGUsXHJcbiAgICBGaWx0ZXJTdHJpbmdQaXBlLFxyXG4gICAgRmlvcmlJY29uUGlwZSxcclxuICAgIFNvcnRQaXBlLFxyXG4gICAgR3JvdXBCeVBpcGUsXHJcbiAgICBNdWx0aXBsZUdyb3VwQnlQaXBlLFxyXG4gICAgTW9WYWx1ZVBpcGUsXHJcbiAgICBNb1JlcG9ydFZhbHVlUGlwZSxcclxuICAgIEhlYWRlckZhY2V0VmFsdWVQaXBlLFxyXG4gICAgUGljdHVyZUZpZWxkU291cmNlUGlwZSxcclxuICAgIFRsYkJ1dHRvbnNQaXBlLFxyXG4gICAgU2VwZXJhdG9yRml4UGlwZSxcclxuICAgIE1vUmVwb3J0VmFsdWVDb25jYXRQaXBlLFxyXG4gICAgQ29udGV4dE1lbnVQaXBlLFxyXG4gICAgQmJiVHJhbnNsYXRlUGlwZSxcclxuICAgIEJhcnNhSWNvbkRpY3RQaXBlLFxyXG4gICAgRmlsZUluZm9Db3VudFBpcGUsXHJcbiAgICBDb250cm9sVWlQaXBlLFxyXG4gICAgVmlzaWJsZVZhbHVlUGlwZSxcclxuICAgIERhdGVUaW1lVG9DYXB0aW9uUGlwZSxcclxuICAgIEZpbHRlclRvb2xiYXJDb250cm9sUGlwZSxcclxuICAgIExpc3RDb3VudFBpcGUsXHJcbiAgICBUb3RhbFN1bW1hcnlQaXBlLFxyXG4gICAgTWVyZ2VGaWVsZHNUb0NvbHVtbnNQaXBlLFxyXG4gICAgRmluZENvbHVtbkJ5RGJOYW1lUGlwZSxcclxuICAgIEZpbHRlckNvbHVtbnNCeURldGFpbHNQaXBlLFxyXG4gICAgTW9JbmZvVWx2TW9MaXN0UGlwZSxcclxuICAgIE1vSW5mb1VsdlBhZ2luZ1BpcGUsXHJcbiAgICBSZXZlcnNlUGlwZSxcclxuICAgIENvbHVtbkN1c3RvbVVpUGlwZSxcclxuICAgIFNhbml0aXplVGV4dFBpcGUsXHJcbiAgICBDb2x1bW5DdXN0b21Db21wb25lbnRQaXBlLFxyXG4gICAgQ29sdW1uSWNvblBpcGUsXHJcbiAgICBDb2x1bW5WYWx1ZVBpcGUsXHJcbiAgICBSb3dOdW1iZXJQaXBlLFxyXG4gICAgQ29tYm9Sb3dJbWFnZVBpcGUsXHJcbiAgICBJc0V4cGFuZGVkTm9kZVBpcGUsXHJcbiAgICBUaEltYWdlT3JJY29uZVBpcGUsXHJcbiAgICBGaW5kUHJldmlld0NvbHVtblBpcGUsXHJcbiAgICBSZXBsYWNlUGlwZSxcclxuICAgIEZpbHRlcldvcmtmbG93SW5Nb2JpbGVQaXBlLFxyXG4gICAgSGlkZUNvbHVtbnNJbm1vYmlsZVBpcGUsXHJcbiAgICBTdHJpbmdUb051bWJlclBpcGUsXHJcbiAgICBDb2x1bW5WYWx1ZU9mUGFyYW1ldGVyc1BpcGUsXHJcbiAgICBIaWRlQWNjZXB0Q2FuY2VsQnV0dG9uc1BpcGUsXHJcbiAgICBGaWx0ZXJJbmxpbmVBY3Rpb25MaXN0UGlwZSxcclxuICAgIElzSW1hZ2VQaXBlLFxyXG4gICAgVG9vbGJhclNldHRpbmdzUGlwZVxyXG5dO1xyXG5jb25zdCBmdW5jdGlvbkwxID0gZnVuY3Rpb24gKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgaWYgKEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuQ3VsdHVyZSA9PT0gJ2ZhLUlSJykge1xyXG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcclxuICAgIH1cclxuICAgIHJldHVybiBmZXRjaChgL0xvY2FsaXphdGlvbi9UcmFuc2xhdGlvbi9kYXRhXyR7QmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5DdWx0dXJlfS5qc29uYClcclxuICAgICAgICAudGhlbihmdW5jdGlvbiAocmVzKSB7XHJcbiAgICAgICAgICAgIHJldHVybiByZXMuanNvbigpO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLnRoZW4oZnVuY3Rpb24gKHJlcykge1xyXG4gICAgICAgICAgICBpZiAoQkJCKSB7XHJcbiAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZVxyXG4gICAgICAgICAgICAgICAgQkJCID0geyAuLi5CYXJzYUFwaS5CQkIsIC4uLnJlcyB9O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbn07XHJcbmNvbnN0IGZ1bmN0aW9uTDIgPSBmdW5jdGlvbiAocG9ydGFsU2VydmljZTogUG9ydGFsU2VydmljZSwgdGl0bGVTZXJ2aWNlOiBUaXRsZSk6IFByb21pc2U8YW55PiB7XHJcbiAgICBwb3J0YWxTZXJ2aWNlLmxvYWRVc2VyUG9ydGFsU2V0dGluZygpO1xyXG4gICAgcG9ydGFsU2VydmljZS5sb2FkUG9ydGFsRGF0YVN5bmMoKTtcclxuICAgIGlmIChwb3J0YWxTZXJ2aWNlLnBvcnRhbERhdGE/LlRpdGxlKSB7XHJcbiAgICAgICAgdGl0bGVTZXJ2aWNlLnNldFRpdGxlKHBvcnRhbFNlcnZpY2UucG9ydGFsRGF0YT8uVGl0bGUpO1xyXG4gICAgfVxyXG4gICAgaWYgKEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuSXNBbm9ueW1vdXMgJiYgIUJhcnNhQXBpLkxvZ2luRm9ybURhdGEuSXNTZXJ2aWNlRGVzaykge1xyXG4gICAgICAgIHJldHVybiBwb3J0YWxTZXJ2aWNlLmxvYWRTeXN0ZW0oQmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5Qb3J0YWxTeXN0ZW1JZCk7IC8vIGxvZ2luIGZvcm0gbmVlZCBqdXN0IHBvcnRhbCBzeXN0ZW1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuIHBvcnRhbFNlcnZpY2UubG9hZFN5c3RlbSgpOyAvLyBsb2FkIGFsbCBzeXN0ZW1zIGlmIHVzZXIgaXMgbG9nZ2VkIGluXHJcbiAgICB9XHJcbn07XHJcbkBOZ01vZHVsZSh7XHJcbiAgICBkZWNsYXJhdGlvbnM6IFsuLi5jb21wb25lbnRzLCAuLi5waXBlcywgLi4uZGlyZWN0aXZlc10sXHJcbiAgICBleHBvcnRzOiBbLi4uY29tcG9uZW50cywgLi4ucGlwZXMsIC4uLmRpcmVjdGl2ZXNdLFxyXG4gICAgc2NoZW1hczogW05PX0VSUk9SU19TQ0hFTUFdLFxyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIENvbW1vbk1vZHVsZSxcclxuICAgICAgICBCYXJzYU5vdmluUmF5Q29yZVJvdXRpbmdNb2R1bGUsXHJcbiAgICAgICAgQmFyc2FTYXBVaUZvcm1QYWdlTW9kdWxlLFxyXG4gICAgICAgIFJlc2l6YWJsZU1vZHVsZSxcclxuICAgICAgICBGb3Jtc01vZHVsZSxcclxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlXHJcbiAgICBdLFxyXG4gICAgcHJvdmlkZXJzOiBbcHJvdmlkZUh0dHBDbGllbnQod2l0aEludGVyY2VwdG9yc0Zyb21EaSgpKV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEJhcnNhTm92aW5SYXlDb3JlTW9kdWxlIGV4dGVuZHMgQmFzZU1vZHVsZSB7XHJcbiAgICBwcm90ZWN0ZWQgZHluYW1pY0NvbXBvbmVudHMgPSBbLi4uY29tcG9uZW50c107XHJcbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgZGNtOiBEeW5hbWljQ29tcG9uZW50U2VydmljZSwgcHJvdGVjdGVkIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSB7XHJcbiAgICAgICAgc3VwZXIoZGNtLCBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsICdCYXJzYU5vdmluUmF5Q29yZU1vZHVsZScpO1xyXG4gICAgfVxyXG4gICAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxCYXJzYU5vdmluUmF5Q29yZU1vZHVsZT4ge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIG5nTW9kdWxlOiBCYXJzYU5vdmluUmF5Q29yZU1vZHVsZSxcclxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxyXG4gICAgICAgICAgICAgICAgICAgIHVzZUZhY3Rvcnk6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZVNlcnZpY2U6IFRpdGxlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvbXB0VXBkYXRlU2VydmljZTogUHJvbXB0VXBkYXRlU2VydmljZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhcnNhU3RvcmFnZVNlcnZpY2U6IEJhcnNhU3RvcmFnZVNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd0NvbW11bmljYXRpb246IFNlcnZpY2VXb3JrZXJDb21tdW5jYXRpb25TZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV0d29ya1N0YXR1c1NlcnZpY2U6IE5ldHdvcmtTdGF0dXNTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcm91dGVyOiBSb3V0ZXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKSA9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpbkxvY2FsTW9kZSA9IGlzSW5Mb2NhbE1vZGUoKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcG9ydGFsU2VydmljZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sb2FkU2VydmVyU3RhcnR1cERhdGEoKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKCgpID0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByb21pc2UuYWxsKFtmdW5jdGlvbkwxKCksIGZ1bmN0aW9uTDIocG9ydGFsU2VydmljZSwgdGl0bGVTZXJ2aWNlKV0pLmZpbmFsbHkoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvbXB0VXBkYXRlU2VydmljZS5jaGVja0ZvclVwZGF0ZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFyc2FTdG9yYWdlU2VydmljZS5pbml0KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd0NvbW11bmljYXRpb24uaW5pdCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGUpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFpbkxvY2FsTW9kZSAmJiAhbmF2aWdhdG9yLm9uTGluZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ25vLWludGVybmV0Jyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3V0ZXIubmF2aWdhdGUoWyduby1pbnRlcm5ldCddKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlci5uYXZpZ2F0ZShbJ3NlcnZlci1jb25uZWN0aW9uLWVycm9yJ10pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICBkZXBzOiBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFBvcnRhbFNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFRpdGxlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBQcm9tcHRVcGRhdGVTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBCYXJzYVN0b3JhZ2VTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBTZXJ2aWNlV29ya2VyQ29tbXVuY2F0aW9uU2VydmljZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgTmV0d29ya1N0YXR1c1NlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFJvdXRlclxyXG4gICAgICAgICAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgICAgICAgICAgbXVsdGk6IHRydWVcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogRXJyb3JIYW5kbGVyLFxyXG4gICAgICAgICAgICAgICAgICAgIHVzZUNsYXNzOiBHbG9iYWxFcnJvckhhbmRsZXJcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxyXG4gICAgICAgICAgICAgICAgICAgIHVzZUZhY3Rvcnk6IChub3RpZmljYXRpb25TZXJ2aWNlOiBOb3RpZmljYXRpb25TZXJ2aWNlKSA9PiAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEJhcnNhQXBpLlVsLk5vdGlmaWNhdGlvbk1hbmFnZXIub24oe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU2hvd1BvcHVwOiBub3RpZmljYXRpb25TZXJ2aWNlLmFkZE5vdGlmaWNhdGlvbi5iaW5kKG5vdGlmaWNhdGlvblNlcnZpY2UpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgUHVibGlzaEV2ZW50OiBub3RpZmljYXRpb25TZXJ2aWNlLmhhbmRsZVRvcGljLmJpbmQobm90aWZpY2F0aW9uU2VydmljZSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICBkZXBzOiBbTm90aWZpY2F0aW9uU2VydmljZV0sXHJcbiAgICAgICAgICAgICAgICAgICAgbXVsdGk6IHRydWVcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAuLi5waXBlcyxcclxuICAgICAgICAgICAgICAgIFBvcnRhbFNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICBVcGxvYWRTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgQXBpU2VydmljZSxcclxuICAgICAgICAgICAgICAgIExvZ1NlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICBCYXJzYURpYWxvZ1NlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICBVaVNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICBMYXlvdXRTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgVGFicGFnZVNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICBEeW5hbWljQ29tcG9uZW50U2VydmljZSxcclxuICAgICAgICAgICAgICAgIEJyZWFkY3J1bWJTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgQXV0aEd1YXJkLFxyXG4gICAgICAgICAgICAgICAgTmV0d29ya1N0YXR1c1NlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICBBdWRpb1JlY29yZGluZ1NlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICBWaWRlb1JlY29yZGluZ1NlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICBSZWRpcmVjdEhvbWVHdWFyZCxcclxuICAgICAgICAgICAgICAgIFByb21wdFVwZGF0ZVNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICBOb3RpZmljYXRpb25TZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgU2VydmljZVdvcmtlck5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICBTYXZlU2Nyb2xsUG9zaXRpb25TZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgTG9jYWxTdG9yYWdlU2VydmljZSxcclxuICAgICAgICAgICAgICAgIEluZGV4ZWREYlNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICBCYmJUcmFuc2xhdGVQaXBlLFxyXG4gICAgICAgICAgICAgICAgQmFyc2FTdG9yYWdlU2VydmljZSxcclxuICAgICAgICAgICAgICAgIFNlcnZpY2VXb3JrZXJDb21tdW5jYXRpb25TZXJ2aWNlXHJcbiAgICAgICAgICAgIF1cclxuICAgICAgICB9O1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|