@wemake4u/form-player-se 1.0.21 → 1.0.23

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.
@@ -42,10 +42,12 @@ export class CollapseDirective {
42
42
  this.expanded = false;
43
43
  this.applyStyle();
44
44
  const element = this.el.nativeElement;
45
- if (element.scrollHeight > this.maxHeight) {
46
- this.applyButton();
47
- this.applyFocusHandler();
48
- }
45
+ setTimeout(() => {
46
+ if (element.scrollHeight > this.maxHeight) {
47
+ this.applyButton();
48
+ this.applyFocusHandler();
49
+ }
50
+ }, 100);
49
51
  }
50
52
  applyStyle() {
51
53
  const element = this.el.nativeElement;
@@ -85,7 +87,7 @@ export class CollapseDirective {
85
87
  this.timeoutFocusOut = setTimeout(() => {
86
88
  if (!element.contains(document.activeElement)) {
87
89
  element.scrollTop = 0;
88
- console.log('NESSUN elemento interno ha più il focus');
90
+ //console.log('NESSUN elemento interno ha più il focus');
89
91
  }
90
92
  }, 0);
91
93
  });
@@ -147,4 +149,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
147
149
  }], language: [{
148
150
  type: Input
149
151
  }] } });
150
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGFwc2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNpcmlvL3NyYy9saWIvZGlyZWN0aXZlcy9jb2xsYXBzZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBeUIsS0FBSyxFQUF1QyxNQUFNLGVBQWUsQ0FBQztBQUU3RyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDekMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQU05QyxNQUFNLE9BQU8saUJBQWlCO0lBWVI7SUFDUjtJQVpPLFNBQVMsR0FBa0IsSUFBSSxDQUFDO0lBQzFDLFFBQVEsQ0FBVTtJQUVuQixhQUFhLEdBQWtCLElBQUksQ0FBQztJQUNwQyxNQUFNLEdBQTZCLElBQUksQ0FBQztJQUN4QyxRQUFRLEdBQXVCLElBQUksQ0FBQztJQUNwQyxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ2pCLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFDeEIsZUFBZSxDQUFNO0lBQ3JCLGdCQUFnQixDQUFjO0lBRXRDLFlBQW9CLEVBQWMsRUFDdEIsUUFBbUI7UUFEWCxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQ3RCLGFBQVEsR0FBUixRQUFRLENBQVc7SUFBSSxDQUFDO0lBRXBDLGVBQWU7UUFDYixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQztRQUM1QixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDcEMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxPQUFPLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztZQUNoRCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDcEMsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7Z0JBQ3pCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1lBQzVCLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVPLGtCQUFrQjtRQUV4QixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFbkIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRW5CLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBRXpCLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNsRCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztZQUNyQixPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBRXRCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUVsQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQTRCLENBQUM7UUFFckQsSUFBSSxPQUFPLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUMxQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDM0IsQ0FBQztJQUNILENBQUM7SUFFTyxVQUFVO1FBQ2hCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBNEIsQ0FBQztRQUNyRCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRU8sV0FBVztRQUNqQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQTRCLENBQUM7UUFDckQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNsRCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFTyxXQUFXO1FBQ2pCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBNEIsQ0FBQztRQUNyRCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFdEQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUV0RSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBRXpELElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMs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WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIFJlbmRlcmVyMiwgSW5wdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcywgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBUZXh0cyB9IGZyb20gJy4uL2xvY2FsZS9sb2NhbGUnO1xyXG5pbXBvcnQgeyBsb2NhbGl6ZSB9IGZyb20gJy4uL2xvY2FsZS9sb2NhbGl6ZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tjb2xsYXBzZV0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIENvbGxhcHNlRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG4gIEBJbnB1dCgnY29sbGFwc2UnKSBtYXhIZWlnaHQ6IG51bWJlciB8IG51bGwgPSBudWxsO1xyXG4gIEBJbnB1dCgpIGxhbmd1YWdlITogc3RyaW5nO1xyXG5cclxuICBwcml2YXRlIGN1cnJlbnRIZWlnaHQ6IG51bWJlciB8IG51bGwgPSBudWxsO1xyXG4gIHByaXZhdGUgYnV0dG9uOiBIVE1MQnV0dG9uRWxlbWVudCB8IG51bGwgPSBudWxsO1xyXG4gIHByaXZhdGUgaWNvblNwYW46IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XHJcbiAgcHJpdmF0ZSBleHBhbmRlZCA9IGZhbHNlO1xyXG4gIHByaXZhdGUgdmlld0luaXRpYWxpemVkID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSB0aW1lb3V0Rm9jdXNPdXQ6IGFueTtcclxuICBwcml2YXRlIHVubGlzdGVuRm9jdXNPdXQhOiAoKSA9PiB2b2lkO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmXHJcbiAgICAsIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikgeyB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMudmlld0luaXRpYWxpemVkID0gdHJ1ZTtcclxuICAgIHRoaXMuY3VycmVudEhlaWdodCA9IHRoaXMubWF4SGVpZ2h0O1xyXG4gICAgdGhpcy5hcHBseUNvbGxhcHNlTG9naWMoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmIChjaGFuZ2VzWydsYW5ndWFnZSddIHx8IGNoYW5nZXNbJ21heEhlaWdodCddKSB7XHJcbiAgICAgIHRoaXMuY3VycmVudEhlaWdodCA9IHRoaXMubWF4SGVpZ2h0O1xyXG4gICAgICBpZiAodGhpcy52aWV3SW5pdGlhbGl6ZWQpIHtcclxuICAgICAgICB0aGlzLmFwcGx5Q29sbGFwc2VMb2dpYygpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFwcGx5Q29sbGFwc2VMb2dpYygpOiB2b2lkIHtcclxuICAgIFxyXG4gICAgdGhpcy5yZXNldFN0eWxlcygpO1xyXG4gICAgXHJcbiAgICB0aGlzLnJlc2V0QnV0dG9uKCk7XHJcbiAgICBcclxuICAgIHRoaXMucmVzZXRGb2N1c0hhbmRsZXIoKTtcclxuXHJcbiAgICBpZiAodGhpcy5tYXhIZWlnaHQgPT0gbnVsbCB8fCB0aGlzLm1heEhlaWdodCA8PSAwKSB7XHJcbiAgICAgIHRoaXMuZXhwYW5kZWQgPSB0cnVlO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5leHBhbmRlZCA9IGZhbHNlO1xyXG5cclxuICAgIHRoaXMuYXBwbHlTdHlsZSgpO1xyXG5cclxuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XHJcblxyXG4gICAgaWYgKGVsZW1lbnQuc2Nyb2xsSGVpZ2h0ID4gdGhpcy5tYXhIZWlnaHQpIHtcclxuICAgICAgdGhpcy5hcHBseUJ1dHRvbigpO1xyXG4gICAgICB0aGlzLmFwcGx5Rm9jdXNIYW5kbGVyKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFwcGx5U3R5bGUoKSB7XHJcbiAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShlbGVtZW50LCAnb3ZlcmZsb3cnLCAnaGlkZGVuJyk7XHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKGVsZW1lbnQsICdtYXgtaGVpZ2h0JywgYCR7dGhpcy5tYXhIZWlnaHR9cHhgKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVzZXRTdHlsZXMoKSB7XHJcbiAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShlbGVtZW50LCAnb3ZlcmZsb3cnLCBudWxsKTtcclxuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoZWxlbWVudCwgJ21heC1oZWlnaHQnLCBudWxsKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXBwbHlCdXR0b24oKTogdm9pZCB7XHJcbiAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgdGhpcy5idXR0b24gPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2J1dHRvbicpO1xyXG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmJ1dHRvbiwgJ3NpcmlvLWJ0bicpO1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmJ1dHRvbiwgJ3BhZGRpbmcnLCAnMHB4Jyk7XHJcblxyXG4gICAgY29uc3QgdGV4dCA9IHRoaXMucmVuZGVyZXIuY3JlYXRlVGV4dCh0aGlzLmxvY2FsZShUZXh0cywgJ1JlYWRNb3JlJykpO1xyXG5cclxuICAgIHRoaXMuaWNvblNwYW4gPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ3NwYW4nKTtcclxuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5pY29uU3BhbiwgJ2ZhJyk7XHJcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuaWNvblNwYW4sICdmYS1jaGV2cm9uLWRvd24nKTtcclxuICAgIFxyXG4gICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLmJ1dHRvbiwgdGV4dCk7XHJcbiAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMuYnV0dG9uLCB0aGlzLmljb25TcGFuKTtcclxuXHJcbiAgICB0aGlzLnJlbmRlcmVyLmxpc3Rlbih0aGlzLmJ1dHRvbiwgJ2NsaWNrJywgKCkgPT4gdGhpcy50b2dnbGVFeHBhbmQoKSk7XHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuYnV0dG9uLCAnbWFyZ2luLXRvcCcsICc4cHgnKTtcclxuXHJcbiAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKGVsZW1lbnQucGFyZW50Tm9kZSwgdGhpcy5idXR0b24pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZXNldEJ1dHRvbigpIHtcclxuICAgIGlmICh0aGlzLmJ1dHRvbiAmJiB0aGlzLmJ1dHRvbi5wYXJlbnROb2RlKSB7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2hpbGQodGhpcy5idXR0b24ucGFyZW50Tm9kZSwgdGhpcy5idXR0b24pO1xyXG4gICAgICB0aGlzLmJ1dHRvbiA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFwcGx5Rm9jdXNIYW5kbGVyKCkge1xyXG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcclxuICAgIHRoaXMudW5saXN0ZW5Gb2N1c091dCA9IHRoaXMucmVuZGVyZXIubGlzdGVuKGVsZW1lbnQsICdmb2N1c291dCcsICgpID0+IHtcclxuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMudGltZW91dEZvY3VzT3V0KTtcclxuICAgICAgdGhpcy50aW1lb3V0Rm9jdXNPdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICBpZiAoIWVsZW1lbnQuY29udGFpbnMoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCkpIHtcclxuICAgICAgICAgIGVsZW1lbnQuc2Nyb2xsVG9wID0gMDtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKCdORVNTVU4gZWxlbWVudG8gaW50ZXJubyBoYSBwacO5IGlsIGZvY3VzJyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LCAwKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZXNldEZvY3VzSGFuZGxlcigpIHtcclxuICAgIGlmICh0aGlzLnVubGlzdGVuRm9jdXNPdXQpIHtcclxuICAgICAgdGhpcy51bmxpc3RlbkZvY3VzT3V0KCk7XHJcbiAgICB9XHJcbiAgICBjbGVhclRpbWVvdXQodGhpcy50aW1lb3V0Rm9jdXNPdXQpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB0b2dnbGVFeHBhbmQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmV4cGFuZGVkID0gIXRoaXMuZXhwYW5kZWQ7XHJcbiAgICBpZiAodGhpcy5leHBhbmRlZCkge1xyXG4gICAgICB0aGlzLmV4cGFuZCgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jb2xsYXBzZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBleHBhbmQoKTogdm9pZCB7XHJcbiAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShlbGVtZW50LCAnbWF4LWhlaWdodCcsICdub25lJyk7XHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKGVsZW1lbnQsICdvdmVyZmxvdycsICd2aXNpYmxlJyk7XHJcbiAgICB0aGlzLmJ1dHRvbiEuY2hpbGROb2Rlc1swXS50ZXh0Q29udGVudCA9IHRoaXMubG9jYWxlKFRleHRzLCAnUmVhZExlc3MnKTtcclxuICAgIHRoaXMudXBkYXRlSWNvbignZmEtY2hldnJvbi11cCcsICdmYS1jaGV2cm9uLWRvd24nKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY29sbGFwc2UoKTogdm9pZCB7XHJcbiAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShlbGVtZW50LCAnbWF4LWhlaWdodCcsIGAke3RoaXMuY3VycmVudEhlaWdodH1weGApO1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShlbGVtZW50LCAnb3ZlcmZsb3cnLCAnaGlkZGVuJyk7XHJcbiAgICB0aGlzLmJ1dHRvbiEuY2hpbGROb2Rlc1swXS50ZXh0Q29udGVudCA9IHRoaXMubG9jYWxlKFRleHRzLCAnUmVhZE1vcmUnKTtcclxuICAgIHRoaXMudXBkYXRlSWNvbignZmEtY2hldnJvbi1kb3duJywgJ2ZhLWNoZXZyb24tdXAnKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlSWNvbihhZGQ6IHN0cmluZywgcmVtb3ZlOiBzdHJpbmcpIHtcclxuICAgIGlmICh0aGlzLmljb25TcGFuKSB7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5pY29uU3BhbiwgcmVtb3ZlKTtcclxuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmljb25TcGFuLCBhZGQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsb2NhbGUoY29tcG9uZW50OiBhbnksIGtleTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBsb2NhbGl6ZSh0aGlzLmxhbmd1YWdlLCBjb21wb25lbnQsIGtleSk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMucmVzZXRCdXR0b24oKTtcclxuICAgIHRoaXMucmVzZXRGb2N1c0hhbmRsZXIoKTtcclxuICB9XHJcbn1cclxuIl19
152
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGFwc2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNpcmlvL3NyYy9saWIvZGlyZWN0aXZlcy9jb2xsYXBzZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBeUIsS0FBSyxFQUF1QyxNQUFNLGVBQWUsQ0FBQztBQUU3RyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDekMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQU05QyxNQUFNLE9BQU8saUJBQWlCO0lBWVI7SUFDUjtJQVpPLFNBQVMsR0FBa0IsSUFBSSxDQUFDO0lBQzFDLFFBQVEsQ0FBVTtJQUVuQixhQUFhLEdBQWtCLElBQUksQ0FBQztJQUNwQyxNQUFNLEdBQTZCLElBQUksQ0FBQztJQUN4QyxRQUFRLEdBQXVCLElBQUksQ0FBQztJQUNwQyxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ2pCLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFDeEIsZUFBZSxDQUFNO0lBQ3JCLGdCQUFnQixDQUFjO0lBRXRDLFlBQW9CLEVBQWMsRUFDdEIsUUFBbUI7UUFEWCxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQ3RCLGFBQVEsR0FBUixRQUFRLENBQVc7SUFBSSxDQUFDO0lBRXBDLGVBQWU7UUFDYixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQztRQUM1QixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDcEMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxPQUFPLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztZQUNoRCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FB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QWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIFJlbmRlcmVyMiwgSW5wdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcywgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBUZXh0cyB9IGZyb20gJy4uL2xvY2FsZS9sb2NhbGUnO1xyXG5pbXBvcnQgeyBsb2NhbGl6ZSB9IGZyb20gJy4uL2xvY2FsZS9sb2NhbGl6ZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tjb2xsYXBzZV0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIENvbGxhcHNlRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG4gIEBJbnB1dCgnY29sbGFwc2UnKSBtYXhIZWlnaHQ6IG51bWJlciB8IG51bGwgPSBudWxsO1xyXG4gIEBJbnB1dCgpIGxhbmd1YWdlITogc3RyaW5nO1xyXG5cclxuICBwcml2YXRlIGN1cnJlbnRIZWlnaHQ6IG51bWJlciB8IG51bGwgPSBudWxsO1xyXG4gIHByaXZhdGUgYnV0dG9uOiBIVE1MQnV0dG9uRWxlbWVudCB8IG51bGwgPSBudWxsO1xyXG4gIHByaXZhdGUgaWNvblNwYW46IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XHJcbiAgcHJpdmF0ZSBleHBhbmRlZCA9IGZhbHNlO1xyXG4gIHByaXZhdGUgdmlld0luaXRpYWxpemVkID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSB0aW1lb3V0Rm9jdXNPdXQ6IGFueTtcclxuICBwcml2YXRlIHVubGlzdGVuRm9jdXNPdXQhOiAoKSA9PiB2b2lkO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmXHJcbiAgICAsIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikgeyB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMudmlld0luaXRpYWxpemVkID0gdHJ1ZTtcclxuICAgIHRoaXMuY3VycmVudEhlaWdodCA9IHRoaXMubWF4SGVpZ2h0O1xyXG4gICAgdGhpcy5hcHBseUNvbGxhcHNlTG9naWMoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmIChjaGFuZ2VzWydsYW5ndWFnZSddIHx8IGNoYW5nZXNbJ21heEhlaWdodCddKSB7XHJcbiAgICAgIHRoaXMuY3VycmVudEhlaWdodCA9IHRoaXMubWF4SGVpZ2h0O1xyXG4gICAgICBpZiAodGhpcy52aWV3SW5pdGlhbGl6ZWQpIHtcclxuICAgICAgICB0aGlzLmFwcGx5Q29sbGFwc2VMb2dpYygpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFwcGx5Q29sbGFwc2VMb2dpYygpOiB2b2lkIHtcclxuICAgIFxyXG4gICAgdGhpcy5yZXNldFN0eWxlcygpO1xyXG4gICAgXHJcbiAgICB0aGlzLnJlc2V0QnV0dG9uKCk7XHJcbiAgICBcclxuICAgIHRoaXMucmVzZXRGb2N1c0hhbmRsZXIoKTtcclxuXHJcbiAgICBpZiAodGhpcy5tYXhIZWlnaHQgPT0gbnVsbCB8fCB0aGlzLm1heEhlaWdodCA8PSAwKSB7XHJcbiAgICAgIHRoaXMuZXhwYW5kZWQgPSB0cnVlO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5leHBhbmRlZCA9IGZhbHNlO1xyXG5cclxuICAgIHRoaXMuYXBwbHlTdHlsZSgpO1xyXG5cclxuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XHJcblxyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGlmIChlbGVtZW50LnNjcm9sbEhlaWdodCA+IHRoaXMubWF4SGVpZ2h0ISkge1xyXG4gICAgICAgIHRoaXMuYXBwbHlCdXR0b24oKTtcclxuICAgICAgICB0aGlzLmFwcGx5Rm9jdXNIYW5kbGVyKCk7XHJcbiAgICAgIH1cclxuICAgIH0sIDEwMCk7XHJcbiAgICBcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXBwbHlTdHlsZSgpIHtcclxuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKGVsZW1lbnQsICdvdmVyZmxvdycsICdoaWRkZW4nKTtcclxuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoZWxlbWVudCwgJ21heC1oZWlnaHQnLCBgJHt0aGlzLm1heEhlaWdodH1weGApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZXNldFN0eWxlcygpIHtcclxuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKGVsZW1lbnQsICdvdmVyZmxvdycsIG51bGwpO1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShlbGVtZW50LCAnbWF4LWhlaWdodCcsIG51bGwpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhcHBseUJ1dHRvbigpOiB2b2lkIHtcclxuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICB0aGlzLmJ1dHRvbiA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnYnV0dG9uJyk7XHJcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuYnV0dG9uLCAnc2lyaW8tYnRuJyk7XHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuYnV0dG9uLCAncGFkZGluZycsICcwcHgnKTtcclxuXHJcbiAgICBjb25zdCB0ZXh0ID0gdGhpcy5yZW5kZXJlci5jcmVhdGVUZXh0KHRoaXMubG9jYWxlKFRleHRzLCAnUmVhZE1vcmUnKSk7XHJcblxyXG4gICAgdGhpcy5pY29uU3BhbiA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xyXG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmljb25TcGFuLCAnZmEnKTtcclxuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5pY29uU3BhbiwgJ2ZhLWNoZXZyb24tZG93bicpO1xyXG4gICAgXHJcbiAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMuYnV0dG9uLCB0ZXh0KTtcclxuICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy5idXR0b24sIHRoaXMuaWNvblNwYW4pO1xyXG5cclxuICAgIHRoaXMucmVuZGVyZXIubGlzdGVuKHRoaXMuYnV0dG9uLCAnY2xpY2snLCAoKSA9PiB0aGlzLnRvZ2dsZUV4cGFuZCgpKTtcclxuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5idXR0b24sICdtYXJnaW4tdG9wJywgJzhweCcpO1xyXG5cclxuICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQoZWxlbWVudC5wYXJlbnROb2RlLCB0aGlzLmJ1dHRvbik7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlc2V0QnV0dG9uKCkge1xyXG4gICAgaWYgKHRoaXMuYnV0dG9uICYmIHRoaXMuYnV0dG9uLnBhcmVudE5vZGUpIHtcclxuICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDaGlsZCh0aGlzLmJ1dHRvbi5wYXJlbnROb2RlLCB0aGlzLmJ1dHRvbik7XHJcbiAgICAgIHRoaXMuYnV0dG9uID0gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXBwbHlGb2N1c0hhbmRsZXIoKSB7XHJcbiAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgdGhpcy51bmxpc3RlbkZvY3VzT3V0ID0gdGhpcy5yZW5kZXJlci5saXN0ZW4oZWxlbWVudCwgJ2ZvY3Vzb3V0JywgKCkgPT4ge1xyXG4gICAgICBjbGVhclRpbWVvdXQodGhpcy50aW1lb3V0Rm9jdXNPdXQpO1xyXG4gICAgICB0aGlzLnRpbWVvdXRGb2N1c091dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIGlmICghZWxlbWVudC5jb250YWlucyhkb2N1bWVudC5hY3RpdmVFbGVtZW50KSkge1xyXG4gICAgICAgICAgZWxlbWVudC5zY3JvbGxUb3AgPSAwO1xyXG4gICAgICAgICAgLy9jb25zb2xlLmxvZygnTkVTU1VOIGVsZW1lbnRvIGludGVybm8gaGEgcGnDuSBpbCBmb2N1cycpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSwgMCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVzZXRGb2N1c0hhbmRsZXIoKSB7XHJcbiAgICBpZiAodGhpcy51bmxpc3RlbkZvY3VzT3V0KSB7XHJcbiAgICAgIHRoaXMudW5saXN0ZW5Gb2N1c091dCgpO1xyXG4gICAgfVxyXG4gICAgY2xlYXJUaW1lb3V0KHRoaXMudGltZW91dEZvY3VzT3V0KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdG9nZ2xlRXhwYW5kKCk6IHZvaWQge1xyXG4gICAgdGhpcy5leHBhbmRlZCA9ICF0aGlzLmV4cGFuZGVkO1xyXG4gICAgaWYgKHRoaXMuZXhwYW5kZWQpIHtcclxuICAgICAgdGhpcy5leHBhbmQoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY29sbGFwc2UoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgZXhwYW5kKCk6IHZvaWQge1xyXG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcclxuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoZWxlbWVudCwgJ21heC1oZWlnaHQnLCAnbm9uZScpO1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShlbGVtZW50LCAnb3ZlcmZsb3cnLCAndmlzaWJsZScpO1xyXG4gICAgdGhpcy5idXR0b24hLmNoaWxkTm9kZXNbMF0udGV4dENvbnRlbnQgPSB0aGlzLmxvY2FsZShUZXh0cywgJ1JlYWRMZXNzJyk7XHJcbiAgICB0aGlzLnVwZGF0ZUljb24oJ2ZhLWNoZXZyb24tdXAnLCAnZmEtY2hldnJvbi1kb3duJyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNvbGxhcHNlKCk6IHZvaWQge1xyXG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcclxuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoZWxlbWVudCwgJ21heC1oZWlnaHQnLCBgJHt0aGlzLmN1cnJlbnRIZWlnaHR9cHhgKTtcclxuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoZWxlbWVudCwgJ292ZXJmbG93JywgJ2hpZGRlbicpO1xyXG4gICAgdGhpcy5idXR0b24hLmNoaWxkTm9kZXNbMF0udGV4dENvbnRlbnQgPSB0aGlzLmxvY2FsZShUZXh0cywgJ1JlYWRNb3JlJyk7XHJcbiAgICB0aGlzLnVwZGF0ZUljb24oJ2ZhLWNoZXZyb24tZG93bicsICdmYS1jaGV2cm9uLXVwJyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZUljb24oYWRkOiBzdHJpbmcsIHJlbW92ZTogc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy5pY29uU3Bhbikge1xyXG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuaWNvblNwYW4sIHJlbW92ZSk7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5pY29uU3BhbiwgYWRkKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgbG9jYWxlKGNvbXBvbmVudDogYW55LCBrZXk6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gbG9jYWxpemUodGhpcy5sYW5ndWFnZSwgY29tcG9uZW50LCBrZXkpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlc2V0QnV0dG9uKCk7XHJcbiAgICB0aGlzLnJlc2V0Rm9jdXNIYW5kbGVyKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -38,7 +38,8 @@ export class DropdownDirective {
38
38
  const input = searchable.querySelector('input');
39
39
  this.renderer.insertBefore(dropDown, searchable, dropMenu);
40
40
  this.renderer.listen(input, 'blur', (event) => {
41
- this.sirioSelect.panel.close();
41
+ if (event.relatedTarget !== dropMenu)
42
+ this.sirioSelect.panel.close();
42
43
  });
43
44
  this.renderer.listen(input, 'keyup', (event) => {
44
45
  this.onKeyUp(event, input);
@@ -244,4 +245,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
244
245
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.SirioSelectComponent, decorators: [{
245
246
  type: Host
246
247
  }] }] });
