@eqproject/eqp-dynamic-module 2.10.15 → 2.10.17

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.
@@ -48,6 +48,9 @@ export class BooleanFilterTemplateComponent {
48
48
  * Metodo per emettere l'evento che il valore del record è cambiato.
49
49
  */
50
50
  onFilterChange() {
51
+ if (this.aggregations != null && this.aggregations.length > 0) {
52
+ this.visible = true;
53
+ }
51
54
  var statistic = {
52
55
  key: this.field.Name,
53
56
  value: this.record[this.field.Name],
@@ -65,6 +68,9 @@ export class BooleanFilterTemplateComponent {
65
68
  */
66
69
  changeVisibility() {
67
70
  this.visible = !this.visible;
71
+ if (this.aggregations != null && this.aggregations.length > 0) {
72
+ this.visible = true;
73
+ }
68
74
  this.onFilterChange();
69
75
  }
70
76
  /**
@@ -91,4 +97,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
91
97
  }], filterChange: [{
92
98
  type: Output
93
99
  }] } });
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXFwLWR5bmFtaWMtbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItdGVtcGxhdGVzL2Jvb2xlYW4tZmlsdGVyLXRlbXBsYXRlL2Jvb2xlYW4tZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VxcC1keW5hbWljLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvcHJpdmF0ZS9mb3JtLXN0YXRpc3RpY3MvZmlsdGVyLXRlbXBsYXRlcy9ib29sZWFuLWZpbHRlci10ZW1wbGF0ZS9ib29sZWFuLWZpbHRlci10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUV0RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNqRixPQUFPLEVBQUUsZ0NBQWdDLEVBQTRDLE1BQU0sdUNBQXVDLENBQUM7QUFFbkksT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7Ozs7Ozs7O0FBTXRGLE1BQU0sT0FBTyw4QkFBOEI7SUF3QnpDO1FBckJTLGNBQVMsR0FBYyxJQUFJLENBQUM7UUFDNUIsV0FBTSxHQUFZLElBQUksQ0FBQztRQUN0QixpQkFBWSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3BFLG9CQUFlLEdBQVUsRUFBRSxDQUFDO1FBQzVCLHlCQUFvQixHQUFHLG9CQUFvQixDQUFDO1FBQzVDLDBCQUFxQixHQUF5QixvQkFBb0IsQ0FBQyxFQUFFLENBQUMs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SSxDQUFDLE9BQU8sQ0FBQztRQUM3QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVIOztNQUVFO0lBQ00sb0JBQW9CO1FBQzFCLElBQUksQ0FBQyxlQUFlLEdBQUcsRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3RGLENBQUM7OzRIQXZGVSw4QkFBOEI7Z0hBQTlCLDhCQUE4Qix1TkNYM0Msd3NEQWlDQTs0RkR0QmEsOEJBQThCO2tCQUwxQyxTQUFTOytCQUNFLHlCQUF5QjswRUFLMUIsS0FBSztzQkFBYixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDSSxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmVjb3JkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL3JlY29yZC5tb2RlbCc7XHJcbmltcG9ydCB7IExvZ2ljT3BlcmF0b3JCb29sZWFuIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL2xvZ2ljT3BlcmF0b3IubW9kZWwnO1xyXG5pbXBvcnQgeyBOb3ROdW1iZXJBZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bSwgTnVtYmVyQWdncmVnYXRpb25GdW5jdGlvbkVudW0sIFN0YXRpc3RpYyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21vZGVscy9zdGF0aXN0aWMubW9kZWwnO1xyXG5pbXBvcnQgeyBCb29sZWFuRmllbGQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvZmllbGRzL2Jvb2xlYW5GaWVsZC5tb2RlbCc7XHJcbmltcG9ydCB7IFV0aWxpdHlIZWxwZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2VydmljZXMvdXRpbGl0eUhlbHBlci5zZXJ2aWNlcyc7XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYm9vbGVhbi1maWx0ZXItdGVtcGxhdGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9ib29sZWFuLWZpbHRlci10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYm9vbGVhbi1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQm9vbGVhbkZpbHRlclRlbXBsYXRlQ29tcG9uZW50IHtcclxuICBASW5wdXQoKSBmaWVsZDogQm9vbGVhbkZpZWxkO1xyXG4gIEBJbnB1dCgpIHJlY29yZDogUmVjb3JkO1xyXG4gIEBJbnB1dCgpIFN0YXRpc3RpYzogU3RhdGlzdGljID0gbnVsbDtcclxuICBASW5wdXQoKSBzaG93WFk6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBPdXRwdXQoKSBmaWx0ZXJDaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgdmFsaWRhdG9yc0FycmF5OiBhbnlbXSA9IFtdO1xyXG4gIGxvZ2ljT3BlcmF0b3JCb29sZWFuID0gTG9naWNPcGVyYXRvckJvb2xlYW47XHJcbiAgc2VsZWN0ZWRMb2dpY09wZXJhdG9yOiBMb2dpY09wZXJhdG9yQm9vbGVhbiA9IExvZ2ljT3BlcmF0b3JCb29sZWFuWycnXTtcclxuICBhY3RpdmVDb25kaXRpb246IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgdmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGN1cnJlbnRTdGF0aXN0aWM6IFN0YXRpc3RpYyA9IG51bGw7ICBcclxuXHJcbiAgLy92YXJpYWJpbGkgcGVyIGdlc3RpcmUgaWwgY3NzIGRlbGxhIGxhYmVsIGUgZGVsIGZpZWxkXHJcbiAgRmllbGRzdHlsZU9iajogYW55O1xyXG4gIExhYmVsc3R5bGVPYmo6IGFueTtcclxuXHJcbiAgaXNYOiBib29sZWFuO1xyXG4gIGlzWTogYm9vbGVhbjsgICBcclxuXHJcbiAgYWdncmVnYXRpb25zOiBBcnJheTxOdW1iZXJBZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bT4gfCBBcnJheTxOb3ROdW1iZXJBZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bT47XHJcbiAgYWdncmVnYXRpb25GdW5jdGlvbkVudW0gPSBOb3ROdW1iZXJBZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuXHJcbiAgICBpZiAodGhpcy5TdGF0aXN0aWMgIT0gbnVsbCl7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRMb2dpY09wZXJhdG9yID0gKHRoaXMuU3RhdGlzdGljLmxvZ2ljb3BlcmF0b3IgYXMgTG9naWNPcGVyYXRvckJvb2xlYW4pO1xyXG4gICAgICB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID0gdGhpcy5TdGF0aXN0aWMudmFsdWU7XHJcbiAgICAgIHRoaXMudmlzaWJsZSA9IHRoaXMuU3RhdGlzdGljLnZpc2libGU7XHJcbiAgICAgIHRoaXMuYWdncmVnYXRpb25zID0gdGhpcy5TdGF0aXN0aWMuYWdncmVnYXRpb25zO1xyXG4gICAgfSBcclxuXHJcbiAgICB0aGlzLmNvbmZpZ3VyZUNvbnRyb2xsZXJzKCk7XHJcbiAgICB0aGlzLmluaXRTdHlsZXMoKTtcclxuICB9XHJcblxyXG4gICAgLy9GdW56aW9uZSBwZXIgcGFyc2FyZSBpbCBjYW1wbyBzdHlsZWNzcyBkZWxsJ29nZ2V0dG8gZmllbGQgZWQgYXBwbGljYXJsbyBhbGwnaHRtbFxyXG4gICAgaW5pdFN0eWxlcygpIHtcclxuICAgICAgaWYodGhpcy5maWVsZC5GaWVsZHN0eWxlQ1NTICE9IG51bGwgfHwgdGhpcy5maWVsZC5GaWVsZHN0eWxlQ1NTICE9IHVuZGVmaW5lZCkgICBcclxuICAgICAgdGhpcy5GaWVsZHN0eWxlT2JqPSBVdGlsaXR5SGVscGVyU2VydmljZS5pbml0U3R5bGVzKHRoaXMuZmllbGQuRmllbGRzdHlsZUNTUyk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICAgIGlmIChjaGFuZ2VzLmhhc093blByb3BlcnR5KCdTdGF0aXN0aWMnKSAmJiAhY2hhbmdlc1snU3RhdGlzdGljJ10uZmlyc3RDaGFuZ2Upe1xyXG4gICAgICAgIHRoaXMuaXNYID0gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmhhc093blByb3BlcnR5KCdpc1gnKSA/IGNoYW5nZXNbJ1N0YXRpc3RpYyddLmN1cnJlbnRWYWx1ZS5pc1ggOiBudWxsO1xyXG4gICAgICAgIHRoaXMuaXNZID0gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmhhc093blByb3BlcnR5KCdpc1knKSA/IGNoYW5nZXNbJ1N0YXRpc3RpYyddLmN1cnJlbnRWYWx1ZS5pc1kgOiBudWxsO1xyXG4gICAgICAgIHRoaXMuYWdncmVnYXRpb25zID0gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmhhc093blByb3BlcnR5KCdhZ2dyZWdhdGlvbnMnKSA/IGNoYW5nZXNbJ1N0YXRpc3RpYyddLmN1cnJlbnRWYWx1ZS5hZ2dyZWdhdGlvbnMgOiBudWxsO1xyXG4gICAgICB9XHJcbiAgfSAgIFxyXG5cclxuICAvKipcclxuICAqIE1ldG9kbyBwZXIgZW1ldHRlcmUgbCdldmVudG8gY2hlIGlsIHZhbG9yZSBkZWwgcmVjb3JkIMOoIGNhbWJpYXRvLlxyXG4gICovXHJcbiAgb25GaWx0ZXJDaGFuZ2UoKSB7XHJcbiAgICAgIHZhciBzdGF0aXN0aWM6IFN0YXRpc3RpYyA9IHtcclxuICAgICAgICBrZXk6IHRoaXMuZmllbGQuTmFtZSxcclxuICAgICAgICB2YWx1ZTogdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSxcclxuICAgICAgICBsb2dpY29wZXJhdG9yOiB0aGlzLnNlbGVjdGVkTG9naWNPcGVyYXRvcixcclxuICAgICAgICBmaWVsZHR5cGU6IHRoaXMuZmllbGQuRmllbGRUeXBlLFxyXG4gICAgICAgIHZpc2libGU6IHRoaXMudmlzaWJsZSxcclxuICAgICAgICBpc1g6IHRoaXMuaXNYLFxyXG4gICAgICAgIGlzWTogdGhpcy5pc1ksXHJcbiAgICAgICAgYWdncmVnYXRpb25zOiB0aGlzLmFnZ3JlZ2F0aW9uc1xyXG4gICAgICB9ICAgIFxyXG5cclxuICAgICAgdGhpcy5maWx0ZXJDaGFuZ2UuZW1pdChzdGF0aXN0aWMpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2VzdGlvbmUgdmlzaWJpbGl0w6BcclxuICAgKi9cclxuXHJcbiAgICBwdWJsaWMgY2hhbmdlVmlzaWJpbGl0eSgpe1xyXG4gICAgICB0aGlzLnZpc2libGUgPSAhdGhpcy52aXNpYmxlO1xyXG4gICAgICB0aGlzLm9uRmlsdGVyQ2hhbmdlKCk7XHJcbiAgICB9XHJcblxyXG4gIC8qKlxyXG4gICogTWV0b2RvIGRpIGFnZ2l1bnRhIGRlaSB2YWxpZGF0b3IgZGVsbCdpbnB1dFxyXG4gICovXHJcbiAgcHJpdmF0ZSBjb25maWd1cmVDb250cm9sbGVycygpIHtcclxuICAgIHRoaXMudmFsaWRhdG9yc0FycmF5ID0gW107XHJcbiAgICB0aGlzLmZpZWxkLkZvcm1Gb3JtR3JvdXAuZ2V0KFt0aGlzLmZpZWxkLk5hbWVdKS5zZXRWYWxpZGF0b3JzKHRoaXMudmFsaWRhdG9yc0FycmF5KTtcclxuICB9XHJcbiAgXHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgcm93Q29sXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInZpc2libGVDb2xcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0blwiIFtuZ0NsYXNzXT1cInsnYnRuLXN1Y2Nlc3MnOiB2aXNpYmxlICwgJ2J0bi1kYW5nZXInOiAhdmlzaWJsZSB9XCIgKGNsaWNrKT1cImNoYW5nZVZpc2liaWxpdHkoKVwiPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwidmlzaWJsZVwiPnZpc2liaWxpdHk8L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiIXZpc2libGVcIj52aXNpYmlsaXR5X29mZjwvbWF0LWljb24+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PiBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29vcmRpbmF0ZXNDb2xcIiBbaGlkZGVuXT1cIiFzaG93WFlcIj5cclxuXHJcbiAgICAgICAgPC9kaXY+ICAgICAgICAgICAgICAgICBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwidmFsdWVDb2xcIj5cclxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIFtmb3JtR3JvdXBdPVwiZmllbGQuRm9ybUZvcm1Hcm91cFwiPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1sYWJlbCAgY2xhc3M9XCJwdC0xIHBzLTNcIiBbbmdTdHlsZV09XCJMYWJlbHN0eWxlT2JqXCI+IHt7ZmllbGQuRGVzY3JpcHRpb259fSA8L21hdC1sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IFtuZ1N0eWxlXT1cIkZpZWxkc3R5bGVPYmpcIiBtYXRJbnB1dCBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLk5hbWVcIiBbZGlzYWJsZWRdIFtyZWFkb25seV09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwiZmFsc2VcIiBbKG5nTW9kZWwpXT1cInJlY29yZFtmaWVsZC5OYW1lXVwiICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwib3BlcmF0b3JDb2xcIj5cclxuICAgICAgICAgICAgPGVxcC1zZWxlY3QgW2VudW1EYXRhXT1cImxvZ2ljT3BlcmF0b3JCb29sZWFuXCIgWyhuZ01vZGVsSW5wdXQpXT1cInNlbGVjdGVkTG9naWNPcGVyYXRvclwiIFtzaG93Q2FuY2VsQnV0dG9uXT1cImZhbHNlXCIgKG5nTW9kZWxJbnB1dENoYW5nZSk9XCJvbkZpbHRlckNoYW5nZSgpXCI+PC9lcXAtc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PiAgICAgIFxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhZ2dyZWdhdG9yQ29sXCI+XHJcbiAgICAgICAgICAgIDxlcXAtc2VsZWN0XHJcbiAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0FnZ3JlZ2F6aW9uaSdcIlxyXG4gICAgICAgICAgICAgICAgW2lzTXVsdGlTZWxlY3RdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICBbZW51bURhdGFdPVwiYWdncmVnYXRpb25GdW5jdGlvbkVudW1cIlxyXG4gICAgICAgICAgICAgICAgWyhuZ01vZGVsSW5wdXQpXT1cImFnZ3JlZ2F0aW9uc1wiXHJcbiAgICAgICAgICAgICAgICAobmdNb2RlbElucHV0Q2hhbmdlKT1cIm9uRmlsdGVyQ2hhbmdlKClcIlxyXG4gICAgICAgICAgICA+PC9lcXAtc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PiAgICAgICAgICAgICAgICAgICBcclxuICAgIDwvZGl2PiAgICBcclxuPC9kaXY+XHJcbiJdfQ==
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXFwLWR5bmFtaWMtbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItdGVtcGxhdGVzL2Jvb2xlYW4tZmlsdGVyLXRlbXBsYXRlL2Jvb2xlYW4tZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VxcC1keW5hbWljLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvcHJpdmF0ZS9mb3JtLXN0YXRpc3RpY3MvZmlsdGVyLXRlbXBsYXRlcy9ib29sZWFuLWZpbHRlci10ZW1wbGF0ZS9ib29sZWFuLWZpbHRlci10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUV0RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNqRixPQUFPLEVBQUUsZ0NBQWdDLEVBQTRDLE1BQU0sdUNBQXVDLENBQUM7QUFFbkksT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7Ozs7Ozs7O0FBTXRGLE1BQU0sT0FBTyw4QkFBOEI7SUF3QnpDO1FBckJTLGNBQVMsR0FBYyxJQUFJLENBQUM7UUFDNUIsV0FBTSxHQUFZLElBQUksQ0FBQztRQUN0QixpQkFBWSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3BFLG9CQUFlLEdBQVUsRUFBRSxDQUFDO1FBQzVCLHlCQUFvQixHQUFHLG9CQUFvQixDQUFDO1FBQzVDLDBCQUFxQixHQUF5QixvQkFBb0IsQ0FBQyxFQUFFLENBQUMs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QUE7UUFFRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQ7O09BRUc7SUFFTSxnQkFBZ0I7UUFDckIsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDN0IsSUFBSSxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUM7WUFBRSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztTQUFFO1FBQ3RGLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUg7O01BRUU7SUFDTSxvQkFBb0I7UUFDMUIsSUFBSSxDQUFDLGVBQWUsR0FBRyxFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDdEYsQ0FBQzs7NEhBMUZVLDhCQUE4QjtnSEFBOUIsOEJBQThCLHVOQ1gzQyx3c0RBaUNBOzRGRHRCYSw4QkFBOEI7a0JBTDFDLFNBQVM7K0JBQ0UseUJBQXlCOzBFQUsxQixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNJLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvcmVjb3JkLm1vZGVsJztcclxuaW1wb3J0IHsgTG9naWNPcGVyYXRvckJvb2xlYW4gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvbG9naWNPcGVyYXRvci5tb2RlbCc7XHJcbmltcG9ydCB7IE5vdE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtLCBOdW1iZXJBZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bSwgU3RhdGlzdGljIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL3N0YXRpc3RpYy5tb2RlbCc7XHJcbmltcG9ydCB7IEJvb2xlYW5GaWVsZCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21vZGVscy9maWVsZHMvYm9vbGVhbkZpZWxkLm1vZGVsJztcclxuaW1wb3J0IHsgVXRpbGl0eUhlbHBlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zZXJ2aWNlcy91dGlsaXR5SGVscGVyLnNlcnZpY2VzJztcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdib29sZWFuLWZpbHRlci10ZW1wbGF0ZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2Jvb2xlYW4tZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9ib29sZWFuLWZpbHRlci10ZW1wbGF0ZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCb29sZWFuRmlsdGVyVGVtcGxhdGVDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpIGZpZWxkOiBCb29sZWFuRmllbGQ7XHJcbiAgQElucHV0KCkgcmVjb3JkOiBSZWNvcmQ7XHJcbiAgQElucHV0KCkgU3RhdGlzdGljOiBTdGF0aXN0aWMgPSBudWxsO1xyXG4gIEBJbnB1dCgpIHNob3dYWTogYm9vbGVhbiA9IHRydWU7XHJcbiAgQE91dHB1dCgpIGZpbHRlckNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICB2YWxpZGF0b3JzQXJyYXk6IGFueVtdID0gW107XHJcbiAgbG9naWNPcGVyYXRvckJvb2xlYW4gPSBMb2dpY09wZXJhdG9yQm9vbGVhbjtcclxuICBzZWxlY3RlZExvZ2ljT3BlcmF0b3I6IExvZ2ljT3BlcmF0b3JCb29sZWFuID0gTG9naWNPcGVyYXRvckJvb2xlYW5bJyddO1xyXG4gIGFjdGl2ZUNvbmRpdGlvbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICB2aXNpYmxlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgY3VycmVudFN0YXRpc3RpYzogU3RhdGlzdGljID0gbnVsbDsgIFxyXG5cclxuICAvL3ZhcmlhYmlsaSBwZXIgZ2VzdGlyZSBpbCBjc3MgZGVsbGEgbGFiZWwgZSBkZWwgZmllbGRcclxuICBGaWVsZHN0eWxlT2JqOiBhbnk7XHJcbiAgTGFiZWxzdHlsZU9iajogYW55O1xyXG5cclxuICBpc1g6IGJvb2xlYW47XHJcbiAgaXNZOiBib29sZWFuOyAgIFxyXG5cclxuICBhZ2dyZWdhdGlvbnM6IEFycmF5PE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtPiB8IEFycmF5PE5vdE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtPjtcclxuICBhZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bSA9IE5vdE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG5cclxuICAgIGlmICh0aGlzLlN0YXRpc3RpYyAhPSBudWxsKXtcclxuICAgICAgdGhpcy5zZWxlY3RlZExvZ2ljT3BlcmF0b3IgPSAodGhpcy5TdGF0aXN0aWMubG9naWNvcGVyYXRvciBhcyBMb2dpY09wZXJhdG9yQm9vbGVhbik7XHJcbiAgICAgIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPSB0aGlzLlN0YXRpc3RpYy52YWx1ZTtcclxuICAgICAgdGhpcy52aXNpYmxlID0gdGhpcy5TdGF0aXN0aWMudmlzaWJsZTtcclxuICAgICAgdGhpcy5hZ2dyZWdhdGlvbnMgPSB0aGlzLlN0YXRpc3RpYy5hZ2dyZWdhdGlvbnM7XHJcbiAgICB9IFxyXG5cclxuICAgIHRoaXMuY29uZmlndXJlQ29udHJvbGxlcnMoKTtcclxuICAgIHRoaXMuaW5pdFN0eWxlcygpO1xyXG4gIH1cclxuXHJcbiAgICAvL0Z1bnppb25lIHBlciBwYXJzYXJlIGlsIGNhbXBvIHN0eWxlY3NzIGRlbGwnb2dnZXR0byBmaWVsZCBlZCBhcHBsaWNhcmxvIGFsbCdodG1sXHJcbiAgICBpbml0U3R5bGVzKCkge1xyXG4gICAgICBpZih0aGlzLmZpZWxkLkZpZWxkc3R5bGVDU1MgIT0gbnVsbCB8fCB0aGlzLmZpZWxkLkZpZWxkc3R5bGVDU1MgIT0gdW5kZWZpbmVkKSAgIFxyXG4gICAgICB0aGlzLkZpZWxkc3R5bGVPYmo9IFV0aWxpdHlIZWxwZXJTZXJ2aWNlLmluaXRTdHlsZXModGhpcy5maWVsZC5GaWVsZHN0eWxlQ1NTKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgICAgaWYgKGNoYW5nZXMuaGFzT3duUHJvcGVydHkoJ1N0YXRpc3RpYycpICYmICFjaGFuZ2VzWydTdGF0aXN0aWMnXS5maXJzdENoYW5nZSl7XHJcbiAgICAgICAgdGhpcy5pc1ggPSBjaGFuZ2VzWydTdGF0aXN0aWMnXS5jdXJyZW50VmFsdWUuaGFzT3duUHJvcGVydHkoJ2lzWCcpID8gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmlzWCA6IG51bGw7XHJcbiAgICAgICAgdGhpcy5pc1kgPSBjaGFuZ2VzWydTdGF0aXN0aWMnXS5jdXJyZW50VmFsdWUuaGFzT3duUHJvcGVydHkoJ2lzWScpID8gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmlzWSA6IG51bGw7XHJcbiAgICAgICAgdGhpcy5hZ2dyZWdhdGlvbnMgPSBjaGFuZ2VzWydTdGF0aXN0aWMnXS5jdXJyZW50VmFsdWUuaGFzT3duUHJvcGVydHkoJ2FnZ3JlZ2F0aW9ucycpID8gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmFnZ3JlZ2F0aW9ucyA6IG51bGw7XHJcbiAgICAgIH1cclxuICB9ICAgXHJcblxyXG4gIC8qKlxyXG4gICogTWV0b2RvIHBlciBlbWV0dGVyZSBsJ2V2ZW50byBjaGUgaWwgdmFsb3JlIGRlbCByZWNvcmQgw6ggY2FtYmlhdG8uXHJcbiAgKi9cclxuICBvbkZpbHRlckNoYW5nZSgpIHtcclxuICAgICAgaWYgKHRoaXMuYWdncmVnYXRpb25zICE9IG51bGwgJiYgdGhpcy5hZ2dyZWdhdGlvbnMubGVuZ3RoID4gMCl7IHRoaXMudmlzaWJsZSA9IHRydWU7IH1cclxuXHJcbiAgICAgIHZhciBzdGF0aXN0aWM6IFN0YXRpc3RpYyA9IHtcclxuICAgICAgICBrZXk6IHRoaXMuZmllbGQuTmFtZSxcclxuICAgICAgICB2YWx1ZTogdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSxcclxuICAgICAgICBsb2dpY29wZXJhdG9yOiB0aGlzLnNlbGVjdGVkTG9naWNPcGVyYXRvcixcclxuICAgICAgICBmaWVsZHR5cGU6IHRoaXMuZmllbGQuRmllbGRUeXBlLFxyXG4gICAgICAgIHZpc2libGU6IHRoaXMudmlzaWJsZSxcclxuICAgICAgICBpc1g6IHRoaXMuaXNYLFxyXG4gICAgICAgIGlzWTogdGhpcy5pc1ksXHJcbiAgICAgICAgYWdncmVnYXRpb25zOiB0aGlzLmFnZ3JlZ2F0aW9uc1xyXG4gICAgICB9ICAgIFxyXG5cclxuICAgICAgdGhpcy5maWx0ZXJDaGFuZ2UuZW1pdChzdGF0aXN0aWMpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2VzdGlvbmUgdmlzaWJpbGl0w6BcclxuICAgKi9cclxuXHJcbiAgICBwdWJsaWMgY2hhbmdlVmlzaWJpbGl0eSgpe1xyXG4gICAgICB0aGlzLnZpc2libGUgPSAhdGhpcy52aXNpYmxlO1xyXG4gICAgICBpZiAodGhpcy5hZ2dyZWdhdGlvbnMgIT0gbnVsbCAmJiB0aGlzLmFnZ3JlZ2F0aW9ucy5sZW5ndGggPiAwKXsgdGhpcy52aXNpYmxlID0gdHJ1ZTsgfVxyXG4gICAgICB0aGlzLm9uRmlsdGVyQ2hhbmdlKCk7XHJcbiAgICB9XHJcblxyXG4gIC8qKlxyXG4gICogTWV0b2RvIGRpIGFnZ2l1bnRhIGRlaSB2YWxpZGF0b3IgZGVsbCdpbnB1dFxyXG4gICovXHJcbiAgcHJpdmF0ZSBjb25maWd1cmVDb250cm9sbGVycygpIHtcclxuICAgIHRoaXMudmFsaWRhdG9yc0FycmF5ID0gW107XHJcbiAgICB0aGlzLmZpZWxkLkZvcm1Gb3JtR3JvdXAuZ2V0KFt0aGlzLmZpZWxkLk5hbWVdKS5zZXRWYWxpZGF0b3JzKHRoaXMudmFsaWRhdG9yc0FycmF5KTtcclxuICB9XHJcbiAgXHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgcm93Q29sXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInZpc2libGVDb2xcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0blwiIFtuZ0NsYXNzXT1cInsnYnRuLXN1Y2Nlc3MnOiB2aXNpYmxlICwgJ2J0bi1kYW5nZXInOiAhdmlzaWJsZSB9XCIgKGNsaWNrKT1cImNoYW5nZVZpc2liaWxpdHkoKVwiPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwidmlzaWJsZVwiPnZpc2liaWxpdHk8L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiIXZpc2libGVcIj52aXNpYmlsaXR5X29mZjwvbWF0LWljb24+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PiBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29vcmRpbmF0ZXNDb2xcIiBbaGlkZGVuXT1cIiFzaG93WFlcIj5cclxuXHJcbiAgICAgICAgPC9kaXY+ICAgICAgICAgICAgICAgICBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwidmFsdWVDb2xcIj5cclxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIFtmb3JtR3JvdXBdPVwiZmllbGQuRm9ybUZvcm1Hcm91cFwiPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1sYWJlbCAgY2xhc3M9XCJwdC0xIHBzLTNcIiBbbmdTdHlsZV09XCJMYWJlbHN0eWxlT2JqXCI+IHt7ZmllbGQuRGVzY3JpcHRpb259fSA8L21hdC1sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IFtuZ1N0eWxlXT1cIkZpZWxkc3R5bGVPYmpcIiBtYXRJbnB1dCBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLk5hbWVcIiBbZGlzYWJsZWRdIFtyZWFkb25seV09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwiZmFsc2VcIiBbKG5nTW9kZWwpXT1cInJlY29yZFtmaWVsZC5OYW1lXVwiICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwib3BlcmF0b3JDb2xcIj5cclxuICAgICAgICAgICAgPGVxcC1zZWxlY3QgW2VudW1EYXRhXT1cImxvZ2ljT3BlcmF0b3JCb29sZWFuXCIgWyhuZ01vZGVsSW5wdXQpXT1cInNlbGVjdGVkTG9naWNPcGVyYXRvclwiIFtzaG93Q2FuY2VsQnV0dG9uXT1cImZhbHNlXCIgKG5nTW9kZWxJbnB1dENoYW5nZSk9XCJvbkZpbHRlckNoYW5nZSgpXCI+PC9lcXAtc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PiAgICAgIFxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhZ2dyZWdhdG9yQ29sXCI+XHJcbiAgICAgICAgICAgIDxlcXAtc2VsZWN0XHJcbiAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0FnZ3JlZ2F6aW9uaSdcIlxyXG4gICAgICAgICAgICAgICAgW2lzTXVsdGlTZWxlY3RdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICBbZW51bURhdGFdPVwiYWdncmVnYXRpb25GdW5jdGlvbkVudW1cIlxyXG4gICAgICAgICAgICAgICAgWyhuZ01vZGVsSW5wdXQpXT1cImFnZ3JlZ2F0aW9uc1wiXHJcbiAgICAgICAgICAgICAgICAobmdNb2RlbElucHV0Q2hhbmdlKT1cIm9uRmlsdGVyQ2hhbmdlKClcIlxyXG4gICAgICAgICAgICA+PC9lcXAtc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PiAgICAgICAgICAgICAgICAgICBcclxuICAgIDwvZGl2PiAgICBcclxuPC9kaXY+XHJcbiJdfQ==
@@ -67,6 +67,9 @@ export class DateFilterTemplateComponent {
67
67
  this.filterChange.emit(statistic);
68
68
  }
69
69
  createStatistic() {
70
+ if (this.aggregations != null && this.aggregations.length > 0) {
71
+ this.visible = true;
72
+ }
70
73
  var statistic = {
71
74
  key: this.field.Name,
72
75
  value: this.record[this.field.Name],
@@ -100,6 +103,9 @@ export class DateFilterTemplateComponent {
100
103
  */
101
104
  changeVisibility() {
102
105
  this.visible = !this.visible;
106
+ if (this.aggregations != null && this.aggregations.length > 0) {
107
+ this.visible = true;
108
+ }
103
109
  this.onFilterChange();
104
110
  }
105
111
  becomeTheCoord(theCoord) {
@@ -132,4 +138,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
132
138
  }], filterChange: [{
133
139
  type: Output
134
140
  }] } });
