cps-ui-kit 17.16.0 → 17.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. package/esm2022/lib/components/cps-checkbox/cps-checkbox.component.mjs +2 -1
  2. package/esm2022/lib/components/cps-datepicker/cps-datepicker.component.mjs +3 -1
  3. package/esm2022/lib/components/cps-input/cps-input.component.mjs +2 -1
  4. package/esm2022/lib/components/cps-switch/cps-switch.component.mjs +2 -1
  5. package/esm2022/lib/components/cps-tab-group/cps-tab-group.component.mjs +2 -1
  6. package/esm2022/lib/components/cps-table/components/internal/table-column-filter/table-column-filter.component.mjs +47 -47
  7. package/esm2022/lib/components/cps-table/cps-table.component.mjs +19 -4
  8. package/esm2022/lib/components/cps-tag/cps-tag.component.mjs +2 -1
  9. package/esm2022/lib/components/cps-textarea/cps-textarea.component.mjs +2 -1
  10. package/esm2022/lib/components/cps-tree-autocomplete/cps-tree-autocomplete.component.mjs +3 -3
  11. package/esm2022/lib/components/cps-tree-select/cps-tree-select.component.mjs +3 -3
  12. package/esm2022/lib/components/cps-tree-table/cps-tree-table.component.mjs +19 -4
  13. package/esm2022/lib/components/internal/cps-base-tree-dropdown/cps-base-tree-dropdown.component.mjs +29 -23
  14. package/fesm2022/cps-ui-kit.mjs +122 -78
  15. package/fesm2022/cps-ui-kit.mjs.map +1 -1
  16. package/lib/components/cps-checkbox/cps-checkbox.component.d.ts +1 -0
  17. package/lib/components/cps-datepicker/cps-datepicker.component.d.ts +1 -0
  18. package/lib/components/cps-input/cps-input.component.d.ts +1 -0
  19. package/lib/components/cps-switch/cps-switch.component.d.ts +1 -0
  20. package/lib/components/cps-tab-group/cps-tab-group.component.d.ts +1 -0
  21. package/lib/components/cps-table/components/internal/table-column-filter/table-column-filter.component.d.ts +6 -5
  22. package/lib/components/cps-table/cps-table.component.d.ts +12 -1
  23. package/lib/components/cps-tag/cps-tag.component.d.ts +1 -0
  24. package/lib/components/cps-textarea/cps-textarea.component.d.ts +1 -0
  25. package/lib/components/cps-tree-table/cps-tree-table.component.d.ts +12 -1
  26. package/lib/components/internal/cps-base-tree-dropdown/cps-base-tree-dropdown.component.d.ts +7 -5
  27. package/package.json +1 -1
@@ -13,6 +13,7 @@ import * as i2 from "@angular/common";
13
13
  export class CpsCheckboxComponent {
14
14
  /**
15
15
  * Value of the checkbox.
16
+ * @default false
16
17
  * @group Props
17
18
  */
18
19
  set value(value) {
@@ -146,4 +147,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
146
147
  }], valueChanged: [{
147
148
  type: Output
148
149
  }] } });
149
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3BzLWNoZWNrYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nwcy11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2Nwcy1jaGVja2JveC9jcHMtY2hlY2tib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3BzLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY3BzLWNoZWNrYm94L2Nwcy1jaGVja2JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUVMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxFQUNMLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBRXRGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBWSxNQUFNLGdDQUFnQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7OztBQUV2RDs7O0dBR0c7QUFRSCxNQUFNLE9BQU8sb0JBQW9CO0lBdUQvQjs7O09BR0c7SUFDSCxJQUFhLEtBQUssQ0FBQyxLQUFjO1FBQy9CLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBV0QsWUFDOEIsUUFBbUIsRUFDdkMsV0FBb0M7UUFEaEIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUN2QyxnQkFBVyxHQUFYLFdBQVcsQ0FBeUI7UUE5RTlDOzs7V0FHRztRQUNNLFVBQUssR0FBRyxFQUFFLENBQUM7UUFFcEI7OztXQUdHO1FBQ00sYUFBUSxHQUFHLEtBQUssQ0FBQztRQUUxQjs7O1dBR0c7UUFDTSxnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUUxQjs7O1dBR0c7UUFDTSxxQkFBZ0IsR0FBRyxxQkFBcUIsQ0FBQztRQUVsRDs7O1dBR0c7UUFDTSx3QkFBbUIsR0FBb0IsTUFBTSxDQUFDO1FBRXZEOzs7V0FHRztRQUNNLDBCQUFxQixHQUFHLEtBQUssQ0FBQztRQUV2Qzs7O1dBR0c7UUFDTSx3QkFBbUIsR0FBdUIsS0FBSyxDQUFDO1FBRXpEOzs7V0FHRztRQUNNLFNBQUksR0FBYSxFQUFFLENBQUM7UUFFN0I7OztXQUdHO1FBQ00sY0FBUyxHQUFHLFdBQVcsQ0FBQztRQWVqQzs7OztXQUlHO1FBQ08saUJBQVksR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRTdDLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFldkIsZ0VBQWdFO1FBQ2hFLGFBQVEsR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBRTlCLGdFQUFnRTtRQUNoRSxjQUFTLEdBQUcsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBYm5CLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztRQUNyQyxDQUFDO0lBQ0gsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsU0FBUyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQVFELGdCQUFnQixDQUFDLEVBQU87UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFjO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxLQUFVO1FBQ3pCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixJQUFJLElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTztRQUMxQixJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTyxZQUFZLENBQUMsS0FBYztRQUNqQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELGdFQUFnRTtJQUNoRSxnQkFBZ0IsQ0FBQyxRQUFpQixJQUFHLENBQUM7SUFFdEMsS0FBSztRQUNILElBQUksQ0FBQyxXQUFXLEVBQUUsYUFBYSxFQUFFLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUNuRSxDQUFDOzhHQTdIVSxvQkFBb0I7a0dBQXBCLG9CQUFvQixxYUM1QmpDLDY5QkFnQ0Esb3RGRFRZLFlBQVksaU9BQUUsc0JBQXNCLCtLQUFFLGdCQUFnQjs7MkZBS3JELG9CQUFvQjtrQkFQaEMsU0FBUztpQ0FDSSxJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsc0JBQXNCLEVBQUUsZ0JBQWdCLENBQUMsWUFDdkQsY0FBYzs7MEJBa0ZyQixJQUFJOzswQkFBSSxRQUFRO2tFQXpFVixLQUFLO3NCQUFiLEtBQUs7Z0JBTUcsUUFBUTtzQkFBaEIsS0FBSztnQkFNRyxXQUFXO3NCQUFuQixLQUFLO2dCQU1HLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFNRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBTUcscUJBQXFCO3NCQUE3QixLQUFLO2dCQU1HLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFNRyxJQUFJO3NCQUFaLEtBQUs7Z0JBTUcsU0FBUztzQkFBakIsS0FBSztnQkFNTyxLQUFLO3NCQUFqQixLQUFLO2dCQWNJLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG4gIFNlbGZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ3BzSW5mb0NpcmNsZUNvbXBvbmVudCB9IGZyb20gJy4uL2Nwcy1pbmZvLWNpcmNsZS9jcHMtaW5mby1jaXJjbGUuY29tcG9uZW50JztcbmltcG9ydCB7IENwc1Rvb2x0aXBQb3NpdGlvbiB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvY3BzLXRvb2x0aXAvY3BzLXRvb2x0aXAuZGlyZWN0aXZlJztcbmltcG9ydCB7IENwc0ljb25Db21wb25lbnQsIEljb25UeXBlIH0gZnJvbSAnLi4vY3BzLWljb24vY3BzLWljb24uY29tcG9uZW50JztcbmltcG9ydCB7IGdldENTU0NvbG9yIH0gZnJvbSAnLi4vLi4vdXRpbHMvY29sb3JzLXV0aWxzJztcblxuLyoqXG4gKiBDcHNDaGVja2JveENvbXBvbmVudCBpcyBhIGNoZWNrYm94IGVsZW1lbnQuXG4gKiBAZ3JvdXAgQ29tcG9uZW50c1xuICovXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQ3BzSW5mb0NpcmNsZUNvbXBvbmVudCwgQ3BzSWNvbkNvbXBvbmVudF0sXG4gIHNlbGVjdG9yOiAnY3BzLWNoZWNrYm94JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Nwcy1jaGVja2JveC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Nwcy1jaGVja2JveC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIENwc0NoZWNrYm94Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIC8qKlxuICAgKiBMYWJlbCBvZiB0aGUgY2hlY2tib3guXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgbGFiZWwgPSAnJztcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB3aGV0aGVyIGNoZWNrYm94IGlzIGRpc2FibGVkLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFdoZW4gaXQgaXMgbm90IGFuIGVtcHR5IHN0cmluZywgYW4gaW5mbyBpY29uIGlzIGRpc3BsYXllZCB0byBzaG93IHRleHQgZm9yIG1vcmUgaW5mby5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBpbmZvVG9vbHRpcCA9ICcnO1xuXG4gIC8qKlxuICAgKiBJbmZvVG9vbHRpcCBjbGFzcyBmb3Igc3R5bGluZy5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBpbmZvVG9vbHRpcENsYXNzID0gJ2Nwcy10b29sdGlwLWNvbnRlbnQnO1xuXG4gIC8qKlxuICAgKiBTaXplIG9mIGluZm9Ub29sdGlwLCBvZiB0eXBlIG51bWJlciBkZW5vdGluZyBwaXhlbHMgb3Igc3RyaW5nLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGluZm9Ub29sdGlwTWF4V2lkdGg6IG51bWJlciB8IHN0cmluZyA9ICcxMDAlJztcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBpbmZvVG9vbHRpcCBpcyBwZXJzaXN0ZW50LlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGluZm9Ub29sdGlwUGVyc2lzdGVudCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBQb3NpdGlvbiBvZiBpbmZvVG9vbHRpcCwgaXQgY2FuIGJlICd0b3AnLCAnYm90dG9tJywgJ2xlZnQnIG9yICdyaWdodCcuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgaW5mb1Rvb2x0aXBQb3NpdGlvbjogQ3BzVG9vbHRpcFBvc2l0aW9uID0gJ3RvcCc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGljb24uXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgaWNvbjogSWNvblR5cGUgPSAnJztcblxuICAvKipcbiAgICogQ29sb3Igb2YgdGhlIGljb24uXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgaWNvbkNvbG9yID0gJ3RleHQtZGFyayc7XG5cbiAgLyoqXG4gICAqIFZhbHVlIG9mIHRoZSBjaGVja2JveC5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBzZXQgdmFsdWUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICB9XG5cbiAgZ2V0IHZhbHVlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsYmFjayB0byBpbnZva2Ugb24gdmFsdWUgY2hhbmdlLlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IGJvb2xlYW4gLSB2YWx1ZSBjaGFuZ2VkLlxuICAgKiBAZ3JvdXAgRW1pdHNcbiAgICovXG4gIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgcHJpdmF0ZSBfdmFsdWUgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAU2VsZigpIEBPcHRpb25hbCgpIHByaXZhdGUgX2NvbnRyb2w6IE5nQ29udHJvbCxcbiAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PlxuICApIHtcbiAgICBpZiAodGhpcy5fY29udHJvbCkge1xuICAgICAgdGhpcy5fY29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpcztcbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmljb25Db2xvciA9IGdldENTU0NvbG9yKHRoaXMuaWNvbkNvbG9yKTtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgb25DaGFuZ2UgPSAoZXZlbnQ6IGFueSkgPT4ge307XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBvblRvdWNoZWQgPSAoKSA9PiB7fTtcblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cblxuICB1cGRhdGVWYWx1ZUV2ZW50KGV2ZW50OiBhbnkpIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm47XG4gICAgdGhpcy5fdXBkYXRlVmFsdWUoIXRoaXMudmFsdWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlVmFsdWUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLndyaXRlVmFsdWUodmFsdWUpO1xuICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICAgIHRoaXMudmFsdWVDaGFuZ2VkLmVtaXQodmFsdWUpO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBzZXREaXNhYmxlZFN0YXRlKGRpc2FibGVkOiBib29sZWFuKSB7fVxuXG4gIGZvY3VzKCkge1xuICAgIHRoaXMuX2VsZW1lbnRSZWY/Lm5hdGl2ZUVsZW1lbnQ/LnF1ZXJ5U2VsZWN0b3IoJ2lucHV0Jyk/LmZvY3VzKCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjcHMtY2hlY2tib3gtY29udGFpbmVyXCI+XG4gIDxsYWJlbFxuICAgIGNsYXNzPVwiY3BzLWNoZWNrYm94XCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICAnY3BzLWNoZWNrYm94LWRpc2FibGVkJzogZGlzYWJsZWRcbiAgICB9XCI+XG4gICAgPGlucHV0XG4gICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtjaGVja2VkXT1cInZhbHVlXCJcbiAgICAgIChjaGFuZ2UpPVwidXBkYXRlVmFsdWVFdmVudCgkZXZlbnQpXCIgLz5cbiAgICA8c3BhbiBjbGFzcz1cImNwcy1jaGVja2JveC1pbmRpY2F0b3JcIj48L3NwYW4+XG4gICAgPGNwcy1pY29uXG4gICAgICBjbGFzcz1cImNwcy1jaGVja2JveC1pY29uXCJcbiAgICAgICpuZ0lmPVwiaWNvblwiXG4gICAgICBbaWNvbl09XCJpY29uXCJcbiAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICBbY29sb3JdPVwiZGlzYWJsZWQgPyAndGV4dC1saWdodCcgOiBpY29uQ29sb3JcIj5cbiAgICA8L2Nwcy1pY29uPlxuICAgIDxzcGFuICpuZ0lmPVwibGFiZWxcIiBjbGFzcz1cImNwcy1jaGVja2JveC1sYWJlbFwiPnt7IGxhYmVsIH19PC9zcGFuPlxuICA8L2xhYmVsPlxuICA8Y3BzLWluZm8tY2lyY2xlXG4gICAgKm5nSWY9XCJpbmZvVG9vbHRpcFwiXG4gICAgY2xhc3M9XCJjcHMtY2hlY2tib3gtaW5mby1jaXJjbGVcIlxuICAgIHNpemU9XCJ4c21hbGxcIlxuICAgIFt0b29sdGlwUG9zaXRpb25dPVwiaW5mb1Rvb2x0aXBQb3NpdGlvblwiXG4gICAgW3Rvb2x0aXBDb250ZW50Q2xhc3NdPVwiaW5mb1Rvb2x0aXBDbGFzc1wiXG4gICAgW3Rvb2x0aXBNYXhXaWR0aF09XCJpbmZvVG9vbHRpcE1heFdpZHRoXCJcbiAgICBbdG9vbHRpcFBlcnNpc3RlbnRdPVwiaW5mb1Rvb2x0aXBQZXJzaXN0ZW50XCJcbiAgICBbdG9vbHRpcFRleHRdPVwiaW5mb1Rvb2x0aXBcIj5cbiAgPC9jcHMtaW5mby1jaXJjbGU+XG48L2Rpdj5cbiJdfQ==
150
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3BzLWNoZWNrYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nwcy11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2Nwcy1jaGVja2JveC9jcHMtY2hlY2tib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3BzLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY3BzLWNoZWNrYm94L2Nwcy1jaGVja2JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUVMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxFQUNMLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBRXRGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBWSxNQUFNLGdDQUFnQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7OztBQUV2RDs7O0dBR0c7QUFRSCxNQUFNLE9BQU8sb0JBQW9CO0lBdUQvQjs7OztPQUlHO0lBQ0gsSUFBYSxLQUFLLENBQUMsS0FBYztRQUMvQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQVdELFlBQzhCLFFBQW1CLEVBQ3ZDLFdBQW9DO1FBRGhCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDdkMsZ0JBQVcsR0FBWCxXQUFXLENBQXlCO1FBL0U5Qzs7O1dBR0c7UUFDTSxVQUFLLEdBQUcsRUFB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QWpCLEtBQUs7Z0JBY0ksWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIE91dHB1dCxcbiAgU2VsZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDcHNJbmZvQ2lyY2xlQ29tcG9uZW50IH0gZnJvbSAnLi4vY3BzLWluZm8tY2lyY2xlL2Nwcy1pbmZvLWNpcmNsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3BzVG9vbHRpcFBvc2l0aW9uIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9jcHMtdG9vbHRpcC9jcHMtdG9vbHRpcC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ3BzSWNvbkNvbXBvbmVudCwgSWNvblR5cGUgfSBmcm9tICcuLi9jcHMtaWNvbi9jcHMtaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgZ2V0Q1NTQ29sb3IgfSBmcm9tICcuLi8uLi91dGlscy9jb2xvcnMtdXRpbHMnO1xuXG4vKipcbiAqIENwc0NoZWNrYm94Q29tcG9uZW50IGlzIGEgY2hlY2tib3ggZWxlbWVudC5cbiAqIEBncm91cCBDb21wb25lbnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBDcHNJbmZvQ2lyY2xlQ29tcG9uZW50LCBDcHNJY29uQ29tcG9uZW50XSxcbiAgc2VsZWN0b3I6ICdjcHMtY2hlY2tib3gnLFxuICB0ZW1wbGF0ZVVybDogJy4vY3BzLWNoZWNrYm94LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY3BzLWNoZWNrYm94LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ3BzQ2hlY2tib3hDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgLyoqXG4gICAqIExhYmVsIG9mIHRoZSBjaGVja2JveC5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBsYWJlbCA9ICcnO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgY2hlY2tib3ggaXMgZGlzYWJsZWQuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogV2hlbiBpdCBpcyBub3QgYW4gZW1wdHkgc3RyaW5nLCBhbiBpbmZvIGljb24gaXMgZGlzcGxheWVkIHRvIHNob3cgdGV4dCBmb3IgbW9yZSBpbmZvLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGluZm9Ub29sdGlwID0gJyc7XG5cbiAgLyoqXG4gICAqIEluZm9Ub29sdGlwIGNsYXNzIGZvciBzdHlsaW5nLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGluZm9Ub29sdGlwQ2xhc3MgPSAnY3BzLXRvb2x0aXAtY29udGVudCc7XG5cbiAgLyoqXG4gICAqIFNpemUgb2YgaW5mb1Rvb2x0aXAsIG9mIHR5cGUgbnVtYmVyIGRlbm90aW5nIHBpeGVscyBvciBzdHJpbmcuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgaW5mb1Rvb2x0aXBNYXhXaWR0aDogbnVtYmVyIHwgc3RyaW5nID0gJzEwMCUnO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgdGhlIGluZm9Ub29sdGlwIGlzIHBlcnNpc3RlbnQuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgaW5mb1Rvb2x0aXBQZXJzaXN0ZW50ID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFBvc2l0aW9uIG9mIGluZm9Ub29sdGlwLCBpdCBjYW4gYmUgJ3RvcCcsICdib3R0b20nLCAnbGVmdCcgb3IgJ3JpZ2h0Jy5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBpbmZvVG9vbHRpcFBvc2l0aW9uOiBDcHNUb29sdGlwUG9zaXRpb24gPSAndG9wJztcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgaWNvbi5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBpY29uOiBJY29uVHlwZSA9ICcnO1xuXG4gIC8qKlxuICAgKiBDb2xvciBvZiB0aGUgaWNvbi5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBpY29uQ29sb3IgPSAndGV4dC1kYXJrJztcblxuICAvKipcbiAgICogVmFsdWUgb2YgdGhlIGNoZWNrYm94LlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHNldCB2YWx1ZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gIH1cblxuICBnZXQgdmFsdWUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIHRvIGludm9rZSBvbiB2YWx1ZSBjaGFuZ2UuXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gYm9vbGVhbiAtIHZhbHVlIGNoYW5nZWQuXG4gICAqIEBncm91cCBFbWl0c1xuICAgKi9cbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBwcml2YXRlIF92YWx1ZSA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBTZWxmKCkgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfY29udHJvbDogTmdDb250cm9sLFxuICAgIHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+XG4gICkge1xuICAgIGlmICh0aGlzLl9jb250cm9sKSB7XG4gICAgICB0aGlzLl9jb250cm9sLnZhbHVlQWNjZXNzb3IgPSB0aGlzO1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaWNvbkNvbG9yID0gZ2V0Q1NTQ29sb3IodGhpcy5pY29uQ29sb3IpO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBvbkNoYW5nZSA9IChldmVudDogYW55KSA9PiB7fTtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIG9uVG91Y2hlZCA9ICgpID0+IHt9O1xuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgfVxuXG4gIHVwZGF0ZVZhbHVlRXZlbnQoZXZlbnQ6IGFueSkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHJldHVybjtcbiAgICB0aGlzLl91cGRhdGVWYWx1ZSghdGhpcy52YWx1ZSk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVWYWx1ZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgdGhpcy52YWx1ZUNoYW5nZWQuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIHNldERpc2FibGVkU3RhdGUoZGlzYWJsZWQ6IGJvb2xlYW4pIHt9XG5cbiAgZm9jdXMoKSB7XG4gICAgdGhpcy5fZWxlbWVudFJlZj8ubmF0aXZlRWxlbWVudD8ucXVlcnlTZWxlY3RvcignaW5wdXQnKT8uZm9jdXMoKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNwcy1jaGVja2JveC1jb250YWluZXJcIj5cbiAgPGxhYmVsXG4gICAgY2xhc3M9XCJjcHMtY2hlY2tib3hcIlxuICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICdjcHMtY2hlY2tib3gtZGlzYWJsZWQnOiBkaXNhYmxlZFxuICAgIH1cIj5cbiAgICA8aW5wdXRcbiAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW2NoZWNrZWRdPVwidmFsdWVcIlxuICAgICAgKGNoYW5nZSk9XCJ1cGRhdGVWYWx1ZUV2ZW50KCRldmVudClcIiAvPlxuICAgIDxzcGFuIGNsYXNzPVwiY3BzLWNoZWNrYm94LWluZGljYXRvclwiPjwvc3Bhbj5cbiAgICA8Y3BzLWljb25cbiAgICAgIGNsYXNzPVwiY3BzLWNoZWNrYm94LWljb25cIlxuICAgICAgKm5nSWY9XCJpY29uXCJcbiAgICAgIFtpY29uXT1cImljb25cIlxuICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgIFtjb2xvcl09XCJkaXNhYmxlZCA/ICd0ZXh0LWxpZ2h0JyA6IGljb25Db2xvclwiPlxuICAgIDwvY3BzLWljb24+XG4gICAgPHNwYW4gKm5nSWY9XCJsYWJlbFwiIGNsYXNzPVwiY3BzLWNoZWNrYm94LWxhYmVsXCI+e3sgbGFiZWwgfX08L3NwYW4+XG4gIDwvbGFiZWw+XG4gIDxjcHMtaW5mby1jaXJjbGVcbiAgICAqbmdJZj1cImluZm9Ub29sdGlwXCJcbiAgICBjbGFzcz1cImNwcy1jaGVja2JveC1pbmZvLWNpcmNsZVwiXG4gICAgc2l6ZT1cInhzbWFsbFwiXG4gICAgW3Rvb2x0aXBQb3NpdGlvbl09XCJpbmZvVG9vbHRpcFBvc2l0aW9uXCJcbiAgICBbdG9vbHRpcENvbnRlbnRDbGFzc109XCJpbmZvVG9vbHRpcENsYXNzXCJcbiAgICBbdG9vbHRpcE1heFdpZHRoXT1cImluZm9Ub29sdGlwTWF4V2lkdGhcIlxuICAgIFt0b29sdGlwUGVyc2lzdGVudF09XCJpbmZvVG9vbHRpcFBlcnNpc3RlbnRcIlxuICAgIFt0b29sdGlwVGV4dF09XCJpbmZvVG9vbHRpcFwiPlxuICA8L2Nwcy1pbmZvLWNpcmNsZT5cbjwvZGl2PlxuIl19
@@ -16,6 +16,7 @@ import * as i3 from "@angular/common";
16
16
  export class CpsDatepickerComponent {
17
17
  /**
18
18
  * Value of the datepicker.
19
+ * @default null
19
20
  * @group Props
20
21
  */
21
22
  set value(value) {
@@ -118,6 +119,7 @@ export class CpsDatepickerComponent {
118
119
  this.isOpened = false;
119
120
  this.error = '';
120
121
  this.cvtWidth = '';
122
+ this._value = null;
121
123
  // eslint-disable-next-line @typescript-eslint/no-empty-function
122
124
  this.onChange = (event) => { };
123
125
  // eslint-disable-next-line @typescript-eslint/no-empty-function
@@ -377,4 +379,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
377
379
  type: ViewChild,
378
380
  args: ['calendarMenu']
379
381
  }] } });
