@colijnit/sharedcomponents 255.1.19 → 255.1.20
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/bundles/colijnit-sharedcomponents.umd.js +506 -676
- package/bundles/colijnit-sharedcomponents.umd.js.map +1 -1
- package/colijnit-sharedcomponents.d.ts +120 -123
- package/colijnit-sharedcomponents.metadata.json +1 -1
- package/esm2015/colijnit-sharedcomponents.js +121 -124
- package/esm2015/lib/components/activity-list/activity-list.component.js +3 -3
- package/esm2015/lib/components/activity-list-header/activity-list-header.component.js +4 -4
- package/esm2015/lib/components/activity-list-header/activity-list-header.module.js +9 -9
- package/esm2015/lib/components/activity-list-header/components/period-filter/period-filter-popup.component.js +3 -3
- package/esm2015/lib/components/activity-list-header/components/period-filter/period-filter.component.js +2 -2
- package/esm2015/lib/components/activity-list-header/components/period-filter/period-filter.module.js +9 -10
- package/esm2015/lib/components/activity-overview-component/component-activity-overview.component.js +8 -11
- package/esm2015/lib/components/activity-overview-component/component-activity-overview.module.js +8 -8
- package/esm2015/lib/components/activity-overview-component/components/base-activity-overview.component.js +3 -3
- package/esm2015/lib/components/app-file-dropzone/app-file-dropzone.component.js +3 -3
- package/esm2015/lib/components/email-selector/email-selector.module.js +9 -9
- package/esm2015/lib/components/file-upload-popup/file-upload-popup.component.js +7 -7
- package/esm2015/lib/components/file-upload-popup/file-upload-popup.module.js +8 -8
- package/esm2015/lib/components/files-upload/components/base-file-upload.component.js +3 -3
- package/esm2015/lib/components/files-upload/files-upload.component.js +5 -5
- package/esm2015/lib/components/files-upload/files-upload.module.js +14 -14
- package/esm2015/lib/components/image-display/image-display.component.js +2 -2
- package/esm2015/lib/components/image-display/image-display.module.js +7 -7
- package/esm2015/lib/components/modify-task-form/components/activity-summary-block/activity-summary-block.component.js +3 -3
- package/esm2015/lib/components/modify-task-form/components/activity-summary-block/activity-summary-block.module.js +7 -7
- package/esm2015/lib/components/modify-task-form/components/base-activity-summary.component.js +3 -3
- package/esm2015/lib/components/modify-task-form/components/creation-summary-block/creation-summary-block.component.js +7 -7
- package/esm2015/lib/components/modify-task-form/components/creation-summary-block/creation-summary-block.module.js +8 -8
- package/esm2015/lib/components/modify-task-form/components/executive-summary-block/executive-summary-block.component.js +6 -6
- package/esm2015/lib/components/modify-task-form/components/executive-summary-block/executive-summary-block.module.js +7 -7
- package/esm2015/lib/components/modify-task-form/components/notification-summary-block/notification-summary-block.component.js +3 -3
- package/esm2015/lib/components/modify-task-form/components/status-summary-block/status-summary-block.component.js +6 -6
- package/esm2015/lib/components/modify-task-form/components/status-summary-block/status-summary-block.module.js +7 -7
- package/esm2015/lib/components/modify-task-form/components/task-details/task-details.component.js +7 -7
- package/esm2015/lib/components/modify-task-form/components/task-details/task-details.module.js +7 -7
- package/esm2015/lib/components/modify-task-form/modify-task-form.component.js +7 -7
- package/esm2015/lib/components/modify-task-form/modify-task-form.module.js +15 -15
- package/esm2015/lib/components/multi-property-toggler/multiple-property-toggler.component.js +2 -2
- package/esm2015/lib/components/open-activity-list/component-activity-list.module.js +10 -10
- package/esm2015/lib/components/open-activity-list/components/personal-activity-overview/personal-activity-overview.component.js +1 -1
- package/esm2015/lib/components/role-email-selector/role-email-selector.component.js +3 -3
- package/esm2015/lib/components/role-email-selector/role-email-selector.module.js +8 -8
- package/esm2015/lib/components/stock/components/allocation-stock-history/allocation-stock-history.component.js +14 -14
- package/esm2015/lib/components/stock/components/order-commission-stock-history/order-commission-stock-history.component.js +14 -14
- package/esm2015/lib/components/stock/components/order-stock-history/order-stock-history.component.js +14 -14
- package/esm2015/lib/components/stock/components/order-stock-tab/order-stock-tab.component.js +7 -7
- package/esm2015/lib/components/stock/components/order-supply-stock-history/order-supply-stock-history.component.js +14 -14
- package/esm2015/lib/components/stock/components/order-tab/order-tab.component.js +9 -9
- package/esm2015/lib/components/stock/components/stock-history/stock-history.component.js +14 -14
- package/esm2015/lib/components/stock/components/stock-location/components/stock-location-popup/stock-location-popup.component.js +14 -14
- package/esm2015/lib/components/stock/components/stock-location/stock-location.component.js +15 -15
- package/esm2015/lib/components/stock/components/stock-prognose/stock-prognose.component.js +11 -11
- package/esm2015/lib/components/stock/components/stock-tab/stock-tab.component.js +11 -18
- package/esm2015/lib/components/stock/stock-history-tabs/stock-history-tabs.component.js +6 -6
- package/esm2015/lib/components/stock/stock-information/stock-information.component.js +6 -6
- package/esm2015/lib/components/stock/stock-information-grid/stock-information-grid.component.js +61 -61
- package/esm2015/lib/components/stock/stock-tabs/stock-tabs.component.js +26 -29
- package/esm2015/lib/components/stock/stock-transfer/stock-change-amount.component.js +5 -5
- package/esm2015/lib/components/stock/stock-transfer/stock-transfer.component.js +12 -12
- package/esm2015/lib/components/stock/stock.component.js +4 -15
- package/esm2015/lib/components/stock/stock.module.js +6 -8
- package/esm2015/lib/components/tab-bar/tab-bar.component.js +9 -21
- package/esm2015/lib/components/tab-bar/tab-bar.module.js +3 -2
- package/esm2015/lib/components/task-creator/task-creator.component.js +24 -24
- package/esm2015/lib/components/task-creator/task-creator.module.js +11 -11
- package/esm2015/lib/components/task-modifyer/task-modifier.component.js +15 -15
- package/esm2015/lib/components/task-modifyer/task-modifyer.module..js +9 -9
- package/esm2015/lib/components/workflow-info-tiles/components/workflow-info-tile.component.js +2 -2
- package/esm2015/lib/components/workflow-info-tiles/components/workflow-info-tile.module.js +6 -6
- package/esm2015/lib/components/workflow-notification-toggle/workflow-notification-toggle.component.js +2 -2
- package/esm2015/lib/components/workflow-notification-toggle/workflow-notification-toggle.module.js +9 -9
- package/esm2015/lib/res/dictionary/dictionaries.js +9 -0
- package/esm2015/lib/service/options.service.js +5 -5
- package/esm2015/lib/service/shared.service.js +5 -5
- package/esm2015/lib/translation/shared-components-dictionary.service.js +69 -0
- package/esm2015/lib/translation/shared-components-translation.module.js +15 -0
- package/esm2015/lib/translation/shared-localize.pipe.js +26 -0
- package/esm2015/lib/utils/enum-utils.js +1 -1
- package/esm2015/public-api.js +3 -2
- package/fesm2015/colijnit-sharedcomponents.js +504 -656
- package/fesm2015/colijnit-sharedcomponents.js.map +1 -1
- package/lib/components/activity-list/activity-list.component.d.ts +2 -2
- package/lib/components/activity-overview-component/component-activity-overview.component.d.ts +3 -3
- package/lib/components/activity-overview-component/components/base-activity-overview.component.d.ts +2 -2
- package/lib/components/app-file-dropzone/app-file-dropzone.component.d.ts +3 -3
- package/lib/components/files-upload/components/base-file-upload.component.d.ts +3 -3
- package/lib/components/files-upload/files-upload.component.d.ts +2 -2
- package/lib/components/modify-task-form/components/base-activity-summary.component.d.ts +3 -3
- package/lib/components/modify-task-form/components/creation-summary-block/creation-summary-block.component.d.ts +3 -3
- package/lib/components/modify-task-form/components/executive-summary-block/executive-summary-block.component.d.ts +3 -3
- package/lib/components/modify-task-form/components/notification-summary-block/notification-summary-block.component.d.ts +3 -3
- package/lib/components/modify-task-form/components/status-summary-block/status-summary-block.component.d.ts +3 -3
- package/lib/components/modify-task-form/components/task-details/task-details.component.d.ts +3 -3
- package/lib/components/stock/stock-tabs/stock-tabs.component.d.ts +17 -19
- package/lib/components/stock/stock.component.d.ts +2 -6
- package/lib/components/tab-bar/tab-bar.component.d.ts +0 -3
- package/lib/components/task-creator/task-creator.component.d.ts +17 -17
- package/lib/components/task-modifyer/task-modifier.component.d.ts +13 -13
- package/lib/res/dictionary/dictionaries.d.ts +18805 -0
- package/lib/service/options.service.d.ts +2 -2
- package/lib/service/shared.service.d.ts +3 -3
- package/lib/{service/dictionary.service.d.ts → translation/shared-components-dictionary.service.d.ts} +5 -7
- package/lib/translation/shared-components-translation.module.d.ts +2 -0
- package/lib/translation/shared-localize.pipe.d.ts +7 -0
- package/lib/utils/enum-utils.d.ts +3 -3
- package/package.json +1 -1
- package/public-api.d.ts +2 -1
- package/3rdpartylicenses.txt +0 -1405
- package/esm2015/lib/assets/dictionary/text.properties.js +0 -11
- package/esm2015/lib/components/stock/localization/translation.js +0 -78
- package/esm2015/lib/localization/localization.module.js +0 -19
- package/esm2015/lib/localization/localize.pipe.js +0 -26
- package/esm2015/lib/localization/localize.service.js +0 -30
- package/esm2015/lib/localization/translation.js +0 -3
- package/esm2015/lib/service/dictionary.service.js +0 -76
- package/favicon.ico +0 -0
- package/index.html +0 -12
- package/lib/assets/dictionary/text.properties.d.ts +0 -3
- package/lib/components/stock/localization/translation.d.ts +0 -75
- package/lib/localization/localization.module.d.ts +0 -2
- package/lib/localization/localize.pipe.d.ts +0 -7
- package/lib/localization/localize.service.d.ts +0 -7
- package/lib/localization/translation.d.ts +0 -2
- package/main.871f327ed7ea343aa7b1.js +0 -1
- package/polyfills.907fe9d1887c5de17993.js +0 -1
- package/runtime.8aac21847ed3d3829cca.js +0 -1
- package/styles.47560e51cc093de66ebe.css +0 -1
|
@@ -1,19 +1,17 @@
|
|
|
1
1
|
import { ChangeDetectorRef, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';
|
|
2
|
-
import { Icon } from
|
|
3
|
-
import { GetStockHistoryRequest } from
|
|
4
|
-
import { StockService } from
|
|
5
|
-
import { ArticleTransaction } from
|
|
6
|
-
import { StockManagementWarehouses } from
|
|
7
|
-
import { ArticleStockManagement } from
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import { SharedCfgName } from "../../../enum/shared-cfg-name.enum";
|
|
2
|
+
import { Icon } from '../../../enum/icon.enum';
|
|
3
|
+
import { GetStockHistoryRequest } from '@colijnit/articleapi/build/model/get-stock-history-request';
|
|
4
|
+
import { StockService } from '../../../service/stock.service';
|
|
5
|
+
import { ArticleTransaction } from '@colijnit/articleapi/build/model/article-transaction';
|
|
6
|
+
import { StockManagementWarehouses } from '@colijnit/articleapi/build/model/stock-management-warehouses.bo';
|
|
7
|
+
import { ArticleStockManagement } from '@colijnit/articleapi/build/model/article-stock-management';
|
|
8
|
+
import { SharedCfgName } from '../../../enum/shared-cfg-name.enum';
|
|
9
|
+
import { SharedComponentsDictionaryService } from '../../../translation/shared-components-dictionary.service';
|
|
11
10
|
export class StockTabsComponent {
|
|
12
|
-
constructor(_stockService,
|
|
11
|
+
constructor(_stockService, _dictionaryService, _changeDetector) {
|
|
13
12
|
this._stockService = _stockService;
|
|
14
|
-
this.
|
|
13
|
+
this._dictionaryService = _dictionaryService;
|
|
15
14
|
this._changeDetector = _changeDetector;
|
|
16
|
-
this._screenConfigService = _screenConfigService;
|
|
17
15
|
this.icons = Icon;
|
|
18
16
|
this.stockInformation = [];
|
|
19
17
|
this.warehouses = [];
|
|
@@ -37,28 +35,28 @@ export class StockTabsComponent {
|
|
|
37
35
|
}
|
|
38
36
|
ngOnInit() {
|
|
39
37
|
this.tabs = [
|
|
40
|
-
{ title: this.
|
|
41
|
-
{ title: this.
|
|
42
|
-
{ title: this.
|
|
43
|
-
{ title: this.
|
|
44
|
-
{ title: this.
|
|
45
|
-
{ title: this.
|
|
38
|
+
{ title: this._dictionaryService.get('OVERVIEW'), active: true, cfg: SharedCfgName.OverviewDetails },
|
|
39
|
+
{ title: this._dictionaryService.get('STOCK_FORECAST'), active: false, cfg: SharedCfgName.StockForecast },
|
|
40
|
+
{ title: this._dictionaryService.get('STOCK_DETAILS'), active: false, cfg: SharedCfgName.InventoryForecast },
|
|
41
|
+
{ title: this._dictionaryService.get('ALREADY_IN_ORDER'), active: false, cfg: SharedCfgName.InventoryDetails },
|
|
42
|
+
{ title: this._dictionaryService.get('IN_ORDER'), active: false, cfg: SharedCfgName.InOrder },
|
|
43
|
+
{ title: this._dictionaryService.get('HISTORY'), active: false, cfg: SharedCfgName.History },
|
|
46
44
|
];
|
|
47
45
|
this.historyTabs = [
|
|
48
|
-
{ title: this.
|
|
46
|
+
{ title: this._dictionaryService.get('STOCK'), active: true, cfg: SharedCfgName.HistoryStock },
|
|
49
47
|
{
|
|
50
|
-
title: this.
|
|
48
|
+
title: this._dictionaryService.get('ORDER_STOCK'),
|
|
51
49
|
active: false,
|
|
52
50
|
cfg: SharedCfgName.HistoryOrderStock
|
|
53
51
|
},
|
|
54
52
|
{
|
|
55
|
-
title: this.
|
|
53
|
+
title: this._dictionaryService.get('ORDER_COMMISSION'),
|
|
56
54
|
active: false,
|
|
57
55
|
cfg: SharedCfgName.HistoryOrderCommission
|
|
58
56
|
},
|
|
59
|
-
{ title: this.
|
|
57
|
+
{ title: this._dictionaryService.get('ORDER'), active: false, cfg: SharedCfgName.HistoryOrder },
|
|
60
58
|
{
|
|
61
|
-
title: this.
|
|
59
|
+
title: this._dictionaryService.get('ALLOCATION'),
|
|
62
60
|
active: false,
|
|
63
61
|
cfg: SharedCfgName.HistoryAssign
|
|
64
62
|
},
|
|
@@ -176,8 +174,8 @@ StockTabsComponent.decorators = [
|
|
|
176
174
|
{ type: Component, args: [{
|
|
177
175
|
selector: "co-stock-tabs",
|
|
178
176
|
template: `
|
|
179
|
-
<co-tab-bar [wareHouseLabel]="'CHOICES' |
|
|
180
|
-
[wareHouseSearchLabel]="'SEARCH' |
|
|
177
|
+
<co-tab-bar [wareHouseLabel]="'CHOICES' | sharedLocalize"
|
|
178
|
+
[wareHouseSearchLabel]="'SEARCH' | sharedLocalize"
|
|
181
179
|
[tabs]="tabs"
|
|
182
180
|
[dataWareHouseCode]="warehouses"
|
|
183
181
|
[selectedWarehouse]="selectedWarehouse"
|
|
@@ -247,9 +245,8 @@ StockTabsComponent.decorators = [
|
|
|
247
245
|
];
|
|
248
246
|
StockTabsComponent.ctorParameters = () => [
|
|
249
247
|
{ type: StockService },
|
|
250
|
-
{ type:
|
|
251
|
-
{ type: ChangeDetectorRef }
|
|
252
|
-
{ type: BaseModuleScreenConfigService }
|
|
248
|
+
{ type: SharedComponentsDictionaryService },
|
|
249
|
+
{ type: ChangeDetectorRef }
|
|
253
250
|
];
|
|
254
251
|
StockTabsComponent.propDecorators = {
|
|
255
252
|
stockInformation: [{ type: Input }],
|
|
@@ -260,4 +257,4 @@ StockTabsComponent.propDecorators = {
|
|
|
260
257
|
transferIconClicked: [{ type: Output }],
|
|
261
258
|
sendMethodDialogClicked: [{ type: Output }]
|
|
262
259
|
};
|
|
263
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2stdGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zdG9jay9zdG9jay10YWJzL3N0b2NrLXRhYnMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBRTdDLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQ2xHLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUc1RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUV4RixPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQUcxRyxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSwyREFBMkQsQ0FBQztBQUVqRyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFJdkUsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDM0UsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBeUVqRSxNQUFNLE9BQU8sa0JBQWtCO0lBMkM3QixZQUNVLGFBQTJCLEVBQzNCLGdCQUFpQyxFQUNqQyxlQUFrQyxFQUVsQyxvQkFBbUQ7UUFKbkQsa0JBQWEsR0FBYixhQUFhLENBQWM7UUFDM0IscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQjtRQUNqQyxvQkFBZSxHQUFmLGVBQWUsQ0FBbUI7UUFFbEMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUErQjtRQS9D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QkFDekIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrRVQ7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQXZGTyxZQUFZO1lBVVosZUFBZTtZQWRmLGlCQUFpQjtZQWtCakIsNkJBQTZCOzs7K0JBNkVsQyxLQUFLO3NCQUdMLEtBQUs7MEJBR0wsS0FBSztnQ0FHTCxLQUFLO3lCQUdMLEtBQUs7a0NBR0wsTUFBTTtzQ0FHTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0ljb259IGZyb20gXCIuLi8uLi8uLi9lbnVtL2ljb24uZW51bVwiO1xyXG5pbXBvcnQge0FydGljbGVTdG9jayBhcyBBcnRpY2xlU3RvY2tCb30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtc3RvY2suYm9cIjtcclxuaW1wb3J0IHtHZXRTdG9ja0hpc3RvcnlSZXF1ZXN0fSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvZ2V0LXN0b2NrLWhpc3RvcnktcmVxdWVzdFwiO1xyXG5pbXBvcnQge1N0b2NrU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2Uvc3RvY2suc2VydmljZVwiO1xyXG5pbXBvcnQge1N0b2NrSGlzdG9yeUJvfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2staGlzdG9yeS5ib1wiO1xyXG5pbXBvcnQge1RhYn0gZnJvbSBcIi4uLy4uL3RhYi1iYXIvdGFiLmludGVyZmFjZVwiO1xyXG5pbXBvcnQge0FydGljbGVUcmFuc2FjdGlvbn0gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtdHJhbnNhY3Rpb25cIjtcclxuaW1wb3J0IHtBcnRpY2xlVHJhbnNhY3Rpb24gYXMgQXJ0aWNsZVRyYW5zYWN0aW9uQm99IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLXRyYW5zYWN0aW9uLmJvXCI7XHJcbmltcG9ydCB7U3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlc30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLW1hbmFnZW1lbnQtd2FyZWhvdXNlcy5ib1wiO1xyXG5pbXBvcnQge1ByaW50UHJpY2VTdGlja2Vyc30gZnJvbSBcIkBjb2xpam5pdC9zaGFyZWRhcGkvYnVpbGQvbW9kZWwvcHJpbnQtcHJpY2Utc3RpY2tlcnMuYm9cIjtcclxuaW1wb3J0IHtTdG9ja0ZvcmVjYXN0fSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2stZm9yZWNhc3QuYm9cIjtcclxuaW1wb3J0IHtBcnRpY2xlU3RvY2tNYW5hZ2VtZW50fSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1zdG9jay1tYW5hZ2VtZW50XCI7XHJcbmltcG9ydCB7QXJ0aWNsZURldGFpbHNCb30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZGV0YWlscy5ib1wiO1xyXG5pbXBvcnQge0xvY2FsaXplU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vbG9jYWxpemF0aW9uL2xvY2FsaXplLnNlcnZpY2UnO1xyXG5pbXBvcnQge0FydGljbGVFeHRlbmRlZH0gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZXh0ZW5kZWQuYm9cIjtcclxuaW1wb3J0IHtBcnRpY2xlRmxhdH0gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZmxhdC5ib1wiO1xyXG5pbXBvcnQge1N0b2NrTG9jYXRpb259IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9zdG9jay1sb2NhdGlvbi5ib1wiO1xyXG5pbXBvcnQge0Jhc2VNb2R1bGVTY3JlZW5Db25maWdTZXJ2aWNlfSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xyXG5pbXBvcnQge1NoYXJlZENmZ05hbWV9IGZyb20gXCIuLi8uLi8uLi9lbnVtL3NoYXJlZC1jZmctbmFtZS5lbnVtXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby1zdG9jay10YWJzXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxjby10YWItYmFyIFt3YXJlSG91c2VMYWJlbF09XCInQ0hPSUNFUycgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICBbd2FyZUhvdXNlU2VhcmNoTGFiZWxdPVwiJ1NFQVJDSCcgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICBbdGFic109XCJ0YWJzXCJcclxuICAgICAgICAgICAgICAgIFtkYXRhV2FyZUhvdXNlQ29kZV09XCJ3YXJlaG91c2VzXCJcclxuICAgICAgICAgICAgICAgIFtzZWxlY3RlZFdhcmVob3VzZV09XCJzZWxlY3RlZFdhcmVob3VzZVwiXHJcbiAgICAgICAgICAgICAgICBbc2Vjb25kYXJ5VGFic109XCJoaXN0b3J5VGFic1wiXHJcbiAgICAgICAgICAgICAgICBbQWN0aXZhdGVTZWNvbmRhcnlUYWJzXT1cInRhYnNbNV0uYWN0aXZlXCJcclxuICAgICAgICAgICAgICAgIFtzaG93V2FyZWhvdXNlU2VsZWN0aW9uXT1cInRhYnNbMV0uYWN0aXZlIHx8IHRhYnNbMl0uYWN0aXZlXCJcclxuICAgICAgICAgICAgICAgICh3YXJlaG91c2VTZWxlY3RlZCk9XCJoYW5kbGVXYXJlaG91c2VTZWxlY3RlZCgkZXZlbnQpXCJcclxuICAgID48L2NvLXRhYi1iYXI+XHJcblxyXG4gICAgPGNvLXN0b2NrLXRhYiAqbmdJZj1cInRhYnNbMF0uYWN0aXZlXCJcclxuICAgICAgICAgICAgICAgICAgW2FydGljbGVTdG9ja0luZm9ybWF0aW9uXT1cInN0b2NrSW5mb3JtYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAobG9jYXRpb25DbGlja2VkKT1cImhhbmRsZUxvY2F0aW9uQ2xpY2tlZCgkZXZlbnQpXCJcclxuICAgID48L2NvLXN0b2NrLXRhYj5cclxuXHJcbiAgICA8Y28tc3RvY2stcHJvZ25vc2UgKm5nSWY9XCJ0YWJzWzFdLmFjdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW3N0b2NrUHJvZ25vc2VdPVwic3RvY2tQcm9nbm9zZVwiXHJcbiAgICA+PC9jby1zdG9jay1wcm9nbm9zZT5cclxuXHJcbiAgICA8Y28tc3RvY2stbG9jYXRpb24gKm5nSWY9XCJ0YWJzWzJdLmFjdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2FydGljbGVTdG9ja0luZm9dPVwiYXJ0aWNsZURldGFpbHNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFthcnRpY2xlU3RvY2tJbmZvcm1hdGlvbl09XCJzdG9ja0luZm9ybWF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbYXJ0aWNsZV09XCJhcnRpY2xlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbYXJ0aWNsZUZsYXRdPVwiYXJ0aWNsZUZsYXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtzZWxlY3RlZFdhcmVob3VzZV09XCJzZWxlY3RlZFdhcmVob3VzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFXYXJlSG91c2VDb2RlXT1cIndhcmVob3VzZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtzdG9ja0xvY2F0aW9uc109XCJzdG9ja0xvY2F0aW9uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgKHRyYW5zZmVySWNvbkNsaWNrZWQpPVwidHJhbnNmZXJJY29uQ2xpY2tlZC5lbWl0KCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIChzZW5kTWV0aG9kRGlhbG9nQ2xpY2tlZCk9XCJzZW5kTWV0aG9kRGlhbG9nQ2xpY2tlZC5lbWl0KCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtzaG93U3RvY2tUcmFuc2Zlcl09XCJzaG93U3RvY2tUcmFuc2ZlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgKHNob3dTdG9ja1RyYW5zZmVyQ2hhbmdlKT1cIm9uU2hvd1N0b2NrVHJhbnNmZXJDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICA+PC9jby1zdG9jay1sb2NhdGlvbj5cclxuXHJcbiAgICA8Y28tb3JkZXItdGFiICpuZ0lmPVwidGFic1szXS5hY3RpdmVcIlxyXG4gICAgICAgICAgICAgICAgICBbYXJ0aWNsZVN0b2NrSW5mb3JtYXRpb25dPVwic3RvY2tJbmZvcm1hdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgIFtpbk9yZGVySW5mb3JtYXRpb25dPVwiaW5PcmRlckluZm9ybWF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgKHRyYW5zZmVySWNvbkNsaWNrZWQpPVwidHJhbnNmZXJJY29uQ2xpY2tlZC5lbWl0KCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAoc2VuZE1ldGhvZERpYWxvZ0NsaWNrZWQpPVwic2VuZE1ldGhvZERpYWxvZ0NsaWNrZWQuZW1pdCgkZXZlbnQpXCJcclxuICAgID48L2NvLW9yZGVyLXRhYj5cclxuXHJcbiAgICA8Y28tb3JkZXItc3RvY2stdGFiICpuZ0lmPVwidGFic1s0XS5hY3RpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbb3JkZXJJbmZvcm1hdGlvbl09XCJvcmRlckluZm9ybWF0aW9uXCJcclxuICAgID48L2NvLW9yZGVyLXN0b2NrLXRhYj5cclxuXHJcbiAgICA8Y28tc3RvY2staGlzdG9yeSAqbmdJZj1cImhpc3RvcnlUYWJzWzBdLmFjdGl2ZSAmJiB0YWJzWzVdLmFjdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbc3RvY2tIaXN0b3J5XT1cInN0b2NrSGlzdG9yeVwiXHJcbiAgICA+PC9jby1zdG9jay1oaXN0b3J5PlxyXG5cclxuICAgIDxjby1vcmRlci1zdXBwbHktc3RvY2staGlzdG9yeSAqbmdJZj1cImhpc3RvcnlUYWJzWzFdLmFjdGl2ZSAmJiB0YWJzWzVdLmFjdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW29yZGVyU3VwcGx5U3RvY2tIaXN0b3J5XT1cIm9yZGVyU3VwcGx5U3RvY2tIaXN0b3J5XCJcclxuICAgID48L2NvLW9yZGVyLXN1cHBseS1zdG9jay1oaXN0b3J5PlxyXG5cclxuICAgIDxjby1vcmRlci1zdG9jay1jb21taXNzaW9uLWhpc3RvcnkgKm5nSWY9XCJoaXN0b3J5VGFic1syXS5hY3RpdmUgJiYgdGFic1s1XS5hY3RpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbb3JkZXJTdG9ja0NvbW1pc3Npb25IaXN0b3J5XT1cIm9yZGVyQ29tbWlzc2lvblN0b2NrSGlzdG9yeVwiXHJcbiAgICA+PC9jby1vcmRlci1zdG9jay1jb21taXNzaW9uLWhpc3Rvcnk+XHJcblxyXG4gICAgPGNvLW9yZGVyLXN0b2NrLWhpc3RvcnkgKm5nSWY9XCJoaXN0b3J5VGFic1szXS5hY3RpdmUgJiYgdGFic1s1XS5hY3RpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW29yZGVyU3RvY2tIaXN0b3J5XT1cIm9yZGVyU3RvY2tIaXN0b3J5XCJcclxuICAgID48L2NvLW9yZGVyLXN0b2NrLWhpc3Rvcnk+XHJcblxyXG4gICAgPGNvLWFsbG9jYXRpb24tc3RvY2staGlzdG9yeSAqbmdJZj1cImhpc3RvcnlUYWJzWzRdLmFjdGl2ZSAmJiB0YWJzWzVdLmFjdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthbGxvY2F0aW9uU3RvY2tIaXN0b3J5XT1cIm9yZGVyQWxsb2NhdGlvblN0b2NrSGlzdG9yeVwiXHJcbiAgICA+PC9jby1hbGxvY2F0aW9uLXN0b2NrLWhpc3Rvcnk+XHJcblxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3RvY2tUYWJzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBwdWJsaWMgcmVhZG9ubHkgaWNvbnM6IHR5cGVvZiBJY29uID0gSWNvbjtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc3RvY2tJbmZvcm1hdGlvbjogQXJ0aWNsZVN0b2NrQm9bXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhcnRpY2xlOiBBcnRpY2xlRXh0ZW5kZWQ7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFydGljbGVGbGF0OiBBcnRpY2xlRmxhdDtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2hvd1N0b2NrVHJhbnNmZXI6IGJvb2xlYW47XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHdhcmVob3VzZXM6IFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXNbXSA9IFtdO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgcmVhZG9ubHkgdHJhbnNmZXJJY29uQ2xpY2tlZDogRXZlbnRFbWl0dGVyPEFydGljbGVTdG9ja0JvPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHJlYWRvbmx5IHNlbmRNZXRob2REaWFsb2dDbGlja2VkOiBFdmVudEVtaXR0ZXI8UHJpbnRQcmljZVN0aWNrZXJzPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcblxyXG4gIHB1YmxpYyBzdG9ja0xvY2F0aW9uczogU3RvY2tMb2NhdGlvbltdID0gW107XHJcbiAgcHVibGljIHNlbGVjdGVkTG9jYXRpb25Obzogc3RyaW5nO1xyXG4gIHB1YmxpYyBzdG9ja0hpc3Rvcnk6IFN0b2NrSGlzdG9yeUJvW10gPSBbXTtcclxuICBwdWJsaWMgb3JkZXJTdXBwbHlTdG9ja0hpc3Rvcnk6IFN0b2NrSGlzdG9yeUJvW10gPSBbXTtcclxuICBwdWJsaWMgb3JkZXJDb21taXNzaW9uU3RvY2tIaXN0b3J5OiBTdG9ja0hpc3RvcnlCb1tdID0gW107XHJcbiAgcHVibGljIG9yZGVyU3RvY2tIaXN0b3J5OiBTdG9ja0hpc3RvcnlCb1tdID0gW107XHJcbiAgcHVibGljIG9yZGVyQWxsb2NhdGlvblN0b2NrSGlzdG9yeTogU3RvY2tIaXN0b3J5Qm9bXSA9IFtdO1xyXG4gIHB1YmxpYyBpbk9yZGVySW5mb3JtYXRpb246IEFydGljbGVUcmFuc2FjdGlvbkJvW10gPSBbXTtcclxuICBwdWJsaWMgb3JkZXJJbmZvcm1hdGlvbjogQXJ0aWNsZVRyYW5zYWN0aW9uQm9bXSA9IFtdO1xyXG4gIHB1YmxpYyBzdG9ja1Byb2dub3NlOiBTdG9ja0ZvcmVjYXN0W10gPSBbXTtcclxuICBwdWJsaWMgc2VsZWN0ZWRXYXJlaG91c2U6IFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXMgPSBuZXcgU3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlcygpO1xyXG4gIHB1YmxpYyBhcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uOiBBcnRpY2xlU3RvY2tNYW5hZ2VtZW50ID0gbmV3IEFydGljbGVTdG9ja01hbmFnZW1lbnQoKVxyXG4gIHB1YmxpYyBzaG93V2FyZWhvdXNlU2VsZWN0aW9uOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIGFydGljbGVEZXRhaWxzOiBBcnRpY2xlRGV0YWlsc0JvW10gPSBbXTtcclxuXHJcbiAgcHVibGljIHRhYnM6IFRhYltdID0gW107XHJcbiAgcHVibGljIGhpc3RvcnlUYWJzOiBUYWJbXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX3N0b2NrU2VydmljZTogU3RvY2tTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfbG9jYWxpemVTZXJ2aWNlOiBMb2NhbGl6ZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcblxyXG4gICAgcHJpdmF0ZSBfc2NyZWVuQ29uZmlnU2VydmljZTogQmFzZU1vZHVsZVNjcmVlbkNvbmZpZ1NlcnZpY2UsXHJcbiAgKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMudGFicyA9IFtcclxuICAgICAge3RpdGxlOiB0aGlzLl9sb2NhbGl6ZVNlcnZpY2UuZ2V0KCdPVkVSVklFVycpLCBhY3RpdmU6IHRydWUsIGNmZzogU2hhcmVkQ2ZnTmFtZS5PdmVydmlld0RldGFpbHN9LFxyXG4gICAgICB7dGl0bGU6IHRoaXMuX2xvY2FsaXplU2VydmljZS5nZXQoJ1NUT0NLX0ZPUkVDQVNUJyksIGFjdGl2ZTogZmFsc2UsIGNmZzogU2hhcmVkQ2ZnTmFtZS5TdG9ja0ZvcmVjYXN0fSxcclxuICAgICAge3RpdGxlOiB0aGlzLl9sb2NhbGl6ZVNlcnZpY2UuZ2V0KCdTVE9DS19ERVRBSUxTJyksIGFjdGl2ZTogZmFsc2UsIGNmZzogU2hhcmVkQ2ZnTmFtZS5JbnZlbnRvcnlGb3JlY2FzdH0sXHJcbiAgICAgIHt0aXRsZTogdGhpcy5fbG9jYWxpemVTZXJ2aWNlLmdldCgnQUxSRUFEWV9JTl9PUkRFUicpLCBhY3RpdmU6IGZhbHNlLCBjZmc6IFNoYXJlZENmZ05hbWUuSW52ZW50b3J5RGV0YWlsc30sXHJcbiAgICAgIHt0aXRsZTogdGhpcy5fbG9jYWxpemVTZXJ2aWNlLmdldCgnSU5fT1JERVInKSwgYWN0aXZlOiBmYWxzZSwgY2ZnOiBTaGFyZWRDZmdOYW1lLkluT3JkZXJ9LFxyXG4gICAgICB7dGl0bGU6IHRoaXMuX2xvY2FsaXplU2VydmljZS5nZXQoJ0hJU1RPUlknKSwgYWN0aXZlOiBmYWxzZSwgY2ZnOiBTaGFyZWRDZmdOYW1lLkhpc3Rvcnl9LFxyXG4gICAgXTtcclxuXHJcbiAgICB0aGlzLmhpc3RvcnlUYWJzID0gW1xyXG4gICAgICB7dGl0bGU6IHRoaXMuX2xvY2FsaXplU2VydmljZS5nZXQoJ1NUT0NLJyksIGFjdGl2ZTogdHJ1ZSwgY2ZnOiBTaGFyZWRDZmdOYW1lLkhpc3RvcnlTdG9ja30sXHJcbiAgICAgIHtcclxuICAgICAgICB0aXRsZTogdGhpcy5fbG9jYWxpemVTZXJ2aWNlLmdldCgnT1JERVJfU1RPQ0snKSxcclxuICAgICAgICBhY3RpdmU6IGZhbHNlLFxyXG4gICAgICAgIGNmZzogU2hhcmVkQ2ZnTmFtZS5IaXN0b3J5T3JkZXJTdG9ja1xyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgdGl0bGU6IHRoaXMuX2xvY2FsaXplU2VydmljZS5nZXQoJ09SREVSX0NPTU1JU1NJT04nKSxcclxuICAgICAgICBhY3RpdmU6IGZhbHNlLFxyXG4gICAgICAgIGNmZzogU2hhcmVkQ2ZnTmFtZS5IaXN0b3J5T3JkZXJDb21taXNzaW9uXHJcbiAgICAgIH0sXHJcbiAgICAgIHt0aXRsZTogdGhpcy5fbG9jYWxpemVTZXJ2aWNlLmdldCgnT1JERVInKSwgYWN0aXZlOiBmYWxzZSwgY2ZnOiBTaGFyZWRDZmdOYW1lLkhpc3RvcnlPcmRlcn0sXHJcbiAgICAgIHtcclxuICAgICAgICB0aXRsZTogdGhpcy5fbG9jYWxpemVTZXJ2aWNlLmdldCgnQUxMT0NBVElPTicpLFxyXG4gICAgICAgIGFjdGl2ZTogZmFsc2UsXHJcbiAgICAgICAgY2ZnOiBTaGFyZWRDZmdOYW1lLkhpc3RvcnlBc3NpZ25cclxuICAgICAgfSxcclxuICAgIF07XHJcblxyXG5cclxuICB9XHJcbiAgcHVibGljIG9uU2hvd1N0b2NrVHJhbnNmZXJDaGFuZ2Uoc2hvdzogYm9vbGVhbikge1xyXG4gICAgdGhpcy5zaG93U3RvY2tUcmFuc2ZlciA9IHNob3c7XHJcbiAgfVxyXG4gIHB1YmxpYyBoYW5kbGVMb2NhdGlvbkNsaWNrZWQoZGF0YTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLnRhYnNbMF0uYWN0aXZlID0gZmFsc2U7XHJcbiAgICB0aGlzLnRhYnNbMl0uYWN0aXZlID0gdHJ1ZTtcclxuICAgIHRoaXMuc2VsZWN0ZWRXYXJlaG91c2UgPSB0aGlzLndhcmVIb3VzZUZvckNvZGUocGFyc2VJbnQoZGF0YSkpO1xyXG4gICAgdGhpcy5oYW5kbGVXYXJlaG91c2VTZWxlY3RlZCh0aGlzLnNlbGVjdGVkV2FyZWhvdXNlKTtcclxuICAgIHRoaXMuZ2V0U3RvY2tEYXRhKHRoaXMuc2VsZWN0ZWRXYXJlaG91c2UpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFN0b2NrSGlzdG9yeSgpOiB2b2lkIHtcclxuICAgIGNvbnN0IHN0b2NrSGlzdG9yeUluZm9ybWF0aW9uOiBHZXRTdG9ja0hpc3RvcnlSZXF1ZXN0ID0gbmV3IEdldFN0b2NrSGlzdG9yeVJlcXVlc3QoKTtcclxuICAgIHN0b2NrSGlzdG9yeUluZm9ybWF0aW9uLnR5cGUgPSBcIlZcIjtcclxuICAgIHN0b2NrSGlzdG9yeUluZm9ybWF0aW9uLmdvb2RJZCA9IHRoaXMuYXJ0aWNsZS5nb29kSWQudG9TdHJpbmcoKTtcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRTdG9ja0hpc3Rvcnkoc3RvY2tIaXN0b3J5SW5mb3JtYXRpb24pLnRoZW4ocmVzdWx0ID0+IHtcclxuICAgICAgdGhpcy5zdG9ja0hpc3RvcnkgPSByZXN1bHRcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldE9yZGVyU3VwcGx5U3RvY2tIaXN0b3J5KCk6IHZvaWQge1xyXG4gICAgY29uc3Qgc3RvY2tIaXN0b3J5SW5mb3JtYXRpb246IEdldFN0b2NrSGlzdG9yeVJlcXVlc3QgPSBuZXcgR2V0U3RvY2tIaXN0b3J5UmVxdWVzdCgpO1xyXG4gICAgc3RvY2tIaXN0b3J5SW5mb3JtYXRpb24udHlwZSA9IFwiT1wiO1xyXG4gICAgc3RvY2tIaXN0b3J5SW5mb3JtYXRpb24uZ29vZElkID0gdGhpcy5hcnRpY2xlLmdvb2RJZC50b1N0cmluZygpO1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldFN0b2NrSGlzdG9yeShzdG9ja0hpc3RvcnlJbmZvcm1hdGlvbikudGhlbihyZXN1bHQgPT4ge1xyXG4gICAgICB0aGlzLm9yZGVyU3VwcGx5U3RvY2tIaXN0b3J5ID0gcmVzdWx0O1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0T3JkZXJDb21taXNzaW9uU3RvY2tIaXN0b3J5KCk6IHZvaWQge1xyXG4gICAgY29uc3Qgc3RvY2tIaXN0b3J5SW5mb3JtYXRpb246IEdldFN0b2NrSGlzdG9yeVJlcXVlc3QgPSBuZXcgR2V0U3RvY2tIaXN0b3J5UmVxdWVzdCgpO1xyXG4gICAgc3RvY2tIaXN0b3J5SW5mb3JtYXRpb24udHlwZSA9IFwiQ1wiO1xyXG4gICAgc3RvY2tIaXN0b3J5SW5mb3JtYXRpb24uZ29vZElkID0gdGhpcy5hcnRpY2xlLmdvb2RJZC50b1N0cmluZygpO1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldFN0b2NrSGlzdG9yeShzdG9ja0hpc3RvcnlJbmZvcm1hdGlvbikudGhlbihyZXN1bHQgPT4ge1xyXG4gICAgICB0aGlzLm9yZGVyQ29tbWlzc2lvblN0b2NrSGlzdG9yeSA9IHJlc3VsdDtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldE9yZGVyU3RvY2tIaXN0b3J5KCk6IHZvaWQge1xyXG4gICAgY29uc3Qgc3RvY2tIaXN0b3J5SW5mb3JtYXRpb246IEdldFN0b2NrSGlzdG9yeVJlcXVlc3QgPSBuZXcgR2V0U3RvY2tIaXN0b3J5UmVxdWVzdCgpO1xyXG4gICAgc3RvY2tIaXN0b3J5SW5mb3JtYXRpb24udHlwZSA9IFwiQlwiO1xyXG4gICAgc3RvY2tIaXN0b3J5SW5mb3JtYXRpb24uZ29vZElkID0gdGhpcy5hcnRpY2xlLmdvb2RJZC50b1N0cmluZygpO1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldFN0b2NrSGlzdG9yeShzdG9ja0hpc3RvcnlJbmZvcm1hdGlvbikudGhlbihyZXN1bHQgPT4ge1xyXG4gICAgICB0aGlzLm9yZGVyU3RvY2tIaXN0b3J5ID0gcmVzdWx0O1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0QWxsb2NhdGlvblN0b2NrSGlzdG9yeSgpOiB2b2lkIHtcclxuICAgIGNvbnN0IHN0b2NrSGlzdG9yeUluZm9ybWF0aW9uOiBHZXRTdG9ja0hpc3RvcnlSZXF1ZXN0ID0gbmV3IEdldFN0b2NrSGlzdG9yeVJlcXVlc3QoKTtcclxuICAgIHN0b2NrSGlzdG9yeUluZm9ybWF0aW9uLnR5cGUgPSBcIlRcIjtcclxuICAgIHN0b2NrSGlzdG9yeUluZm9ybWF0aW9uLmdvb2RJZCA9IHRoaXMuYXJ0aWNsZS5nb29kSWQudG9TdHJpbmcoKTtcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRTdG9ja0hpc3Rvcnkoc3RvY2tIaXN0b3J5SW5mb3JtYXRpb24pLnRoZW4ocmVzdWx0ID0+IHtcclxuICAgICAgdGhpcy5vcmRlckFsbG9jYXRpb25TdG9ja0hpc3RvcnkgPSByZXN1bHQ7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRJbk9yZGVyRGF0YSgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGluT3JkZXJEYXRhOiBBcnRpY2xlVHJhbnNhY3Rpb24gPSBuZXcgQXJ0aWNsZVRyYW5zYWN0aW9uKCk7XHJcbiAgICBpbk9yZGVyRGF0YS50eXBlID0gXCJWXCI7XHJcbiAgICBpbk9yZGVyRGF0YS5nb29kSWQgPSB0aGlzLnN0b2NrSW5mb3JtYXRpb25bMF0uZ29vZElkLnRvU3RyaW5nKCk7XHJcbiAgICB0aGlzLl9zdG9ja1NlcnZpY2UuZ2V0QXJ0aWNsZVRyYW5zYWN0aW9uKGluT3JkZXJEYXRhKS50aGVuKHJlc3VsdCA9PiB7XHJcbiAgICAgIHRoaXMuaW5PcmRlckluZm9ybWF0aW9uID0gcmVzdWx0O1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0T3JkZXJEYXRhKCk6IHZvaWQge1xyXG4gICAgY29uc3Qgb3JkZXJEYXRhOiBBcnRpY2xlVHJhbnNhY3Rpb24gPSBuZXcgQXJ0aWNsZVRyYW5zYWN0aW9uKCk7XHJcbiAgICBvcmRlckRhdGEudHlwZSA9IFwiSVwiO1xyXG4gICAgb3JkZXJEYXRhLmdvb2RJZCA9IHRoaXMuc3RvY2tJbmZvcm1hdGlvblswXS5nb29kSWQudG9TdHJpbmcoKTtcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRBcnRpY2xlVHJhbnNhY3Rpb24ob3JkZXJEYXRhKS50aGVuKHJlc3VsdCA9PiB7XHJcbiAgICAgIHRoaXMub3JkZXJJbmZvcm1hdGlvbiA9IHJlc3VsdDtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFN0b2NrUHJvZ25vc2Uod2FyZWhvdXNlTm86IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLnN0b2NrUHJvZ25vc2UodGhpcy5hcnRpY2xlLmdvb2RJZCwgd2FyZWhvdXNlTm8pLnRoZW4ocmVzdWx0ID0+IHtcclxuICAgICAgdGhpcy5zdG9ja1Byb2dub3NlID0gcmVzdWx0O1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlV2FyZWhvdXNlU2VsZWN0ZWQoZXZlbnQ6IFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXMpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRXYXJlaG91c2UgPSBldmVudDtcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS53YXJlaG91c2VTZWxlY3RlZC5lbWl0KGV2ZW50KTtcclxuICAgIGlmICh0aGlzLnRhYnNbMV0uYWN0aXZlKSB7XHJcbiAgICAgIHRoaXMuZ2V0U3RvY2tQcm9nbm9zZSh0aGlzLnNlbGVjdGVkV2FyZWhvdXNlLndhcmVob3VzZU5vKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnRhYnNbMl0uYWN0aXZlKSB7XHJcbiAgICAgIHRoaXMuYXJ0aWNsZURldGFpbHNJbmZvcm1hdGlvbi53YXJlaG91c2VOdW1iZXIgPSBldmVudC53YXJlaG91c2VObztcclxuICAgICAgdGhpcy5hcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uLmdvb2RJZCA9IHRoaXMuYXJ0aWNsZS5nb29kSWQudG9TdHJpbmcoKTtcclxuICAgICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldEFydGljbGVEZXRhaWxzKHRoaXMuYXJ0aWNsZURldGFpbHNJbmZvcm1hdGlvbikudGhlbigoZGV0YWlscykgPT4ge1xyXG4gICAgICAgIHRoaXMuYXJ0aWNsZURldGFpbHMgPSBkZXRhaWxzO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U3RvY2tMb2NhdGlvbnMoKSB7XHJcbiAgICB0aGlzLl9zdG9ja1NlcnZpY2UuZ2V0U3RvY2tNYW5hZ2VtZW50TG9jYXRpb25zKHRoaXMuc2VsZWN0ZWRXYXJlaG91c2Uud2FyZWhvdXNlTm8pLnRoZW4oIHJlc3VsdCA9PiB7XHJcbiAgICAgIHRoaXMuc3RvY2tMb2NhdGlvbnMgPSByZXN1bHQ7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRTdG9ja0RhdGEod2FyZWhvdXNlOiBTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzKSB7XHJcbiAgICB0aGlzLmhhbmRsZVdhcmVob3VzZVNlbGVjdGVkKHdhcmVob3VzZSk7XHJcbiAgICB0aGlzLmdldFN0b2NrUHJvZ25vc2Uod2FyZWhvdXNlLndhcmVob3VzZU5vKTtcclxuICAgIHRoaXMuZ2V0T3JkZXJEYXRhKCk7XHJcbiAgICB0aGlzLmdldEluT3JkZXJEYXRhKCk7XHJcbiAgICB0aGlzLmdldEFsbG9jYXRpb25TdG9ja0hpc3RvcnkoKTtcclxuICAgIHRoaXMuZ2V0T3JkZXJTdG9ja0hpc3RvcnkoKTtcclxuICAgIHRoaXMuZ2V0T3JkZXJDb21taXNzaW9uU3RvY2tIaXN0b3J5KCk7XHJcbiAgICB0aGlzLmdldE9yZGVyU3VwcGx5U3RvY2tIaXN0b3J5KCk7XHJcbiAgICB0aGlzLmdldFN0b2NrSGlzdG9yeSgpO1xyXG4gICAgdGhpcy5nZXRTdG9ja0xvY2F0aW9ucygpO1xyXG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XHJcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgd2FyZUhvdXNlRm9yQ29kZShjb2RlOiBudW1iZXIpIHtcclxuICAgIHJldHVybiB0aGlzLndhcmVob3VzZXMuZmluZCh3YXJlaG91c2UgPT4gd2FyZWhvdXNlLndhcmVob3VzZU5vID09PSBjb2RlKTtcclxuICB9XHJcbn1cclxuIl19
|
|
260
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2stdGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zdG9jay9zdG9jay10YWJzL3N0b2NrLXRhYnMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBRTdDLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQ2xHLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUc1RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUV4RixPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQUcxRyxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSwyREFBMkQsQ0FBQztBQUtqRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDakUsT0FBTyxFQUFDLGlDQUFpQyxFQUFDLE1BQU0sMkRBQTJELENBQUM7QUF5RTVHLE1BQU0sT0FBTyxrQkFBa0I7SUEyQzdCLFlBQ1UsYUFBMkIsRUFDM0Isa0JBQXFELEVBQ3JELGVBQWtDO1FBRmxDLGtCQUFhLEdBQWIsYUFBYSxDQUFjO1FBQzNCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBbUM7UUFDckQsb0JBQWUsR0FBZixlQUFlLENBQW1CO1FBN0M1QixVQUFLLEdBQWdCLElBQUksQ0FBQztRQUduQyxxQkFBZ0IsR0FBcUIsRUFBRSxDQUFDO1FBWXhDLGVBQVUsR0FBZ0MsRUFBRSxDQUFDO1FBR3BDLHdC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QkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBdEZPLFlBQVk7WUFjWixpQ0FBaUM7WUFsQmpDLGlCQUFpQjs7OytCQThGdEIsS0FBSztzQkFHTCxLQUFLOzBCQUdMLEtBQUs7Z0NBR0wsS0FBSzt5QkFHTCxLQUFLO2tDQUdMLE1BQU07c0NBR04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtJY29ufSBmcm9tICcuLi8uLi8uLi9lbnVtL2ljb24uZW51bSc7XHJcbmltcG9ydCB7QXJ0aWNsZVN0b2NrIGFzIEFydGljbGVTdG9ja0JvfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLXN0b2NrLmJvJztcclxuaW1wb3J0IHtHZXRTdG9ja0hpc3RvcnlSZXF1ZXN0fSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9nZXQtc3RvY2staGlzdG9yeS1yZXF1ZXN0JztcclxuaW1wb3J0IHtTdG9ja1NlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2Uvc3RvY2suc2VydmljZSc7XHJcbmltcG9ydCB7U3RvY2tIaXN0b3J5Qm99IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLWhpc3RvcnkuYm8nO1xyXG5pbXBvcnQge1RhYn0gZnJvbSAnLi4vLi4vdGFiLWJhci90YWIuaW50ZXJmYWNlJztcclxuaW1wb3J0IHtBcnRpY2xlVHJhbnNhY3Rpb259IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtdHJhbnNhY3Rpb24nO1xyXG5pbXBvcnQge0FydGljbGVUcmFuc2FjdGlvbiBhcyBBcnRpY2xlVHJhbnNhY3Rpb25Cb30gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS10cmFuc2FjdGlvbi5ibyc7XHJcbmltcG9ydCB7U3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlc30gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2stbWFuYWdlbWVudC13YXJlaG91c2VzLmJvJztcclxuaW1wb3J0IHtQcmludFByaWNlU3RpY2tlcnN9IGZyb20gJ0Bjb2xpam5pdC9zaGFyZWRhcGkvYnVpbGQvbW9kZWwvcHJpbnQtcHJpY2Utc3RpY2tlcnMuYm8nO1xyXG5pbXBvcnQge1N0b2NrRm9yZWNhc3R9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLWZvcmVjYXN0LmJvJztcclxuaW1wb3J0IHtBcnRpY2xlU3RvY2tNYW5hZ2VtZW50fSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLXN0b2NrLW1hbmFnZW1lbnQnO1xyXG5pbXBvcnQge0FydGljbGVEZXRhaWxzQm99IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZGV0YWlscy5ibyc7XHJcbmltcG9ydCB7QXJ0aWNsZUV4dGVuZGVkfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWV4dGVuZGVkLmJvJztcclxuaW1wb3J0IHtBcnRpY2xlRmxhdH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1mbGF0LmJvJztcclxuaW1wb3J0IHtTdG9ja0xvY2F0aW9ufSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9zdG9jay1sb2NhdGlvbi5ibyc7XHJcbmltcG9ydCB7U2hhcmVkQ2ZnTmFtZX0gZnJvbSAnLi4vLi4vLi4vZW51bS9zaGFyZWQtY2ZnLW5hbWUuZW51bSc7XHJcbmltcG9ydCB7U2hhcmVkQ29tcG9uZW50c0RpY3Rpb25hcnlTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi90cmFuc2xhdGlvbi9zaGFyZWQtY29tcG9uZW50cy1kaWN0aW9uYXJ5LnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tc3RvY2stdGFic1wiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8Y28tdGFiLWJhciBbd2FyZUhvdXNlTGFiZWxdPVwiJ0NIT0lDRVMnIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgW3dhcmVIb3VzZVNlYXJjaExhYmVsXT1cIidTRUFSQ0gnIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgW3RhYnNdPVwidGFic1wiXHJcbiAgICAgICAgICAgICAgICBbZGF0YVdhcmVIb3VzZUNvZGVdPVwid2FyZWhvdXNlc1wiXHJcbiAgICAgICAgICAgICAgICBbc2VsZWN0ZWRXYXJlaG91c2VdPVwic2VsZWN0ZWRXYXJlaG91c2VcIlxyXG4gICAgICAgICAgICAgICAgW3NlY29uZGFyeVRhYnNdPVwiaGlzdG9yeVRhYnNcIlxyXG4gICAgICAgICAgICAgICAgW0FjdGl2YXRlU2Vjb25kYXJ5VGFic109XCJ0YWJzWzVdLmFjdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICBbc2hvd1dhcmVob3VzZVNlbGVjdGlvbl09XCJ0YWJzWzFdLmFjdGl2ZSB8fCB0YWJzWzJdLmFjdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICAod2FyZWhvdXNlU2VsZWN0ZWQpPVwiaGFuZGxlV2FyZWhvdXNlU2VsZWN0ZWQoJGV2ZW50KVwiXHJcbiAgICA+PC9jby10YWItYmFyPlxyXG5cclxuICAgIDxjby1zdG9jay10YWIgKm5nSWY9XCJ0YWJzWzBdLmFjdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgIFthcnRpY2xlU3RvY2tJbmZvcm1hdGlvbl09XCJzdG9ja0luZm9ybWF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgKGxvY2F0aW9uQ2xpY2tlZCk9XCJoYW5kbGVMb2NhdGlvbkNsaWNrZWQoJGV2ZW50KVwiXHJcbiAgICA+PC9jby1zdG9jay10YWI+XHJcblxyXG4gICAgPGNvLXN0b2NrLXByb2dub3NlICpuZ0lmPVwidGFic1sxXS5hY3RpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtzdG9ja1Byb2dub3NlXT1cInN0b2NrUHJvZ25vc2VcIlxyXG4gICAgPjwvY28tc3RvY2stcHJvZ25vc2U+XHJcblxyXG4gICAgPGNvLXN0b2NrLWxvY2F0aW9uICpuZ0lmPVwidGFic1syXS5hY3RpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFthcnRpY2xlU3RvY2tJbmZvXT1cImFydGljbGVEZXRhaWxzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbYXJ0aWNsZVN0b2NrSW5mb3JtYXRpb25dPVwic3RvY2tJbmZvcm1hdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2FydGljbGVdPVwiYXJ0aWNsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2FydGljbGVGbGF0XT1cImFydGljbGVGbGF0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbc2VsZWN0ZWRXYXJlaG91c2VdPVwic2VsZWN0ZWRXYXJlaG91c2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtkYXRhV2FyZUhvdXNlQ29kZV09XCJ3YXJlaG91c2VzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbc3RvY2tMb2NhdGlvbnNdPVwic3RvY2tMb2NhdGlvbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICh0cmFuc2Zlckljb25DbGlja2VkKT1cInRyYW5zZmVySWNvbkNsaWNrZWQuZW1pdCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoc2VuZE1ldGhvZERpYWxvZ0NsaWNrZWQpPVwic2VuZE1ldGhvZERpYWxvZ0NsaWNrZWQuZW1pdCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbc2hvd1N0b2NrVHJhbnNmZXJdPVwic2hvd1N0b2NrVHJhbnNmZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIChzaG93U3RvY2tUcmFuc2ZlckNoYW5nZSk9XCJvblNob3dTdG9ja1RyYW5zZmVyQ2hhbmdlKCRldmVudClcIlxyXG4gICAgPjwvY28tc3RvY2stbG9jYXRpb24+XHJcblxyXG4gICAgPGNvLW9yZGVyLXRhYiAqbmdJZj1cInRhYnNbM10uYWN0aXZlXCJcclxuICAgICAgICAgICAgICAgICAgW2FydGljbGVTdG9ja0luZm9ybWF0aW9uXT1cInN0b2NrSW5mb3JtYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICBbaW5PcmRlckluZm9ybWF0aW9uXT1cImluT3JkZXJJbmZvcm1hdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICh0cmFuc2Zlckljb25DbGlja2VkKT1cInRyYW5zZmVySWNvbkNsaWNrZWQuZW1pdCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgKHNlbmRNZXRob2REaWFsb2dDbGlja2VkKT1cInNlbmRNZXRob2REaWFsb2dDbGlja2VkLmVtaXQoJGV2ZW50KVwiXHJcbiAgICA+PC9jby1vcmRlci10YWI+XHJcblxyXG4gICAgPGNvLW9yZGVyLXN0b2NrLXRhYiAqbmdJZj1cInRhYnNbNF0uYWN0aXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW29yZGVySW5mb3JtYXRpb25dPVwib3JkZXJJbmZvcm1hdGlvblwiXHJcbiAgICA+PC9jby1vcmRlci1zdG9jay10YWI+XHJcblxyXG4gICAgPGNvLXN0b2NrLWhpc3RvcnkgKm5nSWY9XCJoaXN0b3J5VGFic1swXS5hY3RpdmUgJiYgdGFic1s1XS5hY3RpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW3N0b2NrSGlzdG9yeV09XCJzdG9ja0hpc3RvcnlcIlxyXG4gICAgPjwvY28tc3RvY2staGlzdG9yeT5cclxuXHJcbiAgICA8Y28tb3JkZXItc3VwcGx5LXN0b2NrLWhpc3RvcnkgKm5nSWY9XCJoaXN0b3J5VGFic1sxXS5hY3RpdmUgJiYgdGFic1s1XS5hY3RpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtvcmRlclN1cHBseVN0b2NrSGlzdG9yeV09XCJvcmRlclN1cHBseVN0b2NrSGlzdG9yeVwiXHJcbiAgICA+PC9jby1vcmRlci1zdXBwbHktc3RvY2staGlzdG9yeT5cclxuXHJcbiAgICA8Y28tb3JkZXItc3RvY2stY29tbWlzc2lvbi1oaXN0b3J5ICpuZ0lmPVwiaGlzdG9yeVRhYnNbMl0uYWN0aXZlICYmIHRhYnNbNV0uYWN0aXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW29yZGVyU3RvY2tDb21taXNzaW9uSGlzdG9yeV09XCJvcmRlckNvbW1pc3Npb25TdG9ja0hpc3RvcnlcIlxyXG4gICAgPjwvY28tb3JkZXItc3RvY2stY29tbWlzc2lvbi1oaXN0b3J5PlxyXG5cclxuICAgIDxjby1vcmRlci1zdG9jay1oaXN0b3J5ICpuZ0lmPVwiaGlzdG9yeVRhYnNbM10uYWN0aXZlICYmIHRhYnNbNV0uYWN0aXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtvcmRlclN0b2NrSGlzdG9yeV09XCJvcmRlclN0b2NrSGlzdG9yeVwiXHJcbiAgICA+PC9jby1vcmRlci1zdG9jay1oaXN0b3J5PlxyXG5cclxuICAgIDxjby1hbGxvY2F0aW9uLXN0b2NrLWhpc3RvcnkgKm5nSWY9XCJoaXN0b3J5VGFic1s0XS5hY3RpdmUgJiYgdGFic1s1XS5hY3RpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWxsb2NhdGlvblN0b2NrSGlzdG9yeV09XCJvcmRlckFsbG9jYXRpb25TdG9ja0hpc3RvcnlcIlxyXG4gICAgPjwvY28tYWxsb2NhdGlvbi1zdG9jay1oaXN0b3J5PlxyXG5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFN0b2NrVGFic0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGljb25zOiB0eXBlb2YgSWNvbiA9IEljb247XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHN0b2NrSW5mb3JtYXRpb246IEFydGljbGVTdG9ja0JvW10gPSBbXTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgYXJ0aWNsZTogQXJ0aWNsZUV4dGVuZGVkO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhcnRpY2xlRmxhdDogQXJ0aWNsZUZsYXQ7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNob3dTdG9ja1RyYW5zZmVyOiBib29sZWFuO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB3YXJlaG91c2VzOiBTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzW10gPSBbXTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHJlYWRvbmx5IHRyYW5zZmVySWNvbkNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxBcnRpY2xlU3RvY2tCbz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyByZWFkb25seSBzZW5kTWV0aG9kRGlhbG9nQ2xpY2tlZDogRXZlbnRFbWl0dGVyPFByaW50UHJpY2VTdGlja2Vycz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG5cclxuICBwdWJsaWMgc3RvY2tMb2NhdGlvbnM6IFN0b2NrTG9jYXRpb25bXSA9IFtdO1xyXG4gIHB1YmxpYyBzZWxlY3RlZExvY2F0aW9uTm86IHN0cmluZztcclxuICBwdWJsaWMgc3RvY2tIaXN0b3J5OiBTdG9ja0hpc3RvcnlCb1tdID0gW107XHJcbiAgcHVibGljIG9yZGVyU3VwcGx5U3RvY2tIaXN0b3J5OiBTdG9ja0hpc3RvcnlCb1tdID0gW107XHJcbiAgcHVibGljIG9yZGVyQ29tbWlzc2lvblN0b2NrSGlzdG9yeTogU3RvY2tIaXN0b3J5Qm9bXSA9IFtdO1xyXG4gIHB1YmxpYyBvcmRlclN0b2NrSGlzdG9yeTogU3RvY2tIaXN0b3J5Qm9bXSA9IFtdO1xyXG4gIHB1YmxpYyBvcmRlckFsbG9jYXRpb25TdG9ja0hpc3Rvcnk6IFN0b2NrSGlzdG9yeUJvW10gPSBbXTtcclxuICBwdWJsaWMgaW5PcmRlckluZm9ybWF0aW9uOiBBcnRpY2xlVHJhbnNhY3Rpb25Cb1tdID0gW107XHJcbiAgcHVibGljIG9yZGVySW5mb3JtYXRpb246IEFydGljbGVUcmFuc2FjdGlvbkJvW10gPSBbXTtcclxuICBwdWJsaWMgc3RvY2tQcm9nbm9zZTogU3RvY2tGb3JlY2FzdFtdID0gW107XHJcbiAgcHVibGljIHNlbGVjdGVkV2FyZWhvdXNlOiBTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzID0gbmV3IFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXMoKTtcclxuICBwdWJsaWMgYXJ0aWNsZURldGFpbHNJbmZvcm1hdGlvbjogQXJ0aWNsZVN0b2NrTWFuYWdlbWVudCA9IG5ldyBBcnRpY2xlU3RvY2tNYW5hZ2VtZW50KClcclxuICBwdWJsaWMgc2hvd1dhcmVob3VzZVNlbGVjdGlvbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBhcnRpY2xlRGV0YWlsczogQXJ0aWNsZURldGFpbHNCb1tdID0gW107XHJcblxyXG4gIHB1YmxpYyB0YWJzOiBUYWJbXSA9IFtdO1xyXG4gIHB1YmxpYyBoaXN0b3J5VGFiczogVGFiW10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9zdG9ja1NlcnZpY2U6IFN0b2NrU2VydmljZSxcclxuICAgIHByaXZhdGUgX2RpY3Rpb25hcnlTZXJ2aWNlOiBTaGFyZWRDb21wb25lbnRzRGljdGlvbmFyeVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcblxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnRhYnMgPSBbXHJcbiAgICAgIHt0aXRsZTogdGhpcy5fZGljdGlvbmFyeVNlcnZpY2UuZ2V0KCdPVkVSVklFVycpLCBhY3RpdmU6IHRydWUsIGNmZzogU2hhcmVkQ2ZnTmFtZS5PdmVydmlld0RldGFpbHN9LFxyXG4gICAgICB7dGl0bGU6IHRoaXMuX2RpY3Rpb25hcnlTZXJ2aWNlLmdldCgnU1RPQ0tfRk9SRUNBU1QnKSwgYWN0aXZlOiBmYWxzZSwgY2ZnOiBTaGFyZWRDZmdOYW1lLlN0b2NrRm9yZWNhc3R9LFxyXG4gICAgICB7dGl0bGU6IHRoaXMuX2RpY3Rpb25hcnlTZXJ2aWNlLmdldCgnU1RPQ0tfREVUQUlMUycpLCBhY3RpdmU6IGZhbHNlLCBjZmc6IFNoYXJlZENmZ05hbWUuSW52ZW50b3J5Rm9yZWNhc3R9LFxyXG4gICAgICB7dGl0bGU6IHRoaXMuX2RpY3Rpb25hcnlTZXJ2aWNlLmdldCgnQUxSRUFEWV9JTl9PUkRFUicpLCBhY3RpdmU6IGZhbHNlLCBjZmc6IFNoYXJlZENmZ05hbWUuSW52ZW50b3J5RGV0YWlsc30sXHJcbiAgICAgIHt0aXRsZTogdGhpcy5fZGljdGlvbmFyeVNlcnZpY2UuZ2V0KCdJTl9PUkRFUicpLCBhY3RpdmU6IGZhbHNlLCBjZmc6IFNoYXJlZENmZ05hbWUuSW5PcmRlcn0sXHJcbiAgICAgIHt0aXRsZTogdGhpcy5fZGljdGlvbmFyeVNlcnZpY2UuZ2V0KCdISVNUT1JZJyksIGFjdGl2ZTogZmFsc2UsIGNmZzogU2hhcmVkQ2ZnTmFtZS5IaXN0b3J5fSxcclxuICAgIF07XHJcblxyXG4gICAgdGhpcy5oaXN0b3J5VGFicyA9IFtcclxuICAgICAge3RpdGxlOiB0aGlzLl9kaWN0aW9uYXJ5U2VydmljZS5nZXQoJ1NUT0NLJyksIGFjdGl2ZTogdHJ1ZSwgY2ZnOiBTaGFyZWRDZmdOYW1lLkhpc3RvcnlTdG9ja30sXHJcbiAgICAgIHtcclxuICAgICAgICB0aXRsZTogdGhpcy5fZGljdGlvbmFyeVNlcnZpY2UuZ2V0KCdPUkRFUl9TVE9DSycpLFxyXG4gICAgICAgIGFjdGl2ZTogZmFsc2UsXHJcbiAgICAgICAgY2ZnOiBTaGFyZWRDZmdOYW1lLkhpc3RvcnlPcmRlclN0b2NrXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICB0aXRsZTogdGhpcy5fZGljdGlvbmFyeVNlcnZpY2UuZ2V0KCdPUkRFUl9DT01NSVNTSU9OJyksXHJcbiAgICAgICAgYWN0aXZlOiBmYWxzZSxcclxuICAgICAgICBjZmc6IFNoYXJlZENmZ05hbWUuSGlzdG9yeU9yZGVyQ29tbWlzc2lvblxyXG4gICAgICB9LFxyXG4gICAgICB7dGl0bGU6IHRoaXMuX2RpY3Rpb25hcnlTZXJ2aWNlLmdldCgnT1JERVInKSwgYWN0aXZlOiBmYWxzZSwgY2ZnOiBTaGFyZWRDZmdOYW1lLkhpc3RvcnlPcmRlcn0sXHJcbiAgICAgIHtcclxuICAgICAgICB0aXRsZTogdGhpcy5fZGljdGlvbmFyeVNlcnZpY2UuZ2V0KCdBTExPQ0FUSU9OJyksXHJcbiAgICAgICAgYWN0aXZlOiBmYWxzZSxcclxuICAgICAgICBjZmc6IFNoYXJlZENmZ05hbWUuSGlzdG9yeUFzc2lnblxyXG4gICAgICB9LFxyXG4gICAgXTtcclxuXHJcblxyXG4gIH1cclxuICBwdWJsaWMgb25TaG93U3RvY2tUcmFuc2ZlckNoYW5nZShzaG93OiBib29sZWFuKSB7XHJcbiAgICB0aGlzLnNob3dTdG9ja1RyYW5zZmVyID0gc2hvdztcclxuICB9XHJcbiAgcHVibGljIGhhbmRsZUxvY2F0aW9uQ2xpY2tlZChkYXRhOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMudGFic1swXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgIHRoaXMudGFic1syXS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgdGhpcy5zZWxlY3RlZFdhcmVob3VzZSA9IHRoaXMud2FyZUhvdXNlRm9yQ29kZShwYXJzZUludChkYXRhKSk7XHJcbiAgICB0aGlzLmhhbmRsZVdhcmVob3VzZVNlbGVjdGVkKHRoaXMuc2VsZWN0ZWRXYXJlaG91c2UpO1xyXG4gICAgdGhpcy5nZXRTdG9ja0RhdGEodGhpcy5zZWxlY3RlZFdhcmVob3VzZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U3RvY2tIaXN0b3J5KCk6IHZvaWQge1xyXG4gICAgY29uc3Qgc3RvY2tIaXN0b3J5SW5mb3JtYXRpb246IEdldFN0b2NrSGlzdG9yeVJlcXVlc3QgPSBuZXcgR2V0U3RvY2tIaXN0b3J5UmVxdWVzdCgpO1xyXG4gICAgc3RvY2tIaXN0b3J5SW5mb3JtYXRpb24udHlwZSA9IFwiVlwiO1xyXG4gICAgc3RvY2tIaXN0b3J5SW5mb3JtYXRpb24uZ29vZElkID0gdGhpcy5hcnRpY2xlLmdvb2RJZC50b1N0cmluZygpO1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldFN0b2NrSGlzdG9yeShzdG9ja0hpc3RvcnlJbmZvcm1hdGlvbikudGhlbihyZXN1bHQgPT4ge1xyXG4gICAgICB0aGlzLnN0b2NrSGlzdG9yeSA9IHJlc3VsdFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0T3JkZXJTdXBwbHlTdG9ja0hpc3RvcnkoKTogdm9pZCB7XHJcbiAgICBjb25zdCBzdG9ja0hpc3RvcnlJbmZvcm1hdGlvbjogR2V0U3RvY2tIaXN0b3J5UmVxdWVzdCA9IG5ldyBHZXRTdG9ja0hpc3RvcnlSZXF1ZXN0KCk7XHJcbiAgICBzdG9ja0hpc3RvcnlJbmZvcm1hdGlvbi50eXBlID0gXCJPXCI7XHJcbiAgICBzdG9ja0hpc3RvcnlJbmZvcm1hdGlvbi5nb29kSWQgPSB0aGlzLmFydGljbGUuZ29vZElkLnRvU3RyaW5nKCk7XHJcbiAgICB0aGlzLl9zdG9ja1NlcnZpY2UuZ2V0U3RvY2tIaXN0b3J5KHN0b2NrSGlzdG9yeUluZm9ybWF0aW9uKS50aGVuKHJlc3VsdCA9PiB7XHJcbiAgICAgIHRoaXMub3JkZXJTdXBwbHlTdG9ja0hpc3RvcnkgPSByZXN1bHQ7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRPcmRlckNvbW1pc3Npb25TdG9ja0hpc3RvcnkoKTogdm9pZCB7XHJcbiAgICBjb25zdCBzdG9ja0hpc3RvcnlJbmZvcm1hdGlvbjogR2V0U3RvY2tIaXN0b3J5UmVxdWVzdCA9IG5ldyBHZXRTdG9ja0hpc3RvcnlSZXF1ZXN0KCk7XHJcbiAgICBzdG9ja0hpc3RvcnlJbmZvcm1hdGlvbi50eXBlID0gXCJDXCI7XHJcbiAgICBzdG9ja0hpc3RvcnlJbmZvcm1hdGlvbi5nb29kSWQgPSB0aGlzLmFydGljbGUuZ29vZElkLnRvU3RyaW5nKCk7XHJcbiAgICB0aGlzLl9zdG9ja1NlcnZpY2UuZ2V0U3RvY2tIaXN0b3J5KHN0b2NrSGlzdG9yeUluZm9ybWF0aW9uKS50aGVuKHJlc3VsdCA9PiB7XHJcbiAgICAgIHRoaXMub3JkZXJDb21taXNzaW9uU3RvY2tIaXN0b3J5ID0gcmVzdWx0O1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0T3JkZXJTdG9ja0hpc3RvcnkoKTogdm9pZCB7XHJcbiAgICBjb25zdCBzdG9ja0hpc3RvcnlJbmZvcm1hdGlvbjogR2V0U3RvY2tIaXN0b3J5UmVxdWVzdCA9IG5ldyBHZXRTdG9ja0hpc3RvcnlSZXF1ZXN0KCk7XHJcbiAgICBzdG9ja0hpc3RvcnlJbmZvcm1hdGlvbi50eXBlID0gXCJCXCI7XHJcbiAgICBzdG9ja0hpc3RvcnlJbmZvcm1hdGlvbi5nb29kSWQgPSB0aGlzLmFydGljbGUuZ29vZElkLnRvU3RyaW5nKCk7XHJcbiAgICB0aGlzLl9zdG9ja1NlcnZpY2UuZ2V0U3RvY2tIaXN0b3J5KHN0b2NrSGlzdG9yeUluZm9ybWF0aW9uKS50aGVuKHJlc3VsdCA9PiB7XHJcbiAgICAgIHRoaXMub3JkZXJTdG9ja0hpc3RvcnkgPSByZXN1bHQ7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRBbGxvY2F0aW9uU3RvY2tIaXN0b3J5KCk6IHZvaWQge1xyXG4gICAgY29uc3Qgc3RvY2tIaXN0b3J5SW5mb3JtYXRpb246IEdldFN0b2NrSGlzdG9yeVJlcXVlc3QgPSBuZXcgR2V0U3RvY2tIaXN0b3J5UmVxdWVzdCgpO1xyXG4gICAgc3RvY2tIaXN0b3J5SW5mb3JtYXRpb24udHlwZSA9IFwiVFwiO1xyXG4gICAgc3RvY2tIaXN0b3J5SW5mb3JtYXRpb24uZ29vZElkID0gdGhpcy5hcnRpY2xlLmdvb2RJZC50b1N0cmluZygpO1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldFN0b2NrSGlzdG9yeShzdG9ja0hpc3RvcnlJbmZvcm1hdGlvbikudGhlbihyZXN1bHQgPT4ge1xyXG4gICAgICB0aGlzLm9yZGVyQWxsb2NhdGlvblN0b2NrSGlzdG9yeSA9IHJlc3VsdDtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldEluT3JkZXJEYXRhKCk6IHZvaWQge1xyXG4gICAgY29uc3QgaW5PcmRlckRhdGE6IEFydGljbGVUcmFuc2FjdGlvbiA9IG5ldyBBcnRpY2xlVHJhbnNhY3Rpb24oKTtcclxuICAgIGluT3JkZXJEYXRhLnR5cGUgPSBcIlZcIjtcclxuICAgIGluT3JkZXJEYXRhLmdvb2RJZCA9IHRoaXMuc3RvY2tJbmZvcm1hdGlvblswXS5nb29kSWQudG9TdHJpbmcoKTtcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRBcnRpY2xlVHJhbnNhY3Rpb24oaW5PcmRlckRhdGEpLnRoZW4ocmVzdWx0ID0+IHtcclxuICAgICAgdGhpcy5pbk9yZGVySW5mb3JtYXRpb24gPSByZXN1bHQ7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRPcmRlckRhdGEoKTogdm9pZCB7XHJcbiAgICBjb25zdCBvcmRlckRhdGE6IEFydGljbGVUcmFuc2FjdGlvbiA9IG5ldyBBcnRpY2xlVHJhbnNhY3Rpb24oKTtcclxuICAgIG9yZGVyRGF0YS50eXBlID0gXCJJXCI7XHJcbiAgICBvcmRlckRhdGEuZ29vZElkID0gdGhpcy5zdG9ja0luZm9ybWF0aW9uWzBdLmdvb2RJZC50b1N0cmluZygpO1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldEFydGljbGVUcmFuc2FjdGlvbihvcmRlckRhdGEpLnRoZW4ocmVzdWx0ID0+IHtcclxuICAgICAgdGhpcy5vcmRlckluZm9ybWF0aW9uID0gcmVzdWx0O1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U3RvY2tQcm9nbm9zZSh3YXJlaG91c2VObzogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLl9zdG9ja1NlcnZpY2Uuc3RvY2tQcm9nbm9zZSh0aGlzLmFydGljbGUuZ29vZElkLCB3YXJlaG91c2VObykudGhlbihyZXN1bHQgPT4ge1xyXG4gICAgICB0aGlzLnN0b2NrUHJvZ25vc2UgPSByZXN1bHQ7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVXYXJlaG91c2VTZWxlY3RlZChldmVudDogU3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlcyk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZFdhcmVob3VzZSA9IGV2ZW50O1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLndhcmVob3VzZVNlbGVjdGVkLmVtaXQoZXZlbnQpO1xyXG4gICAgaWYgKHRoaXMudGFic1sxXS5hY3RpdmUpIHtcclxuICAgICAgdGhpcy5nZXRTdG9ja1Byb2dub3NlKHRoaXMuc2VsZWN0ZWRXYXJlaG91c2Uud2FyZWhvdXNlTm8pO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMudGFic1syXS5hY3RpdmUpIHtcclxuICAgICAgdGhpcy5hcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uLndhcmVob3VzZU51bWJlciA9IGV2ZW50LndhcmVob3VzZU5vO1xyXG4gICAgICB0aGlzLmFydGljbGVEZXRhaWxzSW5mb3JtYXRpb24uZ29vZElkID0gdGhpcy5hcnRpY2xlLmdvb2RJZC50b1N0cmluZygpO1xyXG4gICAgICB0aGlzLl9zdG9ja1NlcnZpY2UuZ2V0QXJ0aWNsZURldGFpbHModGhpcy5hcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uKS50aGVuKChkZXRhaWxzKSA9PiB7XHJcbiAgICAgICAgdGhpcy5hcnRpY2xlRGV0YWlscyA9IGRldGFpbHM7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRTdG9ja0xvY2F0aW9ucygpIHtcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRTdG9ja01hbmFnZW1lbnRMb2NhdGlvbnModGhpcy5zZWxlY3RlZFdhcmVob3VzZS53YXJlaG91c2VObykudGhlbiggcmVzdWx0ID0+IHtcclxuICAgICAgdGhpcy5zdG9ja0xvY2F0aW9ucyA9IHJlc3VsdDtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFN0b2NrRGF0YSh3YXJlaG91c2U6IFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXMpIHtcclxuICAgIHRoaXMuaGFuZGxlV2FyZWhvdXNlU2VsZWN0ZWQod2FyZWhvdXNlKTtcclxuICAgIHRoaXMuZ2V0U3RvY2tQcm9nbm9zZSh3YXJlaG91c2Uud2FyZWhvdXNlTm8pO1xyXG4gICAgdGhpcy5nZXRPcmRlckRhdGEoKTtcclxuICAgIHRoaXMuZ2V0SW5PcmRlckRhdGEoKTtcclxuICAgIHRoaXMuZ2V0QWxsb2NhdGlvblN0b2NrSGlzdG9yeSgpO1xyXG4gICAgdGhpcy5nZXRPcmRlclN0b2NrSGlzdG9yeSgpO1xyXG4gICAgdGhpcy5nZXRPcmRlckNvbW1pc3Npb25TdG9ja0hpc3RvcnkoKTtcclxuICAgIHRoaXMuZ2V0T3JkZXJTdXBwbHlTdG9ja0hpc3RvcnkoKTtcclxuICAgIHRoaXMuZ2V0U3RvY2tIaXN0b3J5KCk7XHJcbiAgICB0aGlzLmdldFN0b2NrTG9jYXRpb25zKCk7XHJcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcclxuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB3YXJlSG91c2VGb3JDb2RlKGNvZGU6IG51bWJlcikge1xyXG4gICAgcmV0dXJuIHRoaXMud2FyZWhvdXNlcy5maW5kKHdhcmVob3VzZSA9PiB3YXJlaG91c2Uud2FyZWhvdXNlTm8gPT09IGNvZGUpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -37,13 +37,13 @@ StockChangeAmountComponent.decorators = [
|
|
|
37
37
|
<div class="stock-transfer">
|
|
38
38
|
<co-dialog-wizard [showCloseIcon]="true" (closeClick)="closeDialogClick()">
|
|
39
39
|
<ng-container header>
|
|
40
|
-
<span [textContent]="'STOCK_CHANGE_REASON' |
|
|
40
|
+
<span [textContent]="'STOCK_CHANGE_REASON' | sharedLocalize"></span>
|
|
41
41
|
</ng-container>
|
|
42
42
|
<div class="popup-wrapper">
|
|
43
43
|
<!--
|
|
44
44
|
<co-drop-down-list [collection]="stockState"
|
|
45
45
|
[fields]="stockStateDropdownField"
|
|
46
|
-
[placeholder]="'STOCK_STATE' |
|
|
46
|
+
[placeholder]="'STOCK_STATE' | sharedLocalize"
|
|
47
47
|
[(model)]="selectedArticleDetailsData.stockStateId"
|
|
48
48
|
></co-drop-down-list>
|
|
49
49
|
-->
|
|
@@ -52,8 +52,8 @@ StockChangeAmountComponent.decorators = [
|
|
|
52
52
|
|
|
53
53
|
></co-input-textarea>
|
|
54
54
|
<div class="ok-cancel-buttons">
|
|
55
|
-
<co-button [textContent]="'OK' |
|
|
56
|
-
<co-button [textContent]="'CANCEL' |
|
|
55
|
+
<co-button [textContent]="'OK' | sharedLocalize" (click)="handleOkClick(selectedArticleDetailsData)"></co-button>
|
|
56
|
+
<co-button [textContent]="'CANCEL' | sharedLocalize" (click)="handleCancelClick()"></co-button>
|
|
57
57
|
</div>
|
|
58
58
|
</div>
|
|
59
59
|
</co-dialog-wizard>
|
|
@@ -69,4 +69,4 @@ StockChangeAmountComponent.propDecorators = {
|
|
|
69
69
|
selectedArticleDetailsData: [{ type: Input }],
|
|
70
70
|
closeStockChangeAmount: [{ type: Output }]
|
|
71
71
|
};
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2stY2hhbmdlLWFtb3VudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zdG9jay9zdG9jay10cmFuc2Zlci9zdG9jay1jaGFuZ2UtYW1vdW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkcsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBbUM1RCxNQUFNLE9BQU8sMEJBQTBCO0lBV3JDLFlBQ1UsYUFBMkI7UUFBM0Isa0JBQWEsR0FBYixhQUFhLENBQWM7UUFOckIsMkJBQXNCLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFeEUsZUFBVSxHQUFrQixFQUFFLENBQUM7UUFDL0IsNEJBQXVCLEdBQXlCLEVBQUMsSUFBSSxFQUFFLGtCQUFrQixFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUMsQ0FBQztJQUt6RyxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU0sZ0JBQWdCO1FBQ3JCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRVksYUFBYSxDQUFDLElBQXNCOztZQUMvQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztZQUNyQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7WUFDNUIsTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RELENBQUM7S0FBQTtJQUVNLGlCQUFpQjtRQUN0QixJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVNLGFBQWE7UUFDbEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFvQixFQUFFLEVBQUU7WUFDL0QsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDMUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzs7WUFwRUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx3QkFBd0I7Z0JBQ2xDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXlCVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBbENPLFlBQVk7Ozt5Q0FxQ2pCLEtBQUs7cUNBR0wsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1N0b2NrU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2Uvc3RvY2suc2VydmljZVwiO1xyXG5pbXBvcnQge1N0b2NrU3RhdHVzfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2stc3RhdHVzLmJvXCI7XHJcbmltcG9ydCB7Q29Ecm9wRG93bkxpc3RGaWVsZHN9IGZyb20gXCIuL2NvLWRyb3AtZG93bi1saXN0LWZpZWxkcy5pbnRlcmZhY2VcIjtcclxuaW1wb3J0IHtBcnRpY2xlRGV0YWlsc0JvfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1kZXRhaWxzLmJvXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby1zdG9jay1jaGFuZ2UtYW1vdW50XCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLXRyYW5zZmVyXCI+XHJcbiAgICAgICAgPGNvLWRpYWxvZy13aXphcmQgW3Nob3dDbG9zZUljb25dPVwidHJ1ZVwiIChjbG9zZUNsaWNrKT1cImNsb3NlRGlhbG9nQ2xpY2soKVwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBoZWFkZXI+
|
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2stY2hhbmdlLWFtb3VudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zdG9jay9zdG9jay10cmFuc2Zlci9zdG9jay1jaGFuZ2UtYW1vdW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkcsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBbUM1RCxNQUFNLE9BQU8sMEJBQTBCO0lBV3JDLFlBQ1UsYUFBMkI7UUFBM0Isa0JBQWEsR0FBYixhQUFhLENBQWM7UUFOckIsMkJBQXNCLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFeEUsZUFBVSxHQUFrQixFQUFFLENBQUM7UUFDL0IsNEJBQXVCLEdBQXlCLEVBQUMsSUFBSSxFQUFFLGtCQUFrQixFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUMsQ0FBQztJQUt6RyxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU0sZ0JBQWdCO1FBQ3JCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRVksYUFBYSxDQUFDLElBQXNCOztZQUMvQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztZQUNyQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7WUFDNUIsTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RELENBQUM7S0FBQTtJQUVNLGlCQUFpQjtRQUN0QixJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVNLGFBQWE7UUFDbEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFvQixFQUFFLEVBQUU7WUFDL0QsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDMUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzs7WUFwRUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx3QkFBd0I7Z0JBQ2xDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXlCVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBbENPLFlBQVk7Ozt5Q0FxQ2pCLEtBQUs7cUNBR0wsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1N0b2NrU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2Uvc3RvY2suc2VydmljZVwiO1xyXG5pbXBvcnQge1N0b2NrU3RhdHVzfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2stc3RhdHVzLmJvXCI7XHJcbmltcG9ydCB7Q29Ecm9wRG93bkxpc3RGaWVsZHN9IGZyb20gXCIuL2NvLWRyb3AtZG93bi1saXN0LWZpZWxkcy5pbnRlcmZhY2VcIjtcclxuaW1wb3J0IHtBcnRpY2xlRGV0YWlsc0JvfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1kZXRhaWxzLmJvXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby1zdG9jay1jaGFuZ2UtYW1vdW50XCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLXRyYW5zZmVyXCI+XHJcbiAgICAgICAgPGNvLWRpYWxvZy13aXphcmQgW3Nob3dDbG9zZUljb25dPVwidHJ1ZVwiIChjbG9zZUNsaWNrKT1cImNsb3NlRGlhbG9nQ2xpY2soKVwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBoZWFkZXI+XHJcbiAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCInU1RPQ0tfQ0hBTkdFX1JFQVNPTicgfCBzaGFyZWRMb2NhbGl6ZVwiPjwvc3Bhbj5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInBvcHVwLXdyYXBwZXJcIj5cclxuPCEtLVxyXG4gICAgICAgICAgICA8Y28tZHJvcC1kb3duLWxpc3QgW2NvbGxlY3Rpb25dPVwic3RvY2tTdGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZmllbGRzXT1cInN0b2NrU3RhdGVEcm9wZG93bkZpZWxkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInU1RPQ0tfU1RBVEUnIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwic2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuc3RvY2tTdGF0ZUlkXCJcclxuICAgICAgICAgICAgPjwvY28tZHJvcC1kb3duLWxpc3Q+XHJcbi0tPlxyXG5cclxuICAgICAgICAgICAgPGNvLWlucHV0LXRleHRhcmVhIFsobW9kZWwpXT1cInNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLnN0b2NrU3RhdGVSZW1hcmtcIlxyXG5cclxuICAgICAgICAgICAgPjwvY28taW5wdXQtdGV4dGFyZWE+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJvay1jYW5jZWwtYnV0dG9uc1wiPlxyXG4gICAgICAgICAgICAgIDxjby1idXR0b24gW3RleHRDb250ZW50XT1cIidPSycgfCBzaGFyZWRMb2NhbGl6ZVwiIChjbGljayk9XCJoYW5kbGVPa0NsaWNrKHNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhKVwiPjwvY28tYnV0dG9uPlxyXG4gICAgICAgICAgICAgIDxjby1idXR0b24gW3RleHRDb250ZW50XT1cIidDQU5DRUwnIHwgc2hhcmVkTG9jYWxpemVcIiAoY2xpY2spPVwiaGFuZGxlQ2FuY2VsQ2xpY2soKVwiPjwvY28tYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvY28tZGlhbG9nLXdpemFyZD5cclxuICAgICAgPC9kaXY+XHJcbiAgYCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdG9ja0NoYW5nZUFtb3VudENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YTogQXJ0aWNsZURldGFpbHNCbztcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHJlYWRvbmx5IGNsb3NlU3RvY2tDaGFuZ2VBbW91bnQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBwdWJsaWMgc3RvY2tTdGF0ZTogU3RvY2tTdGF0dXNbXSA9IFtdO1xyXG4gIHB1YmxpYyBzdG9ja1N0YXRlRHJvcGRvd25GaWVsZDogQ29Ecm9wRG93bkxpc3RGaWVsZHMgPSB7dGV4dDogXCJzdGF0ZURlc2NyaXB0aW9uXCIsIHZhbHVlOiBcInN0b2NrU3RhdGVJZFwifTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9zdG9ja1NlcnZpY2U6IFN0b2NrU2VydmljZVxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5nZXRTdG9ja1N0YXRlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2xvc2VEaWFsb2dDbGljaygpOiB2b2lkIHtcclxuICAgIHRoaXMuY2xvc2VTdG9ja0NoYW5nZUFtb3VudC5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaGFuZGxlT2tDbGljayhkYXRhOiBBcnRpY2xlRGV0YWlsc0JvKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBkYXRhLnNlbGVjdGVkID0gdHJ1ZTtcclxuICAgIGRhdGEuZW50cnlEYXRlID0gbmV3IERhdGUoKTtcclxuICAgIGF3YWl0IHRoaXMuX3N0b2NrU2VydmljZS51cGRhdGVBcnRpY2xlRGV0YWlscyhkYXRhKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVDYW5jZWxDbGljaygpOiB2b2lkIHtcclxuICAgIHRoaXMuY2xvc2VTdG9ja0NoYW5nZUFtb3VudC5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U3RvY2tTdGF0ZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRTdG9ja1N0YXRlKCkudGhlbigoc3RhdGU6IFN0b2NrU3RhdHVzW10pID0+IHtcclxuICAgICAgdGhpcy5zdG9ja1N0YXRlID0gc3RhdGU7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
|
|
@@ -96,7 +96,7 @@ StockTransferComponent.decorators = [
|
|
|
96
96
|
<ng-template #headerTemplate>
|
|
97
97
|
<div class="co-dialog-header-title-wrapper">
|
|
98
98
|
<co-icon [iconData]="iconCacheService.getIcon(icons.Cubes)"></co-icon>
|
|
99
|
-
<div class="co-dialog-header-title" [textContent]="'TRANSFER_STOCK' |
|
|
99
|
+
<div class="co-dialog-header-title" [textContent]="'TRANSFER_STOCK' | sharedLocalize"></div>
|
|
100
100
|
</div>
|
|
101
101
|
</ng-template>
|
|
102
102
|
<div class="dialog-wrapper">
|
|
@@ -104,19 +104,19 @@ StockTransferComponent.decorators = [
|
|
|
104
104
|
<div *ngIf="articleToTransfer" class="stock-transfer-top-column">
|
|
105
105
|
<div class="transfer-items">
|
|
106
106
|
<div class="transfer-item">
|
|
107
|
-
<label class="item-label" [textContent]="'WAREHOUSE' |
|
|
107
|
+
<label class="item-label" [textContent]="'WAREHOUSE' | sharedLocalize"></label>
|
|
108
108
|
<span class="item-value" [textContent]="articleToTransfer.warehouseDescription"></span>
|
|
109
109
|
</div>
|
|
110
110
|
<div class="transfer-item">
|
|
111
|
-
<label class="item-label" [textContent]="'LOCATION' |
|
|
111
|
+
<label class="item-label" [textContent]="'LOCATION' | sharedLocalize"></label>
|
|
112
112
|
<span class="item-value" [textContent]="articleToTransfer.locationNo"></span>
|
|
113
113
|
</div>
|
|
114
114
|
<div class="transfer-item" *ngIf="articleToTransfer?.batchNo">
|
|
115
|
-
<label class="item-label" [textContent]="'BATCH_NO' |
|
|
115
|
+
<label class="item-label" [textContent]="'BATCH_NO' | sharedLocalize"></label>
|
|
116
116
|
<span class="item-value" [textContent]="articleToTransfer.batchNo"></span>
|
|
117
117
|
</div>
|
|
118
118
|
<div class="transfer-item" *ngIf="articleToTransfer?.serialNo">
|
|
119
|
-
<label class="item-label" [textContent]="'SERIE_NO' |
|
|
119
|
+
<label class="item-label" [textContent]="'SERIE_NO' | sharedLocalize"></label>
|
|
120
120
|
<span class="item-value" [textContent]="articleToTransfer.serialNo"></span>
|
|
121
121
|
</div>
|
|
122
122
|
</div>
|
|
@@ -124,9 +124,9 @@ StockTransferComponent.decorators = [
|
|
|
124
124
|
<co-input-number-picker
|
|
125
125
|
[(model)]="articleToTransfer.amountTransfer"
|
|
126
126
|
[min]="1"
|
|
127
|
-
[label]="'QUANTITY' |
|
|
127
|
+
[label]="'QUANTITY' | sharedLocalize">
|
|
128
128
|
</co-input-number-picker>
|
|
129
|
-
<span *ngIf="transferFull" [textContent]="this.articleToTransfer.amountInStockFree + (' AVAILABLE' |
|
|
129
|
+
<span *ngIf="transferFull" [textContent]="this.articleToTransfer.amountInStockFree + (' AVAILABLE' | sharedLocalize)"></span>
|
|
130
130
|
</div>
|
|
131
131
|
</div>
|
|
132
132
|
<div class="transfer-arrow-wrapper">
|
|
@@ -142,20 +142,20 @@ StockTransferComponent.decorators = [
|
|
|
142
142
|
<co-list-of-values [collection]="warehouses"
|
|
143
143
|
[displayField]="'warehouseDescription'"
|
|
144
144
|
(modelChange)="handleSelectedWarehouse($event)"
|
|
145
|
-
[label]="'WAREHOUSE' |
|
|
145
|
+
[label]="'WAREHOUSE' | sharedLocalize"
|
|
146
146
|
>
|
|
147
147
|
</co-list-of-values>
|
|
148
148
|
<co-list-of-values [collection]="stockLocations"
|
|
149
149
|
[displayField]="'locationNo'"
|
|
150
150
|
(modelChange)="handleSelectedLocation($event)"
|
|
151
|
-
[label]="'LOCATION' |
|
|
151
|
+
[label]="'LOCATION' | sharedLocalize"
|
|
152
152
|
>
|
|
153
153
|
</co-list-of-values>
|
|
154
154
|
</div>
|
|
155
155
|
<div class="transfer-bottom-row">
|
|
156
156
|
<co-list-of-values [collection]="stockState"
|
|
157
157
|
[displayField]="'stateDescription'"
|
|
158
|
-
[label]="'STOCK_STATE' |
|
|
158
|
+
[label]="'STOCK_STATE' | sharedLocalize"
|
|
159
159
|
(modelChange)="handleSelectedStockState($event)"
|
|
160
160
|
>
|
|
161
161
|
</co-list-of-values>
|
|
@@ -164,7 +164,7 @@ StockTransferComponent.decorators = [
|
|
|
164
164
|
</div>
|
|
165
165
|
<div class="transfer-sticker-buttons">
|
|
166
166
|
<co-button
|
|
167
|
-
[label]="'STICKER' |
|
|
167
|
+
[label]="'STICKER' | sharedLocalize"
|
|
168
168
|
(click)="handleStickerClick()"
|
|
169
169
|
[iconData]="iconCacheService.getIcon(icons.BarcodeReadRegular)">
|
|
170
170
|
</co-button>
|
|
@@ -216,4 +216,4 @@ StockTransferComponent.propDecorators = {
|
|
|
216
216
|
updateGridData: [{ type: Output }],
|
|
217
217
|
showStockTransferChange: [{ type: Output }]
|
|
218
218
|
};
|
|
219
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2stdHJhbnNmZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc3RvY2svc3RvY2stdHJhbnNmZXIvc3RvY2stdHJhbnNmZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFHNUQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scURBQXFELENBQUM7QUFJckYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBRTdDLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDJEQUEyRCxDQUFDO0FBK0dqRyxNQUFNLE9BQU8sc0JBQXNCO0lBOERqQyxZQUNVLGFBQTJCLEVBQzVCLGdCQUFrQyxFQUNqQyxlQUFrQztRQUZsQyxrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQUM1QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2pDLG9CQUFlLEdBQWYsZUFBZSxDQUFtQjtRQS9DckMsK0JBQTBCLEdBQXFCLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztRQU10RSw4QkFBeUIsR0FBMkIsSUFBSSxzQkFBc0IsRUFBRSxDQUFDO1FBU2pGLHFCQUFnQixHQUF1QixFQUFFLENBQUM7UUFHMUMsbUJBQWMsR0FBb0IsRUFBRSxDQUFDO1FBR3JDLGdCQUFXLEdBQXlCLElBQUksWUFBWSxFQUFFLENBQUM7UUFHdkQseUJBQW9CLEdBQXNCLElBQUksWUFBWSxFQUFF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Q0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDcEcsSUFBSSxDQUFDLGNBQWMsR0FBRyxTQUFTLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sYUFBYTtRQUNsQixJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQW9CLEVBQUUsRUFBRTtZQUMvRCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OztZQWhQRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtnQkFDN0IsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXdHVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBeEhPLFlBQVk7WUFPWixnQkFBZ0I7WUFmdEIsaUJBQWlCOzs7MkJBbUloQixLQUFLO3NCQUdMLEtBQUs7Z0NBR0wsS0FBSzs0QkFHTCxLQUFLO2dDQUdMLEtBQUs7eUNBR0wsS0FBSzswQkFHTCxLQUFLO3dDQUdMLEtBQUs7Z0NBR0wsS0FBSztpQ0FHTCxLQUFLOytCQUdMLEtBQUs7NkJBR0wsS0FBSzswQkFHTCxNQUFNO21DQUdOLE1BQU07NkJBR04sTUFBTTtzQ0FHTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtQcmludFN0b2NrU3RpY2tlcnN9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9wcmludC1zdG9jay1zdGlja2Vyc1wiO1xyXG5pbXBvcnQge1N0b2NrU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2Uvc3RvY2suc2VydmljZVwiO1xyXG5pbXBvcnQge0NvRHJvcERvd25MaXN0RmllbGRzfSBmcm9tIFwiLi9jby1kcm9wLWRvd24tbGlzdC1maWVsZHMuaW50ZXJmYWNlXCI7XHJcbmltcG9ydCB7QXJ0aWNsZVN0b2NrIGFzIEFydGljbGVTdG9ja0JvfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1zdG9jay5ib1wiO1xyXG5pbXBvcnQge0FydGljbGVEZXRhaWxzQm99IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWRldGFpbHMuYm9cIjtcclxuaW1wb3J0IHtTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2stbWFuYWdlbWVudC13YXJlaG91c2VzLmJvXCI7XHJcbmltcG9ydCB7U3RvY2tTdGF0dXN9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9zdG9jay1zdGF0dXMuYm9cIjtcclxuaW1wb3J0IHtTdG9ja0xvY2F0aW9ufSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2stbG9jYXRpb24uYm9cIjtcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtJY29ufSBmcm9tIFwiLi4vLi4vLi4vZW51bS9pY29uLmVudW1cIjtcclxuaW1wb3J0IHtBcnRpY2xlRmxhdH0gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZmxhdC5ib1wiO1xyXG5pbXBvcnQge0FydGljbGVTdG9ja01hbmFnZW1lbnR9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLXN0b2NrLW1hbmFnZW1lbnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNvLXN0b2NrLXRyYW5zZmVyXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLXRyYW5zZmVyXCI+XHJcbiAgICAgICAgPGNvLWRpYWxvZ1xyXG4gICAgICAgICAgICAgICAgICAgKGNsb3NlQ2xpY2spPVwib25DbG9zZUNsaWNrKClcIlxyXG4gICAgICAgICAgICAgICAgICAgW3Nob3dDbG9zZUljb25dPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICBbbW9kYWxdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICBbaGVhZGVyVGVtcGxhdGVdPVwiaGVhZGVyVGVtcGxhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgW2Zvb3RlclRlbXBsYXRlXT1cImZvb3RlclRlbXBsYXRlXCI+XHJcbiAgICAgICAgICA8bmctdGVtcGxhdGUgI2hlYWRlclRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY28tZGlhbG9nLWhlYWRlci10aXRsZS13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPGNvLWljb24gW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5DdWJlcylcIj48L2NvLWljb24+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1oZWFkZXItdGl0bGVcIiBbdGV4dENvbnRlbnRdPVwiJ1RSQU5TRkVSX1NUT0NLJyB8IGxvY2FsaXplXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkaWFsb2ctd3JhcHBlclwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3RvY2stdHJhbnNmZXItY29sdW1uc1wiPlxyXG4gICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJhcnRpY2xlVG9UcmFuc2ZlclwiIGNsYXNzPVwic3RvY2stdHJhbnNmZXItdG9wLWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zZmVyLWl0ZW1zXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2Zlci1pdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiaXRlbS1sYWJlbFwiIFt0ZXh0Q29udGVudF09XCInV0FSRUhPVVNFJyB8IGxvY2FsaXplXCI+PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIml0ZW0tdmFsdWVcIiBbdGV4dENvbnRlbnRdPVwiYXJ0aWNsZVRvVHJhbnNmZXIud2FyZWhvdXNlRGVzY3JpcHRpb25cIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNmZXItaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cIml0ZW0tbGFiZWxcIiBbdGV4dENvbnRlbnRdPVwiJ0xPQ0FUSU9OJyB8IGxvY2FsaXplXCI+PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIml0ZW0tdmFsdWVcIiBbdGV4dENvbnRlbnRdPVwiYXJ0aWNsZVRvVHJhbnNmZXIubG9jYXRpb25Ob1wiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2Zlci1pdGVtXCIgKm5nSWY9XCJhcnRpY2xlVG9UcmFuc2Zlcj8uYmF0Y2hOb1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cIml0ZW0tbGFiZWxcIiBbdGV4dENvbnRlbnRdPVwiJ0JBVENIX05PJyB8IGxvY2FsaXplXCI+PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIml0ZW0tdmFsdWVcIiBbdGV4dENvbnRlbnRdPVwiYXJ0aWNsZVRvVHJhbnNmZXIuYmF0Y2hOb1wiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2Zlci1pdGVtXCIgKm5nSWY9XCJhcnRpY2xlVG9UcmFuc2Zlcj8uc2VyaWFsTm9cIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJpdGVtLWxhYmVsXCIgW3RleHRDb250ZW50XT1cIidTRVJJRV9OTycgfCBsb2NhbGl6ZVwiPjwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpdGVtLXZhbHVlXCIgW3RleHRDb250ZW50XT1cImFydGljbGVUb1RyYW5zZmVyLnNlcmlhbE5vXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zZmVyLXF1YW50aXR5XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1pbnB1dC1udW1iZXItcGlja2VyXHJcbiAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwiYXJ0aWNsZVRvVHJhbnNmZXIuYW1vdW50VHJhbnNmZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgIFttaW5dPVwiMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidRVUFOVElUWScgfCBsb2NhbGl6ZVwiPlxyXG4gICAgICAgICAgICAgICAgICA8L2NvLWlucHV0LW51bWJlci1waWNrZXI+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwidHJhbnNmZXJGdWxsXCIgW3RleHRDb250ZW50XT1cInRoaXMuYXJ0aWNsZVRvVHJhbnNmZXIuYW1vdW50SW5TdG9ja0ZyZWUgKyAoJyBBVkFJTEFCTEUnIHwgbG9jYWxpemUpXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zZmVyLWFycm93LXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaGFsZi1jaXJjbGVcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaWNvbi13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1pY29uIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQXJyb3dEb3duUmVndWxhcilcIj48L2NvLWljb24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcblxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay10cmFuc2Zlci1ib3R0b20tY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNmZXItYm90dG9tLXJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICA8Y28tbGlzdC1vZi12YWx1ZXMgW2NvbGxlY3Rpb25dPVwid2FyZWhvdXNlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzcGxheUZpZWxkXT1cIid3YXJlaG91c2VEZXNjcmlwdGlvbidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cImhhbmRsZVNlbGVjdGVkV2FyZWhvdXNlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidXQVJFSE9VU0UnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIDwvY28tbGlzdC1vZi12YWx1ZXM+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1saXN0LW9mLXZhbHVlcyBbY29sbGVjdGlvbl09XCJzdG9ja0xvY2F0aW9uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzcGxheUZpZWxkXT1cIidsb2NhdGlvbk5vJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwiaGFuZGxlU2VsZWN0ZWRMb2NhdGlvbigkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInTE9DQVRJT04nIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIDwvY28tbGlzdC1vZi12YWx1ZXM+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2Zlci1ib3R0b20tcm93XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1saXN0LW9mLXZhbHVlcyBbY29sbGVjdGlvbl09XCJzdG9ja1N0YXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNwbGF5RmllbGRdPVwiJ3N0YXRlRGVzY3JpcHRpb24nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInU1RPQ0tfU1RBVEUnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cImhhbmRsZVNlbGVjdGVkU3RvY2tTdGF0ZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICA8L2NvLWxpc3Qtb2YtdmFsdWVzPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2Zlci1zdGlja2VyLWJ1dHRvbnNcIj5cclxuICAgICAgICAgICAgICAgIDxjby1idXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidTVElDS0VSJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZVN0aWNrZXJDbGljaygpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5CYXJjb2RlUmVhZFJlZ3VsYXIpXCI+XHJcbiAgICAgICAgICAgICAgICA8L2NvLWJ1dHRvbj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZm9vdGVyVGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJidXR0b24td3JhcHBlciBvay1jYW5jZWwtYnV0dG9uc1wiPlxyXG4gICAgICAgICAgICAgIDxjby1idXR0b24gY2xhc3M9XCJzYXZlLWJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlT2tDbGljayhhcnRpY2xlVG9UcmFuc2ZlcilcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5DaGVja0R1b3RvbmUpXCI+XHJcbiAgICAgICAgICAgICAgPC9jby1idXR0b24+XHJcbiAgICAgICAgICAgICAgPGNvLWJ1dHRvbiBjbGFzcz1cImNhbmNlbC1idXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2xvc2VDbGljaygpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQ3Jvc3NTa2lubnkpXCI+XHJcbiAgICAgICAgICAgICAgPC9jby1idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8L2NvLWRpYWxvZz5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxjby1zZW5kLW1ldGhvZC1kaWFsb2cgKm5nSWY9XCJzaG93U2VuZE1ldGhvZERpYWxvZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsb3NlQ2xpY2spPVwic2hvd1NlbmRNZXRob2REaWFsb2cgPSBmYWxzZVwiPlxyXG5cclxuICAgICAgPC9jby1zZW5kLW1ldGhvZC1kaWFsb2c+XHJcbiAgYCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdG9ja1RyYW5zZmVyQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHN0b2NrU3RpY2tlcjogUHJpbnRTdG9ja1N0aWNrZXJzO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhcnRpY2xlOiBBcnRpY2xlU3RvY2tCbztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgYXJ0aWNsZVRvVHJhbnNmZXI6IEFydGljbGVEZXRhaWxzQm87XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbFdhcmVob3VzZXM6IGFueVtdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzaG93U3RvY2tUcmFuc2ZlcjogYm9vbGVhbjtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGE6IEFydGljbGVEZXRhaWxzQm8gPSBuZXcgQXJ0aWNsZURldGFpbHNCbygpO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhcnRpY2xlRmxhdDogQXJ0aWNsZUZsYXQ7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFydGljbGVEZXRhaWxzSW5mb3JtYXRpb246IEFydGljbGVTdG9ja01hbmFnZW1lbnQgPSBuZXcgQXJ0aWNsZVN0b2NrTWFuYWdlbWVudCgpO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZWxlY3RlZFdhcmVob3VzZTogU3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlcztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2VsZWN0ZWRMb2NhdGlvbk5vOiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFydGljbGVTdG9ja0luZm86IEFydGljbGVEZXRhaWxzQm9bXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzdG9ja0xvY2F0aW9uczogU3RvY2tMb2NhdGlvbltdID0gW107XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBoYW5kbGVDbGljazogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBoYW5kbGVTdGlja2VyQ2xpY2tlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyB1cGRhdGVHcmlkRGF0YTogRXZlbnRFbWl0dGVyPEFydGljbGVEZXRhaWxzQm9bXT4gPSBuZXcgRXZlbnRFbWl0dGVyPEFydGljbGVEZXRhaWxzQm9bXT4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHNob3dTdG9ja1RyYW5zZmVyQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBwdWJsaWMgc2hvd1NlbmRNZXRob2REaWFsb2c6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgdHJhbnNmZXJGdWxsOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHdhcmVob3VzZXM6IFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXNbXSA9IFtdO1xyXG4gIHB1YmxpYyBzdG9ja1N0YXRlOiBTdG9ja1N0YXR1c1tdID0gW107XHJcblxyXG4gIHB1YmxpYyBsb2NhdGlvbnM6IFN0b2NrTG9jYXRpb25bXSA9IFtdO1xyXG4gIHB1YmxpYyBzdG9ja1N0YXR1czogU3RvY2tTdGF0dXNbXSA9IFtdO1xyXG5cclxuXHJcblxyXG4gIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX3N0b2NrU2VydmljZTogU3RvY2tTZXJ2aWNlLFxyXG4gICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgKSB7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLmdldFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXMoKTtcclxuICAgIHRoaXMuZ2V0U3RvY2tTdGF0ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZU9rQ2xpY2soZGF0YTogQXJ0aWNsZURldGFpbHNCbyk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuYXJ0aWNsZVRvVHJhbnNmZXIuYW1vdW50VHJhbnNmZXIgPiB0aGlzLmFydGljbGVUb1RyYW5zZmVyLmFtb3VudEluU3RvY2tGcmVlKSB7XHJcbiAgICAgIHRoaXMudHJhbnNmZXJGdWxsID0gdHJ1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGRhdGEuc2VsZWN0ZWQgPSB0cnVlO1xyXG4gICAgICBkYXRhLmVudHJ5RGF0ZSA9IG5ldyBEYXRlO1xyXG4gICAgICB0aGlzLl9zdG9ja1NlcnZpY2UudXBkYXRlQXJ0aWNsZURldGFpbHMoZGF0YSkudGhlbigocmVzdWx0OiBib29sZWFuKSA9PiB7XHJcbiAgICAgICAgdGhpcy5oYW5kbGVDbGljay5lbWl0KCk7XHJcbiAgICAgICAgdGhpcy5zaG93U3RvY2tUcmFuc2ZlckNoYW5nZS5lbWl0KGZhbHNlKTtcclxuICAgICAgICB0aGlzLl9zdG9ja1NlcnZpY2UuZ2V0QXJ0aWNsZURldGFpbHModGhpcy5hcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uKS50aGVuKChkZXRhaWxzKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmFydGljbGVTdG9ja0luZm8gPSBkZXRhaWxzO1xyXG4gICAgICAgICAgdGhpcy51cGRhdGVHcmlkRGF0YS5lbWl0KGRldGFpbHMpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9KS5jYXRjaCgocmVzdWx0OiBzdHJpbmcpID0+IHtcclxuICAgICAgICAvLyBMb2cgZmFpbHVyZSBtZXNzYWdlXHJcblxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbiAgcHVibGljIG9uQ2xvc2VDbGljaygpIHtcclxuICAgIHRoaXMuc2hvd1N0b2NrVHJhbnNmZXJDaGFuZ2UuZW1pdChmYWxzZSk7XHJcbiAgfVxyXG4gIHB1YmxpYyBoYW5kbGVTZWxlY3RlZFdhcmVob3VzZShldmVudDogU3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlcyk6IHZvaWQge1xyXG4gICAgdGhpcy5hcnRpY2xlVG9UcmFuc2Zlci50YXJnZXRXYXJlaG91c2UgPSBldmVudC53YXJlaG91c2VObztcclxuICAgIHRoaXMuc2VsZWN0ZWRXYXJlaG91c2UgPSBldmVudDtcclxuICAgIHRoaXMuZ2V0U3RvY2tNYW5hZ2VtZW50TG9jYXRpb25zKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2VsZWN0ZWRMb2NhdGlvbihldmVudDogU3RvY2tMb2NhdGlvbik6IHZvaWQge1xyXG4gICAgdGhpcy5hcnRpY2xlVG9UcmFuc2Zlci50YXJnZXRMb2NhdGlvbiA9IGV2ZW50LmxvY2F0aW9uTm87XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2VsZWN0ZWRTdG9ja1N0YXRlKGV2ZW50OiBTdG9ja1N0YXR1cyk6IHZvaWQge1xyXG4gICAgdGhpcy5hcnRpY2xlVG9UcmFuc2Zlci5zdG9ja1N0YXRlSWQgPSBldmVudC5zdG9ja1N0YXRlSWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU3RpY2tlckNsaWNrKCk6IHZvaWQge1xyXG4gICAgdGhpcy5oYW5kbGVTdGlja2VyQ2xpY2tlZC5lbWl0KCk7XHJcbiAgICB0aGlzLnNob3dTZW5kTWV0aG9kRGlhbG9nID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXMoKS50aGVuKCh3YXJlaG91c2VzKSA9PiB7XHJcbiAgICAgIHRoaXMud2FyZWhvdXNlcyA9IHdhcmVob3VzZXM7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFN0b2NrTWFuYWdlbWVudExvY2F0aW9ucygpOiB2b2lkIHtcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRTdG9ja01hbmFnZW1lbnRMb2NhdGlvbnModGhpcy5zZWxlY3RlZFdhcmVob3VzZS53YXJlaG91c2VObykudGhlbigobG9jYXRpb25zKSA9PiB7XHJcbiAgICAgIHRoaXMuc3RvY2tMb2NhdGlvbnMgPSBsb2NhdGlvbnM7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRTdG9ja1N0YXRlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldFN0b2NrU3RhdGUoKS50aGVuKChzdGF0ZTogU3RvY2tTdGF0dXNbXSkgPT4ge1xyXG4gICAgICB0aGlzLnN0b2NrU3RhdGUgPSBzdGF0ZTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
219
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2stdHJhbnNmZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc3RvY2svc3RvY2stdHJhbnNmZXIvc3RvY2stdHJhbnNmZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFHNUQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scURBQXFELENBQUM7QUFJckYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBRTdDLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDJEQUEyRCxDQUFDO0FBK0dqRyxNQUFNLE9BQU8sc0JBQXNCO0lBOERqQyxZQUNVLGFBQTJCLEVBQzVCLGdCQUFrQyxFQUNqQyxlQUFrQztRQUZsQyxrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQUM1QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2pDLG9CQUFlLEdBQWYsZUFBZSxDQUFtQjtRQS9DckMsK0JBQTBCLEdBQXFCLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztRQU10RSw4QkFBeUIsR0FBMkIsSUFBSSxzQkFBc0IsRUFBRSxDQUFDO1FBU2pGLHFCQUFnQixHQUF1QixFQUFFLENBQUM7UUFHMUMsbUJBQWMsR0FBb0IsRUFBRSxDQUFDO1FBR3JDLGdCQUFXLEdBQXlCLElBQUksWUFBWSxFQUFFLENBQUM7UUFHdkQseUJBQW9CLEdBQXNCLElBQUksWUFBWSxFQUFF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Q0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDcEcsSUFBSSxDQUFDLGNBQWMsR0FBRyxTQUFTLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sYUFBYTtRQUNsQixJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQW9CLEVBQUUsRUFBRTtZQUMvRCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OztZQWhQRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtnQkFDN0IsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXdHVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBeEhPLFlBQVk7WUFPWixnQkFBZ0I7WUFmdEIsaUJBQWlCOzs7MkJBbUloQixLQUFLO3NCQUdMLEtBQUs7Z0NBR0wsS0FBSzs0QkFHTCxLQUFLO2dDQUdMLEtBQUs7eUNBR0wsS0FBSzswQkFHTCxLQUFLO3dDQUdMLEtBQUs7Z0NBR0wsS0FBSztpQ0FHTCxLQUFLOytCQUdMLEtBQUs7NkJBR0wsS0FBSzswQkFHTCxNQUFNO21DQUdOLE1BQU07NkJBR04sTUFBTTtzQ0FHTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtQcmludFN0b2NrU3RpY2tlcnN9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9wcmludC1zdG9jay1zdGlja2Vyc1wiO1xyXG5pbXBvcnQge1N0b2NrU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2Uvc3RvY2suc2VydmljZVwiO1xyXG5pbXBvcnQge0NvRHJvcERvd25MaXN0RmllbGRzfSBmcm9tIFwiLi9jby1kcm9wLWRvd24tbGlzdC1maWVsZHMuaW50ZXJmYWNlXCI7XHJcbmltcG9ydCB7QXJ0aWNsZVN0b2NrIGFzIEFydGljbGVTdG9ja0JvfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1zdG9jay5ib1wiO1xyXG5pbXBvcnQge0FydGljbGVEZXRhaWxzQm99IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWRldGFpbHMuYm9cIjtcclxuaW1wb3J0IHtTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2stbWFuYWdlbWVudC13YXJlaG91c2VzLmJvXCI7XHJcbmltcG9ydCB7U3RvY2tTdGF0dXN9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9zdG9jay1zdGF0dXMuYm9cIjtcclxuaW1wb3J0IHtTdG9ja0xvY2F0aW9ufSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2stbG9jYXRpb24uYm9cIjtcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtJY29ufSBmcm9tIFwiLi4vLi4vLi4vZW51bS9pY29uLmVudW1cIjtcclxuaW1wb3J0IHtBcnRpY2xlRmxhdH0gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZmxhdC5ib1wiO1xyXG5pbXBvcnQge0FydGljbGVTdG9ja01hbmFnZW1lbnR9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLXN0b2NrLW1hbmFnZW1lbnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNvLXN0b2NrLXRyYW5zZmVyXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLXRyYW5zZmVyXCI+XHJcbiAgICAgICAgPGNvLWRpYWxvZ1xyXG4gICAgICAgICAgICAgICAgICAgKGNsb3NlQ2xpY2spPVwib25DbG9zZUNsaWNrKClcIlxyXG4gICAgICAgICAgICAgICAgICAgW3Nob3dDbG9zZUljb25dPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICBbbW9kYWxdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICBbaGVhZGVyVGVtcGxhdGVdPVwiaGVhZGVyVGVtcGxhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgW2Zvb3RlclRlbXBsYXRlXT1cImZvb3RlclRlbXBsYXRlXCI+XHJcbiAgICAgICAgICA8bmctdGVtcGxhdGUgI2hlYWRlclRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY28tZGlhbG9nLWhlYWRlci10aXRsZS13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPGNvLWljb24gW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5DdWJlcylcIj48L2NvLWljb24+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1oZWFkZXItdGl0bGVcIiBbdGV4dENvbnRlbnRdPVwiJ1RSQU5TRkVSX1NUT0NLJyB8IHNoYXJlZExvY2FsaXplXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkaWFsb2ctd3JhcHBlclwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3RvY2stdHJhbnNmZXItY29sdW1uc1wiPlxyXG4gICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJhcnRpY2xlVG9UcmFuc2ZlclwiIGNsYXNzPVwic3RvY2stdHJhbnNmZXItdG9wLWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zZmVyLWl0ZW1zXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2Zlci1pdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiaXRlbS1sYWJlbFwiIFt0ZXh0Q29udGVudF09XCInV0FSRUhPVVNFJyB8IHNoYXJlZExvY2FsaXplXCI+PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIml0ZW0tdmFsdWVcIiBbdGV4dENvbnRlbnRdPVwiYXJ0aWNsZVRvVHJhbnNmZXIud2FyZWhvdXNlRGVzY3JpcHRpb25cIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNmZXItaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cIml0ZW0tbGFiZWxcIiBbdGV4dENvbnRlbnRdPVwiJ0xPQ0FUSU9OJyB8IHNoYXJlZExvY2FsaXplXCI+PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIml0ZW0tdmFsdWVcIiBbdGV4dENvbnRlbnRdPVwiYXJ0aWNsZVRvVHJhbnNmZXIubG9jYXRpb25Ob1wiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2Zlci1pdGVtXCIgKm5nSWY9XCJhcnRpY2xlVG9UcmFuc2Zlcj8uYmF0Y2hOb1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cIml0ZW0tbGFiZWxcIiBbdGV4dENvbnRlbnRdPVwiJ0JBVENIX05PJyB8IHNoYXJlZExvY2FsaXplXCI+PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIml0ZW0tdmFsdWVcIiBbdGV4dENvbnRlbnRdPVwiYXJ0aWNsZVRvVHJhbnNmZXIuYmF0Y2hOb1wiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2Zlci1pdGVtXCIgKm5nSWY9XCJhcnRpY2xlVG9UcmFuc2Zlcj8uc2VyaWFsTm9cIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJpdGVtLWxhYmVsXCIgW3RleHRDb250ZW50XT1cIidTRVJJRV9OTycgfCBzaGFyZWRMb2NhbGl6ZVwiPjwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpdGVtLXZhbHVlXCIgW3RleHRDb250ZW50XT1cImFydGljbGVUb1RyYW5zZmVyLnNlcmlhbE5vXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zZmVyLXF1YW50aXR5XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1pbnB1dC1udW1iZXItcGlja2VyXHJcbiAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwiYXJ0aWNsZVRvVHJhbnNmZXIuYW1vdW50VHJhbnNmZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgIFttaW5dPVwiMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidRVUFOVElUWScgfCBzaGFyZWRMb2NhbGl6ZVwiPlxyXG4gICAgICAgICAgICAgICAgICA8L2NvLWlucHV0LW51bWJlci1waWNrZXI+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwidHJhbnNmZXJGdWxsXCIgW3RleHRDb250ZW50XT1cInRoaXMuYXJ0aWNsZVRvVHJhbnNmZXIuYW1vdW50SW5TdG9ja0ZyZWUgKyAoJyBBVkFJTEFCTEUnIHwgc2hhcmVkTG9jYWxpemUpXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zZmVyLWFycm93LXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaGFsZi1jaXJjbGVcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaWNvbi13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1pY29uIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQXJyb3dEb3duUmVndWxhcilcIj48L2NvLWljb24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcblxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay10cmFuc2Zlci1ib3R0b20tY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNmZXItYm90dG9tLXJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICA8Y28tbGlzdC1vZi12YWx1ZXMgW2NvbGxlY3Rpb25dPVwid2FyZWhvdXNlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzcGxheUZpZWxkXT1cIid3YXJlaG91c2VEZXNjcmlwdGlvbidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cImhhbmRsZVNlbGVjdGVkV2FyZWhvdXNlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidXQVJFSE9VU0UnIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIDwvY28tbGlzdC1vZi12YWx1ZXM+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1saXN0LW9mLXZhbHVlcyBbY29sbGVjdGlvbl09XCJzdG9ja0xvY2F0aW9uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzcGxheUZpZWxkXT1cIidsb2NhdGlvbk5vJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwiaGFuZGxlU2VsZWN0ZWRMb2NhdGlvbigkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInTE9DQVRJT04nIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIDwvY28tbGlzdC1vZi12YWx1ZXM+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2Zlci1ib3R0b20tcm93XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1saXN0LW9mLXZhbHVlcyBbY29sbGVjdGlvbl09XCJzdG9ja1N0YXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNwbGF5RmllbGRdPVwiJ3N0YXRlRGVzY3JpcHRpb24nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInU1RPQ0tfU1RBVEUnIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cImhhbmRsZVNlbGVjdGVkU3RvY2tTdGF0ZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICA8L2NvLWxpc3Qtb2YtdmFsdWVzPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2Zlci1zdGlja2VyLWJ1dHRvbnNcIj5cclxuICAgICAgICAgICAgICAgIDxjby1idXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidTVElDS0VSJyB8IHNoYXJlZExvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZVN0aWNrZXJDbGljaygpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5CYXJjb2RlUmVhZFJlZ3VsYXIpXCI+XHJcbiAgICAgICAgICAgICAgICA8L2NvLWJ1dHRvbj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZm9vdGVyVGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJidXR0b24td3JhcHBlciBvay1jYW5jZWwtYnV0dG9uc1wiPlxyXG4gICAgICAgICAgICAgIDxjby1idXR0b24gY2xhc3M9XCJzYXZlLWJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlT2tDbGljayhhcnRpY2xlVG9UcmFuc2ZlcilcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5DaGVja0R1b3RvbmUpXCI+XHJcbiAgICAgICAgICAgICAgPC9jby1idXR0b24+XHJcbiAgICAgICAgICAgICAgPGNvLWJ1dHRvbiBjbGFzcz1cImNhbmNlbC1idXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2xvc2VDbGljaygpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQ3Jvc3NTa2lubnkpXCI+XHJcbiAgICAgICAgICAgICAgPC9jby1idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8L2NvLWRpYWxvZz5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxjby1zZW5kLW1ldGhvZC1kaWFsb2cgKm5nSWY9XCJzaG93U2VuZE1ldGhvZERpYWxvZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsb3NlQ2xpY2spPVwic2hvd1NlbmRNZXRob2REaWFsb2cgPSBmYWxzZVwiPlxyXG5cclxuICAgICAgPC9jby1zZW5kLW1ldGhvZC1kaWFsb2c+XHJcbiAgYCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdG9ja1RyYW5zZmVyQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHN0b2NrU3RpY2tlcjogUHJpbnRTdG9ja1N0aWNrZXJzO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhcnRpY2xlOiBBcnRpY2xlU3RvY2tCbztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgYXJ0aWNsZVRvVHJhbnNmZXI6IEFydGljbGVEZXRhaWxzQm87XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbFdhcmVob3VzZXM6IGFueVtdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzaG93U3RvY2tUcmFuc2ZlcjogYm9vbGVhbjtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGE6IEFydGljbGVEZXRhaWxzQm8gPSBuZXcgQXJ0aWNsZURldGFpbHNCbygpO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhcnRpY2xlRmxhdDogQXJ0aWNsZUZsYXQ7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFydGljbGVEZXRhaWxzSW5mb3JtYXRpb246IEFydGljbGVTdG9ja01hbmFnZW1lbnQgPSBuZXcgQXJ0aWNsZVN0b2NrTWFuYWdlbWVudCgpO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZWxlY3RlZFdhcmVob3VzZTogU3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlcztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2VsZWN0ZWRMb2NhdGlvbk5vOiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFydGljbGVTdG9ja0luZm86IEFydGljbGVEZXRhaWxzQm9bXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzdG9ja0xvY2F0aW9uczogU3RvY2tMb2NhdGlvbltdID0gW107XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBoYW5kbGVDbGljazogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBoYW5kbGVTdGlja2VyQ2xpY2tlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyB1cGRhdGVHcmlkRGF0YTogRXZlbnRFbWl0dGVyPEFydGljbGVEZXRhaWxzQm9bXT4gPSBuZXcgRXZlbnRFbWl0dGVyPEFydGljbGVEZXRhaWxzQm9bXT4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHNob3dTdG9ja1RyYW5zZmVyQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBwdWJsaWMgc2hvd1NlbmRNZXRob2REaWFsb2c6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgdHJhbnNmZXJGdWxsOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHdhcmVob3VzZXM6IFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXNbXSA9IFtdO1xyXG4gIHB1YmxpYyBzdG9ja1N0YXRlOiBTdG9ja1N0YXR1c1tdID0gW107XHJcblxyXG4gIHB1YmxpYyBsb2NhdGlvbnM6IFN0b2NrTG9jYXRpb25bXSA9IFtdO1xyXG4gIHB1YmxpYyBzdG9ja1N0YXR1czogU3RvY2tTdGF0dXNbXSA9IFtdO1xyXG5cclxuXHJcblxyXG4gIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX3N0b2NrU2VydmljZTogU3RvY2tTZXJ2aWNlLFxyXG4gICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgKSB7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLmdldFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXMoKTtcclxuICAgIHRoaXMuZ2V0U3RvY2tTdGF0ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZU9rQ2xpY2soZGF0YTogQXJ0aWNsZURldGFpbHNCbyk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuYXJ0aWNsZVRvVHJhbnNmZXIuYW1vdW50VHJhbnNmZXIgPiB0aGlzLmFydGljbGVUb1RyYW5zZmVyLmFtb3VudEluU3RvY2tGcmVlKSB7XHJcbiAgICAgIHRoaXMudHJhbnNmZXJGdWxsID0gdHJ1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGRhdGEuc2VsZWN0ZWQgPSB0cnVlO1xyXG4gICAgICBkYXRhLmVudHJ5RGF0ZSA9IG5ldyBEYXRlO1xyXG4gICAgICB0aGlzLl9zdG9ja1NlcnZpY2UudXBkYXRlQXJ0aWNsZURldGFpbHMoZGF0YSkudGhlbigocmVzdWx0OiBib29sZWFuKSA9PiB7XHJcbiAgICAgICAgdGhpcy5oYW5kbGVDbGljay5lbWl0KCk7XHJcbiAgICAgICAgdGhpcy5zaG93U3RvY2tUcmFuc2ZlckNoYW5nZS5lbWl0KGZhbHNlKTtcclxuICAgICAgICB0aGlzLl9zdG9ja1NlcnZpY2UuZ2V0QXJ0aWNsZURldGFpbHModGhpcy5hcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uKS50aGVuKChkZXRhaWxzKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmFydGljbGVTdG9ja0luZm8gPSBkZXRhaWxzO1xyXG4gICAgICAgICAgdGhpcy51cGRhdGVHcmlkRGF0YS5lbWl0KGRldGFpbHMpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9KS5jYXRjaCgocmVzdWx0OiBzdHJpbmcpID0+IHtcclxuICAgICAgICAvLyBMb2cgZmFpbHVyZSBtZXNzYWdlXHJcblxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbiAgcHVibGljIG9uQ2xvc2VDbGljaygpIHtcclxuICAgIHRoaXMuc2hvd1N0b2NrVHJhbnNmZXJDaGFuZ2UuZW1pdChmYWxzZSk7XHJcbiAgfVxyXG4gIHB1YmxpYyBoYW5kbGVTZWxlY3RlZFdhcmVob3VzZShldmVudDogU3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlcyk6IHZvaWQge1xyXG4gICAgdGhpcy5hcnRpY2xlVG9UcmFuc2Zlci50YXJnZXRXYXJlaG91c2UgPSBldmVudC53YXJlaG91c2VObztcclxuICAgIHRoaXMuc2VsZWN0ZWRXYXJlaG91c2UgPSBldmVudDtcclxuICAgIHRoaXMuZ2V0U3RvY2tNYW5hZ2VtZW50TG9jYXRpb25zKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2VsZWN0ZWRMb2NhdGlvbihldmVudDogU3RvY2tMb2NhdGlvbik6IHZvaWQge1xyXG4gICAgdGhpcy5hcnRpY2xlVG9UcmFuc2Zlci50YXJnZXRMb2NhdGlvbiA9IGV2ZW50LmxvY2F0aW9uTm87XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2VsZWN0ZWRTdG9ja1N0YXRlKGV2ZW50OiBTdG9ja1N0YXR1cyk6IHZvaWQge1xyXG4gICAgdGhpcy5hcnRpY2xlVG9UcmFuc2Zlci5zdG9ja1N0YXRlSWQgPSBldmVudC5zdG9ja1N0YXRlSWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU3RpY2tlckNsaWNrKCk6IHZvaWQge1xyXG4gICAgdGhpcy5oYW5kbGVTdGlja2VyQ2xpY2tlZC5lbWl0KCk7XHJcbiAgICB0aGlzLnNob3dTZW5kTWV0aG9kRGlhbG9nID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXMoKS50aGVuKCh3YXJlaG91c2VzKSA9PiB7XHJcbiAgICAgIHRoaXMud2FyZWhvdXNlcyA9IHdhcmVob3VzZXM7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFN0b2NrTWFuYWdlbWVudExvY2F0aW9ucygpOiB2b2lkIHtcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRTdG9ja01hbmFnZW1lbnRMb2NhdGlvbnModGhpcy5zZWxlY3RlZFdhcmVob3VzZS53YXJlaG91c2VObykudGhlbigobG9jYXRpb25zKSA9PiB7XHJcbiAgICAgIHRoaXMuc3RvY2tMb2NhdGlvbnMgPSBsb2NhdGlvbnM7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRTdG9ja1N0YXRlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldFN0b2NrU3RhdGUoKS50aGVuKChzdGF0ZTogU3RvY2tTdGF0dXNbXSkgPT4ge1xyXG4gICAgICB0aGlzLnN0b2NrU3RhdGUgPSBzdGF0ZTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
|