247
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNpcmlvL3NyYy9saWIvZGlyZWN0aXZlcy9kcm9wZG93bi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBd0MsSUFBSSxFQUFhLE1BQU0sZUFBZSxDQUFDOzs7QUFRakcsTUFBTSxPQUFPLGlCQUFpQjtJQUdsQjtJQUNBO0lBRVE7SUFKbEIsWUFDVSxFQUFjLEVBQ2QsUUFBbUIsRUFFWCxXQUFpQztRQUh6QyxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQ2QsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUVYLGdCQUFXLEdBQVgsV0FBVyxDQUFzQjtJQUVuRCxDQUFDO0lBRU8sbUJBQW1CLENBQWdCO0lBRTNDLGVBQWU7UUFDYixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDMUMsQ0FBQztJQUVPLFdBQVc7UUFDakIsTUFBTSxXQUFXLEdBQUcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUV6QyxJQUFJLElBQUksQ0FBQyxXQUFXO2VBQ2YsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQztlQUN2QyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQ2pELENBQUM7WUFDQyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQy9DLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FDbEQsQ0FBQztZQUVGLElBQUksV0FBVyxFQUFFLENBQUM7Z0JBQ2hCLFdBQVcsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1lBQ2hDLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVPLGdCQUFnQjtRQUV0QixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdEUsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUNmLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQ3hFLE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsc0JBQXNCLENBQUMsQ0FBQztZQUNoRSxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2hELElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFFM0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDLEtBQW9CLEVBQUUsRUFBRTtnQkFDM0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDakMsQ0FBQyxDQUFDLENBQUM7WUFFSCxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsS0FBb0IsRUFBRSxFQUFFO2dCQUM1RCxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztZQUM3QixDQUFDLENBQUMsQ0FBQztZQUVILElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxTQUFTLEVBQUUsQ0FBQyxLQUFvQixFQUFFLEVBQUU7Z0JBQzlELElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDeEIsQ0FBQyxDQUFDLENBQUM7WUFFSCxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDaEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUM1QixDQUFDLENBQUMsQ0FBQztZQUVILElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUNoRCxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQzlCLENBQUMsQ0FBQyxDQUFDO1FBRUwsQ0FBQztJQUNILENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUMvRSxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQy9DLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FDbEQsQ0FBQztZQUNGLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDM0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUM7WUFDcEMsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLFVBQVUsQ0FBQyxPQUFvQjtRQUNyQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFTyxRQUFRLENBQUMsT0FBb0I7UUFDbkMsSUFBSSxZQUFZLEdBQUcsRUFBRSxDQUFDO1FBRXRCLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ2hELFlBQVksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUE7UUFDekQsQ0FBQztRQUVELE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFN0MsSUFBSSxDQUFDLEtBQUs7WUFDUixPQUFPO1FBRVQsS0FBSyxDQUFDLEtBQUssR0FBRyxZQUFZLENBQUM7UUFFM0IsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFFN0UsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDeEIsSUFBSSxZQUFZLElBQUksTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUNoQyxRQUFRLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQ3JELENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFFM0QsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ2hFLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxPQUFPLENBQUMsS0FBb0IsRUFBRSxLQUFVO1FBQzlDLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxLQUFLLENBQUM7UUFFdkIsUUFBUSxJQUFJLEVBQUUsQ0FBQztZQUNiLEtBQUssT0FBTyxDQUFDO1lBQ2IsS0FBSyxPQUFPLENBQUM7WUFDYixLQUFLLFdBQVcsQ0FBQztZQUNqQixLQUFLLFNBQVMsQ0FBQztZQUNmLEtBQUssUUFBUTtnQkFDWCxPQUFPO1FBQ1gsQ0FBQztRQUVELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQztRQUV0QixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFDakQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzNELElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ3pCLElBQUksS0FBSyxJQUFJLFVBQVUsRUFBRSxDQUFDO2dCQUN4QixNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2xCLFVBQVUsR0FBRyxLQUFLLENBQUM7WUFDckIsQ0FBQztpQkFDSSxDQUFDO2dCQUNKLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN2QixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sU0FBUyxDQUFDLEtBQW9CO1FBQ3BDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNYLE9BQU87UUFDVCxDQUFDO1FBQ0QsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQztRQUN0QyxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLElBQUksV0FBVyxFQUFFLENBQUM7WUFDaEIsUUFBUSxJQUFJLEVBQUUsQ0FBQztnQkFDYixLQUFLLE9BQU8sQ0FBQztnQkFDYixLQUFLLE9BQU87b0JBQ1YsSUFBSSxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7d0JBQ3hCLEtBQUssQ0FBQyxhQUFhLEVBQUUsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQy9DLENBQUM7eUJBQ0ksQ0FBQzt3QkFDSixLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO3dCQUNuQixLQUFLLEVBQUUsY0FBYyxFQUFFLENBQUM7b0JBQzFCLENBQUM7b0JBQ0QsTUFBTTtnQkFDUixLQUFLLFdBQVc7b0JBQ2QsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO29CQUNsQixLQUFLLEVBQUUsY0FBYyxFQUFFLENBQUM7b0JBQ3hCLE1BQU07Z0JBQ1IsS0FBSyxTQUFTO29CQUNaLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDaEIsS0FBSyxFQUFFLGNBQWMsRUFBRSxDQUFDO29CQUN4QixNQUFNO2dCQUNSLEtBQUssUUFBUTtvQkFDWCxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUNuQixNQUFNO2dCQUNSO29CQUNFLE1BQU07WUFDVixDQUFDO1FBQ0gsQ0FBQztRQUNELElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNqQixRQUFRLElBQUksRUFBRSxDQUFDO2dCQUNiLEtBQUssT0FBTyxDQUFDO2dCQUNiLEtBQUssT0FBTztvQkFDVixLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUNsQixLQUFLLEVBQUUsY0FBYyxFQUFFLENBQUM7b0JBQ3hCLE1BQU07Z0JBQ1I7b0JBQ0UsTUFBTTtZQUNWLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVPLE1BQU0sQ0FBQyxNQUFXO1FBQ3hCLE9BQU8sTUFBTSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUM7SUFDdkQsQ0FBQztJQUVPLFFBQVEsQ0FBQyxNQUFXO1FBQzFCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxLQUFLLE1BQU0sQ0FBQztJQUN0RCxDQUFDO0lBRU8sSUFBSSxDQUFDLE1BQVcsRUFBRSxLQUFjO1FBQ3RDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQzFELENBQUM7SUFFTyxVQUFVLENBQUMsSUFBWTtRQUM3QixPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRU8sVUFBVTtRQUNoQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztRQUNyQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3pCLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNyQixLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUMvQixPQUFPO1FBQ1QsQ0FBQztRQUNELE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxrQkFBa0IsR0FBRyxDQUFDLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xHLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN0QixLQUFLLENBQUMsYUFBYSxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ25DLElBQUksaUJBQWlCLEVBQUUsQ0FBQztZQUN0QixpQkFBaUIsRUFBRSxRQUFRLEVBQUUsQ0FBQztZQUM5QixPQUFPO1FBQ1QsQ0FBQztRQUNELEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNyQixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNsRSxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ2pCLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMxQixDQUFDO0lBQ0gsQ0FBQztJQUVPLFFBQVE7UUFDZCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztRQUNyQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3pCLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNyQixLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM5QixPQUFPO1FBQ1QsQ0FBQztRQUNELE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBQyxrQkFBa0IsR0FBRyxDQUFDLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3RHLElBQUksaUJBQWlCLEVBQUUsQ0FBQztZQUN0QixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDcEIsS0FBSyxDQUFDLGFBQWEsRUFBRSxXQUFXLEVBQUUsQ0FBQztZQUNuQyxpQkFBaUIsRUFBRSxRQUFRLEVBQUUsQ0FBQztZQUM5QixPQUFPO1FBQ1QsQ0FBQztRQUNELEtBQUssQ0FBQyxhQUFhLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDbkMsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzVGLElBQUksV0FBVyxFQUFFLENBQUM7WUFDaEIsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3pCLENBQUM7SUFDSCxDQUFDO0lBRU8seUJBQXlCLENBQUMsVUFBa0IsRUFBRSxPQUFZO1FBQ2hFLElBQUksQ0FBQyxHQUFHLFVBQVUsQ0FBQztRQUNuQixPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNkLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDOUIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztnQkFDM0IsT0FBTyxNQUFNLENBQUM7WUFDaEIsQ0FBQztZQUNELENBQUMsRUFBRSxDQUFDO1FBQ04sQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVPLHFCQUFxQixDQUFDLFVBQWtCLEVBQUUsT0FBWTtRQUM1RCxJQUFJLENBQUMsR0FBRyxVQUFVLENBQUM7UUFDbkIsT0FBTyxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzFCLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDOUIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztnQkFDM0IsT0FBTyxNQUFNLENBQUM7WUFDaEIsQ0FBQztZQUNELENBQUMsRUFBRSxDQUFDO1FBQ04sQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzt3R0FqUlUsaUJBQWlCOzRGQUFqQixpQkFBaUI7OzRGQUFqQixpQkFBaUI7a0JBSjdCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs7MEJBT0ksSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBFbGVtZW50UmVmLCBIb3N0LCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2lyaW9TZWxlY3RDb21wb25lbnQgfSBmcm9tICduZ3gtc2lyaW8tbGliJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tkcm9wZG93bl0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIERyb3Bkb3duRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxyXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgXHJcbiAgICBASG9zdCgpIHByaXZhdGUgc2lyaW9TZWxlY3Q6IFNpcmlvU2VsZWN0Q29tcG9uZW50XHJcbiAgKSB7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG9wdGlvbnNTdWJzY3JpcHRpb24/OiBTdWJzY3JpcHRpb247XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuaGFuZGxlVmFsdWUoKTtcclxuICAgIHRoaXMuaGFuZGxlU2VhcmNoYWJsZSgpO1xyXG4gICAgdGhpcy5oYW5kbGVPcHRpb25zQ2hhbmdlcygpOyAgICBcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5vcHRpb25zU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBoYW5kbGVWYWx1ZSgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGZhbHN5VmFsdWVzID0gW251bGwsIGZhbHNlLCAwLCBcIlwiXTtcclxuXHJcbiAgICBpZiAodGhpcy5zaXJpb1NlbGVjdFxyXG4gICAgICAmJiBBcnJheS5pc0FycmF5KHRoaXMuc2lyaW9TZWxlY3Qub3B0aW9ucylcclxuICAgICAgJiYgZmFsc3lWYWx1ZXMuaW5jbHVkZXModGhpcy5zaXJpb1NlbGVjdC52YWx1ZSkpXHJcbiAgICB7XHJcbiAgICAgIGNvbnN0IHZhbHVlT3B0aW9uID0gdGhpcy5zaXJpb1NlbGVjdC5vcHRpb25zLmZpbmQoXHJcbiAgICAgICAgb3B0aW9uID0+IG9wdGlvbi52YWx1ZSA9PT0gdGhpcy5zaXJpb1NlbGVjdC52YWx1ZVxyXG4gICAgICApO1xyXG5cclxuICAgICAgaWYgKHZhbHVlT3B0aW9uKSB7XHJcbiAgICAgICAgdmFsdWVPcHRpb24uaXNTZWxlY3RlZCA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFuZGxlU2VhcmNoYWJsZSgpOiB2b2lkIHtcclxuXHJcbiAgICBjb25zdCBzZWFyY2hhYmxlID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5zZWFyY2hhYmxlJyk7XHJcbiAgICBpZiAoc2VhcmNoYWJsZSkge1xyXG4gICAgICBjb25zdCBkcm9wRG93biA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuc2lyaW8tZHJvcGRvd24nKTtcclxuICAgICAgY29uc3QgZHJvcE1lbnUgPSBkcm9wRG93bi5xdWVyeVNlbGVjdG9yKCcuc2lyaW8tZHJvcGRvd24tbWVudScpO1xyXG4gICAgICBjb25zdCBpbnB1dCA9IHNlYXJjaGFibGUucXVlcnlTZWxlY3RvcignaW5wdXQnKTtcclxuICAgICAgdGhpcy5yZW5kZXJlci5pbnNlcnRCZWZvcmUoZHJvcERvd24sIHNlYXJjaGFibGUsIGRyb3BNZW51KTtcclxuXHJcbiAgICAgIHRoaXMucmVuZGVyZXIubGlzdGVuKGlucHV0LCAnYmx1cicsIChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4ge1xyXG4gICAgICAgIHRoaXMuc2lyaW9TZWxlY3QucGFuZWwuY2xvc2UoKTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgICB0aGlzLnJlbmRlcmVyLmxpc3RlbihpbnB1dCwgJ2tleXVwJywgKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XHJcbiAgICAgICAgdGhpcy5vbktleVVwKGV2ZW50LCBpbnB1dCk7ICAgICAgICBcclxuICAgICAgfSk7XHJcblxyXG4gICAgICB0aGlzLnJlbmRlcmVyLmxpc3RlbihpbnB1dCwgJ2tleWRvd24nLCAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IHtcclxuICAgICAgICB0aGlzLm9uS2V5RG93bihldmVudCk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdGhpcy5zaXJpb1NlbGVjdC5wYW5lbC5wYW5lbE9wZW5lZC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuYWN0aXZhdGUoc2VhcmNoYWJsZSk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdGhpcy5zaXJpb1NlbGVjdC5wYW5lbC5wYW5lbENsb3NlZC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuZGVhY3RpdmF0ZShzZWFyY2hhYmxlKTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgfSAgICBcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFuZGxlT3B0aW9uc0NoYW5nZXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLm9wdGlvbnNTdWJzY3JpcHRpb24gPSB0aGlzLnNpcmlvU2VsZWN0LnBhbmVsLm9wdGlvbnMuY2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICBjb25zdCB2YWx1ZU9wdGlvbiA9IHRoaXMuc2lyaW9TZWxlY3Qub3B0aW9ucy5maW5kKFxyXG4gICAgICAgIG9wdGlvbiA9PiBvcHRpb24udmFsdWUgPT09IHRoaXMuc2lyaW9TZWxlY3QudmFsdWVcclxuICAgICAgKTtcclxuICAgICAgaWYgKCF2YWx1ZU9wdGlvbiAmJiB0aGlzLnNpcmlvU2VsZWN0LnZhbHVlKSB7XHJcbiAgICAgICAgdGhpcy5zaXJpb1NlbGVjdC5jb250cm9sPy5yZXNldCgpO1xyXG4gICAgICB9ICAgICAgXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZGVhY3RpdmF0ZShlbGVtZW50OiBIVE1MRWxlbWVudCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShlbGVtZW50LCAnZGlzcGxheScsICdub25lJyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFjdGl2YXRlKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XHJcbiAgICBsZXQgY3VycmVudFZhbHVlID0gXCJcIjtcclxuXHJcbiAgICBpZiAodGhpcy5zaXJpb1NlbGVjdC5vcHRpb25zU2VsZWN0ZWQubGVuZ3RoID4gMCkge1xyXG4gICAgICBjdXJyZW50VmFsdWUgPSB0aGlzLnNpcmlvU2VsZWN0Lm9wdGlvbnNTZWxlY3RlZFswXS50ZXh0XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgaW5wdXQgPSBlbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXCJpbnB1dFwiKTtcclxuXHJcbiAgICBpZiAoIWlucHV0KVxyXG4gICAgICByZXR1cm47XHJcblxyXG4gICAgaW5wdXQudmFsdWUgPSBjdXJyZW50VmFsdWU7XHJcblxyXG4gICAgY29uc3QgZHJvcE1lbnUgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLnNpcmlvLWRyb3Bkb3duLW1lbnUnKTtcclxuXHJcbiAgICB0aGlzLnNpcmlvU2VsZWN0Lm9wdGlvbnMuZm9yRWFjaCgob3B0aW9uKSA9PiB7XHJcbiAgICAgIHRoaXMuc2hvdyhvcHRpb24sIHRydWUpO1xyXG4gICAgICBpZiAoY3VycmVudFZhbHVlID09IG9wdGlvbi50ZXh0KSB7XHJcbiAgICAgICAgZHJvcE1lbnUuc2Nyb2xsVG9wID0gdGhpcy5uYXRpdmUob3B0aW9uKS5vZmZzZXRUb3A7XHJcbiAgICAgIH0gICAgICBcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoZWxlbWVudCwgJ2Rpc3BsYXknLCAnaW5saW5lLWJsb2NrJyk7XHJcblxyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGlucHV0LnNldFNlbGVjdGlvblJhbmdlKGlucHV0LnZhbHVlLmxlbmd0aCwgaW5wdXQudmFsdWUubGVuZ3RoKTtcclxuICAgICAgaW5wdXQuZm9jdXMoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvbktleVVwKGV2ZW50OiBLZXlib2FyZEV2ZW50LCBpbnB1dDogYW55KSB7XHJcbiAgICBjb25zdCB7IGNvZGUgfSA9IGV2ZW50O1xyXG5cclxuICAgIHN3aXRjaCAoY29kZSkge1xyXG4gICAgICBjYXNlICdFbnRlcic6XHJcbiAgICAgIGNhc2UgJ1NwYWNlJzpcclxuICAgICAgY2FzZSAnQXJyb3dEb3duJzpcclxuICAgICAgY2FzZSAnQXJyb3dVcCc6XHJcbiAgICAgIGNhc2UgJ0VzY2FwZSc6XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5jb21wYXJhYmxlKGlucHV0LnZhbHVlKTtcclxuICAgIGxldCBmaXJzdE1hdGNoID0gdHJ1ZTtcclxuXHJcbiAgICB0aGlzLnNpcmlvU2VsZWN0Lm9wdGlvbnMuZm9yRWFjaCgob3B0aW9uLCBpbmRleCkgPT4ge1xyXG4gICAgICBjb25zdCBtYXRjaCA9IHRoaXMuY29tcGFyYWJsZShvcHRpb24udGV4dCkuaW5jbHVkZXModmFsdWUpO1xyXG4gICAgICB0aGlzLnNob3cob3B0aW9uLCBtYXRjaCk7XHJcbiAgICAgIGlmIChtYXRjaCAmJiBmaXJzdE1hdGNoKSB7XHJcbiAgICAgICAgb3B0aW9uLnNldEZvY3VzKCk7XHJcbiAgICAgICAgZmlyc3RNYXRjaCA9IGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIG9wdGlvbi5yZW1vdmVGb2N1cygpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XHJcbiAgICBjb25zdCBwYW5lbCA9IHRoaXMuc2lyaW9TZWxlY3QucGFuZWw7XHJcbiAgICBpZiAoIXBhbmVsKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IHBhbmVsSXNPcGVuID0gcGFuZWwucGFuZWxJc09wZW47XHJcbiAgICBjb25zdCB7IGNvZGUgfSA9IGV2ZW50O1xyXG4gICAgaWYgKHBhbmVsSXNPcGVuKSB7XHJcbiAgICAgIHN3aXRjaCAoY29kZSkge1xyXG4gICAgICAgIGNhc2UgJ0VudGVyJzpcclxuICAgICAgICBjYXNlICdTcGFjZSc6XHJcbiAgICAgICAgICBpZiAocGFuZWwub3B0aW9uRm9jdXNlZCkge1xyXG4gICAgICAgICAgICBwYW5lbC5vcHRpb25Gb2N1c2VkPy5vbk9wdGlvblNlbGVjdGVkKGV2ZW50KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBwYW5lbC5jbG9zZShldmVudCk7XHJcbiAgICAgICAgICAgIGV2ZW50Py5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnQXJyb3dEb3duJzpcclxuICAgICAgICAgIHRoaXMuc2Nyb2xsRG93bigpO1xyXG4gICAgICAgICAgZXZlbnQ/LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdBcnJvd1VwJzpcclxuICAgICAgICAgIHRoaXMuc2Nyb2xsVXAoKTtcclxuICAgICAgICAgIGV2ZW50Py5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnRXNjYXBlJzpcclxuICAgICAgICAgIHBhbmVsLmNsb3NlKGV2ZW50KTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKCFwYW5lbElzT3Blbikge1xyXG4gICAgICBzd2l0Y2ggKGNvZGUpIHtcclxuICAgICAgICBjYXNlICdFbnRlcic6XHJcbiAgICAgICAgY2FzZSAnU3BhY2UnOlxyXG4gICAgICAgICAgcGFuZWwub3BlbihldmVudCk7XHJcbiAgICAgICAgICBldmVudD8ucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBuYXRpdmUob3B0aW9uOiBhbnkpIHtcclxuICAgIHJldHVybiBvcHRpb24udmlld0NvbnRhaW5lclJlZi5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzSGlkZGVuKG9wdGlvbjogYW55KSB7XHJcbiAgICByZXR1cm4gdGhpcy5uYXRpdmUob3B0aW9uKS5zdHlsZS5kaXNwbGF5ID09PSAnbm9uZSc7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNob3cob3B0aW9uOiBhbnksIHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLm5hdGl2ZShvcHRpb24pLnN0eWxlLmRpc3BsYXkgPSB2YWx1ZSA/ICcnIDogJ25vbmUnO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb21wYXJhYmxlKHRleHQ6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRleHQudG9Mb3dlckNhc2UoKS50cmltKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNjcm9sbERvd24oKSB7XHJcbiAgICBjb25zdCBwYW5lbCA9IHRoaXMuc2lyaW9TZWxlY3QucGFuZWw7XHJcbiAgICBpZiAoIXBhbmVsLm9wdGlvbkZvY3VzZWQpIHtcclxuICAgICAgcGFuZWwuc2Nyb2xsQmFyVG9wKCk7XHJcbiAgICAgIHBhbmVsLm9wdGlvbnMuZmlyc3Quc2V0Rm9jdXMoKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3QgbmV4dE9wdGlvbkZvY3VzZWQgPSB0aGlzLmZpbmROZXh0VmlzaWJsZU9wdGlvbihwYW5lbC5vcHRpb25Gb2N1c2VkSW5kZXggKyAxLCBwYW5lbC5vcHRpb25zKTtcclxuICAgIHBhbmVsLnNjcm9sbEJhckRvd24oKTtcclxuICAgIHBhbmVsLm9wdGlvbkZvY3VzZWQ/LnJlbW92ZUZvY3VzKCk7XHJcbiAgICBpZiAobmV4dE9wdGlvbkZvY3VzZWQpIHtcclxuICAgICAgbmV4dE9wdGlvbkZvY3VzZWQ/LnNldEZvY3VzKCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHBhbmVsLnNjcm9sbEJhclRvcCgpO1xyXG4gICAgY29uc3QgZmlyc3RWaXNpYmxlID0gdGhpcy5maW5kTmV4dFZpc2libGVPcHRpb24oMCwgcGFuZWwub3B0aW9ucyk7XHJcbiAgICBpZiAoZmlyc3RWaXNpYmxlKSB7XHJcbiAgICAgIGZpcnN0VmlzaWJsZS5zZXRGb2N1cygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzY3JvbGxVcCgpIHtcclxuICAgIGNvbnN0IHBhbmVsID0gdGhpcy5zaXJpb1NlbGVjdC5wYW5lbDtcclxuICAgIGlmICghcGFuZWwub3B0aW9uRm9jdXNlZCkge1xyXG4gICAgICBwYW5lbC5zY3JvbGxCYXJUb3AoKTtcclxuICAgICAgcGFuZWwub3B0aW9ucy5sYXN0LnNldEZvY3VzKCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH0gICAgXHJcbiAgICBjb25zdCBuZXh0T3B0aW9uRm9jdXNlZCA9IHRoaXMuZmluZFByZXZpb3VzVmlzaWJsZU9wdGlvbihwYW5lbC5vcHRpb25Gb2N1c2VkSW5kZXggLSAxLCBwYW5lbC5vcHRpb25zKTtcclxuICAgIGlmIChuZXh0T3B0aW9uRm9jdXNlZCkge1xyXG4gICAgICBwYW5lbC5zY3JvbGxCYXJVcCgpO1xyXG4gICAgICBwYW5lbC5vcHRpb25Gb2N1c2VkPy5yZW1vdmVGb2N1cygpO1xyXG4gICAgICBuZXh0T3B0aW9uRm9jdXNlZD8uc2V0Rm9jdXMoKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgcGFuZWwub3B0aW9uRm9jdXNlZD8ucmVtb3ZlRm9jdXMoKTtcclxuICAgIHBhbmVsLnNjcm9sbEJhckJvdHRvbSgpO1xyXG4gICAgY29uc3QgbGFzdFZpc2libGUgPSB0aGlzLmZpbmRQcmV2aW91c1Zpc2libGVPcHRpb24ocGFuZWwub3B0aW9ucy5sZW5ndGggLSAxLCBwYW5lbC5vcHRpb25zKTtcclxuICAgIGlmIChsYXN0VmlzaWJsZSkge1xyXG4gICAgICBsYXN0VmlzaWJsZS5zZXRGb2N1cygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmaW5kUHJldmlvdXNWaXNpYmxlT3B0aW9uKHN0YXJ0SW5kZXg6IG51bWJlciwgb3B0aW9uczogYW55KTogYW55IHwgbnVsbCB7XHJcbiAgICBsZXQgaSA9IHN0YXJ0SW5kZXg7XHJcbiAgICB3aGlsZSAoaSA+PSAwKSB7XHJcbiAgICAgIGNvbnN0IG9wdGlvbiA9IG9wdGlvbnMuZ2V0KGkpO1xyXG4gICAgICBpZiAoIXRoaXMuaXNIaWRkZW4ob3B0aW9uKSkge1xyXG4gICAgICAgIHJldHVybiBvcHRpb247XHJcbiAgICAgIH1cclxuICAgICAgaS0tO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGZpbmROZXh0VmlzaWJsZU9wdGlvbihzdGFydEluZGV4OiBudW1iZXIsIG9wdGlvbnM6IGFueSk6IGFueSB8IG51bGwge1xyXG4gICAgbGV0IGkgPSBzdGFydEluZGV4O1xyXG4gICAgd2hpbGUgKGkgPCBvcHRpb25zLmxlbmd0aCkge1xyXG4gICAgICBjb25zdCBvcHRpb24gPSBvcHRpb25zLmdldChpKTtcclxuICAgICAgaWYgKCF0aGlzLmlzSGlkZGVuKG9wdGlvbikpIHtcclxuICAgICAgICByZXR1cm4gb3B0aW9uO1xyXG4gICAgICB9XHJcbiAgICAgIGkrKztcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxufVxyXG4iXX0=
248
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNpcmlvL3NyYy9saWIvZGlyZWN0aXZlcy9kcm9wZG93bi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBd0MsSUFBSSxFQUFhLE1BQU0sZUFBZSxDQUFDOzs7QUFRakcsTUFBTSxPQUFPLGlCQUFpQjtJQUdsQjtJQUNBO0lBRVE7SUFKbEIsWUFDVSxFQUFjLEVBQ2QsUUFBbUIsRUFFWCxXQUFpQztRQUh6QyxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQ2QsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUVYLGdCQUFXLEdBQVgsV0FBVyxDQUFzQjtJQUVuRCxDQUFDO0lBRU8sbUJBQW1CLENBQWdCO0lBRTNDLGVBQWU7UUFDYixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDMUMsQ0FBQztJQUVPLFdBQVc7UUFDakIsTUFBTSxXQUFXLEdBQUcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUV6QyxJQUFJLElBQUksQ0FBQyxXQUFXO2VBQ2YsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQztlQUN2QyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQ2pELENBQUM7WUFDQyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQy9DLE1BQU0sQ0FBQyxFQUFFLENBQUMs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Q0FBQyxFQUFFLENBQUM7WUFDZCxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7Z0JBQzNCLE9BQU8sTUFBTSxDQUFDO1lBQ2hCLENBQUM7WUFDRCxDQUFDLEVBQUUsQ0FBQztRQUNOLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTyxxQkFBcUIsQ0FBQyxVQUFrQixFQUFFLE9BQVk7UUFDNUQsSUFBSSxDQUFDLEdBQUcsVUFBVSxDQUFDO1FBQ25CLE9BQU8sQ0FBQyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUMxQixNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7Z0JBQzNCLE9BQU8sTUFBTSxDQUFDO1lBQ2hCLENBQUM7WUFDRCxDQUFDLEVBQUUsQ0FBQztRQUNOLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7d0dBbFJVLGlCQUFpQjs0RkFBakIsaUJBQWlCOzs0RkFBakIsaUJBQWlCO2tCQUo3QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxZQUFZO29CQUN0QixVQUFVLEVBQUUsSUFBSTtpQkFDakI7OzBCQU9JLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSwgRWxlbWVudFJlZiwgSG9zdCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNpcmlvU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnbmd4LXNpcmlvLWxpYic7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbZHJvcGRvd25dJyxcclxuICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEcm9wZG93bkRpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcclxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIFxyXG4gICAgQEhvc3QoKSBwcml2YXRlIHNpcmlvU2VsZWN0OiBTaXJpb1NlbGVjdENvbXBvbmVudFxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvcHRpb25zU3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uO1xyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmhhbmRsZVZhbHVlKCk7XHJcbiAgICB0aGlzLmhhbmRsZVNlYXJjaGFibGUoKTtcclxuICAgIHRoaXMuaGFuZGxlT3B0aW9uc0NoYW5nZXMoKTsgICAgXHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMub3B0aW9uc1N1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFuZGxlVmFsdWUoKTogdm9pZCB7XHJcbiAgICBjb25zdCBmYWxzeVZhbHVlcyA9IFtudWxsLCBmYWxzZSwgMCwgXCJcIl07XHJcblxyXG4gICAgaWYgKHRoaXMuc2lyaW9TZWxlY3RcclxuICAgICAgJiYgQXJyYXkuaXNBcnJheSh0aGlzLnNpcmlvU2VsZWN0Lm9wdGlvbnMpXHJcbiAgICAgICYmIGZhbHN5VmFsdWVzLmluY2x1ZGVzKHRoaXMuc2lyaW9TZWxlY3QudmFsdWUpKVxyXG4gICAge1xyXG4gICAgICBjb25zdCB2YWx1ZU9wdGlvbiA9IHRoaXMuc2lyaW9TZWxlY3Qub3B0aW9ucy5maW5kKFxyXG4gICAgICAgIG9wdGlvbiA9PiBvcHRpb24udmFsdWUgPT09IHRoaXMuc2lyaW9TZWxlY3QudmFsdWVcclxuICAgICAgKTtcclxuXHJcbiAgICAgIGlmICh2YWx1ZU9wdGlvbikge1xyXG4gICAgICAgIHZhbHVlT3B0aW9uLmlzU2VsZWN0ZWQgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhhbmRsZVNlYXJjaGFibGUoKTogdm9pZCB7XHJcblxyXG4gICAgY29uc3Qgc2VhcmNoYWJsZSA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuc2VhcmNoYWJsZScpO1xyXG4gICAgaWYgKHNlYXJjaGFibGUpIHtcclxuICAgICAgY29uc3QgZHJvcERvd24gPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLnNpcmlvLWRyb3Bkb3duJyk7XHJcbiAgICAgIGNvbnN0IGRyb3BNZW51ID0gZHJvcERvd24ucXVlcnlTZWxlY3RvcignLnNpcmlvLWRyb3Bkb3duLW1lbnUnKTtcclxuICAgICAgY29uc3QgaW5wdXQgPSBzZWFyY2hhYmxlLnF1ZXJ5U2VsZWN0b3IoJ2lucHV0Jyk7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIuaW5zZXJ0QmVmb3JlKGRyb3BEb3duLCBzZWFyY2hhYmxlLCBkcm9wTWVudSk7XHJcblxyXG4gICAgICB0aGlzLnJlbmRlcmVyLmxpc3RlbihpbnB1dCwgJ2JsdXInLCAoZXZlbnQ6IEZvY3VzRXZlbnQpID0+IHtcclxuICAgICAgICBpZiAoZXZlbnQucmVsYXRlZFRhcmdldCAhPT0gZHJvcE1lbnUpXHJcbiAgICAgICAgICB0aGlzLnNpcmlvU2VsZWN0LnBhbmVsLmNsb3NlKCk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdGhpcy5yZW5kZXJlci5saXN0ZW4oaW5wdXQsICdrZXl1cCcsIChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4ge1xyXG4gICAgICAgIHRoaXMub25LZXlVcChldmVudCwgaW5wdXQpOyAgICAgICAgXHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdGhpcy5yZW5kZXJlci5saXN0ZW4oaW5wdXQsICdrZXlkb3duJywgKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XHJcbiAgICAgICAgdGhpcy5vbktleURvd24oZXZlbnQpO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIHRoaXMuc2lyaW9TZWxlY3QucGFuZWwucGFuZWxPcGVuZWQuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICB0aGlzLmFjdGl2YXRlKHNlYXJjaGFibGUpO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIHRoaXMuc2lyaW9TZWxlY3QucGFuZWwucGFuZWxDbG9zZWQuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICB0aGlzLmRlYWN0aXZhdGUoc2VhcmNoYWJsZSk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIH0gICAgXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhhbmRsZU9wdGlvbnNDaGFuZ2VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5vcHRpb25zU3Vic2NyaXB0aW9uID0gdGhpcy5zaXJpb1NlbGVjdC5wYW5lbC5vcHRpb25zLmNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgY29uc3QgdmFsdWVPcHRpb24gPSB0aGlzLnNpcmlvU2VsZWN0Lm9wdGlvbnMuZmluZChcclxuICAgICAgICBvcHRpb24gPT4gb3B0aW9uLnZhbHVlID09PSB0aGlzLnNpcmlvU2VsZWN0LnZhbHVlXHJcbiAgICAgICk7XHJcbiAgICAgIGlmICghdmFsdWVPcHRpb24gJiYgdGhpcy5zaXJpb1NlbGVjdC52YWx1ZSkge1xyXG4gICAgICAgIHRoaXMuc2lyaW9TZWxlY3QuY29udHJvbD8ucmVzZXQoKTtcclxuICAgICAgfSAgICAgIFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGRlYWN0aXZhdGUoZWxlbWVudDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcclxuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoZWxlbWVudCwgJ2Rpc3BsYXknLCAnbm9uZScpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhY3RpdmF0ZShlbGVtZW50OiBIVE1MRWxlbWVudCk6IHZvaWQge1xyXG4gICAgbGV0IGN1cnJlbnRWYWx1ZSA9IFwiXCI7XHJcblxyXG4gICAgaWYgKHRoaXMuc2lyaW9TZWxlY3Qub3B0aW9uc1NlbGVjdGVkLmxlbmd0aCA+IDApIHtcclxuICAgICAgY3VycmVudFZhbHVlID0gdGhpcy5zaXJpb1NlbGVjdC5vcHRpb25zU2VsZWN0ZWRbMF0udGV4dFxyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGlucHV0ID0gZWxlbWVudC5xdWVyeVNlbGVjdG9yKFwiaW5wdXRcIik7XHJcblxyXG4gICAgaWYgKCFpbnB1dClcclxuICAgICAgcmV0dXJuO1xyXG5cclxuICAgIGlucHV0LnZhbHVlID0gY3VycmVudFZhbHVlO1xyXG5cclxuICAgIGNvbnN0IGRyb3BNZW51ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5zaXJpby1kcm9wZG93bi1tZW51Jyk7XHJcblxyXG4gICAgdGhpcy5zaXJpb1NlbGVjdC5vcHRpb25zLmZvckVhY2goKG9wdGlvbikgPT4ge1xyXG4gICAgICB0aGlzLnNob3cob3B0aW9uLCB0cnVlKTtcclxuICAgICAgaWYgKGN1cnJlbnRWYWx1ZSA9PSBvcHRpb24udGV4dCkge1xyXG4gICAgICAgIGRyb3BNZW51LnNjcm9sbFRvcCA9IHRoaXMubmF0aXZlKG9wdGlvbikub2Zmc2V0VG9wO1xyXG4gICAgICB9ICAgICAgXHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKGVsZW1lbnQsICdkaXNwbGF5JywgJ2lubGluZS1ibG9jaycpO1xyXG5cclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBpbnB1dC5zZXRTZWxlY3Rpb25SYW5nZShpbnB1dC52YWx1ZS5sZW5ndGgsIGlucHV0LnZhbHVlLmxlbmd0aCk7XHJcbiAgICAgIGlucHV0LmZvY3VzKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25LZXlVcChldmVudDogS2V5Ym9hcmRFdmVudCwgaW5wdXQ6IGFueSkge1xyXG4gICAgY29uc3QgeyBjb2RlIH0gPSBldmVudDtcclxuXHJcbiAgICBzd2l0Y2ggKGNvZGUpIHtcclxuICAgICAgY2FzZSAnRW50ZXInOlxyXG4gICAgICBjYXNlICdTcGFjZSc6XHJcbiAgICAgIGNhc2UgJ0Fycm93RG93bic6XHJcbiAgICAgIGNhc2UgJ0Fycm93VXAnOlxyXG4gICAgICBjYXNlICdFc2NhcGUnOlxyXG4gICAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuY29tcGFyYWJsZShpbnB1dC52YWx1ZSk7XHJcbiAgICBsZXQgZmlyc3RNYXRjaCA9IHRydWU7XHJcblxyXG4gICAgdGhpcy5zaXJpb1NlbGVjdC5vcHRpb25zLmZvckVhY2goKG9wdGlvbiwgaW5kZXgpID0+IHtcclxuICAgICAgY29uc3QgbWF0Y2ggPSB0aGlzLmNvbXBhcmFibGUob3B0aW9uLnRleHQpLmluY2x1ZGVzKHZhbHVlKTtcclxuICAgICAgdGhpcy5zaG93KG9wdGlvbiwgbWF0Y2gpO1xyXG4gICAgICBpZiAobWF0Y2ggJiYgZmlyc3RNYXRjaCkge1xyXG4gICAgICAgIG9wdGlvbi5zZXRGb2N1cygpO1xyXG4gICAgICAgIGZpcnN0TWF0Y2ggPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICBvcHRpb24ucmVtb3ZlRm9jdXMoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xyXG4gICAgY29uc3QgcGFuZWwgPSB0aGlzLnNpcmlvU2VsZWN0LnBhbmVsO1xyXG4gICAgaWYgKCFwYW5lbCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBjb25zdCBwYW5lbElzT3BlbiA9IHBhbmVsLnBhbmVsSXNPcGVuO1xyXG4gICAgY29uc3QgeyBjb2RlIH0gPSBldmVudDtcclxuICAgIGlmIChwYW5lbElzT3Blbikge1xyXG4gICAgICBzd2l0Y2ggKGNvZGUpIHtcclxuICAgICAgICBjYXNlICdFbnRlcic6XHJcbiAgICAgICAgY2FzZSAnU3BhY2UnOlxyXG4gICAgICAgICAgaWYgKHBhbmVsLm9wdGlvbkZvY3VzZWQpIHtcclxuICAgICAgICAgICAgcGFuZWwub3B0aW9uRm9jdXNlZD8ub25PcHRpb25TZWxlY3RlZChldmVudCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgcGFuZWwuY2xvc2UoZXZlbnQpO1xyXG4gICAgICAgICAgICBldmVudD8ucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ0Fycm93RG93bic6XHJcbiAgICAgICAgICB0aGlzLnNjcm9sbERvd24oKTtcclxuICAgICAgICAgIGV2ZW50Py5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnQXJyb3dVcCc6XHJcbiAgICAgICAgICB0aGlzLnNjcm9sbFVwKCk7XHJcbiAgICAgICAgICBldmVudD8ucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ0VzY2FwZSc6XHJcbiAgICAgICAgICBwYW5lbC5jbG9zZShldmVudCk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmICghcGFuZWxJc09wZW4pIHtcclxuICAgICAgc3dpdGNoIChjb2RlKSB7XHJcbiAgICAgICAgY2FzZSAnRW50ZXInOlxyXG4gICAgICAgIGNhc2UgJ1NwYWNlJzpcclxuICAgICAgICAgIHBhbmVsLm9wZW4oZXZlbnQpO1xyXG4gICAgICAgICAgZXZlbnQ/LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgbmF0aXZlKG9wdGlvbjogYW55KSB7XHJcbiAgICByZXR1cm4gb3B0aW9uLnZpZXdDb250YWluZXJSZWYuZWxlbWVudC5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc0hpZGRlbihvcHRpb246IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMubmF0aXZlKG9wdGlvbikuc3R5bGUuZGlzcGxheSA9PT0gJ25vbmUnO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzaG93KG9wdGlvbjogYW55LCB2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5uYXRpdmUob3B0aW9uKS5zdHlsZS5kaXNwbGF5ID0gdmFsdWUgPyAnJyA6ICdub25lJztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY29tcGFyYWJsZSh0ZXh0OiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0ZXh0LnRvTG93ZXJDYXNlKCkudHJpbSgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzY3JvbGxEb3duKCkge1xyXG4gICAgY29uc3QgcGFuZWwgPSB0aGlzLnNpcmlvU2VsZWN0LnBhbmVsO1xyXG4gICAgaWYgKCFwYW5lbC5vcHRpb25Gb2N1c2VkKSB7XHJcbiAgICAgIHBhbmVsLnNjcm9sbEJhclRvcCgpO1xyXG4gICAgICBwYW5lbC5vcHRpb25zLmZpcnN0LnNldEZvY3VzKCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IG5leHRPcHRpb25Gb2N1c2VkID0gdGhpcy5maW5kTmV4dFZpc2libGVPcHRpb24ocGFuZWwub3B0aW9uRm9jdXNlZEluZGV4ICsgMSwgcGFuZWwub3B0aW9ucyk7XHJcbiAgICBwYW5lbC5zY3JvbGxCYXJEb3duKCk7XHJcbiAgICBwYW5lbC5vcHRpb25Gb2N1c2VkPy5yZW1vdmVGb2N1cygpO1xyXG4gICAgaWYgKG5leHRPcHRpb25Gb2N1c2VkKSB7XHJcbiAgICAgIG5leHRPcHRpb25Gb2N1c2VkPy5zZXRGb2N1cygpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBwYW5lbC5zY3JvbGxCYXJUb3AoKTtcclxuICAgIGNvbnN0IGZpcnN0VmlzaWJsZSA9IHRoaXMuZmluZE5leHRWaXNpYmxlT3B0aW9uKDAsIHBhbmVsLm9wdGlvbnMpO1xyXG4gICAgaWYgKGZpcnN0VmlzaWJsZSkge1xyXG4gICAgICBmaXJzdFZpc2libGUuc2V0Rm9jdXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2Nyb2xsVXAoKSB7XHJcbiAgICBjb25zdCBwYW5lbCA9IHRoaXMuc2lyaW9TZWxlY3QucGFuZWw7XHJcbiAgICBpZiAoIXBhbmVsLm9wdGlvbkZvY3VzZWQpIHtcclxuICAgICAgcGFuZWwuc2Nyb2xsQmFyVG9wKCk7XHJcbiAgICAgIHBhbmVsLm9wdGlvbnMubGFzdC5zZXRGb2N1cygpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9ICAgIFxyXG4gICAgY29uc3QgbmV4dE9wdGlvbkZvY3VzZWQgPSB0aGlzLmZpbmRQcmV2aW91c1Zpc2libGVPcHRpb24ocGFuZWwub3B0aW9uRm9jdXNlZEluZGV4IC0gMSwgcGFuZWwub3B0aW9ucyk7XHJcbiAgICBpZiAobmV4dE9wdGlvbkZvY3VzZWQpIHtcclxuICAgICAgcGFuZWwuc2Nyb2xsQmFyVXAoKTtcclxuICAgICAgcGFuZWwub3B0aW9uRm9jdXNlZD8ucmVtb3ZlRm9jdXMoKTtcclxuICAgICAgbmV4dE9wdGlvbkZvY3VzZWQ/LnNldEZvY3VzKCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHBhbmVsLm9wdGlvbkZvY3VzZWQ/LnJlbW92ZUZvY3VzKCk7XHJcbiAgICBwYW5lbC5zY3JvbGxCYXJCb3R0b20oKTtcclxuICAgIGNvbnN0IGxhc3RWaXNpYmxlID0gdGhpcy5maW5kUHJldmlvdXNWaXNpYmxlT3B0aW9uKHBhbmVsLm9wdGlvbnMubGVuZ3RoIC0gMSwgcGFuZWwub3B0aW9ucyk7XHJcbiAgICBpZiAobGFzdFZpc2libGUpIHtcclxuICAgICAgbGFzdFZpc2libGUuc2V0Rm9jdXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgZmluZFByZXZpb3VzVmlzaWJsZU9wdGlvbihzdGFydEluZGV4OiBudW1iZXIsIG9wdGlvbnM6IGFueSk6IGFueSB8IG51bGwge1xyXG4gICAgbGV0IGkgPSBzdGFydEluZGV4O1xyXG4gICAgd2hpbGUgKGkgPj0gMCkge1xyXG4gICAgICBjb25zdCBvcHRpb24gPSBvcHRpb25zLmdldChpKTtcclxuICAgICAgaWYgKCF0aGlzLmlzSGlkZGVuKG9wdGlvbikpIHtcclxuICAgICAgICByZXR1cm4gb3B0aW9uO1xyXG4gICAgICB9XHJcbiAgICAgIGktLTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmaW5kTmV4dFZpc2libGVPcHRpb24oc3RhcnRJbmRleDogbnVtYmVyLCBvcHRpb25zOiBhbnkpOiBhbnkgfCBudWxsIHtcclxuICAgIGxldCBpID0gc3RhcnRJbmRleDtcclxuICAgIHdoaWxlIChpIDwgb3B0aW9ucy5sZW5ndGgpIHtcclxuICAgICAgY29uc3Qgb3B0aW9uID0gb3B0aW9ucy5nZXQoaSk7XHJcbiAgICAgIGlmICghdGhpcy5pc0hpZGRlbihvcHRpb24pKSB7XHJcbiAgICAgICAgcmV0dXJuIG9wdGlvbjtcclxuICAgICAgfVxyXG4gICAgICBpKys7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcbn1cclxuIl19
@@ -27,6 +27,9 @@ export class TextDirective {
27
27
  }