135
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXFwLWR5bmFtaWMtbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItdGVtcGxhdGVzL2RhdGUtZmlsdGVyLXRlbXBsYXRlL2RhdGUtZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VxcC1keW5hbWljLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvcHJpdmF0ZS9mb3JtLXN0YXRpc3RpY3MvZmlsdGVyLXRlbXBsYXRlcy9kYXRlLWZpbHRlci10ZW1wbGF0ZS9kYXRlLWZpbHRlci10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUV0RixPQUFPLEVBQWEsZ0JBQWdCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUMzRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZ0NBQWdDLEVBQTRDLE1BQU0sdUNBQXVDLENBQUM7QUFDbkksT0FBTyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7Ozs7OztBQVFwRCxNQUFNLE9BQU8sMkJBQTJCO0lBNEJ0QztRQXhCUyxjQUFTLEdBQWMsSUFBSSxDQUFDO1FBQzVCLFdBQU0sR0FBWSxJQUFJLENBQUM7UUFFdEIsaUJBQVksR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUVwRSx5QkFBb0IsR0FBRyxpQkFBaUIsQ0FBQztRQUN6QywwQkFBcUIsR0FBc0IsaUJBQWlCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDakUsb0JBQWUsR0FBWSxLQUFLLENBQUM7UUFFakMsVUFBSyxHQUFHLFFBQVEsQ0FBQztRQUNqQixhQUFRLEdBQUcsWUFBWSxDQUFDO1FBR3hCLGlCQUFZLEdBQVcsSUFBSSxDQUFDO1FBRTVCLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFDekIscUJBQWdCLEdBQWMsSUFBSSxDQUFDO1FBTW5DLDRCQUF1QixHQUFHLGdDQUFnQyxDQUFDO0lBRTNDLENBQUM7SUFFakIsUUFBUTtRQUVOLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLEVBQUM7WUFDekIsSUFBSSxDQUFDLHFCQUFxQixHQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBbUMsQ0FBQztZQUNqRixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7WUFDcEQsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQztZQUN0QyxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDO1lBQzlCLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUM7WUFDOUIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQztTQUNqRDtRQUVELElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixJQUFJLE9BQU8sQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsV0FBVyxFQUFDO1lBQzNFLElBQUksQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDbEgsSUFBSSxDQUFDLEdBQUcsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUNsSCxJQUFJLENBQUMsWUFBWSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1NBQzlJO0lBQ0wsQ0FBQztJQUVEOzs7T0FHRztJQUNLLFdBQVc7UUFDakIsUUFBUSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRTtZQUM3QixLQUFLLGdCQUFnQixDQUFDLFdBQVcsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLElBQUksR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDO2dCQUNoQyxNQUFNO1lBQ1IsS0FBSyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQztnQkFDaEMsTUFBTTtZQUNSLEtBQUssZ0JBQWdCLENBQUMsWUFBWSxDQUFDO2dCQUNqQyxJQUFJLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQyxjQUFjLENBQUM7Z0JBQ3BDLE1BQU07U0FDVDtJQUNILENBQUM7SUFFSDs7TUFFRTtJQUNGLGNBQWM7UUFDVixJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELGVBQWU7UUFFYixJQUFJLFNBQVMsR0FBYztZQUN6QixHQUFHLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJO1lBQ3BCLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO1lBQ25DLGFBQWEsRUFBRSxJQUFJLENBQUMscUJBQXFCO1lBQ3pDLFNBQVMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVM7WUFDL0IsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3JCLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztZQUNiLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztZQUNiLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtTQUNoQyxDQUFBO1FBRUQsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxFQUFDO1lBQzVCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUM7U0FDM0M7YUFBTTtZQUNMLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLElBQUksZ0JBQWdCLENBQUMsV0FBVyxDQUFDLEVBQUM7Z0JBQ3pELElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO2FBQ2xDO1lBQ0QsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsSUFBSSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsRUFBQztnQkFDMUQsSUFBSSxDQUFDLFlBQVksR0FBRyxrQkFBa0IsQ0FBQzthQUN4QztZQUNELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLElBQUksZ0JBQWdCLENBQUMsYUFBYSxDQUFDLEVBQUM7Z0JBQzNELElBQUksQ0FBQyxZQUFZLEdBQUcsT0FBTyxDQUFDO2FBQzdCO1NBQ0Y7SUFFSCxDQUFDO0lBRUQ7O09BRUc7SUFFTSxnQkFBZ0I7UUFDckIsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDN0IsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFTSxjQUFjLENBQUMsUUFBZ0I7UUFDcEMsSUFBSSxRQUFRLElBQUksR0FBRyxFQUFDO1lBQ2xCLElBQUksQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDO1lBQ2pCLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO1NBQ3RCO1FBQ0QsSUFBSSxRQUFRLElBQUksR0FBRyxFQUFDO1lBQ2xCLElBQUksQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDO1lBQ2pCLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO1NBQ3RCO1FBQ0QsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7O3lIQW5JVSwyQkFBMkI7NkdBQTNCLDJCQUEyQixrUUNieEMsNjZEQWdDTTs0RkRuQk8sMkJBQTJCO2tCQUx2QyxTQUFTOytCQUNFLHNCQUFzQjswRUFNdkIsS0FBSztzQkFBYixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ0ksWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJlY29yZCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21vZGVscy9yZWNvcmQubW9kZWwnO1xyXG5pbXBvcnQgeyBEYXRlRmllbGQsIERhdGVUaW1lVHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvZmllbGRzL2RhdGVGaWVsZC5tb2RlbCc7XHJcbmltcG9ydCB7IExvZ2ljT3BlcmF0b3JEYXRlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL2xvZ2ljT3BlcmF0b3IubW9kZWwnO1xyXG5pbXBvcnQgeyBOb3ROdW1iZXJBZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bSwgTnVtYmVyQWdncmVnYXRpb25GdW5jdGlvbkVudW0sIFN0YXRpc3RpYyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21vZGVscy9zdGF0aXN0aWMubW9kZWwnO1xyXG5pbXBvcnQgeyBNb2RlRW51bSwgVGltZVR5cGVFbnVtIH0gZnJvbSAndG13LXBpY2tlcic7XHJcbmltcG9ydCB7IER5bmFtaWNNb2R1bGVGaWx0ZXJSZXN1bHRWaWV3TW9kZUVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvZHluYW1pY01vZHVsZUZpbHRlclJlc3VsdFZpZXdNb2RlRW51bS5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2RhdGUtZmlsdGVyLXRlbXBsYXRlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZGF0ZS1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2RhdGUtZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIERhdGVGaWx0ZXJUZW1wbGF0ZUNvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpIGZpZWxkOiBEYXRlRmllbGQ7XHJcbiAgQElucHV0KCkgcmVjb3JkOiBSZWNvcmQ7XHJcbiAgQElucHV0KCkgU3RhdGlzdGljOiBTdGF0aXN0aWMgPSBudWxsO1xyXG4gIEBJbnB1dCgpIHNob3dYWTogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgZmlsdGVyUmVzdWx0Vmlld01vZGU6IER5bmFtaWNNb2R1bGVGaWx0ZXJSZXN1bHRWaWV3TW9kZUVudW07XHJcbiAgQE91dHB1dCgpIGZpbHRlckNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgbG9naWNPcGVyYXRvck51bWVyaWMgPSBMb2dpY09wZXJhdG9yRGF0ZTtcclxuICBzZWxlY3RlZExvZ2ljT3BlcmF0b3I6IExvZ2ljT3BlcmF0b3JEYXRlID0gTG9naWNPcGVyYXRvckRhdGVbJyddO1xyXG4gIGFjdGl2ZUNvbmRpdGlvbjogYm9vbGVhbiA9IGZhbHNlOyAgXHJcblxyXG4gIG1vZGVzID0gTW9kZUVudW07XHJcbiAgdGltZVR5cGUgPSBUaW1lVHlwZUVudW07XHJcbiAgbW9kZTogTW9kZUVudW07XHJcblxyXG4gIG91dHB1dEZvcm1hdDogc3RyaW5nID0gbnVsbDtcclxuXHJcbiAgdmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGN1cnJlbnRTdGF0aXN0aWM6IFN0YXRpc3RpYyA9IG51bGw7ICBcclxuXHJcbiAgaXNYOiBib29sZWFuO1xyXG4gIGlzWTogYm9vbGVhbjsgIFxyXG5cclxuICBhZ2dyZWdhdGlvbnM6IEFycmF5PE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtPiB8IEFycmF5PE5vdE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtPjtcclxuICBhZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bSA9IE5vdE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuXHJcbiAgICBpZiAodGhpcy5TdGF0aXN0aWMgIT0gbnVsbCl7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRMb2dpY09wZXJhdG9yID0gKHRoaXMuU3RhdGlzdGljLmxvZ2ljb3BlcmF0b3IgYXMgTG9naWNPcGVyYXRvckRhdGUpO1xyXG4gICAgICB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID0gdGhpcy5TdGF0aXN0aWMudmFsdWU7XHJcbiAgICAgIHRoaXMudmlzaWJsZSA9IHRoaXMuU3RhdGlzdGljLnZpc2libGU7XHJcbiAgICAgIHRoaXMuaXNYID0gdGhpcy5TdGF0aXN0aWMuaXNYO1xyXG4gICAgICB0aGlzLmlzWSA9IHRoaXMuU3RhdGlzdGljLmlzWTtcclxuICAgICAgdGhpcy5hZ2dyZWdhdGlvbnMgPSB0aGlzLlN0YXRpc3RpYy5hZ2dyZWdhdGlvbnM7XHJcbiAgICB9IFxyXG5cclxuICAgIHRoaXMuc2V0VGltZVR5cGUoKTtcclxuICAgIHRoaXMuc2V0T3V0cHV0Rm9ybWF0KCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICAgIGlmIChjaGFuZ2VzLmhhc093blByb3BlcnR5KCdTdGF0aXN0aWMnKSAmJiAhY2hhbmdlc1snU3RhdGlzdGljJ10uZmlyc3RDaGFuZ2Upe1xyXG4gICAgICAgIHRoaXMuaXNYID0gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmhhc093blByb3BlcnR5KCdpc1gnKSA/IGNoYW5nZXNbJ1N0YXRpc3RpYyddLmN1cnJlbnRWYWx1ZS5pc1ggOiBudWxsO1xyXG4gICAgICAgIHRoaXMuaXNZID0gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmhhc093blByb3BlcnR5KCdpc1knKSA/IGNoYW5nZXNbJ1N0YXRpc3RpYyddLmN1cnJlbnRWYWx1ZS5pc1kgOiBudWxsO1xyXG4gICAgICAgIHRoaXMuYWdncmVnYXRpb25zID0gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmhhc093blByb3BlcnR5KCdhZ2dyZWdhdGlvbnMnKSA/IGNoYW5nZXNbJ1N0YXRpc3RpYyddLmN1cnJlbnRWYWx1ZS5hZ2dyZWdhdGlvbnMgOiBudWxsO1xyXG4gICAgICB9XHJcbiAgfSAgIFxyXG5cclxuICAvKipcclxuICAgKiBJbiBiYXNlIGFsIGZvcm1hdG8gZGVsbGEgZGF0YSByaWNoaWVzdGEgbmVsIERhdGVGaWVsZCAoc29sbyBkYXRhLCBzb2xvIG9yYXJpbyBvIGRhdGEgZSBvcmEpXHJcbiAgICogaW1wb3N0YSBsYSB2aXN1YWxpenphemlvbmUgY29ycmV0dGEgZGVsIGNvbXBvbmVudGUgZXFwLWRhdGV0aW1lcGlja2VyLlxyXG4gICAqL1xyXG4gIHByaXZhdGUgc2V0VGltZVR5cGUoKSB7XHJcbiAgICBzd2l0Y2ggKHRoaXMuZmllbGQuSXNPbmx5RGF0ZSkge1xyXG4gICAgICBjYXNlIERhdGVUaW1lVHlwZUVudW1bXCJTb2xvIGRhdGFcIl06XHJcbiAgICAgICAgdGhpcy5tb2RlID0gTW9kZUVudW0uREFURVBJQ0tFUjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBEYXRlVGltZVR5cGVFbnVtW1wiU29sbyBvcmFyaW9cIl06XHJcbiAgICAgICAgdGhpcy5tb2RlID0gTW9kZUVudW0uVElNRVBJQ0tFUjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBEYXRlVGltZVR5cGVFbnVtW1wiRGF0YSBlIG9yYVwiXTpcclxuICAgICAgICB0aGlzLm1vZGUgPSBNb2RlRW51bS5EQVRFVElNRVBJQ0tFUjtcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuICB9XHJcblxyXG4vKipcclxuKiBNZXRvZG8gcGVyIGVtZXR0ZXJlIGwnZXZlbnRvIGNoZSBpbCB2YWxvcmUgZGVsIHJlY29yZCDDqCBjYW1iaWF0by5cclxuKi9cclxub25GaWx0ZXJDaGFuZ2UoKSB7ICAgXHJcbiAgICB2YXIgc3RhdGlzdGljID0gdGhpcy5jcmVhdGVTdGF0aXN0aWMoKTtcclxuICAgIHRoaXMuZmlsdGVyQ2hhbmdlLmVtaXQoc3RhdGlzdGljKTtcclxufVxyXG5cclxuY3JlYXRlU3RhdGlzdGljKCl7XHJcblxyXG4gIHZhciBzdGF0aXN0aWM6IFN0YXRpc3RpYyA9IHtcclxuICAgIGtleTogdGhpcy5maWVsZC5OYW1lLFxyXG4gICAgdmFsdWU6IHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0sXHJcbiAgICBsb2dpY29wZXJhdG9yOiB0aGlzLnNlbGVjdGVkTG9naWNPcGVyYXRvcixcclxuICAgIGZpZWxkdHlwZTogdGhpcy5maWVsZC5GaWVsZFR5cGUsXHJcbiAgICB2aXNpYmxlOiB0aGlzLnZpc2libGUsXHJcbiAgICBpc1g6IHRoaXMuaXNYLFxyXG4gICAgaXNZOiB0aGlzLmlzWSxcclxuICAgIGFnZ3JlZ2F0aW9uczogdGhpcy5hZ2dyZWdhdGlvbnNcclxuICB9XHJcblxyXG4gIHJldHVybiBzdGF0aXN0aWM7XHJcbn1cclxuXHJcbnNldE91dHB1dEZvcm1hdCgpe1xyXG4gIGlmICh0aGlzLm91dHB1dEZvcm1hdCAhPSBudWxsKXtcclxuICAgIHRoaXMub3V0cHV0Rm9ybWF0ID0gdGhpcy5maWVsZC5EYXRlRm9ybWF0OyAgXHJcbiAgfSBlbHNlIHtcclxuICAgIGlmICh0aGlzLmZpZWxkLklzT25seURhdGUgPT0gRGF0ZVRpbWVUeXBlRW51bVsnU29sbyBkYXRhJ10pe1xyXG4gICAgICB0aGlzLm91dHB1dEZvcm1hdCA9ICdERC9NTS9ZWVlZJztcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmZpZWxkLklzT25seURhdGUgPT0gRGF0ZVRpbWVUeXBlRW51bVsnRGF0YSBlIG9yYSddKXtcclxuICAgICAgdGhpcy5vdXRwdXRGb3JtYXQgPSAnREQvTU0vWVlZWSBISDptbSc7XHJcbiAgICB9ICAgICAgXHJcbiAgICBpZiAodGhpcy5maWVsZC5Jc09ubHlEYXRlID09IERhdGVUaW1lVHlwZUVudW1bJ1NvbG8gb3JhcmlvJ10pe1xyXG4gICAgICB0aGlzLm91dHB1dEZvcm1hdCA9ICdISDptbSc7XHJcbiAgICB9ICAgICAgICAgIFxyXG4gIH1cclxuICBcclxufVxyXG5cclxuLyoqXHJcbiAqIEdlc3Rpb25lIHZpc2liaWxpdMOgXHJcbiAqL1xyXG5cclxuICBwdWJsaWMgY2hhbmdlVmlzaWJpbGl0eSgpe1xyXG4gICAgdGhpcy52aXNpYmxlID0gIXRoaXMudmlzaWJsZTtcclxuICAgIHRoaXMub25GaWx0ZXJDaGFuZ2UoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBiZWNvbWVUaGVDb29yZCh0aGVDb29yZDogc3RyaW5nKXtcclxuICAgIGlmICh0aGVDb29yZCA9PSBcIlhcIil7IFxyXG4gICAgICB0aGlzLmlzWSA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmlzWCA9ICF0aGlzLmlzWDsgXHJcbiAgICB9IFxyXG4gICAgaWYgKHRoZUNvb3JkID09IFwiWVwiKXsgXHJcbiAgICAgIHRoaXMuaXNYID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuaXNZID0gIXRoaXMuaXNZOyBcclxuICAgIH0gXHJcbiAgICB0aGlzLm9uRmlsdGVyQ2hhbmdlKCk7XHJcbiAgfVxyXG5cclxuXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMiByb3dDb2xcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidmlzaWJsZUNvbFwiPlxyXG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuXCIgW25nQ2xhc3NdPVwieydidG4tc3VjY2Vzcyc6IHZpc2libGUgLCAnYnRuLWRhbmdlcic6ICF2aXNpYmxlIH1cIiAoY2xpY2spPVwiY2hhbmdlVmlzaWJpbGl0eSgpXCI+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJ2aXNpYmxlXCI+dmlzaWJpbGl0eTwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCIhdmlzaWJsZVwiPnZpc2liaWxpdHlfb2ZmPC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+ICAgICAgICBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29vcmRpbmF0ZXNDb2xcIiBbaGlkZGVuXT1cIiFzaG93WFlcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0blwiIFtuZ0NsYXNzXT1cInsnYnRuLXByaW1hcnknOiAhaXNYICwgJ2J0bi1zdWNjZXNzJzogaXNYIH1cIiAoY2xpY2spPVwiYmVjb21lVGhlQ29vcmQoJ1gnKVwiPlg8L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj4gICAgICAgICAgICBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwidmFsdWVDb2xcIj5cclxuICAgICAgICAgICAgPHRtdy1kYXRldGltZXBpY2tlciAgW3BsYWNlaG9sZGVyXT1cImZpZWxkLkRlc2NyaXB0aW9uXCIgW2xhYmVsXT1cImZpZWxkLkRlc2NyaXB0aW9uXCIgW3BpY2tlck1vZGVdPVwibW9kZVwiXHJcbiAgICAgICAgICAgIFtmb3JtR3JvdXBJbnB1dF09XCJmaWVsZC5Gb3JtRm9ybUdyb3VwXCIgW2Zvcm1Db250cm9sTmFtZUlucHV0XT1cImZpZWxkLk5hbWVcIlxyXG4gICAgICAgICAgICBbbWluRGF0ZV09XCJmaWVsZC5NaW5EYXRlID8gZmllbGQuTWluRGF0ZSA6IG51bGxcIiBbbWF4RGF0ZV09XCJmaWVsZC5NYXhEYXRlID8gZmllbGQuTWF4RGF0ZSA6IG51bGxcIlxyXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiZmllbGQuRm9ybUZvcm1Hcm91cC5kaXNhYmxlZFwiIFsobmdNb2RlbElucHV0KV09XCJyZWNvcmRbZmllbGQuTmFtZV1cIlxyXG4gICAgICAgICAgICAobmdNb2RlbElucHV0Q2hhbmdlKT1cIm9uRmlsdGVyQ2hhbmdlKClcIiBbb3V0cHV0Rm9ybWF0XT1cIm91dHB1dEZvcm1hdFwiID5cclxuICAgICAgICAgICAgPC90bXctZGF0ZXRpbWVwaWNrZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm9wZXJhdG9yQ29sXCI+XHJcbiAgICAgICAgICAgIDxlcXAtc2VsZWN0IFtlbnVtRGF0YV09XCJsb2dpY09wZXJhdG9yTnVtZXJpY1wiIFsobmdNb2RlbElucHV0KV09XCJzZWxlY3RlZExvZ2ljT3BlcmF0b3JcIiBbc2hvd0NhbmNlbEJ1dHRvbl09XCJmYWxzZVwiIChuZ01vZGVsSW5wdXRDaGFuZ2UpPVwib25GaWx0ZXJDaGFuZ2UoKVwiPjwvZXFwLXNlbGVjdD5cclxuICAgICAgICA8L2Rpdj4gICAgICAgIFxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhZ2dyZWdhdG9yQ29sXCI+XHJcbiAgICAgICAgICAgIDxlcXAtc2VsZWN0XHJcbiAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0FnZ3JlZ2F6aW9uaSdcIlxyXG4gICAgICAgICAgICAgICAgW2lzTXVsdGlTZWxlY3RdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICBbZW51bURhdGFdPVwiYWdncmVnYXRpb25GdW5jdGlvbkVudW1cIlxyXG4gICAgICAgICAgICAgICAgWyhuZ01vZGVsSW5wdXQpXT1cImFnZ3JlZ2F0aW9uc1wiXHJcbiAgICAgICAgICAgICAgICAobmdNb2RlbElucHV0Q2hhbmdlKT1cIm9uRmlsdGVyQ2hhbmdlKClcIlxyXG4gICAgICAgICAgICA+PC9lcXAtc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
141
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXFwLWR5bmFtaWMtbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItdGVtcGxhdGVzL2RhdGUtZmlsdGVyLXRlbXBsYXRlL2RhdGUtZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VxcC1keW5hbWljLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvcHJpdmF0ZS9mb3JtLXN0YXRpc3RpY3MvZmlsdGVyLXRlbXBsYXRlcy9kYXRlLWZpbHRlci10ZW1wbGF0ZS9kYXRlLWZpbHRlci10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUV0RixPQUFPLEVBQWEsZ0JBQWdCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUMzRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZ0NBQWdDLEVBQTRDLE1BQU0sdUNBQXVDLENBQUM7QUFDbkksT0FBTyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7Ozs7OztBQVFwRCxNQUFNLE9BQU8sMkJBQTJCO0lBNEJ0QztRQXhCUyxjQUFTLEdBQWMsSUFBSSxDQUFDO1FBQzVCLFdBQU0sR0FBWSxJQUFJLENBQUM7UUFFdEIsaUJBQVksR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUVwRSx5QkFBb0IsR0FBRyxpQkFBaUIsQ0FBQztRQUN6QywwQkFBcUIsR0FBc0IsaUJBQWlCLENBQUMsRUFB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QUFDO2dCQUMzRCxJQUFJLENBQUMsWUFBWSxHQUFHLE9BQU8sQ0FBQzthQUM3QjtTQUNGO0lBRUgsQ0FBQztJQUVEOztPQUVHO0lBRU0sZ0JBQWdCO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQzdCLElBQUksSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFDO1lBQUUsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7U0FBRTtRQUN0RixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVNLGNBQWMsQ0FBQyxRQUFnQjtRQUNwQyxJQUFJLFFBQVEsSUFBSSxHQUFHLEVBQUM7WUFDbEIsSUFBSSxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUM7WUFDakIsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7U0FDdEI7UUFDRCxJQUFJLFFBQVEsSUFBSSxHQUFHLEVBQUM7WUFDbEIsSUFBSSxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUM7WUFDakIsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7U0FDdEI7UUFDRCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQzs7eUhBcklVLDJCQUEyQjs2R0FBM0IsMkJBQTJCLGtRQ2J4Qyw2NkRBZ0NNOzRGRG5CTywyQkFBMkI7a0JBTHZDLFNBQVM7K0JBQ0Usc0JBQXNCOzBFQU12QixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDSSxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmVjb3JkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL3JlY29yZC5tb2RlbCc7XHJcbmltcG9ydCB7IERhdGVGaWVsZCwgRGF0ZVRpbWVUeXBlRW51bSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21vZGVscy9maWVsZHMvZGF0ZUZpZWxkLm1vZGVsJztcclxuaW1wb3J0IHsgTG9naWNPcGVyYXRvckRhdGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvbG9naWNPcGVyYXRvci5tb2RlbCc7XHJcbmltcG9ydCB7IE5vdE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtLCBOdW1iZXJBZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bSwgU3RhdGlzdGljIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL3N0YXRpc3RpYy5tb2RlbCc7XHJcbmltcG9ydCB7IE1vZGVFbnVtLCBUaW1lVHlwZUVudW0gfSBmcm9tICd0bXctcGlja2VyJztcclxuaW1wb3J0IHsgRHluYW1pY01vZHVsZUZpbHRlclJlc3VsdFZpZXdNb2RlRW51bSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21vZGVscy9keW5hbWljTW9kdWxlRmlsdGVyUmVzdWx0Vmlld01vZGVFbnVtLm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGF0ZS1maWx0ZXItdGVtcGxhdGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRlLWZpbHRlci10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZGF0ZS1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGF0ZUZpbHRlclRlbXBsYXRlQ29tcG9uZW50IHtcclxuXHJcbiAgQElucHV0KCkgZmllbGQ6IERhdGVGaWVsZDtcclxuICBASW5wdXQoKSByZWNvcmQ6IFJlY29yZDtcclxuICBASW5wdXQoKSBTdGF0aXN0aWM6IFN0YXRpc3RpYyA9IG51bGw7XHJcbiAgQElucHV0KCkgc2hvd1hZOiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBmaWx0ZXJSZXN1bHRWaWV3TW9kZTogRHluYW1pY01vZHVsZUZpbHRlclJlc3VsdFZpZXdNb2RlRW51bTtcclxuICBAT3V0cHV0KCkgZmlsdGVyQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBsb2dpY09wZXJhdG9yTnVtZXJpYyA9IExvZ2ljT3BlcmF0b3JEYXRlO1xyXG4gIHNlbGVjdGVkTG9naWNPcGVyYXRvcjogTG9naWNPcGVyYXRvckRhdGUgPSBMb2dpY09wZXJhdG9yRGF0ZVsnJ107XHJcbiAgYWN0aXZlQ29uZGl0aW9uOiBib29sZWFuID0gZmFsc2U7ICBcclxuXHJcbiAgbW9kZXMgPSBNb2RlRW51bTtcclxuICB0aW1lVHlwZSA9IFRpbWVUeXBlRW51bTtcclxuICBtb2RlOiBNb2RlRW51bTtcclxuXHJcbiAgb3V0cHV0Rm9ybWF0OiBzdHJpbmcgPSBudWxsO1xyXG5cclxuICB2aXNpYmxlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgY3VycmVudFN0YXRpc3RpYzogU3RhdGlzdGljID0gbnVsbDsgIFxyXG5cclxuICBpc1g6IGJvb2xlYW47XHJcbiAgaXNZOiBib29sZWFuOyAgXHJcblxyXG4gIGFnZ3JlZ2F0aW9uczogQXJyYXk8TnVtYmVyQWdncmVnYXRpb25GdW5jdGlvbkVudW0+IHwgQXJyYXk8Tm90TnVtYmVyQWdncmVnYXRpb25GdW5jdGlvbkVudW0+O1xyXG4gIGFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtID0gTm90TnVtYmVyQWdncmVnYXRpb25GdW5jdGlvbkVudW07XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG5cclxuICAgIGlmICh0aGlzLlN0YXRpc3RpYyAhPSBudWxsKXtcclxuICAgICAgdGhpcy5zZWxlY3RlZExvZ2ljT3BlcmF0b3IgPSAodGhpcy5TdGF0aXN0aWMubG9naWNvcGVyYXRvciBhcyBMb2dpY09wZXJhdG9yRGF0ZSk7XHJcbiAgICAgIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPSB0aGlzLlN0YXRpc3RpYy52YWx1ZTtcclxuICAgICAgdGhpcy52aXNpYmxlID0gdGhpcy5TdGF0aXN0aWMudmlzaWJsZTtcclxuICAgICAgdGhpcy5pc1ggPSB0aGlzLlN0YXRpc3RpYy5pc1g7XHJcbiAgICAgIHRoaXMuaXNZID0gdGhpcy5TdGF0aXN0aWMuaXNZO1xyXG4gICAgICB0aGlzLmFnZ3JlZ2F0aW9ucyA9IHRoaXMuU3RhdGlzdGljLmFnZ3JlZ2F0aW9ucztcclxuICAgIH0gXHJcblxyXG4gICAgdGhpcy5zZXRUaW1lVHlwZSgpO1xyXG4gICAgdGhpcy5zZXRPdXRwdXRGb3JtYXQoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgICAgaWYgKGNoYW5nZXMuaGFzT3duUHJvcGVydHkoJ1N0YXRpc3RpYycpICYmICFjaGFuZ2VzWydTdGF0aXN0aWMnXS5maXJzdENoYW5nZSl7XHJcbiAgICAgICAgdGhpcy5pc1ggPSBjaGFuZ2VzWydTdGF0aXN0aWMnXS5jdXJyZW50VmFsdWUuaGFzT3duUHJvcGVydHkoJ2lzWCcpID8gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmlzWCA6IG51bGw7XHJcbiAgICAgICAgdGhpcy5pc1kgPSBjaGFuZ2VzWydTdGF0aXN0aWMnXS5jdXJyZW50VmFsdWUuaGFzT3duUHJvcGVydHkoJ2lzWScpID8gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmlzWSA6IG51bGw7XHJcbiAgICAgICAgdGhpcy5hZ2dyZWdhdGlvbnMgPSBjaGFuZ2VzWydTdGF0aXN0aWMnXS5jdXJyZW50VmFsdWUuaGFzT3duUHJvcGVydHkoJ2FnZ3JlZ2F0aW9ucycpID8gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmFnZ3JlZ2F0aW9ucyA6IG51bGw7XHJcbiAgICAgIH1cclxuICB9ICAgXHJcblxyXG4gIC8qKlxyXG4gICAqIEluIGJhc2UgYWwgZm9ybWF0byBkZWxsYSBkYXRhIHJpY2hpZXN0YSBuZWwgRGF0ZUZpZWxkIChzb2xvIGRhdGEsIHNvbG8gb3JhcmlvIG8gZGF0YSBlIG9yYSlcclxuICAgKiBpbXBvc3RhIGxhIHZpc3VhbGl6emF6aW9uZSBjb3JyZXR0YSBkZWwgY29tcG9uZW50ZSBlcXAtZGF0ZXRpbWVwaWNrZXIuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBzZXRUaW1lVHlwZSgpIHtcclxuICAgIHN3aXRjaCAodGhpcy5maWVsZC5Jc09ubHlEYXRlKSB7XHJcbiAgICAgIGNhc2UgRGF0ZVRpbWVUeXBlRW51bVtcIlNvbG8gZGF0YVwiXTpcclxuICAgICAgICB0aGlzLm1vZGUgPSBNb2RlRW51bS5EQVRFUElDS0VSO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIERhdGVUaW1lVHlwZUVudW1bXCJTb2xvIG9yYXJpb1wiXTpcclxuICAgICAgICB0aGlzLm1vZGUgPSBNb2RlRW51bS5USU1FUElDS0VSO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIERhdGVUaW1lVHlwZUVudW1bXCJEYXRhIGUgb3JhXCJdOlxyXG4gICAgICAgIHRoaXMubW9kZSA9IE1vZGVFbnVtLkRBVEVUSU1FUElDS0VSO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbi8qKlxyXG4qIE1ldG9kbyBwZXIgZW1ldHRlcmUgbCdldmVudG8gY2hlIGlsIHZhbG9yZSBkZWwgcmVjb3JkIMOoIGNhbWJpYXRvLlxyXG4qL1xyXG5vbkZpbHRlckNoYW5nZSgpIHsgICBcclxuICAgIHZhciBzdGF0aXN0aWMgPSB0aGlzLmNyZWF0ZVN0YXRpc3RpYygpO1xyXG4gICAgdGhpcy5maWx0ZXJDaGFuZ2UuZW1pdChzdGF0aXN0aWMpO1xyXG59XHJcblxyXG5jcmVhdGVTdGF0aXN0aWMoKXtcclxuICBpZiAodGhpcy5hZ2dyZWdhdGlvbnMgIT0gbnVsbCAmJiB0aGlzLmFnZ3JlZ2F0aW9ucy5sZW5ndGggPiAwKXsgdGhpcy52aXNpYmxlID0gdHJ1ZTsgfVxyXG5cclxuICB2YXIgc3RhdGlzdGljOiBTdGF0aXN0aWMgPSB7XHJcbiAgICBrZXk6IHRoaXMuZmllbGQuTmFtZSxcclxuICAgIHZhbHVlOiB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdLFxyXG4gICAgbG9naWNvcGVyYXRvcjogdGhpcy5zZWxlY3RlZExvZ2ljT3BlcmF0b3IsXHJcbiAgICBmaWVsZHR5cGU6IHRoaXMuZmllbGQuRmllbGRUeXBlLFxyXG4gICAgdmlzaWJsZTogdGhpcy52aXNpYmxlLFxyXG4gICAgaXNYOiB0aGlzLmlzWCxcclxuICAgIGlzWTogdGhpcy5pc1ksXHJcbiAgICBhZ2dyZWdhdGlvbnM6IHRoaXMuYWdncmVnYXRpb25zXHJcbiAgfVxyXG5cclxuICByZXR1cm4gc3RhdGlzdGljO1xyXG59XHJcblxyXG5zZXRPdXRwdXRGb3JtYXQoKXtcclxuICBpZiAodGhpcy5vdXRwdXRGb3JtYXQgIT0gbnVsbCl7XHJcbiAgICB0aGlzLm91dHB1dEZvcm1hdCA9IHRoaXMuZmllbGQuRGF0ZUZvcm1hdDsgIFxyXG4gIH0gZWxzZSB7XHJcbiAgICBpZiAodGhpcy5maWVsZC5Jc09ubHlEYXRlID09IERhdGVUaW1lVHlwZUVudW1bJ1NvbG8gZGF0YSddKXtcclxuICAgICAgdGhpcy5vdXRwdXRGb3JtYXQgPSAnREQvTU0vWVlZWSc7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5maWVsZC5Jc09ubHlEYXRlID09IERhdGVUaW1lVHlwZUVudW1bJ0RhdGEgZSBvcmEnXSl7XHJcbiAgICAgIHRoaXMub3V0cHV0Rm9ybWF0ID0gJ0REL01NL1lZWVkgSEg6bW0nO1xyXG4gICAgfSAgICAgIFxyXG4gICAgaWYgKHRoaXMuZmllbGQuSXNPbmx5RGF0ZSA9PSBEYXRlVGltZVR5cGVFbnVtWydTb2xvIG9yYXJpbyddKXtcclxuICAgICAgdGhpcy5vdXRwdXRGb3JtYXQgPSAnSEg6bW0nO1xyXG4gICAgfSAgICAgICAgICBcclxuICB9XHJcbiAgXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBHZXN0aW9uZSB2aXNpYmlsaXTDoFxyXG4gKi9cclxuXHJcbiAgcHVibGljIGNoYW5nZVZpc2liaWxpdHkoKXtcclxuICAgIHRoaXMudmlzaWJsZSA9ICF0aGlzLnZpc2libGU7XHJcbiAgICBpZiAodGhpcy5hZ2dyZWdhdGlvbnMgIT0gbnVsbCAmJiB0aGlzLmFnZ3JlZ2F0aW9ucy5sZW5ndGggPiAwKXsgdGhpcy52aXNpYmxlID0gdHJ1ZTsgfVxyXG4gICAgdGhpcy5vbkZpbHRlckNoYW5nZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGJlY29tZVRoZUNvb3JkKHRoZUNvb3JkOiBzdHJpbmcpe1xyXG4gICAgaWYgKHRoZUNvb3JkID09IFwiWFwiKXsgXHJcbiAgICAgIHRoaXMuaXNZID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuaXNYID0gIXRoaXMuaXNYOyBcclxuICAgIH0gXHJcbiAgICBpZiAodGhlQ29vcmQgPT0gXCJZXCIpeyBcclxuICAgICAgdGhpcy5pc1ggPSBmYWxzZTtcclxuICAgICAgdGhpcy5pc1kgPSAhdGhpcy5pc1k7IFxyXG4gICAgfSBcclxuICAgIHRoaXMub25GaWx0ZXJDaGFuZ2UoKTtcclxuICB9XHJcblxyXG5cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIHJvd0NvbFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ2aXNpYmxlQ29sXCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG5cIiBbbmdDbGFzc109XCJ7J2J0bi1zdWNjZXNzJzogdmlzaWJsZSAsICdidG4tZGFuZ2VyJzogIXZpc2libGUgfVwiIChjbGljayk9XCJjaGFuZ2VWaXNpYmlsaXR5KClcIj5cclxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cInZpc2libGVcIj52aXNpYmlsaXR5PC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cIiF2aXNpYmxlXCI+dmlzaWJpbGl0eV9vZmY8L21hdC1pY29uPlxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj4gICAgICAgIFxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb29yZGluYXRlc0NvbFwiIFtoaWRkZW5dPVwiIXNob3dYWVwiPlxyXG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuXCIgW25nQ2xhc3NdPVwieydidG4tcHJpbWFyeSc6ICFpc1ggLCAnYnRuLXN1Y2Nlc3MnOiBpc1ggfVwiIChjbGljayk9XCJiZWNvbWVUaGVDb29yZCgnWCcpXCI+WDwvYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PiAgICAgICAgICAgIFxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ2YWx1ZUNvbFwiPlxyXG4gICAgICAgICAgICA8dG13LWRhdGV0aW1lcGlja2VyICBbcGxhY2Vob2xkZXJdPVwiZmllbGQuRGVzY3JpcHRpb25cIiBbbGFiZWxdPVwiZmllbGQuRGVzY3JpcHRpb25cIiBbcGlja2VyTW9kZV09XCJtb2RlXCJcclxuICAgICAgICAgICAgW2Zvcm1Hcm91cElucHV0XT1cImZpZWxkLkZvcm1Gb3JtR3JvdXBcIiBbZm9ybUNvbnRyb2xOYW1lSW5wdXRdPVwiZmllbGQuTmFtZVwiXHJcbiAgICAgICAgICAgIFttaW5EYXRlXT1cImZpZWxkLk1pbkRhdGUgPyBmaWVsZC5NaW5EYXRlIDogbnVsbFwiIFttYXhEYXRlXT1cImZpZWxkLk1heERhdGUgPyBmaWVsZC5NYXhEYXRlIDogbnVsbFwiXHJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmaWVsZC5Gb3JtRm9ybUdyb3VwLmRpc2FibGVkXCIgWyhuZ01vZGVsSW5wdXQpXT1cInJlY29yZFtmaWVsZC5OYW1lXVwiXHJcbiAgICAgICAgICAgIChuZ01vZGVsSW5wdXRDaGFuZ2UpPVwib25GaWx0ZXJDaGFuZ2UoKVwiIFtvdXRwdXRGb3JtYXRdPVwib3V0cHV0Rm9ybWF0XCIgPlxyXG4gICAgICAgICAgICA8L3Rtdy1kYXRldGltZXBpY2tlcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwib3BlcmF0b3JDb2xcIj5cclxuICAgICAgICAgICAgPGVxcC1zZWxlY3QgW2VudW1EYXRhXT1cImxvZ2ljT3BlcmF0b3JOdW1lcmljXCIgWyhuZ01vZGVsSW5wdXQpXT1cInNlbGVjdGVkTG9naWNPcGVyYXRvclwiIFtzaG93Q2FuY2VsQnV0dG9uXT1cImZhbHNlXCIgKG5nTW9kZWxJbnB1dENoYW5nZSk9XCJvbkZpbHRlckNoYW5nZSgpXCI+PC9lcXAtc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PiAgICAgICAgXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImFnZ3JlZ2F0b3JDb2xcIj5cclxuICAgICAgICAgICAgPGVxcC1zZWxlY3RcclxuICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQWdncmVnYXppb25pJ1wiXHJcbiAgICAgICAgICAgICAgICBbaXNNdWx0aVNlbGVjdF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgIFtlbnVtRGF0YV09XCJhZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bVwiXHJcbiAgICAgICAgICAgICAgICBbKG5nTW9kZWxJbnB1dCldPVwiYWdncmVnYXRpb25zXCJcclxuICAgICAgICAgICAgICAgIChuZ01vZGVsSW5wdXRDaGFuZ2UpPVwib25GaWx0ZXJDaGFuZ2UoKVwiXHJcbiAgICAgICAgICAgID48L2VxcC1zZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
@@ -48,6 +48,9 @@ export class ListValueFilterTemplateComponent {
48
48
  * Metodo per emettere l'evento che il valore del record è cambiato.
49
49
  */
50
50
  onFilterChange() {
51
+ if (this.aggregations != null && this.aggregations.length > 0) {
52
+ this.visible = true;
53
+ }
51
54
  var statistic = {
52
55
  key: this.field.Name,
53
56
  value: this.record[this.field.Name],
@@ -103,6 +106,9 @@ export class ListValueFilterTemplateComponent {
103
106
  */
104
107
  changeVisibility() {
105
108
  this.visible = !this.visible;
109
+ if (this.aggregations != null && this.aggregations.length > 0) {
110
+ this.visible = true;
111
+ }
106
112
  this.onFilterChange();
107
113
  }
108
114
  createArrayDataElement(key, value, imgUrl = null) {
@@ -127,10 +133,10 @@ export class ListValueFilterTemplateComponent {
127
133
  }
128
134
  }
129
135
  ListValueFilterTemplateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ListValueFilterTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
130
- ListValueFilterTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ListValueFilterTemplateComponent, selector: "list-value-filter-template", inputs: { field: "field", record: "record", Statistic: "Statistic", showXY: "showXY" }, outputs: { filterChange: "filterChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n\r\n </div> \r\n <div class=\"valueCol\">\r\n <eqp-select [ngStyle]=\"FieldstyleObj\" [arrayData]=\"arrayData\"\r\n [arrayKeyProperty]=\"'Value'\" [showCancelButton]=\"true\" [arrayValueProperty]=\"'Key'\"\r\n [formGroupInput]=\"field.FormFormGroup\" [formControlNameInput]=\"field.Name\" [placeholder]=\"field.Description\"\r\n [includeFullObject]=\"false\" [isRequired]=\"false\" [isDisabled]=\"false\"\r\n [(ngModelInput)]=\"record[field.Name]\" [isMultiSelect]=\"true\"\r\n (ngModelInputChange)=\"onFilterChange()\">\r\n </eqp-select>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select [enumData]=\"logicOperatorListValue\" [(ngModelInput)]=\"selectedLogicOperator\" [showCancelButton]=\"false\" (ngModelInputChange)=\"onFilterChange()\"></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n </div>\r\n</div>", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{width:35px;min-width:35px}.rowCol .aggregatorCol{min-width:219px}::ng-deep .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important}::ng-deep .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}\n"], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i3.EqpSelectComponent, selector: "eqp-select", inputs: ["placeholder", "enumData", "enumDataToExclude", "arrayData", "arrayKeyProperty", "arrayValueProperty", "ngModelOptions", "ngModelInput", "formGroupInput", "formControlNameInput", "isRequired", "isDisabled", "isMultiLanguage", "multilanguagePrefixKey", "isAlphabeticalOrderable", "suffixIcon", "prefixIcon", "isMultiSelect", "includeFullObject", "showCancelButton", "isSearchable", "searchText", "noResultSearchText", "data"], outputs: ["ngModelInputChange"] }] });
136
+ ListValueFilterTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ListValueFilterTemplateComponent, selector: "list-value-filter-template", inputs: { field: "field", record: "record", Statistic: "Statistic", showXY: "showXY" }, outputs: { filterChange: "filterChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n\r\n </div> \r\n <div class=\"valueCol\">\r\n <eqp-select [ngStyle]=\"FieldstyleObj\" [arrayData]=\"arrayData\"\r\n [arrayKeyProperty]=\"'Value'\" [showCancelButton]=\"true\" [arrayValueProperty]=\"'Key'\"\r\n [formGroupInput]=\"field.FormFormGroup\" [formControlNameInput]=\"field.Name\" [placeholder]=\"field.Description\"\r\n [includeFullObject]=\"false\" [isRequired]=\"false\" [isDisabled]=\"false\"\r\n [(ngModelInput)]=\"record[field.Name]\" [isMultiSelect]=\"true\"\r\n (ngModelInputChange)=\"onFilterChange()\">\r\n </eqp-select>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select [enumData]=\"logicOperatorListValue\" [(ngModelInput)]=\"selectedLogicOperator\" [showCancelButton]=\"false\" (ngModelInputChange)=\"onFilterChange()\"></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n </div>\r\n</div>", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{width:35px;min-width:35px}.rowCol .aggregatorCol{min-width:219px}::ng-deep .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important}::ng-deep .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}\n"], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i3.EqpSelectComponent, selector: "eqp-select", inputs: ["placeholder", "enumData", "enumDataToExclude", "arrayData", "arrayKeyProperty", "arrayValueProperty", "ngModelOptions", "ngModelInput", "formGroupInput", "formControlNameInput", "isRequired", "isDisabled", "isMultiLanguage", "multilanguagePrefixKey", "isAlphabeticalOrderable", "suffixIcon", "prefixIcon", "isMultiSelect", "includeFullObject", "showCancelButton", "isSearchable", "searchText", "noResultSearchText", "data"], outputs: ["ngModelInputChange"] }] });
131
137
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ListValueFilterTemplateComponent, decorators: [{
132
138
  type: Component,
133
- args: [{ selector: 'list-value-filter-template', template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n\r\n </div> \r\n <div class=\"valueCol\">\r\n <eqp-select [ngStyle]=\"FieldstyleObj\" [arrayData]=\"arrayData\"\r\n [arrayKeyProperty]=\"'Value'\" [showCancelButton]=\"true\" [arrayValueProperty]=\"'Key'\"\r\n [formGroupInput]=\"field.FormFormGroup\" [formControlNameInput]=\"field.Name\" [placeholder]=\"field.Description\"\r\n [includeFullObject]=\"false\" [isRequired]=\"false\" [isDisabled]=\"false\"\r\n [(ngModelInput)]=\"record[field.Name]\" [isMultiSelect]=\"true\"\r\n (ngModelInputChange)=\"onFilterChange()\">\r\n </eqp-select>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select [enumData]=\"logicOperatorListValue\" [(ngModelInput)]=\"selectedLogicOperator\" [showCancelButton]=\"false\" (ngModelInputChange)=\"onFilterChange()\"></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n </div>\r\n</div>", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{width:35px;min-width:35px}.rowCol .aggregatorCol{min-width:219px}::ng-deep .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important}::ng-deep .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}\n"] }]
139
+ args: [{ selector: 'list-value-filter-template', template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n\r\n </div> \r\n <div class=\"valueCol\">\r\n <eqp-select [ngStyle]=\"FieldstyleObj\" [arrayData]=\"arrayData\"\r\n [arrayKeyProperty]=\"'Value'\" [showCancelButton]=\"true\" [arrayValueProperty]=\"'Key'\"\r\n [formGroupInput]=\"field.FormFormGroup\" [formControlNameInput]=\"field.Name\" [placeholder]=\"field.Description\"\r\n [includeFullObject]=\"false\" [isRequired]=\"false\" [isDisabled]=\"false\"\r\n [(ngModelInput)]=\"record[field.Name]\" [isMultiSelect]=\"true\"\r\n (ngModelInputChange)=\"onFilterChange()\">\r\n </eqp-select>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select [enumData]=\"logicOperatorListValue\" [(ngModelInput)]=\"selectedLogicOperator\" [showCancelButton]=\"false\" (ngModelInputChange)=\"onFilterChange()\"></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n </div>\r\n</div>", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{width:35px;min-width:35px}.rowCol .aggregatorCol{min-width:219px}::ng-deep .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important}::ng-deep .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}\n"] }]
134
140
  }], ctorParameters: function () { return []; }, propDecorators: { field: [{
135
141
  type: Input
136
142
  }], record: [{
@@ -142,4 +148,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
142
148
  }], filterChange: [{
143
149
  type: Output
144
150
  }] } });
