ps-toolkit-ui 1.4.64 → 1.4.65
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.
- package/bundles/ps-toolkit-ui.umd.js +4 -4
- package/bundles/ps-toolkit-ui.umd.js.map +1 -1
- package/bundles/ps-toolkit-ui.umd.min.js +1 -1
- package/bundles/ps-toolkit-ui.umd.min.js.map +1 -1
- package/esm2015/lib/components/table/row/table.row.component.js +2 -2
- package/esm2015/lib/components/table/table.component.js +4 -4
- package/fesm2015/ps-toolkit-ui.js +4 -4
- package/fesm2015/ps-toolkit-ui.js.map +1 -1
- package/package.json +1 -1
- package/ps-toolkit-ui.metadata.json +1 -1
|
@@ -386,7 +386,7 @@ export class TableRowComponent {
|
|
|
386
386
|
TableRowComponent.decorators = [
|
|
387
387
|
{ type: Component, args: [{
|
|
388
388
|
selector: 'lib-table-row',
|
|
389
|
-
template: "<div class=\"w-100 row-con\">\r\n <div [className]=\"(table.name ? table.name + '-row ' : '') + (table.hasChildren || table.sortable || table.withSelect ? 'with-handle ' : '') + 'row underline p-r'\" [
|
|
389
|
+
template: "<div class=\"w-100 row-con\">\r\n <div [attr.data-id]=\"row.Id\" [className]=\"(table.name ? table.name + '-row ' : '') + (table.hasChildren || table.sortable || table.withSelect ? 'with-handle ' : '') + 'row underline p-r'\" [style]=\"{minHeight: table.height + 'px' }\">\r\n <div class=\"handle\" *ngIf=\"table.hasChildren && (table.level === null || table.level > level)\"><lib-form-icon *ngIf=\"showChildren != null && showChildren.type === type.Icon\" [inp]=\"showChildren\"></lib-form-icon></div>\r\n <div class=\"handle\" *ngIf=\"table.withSelect\"><i (click)=\"select()\" [className]=\"(row.selected ? 'fas fa-check-square green' : 'far fa-square') + ' select-row cell'\"></i></div>\r\n <div class=\"handle\" *ngIf=\"table.sortable\"><i class=\"fa-duotone fa-grip-vertical handle-sortable\"></i></div>\r\n <div [className]=\"col.name + '-cell ' + col.class + ' item cell w-100'\" *ngFor=\"let col of table.cols\" attr.data-col=\"{{table.l(col.name)}}:\" [innerHTML]=\"getCell(col) | safeHtml\"></div>\r\n <div class=\"cell options-cell\" *ngIf=\"row.Options.length > 0\">\r\n <div [className]=\"(table.optionType == tableOptionType.Show ? 'show ' : '') + 'options-con'\">\r\n <span *ngFor=\"let opt of options\">\r\n <lib-form-button *ngIf=\"opt.type == type.Button\" [inp]=\"opt\"></lib-form-button>\r\n <lib-form-icon *ngIf=\"opt.type == type.Icon\" [inp]=\"opt\"></lib-form-icon>\r\n <lib-form-checkbox *ngIf=\"opt.type == type.Check\" [inp]=\"opt\"></lib-form-checkbox>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n <div #childrenDiv *ngIf=\"table.hasChildren && (table.level === null || table.level > level)\" class=\"children rightline\">\r\n <lib-table-row (loadParent)=\"loadChildren($event)\" (confirmShow)=\"onConfirmShow($event)\" [level]=\"level + 1\" (changeRows)=\"onChangeRows($event)\" [id]=\"child.id ? child.id : ''\" [table]=\"table\" [row]=\"child\" *ngFor=\"let child of children\"></lib-table-row>\r\n </div>\r\n</div>\r\n",
|
|
390
390
|
styles: [".row{align-items:center;display:flex;flex-wrap:wrap;justify-content:right;position:relative}.row.with-handle{padding-right:30px}.row .cell{align-items:center;display:flex;float:right;font-family:VazirLight;font-size:12px;font-weight:400;justify-content:center;line-height:20px;padding:10px;text-align:center}.row .cell:not(.options-cell){overflow-wrap:anywhere}.row .cell.options-cell{margin-left:auto;margin-right:auto;padding:7.5px 0}.row .handle{align-items:center;cursor:pointer;display:flex;height:100%;justify-content:center;position:absolute;right:0;top:0;width:30px}.row .cell:before{font-size:9px;margin-left:5px}.row .cell:empty:before{display:none}.row .cell .options-con{align-items:center;background:linear-gradient(270deg,transparent,#fff 80px,#fff);display:flex;height:25px;justify-content:center;left:0;opacity:0;position:absolute;top:calc(50% - 12.5px);visibility:hidden}.row .cell .options-con.show{opacity:1;position:relative;visibility:visible}.row:hover>.cell>.options-con{opacity:1;visibility:visible}.row .cell .options-con:not(.show) span:first-child{margin-right:100px}.row .cell .options-con span:last-child{margin-left:10px}.children{display:none;float:right;margin-right:3%;position:relative;width:94%}.children.rightline:after{right:-20px}::ng-deep .row .cell .select-row{cursor:pointer;font-size:18px;height:30px;line-height:30px}::ng-deep .row .cell .handle-sortable{cursor:move}::ng-deep .row .cell .status{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;border-radius:var(--border-radius-base);cursor:default;display:inline-block;font-size:10px;padding:3px 10px;vertical-align:middle}::ng-deep .row .cell .status.blue{background-color:var(--blue-white);color:var(--blue)}::ng-deep .row .cell .status.green{background-color:var(--green-white);color:var(--green)}::ng-deep .row .cell .status.red{background-color:var(--red-white);color:var(--red)}::ng-deep .row .cell .status.gray{background-color:var(--black-white);color:var(--black)}::ng-deep .row .cell .status.yellow{background-color:var(--yellow-white);color:var(--yellow)}::ng-deep .row .cell .plaque{background-color:#fff;background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAABVCAYAAABn7bJ/AAAACXBIWXMAAAsTAAALEwEAmpwYAAAIW2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNi4wLWMwMDIgNzkuMTY0NDYwLCAyMDIwLzA1LzEyLTE2OjA0OjE3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczpwaG90b3Nob3A9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGhvdG9zaG9wLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE3IChXaW5kb3dzKSIgeG1wOkNyZWF0ZURhdGU9IjIwMTktMTItMDNUMTg6NTA6NDUrMDM6MzAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMjEtMDItMTNUMTE6MTE6MzgrMDM6MzAiIHhtcDpNb2RpZnlEYXRlPSIyMDIxLTAyLTEzVDExOjExOjM4KzAzOjMwIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjk4NDVkODgwLTg4M2EtMWE0MS1hZDk3LTdmNTk5MTMzMTQ0NiIgeG1wTU06RG9jdW1lbnRJRD0iYWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjcwY2VlZGU4LTE1ZTAtMTFlYS05MDExLThhM2U0NjBjNjY2OCIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjY4NDI0YzA3LWUwMTUtZjk0ZC04MWNkLWZmMTY4YTM4ZjA4NyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9InNSR0IgSUVDNjE5NjYtMi4xIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgdGlmZjpPcmllbnRhdGlvbj0iMSIgdGlmZjpYUmVzb2x1dGlvbj0iNzIwMDAwLzEwMDAwIiB0aWZmOllSZXNvbHV0aW9uPSI3MjAwMDAvMTAwMDAiIHRpZmY6UmVzb2x1dGlvblVuaXQ9IjIiIGV4aWY6Q29sb3JTcGFjZT0iNjU1MzUiIGV4aWY6UGl4ZWxYRGltZW5zaW9uPSI0MDAiIGV4aWY6UGl4ZWxZRGltZW5zaW9uPSI4NSI+IDx4bXBNTTpIaXN0b3J5PiA8cmRmOlNlcT4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNyZWF0ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6Njg0MjRjMDctZTAxNS1mOTRkLTgxY2QtZmYxNjhhMzhmMDg3IiBzdEV2dDp3aGVuPSIyMDE5LTEyLTAzVDE4OjUwOjQ1KzAzOjMwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoV2luZG93cykiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmJiYzEwYzI2LTNlOGYtNzk0NS05YTYxLWNlZjc0Yjg5ZmIyNiIgc3RFdnQ6d2hlbj0iMjAxOS0xMi0wM1QxODo1MDo0NSswMzozMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZl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\");background-position:50%;background-repeat:no-repeat;background-size:contain;border-radius:var(--border-radius-base);float:right;font-size:14px;height:30px;width:140px}::ng-deep .row .cell .color{border-radius:var(--border-radius-base);float:right;padding:0 10px}::ng-deep .row .cell .plaque.plaque-m{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAABVCAYAAABn7bJ/AAAACXBIWXMAAAsTAAALEwEAmpwYAAANlmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNi4wLWMwMDIgNzkuMTY0NDYwLCAyMDIwLzA1LzEyLTE2OjA0OjE3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnRpZmY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vdGlmZi8xLjAvIiB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDE5LTEyLTAzVDE4OjUwOjQ1KzAzOjMwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIxLTA2LTEwVDE0OjM1OjA1KzA0OjMwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMS0wNi0xMFQxNDozNTowNSswNDozMCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpjOWI2MmM5Mi1hNmQ4LWY4NGUtYTM3OS0wZWJmZTZkOTYzNzQiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDpkNmZhOTJjMi1mNGM1LTFjNDktYTUzMy05MmY1Mzk2MDVjNTMiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo2ODQyNGMwNy1lMDE1LWY5NGQtODFjZC1mZjE2OGEzOGYwODciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHRpZmY6T3JpZW50YXRpb249IjEiIHRpZmY6WFJlc29sdXRpb249IjcyMDAwMC8xMDAwMCIgdGlmZjpZUmVzb2x1dGlvbj0iNzIwMDAwLzEwMDAwIiB0aWZmOlJlc29sdXRpb25Vbml0PSIyIiBleGlmOkNvbG9yU3BhY2U9IjEiIGV4aWY6UGl4ZWxYRGltZW5zaW9uPSI0MDAiIGV4aWY6UGl4ZWxZRGltZW5zaW9uPSI4NSI+IDx4bXBNTTpIaXN0b3J5PiA8cmRmOlNlcT4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNyZWF0ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6Njg0MjRjMDctZTAxNS1mOTRkLTgxY2QtZmYxNjhhMzhmMDg3IiBzdEV2dDp3aGVuPSIyMDE5LTEyLTAzVDE4OjUwOjQ1KzAzOjMwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoV2luZG93cykiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmJiYzEwYzI2LTNlOGYtNzk0NS05YTYxLWNlZjc0Yjg5ZmIyNiIgc3RFdnQ6d2hlbj0iMjAxOS0xMi0wM1QxODo1MDo0NSswMzozMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpkMmY2YTViYy0yZGQ1LTlkNDEtOGYxYi02OTFkYTJlNmQzMDYiIHN0RXZ0OndoZW49IjIwMjEtMDYtMTBUMTQ6MzQ6MzgrMDQ6MzAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMS4yIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY29udmVydGVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJmcm9tIGltYWdlL3BuZyB0byBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJkZXJpdmVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJjb252ZXJ0ZWQgZnJvbSBpbWFnZS9wbmcgdG8gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6ZGIzMTM2ZmEtN2RkZC03YTQ5LTgzNjQtYjZmYWI3ZGVlZmE5IiBzdEV2dDp3aGVuPSIyMDIxLTA2LTEwVDE0OjM0OjM4KzA0OjMwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjEuMiAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmM3Y2U3NTk1LWM3NDUtOTg0Yi1hMmI1LTQ1MjA4N2E0MTBkOCIgc3RFdnQ6d2hlbj0iMjAyMS0wNi0xMFQxNDozNTowNSswNDozMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjIgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjb252ZXJ0ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmciLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImRlcml2ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImNvbnZlcnRlZCBmcm9tIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AgdG8gaW1hZ2UvcG5nIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpjOWI2MmM5Mi1hNmQ4LWY4NGUtYTM3OS0wZWJmZTZkOTYzNzQiIHN0RXZ0OndoZW49IjIwMjEtMDYtMTBUMTQ6MzU6MDUrMDQ6MzAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMS4yIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6YzdjZTc1OTUtYzc0NS05ODRiLWEyYjUtNDUyMDg3YTQxMGQ4IiBzdFJlZjpkb2N1bWVudElEPSJhZG9iZTpkb2NpZDpwaG90b3Nob3A6NTMxYzM1ZDUtMzExNy02NzQ4LWE5OGEtYTlmOGEyYzVmMGU0IiBzdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6Njg0MjRjMDctZTAxNS1mOTRkLTgxY2QtZmYxNjhhMzhmMDg3Ii8+IDxwaG90b3Nob3A6RG9jdW1lbnRBbmNlc3RvcnM+IDxyZGY6QmFnPiA8cmRmOmxpPjUxNjAzQkE4NTUzMTE3NEFEOTU5RTFCMjgwNkNFMjFFPC9yZGY6bGk+IDwvcmRmOkJhZz4gPC9waG90b3Nob3A6RG9jdW1lbnRBbmNlc3RvcnM+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+D6fWAwAAOJhJREFUeAHtwQmgbmdZ2Pv/87zvWuub9nD2cM5JQhICIWEOQREBKVooor2CtThgqzJYQNSr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\")}::ng-deep .row .cell .plaque.plaque-f{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAABVCAYAAABn7bJ/AAAACXBIWXMAAAsTAAALEwEAmpwYAAAO/GlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNy4xLWMwMDAgNzkuN2E3YTIzNiwgMjAyMS8wOC8xMi0wMDoyNToyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXA6Q3JlYXRlRGF0ZT0iMjAxOS0xMi0wM1QxODo1MDo0NSswMzozMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMi0wNC0xNFQyMjozMjozMCswNDozMCIgeG1wOk1vZGlmeURhdGU9IjIwMjItMDQtMTRUMjI6MzI6MzArMDQ6MzAiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6YzE3MmM2YmQtMjc5Ni1kNTQ1LWFiY2ItN2E5NjE5MTljYzE3IiB4bXBNTTpEb2N1bWVudElEPSJhZG9iZTpkb2NpZDpwaG90b3Nob3A6Zjc4YzAwZWQtOTA2YS0yOTRmLThiZDktOWMzNzU0MThkYTg3IiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6Njg0MjRjMDctZTAxNS1mOTRkLTgxY2QtZmYxNjhhMzhmMDg3IiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiBwaG90b3Nob3A6SUNDUHJvZmlsZT0ic1JHQiBJRUM2MTk2Ni0yLjEiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiB0aWZmOk9yaWVudGF0aW9uPSIxIiB0aWZmOlhSZXNvbHV0aW9uPSI3MjAwMDAvMTAwMDAiIHRpZmY6WVJlc29sdXRpb249IjcyMDAwMC8xMDAwMCIgdGlmZjpSZXNvbHV0aW9uVW5pdD0iMiIgZXhpZjpDb2xvclNwYWNlPSIxIiBleGlmOlBpeGVsWERpbWVuc2lvbj0iNDAwIiBleGlmOlBpeGVsWURpbWVuc2lvbj0iODUiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjY4NDI0YzA3LWUwMTUtZjk0ZC04MWNkLWZmMTY4YTM4ZjA4NyIgc3RFdnQ6d2hlbj0iMjAxOS0xMi0wM1QxODo1MDo0NSswMzozMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpiYmMxMGMyNi0zZThmLTc5NDUtOWE2MS1jZWY3NGI4OWZiMjYiIHN0RXZ0OndoZW49IjIwMTktMTItMDNUMTg6NTA6NDUrMDM6MzAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE3IChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6ZDJmNmE1YmMtMmRkNS05ZDQxLThmMWItNjkxZGEyZTZkMzA2IiBzdEV2dDp3aGVuPSIyMDIxLTA2LTEwVDE0OjM0OjM4KzA0OjMwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjEuMiAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNvbnZlcnRlZCIgc3RFdnQ6cGFyYW1ldGVycz0iZnJvbSBpbWFnZS9wbmcgdG8gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iZGVyaXZlZCIgc3RFdnQ6cGFyYW1ldGVycz0iY29udmVydGVkIGZyb20gaW1hZ2UvcG5nIHRvIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmRiMzEzNmZhLTdkZGQtN2E0OS04MzY0LWI2ZmFiN2RlZWZhOSIgc3RFdnQ6d2hlbj0iMjAyMS0wNi0xMFQxNDozNDozOCswNDozMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjIgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpjN2NlNzU5NS1jNzQ1LTk4NGItYTJiNS00NTIwODdhNDEwZDgiIHN0RXZ0OndoZW49IjIwMjEtMDYtMTBUMTQ6MzU6MDUrMDQ6MzAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMS4yIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY29udmVydGVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJmcm9tIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AgdG8gaW1hZ2UvcG5nIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJkZXJpdmVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJjb252ZXJ0ZWQgZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6YzliNjJjOTItYTZkOC1mODRlLWEzNzktMGViZmU2ZDk2Mzc0IiBzdEV2dDp3aGVuPSIyMDIxLTA2LTEwVDE0OjM1OjA1KzA0OjMwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjEuMiAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmMxNzJjNmJkLTI3OTYtZDU0NS1hYmNiLTdhOTYxOTE5Y2MxNyIgc3RFdnQ6d2hlbj0iMjAyMi0wNC0xNFQyMjozMjozMCswNDozMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIyLjUgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpjN2NlNzU5NS1jNzQ1LTk4NGItYTJiNS00NTIwODdhNDEwZDgiIHN0UmVmOmRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo1MzFjMzVkNS0zMTE3LTY3NDgtYTk4YS1hOWY4YTJjNWYwZTQiIHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo2ODQyNGMwNy1lMDE1LWY5NGQtODFjZC1mZjE2OGEzOGYwODciLz4gPHBob3Rvc2hvcDpEb2N1bWVudEFuY2VzdG9ycz4gPHJkZjpCYWc+IDxyZGY6bGk+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\")}::ng-deep .row .cell .plaque.p{background-color:#ffc913}::ng-deep .row .cell .plaque.g{background-color:#e20600}::ng-deep .row .cell .plaque .part1{float:left;height:30px;line-height:33px;margin-left:13px;width:32px}::ng-deep .row .cell .plaque.plaque-m .part1{margin-left:13px;width:42px}::ng-deep .row .cell .plaque.plaque-f .part1{float:right;margin-left:0;margin-right:28px;width:64px}::ng-deep .row .cell .plaque .part2{float:left;height:30px;line-height:30px;width:25px}::ng-deep .row .cell .plaque.plaque-m .part2{line-height:33px;width:57px}::ng-deep .row .cell .plaque.plaque-f .part2{float:right;font-size:12px;line-height:30px;width:48px}::ng-deep .row .cell .plaque .part3{float:left;height:30px;line-height:33px;width:42px}::ng-deep .row .cell .plaque .part4{float:left;height:20px;margin-top:8px;width:28px}.row .cell.show-data-col:before{content:attr(data-col)}@media (max-width:1400px){.row .cell.show-data-col-1400:before{content:attr(data-col)}}@media (max-width:1300px){.row .cell.show-data-col-1300:before{content:attr(data-col)}}@media (max-width:1200px){.row .cell.show-data-col-1200:before{content:attr(data-col)}}@media (max-width:1100px){.row .cell.show-data-col-1100:before{content:attr(data-col)}}@media (max-width:1000px){.row .cell.show-data-col-1000:before{content:attr(data-col)}}@media (max-width:900px){.row .cell.show-data-col-900:before{content:attr(data-col)}}@media (max-width:800px){.row .cell.show-data-col-800:before{content:attr(data-col)}}@media (max-width:700px){.row .cell.show-data-col-700:before{content:attr(data-col)}}@media (max-width:600px){.row .cell.show-data-col-600:before{content:attr(data-col)}}@media (max-width:500px){.row .cell.show-data-col-500:before{content:attr(data-col)}}@media (max-width:400px){.row .cell.show-data-col-400:before{content:attr(data-col)}}"]
|
|
391
391
|
},] }
|
|
392
392
|
];
|
|
@@ -402,4 +402,4 @@ TableRowComponent.propDecorators = {
|
|
|
402
402
|
loadParent: [{ type: Output }],
|
|
403
403
|
childrenDiv: [{ type: ViewChild, args: ['childrenDiv',] }]
|
|
404
404
|
};
|
|
405
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUucm93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJEOi9Qcm9qZWN0cy9Qc1Rvb2xraXQvVUkvcHJvamVjdHMvcHMtdG9vbGtpdC11aS9zcmMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy90YWJsZS9yb3cvdGFibGUucm93LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUU1QixPQUFPLEVBQ0wsU0FBUyxFQUNULFNBQVMsRUFDVCxNQUFNLEVBQUUsd0JBQXdCLEVBQ2hDLHlCQUF5QixFQUN6Qix1QkFBdUIsRUFDdkIsa0JBQWtCLEVBQ2xCLGFBQWEsRUFDYixlQUFlLEVBQ2hCLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM1RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDMUQsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDMUUsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ2xFLE9BQU8sMEJBQTBCLENBQUM7QUFPbEMsTUFBTSxPQUFPLGlCQUFpQjtJQW9CNUIsWUFBbUIsT0FBaUM7UUFBakMsWUFBTyxHQUFQLE9BQU8sQ0FBMEI7UUFsQnBELGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUV6QyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQVF4QyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUs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Q0FBQyxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQztnQkFDckYsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBQztvQkFDbkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7aUJBQ3pCO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDTjtJQUNILENBQUM7SUFDRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDbkcsQ0FBQzs7O1lBblhGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZUFBZTtnQkFDekIscS9EQUF5Qzs7YUFFMUM7OztZQVRPLHdCQUF3Qjs7OzBCQVc3QixNQUFNO3lCQUVOLE1BQU07b0JBRU4sS0FBSztvQkFFTCxLQUFLO2tCQUVMLEtBQUs7eUJBRUwsTUFBTTswQkFRTixTQUFTLFNBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xyXG5pbXBvcnQge1RhYmxlQ2xhc3MsIFRhYmxlQ29sbENsYXNzfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL3RhYmxlLmNsYXNzJztcclxuaW1wb3J0IHtcclxuICBFbnVtVXRpbHMsXHJcbiAgSW5wdXRUeXBlLFxyXG4gIE1ldGhvZCwgUGVybWlzc2lvbkFjY2Vzc1R5cGVFbnVtLFxyXG4gIFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0sXHJcbiAgUGVybWlzc2lvbklucHV0VHlwZUVudW0sXHJcbiAgUGVybWlzc2lvblR5cGVFbnVtLFxyXG4gIFRhYmxlQ29sbFR5cGUsXHJcbiAgVGFibGVPcHRpb25UeXBlXHJcbn0gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9lbnVtLmNsYXNzJztcclxuaW1wb3J0IHtJbnB1dENsYXNzfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2Zvcm0uY2xhc3MnO1xyXG5pbXBvcnQge1JlcXVlc3RDbGFzc30gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9yZXF1ZXN0LmNsYXNzJztcclxuaW1wb3J0IHtIZWxwZXJDbGFzc30gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9oZWxwZXIuY2xhc3MnO1xyXG5pbXBvcnQge1BzVG9vbGtpdFVpQ29uZmlnU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvY29uZmlnLnNlcnZpY2UnO1xyXG5pbXBvcnQgKiBhcyAkIGZyb20gJ2pxdWVyeSc7XHJcbmltcG9ydCB7UGVybWlzc2lvbkNsYXNzfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL3Blcm1pc3Npb24uY2xhc3MnO1xyXG5pbXBvcnQgJ2pxdWVyeS11aS1kaXN0L2pxdWVyeS11aSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi10YWJsZS1yb3cnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJsZS5yb3cuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RhYmxlLnJvdy5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFRhYmxlUm93Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0e1xyXG4gIEBPdXRwdXQoKVxyXG4gIGNvbmZpcm1TaG93ID0gbmV3IEV2ZW50RW1pdHRlcjxvYmplY3Q+KCk7XHJcbiAgQE91dHB1dCgpXHJcbiAgY2hhbmdlUm93cyA9IG5ldyBFdmVudEVtaXR0ZXI8b2JqZWN0PigpO1xyXG4gIEBJbnB1dCgpXHJcbiAgbGV2ZWw6IG51bWJlcjtcclxuICBASW5wdXQoKVxyXG4gIHRhYmxlOiBUYWJsZUNsYXNzO1xyXG4gIEBJbnB1dCgpXHJcbiAgcm93O1xyXG4gIEBPdXRwdXQoKVxyXG4gIGxvYWRQYXJlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuICBnZXQgdHlwZSgpOiB0eXBlb2YgSW5wdXRUeXBlIHsgcmV0dXJuIElucHV0VHlwZTsgfVxyXG4gIGdldCB0YWJsZU9wdGlvblR5cGUoKTogdHlwZW9mIFRhYmxlT3B0aW9uVHlwZXsgcmV0dXJuIFRhYmxlT3B0aW9uVHlwZTsgfVxyXG4gIHNob3dDaGlsZHJlbjogSW5wdXRDbGFzcyA9IG51bGw7XHJcbiAgYWRkQ2hpbGRyZW46IElucHV0Q2xhc3MgPSBudWxsO1xyXG4gIGNoaWxkcmVuOiBhbnlbXSA9IFtdO1xyXG4gIG9wdGlvbnM6IGFueVtdID0gW107XHJcbiAgQFZpZXdDaGlsZCgnY2hpbGRyZW5EaXYnKSBjaGlsZHJlbkRpdjogRWxlbWVudFJlZjtcclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgc2VydmljZTogUHNUb29sa2l0VWlDb25maWdTZXJ2aWNlKSB7XHJcbiAgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudGFibGUuaGFzQ2hpbGRyZW4pe1xyXG4gICAgICBpZiAoIXRoaXMudGFibGUuY2hpbGRyZW5BdXRvTG9hZCl7XHJcbiAgICAgICAgdGhpcy5jaGlsZHJlbiA9IHRoaXMuZ2V0Q2hpbGRyZW4oKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy50YWJsZS5wZXJtaXNzaW9ucy5oYXNBY2Nlc3MoUGVybWlzc2lvbkFjY2Vzc1R5cGVFbnVtLkluc2VydCkpe1xyXG4gICAgICAgIHRoaXMuYWRkQ2hpbGRyZW4gPSBuZXcgSW5wdXRDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCB0aGlzLnRhYmxlLmwsIHRoaXMudGFibGUubmFtZSArICdBZGRTdWJzZXRUaXRsZScsXHJcbiAgICAgICAgICAnZmEtZHVvdG9uZSBmYS1wbHVzIGZhLXJvdGF0ZS05MCcsIElucHV0VHlwZS5JY29uLFxyXG4gICAgICAgICAgJ2dyZWVuIG0taC01IGgtMjUgZC1pYiB2YS1tIGYtdScpO1xyXG4gICAgICAgIHRoaXMuYWRkQ2hpbGRyZW4ub25DbGljayA9ICgpID0+IHtcclxuICAgICAgICAgIHRoaXMudGFibGUuZm9ybS5vblN1Y2Nlc3NCYXNlID0gKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnRhYmxlLm1vZGFsLmhpZGUoKTtcclxuICAgICAgICAgICAgdGhpcy5zaG93Q2hpbGRyZW4udHlwZSA9IElucHV0VHlwZS5JY29uO1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRDaGlsZHJlbih0aGlzLnJvdy5EYXRhLklkKTtcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgICB0aGlzLnRhYmxlLnNob3dJbnNlcnRNb2RhbCh0aGlzLnJvdy5EYXRhLklkKTtcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuc2hvd0NoaWxkcmVuID0gbmV3IElucHV0Q2xhc3ModGhpcy50YWJsZS5lbnZpcm9ubWVudCwgdGhpcy50YWJsZS5sLCB0aGlzLnRhYmxlLm5hbWUgKyAnU3Vic2V0VGl0bGUnLCAnZmEtZHVvdG9uZSBmYS1hbmdsZS1sZWZ0IGYtcy0yMicsXHJcbiAgICAgICAgdGhpcy5yb3cuRGF0YS5Db3VudENoaWxkID4gMCB8fCAoIXRoaXMudGFibGUuY2hpbGRyZW5BdXRvTG9hZCAmJiB0aGlzLmNoaWxkcmVuLmxlbmd0aCA+IDApID8gSW5wdXRUeXBlLkljb24gOiBJbnB1dFR5cGUuSGlkZGVuLCAnaC0yNSBtLWgtNSBkLWliIHZhLW0gZi11Jyk7XHJcbiAgICAgIHRoaXMuc2hvd0NoaWxkcmVuLm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgICAgaWYgKCQodGhpcy5jaGlsZHJlbkRpdi5uYXRpdmVFbGVtZW50KS5pcygnOnZpc2libGUnKSl7XHJcbiAgICAgICAgICAkKHRoaXMuY2hpbGRyZW5EaXYubmF0aXZlRWxlbWVudCkuc2xpZGVVcCgpO1xyXG4gICAgICAgICAgdGhpcy5zaG93Q2hpbGRyZW4uaWNvbiA9ICdmYS1kdW90b25lIGZhLWFuZ2xlLWxlZnQgZi1zLTIyJztcclxuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuY2hpbGRyZW4ubGVuZ3RoID09PSAwKXtcclxuICAgICAgICAgIHRoaXMubG9hZENoaWxkcmVuKHRoaXMucm93LkRhdGEuSWQpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAkKHRoaXMuY2hpbGRyZW5EaXYubmF0aXZlRWxlbWVudCkuc2xpZGVEb3duKCk7XHJcbiAgICAgICAgICB0aGlzLnNob3dDaGlsZHJlbi5pY29uID0gJ2ZhLWR1b3RvbmUgZmEtYW5nbGUtZG93biBmLXMtMjInO1xyXG4gICAgICAgIH1cclxuICAgICAgfTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnRhYmxlLnNvcnRhYmxlKXtcclxuICAgICAgdGhpcy5zZXRTb3J0Um93KCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnNldE9wdGlvbnMoKTtcclxuICB9XHJcbiAgbG9hZENoaWxkcmVuKHApOiB2b2lke1xyXG4gICAgbmV3IFJlcXVlc3RDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCB0aGlzLnRhYmxlLmwpLnNlbmQodGhpcy50YWJsZS51cmwgKyBgLyR7cH1gLCBNZXRob2QuUG9zdCxcclxuICAgICAgbnVsbCwgdGhpcy5zaG93Q2hpbGRyZW4sIChyZXN1bHQpID0+IHtcclxuICAgICAgICB0aGlzLmNoaWxkcmVuID0gcmVzdWx0Lkxpc3Q7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAkKHRoaXMuY2hpbGRyZW5EaXYubmF0aXZlRWxlbWVudCkuc2xpZGVEb3duKCk7XHJcbiAgICAgICAgICB0aGlzLnNob3dDaGlsZHJlbi5pY29uID0gJ2ZhLWR1b3RvbmUgZmEtYW5nbGUtZG93biBmLXMtMjInO1xyXG4gICAgICAgIH0sIDUwKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG4gIHNlbGVjdCgpOiB2b2lke1xyXG4gICAgdGhpcy5yb3cuRGF0YS5zZWxlY3RlZCA9ICF0aGlzLnJvdy5EYXRhLnNlbGVjdGVkO1xyXG4gIH1cclxuICBvbkNoYW5nZVJvd3MoZSk6IHZvaWR7XHJcbiAgICByZXR1cm4gdGhpcy5jaGFuZ2VSb3dzLmVtaXQoZSk7XHJcbiAgfVxyXG4gIG9uQ29uZmlybVNob3coZSk6IHZvaWR7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maXJtU2hvdy5lbWl0KGUpO1xyXG4gIH1cclxuICBzZXRTb3J0Um93KCk6IHZvaWR7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgaWYgKHRoaXMudGFibGUuaGFzQ2hpbGRyZW4pIHtcclxuICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgJCh0aGlzLmNoaWxkcmVuRGl2Lm5hdGl2ZUVsZW1lbnQpLnNvcnRhYmxlKHtcclxuICAgICAgICAgIGF4aXM6ICd5JyxcclxuICAgICAgICAgIGl0ZW1zOiAnLnJvdy1jb24nLFxyXG4gICAgICAgICAgaGFuZGxlOiAnPiAucm93ID4gLmhhbmRsZScsXHJcbiAgICAgICAgICB1cGRhdGU6ICgpID0+IHtcclxuICAgICAgICAgICAgY29uc3QgZGF0YSA9IFtdO1xyXG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgICAgICQodGhpcy5jaGlsZHJlbkRpdi5uYXRpdmVFbGVtZW50KS5zb3J0YWJsZSgndG9BcnJheScpLmZvckVhY2goeCA9PiB7XHJcbiAgICAgICAgICAgICAgY29uc29sZS5sb2coeCk7XHJcbiAgICAgICAgICAgICAgZGF0YS5wdXNoKHgpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgY29uc3QgcCA9IG5ldyBQZXJtaXNzaW9uQ2xhc3MoKTtcclxuICAgICAgICAgICAgcC5BcmVhID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5BcmVhO1xyXG4gICAgICAgICAgICBwLkNvbnRyb2xsZXIgPSB0aGlzLnRhYmxlLnBlcm1pc3Npb25zLkNvbnRyb2xsZXI7XHJcbiAgICAgICAgICAgIHAuQWN0aW9uID0gJ3NvcnQnO1xyXG4gICAgICAgICAgICBuZXcgUmVxdWVzdENsYXNzKHRoaXMudGFibGUuZW52aXJvbm1lbnQsIHRoaXMudGFibGUubCkuc2VuZChwLmdldFVybCgpLnRvTG93ZXJDYXNlKCksIE1ldGhvZC5Qb3N0LCB7SWRzOiBkYXRhfSwgbnVsbCwgKCkgPT4ge1xyXG4gICAgICAgICAgICAgIGlmICh0aGlzLnRhYmxlLm9uU29ydCl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnRhYmxlLm9uU29ydCgpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0sIDUwMCk7XHJcbiAgfVxyXG5cclxuICBnZXRPcHRpb25VcmwodXJsLCByZWxhdGVkSWQsIHJvd0lkKTogc3RyaW5ne1xyXG4gICAgcmV0dXJuIChyZWxhdGVkSWQgPyB1cmwucmVwbGFjZSgne30nLCByZWxhdGVkSWQpIDogdXJsKS5yZXBsYWNlKCd7fScsIHJvd0lkKTtcclxuICB9XHJcbiAgc2V0T3B0aW9ucygpOiB2b2lke1xyXG4gICAgY29uc3Qgb3B0cyA9IFtdO1xyXG4gICAgZm9yIChjb25zdCBvcHRpb24gb2YgdGhpcy5yb3cuT3B0aW9ucy5maWx0ZXIoeCA9PiB4LlR5cGUgPT09IFBlcm1pc3Npb25UeXBlRW51bS5PcHRpb24gJiYgeC5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5JbnB1dCkpe1xyXG4gICAgICBjb25zdCBpbnAgPSBuZXcgSW5wdXRDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCB0aGlzLnRhYmxlLmwsIG51bGwsIG51bGwsIElucHV0VHlwZS5DaGVjaywgJ2gtMjUgd2l0aG91dC1ib3JkZXIgbS1oLTUgcC0wIHctdScsIHRoaXMucm93LkRhdGFbb3B0aW9uLkFjdGlvbl0gPT09IHRydWUpO1xyXG4gICAgICBpbnAucm93ID0gdGhpcy5yb3c7XHJcbiAgICAgIGlucC50b29sdGlwID0gb3B0aW9uLk5hbWU7XHJcbiAgICAgIGlucC5vbkNoYW5nZSA9ICgpID0+IHtcclxuICAgICAgICB0aGlzLnJvdy5EYXRhW29wdGlvbi5BY3Rpb25dID0gIWlucC5kYXRhKCk7XHJcbiAgICAgICAgbmV3IFJlcXVlc3RDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCB0aGlzLnRhYmxlLmwpLnNlbmQob3B0aW9uLlVybC5yZXBsYWNlKCd7fScsIHRoaXMucm93LkRhdGEuSWQpLCBNZXRob2QuUG9zdCwgbnVsbCwgbnVsbCwgKCkgPT4ge1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9O1xyXG4gICAgICBpbnAuZGlzcGxheUxhYmVsID0gZmFsc2U7XHJcbiAgICAgIG9wdHMucHVzaChpbnApO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuYWRkQ2hpbGRyZW4gIT09IG51bGwgJiYgKHRoaXMudGFibGUubGV2ZWwgPT09IG51bGwgfHwgdGhpcy50YWJsZS5sZXZlbCA+IHRoaXMubGV2ZWwpKXtcclxuICAgICAgb3B0cy5wdXNoKHRoaXMuYWRkQ2hpbGRyZW4pO1xyXG4gICAgfVxyXG4gICAgZm9yIChjb25zdCBvcHRpb24gb2YgdGhpcy5yb3cuT3B0aW9ucy5maWx0ZXIoeCA9PiB4LlR5cGUgPT09IFBlcm1pc3Npb25UeXBlRW51bS5PcHRpb24gJiYgeC5JbnB1dEFjdGlvbiAhPT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5JbnB1dCkpe1xyXG4gICAgICBjb25zdCBvcHQgPSBuZXcgSW5wdXRDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCB0aGlzLnRhYmxlLmwsIG9wdGlvbi5OYW1lLCBvcHRpb24uSWNvbixcclxuICAgICAgICBvcHRpb24uSW5wdXRUeXBlID09PSBQZXJtaXNzaW9uSW5wdXRUeXBlRW51bS5JY29uID8gSW5wdXRUeXBlLkljb24gOiBJbnB1dFR5cGUuQnV0dG9uLCAnYmx1ZSBoLTI1IG0taC01IGQtaWIgdmEtbSBmLXUnKTtcclxuICAgICAgb3B0LnJvdyA9IHRoaXMucm93O1xyXG4gICAgICBpZiAob3B0aW9uLkFjY2Vzc1R5cGUgPT09IFBlcm1pc3Npb25BY2Nlc3NUeXBlRW51bS5VcGRhdGUpe1xyXG4gICAgICAgIGlmICh0aGlzLnRhYmxlLmZvcm0pe1xyXG4gICAgICAgICAgb3B0Lm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMudGFibGUuZm9ybS51cmwgPSB0aGlzLmdldE9wdGlvblVybChvcHRpb24uVXJsLCB0aGlzLnRhYmxlLnBlcm1pc3Npb25zLlJlbGF0ZWRJZCwgdGhpcy5yb3cuRGF0YS5JZCk7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLnRhYmxlLmhhc0NoaWxkcmVuICYmIHRoaXMucm93LkRhdGEuUGFyZW50SWQgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgIHRoaXMudGFibGUuZm9ybS5vblN1Y2Nlc3NCYXNlID0gKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy50YWJsZS5tb2RhbC5oaWRlKCk7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy50YWJsZS5jaGlsZHJlbkF1dG9Mb2FkKXtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5sb2FkUGFyZW50LmVtaXQodGhpcy5yb3cuRGF0YS5QYXJlbnRJZCk7XHJcbiAgICAgICAgICAgICAgICB9ZWxzZXtcclxuICAgICAgICAgICAgICAgICAgdGhpcy50YWJsZS5sb2FkKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0ub25TdWNjZXNzQmFzZSA9ICgpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmICghdGhpcy50YWJsZS5mb3JtLm9uVG9wKXtcclxuICAgICAgICAgICAgICAgICAgdGhpcy50YWJsZS5tb2RhbC5oaWRlKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0uY2xlYXIoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMudGFibGUubG9hZCgpO1xyXG4gICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5lZGl0KG9wdCwgb3B0aW9uKTtcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIG9wdC51cmwgPSB0aGlzLmdldE9wdGlvblVybChvcHRpb24uVXJsLCB0aGlzLnRhYmxlLnBlcm1pc3Npb25zLlJlbGF0ZWRJZCwgdGhpcy5yb3cuRGF0YS5JZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKG9wdGlvbi5BY2Nlc3NUeXBlID09PSBQZXJtaXNzaW9uQWNjZXNzVHlwZUVudW0uRGVsZXRlKXtcclxuICAgICAgICBvcHQuY2xhc3MgPSBvcHQuY2xhc3MucmVwbGFjZSgnYmx1ZScsICdyZWQnKTtcclxuICAgICAgICBvcHQub25DbGljayA9ICgpID0+IHtcclxuICAgICAgICAgIGlmICh0aGlzLnRhYmxlLmZvcm0pe1xyXG4gICAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0uY2xlYXIoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmICh0aGlzLnRhYmxlLnBlcm1pc3Npb25zLlR5cGUgPT09IFBlcm1pc3Npb25UeXBlRW51bS5Gb3JtKXtcclxuICAgICAgICAgICAgdGhpcy50YWJsZS5yb3dzID0gdGhpcy50YWJsZS5yb3dzLmZpbHRlcih4ID0+IHguSWQgIT09IHRoaXMucm93LkRhdGEuSWQpO1xyXG4gICAgICAgICAgICB0aGlzLmNoYW5nZVJvd3MuZW1pdCh0aGlzLnJvdy5EYXRhKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuY29uZmlybVNob3cuZW1pdCh7XHJcbiAgICAgICAgICAgICAgYWN0aW9uOiBvcHRpb24uQWN0aW9uLFxyXG4gICAgICAgICAgICAgIHVybDogdGhpcy5nZXRPcHRpb25Vcmwob3B0aW9uLlVybCwgdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5SZWxhdGVkSWQsIHRoaXMucm93LkRhdGEuSWQpLFxyXG4gICAgICAgICAgICAgIGFjY2VwdDogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudGFibGUuaGFzQ2hpbGRyZW4gJiYgdGhpcy50YWJsZS5jaGlsZHJlbkF1dG9Mb2FkICYmIHRoaXMucm93LkRhdGEuUGFyZW50SWQgIT0gbnVsbCApe1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmxvYWRQYXJlbnQuZW1pdCh0aGlzLnJvdy5EYXRhLlBhcmVudElkKTtcclxuICAgICAgICAgICAgICAgIH1lbHNle1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLnRhYmxlLmxvYWQoKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9fSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChvcHRpb24uQWNjZXNzVHlwZSA9PT0gUGVybWlzc2lvbkFjY2Vzc1R5cGVFbnVtLlJlcG9ydCl7XHJcbiAgICAgICAgb3B0LnVybCA9ICcvcmVwb3J0JyArIG9wdGlvbi5VcmwucmVwbGFjZSgne30nLCB0aGlzLnJvdy5EYXRhLklkKTtcclxuICAgICAgICBvcHQudXJsTmV3VGFiID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChvcHRpb24uSW5wdXRBY3Rpb24gPT09IFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0uTGluayB8fCBvcHRpb24uSW5wdXRBY3Rpb24gPT09IFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0uTGlua05ld1RhYil7XHJcbiAgICAgICAgY29uc3QgcCA9IG5ldyBQZXJtaXNzaW9uQ2xhc3MoKTtcclxuICAgICAgICBvcHQudXJsID0gb3B0aW9uLlVybCArICcvJyArIHRoaXMucm93LkRhdGEuSWQ7XHJcbiAgICAgICAgb3B0LnVybE5ld1RhYiA9IG9wdGlvbi5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5MaW5rTmV3VGFiO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKG9wdGlvbi5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5Nb2RhbCl7XHJcbiAgICAgICAgb3B0Lm1vZGFsID0gdGhpcy50YWJsZS5vcHRpb25zQWN0aW9ucy5maW5kKHggPT4geC5uYW1lID09PSBvcHRpb24uQWN0aW9uKTtcclxuICAgICAgICBvcHQub25DbGljayA9ICgpID0+IHtcclxuICAgICAgICAgIGlmIChvcHQubW9kYWwudGFibGUpe1xyXG4gICAgICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgICAgICBwLlJlbGF0ZWRJZCA9IHRoaXMucm93LkRhdGEuSWQ7XHJcbiAgICAgICAgICAgIHAuQXJlYSA9IHRoaXMudGFibGUucGVybWlzc2lvbnMuQXJlYTtcclxuICAgICAgICAgICAgcC5Db250cm9sbGVyID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5Db250cm9sbGVyO1xyXG4gICAgICAgICAgICBwLkFjdGlvbiA9IG9wdGlvbi5BY3Rpb247XHJcbiAgICAgICAgICAgIHAuQWNjZXNzZXMgPSB0aGlzLnJvdy5PcHRpb25zLmZpbHRlcih4ID0+IHguUGFyZW50SWQgPT09IG9wdGlvbi5JZCk7XHJcbiAgICAgICAgICAgIG9wdC5tb2RhbC50YWJsZS5wZXJtaXNzaW9ucyA9IHA7XHJcbiAgICAgICAgICAgIGlmIChvcHQubW9kYWwudGFibGUuZm9ybSl7XHJcbiAgICAgICAgICAgICAgb3B0Lm1vZGFsLnRhYmxlLmZvcm0udXJsID0gb3B0aW9uLlVybC5yZXBsYWNlKCd7fScsIHRoaXMucm93LkRhdGEuSWQpICsgJy1pbnNlcnQnO1xyXG4gICAgICAgICAgICAgIG9wdC5tb2RhbC50YWJsZS5mb3JtLmJhc2VVcmwgPSBvcHRpb24uVXJsLnJlcGxhY2UoJ3t9JywgdGhpcy5yb3cuRGF0YS5JZCkgKyAnLWluc2VydCc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgb3B0Lm1vZGFsLnRhYmxlLnNldCgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKG9wdC5tb2RhbC5mb3JtKXtcclxuICAgICAgICAgICAgb3B0Lm1vZGFsLmZvcm0ubmFtZSA9IG9wdGlvbi5OYW1lO1xyXG4gICAgICAgICAgICBvcHQubW9kYWwuZm9ybS51cmwgPSBvcHRpb24uVXJsLnJlcGxhY2UoJ3t9JywgdGhpcy5yb3cuRGF0YS5JZCkgKyAnLXVwZGF0ZSc7XHJcbiAgICAgICAgICAgIG9wdC5tb2RhbC5mb3JtLmxvYWREYXRhKG9wdGlvbi5VcmwucmVwbGFjZSgne30nLCB0aGlzLnJvdy5EYXRhLklkKSArICctZ2V0Jyk7XHJcbiAgICAgICAgICAgIG9wdC5tb2RhbC5mb3JtLm9uU3VjY2Vzc0Jhc2UgPSAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgb3B0Lm1vZGFsLmhpZGUoKTtcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmIChvcHQubW9kYWwuYWNjb3JkaW9uKXtcclxuICAgICAgICAgICAgZm9yIChjb25zdCByIG9mIG9wdC5tb2RhbC5hY2NvcmRpb24ucm93cyl7XHJcbiAgICAgICAgICAgICAgaWYgKHIudGFibGUpe1xyXG4gICAgICAgICAgICAgICAgY29uc3Qgb3B0aW9ucyA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5yb3cuT3B0aW9ucykpO1xyXG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2cob3B0aW9ucyk7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgICAgICAgICAgcC5SZWxhdGVkSWQgPSB0aGlzLnJvdy5EYXRhLklkO1xyXG4gICAgICAgICAgICAgICAgcC5BcmVhID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5BcmVhO1xyXG4gICAgICAgICAgICAgICAgcC5Db250cm9sbGVyID0gb3B0aW9uLkNvbnRyb2xsZXI7XHJcbiAgICAgICAgICAgICAgICBwLkFjdGlvbiA9IHIubmFtZTtcclxuICAgICAgICAgICAgICAgIHAuQWNjZXNzZXMgPSBvcHRpb25zLmZpbHRlcih4ID0+IHguUGFyZW50SWQgPT09IG9wdGlvbi5JZCk7XHJcbiAgICAgICAgICAgICAgICBwLkFjY2Vzc2VzLmZvckVhY2goeCA9PiB4LlVybCA9IHguVXJsLnJlcGxhY2UoJ3thY3Rpb259Jywgci5uYW1lLnRvTG93ZXJDYXNlKCkpKTtcclxuICAgICAgICAgICAgICAgIHIudGFibGUucGVybWlzc2lvbnMgPSBwO1xyXG4gICAgICAgICAgICAgICAgaWYgKHIudGFibGUuZm9ybSl7XHJcbiAgICAgICAgICAgICAgICAgIHIudGFibGUuZm9ybS51cmwgPSBvcHRpb24uVXJsICsgJ2luc2VydCc7XHJcbiAgICAgICAgICAgICAgICAgIHIudGFibGUuZm9ybS5iYXNlVXJsID0gb3B0aW9uLlVybCArICdpbnNlcnQnO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgci50YWJsZS5zZXQoKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKG9wdGlvbi5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5GaWxlKXtcclxuICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgIHAuUmVsYXRlZElkID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5SZWxhdGVkSWQ7XHJcbiAgICAgICAgcC5BcmVhID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5BcmVhO1xyXG4gICAgICAgIHAuQ29udHJvbGxlciA9IG9wdGlvbi5Db250cm9sbGVyO1xyXG4gICAgICAgIHAuQWN0aW9uID0gb3B0aW9uLkFjdGlvbjtcclxuICAgICAgICBvcHQudXJsID0gJy9maWxlJyArIHRoaXMuZ2V0T3B0aW9uVXJsKG9wdGlvbi5VcmwsIHRoaXMudGFibGUucGVybWlzc2lvbnMuUmVsYXRlZElkLCB0aGlzLnJvdy5EYXRhLklkKTtcclxuICAgICAgICBvcHQudXJsTmV3VGFiID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChvcHRpb24uSW5wdXRBY3Rpb24gPT09IFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0uQ29uZmlybSl7XHJcbiAgICAgICAgb3B0Lm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgICAgcC5SZWxhdGVkSWQgPSB0aGlzLnRhYmxlLnBlcm1pc3Npb25zLlJlbGF0ZWRJZDtcclxuICAgICAgICAgIHAuQXJlYSA9IHRoaXMudGFibGUucGVybWlzc2lvbnMuQXJlYTtcclxuICAgICAgICAgIHAuQ29udHJvbGxlciA9IG9wdGlvbi5Db250cm9sbGVyO1xyXG4gICAgICAgICAgcC5BY3Rpb24gPSBvcHRpb24uQWN0aW9uO1xyXG4gICAgICAgICAgdGhpcy50YWJsZS5zaG93Q29uZmlybSh0aGlzLnRhYmxlLmwob3B0aW9uLkFjdGlvbiArICdDb25maXJtJyksIG9wdGlvbi5VcmwucmVwbGFjZSgne30nLCB0aGlzLnJvdy5EYXRhLklkKSwgbnVsbCwgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnRhYmxlLmxvYWQoKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAob3B0aW9uLklucHV0QWN0aW9uID09PSBQZXJtaXNzaW9uSW5wdXRBY3Rpb25FbnVtLk9uQ2xpY2spe1xyXG4gICAgICAgIG9wdC5vbkNsaWNrID0gKGJ0bikgPT4ge1xyXG4gICAgICAgICAgdGhpcy50YWJsZS5vcHRpb25zQWN0aW9ucy5maW5kKHggPT4geC5uYW1lID09PSBvcHRpb24uQWN0aW9uKS5vbkNsaWNrKGJ0bik7XHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICBvcHRzLnB1c2gob3B0KTtcclxuICAgIH1cclxuICAgIHRoaXMub3B0aW9ucyA9IG9wdHM7XHJcbiAgICAvLyByZXR1cm4gKHRoaXMuYWRkQ2hpbGRyZW4gIT09IG51bGwgJiYgKHRoaXMudGFibGUubGV2ZWwgPT09IG51bGwgfHwgdGhpcy50YWJsZS5sZXZlbCA+IHRoaXMubGV2ZWwpID8gW3RoaXMuYWRkQ2hpbGRyZW5dIDogW10pXHJcbiAgICAvLyAgIC5jb25jYXQodGhpcy50YWJsZS5vcHRpb25zLmZpbHRlcih4ID0+IHguY29uZGl0aW9uID09IG51bGwgfHxcclxuICAgIC8vICAgICAoeC5jb25kaXRpb24uc3RhcnRzV2l0aCgnIScpID8gIXRoaXMucm93LkRhdGFbeC5jb25kaXRpb24uc3Vic3RyaW5nKDEpXSA6IHRoaXMucm93LkRhdGFbeC5jb25kaXRpb25dKSkubWFwKChvKSA9PiB7XHJcbiAgICAvLyAgICAgY29uc3QgaSA9IEhlbHBlckNsYXNzLmNsb25lKG8pO1xyXG4gICAgLy8gICAgIGlmIChpLnVybCl7XHJcbiAgICAvLyAgICAgICBpLnVybCA9IGkudXJsLnJlcGxhY2UoJ3t9JywgdGhpcy5yb3cuRGF0YS5JZCk7XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gICAgIGkucm93ID0gdGhpcy5yb3cuRGF0YTtcclxuICAgIC8vICAgICBpLmNsYXNzID0gaS5jbGFzcyArICcgbS1oLTUgaC0yNSBkLWliIHZhLW0gZi11JztcclxuICAgIC8vICAgICByZXR1cm4gaTtcclxuICAgIC8vIH0pKS5jb25jYXQodGhpcy50YWJsZS5oYXNTdGF0dXMgPyBbdGhpcy5vcHRTdGF0dXNdIDogW10pXHJcbiAgICAvLyAgICAgLmNvbmNhdCh0aGlzLnRhYmxlLnBlcm1pc3Npb25zLmhhc0FjY2VzcygnVXBkYXRlJykgPyBbdGhpcy5vcHRFZGl0XSA6IFtdKVxyXG4gICAgLy8gICAgIC5jb25jYXQodGhpcy50YWJsZS5wZXJtaXNzaW9ucy5oYXNBY2Nlc3MoJ0RlbGV0ZScpID8gW3RoaXMub3B0RGVsZXRlXSA6IFtdKTtcclxuICB9XHJcbiAgZ2V0Q2VsbChjb2w6IFRhYmxlQ29sbENsYXNzKTogYW55e1xyXG4gICAgY29uc29sZS5sb2coJ2dldENlbGwnKTtcclxuICAgIGNvbnN0IGN2ID0gXy5nZXQodGhpcy5yb3cuRGF0YSwgY29sLm5hbWUpO1xyXG4gICAgaWYgKGNvbC5mdW4gIT0gbnVsbCkge1xyXG4gICAgICByZXR1cm4gY29sLmZ1bih0aGlzLnJvdy5EYXRhKTtcclxuICAgIH0gZWxzZSBpZiAoY29sLmVudW0gIT09IG51bGwpIHtcclxuICAgICAgcmV0dXJuIHRoaXMudGFibGUubChFbnVtVXRpbHMuZ2V0S2V5QnlWYWx1ZShjb2wuZW51bSwgY3YpKTtcclxuICAgIH0gZWxzZSBpZiAoY29sLnR5cGUgPT09IFRhYmxlQ29sbFR5cGUuRGF0ZURpZikge1xyXG4gICAgICByZXR1cm4gSGVscGVyQ2xhc3MuZ2V0RGF0ZURpZih0aGlzLnRhYmxlLmwsIGN2KTtcclxuICAgIH0gZWxzZSBpZiAoY29sLnR5cGUgPT09IFRhYmxlQ29sbFR5cGUuRGF0ZSkge1xyXG4gICAgICByZXR1cm4gSGVscGVyQ2xhc3MuZ2V0RGF0ZShjdik7XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLkRhdGVUaW1lKSB7XHJcbiAgICAgIHJldHVybiBIZWxwZXJDbGFzcy5nZXREYXRlVGltZShjdik7XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLlRpbWUpIHtcclxuICAgICAgcmV0dXJuIEhlbHBlckNsYXNzLmdldFRpbWUoY3YpO1xyXG4gICAgfSBlbHNlIGlmIChjb2wudHlwZSA9PT0gVGFibGVDb2xsVHlwZS5Db2xvcikge1xyXG4gICAgICByZXR1cm4gJzxkaXYgY2xhc3M9XCJjb2xvclwiIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogJyArIGN2ICsgJzsgY29sb3I6ICcgKyBIZWxwZXJDbGFzcy5nZXRDb2xvckJ5QmdDb2xvcihjdikgKyAnXCI+JyArIGN2ICsgJzwvZGl2Pic7XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLlVybCkge1xyXG4gICAgICByZXR1cm4gJzxhIHRhcmdldD1cIl9ibGFua1wiIGNsYXNzPVwibHRyXCIgaHJlZj1cIicgKyBjdiArICdcIj4nICsgY3YgKyAnPC9hPic7XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLkltYWdlKSB7XHJcbiAgICAgIHJldHVybiAnPGltZyBjbGFzcz1cImgtMTAwXCIgYWx0PVwiXCIgc3JjPVwiJyArIHRoaXMuc2VydmljZS5lbnZpcm9ubWVudC51cmwgKyBjdiArICdcIi8+JztcclxuICAgIH0gZWxzZSBpZiAoY29sLnR5cGUgPT09IFRhYmxlQ29sbFR5cGUuRmlsZVNpemUpIHtcclxuICAgICAgcmV0dXJuIEhlbHBlckNsYXNzLmdldEZpbGVTaXplKGN2KTtcclxuICAgIH0gZWxzZSBpZiAoY29sLnR5cGUgPT09IFRhYmxlQ29sbFR5cGUuUHJpY2UpIHtcclxuICAgICAgcmV0dXJuIGN2LnRvTG9jYWxlU3RyaW5nKCkgKyAnICcgKyB0aGlzLnRhYmxlLmwoJ1JpYWwnKTtcclxuICAgIH0gZWxzZSBpZiAoY29sLnR5cGUgPT09IFRhYmxlQ29sbFR5cGUuUGxhcXVlKSB7XHJcbiAgICAgIGNvbnN0IHBhcnRzID0gY3Yuc3BsaXQoJ18nKTtcclxuICAgICAgaWYgKHBhcnRzLmxlbmd0aCA9PT0gNCkge1xyXG4gICAgICAgIHJldHVybiAnPGRpdiBjbGFzcz1cInBsYXF1ZScgKyAocGFydHNbMV0gPT09ICfYuScgPyAnIHAnIDogJycpICsgKHBhcnRzWzFdID09PSAn2KfZhNmBJyA/ICcgZycgOiAnJykgKyAnXCI+JyArXHJcbiAgICAgICAgICAnPGRpdiBjbGFzcz1cInBhcnQxXCI+JyArIHBhcnRzWzBdICsgJzwvZGl2PicgK1xyXG4gICAgICAgICAgJzxkaXYgY2xhc3M9XCJwYXJ0MlwiPicgKyBwYXJ0c1sxXSArICc8L2Rpdj4nICtcclxuICAgICAgICAgICc8ZGl2IGNsYXNzPVwicGFydDNcIj4nICsgcGFydHNbMl0gKyAnPC9kaXY+JyArXHJcbiAgICAgICAgICAnPGRpdiBjbGFzcz1cInBhcnQ0XCI+JyArIHBhcnRzWzNdICsgJzwvZGl2PicgK1xyXG4gICAgICAgICAgJzwvZGl2Pic7XHJcbiAgICAgIH0gZWxzZSBpZiAocGFydHMubGVuZ3RoID09PSAyICYmIHBhcnRzLmV2ZXJ5KHggPT4gL15bMC05XSskLy50ZXN0KHgpKSl7XHJcbiAgICAgICAgcmV0dXJuICc8ZGl2IGNsYXNzPVwicGxhcXVlIHBsYXF1ZS1tXCI+JyArXHJcbiAgICAgICAgICAnPGRpdiBjbGFzcz1cInBhcnQxXCI+JyArIHBhcnRzWzBdICsgJzwvZGl2PicgK1xyXG4gICAgICAgICAgJzxkaXYgY2xhc3M9XCJwYXJ0MlwiPicgKyBwYXJ0c1sxXSArICc8L2Rpdj4nICtcclxuICAgICAgICAgICc8L2Rpdj4nO1xyXG4gICAgICB9IGVsc2UgaWYgKHBhcnRzLmxlbmd0aCA9PT0gMil7XHJcbiAgICAgICAgcmV0dXJuICc8ZGl2IGNsYXNzPVwicGxhcXVlIHBsYXF1ZS1mXCI+JyArXHJcbiAgICAgICAgICAnPGRpdiBjbGFzcz1cInBhcnQxXCI+JyArIHBhcnRzWzBdICsgJzwvZGl2PicgK1xyXG4gICAgICAgICAgJzxkaXYgY2xhc3M9XCJwYXJ0MlwiPicgKyBwYXJ0c1sxXSArICc8L2Rpdj4nICtcclxuICAgICAgICAgICc8L2Rpdj4nO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLlBsYXF1ZVRleHQpIHtcclxuICAgICAgY29uc3QgcGFydHMgPSBjdi5zcGxpdCgnXycpO1xyXG4gICAgICBpZiAocGFydHMubGVuZ3RoID09PSA0KXtcclxuICAgICAgICByZXR1cm4gYDxkaXYgY2xhc3M9XCJsdHJcIj4ke3BhcnRzWzBdfSAke3BhcnRzWzFdfSZscm07ICR7cGFydHNbMl19ICR7cGFydHNbM119PC9kaXY+YDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMudGFibGUubChjdik7XHJcbiAgfVxyXG4gIGdldENvbChuKTogc3RyaW5ne1xyXG4gICAgbGV0IGMgPSB0aGlzLnJvdy5EYXRhO1xyXG4gICAgbi5zcGxpdCgnLicpLmZvckVhY2goKHgpID0+IHtcclxuICAgICAgYyA9IGNbeF07XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBjO1xyXG4gIH1cclxuICBlZGl0KG9wdDogSW5wdXRDbGFzcywgb3B0aW9uOiBQZXJtaXNzaW9uQ2xhc3MpOiB2b2lke1xyXG4gICAgaWYgKHRoaXMudGFibGUucGVybWlzc2lvbnMuVHlwZSA9PT0gUGVybWlzc2lvblR5cGVFbnVtLkZvcm0pe1xyXG4gICAgICB0aGlzLnRhYmxlLmZvcm0ubmFtZSA9IG9wdC5uYW1lO1xyXG4gICAgICB0aGlzLnRhYmxlLmZvcm0uc2V0RGF0YSh0aGlzLnJvdy5EYXRhKTtcclxuICAgICAgdGhpcy50YWJsZS5mb3JtLnNldEJ1dHRvbnModGhpcy50YWJsZS5mb3JtLm9uVG9wLCB0cnVlLCB0aGlzLnJvdy5EYXRhLklkKTtcclxuICAgICAgdGhpcy50YWJsZS5mb3JtLmlucHV0cy5maWx0ZXIoeCA9PiB4LmluRWRpdERpc2FibGVkKS5mb3JFYWNoKHggPT4geC5kaXNhYmxlZCA9IHRydWUpO1xyXG4gICAgICB0aGlzLnRhYmxlLmZvcm0uaW5wdXRzLmZpbHRlcih4ID0+ICF4LmluRWRpdFZpc2libGUpLmZvckVhY2goeCA9PiB4LnZpc2libGUgPSBmYWxzZSk7XHJcbiAgICB9ZWxzZXtcclxuICAgICAgbmV3IFJlcXVlc3RDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCB0aGlzLnRhYmxlLmwpLnNlbmQodGhpcy5nZXRPcHRpb25Vcmwob3B0aW9uLlVybC5yZXBsYWNlKCd1cGRhdGUnLCAnZ2V0JyksIHRoaXMudGFibGUucGVybWlzc2lvbnMuUmVsYXRlZElkLCB0aGlzLnJvdy5EYXRhLklkKSwgTWV0aG9kLlBvc3QsXHJcbiAgICAgICAgbnVsbCwgb3B0LCAocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0ubmFtZSA9IG9wdC5uYW1lO1xyXG4gICAgICAgICAgdGhpcy50YWJsZS5mb3JtLnNldEJ1dHRvbnModGhpcy50YWJsZS5mb3JtLm9uVG9wLCB0cnVlLCB0aGlzLnJvdy5EYXRhLklkKTtcclxuICAgICAgICAgIHRoaXMudGFibGUuZm9ybS5zZXREYXRhKHJlc3VsdCk7XHJcbiAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0uaW5wdXRzLmZpbHRlcih4ID0+IHguaW5FZGl0RGlzYWJsZWQpLmZvckVhY2goeCA9PiB4LmRpc2FibGVkID0gdHJ1ZSk7XHJcbiAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0uaW5wdXRzLmZpbHRlcih4ID0+ICF4LmluRWRpdFZpc2libGUpLmZvckVhY2goeCA9PiB4LnZpc2libGUgPSBmYWxzZSk7XHJcbiAgICAgICAgICBpZiAodGhpcy50YWJsZS5tb2RhbCl7XHJcbiAgICAgICAgICAgIHRoaXMudGFibGUubW9kYWwuc2hvdygpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuICBnZXRDaGlsZHJlbigpOiBhbnlbXXtcclxuICAgIHJldHVybiB0aGlzLnJvdy5EYXRhLklkID8gdGhpcy50YWJsZS5yb3dzLmZpbHRlcih4ID0+IHguRGF0YS5QYXJlbnRJZCA9PT0gdGhpcy5yb3cuRGF0YS5JZCkgOiBbXTtcclxuICB9XHJcbn1cclxuIl19
|
|
405
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUucm93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJEOi9Qcm9qZWN0cy9Qc1Rvb2xraXQvVUkvcHJvamVjdHMvcHMtdG9vbGtpdC11aS9zcmMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy90YWJsZS9yb3cvdGFibGUucm93LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUU1QixPQUFPLEVBQ0wsU0FBUyxFQUNULFNBQVMsRUFDVCxNQUFNLEVBQUUsd0JBQXdCLEVBQ2hDLHlCQUF5QixFQUN6Qix1QkFBdUIsRUFDdkIsa0JBQWtCLEVBQ2xCLGFBQWEsRUFDYixlQUFlLEVBQ2hCLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM1RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDMUQsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDMUUsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ2xFLE9BQU8sMEJBQTBCLENBQUM7QUFPbEMsTUFBTSxPQUFPLGlCQUFpQjtJQW9CNUIsWUFBbUIsT0FBaUM7UUFBakMsWUFBTyxHQUFQLE9BQU8sQ0FBMEI7UUFsQnBELGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUV6QyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQVF4QyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUs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Q0FBQyxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQztnQkFDckYsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBQztvQkFDbkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7aUJBQ3pCO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDTjtJQUNILENBQUM7SUFDRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDbkcsQ0FBQzs7O1lBblhGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZUFBZTtnQkFDekIsaS9EQUF5Qzs7YUFFMUM7OztZQVRPLHdCQUF3Qjs7OzBCQVc3QixNQUFNO3lCQUVOLE1BQU07b0JBRU4sS0FBSztvQkFFTCxLQUFLO2tCQUVMLEtBQUs7eUJBRUwsTUFBTTswQkFRTixTQUFTLFNBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xyXG5pbXBvcnQge1RhYmxlQ2xhc3MsIFRhYmxlQ29sbENsYXNzfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL3RhYmxlLmNsYXNzJztcclxuaW1wb3J0IHtcclxuICBFbnVtVXRpbHMsXHJcbiAgSW5wdXRUeXBlLFxyXG4gIE1ldGhvZCwgUGVybWlzc2lvbkFjY2Vzc1R5cGVFbnVtLFxyXG4gIFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0sXHJcbiAgUGVybWlzc2lvbklucHV0VHlwZUVudW0sXHJcbiAgUGVybWlzc2lvblR5cGVFbnVtLFxyXG4gIFRhYmxlQ29sbFR5cGUsXHJcbiAgVGFibGVPcHRpb25UeXBlXHJcbn0gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9lbnVtLmNsYXNzJztcclxuaW1wb3J0IHtJbnB1dENsYXNzfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2Zvcm0uY2xhc3MnO1xyXG5pbXBvcnQge1JlcXVlc3RDbGFzc30gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9yZXF1ZXN0LmNsYXNzJztcclxuaW1wb3J0IHtIZWxwZXJDbGFzc30gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9oZWxwZXIuY2xhc3MnO1xyXG5pbXBvcnQge1BzVG9vbGtpdFVpQ29uZmlnU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvY29uZmlnLnNlcnZpY2UnO1xyXG5pbXBvcnQgKiBhcyAkIGZyb20gJ2pxdWVyeSc7XHJcbmltcG9ydCB7UGVybWlzc2lvbkNsYXNzfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL3Blcm1pc3Npb24uY2xhc3MnO1xyXG5pbXBvcnQgJ2pxdWVyeS11aS1kaXN0L2pxdWVyeS11aSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi10YWJsZS1yb3cnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJsZS5yb3cuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RhYmxlLnJvdy5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFRhYmxlUm93Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0e1xyXG4gIEBPdXRwdXQoKVxyXG4gIGNvbmZpcm1TaG93ID0gbmV3IEV2ZW50RW1pdHRlcjxvYmplY3Q+KCk7XHJcbiAgQE91dHB1dCgpXHJcbiAgY2hhbmdlUm93cyA9IG5ldyBFdmVudEVtaXR0ZXI8b2JqZWN0PigpO1xyXG4gIEBJbnB1dCgpXHJcbiAgbGV2ZWw6IG51bWJlcjtcclxuICBASW5wdXQoKVxyXG4gIHRhYmxlOiBUYWJsZUNsYXNzO1xyXG4gIEBJbnB1dCgpXHJcbiAgcm93O1xyXG4gIEBPdXRwdXQoKVxyXG4gIGxvYWRQYXJlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuICBnZXQgdHlwZSgpOiB0eXBlb2YgSW5wdXRUeXBlIHsgcmV0dXJuIElucHV0VHlwZTsgfVxyXG4gIGdldCB0YWJsZU9wdGlvblR5cGUoKTogdHlwZW9mIFRhYmxlT3B0aW9uVHlwZXsgcmV0dXJuIFRhYmxlT3B0aW9uVHlwZTsgfVxyXG4gIHNob3dDaGlsZHJlbjogSW5wdXRDbGFzcyA9IG51bGw7XHJcbiAgYWRkQ2hpbGRyZW46IElucHV0Q2xhc3MgPSBudWxsO1xyXG4gIGNoaWxkcmVuOiBhbnlbXSA9IFtdO1xyXG4gIG9wdGlvbnM6IGFueVtdID0gW107XHJcbiAgQFZpZXdDaGlsZCgnY2hpbGRyZW5EaXYnKSBjaGlsZHJlbkRpdjogRWxlbWVudFJlZjtcclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgc2VydmljZTogUHNUb29sa2l0VWlDb25maWdTZXJ2aWNlKSB7XHJcbiAgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudGFibGUuaGFzQ2hpbGRyZW4pe1xyXG4gICAgICBpZiAoIXRoaXMudGFibGUuY2hpbGRyZW5BdXRvTG9hZCl7XHJcbiAgICAgICAgdGhpcy5jaGlsZHJlbiA9IHRoaXMuZ2V0Q2hpbGRyZW4oKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy50YWJsZS5wZXJtaXNzaW9ucy5oYXNBY2Nlc3MoUGVybWlzc2lvbkFjY2Vzc1R5cGVFbnVtLkluc2VydCkpe1xyXG4gICAgICAgIHRoaXMuYWRkQ2hpbGRyZW4gPSBuZXcgSW5wdXRDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCB0aGlzLnRhYmxlLmwsIHRoaXMudGFibGUubmFtZSArICdBZGRTdWJzZXRUaXRsZScsXHJcbiAgICAgICAgICAnZmEtZHVvdG9uZSBmYS1wbHVzIGZhLXJvdGF0ZS05MCcsIElucHV0VHlwZS5JY29uLFxyXG4gICAgICAgICAgJ2dyZWVuIG0taC01IGgtMjUgZC1pYiB2YS1tIGYtdScpO1xyXG4gICAgICAgIHRoaXMuYWRkQ2hpbGRyZW4ub25DbGljayA9ICgpID0+IHtcclxuICAgICAgICAgIHRoaXMudGFibGUuZm9ybS5vblN1Y2Nlc3NCYXNlID0gKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnRhYmxlLm1vZGFsLmhpZGUoKTtcclxuICAgICAgICAgICAgdGhpcy5zaG93Q2hpbGRyZW4udHlwZSA9IElucHV0VHlwZS5JY29uO1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRDaGlsZHJlbih0aGlzLnJvdy5EYXRhLklkKTtcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgICB0aGlzLnRhYmxlLnNob3dJbnNlcnRNb2RhbCh0aGlzLnJvdy5EYXRhLklkKTtcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuc2hvd0NoaWxkcmVuID0gbmV3IElucHV0Q2xhc3ModGhpcy50YWJsZS5lbnZpcm9ubWVudCwgdGhpcy50YWJsZS5sLCB0aGlzLnRhYmxlLm5hbWUgKyAnU3Vic2V0VGl0bGUnLCAnZmEtZHVvdG9uZSBmYS1hbmdsZS1sZWZ0IGYtcy0yMicsXHJcbiAgICAgICAgdGhpcy5yb3cuRGF0YS5Db3VudENoaWxkID4gMCB8fCAoIXRoaXMudGFibGUuY2hpbGRyZW5BdXRvTG9hZCAmJiB0aGlzLmNoaWxkcmVuLmxlbmd0aCA+IDApID8gSW5wdXRUeXBlLkljb24gOiBJbnB1dFR5cGUuSGlkZGVuLCAnaC0yNSBtLWgtNSBkLWliIHZhLW0gZi11Jyk7XHJcbiAgICAgIHRoaXMuc2hvd0NoaWxkcmVuLm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgICAgaWYgKCQodGhpcy5jaGlsZHJlbkRpdi5uYXRpdmVFbGVtZW50KS5pcygnOnZpc2libGUnKSl7XHJcbiAgICAgICAgICAkKHRoaXMuY2hpbGRyZW5EaXYubmF0aXZlRWxlbWVudCkuc2xpZGVVcCgpO1xyXG4gICAgICAgICAgdGhpcy5zaG93Q2hpbGRyZW4uaWNvbiA9ICdmYS1kdW90b25lIGZhLWFuZ2xlLWxlZnQgZi1zLTIyJztcclxuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuY2hpbGRyZW4ubGVuZ3RoID09PSAwKXtcclxuICAgICAgICAgIHRoaXMubG9hZENoaWxkcmVuKHRoaXMucm93LkRhdGEuSWQpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAkKHRoaXMuY2hpbGRyZW5EaXYubmF0aXZlRWxlbWVudCkuc2xpZGVEb3duKCk7XHJcbiAgICAgICAgICB0aGlzLnNob3dDaGlsZHJlbi5pY29uID0gJ2ZhLWR1b3RvbmUgZmEtYW5nbGUtZG93biBmLXMtMjInO1xyXG4gICAgICAgIH1cclxuICAgICAgfTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnRhYmxlLnNvcnRhYmxlKXtcclxuICAgICAgdGhpcy5zZXRTb3J0Um93KCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnNldE9wdGlvbnMoKTtcclxuICB9XHJcbiAgbG9hZENoaWxkcmVuKHApOiB2b2lke1xyXG4gICAgbmV3IFJlcXVlc3RDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCB0aGlzLnRhYmxlLmwpLnNlbmQodGhpcy50YWJsZS51cmwgKyBgLyR7cH1gLCBNZXRob2QuUG9zdCxcclxuICAgICAgbnVsbCwgdGhpcy5zaG93Q2hpbGRyZW4sIChyZXN1bHQpID0+IHtcclxuICAgICAgICB0aGlzLmNoaWxkcmVuID0gcmVzdWx0Lkxpc3Q7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAkKHRoaXMuY2hpbGRyZW5EaXYubmF0aXZlRWxlbWVudCkuc2xpZGVEb3duKCk7XHJcbiAgICAgICAgICB0aGlzLnNob3dDaGlsZHJlbi5pY29uID0gJ2ZhLWR1b3RvbmUgZmEtYW5nbGUtZG93biBmLXMtMjInO1xyXG4gICAgICAgIH0sIDUwKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG4gIHNlbGVjdCgpOiB2b2lke1xyXG4gICAgdGhpcy5yb3cuRGF0YS5zZWxlY3RlZCA9ICF0aGlzLnJvdy5EYXRhLnNlbGVjdGVkO1xyXG4gIH1cclxuICBvbkNoYW5nZVJvd3MoZSk6IHZvaWR7XHJcbiAgICByZXR1cm4gdGhpcy5jaGFuZ2VSb3dzLmVtaXQoZSk7XHJcbiAgfVxyXG4gIG9uQ29uZmlybVNob3coZSk6IHZvaWR7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maXJtU2hvdy5lbWl0KGUpO1xyXG4gIH1cclxuICBzZXRTb3J0Um93KCk6IHZvaWR7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgaWYgKHRoaXMudGFibGUuaGFzQ2hpbGRyZW4pIHtcclxuICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgJCh0aGlzLmNoaWxkcmVuRGl2Lm5hdGl2ZUVsZW1lbnQpLnNvcnRhYmxlKHtcclxuICAgICAgICAgIGF4aXM6ICd5JyxcclxuICAgICAgICAgIGl0ZW1zOiAnLnJvdy1jb24nLFxyXG4gICAgICAgICAgaGFuZGxlOiAnPiAucm93ID4gLmhhbmRsZScsXHJcbiAgICAgICAgICB1cGRhdGU6ICgpID0+IHtcclxuICAgICAgICAgICAgY29uc3QgZGF0YSA9IFtdO1xyXG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgICAgICQodGhpcy5jaGlsZHJlbkRpdi5uYXRpdmVFbGVtZW50KS5zb3J0YWJsZSgndG9BcnJheScpLmZvckVhY2goeCA9PiB7XHJcbiAgICAgICAgICAgICAgY29uc29sZS5sb2coeCk7XHJcbiAgICAgICAgICAgICAgZGF0YS5wdXNoKHgpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgY29uc3QgcCA9IG5ldyBQZXJtaXNzaW9uQ2xhc3MoKTtcclxuICAgICAgICAgICAgcC5BcmVhID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5BcmVhO1xyXG4gICAgICAgICAgICBwLkNvbnRyb2xsZXIgPSB0aGlzLnRhYmxlLnBlcm1pc3Npb25zLkNvbnRyb2xsZXI7XHJcbiAgICAgICAgICAgIHAuQWN0aW9uID0gJ3NvcnQnO1xyXG4gICAgICAgICAgICBuZXcgUmVxdWVzdENsYXNzKHRoaXMudGFibGUuZW52aXJvbm1lbnQsIHRoaXMudGFibGUubCkuc2VuZChwLmdldFVybCgpLnRvTG93ZXJDYXNlKCksIE1ldGhvZC5Qb3N0LCB7SWRzOiBkYXRhfSwgbnVsbCwgKCkgPT4ge1xyXG4gICAgICAgICAgICAgIGlmICh0aGlzLnRhYmxlLm9uU29ydCl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnRhYmxlLm9uU29ydCgpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0sIDUwMCk7XHJcbiAgfVxyXG5cclxuICBnZXRPcHRpb25VcmwodXJsLCByZWxhdGVkSWQsIHJvd0lkKTogc3RyaW5ne1xyXG4gICAgcmV0dXJuIChyZWxhdGVkSWQgPyB1cmwucmVwbGFjZSgne30nLCByZWxhdGVkSWQpIDogdXJsKS5yZXBsYWNlKCd7fScsIHJvd0lkKTtcclxuICB9XHJcbiAgc2V0T3B0aW9ucygpOiB2b2lke1xyXG4gICAgY29uc3Qgb3B0cyA9IFtdO1xyXG4gICAgZm9yIChjb25zdCBvcHRpb24gb2YgdGhpcy5yb3cuT3B0aW9ucy5maWx0ZXIoeCA9PiB4LlR5cGUgPT09IFBlcm1pc3Npb25UeXBlRW51bS5PcHRpb24gJiYgeC5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5JbnB1dCkpe1xyXG4gICAgICBjb25zdCBpbnAgPSBuZXcgSW5wdXRDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCB0aGlzLnRhYmxlLmwsIG51bGwsIG51bGwsIElucHV0VHlwZS5DaGVjaywgJ2gtMjUgd2l0aG91dC1ib3JkZXIgbS1oLTUgcC0wIHctdScsIHRoaXMucm93LkRhdGFbb3B0aW9uLkFjdGlvbl0gPT09IHRydWUpO1xyXG4gICAgICBpbnAucm93ID0gdGhpcy5yb3c7XHJcbiAgICAgIGlucC50b29sdGlwID0gb3B0aW9uLk5hbWU7XHJcbiAgICAgIGlucC5vbkNoYW5nZSA9ICgpID0+IHtcclxuICAgICAgICB0aGlzLnJvdy5EYXRhW29wdGlvbi5BY3Rpb25dID0gIWlucC5kYXRhKCk7XHJcbiAgICAgICAgbmV3IFJlcXVlc3RDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCB0aGlzLnRhYmxlLmwpLnNlbmQob3B0aW9uLlVybC5yZXBsYWNlKCd7fScsIHRoaXMucm93LkRhdGEuSWQpLCBNZXRob2QuUG9zdCwgbnVsbCwgbnVsbCwgKCkgPT4ge1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9O1xyXG4gICAgICBpbnAuZGlzcGxheUxhYmVsID0gZmFsc2U7XHJcbiAgICAgIG9wdHMucHVzaChpbnApO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuYWRkQ2hpbGRyZW4gIT09IG51bGwgJiYgKHRoaXMudGFibGUubGV2ZWwgPT09IG51bGwgfHwgdGhpcy50YWJsZS5sZXZlbCA+IHRoaXMubGV2ZWwpKXtcclxuICAgICAgb3B0cy5wdXNoKHRoaXMuYWRkQ2hpbGRyZW4pO1xyXG4gICAgfVxyXG4gICAgZm9yIChjb25zdCBvcHRpb24gb2YgdGhpcy5yb3cuT3B0aW9ucy5maWx0ZXIoeCA9PiB4LlR5cGUgPT09IFBlcm1pc3Npb25UeXBlRW51bS5PcHRpb24gJiYgeC5JbnB1dEFjdGlvbiAhPT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5JbnB1dCkpe1xyXG4gICAgICBjb25zdCBvcHQgPSBuZXcgSW5wdXRDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCB0aGlzLnRhYmxlLmwsIG9wdGlvbi5OYW1lLCBvcHRpb24uSWNvbixcclxuICAgICAgICBvcHRpb24uSW5wdXRUeXBlID09PSBQZXJtaXNzaW9uSW5wdXRUeXBlRW51bS5JY29uID8gSW5wdXRUeXBlLkljb24gOiBJbnB1dFR5cGUuQnV0dG9uLCAnYmx1ZSBoLTI1IG0taC01IGQtaWIgdmEtbSBmLXUnKTtcclxuICAgICAgb3B0LnJvdyA9IHRoaXMucm93O1xyXG4gICAgICBpZiAob3B0aW9uLkFjY2Vzc1R5cGUgPT09IFBlcm1pc3Npb25BY2Nlc3NUeXBlRW51bS5VcGRhdGUpe1xyXG4gICAgICAgIGlmICh0aGlzLnRhYmxlLmZvcm0pe1xyXG4gICAgICAgICAgb3B0Lm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMudGFibGUuZm9ybS51cmwgPSB0aGlzLmdldE9wdGlvblVybChvcHRpb24uVXJsLCB0aGlzLnRhYmxlLnBlcm1pc3Npb25zLlJlbGF0ZWRJZCwgdGhpcy5yb3cuRGF0YS5JZCk7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLnRhYmxlLmhhc0NoaWxkcmVuICYmIHRoaXMucm93LkRhdGEuUGFyZW50SWQgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgIHRoaXMudGFibGUuZm9ybS5vblN1Y2Nlc3NCYXNlID0gKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy50YWJsZS5tb2RhbC5oaWRlKCk7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy50YWJsZS5jaGlsZHJlbkF1dG9Mb2FkKXtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5sb2FkUGFyZW50LmVtaXQodGhpcy5yb3cuRGF0YS5QYXJlbnRJZCk7XHJcbiAgICAgICAgICAgICAgICB9ZWxzZXtcclxuICAgICAgICAgICAgICAgICAgdGhpcy50YWJsZS5sb2FkKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0ub25TdWNjZXNzQmFzZSA9ICgpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmICghdGhpcy50YWJsZS5mb3JtLm9uVG9wKXtcclxuICAgICAgICAgICAgICAgICAgdGhpcy50YWJsZS5tb2RhbC5oaWRlKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0uY2xlYXIoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMudGFibGUubG9hZCgpO1xyXG4gICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5lZGl0KG9wdCwgb3B0aW9uKTtcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIG9wdC51cmwgPSB0aGlzLmdldE9wdGlvblVybChvcHRpb24uVXJsLCB0aGlzLnRhYmxlLnBlcm1pc3Npb25zLlJlbGF0ZWRJZCwgdGhpcy5yb3cuRGF0YS5JZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKG9wdGlvbi5BY2Nlc3NUeXBlID09PSBQZXJtaXNzaW9uQWNjZXNzVHlwZUVudW0uRGVsZXRlKXtcclxuICAgICAgICBvcHQuY2xhc3MgPSBvcHQuY2xhc3MucmVwbGFjZSgnYmx1ZScsICdyZWQnKTtcclxuICAgICAgICBvcHQub25DbGljayA9ICgpID0+IHtcclxuICAgICAgICAgIGlmICh0aGlzLnRhYmxlLmZvcm0pe1xyXG4gICAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0uY2xlYXIoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmICh0aGlzLnRhYmxlLnBlcm1pc3Npb25zLlR5cGUgPT09IFBlcm1pc3Npb25UeXBlRW51bS5Gb3JtKXtcclxuICAgICAgICAgICAgdGhpcy50YWJsZS5yb3dzID0gdGhpcy50YWJsZS5yb3dzLmZpbHRlcih4ID0+IHguSWQgIT09IHRoaXMucm93LkRhdGEuSWQpO1xyXG4gICAgICAgICAgICB0aGlzLmNoYW5nZVJvd3MuZW1pdCh0aGlzLnJvdy5EYXRhKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuY29uZmlybVNob3cuZW1pdCh7XHJcbiAgICAgICAgICAgICAgYWN0aW9uOiBvcHRpb24uQWN0aW9uLFxyXG4gICAgICAgICAgICAgIHVybDogdGhpcy5nZXRPcHRpb25Vcmwob3B0aW9uLlVybCwgdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5SZWxhdGVkSWQsIHRoaXMucm93LkRhdGEuSWQpLFxyXG4gICAgICAgICAgICAgIGFjY2VwdDogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudGFibGUuaGFzQ2hpbGRyZW4gJiYgdGhpcy50YWJsZS5jaGlsZHJlbkF1dG9Mb2FkICYmIHRoaXMucm93LkRhdGEuUGFyZW50SWQgIT0gbnVsbCApe1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmxvYWRQYXJlbnQuZW1pdCh0aGlzLnJvdy5EYXRhLlBhcmVudElkKTtcclxuICAgICAgICAgICAgICAgIH1lbHNle1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLnRhYmxlLmxvYWQoKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9fSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChvcHRpb24uQWNjZXNzVHlwZSA9PT0gUGVybWlzc2lvbkFjY2Vzc1R5cGVFbnVtLlJlcG9ydCl7XHJcbiAgICAgICAgb3B0LnVybCA9ICcvcmVwb3J0JyArIG9wdGlvbi5VcmwucmVwbGFjZSgne30nLCB0aGlzLnJvdy5EYXRhLklkKTtcclxuICAgICAgICBvcHQudXJsTmV3VGFiID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChvcHRpb24uSW5wdXRBY3Rpb24gPT09IFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0uTGluayB8fCBvcHRpb24uSW5wdXRBY3Rpb24gPT09IFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0uTGlua05ld1RhYil7XHJcbiAgICAgICAgY29uc3QgcCA9IG5ldyBQZXJtaXNzaW9uQ2xhc3MoKTtcclxuICAgICAgICBvcHQudXJsID0gb3B0aW9uLlVybCArICcvJyArIHRoaXMucm93LkRhdGEuSWQ7XHJcbiAgICAgICAgb3B0LnVybE5ld1RhYiA9IG9wdGlvbi5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5MaW5rTmV3VGFiO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKG9wdGlvbi5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5Nb2RhbCl7XHJcbiAgICAgICAgb3B0Lm1vZGFsID0gdGhpcy50YWJsZS5vcHRpb25zQWN0aW9ucy5maW5kKHggPT4geC5uYW1lID09PSBvcHRpb24uQWN0aW9uKTtcclxuICAgICAgICBvcHQub25DbGljayA9ICgpID0+IHtcclxuICAgICAgICAgIGlmIChvcHQubW9kYWwudGFibGUpe1xyXG4gICAgICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgICAgICBwLlJlbGF0ZWRJZCA9IHRoaXMucm93LkRhdGEuSWQ7XHJcbiAgICAgICAgICAgIHAuQXJlYSA9IHRoaXMudGFibGUucGVybWlzc2lvbnMuQXJlYTtcclxuICAgICAgICAgICAgcC5Db250cm9sbGVyID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5Db250cm9sbGVyO1xyXG4gICAgICAgICAgICBwLkFjdGlvbiA9IG9wdGlvbi5BY3Rpb247XHJcbiAgICAgICAgICAgIHAuQWNjZXNzZXMgPSB0aGlzLnJvdy5PcHRpb25zLmZpbHRlcih4ID0+IHguUGFyZW50SWQgPT09IG9wdGlvbi5JZCk7XHJcbiAgICAgICAgICAgIG9wdC5tb2RhbC50YWJsZS5wZXJtaXNzaW9ucyA9IHA7XHJcbiAgICAgICAgICAgIGlmIChvcHQubW9kYWwudGFibGUuZm9ybSl7XHJcbiAgICAgICAgICAgICAgb3B0Lm1vZGFsLnRhYmxlLmZvcm0udXJsID0gb3B0aW9uLlVybC5yZXBsYWNlKCd7fScsIHRoaXMucm93LkRhdGEuSWQpICsgJy1pbnNlcnQnO1xyXG4gICAgICAgICAgICAgIG9wdC5tb2RhbC50YWJsZS5mb3JtLmJhc2VVcmwgPSBvcHRpb24uVXJsLnJlcGxhY2UoJ3t9JywgdGhpcy5yb3cuRGF0YS5JZCkgKyAnLWluc2VydCc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgb3B0Lm1vZGFsLnRhYmxlLnNldCgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKG9wdC5tb2RhbC5mb3JtKXtcclxuICAgICAgICAgICAgb3B0Lm1vZGFsLmZvcm0ubmFtZSA9IG9wdGlvbi5OYW1lO1xyXG4gICAgICAgICAgICBvcHQubW9kYWwuZm9ybS51cmwgPSBvcHRpb24uVXJsLnJlcGxhY2UoJ3t9JywgdGhpcy5yb3cuRGF0YS5JZCkgKyAnLXVwZGF0ZSc7XHJcbiAgICAgICAgICAgIG9wdC5tb2RhbC5mb3JtLmxvYWREYXRhKG9wdGlvbi5VcmwucmVwbGFjZSgne30nLCB0aGlzLnJvdy5EYXRhLklkKSArICctZ2V0Jyk7XHJcbiAgICAgICAgICAgIG9wdC5tb2RhbC5mb3JtLm9uU3VjY2Vzc0Jhc2UgPSAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgb3B0Lm1vZGFsLmhpZGUoKTtcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmIChvcHQubW9kYWwuYWNjb3JkaW9uKXtcclxuICAgICAgICAgICAgZm9yIChjb25zdCByIG9mIG9wdC5tb2RhbC5hY2NvcmRpb24ucm93cyl7XHJcbiAgICAgICAgICAgICAgaWYgKHIudGFibGUpe1xyXG4gICAgICAgICAgICAgICAgY29uc3Qgb3B0aW9ucyA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5yb3cuT3B0aW9ucykpO1xyXG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2cob3B0aW9ucyk7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgICAgICAgICAgcC5SZWxhdGVkSWQgPSB0aGlzLnJvdy5EYXRhLklkO1xyXG4gICAgICAgICAgICAgICAgcC5BcmVhID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5BcmVhO1xyXG4gICAgICAgICAgICAgICAgcC5Db250cm9sbGVyID0gb3B0aW9uLkNvbnRyb2xsZXI7XHJcbiAgICAgICAgICAgICAgICBwLkFjdGlvbiA9IHIubmFtZTtcclxuICAgICAgICAgICAgICAgIHAuQWNjZXNzZXMgPSBvcHRpb25zLmZpbHRlcih4ID0+IHguUGFyZW50SWQgPT09IG9wdGlvbi5JZCk7XHJcbiAgICAgICAgICAgICAgICBwLkFjY2Vzc2VzLmZvckVhY2goeCA9PiB4LlVybCA9IHguVXJsLnJlcGxhY2UoJ3thY3Rpb259Jywgci5uYW1lLnRvTG93ZXJDYXNlKCkpKTtcclxuICAgICAgICAgICAgICAgIHIudGFibGUucGVybWlzc2lvbnMgPSBwO1xyXG4gICAgICAgICAgICAgICAgaWYgKHIudGFibGUuZm9ybSl7XHJcbiAgICAgICAgICAgICAgICAgIHIudGFibGUuZm9ybS51cmwgPSBvcHRpb24uVXJsICsgJ2luc2VydCc7XHJcbiAgICAgICAgICAgICAgICAgIHIudGFibGUuZm9ybS5iYXNlVXJsID0gb3B0aW9uLlVybCArICdpbnNlcnQnO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgci50YWJsZS5zZXQoKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKG9wdGlvbi5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5GaWxlKXtcclxuICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgIHAuUmVsYXRlZElkID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5SZWxhdGVkSWQ7XHJcbiAgICAgICAgcC5BcmVhID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5BcmVhO1xyXG4gICAgICAgIHAuQ29udHJvbGxlciA9IG9wdGlvbi5Db250cm9sbGVyO1xyXG4gICAgICAgIHAuQWN0aW9uID0gb3B0aW9uLkFjdGlvbjtcclxuICAgICAgICBvcHQudXJsID0gJy9maWxlJyArIHRoaXMuZ2V0T3B0aW9uVXJsKG9wdGlvbi5VcmwsIHRoaXMudGFibGUucGVybWlzc2lvbnMuUmVsYXRlZElkLCB0aGlzLnJvdy5EYXRhLklkKTtcclxuICAgICAgICBvcHQudXJsTmV3VGFiID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChvcHRpb24uSW5wdXRBY3Rpb24gPT09IFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0uQ29uZmlybSl7XHJcbiAgICAgICAgb3B0Lm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgICAgcC5SZWxhdGVkSWQgPSB0aGlzLnRhYmxlLnBlcm1pc3Npb25zLlJlbGF0ZWRJZDtcclxuICAgICAgICAgIHAuQXJlYSA9IHRoaXMudGFibGUucGVybWlzc2lvbnMuQXJlYTtcclxuICAgICAgICAgIHAuQ29udHJvbGxlciA9IG9wdGlvbi5Db250cm9sbGVyO1xyXG4gICAgICAgICAgcC5BY3Rpb24gPSBvcHRpb24uQWN0aW9uO1xyXG4gICAgICAgICAgdGhpcy50YWJsZS5zaG93Q29uZmlybSh0aGlzLnRhYmxlLmwob3B0aW9uLkFjdGlvbiArICdDb25maXJtJyksIG9wdGlvbi5VcmwucmVwbGFjZSgne30nLCB0aGlzLnJvdy5EYXRhLklkKSwgbnVsbCwgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnRhYmxlLmxvYWQoKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAob3B0aW9uLklucHV0QWN0aW9uID09PSBQZXJtaXNzaW9uSW5wdXRBY3Rpb25FbnVtLk9uQ2xpY2spe1xyXG4gICAgICAgIG9wdC5vbkNsaWNrID0gKGJ0bikgPT4ge1xyXG4gICAgICAgICAgdGhpcy50YWJsZS5vcHRpb25zQWN0aW9ucy5maW5kKHggPT4geC5uYW1lID09PSBvcHRpb24uQWN0aW9uKS5vbkNsaWNrKGJ0bik7XHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICBvcHRzLnB1c2gob3B0KTtcclxuICAgIH1cclxuICAgIHRoaXMub3B0aW9ucyA9IG9wdHM7XHJcbiAgICAvLyByZXR1cm4gKHRoaXMuYWRkQ2hpbGRyZW4gIT09IG51bGwgJiYgKHRoaXMudGFibGUubGV2ZWwgPT09IG51bGwgfHwgdGhpcy50YWJsZS5sZXZlbCA+IHRoaXMubGV2ZWwpID8gW3RoaXMuYWRkQ2hpbGRyZW5dIDogW10pXHJcbiAgICAvLyAgIC5jb25jYXQodGhpcy50YWJsZS5vcHRpb25zLmZpbHRlcih4ID0+IHguY29uZGl0aW9uID09IG51bGwgfHxcclxuICAgIC8vICAgICAoeC5jb25kaXRpb24uc3RhcnRzV2l0aCgnIScpID8gIXRoaXMucm93LkRhdGFbeC5jb25kaXRpb24uc3Vic3RyaW5nKDEpXSA6IHRoaXMucm93LkRhdGFbeC5jb25kaXRpb25dKSkubWFwKChvKSA9PiB7XHJcbiAgICAvLyAgICAgY29uc3QgaSA9IEhlbHBlckNsYXNzLmNsb25lKG8pO1xyXG4gICAgLy8gICAgIGlmIChpLnVybCl7XHJcbiAgICAvLyAgICAgICBpLnVybCA9IGkudXJsLnJlcGxhY2UoJ3t9JywgdGhpcy5yb3cuRGF0YS5JZCk7XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gICAgIGkucm93ID0gdGhpcy5yb3cuRGF0YTtcclxuICAgIC8vICAgICBpLmNsYXNzID0gaS5jbGFzcyArICcgbS1oLTUgaC0yNSBkLWliIHZhLW0gZi11JztcclxuICAgIC8vICAgICByZXR1cm4gaTtcclxuICAgIC8vIH0pKS5jb25jYXQodGhpcy50YWJsZS5oYXNTdGF0dXMgPyBbdGhpcy5vcHRTdGF0dXNdIDogW10pXHJcbiAgICAvLyAgICAgLmNvbmNhdCh0aGlzLnRhYmxlLnBlcm1pc3Npb25zLmhhc0FjY2VzcygnVXBkYXRlJykgPyBbdGhpcy5vcHRFZGl0XSA6IFtdKVxyXG4gICAgLy8gICAgIC5jb25jYXQodGhpcy50YWJsZS5wZXJtaXNzaW9ucy5oYXNBY2Nlc3MoJ0RlbGV0ZScpID8gW3RoaXMub3B0RGVsZXRlXSA6IFtdKTtcclxuICB9XHJcbiAgZ2V0Q2VsbChjb2w6IFRhYmxlQ29sbENsYXNzKTogYW55e1xyXG4gICAgY29uc29sZS5sb2coJ2dldENlbGwnKTtcclxuICAgIGNvbnN0IGN2ID0gXy5nZXQodGhpcy5yb3cuRGF0YSwgY29sLm5hbWUpO1xyXG4gICAgaWYgKGNvbC5mdW4gIT0gbnVsbCkge1xyXG4gICAgICByZXR1cm4gY29sLmZ1bih0aGlzLnJvdy5EYXRhKTtcclxuICAgIH0gZWxzZSBpZiAoY29sLmVudW0gIT09IG51bGwpIHtcclxuICAgICAgcmV0dXJuIHRoaXMudGFibGUubChFbnVtVXRpbHMuZ2V0S2V5QnlWYWx1ZShjb2wuZW51bSwgY3YpKTtcclxuICAgIH0gZWxzZSBpZiAoY29sLnR5cGUgPT09IFRhYmxlQ29sbFR5cGUuRGF0ZURpZikge1xyXG4gICAgICByZXR1cm4gSGVscGVyQ2xhc3MuZ2V0RGF0ZURpZih0aGlzLnRhYmxlLmwsIGN2KTtcclxuICAgIH0gZWxzZSBpZiAoY29sLnR5cGUgPT09IFRhYmxlQ29sbFR5cGUuRGF0ZSkge1xyXG4gICAgICByZXR1cm4gSGVscGVyQ2xhc3MuZ2V0RGF0ZShjdik7XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLkRhdGVUaW1lKSB7XHJcbiAgICAgIHJldHVybiBIZWxwZXJDbGFzcy5nZXREYXRlVGltZShjdik7XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLlRpbWUpIHtcclxuICAgICAgcmV0dXJuIEhlbHBlckNsYXNzLmdldFRpbWUoY3YpO1xyXG4gICAgfSBlbHNlIGlmIChjb2wudHlwZSA9PT0gVGFibGVDb2xsVHlwZS5Db2xvcikge1xyXG4gICAgICByZXR1cm4gJzxkaXYgY2xhc3M9XCJjb2xvclwiIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogJyArIGN2ICsgJzsgY29sb3I6ICcgKyBIZWxwZXJDbGFzcy5nZXRDb2xvckJ5QmdDb2xvcihjdikgKyAnXCI+JyArIGN2ICsgJzwvZGl2Pic7XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLlVybCkge1xyXG4gICAgICByZXR1cm4gJzxhIHRhcmdldD1cIl9ibGFua1wiIGNsYXNzPVwibHRyXCIgaHJlZj1cIicgKyBjdiArICdcIj4nICsgY3YgKyAnPC9hPic7XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLkltYWdlKSB7XHJcbiAgICAgIHJldHVybiAnPGltZyBjbGFzcz1cImgtMTAwXCIgYWx0PVwiXCIgc3JjPVwiJyArIHRoaXMuc2VydmljZS5lbnZpcm9ubWVudC51cmwgKyBjdiArICdcIi8+JztcclxuICAgIH0gZWxzZSBpZiAoY29sLnR5cGUgPT09IFRhYmxlQ29sbFR5cGUuRmlsZVNpemUpIHtcclxuICAgICAgcmV0dXJuIEhlbHBlckNsYXNzLmdldEZpbGVTaXplKGN2KTtcclxuICAgIH0gZWxzZSBpZiAoY29sLnR5cGUgPT09IFRhYmxlQ29sbFR5cGUuUHJpY2UpIHtcclxuICAgICAgcmV0dXJuIGN2LnRvTG9jYWxlU3RyaW5nKCkgKyAnICcgKyB0aGlzLnRhYmxlLmwoJ1JpYWwnKTtcclxuICAgIH0gZWxzZSBpZiAoY29sLnR5cGUgPT09IFRhYmxlQ29sbFR5cGUuUGxhcXVlKSB7XHJcbiAgICAgIGNvbnN0IHBhcnRzID0gY3Yuc3BsaXQoJ18nKTtcclxuICAgICAgaWYgKHBhcnRzLmxlbmd0aCA9PT0gNCkge1xyXG4gICAgICAgIHJldHVybiAnPGRpdiBjbGFzcz1cInBsYXF1ZScgKyAocGFydHNbMV0gPT09ICfYuScgPyAnIHAnIDogJycpICsgKHBhcnRzWzFdID09PSAn2KfZhNmBJyA/ICcgZycgOiAnJykgKyAnXCI+JyArXHJcbiAgICAgICAgICAnPGRpdiBjbGFzcz1cInBhcnQxXCI+JyArIHBhcnRzWzBdICsgJzwvZGl2PicgK1xyXG4gICAgICAgICAgJzxkaXYgY2xhc3M9XCJwYXJ0MlwiPicgKyBwYXJ0c1sxXSArICc8L2Rpdj4nICtcclxuICAgICAgICAgICc8ZGl2IGNsYXNzPVwicGFydDNcIj4nICsgcGFydHNbMl0gKyAnPC9kaXY+JyArXHJcbiAgICAgICAgICAnPGRpdiBjbGFzcz1cInBhcnQ0XCI+JyArIHBhcnRzWzNdICsgJzwvZGl2PicgK1xyXG4gICAgICAgICAgJzwvZGl2Pic7XHJcbiAgICAgIH0gZWxzZSBpZiAocGFydHMubGVuZ3RoID09PSAyICYmIHBhcnRzLmV2ZXJ5KHggPT4gL15bMC05XSskLy50ZXN0KHgpKSl7XHJcbiAgICAgICAgcmV0dXJuICc8ZGl2IGNsYXNzPVwicGxhcXVlIHBsYXF1ZS1tXCI+JyArXHJcbiAgICAgICAgICAnPGRpdiBjbGFzcz1cInBhcnQxXCI+JyArIHBhcnRzWzBdICsgJzwvZGl2PicgK1xyXG4gICAgICAgICAgJzxkaXYgY2xhc3M9XCJwYXJ0MlwiPicgKyBwYXJ0c1sxXSArICc8L2Rpdj4nICtcclxuICAgICAgICAgICc8L2Rpdj4nO1xyXG4gICAgICB9IGVsc2UgaWYgKHBhcnRzLmxlbmd0aCA9PT0gMil7XHJcbiAgICAgICAgcmV0dXJuICc8ZGl2IGNsYXNzPVwicGxhcXVlIHBsYXF1ZS1mXCI+JyArXHJcbiAgICAgICAgICAnPGRpdiBjbGFzcz1cInBhcnQxXCI+JyArIHBhcnRzWzBdICsgJzwvZGl2PicgK1xyXG4gICAgICAgICAgJzxkaXYgY2xhc3M9XCJwYXJ0MlwiPicgKyBwYXJ0c1sxXSArICc8L2Rpdj4nICtcclxuICAgICAgICAgICc8L2Rpdj4nO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLlBsYXF1ZVRleHQpIHtcclxuICAgICAgY29uc3QgcGFydHMgPSBjdi5zcGxpdCgnXycpO1xyXG4gICAgICBpZiAocGFydHMubGVuZ3RoID09PSA0KXtcclxuICAgICAgICByZXR1cm4gYDxkaXYgY2xhc3M9XCJsdHJcIj4ke3BhcnRzWzBdfSAke3BhcnRzWzFdfSZscm07ICR7cGFydHNbMl19ICR7cGFydHNbM119PC9kaXY+YDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMudGFibGUubChjdik7XHJcbiAgfVxyXG4gIGdldENvbChuKTogc3RyaW5ne1xyXG4gICAgbGV0IGMgPSB0aGlzLnJvdy5EYXRhO1xyXG4gICAgbi5zcGxpdCgnLicpLmZvckVhY2goKHgpID0+IHtcclxuICAgICAgYyA9IGNbeF07XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBjO1xyXG4gIH1cclxuICBlZGl0KG9wdDogSW5wdXRDbGFzcywgb3B0aW9uOiBQZXJtaXNzaW9uQ2xhc3MpOiB2b2lke1xyXG4gICAgaWYgKHRoaXMudGFibGUucGVybWlzc2lvbnMuVHlwZSA9PT0gUGVybWlzc2lvblR5cGVFbnVtLkZvcm0pe1xyXG4gICAgICB0aGlzLnRhYmxlLmZvcm0ubmFtZSA9IG9wdC5uYW1lO1xyXG4gICAgICB0aGlzLnRhYmxlLmZvcm0uc2V0RGF0YSh0aGlzLnJvdy5EYXRhKTtcclxuICAgICAgdGhpcy50YWJsZS5mb3JtLnNldEJ1dHRvbnModGhpcy50YWJsZS5mb3JtLm9uVG9wLCB0cnVlLCB0aGlzLnJvdy5EYXRhLklkKTtcclxuICAgICAgdGhpcy50YWJsZS5mb3JtLmlucHV0cy5maWx0ZXIoeCA9PiB4LmluRWRpdERpc2FibGVkKS5mb3JFYWNoKHggPT4geC5kaXNhYmxlZCA9IHRydWUpO1xyXG4gICAgICB0aGlzLnRhYmxlLmZvcm0uaW5wdXRzLmZpbHRlcih4ID0+ICF4LmluRWRpdFZpc2libGUpLmZvckVhY2goeCA9PiB4LnZpc2libGUgPSBmYWxzZSk7XHJcbiAgICB9ZWxzZXtcclxuICAgICAgbmV3IFJlcXVlc3RDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCB0aGlzLnRhYmxlLmwpLnNlbmQodGhpcy5nZXRPcHRpb25Vcmwob3B0aW9uLlVybC5yZXBsYWNlKCd1cGRhdGUnLCAnZ2V0JyksIHRoaXMudGFibGUucGVybWlzc2lvbnMuUmVsYXRlZElkLCB0aGlzLnJvdy5EYXRhLklkKSwgTWV0aG9kLlBvc3QsXHJcbiAgICAgICAgbnVsbCwgb3B0LCAocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0ubmFtZSA9IG9wdC5uYW1lO1xyXG4gICAgICAgICAgdGhpcy50YWJsZS5mb3JtLnNldEJ1dHRvbnModGhpcy50YWJsZS5mb3JtLm9uVG9wLCB0cnVlLCB0aGlzLnJvdy5EYXRhLklkKTtcclxuICAgICAgICAgIHRoaXMudGFibGUuZm9ybS5zZXREYXRhKHJlc3VsdCk7XHJcbiAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0uaW5wdXRzLmZpbHRlcih4ID0+IHguaW5FZGl0RGlzYWJsZWQpLmZvckVhY2goeCA9PiB4LmRpc2FibGVkID0gdHJ1ZSk7XHJcbiAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0uaW5wdXRzLmZpbHRlcih4ID0+ICF4LmluRWRpdFZpc2libGUpLmZvckVhY2goeCA9PiB4LnZpc2libGUgPSBmYWxzZSk7XHJcbiAgICAgICAgICBpZiAodGhpcy50YWJsZS5tb2RhbCl7XHJcbiAgICAgICAgICAgIHRoaXMudGFibGUubW9kYWwuc2hvdygpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuICBnZXRDaGlsZHJlbigpOiBhbnlbXXtcclxuICAgIHJldHVybiB0aGlzLnJvdy5EYXRhLklkID8gdGhpcy50YWJsZS5yb3dzLmZpbHRlcih4ID0+IHguRGF0YS5QYXJlbnRJZCA9PT0gdGhpcy5yb3cuRGF0YS5JZCkgOiBbXTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -99,12 +99,12 @@ export class TableComponent {
|
|
|
99
99
|
// @ts-ignore
|
|
100
100
|
$(this.rows.nativeElement).sortable({
|
|
101
101
|
axis: 'y',
|
|
102
|
-
items: '.row
|
|
103
|
-
handle: '> .
|
|
102
|
+
items: '.row',
|
|
103
|
+
handle: '> .handle',
|
|
104
104
|
update: () => {
|
|
105
105
|
const data = [];
|
|
106
106
|
// @ts-ignore
|
|
107
|
-
$(this.rows.nativeElement).sortable('toArray').forEach(x => {
|
|
107
|
+
$(this.rows.nativeElement).sortable('toArray', { attribute: 'data-id' }).forEach(x => {
|
|
108
108
|
console.log(x);
|
|
109
109
|
data.push(parseInt(x, 10));
|
|
110
110
|
});
|
|
@@ -171,4 +171,4 @@ TableComponent.propDecorators = {
|
|
|
171
171
|
exportDropDown: [{ type: ViewChild, args: ['exportDropDown',] }],
|
|
172
172
|
confirm: [{ type: ViewChild, args: ['confirm',] }]
|
|
173
173
|
};
|
|
174
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkQ6L1Byb2plY3RzL1BzVG9vbGtpdC9VSS9wcm9qZWN0cy9wcy10b29sa2l0LXVpL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFdkMsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQzNGLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNwRCxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUU1QixPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDckQsT0FBTywwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDekQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBTy9ELE1BQU0sT0FBTyxjQUFjO0lBbUJ6QixZQUFtQixNQUFjO1FBQWQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQWZqQyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQVV4QyxXQUFNLEdBQWUsSUFBSSxDQUFDO1FBSTFCLFdBQU0sR0FBZSxJQUFJLENBQUM7SUFFMUIsQ0FBQztJQWZELElBQUksSUFBSSxLQUFzQixPQUFPLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDakQsSUFBSSxlQUFlLEtBQTRCLE9BQU8sZUFBZSxDQUFDLENBQUMsQ0FBQztJQUN4RSxJQUFJLE9BQU8sS0FBMEIsT0FBTyxhQUFh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QUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDckcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUNELFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsWUFBWSxVQUFVLENBQUMsQ0FBQztJQUN4RSxDQUFDOzs7WUFsS0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxXQUFXO2dCQUNyQiw2cUhBQXFDOzthQUV0Qzs7O1lBZk8sTUFBTTs7O29CQWlCWCxLQUFLO3lCQUVMLE1BQU07bUJBS04sU0FBUyxTQUFDLE1BQU07dUJBQ2hCLFNBQVMsU0FBQyxVQUFVOzZCQUNwQixTQUFTLFNBQUMsZ0JBQWdCO3NCQUMxQixTQUFTLFNBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtSb3V0ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7VGFibGVDbGFzc30gZnJvbSAnLi4vLi4vY2xhc3Nlcy90YWJsZS5jbGFzcyc7XHJcbmltcG9ydCB7SW5wdXRUeXBlLCBNZXRob2QsIFRhYmxlQ29sbFR5cGUsIFRhYmxlT3B0aW9uVHlwZX0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9lbnVtLmNsYXNzJztcclxuaW1wb3J0IHtJbnB1dENsYXNzfSBmcm9tICcuLi8uLi9jbGFzc2VzL2Zvcm0uY2xhc3MnO1xyXG5pbXBvcnQgKiBhcyAkIGZyb20gJ2pxdWVyeSc7XHJcbmltcG9ydCB7Q29uZmlybUNvbXBvbmVudH0gZnJvbSAnLi4vY29uZmlybS9jb25maXJtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7TW9kYWxDbGFzc30gZnJvbSAnLi4vLi4vY2xhc3Nlcy9tb2RhbC5jbGFzcyc7XHJcbmltcG9ydCAnanF1ZXJ5LXVpLWRpc3QvanF1ZXJ5LXVpJztcclxuaW1wb3J0IHtSZXF1ZXN0Q2xhc3N9IGZyb20gJy4uLy4uL2NsYXNzZXMvcmVxdWVzdC5jbGFzcyc7XHJcbmltcG9ydCB7UGVybWlzc2lvbkNsYXNzfSBmcm9tICcuLi8uLi9jbGFzc2VzL3Blcm1pc3Npb24uY2xhc3MnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItdGFibGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJsZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdGFibGUuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdHtcclxuICBASW5wdXQoKVxyXG4gIHRhYmxlOiBUYWJsZUNsYXNzO1xyXG4gIEBPdXRwdXQoKVxyXG4gIGNoYW5nZVJvd3MgPSBuZXcgRXZlbnRFbWl0dGVyPG9iamVjdD4oKTtcclxuICBnZXQgdHlwZSgpOiB0eXBlb2YgSW5wdXRUeXBleyByZXR1cm4gSW5wdXRUeXBlOyB9XHJcbiAgZ2V0IHRhYmxlT3B0aW9uVHlwZSgpOiB0eXBlb2YgVGFibGVPcHRpb25UeXBleyByZXR1cm4gVGFibGVPcHRpb25UeXBlOyB9XHJcbiAgZ2V0IGNvbFR5cGUoKTogdHlwZW9mIFRhYmxlQ29sbFR5cGV7IHJldHVybiBUYWJsZUNvbGxUeXBlOyB9XHJcbiAgQFZpZXdDaGlsZCgncm93cycpIHJvd3M6IEVsZW1lbnRSZWY7XHJcbiAgQFZpZXdDaGlsZCgndGFibGVEaXYnKSB0YWJsZURpdjogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCdleHBvcnREcm9wRG93bicpIGV4cG9ydERyb3BEb3duOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ2NvbmZpcm0nKSBjb25maXJtOiBDb25maXJtQ29tcG9uZW50O1xyXG4gIGxvYWRJY29uOiBJbnB1dENsYXNzO1xyXG4gIHNpemVJY29uOiBJbnB1dENsYXNzO1xyXG4gIHNlbGVjdDogSW5wdXRDbGFzcyA9IG51bGw7XHJcbiAgb3B0RGVsZXRlOiBJbnB1dENsYXNzO1xyXG4gIHJlbG9hZDogSW5wdXRDbGFzcztcclxuICBtYXhpbXVtOiBJbnB1dENsYXNzO1xyXG4gIGV4cG9ydDogSW5wdXRDbGFzcyA9IG51bGw7XHJcbiAgY29uc3RydWN0b3IocHVibGljIHJvdXRlcjogUm91dGVyKSB7XHJcbiAgfVxyXG4gIG9wdGlvbnM6IElucHV0Q2xhc3NbXTtcclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMubG9hZEljb24gPSBuZXcgSW5wdXRDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCBudWxsLCAnTG9hZEljb24nKTtcclxuICAgIHRoaXMuc2l6ZUljb24gPSBuZXcgSW5wdXRDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCBudWxsLCAnU2l6ZUljb24nKTtcclxuICAgIGlmICh0aGlzLnRhYmxlLmhhc0NoaWxkcmVuKXtcclxuICAgICAgdGhpcy50YWJsZS5jb2xzLmZvckVhY2goeCA9PiB4LnNvcnQgPSBmYWxzZSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnJlbG9hZCA9IG5ldyBJbnB1dENsYXNzKHRoaXMudGFibGUuZW52aXJvbm1lbnQsIHRoaXMudGFibGUubCwgJ1JlbG9hZCcsICdmYS1kdW90b25lIGZhLXN5bmMtYWx0JywgSW5wdXRUeXBlLkljb24sICdtLXItMTAtcCcpO1xyXG4gICAgdGhpcy5tYXhpbXVtID0gbmV3IElucHV0Q2xhc3ModGhpcy50YWJsZS5lbnZpcm9ubWVudCwgdGhpcy50YWJsZS5sLCAnTWF4aW11bScsICdmYS1kdW90b25lIGZhLWFycm93cy1tYXhpbWl6ZScsXHJcbiAgICAgIElucHV0VHlwZS5JY29uLCAnbS1yLTEwLXAnKTtcclxuICAgIHRoaXMub3B0RGVsZXRlID0gbmV3IElucHV0Q2xhc3ModGhpcy50YWJsZS5lbnZpcm9ubWVudCwgdGhpcy50YWJsZS5sLCAnRGVsZXRlJywgJ2ZhLWR1b3RvbmUgZmEtdHJhc2gnLCBJbnB1dFR5cGUuSWNvbiwgJ3JlZCBoLTI1IG0taC01IGQtaWIgdmEtbSBmLXUnKTtcclxuICAgIGZvciAoY29uc3QgYyBvZiB0aGlzLnRhYmxlLmNvbHMuZmlsdGVyKHggPT4geC53aXRoU2VhcmNoKSl7XHJcbiAgICAgIGMuc2VhcmNoID0gbmV3IElucHV0Q2xhc3ModGhpcy50YWJsZS5lbnZpcm9ubWVudCwgdGhpcy50YWJsZS5sLCBjLm5hbWUsXHJcbiAgICAgICAgbnVsbCwgKGMudHlwZSA9PT0gVGFibGVDb2xsVHlwZS5EYXRlIHx8IGMudHlwZSA9PT0gVGFibGVDb2xsVHlwZS5EYXRlVGltZSkgPyBJbnB1dFR5cGUuRGF0ZSA6IGMudHlwZSA9PT0gVGFibGVDb2xsVHlwZS5QcmljZSA/IElucHV0VHlwZS5QcmljZSA6IElucHV0VHlwZS5UZXh0LCAnaC0yNSB0YWJsZS1zZWFyY2gnKTtcclxuICAgICAgYy5zZWFyY2guZGlzcGxheUxhYmVsID0gZmFsc2U7XHJcbiAgICAgIGMuc2VhcmNoLm9uQ2hhbmdlID0gKCkgPT4ge1xyXG4gICAgICAgIHRoaXMudGFibGUubG9hZCgpO1xyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMudGFibGUuc29ydGFibGUpe1xyXG4gICAgICB0aGlzLnRhYmxlLnBlclBhZ2UgPSAtMTtcclxuICAgICAgdGhpcy50YWJsZS5vbkxvYWQgPSAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5zZXRTb3J0YWJsZSgpO1xyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgdGhpcy50YWJsZS5zZXQodGhpcy5jaGFuZ2VSb3dzKTtcclxuICAgIGlmICh0aGlzLnRhYmxlLnNlYXJjaEZvcm0pe1xyXG4gICAgICB0aGlzLnRhYmxlLnNlYXJjaEZvcm0uZGlzcGxheUxhYmVsID0gZmFsc2U7XHJcbiAgICAgIHRoaXMudGFibGUuc2VhcmNoRm9ybS5jbGFzcyA9ICh0aGlzLnRhYmxlLnNlYXJjaEZvcm0uY2xhc3MgPyB0aGlzLnRhYmxlLnNlYXJjaEZvcm0uY2xhc3MgOiAnJykgKyAnIHAtMCc7XHJcbiAgICAgIHRoaXMudGFibGUuc2VhcmNoRm9ybS5pbnB1dHMuZm9yRWFjaCh4ID0+IHtcclxuICAgICAgICB4LnJlcXVpcmVkID0gZmFsc2U7XHJcbiAgICAgICAgeC5kaXNwbGF5TGFiZWwgPSBmYWxzZTtcclxuICAgICAgICB4LndpdGhDbGVhciA9IHRydWU7XHJcbiAgICAgICAgeC5jbGFzcyA9IHguY2xhc3MgKyAnIGgtMzAgc2VhcmNoLWZvcm0taW5wJztcclxuICAgICAgICB4Lm9uQ2hhbmdlID0gKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy50YWJsZS5sb2FkKCk7XHJcbiAgICAgICAgfTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLmdldE9wdGlvbnMoKTtcclxuICAgIHRoaXMucmVsb2FkLm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgIHRoaXMudGFibGUubG9hZCh0aGlzLnJlbG9hZCk7XHJcbiAgICB9O1xyXG4gICAgdGhpcy5tYXhpbXVtLm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgICQodGhpcy50YWJsZURpdi5uYXRpdmVFbGVtZW50KS50b2dnbGVDbGFzcygnbWF4aW11bScpO1xyXG4gICAgICB0aGlzLm1heGltdW0uaWNvbiA9IHRoaXMubWF4aW11bS5uYW1lID09PSAnTWluaW11bScgPyAnZmEtZHVvdG9uZSBmYS1hcnJvd3MtbWF4aW1pemUnIDogJ2ZhLWR1b3RvbmUgZmEtYXJyb3dzLW1pbmltaXplJztcclxuICAgICAgdGhpcy5tYXhpbXVtLm5hbWUgPSB0aGlzLm1heGltdW0ubmFtZSA9PT0gJ01pbmltdW0nID8gJ01heGltdW0nIDogJ01pbmltdW0nO1xyXG4gICAgfTtcclxuICAgIHRoaXMub3B0RGVsZXRlLm9uQ2xpY2sgPSAoaSkgPT4ge1xyXG4gICAgICBpZiAodGhpcy50YWJsZS5mb3JtKXtcclxuICAgICAgICB0aGlzLnRhYmxlLmZvcm0uY2xlYXIoKTtcclxuICAgICAgfVxyXG4gICAgICBjb25zdCBkYXRhID0ge1xyXG4gICAgICAgIGlkczogdGhpcy50YWJsZS5yb3dzLmZpbHRlcih4ID0+IHguc2VsZWN0ZWQpLm1hcCh4ID0+IHguaWQpXHJcbiAgICAgIH07XHJcbiAgICAgIHRoaXMuY29uZmlybS5zaG93KHRoaXMudGFibGUubCgnRGVsZXRlQ29uZmlybScpLCB0aGlzLnRhYmxlLnVybCArICcvRGVsZXRlLycgKyAwLCBkYXRhLCAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy50YWJsZS5sb2FkKG51bGwpO1xyXG4gICAgICB9KTtcclxuICAgIH07XHJcbiAgICB0aGlzLnRhYmxlLnNob3dDb25maXJtID0gKGw6IHN0cmluZywgdXJsOiBzdHJpbmcsIGRhdGEsIGFjY2VwdDogKGJ0bjogSW5wdXRDbGFzcykgPT4gdm9pZCkgPT4ge1xyXG4gICAgICB0aGlzLmNvbmZpcm0uc2hvdyhsLCB1cmwsIGRhdGEsIGFjY2VwdCk7XHJcbiAgICB9O1xyXG4gIH1cclxuICBhbGxTZWxlY3RlZCgpOiBib29sZWFue1xyXG4gICAgcmV0dXJuIHRoaXMudGFibGUucm93cy5maWx0ZXIoeCA9PiAheC5zZWxlY3RlZCkubGVuZ3RoID09PSAwO1xyXG4gIH1cclxuICBpc1NlbGVjdGVkKCk6IGJvb2xlYW57XHJcbiAgICByZXR1cm4gdGhpcy50YWJsZS5yb3dzLmZpbHRlcih4ID0+IHguc2VsZWN0ZWQpLmxlbmd0aCA+IDA7XHJcbiAgfVxyXG4gIHNlbGVjdEFsbCgpOiB2b2lke1xyXG4gICAgaWYgKHRoaXMudGFibGUucm93cy5maWx0ZXIoeCA9PiAheC5zZWxlY3RlZCkubGVuZ3RoID09PSAwKXtcclxuICAgICAgdGhpcy50YWJsZS5yb3dzLmZvckVhY2goeCA9PiB4LnNlbGVjdGVkID0gZmFsc2UpO1xyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMudGFibGUucm93cy5mb3JFYWNoKHggPT4geC5zZWxlY3RlZCA9IHRydWUpO1xyXG4gICAgfVxyXG4gIH1cclxuICBnZXRPcHRpb25zKCk6IElucHV0Q2xhc3NbXXtcclxuICAgIHJldHVybiBbXTtcclxuICB9XHJcbiAgc2V0U29ydGFibGUoKTogdm9pZHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICQodGhpcy5yb3dzLm5hdGl2ZUVsZW1lbnQpLnNvcnRhYmxlKHtcclxuICAgICAgICBheGlzOiAneScsXHJcbiAgICAgICAgaXRlbXM6ICcucm93LWNvbicsXHJcbiAgICAgICAgaGFuZGxlOiAnPiAucm93ID4gLmhhbmRsZScsXHJcbiAgICAgICAgdXBkYXRlOiAoKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBkYXRhID0gW107XHJcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgICAkKHRoaXMucm93cy5uYXRpdmVFbGVtZW50KS5zb3J0YWJsZSgndG9BcnJheScpLmZvckVhY2goeCA9PiB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKHgpO1xyXG4gICAgICAgICAgICBkYXRhLnB1c2gocGFyc2VJbnQoeCwgMTApKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgY29uc3QgcCA9IG5ldyBQZXJtaXNzaW9uQ2xhc3MoKTtcclxuICAgICAgICAgIHAuQXJlYSA9IHRoaXMudGFibGUucGVybWlzc2lvbnMuQXJlYTtcclxuICAgICAgICAgIHAuQ29udHJvbGxlciA9IHRoaXMudGFibGUucGVybWlzc2lvbnMuQ29udHJvbGxlcjtcclxuICAgICAgICAgIHAuQWN0aW9uID0gJ3NvcnQnO1xyXG4gICAgICAgICAgbmV3IFJlcXVlc3RDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCB0aGlzLnRhYmxlLmwpLnNlbmQocC5nZXRVcmwoKS50b0xvd2VyQ2FzZSgpLCBNZXRob2QuUG9zdCwge0lkczogZGF0YX0sIG51bGwsICgpID0+IHtcclxuICAgICAgICAgICAgaWYgKHRoaXMudGFibGUub25Tb3J0KXtcclxuICAgICAgICAgICAgICB0aGlzLnRhYmxlLm9uU29ydCgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pLmRpc2FibGVTZWxlY3Rpb24oKTtcclxuICAgIH0sIDUwMCk7XHJcbiAgfVxyXG4gIGdldFJvd3MoKTogYW55W117XHJcbiAgICBjb25zdCBjID0gdGhpcy50YWJsZS5yb3dzLmZpbHRlcih4ID0+ICF4LkRhdGEuUGFyZW50SWQpO1xyXG4gICAgYy5mb3JFYWNoKCh4LCBpKSA9PiB4LlJvd051bSA9IGMubGVuZ3RoIC0gaSArIDEpO1xyXG4gICAgcmV0dXJuIGM7XHJcbiAgfVxyXG4gIC8vIGdldE9wdGlvbk1vZGFscygpOiBJbnB1dENsYXNzW117XHJcbiAgLy8gICBjb25zdCBtb2RhbHMgPSBbXTtcclxuICAvLyAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKHRoaXMudGFibGUub3B0aW9uQWN0aW9ucykpIHtcclxuICAvLyAgICAgaWYgKHRoaXMudGFibGUub3B0aW9uQWN0aW9uc1trZXldLm1vZGFsKXtcclxuICAvLyAgICAgICBtb2RhbHMucHVzaCh0aGlzLnRhYmxlLm9wdGlvbkFjdGlvbnNba2V5XS5tb2RhbCk7XHJcbiAgLy8gICAgIH1cclxuICAvLyAgIH1cclxuICAvLyAgIHJldHVybiBtb2RhbHM7XHJcbiAgLy8gfVxyXG4gIG9uQ2hhbmdlUm93cyhlKTogdm9pZHtcclxuICAgIHJldHVybiB0aGlzLmNoYW5nZVJvd3MuZW1pdChlKTtcclxuICB9XHJcbiAgb25Db25maXJtU2hvdyhlKTogdm9pZHtcclxuICAgIHRoaXMuY29uZmlybS5zaG93KHRoaXMudGFibGUubChlLmFjdGlvbiArICdDb25maXJtJyksIGUudXJsLCBudWxsLCBlLmFjY2VwdCk7XHJcbiAgfVxyXG4gIGNoYW5nZVNvcnQoZSwgczogc3RyaW5nKTogdm9pZHtcclxuICAgIGlmICgkKGUudGFyZ2V0KS5jbG9zZXN0KCcuaGVhZGVyLXNlYXJjaCcpLmhhc0NsYXNzKCdoZWFkZXItc2VhcmNoJykpe1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLnRhYmxlLnNvcnRUeXBlID0gdGhpcy50YWJsZS5zb3J0ID09PSBzID8gdGhpcy50YWJsZS5zb3J0VHlwZSA9PT0gJ0FTQycgPyAnREVTQycgOiAnQVNDJyA6ICdBU0MnO1xyXG4gICAgdGhpcy50YWJsZS5zb3J0ID0gcztcclxuICAgIHRoaXMudGFibGUubG9hZCgpO1xyXG4gIH1cclxuICBnZXRNb2RhbHMoKTogTW9kYWxDbGFzc1tde1xyXG4gICAgcmV0dXJuIHRoaXMudGFibGUub3B0aW9uc0FjdGlvbnMuZmlsdGVyKHggPT4geCBpbnN0YW5jZW9mIE1vZGFsQ2xhc3MpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
174
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkQ6L1Byb2plY3RzL1BzVG9vbGtpdC9VSS9wcm9qZWN0cy9wcy10b29sa2l0LXVpL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFdkMsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQzNGLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNwRCxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUU1QixPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDckQsT0FBTywwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDekQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBTy9ELE1BQU0sT0FBTyxjQUFjO0lBbUJ6QixZQUFtQixNQUFjO1FBQWQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQWZqQyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQVV4QyxXQUFNLEdBQWUsSUFBSSxDQUFDO1FBSTFCLFdBQU0sR0FBZSxJQUFJLENBQUM7SUFFMUIsQ0FBQztJQWZELElBQUksSUFBSSxLQUFzQixPQUFPLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDakQsSUFBSSxlQUFlLEtBQTRCLE9BQU8sZUFBZSxDQUFDLENBQUMsQ0FBQztJQUN4RSxJQUFJLE9BQU8sS0FBMEIsT0FBTyxhQUFh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LEtBQUssQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDckcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUNELFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsWUFBWSxVQUFVLENBQUMsQ0FBQztJQUN4RSxDQUFDOzs7WUFsS0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxXQUFXO2dCQUNyQiw2cUhBQXFDOzthQUV0Qzs7O1lBZk8sTUFBTTs7O29CQWlCWCxLQUFLO3lCQUVMLE1BQU07bUJBS04sU0FBUyxTQUFDLE1BQU07dUJBQ2hCLFNBQVMsU0FBQyxVQUFVOzZCQUNwQixTQUFTLFNBQUMsZ0JBQWdCO3NCQUMxQixTQUFTLFNBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtSb3V0ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7VGFibGVDbGFzc30gZnJvbSAnLi4vLi4vY2xhc3Nlcy90YWJsZS5jbGFzcyc7XHJcbmltcG9ydCB7SW5wdXRUeXBlLCBNZXRob2QsIFRhYmxlQ29sbFR5cGUsIFRhYmxlT3B0aW9uVHlwZX0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9lbnVtLmNsYXNzJztcclxuaW1wb3J0IHtJbnB1dENsYXNzfSBmcm9tICcuLi8uLi9jbGFzc2VzL2Zvcm0uY2xhc3MnO1xyXG5pbXBvcnQgKiBhcyAkIGZyb20gJ2pxdWVyeSc7XHJcbmltcG9ydCB7Q29uZmlybUNvbXBvbmVudH0gZnJvbSAnLi4vY29uZmlybS9jb25maXJtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7TW9kYWxDbGFzc30gZnJvbSAnLi4vLi4vY2xhc3Nlcy9tb2RhbC5jbGFzcyc7XHJcbmltcG9ydCAnanF1ZXJ5LXVpLWRpc3QvanF1ZXJ5LXVpJztcclxuaW1wb3J0IHtSZXF1ZXN0Q2xhc3N9IGZyb20gJy4uLy4uL2NsYXNzZXMvcmVxdWVzdC5jbGFzcyc7XHJcbmltcG9ydCB7UGVybWlzc2lvbkNsYXNzfSBmcm9tICcuLi8uLi9jbGFzc2VzL3Blcm1pc3Npb24uY2xhc3MnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItdGFibGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJsZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdGFibGUuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdHtcclxuICBASW5wdXQoKVxyXG4gIHRhYmxlOiBUYWJsZUNsYXNzO1xyXG4gIEBPdXRwdXQoKVxyXG4gIGNoYW5nZVJvd3MgPSBuZXcgRXZlbnRFbWl0dGVyPG9iamVjdD4oKTtcclxuICBnZXQgdHlwZSgpOiB0eXBlb2YgSW5wdXRUeXBleyByZXR1cm4gSW5wdXRUeXBlOyB9XHJcbiAgZ2V0IHRhYmxlT3B0aW9uVHlwZSgpOiB0eXBlb2YgVGFibGVPcHRpb25UeXBleyByZXR1cm4gVGFibGVPcHRpb25UeXBlOyB9XHJcbiAgZ2V0IGNvbFR5cGUoKTogdHlwZW9mIFRhYmxlQ29sbFR5cGV7IHJldHVybiBUYWJsZUNvbGxUeXBlOyB9XHJcbiAgQFZpZXdDaGlsZCgncm93cycpIHJvd3M6IEVsZW1lbnRSZWY7XHJcbiAgQFZpZXdDaGlsZCgndGFibGVEaXYnKSB0YWJsZURpdjogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCdleHBvcnREcm9wRG93bicpIGV4cG9ydERyb3BEb3duOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ2NvbmZpcm0nKSBjb25maXJtOiBDb25maXJtQ29tcG9uZW50O1xyXG4gIGxvYWRJY29uOiBJbnB1dENsYXNzO1xyXG4gIHNpemVJY29uOiBJbnB1dENsYXNzO1xyXG4gIHNlbGVjdDogSW5wdXRDbGFzcyA9IG51bGw7XHJcbiAgb3B0RGVsZXRlOiBJbnB1dENsYXNzO1xyXG4gIHJlbG9hZDogSW5wdXRDbGFzcztcclxuICBtYXhpbXVtOiBJbnB1dENsYXNzO1xyXG4gIGV4cG9ydDogSW5wdXRDbGFzcyA9IG51bGw7XHJcbiAgY29uc3RydWN0b3IocHVibGljIHJvdXRlcjogUm91dGVyKSB7XHJcbiAgfVxyXG4gIG9wdGlvbnM6IElucHV0Q2xhc3NbXTtcclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMubG9hZEljb24gPSBuZXcgSW5wdXRDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCBudWxsLCAnTG9hZEljb24nKTtcclxuICAgIHRoaXMuc2l6ZUljb24gPSBuZXcgSW5wdXRDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCBudWxsLCAnU2l6ZUljb24nKTtcclxuICAgIGlmICh0aGlzLnRhYmxlLmhhc0NoaWxkcmVuKXtcclxuICAgICAgdGhpcy50YWJsZS5jb2xzLmZvckVhY2goeCA9PiB4LnNvcnQgPSBmYWxzZSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnJlbG9hZCA9IG5ldyBJbnB1dENsYXNzKHRoaXMudGFibGUuZW52aXJvbm1lbnQsIHRoaXMudGFibGUubCwgJ1JlbG9hZCcsICdmYS1kdW90b25lIGZhLXN5bmMtYWx0JywgSW5wdXRUeXBlLkljb24sICdtLXItMTAtcCcpO1xyXG4gICAgdGhpcy5tYXhpbXVtID0gbmV3IElucHV0Q2xhc3ModGhpcy50YWJsZS5lbnZpcm9ubWVudCwgdGhpcy50YWJsZS5sLCAnTWF4aW11bScsICdmYS1kdW90b25lIGZhLWFycm93cy1tYXhpbWl6ZScsXHJcbiAgICAgIElucHV0VHlwZS5JY29uLCAnbS1yLTEwLXAnKTtcclxuICAgIHRoaXMub3B0RGVsZXRlID0gbmV3IElucHV0Q2xhc3ModGhpcy50YWJsZS5lbnZpcm9ubWVudCwgdGhpcy50YWJsZS5sLCAnRGVsZXRlJywgJ2ZhLWR1b3RvbmUgZmEtdHJhc2gnLCBJbnB1dFR5cGUuSWNvbiwgJ3JlZCBoLTI1IG0taC01IGQtaWIgdmEtbSBmLXUnKTtcclxuICAgIGZvciAoY29uc3QgYyBvZiB0aGlzLnRhYmxlLmNvbHMuZmlsdGVyKHggPT4geC53aXRoU2VhcmNoKSl7XHJcbiAgICAgIGMuc2VhcmNoID0gbmV3IElucHV0Q2xhc3ModGhpcy50YWJsZS5lbnZpcm9ubWVudCwgdGhpcy50YWJsZS5sLCBjLm5hbWUsXHJcbiAgICAgICAgbnVsbCwgKGMudHlwZSA9PT0gVGFibGVDb2xsVHlwZS5EYXRlIHx8IGMudHlwZSA9PT0gVGFibGVDb2xsVHlwZS5EYXRlVGltZSkgPyBJbnB1dFR5cGUuRGF0ZSA6IGMudHlwZSA9PT0gVGFibGVDb2xsVHlwZS5QcmljZSA/IElucHV0VHlwZS5QcmljZSA6IElucHV0VHlwZS5UZXh0LCAnaC0yNSB0YWJsZS1zZWFyY2gnKTtcclxuICAgICAgYy5zZWFyY2guZGlzcGxheUxhYmVsID0gZmFsc2U7XHJcbiAgICAgIGMuc2VhcmNoLm9uQ2hhbmdlID0gKCkgPT4ge1xyXG4gICAgICAgIHRoaXMudGFibGUubG9hZCgpO1xyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMudGFibGUuc29ydGFibGUpe1xyXG4gICAgICB0aGlzLnRhYmxlLnBlclBhZ2UgPSAtMTtcclxuICAgICAgdGhpcy50YWJsZS5vbkxvYWQgPSAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5zZXRTb3J0YWJsZSgpO1xyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgdGhpcy50YWJsZS5zZXQodGhpcy5jaGFuZ2VSb3dzKTtcclxuICAgIGlmICh0aGlzLnRhYmxlLnNlYXJjaEZvcm0pe1xyXG4gICAgICB0aGlzLnRhYmxlLnNlYXJjaEZvcm0uZGlzcGxheUxhYmVsID0gZmFsc2U7XHJcbiAgICAgIHRoaXMudGFibGUuc2VhcmNoRm9ybS5jbGFzcyA9ICh0aGlzLnRhYmxlLnNlYXJjaEZvcm0uY2xhc3MgPyB0aGlzLnRhYmxlLnNlYXJjaEZvcm0uY2xhc3MgOiAnJykgKyAnIHAtMCc7XHJcbiAgICAgIHRoaXMudGFibGUuc2VhcmNoRm9ybS5pbnB1dHMuZm9yRWFjaCh4ID0+IHtcclxuICAgICAgICB4LnJlcXVpcmVkID0gZmFsc2U7XHJcbiAgICAgICAgeC5kaXNwbGF5TGFiZWwgPSBmYWxzZTtcclxuICAgICAgICB4LndpdGhDbGVhciA9IHRydWU7XHJcbiAgICAgICAgeC5jbGFzcyA9IHguY2xhc3MgKyAnIGgtMzAgc2VhcmNoLWZvcm0taW5wJztcclxuICAgICAgICB4Lm9uQ2hhbmdlID0gKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy50YWJsZS5sb2FkKCk7XHJcbiAgICAgICAgfTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLmdldE9wdGlvbnMoKTtcclxuICAgIHRoaXMucmVsb2FkLm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgIHRoaXMudGFibGUubG9hZCh0aGlzLnJlbG9hZCk7XHJcbiAgICB9O1xyXG4gICAgdGhpcy5tYXhpbXVtLm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgICQodGhpcy50YWJsZURpdi5uYXRpdmVFbGVtZW50KS50b2dnbGVDbGFzcygnbWF4aW11bScpO1xyXG4gICAgICB0aGlzLm1heGltdW0uaWNvbiA9IHRoaXMubWF4aW11bS5uYW1lID09PSAnTWluaW11bScgPyAnZmEtZHVvdG9uZSBmYS1hcnJvd3MtbWF4aW1pemUnIDogJ2ZhLWR1b3RvbmUgZmEtYXJyb3dzLW1pbmltaXplJztcclxuICAgICAgdGhpcy5tYXhpbXVtLm5hbWUgPSB0aGlzLm1heGltdW0ubmFtZSA9PT0gJ01pbmltdW0nID8gJ01heGltdW0nIDogJ01pbmltdW0nO1xyXG4gICAgfTtcclxuICAgIHRoaXMub3B0RGVsZXRlLm9uQ2xpY2sgPSAoaSkgPT4ge1xyXG4gICAgICBpZiAodGhpcy50YWJsZS5mb3JtKXtcclxuICAgICAgICB0aGlzLnRhYmxlLmZvcm0uY2xlYXIoKTtcclxuICAgICAgfVxyXG4gICAgICBjb25zdCBkYXRhID0ge1xyXG4gICAgICAgIGlkczogdGhpcy50YWJsZS5yb3dzLmZpbHRlcih4ID0+IHguc2VsZWN0ZWQpLm1hcCh4ID0+IHguaWQpXHJcbiAgICAgIH07XHJcbiAgICAgIHRoaXMuY29uZmlybS5zaG93KHRoaXMudGFibGUubCgnRGVsZXRlQ29uZmlybScpLCB0aGlzLnRhYmxlLnVybCArICcvRGVsZXRlLycgKyAwLCBkYXRhLCAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy50YWJsZS5sb2FkKG51bGwpO1xyXG4gICAgICB9KTtcclxuICAgIH07XHJcbiAgICB0aGlzLnRhYmxlLnNob3dDb25maXJtID0gKGw6IHN0cmluZywgdXJsOiBzdHJpbmcsIGRhdGEsIGFjY2VwdDogKGJ0bjogSW5wdXRDbGFzcykgPT4gdm9pZCkgPT4ge1xyXG4gICAgICB0aGlzLmNvbmZpcm0uc2hvdyhsLCB1cmwsIGRhdGEsIGFjY2VwdCk7XHJcbiAgICB9O1xyXG4gIH1cclxuICBhbGxTZWxlY3RlZCgpOiBib29sZWFue1xyXG4gICAgcmV0dXJuIHRoaXMudGFibGUucm93cy5maWx0ZXIoeCA9PiAheC5zZWxlY3RlZCkubGVuZ3RoID09PSAwO1xyXG4gIH1cclxuICBpc1NlbGVjdGVkKCk6IGJvb2xlYW57XHJcbiAgICByZXR1cm4gdGhpcy50YWJsZS5yb3dzLmZpbHRlcih4ID0+IHguc2VsZWN0ZWQpLmxlbmd0aCA+IDA7XHJcbiAgfVxyXG4gIHNlbGVjdEFsbCgpOiB2b2lke1xyXG4gICAgaWYgKHRoaXMudGFibGUucm93cy5maWx0ZXIoeCA9PiAheC5zZWxlY3RlZCkubGVuZ3RoID09PSAwKXtcclxuICAgICAgdGhpcy50YWJsZS5yb3dzLmZvckVhY2goeCA9PiB4LnNlbGVjdGVkID0gZmFsc2UpO1xyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMudGFibGUucm93cy5mb3JFYWNoKHggPT4geC5zZWxlY3RlZCA9IHRydWUpO1xyXG4gICAgfVxyXG4gIH1cclxuICBnZXRPcHRpb25zKCk6IElucHV0Q2xhc3NbXXtcclxuICAgIHJldHVybiBbXTtcclxuICB9XHJcbiAgc2V0U29ydGFibGUoKTogdm9pZHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICQodGhpcy5yb3dzLm5hdGl2ZUVsZW1lbnQpLnNvcnRhYmxlKHtcclxuICAgICAgICBheGlzOiAneScsXHJcbiAgICAgICAgaXRlbXM6ICcucm93JyxcclxuICAgICAgICBoYW5kbGU6ICc+IC5oYW5kbGUnLFxyXG4gICAgICAgIHVwZGF0ZTogKCkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgZGF0YSA9IFtdO1xyXG4gICAgICAgICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgICAgICAgJCh0aGlzLnJvd3MubmF0aXZlRWxlbWVudCkuc29ydGFibGUoJ3RvQXJyYXknLCB7YXR0cmlidXRlOiAnZGF0YS1pZCd9KS5mb3JFYWNoKHggPT4ge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyh4KTtcclxuICAgICAgICAgICAgZGF0YS5wdXNoKHBhcnNlSW50KHgsIDEwKSk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIGNvbnN0IHAgPSBuZXcgUGVybWlzc2lvbkNsYXNzKCk7XHJcbiAgICAgICAgICBwLkFyZWEgPSB0aGlzLnRhYmxlLnBlcm1pc3Npb25zLkFyZWE7XHJcbiAgICAgICAgICBwLkNvbnRyb2xsZXIgPSB0aGlzLnRhYmxlLnBlcm1pc3Npb25zLkNvbnRyb2xsZXI7XHJcbiAgICAgICAgICBwLkFjdGlvbiA9ICdzb3J0JztcclxuICAgICAgICAgIG5ldyBSZXF1ZXN0Q2xhc3ModGhpcy50YWJsZS5lbnZpcm9ubWVudCwgdGhpcy50YWJsZS5sKS5zZW5kKHAuZ2V0VXJsKCkudG9Mb3dlckNhc2UoKSwgTWV0aG9kLlBvc3QsIHtJZHM6IGRhdGF9LCBudWxsLCAoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLnRhYmxlLm9uU29ydCl7XHJcbiAgICAgICAgICAgICAgdGhpcy50YWJsZS5vblNvcnQoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KS5kaXNhYmxlU2VsZWN0aW9uKCk7XHJcbiAgICB9LCA1MDApO1xyXG4gIH1cclxuICBnZXRSb3dzKCk6IGFueVtde1xyXG4gICAgY29uc3QgYyA9IHRoaXMudGFibGUucm93cy5maWx0ZXIoeCA9PiAheC5EYXRhLlBhcmVudElkKTtcclxuICAgIGMuZm9yRWFjaCgoeCwgaSkgPT4geC5Sb3dOdW0gPSBjLmxlbmd0aCAtIGkgKyAxKTtcclxuICAgIHJldHVybiBjO1xyXG4gIH1cclxuICAvLyBnZXRPcHRpb25Nb2RhbHMoKTogSW5wdXRDbGFzc1tde1xyXG4gIC8vICAgY29uc3QgbW9kYWxzID0gW107XHJcbiAgLy8gICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyh0aGlzLnRhYmxlLm9wdGlvbkFjdGlvbnMpKSB7XHJcbiAgLy8gICAgIGlmICh0aGlzLnRhYmxlLm9wdGlvbkFjdGlvbnNba2V5XS5tb2RhbCl7XHJcbiAgLy8gICAgICAgbW9kYWxzLnB1c2godGhpcy50YWJsZS5vcHRpb25BY3Rpb25zW2tleV0ubW9kYWwpO1xyXG4gIC8vICAgICB9XHJcbiAgLy8gICB9XHJcbiAgLy8gICByZXR1cm4gbW9kYWxzO1xyXG4gIC8vIH1cclxuICBvbkNoYW5nZVJvd3MoZSk6IHZvaWR7XHJcbiAgICByZXR1cm4gdGhpcy5jaGFuZ2VSb3dzLmVtaXQoZSk7XHJcbiAgfVxyXG4gIG9uQ29uZmlybVNob3coZSk6IHZvaWR7XHJcbiAgICB0aGlzLmNvbmZpcm0uc2hvdyh0aGlzLnRhYmxlLmwoZS5hY3Rpb24gKyAnQ29uZmlybScpLCBlLnVybCwgbnVsbCwgZS5hY2NlcHQpO1xyXG4gIH1cclxuICBjaGFuZ2VTb3J0KGUsIHM6IHN0cmluZyk6IHZvaWR7XHJcbiAgICBpZiAoJChlLnRhcmdldCkuY2xvc2VzdCgnLmhlYWRlci1zZWFyY2gnKS5oYXNDbGFzcygnaGVhZGVyLXNlYXJjaCcpKXtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy50YWJsZS5zb3J0VHlwZSA9IHRoaXMudGFibGUuc29ydCA9PT0gcyA/IHRoaXMudGFibGUuc29ydFR5cGUgPT09ICdBU0MnID8gJ0RFU0MnIDogJ0FTQycgOiAnQVNDJztcclxuICAgIHRoaXMudGFibGUuc29ydCA9IHM7XHJcbiAgICB0aGlzLnRhYmxlLmxvYWQoKTtcclxuICB9XHJcbiAgZ2V0TW9kYWxzKCk6IE1vZGFsQ2xhc3NbXXtcclxuICAgIHJldHVybiB0aGlzLnRhYmxlLm9wdGlvbnNBY3Rpb25zLmZpbHRlcih4ID0+IHggaW5zdGFuY2VvZiBNb2RhbENsYXNzKTtcclxuICB9XHJcbn1cclxuIl19
|