380
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3BzLWRhdGVwaWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3BzLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY3BzLWRhdGVwaWNrZXIvY3BzLWRhdGVwaWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3BzLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY3BzLWRhdGVwaWNrZXIvY3BzLWRhdGVwaWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLElBQUksRUFDSixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixXQUFXLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFckUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTlELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7OztBQVdsRTs7O0dBR0c7QUFjSCxNQUFNLE9BQU8sc0JBQXNCO0lBaUhqQzs7O09BR0c7SUFDSCxJQUFhLEtBQUssQ0FBQyxLQUFrQjtRQUNuQyxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2QixDQUFDO0lB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QWhCLEtBQUs7Z0JBTUcsS0FBSztzQkFBYixLQUFLO2dCQU1HLFdBQVc7c0JBQW5CLEtBQUs7Z0JBTUcsSUFBSTtzQkFBWixLQUFLO2dCQU1HLFNBQVM7c0JBQWpCLEtBQUs7Z0JBTUcsV0FBVztzQkFBbkIsS0FBSztnQkFNRyxlQUFlO3NCQUF2QixLQUFLO2dCQU1HLGVBQWU7c0JBQXZCLEtBQUs7Z0JBTUcsZ0JBQWdCO3NCQUF4QixLQUFLO2dCQU1HLFdBQVc7c0JBQW5CLEtBQUs7Z0JBTUcsZ0JBQWdCO3NCQUF4QixLQUFLO2dCQU1HLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFNRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBTUcsbUJBQW1CO3NCQUEzQixLQUFLO2dCQU1HLFVBQVU7c0JBQWxCLEtBQUs7Z0JBT04sT0FBTztzQkFETixLQUFLO2dCQVFOLE9BQU87c0JBRE4sS0FBSztnQkFPTyxLQUFLO3NCQUFqQixLQUFLO2dCQWVJLFlBQVk7c0JBQXJCLE1BQU07Z0JBR1AsZUFBZTtzQkFEZCxTQUFTO3VCQUFDLGlCQUFpQjtnQkFJNUIsWUFBWTtzQkFEWCxTQUFTO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIE91dHB1dCxcbiAgU2VsZixcbiAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1zTW9kdWxlLCBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDYWxlbmRhck1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvY2FsZW5kYXInO1xuaW1wb3J0IHsgQ3BzSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi9jcHMtaW5wdXQvY3BzLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNvbnZlcnRTaXplIH0gZnJvbSAnLi4vLi4vdXRpbHMvaW50ZXJuYWwvc2l6ZS11dGlscyc7XG5pbXBvcnQgeyBDcHNUb29sdGlwUG9zaXRpb24gfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2Nwcy10b29sdGlwL2Nwcy10b29sdGlwLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDcHNNZW51Q29tcG9uZW50IH0gZnJvbSAnLi4vY3BzLW1lbnUvY3BzLW1lbnUuY29tcG9uZW50JztcblxuLyoqXG4gKiBDcHNEYXRlcGlja2VyQXBwZWFyYW5jZVR5cGUgaXMgdXNlZCB0byBkZWZpbmUgdGhlIGJvcmRlciBvZiB0aGUgZGF0ZXBpY2tlciBpbnB1dC5cbiAqIEBncm91cCBUeXBlc1xuICovXG5leHBvcnQgdHlwZSBDcHNEYXRlcGlja2VyQXBwZWFyYW5jZVR5cGUgPVxuICB8ICdvdXRsaW5lZCdcbiAgfCAndW5kZXJsaW5lZCdcbiAgfCAnYm9yZGVybGVzcyc7XG5cbi8qKlxuICogQ3BzRGF0ZXBpY2tlckNvbXBvbmVudCBpcyBhbiBpbnB1dCBjb21wb25lbnQgdG8gcHJvdmlkZSBkYXRlIGlucHV0LlxuICogQGdyb3VwIENvbXBvbmVudHNcbiAqL1xuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDcHNJbnB1dENvbXBvbmVudCxcbiAgICBDYWxlbmRhck1vZHVsZSxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgQ3BzTWVudUNvbXBvbmVudFxuICBdLFxuICBzZWxlY3RvcjogJ2Nwcy1kYXRlcGlja2VyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Nwcy1kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY3BzLWRhdGVwaWNrZXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDcHNEYXRlcGlja2VyQ29tcG9uZW50XG4gIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uSW5pdCwgT25EZXN0cm95XG57XG4gIC8qKlxuICAgKiBMYWJlbCBvZiB0aGUgZGF0ZXBpY2tlciBlbGVtZW50LlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGxhYmVsID0gJyc7XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciBkYXRlcGlja2VyIGlzIGRpc2FibGVkLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFdpZHRoIG9mIHRoZSBkYXRlcGlja2VyIG9mIHR5cGUgbnVtYmVyIGRlbm90aW5nIHBpeGVscyBvciBzdHJpbmcuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgd2lkdGg6IG51bWJlciB8IHN0cmluZyA9ICcxMDAlJztcblxuICAvKipcbiAgICogUGxhY2Vob2xkZXIgdGV4dC5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBwbGFjZWhvbGRlciA9ICdNTS9ERC9ZWVlZJztcblxuICAvKipcbiAgICogQm90dG9tIGhpbnQgdGV4dCBmb3IgdGhlIGlucHV0IGZpZWxkLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGhpbnQgPSAnJztcblxuICAvKipcbiAgICogV2hlbiBlbmFibGVkLCBhIGNsZWFyIGljb24gaXMgZGlzcGxheWVkIHRvIGNsZWFyIHRoZSB2YWx1ZS5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBjbGVhcmFibGUgPSBmYWxzZTtcblxuICAvKipcbiAgICogSGlkZXMgaGludCBhbmQgdmFsaWRhdGlvbiBlcnJvcnMuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgaGlkZURldGFpbHMgPSBmYWxzZTtcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBjb21wb25lbnQgc2hvdWxkIGhhdmUgcGVyc2lzdGVudCBjbGVhciBpY29uLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHBlcnNpc3RlbnRDbGVhciA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgdG8gc2hvdyBidXR0b24gdG8gYmUgYWJsZSB0byBzZWxlY3QgdG9kYXkncyBkYXRlLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHNob3dUb2RheUJ1dHRvbiA9IHRydWU7XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciB0aGUgZGF0ZXBpY2tlciBkcm9wZG93biBzaG91bGQgb3BlbiBvbiBpbnB1dCBmb2N1cy5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBvcGVuT25JbnB1dEZvY3VzID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFdoZW4gaXQgaXMgbm90IGFuIGVtcHR5IHN0cmluZywgYW4gaW5mbyBpY29uIGlzIGRpc3BsYXllZCB0byBzaG93IHRleHQgZm9yIG1vcmUgaW5mby5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBpbmZvVG9vbHRpcCA9ICcnO1xuXG4gIC8qKlxuICAgKiBJbmZvVG9vbHRpcCBjbGFzcyBmb3Igc3R5bGluZy5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBpbmZvVG9vbHRpcENsYXNzID0gJ2Nwcy10b29sdGlwLWNvbnRlbnQnO1xuXG4gIC8qKlxuICAgKiBTaXplIG9mIGluZm9Ub29sdGlwLCBvZiB0eXBlIG51bWJlciBkZW5vdGluZyBwaXhlbHMgb3Igc3RyaW5nLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGluZm9Ub29sdGlwTWF4V2lkdGg6IG51bWJlciB8IHN0cmluZyA9ICcxMDAlJztcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBpbmZvVG9vbHRpcCBpcyBwZXJzaXN0ZW50LlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGluZm9Ub29sdGlwUGVyc2lzdGVudCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBQb3NpdGlvbiBvZiBpbmZvVG9vbHRpcCwgaXQgY2FuIGJlIFwidG9wXCIsIFwiYm90dG9tXCIsIFwibGVmdFwiIG9yIFwicmlnaHRcIi5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBpbmZvVG9vbHRpcFBvc2l0aW9uOiBDcHNUb29sdGlwUG9zaXRpb24gPSAndG9wJztcblxuICAvKipcbiAgICogU3R5bGluZyBhcHBlYXJhbmNlIG9mIGRhdGVwaWNrZXIgaW5wdXQsIGl0IGNhbiBiZSAnb3V0bGluZWQnLCAndW5kZXJsaW5lZCcgb3IgJ2JvcmRlcmxlc3MuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgYXBwZWFyYW5jZTogQ3BzRGF0ZXBpY2tlckFwcGVhcmFuY2VUeXBlID0gJ291dGxpbmVkJztcblxuICAvKipcbiAgICogTWluaW1hbCBkYXRlIGF2YWlsYWxiZSBmb3Igc2VsZWN0aW9uLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpXG4gIG1pbkRhdGUhOiBEYXRlO1xuXG4gIC8qKlxuICAgKiBNYXhpbWFsIGRhdGUgYXZhaWxhbGJlIGZvciBzZWxlY3Rpb24uXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KClcbiAgbWF4RGF0ZSE6IERhdGU7XG5cbiAgLyoqXG4gICAqIFZhbHVlIG9mIHRoZSBkYXRlcGlja2VyLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHNldCB2YWx1ZSh2YWx1ZTogRGF0ZSB8IG51bGwpIHtcbiAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMuc3RyaW5nRGF0ZSA9IHRoaXMuX2RhdGVUb1N0cmluZyh2YWx1ZSk7XG4gICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gIH1cblxuICBnZXQgdmFsdWUoKTogRGF0ZSB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsYmFjayB0byBpbnZva2Ugb24gdmFsdWUgY2hhbmdlLlxuICAgKiBAcGFyYW0ge0RhdGUgfCBudWxsfSB2YWx1ZSAtIHZhbHVlIGNoYW5nZS5cbiAgICogQGdyb3VwIEVtaXRzXG4gICAqL1xuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlIHwgbnVsbD4oKTtcblxuICBAVmlld0NoaWxkKCdkYXRlcGlja2VySW5wdXQnKVxuICBkYXRlcGlja2VySW5wdXQhOiBDcHNJbnB1dENvbXBvbmVudDtcblxuICBAVmlld0NoaWxkKCdjYWxlbmRhck1lbnUnKVxuICBjYWxlbmRhck1lbnUhOiBDcHNNZW51Q29tcG9uZW50O1xuXG4gIHN0cmluZ0RhdGUgPSAnJztcbiAgaXNPcGVuZWQgPSBmYWxzZTtcbiAgZXJyb3IgPSAnJztcbiAgY3Z0V2lkdGggPSAnJztcblxuICBwcml2YXRlIF9zdGF0dXNDaGFuZ2VzU3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIF92YWx1ZSE6IERhdGUgfCBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKEBTZWxmKCkgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfY29udHJvbDogTmdDb250cm9sKSB7XG4gICAgaWYgKHRoaXMuX2NvbnRyb2wpIHtcbiAgICAgIHRoaXMuX2NvbnRyb2wudmFsdWVBY2Nlc3NvciA9IHRoaXM7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jdnRXaWR0aCA9IGNvbnZlcnRTaXplKHRoaXMud2lkdGgpO1xuXG4gICAgdGhpcy5fc3RhdHVzQ2hhbmdlc1N1YnNjcmlwdGlvbiA9IHRoaXMuX2NvbnRyb2w/LnN0YXR1c0NoYW5nZXM/LnN1YnNjcmliZShcbiAgICAgICgpID0+IHtcbiAgICAgICAgdGhpcy5fY2hlY2tFcnJvcnMoKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fc3RhdHVzQ2hhbmdlc1N1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgb25DaGFuZ2UgPSAoZXZlbnQ6IGFueSkgPT4ge307XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBvblRvdWNoZWQgPSAoKSA9PiB7fTtcblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIG9uSW5wdXRWYWx1ZUNoYW5nZWQodmFsOiBzdHJpbmcpIHtcbiAgICB0aGlzLnN0cmluZ0RhdGUgPSB2YWw7XG4gICAgaWYgKCF2YWwpIHtcbiAgICAgIHRoaXMuX3VwZGF0ZVZhbHVlKG51bGwpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBkdCA9IHRoaXMuX3N0cmluZ1RvRGF0ZSh2YWwpO1xuICAgIGlmIChkdCkgdGhpcy5fdXBkYXRlVmFsdWUoZHQpO1xuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogRGF0ZSB8IG51bGwpIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVWYWx1ZSh2YWx1ZTogRGF0ZSB8IG51bGwpIHtcbiAgICBpZiAodGhpcy52YWx1ZSA9PT0gdmFsdWUpIHJldHVybjtcbiAgICB0aGlzLndyaXRlVmFsdWUodmFsdWUpO1xuICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICAgIHRoaXMudmFsdWVDaGFuZ2VkLmVtaXQodmFsdWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlVmFsdWVGcm9tSW5wdXRTdHJpbmcoKSB7XG4gICAgaWYgKCF0aGlzLnN0cmluZ0RhdGUpIHtcbiAgICAgIHRoaXMuX3VwZGF0ZVZhbHVlKG51bGwpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl91cGRhdGVWYWx1ZSh0aGlzLl9zdHJpbmdUb0RhdGUodGhpcy5zdHJpbmdEYXRlKSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfY2hlY2tEYXRlRm9ybWF0KGRhdGVTdHJpbmc6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGlmICghL15cXGRcXGRcXC9cXGRcXGRcXC9cXGRcXGRcXGRcXGQkLy50ZXN0KGRhdGVTdHJpbmcpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGNvbnN0IHBhcnRzID0gZGF0ZVN0cmluZy5zcGxpdCgnLycpLm1hcCgocCkgPT4gcGFyc2VJbnQocCwgMTApKTtcbiAgICBwYXJ0c1swXSAtPSAxO1xuICAgIGNvbnN0IGQgPSBuZXcgRGF0ZShwYXJ0c1syXSwgcGFydHNbMF0sIHBhcnRzWzFdKTtcbiAgICByZXR1cm4gKFxuICAgICAgZC5nZXRNb250aCgpID09PSBwYXJ0c1swXSAmJlxuICAgICAgZC5nZXREYXRlKCkgPT09IHBhcnRzWzFdICYmXG4gICAgICBkLmdldEZ1bGxZZWFyKCkgPT09IHBhcnRzWzJdXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NoZWNrRGF0ZUluUmFuZ2UoZGF0ZTogRGF0ZSwgbWluRGF0ZTogRGF0ZSwgbWF4RGF0ZTogRGF0ZSk6IGJvb2xlYW4ge1xuICAgIGlmICghbWluRGF0ZSAmJiAhbWF4RGF0ZSkgcmV0dXJuIHRydWU7XG4gICAgaWYgKG1pbkRhdGUgJiYgbWF4RGF0ZSkge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgZGF0ZS5nZXRUaW1lKCkgPj0gbWluRGF0ZS5nZXRUaW1lKCkgJiZcbiAgICAgICAgZGF0ZS5nZXRUaW1lKCkgPD0gbWF4RGF0ZS5nZXRUaW1lKClcbiAgICAgICk7XG4gICAgfVxuICAgIGlmIChtaW5EYXRlKSB7XG4gICAgICByZXR1cm4gZGF0ZS5nZXRUaW1lKCkgPj0gbWluRGF0ZS5nZXRUaW1lKCk7XG4gICAgfVxuICAgIHJldHVybiBkYXRlLmdldFRpbWUoKSA8PSBtYXhEYXRlLmdldFRpbWUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2RhdGVUb1N0cmluZyhkYXRlVmFsOiBEYXRlIHwgbnVsbCk6IHN0cmluZyB7XG4gICAgaWYgKCFkYXRlVmFsKSByZXR1cm4gJyc7XG4gICAgbGV0IG1vbnRoID0gJycgKyAoZGF0ZVZhbC5nZXRNb250aCgpICsgMSk7XG4gICAgaWYgKG1vbnRoLmxlbmd0aCA8IDIpIG1vbnRoID0gJzAnICsgbW9udGg7XG4gICAgbGV0IGRheSA9ICcnICsgZGF0ZVZhbC5nZXREYXRlKCk7XG4gICAgaWYgKGRheS5sZW5ndGggPCAyKSBkYXkgPSAnMCcgKyBkYXk7XG4gICAgY29uc3QgeWVhciA9IGRhdGVWYWwuZ2V0RnVsbFllYXIoKTtcbiAgICByZXR1cm4gYCR7bW9udGh9LyR7ZGF5fS8ke3llYXJ9YDtcbiAgfVxuXG4gIHByaXZhdGUgX3N0cmluZ1RvRGF0ZShkYXRlU3RyaW5nOiBzdHJpbmcpOiBEYXRlIHwgbnVsbCB7XG4gICAgaWYgKCF0aGlzLl9jaGVja0RhdGVGb3JtYXQoZGF0ZVN0cmluZykpIHJldHVybiBudWxsO1xuICAgIGNvbnN0IFttb250aCwgZGF5LCB5ZWFyXSA9IGRhdGVTdHJpbmcuc3BsaXQoJy8nKTtcbiAgICBjb25zdCBkdCA9IG5ldyBEYXRlKGAke3llYXJ9LSR7bW9udGh9LSR7ZGF5fWApO1xuICAgIGNvbnN0IGluUmFuZ2UgPSB0aGlzLl9jaGVja0RhdGVJblJhbmdlKGR0LCB0aGlzLm1pbkRhdGUsIHRoaXMubWF4RGF0ZSk7XG4gICAgcmV0dXJuIGluUmFuZ2UgPyBkdCA6IG51bGw7XG4gIH1cblxuICBwcml2YXRlIF9jaGVja0Vycm9ycygpIHtcbiAgICBpZiAodGhpcy5zdHJpbmdEYXRlICYmICF0aGlzLl9zdHJpbmdUb0RhdGUodGhpcy5zdHJpbmdEYXRlKSkge1xuICAgICAgdGhpcy5lcnJvciA9ICdEYXRlIGlzIGludmFsaWQnO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGVycm9ycyA9IHRoaXMuX2NvbnRyb2w/LmVycm9ycztcbiAgICBpZiAoIXRoaXMuX2NvbnRyb2w/LmNvbnRyb2w/LnRvdWNoZWQgfHwgIWVycm9ycykge1xuICAgICAgdGhpcy5lcnJvciA9ICcnO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICgncmVxdWlyZWQnIGluIGVycm9ycykge1xuICAgICAgdGhpcy5lcnJvciA9ICdGaWVsZCBpcyByZXF1aXJlZCc7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZXJyQXJyID0gT2JqZWN0LnZhbHVlcyhlcnJvcnMpO1xuICAgIGlmIChlcnJBcnIubGVuZ3RoIDwgMSkge1xuICAgICAgdGhpcy5lcnJvciA9ICcnO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBtZXNzYWdlID0gZXJyQXJyLmZpbmQoKG1zZykgPT4gdHlwZW9mIG1zZyA9PT0gJ3N0cmluZycpO1xuXG4gICAgdGhpcy5lcnJvciA9IG1lc3NhZ2UgfHwgJ1Vua25vd24gZXJyb3InO1xuICB9XG5cbiAgb25DbGVhckNhbGVuZGFyRGF0ZSgpIHtcbiAgICB0aGlzLm9uU2VsZWN0Q2FsZW5kYXJEYXRlKG51bGwpO1xuICB9XG5cbiAgb25TZWxlY3RDYWxlbmRhckRhdGUoZGF0ZVZhbDogRGF0ZSB8IG51bGwpIHtcbiAgICB0aGlzLnRvZ2dsZUNhbGVuZGFyKGZhbHNlKTtcbiAgICB0aGlzLndyaXRlVmFsdWUoZGF0ZVZhbCk7XG4gICAgdGhpcy5vbkNoYW5nZShkYXRlVmFsKTtcbiAgICB0aGlzLnZhbHVlQ2hhbmdlZC5lbWl0KGRhdGVWYWwpO1xuICB9XG5cbiAgb25JbnB1dEJsdXIoKSB7XG4gICAgaWYgKHRoaXMuaXNPcGVuZWQpIHJldHVybjtcbiAgICB0aGlzLl9jb250cm9sPy5jb250cm9sPy5tYXJrQXNUb3VjaGVkKCk7XG4gICAgdGhpcy5fdXBkYXRlVmFsdWVGcm9tSW5wdXRTdHJpbmcoKTtcbiAgICB0aGlzLl9jaGVja0Vycm9ycygpO1xuICB9XG5cbiAgb25JbnB1dEVudGVyQ2xpY2tlZCgpIHtcbiAgICBpZiAoIXRoaXMuaXNPcGVuZWQpIHJldHVybjtcbiAgICB0aGlzLl9jb250cm9sPy5jb250cm9sPy5tYXJrQXNUb3VjaGVkKCk7XG4gICAgdGhpcy5fdXBkYXRlVmFsdWVGcm9tSW5wdXRTdHJpbmcoKTtcbiAgICB0aGlzLl9jaGVja0Vycm9ycygpO1xuICAgIHRoaXMudG9nZ2xlQ2FsZW5kYXIoZmFsc2UpO1xuICB9XG5cbiAgb25DbGlja0NhbGVuZGFySWNvbigpIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkgcmV0dXJuO1xuICAgIGlmICh0aGlzLmlzT3BlbmVkKSB0aGlzLl91cGRhdGVWYWx1ZUZyb21JbnB1dFN0cmluZygpO1xuICAgIHRoaXMudG9nZ2xlQ2FsZW5kYXIoKTtcbiAgfVxuXG4gIG9uQmVmb3JlQ2FsZW5kYXJIaWRkZW4oKSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgIXRoaXMuaXNPcGVuZWQpIHJldHVybjtcbiAgICB0aGlzLl91cGRhdGVWYWx1ZUZyb21JbnB1dFN0cmluZygpO1xuICAgIHRoaXMudG9nZ2xlQ2FsZW5kYXIoZmFsc2UpO1xuICB9XG5cbiAgb25JbnB1dEZvY3VzKCkge1xuICAgIGlmICh0aGlzLm9wZW5PbklucHV0Rm9jdXMpIHRoaXMudG9nZ2xlQ2FsZW5kYXIodHJ1ZSk7XG4gIH1cblxuICBvbklucHV0Q2xlYXIoKSB7XG4gICAgaWYgKHRoaXMuaXNPcGVuZWQpIHRoaXMuZm9jdXNJbnB1dCgpO1xuICB9XG5cbiAgb25DYWxlbmRhckNvbnRlbnRDbGljaygpIHtcbiAgICBpZiAodGhpcy5pc09wZW5lZCkgdGhpcy5mb2N1c0lucHV0KCk7XG4gIH1cblxuICBmb2N1c0lucHV0KCkge1xuICAgIHRoaXMuZGF0ZXBpY2tlcklucHV0LmZvY3VzKCk7XG4gIH1cblxuICB0b2dnbGVDYWxlbmRhcihzaG93PzogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMuaXNPcGVuZWQgPT09IHNob3cpIHJldHVybjtcblxuICAgIGNvbnN0IHRhcmdldCA9XG4gICAgICB0aGlzLmRhdGVwaWNrZXJJbnB1dC5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcihcbiAgICAgICAgJy5jcHMtaW5wdXQtd3JhcCdcbiAgICAgICk7XG5cbiAgICBpZiAodHlwZW9mIHNob3cgPT09ICdib29sZWFuJykge1xuICAgICAgaWYgKHNob3cpIHtcbiAgICAgICAgdGhpcy5jYWxlbmRhck1lbnUuc2hvdyh7XG4gICAgICAgICAgdGFyZ2V0XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5jYWxlbmRhck1lbnUuaGlkZSgpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNhbGVuZGFyTWVudS50b2dnbGUoe1xuICAgICAgICB0YXJnZXRcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHRoaXMuaXNPcGVuZWQgPSB0aGlzLmNhbGVuZGFyTWVudS5pc1Zpc2libGUoKTtcblxuICAgIGlmICghdGhpcy5pc09wZW5lZCkge1xuICAgICAgdGhpcy5fY29udHJvbD8uY29udHJvbD8ubWFya0FzVG91Y2hlZCgpO1xuICAgICAgdGhpcy5fY2hlY2tFcnJvcnMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5mb2N1c0lucHV0KCk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiY3BzLWRhdGVwaWNrZXJcIlxuICBbbmdTdHlsZV09XCJ7IHdpZHRoOiBjdnRXaWR0aCB9XCJcbiAgW2NsYXNzLmZvY3VzZWRdPVwiaXNPcGVuZWRcIj5cbiAgPGNwcy1pbnB1dFxuICAgICNkYXRlcGlja2VySW5wdXRcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgIFt2YWx1ZV09XCJzdHJpbmdEYXRlXCJcbiAgICBbbGFiZWxdPVwibGFiZWxcIlxuICAgIHByZWZpeEljb249XCJkYXRlcGlja2VyXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIChwcmVmaXhJY29uQ2xpY2tlZCk9XCJvbkNsaWNrQ2FsZW5kYXJJY29uKClcIlxuICAgIFtwcmVmaXhJY29uQ2xpY2thYmxlXT1cInRydWVcIlxuICAgIChmb2N1c2VkKT1cIm9uSW5wdXRGb2N1cygpXCJcbiAgICAodmFsdWVDaGFuZ2VkKT1cIm9uSW5wdXRWYWx1ZUNoYW5nZWQoJGV2ZW50KVwiXG4gICAgW2NsZWFyYWJsZV09XCJjbGVhcmFibGVcIlxuICAgIChibHVycmVkKT1cIm9uSW5wdXRCbHVyKClcIlxuICAgIChjbGVhcmVkKT1cIm9uSW5wdXRDbGVhcigpXCJcbiAgICAoZW50ZXJDbGlja2VkKT1cIm9uSW5wdXRFbnRlckNsaWNrZWQoKVwiXG4gICAgW3dpZHRoXT1cIndpZHRoXCJcbiAgICBbaGludF09XCJoaW50XCJcbiAgICBbaGlkZURldGFpbHNdPVwiaGlkZURldGFpbHNcIlxuICAgIFtpbmZvVG9vbHRpcF09XCJpbmZvVG9vbHRpcFwiXG4gICAgW2luZm9Ub29sdGlwQ2xhc3NdPVwiaW5mb1Rvb2x0aXBDbGFzc1wiXG4gICAgW2luZm9Ub29sdGlwTWF4V2lkdGhdPVwiaW5mb1Rvb2x0aXBNYXhXaWR0aFwiXG4gICAgW2luZm9Ub29sdGlwUGVyc2lzdGVudF09XCJpbmZvVG9vbHRpcFBlcnNpc3RlbnRcIlxuICAgIFtwZXJzaXN0ZW50Q2xlYXJdPVwicGVyc2lzdGVudENsZWFyXCJcbiAgICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlXCJcbiAgICBbZXJyb3JdPVwiZXJyb3JcIj48L2Nwcy1pbnB1dD5cbiAgPGNwcy1tZW51XG4gICAgI2NhbGVuZGFyTWVudVxuICAgIFt3aXRoQXJyb3ddPVwiZmFsc2VcIlxuICAgIChiZWZvcmVNZW51SGlkZGVuKT1cIm9uQmVmb3JlQ2FsZW5kYXJIaWRkZW4oKVwiXG4gICAgKGNvbnRlbnRDbGlja2VkKT1cIm9uQ2FsZW5kYXJDb250ZW50Q2xpY2soKVwiXG4gICAgW2ZvY3VzT25TaG93XT1cImZhbHNlXCJcbiAgICBoaWRlVHJhbnNpdGlvbk9wdGlvbnM9XCIwcyBsaW5lYXJcIlxuICAgIGNvbnRhaW5lckNsYXNzPVwiY3BzLWRhdGVwaWNrZXItY2FsZW5kYXItbWVudVwiPlxuICAgIDxkaXYgY2xhc3M9XCJjcHMtZGF0ZXBpY2tlci1jYWxlbmRhclwiPlxuICAgICAgPHAtY2FsZW5kYXJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXG4gICAgICAgIFtzaG93SWNvbl09XCJ0cnVlXCJcbiAgICAgICAgW3Nob3dCdXR0b25CYXJdPVwic2hvd1RvZGF5QnV0dG9uXCJcbiAgICAgICAgW2lubGluZV09XCJ0cnVlXCJcbiAgICAgICAgKG9uU2VsZWN0KT1cIm9uU2VsZWN0Q2FsZW5kYXJEYXRlKCRldmVudClcIlxuICAgICAgICAob25DbGVhckNsaWNrKT1cIm9uQ2xlYXJDYWxlbmRhckRhdGUoKVwiXG4gICAgICAgIFtzaG93T3RoZXJNb250aHNdPVwiZmFsc2VcIlxuICAgICAgICBbbWluRGF0ZV09XCJtaW5EYXRlXCJcbiAgICAgICAgW21heERhdGVdPVwibWF4RGF0ZVwiPlxuICAgICAgPC9wLWNhbGVuZGFyPlxuICAgIDwvZGl2PlxuICA8L2Nwcy1tZW51PlxuPC9kaXY+XG4iXX0=
382
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3BzLWRhdGVwaWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3BzLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY3BzLWRhdGVwaWNrZXIvY3BzLWRhdGVwaWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3BzLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY3BzLWRhdGVwaWNrZXIvY3BzLWRhdGVwaWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLElBQUksRUFDSixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixXQUFXLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFckUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTlELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7OztBQVdsRTs7O0dBR0c7QUFjSCxNQUFNLE9BQU8sc0JBQXNCO0lBaUhqQzs7OztPQUlHO0lBQ0gsSUFBYSxLQUFLLENBQUMsS0FBa0I7UUFDbkMsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkIsQ0FBQztJ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QUs7c0JBQWIsS0FBSztnQkFNRyxRQUFRO3NCQUFoQixLQUFLO2dCQU1HLEtBQUs7c0JBQWIsS0FBSztnQkFNRyxXQUFXO3NCQUFuQixLQUFLO2dCQU1HLElBQUk7c0JBQVosS0FBSztnQkFNRyxTQUFTO3NCQUFqQixLQUFLO2dCQU1HLFdBQVc7c0JBQW5CLEtBQUs7Z0JBTUcsZUFBZTtzQkFBdkIsS0FBSztnQkFNRyxlQUFlO3NCQUF2QixLQUFLO2dCQU1HLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFNRyxXQUFXO3NCQUFuQixLQUFLO2dCQU1HLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFNRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBTUcscUJBQXFCO3NCQUE3QixLQUFLO2dCQU1HLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFNRyxVQUFVO3NCQUFsQixLQUFLO2dCQU9OLE9BQU87c0JBRE4sS0FBSztnQkFRTixPQUFPO3NCQUROLEtBQUs7Z0JBUU8sS0FBSztzQkFBakIsS0FBSztnQkFlSSxZQUFZO3NCQUFyQixNQUFNO2dCQUdQLGVBQWU7c0JBRGQsU0FBUzt1QkFBQyxpQkFBaUI7Z0JBSTVCLFlBQVk7c0JBRFgsU0FBUzt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG4gIFNlbGYsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBGb3Jtc01vZHVsZSwgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ2FsZW5kYXJNb2R1bGUgfSBmcm9tICdwcmltZW5nL2NhbGVuZGFyJztcbmltcG9ydCB7IENwc0lucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vY3BzLWlucHV0L2Nwcy1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjb252ZXJ0U2l6ZSB9IGZyb20gJy4uLy4uL3V0aWxzL2ludGVybmFsL3NpemUtdXRpbHMnO1xuaW1wb3J0IHsgQ3BzVG9vbHRpcFBvc2l0aW9uIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9jcHMtdG9vbHRpcC9jcHMtdG9vbHRpcC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ3BzTWVudUNvbXBvbmVudCB9IGZyb20gJy4uL2Nwcy1tZW51L2Nwcy1tZW51LmNvbXBvbmVudCc7XG5cbi8qKlxuICogQ3BzRGF0ZXBpY2tlckFwcGVhcmFuY2VUeXBlIGlzIHVzZWQgdG8gZGVmaW5lIHRoZSBib3JkZXIgb2YgdGhlIGRhdGVwaWNrZXIgaW5wdXQuXG4gKiBAZ3JvdXAgVHlwZXNcbiAqL1xuZXhwb3J0IHR5cGUgQ3BzRGF0ZXBpY2tlckFwcGVhcmFuY2VUeXBlID1cbiAgfCAnb3V0bGluZWQnXG4gIHwgJ3VuZGVybGluZWQnXG4gIHwgJ2JvcmRlcmxlc3MnO1xuXG4vKipcbiAqIENwc0RhdGVwaWNrZXJDb21wb25lbnQgaXMgYW4gaW5wdXQgY29tcG9uZW50IHRvIHByb3ZpZGUgZGF0ZSBpbnB1dC5cbiAqIEBncm91cCBDb21wb25lbnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ3BzSW5wdXRDb21wb25lbnQsXG4gICAgQ2FsZW5kYXJNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIENwc01lbnVDb21wb25lbnRcbiAgXSxcbiAgc2VsZWN0b3I6ICdjcHMtZGF0ZXBpY2tlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jcHMtZGF0ZXBpY2tlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Nwcy1kYXRlcGlja2VyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ3BzRGF0ZXBpY2tlckNvbXBvbmVudFxuICBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQsIE9uRGVzdHJveVxue1xuICAvKipcbiAgICogTGFiZWwgb2YgdGhlIGRhdGVwaWNrZXIgZWxlbWVudC5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBsYWJlbCA9ICcnO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgZGF0ZXBpY2tlciBpcyBkaXNhYmxlZC5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBXaWR0aCBvZiB0aGUgZGF0ZXBpY2tlciBvZiB0eXBlIG51bWJlciBkZW5vdGluZyBwaXhlbHMgb3Igc3RyaW5nLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHdpZHRoOiBudW1iZXIgfCBzdHJpbmcgPSAnMTAwJSc7XG5cbiAgLyoqXG4gICAqIFBsYWNlaG9sZGVyIHRleHQuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgcGxhY2Vob2xkZXIgPSAnTU0vREQvWVlZWSc7XG5cbiAgLyoqXG4gICAqIEJvdHRvbSBoaW50IHRleHQgZm9yIHRoZSBpbnB1dCBmaWVsZC5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBoaW50ID0gJyc7XG5cbiAgLyoqXG4gICAqIFdoZW4gZW5hYmxlZCwgYSBjbGVhciBpY29uIGlzIGRpc3BsYXllZCB0byBjbGVhciB0aGUgdmFsdWUuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgY2xlYXJhYmxlID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEhpZGVzIGhpbnQgYW5kIHZhbGlkYXRpb24gZXJyb3JzLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGhpZGVEZXRhaWxzID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciB0aGUgY29tcG9uZW50IHNob3VsZCBoYXZlIHBlcnNpc3RlbnQgY2xlYXIgaWNvbi5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBwZXJzaXN0ZW50Q2xlYXIgPSBmYWxzZTtcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRvIHNob3cgYnV0dG9uIHRvIGJlIGFibGUgdG8gc2VsZWN0IHRvZGF5J3MgZGF0ZS5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBzaG93VG9kYXlCdXR0b24gPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgdGhlIGRhdGVwaWNrZXIgZHJvcGRvd24gc2hvdWxkIG9wZW4gb24gaW5wdXQgZm9jdXMuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgb3Blbk9uSW5wdXRGb2N1cyA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBXaGVuIGl0IGlzIG5vdCBhbiBlbXB0eSBzdHJpbmcsIGFuIGluZm8gaWNvbiBpcyBkaXNwbGF5ZWQgdG8gc2hvdyB0ZXh0IGZvciBtb3JlIGluZm8uXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgaW5mb1Rvb2x0aXAgPSAnJztcblxuICAvKipcbiAgICogSW5mb1Rvb2x0aXAgY2xhc3MgZm9yIHN0eWxpbmcuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgaW5mb1Rvb2x0aXBDbGFzcyA9ICdjcHMtdG9vbHRpcC1jb250ZW50JztcblxuICAvKipcbiAgICogU2l6ZSBvZiBpbmZvVG9vbHRpcCwgb2YgdHlwZSBudW1iZXIgZGVub3RpbmcgcGl4ZWxzIG9yIHN0cmluZy5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBpbmZvVG9vbHRpcE1heFdpZHRoOiBudW1iZXIgfCBzdHJpbmcgPSAnMTAwJSc7XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciB0aGUgaW5mb1Rvb2x0aXAgaXMgcGVyc2lzdGVudC5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBpbmZvVG9vbHRpcFBlcnNpc3RlbnQgPSBmYWxzZTtcblxuICAvKipcbiAgICogUG9zaXRpb24gb2YgaW5mb1Rvb2x0aXAsIGl0IGNhbiBiZSBcInRvcFwiLCBcImJvdHRvbVwiLCBcImxlZnRcIiBvciBcInJpZ2h0XCIuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgaW5mb1Rvb2x0aXBQb3NpdGlvbjogQ3BzVG9vbHRpcFBvc2l0aW9uID0gJ3RvcCc7XG5cbiAgLyoqXG4gICAqIFN0eWxpbmcgYXBwZWFyYW5jZSBvZiBkYXRlcGlja2VyIGlucHV0LCBpdCBjYW4gYmUgJ291dGxpbmVkJywgJ3VuZGVybGluZWQnIG9yICdib3JkZXJsZXNzLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGFwcGVhcmFuY2U6IENwc0RhdGVwaWNrZXJBcHBlYXJhbmNlVHlwZSA9ICdvdXRsaW5lZCc7XG5cbiAgLyoqXG4gICAqIE1pbmltYWwgZGF0ZSBhdmFpbGFsYmUgZm9yIHNlbGVjdGlvbi5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKVxuICBtaW5EYXRlITogRGF0ZTtcblxuICAvKipcbiAgICogTWF4aW1hbCBkYXRlIGF2YWlsYWxiZSBmb3Igc2VsZWN0aW9uLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpXG4gIG1heERhdGUhOiBEYXRlO1xuXG4gIC8qKlxuICAgKiBWYWx1ZSBvZiB0aGUgZGF0ZXBpY2tlci5cbiAgICogQGRlZmF1bHQgbnVsbFxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHNldCB2YWx1ZSh2YWx1ZTogRGF0ZSB8IG51bGwpIHtcbiAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMuc3RyaW5nRGF0ZSA9IHRoaXMuX2RhdGVUb1N0cmluZyh2YWx1ZSk7XG4gICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gIH1cblxuICBnZXQgdmFsdWUoKTogRGF0ZSB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsYmFjayB0byBpbnZva2Ugb24gdmFsdWUgY2hhbmdlLlxuICAgKiBAcGFyYW0ge0RhdGUgfCBudWxsfSB2YWx1ZSAtIHZhbHVlIGNoYW5nZS5cbiAgICogQGdyb3VwIEVtaXRzXG4gICAqL1xuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlIHwgbnVsbD4oKTtcblxuICBAVmlld0NoaWxkKCdkYXRlcGlja2VySW5wdXQnKVxuICBkYXRlcGlja2VySW5wdXQhOiBDcHNJbnB1dENvbXBvbmVudDtcblxuICBAVmlld0NoaWxkKCdjYWxlbmRhck1lbnUnKVxuICBjYWxlbmRhck1lbnUhOiBDcHNNZW51Q29tcG9uZW50O1xuXG4gIHN0cmluZ0RhdGUgPSAnJztcbiAgaXNPcGVuZWQgPSBmYWxzZTtcbiAgZXJyb3IgPSAnJztcbiAgY3Z0V2lkdGggPSAnJztcblxuICBwcml2YXRlIF9zdGF0dXNDaGFuZ2VzU3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIF92YWx1ZTogRGF0ZSB8IG51bGwgPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKEBTZWxmKCkgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfY29udHJvbDogTmdDb250cm9sKSB7XG4gICAgaWYgKHRoaXMuX2NvbnRyb2wpIHtcbiAgICAgIHRoaXMuX2NvbnRyb2wudmFsdWVBY2Nlc3NvciA9IHRoaXM7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jdnRXaWR0aCA9IGNvbnZlcnRTaXplKHRoaXMud2lkdGgpO1xuXG4gICAgdGhpcy5fc3RhdHVzQ2hhbmdlc1N1YnNjcmlwdGlvbiA9IHRoaXMuX2NvbnRyb2w/LnN0YXR1c0NoYW5nZXM/LnN1YnNjcmliZShcbiAgICAgICgpID0+IHtcbiAgICAgICAgdGhpcy5fY2hlY2tFcnJvcnMoKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fc3RhdHVzQ2hhbmdlc1N1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgb25DaGFuZ2UgPSAoZXZlbnQ6IGFueSkgPT4ge307XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBvblRvdWNoZWQgPSAoKSA9PiB7fTtcblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIG9uSW5wdXRWYWx1ZUNoYW5nZWQodmFsOiBzdHJpbmcpIHtcbiAgICB0aGlzLnN0cmluZ0RhdGUgPSB2YWw7XG4gICAgaWYgKCF2YWwpIHtcbiAgICAgIHRoaXMuX3VwZGF0ZVZhbHVlKG51bGwpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBkdCA9IHRoaXMuX3N0cmluZ1RvRGF0ZSh2YWwpO1xuICAgIGlmIChkdCkgdGhpcy5fdXBkYXRlVmFsdWUoZHQpO1xuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogRGF0ZSB8IG51bGwpIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVWYWx1ZSh2YWx1ZTogRGF0ZSB8IG51bGwpIHtcbiAgICBpZiAodGhpcy52YWx1ZSA9PT0gdmFsdWUpIHJldHVybjtcbiAgICB0aGlzLndyaXRlVmFsdWUodmFsdWUpO1xuICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICAgIHRoaXMudmFsdWVDaGFuZ2VkLmVtaXQodmFsdWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlVmFsdWVGcm9tSW5wdXRTdHJpbmcoKSB7XG4gICAgaWYgKCF0aGlzLnN0cmluZ0RhdGUpIHtcbiAgICAgIHRoaXMuX3VwZGF0ZVZhbHVlKG51bGwpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl91cGRhdGVWYWx1ZSh0aGlzLl9zdHJpbmdUb0RhdGUodGhpcy5zdHJpbmdEYXRlKSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfY2hlY2tEYXRlRm9ybWF0KGRhdGVTdHJpbmc6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGlmICghL15cXGRcXGRcXC9cXGRcXGRcXC9cXGRcXGRcXGRcXGQkLy50ZXN0KGRhdGVTdHJpbmcpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGNvbnN0IHBhcnRzID0gZGF0ZVN0cmluZy5zcGxpdCgnLycpLm1hcCgocCkgPT4gcGFyc2VJbnQocCwgMTApKTtcbiAgICBwYXJ0c1swXSAtPSAxO1xuICAgIGNvbnN0IGQgPSBuZXcgRGF0ZShwYXJ0c1syXSwgcGFydHNbMF0sIHBhcnRzWzFdKTtcbiAgICByZXR1cm4gKFxuICAgICAgZC5nZXRNb250aCgpID09PSBwYXJ0c1swXSAmJlxuICAgICAgZC5nZXREYXRlKCkgPT09IHBhcnRzWzFdICYmXG4gICAgICBkLmdldEZ1bGxZZWFyKCkgPT09IHBhcnRzWzJdXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NoZWNrRGF0ZUluUmFuZ2UoZGF0ZTogRGF0ZSwgbWluRGF0ZTogRGF0ZSwgbWF4RGF0ZTogRGF0ZSk6IGJvb2xlYW4ge1xuICAgIGlmICghbWluRGF0ZSAmJiAhbWF4RGF0ZSkgcmV0dXJuIHRydWU7XG4gICAgaWYgKG1pbkRhdGUgJiYgbWF4RGF0ZSkge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgZGF0ZS5nZXRUaW1lKCkgPj0gbWluRGF0ZS5nZXRUaW1lKCkgJiZcbiAgICAgICAgZGF0ZS5nZXRUaW1lKCkgPD0gbWF4RGF0ZS5nZXRUaW1lKClcbiAgICAgICk7XG4gICAgfVxuICAgIGlmIChtaW5EYXRlKSB7XG4gICAgICByZXR1cm4gZGF0ZS5nZXRUaW1lKCkgPj0gbWluRGF0ZS5nZXRUaW1lKCk7XG4gICAgfVxuICAgIHJldHVybiBkYXRlLmdldFRpbWUoKSA8PSBtYXhEYXRlLmdldFRpbWUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2RhdGVUb1N0cmluZyhkYXRlVmFsOiBEYXRlIHwgbnVsbCk6IHN0cmluZyB7XG4gICAgaWYgKCFkYXRlVmFsKSByZXR1cm4gJyc7XG4gICAgbGV0IG1vbnRoID0gJycgKyAoZGF0ZVZhbC5nZXRNb250aCgpICsgMSk7XG4gICAgaWYgKG1vbnRoLmxlbmd0aCA8IDIpIG1vbnRoID0gJzAnICsgbW9udGg7XG4gICAgbGV0IGRheSA9ICcnICsgZGF0ZVZhbC5nZXREYXRlKCk7XG4gICAgaWYgKGRheS5sZW5ndGggPCAyKSBkYXkgPSAnMCcgKyBkYXk7XG4gICAgY29uc3QgeWVhciA9IGRhdGVWYWwuZ2V0RnVsbFllYXIoKTtcbiAgICByZXR1cm4gYCR7bW9udGh9LyR7ZGF5fS8ke3llYXJ9YDtcbiAgfVxuXG4gIHByaXZhdGUgX3N0cmluZ1RvRGF0ZShkYXRlU3RyaW5nOiBzdHJpbmcpOiBEYXRlIHwgbnVsbCB7XG4gICAgaWYgKCF0aGlzLl9jaGVja0RhdGVGb3JtYXQoZGF0ZVN0cmluZykpIHJldHVybiBudWxsO1xuICAgIGNvbnN0IFttb250aCwgZGF5LCB5ZWFyXSA9IGRhdGVTdHJpbmcuc3BsaXQoJy8nKTtcbiAgICBjb25zdCBkdCA9IG5ldyBEYXRlKGAke3llYXJ9LSR7bW9udGh9LSR7ZGF5fWApO1xuICAgIGNvbnN0IGluUmFuZ2UgPSB0aGlzLl9jaGVja0RhdGVJblJhbmdlKGR0LCB0aGlzLm1pbkRhdGUsIHRoaXMubWF4RGF0ZSk7XG4gICAgcmV0dXJuIGluUmFuZ2UgPyBkdCA6IG51bGw7XG4gIH1cblxuICBwcml2YXRlIF9jaGVja0Vycm9ycygpIHtcbiAgICBpZiAodGhpcy5zdHJpbmdEYXRlICYmICF0aGlzLl9zdHJpbmdUb0RhdGUodGhpcy5zdHJpbmdEYXRlKSkge1xuICAgICAgdGhpcy5lcnJvciA9ICdEYXRlIGlzIGludmFsaWQnO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGVycm9ycyA9IHRoaXMuX2NvbnRyb2w/LmVycm9ycztcbiAgICBpZiAoIXRoaXMuX2NvbnRyb2w/LmNvbnRyb2w/LnRvdWNoZWQgfHwgIWVycm9ycykge1xuICAgICAgdGhpcy5lcnJvciA9ICcnO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICgncmVxdWlyZWQnIGluIGVycm9ycykge1xuICAgICAgdGhpcy5lcnJvciA9ICdGaWVsZCBpcyByZXF1aXJlZCc7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZXJyQXJyID0gT2JqZWN0LnZhbHVlcyhlcnJvcnMpO1xuICAgIGlmIChlcnJBcnIubGVuZ3RoIDwgMSkge1xuICAgICAgdGhpcy5lcnJvciA9ICcnO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBtZXNzYWdlID0gZXJyQXJyLmZpbmQoKG1zZykgPT4gdHlwZW9mIG1zZyA9PT0gJ3N0cmluZycpO1xuXG4gICAgdGhpcy5lcnJvciA9IG1lc3NhZ2UgfHwgJ1Vua25vd24gZXJyb3InO1xuICB9XG5cbiAgb25DbGVhckNhbGVuZGFyRGF0ZSgpIHtcbiAgICB0aGlzLm9uU2VsZWN0Q2FsZW5kYXJEYXRlKG51bGwpO1xuICB9XG5cbiAgb25TZWxlY3RDYWxlbmRhckRhdGUoZGF0ZVZhbDogRGF0ZSB8IG51bGwpIHtcbiAgICB0aGlzLnRvZ2dsZUNhbGVuZGFyKGZhbHNlKTtcbiAgICB0aGlzLndyaXRlVmFsdWUoZGF0ZVZhbCk7XG4gICAgdGhpcy5vbkNoYW5nZShkYXRlVmFsKTtcbiAgICB0aGlzLnZhbHVlQ2hhbmdlZC5lbWl0KGRhdGVWYWwpO1xuICB9XG5cbiAgb25JbnB1dEJsdXIoKSB7XG4gICAgaWYgKHRoaXMuaXNPcGVuZWQpIHJldHVybjtcbiAgICB0aGlzLl9jb250cm9sPy5jb250cm9sPy5tYXJrQXNUb3VjaGVkKCk7XG4gICAgdGhpcy5fdXBkYXRlVmFsdWVGcm9tSW5wdXRTdHJpbmcoKTtcbiAgICB0aGlzLl9jaGVja0Vycm9ycygpO1xuICB9XG5cbiAgb25JbnB1dEVudGVyQ2xpY2tlZCgpIHtcbiAgICBpZiAoIXRoaXMuaXNPcGVuZWQpIHJldHVybjtcbiAgICB0aGlzLl9jb250cm9sPy5jb250cm9sPy5tYXJrQXNUb3VjaGVkKCk7XG4gICAgdGhpcy5fdXBkYXRlVmFsdWVGcm9tSW5wdXRTdHJpbmcoKTtcbiAgICB0aGlzLl9jaGVja0Vycm9ycygpO1xuICAgIHRoaXMudG9nZ2xlQ2FsZW5kYXIoZmFsc2UpO1xuICB9XG5cbiAgb25DbGlja0NhbGVuZGFySWNvbigpIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkgcmV0dXJuO1xuICAgIGlmICh0aGlzLmlzT3BlbmVkKSB0aGlzLl91cGRhdGVWYWx1ZUZyb21JbnB1dFN0cmluZygpO1xuICAgIHRoaXMudG9nZ2xlQ2FsZW5kYXIoKTtcbiAgfVxuXG4gIG9uQmVmb3JlQ2FsZW5kYXJIaWRkZW4oKSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgIXRoaXMuaXNPcGVuZWQpIHJldHVybjtcbiAgICB0aGlzLl91cGRhdGVWYWx1ZUZyb21JbnB1dFN0cmluZygpO1xuICAgIHRoaXMudG9nZ2xlQ2FsZW5kYXIoZmFsc2UpO1xuICB9XG5cbiAgb25JbnB1dEZvY3VzKCkge1xuICAgIGlmICh0aGlzLm9wZW5PbklucHV0Rm9jdXMpIHRoaXMudG9nZ2xlQ2FsZW5kYXIodHJ1ZSk7XG4gIH1cblxuICBvbklucHV0Q2xlYXIoKSB7XG4gICAgaWYgKHRoaXMuaXNPcGVuZWQpIHRoaXMuZm9jdXNJbnB1dCgpO1xuICB9XG5cbiAgb25DYWxlbmRhckNvbnRlbnRDbGljaygpIHtcbiAgICBpZiAodGhpcy5pc09wZW5lZCkgdGhpcy5mb2N1c0lucHV0KCk7XG4gIH1cblxuICBmb2N1c0lucHV0KCkge1xuICAgIHRoaXMuZGF0ZXBpY2tlcklucHV0LmZvY3VzKCk7XG4gIH1cblxuICB0b2dnbGVDYWxlbmRhcihzaG93PzogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMuaXNPcGVuZWQgPT09IHNob3cpIHJldHVybjtcblxuICAgIGNvbnN0IHRhcmdldCA9XG4gICAgICB0aGlzLmRhdGVwaWNrZXJJbnB1dC5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcihcbiAgICAgICAgJy5jcHMtaW5wdXQtd3JhcCdcbiAgICAgICk7XG5cbiAgICBpZiAodHlwZW9mIHNob3cgPT09ICdib29sZWFuJykge1xuICAgICAgaWYgKHNob3cpIHtcbiAgICAgICAgdGhpcy5jYWxlbmRhck1lbnUuc2hvdyh7XG4gICAgICAgICAgdGFyZ2V0XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5jYWxlbmRhck1lbnUuaGlkZSgpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNhbGVuZGFyTWVudS50b2dnbGUoe1xuICAgICAgICB0YXJnZXRcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHRoaXMuaXNPcGVuZWQgPSB0aGlzLmNhbGVuZGFyTWVudS5pc1Zpc2libGUoKTtcblxuICAgIGlmICghdGhpcy5pc09wZW5lZCkge1xuICAgICAgdGhpcy5fY29udHJvbD8uY29udHJvbD8ubWFya0FzVG91Y2hlZCgpO1xuICAgICAgdGhpcy5fY2hlY2tFcnJvcnMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5mb2N1c0lucHV0KCk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiY3BzLWRhdGVwaWNrZXJcIlxuICBbbmdTdHlsZV09XCJ7IHdpZHRoOiBjdnRXaWR0aCB9XCJcbiAgW2NsYXNzLmZvY3VzZWRdPVwiaXNPcGVuZWRcIj5cbiAgPGNwcy1pbnB1dFxuICAgICNkYXRlcGlja2VySW5wdXRcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgIFt2YWx1ZV09XCJzdHJpbmdEYXRlXCJcbiAgICBbbGFiZWxdPVwibGFiZWxcIlxuICAgIHByZWZpeEljb249XCJkYXRlcGlja2VyXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIChwcmVmaXhJY29uQ2xpY2tlZCk9XCJvbkNsaWNrQ2FsZW5kYXJJY29uKClcIlxuICAgIFtwcmVmaXhJY29uQ2xpY2thYmxlXT1cInRydWVcIlxuICAgIChmb2N1c2VkKT1cIm9uSW5wdXRGb2N1cygpXCJcbiAgICAodmFsdWVDaGFuZ2VkKT1cIm9uSW5wdXRWYWx1ZUNoYW5nZWQoJGV2ZW50KVwiXG4gICAgW2NsZWFyYWJsZV09XCJjbGVhcmFibGVcIlxuICAgIChibHVycmVkKT1cIm9uSW5wdXRCbHVyKClcIlxuICAgIChjbGVhcmVkKT1cIm9uSW5wdXRDbGVhcigpXCJcbiAgICAoZW50ZXJDbGlja2VkKT1cIm9uSW5wdXRFbnRlckNsaWNrZWQoKVwiXG4gICAgW3dpZHRoXT1cIndpZHRoXCJcbiAgICBbaGludF09XCJoaW50XCJcbiAgICBbaGlkZURldGFpbHNdPVwiaGlkZURldGFpbHNcIlxuICAgIFtpbmZvVG9vbHRpcF09XCJpbmZvVG9vbHRpcFwiXG4gICAgW2luZm9Ub29sdGlwQ2xhc3NdPVwiaW5mb1Rvb2x0aXBDbGFzc1wiXG4gICAgW2luZm9Ub29sdGlwTWF4V2lkdGhdPVwiaW5mb1Rvb2x0aXBNYXhXaWR0aFwiXG4gICAgW2luZm9Ub29sdGlwUGVyc2lzdGVudF09XCJpbmZvVG9vbHRpcFBlcnNpc3RlbnRcIlxuICAgIFtwZXJzaXN0ZW50Q2xlYXJdPVwicGVyc2lzdGVudENsZWFyXCJcbiAgICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlXCJcbiAgICBbZXJyb3JdPVwiZXJyb3JcIj48L2Nwcy1pbnB1dD5cbiAgPGNwcy1tZW51XG4gICAgI2NhbGVuZGFyTWVudVxuICAgIFt3aXRoQXJyb3ddPVwiZmFsc2VcIlxuICAgIChiZWZvcmVNZW51SGlkZGVuKT1cIm9uQmVmb3JlQ2FsZW5kYXJIaWRkZW4oKVwiXG4gICAgKGNvbnRlbnRDbGlja2VkKT1cIm9uQ2FsZW5kYXJDb250ZW50Q2xpY2soKVwiXG4gICAgW2ZvY3VzT25TaG93XT1cImZhbHNlXCJcbiAgICBoaWRlVHJhbnNpdGlvbk9wdGlvbnM9XCIwcyBsaW5lYXJcIlxuICAgIGNvbnRhaW5lckNsYXNzPVwiY3BzLWRhdGVwaWNrZXItY2FsZW5kYXItbWVudVwiPlxuICAgIDxkaXYgY2xhc3M9XCJjcHMtZGF0ZXBpY2tlci1jYWxlbmRhclwiPlxuICAgICAgPHAtY2FsZW5kYXJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXG4gICAgICAgIFtzaG93SWNvbl09XCJ0cnVlXCJcbiAgICAgICAgW3Nob3dCdXR0b25CYXJdPVwic2hvd1RvZGF5QnV0dG9uXCJcbiAgICAgICAgW2lubGluZV09XCJ0cnVlXCJcbiAgICAgICAgKG9uU2VsZWN0KT1cIm9uU2VsZWN0Q2FsZW5kYXJEYXRlKCRldmVudClcIlxuICAgICAgICAob25DbGVhckNsaWNrKT1cIm9uQ2xlYXJDYWxlbmRhckRhdGUoKVwiXG4gICAgICAgIFtzaG93T3RoZXJNb250aHNdPVwiZmFsc2VcIlxuICAgICAgICBbbWluRGF0ZV09XCJtaW5EYXRlXCJcbiAgICAgICAgW21heERhdGVdPVwibWF4RGF0ZVwiPlxuICAgICAgPC9wLWNhbGVuZGFyPlxuICAgIDwvZGl2PlxuICA8L2Nwcy1tZW51PlxuPC9kaXY+XG4iXX0=
@@ -14,6 +14,7 @@ import * as i2 from "@angular/common";
14
14
  export class CpsInputComponent {
15
15
  /**
16
16
  * Value of the input.
17
+ * @default ''
17
18
  * @group Props
18
19
  */
19
20
  set value(value) {
@@ -381,4 +382,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
381
382
  type: ViewChild,
382
383
  args: ['prefixTextSpan']
383
384
  }] } });