145
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC12YWx1ZS1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXFwLWR5bmFtaWMtbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItdGVtcGxhdGVzL2xpc3QtdmFsdWUtZmlsdGVyLXRlbXBsYXRlL2xpc3QtdmFsdWUtZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VxcC1keW5hbWljLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvcHJpdmF0ZS9mb3JtLXN0YXRpc3RpY3MvZmlsdGVyLXRlbXBsYXRlcy9saXN0LXZhbHVlLWZpbHRlci10ZW1wbGF0ZS9saXN0LXZhbHVlLWZpbHRlci10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUV0RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNuRixPQUFPLEVBQUUsZ0NBQWdDLEVBQTRDLE1BQU0sdUNBQXVDLENBQUM7QUFFbkksT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDdEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdDQUF3QyxDQUFDOzs7OztBQU12RSxNQUFNLE9BQU8sZ0NBQWdDO0lBMkI3QztRQXZCVyxjQUFTLEdBQWMsSUFBSSxDQUFDO1FBQzVCLFdBQU0sR0FBWSxJQUFJLENBQUM7UUFDdEIsaUJBQVksR0FBNEIsSUFBSSxZQUFZLEVBQWEsQ0FBQztRQUNoRixvQkFBZSxHQUFVLEVBQUUsQ0FBQztRQUM1QiwyQkFBc0IsR0FB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Z0IsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssS0FBSyxDQUFDO1NBQzNEO1FBQ0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzlGLENBQUM7OzhIQW5KVSxnQ0FBZ0M7a0hBQWhDLGdDQUFnQywwTkNaN0MsOHdEQWdDTTs0RkRwQk8sZ0NBQWdDO2tCQUw1QyxTQUFTOytCQUNFLDRCQUE0QjswRUFNN0IsS0FBSztzQkFBYixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDSSxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmVjb3JkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL3JlY29yZC5tb2RlbCc7XHJcbmltcG9ydCB7IExvZ2ljT3BlcmF0b3JMaXN0VmFsdWUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvbG9naWNPcGVyYXRvci5tb2RlbCc7XHJcbmltcG9ydCB7IE5vdE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtLCBOdW1iZXJBZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bSwgU3RhdGlzdGljIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL3N0YXRpc3RpYy5tb2RlbCc7XHJcbmltcG9ydCB7IExpc3RWYWx1ZUZpZWxkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL2ZpZWxkcy9saXN0VmFsdWVGaWVsZC5tb2RlbCc7XHJcbmltcG9ydCB7IFV0aWxpdHlIZWxwZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2VydmljZXMvdXRpbGl0eUhlbHBlci5zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IEdsb2JhbFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zZXJ2aWNlcy9nbG9iYWwuc2VydmljZSc7XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGlzdC12YWx1ZS1maWx0ZXItdGVtcGxhdGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9saXN0LXZhbHVlLWZpbHRlci10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbGlzdC12YWx1ZS1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTGlzdFZhbHVlRmlsdGVyVGVtcGxhdGVDb21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKSBmaWVsZDogTGlzdFZhbHVlRmllbGQ7XHJcbiAgQElucHV0KCkgcmVjb3JkOiBSZWNvcmQ7XHJcbiAgQElucHV0KCkgU3RhdGlzdGljOiBTdGF0aXN0aWMgPSBudWxsO1xyXG4gIEBJbnB1dCgpIHNob3dYWTogYm9vbGVhbiA9IHRydWU7XHJcbiAgQE91dHB1dCgpIGZpbHRlckNoYW5nZTogRXZlbnRFbWl0dGVyPFN0YXRpc3RpYz4gPSBuZXcgRXZlbnRFbWl0dGVyPFN0YXRpc3RpYz4oKTtcclxuICB2YWxpZGF0b3JzQXJyYXk6IGFueVtdID0gW107XHJcbiAgbG9naWNPcGVyYXRvckxpc3RWYWx1ZSA9IExvZ2ljT3BlcmF0b3JMaXN0VmFsdWU7XHJcbiAgc2VsZWN0ZWRMb2dpY09wZXJhdG9yOiBMb2dpY09wZXJhdG9yTGlzdFZhbHVlID0gTG9naWNPcGVyYXRvckxpc3RWYWx1ZVsnJ107XHJcbiAgYWN0aXZlQ29uZGl0aW9uOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHZpc2libGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBjdXJyZW50U3RhdGlzdGljOiBTdGF0aXN0aWMgPSBudWxsO1xyXG5cclxuICBhZ2dyZWdhdGlvbnM6IEFycmF5PE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtPiB8IEFycmF5PE5vdE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtPjtcclxuICBhZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bSA9IE5vdE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtO1xyXG5cclxuICAvL3ZhcmlhYmlsaSBwZXIgZ2VzdGlyZSBpbCBjc3MgZGVsbGEgbGFiZWwgZSBkZWwgZmllbGRcclxuICBGaWVsZHN0eWxlT2JqOiBhbnk7XHJcbiAgTGFiZWxzdHlsZU9iajogYW55O1xyXG5cclxuICBhcnJheURhdGE6IHsgS2V5OiBzdHJpbmcsIFZhbHVlOiBhbnksIFNlbGVjdGVkPzogYm9vbGVhbiwgSW1nVXJsPzogc3RyaW5nIH1bXSA9IFtdO1xyXG5cclxuICBpc1g6IGJvb2xlYW47XHJcbiAgaXNZOiBib29sZWFuOyBcclxuXHJcbmNvbnN0cnVjdG9yKCkge1xyXG59XHJcblxyXG5uZ09uSW5pdCgpOiB2b2lkIHtcclxuXHJcbiAgaWYgKHRoaXMuU3RhdGlzdGljICE9IG51bGwpe1xyXG4gICAgdGhpcy5zZWxlY3RlZExvZ2ljT3BlcmF0b3IgPSAodGhpcy5TdGF0aXN0aWMubG9naWNvcGVyYXRvciBhcyBMb2dpY09wZXJhdG9yTGlzdFZhbHVlKTtcclxuICAgIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPSB0aGlzLlN0YXRpc3RpYy52YWx1ZTtcclxuICAgIHRoaXMudmlzaWJsZSA9IHRoaXMuU3RhdGlzdGljLnZpc2libGU7XHJcbiAgICB0aGlzLmFnZ3JlZ2F0aW9ucyA9IHRoaXMuU3RhdGlzdGljLmFnZ3JlZ2F0aW9ucztcclxuICB9IFxyXG5cclxuICB0aGlzLmNvbmZpZ3VyZUNvbnRyb2xsZXJzKCk7XHJcbiAgdGhpcy5pbml0U3R5bGVzKCk7XHJcbiAgdGhpcy5zZXRBcnJheURhdGEoKTtcclxufVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICAgIGlmIChjaGFuZ2VzLmhhc093blByb3BlcnR5KCdTdGF0aXN0aWMnKSAmJiAhY2hhbmdlc1snU3RhdGlzdGljJ10uZmlyc3RDaGFuZ2Upe1xyXG4gICAgICAgIHRoaXMuaXNYID0gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmhhc093blByb3BlcnR5KCdpc1gnKSA/IGNoYW5nZXNbJ1N0YXRpc3RpYyddLmN1cnJlbnRWYWx1ZS5pc1ggOiBudWxsO1xyXG4gICAgICAgIHRoaXMuaXNZID0gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmhhc093blByb3BlcnR5KCdpc1knKSA/IGNoYW5nZXNbJ1N0YXRpc3RpYyddLmN1cnJlbnRWYWx1ZS5pc1kgOiBudWxsO1xyXG4gICAgICAgIHRoaXMuYWdncmVnYXRpb25zID0gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmhhc093blByb3BlcnR5KCdhZ2dyZWdhdGlvbnMnKSA/IGNoYW5nZXNbJ1N0YXRpc3RpYyddLmN1cnJlbnRWYWx1ZS5hZ2dyZWdhdGlvbnMgOiBudWxsO1xyXG4gICAgICB9XHJcbiAgfSBcclxuXHJcbiAgLy9GdW56aW9uZSBwZXIgcGFyc2FyZSBpbCBjYW1wbyBzdHlsZWNzcyBkZWxsJ29nZ2V0dG8gZmllbGQgZWQgYXBwbGljYXJsbyBhbGwnaHRtbFxyXG4gIGluaXRTdHlsZXMoKSB7XHJcbiAgICBpZih0aGlzLmZpZWxkLkZpZWxkc3R5bGVDU1MgIT0gbnVsbCB8fCB0aGlzLmZpZWxkLkZpZWxkc3R5bGVDU1MgIT0gdW5kZWZpbmVkKSAgIFxyXG4gICAgdGhpcy5GaWVsZHN0eWxlT2JqPSBVdGlsaXR5SGVscGVyU2VydmljZS5pbml0U3R5bGVzKHRoaXMuZmllbGQuRmllbGRzdHlsZUNTUyk7XHJcbn1cclxuXHJcbi8qKlxyXG4qIE1ldG9kbyBwZXIgZW1ldHRlcmUgbCdldmVudG8gY2hlIGlsIHZhbG9yZSBkZWwgcmVjb3JkIMOoIGNhbWJpYXRvLlxyXG4qL1xyXG5vbkZpbHRlckNoYW5nZSgpIHtcclxuICAgIHZhciBzdGF0aXN0aWM6IFN0YXRpc3RpYyA9IHtcclxuICAgICAga2V5OiB0aGlzLmZpZWxkLk5hbWUsXHJcbiAgICAgIHZhbHVlOiB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdLFxyXG4gICAgICBsb2dpY29wZXJhdG9yOiB0aGlzLnNlbGVjdGVkTG9naWNPcGVyYXRvcixcclxuICAgICAgZmllbGR0eXBlOiB0aGlzLmZpZWxkLkZpZWxkVHlwZSxcclxuICAgICAgdmlzaWJsZTogdGhpcy52aXNpYmxlLFxyXG4gICAgICAgIGlzWDogdGhpcy5pc1gsXHJcbiAgICAgICAgaXNZOiB0aGlzLmlzWSxcclxuICAgICAgICBhZ2dyZWdhdGlvbnM6IHRoaXMuYWdncmVnYXRpb25zXHJcbiAgICB9ICAgIFxyXG5cclxuICAgIHRoaXMuZmlsdGVyQ2hhbmdlLmVtaXQoc3RhdGlzdGljKTtcclxufVxyXG5cclxuLyoqXHJcbiogTWV0b2RvIGRpIGFnZ2l1bnRhIGRlaSB2YWxpZGF0b3IgZGVsbCdpbnB1dFxyXG4qL1xyXG4gIHByaXZhdGUgY29uZmlndXJlQ29udHJvbGxlcnMoKSB7XHJcbiAgICB0aGlzLnZhbGlkYXRvcnNBcnJheSA9IFtdO1xyXG4gICAgdGhpcy5maWVsZC5Gb3JtRm9ybUdyb3VwLmdldChbdGhpcy5maWVsZC5OYW1lXSkuc2V0VmFsaWRhdG9ycyh0aGlzLnZhbGlkYXRvcnNBcnJheSk7XHJcbiAgfVxyXG5cclxuICAgLyoqXHJcbiAgICogTWV0b2RvIHBlciBjcmVhcmUgdW4gYXJyYXkgZGkgb2dnZXR0aSBkZWwgdGlwbyB7IEtleTogc3RyaW5nLCBWYWx1ZTogYW55IH0gZGEgdXNhcmUgY29tZSBzb3JnZW50ZSBkYXRpIHBlciBsYSBlcXAtc2VsZWN0LlxyXG4gICAqL1xyXG4gICBwcml2YXRlIHNldEFycmF5RGF0YSgpIHtcclxuICAgIHRoaXMucHJlcGFyZVZhbHVlUGFpcnMoKTtcclxuICAgIGlmICh0aGlzLmZpZWxkLlZhbHVlUGFpcnMgIT0gbnVsbCl7XHJcbiAgICAgIGlmIChVdGlsaXR5SGVscGVyU2VydmljZS5pc051bWVyaWModGhpcy5maWVsZC5WYWx1ZVBhaXJzW09iamVjdC5rZXlzKHRoaXMuZmllbGQuVmFsdWVQYWlycylbMF1dKSkge1xyXG4gICAgICAgIE9iamVjdC5rZXlzKHRoaXMuZmllbGQuVmFsdWVQYWlycykuZm9yRWFjaFxyXG4gICAgICAgICAgKGsgPT4gdGhpcy5jcmVhdGVOdW1iZXJBcnJheURhdGFFbGVtZW50KGssIE51bWJlcih0aGlzLmZpZWxkLlZhbHVlUGFpcnNba10pKSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgT2JqZWN0LmtleXModGhpcy5maWVsZC5WYWx1ZVBhaXJzKS5mb3JFYWNoXHJcbiAgICAgICAgICAoayA9PiB0aGlzLmNyZWF0ZUFycmF5RGF0YUVsZW1lbnQoaywgdGhpcy5maWVsZC5WYWx1ZVBhaXJzW2tdKSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByZXBhcmVWYWx1ZVBhaXJzKCkge1xyXG4gICAgaWYgKHRoaXMuZmllbGQuRm9ybXVsYSkge1xyXG4gICAgICB0aGlzLmZpZWxkLlZhbHVlUGFpcnMgPSB7fTtcclxuICAgICAgY29uc3QgdGVtcDogc3RyaW5nID0gVXRpbGl0eUhlbHBlclNlcnZpY2UuRXZhbHVhdGVGaWVsZEZvcm11bGEodGhpcy5maWVsZC5Gb3JtdWxhLCB0aGlzLnJlY29yZCwgbnVsbCk7XHJcbiAgICAgIC8vIHRlbXAgZG92cmViYmUgZXNzZXJlIHVuYSBzdHJpbmdhIGRlbCB0aXBvIFwiY2hpYXZlMSEgdmFsb3JlIDEgOyBjaGlhdmUyIHwgdmFsb3JlIDIgXCJcclxuICAgICAgLy8gZG9iYmlhbW8gb3R0ZW5lcmUgdW4gZGl6aW9uYXJpbyBkaSBxdWVpIHZhbG9yaVxyXG4gICAgICB0aGlzLmZpZWxkLlZhbHVlUGFpcnMgPSBHbG9iYWxTZXJ2aWNlLnN0cmluZ1RvVmFsdWVQYWlycyh0ZW1wKTtcclxuXHJcbiAgICAgIC8vdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9IFV0aWxpdHlIZWxwZXJTZXJ2aWNlLkV2YWx1YXRlRmllbGRGb3JtdWxhKHRoaXMuZmllbGQuRm9ybXVsYSwgdGhpcy5yZWNvcmQsIG51bGwpO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmZpZWxkLlZhbHVlUGFpcnMgIT0gbnVsbCAmJiB0aGlzLmZpZWxkLlZhbHVlUGFpcnMubGVuZ2h0ID4gMCkge1xyXG4gICAgICAvLyB2YSBiZW5lIGNvc8OsXHJcblxyXG4gICAgfSBlbHNlIGlmICh0aGlzLmZpZWxkLlZhbHVlU3RyaW5nICE9IG51bGwgJiYgdGhpcy5maWVsZC5WYWx1ZVN0cmluZyAhPSBcIlwiKSB7XHJcbiAgICAgIC8vIHZhIHByZXNhIGxhIHN0cmlnbmEgZSByaW1hcHBhdGEgbmVsIGRpYXJpb1xyXG4gICAgICB0aGlzLmZpZWxkLlZhbHVlUGFpcnMgPSBHbG9iYWxTZXJ2aWNlLnN0cmluZ1RvVmFsdWVQYWlycyh0aGlzLmZpZWxkLlZhbHVlU3RyaW5nKTtcclxuXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXN0aW9uZSB2aXNpYmlsaXTDoFxyXG4gICAqL1xyXG5cclxuICAgIHB1YmxpYyBjaGFuZ2VWaXNpYmlsaXR5KCl7XHJcbiAgICAgIHRoaXMudmlzaWJsZSA9ICF0aGlzLnZpc2libGU7XHJcbiAgICAgIHRoaXMub25GaWx0ZXJDaGFuZ2UoKTtcclxuICAgIH1cclxuXHJcbiAgXHJcbiAgcHJpdmF0ZSBjcmVhdGVBcnJheURhdGFFbGVtZW50KGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nLCBpbWdVcmw6IHN0cmluZyA9IG51bGwpIHtcclxuICAgIGxldCBpc09wdGlvblNlbGVjdGVkOiBib29sZWFuO1xyXG4gICAgaWYgKHRoaXMuZmllbGQuSXNNdWx0aUNob2ljaGUgJiYgdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSAmJiB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdLmxlbmd0aCA+IDApIHtcclxuICAgICAgaXNPcHRpb25TZWxlY3RlZCA9ICEhdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXS5maW5kKHYgPT4gdiA9PSB2YWx1ZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpc09wdGlvblNlbGVjdGVkID0gdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9PT0gdmFsdWU7XHJcbiAgICB9XHJcbiAgICB0aGlzLmFycmF5RGF0YS5wdXNoKHsgS2V5OiBrZXksIFZhbHVlOiB2YWx1ZSwgU2VsZWN0ZWQ6IGlzT3B0aW9uU2VsZWN0ZWQsIEltZ1VybDogaW1nVXJsIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVOdW1iZXJBcnJheURhdGFFbGVtZW50KGtleTogc3RyaW5nLCB2YWx1ZTogbnVtYmVyLCBpbWdVcmw6IHN0cmluZyA9IG51bGwpIHtcclxuICAgIGxldCBpc09wdGlvblNlbGVjdGVkOiBib29sZWFuO1xyXG4gICAgaWYgKHRoaXMuZmllbGQuSXNNdWx0aUNob2ljaGUgJiYgdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSAmJiB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdLmxlbmd0aCA+IDApIHtcclxuICAgICAgaXNPcHRpb25TZWxlY3RlZCA9ICEhdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXS5maW5kKHYgPT4gdiA9PSB2YWx1ZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpc09wdGlvblNlbGVjdGVkID0gdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9PT0gdmFsdWU7XHJcbiAgICB9XHJcbiAgICB0aGlzLmFycmF5RGF0YS5wdXNoKHsgS2V5OiBrZXksIFZhbHVlOiB2YWx1ZSwgU2VsZWN0ZWQ6IGlzT3B0aW9uU2VsZWN0ZWQsIEltZ1VybDogaW1nVXJsIH0pO1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMiByb3dDb2xcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidmlzaWJsZUNvbFwiPlxyXG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuXCIgW25nQ2xhc3NdPVwieydidG4tc3VjY2Vzcyc6IHZpc2libGUgLCAnYnRuLWRhbmdlcic6ICF2aXNpYmxlIH1cIiAoY2xpY2spPVwiY2hhbmdlVmlzaWJpbGl0eSgpXCI+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJ2aXNpYmxlXCI+dmlzaWJpbGl0eTwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCIhdmlzaWJsZVwiPnZpc2liaWxpdHlfb2ZmPC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+ICBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29vcmRpbmF0ZXNDb2xcIiBbaGlkZGVuXT1cIiFzaG93WFlcIj5cclxuXHJcbiAgICAgICAgPC9kaXY+ICAgICAgICAgICAgICAgIFxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ2YWx1ZUNvbFwiPlxyXG4gICAgICAgICAgICA8ZXFwLXNlbGVjdCBbbmdTdHlsZV09XCJGaWVsZHN0eWxlT2JqXCIgW2FycmF5RGF0YV09XCJhcnJheURhdGFcIlxyXG4gICAgICAgICAgICAgICAgW2FycmF5S2V5UHJvcGVydHldPVwiJ1ZhbHVlJ1wiIFtzaG93Q2FuY2VsQnV0dG9uXT1cInRydWVcIiBbYXJyYXlWYWx1ZVByb3BlcnR5XT1cIidLZXknXCJcclxuICAgICAgICAgICAgICAgIFtmb3JtR3JvdXBJbnB1dF09XCJmaWVsZC5Gb3JtRm9ybUdyb3VwXCIgW2Zvcm1Db250cm9sTmFtZUlucHV0XT1cImZpZWxkLk5hbWVcIiBbcGxhY2Vob2xkZXJdPVwiZmllbGQuRGVzY3JpcHRpb25cIlxyXG4gICAgICAgICAgICAgICAgW2luY2x1ZGVGdWxsT2JqZWN0XT1cImZhbHNlXCIgW2lzUmVxdWlyZWRdPVwiZmFsc2VcIiBbaXNEaXNhYmxlZF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICBbKG5nTW9kZWxJbnB1dCldPVwicmVjb3JkW2ZpZWxkLk5hbWVdXCIgW2lzTXVsdGlTZWxlY3RdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAobmdNb2RlbElucHV0Q2hhbmdlKT1cIm9uRmlsdGVyQ2hhbmdlKClcIj5cclxuICAgICAgICAgICAgPC9lcXAtc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJvcGVyYXRvckNvbFwiPlxyXG4gICAgICAgICAgICA8ZXFwLXNlbGVjdCBbZW51bURhdGFdPVwibG9naWNPcGVyYXRvckxpc3RWYWx1ZVwiIFsobmdNb2RlbElucHV0KV09XCJzZWxlY3RlZExvZ2ljT3BlcmF0b3JcIiBbc2hvd0NhbmNlbEJ1dHRvbl09XCJmYWxzZVwiIChuZ01vZGVsSW5wdXRDaGFuZ2UpPVwib25GaWx0ZXJDaGFuZ2UoKVwiPjwvZXFwLXNlbGVjdD5cclxuICAgICAgICA8L2Rpdj4gICAgICBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWdncmVnYXRvckNvbFwiPlxyXG4gICAgICAgICAgICA8ZXFwLXNlbGVjdFxyXG4gICAgICAgICAgICAgICAgW2lzTXVsdGlTZWxlY3RdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICBbZW51bURhdGFdPVwiYWdncmVnYXRpb25GdW5jdGlvbkVudW1cIlxyXG4gICAgICAgICAgICAgICAgWyhuZ01vZGVsSW5wdXQpXT1cImFnZ3JlZ2F0aW9uc1wiXHJcbiAgICAgICAgICAgICAgICAobmdNb2RlbElucHV0Q2hhbmdlKT1cIm9uRmlsdGVyQ2hhbmdlKClcIlxyXG4gICAgICAgICAgICA+PC9lcXAtc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PiAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
151
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC12YWx1ZS1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXFwLWR5bmFtaWMtbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItdGVtcGxhdGVzL2xpc3QtdmFsdWUtZmlsdGVyLXRlbXBsYXRlL2xpc3QtdmFsdWUtZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VxcC1keW5hbWljLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvcHJpdmF0ZS9mb3JtLXN0YXRpc3RpY3MvZmlsdGVyLXRlbXBsYXRlcy9saXN0LXZhbHVlLWZpbHRlci10ZW1wbGF0ZS9saXN0LXZhbHVlLWZpbHRlci10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUV0RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNuRixPQUFPLEVBQUUsZ0NBQWdDLEVBQTRDLE1BQU0sdUNBQXVDLENBQUM7QUFFbkksT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDdEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdDQUF3QyxDQUFDOzs7OztBQU12RSxNQUFNLE9BQU8sZ0NBQWdDO0lBMkI3QztRQXZCVyxjQUFTLEdBQWMsSUFBSSxDQUFDO1FBQzVCLFdBQU0sR0FBWSxJQUFJLENBQUM7UUFDdEIsaUJBQVksR0FBNEIsSUFBSSxZQUFZLEVBQWEsQ0FBQztRQUNoRixvQkFBZSxHQUFVLEVBQUUsQ0FBQztRQUM1QiwyQkFBc0IsR0FB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QUFDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDeEcsZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLENBQUM7U0FDekU7YUFBTTtZQUNMLGdCQUFnQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxLQUFLLENBQUM7U0FDM0Q7UUFDRCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDOUYsQ0FBQzs7OEhBdEpVLGdDQUFnQztrSEFBaEMsZ0NBQWdDLDBOQ1o3QyxrMERBaUNNOzRGRHJCTyxnQ0FBZ0M7a0JBTDVDLFNBQVM7K0JBQ0UsNEJBQTRCOzBFQU03QixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNJLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvcmVjb3JkLm1vZGVsJztcclxuaW1wb3J0IHsgTG9naWNPcGVyYXRvckxpc3RWYWx1ZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21vZGVscy9sb2dpY09wZXJhdG9yLm1vZGVsJztcclxuaW1wb3J0IHsgTm90TnVtYmVyQWdncmVnYXRpb25GdW5jdGlvbkVudW0sIE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtLCBTdGF0aXN0aWMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvc3RhdGlzdGljLm1vZGVsJztcclxuaW1wb3J0IHsgTGlzdFZhbHVlRmllbGQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvZmllbGRzL2xpc3RWYWx1ZUZpZWxkLm1vZGVsJztcclxuaW1wb3J0IHsgVXRpbGl0eUhlbHBlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zZXJ2aWNlcy91dGlsaXR5SGVscGVyLnNlcnZpY2VzJztcclxuaW1wb3J0IHsgR2xvYmFsU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3NlcnZpY2VzL2dsb2JhbC5zZXJ2aWNlJztcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaXN0LXZhbHVlLWZpbHRlci10ZW1wbGF0ZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2xpc3QtdmFsdWUtZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9saXN0LXZhbHVlLWZpbHRlci10ZW1wbGF0ZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMaXN0VmFsdWVGaWx0ZXJUZW1wbGF0ZUNvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpIGZpZWxkOiBMaXN0VmFsdWVGaWVsZDtcclxuICBASW5wdXQoKSByZWNvcmQ6IFJlY29yZDtcclxuICBASW5wdXQoKSBTdGF0aXN0aWM6IFN0YXRpc3RpYyA9IG51bGw7XHJcbiAgQElucHV0KCkgc2hvd1hZOiBib29sZWFuID0gdHJ1ZTtcclxuICBAT3V0cHV0KCkgZmlsdGVyQ2hhbmdlOiBFdmVudEVtaXR0ZXI8U3RhdGlzdGljPiA9IG5ldyBFdmVudEVtaXR0ZXI8U3RhdGlzdGljPigpO1xyXG4gIHZhbGlkYXRvcnNBcnJheTogYW55W10gPSBbXTtcclxuICBsb2dpY09wZXJhdG9yTGlzdFZhbHVlID0gTG9naWNPcGVyYXRvckxpc3RWYWx1ZTtcclxuICBzZWxlY3RlZExvZ2ljT3BlcmF0b3I6IExvZ2ljT3BlcmF0b3JMaXN0VmFsdWUgPSBMb2dpY09wZXJhdG9yTGlzdFZhbHVlWycnXTtcclxuICBhY3RpdmVDb25kaXRpb246IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgdmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGN1cnJlbnRTdGF0aXN0aWM6IFN0YXRpc3RpYyA9IG51bGw7XHJcblxyXG4gIGFnZ3JlZ2F0aW9uczogQXJyYXk8TnVtYmVyQWdncmVnYXRpb25GdW5jdGlvbkVudW0+IHwgQXJyYXk8Tm90TnVtYmVyQWdncmVnYXRpb25GdW5jdGlvbkVudW0+O1xyXG4gIGFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtID0gTm90TnVtYmVyQWdncmVnYXRpb25GdW5jdGlvbkVudW07XHJcblxyXG4gIC8vdmFyaWFiaWxpIHBlciBnZXN0aXJlIGlsIGNzcyBkZWxsYSBsYWJlbCBlIGRlbCBmaWVsZFxyXG4gIEZpZWxkc3R5bGVPYmo6IGFueTtcclxuICBMYWJlbHN0eWxlT2JqOiBhbnk7XHJcblxyXG4gIGFycmF5RGF0YTogeyBLZXk6IHN0cmluZywgVmFsdWU6IGFueSwgU2VsZWN0ZWQ/OiBib29sZWFuLCBJbWdVcmw/OiBzdHJpbmcgfVtdID0gW107XHJcblxyXG4gIGlzWDogYm9vbGVhbjtcclxuICBpc1k6IGJvb2xlYW47IFxyXG5cclxuY29uc3RydWN0b3IoKSB7XHJcbn1cclxuXHJcbm5nT25Jbml0KCk6IHZvaWQge1xyXG5cclxuICBpZiAodGhpcy5TdGF0aXN0aWMgIT0gbnVsbCl7XHJcbiAgICB0aGlzLnNlbGVjdGVkTG9naWNPcGVyYXRvciA9ICh0aGlzLlN0YXRpc3RpYy5sb2dpY29wZXJhdG9yIGFzIExvZ2ljT3BlcmF0b3JMaXN0VmFsdWUpO1xyXG4gICAgdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9IHRoaXMuU3RhdGlzdGljLnZhbHVlO1xyXG4gICAgdGhpcy52aXNpYmxlID0gdGhpcy5TdGF0aXN0aWMudmlzaWJsZTtcclxuICAgIHRoaXMuYWdncmVnYXRpb25zID0gdGhpcy5TdGF0aXN0aWMuYWdncmVnYXRpb25zO1xyXG4gIH0gXHJcblxyXG4gIHRoaXMuY29uZmlndXJlQ29udHJvbGxlcnMoKTtcclxuICB0aGlzLmluaXRTdHlsZXMoKTtcclxuICB0aGlzLnNldEFycmF5RGF0YSgpO1xyXG59XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgICAgaWYgKGNoYW5nZXMuaGFzT3duUHJvcGVydHkoJ1N0YXRpc3RpYycpICYmICFjaGFuZ2VzWydTdGF0aXN0aWMnXS5maXJzdENoYW5nZSl7XHJcbiAgICAgICAgdGhpcy5pc1ggPSBjaGFuZ2VzWydTdGF0aXN0aWMnXS5jdXJyZW50VmFsdWUuaGFzT3duUHJvcGVydHkoJ2lzWCcpID8gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmlzWCA6IG51bGw7XHJcbiAgICAgICAgdGhpcy5pc1kgPSBjaGFuZ2VzWydTdGF0aXN0aWMnXS5jdXJyZW50VmFsdWUuaGFzT3duUHJvcGVydHkoJ2lzWScpID8gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmlzWSA6IG51bGw7XHJcbiAgICAgICAgdGhpcy5hZ2dyZWdhdGlvbnMgPSBjaGFuZ2VzWydTdGF0aXN0aWMnXS5jdXJyZW50VmFsdWUuaGFzT3duUHJvcGVydHkoJ2FnZ3JlZ2F0aW9ucycpID8gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmFnZ3JlZ2F0aW9ucyA6IG51bGw7XHJcbiAgICAgIH1cclxuICB9IFxyXG5cclxuICAvL0Z1bnppb25lIHBlciBwYXJzYXJlIGlsIGNhbXBvIHN0eWxlY3NzIGRlbGwnb2dnZXR0byBmaWVsZCBlZCBhcHBsaWNhcmxvIGFsbCdodG1sXHJcbiAgaW5pdFN0eWxlcygpIHtcclxuICAgIGlmKHRoaXMuZmllbGQuRmllbGRzdHlsZUNTUyAhPSBudWxsIHx8IHRoaXMuZmllbGQuRmllbGRzdHlsZUNTUyAhPSB1bmRlZmluZWQpICAgXHJcbiAgICB0aGlzLkZpZWxkc3R5bGVPYmo9IFV0aWxpdHlIZWxwZXJTZXJ2aWNlLmluaXRTdHlsZXModGhpcy5maWVsZC5GaWVsZHN0eWxlQ1NTKTtcclxufVxyXG5cclxuLyoqXHJcbiogTWV0b2RvIHBlciBlbWV0dGVyZSBsJ2V2ZW50byBjaGUgaWwgdmFsb3JlIGRlbCByZWNvcmQgw6ggY2FtYmlhdG8uXHJcbiovXHJcbm9uRmlsdGVyQ2hhbmdlKCkge1xyXG4gICAgaWYgKHRoaXMuYWdncmVnYXRpb25zICE9IG51bGwgJiYgdGhpcy5hZ2dyZWdhdGlvbnMubGVuZ3RoID4gMCl7IHRoaXMudmlzaWJsZSA9IHRydWU7IH1cclxuXHJcbiAgICB2YXIgc3RhdGlzdGljOiBTdGF0aXN0aWMgPSB7XHJcbiAgICAgIGtleTogdGhpcy5maWVsZC5OYW1lLFxyXG4gICAgICB2YWx1ZTogdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSxcclxuICAgICAgbG9naWNvcGVyYXRvcjogdGhpcy5zZWxlY3RlZExvZ2ljT3BlcmF0b3IsXHJcbiAgICAgIGZpZWxkdHlwZTogdGhpcy5maWVsZC5GaWVsZFR5cGUsXHJcbiAgICAgIHZpc2libGU6IHRoaXMudmlzaWJsZSxcclxuICAgICAgICBpc1g6IHRoaXMuaXNYLFxyXG4gICAgICAgIGlzWTogdGhpcy5pc1ksXHJcbiAgICAgICAgYWdncmVnYXRpb25zOiB0aGlzLmFnZ3JlZ2F0aW9uc1xyXG4gICAgfSAgICBcclxuXHJcbiAgICB0aGlzLmZpbHRlckNoYW5nZS5lbWl0KHN0YXRpc3RpYyk7XHJcbn1cclxuXHJcbi8qKlxyXG4qIE1ldG9kbyBkaSBhZ2dpdW50YSBkZWkgdmFsaWRhdG9yIGRlbGwnaW5wdXRcclxuKi9cclxuICBwcml2YXRlIGNvbmZpZ3VyZUNvbnRyb2xsZXJzKCkge1xyXG4gICAgdGhpcy52YWxpZGF0b3JzQXJyYXkgPSBbXTtcclxuICAgIHRoaXMuZmllbGQuRm9ybUZvcm1Hcm91cC5nZXQoW3RoaXMuZmllbGQuTmFtZV0pLnNldFZhbGlkYXRvcnModGhpcy52YWxpZGF0b3JzQXJyYXkpO1xyXG4gIH1cclxuXHJcbiAgIC8qKlxyXG4gICAqIE1ldG9kbyBwZXIgY3JlYXJlIHVuIGFycmF5IGRpIG9nZ2V0dGkgZGVsIHRpcG8geyBLZXk6IHN0cmluZywgVmFsdWU6IGFueSB9IGRhIHVzYXJlIGNvbWUgc29yZ2VudGUgZGF0aSBwZXIgbGEgZXFwLXNlbGVjdC5cclxuICAgKi9cclxuICAgcHJpdmF0ZSBzZXRBcnJheURhdGEoKSB7XHJcbiAgICB0aGlzLnByZXBhcmVWYWx1ZVBhaXJzKCk7XHJcbiAgICBpZiAodGhpcy5maWVsZC5WYWx1ZVBhaXJzICE9IG51bGwpe1xyXG4gICAgICBpZiAoVXRpbGl0eUhlbHBlclNlcnZpY2UuaXNOdW1lcmljKHRoaXMuZmllbGQuVmFsdWVQYWlyc1tPYmplY3Qua2V5cyh0aGlzLmZpZWxkLlZhbHVlUGFpcnMpWzBdXSkpIHtcclxuICAgICAgICBPYmplY3Qua2V5cyh0aGlzLmZpZWxkLlZhbHVlUGFpcnMpLmZvckVhY2hcclxuICAgICAgICAgIChrID0+IHRoaXMuY3JlYXRlTnVtYmVyQXJyYXlEYXRhRWxlbWVudChrLCBOdW1iZXIodGhpcy5maWVsZC5WYWx1ZVBhaXJzW2tdKSkpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIE9iamVjdC5rZXlzKHRoaXMuZmllbGQuVmFsdWVQYWlycykuZm9yRWFjaFxyXG4gICAgICAgICAgKGsgPT4gdGhpcy5jcmVhdGVBcnJheURhdGFFbGVtZW50KGssIHRoaXMuZmllbGQuVmFsdWVQYWlyc1trXSkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcmVwYXJlVmFsdWVQYWlycygpIHtcclxuICAgIGlmICh0aGlzLmZpZWxkLkZvcm11bGEpIHtcclxuICAgICAgdGhpcy5maWVsZC5WYWx1ZVBhaXJzID0ge307XHJcbiAgICAgIGNvbnN0IHRlbXA6IHN0cmluZyA9IFV0aWxpdHlIZWxwZXJTZXJ2aWNlLkV2YWx1YXRlRmllbGRGb3JtdWxhKHRoaXMuZmllbGQuRm9ybXVsYSwgdGhpcy5yZWNvcmQsIG51bGwpO1xyXG4gICAgICAvLyB0ZW1wIGRvdnJlYmJlIGVzc2VyZSB1bmEgc3RyaW5nYSBkZWwgdGlwbyBcImNoaWF2ZTEhIHZhbG9yZSAxIDsgY2hpYXZlMiB8IHZhbG9yZSAyIFwiXHJcbiAgICAgIC8vIGRvYmJpYW1vIG90dGVuZXJlIHVuIGRpemlvbmFyaW8gZGkgcXVlaSB2YWxvcmlcclxuICAgICAgdGhpcy5maWVsZC5WYWx1ZVBhaXJzID0gR2xvYmFsU2VydmljZS5zdHJpbmdUb1ZhbHVlUGFpcnModGVtcCk7XHJcblxyXG4gICAgICAvL3RoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPSBVdGlsaXR5SGVscGVyU2VydmljZS5FdmFsdWF0ZUZpZWxkRm9ybXVsYSh0aGlzLmZpZWxkLkZvcm11bGEsIHRoaXMucmVjb3JkLCBudWxsKTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5maWVsZC5WYWx1ZVBhaXJzICE9IG51bGwgJiYgdGhpcy5maWVsZC5WYWx1ZVBhaXJzLmxlbmdodCA+IDApIHtcclxuICAgICAgLy8gdmEgYmVuZSBjb3PDrFxyXG5cclxuICAgIH0gZWxzZSBpZiAodGhpcy5maWVsZC5WYWx1ZVN0cmluZyAhPSBudWxsICYmIHRoaXMuZmllbGQuVmFsdWVTdHJpbmcgIT0gXCJcIikge1xyXG4gICAgICAvLyB2YSBwcmVzYSBsYSBzdHJpZ25hIGUgcmltYXBwYXRhIG5lbCBkaWFyaW9cclxuICAgICAgdGhpcy5maWVsZC5WYWx1ZVBhaXJzID0gR2xvYmFsU2VydmljZS5zdHJpbmdUb1ZhbHVlUGFpcnModGhpcy5maWVsZC5WYWx1ZVN0cmluZyk7XHJcblxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2VzdGlvbmUgdmlzaWJpbGl0w6BcclxuICAgKi9cclxuXHJcbiAgICBwdWJsaWMgY2hhbmdlVmlzaWJpbGl0eSgpe1xyXG4gICAgICB0aGlzLnZpc2libGUgPSAhdGhpcy52aXNpYmxlO1xyXG4gICAgICBpZiAodGhpcy5hZ2dyZWdhdGlvbnMgIT0gbnVsbCAmJiB0aGlzLmFnZ3JlZ2F0aW9ucy5sZW5ndGggPiAwKXsgdGhpcy52aXNpYmxlID0gdHJ1ZTsgfVxyXG4gICAgICB0aGlzLm9uRmlsdGVyQ2hhbmdlKCk7XHJcbiAgICB9XHJcblxyXG4gIFxyXG4gIHByaXZhdGUgY3JlYXRlQXJyYXlEYXRhRWxlbWVudChrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZywgaW1nVXJsOiBzdHJpbmcgPSBudWxsKSB7XHJcbiAgICBsZXQgaXNPcHRpb25TZWxlY3RlZDogYm9vbGVhbjtcclxuICAgIGlmICh0aGlzLmZpZWxkLklzTXVsdGlDaG9pY2hlICYmIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gJiYgdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXS5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGlzT3B0aW9uU2VsZWN0ZWQgPSAhIXRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0uZmluZCh2ID0+IHYgPT0gdmFsdWUpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaXNPcHRpb25TZWxlY3RlZCA9IHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPT09IHZhbHVlO1xyXG4gICAgfVxyXG4gICAgdGhpcy5hcnJheURhdGEucHVzaCh7IEtleToga2V5LCBWYWx1ZTogdmFsdWUsIFNlbGVjdGVkOiBpc09wdGlvblNlbGVjdGVkLCBJbWdVcmw6IGltZ1VybCB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlTnVtYmVyQXJyYXlEYXRhRWxlbWVudChrZXk6IHN0cmluZywgdmFsdWU6IG51bWJlciwgaW1nVXJsOiBzdHJpbmcgPSBudWxsKSB7XHJcbiAgICBsZXQgaXNPcHRpb25TZWxlY3RlZDogYm9vbGVhbjtcclxuICAgIGlmICh0aGlzLmZpZWxkLklzTXVsdGlDaG9pY2hlICYmIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gJiYgdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXS5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGlzT3B0aW9uU2VsZWN0ZWQgPSAhIXRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0uZmluZCh2ID0+IHYgPT0gdmFsdWUpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaXNPcHRpb25TZWxlY3RlZCA9IHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPT09IHZhbHVlO1xyXG4gICAgfVxyXG4gICAgdGhpcy5hcnJheURhdGEucHVzaCh7IEtleToga2V5LCBWYWx1ZTogdmFsdWUsIFNlbGVjdGVkOiBpc09wdGlvblNlbGVjdGVkLCBJbWdVcmw6IGltZ1VybCB9KTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgcm93Q29sXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInZpc2libGVDb2xcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0blwiIFtuZ0NsYXNzXT1cInsnYnRuLXN1Y2Nlc3MnOiB2aXNpYmxlICwgJ2J0bi1kYW5nZXInOiAhdmlzaWJsZSB9XCIgKGNsaWNrKT1cImNoYW5nZVZpc2liaWxpdHkoKVwiPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwidmlzaWJsZVwiPnZpc2liaWxpdHk8L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiIXZpc2libGVcIj52aXNpYmlsaXR5X29mZjwvbWF0LWljb24+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PiAgXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvb3JkaW5hdGVzQ29sXCIgW2hpZGRlbl09XCIhc2hvd1hZXCI+XHJcblxyXG4gICAgICAgIDwvZGl2PiAgICAgICAgICAgICAgICBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwidmFsdWVDb2xcIj5cclxuICAgICAgICAgICAgPGVxcC1zZWxlY3QgW25nU3R5bGVdPVwiRmllbGRzdHlsZU9ialwiIFthcnJheURhdGFdPVwiYXJyYXlEYXRhXCJcclxuICAgICAgICAgICAgICAgIFthcnJheUtleVByb3BlcnR5XT1cIidWYWx1ZSdcIiBbc2hvd0NhbmNlbEJ1dHRvbl09XCJ0cnVlXCIgW2FycmF5VmFsdWVQcm9wZXJ0eV09XCInS2V5J1wiXHJcbiAgICAgICAgICAgICAgICBbZm9ybUdyb3VwSW5wdXRdPVwiZmllbGQuRm9ybUZvcm1Hcm91cFwiIFtmb3JtQ29udHJvbE5hbWVJbnB1dF09XCJmaWVsZC5OYW1lXCIgW3BsYWNlaG9sZGVyXT1cImZpZWxkLkRlc2NyaXB0aW9uXCJcclxuICAgICAgICAgICAgICAgIFtpbmNsdWRlRnVsbE9iamVjdF09XCJmYWxzZVwiIFtpc1JlcXVpcmVkXT1cImZhbHNlXCIgW2lzRGlzYWJsZWRdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgWyhuZ01vZGVsSW5wdXQpXT1cInJlY29yZFtmaWVsZC5OYW1lXVwiIFtpc011bHRpU2VsZWN0XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgKG5nTW9kZWxJbnB1dENoYW5nZSk9XCJvbkZpbHRlckNoYW5nZSgpXCI+XHJcbiAgICAgICAgICAgIDwvZXFwLXNlbGVjdD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwib3BlcmF0b3JDb2xcIj5cclxuICAgICAgICAgICAgPGVxcC1zZWxlY3QgW2VudW1EYXRhXT1cImxvZ2ljT3BlcmF0b3JMaXN0VmFsdWVcIiBbKG5nTW9kZWxJbnB1dCldPVwic2VsZWN0ZWRMb2dpY09wZXJhdG9yXCIgW3Nob3dDYW5jZWxCdXR0b25dPVwiZmFsc2VcIiAobmdNb2RlbElucHV0Q2hhbmdlKT1cIm9uRmlsdGVyQ2hhbmdlKClcIj48L2VxcC1zZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+ICAgICAgXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImFnZ3JlZ2F0b3JDb2xcIj5cclxuICAgICAgICAgICAgPGVxcC1zZWxlY3RcclxuICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQWdncmVnYXppb25pJ1wiXHJcbiAgICAgICAgICAgICAgICBbaXNNdWx0aVNlbGVjdF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgIFtlbnVtRGF0YV09XCJhZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bVwiXHJcbiAgICAgICAgICAgICAgICBbKG5nTW9kZWxJbnB1dCldPVwiYWdncmVnYXRpb25zXCJcclxuICAgICAgICAgICAgICAgIChuZ01vZGVsSW5wdXRDaGFuZ2UpPVwib25GaWx0ZXJDaGFuZ2UoKVwiXHJcbiAgICAgICAgICAgID48L2VxcC1zZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+ICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
@@ -61,6 +61,9 @@ export class NumericFilterTemplateComponent {
61
61
  this.filterChange.emit(statistic);
62
62
  }
