qms-angular 2.0.11 → 2.0.12

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.
@@ -125,7 +125,6 @@ export class QMSNavDrawerComponent {
125
125
  this.scrollIntoNode$.next(this.activeNode);
126
126
  }
127
127
  onExpandNode(node) {
128
- this.treeControl.toggle(node);
129
128
  this.openNodes = [];
130
129
  if (this.treeControl.isExpanded(node)) {
131
130
  this.treeControl.expand(node);
@@ -212,4 +211,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
212
211
  }], addLocationEvent: [{
213
212
  type: Output
214
213
  }] } });
215
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicW1zLW5hdi1kcmF3ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcW1zLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL3Ftcy1uYXYtZHJhd2VyL3Ftcy1uYXYtZHJhd2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Ftcy1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9xbXMtbmF2LWRyYXdlci9xbXMtbmF2LWRyYXdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLHVCQUF1QixFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBa0UsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNsTSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNqRixPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7QUFVM0MsTUFBTSxPQUFPLHFCQUFxQjtJQTBCaEMsWUFBbUIsbUJBQXlDLEVBQVUsS0FBd0IsRUFBVSxlQUFnQztRQUFySCx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXNCO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFBVSxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUF4Qi9ILG9CQUFlLEdBQUcsSUFBSSxlQUFlLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDM0Qsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBQzNCLGFBQVEsR0FBNkIsRUFBRSxDQUFDO1FBQ3hDLGNBQVMsR0FBYSxFQUFFLENBQUM7UUFJeEIsb0JBQWUsR0FB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TSxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUNwRixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO2dCQUN2RSxJQUFJLE1BQU0sRUFBRSxDQUFDO29CQUNYLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM3QixDQUFDO1lBRUgsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbkIsQ0FBQztRQUVILENBQUM7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7K0dBek5VLHFCQUFxQjttR0FBckIscUJBQXFCLHdYQ2RsQywrOElBeUZXOzs0RkQzRUUscUJBQXFCO2tCQVBqQyxTQUFTOytCQUNFLGdCQUFnQixtQkFHVCx1QkFBdUIsQ0FBQyxNQUFNO3VKQU90QyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBRUksZUFBZTtzQkFBeEIsTUFBTTtnQkFDRyxnQkFBZ0I7c0JBQXpCLE1BQU07Z0JBQ0csbUJBQW1CO3NCQUE1QixNQUFNO2dCQUNHLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZsYXRUcmVlQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90cmVlJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIEl0ZXJhYmxlQ2hhbmdlcywgSXRlcmFibGVEaWZmZXJzLCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0VHJlZUZsYXREYXRhU291cmNlLCBNYXRUcmVlRmxhdHRlbmVyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdHJlZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEZsYXROb2RlTmF2RHJhd2VyLCBUcmVlTm9kZU5hdkRyYXdlciB9IGZyb20gJy4vbW9kZWxzL3Ftcy1uYXYtZHJhd2VyLm1vZGVsJztcclxuaW1wb3J0IHsgUU1TVHJlZUdsb2JhbFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9xbXMtdHJlZS1nbG9iYWwuc2VydmljZSc7XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAncW1zLW5hdi1kcmF3ZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9xbXMtbmF2LWRyYXdlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcW1zLW5hdi1kcmF3ZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIFFNU05hdkRyYXdlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG5cclxuICByZWFkb25seSBzY3JvbGxJbnRvTm9kZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xyXG4gIG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gIEBJbnB1dCgpIHRyZWVEYXRhOiBBcnJheTxUcmVlTm9kZU5hdkRyYXdlcj4gPSBbXTtcclxuICBASW5wdXQoKSBvcGVuTm9kZXM6IHN0cmluZ1tdID0gW107XHJcbiAgQElucHV0KCkgZmF2b3JpdGVBY3Rpb246IGFueTtcclxuICBASW5wdXQoKSBhZGRMb2NhdGlvbkFjdGlvbjogYW55O1xyXG5cclxuICBAT3V0cHV0KCkgbm9kZUV4cGFuZEV2ZW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgb25DbGlja05vZGVFdmVudDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIHVwZGF0ZUZhdm9yaXRlRXZlbnQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBhZGRMb2NhdGlvbkV2ZW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcblxyXG4gIHRyZWVDb250cm9sID0gbmV3IEZsYXRUcmVlQ29udHJvbDxGbGF0Tm9kZU5hdkRyYXdlcj4obm9kZSA9PiBub2RlLmxldmVsLCBub2RlID0+IG5vZGUuZXhwYW5kYWJsZSk7XHJcbiAgdHJlZUZsYXR0ZW5lciA9IG5ldyBNYXRUcmVlRmxhdHRlbmVyKHRoaXMuX3RyYW5zZm9ybWVyLCBub2RlID0+IG5vZGUubGV2ZWwsIG5vZGUgPT4gbm9kZS5leHBhbmRhYmxlLCBub2RlID0+IG5vZGUuY2hpbGRyZW4pO1xyXG4gIGRhdGFTb3VyY2UgPSBuZXcgTWF0VHJlZUZsYXREYXRhU291cmNlKHRoaXMudHJlZUNvbnRyb2wsIHRoaXMudHJlZUZsYXR0ZW5lcik7XHJcbiAgZXhwYW5kaW5nTm9kZXM6IEZsYXROb2RlTmF2RHJhd2VyW10gPSBbXTtcclxuICBhY3RpdmVOb2RlOiBzdHJpbmc7XHJcbiAgZ3VpZEhlbHBlciA9IHtcclxuICAgIGVtcHR5OiAnMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAwJ1xyXG4gIH07XHJcblxyXG4gIGl0ZXJhYmxlRGlmZmVyO1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcW1zTmF2RHJhd2VyU2VydmljZTogUU1TVHJlZUdsb2JhbFNlcnZpY2UsIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLCBwcml2YXRlIGl0ZXJhYmxlRGlmZmVyczogSXRlcmFibGVEaWZmZXJzKSB7XHJcbiAgICB0aGlzLml0ZXJhYmxlRGlmZmVyID0gaXRlcmFibGVEaWZmZXJzLmZpbmQoW10pLmNyZWF0ZShudWxsKTtcclxuICB9XHJcblxyXG4gIF90cmFuc2Zvcm1lcihub2RlOiBUcmVlTm9kZU5hdkRyYXdlciwgbGV2ZWw6IG51bWJlcikge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgZXhwYW5kYWJsZTogKCEhbm9kZS5jaGlsZHJlbiAmJiBub2RlLmNoaWxkcmVuLmxlbmd0aCA+IDApIHx8ICghIW5vZGUuY2hpbGRDb3VudCksXHJcbiAgICAgIG5hbWU6IG5vZGUubmFtZSxcclxuICAgICAgbGV2ZWwsXHJcbiAgICAgIGlkOiBub2RlLmlkLFxyXG4gICAgICBwYXJlbnRJZDogbm9kZS5wYXJlbnRJZCxcclxuICAgICAgaXRlbUljb246IG5vZGUuaXRlbUljb24sXHJcbiAgICAgIGl0ZW1NYXRJY29uOiBub2RlLml0ZW1NYXRJY29uLFxyXG4gICAgICBpdGVtSWNvblN2Zzogbm9kZS5pdGVtSWNvblN2ZyxcclxuICAgICAgaXNGaWxlOiBub2RlLmlzRmlsZSxcclxuICAgICAgbWFya2VkR2V0Q2hpbGRyZW46IG5vZGUubWFya2VkR2V0Q2hpbGRyZW4sXHJcbiAgICAgIGlzRmF2b3JpdGU6IG5vZGUuaXNGYXZvcml0ZVxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIGhhc0NoaWxkID0gKF86IG51bWJlciwgbm9kZTogRmxhdE5vZGVOYXZEcmF3ZXIpID0+IG5vZGUuZXhwYW5kYWJsZTtcclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG5cclxuICAgIGlmIChjaGFuZ2VzLnRyZWVEYXRhICYmIEpTT04uc3RyaW5naWZ5KGNoYW5nZXMudHJlZURhdGEuY3VycmVudFZhbHVlKSAhPT0gSlNPTi5zdHJpbmdpZnkoY2hhbmdlcy50cmVlRGF0YS5wcmV2aW91c1ZhbHVlKSkge1xyXG4gICAgICB0aGlzLmRhdGFTb3VyY2UuZGF0YSA9IHRoaXMudHJlZURhdGE7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNoYW5nZXMub3Blbk5vZGVzICYmIEpTT04uc3RyaW5naWZ5KGNoYW5nZXMub3Blbk5vZGVzLmN1cnJlbnRWYWx1ZSkgIT09IEpTT04uc3RyaW5naWZ5KGNoYW5nZXMub3Blbk5vZGVzLnByZXZpb3VzVmFsdWUpKSB7XHJcbiAgICAgIHRoaXMuZmluZEFuZEV4cGFuZE5vZGVzKCk7XHJcbiAgICAgIHRoaXMuX2FjdGl2ZU5vZGUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5xbXNOYXZEcmF3ZXJTZXJ2aWNlLmdldEl0ZW1zQ2hpbGRyZW4kLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgIGlmIChyZXMubGVuZ3RoKSB7XHJcblxyXG4gICAgICAgIGxldCBuZXdOb2Rlc0NoaWxkcmVuID0gW107XHJcblxyXG4gICAgICAgIHJlcy5mb3JFYWNoKHggPT4ge1xyXG4gICAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLnRyZWVEYXRhLmZpbmRJbmRleChcclxuICAgICAgICAgICAgaXRlbSA9PiBpdGVtLmlkID09PSB4LmlkICYmIGl0ZW0ucGFyZW50SWQgPT09IHgucGFyZW50SWQpO1xyXG4gICAgICAgICAgaWYgKGluZGV4IDwgMCkge1xyXG4gICAgICAgICAgICBuZXdOb2Rlc0NoaWxkcmVuLnB1c2goeCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIC8vIEFkZCBjaGlsZHJlbiB0byB0cmVlRGF0YVxyXG4gICAgICAgIGlmIChuZXdOb2Rlc0NoaWxkcmVuLmxlbmd0aCkge1xyXG4gICAgICAgICAgdGhpcy50cmVlRGF0YSA9IFsuLi50aGlzLnRyZWVEYXRhLCAuLi5uZXdOb2Rlc0NoaWxkcmVuXTtcclxuICAgICAgICAgIHRoaXMuZGF0YVNvdXJjZS5kYXRhID0gdGhpcy5jb252ZXJ0VHJlZURhdGEodGhpcy50cmVlRGF0YSk7XHJcbiAgICAgICAgICB0aGlzLmZpbmRBbmRFeHBhbmROb2Rlcyh0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5leHBhbmRpbmdOb2Rlcy5mb3JFYWNoKG5vZGUgPT4ge1xyXG4gICAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLnRyZWVDb250cm9sLmRhdGFOb2Rlcy5maW5kSW5kZXgoeCA9PiB4LnBhcmVudElkID09PSBub2RlLnBhcmVudElkICYmIHguaWQgPT09IG5vZGUuaWQpO1xyXG4gICAgICAgICAgaWYgKGluZGV4ID49IDApIHtcclxuICAgICAgICAgICAgdGhpcy50cmVlQ29udHJvbC5leHBhbmQodGhpcy50cmVlQ29udHJvbC5kYXRhTm9kZXNbaW5kZXhdKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuXHJcbiAgICB0aGlzLnNjcm9sbEludG9Ob2RlJC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICBpZiAocmVzKSB7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLm1hdC10cmVlLW5vZGUuYWN0aXZlJyk7XHJcbiAgICAgICAgICBpZiAoZWxlbWVudCkge1xyXG4gICAgICAgICAgICBlbGVtZW50LnNjcm9sbEludG9WaWV3KHsgYmVoYXZpb3I6ICdzbW9vdGgnIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sIDIwMCk7XHJcblxyXG4gICAgICB9XHJcbiAgICB9KVxyXG5cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2FjdGl2ZU5vZGUoKSB7XHJcbiAgICBjb25zdCBjdXJyTm9kZSA9IHRoaXMub3Blbk5vZGVzW3RoaXMub3Blbk5vZGVzLmxlbmd0aCAtIDFdO1xyXG4gICAgY29uc3QgaWR4UGFyZW50ID0gdGhpcy5vcGVuTm9kZXMubGVuZ3RoID49IDIgPyB0aGlzLm9wZW5Ob2Rlcy5sZW5ndGggLSAyIDogJyc7XHJcbiAgICBjb25zdCBwYXJlbnROb2RlID0gaWR4UGFyZW50ICE9PSAnJyA/IHRoaXMub3Blbk5vZGVzW2lkeFBhcmVudF0gOiAnJztcclxuICAgIHRoaXMuYWN0aXZlTm9kZSA9IHRoaXMuZ2V0QWN0aXZlTm9kZShjdXJyTm9kZSwgcGFyZW50Tm9kZSk7XHJcbiAgICB0aGlzLnNjcm9sbEludG9Ob2RlJC5uZXh0KHRoaXMuYWN0aXZlTm9kZSk7XHJcbiAgfVxyXG5cclxuICBnZXRBY3RpdmVOb2RlKGlkLCBwYXJlbnRJZCkge1xyXG4gICAgY29uc3QgX2lkID0gaWQgPyBpZCA6ICcnO1xyXG4gICAgY29uc3QgX3BhcmVudElkID0gcGFyZW50SWQgJiYgKHBhcmVudElkICE9PSB0aGlzLmd1aWRIZWxwZXIuZW1wdHkpID8gcGFyZW50SWQgOiAnJztcclxuICAgIHJldHVybiBgJHtfaWR9LSR7X3BhcmVudElkfWA7XHJcbiAgfVxyXG5cclxuICBmaW5kQW5kRXhwYW5kTm9kZXMoZXhwYW5kTmV3Q2hpbGQ6IGJvb2xlYW4gPSBmYWxzZSkge1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnRyZWVDb250cm9sLmRhdGFOb2Rlcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICB0aGlzLm9wZW5Ob2Rlcy5mb3JFYWNoKGVsID0+IHtcclxuICAgICAgICBpZiAodGhpcy50cmVlQ29udHJvbC5kYXRhTm9kZXNbaV0uaWQgPT09IGVsKSB7XHJcbiAgICAgICAgICB0aGlzLmV4cGFuZGluZ05vZGVzLnB1c2godGhpcy50cmVlQ29udHJvbC5kYXRhTm9kZXNbaV0pO1xyXG4gICAgICAgICAgdGhpcy50cmVlQ29udHJvbC5leHBhbmQodGhpcy50cmVlQ29udHJvbC5kYXRhTm9kZXNbaV0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5fYWN0aXZlTm9kZSgpO1xyXG4gICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrTm9kZShub2RlOiBGbGF0Tm9kZU5hdkRyYXdlcikge1xyXG4gICAgdGhpcy5hY3RpdmVOb2RlID0gdGhpcy5nZXRBY3RpdmVOb2RlKG5vZGUuaWQsIG5vZGUucGFyZW50SWQpO1xyXG4gICAgdGhpcy50cmVlQ29udHJvbC5jb2xsYXBzZUFsbCgpO1xyXG5cclxuICAgIHRoaXMub25DbGlja05vZGVFdmVudC5lbWl0KG5vZGUpO1xyXG4gICAgdGhpcy5zY3JvbGxJbnRvTm9kZSQubmV4dCh0aGlzLmFjdGl2ZU5vZGUpO1xyXG4gIH1cclxuXHJcbiAgb25FeHBhbmROb2RlKG5vZGU6IEZsYXROb2RlTmF2RHJhd2VyKSB7XHJcbiAgICB0aGlzLnRyZWVDb250cm9sLnRvZ2dsZShub2RlKTtcclxuXHJcbiAgICB0aGlzLm9wZW5Ob2RlcyA9IFtdO1xyXG4gICAgaWYgKHRoaXMudHJlZUNvbnRyb2wuaXNFeHBhbmRlZChub2RlKSkge1xyXG4gICAgICB0aGlzLnRyZWVDb250cm9sLmV4cGFuZChub2RlKTtcclxuICAgICAgdGhpcy5fYWRkRXhwYW5kaW5nTm9kZShub2RlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudHJlZUNvbnRyb2wuY29sbGFwc2Uobm9kZSk7XHJcbiAgICAgIHRoaXMuX3JlbW92ZUV4cGFuZGluZ05vZGVzKG5vZGUuaWQpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghbm9kZS5tYXJrZWRHZXRDaGlsZHJlbikge1xyXG4gICAgICBub2RlLm1hcmtlZEdldENoaWxkcmVuID0gdHJ1ZTtcclxuICAgICAgdGhpcy50cmVlQ29udHJvbC5kYXRhTm9kZXMuZm9yRWFjaCh4ID0+IHtcclxuICAgICAgICBpZiAoeC5wYXJlbnRJZCA9PT0gbm9kZS5wYXJlbnRJZCAmJiB4LmlkID09PSBub2RlLmlkKSB7XHJcbiAgICAgICAgICB4Lm1hcmtlZEdldENoaWxkcmVuID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICB0aGlzLm5vZGVFeHBhbmRFdmVudC5lbWl0KHsgbm9kZSwgaXNFeHBhbmQ6IHRoaXMudHJlZUNvbnRyb2wuaXNFeHBhbmRlZChub2RlKSB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHVwZGF0ZUZhdm9yaXRlKG5vZGU6IGFueSwgZXZlbnQ6IGFueSkge1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgbm9kZS5pc0Zhdm9yaXRlID0gIW5vZGUuaXNGYXZvcml0ZTtcclxuICAgIHRoaXMudXBkYXRlRmF2b3JpdGVFdmVudC5lbWl0KG5vZGUpO1xyXG4gIH1cclxuXHJcbiAgYWRkTG9jYXRpb24obm9kZTogYW55LCBldmVudDogYW55KSB7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB0aGlzLmFkZExvY2F0aW9uRXZlbnQuZW1pdChub2RlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2FkZEV4cGFuZGluZ05vZGUobm9kZTogRmxhdE5vZGVOYXZEcmF3ZXIpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5leHBhbmRpbmdOb2Rlcy5zb21lKHggPT4geC5pZCA9PT0gbm9kZS5pZCkpIHtcclxuICAgICAgdGhpcy5leHBhbmRpbmdOb2Rlcy5wdXNoKG5vZGUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcmVtb3ZlRXhwYW5kaW5nTm9kZXMobm9kZUlkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuZXhwYW5kaW5nTm9kZXMgPSB0aGlzLmV4cGFuZGluZ05vZGVzLmZpbHRlcih4ID0+IHguaWQgIT09IG5vZGVJZCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMubmdVbnN1YnNjcmliZS5uZXh0KCk7XHJcbiAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIGNvbnZlcnRUcmVlRGF0YShsaXN0KSB7XHJcbiAgICBsZXQgbWFwID0ge30sIG5vZGUsIHJvb3RzID0gW10sIGk7XHJcbiAgICBmb3IgKGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7IGkgKz0gMSkge1xyXG4gICAgICBtYXBbYCR7bGlzdFtpXS5pZH0tJHtsaXN0W2ldLnBhcmVudElkfWBdID0gaSAvLyBpbml0aWFsaXplIHRoZSBtYXBcclxuICAgICAgbGlzdFtpXS5jaGlsZHJlbiA9IFtdOyAvLyBpbml0aWFsaXplIHRoZSBjaGlsZHJlblxyXG4gICAgfVxyXG5cclxuXHJcbiAgICBmb3IgKGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7IGkgKz0gMSkge1xyXG4gICAgICBub2RlID0gbGlzdFtpXTtcclxuICAgICAgY29uc3Qgc3RyS2V5ID0gYCR7bGlzdFtpXS5pZH0tJHtsaXN0W2ldLnBhcmVudElkfWA7XHJcblxyXG4gICAgICBpZiAobm9kZS5wYXJlbnRJZCAmJiAobm9kZS5wYXJlbnRJZCAhPT0gdGhpcy5ndWlkSGVscGVyLmVtcHR5KSAmJiBsaXN0W21hcFtzdHJLZXldXSkge1xyXG4gICAgICAgIGNvbnN0IHBhcmVudCA9IGxpc3QuZmlsdGVyKHggPT4geC5pZCA9PT0gbm9kZS5wYXJlbnRJZCAmJiAheC5pc0ZpbGUpWzBdXHJcbiAgICAgICAgaWYgKHBhcmVudCkge1xyXG4gICAgICAgICAgcGFyZW50LmNoaWxkcmVuLnB1c2gobm9kZSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByb290cy5wdXNoKG5vZGUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiByb290cztcclxuICB9XHJcblxyXG59IiwiPG1hdC10cmVlIGNsYXNzPVwicW1zLW5hdi1kcmF3ZXItY29udGFpbmVyXCIgW2RhdGFTb3VyY2VdPVwiZGF0YVNvdXJjZVwiIFt0cmVlQ29udHJvbF09XCJ0cmVlQ29udHJvbFwiPlxuICA8IS0tIFRoaXMgaXMgdGhlIHRyZWUgbm9kZSB0ZW1wbGF0ZSBmb3IgbGVhZiBub2RlcyAtLT5cbiAgPG1hdC10cmVlLW5vZGUgKm1hdFRyZWVOb2RlRGVmPVwibGV0IG5vZGVcIiBtYXRUcmVlTm9kZVRvZ2dsZSBtYXRUcmVlTm9kZVBhZGRpbmcgW25nQ2xhc3NdPVwie1xuICAgICAgYWN0aXZlOiBhY3RpdmVOb2RlID09PSBnZXRBY3RpdmVOb2RlKG5vZGUuaWQsIG5vZGUucGFyZW50SWQpXG4gICAgfVwiPlxuXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgdy0xMDBcIj5cbiAgICAgIDxidXR0b24gYXJpYS1sYWJlbD1cImRpc2FibGVkXCIgbWF0LWljb24tYnV0dG9uIGRpc2FibGVkPjwvYnV0dG9uPlxuICAgICAgPGltZyAqbmdJZj1cIm5vZGUuaXRlbUljb25TdmdcIiBjbGFzcz1cIm1hdGVyaWFsLWljb25zIHR5cGUtaWNvbiBjdXJzb3ItcG9pbnRlclwiIFtzcmNdPVwibm9kZS5pdGVtSWNvblN2Z1wiXG4gICAgICAgIChjbGljayk9XCJvbkNsaWNrTm9kZShub2RlKVwiIGFsdD1cIkltYWdlIGljb25cIiAvPlxuICAgICAgPHNwYW4gKm5nSWY9XCJub2RlLml0ZW1JY29uXCIgW2NsYXNzXT1cIm5vZGUuaXRlbUljb25cIiBbcW1zVHJhbnNmb3JtSWNvbl09XCJub2RlLml0ZW1JY29uXCJcbiAgICAgICAgY2xhc3M9XCJtYXRlcmlhbC1pY29ucy1vdXRsaW5lZCB0eXBlLWljb24gY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25DbGlja05vZGUobm9kZSlcIj48L3NwYW4+XG4gICAgICA8c3BhbiAqbmdJZj1cIm5vZGUuaXRlbU1hdEljb25cIiBjbGFzcz1cIm1hdGVyaWFsLWljb25zLW91dGxpbmVkIHR5cGUtaWNvbiBjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgIChjbGljayk9XCJvbkNsaWNrTm9kZShub2RlKVwiPnt7XG4gICAgICAgIG5vZGUuaXRlbU1hdEljb24gfX1cbiAgICAgIDwvc3Bhbj5cblxuICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LW5hbWUgY3Vyc29yLXBvaW50ZXIgbXgtMlwiIChjbGljayk9XCJvbkNsaWNrTm9kZShub2RlKVwiPnt7IG5vZGUubmFtZSB9fTwvc3Bhbj5cblxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZhdm9yaXRlQWN0aW9uXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4tYWN0aW9uXCIgYXJpYS1sYWJlbD1cIkFkZCBvciByZW1vdmUgZmF2b3JpdGVcIiAoY2xpY2spPVwidXBkYXRlRmF2b3JpdGUobm9kZSwgJGV2ZW50KVwiXG4gICAgICAgICAgcW1zLWJ0bi1pY29uIGNvbG9yPVwibGlnaHRcIlxuICAgICAgICAgIHFtcy10b29sLXRpcD1cInt7bm9kZS5pc0Zhdm9yaXRlID8gZmF2b3JpdGVBY3Rpb24udG9vbHRpcFJlbW92ZUZhdm9yaXRlIDogZmF2b3JpdGVBY3Rpb24udG9vbHRpcEFkZEZhdm9yaXRlfX1cIlxuICAgICAgICAgIG1vZGU9XCJkYXJrXCI+XG4gICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMtb3V0bGluZWRcIiBbbmdDbGFzc109XCJ7J3ByaW1hcnknOiBub2RlLmlzRmF2b3JpdGV9XCI+XG4gICAgICAgICAgICB7e25vZGUuaXNGYXZvcml0ZSA/ICdzdGFyJyA6ICdzdGFyX291dGxpbmUnIH19XG4gICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFkZExvY2F0aW9uQWN0aW9uXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4tYWN0aW9uXCIgYXJpYS1sYWJlbD1cIkFkZCBsb2NhdGlvblwiIChjbGljayk9XCJhZGRMb2NhdGlvbihub2RlLCAkZXZlbnQpXCIgcW1zLWJ0bi1pY29uXG4gICAgICAgICAgY29sb3I9XCJsaWdodFwiIHFtcy10b29sLXRpcD1cInt7YWRkTG9jYXRpb25BY3Rpb24udG9vbHRpcEFkZExvY2F0aW9ufX1cIiBtb2RlPVwiZGFya1wiPlxuICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdGVyaWFsLWljb25zLW91dGxpbmVkXCI+XG4gICAgICAgICAgICBhZGRcbiAgICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPC9kaXY+XG5cblxuICA8L21hdC10cmVlLW5vZGU+XG4gIDwhLS0gVGhpcyBpcyB0aGUgdHJlZSBub2RlIHRlbXBsYXRlIGZvciBleHBhbmRhYmxlIG5vZGVzIC0tPlxuICA8bWF0LXRyZWUtbm9kZSAqbWF0VHJlZU5vZGVEZWY9XCJsZXQgbm9kZTsgd2hlbjogaGFzQ2hpbGRcIiBtYXRUcmVlTm9kZVBhZGRpbmcgW25nQ2xhc3NdPVwie1xuICAgICAgJ2V4cGFuZC1ub2RlJzogdHJlZUNvbnRyb2wuaXNFeHBhbmRlZChub2RlKSxcbiAgICAgICdjb2xsYXBzZS1ub2RlJzogIXRyZWVDb250cm9sLmlzRXhwYW5kZWQobm9kZSksXG4gICAgICBhY3RpdmU6IGFjdGl2ZU5vZGUgPT09IGdldEFjdGl2ZU5vZGUobm9kZS5pZCwgbm9kZS5wYXJlbnRJZClcbiAgICB9XCI+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciB3LTEwMFwiPlxuICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gYXJpYS1sYWJlbD1cIlRvZ2dsZSBleHBhbmRcIiAoY2xpY2spPVwib25FeHBhbmROb2RlKG5vZGUpXCIgbWF0VHJlZU5vZGVUb2dnbGU+XG4gICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdC1pY29uLXJ0bC1taXJyb3JcIj5cbiAgICAgICAgICB7eyB0cmVlQ29udHJvbC5pc0V4cGFuZGVkKG5vZGUpID8gXCJleHBhbmRfbW9yZVwiIDogXCJjaGV2cm9uX3JpZ2h0XCIgfX1cbiAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgIDwvYnV0dG9uPlxuXG4gICAgICA8aW1nICpuZ0lmPVwibm9kZS5pdGVtSWNvblN2Z1wiIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMgdHlwZS1pY29uIGN1cnNvci1wb2ludGVyXCIgW3NyY109XCJub2RlLml0ZW1JY29uU3ZnXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uQ2xpY2tOb2RlKG5vZGUpXCIgYWx0PVwiSW1hZ2UgaWNvblwiIC8+XG4gICAgICA8c3BhbiAqbmdJZj1cIm5vZGUuaXRlbUljb25cIiBbY2xhc3NdPVwibm9kZS5pdGVtSWNvblwiIFtxbXNUcmFuc2Zvcm1JY29uXT1cIm5vZGUuaXRlbUljb25cIlxuICAgICAgICBjbGFzcz1cIm1hdGVyaWFsLWljb25zLW91dGxpbmVkIHR5cGUtaWNvbiBjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvbkNsaWNrTm9kZShub2RlKVwiPjwvc3Bhbj5cbiAgICAgIDxzcGFuICpuZ0lmPVwibm9kZS5pdGVtTWF0SWNvblwiIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMtb3V0bGluZWQgdHlwZS1pY29uIGN1cnNvci1wb2ludGVyXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uQ2xpY2tOb2RlKG5vZGUpXCI+e3tcbiAgICAgICAgbm9kZS5pdGVtTWF0SWNvbiB9fVxuICAgICAgPC9zcGFuPlxuXG4gICAgICA8c3BhbiBjbGFzcz1cInRleHQtbmFtZSBjdXJzb3ItcG9pbnRlciBteC0yXCIgKGNsaWNrKT1cIm9uQ2xpY2tOb2RlKG5vZGUpXCI+e3sgbm9kZS5uYW1lIH19PC9zcGFuPlxuXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmF2b3JpdGVBY3Rpb25cIj5cbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0bi1hY3Rpb25cIiBhcmlhLWxhYmVsPVwiQWRkIG9yIHJlbW92ZSBmYXZvcml0ZVwiIChjbGljayk9XCJ1cGRhdGVGYXZvcml0ZShub2RlLCAkZXZlbnQpXCJcbiAgICAgICAgICBxbXMtYnRuLWljb24gY29sb3I9XCJsaWdodFwiXG4gICAgICAgICAgcW1zLXRvb2wtdGlwPVwie3tub2RlLmlzRmF2b3JpdGUgPyBmYXZvcml0ZUFjdGlvbi50b29sdGlwUmVtb3ZlRmF2b3JpdGUgOiBmYXZvcml0ZUFjdGlvbi50b29sdGlwQWRkRmF2b3JpdGV9fVwiXG4gICAgICAgICAgbW9kZT1cImRhcmtcIj5cbiAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJtYXRlcmlhbC1pY29ucy1vdXRsaW5lZFwiIFtuZ0NsYXNzXT1cInsncHJpbWFyeSc6IG5vZGUuaXNGYXZvcml0ZX1cIj5cbiAgICAgICAgICAgIHt7bm9kZS5pc0Zhdm9yaXRlID8gJ3N0YXInIDogJ3N0YXJfb3V0bGluZScgfX1cbiAgICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYWRkTG9jYXRpb25BY3Rpb25cIj5cbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0bi1hY3Rpb25cIiBhcmlhLWxhYmVsPVwiQWRkIGxvY2F0aW9uXCIgKGNsaWNrKT1cImFkZExvY2F0aW9uKG5vZGUsICRldmVudClcIiBxbXMtYnRuLWljb25cbiAgICAgICAgICBjb2xvcj1cImxpZ2h0XCIgcW1zLXRvb2wtdGlwPVwie3thZGRMb2NhdGlvbkFjdGlvbi50b29sdGlwQWRkTG9jYXRpb259fVwiIG1vZGU9XCJkYXJrXCI+XG4gICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMtb3V0bGluZWRcIj5cbiAgICAgICAgICAgIGFkZFxuICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIDwvbWF0LXRyZWUtbm9kZT5cbjwvbWF0LXRyZWU+Il19
214
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicW1zLW5hdi1kcmF3ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcW1zLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL3Ftcy1uYXYtZHJhd2VyL3Ftcy1uYXYtZHJhd2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Ftcy1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9xbXMtbmF2LWRyYXdlci9xbXMtbmF2LWRyYXdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLHVCQUF1QixFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBa0UsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNsTSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNqRixPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7QUFVM0MsTUFBTSxPQUFPLHFCQUFxQjtJQTBCaEMsWUFBbUIsbUJBQXlDLEVBQVUsS0FBd0IsRUFBVSxlQUFnQztRQUFySCx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXNCO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFBVSxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUF4Qi9ILG9CQUFlLEdBQUcsSUFBSSxlQUFlLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDM0Qsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBQzNCLGFBQVEsR0FBNkIsRUFBRSxDQUFDO1FBQ3hDLGNBQVMsR0FBYSxFQUFFLENBQUM7UUFJeEIsb0JBQWUsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN4RCxxQkFBZ0IsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN6RCx3QkFBbUIsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUM1RCxxQkFBZ0IsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUduRSxnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFvQixJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbEcsa0JBQWEsR0FBRyxJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1SCxlQUFVLEdBQUcsSUFBSSxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM3RSxtQkFBYyxHQUF3QixFQUFFLENBQUM7UUFFekMsZUFBVSxHQUFHO1lBQ1gsS0FBSyxFQUFFLHNDQUFzQztTQUM5QyxDQUFDO1FBd0JGLGFBQVEsR0FBRyxDQUFDLENBQVMsRUFBRSxJQUF1QixFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBbkJqRSxJQUFJLENBQUMsY0FBYyxHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxZQUFZLENBQUMsSUFBdUIsRUFBRSxLQUFhO1FBQ2pELE9BQU87WUFDTCxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQ2hGLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLEtBQUs7WUFDTCxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDWCxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDdkIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDN0IsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQ25CLGlCQUFpQixFQUFFLElBQUksQ0FBQyxpQkFBaUI7WUFDekMsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO1NBQzVCLENBQUM7SUFDSixDQUFDO0lBSUQsV0FBVyxDQUFDLE9BQXNCO1FBRWhDLElBQUksT0FBTyxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7WUFDekgsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUN2QyxDQUFDO1FBRUQsSUFBSSxPQUFPLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztZQUM1SCxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDckIsQ0FBQztJQUNILENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLG1CQUFtQixDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDL0YsSUFBSSxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBRWYsSUFBSSxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7Z0JBRTFCLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7b0JBQ2QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQ25DLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsRUFBRSxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO29CQUM1RCxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQzt3QkFDZCxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQzNCLENBQUM7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7Z0JBRUgsMkJBQTJCO2dCQUMzQixJQUFJLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxDQUFDO29CQUM1QixJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQztvQkFDeEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7b0JBQzNELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDaEMsQ0FBQztnQkFDRCxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtvQkFDakMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsS0FBSyxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUMxRyxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQzt3QkFDZixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO29CQUM3RCxDQUFDO2dCQUNILENBQUMsQ0FBQyxDQUFDO1lBRUwsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBR0gsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNyQyxJQUFJLEdBQUcsRUFBRSxDQUFDO2dCQUNSLFVBQVUsQ0FBQyxHQUFHLEVBQUU7b0JBQ2QsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO29CQUNoRSxJQUFJLE9BQU8sRUFBRSxDQUFDO3dCQUNaLE9BQU8sQ0FBQyxjQUFjLENBQUMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztvQkFDakQsQ0FBQztnQkFDSCxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFFVixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFFSixDQUFDO0lBRU8sV0FBVztRQUNqQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzNELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDOUUsTUFBTSxVQUFVLEdBQUcsU0FBUyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3JFLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxhQUFhLENBQUMsRUFBRSxFQUFFLFFBQVE7UUFDeEIsTUFBTSxHQUFHLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUN6QixNQUFNLFNBQVMsR0FBRyxRQUFRLElBQUksQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDbkYsT0FBTyxHQUFHLEdBQUcsSUFBSSxTQUFTLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRUQsa0JBQWtCLENBQUMsaUJBQTBCLEtBQUs7UUFDaEQsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzNELElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxFQUFFO2dCQUMxQixJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztvQkFDNUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDeEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDekQsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxXQUFXLENBQUMsSUFBdUI7UUFDakMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzdELElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFL0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUF1QjtRQUNsQyxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNwQixJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDdEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDOUIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9CLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDaEMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN0QyxDQUFDO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7WUFDOUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUNyQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztvQkFDckQsQ0FBQyxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztnQkFDN0IsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNuRixDQUFDO0lBQ0gsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUFTLEVBQUUsS0FBVTtRQUNsQyxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQ25DLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFTLEVBQUUsS0FBVTtRQUMvQixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVPLGlCQUFpQixDQUFDLElBQXVCO1FBQy9DLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDckQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakMsQ0FBQztJQUNILENBQUM7SUFFTyxxQkFBcUIsQ0FBQyxNQUFjO1FBQzFDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLE1BQU0sQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxlQUFlLENBQUMsSUFBSTtRQUNsQixJQUFJLEdBQUcsR0FBRyxFQUFFLEVBQUUsSUFBSSxFQUFFLEtBQUssR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2xDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDcEMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUEsQ0FBQyxxQkFBcUI7WUFDbEUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUMsQ0FBQywwQkFBMEI7UUFDbkQsQ0FBQztRQUdELEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDcEMsSUFBSSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNmLE1BQU0sTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7WUFFbkQsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsS0FBSyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUNwRixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO2dCQUN2RSxJQUFJLE1BQU0sRUFBRSxDQUFDO29CQUNYLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM3QixDQUFDO1lBRUgsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbkIsQ0FBQztRQUVILENBQUM7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7K0dBdk5VLHFCQUFxQjttR0FBckIscUJBQXFCLHdYQ2RsQywrOElBeUZXOzs0RkQzRUUscUJBQXFCO2tCQVBqQyxTQUFTOytCQUNFLGdCQUFnQixtQkFHVCx1QkFBdUIsQ0FBQyxNQUFNO3VKQU90QyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBRUksZUFBZTtzQkFBeEIsTUFBTTtnQkFDRyxnQkFBZ0I7c0JBQXpCLE1BQU07Z0JBQ0csbUJBQW1CO3NCQUE1QixNQUFNO2dCQUNHLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZsYXRUcmVlQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90cmVlJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIEl0ZXJhYmxlQ2hhbmdlcywgSXRlcmFibGVEaWZmZXJzLCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0VHJlZUZsYXREYXRhU291cmNlLCBNYXRUcmVlRmxhdHRlbmVyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdHJlZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEZsYXROb2RlTmF2RHJhd2VyLCBUcmVlTm9kZU5hdkRyYXdlciB9IGZyb20gJy4vbW9kZWxzL3Ftcy1uYXYtZHJhd2VyLm1vZGVsJztcclxuaW1wb3J0IHsgUU1TVHJlZUdsb2JhbFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9xbXMtdHJlZS1nbG9iYWwuc2VydmljZSc7XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAncW1zLW5hdi1kcmF3ZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9xbXMtbmF2LWRyYXdlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcW1zLW5hdi1kcmF3ZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIFFNU05hdkRyYXdlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG5cclxuICByZWFkb25seSBzY3JvbGxJbnRvTm9kZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xyXG4gIG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gIEBJbnB1dCgpIHRyZWVEYXRhOiBBcnJheTxUcmVlTm9kZU5hdkRyYXdlcj4gPSBbXTtcclxuICBASW5wdXQoKSBvcGVuTm9kZXM6IHN0cmluZ1tdID0gW107XHJcbiAgQElucHV0KCkgZmF2b3JpdGVBY3Rpb246IGFueTtcclxuICBASW5wdXQoKSBhZGRMb2NhdGlvbkFjdGlvbjogYW55O1xyXG5cclxuICBAT3V0cHV0KCkgbm9kZUV4cGFuZEV2ZW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgb25DbGlja05vZGVFdmVudDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIHVwZGF0ZUZhdm9yaXRlRXZlbnQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBhZGRMb2NhdGlvbkV2ZW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcblxyXG4gIHRyZWVDb250cm9sID0gbmV3IEZsYXRUcmVlQ29udHJvbDxGbGF0Tm9kZU5hdkRyYXdlcj4obm9kZSA9PiBub2RlLmxldmVsLCBub2RlID0+IG5vZGUuZXhwYW5kYWJsZSk7XHJcbiAgdHJlZUZsYXR0ZW5lciA9IG5ldyBNYXRUcmVlRmxhdHRlbmVyKHRoaXMuX3RyYW5zZm9ybWVyLCBub2RlID0+IG5vZGUubGV2ZWwsIG5vZGUgPT4gbm9kZS5leHBhbmRhYmxlLCBub2RlID0+IG5vZGUuY2hpbGRyZW4pO1xyXG4gIGRhdGFTb3VyY2UgPSBuZXcgTWF0VHJlZUZsYXREYXRhU291cmNlKHRoaXMudHJlZUNvbnRyb2wsIHRoaXMudHJlZUZsYXR0ZW5lcik7XHJcbiAgZXhwYW5kaW5nTm9kZXM6IEZsYXROb2RlTmF2RHJhd2VyW10gPSBbXTtcclxuICBhY3RpdmVOb2RlOiBzdHJpbmc7XHJcbiAgZ3VpZEhlbHBlciA9IHtcclxuICAgIGVtcHR5OiAnMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAwJ1xyXG4gIH07XHJcblxyXG4gIGl0ZXJhYmxlRGlmZmVyO1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcW1zTmF2RHJhd2VyU2VydmljZTogUU1TVHJlZUdsb2JhbFNlcnZpY2UsIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLCBwcml2YXRlIGl0ZXJhYmxlRGlmZmVyczogSXRlcmFibGVEaWZmZXJzKSB7XHJcbiAgICB0aGlzLml0ZXJhYmxlRGlmZmVyID0gaXRlcmFibGVEaWZmZXJzLmZpbmQoW10pLmNyZWF0ZShudWxsKTtcclxuICB9XHJcblxyXG4gIF90cmFuc2Zvcm1lcihub2RlOiBUcmVlTm9kZU5hdkRyYXdlciwgbGV2ZWw6IG51bWJlcikge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgZXhwYW5kYWJsZTogKCEhbm9kZS5jaGlsZHJlbiAmJiBub2RlLmNoaWxkcmVuLmxlbmd0aCA+IDApIHx8ICghIW5vZGUuY2hpbGRDb3VudCksXHJcbiAgICAgIG5hbWU6IG5vZGUubmFtZSxcclxuICAgICAgbGV2ZWwsXHJcbiAgICAgIGlkOiBub2RlLmlkLFxyXG4gICAgICBwYXJlbnRJZDogbm9kZS5wYXJlbnRJZCxcclxuICAgICAgaXRlbUljb246IG5vZGUuaXRlbUljb24sXHJcbiAgICAgIGl0ZW1NYXRJY29uOiBub2RlLml0ZW1NYXRJY29uLFxyXG4gICAgICBpdGVtSWNvblN2Zzogbm9kZS5pdGVtSWNvblN2ZyxcclxuICAgICAgaXNGaWxlOiBub2RlLmlzRmlsZSxcclxuICAgICAgbWFya2VkR2V0Q2hpbGRyZW46IG5vZGUubWFya2VkR2V0Q2hpbGRyZW4sXHJcbiAgICAgIGlzRmF2b3JpdGU6IG5vZGUuaXNGYXZvcml0ZVxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIGhhc0NoaWxkID0gKF86IG51bWJlciwgbm9kZTogRmxhdE5vZGVOYXZEcmF3ZXIpID0+IG5vZGUuZXhwYW5kYWJsZTtcclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG5cclxuICAgIGlmIChjaGFuZ2VzLnRyZWVEYXRhICYmIEpTT04uc3RyaW5naWZ5KGNoYW5nZXMudHJlZURhdGEuY3VycmVudFZhbHVlKSAhPT0gSlNPTi5zdHJpbmdpZnkoY2hhbmdlcy50cmVlRGF0YS5wcmV2aW91c1ZhbHVlKSkge1xyXG4gICAgICB0aGlzLmRhdGFTb3VyY2UuZGF0YSA9IHRoaXMudHJlZURhdGE7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNoYW5nZXMub3Blbk5vZGVzICYmIEpTT04uc3RyaW5naWZ5KGNoYW5nZXMub3Blbk5vZGVzLmN1cnJlbnRWYWx1ZSkgIT09IEpTT04uc3RyaW5naWZ5KGNoYW5nZXMub3Blbk5vZGVzLnByZXZpb3VzVmFsdWUpKSB7XHJcbiAgICAgIHRoaXMuZmluZEFuZEV4cGFuZE5vZGVzKCk7XHJcbiAgICAgIHRoaXMuX2FjdGl2ZU5vZGUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5xbXNOYXZEcmF3ZXJTZXJ2aWNlLmdldEl0ZW1zQ2hpbGRyZW4kLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgIGlmIChyZXMubGVuZ3RoKSB7XHJcblxyXG4gICAgICAgIGxldCBuZXdOb2Rlc0NoaWxkcmVuID0gW107XHJcblxyXG4gICAgICAgIHJlcy5mb3JFYWNoKHggPT4ge1xyXG4gICAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLnRyZWVEYXRhLmZpbmRJbmRleChcclxuICAgICAgICAgICAgaXRlbSA9PiBpdGVtLmlkID09PSB4LmlkICYmIGl0ZW0ucGFyZW50SWQgPT09IHgucGFyZW50SWQpO1xyXG4gICAgICAgICAgaWYgKGluZGV4IDwgMCkge1xyXG4gICAgICAgICAgICBuZXdOb2Rlc0NoaWxkcmVuLnB1c2goeCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIC8vIEFkZCBjaGlsZHJlbiB0byB0cmVlRGF0YVxyXG4gICAgICAgIGlmIChuZXdOb2Rlc0NoaWxkcmVuLmxlbmd0aCkge1xyXG4gICAgICAgICAgdGhpcy50cmVlRGF0YSA9IFsuLi50aGlzLnRyZWVEYXRhLCAuLi5uZXdOb2Rlc0NoaWxkcmVuXTtcclxuICAgICAgICAgIHRoaXMuZGF0YVNvdXJjZS5kYXRhID0gdGhpcy5jb252ZXJ0VHJlZURhdGEodGhpcy50cmVlRGF0YSk7XHJcbiAgICAgICAgICB0aGlzLmZpbmRBbmRFeHBhbmROb2Rlcyh0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5leHBhbmRpbmdOb2Rlcy5mb3JFYWNoKG5vZGUgPT4ge1xyXG4gICAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLnRyZWVDb250cm9sLmRhdGFOb2Rlcy5maW5kSW5kZXgoeCA9PiB4LnBhcmVudElkID09PSBub2RlLnBhcmVudElkICYmIHguaWQgPT09IG5vZGUuaWQpO1xyXG4gICAgICAgICAgaWYgKGluZGV4ID49IDApIHtcclxuICAgICAgICAgICAgdGhpcy50cmVlQ29udHJvbC5leHBhbmQodGhpcy50cmVlQ29udHJvbC5kYXRhTm9kZXNbaW5kZXhdKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuXHJcbiAgICB0aGlzLnNjcm9sbEludG9Ob2RlJC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICBpZiAocmVzKSB7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLm1hdC10cmVlLW5vZGUuYWN0aXZlJyk7XHJcbiAgICAgICAgICBpZiAoZWxlbWVudCkge1xyXG4gICAgICAgICAgICBlbGVtZW50LnNjcm9sbEludG9WaWV3KHsgYmVoYXZpb3I6ICdzbW9vdGgnIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sIDIwMCk7XHJcblxyXG4gICAgICB9XHJcbiAgICB9KVxyXG5cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2FjdGl2ZU5vZGUoKSB7XHJcbiAgICBjb25zdCBjdXJyTm9kZSA9IHRoaXMub3Blbk5vZGVzW3RoaXMub3Blbk5vZGVzLmxlbmd0aCAtIDFdO1xyXG4gICAgY29uc3QgaWR4UGFyZW50ID0gdGhpcy5vcGVuTm9kZXMubGVuZ3RoID49IDIgPyB0aGlzLm9wZW5Ob2Rlcy5sZW5ndGggLSAyIDogJyc7XHJcbiAgICBjb25zdCBwYXJlbnROb2RlID0gaWR4UGFyZW50ICE9PSAnJyA/IHRoaXMub3Blbk5vZGVzW2lkeFBhcmVudF0gOiAnJztcclxuICAgIHRoaXMuYWN0aXZlTm9kZSA9IHRoaXMuZ2V0QWN0aXZlTm9kZShjdXJyTm9kZSwgcGFyZW50Tm9kZSk7XHJcbiAgICB0aGlzLnNjcm9sbEludG9Ob2RlJC5uZXh0KHRoaXMuYWN0aXZlTm9kZSk7XHJcbiAgfVxyXG5cclxuICBnZXRBY3RpdmVOb2RlKGlkLCBwYXJlbnRJZCkge1xyXG4gICAgY29uc3QgX2lkID0gaWQgPyBpZCA6ICcnO1xyXG4gICAgY29uc3QgX3BhcmVudElkID0gcGFyZW50SWQgJiYgKHBhcmVudElkICE9PSB0aGlzLmd1aWRIZWxwZXIuZW1wdHkpID8gcGFyZW50SWQgOiAnJztcclxuICAgIHJldHVybiBgJHtfaWR9LSR7X3BhcmVudElkfWA7XHJcbiAgfVxyXG5cclxuICBmaW5kQW5kRXhwYW5kTm9kZXMoZXhwYW5kTmV3Q2hpbGQ6IGJvb2xlYW4gPSBmYWxzZSkge1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnRyZWVDb250cm9sLmRhdGFOb2Rlcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICB0aGlzLm9wZW5Ob2Rlcy5mb3JFYWNoKGVsID0+IHtcclxuICAgICAgICBpZiAodGhpcy50cmVlQ29udHJvbC5kYXRhTm9kZXNbaV0uaWQgPT09IGVsKSB7XHJcbiAgICAgICAgICB0aGlzLmV4cGFuZGluZ05vZGVzLnB1c2godGhpcy50cmVlQ29udHJvbC5kYXRhTm9kZXNbaV0pO1xyXG4gICAgICAgICAgdGhpcy50cmVlQ29udHJvbC5leHBhbmQodGhpcy50cmVlQ29udHJvbC5kYXRhTm9kZXNbaV0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5fYWN0aXZlTm9kZSgpO1xyXG4gICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrTm9kZShub2RlOiBGbGF0Tm9kZU5hdkRyYXdlcikge1xyXG4gICAgdGhpcy5hY3RpdmVOb2RlID0gdGhpcy5nZXRBY3RpdmVOb2RlKG5vZGUuaWQsIG5vZGUucGFyZW50SWQpO1xyXG4gICAgdGhpcy50cmVlQ29udHJvbC5jb2xsYXBzZUFsbCgpO1xyXG5cclxuICAgIHRoaXMub25DbGlja05vZGVFdmVudC5lbWl0KG5vZGUpO1xyXG4gICAgdGhpcy5zY3JvbGxJbnRvTm9kZSQubmV4dCh0aGlzLmFjdGl2ZU5vZGUpO1xyXG4gIH1cclxuXHJcbiAgb25FeHBhbmROb2RlKG5vZGU6IEZsYXROb2RlTmF2RHJhd2VyKSB7XHJcbiAgICB0aGlzLm9wZW5Ob2RlcyA9IFtdO1xyXG4gICAgaWYgKHRoaXMudHJlZUNvbnRyb2wuaXNFeHBhbmRlZChub2RlKSkge1xyXG4gICAgICB0aGlzLnRyZWVDb250cm9sLmV4cGFuZChub2RlKTtcclxuICAgICAgdGhpcy5fYWRkRXhwYW5kaW5nTm9kZShub2RlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudHJlZUNvbnRyb2wuY29sbGFwc2Uobm9kZSk7XHJcbiAgICAgIHRoaXMuX3JlbW92ZUV4cGFuZGluZ05vZGVzKG5vZGUuaWQpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghbm9kZS5tYXJrZWRHZXRDaGlsZHJlbikge1xyXG4gICAgICBub2RlLm1hcmtlZEdldENoaWxkcmVuID0gdHJ1ZTtcclxuICAgICAgdGhpcy50cmVlQ29udHJvbC5kYXRhTm9kZXMuZm9yRWFjaCh4ID0+IHtcclxuICAgICAgICBpZiAoeC5wYXJlbnRJZCA9PT0gbm9kZS5wYXJlbnRJZCAmJiB4LmlkID09PSBub2RlLmlkKSB7XHJcbiAgICAgICAgICB4Lm1hcmtlZEdldENoaWxkcmVuID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICB0aGlzLm5vZGVFeHBhbmRFdmVudC5lbWl0KHsgbm9kZSwgaXNFeHBhbmQ6IHRoaXMudHJlZUNvbnRyb2wuaXNFeHBhbmRlZChub2RlKSB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHVwZGF0ZUZhdm9yaXRlKG5vZGU6IGFueSwgZXZlbnQ6IGFueSkge1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgbm9kZS5pc0Zhdm9yaXRlID0gIW5vZGUuaXNGYXZvcml0ZTtcclxuICAgIHRoaXMudXBkYXRlRmF2b3JpdGVFdmVudC5lbWl0KG5vZGUpO1xyXG4gIH1cclxuXHJcbiAgYWRkTG9jYXRpb24obm9kZTogYW55LCBldmVudDogYW55KSB7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB0aGlzLmFkZExvY2F0aW9uRXZlbnQuZW1pdChub2RlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2FkZEV4cGFuZGluZ05vZGUobm9kZTogRmxhdE5vZGVOYXZEcmF3ZXIpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5leHBhbmRpbmdOb2Rlcy5zb21lKHggPT4geC5pZCA9PT0gbm9kZS5pZCkpIHtcclxuICAgICAgdGhpcy5leHBhbmRpbmdOb2Rlcy5wdXNoKG5vZGUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcmVtb3ZlRXhwYW5kaW5nTm9kZXMobm9kZUlkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuZXhwYW5kaW5nTm9kZXMgPSB0aGlzLmV4cGFuZGluZ05vZGVzLmZpbHRlcih4ID0+IHguaWQgIT09IG5vZGVJZCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMubmdVbnN1YnNjcmliZS5uZXh0KCk7XHJcbiAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIGNvbnZlcnRUcmVlRGF0YShsaXN0KSB7XHJcbiAgICBsZXQgbWFwID0ge30sIG5vZGUsIHJvb3RzID0gW10sIGk7XHJcbiAgICBmb3IgKGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7IGkgKz0gMSkge1xyXG4gICAgICBtYXBbYCR7bGlzdFtpXS5pZH0tJHtsaXN0W2ldLnBhcmVudElkfWBdID0gaSAvLyBpbml0aWFsaXplIHRoZSBtYXBcclxuICAgICAgbGlzdFtpXS5jaGlsZHJlbiA9IFtdOyAvLyBpbml0aWFsaXplIHRoZSBjaGlsZHJlblxyXG4gICAgfVxyXG5cclxuXHJcbiAgICBmb3IgKGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7IGkgKz0gMSkge1xyXG4gICAgICBub2RlID0gbGlzdFtpXTtcclxuICAgICAgY29uc3Qgc3RyS2V5ID0gYCR7bGlzdFtpXS5pZH0tJHtsaXN0W2ldLnBhcmVudElkfWA7XHJcblxyXG4gICAgICBpZiAobm9kZS5wYXJlbnRJZCAmJiAobm9kZS5wYXJlbnRJZCAhPT0gdGhpcy5ndWlkSGVscGVyLmVtcHR5KSAmJiBsaXN0W21hcFtzdHJLZXldXSkge1xyXG4gICAgICAgIGNvbnN0IHBhcmVudCA9IGxpc3QuZmlsdGVyKHggPT4geC5pZCA9PT0gbm9kZS5wYXJlbnRJZCAmJiAheC5pc0ZpbGUpWzBdXHJcbiAgICAgICAgaWYgKHBhcmVudCkge1xyXG4gICAgICAgICAgcGFyZW50LmNoaWxkcmVuLnB1c2gobm9kZSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByb290cy5wdXNoKG5vZGUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiByb290cztcclxuICB9XHJcblxyXG59IiwiPG1hdC10cmVlIGNsYXNzPVwicW1zLW5hdi1kcmF3ZXItY29udGFpbmVyXCIgW2RhdGFTb3VyY2VdPVwiZGF0YVNvdXJjZVwiIFt0cmVlQ29udHJvbF09XCJ0cmVlQ29udHJvbFwiPlxuICA8IS0tIFRoaXMgaXMgdGhlIHRyZWUgbm9kZSB0ZW1wbGF0ZSBmb3IgbGVhZiBub2RlcyAtLT5cbiAgPG1hdC10cmVlLW5vZGUgKm1hdFRyZWVOb2RlRGVmPVwibGV0IG5vZGVcIiBtYXRUcmVlTm9kZVRvZ2dsZSBtYXRUcmVlTm9kZVBhZGRpbmcgW25nQ2xhc3NdPVwie1xuICAgICAgYWN0aXZlOiBhY3RpdmVOb2RlID09PSBnZXRBY3RpdmVOb2RlKG5vZGUuaWQsIG5vZGUucGFyZW50SWQpXG4gICAgfVwiPlxuXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgdy0xMDBcIj5cbiAgICAgIDxidXR0b24gYXJpYS1sYWJlbD1cImRpc2FibGVkXCIgbWF0LWljb24tYnV0dG9uIGRpc2FibGVkPjwvYnV0dG9uPlxuICAgICAgPGltZyAqbmdJZj1cIm5vZGUuaXRlbUljb25TdmdcIiBjbGFzcz1cIm1hdGVyaWFsLWljb25zIHR5cGUtaWNvbiBjdXJzb3ItcG9pbnRlclwiIFtzcmNdPVwibm9kZS5pdGVtSWNvblN2Z1wiXG4gICAgICAgIChjbGljayk9XCJvbkNsaWNrTm9kZShub2RlKVwiIGFsdD1cIkltYWdlIGljb25cIiAvPlxuICAgICAgPHNwYW4gKm5nSWY9XCJub2RlLml0ZW1JY29uXCIgW2NsYXNzXT1cIm5vZGUuaXRlbUljb25cIiBbcW1zVHJhbnNmb3JtSWNvbl09XCJub2RlLml0ZW1JY29uXCJcbiAgICAgICAgY2xhc3M9XCJtYXRlcmlhbC1pY29ucy1vdXRsaW5lZCB0eXBlLWljb24gY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25DbGlja05vZGUobm9kZSlcIj48L3NwYW4+XG4gICAgICA8c3BhbiAqbmdJZj1cIm5vZGUuaXRlbU1hdEljb25cIiBjbGFzcz1cIm1hdGVyaWFsLWljb25zLW91dGxpbmVkIHR5cGUtaWNvbiBjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgIChjbGljayk9XCJvbkNsaWNrTm9kZShub2RlKVwiPnt7XG4gICAgICAgIG5vZGUuaXRlbU1hdEljb24gfX1cbiAgICAgIDwvc3Bhbj5cblxuICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LW5hbWUgY3Vyc29yLXBvaW50ZXIgbXgtMlwiIChjbGljayk9XCJvbkNsaWNrTm9kZShub2RlKVwiPnt7IG5vZGUubmFtZSB9fTwvc3Bhbj5cblxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZhdm9yaXRlQWN0aW9uXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4tYWN0aW9uXCIgYXJpYS1sYWJlbD1cIkFkZCBvciByZW1vdmUgZmF2b3JpdGVcIiAoY2xpY2spPVwidXBkYXRlRmF2b3JpdGUobm9kZSwgJGV2ZW50KVwiXG4gICAgICAgICAgcW1zLWJ0bi1pY29uIGNvbG9yPVwibGlnaHRcIlxuICAgICAgICAgIHFtcy10b29sLXRpcD1cInt7bm9kZS5pc0Zhdm9yaXRlID8gZmF2b3JpdGVBY3Rpb24udG9vbHRpcFJlbW92ZUZhdm9yaXRlIDogZmF2b3JpdGVBY3Rpb24udG9vbHRpcEFkZEZhdm9yaXRlfX1cIlxuICAgICAgICAgIG1vZGU9XCJkYXJrXCI+XG4gICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMtb3V0bGluZWRcIiBbbmdDbGFzc109XCJ7J3ByaW1hcnknOiBub2RlLmlzRmF2b3JpdGV9XCI+XG4gICAgICAgICAgICB7e25vZGUuaXNGYXZvcml0ZSA/ICdzdGFyJyA6ICdzdGFyX291dGxpbmUnIH19XG4gICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFkZExvY2F0aW9uQWN0aW9uXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4tYWN0aW9uXCIgYXJpYS1sYWJlbD1cIkFkZCBsb2NhdGlvblwiIChjbGljayk9XCJhZGRMb2NhdGlvbihub2RlLCAkZXZlbnQpXCIgcW1zLWJ0bi1pY29uXG4gICAgICAgICAgY29sb3I9XCJsaWdodFwiIHFtcy10b29sLXRpcD1cInt7YWRkTG9jYXRpb25BY3Rpb24udG9vbHRpcEFkZExvY2F0aW9ufX1cIiBtb2RlPVwiZGFya1wiPlxuICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdGVyaWFsLWljb25zLW91dGxpbmVkXCI+XG4gICAgICAgICAgICBhZGRcbiAgICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPC9kaXY+XG5cblxuICA8L21hdC10cmVlLW5vZGU+XG4gIDwhLS0gVGhpcyBpcyB0aGUgdHJlZSBub2RlIHRlbXBsYXRlIGZvciBleHBhbmRhYmxlIG5vZGVzIC0tPlxuICA8bWF0LXRyZWUtbm9kZSAqbWF0VHJlZU5vZGVEZWY9XCJsZXQgbm9kZTsgd2hlbjogaGFzQ2hpbGRcIiBtYXRUcmVlTm9kZVBhZGRpbmcgW25nQ2xhc3NdPVwie1xuICAgICAgJ2V4cGFuZC1ub2RlJzogdHJlZUNvbnRyb2wuaXNFeHBhbmRlZChub2RlKSxcbiAgICAgICdjb2xsYXBzZS1ub2RlJzogIXRyZWVDb250cm9sLmlzRXhwYW5kZWQobm9kZSksXG4gICAgICBhY3RpdmU6IGFjdGl2ZU5vZGUgPT09IGdldEFjdGl2ZU5vZGUobm9kZS5pZCwgbm9kZS5wYXJlbnRJZClcbiAgICB9XCI+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciB3LTEwMFwiPlxuICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gYXJpYS1sYWJlbD1cIlRvZ2dsZSBleHBhbmRcIiAoY2xpY2spPVwib25FeHBhbmROb2RlKG5vZGUpXCIgbWF0VHJlZU5vZGVUb2dnbGU+XG4gICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdC1pY29uLXJ0bC1taXJyb3JcIj5cbiAgICAgICAgICB7eyB0cmVlQ29udHJvbC5pc0V4cGFuZGVkKG5vZGUpID8gXCJleHBhbmRfbW9yZVwiIDogXCJjaGV2cm9uX3JpZ2h0XCIgfX1cbiAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgIDwvYnV0dG9uPlxuXG4gICAgICA8aW1nICpuZ0lmPVwibm9kZS5pdGVtSWNvblN2Z1wiIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMgdHlwZS1pY29uIGN1cnNvci1wb2ludGVyXCIgW3NyY109XCJub2RlLml0ZW1JY29uU3ZnXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uQ2xpY2tOb2RlKG5vZGUpXCIgYWx0PVwiSW1hZ2UgaWNvblwiIC8+XG4gICAgICA8c3BhbiAqbmdJZj1cIm5vZGUuaXRlbUljb25cIiBbY2xhc3NdPVwibm9kZS5pdGVtSWNvblwiIFtxbXNUcmFuc2Zvcm1JY29uXT1cIm5vZGUuaXRlbUljb25cIlxuICAgICAgICBjbGFzcz1cIm1hdGVyaWFsLWljb25zLW91dGxpbmVkIHR5cGUtaWNvbiBjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvbkNsaWNrTm9kZShub2RlKVwiPjwvc3Bhbj5cbiAgICAgIDxzcGFuICpuZ0lmPVwibm9kZS5pdGVtTWF0SWNvblwiIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMtb3V0bGluZWQgdHlwZS1pY29uIGN1cnNvci1wb2ludGVyXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uQ2xpY2tOb2RlKG5vZGUpXCI+e3tcbiAgICAgICAgbm9kZS5pdGVtTWF0SWNvbiB9fVxuICAgICAgPC9zcGFuPlxuXG4gICAgICA8c3BhbiBjbGFzcz1cInRleHQtbmFtZSBjdXJzb3ItcG9pbnRlciBteC0yXCIgKGNsaWNrKT1cIm9uQ2xpY2tOb2RlKG5vZGUpXCI+e3sgbm9kZS5uYW1lIH19PC9zcGFuPlxuXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmF2b3JpdGVBY3Rpb25cIj5cbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0bi1hY3Rpb25cIiBhcmlhLWxhYmVsPVwiQWRkIG9yIHJlbW92ZSBmYXZvcml0ZVwiIChjbGljayk9XCJ1cGRhdGVGYXZvcml0ZShub2RlLCAkZXZlbnQpXCJcbiAgICAgICAgICBxbXMtYnRuLWljb24gY29sb3I9XCJsaWdodFwiXG4gICAgICAgICAgcW1zLXRvb2wtdGlwPVwie3tub2RlLmlzRmF2b3JpdGUgPyBmYXZvcml0ZUFjdGlvbi50b29sdGlwUmVtb3ZlRmF2b3JpdGUgOiBmYXZvcml0ZUFjdGlvbi50b29sdGlwQWRkRmF2b3JpdGV9fVwiXG4gICAgICAgICAgbW9kZT1cImRhcmtcIj5cbiAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJtYXRlcmlhbC1pY29ucy1vdXRsaW5lZFwiIFtuZ0NsYXNzXT1cInsncHJpbWFyeSc6IG5vZGUuaXNGYXZvcml0ZX1cIj5cbiAgICAgICAgICAgIHt7bm9kZS5pc0Zhdm9yaXRlID8gJ3N0YXInIDogJ3N0YXJfb3V0bGluZScgfX1cbiAgICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYWRkTG9jYXRpb25BY3Rpb25cIj5cbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0bi1hY3Rpb25cIiBhcmlhLWxhYmVsPVwiQWRkIGxvY2F0aW9uXCIgKGNsaWNrKT1cImFkZExvY2F0aW9uKG5vZGUsICRldmVudClcIiBxbXMtYnRuLWljb25cbiAgICAgICAgICBjb2xvcj1cImxpZ2h0XCIgcW1zLXRvb2wtdGlwPVwie3thZGRMb2NhdGlvbkFjdGlvbi50b29sdGlwQWRkTG9jYXRpb259fVwiIG1vZGU9XCJkYXJrXCI+XG4gICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMtb3V0bGluZWRcIj5cbiAgICAgICAgICAgIGFkZFxuICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIDwvbWF0LXRyZWUtbm9kZT5cbjwvbWF0LXRyZWU+Il19
@@ -35579,7 +35579,6 @@ class QMSNavDrawerComponent {
35579
35579
  this.scrollIntoNode$.next(this.activeNode);
35580
35580
  }
35581
35581
  onExpandNode(node) {
35582
- this.treeControl.toggle(node);
35583
35582
  this.openNodes = [];
35584
35583
  if (this.treeControl.isExpanded(node)) {
35585
35584
  this.treeControl.expand(node);