384
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3BzLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nwcy11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2Nwcy1pbnB1dC9jcHMtaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3BzLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY3BzLWlucHV0L2Nwcy1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUdMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUdMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxFQUNKLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0wsZ0JBQWdCLEVBR2pCLE1BQU0sZ0NBQWdDLENBQUM7QUFFeEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzlELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDOzs7O0FBU3RGOzs7R0FHRztBQWFILE1BQU0sT0FBTyxpQkFBaUI7SUE2STVCOzs7T0FHRztJQUNILElBQWEsS0FBSyxDQUFDLEtBQWE7UUFDOUIsSUFBSSxDQUFDLEtBQUs7WUFBRSxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBcURELFlBQzhCLFFBQW1CLEVBQ3hDLFVBQW1D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RyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBTUcsY0FBYztzQkFBdEIsS0FBSztnQkFNRyxVQUFVO3NCQUFsQixLQUFLO2dCQU1HLFdBQVc7c0JBQW5CLEtBQUs7Z0JBTUcsZUFBZTtzQkFBdkIsS0FBSztnQkFNRyxLQUFLO3NCQUFiLEtBQUs7Z0JBTUcsV0FBVztzQkFBbkIsS0FBSztnQkFNRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBTUcsbUJBQW1CO3NCQUEzQixLQUFLO2dCQU1HLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFNRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBTUcsVUFBVTtzQkFBbEIsS0FBSztnQkFNRyxjQUFjO3NCQUF0QixLQUFLO2dCQU1PLEtBQUs7c0JBQWpCLEtBQUs7Z0JBZUksWUFBWTtzQkFBckIsTUFBTTtnQkFPRyxPQUFPO3NCQUFoQixNQUFNO2dCQU9HLGlCQUFpQjtzQkFBMUIsTUFBTTtnQkFPRyxPQUFPO3NCQUFoQixNQUFNO2dCQU9HLE9BQU87c0JBQWhCLE1BQU07Z0JBT0csWUFBWTtzQkFBckIsTUFBTTtnQkFFc0IsY0FBYztzQkFBMUMsU0FBUzt1QkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG4gIFNlbGYsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICBDcHNJY29uQ29tcG9uZW50LFxuICBJY29uVHlwZSxcbiAgaWNvblNpemVUeXBlXG59IGZyb20gJy4uL2Nwcy1pY29uL2Nwcy1pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNvbnZlcnRTaXplIH0gZnJvbSAnLi4vLi4vdXRpbHMvaW50ZXJuYWwvc2l6ZS11dGlscyc7XG5pbXBvcnQgeyBDcHNQcm9ncmVzc0xpbmVhckNvbXBvbmVudCB9IGZyb20gJy4uL2Nwcy1wcm9ncmVzcy1saW5lYXIvY3BzLXByb2dyZXNzLWxpbmVhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3BzSW5mb0NpcmNsZUNvbXBvbmVudCB9IGZyb20gJy4uL2Nwcy1pbmZvLWNpcmNsZS9jcHMtaW5mby1jaXJjbGUuY29tcG9uZW50JztcbmltcG9ydCB7IENwc1Rvb2x0aXBQb3NpdGlvbiB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvY3BzLXRvb2x0aXAvY3BzLXRvb2x0aXAuZGlyZWN0aXZlJztcblxuLyoqXG4gKiBDcHNJbnB1dEFwcGVhcmFuY2VUeXBlIGlzIHVzZWQgdG8gZGVmaW5lIHRoZSBib3JkZXIgb2YgdGhlIGlucHV0IGZpZWxkLlxuICogQGdyb3VwIFR5cGVzXG4gKi9cbmV4cG9ydCB0eXBlIENwc0lucHV0QXBwZWFyYW5jZVR5cGUgPSAnb3V0bGluZWQnIHwgJ3VuZGVybGluZWQnIHwgJ2JvcmRlcmxlc3MnO1xuXG4vKipcbiAqIENwc0lucHV0Q29tcG9uZW50IGlzIHVzZWQgdG8gZW50ZXIgdmFsdWVzIGluIGEgY2VydGFpbiBmb3JtYXRzIHN1Y2ggYXMgbnVtZXJpYywgdGV4dCBvciBwYXNzd29yZC5cbiAqIEBncm91cCBDb21wb25lbnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIENwc0ljb25Db21wb25lbnQsXG4gICAgQ3BzSW5mb0NpcmNsZUNvbXBvbmVudCxcbiAgICBDcHNQcm9ncmVzc0xpbmVhckNvbXBvbmVudFxuICBdLFxuICBzZWxlY3RvcjogJ2Nwcy1pbnB1dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jcHMtaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jcHMtaW5wdXQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDcHNJbnB1dENvbXBvbmVudFxuICBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveVxue1xuICAvKipcbiAgICogTGFiZWwgb2YgdGhlIGlucHV0IGVsZW1lbnQuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgbGFiZWwgPSAnJztcblxuICAvKipcbiAgICogQm90dG9tIGhpbnQgdGV4dCBmb3IgdGhlIGlucHV0IGZpZWxkLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGhpbnQgPSAnJztcblxuICAvKipcbiAgICogUGxhY2Vob2xkZXIgdGV4dCBmb3IgdGhlIGlucHV0IGZpZWxkLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyID0gJ1BsZWFzZSBlbnRlcic7XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciBpbnB1dCBpcyBkaXNhYmxlZC5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgaW5wdXQgaXMgcmVhZG9ubHkuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgcmVhZG9ubHkgPSBmYWxzZTtcblxuICAvKipcbiAgICogV2lkdGggb2YgdGhlIGlucHV0IGZpZWxkLCBvZiB0eXBlIG51bWJlciBkZW5vdGluZyBwaXhlbHMgb3Igc3RyaW5nLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHdpZHRoOiBudW1iZXIgfCBzdHJpbmcgPSAnMTAwJSc7XG5cbiAgLyoqXG4gICAqIFR5cGUgb2YgdGhlIGlucHV0IG9mIHR5cGUgJ3RleHQnLCAnbnVtYmVyJyBvciAncGFzc3dvcmQnLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHR5cGU6ICd0ZXh0JyB8ICdudW1iZXInIHwgJ3Bhc3N3b3JkJyA9ICd0ZXh0JztcblxuICAvKipcbiAgICogV2hlbiBlbmFibGVkLCBhIGxvYWRpbmcgYmFyIGlzIGRpc3BsYXllZC5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBsb2FkaW5nID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFdoZW4gZW5hYmxlZCwgYSBjbGVhciBpY29uIGlzIGRpc3BsYXllZCB0byBjbGVhciB0aGUgdmFsdWUuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgY2xlYXJhYmxlID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEljb24gYmVmb3JlIGlucHV0IHZhbHVlLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHByZWZpeEljb246IEljb25UeXBlID0gJyc7XG5cbiAgLyoqXG4gICAqIFdoZW4gZW5hYmxlZCwgcHJlZml4SWNvbiBpcyBjbGlja2FibGUuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgcHJlZml4SWNvbkNsaWNrYWJsZSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBTaXplIG9mIGljb24gYmVmb3JlIGlucHV0IHZhbHVlLCBvZiB0eXBlIG51bWJlciBvciBzdHJpbmcgb3IgaXQgY2FuIGJlIGEgdmFsdWUgJ2ZpbGwnLCAneHNtYWxsJywgJ3NtYWxsJywgJ25vcm1hbCcgb3IgJ2xhcmdlJy5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBwcmVmaXhJY29uU2l6ZTogaWNvblNpemVUeXBlID0gJzE4cHgnO1xuXG4gIC8qKlxuICAgKiBUZXh0IGJlZm9yZSBpbnB1dCB2YWx1ZS5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBwcmVmaXhUZXh0ID0gJyc7XG5cbiAgLyoqXG4gICAqIEhpZGVzIGhpbnQgYW5kIHZhbGlkYXRpb24gZXJyb3JzLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGhpZGVEZXRhaWxzID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciB0aGUgY29tcG9uZW50IHNob3VsZCBoYXZlIHBlcnNpc3RlbnQgY2xlYXIgaWNvbi5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBwZXJzaXN0ZW50Q2xlYXIgPSBmYWxzZTtcblxuICAvKipcbiAgICogRXJyb3IgbWVzc2FnZS5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBlcnJvciA9ICcnO1xuXG4gIC8qKlxuICAgKiBXaGVuIGl0IGlzIG5vdCBhbiBlbXB0eSBzdHJpbmcsIGFuIGluZm8gaWNvbiBpcyBkaXNwbGF5ZWQgdG8gc2hvdyB0ZXh0IGZvciBtb3JlIGluZm8uXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgaW5mb1Rvb2x0aXAgPSAnJztcblxuICAvKipcbiAgICogSW5mb1Rvb2x0aXAgY2xhc3MgZm9yIHN0eWxpbmcuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgaW5mb1Rvb2x0aXBDbGFzcyA9ICdjcHMtdG9vbHRpcC1jb250ZW50JztcblxuICAvKipcbiAgICogTWF4IHdpZHRoIG9mIGluZm9Ub29sdGlwLCBvZiB0eXBlIG51bWJlciBkZW5vdGluZyBwaXhlbHMgb3Igc3RyaW5nLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGluZm9Ub29sdGlwTWF4V2lkdGg6IG51bWJlciB8IHN0cmluZyA9ICcxMDAlJztcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBpbmZvVG9vbHRpcCBpcyBwZXJzaXN0ZW50LlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGluZm9Ub29sdGlwUGVyc2lzdGVudCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBQb3NpdGlvbiBvZiBpbmZvVG9vbHRpcCwgaXQgY2FuIGJlICd0b3AnLCAnYm90dG9tJywgJ2xlZnQnIG9yICdyaWdodCcuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgaW5mb1Rvb2x0aXBQb3NpdGlvbjogQ3BzVG9vbHRpcFBvc2l0aW9uID0gJ3RvcCc7XG5cbiAgLyoqXG4gICAqIFN0eWxpbmcgYXBwZWFyYW5jZSBvZiBpbnB1dCBmaWVsZCwgaXQgY2FuIGJlIFwib3V0bGluZWRcIiBvciBcInVuZGVybGluZWRcIiBvciBcImJvcmRlcmxlc3NcIi5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBhcHBlYXJhbmNlOiBDcHNJbnB1dEFwcGVhcmFuY2VUeXBlID0gJ291dGxpbmVkJztcblxuICAvKipcbiAgICogUmVhZG9ubHkgdmFsdWUgdG8gZGlzcGxheSBpbnNpZGUgb2YgaW5wdXQgZmllbGQuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgdmFsdWVUb0Rpc3BsYXkgPSAnJztcblxuICAvKipcbiAgICogVmFsdWUgb2YgdGhlIGlucHV0LlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHNldCB2YWx1ZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgaWYgKCF2YWx1ZSkgdmFsdWUgPSAnJztcbiAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICB9XG5cbiAgZ2V0IHZhbHVlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIHRvIGludm9rZSBvbiB2YWx1ZSBjaGFuZ2UuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzdHJpbmcgLSB2YWx1ZSBjaGFuZ2VkLlxuICAgKiBAZ3JvdXAgRW1pdHNcbiAgICovXG4gIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAvKipcbiAgICogQ2FsbGJhY2sgdG8gaW52b2tlIHdoZW4gdGhlIGNvbXBvbmVudCByZWNlaXZlcyBmb2N1cy5cbiAgICogQHBhcmFtIHthbnl9XG4gICAqIEBncm91cCBFbWl0c1xuICAgKi9cbiAgQE91dHB1dCgpIGZvY3VzZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIHRvIGludm9rZSB3aGVuIHRoZSBwcmVmaXggaWNvbiBpcyBjbGlja2VkLlxuICAgKiBAcGFyYW0ge2FueX1cbiAgICogQGdyb3VwIEVtaXRzXG4gICAqL1xuICBAT3V0cHV0KCkgcHJlZml4SWNvbkNsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIHRvIGludm9rZSB3aGVuIHRoZSBjb21wb25lbnQgbG9zZXMgZm9jdXMuXG4gICAqIEBwYXJhbSB7YW55fVxuICAgKiBAZ3JvdXAgRW1pdHNcbiAgICovXG4gIEBPdXRwdXQoKSBibHVycmVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIC8qKlxuICAgKiBDYWxsYmFjayB0byBpbnZva2Ugd2hlbiB4IGljb24gaXMgY2xpY2tlZC5cbiAgICogQHBhcmFtIHthbnl9XG4gICAqIEBncm91cCBFbWl0c1xuICAgKi9cbiAgQE91dHB1dCgpIGNsZWFyZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIHRvIGludm9rZSB3aGVuIGVudGVyIGlzIGNsaWNrZWQuXG4gICAqIEBwYXJhbSB7YW55fVxuICAgKiBAZ3JvdXAgRW1pdHNcbiAgICovXG4gIEBPdXRwdXQoKSBlbnRlckNsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQFZpZXdDaGlsZCgncHJlZml4VGV4dFNwYW4nKSBwcmVmaXhUZXh0U3BhbjogRWxlbWVudFJlZiB8IHVuZGVmaW5lZDtcblxuICBjdXJyZW50VHlwZSA9ICcnO1xuICBwcmVmaXhXaWR0aCA9ICcnO1xuICBjdnRXaWR0aCA9ICcnO1xuXG4gIHByaXZhdGUgX3N0YXR1c0NoYW5nZXNTdWJzY3JpcHRpb24/OiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgX3ZhbHVlID0gJyc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQFNlbGYoKSBAT3B0aW9uYWwoKSBwcml2YXRlIF9jb250cm9sOiBOZ0NvbnRyb2wsXG4gICAgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICkge1xuICAgIGlmICh0aGlzLl9jb250cm9sKSB7XG4gICAgICB0aGlzLl9jb250cm9sLnZhbHVlQWNjZXNzb3IgPSB0aGlzO1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY3VycmVudFR5cGUgPSB0aGlzLnR5cGU7XG4gICAgdGhpcy5jdnRXaWR0aCA9IGNvbnZlcnRTaXplKHRoaXMud2lkdGgpO1xuXG4gICAgdGhpcy5fc3RhdHVzQ2hhbmdlc1N1YnNjcmlwdGlvbiA9IHRoaXMuX2NvbnRyb2w/LnN0YXR1c0NoYW5nZXM/LnN1YnNjcmliZShcbiAgICAgICgpID0+IHtcbiAgICAgICAgdGhpcy5fY2hlY2tFcnJvcnMoKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGxldCB3ID0gMDtcbiAgICBpZiAodGhpcy5wcmVmaXhUZXh0KSB7XG4gICAgICB3ID0gdGhpcy5wcmVmaXhUZXh0U3Bhbj8ubmF0aXZlRWxlbWVudD8ub2Zmc2V0V2lkdGggKyAyMjtcbiAgICB9XG4gICAgaWYgKHRoaXMucHJlZml4SWNvbikge1xuICAgICAgdyArPSAzOCAtICh0aGlzLnByZWZpeFRleHQgPyAxNCA6IDApO1xuICAgIH1cbiAgICB0aGlzLnByZWZpeFdpZHRoID0gdyA+IDAgPyBgJHt3fXB4YCA6ICcnO1xuICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fc3RhdHVzQ2hhbmdlc1N1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NoZWNrRXJyb3JzKCkge1xuICAgIGlmICghdGhpcy5fY29udHJvbCkgcmV0dXJuO1xuICAgIGNvbnN0IGVycm9ycyA9IHRoaXMuX2NvbnRyb2w/LmVycm9ycztcblxuICAgIGlmICghdGhpcy5fY29udHJvbD8uY29udHJvbD8udG91Y2hlZCB8fCAhZXJyb3JzKSB7XG4gICAgICB0aGlzLmVycm9yID0gJyc7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCdyZXF1aXJlZCcgaW4gZXJyb3JzKSB7XG4gICAgICB0aGlzLmVycm9yID0gJ0ZpZWxkIGlzIHJlcXVpcmVkJztcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoJ3BhdHRlcm4nIGluIGVycm9ycykge1xuICAgICAgdGhpcy5lcnJvciA9ICdWYWx1ZSBpcyBpbnZhbGlkJztcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoJ2VtYWlsJyBpbiBlcnJvcnMpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSAnRW1haWwgZm9ybWF0IGlzIGludmFsaWQnO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICgnbWlubGVuZ3RoJyBpbiBlcnJvcnMpIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBkb3Qtbm90YXRpb25cbiAgICAgIHRoaXMuZXJyb3IgPSBgRmllbGQgbXVzdCBjb250YWluIGF0IGxlYXN0ICR7ZXJyb3JzWydtaW5sZW5ndGgnXS5yZXF1aXJlZExlbmd0aH0gY2hhcmFjdGVyc2A7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCdtYXhsZW5ndGgnIGluIGVycm9ycykge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGRvdC1ub3RhdGlvblxuICAgICAgdGhpcy5lcnJvciA9IGBGaWVsZCBtdXN0IGNvbnRhaW4gJHtlcnJvcnNbJ21heGxlbmd0aCddLnJlcXVpcmVkTGVuZ3RofSBjaGFyYWN0ZXJzIG1heGltdW1gO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGVyckFyciA9IE9iamVjdC52YWx1ZXMoZXJyb3JzKTtcbiAgICBpZiAoZXJyQXJyLmxlbmd0aCA8IDEpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSAnJztcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgbWVzc2FnZSA9IGVyckFyci5maW5kKChtc2cpID0+IHR5cGVvZiBtc2cgPT09ICdzdHJpbmcnKTtcblxuICAgIHRoaXMuZXJyb3IgPSBtZXNzYWdlIHx8ICdVbmtub3duIGVycm9yJztcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgb25DaGFuZ2UgPSAoZXZlbnQ6IGFueSkgPT4ge307XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgb25Ub3VjaGVkID0gKCkgPT4ge307XG5cbiAgb25JbnB1dEVudGVyS2V5RG93bigpIHtcbiAgICB0aGlzLmVsZW1lbnRSZWY/Lm5hdGl2ZUVsZW1lbnQ/LnF1ZXJ5U2VsZWN0b3IoJ2lucHV0Jyk/LmJsdXIoKTtcbiAgICB0aGlzLmVudGVyQ2xpY2tlZC5lbWl0KCk7XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgfVxuXG4gIHVwZGF0ZVZhbHVlRXZlbnQoZXZlbnQ6IGFueSkge1xuICAgIGNvbnN0IHZhbHVlID0gZXZlbnQ/LnRhcmdldD8udmFsdWUgfHwgJyc7XG4gICAgdGhpcy5fdXBkYXRlVmFsdWUodmFsdWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlVmFsdWUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgdGhpcy52YWx1ZUNoYW5nZWQuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICBvbkNsZWFyKCkge1xuICAgIHRoaXMuY2xlYXIoKTtcbiAgICB0aGlzLmNsZWFyZWQuZW1pdCgpO1xuICB9XG5cbiAgY2xlYXIoKSB7XG4gICAgaWYgKHRoaXMudmFsdWUgIT09ICcnKSB0aGlzLl91cGRhdGVWYWx1ZSgnJyk7XG4gIH1cblxuICB0b2dnbGVQYXNzd29yZCgpIHtcbiAgICB0aGlzLmN1cnJlbnRUeXBlID0gdGhpcy5jdXJyZW50VHlwZSA9PT0gJ3Bhc3N3b3JkJyA/ICd0ZXh0JyA6ICdwYXNzd29yZCc7XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIHNldERpc2FibGVkU3RhdGUoZGlzYWJsZWQ6IGJvb2xlYW4pIHt9XG5cbiAgb25CbHVyKCkge1xuICAgIHRoaXMuX2NvbnRyb2w/LmNvbnRyb2w/Lm1hcmtBc1RvdWNoZWQoKTtcbiAgICB0aGlzLl9jaGVja0Vycm9ycygpO1xuICAgIHRoaXMuYmx1cnJlZC5lbWl0KCk7XG4gIH1cblxuICBvbkNsaWNrUHJlZml4SWNvbigpIHtcbiAgICBpZiAoIXRoaXMucHJlZml4SWNvbkNsaWNrYWJsZSB8fCB0aGlzLnJlYWRvbmx5IHx8IHRoaXMuZGlzYWJsZWQpIHJldHVybjtcbiAgICB0aGlzLnByZWZpeEljb25DbGlja2VkLmVtaXQoKTtcbiAgfVxuXG4gIG9uRm9jdXMoKSB7XG4gICAgdGhpcy5mb2N1c2VkLmVtaXQoKTtcbiAgfVxuXG4gIGZvY3VzKCkge1xuICAgIHRoaXMuZWxlbWVudFJlZj8ubmF0aXZlRWxlbWVudD8ucXVlcnlTZWxlY3RvcignaW5wdXQnKT8uZm9jdXMoKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNwcy1pbnB1dC1jb250YWluZXJcIiBbbmdTdHlsZV09XCJ7IHdpZHRoOiBjdnRXaWR0aCB9XCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImNwcy1pbnB1dC1sYWJlbFwiXG4gICAgW25nQ2xhc3NdPVwieyAnY3BzLWlucHV0LWxhYmVsLWRpc2FibGVkJzogZGlzYWJsZWQgJiYgIXJlYWRvbmx5IH1cIlxuICAgICpuZ0lmPVwibGFiZWxcIj5cbiAgICA8bGFiZWw+e3sgbGFiZWwgfX08L2xhYmVsPlxuICAgIDxjcHMtaW5mby1jaXJjbGVcbiAgICAgICpuZ0lmPVwiaW5mb1Rvb2x0aXBcIlxuICAgICAgY2xhc3M9XCJjcHMtaW5wdXQtbGFiZWwtaW5mby1jaXJjbGVcIlxuICAgICAgc2l6ZT1cInhzbWFsbFwiXG4gICAgICBbdG9vbHRpcFBvc2l0aW9uXT1cImluZm9Ub29sdGlwUG9zaXRpb25cIlxuICAgICAgW3Rvb2x0aXBDb250ZW50Q2xhc3NdPVwiaW5mb1Rvb2x0aXBDbGFzc1wiXG4gICAgICBbdG9vbHRpcE1heFdpZHRoXT1cImluZm9Ub29sdGlwTWF4V2lkdGhcIlxuICAgICAgW3Rvb2x0aXBQZXJzaXN0ZW50XT1cImluZm9Ub29sdGlwUGVyc2lzdGVudFwiXG4gICAgICBbdG9vbHRpcFRleHRdPVwiaW5mb1Rvb2x0aXBcIj5cbiAgICA8L2Nwcy1pbmZvLWNpcmNsZT5cbiAgPC9kaXY+XG5cbiAgPGRpdlxuICAgIGNsYXNzPVwiY3BzLWlucHV0LXdyYXBcIlxuICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgIHBhc3N3b3JkOiB0eXBlID09PSAncGFzc3dvcmQnLFxuICAgICAgJ2Nwcy1pbnB1dC13cmFwLWVycm9yJzogZXJyb3IsXG4gICAgICBjbGVhcmFibGU6IGNsZWFyYWJsZSxcbiAgICAgICdwZXJzaXN0ZW50LWNsZWFyJzogcGVyc2lzdGVudENsZWFyLFxuICAgICAgYm9yZGVybGVzczogYXBwZWFyYW5jZSA9PT0gJ2JvcmRlcmxlc3MnLFxuICAgICAgdW5kZXJsaW5lZDogYXBwZWFyYW5jZSA9PT0gJ3VuZGVybGluZWQnXG4gICAgfVwiPlxuICAgIDxpbnB1dFxuICAgICAgKm5nSWY9XCIhdmFsdWVUb0Rpc3BsYXlcIlxuICAgICAgc3BlbGxjaGVjaz1cImZhbHNlXCJcbiAgICAgIFt0eXBlXT1cImN1cnJlbnRUeXBlXCJcbiAgICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgICAoaW5wdXQpPVwidXBkYXRlVmFsdWVFdmVudCgkZXZlbnQpXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgIChrZXlkb3duLmVudGVyKT1cIm9uSW5wdXRFbnRlcktleURvd24oKVwiXG4gICAgICBbbmdTdHlsZV09XCJ7XG4gICAgICAgIHdpZHRoOiBjdnRXaWR0aCxcbiAgICAgICAgJ3BhZGRpbmctbGVmdCc6IHByZWZpeFdpZHRoIHx8ICdub25lJ1xuICAgICAgfVwiXG4gICAgICAoYmx1cik9XCJvbkJsdXIoKVwiXG4gICAgICAoZm9jdXMpPVwib25Gb2N1cygpXCIgLz5cblxuICAgIDxpbnB1dFxuICAgICAgKm5nSWY9XCJ2YWx1ZVRvRGlzcGxheVwiXG4gICAgICBbdmFsdWVdPVwidmFsdWVUb0Rpc3BsYXlcIlxuICAgICAgW2Rpc2FibGVkXT1cInRydWVcIlxuICAgICAgW3JlYWRvbmx5XT1cInRydWVcIlxuICAgICAgW25nU3R5bGVdPVwie1xuICAgICAgICB3aWR0aDogY3Z0V2lkdGgsXG4gICAgICAgICdwYWRkaW5nLWxlZnQnOiBwcmVmaXhXaWR0aCB8fCAnbm9uZSdcbiAgICAgIH1cIiAvPlxuXG4gICAgPGRpdiBjbGFzcz1cImNwcy1pbnB1dC1wcmVmaXhcIj5cbiAgICAgIDxzcGFuICpuZ0lmPVwicHJlZml4SWNvblwiIGNsYXNzPVwiY3BzLWlucHV0LXByZWZpeC1pY29uXCI+XG4gICAgICAgIDxjcHMtaWNvblxuICAgICAgICAgIFtpY29uXT1cInByZWZpeEljb25cIlxuICAgICAgICAgIFtzaXplXT1cInByZWZpeEljb25TaXplXCJcbiAgICAgICAgICBbc3R5bGUuY29sb3JdPVwiZGlzYWJsZWQgPyAnIzlhOTU5NScgOiBudWxsXCJcbiAgICAgICAgICBbc3R5bGUuY3Vyc29yXT1cIlxuICAgICAgICAgICAgcHJlZml4SWNvbkNsaWNrYWJsZSAmJiAhZGlzYWJsZWQgJiYgIXJlYWRvbmx5XG4gICAgICAgICAgICAgID8gJ3BvaW50ZXInXG4gICAgICAgICAgICAgIDogJ2RlZmF1bHQnXG4gICAgICAgICAgXCJcbiAgICAgICAgICAoY2xpY2spPVwib25DbGlja1ByZWZpeEljb24oKVwiPlxuICAgICAgICA8L2Nwcy1pY29uPlxuICAgICAgPC9zcGFuPlxuXG4gICAgICA8c3BhbiAqbmdJZj1cInByZWZpeFRleHRcIiBjbGFzcz1cImNwcy1pbnB1dC1wcmVmaXgtdGV4dFwiICNwcmVmaXhUZXh0U3Bhbj5cbiAgICAgICAge3sgcHJlZml4VGV4dCB9fVxuICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cImNwcy1pbnB1dC1hY3Rpb24tYnRuc1wiICpuZ0lmPVwiIWRpc2FibGVkICYmICFyZWFkb25seVwiPlxuICAgICAgPHNwYW5cbiAgICAgICAgKm5nSWY9XCJjbGVhcmFibGVcIlxuICAgICAgICBbc3R5bGUudmlzaWJpbGl0eV09XCJcbiAgICAgICAgICBwZXJzaXN0ZW50Q2xlYXIgfHwgKCFwZXJzaXN0ZW50Q2xlYXIgJiYgdmFsdWUpID8gJ3Zpc2libGUnIDogJ2hpZGRlbidcbiAgICAgICAgXCJcbiAgICAgICAgY2xhc3M9XCJjbGVhci1idG5cIj5cbiAgICAgICAgPGNwcy1pY29uIGljb249XCJkZWxldGVcIiBzaXplPVwic21hbGxcIiAoY2xpY2spPVwib25DbGVhcigpXCI+PC9jcHMtaWNvbj5cbiAgICAgIDwvc3Bhbj5cblxuICAgICAgPHNwYW5cbiAgICAgICAgKm5nSWY9XCJ0eXBlID09PSAncGFzc3dvcmQnXCJcbiAgICAgICAgY2xhc3M9XCJwYXNzd29yZC1zaG93LWJ0blwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgJ3Bhc3N3b3JkLXNob3ctYnRuLWFjdGl2ZSc6IGN1cnJlbnRUeXBlID09PSAndGV4dCcgfVwiPlxuICAgICAgICA8Y3BzLWljb24gaWNvbj1cImV5ZVwiIHNpemU9XCIxOHB4XCIgKGNsaWNrKT1cInRvZ2dsZVBhc3N3b3JkKClcIj48L2Nwcy1pY29uPlxuICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuICAgIDxjcHMtcHJvZ3Jlc3MtbGluZWFyXG4gICAgICAqbmdJZj1cImxvYWRpbmdcIlxuICAgICAgaGVpZ2h0PVwiM1wiXG4gICAgICByYWRpdXM9XCI0XCJcbiAgICAgIG9wYWNpdHk9XCIwLjNcIlxuICAgICAgY2xhc3M9XCJjcHMtaW5wdXQtcHJvZ3Jlc3MtYmFyXCJcbiAgICAgIGJnQ29sb3I9XCJ0cmFuc3BhcmVudFwiPlxuICAgIDwvY3BzLXByb2dyZXNzLWxpbmVhcj5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCIhZXJyb3IgJiYgIWhpZGVEZXRhaWxzXCIgY2xhc3M9XCJjcHMtaW5wdXQtaGludFwiPlxuICAgIHt7IGhpbnQgfX1cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJlcnJvciAmJiAhaGlkZURldGFpbHNcIiBjbGFzcz1cImNwcy1pbnB1dC1lcnJvclwiPlxuICAgIHt7IGVycm9yIH19XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
385
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3BzLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nwcy11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2Nwcy1pbnB1dC9jcHMtaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3BzLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY3BzLWlucHV0L2Nwcy1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUdMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUdMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxFQUNKLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0wsZ0JBQWdCLEVBR2pCLE1BQU0sZ0NBQWdDLENBQUM7QUFFeEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzlELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDOzs7O0FBU3RGOzs7R0FHRztBQWFILE1BQU0sT0FBTyxpQkFBaUI7SUE2STVCOzs7O09BSUc7SUFDSCxJQUFhLEtBQUssQ0FBQyxLQUFhO1FBQzlCLElBQUksQ0FBQyxLQUFLO1lBQUUsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQXFERCxZQUM4QixRQUFtQixFQUN4QyxVQUFt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TUcsbUJBQW1CO3NCQUEzQixLQUFLO2dCQU1HLGNBQWM7c0JBQXRCLEtBQUs7Z0JBTUcsVUFBVTtzQkFBbEIsS0FBSztnQkFNRyxXQUFXO3NCQUFuQixLQUFLO2dCQU1HLGVBQWU7c0JBQXZCLEtBQUs7Z0JBTUcsS0FBSztzQkFBYixLQUFLO2dCQU1HLFdBQVc7c0JBQW5CLEtBQUs7Z0JBTUcsZ0JBQWdCO3NCQUF4QixLQUFLO2dCQU1HLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFNRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBTUcsbUJBQW1CO3NCQUEzQixLQUFLO2dCQU1HLFVBQVU7c0JBQWxCLEtBQUs7Z0JBTUcsY0FBYztzQkFBdEIsS0FBSztnQkFPTyxLQUFLO3NCQUFqQixLQUFLO2dCQWVJLFlBQVk7c0JBQXJCLE1BQU07Z0JBT0csT0FBTztzQkFBaEIsTUFBTTtnQkFPRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBT0csT0FBTztzQkFBaEIsTUFBTTtnQkFPRyxPQUFPO3NCQUFoQixNQUFNO2dCQU9HLFlBQVk7c0JBQXJCLE1BQU07Z0JBRXNCLGNBQWM7c0JBQTFDLFNBQVM7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgT3V0cHV0LFxuICBTZWxmLFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgQ3BzSWNvbkNvbXBvbmVudCxcbiAgSWNvblR5cGUsXG4gIGljb25TaXplVHlwZVxufSBmcm9tICcuLi9jcHMtaWNvbi9jcHMtaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjb252ZXJ0U2l6ZSB9IGZyb20gJy4uLy4uL3V0aWxzL2ludGVybmFsL3NpemUtdXRpbHMnO1xuaW1wb3J0IHsgQ3BzUHJvZ3Jlc3NMaW5lYXJDb21wb25lbnQgfSBmcm9tICcuLi9jcHMtcHJvZ3Jlc3MtbGluZWFyL2Nwcy1wcm9ncmVzcy1saW5lYXIuY29tcG9uZW50JztcbmltcG9ydCB7IENwc0luZm9DaXJjbGVDb21wb25lbnQgfSBmcm9tICcuLi9jcHMtaW5mby1jaXJjbGUvY3BzLWluZm8tY2lyY2xlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDcHNUb29sdGlwUG9zaXRpb24gfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2Nwcy10b29sdGlwL2Nwcy10b29sdGlwLmRpcmVjdGl2ZSc7XG5cbi8qKlxuICogQ3BzSW5wdXRBcHBlYXJhbmNlVHlwZSBpcyB1c2VkIHRvIGRlZmluZSB0aGUgYm9yZGVyIG9mIHRoZSBpbnB1dCBmaWVsZC5cbiAqIEBncm91cCBUeXBlc1xuICovXG5leHBvcnQgdHlwZSBDcHNJbnB1dEFwcGVhcmFuY2VUeXBlID0gJ291dGxpbmVkJyB8ICd1bmRlcmxpbmVkJyB8ICdib3JkZXJsZXNzJztcblxuLyoqXG4gKiBDcHNJbnB1dENvbXBvbmVudCBpcyB1c2VkIHRvIGVudGVyIHZhbHVlcyBpbiBhIGNlcnRhaW4gZm9ybWF0cyBzdWNoIGFzIG51bWVyaWMsIHRleHQgb3IgcGFzc3dvcmQuXG4gKiBAZ3JvdXAgQ29tcG9uZW50c1xuICovXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBDcHNJY29uQ29tcG9uZW50LFxuICAgIENwc0luZm9DaXJjbGVDb21wb25lbnQsXG4gICAgQ3BzUHJvZ3Jlc3NMaW5lYXJDb21wb25lbnRcbiAgXSxcbiAgc2VsZWN0b3I6ICdjcHMtaW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY3BzLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY3BzLWlucHV0LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ3BzSW5wdXRDb21wb25lbnRcbiAgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3lcbntcbiAgLyoqXG4gICAqIExhYmVsIG9mIHRoZSBpbnB1dCBlbGVtZW50LlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGxhYmVsID0gJyc7XG5cbiAgLyoqXG4gICAqIEJvdHRvbSBoaW50IHRleHQgZm9yIHRoZSBpbnB1dCBmaWVsZC5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBoaW50ID0gJyc7XG5cbiAgLyoqXG4gICAqIFBsYWNlaG9sZGVyIHRleHQgZm9yIHRoZSBpbnB1dCBmaWVsZC5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBwbGFjZWhvbGRlciA9ICdQbGVhc2UgZW50ZXInO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgaW5wdXQgaXMgZGlzYWJsZWQuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB3aGV0aGVyIGlucHV0IGlzIHJlYWRvbmx5LlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHJlYWRvbmx5ID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFdpZHRoIG9mIHRoZSBpbnB1dCBmaWVsZCwgb2YgdHlwZSBudW1iZXIgZGVub3RpbmcgcGl4ZWxzIG9yIHN0cmluZy5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSB3aWR0aDogbnVtYmVyIHwgc3RyaW5nID0gJzEwMCUnO1xuXG4gIC8qKlxuICAgKiBUeXBlIG9mIHRoZSBpbnB1dCBvZiB0eXBlICd0ZXh0JywgJ251bWJlcicgb3IgJ3Bhc3N3b3JkJy5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSB0eXBlOiAndGV4dCcgfCAnbnVtYmVyJyB8ICdwYXNzd29yZCcgPSAndGV4dCc7XG5cbiAgLyoqXG4gICAqIFdoZW4gZW5hYmxlZCwgYSBsb2FkaW5nIGJhciBpcyBkaXNwbGF5ZWQuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgbG9hZGluZyA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBXaGVuIGVuYWJsZWQsIGEgY2xlYXIgaWNvbiBpcyBkaXNwbGF5ZWQgdG8gY2xlYXIgdGhlIHZhbHVlLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGNsZWFyYWJsZSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBJY29uIGJlZm9yZSBpbnB1dCB2YWx1ZS5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBwcmVmaXhJY29uOiBJY29uVHlwZSA9ICcnO1xuXG4gIC8qKlxuICAgKiBXaGVuIGVuYWJsZWQsIHByZWZpeEljb24gaXMgY2xpY2thYmxlLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHByZWZpeEljb25DbGlja2FibGUgPSBmYWxzZTtcblxuICAvKipcbiAgICogU2l6ZSBvZiBpY29uIGJlZm9yZSBpbnB1dCB2YWx1ZSwgb2YgdHlwZSBudW1iZXIgb3Igc3RyaW5nIG9yIGl0IGNhbiBiZSBhIHZhbHVlICdmaWxsJywgJ3hzbWFsbCcsICdzbWFsbCcsICdub3JtYWwnIG9yICdsYXJnZScuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgcHJlZml4SWNvblNpemU6IGljb25TaXplVHlwZSA9ICcxOHB4JztcblxuICAvKipcbiAgICogVGV4dCBiZWZvcmUgaW5wdXQgdmFsdWUuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgcHJlZml4VGV4dCA9ICcnO1xuXG4gIC8qKlxuICAgKiBIaWRlcyBoaW50IGFuZCB2YWxpZGF0aW9uIGVycm9ycy5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBoaWRlRGV0YWlscyA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgdGhlIGNvbXBvbmVudCBzaG91bGQgaGF2ZSBwZXJzaXN0ZW50IGNsZWFyIGljb24uXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgcGVyc2lzdGVudENsZWFyID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEVycm9yIG1lc3NhZ2UuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgZXJyb3IgPSAnJztcblxuICAvKipcbiAgICogV2hlbiBpdCBpcyBub3QgYW4gZW1wdHkgc3RyaW5nLCBhbiBpbmZvIGljb24gaXMgZGlzcGxheWVkIHRvIHNob3cgdGV4dCBmb3IgbW9yZSBpbmZvLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGluZm9Ub29sdGlwID0gJyc7XG5cbiAgLyoqXG4gICAqIEluZm9Ub29sdGlwIGNsYXNzIGZvciBzdHlsaW5nLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGluZm9Ub29sdGlwQ2xhc3MgPSAnY3BzLXRvb2x0aXAtY29udGVudCc7XG5cbiAgLyoqXG4gICAqIE1heCB3aWR0aCBvZiBpbmZvVG9vbHRpcCwgb2YgdHlwZSBudW1iZXIgZGVub3RpbmcgcGl4ZWxzIG9yIHN0cmluZy5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBpbmZvVG9vbHRpcE1heFdpZHRoOiBudW1iZXIgfCBzdHJpbmcgPSAnMTAwJSc7XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciB0aGUgaW5mb1Rvb2x0aXAgaXMgcGVyc2lzdGVudC5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBpbmZvVG9vbHRpcFBlcnNpc3RlbnQgPSBmYWxzZTtcblxuICAvKipcbiAgICogUG9zaXRpb24gb2YgaW5mb1Rvb2x0aXAsIGl0IGNhbiBiZSAndG9wJywgJ2JvdHRvbScsICdsZWZ0JyBvciAncmlnaHQnLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGluZm9Ub29sdGlwUG9zaXRpb246IENwc1Rvb2x0aXBQb3NpdGlvbiA9ICd0b3AnO1xuXG4gIC8qKlxuICAgKiBTdHlsaW5nIGFwcGVhcmFuY2Ugb2YgaW5wdXQgZmllbGQsIGl0IGNhbiBiZSBcIm91dGxpbmVkXCIgb3IgXCJ1bmRlcmxpbmVkXCIgb3IgXCJib3JkZXJsZXNzXCIuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgYXBwZWFyYW5jZTogQ3BzSW5wdXRBcHBlYXJhbmNlVHlwZSA9ICdvdXRsaW5lZCc7XG5cbiAgLyoqXG4gICAqIFJlYWRvbmx5IHZhbHVlIHRvIGRpc3BsYXkgaW5zaWRlIG9mIGlucHV0IGZpZWxkLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHZhbHVlVG9EaXNwbGF5ID0gJyc7XG5cbiAgLyoqXG4gICAqIFZhbHVlIG9mIHRoZSBpbnB1dC5cbiAgICogQGRlZmF1bHQgJydcbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBzZXQgdmFsdWUodmFsdWU6IHN0cmluZykge1xuICAgIGlmICghdmFsdWUpIHZhbHVlID0gJyc7XG4gICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcbiAgfVxuXG4gIGdldCB2YWx1ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsYmFjayB0byBpbnZva2Ugb24gdmFsdWUgY2hhbmdlLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc3RyaW5nIC0gdmFsdWUgY2hhbmdlZC5cbiAgICogQGdyb3VwIEVtaXRzXG4gICAqL1xuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIHRvIGludm9rZSB3aGVuIHRoZSBjb21wb25lbnQgcmVjZWl2ZXMgZm9jdXMuXG4gICAqIEBwYXJhbSB7YW55fVxuICAgKiBAZ3JvdXAgRW1pdHNcbiAgICovXG4gIEBPdXRwdXQoKSBmb2N1c2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIC8qKlxuICAgKiBDYWxsYmFjayB0byBpbnZva2Ugd2hlbiB0aGUgcHJlZml4IGljb24gaXMgY2xpY2tlZC5cbiAgICogQHBhcmFtIHthbnl9XG4gICAqIEBncm91cCBFbWl0c1xuICAgKi9cbiAgQE91dHB1dCgpIHByZWZpeEljb25DbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIC8qKlxuICAgKiBDYWxsYmFjayB0byBpbnZva2Ugd2hlbiB0aGUgY29tcG9uZW50IGxvc2VzIGZvY3VzLlxuICAgKiBAcGFyYW0ge2FueX1cbiAgICogQGdyb3VwIEVtaXRzXG4gICAqL1xuICBAT3V0cHV0KCkgYmx1cnJlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAvKipcbiAgICogQ2FsbGJhY2sgdG8gaW52b2tlIHdoZW4geCBpY29uIGlzIGNsaWNrZWQuXG4gICAqIEBwYXJhbSB7YW55fVxuICAgKiBAZ3JvdXAgRW1pdHNcbiAgICovXG4gIEBPdXRwdXQoKSBjbGVhcmVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIC8qKlxuICAgKiBDYWxsYmFjayB0byBpbnZva2Ugd2hlbiBlbnRlciBpcyBjbGlja2VkLlxuICAgKiBAcGFyYW0ge2FueX1cbiAgICogQGdyb3VwIEVtaXRzXG4gICAqL1xuICBAT3V0cHV0KCkgZW50ZXJDbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBWaWV3Q2hpbGQoJ3ByZWZpeFRleHRTcGFuJykgcHJlZml4VGV4dFNwYW46IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XG5cbiAgY3VycmVudFR5cGUgPSAnJztcbiAgcHJlZml4V2lkdGggPSAnJztcbiAgY3Z0V2lkdGggPSAnJztcblxuICBwcml2YXRlIF9zdGF0dXNDaGFuZ2VzU3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIF92YWx1ZSA9ICcnO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBTZWxmKCkgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfY29udHJvbDogTmdDb250cm9sLFxuICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHtcbiAgICBpZiAodGhpcy5fY29udHJvbCkge1xuICAgICAgdGhpcy5fY29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpcztcbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmN1cnJlbnRUeXBlID0gdGhpcy50eXBlO1xuICAgIHRoaXMuY3Z0V2lkdGggPSBjb252ZXJ0U2l6ZSh0aGlzLndpZHRoKTtcblxuICAgIHRoaXMuX3N0YXR1c0NoYW5nZXNTdWJzY3JpcHRpb24gPSB0aGlzLl9jb250cm9sPy5zdGF0dXNDaGFuZ2VzPy5zdWJzY3JpYmUoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIHRoaXMuX2NoZWNrRXJyb3JzKCk7XG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBsZXQgdyA9IDA7XG4gICAgaWYgKHRoaXMucHJlZml4VGV4dCkge1xuICAgICAgdyA9IHRoaXMucHJlZml4VGV4dFNwYW4/Lm5hdGl2ZUVsZW1lbnQ/Lm9mZnNldFdpZHRoICsgMjI7XG4gICAgfVxuICAgIGlmICh0aGlzLnByZWZpeEljb24pIHtcbiAgICAgIHcgKz0gMzggLSAodGhpcy5wcmVmaXhUZXh0ID8gMTQgOiAwKTtcbiAgICB9XG4gICAgdGhpcy5wcmVmaXhXaWR0aCA9IHcgPiAwID8gYCR7d31weGAgOiAnJztcbiAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX3N0YXR1c0NoYW5nZXNTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIF9jaGVja0Vycm9ycygpIHtcbiAgICBpZiAoIXRoaXMuX2NvbnRyb2wpIHJldHVybjtcbiAgICBjb25zdCBlcnJvcnMgPSB0aGlzLl9jb250cm9sPy5lcnJvcnM7XG5cbiAgICBpZiAoIXRoaXMuX2NvbnRyb2w/LmNvbnRyb2w/LnRvdWNoZWQgfHwgIWVycm9ycykge1xuICAgICAgdGhpcy5lcnJvciA9ICcnO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICgncmVxdWlyZWQnIGluIGVycm9ycykge1xuICAgICAgdGhpcy5lcnJvciA9ICdGaWVsZCBpcyByZXF1aXJlZCc7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCdwYXR0ZXJuJyBpbiBlcnJvcnMpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSAnVmFsdWUgaXMgaW52YWxpZCc7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCdlbWFpbCcgaW4gZXJyb3JzKSB7XG4gICAgICB0aGlzLmVycm9yID0gJ0VtYWlsIGZvcm1hdCBpcyBpbnZhbGlkJztcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoJ21pbmxlbmd0aCcgaW4gZXJyb3JzKSB7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZG90LW5vdGF0aW9uXG4gICAgICB0aGlzLmVycm9yID0gYEZpZWxkIG11c3QgY29udGFpbiBhdCBsZWFzdCAke2Vycm9yc1snbWlubGVuZ3RoJ10ucmVxdWlyZWRMZW5ndGh9IGNoYXJhY3RlcnNgO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICgnbWF4bGVuZ3RoJyBpbiBlcnJvcnMpIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBkb3Qtbm90YXRpb25cbiAgICAgIHRoaXMuZXJyb3IgPSBgRmllbGQgbXVzdCBjb250YWluICR7ZXJyb3JzWydtYXhsZW5ndGgnXS5yZXF1aXJlZExlbmd0aH0gY2hhcmFjdGVycyBtYXhpbXVtYDtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBlcnJBcnIgPSBPYmplY3QudmFsdWVzKGVycm9ycyk7XG4gICAgaWYgKGVyckFyci5sZW5ndGggPCAxKSB7XG4gICAgICB0aGlzLmVycm9yID0gJyc7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IG1lc3NhZ2UgPSBlcnJBcnIuZmluZCgobXNnKSA9PiB0eXBlb2YgbXNnID09PSAnc3RyaW5nJyk7XG5cbiAgICB0aGlzLmVycm9yID0gbWVzc2FnZSB8fCAnVW5rbm93biBlcnJvcic7XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIG9uQ2hhbmdlID0gKGV2ZW50OiBhbnkpID0+IHt9O1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIG9uVG91Y2hlZCA9ICgpID0+IHt9O1xuXG4gIG9uSW5wdXRFbnRlcktleURvd24oKSB7XG4gICAgdGhpcy5lbGVtZW50UmVmPy5uYXRpdmVFbGVtZW50Py5xdWVyeVNlbGVjdG9yKCdpbnB1dCcpPy5ibHVyKCk7XG4gICAgdGhpcy5lbnRlckNsaWNrZWQuZW1pdCgpO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KSB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cblxuICB1cGRhdGVWYWx1ZUV2ZW50KGV2ZW50OiBhbnkpIHtcbiAgICBjb25zdCB2YWx1ZSA9IGV2ZW50Py50YXJnZXQ/LnZhbHVlIHx8ICcnO1xuICAgIHRoaXMuX3VwZGF0ZVZhbHVlKHZhbHVlKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZVZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLndyaXRlVmFsdWUodmFsdWUpO1xuICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICAgIHRoaXMudmFsdWVDaGFuZ2VkLmVtaXQodmFsdWUpO1xuICB9XG5cbiAgb25DbGVhcigpIHtcbiAgICB0aGlzLmNsZWFyKCk7XG4gICAgdGhpcy5jbGVhcmVkLmVtaXQoKTtcbiAgfVxuXG4gIGNsZWFyKCkge1xuICAgIGlmICh0aGlzLnZhbHVlICE9PSAnJykgdGhpcy5fdXBkYXRlVmFsdWUoJycpO1xuICB9XG5cbiAgdG9nZ2xlUGFzc3dvcmQoKSB7XG4gICAgdGhpcy5jdXJyZW50VHlwZSA9IHRoaXMuY3VycmVudFR5cGUgPT09ICdwYXNzd29yZCcgPyAndGV4dCcgOiAncGFzc3dvcmQnO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBzZXREaXNhYmxlZFN0YXRlKGRpc2FibGVkOiBib29sZWFuKSB7fVxuXG4gIG9uQmx1cigpIHtcbiAgICB0aGlzLl9jb250cm9sPy5jb250cm9sPy5tYXJrQXNUb3VjaGVkKCk7XG4gICAgdGhpcy5fY2hlY2tFcnJvcnMoKTtcbiAgICB0aGlzLmJsdXJyZWQuZW1pdCgpO1xuICB9XG5cbiAgb25DbGlja1ByZWZpeEljb24oKSB7XG4gICAgaWYgKCF0aGlzLnByZWZpeEljb25DbGlja2FibGUgfHwgdGhpcy5yZWFkb25seSB8fCB0aGlzLmRpc2FibGVkKSByZXR1cm47XG4gICAgdGhpcy5wcmVmaXhJY29uQ2xpY2tlZC5lbWl0KCk7XG4gIH1cblxuICBvbkZvY3VzKCkge1xuICAgIHRoaXMuZm9jdXNlZC5lbWl0KCk7XG4gIH1cblxuICBmb2N1cygpIHtcbiAgICB0aGlzLmVsZW1lbnRSZWY/Lm5hdGl2ZUVsZW1lbnQ/LnF1ZXJ5U2VsZWN0b3IoJ2lucHV0Jyk/LmZvY3VzKCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjcHMtaW5wdXQtY29udGFpbmVyXCIgW25nU3R5bGVdPVwieyB3aWR0aDogY3Z0V2lkdGggfVwiPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJjcHMtaW5wdXQtbGFiZWxcIlxuICAgIFtuZ0NsYXNzXT1cInsgJ2Nwcy1pbnB1dC1sYWJlbC1kaXNhYmxlZCc6IGRpc2FibGVkICYmICFyZWFkb25seSB9XCJcbiAgICAqbmdJZj1cImxhYmVsXCI+XG4gICAgPGxhYmVsPnt7IGxhYmVsIH19PC9sYWJlbD5cbiAgICA8Y3BzLWluZm8tY2lyY2xlXG4gICAgICAqbmdJZj1cImluZm9Ub29sdGlwXCJcbiAgICAgIGNsYXNzPVwiY3BzLWlucHV0LWxhYmVsLWluZm8tY2lyY2xlXCJcbiAgICAgIHNpemU9XCJ4c21hbGxcIlxuICAgICAgW3Rvb2x0aXBQb3NpdGlvbl09XCJpbmZvVG9vbHRpcFBvc2l0aW9uXCJcbiAgICAgIFt0b29sdGlwQ29udGVudENsYXNzXT1cImluZm9Ub29sdGlwQ2xhc3NcIlxuICAgICAgW3Rvb2x0aXBNYXhXaWR0aF09XCJpbmZvVG9vbHRpcE1heFdpZHRoXCJcbiAgICAgIFt0b29sdGlwUGVyc2lzdGVudF09XCJpbmZvVG9vbHRpcFBlcnNpc3RlbnRcIlxuICAgICAgW3Rvb2x0aXBUZXh0XT1cImluZm9Ub29sdGlwXCI+XG4gICAgPC9jcHMtaW5mby1jaXJjbGU+XG4gIDwvZGl2PlxuXG4gIDxkaXZcbiAgICBjbGFzcz1cImNwcy1pbnB1dC13cmFwXCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICBwYXNzd29yZDogdHlwZSA9PT0gJ3Bhc3N3b3JkJyxcbiAgICAgICdjcHMtaW5wdXQtd3JhcC1lcnJvcic6IGVycm9yLFxuICAgICAgY2xlYXJhYmxlOiBjbGVhcmFibGUsXG4gICAgICAncGVyc2lzdGVudC1jbGVhcic6IHBlcnNpc3RlbnRDbGVhcixcbiAgICAgIGJvcmRlcmxlc3M6IGFwcGVhcmFuY2UgPT09ICdib3JkZXJsZXNzJyxcbiAgICAgIHVuZGVybGluZWQ6IGFwcGVhcmFuY2UgPT09ICd1bmRlcmxpbmVkJ1xuICAgIH1cIj5cbiAgICA8aW5wdXRcbiAgICAgICpuZ0lmPVwiIXZhbHVlVG9EaXNwbGF5XCJcbiAgICAgIHNwZWxsY2hlY2s9XCJmYWxzZVwiXG4gICAgICBbdHlwZV09XCJjdXJyZW50VHlwZVwiXG4gICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgKGlucHV0KT1cInVwZGF0ZVZhbHVlRXZlbnQoJGV2ZW50KVwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAoa2V5ZG93bi5lbnRlcik9XCJvbklucHV0RW50ZXJLZXlEb3duKClcIlxuICAgICAgW25nU3R5bGVdPVwie1xuICAgICAgICB3aWR0aDogY3Z0V2lkdGgsXG4gICAgICAgICdwYWRkaW5nLWxlZnQnOiBwcmVmaXhXaWR0aCB8fCAnbm9uZSdcbiAgICAgIH1cIlxuICAgICAgKGJsdXIpPVwib25CbHVyKClcIlxuICAgICAgKGZvY3VzKT1cIm9uRm9jdXMoKVwiIC8+XG5cbiAgICA8aW5wdXRcbiAgICAgICpuZ0lmPVwidmFsdWVUb0Rpc3BsYXlcIlxuICAgICAgW3ZhbHVlXT1cInZhbHVlVG9EaXNwbGF5XCJcbiAgICAgIFtkaXNhYmxlZF09XCJ0cnVlXCJcbiAgICAgIFtyZWFkb25seV09XCJ0cnVlXCJcbiAgICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgd2lkdGg6IGN2dFdpZHRoLFxuICAgICAgICAncGFkZGluZy1sZWZ0JzogcHJlZml4V2lkdGggfHwgJ25vbmUnXG4gICAgICB9XCIgLz5cblxuICAgIDxkaXYgY2xhc3M9XCJjcHMtaW5wdXQtcHJlZml4XCI+XG4gICAgICA8c3BhbiAqbmdJZj1cInByZWZpeEljb25cIiBjbGFzcz1cImNwcy1pbnB1dC1wcmVmaXgtaWNvblwiPlxuICAgICAgICA8Y3BzLWljb25cbiAgICAgICAgICBbaWNvbl09XCJwcmVmaXhJY29uXCJcbiAgICAgICAgICBbc2l6ZV09XCJwcmVmaXhJY29uU2l6ZVwiXG4gICAgICAgICAgW3N0eWxlLmNvbG9yXT1cImRpc2FibGVkID8gJyM5YTk1OTUnIDogbnVsbFwiXG4gICAgICAgICAgW3N0eWxlLmN1cnNvcl09XCJcbiAgICAgICAgICAgIHByZWZpeEljb25DbGlja2FibGUgJiYgIWRpc2FibGVkICYmICFyZWFkb25seVxuICAgICAgICAgICAgICA/ICdwb2ludGVyJ1xuICAgICAgICAgICAgICA6ICdkZWZhdWx0J1xuICAgICAgICAgIFwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uQ2xpY2tQcmVmaXhJY29uKClcIj5cbiAgICAgICAgPC9jcHMtaWNvbj5cbiAgICAgIDwvc3Bhbj5cblxuICAgICAgPHNwYW4gKm5nSWY9XCJwcmVmaXhUZXh0XCIgY2xhc3M9XCJjcHMtaW5wdXQtcHJlZml4LXRleHRcIiAjcHJlZml4VGV4dFNwYW4+XG4gICAgICAgIHt7IHByZWZpeFRleHQgfX1cbiAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJjcHMtaW5wdXQtYWN0aW9uLWJ0bnNcIiAqbmdJZj1cIiFkaXNhYmxlZCAmJiAhcmVhZG9ubHlcIj5cbiAgICAgIDxzcGFuXG4gICAgICAgICpuZ0lmPVwiY2xlYXJhYmxlXCJcbiAgICAgICAgW3N0eWxlLnZpc2liaWxpdHldPVwiXG4gICAgICAgICAgcGVyc2lzdGVudENsZWFyIHx8ICghcGVyc2lzdGVudENsZWFyICYmIHZhbHVlKSA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nXG4gICAgICAgIFwiXG4gICAgICAgIGNsYXNzPVwiY2xlYXItYnRuXCI+XG4gICAgICAgIDxjcHMtaWNvbiBpY29uPVwiZGVsZXRlXCIgc2l6ZT1cInNtYWxsXCIgKGNsaWNrKT1cIm9uQ2xlYXIoKVwiPjwvY3BzLWljb24+XG4gICAgICA8L3NwYW4+XG5cbiAgICAgIDxzcGFuXG4gICAgICAgICpuZ0lmPVwidHlwZSA9PT0gJ3Bhc3N3b3JkJ1wiXG4gICAgICAgIGNsYXNzPVwicGFzc3dvcmQtc2hvdy1idG5cIlxuICAgICAgICBbbmdDbGFzc109XCJ7ICdwYXNzd29yZC1zaG93LWJ0bi1hY3RpdmUnOiBjdXJyZW50VHlwZSA9PT0gJ3RleHQnIH1cIj5cbiAgICAgICAgPGNwcy1pY29uIGljb249XCJleWVcIiBzaXplPVwiMThweFwiIChjbGljayk9XCJ0b2dnbGVQYXNzd29yZCgpXCI+PC9jcHMtaWNvbj5cbiAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgICA8Y3BzLXByb2dyZXNzLWxpbmVhclxuICAgICAgKm5nSWY9XCJsb2FkaW5nXCJcbiAgICAgIGhlaWdodD1cIjNcIlxuICAgICAgcmFkaXVzPVwiNFwiXG4gICAgICBvcGFjaXR5PVwiMC4zXCJcbiAgICAgIGNsYXNzPVwiY3BzLWlucHV0LXByb2dyZXNzLWJhclwiXG4gICAgICBiZ0NvbG9yPVwidHJhbnNwYXJlbnRcIj5cbiAgICA8L2Nwcy1wcm9ncmVzcy1saW5lYXI+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiIWVycm9yICYmICFoaWRlRGV0YWlsc1wiIGNsYXNzPVwiY3BzLWlucHV0LWhpbnRcIj5cbiAgICB7eyBoaW50IH19XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiZXJyb3IgJiYgIWhpZGVEZXRhaWxzXCIgY2xhc3M9XCJjcHMtaW5wdXQtZXJyb3JcIj5cbiAgICB7eyBlcnJvciB9fVxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -11,6 +11,7 @@ import * as i2 from "@angular/common";
11
11
  export class CpsSwitchComponent {
12
12
  /**
13
13
  * Value of the switch component.
14
+ * @default false
14
15
  * @group Props
15
16
  */
16
17
  set value(value) {
@@ -127,4 +128,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
127
128
  }], valueChanged: [{
128
129
  type: Output
129
130
  }] } });