63
63
  createStatistic() {
64
+ if (this.aggregations != null && this.aggregations.length > 0) {
65
+ this.visible = true;
66
+ }
64
67
  var statistic = {
65
68
  key: this.field.Name,
66
69
  value: this.record[this.field.Name],
@@ -114,6 +117,9 @@ export class NumericFilterTemplateComponent {
114
117
  */
115
118
  changeVisibility() {
116
119
  this.visible = !this.visible;
120
+ if (this.aggregations != null && this.aggregations.length > 0) {
121
+ this.visible = true;
122
+ }
117
123
  this.onFilterChange();
118
124
  }
119
125
  becomeTheCoord(theCoord) {
@@ -146,4 +152,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
146
152
  }], filterChange: [{
147
153
  type: Output
148
154
  }] } });
149
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtZXJpYy1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXFwLWR5bmFtaWMtbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItdGVtcGxhdGVzL251bWVyaWMtZmlsdGVyLXRlbXBsYXRlL251bWVyaWMtZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VxcC1keW5hbWljLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvcHJpdmF0ZS9mb3JtLXN0YXRpc3RpY3MvZmlsdGVyLXRlbXBsYXRlcy9udW1lcmljLWZpbHRlci10ZW1wbGF0ZS9udW1lcmljLWZpbHRlci10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUMsT0FBTyxFQUFFLG1CQUFtQixFQUFxQixNQUFNLHdCQUF3QixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBR3RGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2pGLE9BQU8sRUFBb0MsNkJBQTZCLEVBQWEsTUFBTSx1Q0FBdUMsQ0FBQzs7Ozs7Ozs7O0FBUW5JLE1BQU0sT0FBTyw4QkFBOEI7SUEwQjNDO1FBdEJXLGNBQVMsR0FBYyxJQUFJLENBQUM7UUFDNUIsV0FBTSxHQUFZLElBQUksQ0FBQztRQUV0QixpQkFBWSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3BFLG9C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QWQsS0FBSztnQkFDRyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ0ksWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRXFwTnVtZXJpY0lucHV0TW9kZSwgTnVtZXJpY01hc2tDb25maWcgfSBmcm9tICdAZXFwcm9qZWN0L2VxcC1udW1lcmljJztcclxuaW1wb3J0IHsgVXRpbGl0eUhlbHBlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zZXJ2aWNlcy91dGlsaXR5SGVscGVyLnNlcnZpY2VzJztcclxuaW1wb3J0IHsgUmVjb3JkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL3JlY29yZC5tb2RlbCc7XHJcbmltcG9ydCB7IE51bWVyaWNGaWVsZCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21vZGVscy9maWVsZHMvbnVtZXJpY0ZpZWxkLm1vZGVsJztcclxuaW1wb3J0IHsgTG9naWNPcGVyYXRvck51bWVyaWMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvbG9naWNPcGVyYXRvci5tb2RlbCc7XHJcbmltcG9ydCB7IE5vdE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtLCBOdW1iZXJBZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bSwgU3RhdGlzdGljIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL3N0YXRpc3RpYy5tb2RlbCc7XHJcbmltcG9ydCB7IER5bmFtaWNNb2R1bGVGaWx0ZXJSZXN1bHRWaWV3TW9kZUVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvZHluYW1pY01vZHVsZUZpbHRlclJlc3VsdFZpZXdNb2RlRW51bS5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ251bWVyaWMtZmlsdGVyLXRlbXBsYXRlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbnVtZXJpYy1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL251bWVyaWMtZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIE51bWVyaWNGaWx0ZXJUZW1wbGF0ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIGZpZWxkOiBOdW1lcmljRmllbGQ7XHJcbiAgQElucHV0KCkgcmVjb3JkOiBSZWNvcmQ7XHJcbiAgQElucHV0KCkgU3RhdGlzdGljOiBTdGF0aXN0aWMgPSBudWxsO1xyXG4gIEBJbnB1dCgpIHNob3dYWTogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgZmlsdGVyUmVzdWx0Vmlld01vZGU6IER5bmFtaWNNb2R1bGVGaWx0ZXJSZXN1bHRWaWV3TW9kZUVudW07XHJcbiAgQE91dHB1dCgpIGZpbHRlckNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICB2YWxpZGF0b3JzQXJyYXk6IGFueVtdID0gW107XHJcbiAgZXFwTnVtZXJpY09wdGlvbnM6IFBhcnRpYWw8TnVtZXJpY01hc2tDb25maWc+ID0ge307XHJcbiAgbG9naWNPcGVyYXRvck51bWVyaWMgPSBMb2dpY09wZXJhdG9yTnVtZXJpYztcclxuICBzZWxlY3RlZExvZ2ljT3BlcmF0b3I6IExvZ2ljT3BlcmF0b3JOdW1lcmljID0gTG9naWNPcGVyYXRvck51bWVyaWNbJyddO1xyXG4gIGFjdGl2ZUNvbmRpdGlvbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHZpc2libGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBjdXJyZW50U3RhdGlzdGljOiBTdGF0aXN0aWMgPSBudWxsO1xyXG5cclxuLy92YXJpYWJpbGkgcGVyIGdlc3RpcmUgaWwgY3NzIGRlbGxhIGxhYmVsIGUgZGVsIGZpZWxkXHJcbkZpZWxkc3R5bGVPYmo6IGFueTtcclxuTGFiZWxzdHlsZU9iajogYW55O1xyXG5cclxuaXNYOiBib29sZWFuO1xyXG5pc1k6IGJvb2xlYW47XHJcblxyXG5hZ2dyZWdhdGlvbnM6IEFycmF5PE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtPiB8IEFycmF5PE5vdE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtPjtcclxuYWdncmVnYXRpb25GdW5jdGlvbkVudW0gPSBOdW1iZXJBZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bTtcclxuXHJcbmNvbnN0cnVjdG9yKCkge1xyXG59XHJcblxyXG5uZ09uSW5pdCgpOiB2b2lkIHtcclxuXHJcbiAgaWYgKHRoaXMuU3RhdGlzdGljICE9IG51bGwpe1xyXG4gICAgdGhpcy5zZWxlY3RlZExvZ2ljT3BlcmF0b3IgPSAodGhpcy5TdGF0aXN0aWMubG9naWNvcGVyYXRvciBhcyBMb2dpY09wZXJhdG9yTnVtZXJpYyk7XHJcbiAgICB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID0gdGhpcy5TdGF0aXN0aWMudmFsdWU7XHJcbiAgICB0aGlzLnZpc2libGUgPSB0aGlzLlN0YXRpc3RpYy52aXNpYmxlO1xyXG4gICAgdGhpcy5pc1ggPSB0aGlzLlN0YXRpc3RpYy5pc1g7XHJcbiAgICB0aGlzLmlzWSA9IHRoaXMuU3RhdGlzdGljLmlzWTtcclxuICAgIHRoaXMuYWdncmVnYXRpb25zID0gdGhpcy5TdGF0aXN0aWMuYWdncmVnYXRpb25zO1xyXG4gIH0gIFxyXG4gIFxyXG4gIHRoaXMuY29uZmlndXJlRXFwTnVtZXJpY09wdGlvbnMoKTtcclxuICB0aGlzLmNvbmZpZ3VyZUNvbnRyb2xsZXJzKCk7XHJcbiAgdGhpcy5pbml0U3R5bGVzKCk7XHJcblxyXG59XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgICAgaWYgKGNoYW5nZXMuaGFzT3duUHJvcGVydHkoJ1N0YXRpc3RpYycpICYmICFjaGFuZ2VzWydTdGF0aXN0aWMnXS5maXJzdENoYW5nZSl7XHJcbiAgICAgICAgdGhpcy5pc1ggPSBjaGFuZ2VzWydTdGF0aXN0aWMnXS5jdXJyZW50VmFsdWUuaGFzT3duUHJvcGVydHkoJ2lzWCcpID8gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmlzWCA6IG51bGw7XHJcbiAgICAgICAgdGhpcy5pc1kgPSBjaGFuZ2VzWydTdGF0aXN0aWMnXS5jdXJyZW50VmFsdWUuaGFzT3duUHJvcGVydHkoJ2lzWScpID8gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmlzWSA6IG51bGw7XHJcbiAgICAgICAgdGhpcy5hZ2dyZWdhdGlvbnMgPSBjaGFuZ2VzWydTdGF0aXN0aWMnXS5jdXJyZW50VmFsdWUuaGFzT3duUHJvcGVydHkoJ2FnZ3JlZ2F0aW9ucycpID8gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmFnZ3JlZ2F0aW9ucyA6IG51bGw7XHJcbiAgICAgIH0gICBcclxuICB9ICBcclxuXHJcbiAgLy9GdW56aW9uZSBwZXIgcGFyc2FyZSBpbCBjYW1wbyBzdHlsZWNzcyBkZWxsJ29nZ2V0dG8gZmllbGQgZWQgYXBwbGljYXJsbyBhbGwnaHRtbFxyXG4gIGluaXRTdHlsZXMoKSB7XHJcbiAgICBpZih0aGlzLmZpZWxkLkZpZWxkc3R5bGVDU1MgIT0gbnVsbCB8fCB0aGlzLmZpZWxkLkZpZWxkc3R5bGVDU1MgIT0gdW5kZWZpbmVkKSAgIFxyXG4gICAgdGhpcy5GaWVsZHN0eWxlT2JqPSBVdGlsaXR5SGVscGVyU2VydmljZS5pbml0U3R5bGVzKHRoaXMuZmllbGQuRmllbGRzdHlsZUNTUyk7XHJcbiAgICBpZih0aGlzLmZpZWxkLkxhYmVsc3R5bGVDU1MgIT0gbnVsbCB8fCB0aGlzLmZpZWxkLkxhYmVsc3R5bGVDU1MgIT0gdW5kZWZpbmVkKSAgIFxyXG4gICAgdGhpcy5MYWJlbHN0eWxlT2JqID0gVXRpbGl0eUhlbHBlclNlcnZpY2UuaW5pdFN0eWxlcyh0aGlzLmZpZWxkLkxhYmVsc3R5bGVDU1MpO1xyXG59XHJcblxyXG4vKipcclxuKiBNZXRvZG8gcGVyIGVtZXR0ZXJlIGwnZXZlbnRvIGNoZSBpbCB2YWxvcmUgZGVsIHJlY29yZCDDqCBjYW1iaWF0by5cclxuKi9cclxub25GaWx0ZXJDaGFuZ2UoKSB7ICAgXHJcbiAgICB2YXIgc3RhdGlzdGljID0gdGhpcy5jcmVhdGVTdGF0aXN0aWMoKTtcclxuICAgIHRoaXMuZmlsdGVyQ2hhbmdlLmVtaXQoc3RhdGlzdGljKTtcclxufVxyXG5cclxuY3JlYXRlU3RhdGlzdGljKCl7XHJcblxyXG4gIHZhciBzdGF0aXN0aWM6IFN0YXRpc3RpYyA9IHtcclxuICAgIGtleTogdGhpcy5maWVsZC5OYW1lLFxyXG4gICAgdmFsdWU6IHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0sXHJcbiAgICBsb2dpY29wZXJhdG9yOiB0aGlzLnNlbGVjdGVkTG9naWNPcGVyYXRvcixcclxuICAgIGZpZWxkdHlwZTogdGhpcy5maWVsZC5GaWVsZFR5cGUsXHJcbiAgICB2aXNpYmxlOiB0aGlzLnZpc2libGUsXHJcbiAgICBpc1g6IHRoaXMuaXNYLFxyXG4gICAgaXNZOiB0aGlzLmlzWSxcclxuICAgIGFnZ3JlZ2F0aW9uczogdGhpcy5hZ2dyZWdhdGlvbnNcclxuICB9XHJcblxyXG4gIHJldHVybiBzdGF0aXN0aWM7XHJcbn1cclxuXHJcbi8qKlxyXG4qIE1ldG9kbyBwZXIgY29uZmlndXJhcmUgZXFwLW51bWVyaWNcclxuKi9cclxucHJpdmF0ZSBjb25maWd1cmVFcXBOdW1lcmljT3B0aW9ucygpIHtcclxuXHJcbiAgdGhpcy5lcXBOdW1lcmljT3B0aW9ucy5zdWZmaXggPSB0aGlzLmZpZWxkLk1lYXN1cmVVbml0ID8gXCIgIFwiK3RoaXMuZmllbGQuTWVhc3VyZVVuaXQrXCIgIFwiIDogXCJcIjtcclxuICB0aGlzLmVxcE51bWVyaWNPcHRpb25zLnByZWZpeCA9IHRoaXMuZmllbGQuQ3VycmVuY3lTeW1ib2wgPyB0aGlzLmZpZWxkLkN1cnJlbmN5U3ltYm9sK1wiIFwiIDogXCJcIjtcclxuICB0aGlzLmVxcE51bWVyaWNPcHRpb25zLmlucHV0TW9kZSA9IHRoaXMuZmllbGQuQ3VycmVuY3lTeW1ib2wgPyBFcXBOdW1lcmljSW5wdXRNb2RlLkZJTkFOQ0lBTCA6IEVxcE51bWVyaWNJbnB1dE1vZGUuTkFUVVJBTDtcclxuICB0aGlzLmVxcE51bWVyaWNPcHRpb25zLmFsbG93TmVnYXRpdmU9dHJ1ZTtcclxuICBpZiAodGhpcy5maWVsZC5EZWNpbWFsU2VwYXJhdG9yICE9IG51bGwgJiYgdGhpcy5maWVsZC5EZWNpbWFsU2VwYXJhdG9yICE9IHVuZGVmaW5lZClcclxuICB0aGlzLmVxcE51bWVyaWNPcHRpb25zLmRlY2ltYWwgPSB0aGlzLmZpZWxkLkRlY2ltYWxTZXBhcmF0b3I7XHJcbiAgZWxzZVxyXG4gIHRoaXMuZXFwTnVtZXJpY09wdGlvbnMuZGVjaW1hbD1cIi5cIjtcclxuICBpZiAodGhpcy5maWVsZC5UaG91c2FuZHNTZXBhcmF0b3IgIT0gbnVsbCAmJiB0aGlzLmZpZWxkLlRob3VzYW5kc1NlcGFyYXRvciAhPSB1bmRlZmluZWQpXHJcbiAgdGhpcy5lcXBOdW1lcmljT3B0aW9ucy50aG91c2FuZHMgPSB0aGlzLmZpZWxkLlRob3VzYW5kc1NlcGFyYXRvcjtcclxuICBpZih0aGlzLmZpZWxkLklzSW50ZWdlcj09IGZhbHNlKXtcclxuICAgIGlmICh0aGlzLmZpZWxkLkRlY2ltYWxQcmVjaXNpb24gIT0gbnVsbCAmJiB0aGlzLmZpZWxkLkRlY2ltYWxQcmVjaXNpb24gIT0gdW5kZWZpbmVkKSB7IHRoaXMuZXFwTnVtZXJpY09wdGlvbnMucHJlY2lzaW9uID0gdGhpcy5maWVsZC5EZWNpbWFsUHJlY2lzaW9uOyB9XHJcbiAgICBlbHNlIHsgdGhpcy5lcXBOdW1lcmljT3B0aW9ucy5wcmVjaXNpb24gPSAyOyB9XHJcbiAgfWVsc2V7XHJcbiAgICB0aGlzLmVxcE51bWVyaWNPcHRpb25zLnByZWNpc2lvbiA9IDA7XHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuKiBNZXRvZG8gZGkgYWdnaXVudGEgZGVpIHZhbGlkYXRvciBkZWxsJ2lucHV0XHJcbiovXHJcbnByaXZhdGUgY29uZmlndXJlQ29udHJvbGxlcnMoKSB7XHJcbiAgdGhpcy52YWxpZGF0b3JzQXJyYXkgPSBbXTtcclxuICBpZiAodGhpcy5maWVsZC5NaW5WYWx1ZSAhPSBudWxsICYmIHRoaXMuZmllbGQuTWluVmFsdWUgIT0gdW5kZWZpbmVkKVxyXG4gIHRoaXMudmFsaWRhdG9yc0FycmF5LnB1c2goVmFsaWRhdG9ycy5taW4odGhpcy5maWVsZC5NaW5WYWx1ZSkpO1xyXG4gIGlmICh0aGlzLmZpZWxkLk1heFZhbHVlICE9IG51bGwgJiYgdGhpcy5maWVsZC5NYXhWYWx1ZSAhPSB1bmRlZmluZWQpXHJcbiAgdGhpcy52YWxpZGF0b3JzQXJyYXkucHVzaChWYWxpZGF0b3JzLm1heCh0aGlzLmZpZWxkLk1heFZhbHVlKSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBHZXN0aW9uZSB2aXNpYmlsaXTDoFxyXG4gKi9cclxuXHJcbiAgcHVibGljIGNoYW5nZVZpc2liaWxpdHkoKXtcclxuICAgIHRoaXMudmlzaWJsZSA9ICF0aGlzLnZpc2libGU7XHJcbiAgICB0aGlzLm9uRmlsdGVyQ2hhbmdlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYmVjb21lVGhlQ29vcmQodGhlQ29vcmQ6IHN0cmluZyl7XHJcbiAgICBpZiAodGhlQ29vcmQgPT0gXCJYXCIpeyBcclxuICAgICAgdGhpcy5pc1kgPSBmYWxzZTtcclxuICAgICAgdGhpcy5pc1ggPSAhdGhpcy5pc1g7IFxyXG4gICAgfSBcclxuICAgIGlmICh0aGVDb29yZCA9PSBcIllcIil7IFxyXG4gICAgICB0aGlzLmlzWCA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmlzWSA9ICF0aGlzLmlzWTsgXHJcbiAgICB9IFxyXG4gICAgdGhpcy5vbkZpbHRlckNoYW5nZSgpO1xyXG4gIH1cclxuXHJcblxyXG4gIFxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgcm93Q29sXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInZpc2libGVDb2xcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0blwiIFtuZ0NsYXNzXT1cInsnYnRuLXN1Y2Nlc3MnOiB2aXNpYmxlICwgJ2J0bi1kYW5nZXInOiAhdmlzaWJsZSB9XCIgKGNsaWNrKT1cImNoYW5nZVZpc2liaWxpdHkoKVwiPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwidmlzaWJsZVwiPnZpc2liaWxpdHk8L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiIXZpc2libGVcIj52aXNpYmlsaXR5X29mZjwvbWF0LWljb24+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PiAgICAgICAgXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvb3JkaW5hdGVzQ29sXCIgW2hpZGRlbl09XCIhc2hvd1hZXCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG5cIiBbbmdDbGFzc109XCJ7J2J0bi1wcmltYXJ5JzogIWlzWCAsICdidG4tc3VjY2Vzcyc6IGlzWCB9XCIgKGNsaWNrKT1cImJlY29tZVRoZUNvb3JkKCdYJylcIj5YPC9idXR0b24+XHJcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG5cIiBbbmdDbGFzc109XCJ7J2J0bi1wcmltYXJ5JzogIWlzWSAsICdidG4tc3VjY2Vzcyc6IGlzWSB9XCIgKGNsaWNrKT1cImJlY29tZVRoZUNvb3JkKCdZJylcIj5ZPC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+ICAgICAgICBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwidmFsdWVDb2xcIj5cclxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIFtmb3JtR3JvdXBdPVwiZmllbGQuRm9ybUZvcm1Hcm91cFwiPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1sYWJlbCAgY2xhc3M9XCJwdC0xXCIgW25nU3R5bGVdPVwiTGFiZWxzdHlsZU9ialwiPiB7e2ZpZWxkLkRlc2NyaXB0aW9ufX0gPC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBbbmdTdHlsZV09XCJGaWVsZHN0eWxlT2JqXCIgbWF0SW5wdXQgZXFwTnVtZXJpY01hc2sgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZC5OYW1lXCIgW3JlYWRvbmx5XT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cImZhbHNlXCIgWyhuZ01vZGVsKV09XCJyZWNvcmRbZmllbGQuTmFtZV1cIiBbb3B0aW9uc109XCJlcXBOdW1lcmljT3B0aW9uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzdGVwXT1cImZpZWxkLklzSW50ZWdlciA/IDEgOiBudWxsXCIgKG5nTW9kZWxDaGFuZ2UpPVwib25GaWx0ZXJDaGFuZ2UoKVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3IgKm5nSWY9XCIhZmllbGQuRm9ybUZvcm1Hcm91cC52YWxpZCAmJiBmaWVsZC5Gb3JtRm9ybUdyb3VwLmNvbnRyb2xzW2ZpZWxkLk5hbWVdLnRvdWNoZWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1pbjoge3tmaWVsZC5NaW5WYWx1ZX19IC0gTWF4OiB7e2ZpZWxkLk1heFZhbHVlfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XHJcbiAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm9wZXJhdG9yQ29sXCI+XHJcbiAgICAgICAgICAgIDxlcXAtc2VsZWN0IFtlbnVtRGF0YV09XCJsb2dpY09wZXJhdG9yTnVtZXJpY1wiIFsobmdNb2RlbElucHV0KV09XCJzZWxlY3RlZExvZ2ljT3BlcmF0b3JcIiBbc2hvd0NhbmNlbEJ1dHRvbl09XCJmYWxzZVwiIChuZ01vZGVsSW5wdXRDaGFuZ2UpPVwib25GaWx0ZXJDaGFuZ2UoKVwiPjwvZXFwLXNlbGVjdD5cclxuICAgICAgICA8L2Rpdj4gICAgICBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWdncmVnYXRvckNvbFwiPlxyXG4gICAgICAgICAgICA8ZXFwLXNlbGVjdFxyXG4gICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidBZ2dyZWdhemlvbmknXCJcclxuICAgICAgICAgICAgICAgIFtpc011bHRpU2VsZWN0XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgW2VudW1EYXRhXT1cImFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtXCJcclxuICAgICAgICAgICAgICAgIFsobmdNb2RlbElucHV0KV09XCJhZ2dyZWdhdGlvbnNcIlxyXG4gICAgICAgICAgICAgICAgKG5nTW9kZWxJbnB1dENoYW5nZSk9XCJvbkZpbHRlckNoYW5nZSgpXCJcclxuICAgICAgICAgICAgPjwvZXFwLXNlbGVjdD5cclxuICAgICAgICA8L2Rpdj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
155
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtZXJpYy1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXFwLWR5bmFtaWMtbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItdGVtcGxhdGVzL251bWVyaWMtZmlsdGVyLXRlbXBsYXRlL251bWVyaWMtZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VxcC1keW5hbWljLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvcHJpdmF0ZS9mb3JtLXN0YXRpc3RpY3MvZmlsdGVyLXRlbXBsYXRlcy9udW1lcmljLWZpbHRlci10ZW1wbGF0ZS9udW1lcmljLWZpbHRlci10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUMsT0FBTyxFQUFFLG1CQUFtQixFQUFxQixNQUFNLHdCQUF3QixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBR3RGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2pGLE9BQU8sRUFBb0MsNkJBQTZCLEVBQWEsTUFBTSx1Q0FBdUMsQ0FBQzs7Ozs7Ozs7O0FBUW5JLE1BQU0sT0FBTyw4QkFBOEI7SUEwQjNDO1FBdEJXLGNBQVMsR0FBYyxJQUFJLENBQUM7UUFDNUIsV0FBTSxHQUFZLElBQUksQ0FBQztRQUV0QixpQkFBWSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3BFLG9C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R0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7U0FDdEI7UUFDRCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQzs7NEhBN0lVLDhCQUE4QjtnSEFBOUIsOEJBQThCLHFRQ2YzQyxpekVBb0NNOzRGRHJCTyw4QkFBOEI7a0JBTDFDLFNBQVM7K0JBQ0UseUJBQXlCOzBFQU0xQixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDSSxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBFcXBOdW1lcmljSW5wdXRNb2RlLCBOdW1lcmljTWFza0NvbmZpZyB9IGZyb20gJ0BlcXByb2plY3QvZXFwLW51bWVyaWMnO1xyXG5pbXBvcnQgeyBVdGlsaXR5SGVscGVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxpdHlIZWxwZXIuc2VydmljZXMnO1xyXG5pbXBvcnQgeyBSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvcmVjb3JkLm1vZGVsJztcclxuaW1wb3J0IHsgTnVtZXJpY0ZpZWxkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL2ZpZWxkcy9udW1lcmljRmllbGQubW9kZWwnO1xyXG5pbXBvcnQgeyBMb2dpY09wZXJhdG9yTnVtZXJpYyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21vZGVscy9sb2dpY09wZXJhdG9yLm1vZGVsJztcclxuaW1wb3J0IHsgTm90TnVtYmVyQWdncmVnYXRpb25GdW5jdGlvbkVudW0sIE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtLCBTdGF0aXN0aWMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvc3RhdGlzdGljLm1vZGVsJztcclxuaW1wb3J0IHsgRHluYW1pY01vZHVsZUZpbHRlclJlc3VsdFZpZXdNb2RlRW51bSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21vZGVscy9keW5hbWljTW9kdWxlRmlsdGVyUmVzdWx0Vmlld01vZGVFbnVtLm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbnVtZXJpYy1maWx0ZXItdGVtcGxhdGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9udW1lcmljLWZpbHRlci10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbnVtZXJpYy1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTnVtZXJpY0ZpbHRlclRlbXBsYXRlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgQElucHV0KCkgZmllbGQ6IE51bWVyaWNGaWVsZDtcclxuICBASW5wdXQoKSByZWNvcmQ6IFJlY29yZDtcclxuICBASW5wdXQoKSBTdGF0aXN0aWM6IFN0YXRpc3RpYyA9IG51bGw7XHJcbiAgQElucHV0KCkgc2hvd1hZOiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBmaWx0ZXJSZXN1bHRWaWV3TW9kZTogRHluYW1pY01vZHVsZUZpbHRlclJlc3VsdFZpZXdNb2RlRW51bTtcclxuICBAT3V0cHV0KCkgZmlsdGVyQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIHZhbGlkYXRvcnNBcnJheTogYW55W10gPSBbXTtcclxuICBlcXBOdW1lcmljT3B0aW9uczogUGFydGlhbDxOdW1lcmljTWFza0NvbmZpZz4gPSB7fTtcclxuICBsb2dpY09wZXJhdG9yTnVtZXJpYyA9IExvZ2ljT3BlcmF0b3JOdW1lcmljO1xyXG4gIHNlbGVjdGVkTG9naWNPcGVyYXRvcjogTG9naWNPcGVyYXRvck51bWVyaWMgPSBMb2dpY09wZXJhdG9yTnVtZXJpY1snJ107XHJcbiAgYWN0aXZlQ29uZGl0aW9uOiBib29sZWFuID0gZmFsc2U7XHJcbiAgdmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGN1cnJlbnRTdGF0aXN0aWM6IFN0YXRpc3RpYyA9IG51bGw7XHJcblxyXG4vL3ZhcmlhYmlsaSBwZXIgZ2VzdGlyZSBpbCBjc3MgZGVsbGEgbGFiZWwgZSBkZWwgZmllbGRcclxuRmllbGRzdHlsZU9iajogYW55O1xyXG5MYWJlbHN0eWxlT2JqOiBhbnk7XHJcblxyXG5pc1g6IGJvb2xlYW47XHJcbmlzWTogYm9vbGVhbjtcclxuXHJcbmFnZ3JlZ2F0aW9uczogQXJyYXk8TnVtYmVyQWdncmVnYXRpb25GdW5jdGlvbkVudW0+IHwgQXJyYXk8Tm90TnVtYmVyQWdncmVnYXRpb25GdW5jdGlvbkVudW0+O1xyXG5hZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bSA9IE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtO1xyXG5cclxuY29uc3RydWN0b3IoKSB7XHJcbn1cclxuXHJcbm5nT25Jbml0KCk6IHZvaWQge1xyXG5cclxuICBpZiAodGhpcy5TdGF0aXN0aWMgIT0gbnVsbCl7XHJcbiAgICB0aGlzLnNlbGVjdGVkTG9naWNPcGVyYXRvciA9ICh0aGlzLlN0YXRpc3RpYy5sb2dpY29wZXJhdG9yIGFzIExvZ2ljT3BlcmF0b3JOdW1lcmljKTtcclxuICAgIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPSB0aGlzLlN0YXRpc3RpYy52YWx1ZTtcclxuICAgIHRoaXMudmlzaWJsZSA9IHRoaXMuU3RhdGlzdGljLnZpc2libGU7XHJcbiAgICB0aGlzLmlzWCA9IHRoaXMuU3RhdGlzdGljLmlzWDtcclxuICAgIHRoaXMuaXNZID0gdGhpcy5TdGF0aXN0aWMuaXNZO1xyXG4gICAgdGhpcy5hZ2dyZWdhdGlvbnMgPSB0aGlzLlN0YXRpc3RpYy5hZ2dyZWdhdGlvbnM7XHJcbiAgfSAgXHJcbiAgXHJcbiAgdGhpcy5jb25maWd1cmVFcXBOdW1lcmljT3B0aW9ucygpO1xyXG4gIHRoaXMuY29uZmlndXJlQ29udHJvbGxlcnMoKTtcclxuICB0aGlzLmluaXRTdHlsZXMoKTtcclxuXHJcbn1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgICBpZiAoY2hhbmdlcy5oYXNPd25Qcm9wZXJ0eSgnU3RhdGlzdGljJykgJiYgIWNoYW5nZXNbJ1N0YXRpc3RpYyddLmZpcnN0Q2hhbmdlKXtcclxuICAgICAgICB0aGlzLmlzWCA9IGNoYW5nZXNbJ1N0YXRpc3RpYyddLmN1cnJlbnRWYWx1ZS5oYXNPd25Qcm9wZXJ0eSgnaXNYJykgPyBjaGFuZ2VzWydTdGF0aXN0aWMnXS5jdXJyZW50VmFsdWUuaXNYIDogbnVsbDtcclxuICAgICAgICB0aGlzLmlzWSA9IGNoYW5nZXNbJ1N0YXRpc3RpYyddLmN1cnJlbnRWYWx1ZS5oYXNPd25Qcm9wZXJ0eSgnaXNZJykgPyBjaGFuZ2VzWydTdGF0aXN0aWMnXS5jdXJyZW50VmFsdWUuaXNZIDogbnVsbDtcclxuICAgICAgICB0aGlzLmFnZ3JlZ2F0aW9ucyA9IGNoYW5nZXNbJ1N0YXRpc3RpYyddLmN1cnJlbnRWYWx1ZS5oYXNPd25Qcm9wZXJ0eSgnYWdncmVnYXRpb25zJykgPyBjaGFuZ2VzWydTdGF0aXN0aWMnXS5jdXJyZW50VmFsdWUuYWdncmVnYXRpb25zIDogbnVsbDtcclxuICAgICAgfSAgIFxyXG4gIH0gIFxyXG5cclxuICAvL0Z1bnppb25lIHBlciBwYXJzYXJlIGlsIGNhbXBvIHN0eWxlY3NzIGRlbGwnb2dnZXR0byBmaWVsZCBlZCBhcHBsaWNhcmxvIGFsbCdodG1sXHJcbiAgaW5pdFN0eWxlcygpIHtcclxuICAgIGlmKHRoaXMuZmllbGQuRmllbGRzdHlsZUNTUyAhPSBudWxsIHx8IHRoaXMuZmllbGQuRmllbGRzdHlsZUNTUyAhPSB1bmRlZmluZWQpICAgXHJcbiAgICB0aGlzLkZpZWxkc3R5bGVPYmo9IFV0aWxpdHlIZWxwZXJTZXJ2aWNlLmluaXRTdHlsZXModGhpcy5maWVsZC5GaWVsZHN0eWxlQ1NTKTtcclxuICAgIGlmKHRoaXMuZmllbGQuTGFiZWxzdHlsZUNTUyAhPSBudWxsIHx8IHRoaXMuZmllbGQuTGFiZWxzdHlsZUNTUyAhPSB1bmRlZmluZWQpICAgXHJcbiAgICB0aGlzLkxhYmVsc3R5bGVPYmogPSBVdGlsaXR5SGVscGVyU2VydmljZS5pbml0U3R5bGVzKHRoaXMuZmllbGQuTGFiZWxzdHlsZUNTUyk7XHJcbn1cclxuXHJcbi8qKlxyXG4qIE1ldG9kbyBwZXIgZW1ldHRlcmUgbCdldmVudG8gY2hlIGlsIHZhbG9yZSBkZWwgcmVjb3JkIMOoIGNhbWJpYXRvLlxyXG4qL1xyXG5vbkZpbHRlckNoYW5nZSgpIHsgICBcclxuICAgIHZhciBzdGF0aXN0aWMgPSB0aGlzLmNyZWF0ZVN0YXRpc3RpYygpO1xyXG4gICAgdGhpcy5maWx0ZXJDaGFuZ2UuZW1pdChzdGF0aXN0aWMpO1xyXG59XHJcblxyXG5jcmVhdGVTdGF0aXN0aWMoKXtcclxuICBpZiAodGhpcy5hZ2dyZWdhdGlvbnMgIT0gbnVsbCAmJiB0aGlzLmFnZ3JlZ2F0aW9ucy5sZW5ndGggPiAwKXsgdGhpcy52aXNpYmxlID0gdHJ1ZTsgfVxyXG5cclxuICB2YXIgc3RhdGlzdGljOiBTdGF0aXN0aWMgPSB7XHJcbiAgICBrZXk6IHRoaXMuZmllbGQuTmFtZSxcclxuICAgIHZhbHVlOiB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdLFxyXG4gICAgbG9naWNvcGVyYXRvcjogdGhpcy5zZWxlY3RlZExvZ2ljT3BlcmF0b3IsXHJcbiAgICBmaWVsZHR5cGU6IHRoaXMuZmllbGQuRmllbGRUeXBlLFxyXG4gICAgdmlzaWJsZTogdGhpcy52aXNpYmxlLFxyXG4gICAgaXNYOiB0aGlzLmlzWCxcclxuICAgIGlzWTogdGhpcy5pc1ksXHJcbiAgICBhZ2dyZWdhdGlvbnM6IHRoaXMuYWdncmVnYXRpb25zXHJcbiAgfVxyXG5cclxuICByZXR1cm4gc3RhdGlzdGljO1xyXG59XHJcblxyXG4vKipcclxuKiBNZXRvZG8gcGVyIGNvbmZpZ3VyYXJlIGVxcC1udW1lcmljXHJcbiovXHJcbnByaXZhdGUgY29uZmlndXJlRXFwTnVtZXJpY09wdGlvbnMoKSB7XHJcblxyXG4gIHRoaXMuZXFwTnVtZXJpY09wdGlvbnMuc3VmZml4ID0gdGhpcy5maWVsZC5NZWFzdXJlVW5pdCA/IFwiICBcIit0aGlzLmZpZWxkLk1lYXN1cmVVbml0K1wiICBcIiA6IFwiXCI7XHJcbiAgdGhpcy5lcXBOdW1lcmljT3B0aW9ucy5wcmVmaXggPSB0aGlzLmZpZWxkLkN1cnJlbmN5U3ltYm9sID8gdGhpcy5maWVsZC5DdXJyZW5jeVN5bWJvbCtcIiBcIiA6IFwiXCI7XHJcbiAgdGhpcy5lcXBOdW1lcmljT3B0aW9ucy5pbnB1dE1vZGUgPSB0aGlzLmZpZWxkLkN1cnJlbmN5U3ltYm9sID8gRXFwTnVtZXJpY0lucHV0TW9kZS5GSU5BTkNJQUwgOiBFcXBOdW1lcmljSW5wdXRNb2RlLk5BVFVSQUw7XHJcbiAgdGhpcy5lcXBOdW1lcmljT3B0aW9ucy5hbGxvd05lZ2F0aXZlPXRydWU7XHJcbiAgaWYgKHRoaXMuZmllbGQuRGVjaW1hbFNlcGFyYXRvciAhPSBudWxsICYmIHRoaXMuZmllbGQuRGVjaW1hbFNlcGFyYXRvciAhPSB1bmRlZmluZWQpXHJcbiAgdGhpcy5lcXBOdW1lcmljT3B0aW9ucy5kZWNpbWFsID0gdGhpcy5maWVsZC5EZWNpbWFsU2VwYXJhdG9yO1xyXG4gIGVsc2VcclxuICB0aGlzLmVxcE51bWVyaWNPcHRpb25zLmRlY2ltYWw9XCIuXCI7XHJcbiAgaWYgKHRoaXMuZmllbGQuVGhvdXNhbmRzU2VwYXJhdG9yICE9IG51bGwgJiYgdGhpcy5maWVsZC5UaG91c2FuZHNTZXBhcmF0b3IgIT0gdW5kZWZpbmVkKVxyXG4gIHRoaXMuZXFwTnVtZXJpY09wdGlvbnMudGhvdXNhbmRzID0gdGhpcy5maWVsZC5UaG91c2FuZHNTZXBhcmF0b3I7XHJcbiAgaWYodGhpcy5maWVsZC5Jc0ludGVnZXI9PSBmYWxzZSl7XHJcbiAgICBpZiAodGhpcy5maWVsZC5EZWNpbWFsUHJlY2lzaW9uICE9IG51bGwgJiYgdGhpcy5maWVsZC5EZWNpbWFsUHJlY2lzaW9uICE9IHVuZGVmaW5lZCkgeyB0aGlzLmVxcE51bWVyaWNPcHRpb25zLnByZWNpc2lvbiA9IHRoaXMuZmllbGQuRGVjaW1hbFByZWNpc2lvbjsgfVxyXG4gICAgZWxzZSB7IHRoaXMuZXFwTnVtZXJpY09wdGlvbnMucHJlY2lzaW9uID0gMjsgfVxyXG4gIH1lbHNle1xyXG4gICAgdGhpcy5lcXBOdW1lcmljT3B0aW9ucy5wcmVjaXNpb24gPSAwO1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiogTWV0b2RvIGRpIGFnZ2l1bnRhIGRlaSB2YWxpZGF0b3IgZGVsbCdpbnB1dFxyXG4qL1xyXG5wcml2YXRlIGNvbmZpZ3VyZUNvbnRyb2xsZXJzKCkge1xyXG4gIHRoaXMudmFsaWRhdG9yc0FycmF5ID0gW107XHJcbiAgaWYgKHRoaXMuZmllbGQuTWluVmFsdWUgIT0gbnVsbCAmJiB0aGlzLmZpZWxkLk1pblZhbHVlICE9IHVuZGVmaW5lZClcclxuICB0aGlzLnZhbGlkYXRvcnNBcnJheS5wdXNoKFZhbGlkYXRvcnMubWluKHRoaXMuZmllbGQuTWluVmFsdWUpKTtcclxuICBpZiAodGhpcy5maWVsZC5NYXhWYWx1ZSAhPSBudWxsICYmIHRoaXMuZmllbGQuTWF4VmFsdWUgIT0gdW5kZWZpbmVkKVxyXG4gIHRoaXMudmFsaWRhdG9yc0FycmF5LnB1c2goVmFsaWRhdG9ycy5tYXgodGhpcy5maWVsZC5NYXhWYWx1ZSkpO1xyXG59XHJcblxyXG4vKipcclxuICogR2VzdGlvbmUgdmlzaWJpbGl0w6BcclxuICovXHJcblxyXG4gIHB1YmxpYyBjaGFuZ2VWaXNpYmlsaXR5KCl7XHJcbiAgICB0aGlzLnZpc2libGUgPSAhdGhpcy52aXNpYmxlO1xyXG4gICAgaWYgKHRoaXMuYWdncmVnYXRpb25zICE9IG51bGwgJiYgdGhpcy5hZ2dyZWdhdGlvbnMubGVuZ3RoID4gMCl7IHRoaXMudmlzaWJsZSA9IHRydWU7IH1cclxuICAgIHRoaXMub25GaWx0ZXJDaGFuZ2UoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBiZWNvbWVUaGVDb29yZCh0aGVDb29yZDogc3RyaW5nKXtcclxuICAgIGlmICh0aGVDb29yZCA9PSBcIlhcIil7IFxyXG4gICAgICB0aGlzLmlzWSA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmlzWCA9ICF0aGlzLmlzWDsgXHJcbiAgICB9IFxyXG4gICAgaWYgKHRoZUNvb3JkID09IFwiWVwiKXsgXHJcbiAgICAgIHRoaXMuaXNYID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuaXNZID0gIXRoaXMuaXNZOyBcclxuICAgIH0gXHJcbiAgICB0aGlzLm9uRmlsdGVyQ2hhbmdlKCk7XHJcbiAgfVxyXG5cclxuXHJcbiAgXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMiByb3dDb2xcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidmlzaWJsZUNvbFwiPlxyXG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuXCIgW25nQ2xhc3NdPVwieydidG4tc3VjY2Vzcyc6IHZpc2libGUgLCAnYnRuLWRhbmdlcic6ICF2aXNpYmxlIH1cIiAoY2xpY2spPVwiY2hhbmdlVmlzaWJpbGl0eSgpXCI+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJ2aXNpYmxlXCI+dmlzaWJpbGl0eTwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCIhdmlzaWJsZVwiPnZpc2liaWxpdHlfb2ZmPC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+ICAgICAgICBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29vcmRpbmF0ZXNDb2xcIiBbaGlkZGVuXT1cIiFzaG93WFlcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0blwiIFtuZ0NsYXNzXT1cInsnYnRuLXByaW1hcnknOiAhaXNYICwgJ2J0bi1zdWNjZXNzJzogaXNYIH1cIiAoY2xpY2spPVwiYmVjb21lVGhlQ29vcmQoJ1gnKVwiPlg8L2J1dHRvbj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0blwiIFtuZ0NsYXNzXT1cInsnYnRuLXByaW1hcnknOiAhaXNZICwgJ2J0bi1zdWNjZXNzJzogaXNZIH1cIiAoY2xpY2spPVwiYmVjb21lVGhlQ29vcmQoJ1knKVwiPlk8L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj4gICAgICAgIFxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ2YWx1ZUNvbFwiPlxyXG4gICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgW2Zvcm1Hcm91cF09XCJmaWVsZC5Gb3JtRm9ybUdyb3VwXCI+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWxhYmVsICBjbGFzcz1cInB0LTFcIiBbbmdTdHlsZV09XCJMYWJlbHN0eWxlT2JqXCI+IHt7ZmllbGQuRGVzY3JpcHRpb259fSA8L21hdC1sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IFtuZ1N0eWxlXT1cIkZpZWxkc3R5bGVPYmpcIiBtYXRJbnB1dCBlcXBOdW1lcmljTWFzayBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLk5hbWVcIiBbcmVhZG9ubHldPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwiZmFsc2VcIiBbKG5nTW9kZWwpXT1cInJlY29yZFtmaWVsZC5OYW1lXVwiIFtvcHRpb25zXT1cImVxcE51bWVyaWNPcHRpb25zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3N0ZXBdPVwiZmllbGQuSXNJbnRlZ2VyID8gMSA6IG51bGxcIiAobmdNb2RlbENoYW5nZSk9XCJvbkZpbHRlckNoYW5nZSgpXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1lcnJvciAqbmdJZj1cIiFmaWVsZC5Gb3JtRm9ybUdyb3VwLnZhbGlkICYmIGZpZWxkLkZvcm1Gb3JtR3JvdXAuY29udHJvbHNbZmllbGQuTmFtZV0udG91Y2hlZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgTWluOiB7e2ZpZWxkLk1pblZhbHVlfX0gLSBNYXg6IHt7ZmllbGQuTWF4VmFsdWV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cclxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwib3BlcmF0b3JDb2xcIj5cclxuICAgICAgICAgICAgPGVxcC1zZWxlY3QgW2VudW1EYXRhXT1cImxvZ2ljT3BlcmF0b3JOdW1lcmljXCIgWyhuZ01vZGVsSW5wdXQpXT1cInNlbGVjdGVkTG9naWNPcGVyYXRvclwiIFtzaG93Q2FuY2VsQnV0dG9uXT1cImZhbHNlXCIgKG5nTW9kZWxJbnB1dENoYW5nZSk9XCJvbkZpbHRlckNoYW5nZSgpXCI+PC9lcXAtc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PiAgICAgIFxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhZ2dyZWdhdG9yQ29sXCI+XHJcbiAgICAgICAgICAgIDxlcXAtc2VsZWN0XHJcbiAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0FnZ3JlZ2F6aW9uaSdcIlxyXG4gICAgICAgICAgICAgICAgW2lzTXVsdGlTZWxlY3RdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICBbZW51bURhdGFdPVwiYWdncmVnYXRpb25GdW5jdGlvbkVudW1cIlxyXG4gICAgICAgICAgICAgICAgWyhuZ01vZGVsSW5wdXQpXT1cImFnZ3JlZ2F0aW9uc1wiXHJcbiAgICAgICAgICAgICAgICAobmdNb2RlbElucHV0Q2hhbmdlKT1cIm9uRmlsdGVyQ2hhbmdlKClcIlxyXG4gICAgICAgICAgICA+PC9lcXAtc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgIDwvZGl2PlxyXG48L2Rpdj4iXX0=
@@ -73,6 +73,9 @@ export class TextFilterTemplateComponent {
73
73
  * Metodo per emettere l'evento che il valore del record è cambiato.
74
74
  */
75
75
  onFilterChange() {
76
+ if (this.aggregations != null && this.aggregations.length > 0) {
77
+ this.visible = true;
78
+ }
76
79
  var statistic = {
77
80
  key: this.field.Name,
78
81
  value: this.record[this.field.Name],
@@ -90,6 +93,9 @@ export class TextFilterTemplateComponent {
90
93
  */
91
94
  changeVisibility() {
92
95
  this.visible = !this.visible;
96
+ if (this.aggregations != null && this.aggregations.length > 0) {
97
+ this.visible = true;
98
+ }
93
99
  this.onFilterChange();
94
100
  }
95
101
  }
@@ -111,4 +117,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
111
117
  }], filterChange: [{
112
118
  type: Output
113
119
  }] } });
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXFwLWR5bmFtaWMtbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItdGVtcGxhdGVzL3RleHQtZmlsdGVyLXRlbXBsYXRlL3RleHQtZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VxcC1keW5hbWljLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvcHJpdmF0ZS9mb3JtLXN0YXRpc3RpY3MvZmlsdGVyLXRlbXBsYXRlcy90ZXh0LWZpbHRlci10ZW1wbGF0ZS90ZXh0LWZpbHRlci10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUV0RixPQUFPLEVBQUUsWUFBWSxFQUFhLE1BQU0sOENBQThDLENBQUM7QUFDdkYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDdEYsT0FBTyxFQUFFLFFBQVEsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDOUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGdDQUFnQyxFQUE0QyxNQUFNLHVDQUF1QyxDQUFDO0FBQ25JLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7O0FBTzVDLE1BQU0sT0FBTywyQkFBMkI7SUFvQ3RDO1FBbENBLDhCQUE4QjtRQUM5QixxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDekIsV0FBTSxHQUFHLFFBQVEsQ0FBQyxHQUFHLENB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LEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBUUksWUFBWTtzQkFBckIsTUFBTTtnQkFHRyxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmVjb3JkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL3JlY29yZC5tb2RlbCc7XHJcbmltcG9ydCB7IFRleHRNYXNrRW51bSwgVGV4dEZpZWxkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL2ZpZWxkcy90ZXh0RmllbGQubW9kZWwnO1xyXG5pbXBvcnQgeyBVdGlsaXR5SGVscGVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxpdHlIZWxwZXIuc2VydmljZXMnO1xyXG5pbXBvcnQgeyBpbnRlcnZhbCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IExvZ2ljT3BlcmF0b3JUZXh0IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL2xvZ2ljT3BlcmF0b3IubW9kZWwnO1xyXG5pbXBvcnQgeyBOb3ROdW1iZXJBZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bSwgTnVtYmVyQWdncmVnYXRpb25GdW5jdGlvbkVudW0sIFN0YXRpc3RpYyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21vZGVscy9zdGF0aXN0aWMubW9kZWwnO1xyXG5pbXBvcnQgeyBDYXBhY2l0b3IgfSBmcm9tICdAY2FwYWNpdG9yL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd0ZXh0LWZpbHRlci10ZW1wbGF0ZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RleHQtZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90ZXh0LWZpbHRlci10ZW1wbGF0ZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUZXh0RmlsdGVyVGVtcGxhdGVDb21wb25lbnQge1xyXG5cclxuICAvL1ZhcmlhYmlsaSBwZXIgbCdpbnB1dCB2b2NhbGVcclxuICBpc1N0aWxsUmVjb2dpbnplID0gZmFsc2U7XHJcbiAgc291cmNlID0gaW50ZXJ2YWwoMjAwKTtcclxuICBuZXd0ZXh0OiBzdHJpbmc7XHJcbiAgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcbiAgLy92YXJpYWJpbGkgZXN0ZXJuZSBwZXIgbCdpbnB1dCBkZWkgY2FtcGlcclxuICBASW5wdXQoKSBmaWVsZDogVGV4dEZpZWxkO1xyXG4gIEBJbnB1dCgpIHJlY29yZDogUmVjb3JkO1xyXG4gIEBJbnB1dCgpIFN0YXRpc3RpYzogU3RhdGlzdGljID0gbnVsbDtcclxuICBASW5wdXQoKSBzaG93WFk6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIFNUVDpib29sZWFuID10cnVlO1xyXG4gIC8vdmFyaWFiaWxpIHBlciBnZXN0aXJlIGlsIGNzcyBkZWxsYSBsYWJlbCBlIGRlbCBmaWVsZFxyXG4gIEZpZWxkc3R5bGVPYmo6IGFueTtcclxuICBMYWJlbHN0eWxlT2JqOiBhbnk7XHJcbiAgdmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGN1cnJlbnRTdGF0aXN0aWM6IFN0YXRpc3RpYyA9IG51bGw7XHJcblxyXG4gIEBPdXRwdXQoKSByZWNvcmRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxSZWNvcmQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxSZWNvcmQ+KCk7XHJcbiAgSW5wdXRNYXNrRW51bSA9IFRleHRNYXNrRW51bTtcclxuXHJcbiAgQE91dHB1dCgpIGZpbHRlckNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBsb2dpY09wZXJhdG9yVGV4dCA9IExvZ2ljT3BlcmF0b3JUZXh0O1xyXG4gIHNlbGVjdGVkTG9naWNPcGVyYXRvcjogTG9naWNPcGVyYXRvclRleHQgPSBMb2dpY09wZXJhdG9yVGV4dFsnJ107XHJcbiAgYWN0aXZlQ29uZGl0aW9uOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHBsYXRmb3JtOiBzdHJpbmcgPSBDYXBhY2l0b3IuZ2V0UGxhdGZvcm0oKTtcclxuXHJcbiAgaXNYOiBib29sZWFuO1xyXG4gIGlzWTogYm9vbGVhbjsgICBcclxuXHJcbiAgYWdncmVnYXRpb25zOiBBcnJheTxOdW1iZXJBZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bT4gfCBBcnJheTxOb3ROdW1iZXJBZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bT47XHJcbiAgYWdncmVnYXRpb25GdW5jdGlvbkVudW0gPSBOb3ROdW1iZXJBZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bTtcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5TdGF0aXN0aWMgIT0gbnVsbCl7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRMb2dpY09wZXJhdG9yID0gKHRoaXMuU3RhdGlzdGljLmxvZ2ljb3BlcmF0b3IgYXMgTG9naWNPcGVyYXRvclRleHQpO1xyXG4gICAgICB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID0gdGhpcy5TdGF0aXN0aWMudmFsdWU7XHJcbiAgICAgIHRoaXMudmlzaWJsZSA9IHRoaXMuU3RhdGlzdGljLnZpc2libGU7XHJcbiAgICAgIHRoaXMuYWdncmVnYXRpb25zID0gdGhpcy5TdGF0aXN0aWMuYWdncmVnYXRpb25zO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuaW5pdFN0eWxlcygpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgICBpZiAoY2hhbmdlcy5oYXNPd25Qcm9wZXJ0eSgnU3RhdGlzdGljJykgJiYgIWNoYW5nZXNbJ1N0YXRpc3RpYyddLmZpcnN0Q2hhbmdlKXtcclxuICAgICAgICB0aGlzLmlzWCA9IGNoYW5nZXNbJ1N0YXRpc3RpYyddLmN1cnJlbnRWYWx1ZS5oYXNPd25Qcm9wZXJ0eSgnaXNYJykgPyBjaGFuZ2VzWydTdGF0aXN0aWMnXS5jdXJyZW50VmFsdWUuaXNYIDogbnVsbDtcclxuICAgICAgICB0aGlzLmlzWSA9IGNoYW5nZXNbJ1N0YXRpc3RpYyddLmN1cnJlbnRWYWx1ZS5oYXNPd25Qcm9wZXJ0eSgnaXNZJykgPyBjaGFuZ2VzWydTdGF0aXN0aWMnXS5jdXJyZW50VmFsdWUuaXNZIDogbnVsbDtcclxuICAgICAgICB0aGlzLmFnZ3JlZ2F0aW9ucyA9IGNoYW5nZXNbJ1N0YXRpc3RpYyddLmN1cnJlbnRWYWx1ZS5oYXNPd25Qcm9wZXJ0eSgnYWdncmVnYXRpb25zJykgPyBjaGFuZ2VzWydTdGF0aXN0aWMnXS5jdXJyZW50VmFsdWUuYWdncmVnYXRpb25zIDogbnVsbDtcclxuICAgICAgfVxyXG4gIH0gICBcclxuXHJcbiAgaW5pdFN0eWxlcygpIHtcclxuICAgICAgLy9GdW56aW9uZSBwZXIgcGFyc2FyZSBpbCBjYW1wbyBzdHlsZWNzcyBkZWxsJ29nZ2V0dG8gZmllbGQgZWQgYXBwbGljYXJsbyBhbGwnaHRtbFxyXG4gICAgaWYodGhpcy5maWVsZC5GaWVsZHN0eWxlQ1NTICE9IG51bGwgfHwgdGhpcy5maWVsZC5GaWVsZHN0eWxlQ1NTICE9IHVuZGVmaW5lZCkgICBcclxuICAgICAgdGhpcy5GaWVsZHN0eWxlT2JqPSBVdGlsaXR5SGVscGVyU2VydmljZS5pbml0U3R5bGVzKHRoaXMuZmllbGQuRmllbGRzdHlsZUNTUyk7XHJcbiAgICBpZih0aGlzLmZpZWxkLkxhYmVsc3R5bGVDU1MgIT0gbnVsbCB8fCB0aGlzLmZpZWxkLkxhYmVsc3R5bGVDU1MgIT0gdW5kZWZpbmVkKSAgIFxyXG4gICAgICB0aGlzLkxhYmVsc3R5bGVPYmogPSBVdGlsaXR5SGVscGVyU2VydmljZS5pbml0U3R5bGVzKHRoaXMuZmllbGQuTGFiZWxzdHlsZUNTUyk7XHJcbiB9XHJcblxyXG4gIGdldElucHV0VHlwZSgpIHtcclxuICAgIHN3aXRjaCAodGhpcy5maWVsZC5UZXh0TWFzaykge1xyXG4gICAgICBjYXNlIFRleHRNYXNrRW51bS5FbWFpbDpcclxuICAgICAgICByZXR1cm4gJ2VtYWlsJztcclxuICAgICAgY2FzZSBUZXh0TWFza0VudW0uUGFzc3dvcmQ6XHJcbiAgICAgICAgcmV0dXJuICdwYXNzd29yZCc7XHJcbiAgICAgIGNhc2UgVGV4dE1hc2tFbnVtLlRlbGVmb25vOlxyXG4gICAgICAgIHJldHVybiAndGVsJztcclxuICAgICAgY2FzZSBUZXh0TWFza0VudW0uVXJsOlxyXG4gICAgICAgIHJldHVybiAndXJsJ1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiAndGV4dCc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuLyoqXHJcbiogTWV0b2RvIHBlciBlbWV0dGVyZSBsJ2V2ZW50byBjaGUgaWwgdmFsb3JlIGRlbCByZWNvcmQgw6ggY2FtYmlhdG8uXHJcbiovXHJcbm9uRmlsdGVyQ2hhbmdlKCkge1xyXG4gICAgdmFyIHN0YXRpc3RpYzogU3RhdGlzdGljID0ge1xyXG4gICAgICBrZXk6IHRoaXMuZmllbGQuTmFtZSxcclxuICAgICAgdmFsdWU6IHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0sXHJcbiAgICAgIGxvZ2ljb3BlcmF0b3I6IHRoaXMuc2VsZWN0ZWRMb2dpY09wZXJhdG9yLFxyXG4gICAgICBmaWVsZHR5cGU6IHRoaXMuZmllbGQuRmllbGRUeXBlLFxyXG4gICAgICB2aXNpYmxlOiB0aGlzLnZpc2libGUsXHJcbiAgICAgIGlzWDogdGhpcy5pc1gsXHJcbiAgICAgIGlzWTogdGhpcy5pc1ksXHJcbiAgICAgIGFnZ3JlZ2F0aW9uczogdGhpcy5hZ2dyZWdhdGlvbnNcclxuICAgIH0gICAgXHJcblxyXG4gICAgdGhpcy5maWx0ZXJDaGFuZ2UuZW1pdChzdGF0aXN0aWMpO1xyXG59XHJcblxyXG4vKipcclxuICogR2VzdGlvbmUgdmlzaWJpbGl0w6BcclxuICovXHJcblxyXG4gIHB1YmxpYyBjaGFuZ2VWaXNpYmlsaXR5KCl7XHJcbiAgICB0aGlzLnZpc2libGUgPSAhdGhpcy52aXNpYmxlO1xyXG4gICAgdGhpcy5vbkZpbHRlckNoYW5nZSgpO1xyXG4gIH1cclxuXHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICA8ZGl2IGNsYXNzPVwiY29sLTEyIHJvd0NvbFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInZpc2libGVDb2xcIj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuXCIgW25nQ2xhc3NdPVwieydidG4tc3VjY2Vzcyc6IHZpc2libGUgLCAnYnRuLWRhbmdlcic6ICF2aXNpYmxlIH1cIiAoY2xpY2spPVwiY2hhbmdlVmlzaWJpbGl0eSgpXCI+XHJcbiAgICAgICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cInZpc2libGVcIj52aXNpYmlsaXR5PC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiIXZpc2libGVcIj52aXNpYmlsaXR5X29mZjwvbWF0LWljb24+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICA8L2Rpdj4gIFxyXG4gICAgPGRpdiBjbGFzcz1cImNvb3JkaW5hdGVzQ29sXCIgW2hpZGRlbl09XCIhc2hvd1hZXCI+XHJcblxyXG4gICAgPC9kaXY+ICAgICAgICBcclxuICAgIDxkaXYgY2xhc3M9XCJ2YWx1ZUNvbFwiPlxyXG4gICAgICA8bWF0LWZvcm0tZmllbGQgW2Zvcm1Hcm91cF09XCJmaWVsZC5Gb3JtRm9ybUdyb3VwXCI+XHJcbiAgICAgICAgPG1hdC1sYWJlbCBjbGFzcz1cInB0LTFcIiBbbmdTdHlsZV09XCJMYWJlbHN0eWxlT2JqXCI+XHJcbiAgICAgICAgICB7eyBmaWVsZC5EZXNjcmlwdGlvbiB9fVxyXG4gICAgICAgIDwvbWF0LWxhYmVsPlxyXG4gICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgW25nU3R5bGVdPVwiRmllbGRzdHlsZU9ialwiXHJcbiAgICAgICAgICBtYXRJbnB1dFxyXG4gICAgICAgICAgW3R5cGVdPVwiZ2V0SW5wdXRUeXBlKClcIlxyXG4gICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZC5OYW1lXCJcclxuICAgICAgICAgIFtyZWFkb25seV09XCJmYWxzZVwiXHJcbiAgICAgICAgICBbcmVxdWlyZWRdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgWyhuZ01vZGVsKV09XCJyZWNvcmRbZmllbGQuTmFtZV1cIlxyXG4gICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25GaWx0ZXJDaGFuZ2UoKVwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8bWF0LWVycm9yXHJcbiAgICAgICAgICAqbmdJZj1cIlxyXG4gICAgICAgICAgICAhZmllbGQuRm9ybUZvcm1Hcm91cC52YWxpZCAmJlxyXG4gICAgICAgICAgICBmaWVsZC5Gb3JtRm9ybUdyb3VwLmNvbnRyb2xzW2ZpZWxkLk5hbWVdLnRvdWNoZWRcclxuICAgICAgICAgIFwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgTWluLiBDYXJhdHRlcmk6IHt7IGZpZWxkLk1pbkxlbmdodCB9fSAtIE1heC4gQ2FyYXR0ZXJpOlxyXG4gICAgICAgICAge3sgZmllbGQuTWF4TGVuZ2h0IH19XHJcbiAgICAgICAgPC9tYXQtZXJyb3I+XHJcbiAgICAgICAgPG1hdC1pY29uXHJcbiAgICAgICAgICBbaGlkZGVuXT1cIiFmaWVsZC5NaWNyb3Bob25lIHx8IHBsYXRmb3JtICE9ICd3ZWInXCJcclxuICAgICAgICAgIG1hdFN1ZmZpeFxyXG4gICAgICAgICAgU3BlZWNoVG9UZXh0XHJcbiAgICAgICAgICBbKGJpbmRlZFRleHQpXT1cInJlY29yZFtmaWVsZC5OYW1lXVwiXHJcbiAgICAgICAgICBzdHlsZT1cImN1cnNvcjogcG9pbnRlclwiXHJcbiAgICAgICAgICA+a2V5Ym9hcmRfdm9pY2U8L21hdC1pY29uXHJcbiAgICAgICAgPlxyXG5cclxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cIm9wZXJhdG9yQ29sXCI+XHJcbiAgICAgIDxlcXAtc2VsZWN0XHJcbiAgICAgICAgW2VudW1EYXRhXT1cImxvZ2ljT3BlcmF0b3JUZXh0XCJcclxuICAgICAgICBbKG5nTW9kZWxJbnB1dCldPVwic2VsZWN0ZWRMb2dpY09wZXJhdG9yXCJcclxuICAgICAgICBbc2hvd0NhbmNlbEJ1dHRvbl09XCJmYWxzZVwiXHJcbiAgICAgICAgKG5nTW9kZWxJbnB1dENoYW5nZSk9XCJvbkZpbHRlckNoYW5nZSgpXCJcclxuICAgICAgPjwvZXFwLXNlbGVjdD5cclxuICAgIDwvZGl2PiAgICAgICBcclxuICAgIDxkaXYgY2xhc3M9XCJhZ2dyZWdhdG9yQ29sXCI+XHJcbiAgICAgIDxlcXAtc2VsZWN0XHJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidBZ2dyZWdhemlvbmknXCJcclxuICAgICAgICBbaXNNdWx0aVNlbGVjdF09XCJ0cnVlXCJcclxuICAgICAgICBbZW51bURhdGFdPVwiYWdncmVnYXRpb25GdW5jdGlvbkVudW1cIlxyXG4gICAgICAgIFsobmdNb2RlbElucHV0KV09XCJhZ2dyZWdhdGlvbnNcIlxyXG4gICAgICAgIChuZ01vZGVsSW5wdXRDaGFuZ2UpPVwib25GaWx0ZXJDaGFuZ2UoKVwiXHJcbiAgICAgID48L2VxcC1zZWxlY3Q+XHJcbiAgICA8L2Rpdj4gIFxyXG4gICAgIFxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
120
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXFwLWR5bmFtaWMtbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItdGVtcGxhdGVzL3RleHQtZmlsdGVyLXRlbXBsYXRlL3RleHQtZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VxcC1keW5hbWljLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvcHJpdmF0ZS9mb3JtLXN0YXRpc3RpY3MvZmlsdGVyLXRlbXBsYXRlcy90ZXh0LWZpbHRlci10ZW1wbGF0ZS90ZXh0LWZpbHRlci10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUV0RixPQUFPLEVBQUUsWUFBWSxFQUFhLE1BQU0sOENBQThDLENBQUM7QUFDdkYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDdEYsT0FBTyxFQUFFLFFBQVEsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDOUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGdDQUFnQyxFQUE0QyxNQUFNLHVDQUF1QyxDQUFDO0FBQ25JLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7O0FBTzVDLE1BQU0sT0FBTywyQkFBMkI7SUFvQ3RDO1FBbENBLDhCQUE4QjtRQUM5QixxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDekIsV0FBTSxHQUFHLFFBQVEsQ0FBQyxHQUFHLENB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QUksQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBQztZQUFFLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1NBQUU7UUFDdEYsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7O3lIQTdHVSwyQkFBMkI7NkdBQTNCLDJCQUEyQixrUENkeEMseXhFQWtFQTs0RkRwRGEsMkJBQTJCO2tCQUx2QyxTQUFTOytCQUNFLHNCQUFzQjswRUFZdkIsS0FBSztzQkFBYixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFRSSxZQUFZO3NCQUFyQixNQUFNO2dCQUdHLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvcmVjb3JkLm1vZGVsJztcclxuaW1wb3J0IHsgVGV4dE1hc2tFbnVtLCBUZXh0RmllbGQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvZmllbGRzL3RleHRGaWVsZC5tb2RlbCc7XHJcbmltcG9ydCB7IFV0aWxpdHlIZWxwZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2VydmljZXMvdXRpbGl0eUhlbHBlci5zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IGludGVydmFsLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgTG9naWNPcGVyYXRvclRleHQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvbG9naWNPcGVyYXRvci5tb2RlbCc7XHJcbmltcG9ydCB7IE5vdE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtLCBOdW1iZXJBZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bSwgU3RhdGlzdGljIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL3N0YXRpc3RpYy5tb2RlbCc7XHJcbmltcG9ydCB7IENhcGFjaXRvciB9IGZyb20gJ0BjYXBhY2l0b3IvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3RleHQtZmlsdGVyLXRlbXBsYXRlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGV4dC1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RleHQtZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFRleHRGaWx0ZXJUZW1wbGF0ZUNvbXBvbmVudCB7XHJcblxyXG4gIC8vVmFyaWFiaWxpIHBlciBsJ2lucHV0IHZvY2FsZVxyXG4gIGlzU3RpbGxSZWNvZ2luemUgPSBmYWxzZTtcclxuICBzb3VyY2UgPSBpbnRlcnZhbCgyMDApO1xyXG4gIG5ld3RleHQ6IHN0cmluZztcclxuICBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcclxuICAvL3ZhcmlhYmlsaSBlc3Rlcm5lIHBlciBsJ2lucHV0IGRlaSBjYW1waVxyXG4gIEBJbnB1dCgpIGZpZWxkOiBUZXh0RmllbGQ7XHJcbiAgQElucHV0KCkgcmVjb3JkOiBSZWNvcmQ7XHJcbiAgQElucHV0KCkgU3RhdGlzdGljOiBTdGF0aXN0aWMgPSBudWxsO1xyXG4gIEBJbnB1dCgpIHNob3dYWTogYm9vbGVhbiA9IHRydWU7XHJcbiAgU1RUOmJvb2xlYW4gPXRydWU7XHJcbiAgLy92YXJpYWJpbGkgcGVyIGdlc3RpcmUgaWwgY3NzIGRlbGxhIGxhYmVsIGUgZGVsIGZpZWxkXHJcbiAgRmllbGRzdHlsZU9iajogYW55O1xyXG4gIExhYmVsc3R5bGVPYmo6IGFueTtcclxuICB2aXNpYmxlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgY3VycmVudFN0YXRpc3RpYzogU3RhdGlzdGljID0gbnVsbDtcclxuXHJcbiAgQE91dHB1dCgpIHJlY29yZENoYW5nZTogRXZlbnRFbWl0dGVyPFJlY29yZD4gPSBuZXcgRXZlbnRFbWl0dGVyPFJlY29yZD4oKTtcclxuICBJbnB1dE1hc2tFbnVtID0gVGV4dE1hc2tFbnVtO1xyXG5cclxuICBAT3V0cHV0KCkgZmlsdGVyQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIGxvZ2ljT3BlcmF0b3JUZXh0ID0gTG9naWNPcGVyYXRvclRleHQ7XHJcbiAgc2VsZWN0ZWRMb2dpY09wZXJhdG9yOiBMb2dpY09wZXJhdG9yVGV4dCA9IExvZ2ljT3BlcmF0b3JUZXh0WycnXTtcclxuICBhY3RpdmVDb25kaXRpb246IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcGxhdGZvcm06IHN0cmluZyA9IENhcGFjaXRvci5nZXRQbGF0Zm9ybSgpO1xyXG5cclxuICBpc1g6IGJvb2xlYW47XHJcbiAgaXNZOiBib29sZWFuOyAgIFxyXG5cclxuICBhZ2dyZWdhdGlvbnM6IEFycmF5PE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtPiB8IEFycmF5PE5vdE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtPjtcclxuICBhZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bSA9IE5vdE51bWJlckFnZ3JlZ2F0aW9uRnVuY3Rpb25FbnVtO1xyXG5cclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLlN0YXRpc3RpYyAhPSBudWxsKXtcclxuICAgICAgdGhpcy5zZWxlY3RlZExvZ2ljT3BlcmF0b3IgPSAodGhpcy5TdGF0aXN0aWMubG9naWNvcGVyYXRvciBhcyBMb2dpY09wZXJhdG9yVGV4dCk7XHJcbiAgICAgIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPSB0aGlzLlN0YXRpc3RpYy52YWx1ZTtcclxuICAgICAgdGhpcy52aXNpYmxlID0gdGhpcy5TdGF0aXN0aWMudmlzaWJsZTtcclxuICAgICAgdGhpcy5hZ2dyZWdhdGlvbnMgPSB0aGlzLlN0YXRpc3RpYy5hZ2dyZWdhdGlvbnM7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5pbml0U3R5bGVzKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICAgIGlmIChjaGFuZ2VzLmhhc093blByb3BlcnR5KCdTdGF0aXN0aWMnKSAmJiAhY2hhbmdlc1snU3RhdGlzdGljJ10uZmlyc3RDaGFuZ2Upe1xyXG4gICAgICAgIHRoaXMuaXNYID0gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmhhc093blByb3BlcnR5KCdpc1gnKSA/IGNoYW5nZXNbJ1N0YXRpc3RpYyddLmN1cnJlbnRWYWx1ZS5pc1ggOiBudWxsO1xyXG4gICAgICAgIHRoaXMuaXNZID0gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmhhc093blByb3BlcnR5KCdpc1knKSA/IGNoYW5nZXNbJ1N0YXRpc3RpYyddLmN1cnJlbnRWYWx1ZS5pc1kgOiBudWxsO1xyXG4gICAgICAgIHRoaXMuYWdncmVnYXRpb25zID0gY2hhbmdlc1snU3RhdGlzdGljJ10uY3VycmVudFZhbHVlLmhhc093blByb3BlcnR5KCdhZ2dyZWdhdGlvbnMnKSA/IGNoYW5nZXNbJ1N0YXRpc3RpYyddLmN1cnJlbnRWYWx1ZS5hZ2dyZWdhdGlvbnMgOiBudWxsO1xyXG4gICAgICB9XHJcbiAgfSAgIFxyXG5cclxuICBpbml0U3R5bGVzKCkge1xyXG4gICAgICAvL0Z1bnppb25lIHBlciBwYXJzYXJlIGlsIGNhbXBvIHN0eWxlY3NzIGRlbGwnb2dnZXR0byBmaWVsZCBlZCBhcHBsaWNhcmxvIGFsbCdodG1sXHJcbiAgICBpZih0aGlzLmZpZWxkLkZpZWxkc3R5bGVDU1MgIT0gbnVsbCB8fCB0aGlzLmZpZWxkLkZpZWxkc3R5bGVDU1MgIT0gdW5kZWZpbmVkKSAgIFxyXG4gICAgICB0aGlzLkZpZWxkc3R5bGVPYmo9IFV0aWxpdHlIZWxwZXJTZXJ2aWNlLmluaXRTdHlsZXModGhpcy5maWVsZC5GaWVsZHN0eWxlQ1NTKTtcclxuICAgIGlmKHRoaXMuZmllbGQuTGFiZWxzdHlsZUNTUyAhPSBudWxsIHx8IHRoaXMuZmllbGQuTGFiZWxzdHlsZUNTUyAhPSB1bmRlZmluZWQpICAgXHJcbiAgICAgIHRoaXMuTGFiZWxzdHlsZU9iaiA9IFV0aWxpdHlIZWxwZXJTZXJ2aWNlLmluaXRTdHlsZXModGhpcy5maWVsZC5MYWJlbHN0eWxlQ1NTKTtcclxuIH1cclxuXHJcbiAgZ2V0SW5wdXRUeXBlKCkge1xyXG4gICAgc3dpdGNoICh0aGlzLmZpZWxkLlRleHRNYXNrKSB7XHJcbiAgICAgIGNhc2UgVGV4dE1hc2tFbnVtLkVtYWlsOlxyXG4gICAgICAgIHJldHVybiAnZW1haWwnO1xyXG4gICAgICBjYXNlIFRleHRNYXNrRW51bS5QYXNzd29yZDpcclxuICAgICAgICByZXR1cm4gJ3Bhc3N3b3JkJztcclxuICAgICAgY2FzZSBUZXh0TWFza0VudW0uVGVsZWZvbm86XHJcbiAgICAgICAgcmV0dXJuICd0ZWwnO1xyXG4gICAgICBjYXNlIFRleHRNYXNrRW51bS5Vcmw6XHJcbiAgICAgICAgcmV0dXJuICd1cmwnXHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgcmV0dXJuICd0ZXh0JztcclxuICAgIH1cclxuICB9XHJcblxyXG4vKipcclxuKiBNZXRvZG8gcGVyIGVtZXR0ZXJlIGwnZXZlbnRvIGNoZSBpbCB2YWxvcmUgZGVsIHJlY29yZCDDqCBjYW1iaWF0by5cclxuKi9cclxub25GaWx0ZXJDaGFuZ2UoKSB7XHJcbiAgICBpZiAodGhpcy5hZ2dyZWdhdGlvbnMgIT0gbnVsbCAmJiB0aGlzLmFnZ3JlZ2F0aW9ucy5sZW5ndGggPiAwKXsgdGhpcy52aXNpYmxlID0gdHJ1ZTsgfVxyXG5cclxuICAgIHZhciBzdGF0aXN0aWM6IFN0YXRpc3RpYyA9IHtcclxuICAgICAga2V5OiB0aGlzLmZpZWxkLk5hbWUsXHJcbiAgICAgIHZhbHVlOiB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdLFxyXG4gICAgICBsb2dpY29wZXJhdG9yOiB0aGlzLnNlbGVjdGVkTG9naWNPcGVyYXRvcixcclxuICAgICAgZmllbGR0eXBlOiB0aGlzLmZpZWxkLkZpZWxkVHlwZSxcclxuICAgICAgdmlzaWJsZTogdGhpcy52aXNpYmxlLFxyXG4gICAgICBpc1g6IHRoaXMuaXNYLFxyXG4gICAgICBpc1k6IHRoaXMuaXNZLFxyXG4gICAgICBhZ2dyZWdhdGlvbnM6IHRoaXMuYWdncmVnYXRpb25zXHJcbiAgICB9ICAgIFxyXG5cclxuICAgIHRoaXMuZmlsdGVyQ2hhbmdlLmVtaXQoc3RhdGlzdGljKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEdlc3Rpb25lIHZpc2liaWxpdMOgXHJcbiAqL1xyXG5cclxuICBwdWJsaWMgY2hhbmdlVmlzaWJpbGl0eSgpe1xyXG4gICAgdGhpcy52aXNpYmxlID0gIXRoaXMudmlzaWJsZTtcclxuICAgIGlmICh0aGlzLmFnZ3JlZ2F0aW9ucyAhPSBudWxsICYmIHRoaXMuYWdncmVnYXRpb25zLmxlbmd0aCA+IDApeyB0aGlzLnZpc2libGUgPSB0cnVlOyB9XHJcbiAgICB0aGlzLm9uRmlsdGVyQ2hhbmdlKCk7XHJcbiAgfVxyXG5cclxuXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gIDxkaXYgY2xhc3M9XCJjb2wtMTIgcm93Q29sXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwidmlzaWJsZUNvbFwiPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG5cIiBbbmdDbGFzc109XCJ7J2J0bi1zdWNjZXNzJzogdmlzaWJsZSAsICdidG4tZGFuZ2VyJzogIXZpc2libGUgfVwiIChjbGljayk9XCJjaGFuZ2VWaXNpYmlsaXR5KClcIj5cclxuICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwidmlzaWJsZVwiPnZpc2liaWxpdHk8L21hdC1pY29uPlxyXG4gICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCIhdmlzaWJsZVwiPnZpc2liaWxpdHlfb2ZmPC9tYXQtaWNvbj5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PiAgXHJcbiAgICA8ZGl2IGNsYXNzPVwiY29vcmRpbmF0ZXNDb2xcIiBbaGlkZGVuXT1cIiFzaG93WFlcIj5cclxuXHJcbiAgICA8L2Rpdj4gICAgICAgIFxyXG4gICAgPGRpdiBjbGFzcz1cInZhbHVlQ29sXCI+XHJcbiAgICAgIDxtYXQtZm9ybS1maWVsZCBbZm9ybUdyb3VwXT1cImZpZWxkLkZvcm1Gb3JtR3JvdXBcIj5cclxuICAgICAgICA8bWF0LWxhYmVsIGNsYXNzPVwicHQtMVwiIFtuZ1N0eWxlXT1cIkxhYmVsc3R5bGVPYmpcIj5cclxuICAgICAgICAgIHt7IGZpZWxkLkRlc2NyaXB0aW9uIH19XHJcbiAgICAgICAgPC9tYXQtbGFiZWw+XHJcbiAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICBbbmdTdHlsZV09XCJGaWVsZHN0eWxlT2JqXCJcclxuICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICBbdHlwZV09XCJnZXRJbnB1dFR5cGUoKVwiXHJcbiAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLk5hbWVcIlxyXG4gICAgICAgICAgW3JlYWRvbmx5XT1cImZhbHNlXCJcclxuICAgICAgICAgIFtyZXF1aXJlZF09XCJmYWxzZVwiXHJcbiAgICAgICAgICBbKG5nTW9kZWwpXT1cInJlY29yZFtmaWVsZC5OYW1lXVwiXHJcbiAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvbkZpbHRlckNoYW5nZSgpXCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxtYXQtZXJyb3JcclxuICAgICAgICAgICpuZ0lmPVwiXHJcbiAgICAgICAgICAgICFmaWVsZC5Gb3JtRm9ybUdyb3VwLnZhbGlkICYmXHJcbiAgICAgICAgICAgIGZpZWxkLkZvcm1Gb3JtR3JvdXAuY29udHJvbHNbZmllbGQuTmFtZV0udG91Y2hlZFxyXG4gICAgICAgICAgXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICBNaW4uIENhcmF0dGVyaToge3sgZmllbGQuTWluTGVuZ2h0IH19IC0gTWF4LiBDYXJhdHRlcmk6XHJcbiAgICAgICAgICB7eyBmaWVsZC5NYXhMZW5naHQgfX1cclxuICAgICAgICA8L21hdC1lcnJvcj5cclxuICAgICAgICA8bWF0LWljb25cclxuICAgICAgICAgIFtoaWRkZW5dPVwiIWZpZWxkLk1pY3JvcGhvbmUgfHwgcGxhdGZvcm0gIT0gJ3dlYidcIlxyXG4gICAgICAgICAgbWF0U3VmZml4XHJcbiAgICAgICAgICBTcGVlY2hUb1RleHRcclxuICAgICAgICAgIFsoYmluZGVkVGV4dCldPVwicmVjb3JkW2ZpZWxkLk5hbWVdXCJcclxuICAgICAgICAgIHN0eWxlPVwiY3Vyc29yOiBwb2ludGVyXCJcclxuICAgICAgICAgID5rZXlib2FyZF92b2ljZTwvbWF0LWljb25cclxuICAgICAgICA+XHJcblxyXG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwib3BlcmF0b3JDb2xcIj5cclxuICAgICAgPGVxcC1zZWxlY3RcclxuICAgICAgICBbZW51bURhdGFdPVwibG9naWNPcGVyYXRvclRleHRcIlxyXG4gICAgICAgIFsobmdNb2RlbElucHV0KV09XCJzZWxlY3RlZExvZ2ljT3BlcmF0b3JcIlxyXG4gICAgICAgIFtzaG93Q2FuY2VsQnV0dG9uXT1cImZhbHNlXCJcclxuICAgICAgICAobmdNb2RlbElucHV0Q2hhbmdlKT1cIm9uRmlsdGVyQ2hhbmdlKClcIlxyXG4gICAgICA+PC9lcXAtc2VsZWN0PlxyXG4gICAgPC9kaXY+ICAgICAgIFxyXG4gICAgPGRpdiBjbGFzcz1cImFnZ3JlZ2F0b3JDb2xcIj5cclxuICAgICAgPGVxcC1zZWxlY3RcclxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0FnZ3JlZ2F6aW9uaSdcIlxyXG4gICAgICAgIFtpc011bHRpU2VsZWN0XT1cInRydWVcIlxyXG4gICAgICAgIFtlbnVtRGF0YV09XCJhZ2dyZWdhdGlvbkZ1bmN0aW9uRW51bVwiXHJcbiAgICAgICAgWyhuZ01vZGVsSW5wdXQpXT1cImFnZ3JlZ2F0aW9uc1wiXHJcbiAgICAgICAgKG5nTW9kZWxJbnB1dENoYW5nZSk9XCJvbkZpbHRlckNoYW5nZSgpXCJcclxuICAgICAgPjwvZXFwLXNlbGVjdD5cclxuICAgIDwvZGl2PiAgXHJcbiAgICAgXHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=