28
28
  }
29
29
  coerceValue(value) {
30
+ if (typeof value !== 'string') {
31
+ return value;
32
+ }
30
33
  return this.applyMaxLength(this.applyCase(value));
31
34
  }
32
35
  applyCase(value) {
@@ -97,4 +100,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
97
100
  }], maxlength: [{
98
101
  type: Input
99
102
  }] } });
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2lyaW8vc3JjL2xpYi9kaXJlY3RpdmVzL3RleHQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFhLEtBQUssRUFBMkMsTUFBTSxlQUFlLENBQUM7OztBQU8zRyxNQUFNLE9BQU8sYUFBYTtJQUlJO0lBQ2hCO0lBSkgsUUFBUSxHQUFtQyxFQUFFLENBQUM7SUFDOUMsU0FBUyxHQUFrQixJQUFJLENBQUM7SUFFekMsWUFBNEIsVUFBK0IsRUFDL0MsUUFBbUI7UUFESCxlQUFVLEdBQVYsVUFBVSxDQUFxQjtRQUMvQyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBRTdCLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRWhGLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWhELElBQUksQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLEdBQUcsVUFBVSxFQUFvQjtZQUMvRCxnQkFBZ0IsQ0FBQyxVQUFVLEtBQVU7Z0JBQ25DLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUN6QixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQztJQUNKLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFD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Qzt3R0EvRlUsYUFBYTs0RkFBYixhQUFhOzs0RkFBYixhQUFhO2tCQUp6QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs7MEJBS2MsSUFBSTtpRUFIUixRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3QsIFJlbmRlcmVyMiwgSW5wdXQsIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTaXJpb0lucHV0Q29tcG9uZW50IH0gZnJvbSAnbmd4LXNpcmlvLWxpYic7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1t0ZXh0Y2FzZV0sIFttYXhsZW5ndGhdJyxcclxuICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUZXh0RGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0IHtcclxuICBASW5wdXQoKSB0ZXh0Y2FzZTogJycgfCAndXBwZXJjYXNlJyB8ICdsb3dlcmNhc2UnID0gJyc7XHJcbiAgQElucHV0KCkgbWF4bGVuZ3RoOiBudW1iZXIgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgY29uc3RydWN0b3IoQEhvc3QoKSBwcml2YXRlIHNpcmlvSW5wdXQ6IFNpcmlvSW5wdXRDb21wb25lbnRcclxuICAgICwgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyKSB7XHJcblxyXG4gICAgY29uc3QgcmVnaXN0ZXJPbkNoYW5nZSA9IHRoaXMuc2lyaW9JbnB1dC5yZWdpc3Rlck9uQ2hhbmdlLmJpbmQodGhpcy5zaXJpb0lucHV0KTtcclxuXHJcbiAgICBjb25zdCBjb2VyY2VWYWx1ZSA9IHRoaXMuY29lcmNlVmFsdWUuYmluZCh0aGlzKTtcclxuXHJcbiAgICB0aGlzLnNpcmlvSW5wdXQucmVnaXN0ZXJPbkNoYW5nZSA9IGZ1bmN0aW9uIChmbjogKF86IGFueSkgPT4gdm9pZCkge1xyXG4gICAgICByZWdpc3Rlck9uQ2hhbmdlKGZ1bmN0aW9uICh2YWx1ZTogYW55KSB7XHJcbiAgICAgICAgZm4oY29lcmNlVmFsdWUodmFsdWUpKTtcclxuICAgICAgfSk7XHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb25maWd1cmVUZXh0Q2FzZSgpO1xyXG4gICAgdGhpcy5jb25maWd1cmVNYXhMZW5ndGgoKTsgICAgXHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBpZiAoY2hhbmdlc1tcIm1heGxlbmd0aFwiXSkge1xyXG4gICAgICB0aGlzLmNvbmZpZ3VyZU1heExlbmd0aCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb2VyY2VWYWx1ZSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nXHJcbiAge1xyXG4gICAgcmV0dXJuIHRoaXMuYXBwbHlNYXhMZW5ndGgoXHJcbiAgICAgIHRoaXMuYXBwbHlDYXNlKHZhbHVlKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFwcGx5Q2FzZSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGlmICh0aGlzLnRleHRjYXNlID09PSBcInVwcGVyY2FzZVwiKSB7XHJcbiAgICAgIHJldHVybiB2YWx1ZS50b1VwcGVyQ2FzZSgpO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAodGhpcy50ZXh0Y2FzZSA9PT0gXCJsb3dlcmNhc2VcIikge1xyXG4gICAgICByZXR1cm4gdmFsdWUudG9Mb3dlckNhc2UoKTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFwcGx5TWF4TGVuZ3RoKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgaWYgKHRoaXMubWF4bGVuZ3RoICE9IG51bGwgJiYgdmFsdWUubGVuZ3RoID4gdGhpcy5tYXhsZW5ndGgpIHtcclxuICAgICAgcmV0dXJuIHZhbHVlLnNsaWNlKDAsIE1hdGgubWF4KDAsIHRoaXMubWF4bGVuZ3RoKSk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb25maWd1cmVUZXh0Q2FzZSgpIHtcclxuICAgIGNvbnN0IGlucHV0RWxlbWVudCA9IHRoaXMuc2lyaW9JbnB1dC5zaXJpb0lucHV0Py5uYXRpdmVFbGVtZW50O1xyXG4gICAgaWYgKGlucHV0RWxlbWVudCAmJiAodGhpcy50ZXh0Y2FzZSA9PT0gJ3VwcGVyY2FzZScgfHwgdGhpcy50ZXh0Y2FzZSA9PT0gJ2xvd2VyY2FzZScpKSB7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoaW5wdXRFbGVtZW50LCAndGV4dC10cmFuc2Zvcm0nLCB0aGlzLnRleHRjYXNlKTtcclxuXHJcbiAgICAgIGlucHV0RWxlbWVudC5vbmlucHV0ID0gKGV2ZW50OiBFdmVudCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGlucHV0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XHJcbiAgICAgICAgY29uc3QgdmFsdWUgPSBpbnB1dC52YWx1ZTtcclxuXHJcbiAgICAgICAgdmFyIG5ld1ZhbHVlID0gdGhpcy5jb2VyY2VWYWx1ZSh2YWx1ZSk7XHJcblxyXG4gICAgICAgIGlmIChuZXdWYWx1ZSAhPSB2YWx1ZSkge1xyXG4gICAgICAgICAgdGhpcy5yZXBsYWNlSW5wdXRWYWx1ZShpbnB1dCwgbmV3VmFsdWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb25maWd1cmVNYXhMZW5ndGgoKSB7XHJcbiAgICBjb25zdCBpbnB1dEVsZW1lbnQgPSB0aGlzLnNpcmlvSW5wdXQuc2lyaW9JbnB1dD8ubmF0aXZlRWxlbWVudDtcclxuXHJcbiAgICBpZiAoaW5wdXRFbGVtZW50KSB7XHJcbiAgICAgIGlmICh0aGlzLm1heGxlbmd0aCA9PSBudWxsKSB7XHJcbiAgICAgICAgaW5wdXRFbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgnbWF4bGVuZ3RoJyk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaW5wdXRFbGVtZW50Lm1heExlbmd0aCA9IHRoaXMubWF4bGVuZ3RoO1xyXG4gICAgICB9XHJcbiAgICB9ICAgIFxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZXBsYWNlSW5wdXRWYWx1ZShpbnB1dDogSFRNTElucHV0RWxlbWVudCwgdmFsdWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgY29uc3Qgc3RhcnQgPSBpbnB1dC5zZWxlY3Rpb25TdGFydCB8fCAwO1xyXG4gICAgY29uc3QgZW5kID0gaW5wdXQuc2VsZWN0aW9uRW5kIHx8IDA7XHJcblxyXG4gICAgaW5wdXQudmFsdWUgPSB2YWx1ZTtcclxuXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgaW5wdXQuc2V0U2VsZWN0aW9uUmFuZ2Uoc3RhcnQsIGVuZCk7XHJcbiAgICB9LCAwKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2lyaW8vc3JjL2xpYi9kaXJlY3RpdmVzL3RleHQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFhLEtBQUssRUFBMkMsTUFBTSxlQUFlLENBQUM7OztBQU8zRyxNQUFNLE9BQU8sYUFBYTtJQUlJO0lBQ2hCO0lBSkgsUUFBUSxHQUFtQyxFQUFFLENBQUM7SUFDOUMsU0FBUyxHQUFrQixJQUFJLENBQUM7SUFFekMsWUFBNEIsVUFBK0IsRUFDL0MsUUFBbUI7UUFESCxlQUFVLEdBQVYsVUFBVSxDQUFxQjtRQUMvQyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBRTdCLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRWhGLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWhELElBQUksQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLEdBQUcsVUFBVSxFQUFvQjtZQUMvRCxnQkFBZ0IsQ0FBQyxVQUFVLEtBQVU7Z0JBQ25DLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUN6QixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQztJQUNKLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFD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QixDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN0QyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDUixDQUFDO3dHQW5HVSxhQUFhOzRGQUFiLGFBQWE7OzRGQUFiLGFBQWE7a0JBSnpCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtvQkFDbkMsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzswQkFLYyxJQUFJO2lFQUhSLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdCwgUmVuZGVyZXIyLCBJbnB1dCwgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNpcmlvSW5wdXRDb21wb25lbnQgfSBmcm9tICduZ3gtc2lyaW8tbGliJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW3RleHRjYXNlXSwgW21heGxlbmd0aF0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIFRleHREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQge1xyXG4gIEBJbnB1dCgpIHRleHRjYXNlOiAnJyB8ICd1cHBlcmNhc2UnIHwgJ2xvd2VyY2FzZScgPSAnJztcclxuICBASW5wdXQoKSBtYXhsZW5ndGg6IG51bWJlciB8IG51bGwgPSBudWxsO1xyXG5cclxuICBjb25zdHJ1Y3RvcihASG9zdCgpIHByaXZhdGUgc2lyaW9JbnB1dDogU2lyaW9JbnB1dENvbXBvbmVudFxyXG4gICAgLCBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHtcclxuXHJcbiAgICBjb25zdCByZWdpc3Rlck9uQ2hhbmdlID0gdGhpcy5zaXJpb0lucHV0LnJlZ2lzdGVyT25DaGFuZ2UuYmluZCh0aGlzLnNpcmlvSW5wdXQpO1xyXG5cclxuICAgIGNvbnN0IGNvZXJjZVZhbHVlID0gdGhpcy5jb2VyY2VWYWx1ZS5iaW5kKHRoaXMpO1xyXG5cclxuICAgIHRoaXMuc2lyaW9JbnB1dC5yZWdpc3Rlck9uQ2hhbmdlID0gZnVuY3Rpb24gKGZuOiAoXzogYW55KSA9PiB2b2lkKSB7XHJcbiAgICAgIHJlZ2lzdGVyT25DaGFuZ2UoZnVuY3Rpb24gKHZhbHVlOiBhbnkpIHtcclxuICAgICAgICBmbihjb2VyY2VWYWx1ZSh2YWx1ZSkpO1xyXG4gICAgICB9KTtcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNvbmZpZ3VyZVRleHRDYXNlKCk7XHJcbiAgICB0aGlzLmNvbmZpZ3VyZU1heExlbmd0aCgpOyAgICBcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmIChjaGFuZ2VzW1wibWF4bGVuZ3RoXCJdKSB7XHJcbiAgICAgIHRoaXMuY29uZmlndXJlTWF4TGVuZ3RoKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNvZXJjZVZhbHVlKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmdcclxuICB7XHJcbiAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnc3RyaW5nJykge1xyXG4gICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuYXBwbHlNYXhMZW5ndGgoXHJcbiAgICAgIHRoaXMuYXBwbHlDYXNlKHZhbHVlKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFwcGx5Q2FzZSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGlmICh0aGlzLnRleHRjYXNlID09PSBcInVwcGVyY2FzZVwiKSB7XHJcbiAgICAgIHJldHVybiB2YWx1ZS50b1VwcGVyQ2FzZSgpO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAodGhpcy50ZXh0Y2FzZSA9PT0gXCJsb3dlcmNhc2VcIikge1xyXG4gICAgICByZXR1cm4gdmFsdWUudG9Mb3dlckNhc2UoKTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFwcGx5TWF4TGVuZ3RoKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgaWYgKHRoaXMubWF4bGVuZ3RoICE9IG51bGwgJiYgdmFsdWUubGVuZ3RoID4gdGhpcy5tYXhsZW5ndGgpIHtcclxuICAgICAgcmV0dXJuIHZhbHVlLnNsaWNlKDAsIE1hdGgubWF4KDAsIHRoaXMubWF4bGVuZ3RoKSk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb25maWd1cmVUZXh0Q2FzZSgpIHtcclxuICAgIGNvbnN0IGlucHV0RWxlbWVudCA9IHRoaXMuc2lyaW9JbnB1dC5zaXJpb0lucHV0Py5uYXRpdmVFbGVtZW50O1xyXG4gICAgaWYgKGlucHV0RWxlbWVudCAmJiAodGhpcy50ZXh0Y2FzZSA9PT0gJ3VwcGVyY2FzZScgfHwgdGhpcy50ZXh0Y2FzZSA9PT0gJ2xvd2VyY2FzZScpKSB7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoaW5wdXRFbGVtZW50LCAndGV4dC10cmFuc2Zvcm0nLCB0aGlzLnRleHRjYXNlKTtcclxuXHJcbiAgICAgIGlucHV0RWxlbWVudC5vbmlucHV0ID0gKGV2ZW50OiBFdmVudCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGlucHV0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XHJcbiAgICAgICAgY29uc3QgdmFsdWUgPSBpbnB1dC52YWx1ZTtcclxuXHJcbiAgICAgICAgdmFyIG5ld1ZhbHVlID0gdGhpcy5jb2VyY2VWYWx1ZSh2YWx1ZSk7XHJcblxyXG4gICAgICAgIGlmIChuZXdWYWx1ZSAhPSB2YWx1ZSkge1xyXG4gICAgICAgICAgdGhpcy5yZXBsYWNlSW5wdXRWYWx1ZShpbnB1dCwgbmV3VmFsdWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb25maWd1cmVNYXhMZW5ndGgoKSB7XHJcbiAgICBjb25zdCBpbnB1dEVsZW1lbnQgPSB0aGlzLnNpcmlvSW5wdXQuc2lyaW9JbnB1dD8ubmF0aXZlRWxlbWVudDtcclxuXHJcbiAgICBpZiAoaW5wdXRFbGVtZW50KSB7XHJcbiAgICAgIGlmICh0aGlzLm1heGxlbmd0aCA9PSBudWxsKSB7XHJcbiAgICAgICAgaW5wdXRFbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgnbWF4bGVuZ3RoJyk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaW5wdXRFbGVtZW50Lm1heExlbmd0aCA9IHRoaXMubWF4bGVuZ3RoO1xyXG4gICAgICB9XHJcbiAgICB9ICAgIFxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZXBsYWNlSW5wdXRWYWx1ZShpbnB1dDogSFRNTElucHV0RWxlbWVudCwgdmFsdWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgY29uc3Qgc3RhcnQgPSBpbnB1dC5zZWxlY3Rpb25TdGFydCB8fCAwO1xyXG4gICAgY29uc3QgZW5kID0gaW5wdXQuc2VsZWN0aW9uRW5kIHx8IDA7XHJcblxyXG4gICAgaW5wdXQudmFsdWUgPSB2YWx1ZTtcclxuXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgaW5wdXQuc2V0U2VsZWN0aW9uUmFuZ2Uoc3RhcnQsIGVuZCk7XHJcbiAgICB9LCAwKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==