130
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3BzLXN3aXRjaC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcHMtdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9jcHMtc3dpdGNoL2Nwcy1zd2l0Y2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3BzLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY3BzLXN3aXRjaC9jcHMtc3dpdGNoLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBQ0wsUUFBUSxFQUNSLE1BQU0sRUFDTixJQUFJLEVBQ0wsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sOENBQThDLENBQUM7Ozs7QUFHdEY7OztHQUdHO0FBUUgsTUFBTSxPQUFPLGtCQUFrQjtJQTJDN0I7OztPQUdHO0lBQ0gsSUFBYSxLQUFLLENBQUMsS0FBYztRQUMvQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQVdELFlBQzhCLFFBQW1CLEVBQ3ZDLFdBQW9DO1FBRGhCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDdkMsZ0JBQVcsR0FBWCxXQUFXLENBQXlCO1FBbEU5Qzs7O1dBR0c7UUFDTSxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBRXBCOzs7V0FHRztRQUNNLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFMUI7OztXQUdHO1FBQ00sZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFFMUI7OztXQUdHO1FBQ00scUJBQWdCLEdBQUcscUJBQXFCLENBQUM7UUFFbEQ7OztXQUdHO1FBQ00sd0JBQW1CLEdBQW9CLE1BQU0sQ0FBQztRQUV2RDs7O1dBR0c7UUFDTSwwQkFBcUIsR0FBRyxLQUFLLENBQUM7UUFFdkM7OztXQUdHO1FBQ00sd0JBQW1CLEdBQXVCLEtBQUssQ0FBQztRQWV6RDs7OztXQUlHO1FBQ08saUJBQVksR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRTdDLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFXdkIsZ0VBQWdFO1FBQ2hFLGFBQVEsR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBRTlCLGdFQUFnRTtRQUNoRSxjQUFTLEdBQUcsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBVG5CLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztRQUNyQyxDQUFDO0lBQ0gsQ0FBQztJQVFELGdCQUFnQixDQUFDLEVBQU87UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFjO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxLQUFVO1FBQ3pCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixJQUFJLElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTztRQUMxQixJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTyxZQUFZLENBQUMsS0FBYztRQUNqQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELGdFQUFnRTtJQUNoRSxnQkFBZ0IsQ0FBQyxRQUFpQixJQUFHLENBQUM7SUFFdEMsS0FBSztRQUNILElBQUksQ0FBQyxXQUFXLEVBQUUsYUFBYSxFQUFFLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUNuRSxDQUFDOzhHQTdHVSxrQkFBa0I7a0dBQWxCLGtCQUFrQiw2WEN6Qi9CLHV4QkEwQkEsNDBERE5ZLFlBQVksaU9BQUUsc0JBQXNCOzsyRkFLbkMsa0JBQWtCO2tCQVA5QixTQUFTO2lDQUNJLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxzQkFBc0IsQ0FBQyxZQUNyQyxZQUFZOzswQkFzRW5CLElBQUk7OzBCQUFJLFFBQVE7a0VBN0RWLEtBQUs7c0JBQWIsS0FBSztnQkFNRyxRQUFRO3NCQUFoQixLQUFLO2dCQU1HLFdBQVc7c0JBQW5CLEtBQUs7Z0JBTUcsZ0JBQWdCO3NCQUF4QixLQUFLO2dCQU1HLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFNRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBTUcsbUJBQW1CO3NCQUEzQixLQUFLO2dCQU1PLEtBQUs7c0JBQWpCLEtBQUs7Z0JBY0ksWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG4gIFNlbGZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ3BzSW5mb0NpcmNsZUNvbXBvbmVudCB9IGZyb20gJy4uL2Nwcy1pbmZvLWNpcmNsZS9jcHMtaW5mby1jaXJjbGUuY29tcG9uZW50JztcbmltcG9ydCB7IENwc1Rvb2x0aXBQb3NpdGlvbiB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvY3BzLXRvb2x0aXAvY3BzLXRvb2x0aXAuZGlyZWN0aXZlJztcblxuLyoqXG4gKiBDcHNTd2l0Y2hDb21wb25lbnQgaXMgYSBjb21wb25lbnQgdXNlZCB0byB0b2dnbGUgYSBib29sZWFuIHZhbHVlLlxuICogQGdyb3VwIENvbXBvbmVudHNcbiAqL1xuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIENwc0luZm9DaXJjbGVDb21wb25lbnRdLFxuICBzZWxlY3RvcjogJ2Nwcy1zd2l0Y2gnLFxuICB0ZW1wbGF0ZVVybDogJy4vY3BzLXN3aXRjaC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Nwcy1zd2l0Y2guY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDcHNTd2l0Y2hDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIC8qKlxuICAgKiBMYWJlbCBvZiB0aGUgY29tcG9uZW50LlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGxhYmVsID0gJyc7XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciB0aGUgY29tcG9uZW50IGlzIGRpc2FibGVkLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFdoZW4gaXQgaXMgbm90IGFuIGVtcHR5IHN0cmluZywgYW4gaW5mbyBpY29uIGlzIGRpc3BsYXllZCB0byBzaG93IHRleHQgZm9yIG1vcmUgaW5mby5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBpbmZvVG9vbHRpcCA9ICcnO1xuXG4gIC8qKlxuICAgKiBJbmZvVG9vbHRpcCBjbGFzcyBmb3Igc3R5bGluZy5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBpbmZvVG9vbHRpcENsYXNzID0gJ2Nwcy10b29sdGlwLWNvbnRlbnQnO1xuXG4gIC8qKlxuICAgKiBTaXplIG9mIGluZm9Ub29sdGlwLCBvZiB0eXBlIG51bWJlciBkZW5vdGluZyBwaXhlbHMgb3Igc3RyaW5nLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGluZm9Ub29sdGlwTWF4V2lkdGg6IG51bWJlciB8IHN0cmluZyA9ICcxMDAlJztcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBpbmZvVG9vbHRpcCBpcyBwZXJzaXN0ZW50LlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGluZm9Ub29sdGlwUGVyc2lzdGVudCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBQb3NpdGlvbiBvZiBpbmZvVG9vbHRpcCwgaXQgY2FuIGJlICd0b3AnLCAnYm90dG9tJywgJ2xlZnQnIG9yICdyaWdodCcuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgaW5mb1Rvb2x0aXBQb3NpdGlvbjogQ3BzVG9vbHRpcFBvc2l0aW9uID0gJ3RvcCc7XG5cbiAgLyoqXG4gICAqIFZhbHVlIG9mIHRoZSBzd2l0Y2ggY29tcG9uZW50LlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHNldCB2YWx1ZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gIH1cblxuICBnZXQgdmFsdWUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIHRvIGludm9rZSBvbiB2YWx1ZSBjaGFuZ2UuXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gYm9vbGVhbiAtIHZhbHVlIGNoYW5nZWQuXG4gICAqIEBncm91cCBFbWl0c1xuICAgKi9cbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBwcml2YXRlIF92YWx1ZSA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBTZWxmKCkgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfY29udHJvbDogTmdDb250cm9sLFxuICAgIHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+XG4gICkge1xuICAgIGlmICh0aGlzLl9jb250cm9sKSB7XG4gICAgICB0aGlzLl9jb250cm9sLnZhbHVlQWNjZXNzb3IgPSB0aGlzO1xuICAgIH1cbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgb25DaGFuZ2UgPSAoZXZlbnQ6IGFueSkgPT4ge307XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBvblRvdWNoZWQgPSAoKSA9PiB7fTtcblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cblxuICB1cGRhdGVWYWx1ZUV2ZW50KGV2ZW50OiBhbnkpIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm47XG4gICAgdGhpcy5fdXBkYXRlVmFsdWUoIXRoaXMudmFsdWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlVmFsdWUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLndyaXRlVmFsdWUodmFsdWUpO1xuICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICAgIHRoaXMudmFsdWVDaGFuZ2VkLmVtaXQodmFsdWUpO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBzZXREaXNhYmxlZFN0YXRlKGRpc2FibGVkOiBib29sZWFuKSB7fVxuXG4gIGZvY3VzKCkge1xuICAgIHRoaXMuX2VsZW1lbnRSZWY/Lm5hdGl2ZUVsZW1lbnQ/LnF1ZXJ5U2VsZWN0b3IoJ2lucHV0Jyk/LmZvY3VzKCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjcHMtc3dpdGNoLWNvbnRhaW5lclwiPlxuICA8bGFiZWwgY2xhc3M9XCJjcHMtc3dpdGNoXCI+XG4gICAgPGlucHV0XG4gICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtjaGVja2VkXT1cInZhbHVlXCJcbiAgICAgIChjaGFuZ2UpPVwidXBkYXRlVmFsdWVFdmVudCgkZXZlbnQpXCIgLz5cbiAgICA8c3BhbiBjbGFzcz1cImNwcy1zd2l0Y2gtc2xpZGVyXCI+PC9zcGFuPlxuICA8L2xhYmVsPlxuICA8c3BhblxuICAgICpuZ0lmPVwibGFiZWxcIlxuICAgIGNsYXNzPVwiY3BzLXN3aXRjaC1sYWJlbFwiXG4gICAgW25nQ2xhc3NdPVwieyAnY3BzLXN3aXRjaC1sYWJlbC1kaXNhYmxlZCc6IGRpc2FibGVkIH1cIlxuICAgID57eyBsYWJlbCB9fTwvc3BhblxuICA+XG4gIDxjcHMtaW5mby1jaXJjbGVcbiAgICAqbmdJZj1cImluZm9Ub29sdGlwXCJcbiAgICBjbGFzcz1cImNwcy1zd2l0Y2gtaW5mby1jaXJjbGVcIlxuICAgIHNpemU9XCJ4c21hbGxcIlxuICAgIFt0b29sdGlwUG9zaXRpb25dPVwiaW5mb1Rvb2x0aXBQb3NpdGlvblwiXG4gICAgW3Rvb2x0aXBDb250ZW50Q2xhc3NdPVwiaW5mb1Rvb2x0aXBDbGFzc1wiXG4gICAgW3Rvb2x0aXBNYXhXaWR0aF09XCJpbmZvVG9vbHRpcE1heFdpZHRoXCJcbiAgICBbdG9vbHRpcFBlcnNpc3RlbnRdPVwiaW5mb1Rvb2x0aXBQZXJzaXN0ZW50XCJcbiAgICBbdG9vbHRpcFRleHRdPVwiaW5mb1Rvb2x0aXBcIj5cbiAgPC9jcHMtaW5mby1jaXJjbGU+XG48L2Rpdj5cbiJdfQ==
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3BzLXN3aXRjaC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcHMtdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9jcHMtc3dpdGNoL2Nwcy1zd2l0Y2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3BzLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY3BzLXN3aXRjaC9jcHMtc3dpdGNoLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBQ0wsUUFBUSxFQUNSLE1BQU0sRUFDTixJQUFJLEVBQ0wsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sOENBQThDLENBQUM7Ozs7QUFHdEY7OztHQUdHO0FBUUgsTUFBTSxPQUFPLGtCQUFrQjtJQTJDN0I7Ozs7T0FJRztJQUNILElBQWEsS0FBSyxDQUFDLEtBQWM7UUFDL0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFXRCxZQUM4QixRQUFtQixFQUN2QyxXQUFvQztRQURoQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ3ZDLGdCQUFXLEdBQVgsV0FBVyxDQUF5QjtRQW5FOUM7OztXQUdHO1FBQ00sVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUVwQjs7O1dBR0c7UUFDTSxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRTFCOzs7V0FHRztRQUNNLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBRTFCOzs7V0FHRztRQUNNLHFCQUFnQixHQUFHLHFCQUFxQixDQUFDO1FBRWxEOzs7V0FHRztRQUNNLHdCQUFtQixHQUFvQixNQUFNLENBQUM7UUFFdkQ7OztXQUdHO1FBQ00sMEJBQXFCLEdBQUcsS0FBSyxDQUFDO1FBRXZDOzs7V0FHRztRQUNNLHdCQUFtQixHQUF1QixLQUFLLENBQUM7UUFnQnpEOzs7O1dBSUc7UUFDTyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFN0MsV0FBTSxHQUFHLEtBQUssQ0FBQztRQVd2QixnRUFBZ0U7UUFDaEUsYUFBUSxHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUUsR0FBRSxDQUFDLENBQUM7UUFFOUIsZ0VBQWdFO1FBQ2hFLGNBQVMsR0FBRyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7UUFUbkIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1FBQ3JDLENBQUM7SUFDSCxDQUFDO0lBUUQsZ0JBQWdCLENBQUMsRUFBTztRQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBTztRQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQWM7UUFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQVU7UUFDekIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLElBQUksSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBQzFCLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVPLFlBQVksQ0FBQyxLQUFjO1FBQ2pDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsZ0VBQWdFO0lBQ2hFLGdCQUFnQixDQUFDLFFBQWlCLElBQUcsQ0FBQztJQUV0QyxLQUFLO1FBQ0gsSUFBSSxDQUFDLFdBQVcsRUFBRSxhQUFhLEVBQUUsYUFBYSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQ25FLENBQUM7OEdBOUdVLGtCQUFrQjtrR0FBbEIsa0JBQWtCLDZYQ3pCL0IsdXhCQTBCQSw0MERETlksWUFBWSxpT0FBRSxzQkFBc0I7OzJGQUtuQyxrQkFBa0I7a0JBUDlCLFNBQVM7aUNBQ0ksSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLHNCQUFzQixDQUFDLFlBQ3JDLFlBQVk7OzBCQXVFbkIsSUFBSTs7MEJBQUksUUFBUTtrRUE5RFYsS0FBSztzQkFBYixLQUFLO2dCQU1HLFFBQVE7c0JBQWhCLEtBQUs7Z0JBTUcsV0FBVztzQkFBbkIsS0FBSztnQkFNRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBTUcsbUJBQW1CO3NCQUEzQixLQUFLO2dCQU1HLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFNRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBT08sS0FBSztzQkFBakIsS0FBSztnQkFjSSxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3B0aW9uYWwsXG4gIE91dHB1dCxcbiAgU2VsZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDcHNJbmZvQ2lyY2xlQ29tcG9uZW50IH0gZnJvbSAnLi4vY3BzLWluZm8tY2lyY2xlL2Nwcy1pbmZvLWNpcmNsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3BzVG9vbHRpcFBvc2l0aW9uIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9jcHMtdG9vbHRpcC9jcHMtdG9vbHRpcC5kaXJlY3RpdmUnO1xuXG4vKipcbiAqIENwc1N3aXRjaENvbXBvbmVudCBpcyBhIGNvbXBvbmVudCB1c2VkIHRvIHRvZ2dsZSBhIGJvb2xlYW4gdmFsdWUuXG4gKiBAZ3JvdXAgQ29tcG9uZW50c1xuICovXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQ3BzSW5mb0NpcmNsZUNvbXBvbmVudF0sXG4gIHNlbGVjdG9yOiAnY3BzLXN3aXRjaCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jcHMtc3dpdGNoLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY3BzLXN3aXRjaC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIENwc1N3aXRjaENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgLyoqXG4gICAqIExhYmVsIG9mIHRoZSBjb21wb25lbnQuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgbGFiZWwgPSAnJztcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBjb21wb25lbnQgaXMgZGlzYWJsZWQuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogV2hlbiBpdCBpcyBub3QgYW4gZW1wdHkgc3RyaW5nLCBhbiBpbmZvIGljb24gaXMgZGlzcGxheWVkIHRvIHNob3cgdGV4dCBmb3IgbW9yZSBpbmZvLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGluZm9Ub29sdGlwID0gJyc7XG5cbiAgLyoqXG4gICAqIEluZm9Ub29sdGlwIGNsYXNzIGZvciBzdHlsaW5nLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIGluZm9Ub29sdGlwQ2xhc3MgPSAnY3BzLXRvb2x0aXAtY29udGVudCc7XG5cbiAgLyoqXG4gICAqIFNpemUgb2YgaW5mb1Rvb2x0aXAsIG9mIHR5cGUgbnVtYmVyIGRlbm90aW5nIHBpeGVscyBvciBzdHJpbmcuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgaW5mb1Rvb2x0aXBNYXhXaWR0aDogbnVtYmVyIHwgc3RyaW5nID0gJzEwMCUnO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgdGhlIGluZm9Ub29sdGlwIGlzIHBlcnNpc3RlbnQuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgaW5mb1Rvb2x0aXBQZXJzaXN0ZW50ID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFBvc2l0aW9uIG9mIGluZm9Ub29sdGlwLCBpdCBjYW4gYmUgJ3RvcCcsICdib3R0b20nLCAnbGVmdCcgb3IgJ3JpZ2h0Jy5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBpbmZvVG9vbHRpcFBvc2l0aW9uOiBDcHNUb29sdGlwUG9zaXRpb24gPSAndG9wJztcblxuICAvKipcbiAgICogVmFsdWUgb2YgdGhlIHN3aXRjaCBjb21wb25lbnQuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgc2V0IHZhbHVlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcbiAgfVxuXG4gIGdldCB2YWx1ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogQ2FsbGJhY2sgdG8gaW52b2tlIG9uIHZhbHVlIGNoYW5nZS5cbiAgICogQHBhcmFtIHtib29sZWFufSBib29sZWFuIC0gdmFsdWUgY2hhbmdlZC5cbiAgICogQGdyb3VwIEVtaXRzXG4gICAqL1xuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIHByaXZhdGUgX3ZhbHVlID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQFNlbGYoKSBAT3B0aW9uYWwoKSBwcml2YXRlIF9jb250cm9sOiBOZ0NvbnRyb2wsXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cbiAgKSB7XG4gICAgaWYgKHRoaXMuX2NvbnRyb2wpIHtcbiAgICAgIHRoaXMuX2NvbnRyb2wudmFsdWVBY2Nlc3NvciA9IHRoaXM7XG4gICAgfVxuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBvbkNoYW5nZSA9IChldmVudDogYW55KSA9PiB7fTtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIG9uVG91Y2hlZCA9ICgpID0+IHt9O1xuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgfVxuXG4gIHVwZGF0ZVZhbHVlRXZlbnQoZXZlbnQ6IGFueSkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHJldHVybjtcbiAgICB0aGlzLl91cGRhdGVWYWx1ZSghdGhpcy52YWx1ZSk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVWYWx1ZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgdGhpcy52YWx1ZUNoYW5nZWQuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIHNldERpc2FibGVkU3RhdGUoZGlzYWJsZWQ6IGJvb2xlYW4pIHt9XG5cbiAgZm9jdXMoKSB7XG4gICAgdGhpcy5fZWxlbWVudFJlZj8ubmF0aXZlRWxlbWVudD8ucXVlcnlTZWxlY3RvcignaW5wdXQnKT8uZm9jdXMoKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNwcy1zd2l0Y2gtY29udGFpbmVyXCI+XG4gIDxsYWJlbCBjbGFzcz1cImNwcy1zd2l0Y2hcIj5cbiAgICA8aW5wdXRcbiAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW2NoZWNrZWRdPVwidmFsdWVcIlxuICAgICAgKGNoYW5nZSk9XCJ1cGRhdGVWYWx1ZUV2ZW50KCRldmVudClcIiAvPlxuICAgIDxzcGFuIGNsYXNzPVwiY3BzLXN3aXRjaC1zbGlkZXJcIj48L3NwYW4+XG4gIDwvbGFiZWw+XG4gIDxzcGFuXG4gICAgKm5nSWY9XCJsYWJlbFwiXG4gICAgY2xhc3M9XCJjcHMtc3dpdGNoLWxhYmVsXCJcbiAgICBbbmdDbGFzc109XCJ7ICdjcHMtc3dpdGNoLWxhYmVsLWRpc2FibGVkJzogZGlzYWJsZWQgfVwiXG4gICAgPnt7IGxhYmVsIH19PC9zcGFuXG4gID5cbiAgPGNwcy1pbmZvLWNpcmNsZVxuICAgICpuZ0lmPVwiaW5mb1Rvb2x0aXBcIlxuICAgIGNsYXNzPVwiY3BzLXN3aXRjaC1pbmZvLWNpcmNsZVwiXG4gICAgc2l6ZT1cInhzbWFsbFwiXG4gICAgW3Rvb2x0aXBQb3NpdGlvbl09XCJpbmZvVG9vbHRpcFBvc2l0aW9uXCJcbiAgICBbdG9vbHRpcENvbnRlbnRDbGFzc109XCJpbmZvVG9vbHRpcENsYXNzXCJcbiAgICBbdG9vbHRpcE1heFdpZHRoXT1cImluZm9Ub29sdGlwTWF4V2lkdGhcIlxuICAgIFt0b29sdGlwUGVyc2lzdGVudF09XCJpbmZvVG9vbHRpcFBlcnNpc3RlbnRcIlxuICAgIFt0b29sdGlwVGV4dF09XCJpbmZvVG9vbHRpcFwiPlxuICA8L2Nwcy1pbmZvLWNpcmNsZT5cbjwvZGl2PlxuIl19
@@ -15,6 +15,7 @@ import * as i1 from "@angular/common";
15
15
  export class CpsTabGroupComponent {
16
16
  /**
17
17
  * Index of the selected tab.
18
+ * @default 0
18
19
  * @group Props
19
20
  */
20
21
  set selectedIndex(value) {
@@ -300,4 +301,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
300
301
  type: ContentChildren,
301
302
  args: [CpsTabComponent]
302
303
  }] } });
