@colijnit/sharedcomponents 256.1.9 → 256.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (23) hide show
  1. package/bundles/colijnit-sharedcomponents.umd.js +49 -13
  2. package/bundles/colijnit-sharedcomponents.umd.js.map +1 -1
  3. package/colijnit-sharedcomponents.metadata.json +1 -1
  4. package/esm2015/lib/components/stock/components/stock-location/components/stock-location-popup/stock-location-popup.component.js +32 -12
  5. package/esm2015/lib/components/stock/components/stock-location/stock-location.component.js +21 -1
  6. package/esm2015/lib/enum/icon.enum.js +3 -1
  7. package/esm2015/lib/model/icon-svg.js +3 -1
  8. package/esm2015/lib/res/dictionary/dictionaries.js +3 -3
  9. package/fesm2015/colijnit-sharedcomponents.js +57 -13
  10. package/fesm2015/colijnit-sharedcomponents.js.map +1 -1
  11. package/lib/components/login/components/input-code/style/_layout.scss +24 -0
  12. package/lib/components/login/components/input-code/style/_material-definition.scss +5 -0
  13. package/lib/components/login/components/input-code/style/_theme.scss +8 -0
  14. package/lib/components/login/components/input-code/style/material.scss +4 -0
  15. package/lib/components/login/style/_layout.scss +37 -1
  16. package/lib/components/login/style/_material-definition.scss +3 -0
  17. package/lib/components/login/style/material.scss +1 -0
  18. package/lib/components/stock/components/stock-location/components/stock-location-popup/stock-location-popup.component.d.ts +2 -0
  19. package/lib/components/stock/components/stock-location/stock-location.component.d.ts +3 -0
  20. package/lib/components/stock/style/_layout.scss +17 -1
  21. package/lib/enum/icon.enum.d.ts +2 -0
  22. package/lib/res/dictionary/dictionaries.d.ts +11 -0
  23. package/package.json +2 -2