303
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3BzLXRhYi1ncm91cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcHMtdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9jcHMtdGFiLWdyb3VwL2Nwcy10YWItZ3JvdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3BzLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY3BzLXRhYi1ncm91cC9jcHMtdGFiLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxPQUFPLEVBQ1AsS0FBSyxFQUNMLEtBQUssRUFDTCxVQUFVLEVBQ1YsT0FBTyxFQUNSLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFJTCxTQUFTLEVBQ1QsZUFBZSxFQUVmLFlBQVksRUFDWixLQUFLLEVBSUwsTUFBTSxFQUdOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDekYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFDTCxZQUFZLEVBQ1osWUFBWSxFQUNaLG9CQUFvQixFQUNwQixTQUFTLEVBQ1YsTUFBTSxNQUFNLENBQUM7OztBQTZCZDs7O0dBR0c7QUF3Q0gsTUFBTSxPQUFPLG9CQUFvQjtJQUcvQjs7O09BR0c7SUFDSCxJQUFhLGFBQWEsQ0FBQyxLQUFhO1FBQ3RDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7UUFDL0Ms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QU1HLGNBQWM7c0JBQXRCLEtBQUs7Z0JBT0ksZ0JBQWdCO3NCQUF6QixNQUFNO2dCQU9HLGVBQWU7c0JBQXhCLE1BQU07Z0JBRWdCLFFBQVE7c0JBQTlCLFNBQVM7dUJBQUMsVUFBVTtnQkFDQyxPQUFPO3NCQUE1QixTQUFTO3VCQUFDLFNBQVM7Z0JBQ0ssVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQUVXLElBQUk7c0JBQXJDLGVBQWU7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGFuaW1hdGUsXG4gIHN0YXRlLFxuICBzdHlsZSxcbiAgdHJhbnNpdGlvbixcbiAgdHJpZ2dlclxufSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDcHNJY29uQ29tcG9uZW50IH0gZnJvbSAnLi4vY3BzLWljb24vY3BzLWljb24uY29tcG9uZW50JztcbmltcG9ydCB7IENwc1RhYkNvbXBvbmVudCB9IGZyb20gJy4vY3BzLXRhYi9jcHMtdGFiLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDcHNUb29sdGlwRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9jcHMtdG9vbHRpcC9jcHMtdG9vbHRpcC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgZ2V0Q1NTQ29sb3IgfSBmcm9tICcuLi8uLi91dGlscy9jb2xvcnMtdXRpbHMnO1xuaW1wb3J0IHtcbiAgU3Vic2NyaXB0aW9uLFxuICBkZWJvdW5jZVRpbWUsXG4gIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICBmcm9tRXZlbnRcbn0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogQ3BzVGFiQ2hhbmdlRXZlbnQgaXMgdXNlZCB0byBkZWZpbmUgdGhlIHRhYiBjaGFuZ2UgZXZlbnQuXG4gKiBAZ3JvdXAgSW50ZXJmYWNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3BzVGFiQ2hhbmdlRXZlbnQge1xuICAvKipcbiAgICogSW5kZXggb2YgdGhlIHByZXZpb3VzIHRhYi5cbiAgICovXG4gIHByZXZpb3VzSW5kZXg6IG51bWJlcjtcbiAgLyoqXG4gICAqIEluZGV4IG9mIHRoZSBuZXcgdGFiLlxuICAgKi9cbiAgbmV3SW5kZXg6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBDcHNUYWJzQW5pbWF0aW9uVHlwZSBpcyB1c2VkIHRvIGRlZmluZSB0aGUgdHJhbnNpdGlvbiBvcHRpb25zIG9mIGhvdyBjb250ZW50IGFwcGVhcnMuXG4gKiBAZ3JvdXAgVHlwZXNcbiAqL1xuZXhwb3J0IHR5cGUgQ3BzVGFic0FuaW1hdGlvblR5cGUgPSAnc2xpZGUnIHwgJ2ZhZGUnO1xuXG4vKipcbiAqIENwc1RhYnNBbGlnbm1lbnRUeXBlIGlzIHVzZWQgdG8gZGVmaW5lIHRoZSBob3Jpem9udGFsIGFsaWdubWVudCBvZiB0YWJzLlxuICogQGdyb3VwIFR5cGVzXG4gKi9cbmV4cG9ydCB0eXBlIENwc1RhYnNBbGlnbm1lbnRUeXBlID0gJ2xlZnQnIHwgJ2NlbnRlcicgfCAncmlnaHQnO1xuXG4vKipcbiAqIENwc1RhYkdyb3VwQ29tcG9uZW50IGlzIGEgbmF2aWdhdGlvbiBjb21wb25lbnQgdGhhdCBkaXNwbGF5cyBpdGVtcyBhcyB0YWIgaGVhZGVycy5cbiAqIEBncm91cCBDb21wb25lbnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIENwc0ljb25Db21wb25lbnQsXG4gICAgQ3BzVGFiQ29tcG9uZW50LFxuICAgIENwc1Rvb2x0aXBEaXJlY3RpdmVcbiAgXSxcbiAgc2VsZWN0b3I6ICdjcHMtdGFiLWdyb3VwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Nwcy10YWItZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jcHMtdGFiLWdyb3VwLmNvbXBvbmVudC5zY3NzJ10sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdzbGlkZUluT3V0JywgW1xuICAgICAgc3RhdGUoJ3NsaWRlTGVmdCcsIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgwKScgfSkpLFxuICAgICAgc3RhdGUoJ3NsaWRlUmlnaHQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMCknIH0pKSxcbiAgICAgIHRyYW5zaXRpb24oJyogPT4gc2xpZGVMZWZ0JywgW1xuICAgICAgICBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoLTEwMCUpJyB9KSxcbiAgICAgICAgYW5pbWF0ZSgnMjAwbXMgZWFzZS1pbicpXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJyogPT4gc2xpZGVSaWdodCcsIFtcbiAgICAgICAgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDEwMCUpJyB9KSxcbiAgICAgICAgYW5pbWF0ZSgnMjAwbXMgZWFzZS1pbicpXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJ3ZvaWQgPT4gKicsIGFuaW1hdGUoMCkpXG4gICAgXSksXG4gICAgdHJpZ2dlcignZmFkZUluT3V0JywgW1xuICAgICAgc3RhdGUoJ2ZhZGVJbicsIHN0eWxlKHsgb3BhY2l0eTogMSB9KSksXG4gICAgICBzdGF0ZSgnZmFkZU91dCcsIHN0eWxlKHsgb3BhY2l0eTogMCB9KSksXG4gICAgICB0cmFuc2l0aW9uKCdmYWRlT3V0ID0+IGZhZGVJbicsIFtcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAwIH0pLFxuICAgICAgICBhbmltYXRlKCcxMDBtcyBlYXNlLWluJylcbiAgICAgIF0pLFxuICAgICAgdHJhbnNpdGlvbignZmFkZUluID0+IGZhZGVPdXQnLCBbXG4gICAgICAgIGFuaW1hdGUoJzBtcyBlYXNlLW91dCcsIHN0eWxlKHsgb3BhY2l0eTogMCB9KSlcbiAgICAgIF0pLFxuICAgICAgdHJhbnNpdGlvbigndm9pZCA9PiAqJywgYW5pbWF0ZSgwKSlcbiAgICBdKVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIENwc1RhYkdyb3VwQ29tcG9uZW50XG4gIGltcGxlbWVudHMgT25Jbml0LCBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveVxue1xuICAvKipcbiAgICogSW5kZXggb2YgdGhlIHNlbGVjdGVkIHRhYi5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBzZXQgc2VsZWN0ZWRJbmRleCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5fcHJldmlvdXNUYWJJbmRleCA9IHRoaXMuX2N1cnJlbnRUYWJJbmRleDtcbiAgICB0aGlzLl9jdXJyZW50VGFiSW5kZXggPSB2YWx1ZTtcbiAgfVxuXG4gIGdldCBzZWxlY3RlZEluZGV4KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2N1cnJlbnRUYWJJbmRleDtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgdG8gYXBwbHkgYW4gYWx0ZXJuYXRpdmUgJ3N1YnRhYnMnIHN0eWxpbmcuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgaXNTdWJUYWJzID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEhvcml6b250YWwgYWxpZ25tZW50IG9mIHRhYnMuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgYWxpZ25tZW50OiBDcHNUYWJzQWxpZ25tZW50VHlwZSA9ICdsZWZ0JztcblxuICAvKipcbiAgICogQ2xhc3MgdG8gYXBwbHkgdG8gdGhlIHRhYiBjb250ZW50IHdyYXBwZXIuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgY29udGVudFdyYXBDbGFzcyA9ICcnO1xuXG4gIC8qKlxuICAgKiBDbGFzcyB0byBhcHBseSB0byB0aGUgdGFiIGhlYWRlci5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBoZWFkZXJDbGFzcyA9ICcnO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgdG8gc3RyZXRjaCB0YWJzIHRvIGZpbGwgdGhlIGF2YWlsYWJsZSBob3Jpem9udGFsIHNwYWNlLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHN0cmV0Y2hlZCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUcmFuc2l0aW9uIG9wdGlvbnMgb2YgaG93IGNvbnRlbnQgYXBwZWFycywgaXQgY2FuIGJlIFwic2xpZGVcIiBvciBcImZhZGVcIi5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBhbmltYXRpb25UeXBlOiBDcHNUYWJzQW5pbWF0aW9uVHlwZSA9ICdzbGlkZSc7XG5cbiAgLyoqXG4gICAqIEJhY2tncm91bmQgY29sb3Igb2YgbmF2aWdhdGlvbiBidXR0b25zLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIG5hdkJ1dHRvbnNCYWNrZ3JvdW5kID0gJ2luaGVyaXQnO1xuXG4gIC8qKlxuICAgKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYnMuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgdGFic0JhY2tncm91bmQgPSAnaW5oZXJpdCc7XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIHRvIGludm9rZSBiZWZvcmUgdGFiIGNoYW5nZS5cbiAgICogQHBhcmFtIHtDcHNUYWJDaGFuZ2VFdmVudH0gYW55IC0gdGFiIGNoYW5nZSBldmVudC5cbiAgICogQGdyb3VwIEVtaXRzXG4gICAqL1xuICBAT3V0cHV0KCkgYmVmb3JlVGFiQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Q3BzVGFiQ2hhbmdlRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIHRvIGludm9rZSBhZnRlciB0YWIgY2hhbmdlLlxuICAgKiBAcGFyYW0ge0Nwc1RhYkNoYW5nZUV2ZW50fSBhbnkgLSB0YWIgY2hhbmdlIGV2ZW50LlxuICAgKiBAZ3JvdXAgRW1pdHNcbiAgICovXG4gIEBPdXRwdXQoKSBhZnRlclRhYkNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPENwc1RhYkNoYW5nZUV2ZW50PigpO1xuXG4gIEBWaWV3Q2hpbGQoJ3RhYnNMaXN0JykgdGFic0xpc3QhOiBFbGVtZW50UmVmO1xuICBAVmlld0NoaWxkKCdiYWNrQnRuJykgYmFja0J0bj86IEVsZW1lbnRSZWY7XG4gIEBWaWV3Q2hpbGQoJ2ZvcndhcmRCdG4nKSBmb3J3YXJkQnRuPzogRWxlbWVudFJlZjtcblxuICBAQ29udGVudENoaWxkcmVuKENwc1RhYkNvbXBvbmVudCkgdGFicyE6IFF1ZXJ5TGlzdDxDcHNUYWJDb21wb25lbnQ+O1xuXG4gIGJhY2tCdG5WaXNpYmxlID0gZmFsc2U7XG4gIGZvcndhcmRCdG5WaXNpYmxlID0gZmFsc2U7XG4gIGFuaW1hdGlvblN0YXRlOiAnc2xpZGVMZWZ0JyB8ICdzbGlkZVJpZ2h0JyB8ICdmYWRlSW4nIHwgJ2ZhZGVPdXQnID0gJ2ZhZGVJbic7XG5cbiAgd2luZG93UmVzaXplJDogU3Vic2NyaXB0aW9uID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xuICBsaXN0U2Nyb2xsJDogU3Vic2NyaXB0aW9uID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xuXG4gIHByaXZhdGUgX2N1cnJlbnRUYWJJbmRleCA9IDA7XG4gIHByaXZhdGUgX3ByZXZpb3VzVGFiSW5kZXggPSAwO1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11c2VsZXNzLWNvbnN0cnVjdG9yXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMudGFic0JhY2tncm91bmQgPSBnZXRDU1NDb2xvcih0aGlzLnRhYnNCYWNrZ3JvdW5kKTtcbiAgICB0aGlzLm5hdkJ1dHRvbnNCYWNrZ3JvdW5kID0gZ2V0Q1NTQ29sb3IodGhpcy5uYXZCdXR0b25zQmFja2dyb3VuZCk7XG5cbiAgICB0aGlzLndpbmRvd1Jlc2l6ZSQgPSBmcm9tRXZlbnQod2luZG93LCAncmVzaXplJylcbiAgICAgIC5waXBlKGRlYm91bmNlVGltZSg1MCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMub25SZXNpemUoKSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXMuc2VsZWN0ZWRJbmRleCAmJiAhY2hhbmdlcy5zZWxlY3RlZEluZGV4LmZpcnN0Q2hhbmdlKSB7XG4gICAgICB0aGlzLnNlbGVjdFRhYigpO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICB0aGlzLnNlbGVjdFRhYih0cnVlKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLl91cGRhdGVOYXZCdG5zU3RhdGUoKTtcblxuICAgIHRoaXMubGlzdFNjcm9sbCQgPSBmcm9tRXZlbnQodGhpcy50YWJzTGlzdC5uYXRpdmVFbGVtZW50LCAnc2Nyb2xsJylcbiAgICAgIC5waXBlKGRlYm91bmNlVGltZSg1MCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpXG4gICAgICAuc3Vic2NyaWJlKChldmVudDogYW55KSA9PiB0aGlzLm9uU2Nyb2xsKGV2ZW50KSk7XG5cbiAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMud2luZG93UmVzaXplJD8udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLmxpc3RTY3JvbGwkPy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgZ2V0IHNlbGVjdGVkVGFiKCk6IENwc1RhYkNvbXBvbmVudCB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMudGFicy5maW5kKCh0KSA9PiB0LmFjdGl2ZSk7XG4gIH1cblxuICBvblRhYkNsaWNrKGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLnNlbGVjdGVkSW5kZXggPSBpbmRleDtcbiAgICB0aGlzLnNlbGVjdFRhYigpO1xuICB9XG5cbiAgc2VsZWN0VGFiKHNpbGVudCA9IGZhbHNlKSB7XG4gICAgY29uc3QgX3RhYnMgPSB0aGlzLnRhYnMudG9BcnJheSgpO1xuICAgIGNvbnN0IGN1cnJlbnRTZWxlY3RlZFRhYiA9IF90YWJzICYmIF90YWJzW3RoaXMuX3ByZXZpb3VzVGFiSW5kZXhdO1xuXG4gICAgY3VycmVudFNlbGVjdGVkVGFiICYmIChjdXJyZW50U2VsZWN0ZWRUYWIuYWN0aXZlID0gZmFsc2UpO1xuICAgIGNvbnN0IG5ld1NlbGVjdGVkVGFiID0gX3RhYnMgJiYgX3RhYnNbdGhpcy5fY3VycmVudFRhYkluZGV4XTtcbiAgICBuZXdTZWxlY3RlZFRhYiAmJiAobmV3U2VsZWN0ZWRUYWIuYWN0aXZlID0gdHJ1ZSk7XG4gICAgaWYgKHRoaXMuX2N1cnJlbnRUYWJJbmRleCA9PT0gdGhpcy5fcHJldmlvdXNUYWJJbmRleCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICghc2lsZW50KSB7XG4gICAgICB0aGlzLmJlZm9yZVRhYkNoYW5nZWQuZW1pdCh7XG4gICAgICAgIHByZXZpb3VzSW5kZXg6IHRoaXMuX3ByZXZpb3VzVGFiSW5kZXgsXG4gICAgICAgIG5ld0luZGV4OiB0aGlzLl9jdXJyZW50VGFiSW5kZXhcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmFuaW1hdGlvblR5cGUgPT09ICdzbGlkZScpIHtcbiAgICAgIHRoaXMuYW5pbWF0aW9uU3RhdGUgPVxuICAgICAgICB0aGlzLl9jdXJyZW50VGFiSW5kZXggPCB0aGlzLl9wcmV2aW91c1RhYkluZGV4XG4gICAgICAgICAgPyAnc2xpZGVMZWZ0J1xuICAgICAgICAgIDogJ3NsaWRlUmlnaHQnO1xuXG4gICAgICBpZiAoIXNpbGVudCkge1xuICAgICAgICB0aGlzLmFmdGVyVGFiQ2hhbmdlZC5lbWl0KHtcbiAgICAgICAgICBwcmV2aW91c0luZGV4OiB0aGlzLl9wcmV2aW91c1RhYkluZGV4LFxuICAgICAgICAgIG5ld0luZGV4OiB0aGlzLl9jdXJyZW50VGFiSW5kZXhcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh0aGlzLmFuaW1hdGlvblR5cGUgPT09ICdmYWRlJykge1xuICAgICAgdGhpcy5hbmltYXRpb25TdGF0ZSA9ICdmYWRlT3V0JztcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmFuaW1hdGlvblN0YXRlID0gJ2ZhZGVJbic7XG4gICAgICAgIGlmICghc2lsZW50KSB7XG4gICAgICAgICAgdGhpcy5hZnRlclRhYkNoYW5nZWQuZW1pdCh7XG4gICAgICAgICAgICBwcmV2aW91c0luZGV4OiB0aGlzLl9wcmV2aW91c1RhYkluZGV4LFxuICAgICAgICAgICAgbmV3SW5kZXg6IHRoaXMuX2N1cnJlbnRUYWJJbmRleFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9LCAxMDApO1xuICAgIH1cbiAgfVxuXG4gIG9uU2Nyb2xsKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLl91cGRhdGVOYXZCdG5zU3RhdGUoKTtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICB9XG5cbiAgb25SZXNpemUoKSB7XG4gICAgdGhpcy5fdXBkYXRlTmF2QnRuc1N0YXRlKCk7XG4gIH1cblxuICBuYXZCYWNrd2FyZCgpIHtcbiAgICBjb25zdCBjb250ZW50ID0gdGhpcy50YWJzTGlzdC5uYXRpdmVFbGVtZW50O1xuICAgIGNvbnN0IHdpZHRoID0gdGhpcy5fZ2V0V2lkdGgoY29udGVudCkgLSB0aGlzLl9nZXRWaXNpYmxlQnV0dG9uV2lkdGhzKCk7XG4gICAgY29uc3QgcG9zID0gY29udGVudC5zY3JvbGxMZWZ0IC0gd2lkdGg7XG4gICAgY29udGVudC5zY3JvbGxMZWZ0ID0gcG9zIDw9IDAgPyAwIDogcG9zO1xuICB9XG5cbiAgbmF2Rm9yd2FyZCgpIHtcbiAgICBjb25zdCBjb250ZW50ID0gdGhpcy50YWJzTGlzdC5uYXRpdmVFbGVtZW50O1xuICAgIGNvbnN0IHdpZHRoID0gdGhpcy5fZ2V0V2lkdGgoY29udGVudCkgLSB0aGlzLl9nZXRWaXNpYmxlQnV0dG9uV2lkdGhzKCk7XG4gICAgY29uc3QgcG9zID0gY29udGVudC5zY3JvbGxMZWZ0ICsgd2lkdGg7XG4gICAgY29uc3QgbGFzdFBvcyA9IGNvbnRlbnQuc2Nyb2xsV2lkdGggLSB3aWR0aDtcbiAgICBjb250ZW50LnNjcm9sbExlZnQgPSBwb3MgPj0gbGFzdFBvcyA/IGxhc3RQb3MgOiBwb3M7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVOYXZCdG5zU3RhdGUoKSB7XG4gICAgY29uc3QgY29udGVudCA9IHRoaXMudGFic0xpc3QubmF0aXZlRWxlbWVudDtcbiAgICBjb25zdCB7IHNjcm9sbExlZnQsIHNjcm9sbFdpZHRoIH0gPSBjb250ZW50O1xuXG4gICAgY29uc3Qgd2lkdGggPSB0aGlzLl9nZXRXaWR0aChjb250ZW50KTtcblxuICAgIHRoaXMuYmFja0J0blZpc2libGUgPSBzY3JvbGxMZWZ0ID09PSAwO1xuICAgIHRoaXMuZm9yd2FyZEJ0blZpc2libGUgPSBNYXRoLmFicyhzY3JvbGxMZWZ0IC0gc2Nyb2xsV2lkdGggKyB3aWR0aCkgPCAyO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0VmlzaWJsZUJ1dHRvbldpZHRocygpIHtcbiAgICByZXR1cm4gW3RoaXMuYmFja0J0bj8ubmF0aXZlRWxlbWVudCwgdGhpcy5mb3J3YXJkQnRuPy5uYXRpdmVFbGVtZW50XS5yZWR1Y2UoXG4gICAgICAoYWNjLCBlbCkgPT4gKGVsID8gYWNjICsgdGhpcy5fZ2V0V2lkdGgoZWwpIDogYWNjKSxcbiAgICAgIDBcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0V2lkdGgoZWw6IGFueSk6IG51bWJlciB7XG4gICAgbGV0IHdpZHRoID0gZWwub2Zmc2V0V2lkdGg7XG4gICAgaWYgKCF3aWR0aCkgcmV0dXJuIHdpZHRoO1xuXG4gICAgY29uc3Qgc3R5bGUgPSBnZXRDb21wdXRlZFN0eWxlKGVsKTtcblxuICAgIHdpZHRoIC09XG4gICAgICBwYXJzZUZsb2F0KHN0eWxlLnBhZGRpbmdMZWZ0KSArXG4gICAgICBwYXJzZUZsb2F0KHN0eWxlLnBhZGRpbmdSaWdodCkgK1xuICAgICAgcGFyc2VGbG9hdChzdHlsZS5ib3JkZXJMZWZ0V2lkdGgpICtcbiAgICAgIHBhcnNlRmxvYXQoc3R5bGUuYm9yZGVyUmlnaHRXaWR0aCk7XG5cbiAgICByZXR1cm4gd2lkdGg7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJjcHMtdGFic1wiXG4gIFtjbGFzc109XCJoZWFkZXJDbGFzc1wiXG4gIFtuZ0NsYXNzXT1cIntcbiAgICAnY3BzLXRhYnMtc3VidGFicyc6IGlzU3ViVGFicyxcbiAgICAnY3BzLXRhYnMtY2VudGVyLWFsaWduZWQnOiBhbGlnbm1lbnQgPT09ICdjZW50ZXInLFxuICAgICdjcHMtdGFicy1yaWdodC1hbGlnbmVkJzogYWxpZ25tZW50ID09PSAncmlnaHQnLFxuICAgICdjcHMtdGFicy1zdHJldGNoZWQnOiBzdHJldGNoZWRcbiAgfVwiXG4gIFtuZ1N0eWxlXT1cInsgJ2JhY2tncm91bmQtY29sb3InOiB0YWJzQmFja2dyb3VuZCB9XCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cIm5hdi1idG4gbmF2LWJ0bi1iYWNrXCJcbiAgICBbbmdTdHlsZV09XCJ7ICdiYWNrZ3JvdW5kLWNvbG9yJzogbmF2QnV0dG9uc0JhY2tncm91bmQgfVwiXG4gICAgKm5nSWY9XCIhYmFja0J0blZpc2libGVcIlxuICAgICNiYWNrQnRuXG4gICAgKGNsaWNrKT1cIm5hdkJhY2t3YXJkKClcIj5cbiAgICA8Y3BzLWljb24gaWNvbj1cImNoZXZyb24tZG93blwiIGNvbG9yPVwidGV4dC1kYXJrXCI+PC9jcHMtaWNvbj5cbiAgPC9kaXY+XG4gIDx1bCAjdGFic0xpc3QgY2xhc3M9XCJjcHMtdGFicy1saXN0XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgdGFiIG9mIHRhYnM7IGxldCB0YWJJbmRleCA9IGluZGV4XCI+XG4gICAgICA8bGlcbiAgICAgICAgKm5nSWY9XCJ0YWIudG9vbHRpcFRleHRcIlxuICAgICAgICBjbGFzcz1cImNwcy10YWJcIlxuICAgICAgICAoY2xpY2spPVwiIXRhYi5kaXNhYmxlZCA/IG9uVGFiQ2xpY2sodGFiSW5kZXgpIDogJydcIlxuICAgICAgICBbbmdDbGFzc109XCJ7IGFjdGl2ZTogdGFiLmFjdGl2ZSwgZGlzYWJsZWQ6IHRhYi5kaXNhYmxlZCB9XCJcbiAgICAgICAgW2Nwc1Rvb2x0aXBdPVwidGFiLnRvb2x0aXBUZXh0XCJcbiAgICAgICAgdG9vbHRpcE9wZW5EZWxheT1cIjEwMDBcIlxuICAgICAgICB0b29sdGlwQ2xvc2VEZWxheT1cIjBcIlxuICAgICAgICB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIlxuICAgICAgICBbdG9vbHRpcE1heFdpZHRoXT1cInRhYi50b29sdGlwTWF4V2lkdGhcIlxuICAgICAgICBbdG9vbHRpcFBlcnNpc3RlbnRdPVwidGFiLnRvb2x0aXBQZXJzaXN0ZW50XCJcbiAgICAgICAgW3Rvb2x0aXBDb250ZW50Q2xhc3NdPVwidGFiLnRvb2x0aXBDb250ZW50Q2xhc3NcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICB0YWJIZWFkZXJUZW1wbGF0ZTtcbiAgICAgICAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgICAgICAgdGFiOiB0YWJcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbGk+XG4gICAgICA8bGlcbiAgICAgICAgKm5nSWY9XCIhdGFiLnRvb2x0aXBUZXh0XCJcbiAgICAgICAgY2xhc3M9XCJjcHMtdGFiXCJcbiAgICAgICAgKGNsaWNrKT1cIiF0YWIuZGlzYWJsZWQgPyBvblRhYkNsaWNrKHRhYkluZGV4KSA6ICcnXCJcbiAgICAgICAgW25nQ2xhc3NdPVwieyBhY3RpdmU6IHRhYi5hY3RpdmUsIGRpc2FibGVkOiB0YWIuZGlzYWJsZWQgfVwiPlxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgIHRhYkhlYWRlclRlbXBsYXRlO1xuICAgICAgICAgICAgY29udGV4dDoge1xuICAgICAgICAgICAgICB0YWI6IHRhYlxuICAgICAgICAgICAgfVxuICAgICAgICAgIFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9saT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC91bD5cbiAgPGRpdlxuICAgIGNsYXNzPVwibmF2LWJ0biBuYXYtYnRuLWZvcndhcmRcIlxuICAgIFtuZ1N0eWxlXT1cInsgJ2JhY2tncm91bmQtY29sb3InOiBuYXZCdXR0b25zQmFja2dyb3VuZCB9XCJcbiAgICAqbmdJZj1cIiFmb3J3YXJkQnRuVmlzaWJsZVwiXG4gICAgI2ZvcndhcmRCdG5cbiAgICAoY2xpY2spPVwibmF2Rm9yd2FyZCgpXCI+XG4gICAgPGNwcy1pY29uIGljb249XCJjaGV2cm9uLWRvd25cIiBjb2xvcj1cInRleHQtZGFya1wiPjwvY3BzLWljb24+XG4gIDwvZGl2PlxuPC9kaXY+XG48ZGl2XG4gIGNsYXNzPVwiY3BzLXRhYi1jb250ZW50LXdyYXBcIlxuICBbY2xhc3NdPVwiY29udGVudFdyYXBDbGFzc1wiXG4gIFtuZ0NsYXNzXT1cIntcbiAgICAnY3BzLXRhYi1jb250ZW50LXdyYXAtc3VidGFicyc6IGlzU3ViVGFic1xuICB9XCI+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHRhYiBvZiB0YWJzXCI+XG4gICAgPGRpdiBjbGFzcz1cImNwcy10YWItY29udGVudFwiICpuZ0lmPVwidGFiLmFjdGl2ZVwiPlxuICAgICAgPGRpdlxuICAgICAgICBbQHNsaWRlSW5PdXRdPVwiYW5pbWF0aW9uU3RhdGVcIlxuICAgICAgICAqbmdJZj1cImFuaW1hdGlvblR5cGUgPT09ICdzbGlkZSdcIlxuICAgICAgICBjbGFzcz1cImNwcy10YWItY29udGVudC1pbm5lclwiPlxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRhYi5jb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXZcbiAgICAgICAgW0BmYWRlSW5PdXRdPVwiYW5pbWF0aW9uU3RhdGVcIlxuICAgICAgICAqbmdJZj1cImFuaW1hdGlvblR5cGUgPT09ICdmYWRlJ1wiXG4gICAgICAgIGNsYXNzPVwiY3BzLXRhYi1jb250ZW50LWlubmVyXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwidGFiLmNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3RhYkhlYWRlclRlbXBsYXRlIGxldC10YWI9XCJ0YWJcIj5cbiAgPGNwcy1pY29uICpuZ0lmPVwidGFiLmljb25cIiBjbGFzcz1cImNwcy10YWItaWNvblwiIFtpY29uXT1cInRhYi5pY29uXCI+IDwvY3BzLWljb24+XG4gIDxhIGNsYXNzPVwiY3BzLXRhYi1saW5rXCI+e3sgdGFiLmxhYmVsIH19PC9hPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwidGFiLmJhZGdlVmFsdWVcIj5cbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cInRhYi5iYWRnZVRvb2x0aXBcIlxuICAgICAgY2xhc3M9XCJjcHMtdGFiLWJhZGdlXCJcbiAgICAgIFtjcHNUb29sdGlwXT1cInRhYi5iYWRnZVRvb2x0aXBcIj5cbiAgICAgIDxzcGFuPnt7IHRhYi5iYWRnZVZhbHVlIH19PC9zcGFuPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCIhdGFiLmJhZGdlVG9vbHRpcFwiIGNsYXNzPVwiY3BzLXRhYi1iYWRnZVwiPlxuICAgICAgPHNwYW4+e3sgdGFiLmJhZGdlVmFsdWUgfX08L3NwYW4+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
304
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3BzLXRhYi1ncm91cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcHMtdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9jcHMtdGFiLWdyb3VwL2Nwcy10YWItZ3JvdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3BzLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY3BzLXRhYi1ncm91cC9jcHMtdGFiLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxPQUFPLEVBQ1AsS0FBSyxFQUNMLEtBQUssRUFDTCxVQUFVLEVBQ1YsT0FBTyxFQUNSLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFJTCxTQUFTLEVBQ1QsZUFBZSxFQUVmLFlBQVksRUFDWixLQUFLLEVBSUwsTUFBTSxFQUdOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDekYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFDTCxZQUFZLEVBQ1osWUFBWSxFQUNaLG9CQUFvQixFQUNwQixTQUFTLEVBQ1YsTUFBTSxNQUFNLENBQUM7OztBQTZCZDs7O0dBR0c7QUF3Q0gsTUFBTSxPQUFPLG9CQUFvQjtJQUcvQjs7OztPQUlHO0lBQ0gsSUFBYSxhQUFhLENBQUMsS0FBYTtRQUN0QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBQy9D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QkFNRyxjQUFjO3NCQUF0QixLQUFLO2dCQU9JLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFPRyxlQUFlO3NCQUF4QixNQUFNO2dCQUVnQixRQUFRO3NCQUE5QixTQUFTO3VCQUFDLFVBQVU7Z0JBQ0MsT0FBTztzQkFBNUIsU0FBUzt1QkFBQyxTQUFTO2dCQUNLLFVBQVU7c0JBQWxDLFNBQVM7dUJBQUMsWUFBWTtnQkFFVyxJQUFJO3NCQUFyQyxlQUFlO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBhbmltYXRlLFxuICBzdGF0ZSxcbiAgc3R5bGUsXG4gIHRyYW5zaXRpb24sXG4gIHRyaWdnZXJcbn0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ3BzSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uL2Nwcy1pY29uL2Nwcy1pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDcHNUYWJDb21wb25lbnQgfSBmcm9tICcuL2Nwcy10YWIvY3BzLXRhYi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3BzVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvY3BzLXRvb2x0aXAvY3BzLXRvb2x0aXAuZGlyZWN0aXZlJztcbmltcG9ydCB7IGdldENTU0NvbG9yIH0gZnJvbSAnLi4vLi4vdXRpbHMvY29sb3JzLXV0aWxzJztcbmltcG9ydCB7XG4gIFN1YnNjcmlwdGlvbixcbiAgZGVib3VuY2VUaW1lLFxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcbiAgZnJvbUV2ZW50XG59IGZyb20gJ3J4anMnO1xuXG4vKipcbiAqIENwc1RhYkNoYW5nZUV2ZW50IGlzIHVzZWQgdG8gZGVmaW5lIHRoZSB0YWIgY2hhbmdlIGV2ZW50LlxuICogQGdyb3VwIEludGVyZmFjZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIENwc1RhYkNoYW5nZUV2ZW50IHtcbiAgLyoqXG4gICAqIEluZGV4IG9mIHRoZSBwcmV2aW91cyB0YWIuXG4gICAqL1xuICBwcmV2aW91c0luZGV4OiBudW1iZXI7XG4gIC8qKlxuICAgKiBJbmRleCBvZiB0aGUgbmV3IHRhYi5cbiAgICovXG4gIG5ld0luZGV4OiBudW1iZXI7XG59XG5cbi8qKlxuICogQ3BzVGFic0FuaW1hdGlvblR5cGUgaXMgdXNlZCB0byBkZWZpbmUgdGhlIHRyYW5zaXRpb24gb3B0aW9ucyBvZiBob3cgY29udGVudCBhcHBlYXJzLlxuICogQGdyb3VwIFR5cGVzXG4gKi9cbmV4cG9ydCB0eXBlIENwc1RhYnNBbmltYXRpb25UeXBlID0gJ3NsaWRlJyB8ICdmYWRlJztcblxuLyoqXG4gKiBDcHNUYWJzQWxpZ25tZW50VHlwZSBpcyB1c2VkIHRvIGRlZmluZSB0aGUgaG9yaXpvbnRhbCBhbGlnbm1lbnQgb2YgdGFicy5cbiAqIEBncm91cCBUeXBlc1xuICovXG5leHBvcnQgdHlwZSBDcHNUYWJzQWxpZ25tZW50VHlwZSA9ICdsZWZ0JyB8ICdjZW50ZXInIHwgJ3JpZ2h0JztcblxuLyoqXG4gKiBDcHNUYWJHcm91cENvbXBvbmVudCBpcyBhIG5hdmlnYXRpb24gY29tcG9uZW50IHRoYXQgZGlzcGxheXMgaXRlbXMgYXMgdGFiIGhlYWRlcnMuXG4gKiBAZ3JvdXAgQ29tcG9uZW50c1xuICovXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBDcHNJY29uQ29tcG9uZW50LFxuICAgIENwc1RhYkNvbXBvbmVudCxcbiAgICBDcHNUb29sdGlwRGlyZWN0aXZlXG4gIF0sXG4gIHNlbGVjdG9yOiAnY3BzLXRhYi1ncm91cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jcHMtdGFiLWdyb3VwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY3BzLXRhYi1ncm91cC5jb21wb25lbnQuc2NzcyddLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcignc2xpZGVJbk91dCcsIFtcbiAgICAgIHN0YXRlKCdzbGlkZUxlZnQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMCknIH0pKSxcbiAgICAgIHN0YXRlKCdzbGlkZVJpZ2h0Jywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDApJyB9KSksXG4gICAgICB0cmFuc2l0aW9uKCcqID0+IHNsaWRlTGVmdCcsIFtcbiAgICAgICAgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKC0xMDAlKScgfSksXG4gICAgICAgIGFuaW1hdGUoJzIwMG1zIGVhc2UtaW4nKVxuICAgICAgXSksXG4gICAgICB0cmFuc2l0aW9uKCcqID0+IHNsaWRlUmlnaHQnLCBbXG4gICAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgxMDAlKScgfSksXG4gICAgICAgIGFuaW1hdGUoJzIwMG1zIGVhc2UtaW4nKVxuICAgICAgXSksXG4gICAgICB0cmFuc2l0aW9uKCd2b2lkID0+IConLCBhbmltYXRlKDApKVxuICAgIF0pLFxuICAgIHRyaWdnZXIoJ2ZhZGVJbk91dCcsIFtcbiAgICAgIHN0YXRlKCdmYWRlSW4nLCBzdHlsZSh7IG9wYWNpdHk6IDEgfSkpLFxuICAgICAgc3RhdGUoJ2ZhZGVPdXQnLCBzdHlsZSh7IG9wYWNpdHk6IDAgfSkpLFxuICAgICAgdHJhbnNpdGlvbignZmFkZU91dCA9PiBmYWRlSW4nLCBbXG4gICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMCB9KSxcbiAgICAgICAgYW5pbWF0ZSgnMTAwbXMgZWFzZS1pbicpXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJ2ZhZGVJbiA9PiBmYWRlT3V0JywgW1xuICAgICAgICBhbmltYXRlKCcwbXMgZWFzZS1vdXQnLCBzdHlsZSh7IG9wYWNpdHk6IDAgfSkpXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJ3ZvaWQgPT4gKicsIGFuaW1hdGUoMCkpXG4gICAgXSlcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBDcHNUYWJHcm91cENvbXBvbmVudFxuICBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJDb250ZW50SW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3lcbntcbiAgLyoqXG4gICAqIEluZGV4IG9mIHRoZSBzZWxlY3RlZCB0YWIuXG4gICAqIEBkZWZhdWx0IDBcbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBzZXQgc2VsZWN0ZWRJbmRleCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5fcHJldmlvdXNUYWJJbmRleCA9IHRoaXMuX2N1cnJlbnRUYWJJbmRleDtcbiAgICB0aGlzLl9jdXJyZW50VGFiSW5kZXggPSB2YWx1ZTtcbiAgfVxuXG4gIGdldCBzZWxlY3RlZEluZGV4KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2N1cnJlbnRUYWJJbmRleDtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgdG8gYXBwbHkgYW4gYWx0ZXJuYXRpdmUgJ3N1YnRhYnMnIHN0eWxpbmcuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgaXNTdWJUYWJzID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEhvcml6b250YWwgYWxpZ25tZW50IG9mIHRhYnMuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgYWxpZ25tZW50OiBDcHNUYWJzQWxpZ25tZW50VHlwZSA9ICdsZWZ0JztcblxuICAvKipcbiAgICogQ2xhc3MgdG8gYXBwbHkgdG8gdGhlIHRhYiBjb250ZW50IHdyYXBwZXIuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgY29udGVudFdyYXBDbGFzcyA9ICcnO1xuXG4gIC8qKlxuICAgKiBDbGFzcyB0byBhcHBseSB0byB0aGUgdGFiIGhlYWRlci5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBoZWFkZXJDbGFzcyA9ICcnO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgdG8gc3RyZXRjaCB0YWJzIHRvIGZpbGwgdGhlIGF2YWlsYWJsZSBob3Jpem9udGFsIHNwYWNlLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIHN0cmV0Y2hlZCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUcmFuc2l0aW9uIG9wdGlvbnMgb2YgaG93IGNvbnRlbnQgYXBwZWFycywgaXQgY2FuIGJlIFwic2xpZGVcIiBvciBcImZhZGVcIi5cbiAgICogQGdyb3VwIFByb3BzXG4gICAqL1xuICBASW5wdXQoKSBhbmltYXRpb25UeXBlOiBDcHNUYWJzQW5pbWF0aW9uVHlwZSA9ICdzbGlkZSc7XG5cbiAgLyoqXG4gICAqIEJhY2tncm91bmQgY29sb3Igb2YgbmF2aWdhdGlvbiBidXR0b25zLlxuICAgKiBAZ3JvdXAgUHJvcHNcbiAgICovXG4gIEBJbnB1dCgpIG5hdkJ1dHRvbnNCYWNrZ3JvdW5kID0gJ2luaGVyaXQnO1xuXG4gIC8qKlxuICAgKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYnMuXG4gICAqIEBncm91cCBQcm9wc1xuICAgKi9cbiAgQElucHV0KCkgdGFic0JhY2tncm91bmQgPSAnaW5oZXJpdCc7XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIHRvIGludm9rZSBiZWZvcmUgdGFiIGNoYW5nZS5cbiAgICogQHBhcmFtIHtDcHNUYWJDaGFuZ2VFdmVudH0gYW55IC0gdGFiIGNoYW5nZSBldmVudC5cbiAgICogQGdyb3VwIEVtaXRzXG4gICAqL1xuICBAT3V0cHV0KCkgYmVmb3JlVGFiQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Q3BzVGFiQ2hhbmdlRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIHRvIGludm9rZSBhZnRlciB0YWIgY2hhbmdlLlxuICAgKiBAcGFyYW0ge0Nwc1RhYkNoYW5nZUV2ZW50fSBhbnkgLSB0YWIgY2hhbmdlIGV2ZW50LlxuICAgKiBAZ3JvdXAgRW1pdHNcbiAgICovXG4gIEBPdXRwdXQoKSBhZnRlclRhYkNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPENwc1RhYkNoYW5nZUV2ZW50PigpO1xuXG4gIEBWaWV3Q2hpbGQoJ3RhYnNMaXN0JykgdGFic0xpc3QhOiBFbGVtZW50UmVmO1xuICBAVmlld0NoaWxkKCdiYWNrQnRuJykgYmFja0J0bj86IEVsZW1lbnRSZWY7XG4gIEBWaWV3Q2hpbGQoJ2ZvcndhcmRCdG4nKSBmb3J3YXJkQnRuPzogRWxlbWVudFJlZjtcblxuICBAQ29udGVudENoaWxkcmVuKENwc1RhYkNvbXBvbmVudCkgdGFicyE6IFF1ZXJ5TGlzdDxDcHNUYWJDb21wb25lbnQ+O1xuXG4gIGJhY2tCdG5WaXNpYmxlID0gZmFsc2U7XG4gIGZvcndhcmRCdG5WaXNpYmxlID0gZmFsc2U7XG4gIGFuaW1hdGlvblN0YXRlOiAnc2xpZGVMZWZ0JyB8ICdzbGlkZVJpZ2h0JyB8ICdmYWRlSW4nIHwgJ2ZhZGVPdXQnID0gJ2ZhZGVJbic7XG5cbiAgd2luZG93UmVzaXplJDogU3Vic2NyaXB0aW9uID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xuICBsaXN0U2Nyb2xsJDogU3Vic2NyaXB0aW9uID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xuXG4gIHByaXZhdGUgX2N1cnJlbnRUYWJJbmRleCA9IDA7XG4gIHByaXZhdGUgX3ByZXZpb3VzVGFiSW5kZXggPSAwO1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11c2VsZXNzLWNvbnN0cnVjdG9yXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMudGFic0JhY2tncm91bmQgPSBnZXRDU1NDb2xvcih0aGlzLnRhYnNCYWNrZ3JvdW5kKTtcbiAgICB0aGlzLm5hdkJ1dHRvbnNCYWNrZ3JvdW5kID0gZ2V0Q1NTQ29sb3IodGhpcy5uYXZCdXR0b25zQmFja2dyb3VuZCk7XG5cbiAgICB0aGlzLndpbmRvd1Jlc2l6ZSQgPSBmcm9tRXZlbnQod2luZG93LCAncmVzaXplJylcbiAgICAgIC5waXBlKGRlYm91bmNlVGltZSg1MCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMub25SZXNpemUoKSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXMuc2VsZWN0ZWRJbmRleCAmJiAhY2hhbmdlcy5zZWxlY3RlZEluZGV4LmZpcnN0Q2hhbmdlKSB7XG4gICAgICB0aGlzLnNlbGVjdFRhYigpO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICB0aGlzLnNlbGVjdFRhYih0cnVlKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLl91cGRhdGVOYXZCdG5zU3RhdGUoKTtcblxuICAgIHRoaXMubGlzdFNjcm9sbCQgPSBmcm9tRXZlbnQodGhpcy50YWJzTGlzdC5uYXRpdmVFbGVtZW50LCAnc2Nyb2xsJylcbiAgICAgIC5waXBlKGRlYm91bmNlVGltZSg1MCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpXG4gICAgICAuc3Vic2NyaWJlKChldmVudDogYW55KSA9PiB0aGlzLm9uU2Nyb2xsKGV2ZW50KSk7XG5cbiAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMud2luZG93UmVzaXplJD8udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLmxpc3RTY3JvbGwkPy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgZ2V0IHNlbGVjdGVkVGFiKCk6IENwc1RhYkNvbXBvbmVudCB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMudGFicy5maW5kKCh0KSA9PiB0LmFjdGl2ZSk7XG4gIH1cblxuICBvblRhYkNsaWNrKGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLnNlbGVjdGVkSW5kZXggPSBpbmRleDtcbiAgICB0aGlzLnNlbGVjdFRhYigpO1xuICB9XG5cbiAgc2VsZWN0VGFiKHNpbGVudCA9IGZhbHNlKSB7XG4gICAgY29uc3QgX3RhYnMgPSB0aGlzLnRhYnMudG9BcnJheSgpO1xuICAgIGNvbnN0IGN1cnJlbnRTZWxlY3RlZFRhYiA9IF90YWJzICYmIF90YWJzW3RoaXMuX3ByZXZpb3VzVGFiSW5kZXhdO1xuXG4gICAgY3VycmVudFNlbGVjdGVkVGFiICYmIChjdXJyZW50U2VsZWN0ZWRUYWIuYWN0aXZlID0gZmFsc2UpO1xuICAgIGNvbnN0IG5ld1NlbGVjdGVkVGFiID0gX3RhYnMgJiYgX3RhYnNbdGhpcy5fY3VycmVudFRhYkluZGV4XTtcbiAgICBuZXdTZWxlY3RlZFRhYiAmJiAobmV3U2VsZWN0ZWRUYWIuYWN0aXZlID0gdHJ1ZSk7XG4gICAgaWYgKHRoaXMuX2N1cnJlbnRUYWJJbmRleCA9PT0gdGhpcy5fcHJldmlvdXNUYWJJbmRleCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICghc2lsZW50KSB7XG4gICAgICB0aGlzLmJlZm9yZVRhYkNoYW5nZWQuZW1pdCh7XG4gICAgICAgIHByZXZpb3VzSW5kZXg6IHRoaXMuX3ByZXZpb3VzVGFiSW5kZXgsXG4gICAgICAgIG5ld0luZGV4OiB0aGlzLl9jdXJyZW50VGFiSW5kZXhcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmFuaW1hdGlvblR5cGUgPT09ICdzbGlkZScpIHtcbiAgICAgIHRoaXMuYW5pbWF0aW9uU3RhdGUgPVxuICAgICAgICB0aGlzLl9jdXJyZW50VGFiSW5kZXggPCB0aGlzLl9wcmV2aW91c1RhYkluZGV4XG4gICAgICAgICAgPyAnc2xpZGVMZWZ0J1xuICAgICAgICAgIDogJ3NsaWRlUmlnaHQnO1xuXG4gICAgICBpZiAoIXNpbGVudCkge1xuICAgICAgICB0aGlzLmFmdGVyVGFiQ2hhbmdlZC5lbWl0KHtcbiAgICAgICAgICBwcmV2aW91c0luZGV4OiB0aGlzLl9wcmV2aW91c1RhYkluZGV4LFxuICAgICAgICAgIG5ld0luZGV4OiB0aGlzLl9jdXJyZW50VGFiSW5kZXhcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh0aGlzLmFuaW1hdGlvblR5cGUgPT09ICdmYWRlJykge1xuICAgICAgdGhpcy5hbmltYXRpb25TdGF0ZSA9ICdmYWRlT3V0JztcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmFuaW1hdGlvblN0YXRlID0gJ2ZhZGVJbic7XG4gICAgICAgIGlmICghc2lsZW50KSB7XG4gICAgICAgICAgdGhpcy5hZnRlclRhYkNoYW5nZWQuZW1pdCh7XG4gICAgICAgICAgICBwcmV2aW91c0luZGV4OiB0aGlzLl9wcmV2aW91c1RhYkluZGV4LFxuICAgICAgICAgICAgbmV3SW5kZXg6IHRoaXMuX2N1cnJlbnRUYWJJbmRleFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9LCAxMDApO1xuICAgIH1cbiAgfVxuXG4gIG9uU2Nyb2xsKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLl91cGRhdGVOYXZCdG5zU3RhdGUoKTtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICB9XG5cbiAgb25SZXNpemUoKSB7XG4gICAgdGhpcy5fdXBkYXRlTmF2QnRuc1N0YXRlKCk7XG4gIH1cblxuICBuYXZCYWNrd2FyZCgpIHtcbiAgICBjb25zdCBjb250ZW50ID0gdGhpcy50YWJzTGlzdC5uYXRpdmVFbGVtZW50O1xuICAgIGNvbnN0IHdpZHRoID0gdGhpcy5fZ2V0V2lkdGgoY29udGVudCkgLSB0aGlzLl9nZXRWaXNpYmxlQnV0dG9uV2lkdGhzKCk7XG4gICAgY29uc3QgcG9zID0gY29udGVudC5zY3JvbGxMZWZ0IC0gd2lkdGg7XG4gICAgY29udGVudC5zY3JvbGxMZWZ0ID0gcG9zIDw9IDAgPyAwIDogcG9zO1xuICB9XG5cbiAgbmF2Rm9yd2FyZCgpIHtcbiAgICBjb25zdCBjb250ZW50ID0gdGhpcy50YWJzTGlzdC5uYXRpdmVFbGVtZW50O1xuICAgIGNvbnN0IHdpZHRoID0gdGhpcy5fZ2V0V2lkdGgoY29udGVudCkgLSB0aGlzLl9nZXRWaXNpYmxlQnV0dG9uV2lkdGhzKCk7XG4gICAgY29uc3QgcG9zID0gY29udGVudC5zY3JvbGxMZWZ0ICsgd2lkdGg7XG4gICAgY29uc3QgbGFzdFBvcyA9IGNvbnRlbnQuc2Nyb2xsV2lkdGggLSB3aWR0aDtcbiAgICBjb250ZW50LnNjcm9sbExlZnQgPSBwb3MgPj0gbGFzdFBvcyA/IGxhc3RQb3MgOiBwb3M7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVOYXZCdG5zU3RhdGUoKSB7XG4gICAgY29uc3QgY29udGVudCA9IHRoaXMudGFic0xpc3QubmF0aXZlRWxlbWVudDtcbiAgICBjb25zdCB7IHNjcm9sbExlZnQsIHNjcm9sbFdpZHRoIH0gPSBjb250ZW50O1xuXG4gICAgY29uc3Qgd2lkdGggPSB0aGlzLl9nZXRXaWR0aChjb250ZW50KTtcblxuICAgIHRoaXMuYmFja0J0blZpc2libGUgPSBzY3JvbGxMZWZ0ID09PSAwO1xuICAgIHRoaXMuZm9yd2FyZEJ0blZpc2libGUgPSBNYXRoLmFicyhzY3JvbGxMZWZ0IC0gc2Nyb2xsV2lkdGggKyB3aWR0aCkgPCAyO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0VmlzaWJsZUJ1dHRvbldpZHRocygpIHtcbiAgICByZXR1cm4gW3RoaXMuYmFja0J0bj8ubmF0aXZlRWxlbWVudCwgdGhpcy5mb3J3YXJkQnRuPy5uYXRpdmVFbGVtZW50XS5yZWR1Y2UoXG4gICAgICAoYWNjLCBlbCkgPT4gKGVsID8gYWNjICsgdGhpcy5fZ2V0V2lkdGgoZWwpIDogYWNjKSxcbiAgICAgIDBcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0V2lkdGgoZWw6IGFueSk6IG51bWJlciB7XG4gICAgbGV0IHdpZHRoID0gZWwub2Zmc2V0V2lkdGg7XG4gICAgaWYgKCF3aWR0aCkgcmV0dXJuIHdpZHRoO1xuXG4gICAgY29uc3Qgc3R5bGUgPSBnZXRDb21wdXRlZFN0eWxlKGVsKTtcblxuICAgIHdpZHRoIC09XG4gICAgICBwYXJzZUZsb2F0KHN0eWxlLnBhZGRpbmdMZWZ0KSArXG4gICAgICBwYXJzZUZsb2F0KHN0eWxlLnBhZGRpbmdSaWdodCkgK1xuICAgICAgcGFyc2VGbG9hdChzdHlsZS5ib3JkZXJMZWZ0V2lkdGgpICtcbiAgICAgIHBhcnNlRmxvYXQoc3R5bGUuYm9yZGVyUmlnaHRXaWR0aCk7XG5cbiAgICByZXR1cm4gd2lkdGg7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJjcHMtdGFic1wiXG4gIFtjbGFzc109XCJoZWFkZXJDbGFzc1wiXG4gIFtuZ0NsYXNzXT1cIntcbiAgICAnY3BzLXRhYnMtc3VidGFicyc6IGlzU3ViVGFicyxcbiAgICAnY3BzLXRhYnMtY2VudGVyLWFsaWduZWQnOiBhbGlnbm1lbnQgPT09ICdjZW50ZXInLFxuICAgICdjcHMtdGFicy1yaWdodC1hbGlnbmVkJzogYWxpZ25tZW50ID09PSAncmlnaHQnLFxuICAgICdjcHMtdGFicy1zdHJldGNoZWQnOiBzdHJldGNoZWRcbiAgfVwiXG4gIFtuZ1N0eWxlXT1cInsgJ2JhY2tncm91bmQtY29sb3InOiB0YWJzQmFja2dyb3VuZCB9XCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cIm5hdi1idG4gbmF2LWJ0bi1iYWNrXCJcbiAgICBbbmdTdHlsZV09XCJ7ICdiYWNrZ3JvdW5kLWNvbG9yJzogbmF2QnV0dG9uc0JhY2tncm91bmQgfVwiXG4gICAgKm5nSWY9XCIhYmFja0J0blZpc2libGVcIlxuICAgICNiYWNrQnRuXG4gICAgKGNsaWNrKT1cIm5hdkJhY2t3YXJkKClcIj5cbiAgICA8Y3BzLWljb24gaWNvbj1cImNoZXZyb24tZG93blwiIGNvbG9yPVwidGV4dC1kYXJrXCI+PC9jcHMtaWNvbj5cbiAgPC9kaXY+XG4gIDx1bCAjdGFic0xpc3QgY2xhc3M9XCJjcHMtdGFicy1saXN0XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgdGFiIG9mIHRhYnM7IGxldCB0YWJJbmRleCA9IGluZGV4XCI+XG4gICAgICA8bGlcbiAgICAgICAgKm5nSWY9XCJ0YWIudG9vbHRpcFRleHRcIlxuICAgICAgICBjbGFzcz1cImNwcy10YWJcIlxuICAgICAgICAoY2xpY2spPVwiIXRhYi5kaXNhYmxlZCA/IG9uVGFiQ2xpY2sodGFiSW5kZXgpIDogJydcIlxuICAgICAgICBbbmdDbGFzc109XCJ7IGFjdGl2ZTogdGFiLmFjdGl2ZSwgZGlzYWJsZWQ6IHRhYi5kaXNhYmxlZCB9XCJcbiAgICAgICAgW2Nwc1Rvb2x0aXBdPVwidGFiLnRvb2x0aXBUZXh0XCJcbiAgICAgICAgdG9vbHRpcE9wZW5EZWxheT1cIjEwMDBcIlxuICAgICAgICB0b29sdGlwQ2xvc2VEZWxheT1cIjBcIlxuICAgICAgICB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIlxuICAgICAgICBbdG9vbHRpcE1heFdpZHRoXT1cInRhYi50b29sdGlwTWF4V2lkdGhcIlxuICAgICAgICBbdG9vbHRpcFBlcnNpc3RlbnRdPVwidGFiLnRvb2x0aXBQZXJzaXN0ZW50XCJcbiAgICAgICAgW3Rvb2x0aXBDb250ZW50Q2xhc3NdPVwidGFiLnRvb2x0aXBDb250ZW50Q2xhc3NcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICB0YWJIZWFkZXJUZW1wbGF0ZTtcbiAgICAgICAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgICAgICAgdGFiOiB0YWJcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbGk+XG4gICAgICA8bGlcbiAgICAgICAgKm5nSWY9XCIhdGFiLnRvb2x0aXBUZXh0XCJcbiAgICAgICAgY2xhc3M9XCJjcHMtdGFiXCJcbiAgICAgICAgKGNsaWNrKT1cIiF0YWIuZGlzYWJsZWQgPyBvblRhYkNsaWNrKHRhYkluZGV4KSA6ICcnXCJcbiAgICAgICAgW25nQ2xhc3NdPVwieyBhY3RpdmU6IHRhYi5hY3RpdmUsIGRpc2FibGVkOiB0YWIuZGlzYWJsZWQgfVwiPlxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgIHRhYkhlYWRlclRlbXBsYXRlO1xuICAgICAgICAgICAgY29udGV4dDoge1xuICAgICAgICAgICAgICB0YWI6IHRhYlxuICAgICAgICAgICAgfVxuICAgICAgICAgIFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9saT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC91bD5cbiAgPGRpdlxuICAgIGNsYXNzPVwibmF2LWJ0biBuYXYtYnRuLWZvcndhcmRcIlxuICAgIFtuZ1N0eWxlXT1cInsgJ2JhY2tncm91bmQtY29sb3InOiBuYXZCdXR0b25zQmFja2dyb3VuZCB9XCJcbiAgICAqbmdJZj1cIiFmb3J3YXJkQnRuVmlzaWJsZVwiXG4gICAgI2ZvcndhcmRCdG5cbiAgICAoY2xpY2spPVwibmF2Rm9yd2FyZCgpXCI+XG4gICAgPGNwcy1pY29uIGljb249XCJjaGV2cm9uLWRvd25cIiBjb2xvcj1cInRleHQtZGFya1wiPjwvY3BzLWljb24+XG4gIDwvZGl2PlxuPC9kaXY+XG48ZGl2XG4gIGNsYXNzPVwiY3BzLXRhYi1jb250ZW50LXdyYXBcIlxuICBbY2xhc3NdPVwiY29udGVudFdyYXBDbGFzc1wiXG4gIFtuZ0NsYXNzXT1cIntcbiAgICAnY3BzLXRhYi1jb250ZW50LXdyYXAtc3VidGFicyc6IGlzU3ViVGFic1xuICB9XCI+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHRhYiBvZiB0YWJzXCI+XG4gICAgPGRpdiBjbGFzcz1cImNwcy10YWItY29udGVudFwiICpuZ0lmPVwidGFiLmFjdGl2ZVwiPlxuICAgICAgPGRpdlxuICAgICAgICBbQHNsaWRlSW5PdXRdPVwiYW5pbWF0aW9uU3RhdGVcIlxuICAgICAgICAqbmdJZj1cImFuaW1hdGlvblR5cGUgPT09ICdzbGlkZSdcIlxuICAgICAgICBjbGFzcz1cImNwcy10YWItY29udGVudC1pbm5lclwiPlxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRhYi5jb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXZcbiAgICAgICAgW0BmYWRlSW5PdXRdPVwiYW5pbWF0aW9uU3RhdGVcIlxuICAgICAgICAqbmdJZj1cImFuaW1hdGlvblR5cGUgPT09ICdmYWRlJ1wiXG4gICAgICAgIGNsYXNzPVwiY3BzLXRhYi1jb250ZW50LWlubmVyXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwidGFiLmNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3RhYkhlYWRlclRlbXBsYXRlIGxldC10YWI9XCJ0YWJcIj5cbiAgPGNwcy1pY29uICpuZ0lmPVwidGFiLmljb25cIiBjbGFzcz1cImNwcy10YWItaWNvblwiIFtpY29uXT1cInRhYi5pY29uXCI+IDwvY3BzLWljb24+XG4gIDxhIGNsYXNzPVwiY3BzLXRhYi1saW5rXCI+e3sgdGFiLmxhYmVsIH19PC9hPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwidGFiLmJhZGdlVmFsdWVcIj5cbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cInRhYi5iYWRnZVRvb2x0aXBcIlxuICAgICAgY2xhc3M9XCJjcHMtdGFiLWJhZGdlXCJcbiAgICAgIFtjcHNUb29sdGlwXT1cInRhYi5iYWRnZVRvb2x0aXBcIj5cbiAgICAgIDxzcGFuPnt7IHRhYi5iYWRnZVZhbHVlIH19PC9zcGFuPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCIhdGFiLmJhZGdlVG9vbHRpcFwiIGNsYXNzPVwiY3BzLXRhYi1iYWRnZVwiPlxuICAgICAgPHNwYW4+e3sgdGFiLmJhZGdlVmFsdWUgfX08L3NwYW4+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==