@@ -14,6 +14,7 @@ export class StockLocationPopupComponent {
14
14
  this.editingRow = false;
15
15
  this.showConfirmationDialog = false;
16
16
  this.newStockLine = false;
17
+ this.deleteStockLine = false;
17
18
  this.selectedArticleDetailsData = new ArticleDetailsBo();
18
19
  this.articleDetailsInformation = new ArticleStockManagement();
19
20
  this.selectedWarehouse = new StockManagementWarehouses();
@@ -23,6 +24,7 @@ export class StockLocationPopupComponent {
23
24
  this.updateGridData = new EventEmitter();
24
25
  this.stockLocations = [];
25
26
  this.stockStatus = [];
27
+ this.stockBelow = false;
26
28
  }
27
29
  set selectedLocationNo(locationNo) {
28
30
  this._selectedLocationNo = locationNo;
@@ -48,12 +50,19 @@ export class StockLocationPopupComponent {
48
50
  return (!((_a = this.selectedArticleDetailsData) === null || _a === void 0 ? void 0 : _a.stockStateId) && ((_c = (_b = this.selectedArticleDetailsData) === null || _b === void 0 ? void 0 : _b.stockStateRemark) === null || _c === void 0 ? void 0 : _c.length) <= 1);
49
51
  }
50
52
  handleOkClick() {
51
- this.handleStockChange();
52
- this.saveEvent.emit(true);
53
- this._changeDetector.detectChanges();
54
- this.togglePopupEvent.emit();
53
+ if (this.selectedArticleDetailsData.amountInStockFree < this.selectedArticleDetailsData.amountInStockOriginal) {
54
+ this.stockBelow = true;
55
+ }
56
+ else {
57
+ this.stockBelow = false;
58
+ this.handleStockChange();
59
+ this.saveEvent.emit(true);
60
+ this._changeDetector.detectChanges();
61
+ this.togglePopupEvent.emit();
62
+ }
55
63
  }
56
64
  togglePopup() {
65
+ this.stockBelow = false;
57
66
  this.togglePopupEvent.emit();
58
67
  }
59
68
  getStockLocations() {
@@ -84,13 +93,19 @@ export class StockLocationPopupComponent {
84
93
  this.selectedArticleDetailsData.goodId = parseInt(this.articleDetailsInformation.goodId);
85
94
  }
86
95
  this.selectedArticleDetailsData.entryDate = new Date();
87
- this.selectedArticleDetailsData.warehouseNo = this.selectedWarehouse.warehouseNo;
88
- if (this.selectedLocationNo && this.articleFlat.locationRegistered) {
89
- this.selectedArticleDetailsData.locationNo = (_a = this.selectedLocationNo) === null || _a === void 0 ? void 0 : _a.toString();
96
+ if (this.deleteStockLine) {
97
+ this.selectedWarehouse.warehouseNo = this.selectedArticleDetailsData.warehouseNo;
98
+ this.selectedArticleDetailsData.amountInStock = 0;
90
99
  }
91
- if (!this.selectedArticleDetailsData.amountInStock) {
92
- this.selectedArticleDetailsData.amountInStock = 1;
100
+ else {
101
+ this.selectedArticleDetailsData.warehouseNo = this.selectedWarehouse.warehouseNo;
102
+ if (this.selectedLocationNo && this.articleFlat.locationRegistered) {
103
+ this.selectedArticleDetailsData.locationNo = (_a = this.selectedLocationNo) === null || _a === void 0 ? void 0 : _a.toString();
104
+ }
93
105
  }
106
+ //if (!this.selectedArticleDetailsData.amountInStock) {
107
+ // this.selectedArticleDetailsData.amountInStock = 1;
108
+ // }
94
109
  this._stockService.updateArticleDetails(this.selectedArticleDetailsData).then(result => {
95
110
  var _a;
96
111
  this.articleDetailsInformation.goodId = (_a = this.selectedArticleDetailsData.goodId) === null || _a === void 0 ? void 0 : _a.toString();
@@ -122,7 +137,10 @@ StockLocationPopupComponent.decorators = [
122
137
  <div class="co-dialog-header-title" [textContent]="'CONFIRM_STOCK_CHANGE' | sharedLocalize"></div>
123
138
  </div>
124
139
  </ng-template>
125
- <div class="dialog-wrapper">
140
+ <div *ngIf="deleteStockLine" class="dialog-wrapper">
141
+ <span class="stock-header" [textContent]="'DELETE_STOCK_LINE?' | sharedLocalize"></span>
142
+ </div>
143
+ <div *ngIf="!deleteStockLine" class="dialog-wrapper">
126
144
  <div class="stock-dialog-header">
127
145
  <span class="stock-header" *ngIf="newStockLine" [textContent]="'NEW_STOCK_LINE' | sharedLocalize"></span>
128
146
  <span class="stock-header" *ngIf="!newStockLine" [textContent]="'CHANGE_STOCK_LINE' | sharedLocalize"></span>
@@ -172,13 +190,14 @@ StockLocationPopupComponent.decorators = [
172
190
  [(model)]="selectedArticleDetailsData.amountInStock"
173
191
  [label]="'STOCK' | sharedLocalize"
174
192
  (modelChange)="amountInStockChanged($event)"
175
- [min]="1"
193
+ [min]="0"
176
194
  ></co-input-number-picker>
177
195
  <span class="filler"></span>
178
196
  </div>
179
197
  </div>
180
198
  <ng-template #footerTemplate>
181
199
  <div class="button-wrapper ok-cancel-buttons">
200
+ <span *ngIf="stockBelow" class="minimum-stock" [textContent]="'STOCK_BELOW_ZERO_TEXT' | sharedLocalize"></span>
182
201
  <co-button class="save-button"
183
202
  (click)="handleOkClick()"
184
203
  [iconData]="iconCacheService.getIcon(icons.CheckDuotone)"
@@ -205,6 +224,7 @@ StockLocationPopupComponent.propDecorators = {
205
224
  editingRow: [{ type: Input }],
206
225
  showConfirmationDialog: [{ type: Input }],
207
226
  newStockLine: [{ type: Input }],
227
+ deleteStockLine: [{ type: Input }],
208
228
  selectedArticleDetailsData: [{ type: Input }],
209
229
  articleFlat: [{ type: Input }],
210
230
  articleDetailsInformation: [{ type: Input }],
@@ -217,4 +237,4 @@ StockLocationPopupComponent.propDecorators = {
217
237
  stockLocations: [{ type: Input }],
218
238
  stockStatus: [{ type: Input }]
219
239
  };
220
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2stbG9jYXRpb24tcG9wdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc3RvY2svY29tcG9uZW50cy9zdG9jay1sb2NhdGlvbi9jb21wb25lbnRzL3N0b2NrLWxvY2F0aW9uLXBvcHVwL3N0b2NrLWxvY2F0aW9uLXBvcHVwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNHLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBQzlFLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUN0RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDckUsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0saUVBQWlFLENBQUM7QUFDMUcsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDakcsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scURBQXFELENBQUM7QUE4RnJGLE1BQU0sT0FBTywyQkFBMkI7SUFrRHRDLFlBQ1MsZ0JBQWtDLEVBQ2pDLGFBQTJCLEVBQzNCLGVBQWtDO1FBRm5DLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDakMsa0JBQWEsR0FBYixhQUFhLENBQWM7UUFDM0Isb0JBQWUsR0FBZixlQUFlLENBQW1CO1FBcEQ1QixVQUFLLEdBQWdCLElBQUksQ0FBQztRQUtuQyxlQUFVLEdBQVksS0FBSyxDQUFDO1FBRTVCLDJCQUFzQixHQUFZLEtBQUssQ0FBQztRQUV4QyxpQkFBWSxHQUFZLEtBQUss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QUFLOzJCQUVMLEtBQUs7eUNBRUwsS0FBSzswQkFHTCxLQUFLO3dDQUdMLEtBQUs7Z0NBR0wsS0FBSztpQ0FHTCxLQUFLOytCQVNMLEtBQUs7K0JBR0wsTUFBTTt3QkFHTixNQUFNOzZCQUdOLE1BQU07NkJBRU4sS0FBSzswQkFHTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZVwiO1xyXG5pbXBvcnQge0ljb259IGZyb20gXCIuLi8uLi8uLi8uLi8uLi8uLi9lbnVtL2ljb24uZW51bVwiO1xyXG5pbXBvcnQge1N0b2NrU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uLy4uL3NlcnZpY2Uvc3RvY2suc2VydmljZVwiO1xyXG5pbXBvcnQge1N0b2NrTWFuYWdlbWVudFdhcmVob3VzZXN9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9zdG9jay1tYW5hZ2VtZW50LXdhcmVob3VzZXMuYm9cIjtcclxuaW1wb3J0IHtBcnRpY2xlU3RvY2tNYW5hZ2VtZW50fSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1zdG9jay1tYW5hZ2VtZW50XCI7XHJcbmltcG9ydCB7QXJ0aWNsZURldGFpbHNCb30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZGV0YWlscy5ib1wiO1xyXG5pbXBvcnQge1N0b2NrU3RhdHVzfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2stc3RhdHVzLmJvXCI7XHJcbmltcG9ydCB7QXJ0aWNsZUZsYXR9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWZsYXQuYm9cIjtcclxuaW1wb3J0IHtTdG9ja0xvY2F0aW9ufSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2stbG9jYXRpb24uYm9cIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNvLXN0b2NrLWxvY2F0aW9uLXBvcHVwXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgY2xhc3M9XCJzdG9jay1ncmlkXCI+XHJcbiAgICAgIDxjby1kaWFsb2cgKm5nSWY9XCJzaG93Q29uZmlybWF0aW9uRGlhbG9nXCJcclxuICAgICAgICAgICAgICAgICBbc2hvd0Nsb3NlSWNvbl09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICBbbW9kYWxdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgKGNsb3NlQ2xpY2spPVwidG9nZ2xlUG9wdXAoKVwiXHJcbiAgICAgICAgICAgICAgICAgW2hlYWRlclRlbXBsYXRlXT1cImhlYWRlclRlbXBsYXRlXCJcclxuICAgICAgICAgICAgICAgICBbZm9vdGVyVGVtcGxhdGVdPVwiZm9vdGVyVGVtcGxhdGVcIj5cclxuICAgICAgICA8bmctdGVtcGxhdGUgI2hlYWRlclRlbXBsYXRlPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1oZWFkZXItdGl0bGUtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICA8Y28taWNvbiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkN1YmVzKVwiPjwvY28taWNvbj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1oZWFkZXItdGl0bGVcIiBbdGV4dENvbnRlbnRdPVwiJ0NPTkZJUk1fU1RPQ0tfQ0hBTkdFJyB8IHNoYXJlZExvY2FsaXplXCI+PC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkaWFsb2ctd3JhcHBlclwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLWRpYWxvZy1oZWFkZXJcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdG9jay1oZWFkZXJcIiAqbmdJZj1cIm5ld1N0b2NrTGluZVwiIFt0ZXh0Q29udGVudF09XCInTkVXX1NUT0NLX0xJTkUnIHwgc2hhcmVkTG9jYWxpemVcIj48L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3RvY2staGVhZGVyXCIgKm5nSWY9XCIhbmV3U3RvY2tMaW5lXCIgW3RleHRDb250ZW50XT1cIidDSEFOR0VfU1RPQ0tfTElORScgfCBzaGFyZWRMb2NhbGl6ZVwiPjwvc3Bhbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLWRpYWxvZy1yb3dcIj5cclxuICAgICAgICAgICAgPGNvLWlucHV0LXRleHQgW21vZGVsXT1cInNlbGVjdGVkV2FyZWhvdXNlPy53YXJlaG91c2VEZXNjcmlwdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInV0FSRUhPVVNFJyB8IHNoYXJlZExvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInRydWVcIlxyXG4gICAgICAgICAgICA+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgICAgICA8Y28taW5wdXQtdGV4dCBbKG1vZGVsKV09XCJzZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5zZXJpYWxOb1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInU0VSSUFMX05PJyB8IHNoYXJlZExvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cImZhbHNlXCJcclxuICAgICAgICAgICAgPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLWRpYWxvZy1yb3dcIj5cclxuICAgICAgICAgICAgPGNvLWxpc3Qtb2YtdmFsdWVzICpuZ0lmPVwiYXJ0aWNsZUZsYXQubG9jYXRpb25SZWdpc3RlcmVkXCJcclxuICAgICAgICAgICAgICBbbW9kZWxdPVwibG9jYXRpb25Gb3JOdW1iZXIoc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEubG9jYXRpb25ObylcIlxyXG4gICAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cInN0b2NrTG9jYXRpb25zXCJcclxuICAgICAgICAgICAgICBbZGlzcGxheUZpZWxkXT1cIidsb2NhdGlvbk5vJ1wiXHJcbiAgICAgICAgICAgICAgW2xhYmVsXT1cIidMT0NBVElPTicgfCBzaGFyZWRMb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJsb2NhdGlvbkNoYW5nZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgID48L2NvLWxpc3Qtb2YtdmFsdWVzPlxyXG4gICAgICAgICAgICA8Y28taW5wdXQtdGV4dCBbKG1vZGVsKV09XCJzZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5iYXRjaE5vXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidCQVRDSCcgfCBzaGFyZWRMb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgID48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay1kaWFsb2ctcm93XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay1kaWFsb2ctcm93LXJvd1wiPlxyXG4gICAgICAgICAgICAgIDxjby1pbnB1dC10ZXh0IFttb2RlbF09XCJhcnRpY2xlU3RvY2tJbmZvWzBdPy5wdXJjaGFzZVByaWNlIHwgY3VycmVuY3k6J0VVUidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInUFVSQ0hBU0VfUFJJQ0UnIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgICAgICA8Y28taW5wdXQtdGV4dCBbKG1vZGVsKV09XCJhcnRpY2xlU3RvY2tJbmZvWzBdLmN1cnJlbmN5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1ZBTFVUQScgfCBzaGFyZWRMb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICA+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGNvLWlucHV0LWRhdGUgW21vZGVsXT1cInNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhPy5lbnRyeURhdGU/IHNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhPy5lbnRyeURhdGUgOiBuZXdEYXRlKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0RBVEUnIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICA+PC9jby1pbnB1dC1kYXRlPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic3RvY2stZGlhbG9nLXJvd1wiPlxyXG4gICAgICAgICAgICA8Y28taW5wdXQtbnVtYmVyLXBpY2tlclxyXG4gICAgICAgICAgICAgIFsobW9kZWwpXT1cInNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLmFtb3VudEluU3RvY2tcIlxyXG4gICAgICAgICAgICAgIFtsYWJlbF09XCInU1RPQ0snIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJhbW91bnRJblN0b2NrQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICBbbWluXT1cIjFcIlxyXG4gICAgICAgICAgICA+PC9jby1pbnB1dC1udW1iZXItcGlja2VyPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZpbGxlclwiPjwvc3Bhbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjZm9vdGVyVGVtcGxhdGU+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLXdyYXBwZXIgb2stY2FuY2VsLWJ1dHRvbnNcIj5cclxuICAgICAgICAgICAgPGNvLWJ1dHRvbiBjbGFzcz1cInNhdmUtYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlT2tDbGljaygpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkNoZWNrRHVvdG9uZSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCgpXCI+XHJcbiAgICAgICAgICAgIDwvY28tYnV0dG9uPlxyXG4gICAgICAgICAgICA8Y28tYnV0dG9uIGNsYXNzPVwiY2FuY2VsLWJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZVBvcHVwKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQ3Jvc3NTa2lubnkpXCI+XHJcbiAgICAgICAgICAgIDwvY28tYnV0dG9uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgPC9jby1kaWFsb2c+XHJcbiAgICA8L2Rpdj5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFN0b2NrTG9jYXRpb25Qb3B1cENvbXBvbmVudCB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGljb25zOiB0eXBlb2YgSWNvbiA9IEljb247XHJcblxyXG4gIHByaXZhdGUgX3NlbGVjdGVkTG9jYXRpb25Obzogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBlZGl0aW5nUm93OiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2hvd0NvbmZpcm1hdGlvbkRpYWxvZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIG5ld1N0b2NrTGluZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhOiBBcnRpY2xlRGV0YWlsc0JvID0gbmV3IEFydGljbGVEZXRhaWxzQm8oKTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgYXJ0aWNsZUZsYXQ6IEFydGljbGVGbGF0O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uOiBBcnRpY2xlU3RvY2tNYW5hZ2VtZW50ID0gbmV3IEFydGljbGVTdG9ja01hbmFnZW1lbnQoKVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZWxlY3RlZFdhcmVob3VzZTogU3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlcyA9IG5ldyBTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzKCk7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBzZWxlY3RlZExvY2F0aW9uTm8obG9jYXRpb25ObyA6IHN0cmluZykge1xyXG4gICAgdGhpcy5fc2VsZWN0ZWRMb2NhdGlvbk5vID0gbG9jYXRpb25ObztcclxuICB9O1xyXG5cclxuICBwdWJsaWMgZ2V0IHNlbGVjdGVkTG9jYXRpb25ObygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdGVkTG9jYXRpb25ObztcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFydGljbGVTdG9ja0luZm86IEFydGljbGVEZXRhaWxzQm9bXSA9IFtdO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgdG9nZ2xlUG9wdXBFdmVudDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgc2F2ZUV2ZW50OiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyB1cGRhdGVHcmlkRGF0YTogRXZlbnRFbWl0dGVyPEFydGljbGVEZXRhaWxzQm9bXT4gPSBuZXcgRXZlbnRFbWl0dGVyPEFydGljbGVEZXRhaWxzQm9bXT4oKTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzdG9ja0xvY2F0aW9uczogU3RvY2tMb2NhdGlvbltdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHN0b2NrU3RhdHVzOiBTdG9ja1N0YXR1c1tdID0gW107XHJcblxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBpY29uQ2FjaGVTZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfc3RvY2tTZXJ2aWNlOiBTdG9ja1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgKSB7XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIHB1YmxpYyBzdGF0dXNGb3JJZChpZDogbnVtYmVyKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9ja1N0YXR1cy5maW5kKHN0YXR1cyA9PiBzdGF0dXMuc3RvY2tTdGF0ZUlkID09PSBpZCkgPyB0aGlzLnN0b2NrU3RhdHVzLmZpbmQoc3RhdHVzID0+IHN0YXR1cy5zdG9ja1N0YXRlSWQgPT09IGlkKSA6IDAgO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVN0b2NrU3RhdHVzQ2hhbmdlKHN0YXR1czogU3RvY2tTdGF0dXMpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuc3RvY2tTdGF0ZUlkID0gc3RhdHVzLnN0b2NrU3RhdGVJZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVTdG9ja1N0YXR1c1JlbWFya0NoYW5nZShyZW1hcms6IHN0cmluZykge1xyXG4gICAgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5zdG9ja1N0YXRlUmVtYXJrID0gcmVtYXJrO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFtb3VudEluU3RvY2tDaGFuZ2VkKGRhdGEpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuYW1vdW50SW5TdG9jayA9IGRhdGE7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZGlzYWJsZWQoKSB7XHJcbiAgICByZXR1cm4gKCF0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhPy5zdG9ja1N0YXRlSWQgJiYgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YT8uc3RvY2tTdGF0ZVJlbWFyaz8ubGVuZ3RoIDw9IDEpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZU9rQ2xpY2soKSB7XHJcbiAgICB0aGlzLmhhbmRsZVN0b2NrQ2hhbmdlKCk7XHJcbiAgICB0aGlzLnNhdmVFdmVudC5lbWl0KHRydWUpO1xyXG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgdGhpcy50b2dnbGVQb3B1cEV2ZW50LmVtaXQoKTtcclxuICB9XHJcblxyXG5cclxuICBwdWJsaWMgdG9nZ2xlUG9wdXAoKSB7XHJcbiAgICB0aGlzLnRvZ2dsZVBvcHVwRXZlbnQuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFN0b2NrTG9jYXRpb25zKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldFN0b2NrTWFuYWdlbWVudExvY2F0aW9ucyh0aGlzLnNlbGVjdGVkV2FyZWhvdXNlLndhcmVob3VzZU5vKS50aGVuKChsb2NhdGlvbnMpID0+IHtcclxuICAgICAgdGhpcy5zdG9ja0xvY2F0aW9ucyA9IGxvY2F0aW9ucztcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGxvY2F0aW9uRm9yTnVtYmVyKG51bWJlcjogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9ja0xvY2F0aW9ucz8uZmluZChsb2NhdGlvbiA9PiBsb2NhdGlvbi5sb2NhdGlvbk5vID09PSBudW1iZXIpID8gdGhpcy5zdG9ja0xvY2F0aW9ucz8uZmluZChsb2NhdGlvbiA9PiBsb2NhdGlvbi5sb2NhdGlvbk5vID09PSBudW1iZXIpIDogXCJcIiA7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbG9jYXRpb25DaGFuZ2VkKGV2ZW50OiBTdG9ja0xvY2F0aW9uKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdGVkTG9jYXRpb25ObyA9IGV2ZW50LmxvY2F0aW9uTm87XHJcbiAgICB0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLmxvY2F0aW9uTm8gPSBldmVudC5sb2NhdGlvbk5vO1xyXG4gICAgaWYgKHRoaXMuYXJ0aWNsZVN0b2NrSW5mbz8ubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgIHRoaXMuaGFuZGxlU3RvY2tDaGFuZ2UoKTtcclxuICAgIH1cclxuICAgIHRoaXMuZ2V0U3RvY2tMb2NhdGlvbnMoKVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVN0b2NrQ2hhbmdlKCkge1xyXG4gICAgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5zZWxlY3RlZCA9IHRydWU7XHJcbiAgICBpZiAodGhpcy5hcnRpY2xlRmxhdC5nb29kSWQpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5nb29kSWQgPSB0aGlzLmFydGljbGVGbGF0Lmdvb2RJZDtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5hcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uLmdvb2RJZCkge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLmdvb2RJZCA9IHBhcnNlSW50KHRoaXMuYXJ0aWNsZURldGFpbHNJbmZvcm1hdGlvbi5nb29kSWQpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5lbnRyeURhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS53YXJlaG91c2VObyA9IHRoaXMuc2VsZWN0ZWRXYXJlaG91c2Uud2FyZWhvdXNlTm87XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZExvY2F0aW9uTm8gJiYgdGhpcy5hcnRpY2xlRmxhdC5sb2NhdGlvblJlZ2lzdGVyZWQpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5sb2NhdGlvbk5vID0gdGhpcy5zZWxlY3RlZExvY2F0aW9uTm8/LnRvU3RyaW5nKCk7XHJcbiAgICB9XHJcbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuYW1vdW50SW5TdG9jaykge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLmFtb3VudEluU3RvY2sgPSAxO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLnVwZGF0ZUFydGljbGVEZXRhaWxzKHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEpLnRoZW4ocmVzdWx0ID0+IHtcclxuICAgICAgICB0aGlzLmFydGljbGVEZXRhaWxzSW5mb3JtYXRpb24uZ29vZElkID0gdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5nb29kSWQ/LnRvU3RyaW5nKCk7XHJcbiAgICAgICAgdGhpcy5hcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uLndhcmVob3VzZU51bWJlciA9IHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEud2FyZWhvdXNlTm87XHJcbiAgICAgICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldEFydGljbGVEZXRhaWxzKHRoaXMuYXJ0aWNsZURldGFpbHNJbmZvcm1hdGlvbikudGhlbigoZGV0YWlscykgPT4ge1xyXG4gICAgICAgICAgdGhpcy5hcnRpY2xlU3RvY2tJbmZvID0gZGV0YWlscztcclxuICAgICAgICAgIHRoaXMudXBkYXRlR3JpZERhdGEuZW1pdChkZXRhaWxzKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBuZXdEYXRlKCk6IERhdGUge1xyXG4gICAgcmV0dXJuIG5ldyBEYXRlKCk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
240
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2stbG9jYXRpb24tcG9wdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc3RvY2svY29tcG9uZW50cy9zdG9jay1sb2NhdGlvbi9jb21wb25lbnRzL3N0b2NrLWxvY2F0aW9uLXBvcHVwL3N0b2NrLWxvY2F0aW9uLXBvcHVwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNHLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBQzlFLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUN0RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDckUsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0saUVBQWlFLENBQUM7QUFDMUcsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDakcsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scURBQXFELENBQUM7QUFrR3JGLE1BQU0sT0FBTywyQkFBMkI7SUEwRHRDLFlBQ1MsZ0JBQWtDLEVBQ2pDLGFBQTJCLEVBQzNCLGVBQWtDO1FBRm5DLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDakMsa0JBQWEsR0FBYixhQUFhLENBQWM7UUFDM0Isb0JBQWUsR0FBZixlQUFlLENBQW1CO1FBNUQ1QixVQUFLLEdBQWdCLElBQUksQ0FBQztRQUtuQyxlQUFVLEdBQVksS0FBSyxDQUFDO1FBRzVCLDJCQUFzQixHQUFZLEtBQUssQ0FBQztRQUd4QyxpQkFBWSxHQUFZLEtBQUss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QyxDQUFDO1lBQ3BDLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDO0lBRU0sT0FBTztRQUNaLE9BQU8sSUFBSSxJQUFJLEVBQUUsQ0FBQztJQUNwQixDQUFDOzs7WUExUEYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx5QkFBeUI7Z0JBQ25DLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXdGVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBdEdPLGdCQUFnQjtZQUVoQixZQUFZO1lBSFosaUJBQWlCOzs7eUJBNkd0QixLQUFLO3FDQUdMLEtBQUs7MkJBR0wsS0FBSzs4QkFHTCxLQUFLO3lDQUdMLEtBQUs7MEJBR0wsS0FBSzt3Q0FHTCxLQUFLO2dDQUdMLEtBQUs7aUNBR0wsS0FBSzsrQkFTTCxLQUFLOytCQUdMLE1BQU07d0JBR04sTUFBTTs2QkFHTixNQUFNOzZCQUdOLEtBQUs7MEJBR0wsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtJY29ufSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vLi4vZW51bS9pY29uLmVudW1cIjtcclxuaW1wb3J0IHtTdG9ja1NlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi8uLi9zZXJ2aWNlL3N0b2NrLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2stbWFuYWdlbWVudC13YXJlaG91c2VzLmJvXCI7XHJcbmltcG9ydCB7QXJ0aWNsZVN0b2NrTWFuYWdlbWVudH0gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtc3RvY2stbWFuYWdlbWVudFwiO1xyXG5pbXBvcnQge0FydGljbGVEZXRhaWxzQm99IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWRldGFpbHMuYm9cIjtcclxuaW1wb3J0IHtTdG9ja1N0YXR1c30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLXN0YXR1cy5ib1wiO1xyXG5pbXBvcnQge0FydGljbGVGbGF0fSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1mbGF0LmJvXCI7XHJcbmltcG9ydCB7U3RvY2tMb2NhdGlvbn0gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLWxvY2F0aW9uLmJvXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby1zdG9jay1sb2NhdGlvbi1wb3B1cFwiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2IGNsYXNzPVwic3RvY2stZ3JpZFwiPlxyXG4gICAgICA8Y28tZGlhbG9nICpuZ0lmPVwic2hvd0NvbmZpcm1hdGlvbkRpYWxvZ1wiXHJcbiAgICAgICAgICAgICAgICAgW3Nob3dDbG9zZUljb25dPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgW21vZGFsXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgIChjbG9zZUNsaWNrKT1cInRvZ2dsZVBvcHVwKClcIlxyXG4gICAgICAgICAgICAgICAgIFtoZWFkZXJUZW1wbGF0ZV09XCJoZWFkZXJUZW1wbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgW2Zvb3RlclRlbXBsYXRlXT1cImZvb3RlclRlbXBsYXRlXCI+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICNoZWFkZXJUZW1wbGF0ZT5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjby1kaWFsb2ctaGVhZGVyLXRpdGxlLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgPGNvLWljb24gW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5DdWJlcylcIj48L2NvLWljb24+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjby1kaWFsb2ctaGVhZGVyLXRpdGxlXCIgW3RleHRDb250ZW50XT1cIidDT05GSVJNX1NUT0NLX0NIQU5HRScgfCBzaGFyZWRMb2NhbGl6ZVwiPjwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiZGVsZXRlU3RvY2tMaW5lXCIgY2xhc3M9XCJkaWFsb2ctd3JhcHBlclwiPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdG9jay1oZWFkZXJcIiBbdGV4dENvbnRlbnRdPVwiJ0RFTEVURV9TVE9DS19MSU5FPycgfCBzaGFyZWRMb2NhbGl6ZVwiPjwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiIWRlbGV0ZVN0b2NrTGluZVwiIGNsYXNzPVwiZGlhbG9nLXdyYXBwZXJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay1kaWFsb2ctaGVhZGVyXCI+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3RvY2staGVhZGVyXCIgKm5nSWY9XCJuZXdTdG9ja0xpbmVcIiBbdGV4dENvbnRlbnRdPVwiJ05FV19TVE9DS19MSU5FJyB8IHNoYXJlZExvY2FsaXplXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN0b2NrLWhlYWRlclwiICpuZ0lmPVwiIW5ld1N0b2NrTGluZVwiIFt0ZXh0Q29udGVudF09XCInQ0hBTkdFX1NUT0NLX0xJTkUnIHwgc2hhcmVkTG9jYWxpemVcIj48L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay1kaWFsb2ctcm93XCI+XHJcbiAgICAgICAgICAgIDxjby1pbnB1dC10ZXh0IFttb2RlbF09XCJzZWxlY3RlZFdhcmVob3VzZT8ud2FyZWhvdXNlRGVzY3JpcHRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1dBUkVIT1VTRScgfCBzaGFyZWRMb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJ0cnVlXCJcclxuICAgICAgICAgICAgPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgICAgPGNvLWlucHV0LXRleHQgWyhtb2RlbCldPVwic2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuc2VyaWFsTm9cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1NFUklBTF9OTycgfCBzaGFyZWRMb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgID48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay1kaWFsb2ctcm93XCI+XHJcbiAgICAgICAgICAgIDxjby1saXN0LW9mLXZhbHVlcyAqbmdJZj1cImFydGljbGVGbGF0LmxvY2F0aW9uUmVnaXN0ZXJlZFwiXHJcbiAgICAgICAgICAgICAgW21vZGVsXT1cImxvY2F0aW9uRm9yTnVtYmVyKHNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLmxvY2F0aW9uTm8pXCJcclxuICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJzdG9ja0xvY2F0aW9uc1wiXHJcbiAgICAgICAgICAgICAgW2Rpc3BsYXlGaWVsZF09XCInbG9jYXRpb25ObydcIlxyXG4gICAgICAgICAgICAgIFtsYWJlbF09XCInTE9DQVRJT04nIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwibG9jYXRpb25DaGFuZ2VkKCRldmVudClcIlxyXG4gICAgICAgICAgICA+PC9jby1saXN0LW9mLXZhbHVlcz5cclxuICAgICAgICAgICAgPGNvLWlucHV0LXRleHQgWyhtb2RlbCldPVwic2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuYmF0Y2hOb1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQkFUQ0gnIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICA+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic3RvY2stZGlhbG9nLXJvd1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3RvY2stZGlhbG9nLXJvdy1yb3dcIj5cclxuICAgICAgICAgICAgICA8Y28taW5wdXQtdGV4dCBbbW9kZWxdPVwiYXJ0aWNsZVN0b2NrSW5mb1swXT8ucHVyY2hhc2VQcmljZSB8IGN1cnJlbmN5OidFVVInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1BVUkNIQVNFX1BSSUNFJyB8IHNoYXJlZExvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgID48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgICAgICAgPGNvLWlucHV0LXRleHQgWyhtb2RlbCldPVwiYXJ0aWNsZVN0b2NrSW5mb1swXS5jdXJyZW5jeVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidWQUxVVEEnIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxjby1pbnB1dC1kYXRlIFttb2RlbF09XCJzZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YT8uZW50cnlEYXRlPyBzZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YT8uZW50cnlEYXRlIDogbmV3RGF0ZSgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidEQVRFJyB8IHNoYXJlZExvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cImZhbHNlXCJcclxuICAgICAgICAgICAgPjwvY28taW5wdXQtZGF0ZT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLWRpYWxvZy1yb3dcIj5cclxuICAgICAgICAgICAgPGNvLWlucHV0LW51bWJlci1waWNrZXJcclxuICAgICAgICAgICAgICBbKG1vZGVsKV09XCJzZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5hbW91bnRJblN0b2NrXCJcclxuICAgICAgICAgICAgICBbbGFiZWxdPVwiJ1NUT0NLJyB8IHNoYXJlZExvY2FsaXplXCJcclxuICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwiYW1vdW50SW5TdG9ja0NoYW5nZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgW21pbl09XCIwXCJcclxuICAgICAgICAgICAgPjwvY28taW5wdXQtbnVtYmVyLXBpY2tlcj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmaWxsZXJcIj48L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8bmctdGVtcGxhdGUgI2Zvb3RlclRlbXBsYXRlPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbi13cmFwcGVyIG9rLWNhbmNlbC1idXR0b25zXCI+XHJcbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic3RvY2tCZWxvd1wiIGNsYXNzPVwibWluaW11bS1zdG9ja1wiIFt0ZXh0Q29udGVudF09XCInU1RPQ0tfQkVMT1dfWkVST19URVhUJyB8IHNoYXJlZExvY2FsaXplXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICA8Y28tYnV0dG9uIGNsYXNzPVwic2F2ZS1idXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVPa0NsaWNrKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQ2hlY2tEdW90b25lKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkKClcIj5cclxuICAgICAgICAgICAgPC9jby1idXR0b24+XHJcbiAgICAgICAgICAgIDxjby1idXR0b24gY2xhc3M9XCJjYW5jZWwtYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlUG9wdXAoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5Dcm9zc1NraW5ueSlcIj5cclxuICAgICAgICAgICAgPC9jby1idXR0b24+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICA8L2NvLWRpYWxvZz5cclxuICAgIDwvZGl2PlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3RvY2tMb2NhdGlvblBvcHVwQ29tcG9uZW50IHtcclxuICBwdWJsaWMgcmVhZG9ubHkgaWNvbnM6IHR5cGVvZiBJY29uID0gSWNvbjtcclxuXHJcbiAgcHJpdmF0ZSBfc2VsZWN0ZWRMb2NhdGlvbk5vOiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGVkaXRpbmdSb3c6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2hvd0NvbmZpcm1hdGlvbkRpYWxvZzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBuZXdTdG9ja0xpbmU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZGVsZXRlU3RvY2tMaW5lOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhOiBBcnRpY2xlRGV0YWlsc0JvID0gbmV3IEFydGljbGVEZXRhaWxzQm8oKTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgYXJ0aWNsZUZsYXQ6IEFydGljbGVGbGF0O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uOiBBcnRpY2xlU3RvY2tNYW5hZ2VtZW50ID0gbmV3IEFydGljbGVTdG9ja01hbmFnZW1lbnQoKVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZWxlY3RlZFdhcmVob3VzZTogU3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlcyA9IG5ldyBTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzKCk7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBzZWxlY3RlZExvY2F0aW9uTm8obG9jYXRpb25ObyA6IHN0cmluZykge1xyXG4gICAgdGhpcy5fc2VsZWN0ZWRMb2NhdGlvbk5vID0gbG9jYXRpb25ObztcclxuICB9O1xyXG5cclxuICBwdWJsaWMgZ2V0IHNlbGVjdGVkTG9jYXRpb25ObygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdGVkTG9jYXRpb25ObztcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFydGljbGVTdG9ja0luZm86IEFydGljbGVEZXRhaWxzQm9bXSA9IFtdO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgdG9nZ2xlUG9wdXBFdmVudDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgc2F2ZUV2ZW50OiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyB1cGRhdGVHcmlkRGF0YTogRXZlbnRFbWl0dGVyPEFydGljbGVEZXRhaWxzQm9bXT4gPSBuZXcgRXZlbnRFbWl0dGVyPEFydGljbGVEZXRhaWxzQm9bXT4oKTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc3RvY2tMb2NhdGlvbnM6IFN0b2NrTG9jYXRpb25bXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzdG9ja1N0YXR1czogU3RvY2tTdGF0dXNbXSA9IFtdO1xyXG5cclxuICBwdWJsaWMgc3RvY2tCZWxvdzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBpY29uQ2FjaGVTZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfc3RvY2tTZXJ2aWNlOiBTdG9ja1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgKSB7XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIHB1YmxpYyBzdGF0dXNGb3JJZChpZDogbnVtYmVyKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9ja1N0YXR1cy5maW5kKHN0YXR1cyA9PiBzdGF0dXMuc3RvY2tTdGF0ZUlkID09PSBpZCkgPyB0aGlzLnN0b2NrU3RhdHVzLmZpbmQoc3RhdHVzID0+IHN0YXR1cy5zdG9ja1N0YXRlSWQgPT09IGlkKSA6IDAgO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVN0b2NrU3RhdHVzQ2hhbmdlKHN0YXR1czogU3RvY2tTdGF0dXMpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuc3RvY2tTdGF0ZUlkID0gc3RhdHVzLnN0b2NrU3RhdGVJZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVTdG9ja1N0YXR1c1JlbWFya0NoYW5nZShyZW1hcms6IHN0cmluZykge1xyXG4gICAgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5zdG9ja1N0YXRlUmVtYXJrID0gcmVtYXJrO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFtb3VudEluU3RvY2tDaGFuZ2VkKGRhdGEpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuYW1vdW50SW5TdG9jayA9IGRhdGE7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZGlzYWJsZWQoKSB7XHJcbiAgICByZXR1cm4gKCF0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhPy5zdG9ja1N0YXRlSWQgJiYgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YT8uc3RvY2tTdGF0ZVJlbWFyaz8ubGVuZ3RoIDw9IDEpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZU9rQ2xpY2soKSB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5hbW91bnRJblN0b2NrRnJlZSA8IHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuYW1vdW50SW5TdG9ja09yaWdpbmFsKSB7XHJcbiAgICAgIHRoaXMuc3RvY2tCZWxvdyA9IHRydWU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnN0b2NrQmVsb3cgPSBmYWxzZTtcclxuICAgICAgdGhpcy5oYW5kbGVTdG9ja0NoYW5nZSgpO1xyXG4gICAgICB0aGlzLnNhdmVFdmVudC5lbWl0KHRydWUpO1xyXG4gICAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIHRoaXMudG9nZ2xlUG9wdXBFdmVudC5lbWl0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgcHVibGljIHRvZ2dsZVBvcHVwKCkge1xyXG4gICAgdGhpcy5zdG9ja0JlbG93ID0gZmFsc2U7XHJcbiAgICB0aGlzLnRvZ2dsZVBvcHVwRXZlbnQuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFN0b2NrTG9jYXRpb25zKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldFN0b2NrTWFuYWdlbWVudExvY2F0aW9ucyh0aGlzLnNlbGVjdGVkV2FyZWhvdXNlLndhcmVob3VzZU5vKS50aGVuKChsb2NhdGlvbnMpID0+IHtcclxuICAgICAgdGhpcy5zdG9ja0xvY2F0aW9ucyA9IGxvY2F0aW9ucztcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGxvY2F0aW9uRm9yTnVtYmVyKG51bWJlcjogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9ja0xvY2F0aW9ucz8uZmluZChsb2NhdGlvbiA9PiBsb2NhdGlvbi5sb2NhdGlvbk5vID09PSBudW1iZXIpID8gdGhpcy5zdG9ja0xvY2F0aW9ucz8uZmluZChsb2NhdGlvbiA9PiBsb2NhdGlvbi5sb2NhdGlvbk5vID09PSBudW1iZXIpIDogXCJcIiA7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbG9jYXRpb25DaGFuZ2VkKGV2ZW50OiBTdG9ja0xvY2F0aW9uKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdGVkTG9jYXRpb25ObyA9IGV2ZW50LmxvY2F0aW9uTm87XHJcbiAgICB0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLmxvY2F0aW9uTm8gPSBldmVudC5sb2NhdGlvbk5vO1xyXG4gICAgaWYgKHRoaXMuYXJ0aWNsZVN0b2NrSW5mbz8ubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgIHRoaXMuaGFuZGxlU3RvY2tDaGFuZ2UoKTtcclxuICAgIH1cclxuICAgIHRoaXMuZ2V0U3RvY2tMb2NhdGlvbnMoKVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVN0b2NrQ2hhbmdlKCkge1xyXG4gICAgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5zZWxlY3RlZCA9IHRydWU7XHJcbiAgICBpZiAodGhpcy5hcnRpY2xlRmxhdC5nb29kSWQpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5nb29kSWQgPSB0aGlzLmFydGljbGVGbGF0Lmdvb2RJZDtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5hcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uLmdvb2RJZCkge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLmdvb2RJZCA9IHBhcnNlSW50KHRoaXMuYXJ0aWNsZURldGFpbHNJbmZvcm1hdGlvbi5nb29kSWQpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5lbnRyeURhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgaWYgKHRoaXMuZGVsZXRlU3RvY2tMaW5lKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRXYXJlaG91c2Uud2FyZWhvdXNlTm8gPSB0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLndhcmVob3VzZU5vO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLmFtb3VudEluU3RvY2sgPSAwO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS53YXJlaG91c2VObyA9IHRoaXMuc2VsZWN0ZWRXYXJlaG91c2Uud2FyZWhvdXNlTm87XHJcbiAgICAgIGlmICh0aGlzLnNlbGVjdGVkTG9jYXRpb25ObyAmJiB0aGlzLmFydGljbGVGbGF0LmxvY2F0aW9uUmVnaXN0ZXJlZCkge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEubG9jYXRpb25ObyA9IHRoaXMuc2VsZWN0ZWRMb2NhdGlvbk5vPy50b1N0cmluZygpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAvL2lmICghdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5hbW91bnRJblN0b2NrKSB7XHJcbiAgICAvLyAgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5hbW91bnRJblN0b2NrID0gMTtcclxuICAgIC8vIH1cclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS51cGRhdGVBcnRpY2xlRGV0YWlscyh0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhKS50aGVuKHJlc3VsdCA9PiB7XHJcbiAgICAgICAgdGhpcy5hcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uLmdvb2RJZCA9IHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuZ29vZElkPy50b1N0cmluZygpO1xyXG4gICAgICAgIHRoaXMuYXJ0aWNsZURldGFpbHNJbmZvcm1hdGlvbi53YXJlaG91c2VOdW1iZXIgPSB0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLndhcmVob3VzZU5vO1xyXG4gICAgICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRBcnRpY2xlRGV0YWlscyh0aGlzLmFydGljbGVEZXRhaWxzSW5mb3JtYXRpb24pLnRoZW4oKGRldGFpbHMpID0+IHtcclxuICAgICAgICAgIHRoaXMuYXJ0aWNsZVN0b2NrSW5mbyA9IGRldGFpbHM7XHJcbiAgICAgICAgICB0aGlzLnVwZGF0ZUdyaWREYXRhLmVtaXQoZGV0YWlscyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbmV3RGF0ZSgpOiBEYXRlIHtcclxuICAgIHJldHVybiBuZXcgRGF0ZSgpO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
@@ -23,6 +23,8 @@ export class StockLocationComponent extends BaseStockComponent {
23
23
  this.handleStickerClicked = new EventEmitter();
24
24
  this.showConfirmationDialog = false;
25
25
  this.newStockLine = false;
26
+ this.deleteStockLine = false;
27
+ this.cannotDelete = false;
26
28
  this.showConfirmStockRow = false;
27
29
  this.articleDetailsInformation = new ArticleStockManagement();
28
30
  this.stockStatus = [];
@@ -76,6 +78,20 @@ export class StockLocationComponent extends BaseStockComponent {
76
78
  }
77
79
  onRowSelected(row) {
78
80
  this.selectedRow = row;
81
+ this.cannotDelete = false;
82
+ }
83
+ handleDeleteRow(row) {
84
+ this.selectedArticleDetailsData = row;
85
+ if (this.selectedArticleDetailsData.stockAssigned > 0) {
86
+ this.deleteStockLine = false;
87
+ this.showConfirmationDialog = false;
88
+ this.cannotDelete = true;
89
+ }
90
+ else {
91
+ this.deleteStockLine = true;
92
+ this.showConfirmationDialog = true;
93
+ this.cannotDelete = false;
94
+ }
79
95
  }
80
96
  onOkClickSendLocations(row) {
81
97
  this.selectedArticleDetailsData = row;
@@ -193,6 +209,7 @@ StockLocationComponent.decorators = [
193
209
  [selectedArticleDetailsData]="selectedArticleDetailsData"
194
210
  [showConfirmationDialog]="showConfirmationDialog"
195
211
  [newStockLine]="newStockLine"
212
+ [deleteStockLine]="deleteStockLine"
196
213
  [stockStatus]="stockStatus"
197
214
  (togglePopupEvent)="handleTogglePopup()"
198
215
  (saveEvent)="handlePopupSave($event)"
@@ -206,6 +223,9 @@ StockLocationComponent.decorators = [
206
223
  (click)="handleStockTransferClick(selectedRow)"></co-icon>
207
224
  <co-icon *ngIf="selectedRow" class="menu-icon" [iconData]="iconCacheService.getIcon(icons.SolidBarcodeReadTag)"
208
225
  (click)="openSendMethodDialog(selectedRow)"></co-icon>
226
+ <co-icon *ngIf="selectedRow" class="menu-icon" [iconData]="iconCacheService.getIcon(icons.TrashCanRegular)"
227
+ (click)="handleDeleteRow(selectedRow)"></co-icon>
228
+ <span *ngIf="cannotDelete" class="minimum-stock" [textContent]="'STOCK_BELOW_ZERO_TEXT' | sharedLocalize"></span>
209
229
  </div>
210
230
  <co-simple-grid [data]="data"
211
231
  class="simple-grid"
@@ -304,4 +324,4 @@ StockLocationComponent.propDecorators = {
304
324
  handleStickerClicked: [{ type: Output }],
305
325
  selectedWarehouse: [{ type: Input }]
306
326
  };
307
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2stbG9jYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc3RvY2svY29tcG9uZW50cy9zdG9jay1sb2NhdGlvbi9zdG9jay1sb2NhdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUNOLGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUN4RSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDaEQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBRS9ELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDJEQUEyRCxDQUFDO0FBQ2pHLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBT3JGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBdUhuRSxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsa0JBQWtCO0lBbUU1RCxZQUNTLGdCQUFrQyxFQUNqQyxhQUEyQixFQUMzQixlQUFrQztRQUUxQyxLQUFLLEVBQUUsQ0FBQztRQUpELHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDakMsa0JBQWEsR0FBYixhQUFhLENBQWM7UUFDM0Isb0JBQWUsR0FBZixlQUFlLENBQW1CO1FBckU1QixVQUFLLEdBQWdCLElBQUksQ0FBQztRQWdCbkMsNEJBQXVCLEdBQXFCLEVBQUUsQ0FBQztRQUcvQyxxQkFBZ0IsR0FBVSxFQUFFLENBQUM7UUFHN0Isa0JBQWEsR0FBVSxFQUFFLENBQUM7UUFTMUIs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R04sTUFBTTttQ0FFTixNQUFNO2dDQWVOLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtBcnRpY2xlU3RvY2sgYXMgQXJ0aWNsZVN0b2NrQm99IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtc3RvY2suYm8nO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtJY29ufSBmcm9tICcuLi8uLi8uLi8uLi9lbnVtL2ljb24uZW51bSc7XHJcbmltcG9ydCB7U3RvY2tTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlL3N0b2NrLnNlcnZpY2UnO1xyXG5pbXBvcnQge1N0b2NrTWFuYWdlbWVudFdhcmVob3VzZXN9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLW1hbmFnZW1lbnQtd2FyZWhvdXNlcy5ibyc7XHJcbmltcG9ydCB7QXJ0aWNsZVN0b2NrTWFuYWdlbWVudH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1zdG9jay1tYW5hZ2VtZW50JztcclxuaW1wb3J0IHtBcnRpY2xlRGV0YWlsc0JvfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWRldGFpbHMuYm8nO1xyXG5pbXBvcnQge1N0b2NrTG9jYXRpb259IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLWxvY2F0aW9uLmJvJztcclxuaW1wb3J0IHtQcmludFByaWNlU3RpY2tlcnN9IGZyb20gJ0Bjb2xpam5pdC9zaGFyZWRhcGkvYnVpbGQvbW9kZWwvcHJpbnQtcHJpY2Utc3RpY2tlcnMuYm8nO1xyXG5pbXBvcnQge1N0b2NrU3RhdHVzfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9zdG9jay1zdGF0dXMuYm8nO1xyXG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7QXJ0aWNsZUV4dGVuZGVkfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWV4dGVuZGVkLmJvJztcclxuaW1wb3J0IHtBcnRpY2xlRmxhdH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1mbGF0LmJvJztcclxuaW1wb3J0IHtCYXNlU3RvY2tDb21wb25lbnR9IGZyb20gJy4uLy4uL2Jhc2UvYmFzZS1zdG9jay5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjby1zdG9jay1sb2NhdGlvbicsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLWdyaWRcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay10cmFuc2Zlci13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPGNvLXN0b2NrLXRyYW5zZmVyICpuZ0lmPVwic2hvd1N0b2NrVHJhbnNmZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInN0b2NrLXRyYW5zZmVyLWRpYWxvZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthcnRpY2xlVG9UcmFuc2Zlcl09XCJhcnRpY2xlRGV0YWlsc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChoYW5kbGVTdGlja2VyQ2xpY2tlZCk9XCJoYW5kbGVTdGlja2VyQ2xpY2tlZC5lbWl0KCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWxsV2FyZWhvdXNlc109XCJhbGxXYXJlaG91c2VzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3N0b2NrTG9jYXRpb25zXT1cInN0b2NrTG9jYXRpb25zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2FydGljbGVGbGF0XT1cImFydGljbGVGbGF0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dTdG9ja1RyYW5zZmVyXT1cInNob3dTdG9ja1RyYW5zZmVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNob3dTdG9ja1RyYW5zZmVyQ2hhbmdlKT1cIm9uU2hvd1N0b2NrVHJhbnNmZXJDaGFuZ2UoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICAgIDwvY28tc3RvY2stdHJhbnNmZXI+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxjby1zdG9jay1sb2NhdGlvbi1wb3B1cFxyXG4gICAgICAgICAgICAgICAgICBbc2VsZWN0ZWRXYXJlaG91c2VdPVwic2VsZWN0ZWRXYXJlaG91c2VcIlxyXG4gICAgICAgICAgICAgICAgICBbYXJ0aWNsZUZsYXRdPVwiYXJ0aWNsZUZsYXRcIlxyXG4gICAgICAgICAgICAgICAgICBbc2VsZWN0ZWRMb2NhdGlvbk5vXT1cInNlbGVjdGVkTG9jYXRpb25Ob1wiXHJcbiAgICAgICAgICAgICAgICAgIFtzdG9ja0xvY2F0aW9uc109XCJzdG9ja0xvY2F0aW9uc1wiXHJcbiAgICAgICAgICAgICAgICAgIFthcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uXT1cImFydGljbGVEZXRhaWxzSW5mb3JtYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICBbYXJ0aWNsZVN0b2NrSW5mb109XCJkYXRhXCJcclxuICAgICAgICAgICAgICAgICAgW3NlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhXT1cInNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhXCJcclxuICAgICAgICAgICAgICAgICAgW3Nob3dDb25maXJtYXRpb25EaWFsb2ddPVwic2hvd0NvbmZpcm1hdGlvbkRpYWxvZ1wiXHJcbiAgICAgICAgICAgICAgICAgIFtuZXdTdG9ja0xpbmVdPVwibmV3U3RvY2tMaW5lXCJcclxuICAgICAgICAgICAgICAgICAgW3N0b2NrU3RhdHVzXT1cInN0b2NrU3RhdHVzXCJcclxuICAgICAgICAgICAgICAgICAgKHRvZ2dsZVBvcHVwRXZlbnQpPVwiaGFuZGxlVG9nZ2xlUG9wdXAoKVwiXHJcbiAgICAgICAgICAgICAgICAgIChzYXZlRXZlbnQpPVwiaGFuZGxlUG9wdXBTYXZlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAodXBkYXRlR3JpZERhdGEpPVwiZGF0YSA9ICRldmVudFwiXHJcblxyXG4gICAgICAgICAgPjwvY28tc3RvY2stbG9jYXRpb24tcG9wdXA+XHJcbiAgICAgICAgICA8ZGl2ICBjbGFzcz1cInN0b2NrLXRyYW5zZmVyLWFkZFwiPlxyXG4gICAgICAgICAgICA8Y28taWNvbiBjbGFzcz1cIm1lbnUtaWNvblwiIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuUGx1c1JlZ3VsYXIpXCJcclxuICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZUFkZFJvdygpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgICA8Y28taWNvbiAqbmdJZj1cInNlbGVjdGVkUm93XCIgY2xhc3M9XCJtZW51LWljb25cIiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkFycm93UmlnaHRBcnJvd0xlZnRSZWd1bGFyKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVTdG9ja1RyYW5zZmVyQ2xpY2soc2VsZWN0ZWRSb3cpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgICA8Y28taWNvbiAqbmdJZj1cInNlbGVjdGVkUm93XCIgY2xhc3M9XCJtZW51LWljb25cIiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLlNvbGlkQmFyY29kZVJlYWRUYWcpXCJcclxuICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9wZW5TZW5kTWV0aG9kRGlhbG9nKHNlbGVjdGVkUm93KVwiPjwvY28taWNvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGNvLXNpbXBsZS1ncmlkIFtkYXRhXT1cImRhdGFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2ltcGxlLWdyaWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtzaG93QWRkXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbaW5saW5lRWRpdF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dUb29sYmFyXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIChhZGRSb3cpPVwiaGFuZGxlQWRkUm93KClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIChzZWxlY3RSb3cpPVwib25Sb3dTZWxlY3RlZCgkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInU1RPQ0snIHwgc2hhcmVkTG9jYWxpemVcIiBbZmllbGRdPVwiJ2Ftb3VudEluU3RvY2snXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjdGVtcGxhdGUgbGV0LXJvdz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLWFtb3VudFwiIChjbGljayk9XCJvbk9rQ2xpY2tTZW5kTG9jYXRpb25zKHJvdylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8Y28taWNvbiBjbGFzcz1cIm1lbnUtaWNvblwiIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuRWRpdFBlblJlZ3VsYXIpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCJyb3dbJ2Ftb3VudEluU3RvY2snXVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgIDwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW3dpZHRoXT1cIjE1MFwiIFtoZWFkZXJUZXh0XT1cIidMT0NBVElPTicgfCBzaGFyZWRMb2NhbGl6ZVwiIFtmaWVsZF09XCInbG9jYXRpb25ObydcIj5cclxuICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNlZGl0VGVtcGxhdGUgbGV0LXJvdz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGNvLWxpc3Qtb2YtdmFsdWVzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlbF09XCJsb2NhdGlvbkZvck51bWJlcihyb3dbJ2xvY2F0aW9uTm8nXSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJzdG9ja0xvY2F0aW9uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNwbGF5RmllbGRdPVwiJ2Rlc2NyaXB0aW9uJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInTE9DQVRJT04nIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJsb2NhdGlvbkNoYW5nZWQocm93LCAkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgID48L2NvLWxpc3Qtb2YtdmFsdWVzPlxyXG4gICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgIDwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gKm5nSWY9XCJhcnRpY2xlRmxhdD8uYmF0Y2hcIiBbaGVhZGVyVGV4dF09XCInQkFUQ0gnIHwgc2hhcmVkTG9jYWxpemVcIiBbZmllbGRdPVwiJ2JhdGNoTm8nXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZWRpdFRlbXBsYXRlIGxldC1yb3c9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxjby1pbnB1dC10ZXh0IFttb2RlbF09XCJzZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5iYXRjaE5vXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQkFUQ0gnIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cInJvd1snYmF0Y2hObyddID0gJGV2ZW50XCJcclxuICAgICAgICAgICAgICAgICAgICAgID48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgPC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiAqbmdJZj1cImFydGljbGVGbGF0Py5zZXJpYWxcIiBbaGVhZGVyVGV4dF09XCInU0VSSUFMX05PJyB8IHNoYXJlZExvY2FsaXplXCIgW2ZpZWxkXT1cIidzZXJpYWxObydcIj5cclxuICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNlZGl0VGVtcGxhdGUgbGV0LXJvdz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGNvLWlucHV0LXRleHQgW21vZGVsXT1cInNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLnNlcmlhbE5vXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInU0VSSUFMX05PJyB8IHNoYXJlZExvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJyb3dbJ3NlcmlhbE5vJ10gPSAkZXZlbnRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICA8L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidBTExPQ0FURUQnIHwgc2hhcmVkTG9jYWxpemVcIiBbZmllbGRdPVwiJ3N0b2NrQXNzaWduZWQnXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZWRpdFRlbXBsYXRlIGxldC1yb3c9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCJyb3dbJ3N0b2NrQXNzaWduZWQnXVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICA8L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidBVkFJTEFCTEVfU1RPQ0snIHwgc2hhcmVkTG9jYWxpemVcIiBbZmllbGRdPVwiJ2Ftb3VudEluU3RvY2tGcmVlJ1wiPlxyXG4gICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2VkaXRUZW1wbGF0ZSBsZXQtcm93PVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwicm93WydhbW91bnRJblN0b2NrRnJlZSddXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgIDwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ1ZBTFVUQScgfCBzaGFyZWRMb2NhbGl6ZVwiIFtmaWVsZF09XCInY3VycmVuY3knXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZWRpdFRlbXBsYXRlIGxldC1yb3c9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCJyb3dbJ2N1cnJlbmN5J11cIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgPC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInUFVSQ0hBU0VfUFJJQ0UnIHwgc2hhcmVkTG9jYWxpemVcIiBbZmllbGRdPVwiJ3B1cmNoYXNlUHJpY2UnXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZWRpdFRlbXBsYXRlIGxldC1yb3c9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCJyb3dbJ3B1cmNoYXNlUHJpY2UnXVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICA8L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidTVVBQTElFUk5SJyB8IHNoYXJlZExvY2FsaXplXCIgW2ZpZWxkXT1cIidzdXBwbGllck5vJ1wiPlxyXG4gICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2VkaXRUZW1wbGF0ZSBsZXQtcm93PVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwicm93WydzdXBwbGllck5vJ11cIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgPC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgICA8L2NvLXNpbXBsZS1ncmlkPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGNvLXNlbmQtbWV0aG9kLWRpYWxvZyAqbmdJZj1cInNob3dTZW5kTWV0aG9kRGlhbG9nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJzaG93U2VuZE1ldGhvZERpYWxvZyA9IGZhbHNlXCI+XHJcblxyXG4gICAgICA8L2NvLXNlbmQtbWV0aG9kLWRpYWxvZz5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFN0b2NrTG9jYXRpb25Db21wb25lbnQgZXh0ZW5kcyBCYXNlU3RvY2tDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGljb25zOiB0eXBlb2YgSWNvbiA9IEljb247XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCB3YXJlaG91c2VObyh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICBpZiAodGhpcy5fd2FyZWhvdXNlTm8gIT09IHZhbHVlKSB7XHJcbiAgICAgIHRoaXMuX3dhcmVob3VzZU5vID0gdmFsdWU7XHJcbiAgICAgIHRoaXMuZ2V0RGF0YSgpO1xyXG4gICAgICB0aGlzLl9nZXRXYXJlaG91c2VMb2NhdGlvbnMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgd2FyZWhvdXNlTm8oKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl93YXJlaG91c2VObztcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFydGljbGVTdG9ja0luZm9ybWF0aW9uOiBBcnRpY2xlU3RvY2tCb1tdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFydGljbGVXYXJlaG91c2U6IGFueVtdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbFdhcmVob3VzZXM6IGFueVtdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNob3dTdG9ja1RyYW5zZmVyOiBib29sZWFuO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhcnRpY2xlRmxhdDogQXJ0aWNsZUZsYXQ7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGRhdGFXYXJlSG91c2VDb2RlOiBTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzW10gPSBbXTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHJlYWRvbmx5IHRyYW5zZmVySWNvbkNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxBcnRpY2xlU3RvY2tCbz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyByZWFkb25seSBzZW5kTWV0aG9kRGlhbG9nQ2xpY2tlZDogRXZlbnRFbWl0dGVyPFByaW50UHJpY2VTdGlja2Vycz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBPdXRwdXQoKSBzaG93U3RvY2tUcmFuc2ZlckNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGhhbmRsZVN0aWNrZXJDbGlja2VkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgcHVibGljIGFydGljbGVEZXRhaWxzOiBBcnRpY2xlRGV0YWlsc0JvO1xyXG4gIHB1YmxpYyBzaG93Q29uZmlybWF0aW9uRGlhbG9nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIG5ld1N0b2NrTGluZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBzaG93Q29uZmlybVN0b2NrUm93OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHB1YmxpYyBhcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uOiBBcnRpY2xlU3RvY2tNYW5hZ2VtZW50ID0gbmV3IEFydGljbGVTdG9ja01hbmFnZW1lbnQoKTtcclxuXHJcbiAgcHVibGljIHN0b2NrU3RhdHVzOiBTdG9ja1N0YXR1c1tdID0gW107XHJcbiAgcHVibGljIHNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhOiBBcnRpY2xlRGV0YWlsc0JvID0gbmV3IEFydGljbGVEZXRhaWxzQm8oKTtcclxuXHJcbiAgcHVibGljIHNlbGVjdGVkTG9jYXRpb25Obzogc3RyaW5nO1xyXG4gIHB1YmxpYyBkYXRhOiBBcnRpY2xlRGV0YWlsc0JvW10gPSBbXTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZWxlY3RlZFdhcmVob3VzZTogU3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlcztcclxuICBwdWJsaWMgc3RvY2tMb2NhdGlvbnM6IFN0b2NrTG9jYXRpb25bXSA9IFtdO1xyXG5cclxuICBwdWJsaWMgc2VsZWN0ZWRSb3c6IEFydGljbGVEZXRhaWxzQm8gfCBudWxsID0gbnVsbDtcclxuICBwdWJsaWMgc2hvd1NlbmRNZXRob2REaWFsb2c6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcHJpdmF0ZSBfd2FyZWhvdXNlTm86IG51bWJlcjtcclxuICBwcml2YXRlIF9zdWJzOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBpY29uQ2FjaGVTZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfc3RvY2tTZXJ2aWNlOiBTdG9ja1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLl9zdG9ja1NlcnZpY2UuZ2V0U3RvY2tTdGF0ZSgpLnRoZW4ocmVzdWx0ID0+IHtcclxuICAgICAgdGhpcy5zdG9ja1N0YXR1cyA9IHJlc3VsdDtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLl9zdWJzLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uU2hvd1N0b2NrVHJhbnNmZXJDaGFuZ2Uoc2hvdzogYm9vbGVhbikge1xyXG4gICAgdGhpcy5zaG93U3RvY2tUcmFuc2ZlciA9IHNob3c7XHJcbiAgICB0aGlzLnNob3dTdG9ja1RyYW5zZmVyQ2hhbmdlLmVtaXQodGhpcy5zaG93U3RvY2tUcmFuc2Zlcik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25Mb2NhdGlvbkRyb3Bkb3duQ2xpY2soKTogdm9pZCB7XHJcbiAgICB0aGlzLl9nZXRXYXJlaG91c2VMb2NhdGlvbnMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBsb2NhdGlvbkNoYW5nZWQocm93OiBBcnRpY2xlRGV0YWlsc0JvLCBldmVudDogU3RvY2tMb2NhdGlvbik6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZExvY2F0aW9uTm8gPSBldmVudC5sb2NhdGlvbk5vO1xyXG4gICAgcm93LmxvY2F0aW9uTm8gPSBldmVudC5sb2NhdGlvbk5vO1xyXG4gICAgdGhpcy5vbkxvY2F0aW9uRHJvcGRvd25DbGljaygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFtb3VudEluU3RvY2tDaGFuZ2VkKGRhdGEpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuYW1vdW50SW5TdG9jayA9IGRhdGE7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb3BlblNlbmRNZXRob2REaWFsb2coZGF0YSk6IHZvaWQge1xyXG4gICAgdGhpcy5zaG93U2VuZE1ldGhvZERpYWxvZyA9IHRydWU7XHJcbiAgICB0aGlzLnNlbmRNZXRob2REaWFsb2dDbGlja2VkLmVtaXQoZGF0YSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU3RvY2tUcmFuc2ZlckNsaWNrKGV2ZW50OiBBcnRpY2xlRGV0YWlsc0JvKTogdm9pZCB7XHJcbiAgICB0aGlzLmFydGljbGVEZXRhaWxzID0gZXZlbnQ7XHJcbiAgICB0aGlzLnNob3dTdG9ja1RyYW5zZmVyID0gdHJ1ZTtcclxuICB9XHJcbiAgcHVibGljIG9uUm93U2VsZWN0ZWQocm93OiBBcnRpY2xlRGV0YWlsc0JvKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdGVkUm93ID0gcm93O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uT2tDbGlja1NlbmRMb2NhdGlvbnMocm93OiBBcnRpY2xlRGV0YWlsc0JvKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhID0gcm93O1xyXG4gICAgdGhpcy5uZXdTdG9ja0xpbmUgPSBmYWxzZTtcclxuICAgIHRoaXMuc2hvd0NvbmZpcm1hdGlvbkRpYWxvZyA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlQWRkUm93KCkge1xyXG4gICAgaWYgKCF0aGlzLmRhdGE/Lmxlbmd0aCkge1xyXG4gICAgICB0aGlzLmRhdGEgPSBbXTtcclxuICAgIH1cclxuICAgIHRoaXMuZGF0YS5wdXNoKG5ldyBBcnRpY2xlRGV0YWlsc0JvKCkpO1xyXG4gICAgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YSA9IHRoaXMuZGF0YVsodGhpcy5kYXRhLmxlbmd0aCAtIDEpXTtcclxuICAgIHRoaXMubmV3U3RvY2tMaW5lID0gdHJ1ZTtcclxuICAgIHRoaXMuc2hvd0NvbmZpcm1hdGlvbkRpYWxvZyA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlT2tDbGljaygpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuc2VsZWN0ZWQgPSB0cnVlO1xyXG4gICAgaWYgKHRoaXMuYXJ0aWNsZUZsYXQuZ29vZElkKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuZ29vZElkID0gdGhpcy5hcnRpY2xlRmxhdC5nb29kSWQ7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuYXJ0aWNsZURldGFpbHNJbmZvcm1hdGlvbi5nb29kSWQpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5nb29kSWQgPSBwYXJzZUludCh0aGlzLmFydGljbGVEZXRhaWxzSW5mb3JtYXRpb24uZ29vZElkKTtcclxuICAgIH1cclxuICAgIHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuZW50cnlEYXRlID0gbmV3IERhdGUoKTtcclxuICAgIHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEud2FyZWhvdXNlTm8gPSB0aGlzLndhcmVob3VzZU5vO1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRMb2NhdGlvbk5vKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEubG9jYXRpb25ObyA9IHRoaXMuc2VsZWN0ZWRMb2NhdGlvbk5vPy50b1N0cmluZygpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLnVwZGF0ZUFydGljbGVEZXRhaWxzKHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEpLnRoZW4ocmVzdWx0ID0+IHtcclxuICAgICAgICB0aGlzLmFydGljbGVEZXRhaWxzSW5mb3JtYXRpb24uZ29vZElkID0gdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5nb29kSWQ/LnRvU3RyaW5nKCk7XHJcbiAgICAgICAgdGhpcy5hcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uLndhcmVob3VzZU51bWJlciA9IHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEud2FyZWhvdXNlTm87XHJcbiAgICAgICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldEFydGljbGVEZXRhaWxzKHRoaXMuYXJ0aWNsZURldGFpbHNJbmZvcm1hdGlvbikudGhlbigoZGV0YWlscykgPT4ge1xyXG4gICAgICAgICAgdGhpcy5kYXRhID0gZGV0YWlscztcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICAgIHRoaXMuc2hvd0NvbmZpcm1hdGlvbkRpYWxvZyA9IGZhbHNlO1xyXG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVN0b2NrU3RhdHVzQ2hhbmdlKHN0YXR1czogU3RvY2tTdGF0dXMpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuc3RvY2tTdGF0ZUlkID0gc3RhdHVzLnN0b2NrU3RhdGVJZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVTdG9ja1N0YXR1c1JlbWFya0NoYW5nZShyZW1hcms6IHN0cmluZykge1xyXG4gICAgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5zdG9ja1N0YXRlUmVtYXJrID0gcmVtYXJrO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGRpc2FibGVkKCkge1xyXG4gICAgcmV0dXJuICghdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YT8uc3RvY2tTdGF0ZUlkICYmIHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGE/LnN0b2NrU3RhdGVSZW1hcms/Lmxlbmd0aCA8PSAxKTtcclxuICB9XHJcblxyXG5cclxuICBwdWJsaWMgc3RhdHVzRm9ySWQoaWQ6IG51bWJlcikge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvY2tTdGF0dXMuZmluZChzdGF0dXMgPT4gc3RhdHVzLnN0b2NrU3RhdGVJZCA9PT0gaWQpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGxvY2F0aW9uRm9yTnVtYmVyKG51bWJlcjogbnVtYmVyKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9ja0xvY2F0aW9ucz8uZmluZChsb2NhdGlvbiA9PiBsb2NhdGlvbi5sb2NhdGlvbk5vID09PSBudW1iZXI/LnRvU3RyaW5nKCkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGxvY2F0aW9uRm9yRGVzY3JpcHRpb24obG9jYXRpb25Obzogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIC8vIEZpbmQgdGhlIGxvY2F0aW9uIGluIHN0b2NrTG9jYXRpb25zIGJ5IGxvY2F0aW9uTm9cclxuICAgIGNvbnN0IGxvY2F0aW9uID0gdGhpcy5zdG9ja0xvY2F0aW9ucy5maW5kKGxvYyA9PiBsb2MubG9jYXRpb25ObyA9PT0gbG9jYXRpb25Obyk7XHJcbiAgICAvLyBJZiBsb2NhdGlvbiBpcyBmb3VuZCBhbmQgaXQgaGFzIGEgbm9uLWVtcHR5IGRlc2NyaXB0aW9uLCByZXR1cm4gZGVzY3JpcHRpb25cclxuICAgIC8vIElmIGxvY2F0aW9uIGlzIG5vdCBmb3VuZCBvciBkZXNjcmlwdGlvbiBpcyBlbXB0eSwgcmV0dXJuIGxvY2F0aW9uTm9cclxuICAgIHJldHVybiBsb2NhdGlvbiAmJiBsb2NhdGlvbi5kZXNjcmlwdGlvbiAmJiBsb2NhdGlvbi5kZXNjcmlwdGlvbi50cmltKCkgIT09ICcnID8gbG9jYXRpb24uZGVzY3JpcHRpb24gOiBsb2NhdGlvbk5vO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGFzeW5jIGdldERhdGEoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBjb25zdCByZXF1ZXN0OiBBcnRpY2xlU3RvY2tNYW5hZ2VtZW50ID0gbmV3IEFydGljbGVTdG9ja01hbmFnZW1lbnQoKTtcclxuICAgIHJlcXVlc3QuZ29vZElkID0gdGhpcy5nb29kSWQudG9TdHJpbmcoKTtcclxuICAgIHJlcXVlc3Qud2FyZWhvdXNlTnVtYmVyID0gdGhpcy53YXJlaG91c2VObztcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRBcnRpY2xlRGV0YWlscyhyZXF1ZXN0KS50aGVuKChkZXRhaWxzKSA9PiB7XHJcbiAgICAgIHRoaXMuZGF0YSA9IGRldGFpbHM7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuX2dldFdhcmVob3VzZUxvY2F0aW9ucygpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0V2FyZWhvdXNlTG9jYXRpb25zKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc3RvY2tTZXJ2aWNlLmdldFN0b2NrTWFuYWdlbWVudExvY2F0aW9ucyh0aGlzLndhcmVob3VzZU5vKS50aGVuKChyZXN1bHQ6IFN0b2NrTG9jYXRpb25bXSkgPT4ge1xyXG4gICAgICB0aGlzLnN0b2NrTG9jYXRpb25zID0gcmVzdWx0O1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlVG9nZ2xlUG9wdXAoKSB7XHJcbiAgICB0aGlzLnNob3dDb25maXJtYXRpb25EaWFsb2cgPSAhdGhpcy5zaG93Q29uZmlybWF0aW9uRGlhbG9nO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVBvcHVwU2F2ZSggc2F2ZWQ6IGJvb2xlYW4pIHtcclxuICAgIGlmKCFzYXZlZCkge1xyXG4gICAgICB0aGlzLmRhdGEuc3BsaWNlKCh0aGlzLmRhdGEubGVuZ3RoIC0gMSksIDEpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuIl19
327
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2stbG9jYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc3RvY2svY29tcG9uZW50cy9zdG9jay1sb2NhdGlvbi9zdG9jay1sb2NhdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUNOLGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUN4RSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDaEQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBRS9ELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDJEQUEyRCxDQUFDO0FBQ2pHLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBT3JGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBMkhuRSxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsa0JBQWtCO0lBcUU1RCxZQUNTLGdCQUFrQyxFQUNqQyxhQUEyQixFQUMzQixlQUFrQztRQUUxQyxLQUFLLEVBQUUsQ0FBQztRQUpELHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDakMsa0JBQWEsR0FBYixhQUFhLENBQWM7UUFDM0Isb0JBQWUsR0FBZixlQUFlLENBQW1CO1FBdkU1QixVQUFLLEdBQWdCLElBQUksQ0FBQztRQWdCbkMsNEJBQXVCLEdBQXFCLEVBQUUsQ0FBQztRQUcvQyxxQkFBZ0IsR0FBVSxFQUFFLENBQUM7UUFHN0Isa0JBQWEsR0FBVSxFQUFFLENBQUM7UUFTMUIs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QU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQzdDO0lBQ0gsQ0FBQzs7O1lBelZGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsbUJBQW1CO2dCQUM3QixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0hUO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDOzs7WUF0SU8sZ0JBQWdCO1lBRWhCLFlBQVk7WUFabEIsaUJBQWlCOzs7MEJBb0poQixLQUFLO3NDQWFMLEtBQUs7K0JBR0wsS0FBSzs0QkFHTCxLQUFLO2dDQUdMLEtBQUs7MEJBR0wsS0FBSztnQ0FHTCxLQUFLO2tDQUdMLE1BQU07c0NBR04sTUFBTTtzQ0FHTixNQUFNO21DQUVOLE1BQU07Z0NBaUJOLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtBcnRpY2xlU3RvY2sgYXMgQXJ0aWNsZVN0b2NrQm99IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtc3RvY2suYm8nO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtJY29ufSBmcm9tICcuLi8uLi8uLi8uLi9lbnVtL2ljb24uZW51bSc7XHJcbmltcG9ydCB7U3RvY2tTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlL3N0b2NrLnNlcnZpY2UnO1xyXG5pbXBvcnQge1N0b2NrTWFuYWdlbWVudFdhcmVob3VzZXN9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLW1hbmFnZW1lbnQtd2FyZWhvdXNlcy5ibyc7XHJcbmltcG9ydCB7QXJ0aWNsZVN0b2NrTWFuYWdlbWVudH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1zdG9jay1tYW5hZ2VtZW50JztcclxuaW1wb3J0IHtBcnRpY2xlRGV0YWlsc0JvfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWRldGFpbHMuYm8nO1xyXG5pbXBvcnQge1N0b2NrTG9jYXRpb259IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLWxvY2F0aW9uLmJvJztcclxuaW1wb3J0IHtQcmludFByaWNlU3RpY2tlcnN9IGZyb20gJ0Bjb2xpam5pdC9zaGFyZWRhcGkvYnVpbGQvbW9kZWwvcHJpbnQtcHJpY2Utc3RpY2tlcnMuYm8nO1xyXG5pbXBvcnQge1N0b2NrU3RhdHVzfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9zdG9jay1zdGF0dXMuYm8nO1xyXG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7QXJ0aWNsZUV4dGVuZGVkfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWV4dGVuZGVkLmJvJztcclxuaW1wb3J0IHtBcnRpY2xlRmxhdH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1mbGF0LmJvJztcclxuaW1wb3J0IHtCYXNlU3RvY2tDb21wb25lbnR9IGZyb20gJy4uLy4uL2Jhc2UvYmFzZS1zdG9jay5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjby1zdG9jay1sb2NhdGlvbicsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLWdyaWRcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdG9jay10cmFuc2Zlci13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPGNvLXN0b2NrLXRyYW5zZmVyICpuZ0lmPVwic2hvd1N0b2NrVHJhbnNmZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInN0b2NrLXRyYW5zZmVyLWRpYWxvZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthcnRpY2xlVG9UcmFuc2Zlcl09XCJhcnRpY2xlRGV0YWlsc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChoYW5kbGVTdGlja2VyQ2xpY2tlZCk9XCJoYW5kbGVTdGlja2VyQ2xpY2tlZC5lbWl0KCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWxsV2FyZWhvdXNlc109XCJhbGxXYXJlaG91c2VzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3N0b2NrTG9jYXRpb25zXT1cInN0b2NrTG9jYXRpb25zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2FydGljbGVGbGF0XT1cImFydGljbGVGbGF0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dTdG9ja1RyYW5zZmVyXT1cInNob3dTdG9ja1RyYW5zZmVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNob3dTdG9ja1RyYW5zZmVyQ2hhbmdlKT1cIm9uU2hvd1N0b2NrVHJhbnNmZXJDaGFuZ2UoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICAgIDwvY28tc3RvY2stdHJhbnNmZXI+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxjby1zdG9jay1sb2NhdGlvbi1wb3B1cFxyXG4gICAgICAgICAgICAgICAgICBbc2VsZWN0ZWRXYXJlaG91c2VdPVwic2VsZWN0ZWRXYXJlaG91c2VcIlxyXG4gICAgICAgICAgICAgICAgICBbYXJ0aWNsZUZsYXRdPVwiYXJ0aWNsZUZsYXRcIlxyXG4gICAgICAgICAgICAgICAgICBbc2VsZWN0ZWRMb2NhdGlvbk5vXT1cInNlbGVjdGVkTG9jYXRpb25Ob1wiXHJcbiAgICAgICAgICAgICAgICAgIFtzdG9ja0xvY2F0aW9uc109XCJzdG9ja0xvY2F0aW9uc1wiXHJcbiAgICAgICAgICAgICAgICAgIFthcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uXT1cImFydGljbGVEZXRhaWxzSW5mb3JtYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICBbYXJ0aWNsZVN0b2NrSW5mb109XCJkYXRhXCJcclxuICAgICAgICAgICAgICAgICAgW3NlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhXT1cInNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhXCJcclxuICAgICAgICAgICAgICAgICAgW3Nob3dDb25maXJtYXRpb25EaWFsb2ddPVwic2hvd0NvbmZpcm1hdGlvbkRpYWxvZ1wiXHJcbiAgICAgICAgICAgICAgICAgIFtuZXdTdG9ja0xpbmVdPVwibmV3U3RvY2tMaW5lXCJcclxuICAgICAgICAgICAgICAgICAgW2RlbGV0ZVN0b2NrTGluZV09XCJkZWxldGVTdG9ja0xpbmVcIlxyXG4gICAgICAgICAgICAgICAgICBbc3RvY2tTdGF0dXNdPVwic3RvY2tTdGF0dXNcIlxyXG4gICAgICAgICAgICAgICAgICAodG9nZ2xlUG9wdXBFdmVudCk9XCJoYW5kbGVUb2dnbGVQb3B1cCgpXCJcclxuICAgICAgICAgICAgICAgICAgKHNhdmVFdmVudCk9XCJoYW5kbGVQb3B1cFNhdmUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICh1cGRhdGVHcmlkRGF0YSk9XCJkYXRhID0gJGV2ZW50XCJcclxuXHJcbiAgICAgICAgICA+PC9jby1zdG9jay1sb2NhdGlvbi1wb3B1cD5cclxuICAgICAgICAgIDxkaXYgIGNsYXNzPVwic3RvY2stdHJhbnNmZXItYWRkXCI+XHJcbiAgICAgICAgICAgIDxjby1pY29uIGNsYXNzPVwibWVudS1pY29uXCIgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5QbHVzUmVndWxhcilcIlxyXG4gICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlQWRkUm93KClcIj48L2NvLWljb24+XHJcbiAgICAgICAgICAgIDxjby1pY29uICpuZ0lmPVwic2VsZWN0ZWRSb3dcIiBjbGFzcz1cIm1lbnUtaWNvblwiIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQXJyb3dSaWdodEFycm93TGVmdFJlZ3VsYXIpXCJcclxuICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZVN0b2NrVHJhbnNmZXJDbGljayhzZWxlY3RlZFJvdylcIj48L2NvLWljb24+XHJcbiAgICAgICAgICAgIDxjby1pY29uICpuZ0lmPVwic2VsZWN0ZWRSb3dcIiBjbGFzcz1cIm1lbnUtaWNvblwiIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuU29saWRCYXJjb2RlUmVhZFRhZylcIlxyXG4gICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib3BlblNlbmRNZXRob2REaWFsb2coc2VsZWN0ZWRSb3cpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgICA8Y28taWNvbiAqbmdJZj1cInNlbGVjdGVkUm93XCIgY2xhc3M9XCJtZW51LWljb25cIiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLlRyYXNoQ2FuUmVndWxhcilcIlxyXG4gICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlRGVsZXRlUm93KHNlbGVjdGVkUm93KVwiPjwvY28taWNvbj5cclxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjYW5ub3REZWxldGVcIiBjbGFzcz1cIm1pbmltdW0tc3RvY2tcIiBbdGV4dENvbnRlbnRdPVwiJ1NUT0NLX0JFTE9XX1pFUk9fVEVYVCcgfCBzaGFyZWRMb2NhbGl6ZVwiPjwvc3Bhbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGNvLXNpbXBsZS1ncmlkIFtkYXRhXT1cImRhdGFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2ltcGxlLWdyaWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtzaG93QWRkXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbaW5saW5lRWRpdF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dUb29sYmFyXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIChhZGRSb3cpPVwiaGFuZGxlQWRkUm93KClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIChzZWxlY3RSb3cpPVwib25Sb3dTZWxlY3RlZCgkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInU1RPQ0snIHwgc2hhcmVkTG9jYWxpemVcIiBbZmllbGRdPVwiJ2Ftb3VudEluU3RvY2snXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjdGVtcGxhdGUgbGV0LXJvdz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0b2NrLWFtb3VudFwiIChjbGljayk9XCJvbk9rQ2xpY2tTZW5kTG9jYXRpb25zKHJvdylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8Y28taWNvbiBjbGFzcz1cIm1lbnUtaWNvblwiIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuRWRpdFBlblJlZ3VsYXIpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCJyb3dbJ2Ftb3VudEluU3RvY2snXVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgIDwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW3dpZHRoXT1cIjE1MFwiIFtoZWFkZXJUZXh0XT1cIidMT0NBVElPTicgfCBzaGFyZWRMb2NhbGl6ZVwiIFtmaWVsZF09XCInbG9jYXRpb25ObydcIj5cclxuICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNlZGl0VGVtcGxhdGUgbGV0LXJvdz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGNvLWxpc3Qtb2YtdmFsdWVzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlbF09XCJsb2NhdGlvbkZvck51bWJlcihyb3dbJ2xvY2F0aW9uTm8nXSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJzdG9ja0xvY2F0aW9uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNwbGF5RmllbGRdPVwiJ2Rlc2NyaXB0aW9uJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInTE9DQVRJT04nIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJsb2NhdGlvbkNoYW5nZWQocm93LCAkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgID48L2NvLWxpc3Qtb2YtdmFsdWVzPlxyXG4gICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgIDwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gKm5nSWY9XCJhcnRpY2xlRmxhdD8uYmF0Y2hcIiBbaGVhZGVyVGV4dF09XCInQkFUQ0gnIHwgc2hhcmVkTG9jYWxpemVcIiBbZmllbGRdPVwiJ2JhdGNoTm8nXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZWRpdFRlbXBsYXRlIGxldC1yb3c9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxjby1pbnB1dC10ZXh0IFttb2RlbF09XCJzZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5iYXRjaE5vXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQkFUQ0gnIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cInJvd1snYmF0Y2hObyddID0gJGV2ZW50XCJcclxuICAgICAgICAgICAgICAgICAgICAgID48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgPC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiAqbmdJZj1cImFydGljbGVGbGF0Py5zZXJpYWxcIiBbaGVhZGVyVGV4dF09XCInU0VSSUFMX05PJyB8IHNoYXJlZExvY2FsaXplXCIgW2ZpZWxkXT1cIidzZXJpYWxObydcIj5cclxuICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNlZGl0VGVtcGxhdGUgbGV0LXJvdz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGNvLWlucHV0LXRleHQgW21vZGVsXT1cInNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLnNlcmlhbE5vXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInU0VSSUFMX05PJyB8IHNoYXJlZExvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJyb3dbJ3NlcmlhbE5vJ10gPSAkZXZlbnRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICA8L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidBTExPQ0FURUQnIHwgc2hhcmVkTG9jYWxpemVcIiBbZmllbGRdPVwiJ3N0b2NrQXNzaWduZWQnXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZWRpdFRlbXBsYXRlIGxldC1yb3c9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCJyb3dbJ3N0b2NrQXNzaWduZWQnXVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICA8L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidBVkFJTEFCTEVfU1RPQ0snIHwgc2hhcmVkTG9jYWxpemVcIiBbZmllbGRdPVwiJ2Ftb3VudEluU3RvY2tGcmVlJ1wiPlxyXG4gICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2VkaXRUZW1wbGF0ZSBsZXQtcm93PVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwicm93WydhbW91bnRJblN0b2NrRnJlZSddXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgIDwvY28tc2ltcGxlLWdyaWQtY29sdW1uPlxyXG4gICAgICAgICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jb2x1bW4gW2hlYWRlclRleHRdPVwiJ1ZBTFVUQScgfCBzaGFyZWRMb2NhbGl6ZVwiIFtmaWVsZF09XCInY3VycmVuY3knXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZWRpdFRlbXBsYXRlIGxldC1yb3c9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCJyb3dbJ2N1cnJlbmN5J11cIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgPC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgICAgICAgPGNvLXNpbXBsZS1ncmlkLWNvbHVtbiBbaGVhZGVyVGV4dF09XCInUFVSQ0hBU0VfUFJJQ0UnIHwgc2hhcmVkTG9jYWxpemVcIiBbZmllbGRdPVwiJ3B1cmNoYXNlUHJpY2UnXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZWRpdFRlbXBsYXRlIGxldC1yb3c9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCJyb3dbJ3B1cmNoYXNlUHJpY2UnXVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICA8L2NvLXNpbXBsZS1ncmlkLWNvbHVtbj5cclxuICAgICAgICAgICAgICA8Y28tc2ltcGxlLWdyaWQtY29sdW1uIFtoZWFkZXJUZXh0XT1cIidTVVBQTElFUk5SJyB8IHNoYXJlZExvY2FsaXplXCIgW2ZpZWxkXT1cIidzdXBwbGllck5vJ1wiPlxyXG4gICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2VkaXRUZW1wbGF0ZSBsZXQtcm93PVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwicm93WydzdXBwbGllck5vJ11cIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgPC9jby1zaW1wbGUtZ3JpZC1jb2x1bW4+XHJcbiAgICAgICAgICA8L2NvLXNpbXBsZS1ncmlkPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGNvLXNlbmQtbWV0aG9kLWRpYWxvZyAqbmdJZj1cInNob3dTZW5kTWV0aG9kRGlhbG9nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJzaG93U2VuZE1ldGhvZERpYWxvZyA9IGZhbHNlXCI+XHJcblxyXG4gICAgICA8L2NvLXNlbmQtbWV0aG9kLWRpYWxvZz5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFN0b2NrTG9jYXRpb25Db21wb25lbnQgZXh0ZW5kcyBCYXNlU3RvY2tDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGljb25zOiB0eXBlb2YgSWNvbiA9IEljb247XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCB3YXJlaG91c2VObyh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICBpZiAodGhpcy5fd2FyZWhvdXNlTm8gIT09IHZhbHVlKSB7XHJcbiAgICAgIHRoaXMuX3dhcmVob3VzZU5vID0gdmFsdWU7XHJcbiAgICAgIHRoaXMuZ2V0RGF0YSgpO1xyXG4gICAgICB0aGlzLl9nZXRXYXJlaG91c2VMb2NhdGlvbnMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgd2FyZWhvdXNlTm8oKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl93YXJlaG91c2VObztcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFydGljbGVTdG9ja0luZm9ybWF0aW9uOiBBcnRpY2xlU3RvY2tCb1tdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFydGljbGVXYXJlaG91c2U6IGFueVtdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbFdhcmVob3VzZXM6IGFueVtdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNob3dTdG9ja1RyYW5zZmVyOiBib29sZWFuO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhcnRpY2xlRmxhdDogQXJ0aWNsZUZsYXQ7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGRhdGFXYXJlSG91c2VDb2RlOiBTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzW10gPSBbXTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHJlYWRvbmx5IHRyYW5zZmVySWNvbkNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxBcnRpY2xlU3RvY2tCbz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyByZWFkb25seSBzZW5kTWV0aG9kRGlhbG9nQ2xpY2tlZDogRXZlbnRFbWl0dGVyPFByaW50UHJpY2VTdGlja2Vycz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBPdXRwdXQoKSBzaG93U3RvY2tUcmFuc2ZlckNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGhhbmRsZVN0aWNrZXJDbGlja2VkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgcHVibGljIGFydGljbGVEZXRhaWxzOiBBcnRpY2xlRGV0YWlsc0JvO1xyXG4gIHB1YmxpYyBzaG93Q29uZmlybWF0aW9uRGlhbG9nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIG5ld1N0b2NrTGluZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBkZWxldGVTdG9ja0xpbmU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgY2Fubm90RGVsZXRlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHNob3dDb25maXJtU3RvY2tSb3c6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcHVibGljIGFydGljbGVEZXRhaWxzSW5mb3JtYXRpb246IEFydGljbGVTdG9ja01hbmFnZW1lbnQgPSBuZXcgQXJ0aWNsZVN0b2NrTWFuYWdlbWVudCgpO1xyXG5cclxuICBwdWJsaWMgc3RvY2tTdGF0dXM6IFN0b2NrU3RhdHVzW10gPSBbXTtcclxuICBwdWJsaWMgc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGE6IEFydGljbGVEZXRhaWxzQm8gPSBuZXcgQXJ0aWNsZURldGFpbHNCbygpO1xyXG5cclxuICBwdWJsaWMgc2VsZWN0ZWRMb2NhdGlvbk5vOiBzdHJpbmc7XHJcbiAgcHVibGljIGRhdGE6IEFydGljbGVEZXRhaWxzQm9bXSA9IFtdO1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNlbGVjdGVkV2FyZWhvdXNlOiBTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzO1xyXG4gIHB1YmxpYyBzdG9ja0xvY2F0aW9uczogU3RvY2tMb2NhdGlvbltdID0gW107XHJcblxyXG4gIHB1YmxpYyBzZWxlY3RlZFJvdzogQXJ0aWNsZURldGFpbHNCbyB8IG51bGwgPSBudWxsO1xyXG4gIHB1YmxpYyBzaG93U2VuZE1ldGhvZERpYWxvZzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwcml2YXRlIF93YXJlaG91c2VObzogbnVtYmVyO1xyXG4gIHByaXZhdGUgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9zdG9ja1NlcnZpY2U6IFN0b2NrU2VydmljZSxcclxuICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRTdG9ja1N0YXRlKCkudGhlbihyZXN1bHQgPT4ge1xyXG4gICAgICB0aGlzLnN0b2NrU3RhdHVzID0gcmVzdWx0O1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuX3N1YnMuZm9yRWFjaChzID0+IHMudW5zdWJzY3JpYmUoKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25TaG93U3RvY2tUcmFuc2ZlckNoYW5nZShzaG93OiBib29sZWFuKSB7XHJcbiAgICB0aGlzLnNob3dTdG9ja1RyYW5zZmVyID0gc2hvdztcclxuICAgIHRoaXMuc2hvd1N0b2NrVHJhbnNmZXJDaGFuZ2UuZW1pdCh0aGlzLnNob3dTdG9ja1RyYW5zZmVyKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkxvY2F0aW9uRHJvcGRvd25DbGljaygpOiB2b2lkIHtcclxuICAgIHRoaXMuX2dldFdhcmVob3VzZUxvY2F0aW9ucygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGxvY2F0aW9uQ2hhbmdlZChyb3c6IEFydGljbGVEZXRhaWxzQm8sIGV2ZW50OiBTdG9ja0xvY2F0aW9uKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdGVkTG9jYXRpb25ObyA9IGV2ZW50LmxvY2F0aW9uTm87XHJcbiAgICByb3cubG9jYXRpb25ObyA9IGV2ZW50LmxvY2F0aW9uTm87XHJcbiAgICB0aGlzLm9uTG9jYXRpb25Ecm9wZG93bkNsaWNrKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYW1vdW50SW5TdG9ja0NoYW5nZWQoZGF0YSk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YS5hbW91bnRJblN0b2NrID0gZGF0YTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvcGVuU2VuZE1ldGhvZERpYWxvZyhkYXRhKTogdm9pZCB7XHJcbiAgICB0aGlzLnNob3dTZW5kTWV0aG9kRGlhbG9nID0gdHJ1ZTtcclxuICAgIHRoaXMuc2VuZE1ldGhvZERpYWxvZ0NsaWNrZWQuZW1pdChkYXRhKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVTdG9ja1RyYW5zZmVyQ2xpY2soZXZlbnQ6IEFydGljbGVEZXRhaWxzQm8pOiB2b2lkIHtcclxuICAgIHRoaXMuYXJ0aWNsZURldGFpbHMgPSBldmVudDtcclxuICAgIHRoaXMuc2hvd1N0b2NrVHJhbnNmZXIgPSB0cnVlO1xyXG4gIH1cclxuICBwdWJsaWMgb25Sb3dTZWxlY3RlZChyb3c6IEFydGljbGVEZXRhaWxzQm8pOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRSb3cgPSByb3c7XHJcbiAgICB0aGlzLmNhbm5vdERlbGV0ZSA9IGZhbHNlO1xyXG4gIH1cclxuICBwdWJsaWMgaGFuZGxlRGVsZXRlUm93KHJvdzogQXJ0aWNsZURldGFpbHNCbyk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YSA9IHJvdztcclxuICAgIGlmICh0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLnN0b2NrQXNzaWduZWQgPiAwKSB7XHJcbiAgICAgIHRoaXMuZGVsZXRlU3RvY2tMaW5lID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuc2hvd0NvbmZpcm1hdGlvbkRpYWxvZyA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmNhbm5vdERlbGV0ZSA9IHRydWU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmRlbGV0ZVN0b2NrTGluZSA9IHRydWU7XHJcbiAgICAgIHRoaXMuc2hvd0NvbmZpcm1hdGlvbkRpYWxvZyA9IHRydWU7XHJcbiAgICAgIHRoaXMuY2Fubm90RGVsZXRlID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHB1YmxpYyBvbk9rQ2xpY2tTZW5kTG9jYXRpb25zKHJvdzogQXJ0aWNsZURldGFpbHNCbyk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZEFydGljbGVEZXRhaWxzRGF0YSA9IHJvdztcclxuICAgIHRoaXMubmV3U3RvY2tMaW5lID0gZmFsc2U7XHJcbiAgICB0aGlzLnNob3dDb25maXJtYXRpb25EaWFsb2cgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUFkZFJvdygpIHtcclxuICAgIGlmICghdGhpcy5kYXRhPy5sZW5ndGgpIHtcclxuICAgICAgdGhpcy5kYXRhID0gW107XHJcbiAgICB9XHJcbiAgICB0aGlzLmRhdGEucHVzaChuZXcgQXJ0aWNsZURldGFpbHNCbygpKTtcclxuICAgIHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEgPSB0aGlzLmRhdGFbKHRoaXMuZGF0YS5sZW5ndGggLSAxKV07XHJcbiAgICB0aGlzLm5ld1N0b2NrTGluZSA9IHRydWU7XHJcbiAgICB0aGlzLnNob3dDb25maXJtYXRpb25EaWFsb2cgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZU9rQ2xpY2soKSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLnNlbGVjdGVkID0gdHJ1ZTtcclxuICAgIGlmICh0aGlzLmFydGljbGVGbGF0Lmdvb2RJZCkge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLmdvb2RJZCA9IHRoaXMuYXJ0aWNsZUZsYXQuZ29vZElkO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmFydGljbGVEZXRhaWxzSW5mb3JtYXRpb24uZ29vZElkKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuZ29vZElkID0gcGFyc2VJbnQodGhpcy5hcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uLmdvb2RJZCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLmVudHJ5RGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgICB0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLndhcmVob3VzZU5vID0gdGhpcy53YXJlaG91c2VObztcclxuICAgIGlmICh0aGlzLnNlbGVjdGVkTG9jYXRpb25Obykge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLmxvY2F0aW9uTm8gPSB0aGlzLnNlbGVjdGVkTG9jYXRpb25Obz8udG9TdHJpbmcoKTtcclxuICAgIH1cclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS51cGRhdGVBcnRpY2xlRGV0YWlscyh0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhKS50aGVuKHJlc3VsdCA9PiB7XHJcbiAgICAgICAgdGhpcy5hcnRpY2xlRGV0YWlsc0luZm9ybWF0aW9uLmdvb2RJZCA9IHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuZ29vZElkPy50b1N0cmluZygpO1xyXG4gICAgICAgIHRoaXMuYXJ0aWNsZURldGFpbHNJbmZvcm1hdGlvbi53YXJlaG91c2VOdW1iZXIgPSB0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLndhcmVob3VzZU5vO1xyXG4gICAgICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRBcnRpY2xlRGV0YWlscyh0aGlzLmFydGljbGVEZXRhaWxzSW5mb3JtYXRpb24pLnRoZW4oKGRldGFpbHMpID0+IHtcclxuICAgICAgICAgIHRoaXMuZGF0YSA9IGRldGFpbHM7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgICB0aGlzLnNob3dDb25maXJtYXRpb25EaWFsb2cgPSBmYWxzZTtcclxuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVTdG9ja1N0YXR1c0NoYW5nZShzdGF0dXM6IFN0b2NrU3RhdHVzKSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhLnN0b2NrU3RhdGVJZCA9IHN0YXR1cy5zdG9ja1N0YXRlSWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU3RvY2tTdGF0dXNSZW1hcmtDaGFuZ2UocmVtYXJrOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGEuc3RvY2tTdGF0ZVJlbWFyayA9IHJlbWFyaztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBkaXNhYmxlZCgpIHtcclxuICAgIHJldHVybiAoIXRoaXMuc2VsZWN0ZWRBcnRpY2xlRGV0YWlsc0RhdGE/LnN0b2NrU3RhdGVJZCAmJiB0aGlzLnNlbGVjdGVkQXJ0aWNsZURldGFpbHNEYXRhPy5zdG9ja1N0YXRlUmVtYXJrPy5sZW5ndGggPD0gMSk7XHJcbiAgfVxyXG5cclxuXHJcbiAgcHVibGljIHN0YXR1c0ZvcklkKGlkOiBudW1iZXIpIHtcclxuICAgIHJldHVybiB0aGlzLnN0b2NrU3RhdHVzLmZpbmQoc3RhdHVzID0+IHN0YXR1cy5zdG9ja1N0YXRlSWQgPT09IGlkKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBsb2NhdGlvbkZvck51bWJlcihudW1iZXI6IG51bWJlcikge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvY2tMb2NhdGlvbnM/LmZpbmQobG9jYXRpb24gPT4gbG9jYXRpb24ubG9jYXRpb25ObyA9PT0gbnVtYmVyPy50b1N0cmluZygpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBsb2NhdGlvbkZvckRlc2NyaXB0aW9uKGxvY2F0aW9uTm86IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAvLyBGaW5kIHRoZSBsb2NhdGlvbiBpbiBzdG9ja0xvY2F0aW9ucyBieSBsb2NhdGlvbk5vXHJcbiAgICBjb25zdCBsb2NhdGlvbiA9IHRoaXMuc3RvY2tMb2NhdGlvbnMuZmluZChsb2MgPT4gbG9jLmxvY2F0aW9uTm8gPT09IGxvY2F0aW9uTm8pO1xyXG4gICAgLy8gSWYgbG9jYXRpb24gaXMgZm91bmQgYW5kIGl0IGhhcyBhIG5vbi1lbXB0eSBkZXNjcmlwdGlvbiwgcmV0dXJuIGRlc2NyaXB0aW9uXHJcbiAgICAvLyBJZiBsb2NhdGlvbiBpcyBub3QgZm91bmQgb3IgZGVzY3JpcHRpb24gaXMgZW1wdHksIHJldHVybiBsb2NhdGlvbk5vXHJcbiAgICByZXR1cm4gbG9jYXRpb24gJiYgbG9jYXRpb24uZGVzY3JpcHRpb24gJiYgbG9jYXRpb24uZGVzY3JpcHRpb24udHJpbSgpICE9PSAnJyA/IGxvY2F0aW9uLmRlc2NyaXB0aW9uIDogbG9jYXRpb25ObztcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBhc3luYyBnZXREYXRhKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgY29uc3QgcmVxdWVzdDogQXJ0aWNsZVN0b2NrTWFuYWdlbWVudCA9IG5ldyBBcnRpY2xlU3RvY2tNYW5hZ2VtZW50KCk7XHJcbiAgICByZXF1ZXN0Lmdvb2RJZCA9IHRoaXMuZ29vZElkLnRvU3RyaW5nKCk7XHJcbiAgICByZXF1ZXN0LndhcmVob3VzZU51bWJlciA9IHRoaXMud2FyZWhvdXNlTm87XHJcbiAgICB0aGlzLl9zdG9ja1NlcnZpY2UuZ2V0QXJ0aWNsZURldGFpbHMocmVxdWVzdCkudGhlbigoZGV0YWlscykgPT4ge1xyXG4gICAgICB0aGlzLmRhdGEgPSBkZXRhaWxzO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLl9nZXRXYXJlaG91c2VMb2NhdGlvbnMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2dldFdhcmVob3VzZUxvY2F0aW9ucygpOiB2b2lkIHtcclxuICAgIHRoaXMuX3N0b2NrU2VydmljZS5nZXRTdG9ja01hbmFnZW1lbnRMb2NhdGlvbnModGhpcy53YXJlaG91c2VObykudGhlbigocmVzdWx0OiBTdG9ja0xvY2F0aW9uW10pID0+IHtcclxuICAgICAgdGhpcy5zdG9ja0xvY2F0aW9ucyA9IHJlc3VsdDtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVRvZ2dsZVBvcHVwKCkge1xyXG4gICAgdGhpcy5zaG93Q29uZmlybWF0aW9uRGlhbG9nID0gIXRoaXMuc2hvd0NvbmZpcm1hdGlvbkRpYWxvZztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVQb3B1cFNhdmUoIHNhdmVkOiBib29sZWFuKSB7XHJcbiAgICBpZighc2F2ZWQpIHtcclxuICAgICAgdGhpcy5kYXRhLnNwbGljZSgodGhpcy5kYXRhLmxlbmd0aCAtIDEpLCAxKTtcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -7,6 +7,7 @@ export var Icon;
7
7
  Icon["ArrowDown"] = "arrow_down";
8
8
  Icon["ArrowDownRegular"] = "arrow_down_regular";
9
9
  Icon["ArrowFatRight"] = "arrow_fat_right";
10
+ Icon["ArrowLeftRoundOpen"] = "arrow_left_round_open";
10
11
  Icon["ArrowPointDown"] = "arrow_point_down";
11
12
  Icon["ArrowPointLeft"] = "arrow_point_left";
12
13
  Icon["ArrowPointRight"] = "arrow_point_right";
@@ -67,7 +68,8 @@ export var Icon;
67
68
  Icon["TagRegular"] = "tag_regular";
68
69
  Icon["Task"] = "task";
69
70
  Icon["Trashbin"] = "trashbin";
71
+ Icon["TrashCanRegular"] = "trash_can_regular";
70
72
  Icon["Xml"] = "xml";
71
73
  Icon["XSolid"] = "x_solid";
72
74
  })(Icon || (Icon = {}));
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2VudW0vaWNvbi5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdHQUFnRztBQUVoRyxNQUFNLENBQU4sSUFBWSxJQXFFWDtBQXJFRCxXQUFZLElBQUk7SUFDWiwyQkFBbUIsQ0FBQTtJQUNuQiwyQ0FBbUMsQ0FBQTtJQUNuQyw2Q0FBcUMsQ0FBQTtJQUNyQyxnQ0FBd0IsQ0FBQTtJQUN4QiwrQ0FBdUMsQ0FBQTtJQUN2Qyx5Q0FBaUMsQ0FBQTtJQUNqQywyQ0FBbUMsQ0FBQTtJQUNuQywyQ0FBbUMsQ0FBQTtJQUNuQyw2Q0FBcUMsQ0FBQTtJQUNyQyx1Q0FBK0IsQ0FBQTtJQUMvQixxRUFBNkQsQ0FBQTtJQUM3RCw0QkFBb0IsQ0FBQTtJQUNwQixtREFBMkMsQ0FBQTtJQUMzQyxvQ0FBNEIsQ0FBQTtJQUM1QiwrQ0FBdUMsQ0FBQTtJQUN2QyxxREFBNkMsQ0FBQTtJQUM3QyxzQ0FBOEIsQ0FBQTtJQUM5QixrQ0FBMEIsQ0FBQTtJQUMxQixrQ0FBMEIsQ0FBQTtJQUMxQixxREFBNkMsQ0FBQTtJQUM3QyxzQ0FBOEIsQ0FBQTtJQUM5QiwwQ0FBa0MsQ0FBQTtJQUNsQyxvQ0FBNEIsQ0FBQTtJQUM1Qix1QkFBZSxDQUFBO0lBQ2YsaURBQXlDLENBQUE7SUFDekMsd0NBQWdDLENBQUE7SUFDaEMsa0NBQTBCLENBQUE7SUFDMUIseURBQWlELENBQUE7SUFDakQsNkJBQXFCLENBQUE7SUFDckIsMkNBQW1DLENBQUE7SUFDbkMsdUJBQWUsQ0FBQTtJQUNmLHNDQUE4QixDQUFBO0lBQzlCLDZCQUFxQixDQUFBO0lBQ3JCLDRDQUFvQyxDQUFBO0lBQ3BDLGtDQUEwQixDQUFBO0lBQzFCLGlEQUF5QyxDQUFBO0lBQ3pDLDZDQUFxQyxDQUFBO0lBQ3JDLDJDQUFtQyxDQUFBO0lBQ25DLHVDQUErQixDQUFBO0lBQy9CLHVEQUErQyxDQUFBO0lBQy9DLHFEQUE2QyxDQUFBO0lBQzdDLGlEQUF5QyxDQUFBO0lBQ3pDLHNDQUE4QixDQUFBO0lBQzlCLHlDQUFpQyxDQUFBO0lBQ2pDLHFCQUFhLENBQUE7SUFDYixpREFBeUMsQ0FBQTtJQUN6Qyw2Q0FBcUMsQ0FBQTtJQUNyQyxvQ0FBNEIsQ0FBQTtJQUM1QixxQ0FBNkIsQ0FBQTtJQUM3Qiw4Q0FBc0MsQ0FBQTtJQUN0QyxvREFBNEMsQ0FBQTtJQUM1QyxtQkFBVyxDQUFBO0lBQ1gsdURBQStDLENBQUE7SUFDL0MsdUNBQStCLENBQUE7SUFDL0Isb0NBQTRCLENBQUE7SUFDNUIsa0NBQTBCLENBQUE7SUFDMUIsdUJBQWUsQ0FBQTtJQUNmLHNDQUE4QixDQUFBO0lBQzlCLGtDQUEwQixDQUFBO0lBQzFCLDZFQUFxRSxDQUFBO0lBQ3JFLDBDQUFrQyxDQUFBO0lBQ2xDLHNEQUE4QyxDQUFBO0lBQzlDLGlEQUF5QyxDQUFBO0lBQ3pDLGtDQUEwQixDQUFBO0lBQzFCLHFCQUFhLENBQUE7SUFDYiw2QkFBcUIsQ0FBQTtJQUNyQixtQkFBVyxDQUFBO0lBQ1gsMEJBQWtCLENBQUE7QUFDdEIsQ0FBQyxFQXJFVyxJQUFJLEtBQUosSUFBSSxRQXFFZiIsInNvdXJjZXNDb250ZW50IjpbIi8qKiBBVVRPIEdFTkVSQVRFRCBGSUxFLiBETyBOT1QgQ0hBTkdFLi4gT1IgWU9VIFdJTEwgU1VGRkVSIFRIRSBDT05TRVFVRU5DRVMgT0YgWU9VUiBBQ1RJT05TICoqL1xuXG5leHBvcnQgZW51bSBJY29uIHtcbiAgICBBY2NvdW50ID0gXCJhY2NvdW50XCIsXG4gICAgQW5nbGVMZWZ0U29saWQgPSBcImFuZ2xlX2xlZnRfc29saWRcIixcbiAgICBBbmdsZVJpZ2h0U29saWQgPSBcImFuZ2xlX3JpZ2h0X3NvbGlkXCIsXG4gICAgQXJyb3dEb3duID0gXCJhcnJvd19kb3duXCIsXG4gICAgQXJyb3dEb3duUmVndWxhciA9IFwiYXJyb3dfZG93bl9yZWd1bGFyXCIsXG4gICAgQXJyb3dGYXRSaWdodCA9IFwiYXJyb3dfZmF0X3JpZ2h0XCIsXG4gICAgQXJyb3dQb2ludERvd24gPSBcImFycm93X3BvaW50X2Rvd25cIixcbiAgICBBcnJvd1BvaW50TGVmdCA9IFwiYXJyb3dfcG9pbnRfbGVmdFwiLFxuICAgIEFycm93UG9pbnRSaWdodCA9IFwiYXJyb3dfcG9pbnRfcmlnaHRcIixcbiAgICBBcnJvd1BvaW50VXAgPSBcImFycm93X3BvaW50X3VwXCIsXG4gICAgQXJyb3dSaWdodEFycm93TGVmdFJlZ3VsYXIgPSBcImFycm93X3JpZ2h0X2Fycm93X2xlZnRfcmVndWxhclwiLFxuICAgIEF0U29saWQgPSBcImF0X3NvbGlkXCIsXG4gICAgQmFyY29kZVJlYWRSZWd1bGFyID0gXCJiYXJjb2RlX3JlYWRfcmVndWxhclwiLFxuICAgIEJlbGxSZWd1bGFyID0gXCJiZWxsX3JlZ3VsYXJcIixcbiAgICBCZWxsU2xhc2hSZWd1bGFyID0gXCJiZWxsX3NsYXNoX3JlZ3VsYXJcIixcbiAgICBCcmluZ0ZvcndhcmRSZWd1bGFyID0gXCJicmluZ19mb3J3YXJkX3JlZ3VsYXJcIixcbiAgICBDaGVja0R1b3RvbmUgPSBcImNoZWNrX2R1b3RvbmVcIixcbiAgICBDaGVja1JvdW5kID0gXCJjaGVja19yb3VuZFwiLFxuICAgIENoZWNrU29saWQgPSBcImNoZWNrX3NvbGlkXCIsXG4gICAgQ2hldnJvblJpZ2h0UmVndWxhciA9IFwiY2hldnJvbl9yaWdodF9yZWd1bGFyXCIsXG4gICAgQ2xvY2tSZWd1bGFyID0gXCJjbG9ja19yZWd1bGFyXCIsXG4gICAgQ29tbWVudFJlZ3VsYXIgPSBcImNvbW1lbnRfcmVndWxhclwiLFxuICAgIENyb3NzU2tpbm55ID0gXCJjcm9zc19za2lubnlcIixcbiAgICBDdWJlcyA9IFwiY3ViZXNcIixcbiAgICBEZWxldGVMZWZ0UmVndWxhciA9IFwiZGVsZXRlX2xlZnRfcmVndWxhclwiLFxuICAgIERlbGl2ZXJ5VHJ1Y2sgPSBcImRlbGl2ZXJ5X3RydWNrXCIsXG4gICAgRGV0YWlsVmlldyA9IFwiZGV0YWlsX3ZpZXdcIixcbiAgICBEaWFncmFtUHJvamVjdFJlZ3VsYXIgPSBcImRpYWdyYW1fcHJvamVjdF9yZWd1bGFyXCIsXG4gICAgRHJvcHpvbmUgPSBcImRyb3B6b25lXCIsXG4gICAgRWRpdFBlblJlZ3VsYXIgPSBcImVkaXRfcGVuX3JlZ3VsYXJcIixcbiAgICBFbWFpbCA9IFwiZW1haWxcIixcbiAgICBFbWFpbFJlZ3VsYXIgPSBcImVtYWlsX3JlZ3VsYXJcIixcbiAgICBFbXBsb3llZSA9IFwiZW1wbG95ZWVcIixcbiAgICBFbnZlbG9wZVJlZ3VsYXIgPSBcImVudmVsb3BlX3JlZ3VsYXJcIixcbiAgICBFeWVSZWd1bGFyID0gXCJleWVfcmVndWxhclwiLFxuICAgIEZpbGVFeHBvcnRSZWd1bGFyID0gXCJmaWxlX2V4cG9ydF9yZWd1bGFyXCIsXG4gICAgRmlsZUV4cG9ydFNvbGlkID0gXCJmaWxlX2V4cG9ydF9zb2xpZFwiLFxuICAgIEZpbGVQZGZSZWd1bGFyID0gXCJmaWxlX3BkZl9yZWd1bGFyXCIsXG4gICAgRmlsZVBkZlNvbGlkID0gXCJmaWxlX3BkZl9zb2xpZFwiLFxuICAgIEZpbGVTaWduYXR1cmVSZWd1bGFyID0gXCJmaWxlX3NpZ25hdHVyZV9yZWd1bGFyXCIsXG4gICAgRm9sZGVyc1NoYXJwUmVndWxhciA9IFwiZm9sZGVyc19zaGFycF9yZWd1bGFyXCIsXG4gICAgSG91c2VCbGFua1JlZ3VsYXIgPSBcImhvdXNlX2JsYW5rX3JlZ3VsYXJcIixcbiAgICBJb25lV29ya2Zsb3cgPSBcImlvbmVfd29ya2Zsb3dcIixcbiAgICBMaXN0VWxSZWd1bGFyID0gXCJsaXN0X3VsX3JlZ3VsYXJcIixcbiAgICBMb2NrID0gXCJsb2NrXCIsXG4gICAgTWVzc2FnZVNtc1JlZ3VsYXIgPSBcIm1lc3NhZ2Vfc21zX3JlZ3VsYXJcIixcbiAgICBNZXNzYWdlU21zU29saWQgPSBcIm1lc3NhZ2Vfc21zX3NvbGlkXCIsXG4gICAgTWludXNTaW1wbGUgPSBcIm1pbnVzX3NpbXBsZVwiLFxuICAgIE5vdGlmaWNhdGlvbiA9IFwibm90aWZpY2F0aW9uXCIsXG4gICAgUGFwZXJjbGlwUmVndWxhciA9IFwicGFwZXJjbGlwX3JlZ3VsYXJcIixcbiAgICBQYXBlclBsYW5lVG9wU29saWQgPSBcInBhcGVyX3BsYW5lX3RvcF9zb2xpZFwiLFxuICAgIFBkZiA9IFwicGRmXCIsXG4gICAgUGVyc29uRGlnZ2luZ1JlZ3VsYXIgPSBcInBlcnNvbl9kaWdnaW5nX3JlZ3VsYXJcIixcbiAgICBQaW5Sb3VuZE9wZW4gPSBcInBpbl9yb3VuZF9vcGVuXCIsXG4gICAgUGx1c1JlZ3VsYXIgPSBcInBsdXNfcmVndWxhclwiLFxuICAgIFBsdXNTaW1wbGUgPSBcInBsdXNfc2ltcGxlXCIsXG4gICAgUHJpbnQgPSBcInByaW50XCIsXG4gICAgUHJpbnRSZWd1bGFyID0gXCJwcmludF9yZWd1bGFyXCIsXG4gICAgUHJpbnRTb2xpZCA9IFwicHJpbnRfc29saWRcIixcbiAgICBSZWd1bGFyRmlsZVNpZ25hdHVyZUNpcmNsZVBsdXMgPSBcInJlZ3VsYXJfZmlsZV9zaWduYXR1cmVfY2lyY2xlX3BsdXNcIixcbiAgICBTaWduYXR1cmVGaWVsZCA9IFwic2lnbmF0dXJlX2ZpZWxkXCIsXG4gICAgU29saWRCYXJjb2RlUmVhZFRhZyA9IFwic29saWRfYmFyY29kZV9yZWFkX3RhZ1wiLFxuICAgIFNxdWFyZVBsdXNSZWd1bGFyID0gXCJzcXVhcmVfcGx1c19yZWd1bGFyXCIsXG4gICAgVGFnUmVndWxhciA9IFwidGFnX3JlZ3VsYXJcIixcbiAgICBUYXNrID0gXCJ0YXNrXCIsXG4gICAgVHJhc2hiaW4gPSBcInRyYXNoYmluXCIsXG4gICAgWG1sID0gXCJ4bWxcIixcbiAgICBYU29saWQgPSBcInhfc29saWRcIlxufSJdfQ==
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2VudW0vaWNvbi5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdHQUFnRztBQUVoRyxNQUFNLENBQU4sSUFBWSxJQXVFWDtBQXZFRCxXQUFZLElBQUk7SUFDWiwyQkFBbUIsQ0FBQTtJQUNuQiwyQ0FBbUMsQ0FBQTtJQUNuQyw2Q0FBcUMsQ0FBQTtJQUNyQyxnQ0FBd0IsQ0FBQTtJQUN4QiwrQ0FBdUMsQ0FBQTtJQUN2Qyx5Q0FBaUMsQ0FBQTtJQUNqQyxvREFBNEMsQ0FBQTtJQUM1QywyQ0FBbUMsQ0FBQTtJQUNuQywyQ0FBbUMsQ0FBQTtJQUNuQyw2Q0FBcUMsQ0FBQTtJQUNyQyx1Q0FBK0IsQ0FBQTtJQUMvQixxRUFBNkQsQ0FBQTtJQUM3RCw0QkFBb0IsQ0FBQTtJQUNwQixtREFBMkMsQ0FBQTtJQUMzQyxvQ0FBNEIsQ0FBQTtJQUM1QiwrQ0FBdUMsQ0FBQTtJQUN2QyxxREFBNkMsQ0FBQTtJQUM3QyxzQ0FBOEIsQ0FBQTtJQUM5QixrQ0FBMEIsQ0FBQTtJQUMxQixrQ0FBMEIsQ0FBQTtJQUMxQixxREFBNkMsQ0FBQTtJQUM3QyxzQ0FBOEIsQ0FBQTtJQUM5QiwwQ0FBa0MsQ0FBQTtJQUNsQyxvQ0FBNEIsQ0FBQTtJQUM1Qix1QkFBZSxDQUFBO0lBQ2YsaURBQXlDLENBQUE7SUFDekMsd0NBQWdDLENBQUE7SUFDaEMsa0NBQTBCLENBQUE7SUFDMUIseURBQWlELENBQUE7SUFDakQsNkJBQXFCLENBQUE7SUFDckIsMkNBQW1DLENBQUE7SUFDbkMsdUJBQWUsQ0FBQTtJQUNmLHNDQUE4QixDQUFBO0lBQzlCLDZCQUFxQixDQUFBO0lBQ3JCLDRDQUFvQyxDQUFBO0lBQ3BDLGtDQUEwQixDQUFBO0lBQzFCLGlEQUF5QyxDQUFBO0lBQ3pDLDZDQUFxQyxDQUFBO0lBQ3JDLDJDQUFtQyxDQUFBO0lBQ25DLHVDQUErQixDQUFBO0lBQy9CLHVEQUErQyxDQUFBO0lBQy9DLHFEQUE2QyxDQUFBO0lBQzdDLGlEQUF5QyxDQUFBO0lBQ3pDLHNDQUE4QixDQUFBO0lBQzlCLHlDQUFpQyxDQUFBO0lBQ2pDLHFCQUFhLENBQUE7SUFDYixpREFBeUMsQ0FBQTtJQUN6Qyw2Q0FBcUMsQ0FBQTtJQUNyQyxvQ0FBNEIsQ0FBQTtJQUM1QixxQ0FBNkIsQ0FBQTtJQUM3Qiw4Q0FBc0MsQ0FBQTtJQUN0QyxvREFBNEMsQ0FBQTtJQUM1QyxtQkFBVyxDQUFBO0lBQ1gsdURBQStDLENBQUE7SUFDL0MsdUNBQStCLENBQUE7SUFDL0Isb0NBQTRCLENBQUE7SUFDNUIsa0NBQTBCLENBQUE7SUFDMUIsdUJBQWUsQ0FBQTtJQUNmLHNDQUE4QixDQUFBO0lBQzlCLGtDQUEwQixDQUFBO0lBQzFCLDZFQUFxRSxDQUFBO0lBQ3JFLDBDQUFrQyxDQUFBO0lBQ2xDLHNEQUE4QyxDQUFBO0lBQzlDLGlEQUF5QyxDQUFBO0lBQ3pDLGtDQUEwQixDQUFBO0lBQzFCLHFCQUFhLENBQUE7SUFDYiw2QkFBcUIsQ0FBQTtJQUNyQiw2Q0FBcUMsQ0FBQTtJQUNyQyxtQkFBVyxDQUFBO0lBQ1gsMEJBQWtCLENBQUE7QUFDdEIsQ0FBQyxFQXZFVyxJQUFJLEtBQUosSUFBSSxRQXVFZiIsInNvdXJjZXNDb250ZW50IjpbIi8qKiBBVVRPIEdFTkVSQVRFRCBGSUxFLiBETyBOT1QgQ0hBTkdFLi4gT1IgWU9VIFdJTEwgU1VGRkVSIFRIRSBDT05TRVFVRU5DRVMgT0YgWU9VUiBBQ1RJT05TICoqL1xuXG5leHBvcnQgZW51bSBJY29uIHtcbiAgICBBY2NvdW50ID0gXCJhY2NvdW50XCIsXG4gICAgQW5nbGVMZWZ0U29saWQgPSBcImFuZ2xlX2xlZnRfc29saWRcIixcbiAgICBBbmdsZVJpZ2h0U29saWQgPSBcImFuZ2xlX3JpZ2h0X3NvbGlkXCIsXG4gICAgQXJyb3dEb3duID0gXCJhcnJvd19kb3duXCIsXG4gICAgQXJyb3dEb3duUmVndWxhciA9IFwiYXJyb3dfZG93bl9yZWd1bGFyXCIsXG4gICAgQXJyb3dGYXRSaWdodCA9IFwiYXJyb3dfZmF0X3JpZ2h0XCIsXG4gICAgQXJyb3dMZWZ0Um91bmRPcGVuID0gXCJhcnJvd19sZWZ0X3JvdW5kX29wZW5cIixcbiAgICBBcnJvd1BvaW50RG93biA9IFwiYXJyb3dfcG9pbnRfZG93blwiLFxuICAgIEFycm93UG9pbnRMZWZ0ID0gXCJhcnJvd19wb2ludF9sZWZ0XCIsXG4gICAgQXJyb3dQb2ludFJpZ2h0ID0gXCJhcnJvd19wb2ludF9yaWdodFwiLFxuICAgIEFycm93UG9pbnRVcCA9IFwiYXJyb3dfcG9pbnRfdXBcIixcbiAgICBBcnJvd1JpZ2h0QXJyb3dMZWZ0UmVndWxhciA9IFwiYXJyb3dfcmlnaHRfYXJyb3dfbGVmdF9yZWd1bGFyXCIsXG4gICAgQXRTb2xpZCA9IFwiYXRfc29saWRcIixcbiAgICBCYXJjb2RlUmVhZFJlZ3VsYXIgPSBcImJhcmNvZGVfcmVhZF9yZWd1bGFyXCIsXG4gICAgQmVsbFJlZ3VsYXIgPSBcImJlbGxfcmVndWxhclwiLFxuICAgIEJlbGxTbGFzaFJlZ3VsYXIgPSBcImJlbGxfc2xhc2hfcmVndWxhclwiLFxuICAgIEJyaW5nRm9yd2FyZFJlZ3VsYXIgPSBcImJyaW5nX2ZvcndhcmRfcmVndWxhclwiLFxuICAgIENoZWNrRHVvdG9uZSA9IFwiY2hlY2tfZHVvdG9uZVwiLFxuICAgIENoZWNrUm91bmQgPSBcImNoZWNrX3JvdW5kXCIsXG4gICAgQ2hlY2tTb2xpZCA9IFwiY2hlY2tfc29saWRcIixcbiAgICBDaGV2cm9uUmlnaHRSZWd1bGFyID0gXCJjaGV2cm9uX3JpZ2h0X3JlZ3VsYXJcIixcbiAgICBDbG9ja1JlZ3VsYXIgPSBcImNsb2NrX3JlZ3VsYXJcIixcbiAgICBDb21tZW50UmVndWxhciA9IFwiY29tbWVudF9yZWd1bGFyXCIsXG4gICAgQ3Jvc3NTa2lubnkgPSBcImNyb3NzX3NraW5ueVwiLFxuICAgIEN1YmVzID0gXCJjdWJlc1wiLFxuICAgIERlbGV0ZUxlZnRSZWd1bGFyID0gXCJkZWxldGVfbGVmdF9yZWd1bGFyXCIsXG4gICAgRGVsaXZlcnlUcnVjayA9IFwiZGVsaXZlcnlfdHJ1Y2tcIixcbiAgICBEZXRhaWxWaWV3ID0gXCJkZXRhaWxfdmlld1wiLFxuICAgIERpYWdyYW1Qcm9qZWN0UmVndWxhciA9IFwiZGlhZ3JhbV9wcm9qZWN0X3JlZ3VsYXJcIixcbiAgICBEcm9wem9uZSA9IFwiZHJvcHpvbmVcIixcbiAgICBFZGl0UGVuUmVndWxhciA9IFwiZWRpdF9wZW5fcmVndWxhclwiLFxuICAgIEVtYWlsID0gXCJlbWFpbFwiLFxuICAgIEVtYWlsUmVndWxhciA9IFwiZW1haWxfcmVndWxhclwiLFxuICAgIEVtcGxveWVlID0gXCJlbXBsb3llZVwiLFxuICAgIEVudmVsb3BlUmVndWxhciA9IFwiZW52ZWxvcGVfcmVndWxhclwiLFxuICAgIEV5ZVJlZ3VsYXIgPSBcImV5ZV9yZWd1bGFyXCIsXG4gICAgRmlsZUV4cG9ydFJlZ3VsYXIgPSBcImZpbGVfZXhwb3J0X3JlZ3VsYXJcIixcbiAgICBGaWxlRXhwb3J0U29saWQgPSBcImZpbGVfZXhwb3J0X3NvbGlkXCIsXG4gICAgRmlsZVBkZlJlZ3VsYXIgPSBcImZpbGVfcGRmX3JlZ3VsYXJcIixcbiAgICBGaWxlUGRmU29saWQgPSBcImZpbGVfcGRmX3NvbGlkXCIsXG4gICAgRmlsZVNpZ25hdHVyZVJlZ3VsYXIgPSBcImZpbGVfc2lnbmF0dXJlX3JlZ3VsYXJcIixcbiAgICBGb2xkZXJzU2hhcnBSZWd1bGFyID0gXCJmb2xkZXJzX3NoYXJwX3JlZ3VsYXJcIixcbiAgICBIb3VzZUJsYW5rUmVndWxhciA9IFwiaG91c2VfYmxhbmtfcmVndWxhclwiLFxuICAgIElvbmVXb3JrZmxvdyA9IFwiaW9uZV93b3JrZmxvd1wiLFxuICAgIExpc3RVbFJlZ3VsYXIgPSBcImxpc3RfdWxfcmVndWxhclwiLFxuICAgIExvY2sgPSBcImxvY2tcIixcbiAgICBNZXNzYWdlU21zUmVndWxhciA9IFwibWVzc2FnZV9zbXNfcmVndWxhclwiLFxuICAgIE1lc3NhZ2VTbXNTb2xpZCA9IFwibWVzc2FnZV9zbXNfc29saWRcIixcbiAgICBNaW51c1NpbXBsZSA9IFwibWludXNfc2ltcGxlXCIsXG4gICAgTm90aWZpY2F0aW9uID0gXCJub3RpZmljYXRpb25cIixcbiAgICBQYXBlcmNsaXBSZWd1bGFyID0gXCJwYXBlcmNsaXBfcmVndWxhclwiLFxuICAgIFBhcGVyUGxhbmVUb3BTb2xpZCA9IFwicGFwZXJfcGxhbmVfdG9wX3NvbGlkXCIsXG4gICAgUGRmID0gXCJwZGZcIixcbiAgICBQZXJzb25EaWdnaW5nUmVndWxhciA9IFwicGVyc29uX2RpZ2dpbmdfcmVndWxhclwiLFxuICAgIFBpblJvdW5kT3BlbiA9IFwicGluX3JvdW5kX29wZW5cIixcbiAgICBQbHVzUmVndWxhciA9IFwicGx1c19yZWd1bGFyXCIsXG4gICAgUGx1c1NpbXBsZSA9IFwicGx1c19zaW1wbGVcIixcbiAgICBQcmludCA9IFwicHJpbnRcIixcbiAgICBQcmludFJlZ3VsYXIgPSBcInByaW50X3JlZ3VsYXJcIixcbiAgICBQcmludFNvbGlkID0gXCJwcmludF9zb2xpZFwiLFxuICAgIFJlZ3VsYXJGaWxlU2lnbmF0dXJlQ2lyY2xlUGx1cyA9IFwicmVndWxhcl9maWxlX3NpZ25hdHVyZV9jaXJjbGVfcGx1c1wiLFxuICAgIFNpZ25hdHVyZUZpZWxkID0gXCJzaWduYXR1cmVfZmllbGRcIixcbiAgICBTb2xpZEJhcmNvZGVSZWFkVGFnID0gXCJzb2xpZF9iYXJjb2RlX3JlYWRfdGFnXCIsXG4gICAgU3F1YXJlUGx1c1JlZ3VsYXIgPSBcInNxdWFyZV9wbHVzX3JlZ3VsYXJcIixcbiAgICBUYWdSZWd1bGFyID0gXCJ0YWdfcmVndWxhclwiLFxuICAgIFRhc2sgPSBcInRhc2tcIixcbiAgICBUcmFzaGJpbiA9IFwidHJhc2hiaW5cIixcbiAgICBUcmFzaENhblJlZ3VsYXIgPSBcInRyYXNoX2Nhbl9yZWd1bGFyXCIsXG4gICAgWG1sID0gXCJ4bWxcIixcbiAgICBYU29saWQgPSBcInhfc29saWRcIlxufSJdfQ==