ps-toolkit-ui 0.2.71 → 0.2.72

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.
@@ -149,7 +149,6 @@ export var PermissionTypeEnum;
149
149
  PermissionTypeEnum[PermissionTypeEnum["Item"] = 0] = "Item";
150
150
  PermissionTypeEnum[PermissionTypeEnum["Access"] = 1] = "Access";
151
151
  PermissionTypeEnum[PermissionTypeEnum["Option"] = 2] = "Option";
152
- PermissionTypeEnum[PermissionTypeEnum["Input"] = 3] = "Input";
153
152
  })(PermissionTypeEnum || (PermissionTypeEnum = {}));
154
153
  export var PermissionAccessTypeEnum;
155
154
  (function (PermissionAccessTypeEnum) {
@@ -168,6 +167,7 @@ export var PermissionInputActionEnum;
168
167
  PermissionInputActionEnum[PermissionInputActionEnum["File"] = 4] = "File";
169
168
  PermissionInputActionEnum[PermissionInputActionEnum["Modal"] = 5] = "Modal";
170
169
  PermissionInputActionEnum[PermissionInputActionEnum["Confirm"] = 6] = "Confirm";
170
+ PermissionInputActionEnum[PermissionInputActionEnum["Input"] = 7] = "Input";
171
171
  })(PermissionInputActionEnum || (PermissionInputActionEnum = {}));
172
172
  export var PermissionInputTypeEnum;
173
173
  (function (PermissionInputTypeEnum) {
@@ -188,4 +188,4 @@ export var TableOptionType;
188
188
  TableOptionType[TableOptionType["Show"] = 2] = "Show";
189
189
  TableOptionType[TableOptionType["Group"] = 3] = "Group";
190
190
  })(TableOptionType || (TableOptionType = {}));
191
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bS5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiJEOi9Qcm9qZWN0cy9Qc1Rvb2xraXQvVUkvcHJvamVjdHMvcHMtdG9vbGtpdC11aS9zcmMvIiwic291cmNlcyI6WyJsaWIvY2xhc3Nlcy9lbnVtLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFdBQVc7QUFDWCxNQUFNLE9BQU8sU0FBUztJQUNwQixNQUFNLENBQUMsU0FBUyxDQUFDLE9BQVk7UUFDM0IsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFDRCxNQUFNLENBQUMsYUFBYSxDQUFDLE9BQVksRUFBRSxDQUFDO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUNELE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBWTtRQUN6QixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssUUFBUSxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUNELE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFZO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDckMsT0FBTztnQkFDTCxHQUFHLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUM7YUFDekIsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBRUQsTUFBTSxDQUFOLElBQVksVUFpQlg7QUFqQkQsV0FBWSxVQUFVO0lBQ3BCLG1DQUFxQixDQUFBO0lBQ3JCLGlDQUFtQixDQUFBO0lBQ25CLCtCQUFpQixDQUFBO0lBQ2pCLHFDQUF1QixDQUFBO0lBQ3ZCLHFDQUF1QixDQUFBO0lBQ3ZCLHFDQUF1QixDQUFBO0lBQ3ZCLHFDQUF1QixDQUFBO0lBQ3ZCLGlDQUFtQixDQUFBO0lBQ25CLDZCQUFlLENBQUE7SUFDZixtQ0FBcUIsQ0FBQTtJQUNyQix1Q0FBeUIsQ0FBQTtJQUN6Qix1Q0FBeUIsQ0FBQTtJQUN6Qiw2QkFBZSxDQUFBO0lBQ2YsbUNBQXFCLENBQUE7SUFDckIsNkJBQWUsQ0FBQTtJQUNmLCtCQUFpQixDQUFBO0FBQ25CLENBQUMsRUFqQlcsVUFBVSxLQUFWLFVBQVUsUUFpQnJCO0FBRUQsTUFBTSxDQUFOLElBQVksU0F1Q1g7QUF2Q0QsV0FBWSxTQUFTO0lBQ25CLHlDQUFJLENBQUE7SUFDSixpREFBUSxDQUFBO0lBQ1IsNkNBQU0sQ0FBQTtJQUNOLDJDQUFLLENBQUE7SUFDTCwyQ0FBSyxDQUFBO0lBQ0wseURBQVksQ0FBQTtJQUNaLHFEQUFVLENBQUE7SUFDViwyQ0FBSyxDQUFBO0lBQ0wsNkNBQU0sQ0FBQTtJQUNOLDZDQUFNLENBQUE7SUFDTiwwREFBWSxDQUFBO0lBQ1osc0VBQWtCLENBQUE7SUFDbEIsMENBQUksQ0FBQTtJQUNKLDBDQUFJLENBQUE7SUFDSixrREFBUSxDQUFBO0lBQ1IsNENBQUssQ0FBQTtJQUNMLGtEQUFRLENBQUE7SUFDUiw0Q0FBSyxDQUFBO0lBQ0wsOENBQU0sQ0FBQTtJQUNOLDhDQUFNLENBQUE7SUFDTiwwQ0FBSSxDQUFBO0lBQ0osMENBQUksQ0FBQTtJQUNKLHdDQUFHLENBQUE7SUFDSCw0Q0FBSyxDQUFBO0lBQ0wsNENBQUssQ0FBQTtJQUNMLDBDQUFJLENBQUE7SUFDSiw4Q0FBTSxDQUFBO0lBQ04sZ0RBQU8sQ0FBQTtJQUNQLGtGQUF3QixDQUFBO0lBQ3hCLG9GQUF5QixDQUFBO0lBQ3pCLGtEQUFRLENBQUE7SUFDUixrREFBUSxDQUFBO0lBQ1IsOENBQU0sQ0FBQTtJQUNOLDRDQUFLLENBQUE7SUFDTCxvREFBUyxDQUFBO0lBQ1Qsd0NBQUcsQ0FBQTtJQUNILDhDQUFNLENBQUE7SUFDTiw0Q0FBSyxDQUFBO0FBQ1AsQ0FBQyxFQXZDVyxTQUFTLEtBQVQsU0FBUyxRQXVDcEI7QUFFRCxNQUFNLENBQU4sSUFBWSxhQU1YO0FBTkQsV0FBWSxhQUFhO0lBRXZCLGdEQUFRLENBQUE7SUFDUixxREFBVSxDQUFBO0lBQ1YscURBQVUsQ0FBQTtJQUNWLHFEQUFVLENBQUE7QUFDWixDQUFDLEVBTlcsYUFBYSxLQUFiLGFBQWEsUUFNeEI7QUFFRCxNQUFNLENBQU4sSUFBWSxNQU9YO0FBUEQsV0FBWSxNQUFNO0lBQ2hCLGlDQUFHLENBQUE7SUFDSCxtQ0FBSSxDQUFBO0lBQ0osdUNBQU0sQ0FBQTtJQUNOLGlDQUFHLENBQUE7SUFDSCx5Q0FBTyxDQUFBO0lBQ1AscUNBQUssQ0FBQTtBQUNQLENBQUMsRUFQVyxNQUFNLEtBQU4sTUFBTSxRQU9qQjtBQUVELE1BQU0sQ0FBTixJQUFZLGFBaUJYO0FBakJELFdBQVksYUFBYTtJQUN2QixpREFBSSxDQUFBO0lBQ0osaURBQUksQ0FBQTtJQUNKLGlEQUFJLENBQUE7SUFDSix5REFBUSxDQUFBO0lBQ1IsdURBQU8sQ0FBQTtJQUNQLDZEQUFVLENBQUE7SUFDViwrQ0FBRyxDQUFBO0lBQ0gsbURBQUssQ0FBQTtJQUNMLHlEQUFRLENBQUE7SUFDUixtREFBSyxDQUFBO0lBQ0wsc0RBQU0sQ0FBQTtJQUNOLDhEQUFVLENBQUE7SUFDViwwREFBUSxDQUFBO0lBQ1Isa0RBQUksQ0FBQTtJQUNKLHdEQUFPLENBQUE7SUFDUCxvREFBSyxDQUFBO0FBQ1AsQ0FBQyxFQWpCVyxhQUFhLEtBQWIsYUFBYSxRQWlCeEI7QUFFRCxNQUFNLENBQU4sSUFBWSxRQUlYO0FBSkQsV0FBWSxRQUFRO0lBQ2xCLHFDQUFPLENBQUE7SUFDUCx5Q0FBUyxDQUFBO0lBQ1QsdUNBQVEsQ0FBQTtBQUNWLENBQUMsRUFKVyxRQUFRLEtBQVIsUUFBUSxRQUluQjtBQUVELE1BQU0sQ0FBTixJQUFZLFVBT1g7QUFQRCxXQUFZLFVBQVU7SUFFcEIsMENBQVEsQ0FBQTtJQUNSLCtDQUFVLENBQUE7SUFDVixtREFBWSxDQUFBO0lBQ1osK0NBQVUsQ0FBQTtJQUNWLCtDQUFVLENBQUE7QUFDWixDQUFDLEVBUFcsVUFBVSxLQUFWLFVBQVUsUUFPckI7QUFDRCxNQUFNLENBQU4sSUFBWSxpQkFTWDtBQVRELFdBQVksaUJBQWlCO0lBRTNCLHVEQUFPLENBQUE7SUFDUCxpRUFBYSxDQUFBO0lBQ2IseURBQVMsQ0FBQTtJQUNULGlFQUFhLENBQUE7SUFDYixtRUFBYyxDQUFBO0lBQ2QsdUVBQWdCLENBQUE7SUFDaEIsaUZBQXFCLENBQUE7QUFDdkIsQ0FBQyxFQVRXLGlCQUFpQixLQUFqQixpQkFBaUIsUUFTNUI7QUFDRCxNQUFNLENBQU4sSUFBWSxnQkFNWDtBQU5ELFdBQVksZ0JBQWdCO0lBRTFCLDJEQUFVLENBQUE7SUFDViw2REFBVyxDQUFBO0lBQ1gsdUVBQWdCLENBQUE7SUFDaEIsaUVBQWEsQ0FBQTtBQUNmLENBQUMsRUFOVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBTTNCO0FBRUQsTUFBTSxDQUFOLElBQVksa0JBT1g7QUFQRCxXQUFZLGtCQUFrQjtJQUU1Qiw0REFBUyxDQUFBO0lBQ1QsMkRBQVEsQ0FBQTtJQUNSLCtEQUFVLENBQUE7SUFDViwrREFBVSxDQUFBO0lBQ1YsNkRBQVMsQ0FBQTtBQUNYLENBQUMsRUFQVyxrQkFBa0IsS0FBbEIsa0JBQWtCLFFBTzdCO0FBRUQsTUFBTSxDQUFOLElBQVksd0JBT1g7QUFQRCxXQUFZLHdCQUF3QjtJQUVsQyx1RUFBUSxDQUFBO0lBQ1IsMkVBQVUsQ0FBQTtJQUNWLDJFQUFVLENBQUE7SUFDViwyRUFBVSxDQUFBO0lBQ1YsMkVBQVUsQ0FBQTtBQUNaLENBQUMsRUFQVyx3QkFBd0IsS0FBeEIsd0JBQXdCLFFBT25DO0FBRUQsTUFBTSxDQUFOLElBQVkseUJBU1g7QUFURCxXQUFZLHlCQUF5QjtJQUVuQyx5RUFBUSxDQUFBO0lBQ1IsK0VBQVcsQ0FBQTtJQUNYLHlFQUFRLENBQUE7SUFDUixxRkFBYyxDQUFBO0lBQ2QseUVBQVEsQ0FBQTtJQUNSLDJFQUFTLENBQUE7SUFDVCwrRUFBVyxDQUFBO0FBQ2IsQ0FBQyxFQVRXLHlCQUF5QixLQUF6Qix5QkFBeUIsUUFTcEM7QUFFRCxNQUFNLENBQU4sSUFBWSx1QkFJWDtBQUpELFdBQVksdUJBQXVCO0lBRWpDLHFFQUFRLENBQUE7SUFDUix5RUFBVSxDQUFBO0FBQ1osQ0FBQyxFQUpXLHVCQUF1QixLQUF2Qix1QkFBdUIsUUFJbEM7QUFFRCxNQUFNLENBQU4sSUFBWSxXQU9YO0FBUEQsV0FBWSxXQUFXO0lBRXJCLDJDQUFPLENBQUE7SUFDUCx5REFBYyxDQUFBO0lBQ2QscURBQVksQ0FBQTtJQUNaLCtDQUFTLENBQUE7SUFDVCw2Q0FBUSxDQUFBO0FBQ1YsQ0FBQyxFQVBXLFdBQVcsS0FBWCxXQUFXLFFBT3RCO0FBQ0QsTUFBTSxDQUFOLElBQVksZUFLWDtBQUxELFdBQVksZUFBZTtJQUV6Qix5REFBVSxDQUFBO0lBQ1YscURBQVEsQ0FBQTtJQUNSLHVEQUFTLENBQUE7QUFDWCxDQUFDLEVBTFcsZUFBZSxLQUFmLGVBQWUsUUFLMUIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAZHluYW1pY1xyXG5leHBvcnQgY2xhc3MgRW51bVV0aWxzIHtcclxuICBzdGF0aWMgZ2V0VmFsdWVzKGVudW1PYmo6IGFueSk6IGFueVtdIHtcclxuICAgIHJldHVybiBFbnVtVXRpbHMuZ2V0S2V5cyhlbnVtT2JqKS5tYXAodmFsdWUgPT4gZW51bU9ialt2YWx1ZV0pO1xyXG4gIH1cclxuICBzdGF0aWMgZ2V0S2V5QnlWYWx1ZShlbnVtT2JqOiBhbnksIHYpOiBhbnlbXSB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXRLZXlzKGVudW1PYmopLmZpbmQoa2V5ID0+IGVudW1PYmpba2V5XSA9PT0gdik7XHJcbiAgfVxyXG4gIHN0YXRpYyBnZXRLZXlzKGVudW1PYmo6IGFueSk6IGFueVtdIHtcclxuICAgIHJldHVybiBPYmplY3Qua2V5cyhlbnVtT2JqKS5maWx0ZXIoa2V5ID0+IHR5cGVvZiBlbnVtT2JqW2tleV0gPT09ICdudW1iZXInKTtcclxuICB9XHJcbiAgc3RhdGljIGdldEtleXNBbmRWYWx1ZXMoZW51bU9iajogYW55KTogYW55W10ge1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0S2V5cyhlbnVtT2JqKS5tYXAoa2V5ID0+IHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBrZXksIHZhbHVlOiBlbnVtT2JqW2tleV1cclxuICAgICAgfTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGVudW0gSW5wdXRFcnJvciB7XHJcbiAgUmVxdWlyZWQgPSAnUmVxdWlyZWQnLFxyXG4gIEludmFsaWQgPSAnSW52YWxpZCcsXHJcbiAgTGVuZ3RoID0gJ0xlbmd0aCcsXHJcbiAgTWluTGVuZ3RoID0gJ01pbkxlbmd0aCcsXHJcbiAgTWF4TGVuZ3RoID0gJ01heExlbmd0aCcsXHJcbiAgTWluQW1vdW50ID0gJ01pbkFtb3VudCcsXHJcbiAgTWF4QW1vdW50ID0gJ01heEFtb3VudCcsXHJcbiAgRXhwaXJlZCA9ICdFeHBpcmVkJyxcclxuICBFcnJvciA9ICdFcnJvcicsXHJcbiAgTm90TWF0Y2ggPSAnTm90TWF0Y2gnLFxyXG4gIE5vdEFsbG93ZWQgPSAnTm90QWxsb3dlZCcsXHJcbiAgTWF4Q29udGVudCA9ICdNYXhDb250ZW50JyxcclxuICBFeGlzdCA9ICdFeGlzdCcsXHJcbiAgTm90RXhpc3QgPSAnTm90RXhpc3QnLFxyXG4gIFdyb25nID0gJ1dyb25nJyxcclxuICBVcGxvYWQgPSAnVXBsb2FkJyxcclxufVxyXG5cclxuZXhwb3J0IGVudW0gSW5wdXRUeXBlIHtcclxuICBUZXh0LFxyXG4gIFBhc3N3b3JkLFxyXG4gIE1vYmlsZSxcclxuICBQaG9uZSxcclxuICBFbWFpbCxcclxuICBOYXRpb25hbENvZGUsXHJcbiAgUG9zdGFsQ29kZSxcclxuICBTaGViYSxcclxuICBOdW1iZXIsXHJcbiAgU2VsZWN0LFxyXG4gIFNlbGVjdFNlYXJjaCxcclxuICBTZWxlY3RBdXRvQ29tcGxldGUsXHJcbiAgRGF0ZSxcclxuICBUaW1lLFxyXG4gIERhdGVUaW1lLFxyXG4gIENoZWNrLFxyXG4gIFRleHRBcmVhLFxyXG4gIExhYmVsLFxyXG4gIEJ1dHRvbixcclxuICBTdWJtaXQsXHJcbiAgSWNvbixcclxuICBGaWxlLFxyXG4gIFVybCxcclxuICBQcmljZSxcclxuICBSYWRpbyxcclxuICBUcmVlLFxyXG4gIFBsYXF1ZSxcclxuICBQbGFxdWVNLFxyXG4gIFNlbGVjdEF1dG9Db21wbGV0ZVBsYXF1ZSxcclxuICBTZWxlY3RBdXRvQ29tcGxldGVQbGFxdWVNLFxyXG4gIEJhbmtDYXJkLFxyXG4gIENvbnN0YW50LFxyXG4gIEhpZGRlbixcclxuICBUYWJsZSxcclxuICBDYXJTZWFyY2gsXHJcbiAgQ2FyLFxyXG4gIEZpbmdlcixcclxuICBDb2xvcixcclxufVxyXG5cclxuZXhwb3J0IGVudW0gT3BlcmF0aW9uRW51bVxyXG57XHJcbiAgQWxsID0gLTEsXHJcbiAgSW5zZXJ0ID0gMSxcclxuICBVcGRhdGUgPSAyLFxyXG4gIERlbGV0ZSA9IDMsXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIE1ldGhvZCB7XHJcbiAgR2V0LFxyXG4gIFBvc3QsXHJcbiAgRGVsZXRlLFxyXG4gIFB1dCxcclxuICBPcHRpb25zLFxyXG4gIFBhdGNoLFxyXG59XHJcblxyXG5leHBvcnQgZW51bSBUYWJsZUNvbGxUeXBlIHtcclxuICBUZXh0LFxyXG4gIERhdGUsXHJcbiAgVGltZSxcclxuICBEYXRlVGltZSxcclxuICBEYXRlRGlmLFxyXG4gIERhdGVSZW1haW4sXHJcbiAgVXJsLFxyXG4gIEltYWdlLFxyXG4gIEZ1bmN0aW9uLFxyXG4gIFByaWNlLFxyXG4gIFBsYXF1ZSxcclxuICBQbGFxdWVUZXh0LFxyXG4gIEZpbGVTaXplLFxyXG4gIEJvb2wsXHJcbiAgT3B0aW9ucyxcclxuICBDb2xvcixcclxufVxyXG5cclxuZXhwb3J0IGVudW0gVXNlclR5cGUge1xyXG4gIEFsbCA9IDAsXHJcbiAgQWRtaW4gPSAxLFxyXG4gIFVzZXIgPSAyXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFN0YXR1c0VudW1cclxue1xyXG4gIEFsbCA9IC0xLFxyXG4gIEFjdGl2ZSA9IDAsXHJcbiAgRGVBY3RpdmUgPSAxLFxyXG4gIERlbGV0ZSA9IDIsXHJcbiAgUmVwb3J0ID0gMyxcclxufVxyXG5leHBvcnQgZW51bSBQYXltZW50U3RhdHVzRW51bVxyXG57XHJcbiAgQWxsID0gMCxcclxuICBTdWNjZXNzID0gMTAwLFxyXG4gIE5PSyA9IDEwMixcclxuICBSZXF1ZXN0ID0gMTAzLFxyXG4gIE5vdGZvdW5kID0gMTA0LFxyXG4gIE5vdFJlcXVlc3QgPSAxMDUsXHJcbiAgTm90Zm91bmRQYWNrYWdlID0gMTA2XHJcbn1cclxuZXhwb3J0IGVudW0gUmVzdWx0U3RhdHVzRW51bVxyXG57XHJcbiAgRmFpbGVkID0gMCxcclxuICBTdWNjZXNzID0gMSxcclxuICBVbmF1dGhvcml6ZWQgPSAyLFxyXG4gIE5vdEFjY2VzcyA9IDNcclxufVxyXG5cclxuZXhwb3J0IGVudW0gUGVybWlzc2lvblR5cGVFbnVtXHJcbntcclxuICBGb3JtID0gLTEsXHJcbiAgSXRlbSA9IDAsXHJcbiAgQWNjZXNzID0gMSxcclxuICBPcHRpb24gPSAyLFxyXG4gIElucHV0ID0gMyxcclxufVxyXG5cclxuZXhwb3J0IGVudW0gUGVybWlzc2lvbkFjY2Vzc1R5cGVFbnVtXHJcbntcclxuICBMaXN0ID0gMSxcclxuICBJbnNlcnQgPSAyLFxyXG4gIFVwZGF0ZSA9IDMsXHJcbiAgRGVsZXRlID0gNCxcclxuICBSZXBvcnQgPSA1LFxyXG59XHJcblxyXG5leHBvcnQgZW51bSBQZXJtaXNzaW9uSW5wdXRBY3Rpb25FbnVtXHJcbntcclxuICBOb25lID0gMCxcclxuICBPbkNsaWNrID0gMSxcclxuICBMaW5rID0gMixcclxuICBMaW5rTmV3VGFiID0gMyxcclxuICBGaWxlID0gNCxcclxuICBNb2RhbCA9IDUsXHJcbiAgQ29uZmlybSA9IDZcclxufVxyXG5cclxuZXhwb3J0IGVudW0gUGVybWlzc2lvbklucHV0VHlwZUVudW1cclxue1xyXG4gIEljb24gPSAwLFxyXG4gIEJ1dHRvbiA9IDEsXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFZlaGljbGVUeXBlXHJcbntcclxuICBDYXIgPSAxLFxyXG4gIE1vdG9yY3ljbGUgPSAyLFxyXG4gIEFpcnBsYW5lID0gMyxcclxuICBUcmFpbiA9IDQsXHJcbiAgU2hpcCA9IDUsXHJcbn1cclxuZXhwb3J0IGVudW0gVGFibGVPcHRpb25UeXBlXHJcbntcclxuICBIaWRkZW4gPSAxLFxyXG4gIFNob3cgPSAyLFxyXG4gIEdyb3VwID0gMyxcclxufVxyXG4iXX0=
191
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bS5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiJEOi9Qcm9qZWN0cy9Qc1Rvb2xraXQvVUkvcHJvamVjdHMvcHMtdG9vbGtpdC11aS9zcmMvIiwic291cmNlcyI6WyJsaWIvY2xhc3Nlcy9lbnVtLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFdBQVc7QUFDWCxNQUFNLE9BQU8sU0FBUztJQUNwQixNQUFNLENBQUMsU0FBUyxDQUFDLE9BQVk7UUFDM0IsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFDRCxNQUFNLENBQUMsYUFBYSxDQUFDLE9BQVksRUFBRSxDQUFDO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUNELE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBWTtRQUN6QixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssUUFBUSxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUNELE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFZO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDckMsT0FBTztnQkFDTCxHQUFHLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUM7YUFDekIsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBRUQsTUFBTSxDQUFOLElBQVks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UiwrRUFBVyxDQUFBO0lBQ1gseUVBQVEsQ0FBQTtJQUNSLHFGQUFjLENBQUE7SUFDZCx5RUFBUSxDQUFBO0lBQ1IsMkVBQVMsQ0FBQTtJQUNULCtFQUFXLENBQUE7SUFDWCwyRUFBUyxDQUFBO0FBQ1gsQ0FBQyxFQVZXLHlCQUF5QixLQUF6Qix5QkFBeUIsUUFVcEM7QUFFRCxNQUFNLENBQU4sSUFBWSx1QkFJWDtBQUpELFdBQVksdUJBQXVCO0lBRWpDLHFFQUFRLENBQUE7SUFDUix5RUFBVSxDQUFBO0FBQ1osQ0FBQyxFQUpXLHVCQUF1QixLQUF2Qix1QkFBdUIsUUFJbEM7QUFFRCxNQUFNLENBQU4sSUFBWSxXQU9YO0FBUEQsV0FBWSxXQUFXO0lBRXJCLDJDQUFPLENBQUE7SUFDUCx5REFBYyxDQUFBO0lBQ2QscURBQVksQ0FBQTtJQUNaLCtDQUFTLENBQUE7SUFDVCw2Q0FBUSxDQUFBO0FBQ1YsQ0FBQyxFQVBXLFdBQVcsS0FBWCxXQUFXLFFBT3RCO0FBQ0QsTUFBTSxDQUFOLElBQVksZUFLWDtBQUxELFdBQVksZUFBZTtJQUV6Qix5REFBVSxDQUFBO0lBQ1YscURBQVEsQ0FBQTtJQUNSLHVEQUFTLENBQUE7QUFDWCxDQUFDLEVBTFcsZUFBZSxLQUFmLGVBQWUsUUFLMUIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAZHluYW1pY1xyXG5leHBvcnQgY2xhc3MgRW51bVV0aWxzIHtcclxuICBzdGF0aWMgZ2V0VmFsdWVzKGVudW1PYmo6IGFueSk6IGFueVtdIHtcclxuICAgIHJldHVybiBFbnVtVXRpbHMuZ2V0S2V5cyhlbnVtT2JqKS5tYXAodmFsdWUgPT4gZW51bU9ialt2YWx1ZV0pO1xyXG4gIH1cclxuICBzdGF0aWMgZ2V0S2V5QnlWYWx1ZShlbnVtT2JqOiBhbnksIHYpOiBhbnlbXSB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXRLZXlzKGVudW1PYmopLmZpbmQoa2V5ID0+IGVudW1PYmpba2V5XSA9PT0gdik7XHJcbiAgfVxyXG4gIHN0YXRpYyBnZXRLZXlzKGVudW1PYmo6IGFueSk6IGFueVtdIHtcclxuICAgIHJldHVybiBPYmplY3Qua2V5cyhlbnVtT2JqKS5maWx0ZXIoa2V5ID0+IHR5cGVvZiBlbnVtT2JqW2tleV0gPT09ICdudW1iZXInKTtcclxuICB9XHJcbiAgc3RhdGljIGdldEtleXNBbmRWYWx1ZXMoZW51bU9iajogYW55KTogYW55W10ge1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0S2V5cyhlbnVtT2JqKS5tYXAoa2V5ID0+IHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBrZXksIHZhbHVlOiBlbnVtT2JqW2tleV1cclxuICAgICAgfTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGVudW0gSW5wdXRFcnJvciB7XHJcbiAgUmVxdWlyZWQgPSAnUmVxdWlyZWQnLFxyXG4gIEludmFsaWQgPSAnSW52YWxpZCcsXHJcbiAgTGVuZ3RoID0gJ0xlbmd0aCcsXHJcbiAgTWluTGVuZ3RoID0gJ01pbkxlbmd0aCcsXHJcbiAgTWF4TGVuZ3RoID0gJ01heExlbmd0aCcsXHJcbiAgTWluQW1vdW50ID0gJ01pbkFtb3VudCcsXHJcbiAgTWF4QW1vdW50ID0gJ01heEFtb3VudCcsXHJcbiAgRXhwaXJlZCA9ICdFeHBpcmVkJyxcclxuICBFcnJvciA9ICdFcnJvcicsXHJcbiAgTm90TWF0Y2ggPSAnTm90TWF0Y2gnLFxyXG4gIE5vdEFsbG93ZWQgPSAnTm90QWxsb3dlZCcsXHJcbiAgTWF4Q29udGVudCA9ICdNYXhDb250ZW50JyxcclxuICBFeGlzdCA9ICdFeGlzdCcsXHJcbiAgTm90RXhpc3QgPSAnTm90RXhpc3QnLFxyXG4gIFdyb25nID0gJ1dyb25nJyxcclxuICBVcGxvYWQgPSAnVXBsb2FkJyxcclxufVxyXG5cclxuZXhwb3J0IGVudW0gSW5wdXRUeXBlIHtcclxuICBUZXh0LFxyXG4gIFBhc3N3b3JkLFxyXG4gIE1vYmlsZSxcclxuICBQaG9uZSxcclxuICBFbWFpbCxcclxuICBOYXRpb25hbENvZGUsXHJcbiAgUG9zdGFsQ29kZSxcclxuICBTaGViYSxcclxuICBOdW1iZXIsXHJcbiAgU2VsZWN0LFxyXG4gIFNlbGVjdFNlYXJjaCxcclxuICBTZWxlY3RBdXRvQ29tcGxldGUsXHJcbiAgRGF0ZSxcclxuICBUaW1lLFxyXG4gIERhdGVUaW1lLFxyXG4gIENoZWNrLFxyXG4gIFRleHRBcmVhLFxyXG4gIExhYmVsLFxyXG4gIEJ1dHRvbixcclxuICBTdWJtaXQsXHJcbiAgSWNvbixcclxuICBGaWxlLFxyXG4gIFVybCxcclxuICBQcmljZSxcclxuICBSYWRpbyxcclxuICBUcmVlLFxyXG4gIFBsYXF1ZSxcclxuICBQbGFxdWVNLFxyXG4gIFNlbGVjdEF1dG9Db21wbGV0ZVBsYXF1ZSxcclxuICBTZWxlY3RBdXRvQ29tcGxldGVQbGFxdWVNLFxyXG4gIEJhbmtDYXJkLFxyXG4gIENvbnN0YW50LFxyXG4gIEhpZGRlbixcclxuICBUYWJsZSxcclxuICBDYXJTZWFyY2gsXHJcbiAgQ2FyLFxyXG4gIEZpbmdlcixcclxuICBDb2xvcixcclxufVxyXG5cclxuZXhwb3J0IGVudW0gT3BlcmF0aW9uRW51bVxyXG57XHJcbiAgQWxsID0gLTEsXHJcbiAgSW5zZXJ0ID0gMSxcclxuICBVcGRhdGUgPSAyLFxyXG4gIERlbGV0ZSA9IDMsXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIE1ldGhvZCB7XHJcbiAgR2V0LFxyXG4gIFBvc3QsXHJcbiAgRGVsZXRlLFxyXG4gIFB1dCxcclxuICBPcHRpb25zLFxyXG4gIFBhdGNoLFxyXG59XHJcblxyXG5leHBvcnQgZW51bSBUYWJsZUNvbGxUeXBlIHtcclxuICBUZXh0LFxyXG4gIERhdGUsXHJcbiAgVGltZSxcclxuICBEYXRlVGltZSxcclxuICBEYXRlRGlmLFxyXG4gIERhdGVSZW1haW4sXHJcbiAgVXJsLFxyXG4gIEltYWdlLFxyXG4gIEZ1bmN0aW9uLFxyXG4gIFByaWNlLFxyXG4gIFBsYXF1ZSxcclxuICBQbGFxdWVUZXh0LFxyXG4gIEZpbGVTaXplLFxyXG4gIEJvb2wsXHJcbiAgT3B0aW9ucyxcclxuICBDb2xvcixcclxufVxyXG5cclxuZXhwb3J0IGVudW0gVXNlclR5cGUge1xyXG4gIEFsbCA9IDAsXHJcbiAgQWRtaW4gPSAxLFxyXG4gIFVzZXIgPSAyXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFN0YXR1c0VudW1cclxue1xyXG4gIEFsbCA9IC0xLFxyXG4gIEFjdGl2ZSA9IDAsXHJcbiAgRGVBY3RpdmUgPSAxLFxyXG4gIERlbGV0ZSA9IDIsXHJcbiAgUmVwb3J0ID0gMyxcclxufVxyXG5leHBvcnQgZW51bSBQYXltZW50U3RhdHVzRW51bVxyXG57XHJcbiAgQWxsID0gMCxcclxuICBTdWNjZXNzID0gMTAwLFxyXG4gIE5PSyA9IDEwMixcclxuICBSZXF1ZXN0ID0gMTAzLFxyXG4gIE5vdGZvdW5kID0gMTA0LFxyXG4gIE5vdFJlcXVlc3QgPSAxMDUsXHJcbiAgTm90Zm91bmRQYWNrYWdlID0gMTA2XHJcbn1cclxuZXhwb3J0IGVudW0gUmVzdWx0U3RhdHVzRW51bVxyXG57XHJcbiAgRmFpbGVkID0gMCxcclxuICBTdWNjZXNzID0gMSxcclxuICBVbmF1dGhvcml6ZWQgPSAyLFxyXG4gIE5vdEFjY2VzcyA9IDNcclxufVxyXG5cclxuZXhwb3J0IGVudW0gUGVybWlzc2lvblR5cGVFbnVtXHJcbntcclxuICBGb3JtID0gLTEsXHJcbiAgSXRlbSA9IDAsXHJcbiAgQWNjZXNzID0gMSxcclxuICBPcHRpb24gPSAyLFxyXG59XHJcblxyXG5leHBvcnQgZW51bSBQZXJtaXNzaW9uQWNjZXNzVHlwZUVudW1cclxue1xyXG4gIExpc3QgPSAxLFxyXG4gIEluc2VydCA9IDIsXHJcbiAgVXBkYXRlID0gMyxcclxuICBEZWxldGUgPSA0LFxyXG4gIFJlcG9ydCA9IDUsXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW1cclxue1xyXG4gIE5vbmUgPSAwLFxyXG4gIE9uQ2xpY2sgPSAxLFxyXG4gIExpbmsgPSAyLFxyXG4gIExpbmtOZXdUYWIgPSAzLFxyXG4gIEZpbGUgPSA0LFxyXG4gIE1vZGFsID0gNSxcclxuICBDb25maXJtID0gNixcclxuICBJbnB1dCA9IDcsXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFBlcm1pc3Npb25JbnB1dFR5cGVFbnVtXHJcbntcclxuICBJY29uID0gMCxcclxuICBCdXR0b24gPSAxLFxyXG59XHJcblxyXG5leHBvcnQgZW51bSBWZWhpY2xlVHlwZVxyXG57XHJcbiAgQ2FyID0gMSxcclxuICBNb3RvcmN5Y2xlID0gMixcclxuICBBaXJwbGFuZSA9IDMsXHJcbiAgVHJhaW4gPSA0LFxyXG4gIFNoaXAgPSA1LFxyXG59XHJcbmV4cG9ydCBlbnVtIFRhYmxlT3B0aW9uVHlwZVxyXG57XHJcbiAgSGlkZGVuID0gMSxcclxuICBTaG93ID0gMixcclxuICBHcm91cCA9IDMsXHJcbn1cclxuIl19
@@ -105,7 +105,7 @@ export class TableRowComponent {
105
105
  }
106
106
  getInputs() {
107
107
  const inps = [];
108
- for (const option of this.row.Options.filter(x => x.Type === PermissionTypeEnum.Option)) {
108
+ for (const option of this.row.Options.filter(x => x.Type === PermissionTypeEnum.Option && option.InputAction === PermissionInputActionEnum.Input)) {
109
109
  const inp = new InputClass(this.table.environment, this.table.l, option.Name, option.Icon, InputType.Check, 'h-25 m-h-5 d-ib va-m f-u');
110
110
  inp.row = this.row;
111
111
  inp.onChange = () => {
@@ -124,7 +124,7 @@ export class TableRowComponent {
124
124
  getOptions() {
125
125
  const opts = this.addChildren !== null && (this.table.level === null || this.table.level > this.level) ?
126
126
  [this.addChildren] : [];
127
- for (const option of this.row.Options.filter(x => x.Type === PermissionTypeEnum.Option)) {
127
+ for (const option of this.row.Options.filter(x => x.Type === PermissionTypeEnum.Option && option.InputAction !== PermissionInputActionEnum.Input)) {
128
128
  const opt = new InputClass(this.table.environment, this.table.l, option.Name, option.Icon, option.InputType === PermissionInputTypeEnum.Icon ? InputType.Icon : InputType.Button, 'blue h-25 m-h-5 d-ib va-m f-u');
129
129
  opt.row = this.row;
130
130
  if (option.AccessType === PermissionAccessTypeEnum.Update) {
@@ -397,4 +397,4 @@ TableRowComponent.propDecorators = {
397
397
  loadParent: [{ type: Output }],
398
398
  childrenDiv: [{ type: ViewChild, args: ['childrenDiv',] }]
399
399
  };
400
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUucm93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJEOi9Qcm9qZWN0cy9Qc1Rvb2xraXQvVUkvcHJvamVjdHMvcHMtdG9vbGtpdC11aS9zcmMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy90YWJsZS9yb3cvdGFibGUucm93LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUU1QixPQUFPLEVBQ0wsU0FBUyxFQUNULE1BQU0sRUFBRSx3QkFBd0IsRUFDaEMseUJBQXlCLEVBQ3pCLHVCQUF1QixFQUN2QixrQkFBa0IsRUFDbEIsYUFBYSxFQUNiLGVBQWUsRUFDaEIsTUFBTSw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDdkQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQzVELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUMxRCxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxRSxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFPbEUsTUFBTSxPQUFPLGlCQUFpQjtJQW9CNUIsWUFBbUIsT0FBaUM7UUFBakMsWUFBTyxHQUFQLE9BQU8sQ0FBMEI7UUFsQnBELGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUV6QyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQVF4QyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUl4QyxpQkFBWSxHQUFlLElBQUksQ0FBQztR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Ozs7MEJBVTdCLE1BQU07eUJBRU4sTUFBTTtvQkFFTixLQUFLO29CQUVMLEtBQUs7a0JBRUwsS0FBSzt5QkFFTCxNQUFNOzBCQVFOLFNBQVMsU0FBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XHJcbmltcG9ydCB7VGFibGVDbGFzcywgVGFibGVDb2xsQ2xhc3N9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvdGFibGUuY2xhc3MnO1xyXG5pbXBvcnQge1xyXG4gIElucHV0VHlwZSxcclxuICBNZXRob2QsIFBlcm1pc3Npb25BY2Nlc3NUeXBlRW51bSxcclxuICBQZXJtaXNzaW9uSW5wdXRBY3Rpb25FbnVtLFxyXG4gIFBlcm1pc3Npb25JbnB1dFR5cGVFbnVtLFxyXG4gIFBlcm1pc3Npb25UeXBlRW51bSxcclxuICBUYWJsZUNvbGxUeXBlLFxyXG4gIFRhYmxlT3B0aW9uVHlwZVxyXG59IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvZW51bS5jbGFzcyc7XHJcbmltcG9ydCB7SW5wdXRDbGFzc30gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9mb3JtLmNsYXNzJztcclxuaW1wb3J0IHtSZXF1ZXN0Q2xhc3N9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvcmVxdWVzdC5jbGFzcyc7XHJcbmltcG9ydCB7SGVscGVyQ2xhc3N9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvaGVscGVyLmNsYXNzJztcclxuaW1wb3J0IHtQc1Rvb2xraXRVaUNvbmZpZ1NlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2NvbmZpZy5zZXJ2aWNlJztcclxuaW1wb3J0ICogYXMgJCBmcm9tICdqcXVlcnknO1xyXG5pbXBvcnQge1Blcm1pc3Npb25DbGFzc30gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9wZXJtaXNzaW9uLmNsYXNzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXRhYmxlLXJvdycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLnJvdy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdGFibGUucm93LmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFibGVSb3dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXR7XHJcbiAgQE91dHB1dCgpXHJcbiAgY29uZmlybVNob3cgPSBuZXcgRXZlbnRFbWl0dGVyPG9iamVjdD4oKTtcclxuICBAT3V0cHV0KClcclxuICBjaGFuZ2VSb3dzID0gbmV3IEV2ZW50RW1pdHRlcjxvYmplY3Q+KCk7XHJcbiAgQElucHV0KClcclxuICBsZXZlbDogbnVtYmVyO1xyXG4gIEBJbnB1dCgpXHJcbiAgdGFibGU6IFRhYmxlQ2xhc3M7XHJcbiAgQElucHV0KClcclxuICByb3c7XHJcbiAgQE91dHB1dCgpXHJcbiAgbG9hZFBhcmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG4gIGdldCB0eXBlKCk6IHR5cGVvZiBJbnB1dFR5cGUgeyByZXR1cm4gSW5wdXRUeXBlOyB9XHJcbiAgZ2V0IHRhYmxlT3B0aW9uVHlwZSgpOiB0eXBlb2YgVGFibGVPcHRpb25UeXBleyByZXR1cm4gVGFibGVPcHRpb25UeXBlOyB9XHJcbiAgb3B0U3RhdHVzOiBJbnB1dENsYXNzO1xyXG4gIHNob3dDaGlsZHJlbjogSW5wdXRDbGFzcyA9IG51bGw7XHJcbiAgYWRkQ2hpbGRyZW46IElucHV0Q2xhc3MgPSBudWxsO1xyXG4gIGNoaWxkcmVuOiBhbnlbXSA9IFtdO1xyXG4gIEBWaWV3Q2hpbGQoJ2NoaWxkcmVuRGl2JykgY2hpbGRyZW5EaXY6IEVsZW1lbnRSZWY7XHJcbiAgY29uc3RydWN0b3IocHVibGljIHNlcnZpY2U6IFBzVG9vbGtpdFVpQ29uZmlnU2VydmljZSkge1xyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnRhYmxlLmhhc0NoaWxkcmVuKXtcclxuICAgICAgaWYgKCF0aGlzLnRhYmxlLmNoaWxkcmVuQXV0b0xvYWQpe1xyXG4gICAgICAgIHRoaXMuY2hpbGRyZW4gPSB0aGlzLmdldENoaWxkcmVuKCk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMudGFibGUucGVybWlzc2lvbnMuaGFzQWNjZXNzKFBlcm1pc3Npb25BY2Nlc3NUeXBlRW51bS5JbnNlcnQpKXtcclxuICAgICAgICB0aGlzLmFkZENoaWxkcmVuID0gbmV3IElucHV0Q2xhc3ModGhpcy50YWJsZS5lbnZpcm9ubWVudCwgdGhpcy50YWJsZS5sLCB0aGlzLnRhYmxlLm5hbWUgKyAnQWRkU3Vic2V0VGl0bGUnLFxyXG4gICAgICAgICAgJ2ZhLWR1b3RvbmUgZmEtcGx1cyBmYS1yb3RhdGUtOTAnLCBJbnB1dFR5cGUuSWNvbixcclxuICAgICAgICAgICdncmVlbiBtLWgtNSBoLTI1IGQtaWIgdmEtbSBmLXUnKTtcclxuICAgICAgICB0aGlzLmFkZENoaWxkcmVuLm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0ub25TdWNjZXNzQmFzZSA9ICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy50YWJsZS5tb2RhbC5oaWRlKCk7XHJcbiAgICAgICAgICAgIHRoaXMuc2hvd0NoaWxkcmVuLnR5cGUgPSBJbnB1dFR5cGUuSWNvbjtcclxuICAgICAgICAgICAgdGhpcy5sb2FkQ2hpbGRyZW4odGhpcy5yb3cuRGF0YS5JZCk7XHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgICAgdGhpcy50YWJsZS5zaG93SW5zZXJ0TW9kYWwodGhpcy5yb3cuRGF0YS5JZCk7XHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnNob3dDaGlsZHJlbiA9IG5ldyBJbnB1dENsYXNzKHRoaXMudGFibGUuZW52aXJvbm1lbnQsIHRoaXMudGFibGUubCwgdGhpcy50YWJsZS5uYW1lICsgJ1N1YnNldFRpdGxlJywgJ2ZhLWR1b3RvbmUgZmEtYW5nbGUtbGVmdCBmLXMtMjInLFxyXG4gICAgICAgIHRoaXMucm93LkRhdGEuQ291bnRDaGlsZCA+IDAgfHwgKCF0aGlzLnRhYmxlLmNoaWxkcmVuQXV0b0xvYWQgJiYgdGhpcy5jaGlsZHJlbi5sZW5ndGggPiAwKSA/IElucHV0VHlwZS5JY29uIDogSW5wdXRUeXBlLkhpZGRlbiwgJ2gtMjUgbS1oLTUgZC1pYiB2YS1tIGYtdScpO1xyXG4gICAgICB0aGlzLnNob3dDaGlsZHJlbi5vbkNsaWNrID0gKCkgPT4ge1xyXG4gICAgICAgIGlmICgkKHRoaXMuY2hpbGRyZW5EaXYubmF0aXZlRWxlbWVudCkuaXMoJzp2aXNpYmxlJykpe1xyXG4gICAgICAgICAgJCh0aGlzLmNoaWxkcmVuRGl2Lm5hdGl2ZUVsZW1lbnQpLnNsaWRlVXAoKTtcclxuICAgICAgICAgIHRoaXMuc2hvd0NoaWxkcmVuLmljb24gPSAnZmEtZHVvdG9uZSBmYS1hbmdsZS1sZWZ0IGYtcy0yMic7XHJcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmNoaWxkcmVuLmxlbmd0aCA9PT0gMCl7XHJcbiAgICAgICAgICB0aGlzLmxvYWRDaGlsZHJlbih0aGlzLnJvdy5EYXRhLklkKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgJCh0aGlzLmNoaWxkcmVuRGl2Lm5hdGl2ZUVsZW1lbnQpLnNsaWRlRG93bigpO1xyXG4gICAgICAgICAgdGhpcy5zaG93Q2hpbGRyZW4uaWNvbiA9ICdmYS1kdW90b25lIGZhLWFuZ2xlLWRvd24gZi1zLTIyJztcclxuICAgICAgICB9XHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy50YWJsZS5oYXNTdGF0dXMpe1xyXG4gICAgICB0aGlzLm9wdFN0YXR1cyA9IG5ldyBJbnB1dENsYXNzKHRoaXMudGFibGUuZW52aXJvbm1lbnQsIHRoaXMudGFibGUubCwgJ1N0YXR1cycsXHJcbiAgICAgICAgdGhpcy5yb3cuRGF0YS5BY3RpdmUgPyAnZmEtdG9nZ2xlLW9uJyA6ICdmYS10b2dnbGUtb2ZmJywgSW5wdXRUeXBlLkljb24sXHJcbiAgICAgICAgJ20taC01IGgtMjAgJyArICh0aGlzLnJvdy5EYXRhLkFjdGl2ZSA/ICdncmVlbicgOiAnJykpO1xyXG4gICAgICB0aGlzLm9wdFN0YXR1cy5yb3cgPSB0aGlzLnJvdy5EYXRhO1xyXG4gICAgICB0aGlzLm9wdFN0YXR1cy5vbkNsaWNrID0gKGJ0bikgPT4ge1xyXG4gICAgICAgIG5ldyBSZXF1ZXN0Q2xhc3ModGhpcy50YWJsZS5sKS5zZW5kKHRoaXMudGFibGUudXJsICsgJy9TdGF0dXMvJyArIGJ0bi5yb3cuSWQsIE1ldGhvZC5Qb3N0LCBudWxsLCBidG4sIChyKSA9PiB7XHJcbiAgICAgICAgICBidG4uY2xhc3MgPSAnbS1oLTUgaC0yMCAnICsgKHIgPyAnZ3JlZW4nIDogJycpO1xyXG4gICAgICAgICAgYnRuLmljb24gPSByID8gJ2ZhLXRvZ2dsZS1vbicgOiAnZmEtdG9nZ2xlLW9mZic7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy50YWJsZS5zb3J0YWJsZSl7XHJcbiAgICAgIHRoaXMuc2V0U29ydFJvdygpO1xyXG4gICAgfVxyXG4gIH1cclxuICBsb2FkQ2hpbGRyZW4ocCk6IHZvaWR7XHJcbiAgICBuZXcgUmVxdWVzdENsYXNzKHRoaXMudGFibGUuZW52aXJvbm1lbnQsIHRoaXMudGFibGUubCkuc2VuZCh0aGlzLnRhYmxlLnVybCArIGBMaXN0LyR7cH1gLCBNZXRob2QuUG9zdCxcclxuICAgICAgbnVsbCwgdGhpcy5zaG93Q2hpbGRyZW4sIChyZXN1bHQpID0+IHtcclxuICAgICAgdGhpcy5jaGlsZHJlbiA9IHJlc3VsdC5MaXN0O1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAkKHRoaXMuY2hpbGRyZW5EaXYubmF0aXZlRWxlbWVudCkuc2xpZGVEb3duKCk7XHJcbiAgICAgICAgdGhpcy5zaG93Q2hpbGRyZW4uaWNvbiA9ICdmYS1kdW90b25lIGZhLWFuZ2xlLWRvd24gZi1zLTIyJztcclxuICAgICAgfSwgNTApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHNlbGVjdCgpOiB2b2lke1xyXG4gICAgdGhpcy5yb3cuRGF0YS5zZWxlY3RlZCA9ICF0aGlzLnJvdy5EYXRhLnNlbGVjdGVkO1xyXG4gIH1cclxuICBvbkNoYW5nZVJvd3MoZSk6IHZvaWR7XHJcbiAgICByZXR1cm4gdGhpcy5jaGFuZ2VSb3dzLmVtaXQoZSk7XHJcbiAgfVxyXG4gIG9uQ29uZmlybVNob3coZSk6IHZvaWR7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maXJtU2hvdy5lbWl0KGUpO1xyXG4gIH1cclxuICBzZXRTb3J0Um93KCk6IHZvaWR7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgaWYgKHRoaXMudGFibGUuaGFzQ2hpbGRyZW4pIHtcclxuICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgJCh0aGlzLmNoaWxkcmVuRGl2Lm5hdGl2ZUVsZW1lbnQpLnNvcnRhYmxlKHtcclxuICAgICAgICAgIGF4aXM6ICd5JyxcclxuICAgICAgICAgIGhhbmRsZTogJz4gLnJvdyA+IC5pdGVtLWNvbiA+IC5oYW5kbGUtc29ydGFibGUnLFxyXG4gICAgICAgICAgdXBkYXRlOiAoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBbXTtcclxuICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgICAgICAgICAkKHRoaXMuY2hpbGRyZW5EaXYubmF0aXZlRWxlbWVudCkuc29ydGFibGUoJ3RvQXJyYXknKS5mb3JFYWNoKHggPT4gZGF0YS5wdXNoKHgpKTtcclxuICAgICAgICAgICAgbmV3IFJlcXVlc3RDbGFzcyh0aGlzLnRhYmxlLmwpLnNlbmQodGhpcy50YWJsZS51cmwgKyAnU29ydCcsIE1ldGhvZC5Qb3N0LCBkYXRhLCBudWxsLCAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgaWYgKHRoaXMudGFibGUub25Tb3J0KXtcclxuICAgICAgICAgICAgICAgIHRoaXMudGFibGUub25Tb3J0KCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSwgNTAwKTtcclxuICB9XHJcblxyXG4gIGdldElucHV0cygpOiBJbnB1dENsYXNzW117XHJcbiAgICBjb25zdCBpbnBzID0gW107XHJcbiAgICBmb3IgKGNvbnN0IG9wdGlvbiBvZiB0aGlzLnJvdy5PcHRpb25zLmZpbHRlcih4ID0+IHguVHlwZSA9PT0gUGVybWlzc2lvblR5cGVFbnVtLk9wdGlvbikpe1xyXG4gICAgICBjb25zdCBpbnAgPSBuZXcgSW5wdXRDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCB0aGlzLnRhYmxlLmwsIG9wdGlvbi5OYW1lLCBvcHRpb24uSWNvbiwgSW5wdXRUeXBlLkNoZWNrLCAnaC0yNSBtLWgtNSBkLWliIHZhLW0gZi11Jyk7XHJcbiAgICAgIGlucC5yb3cgPSB0aGlzLnJvdztcclxuICAgICAgaW5wLm9uQ2hhbmdlID0gKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHAgPSBuZXcgUGVybWlzc2lvbkNsYXNzKCk7XHJcbiAgICAgICAgcC5SZWxhdGVkSWQgPSB0aGlzLnRhYmxlLnBlcm1pc3Npb25zLlJlbGF0ZWRJZDtcclxuICAgICAgICBwLkFyZWEgPSB0aGlzLnRhYmxlLnBlcm1pc3Npb25zLkFyZWE7XHJcbiAgICAgICAgcC5Db250cm9sbGVyID0gb3B0aW9uLkNvbnRyb2xsZXI7XHJcbiAgICAgICAgcC5BY3Rpb24gPSBvcHRpb24uQWN0aW9uO1xyXG4gICAgICAgIG5ldyBSZXF1ZXN0Q2xhc3ModGhpcy50YWJsZS5sKS5zZW5kKHAuZ2V0VXJsKCksIE1ldGhvZC5Qb3N0LCBudWxsLCBudWxsLCAoKSA9PiB7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgaW5wcy5wdXNoKGlucCk7XHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgICByZXR1cm4gaW5wcztcclxuICB9XHJcbiAgZ2V0T3B0aW9ucygpOiBJbnB1dENsYXNzW117XHJcbiAgICBjb25zdCBvcHRzOiBJbnB1dENsYXNzW10gPSB0aGlzLmFkZENoaWxkcmVuICE9PSBudWxsICYmICh0aGlzLnRhYmxlLmxldmVsID09PSBudWxsIHx8IHRoaXMudGFibGUubGV2ZWwgPiB0aGlzLmxldmVsKSA/XHJcbiAgICAgIFt0aGlzLmFkZENoaWxkcmVuXSA6IFtdO1xyXG4gICAgZm9yIChjb25zdCBvcHRpb24gb2YgdGhpcy5yb3cuT3B0aW9ucy5maWx0ZXIoeCA9PiB4LlR5cGUgPT09IFBlcm1pc3Npb25UeXBlRW51bS5PcHRpb24pKXtcclxuICAgICAgY29uc3Qgb3B0ID0gbmV3IElucHV0Q2xhc3ModGhpcy50YWJsZS5lbnZpcm9ubWVudCwgdGhpcy50YWJsZS5sLCBvcHRpb24uTmFtZSwgb3B0aW9uLkljb24sXHJcbiAgICAgICAgb3B0aW9uLklucHV0VHlwZSA9PT0gUGVybWlzc2lvbklucHV0VHlwZUVudW0uSWNvbiA/IElucHV0VHlwZS5JY29uIDogSW5wdXRUeXBlLkJ1dHRvbiwgJ2JsdWUgaC0yNSBtLWgtNSBkLWliIHZhLW0gZi11Jyk7XHJcbiAgICAgIG9wdC5yb3cgPSB0aGlzLnJvdztcclxuICAgICAgaWYgKG9wdGlvbi5BY2Nlc3NUeXBlID09PSBQZXJtaXNzaW9uQWNjZXNzVHlwZUVudW0uVXBkYXRlKXtcclxuICAgICAgICBpZiAodGhpcy50YWJsZS5mb3JtKXtcclxuICAgICAgICAgIG9wdC5vbkNsaWNrID0gKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0udXJsID0gdGhpcy50YWJsZS51cmwgKyAnVXBkYXRlLycgKyB0aGlzLnJvdy5EYXRhLklkO1xyXG4gICAgICAgICAgICBpZiAodGhpcy50YWJsZS5oYXNDaGlsZHJlbiAmJiB0aGlzLnJvdy5EYXRhLlBhcmVudElkICE9IG51bGwpIHtcclxuICAgICAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0ub25TdWNjZXNzQmFzZSA9ICgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMudGFibGUubW9kYWwuaGlkZSgpO1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudGFibGUuY2hpbGRyZW5BdXRvTG9hZCl7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMubG9hZFBhcmVudC5lbWl0KHRoaXMucm93LkRhdGEuUGFyZW50SWQpO1xyXG4gICAgICAgICAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMudGFibGUubG9hZCgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgdGhpcy50YWJsZS5mb3JtLm9uU3VjY2Vzc0Jhc2UgPSAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMudGFibGUuZm9ybS5vblRvcCl7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMudGFibGUubW9kYWwuaGlkZSgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgdGhpcy50YWJsZS5mb3JtLmNsZWFyKCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnRhYmxlLmxvYWQoKTtcclxuICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuZWRpdChvcHQpO1xyXG4gICAgICAgICAgfTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgb3B0LnVybCA9IHRoaXMudGFibGUudXJsICsgJy9VcGRhdGUvJyArIHRoaXMucm93LkRhdGEuSWQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKG9wdGlvbi5BY2Nlc3NUeXBlID09PSBQZXJtaXNzaW9uQWNjZXNzVHlwZUVudW0uRGVsZXRlKXtcclxuICAgICAgICBvcHQuY2xhc3MgPSBvcHQuY2xhc3MucmVwbGFjZSgnYmx1ZScsICdyZWQnKTtcclxuICAgICAgICBvcHQub25DbGljayA9ICgpID0+IHtcclxuICAgICAgICAgIGlmICh0aGlzLnRhYmxlLmZvcm0pe1xyXG4gICAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0uY2xlYXIoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmICh0aGlzLnRhYmxlLnBlcm1pc3Npb25zLlR5cGUgPT09IFBlcm1pc3Npb25UeXBlRW51bS5Gb3JtKXtcclxuICAgICAgICAgICAgdGhpcy50YWJsZS5yb3dzID0gdGhpcy50YWJsZS5yb3dzLmZpbHRlcih4ID0+IHguSWQgIT09IHRoaXMucm93LkRhdGEuSWQpO1xyXG4gICAgICAgICAgICB0aGlzLmNoYW5nZVJvd3MuZW1pdCh0aGlzLnJvdy5EYXRhKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuY29uZmlybVNob3cuZW1pdCh7aWQ6IHRoaXMucm93LkRhdGEuSWQsIGFjY2VwdDogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudGFibGUuaGFzQ2hpbGRyZW4gJiYgdGhpcy50YWJsZS5jaGlsZHJlbkF1dG9Mb2FkICYmIHRoaXMucm93LkRhdGEuUGFyZW50SWQgIT0gbnVsbCApe1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmxvYWRQYXJlbnQuZW1pdCh0aGlzLnJvdy5EYXRhLlBhcmVudElkKTtcclxuICAgICAgICAgICAgICAgIH1lbHNle1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLnRhYmxlLmxvYWQoKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9fSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChvcHRpb24uQWNjZXNzVHlwZSA9PT0gUGVybWlzc2lvbkFjY2Vzc1R5cGVFbnVtLlJlcG9ydCl7XHJcbiAgICAgICAgY29uc3QgcCA9IG5ldyBQZXJtaXNzaW9uQ2xhc3MoKTtcclxuICAgICAgICBwLkFyZWEgPSB0aGlzLnRhYmxlLnBlcm1pc3Npb25zLkFyZWE7XHJcbiAgICAgICAgcC5Db250cm9sbGVyID0gJ1ByaW50JztcclxuICAgICAgICBwLkFjdGlvbiA9IG9wdGlvbi5Db250cm9sbGVyO1xyXG4gICAgICAgIG9wdC51cmwgPSAnL1JlcG9ydCcgKyBwLmdldFVybCgpICsgJy8nICsgdGhpcy5yb3cuRGF0YS5JZDtcclxuICAgICAgICBvcHQudXJsTmV3VGFiID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChvcHRpb24uSW5wdXRBY3Rpb24gPT09IFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0uTGluayB8fCBvcHRpb24uSW5wdXRBY3Rpb24gPT09IFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0uTGlua05ld1RhYil7XHJcbiAgICAgICAgY29uc3QgcCA9IG5ldyBQZXJtaXNzaW9uQ2xhc3MoKTtcclxuICAgICAgICBwLlJlbGF0ZWRJZCA9IHRoaXMudGFibGUucGVybWlzc2lvbnMuUmVsYXRlZElkO1xyXG4gICAgICAgIHAuQXJlYSA9IHRoaXMudGFibGUucGVybWlzc2lvbnMuQXJlYTtcclxuICAgICAgICBwLkNvbnRyb2xsZXIgPSBvcHRpb24uQ29udHJvbGxlcjtcclxuICAgICAgICBwLkFjdGlvbiA9IG9wdGlvbi5BY3Rpb247XHJcbiAgICAgICAgb3B0LnVybCA9IHAuZ2V0VXJsKCkgKyAnLycgKyB0aGlzLnJvdy5EYXRhLklkO1xyXG4gICAgICAgIG9wdC51cmxOZXdUYWIgPSBvcHRpb24uSW5wdXRBY3Rpb24gPT09IFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0uTGlua05ld1RhYjtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChvcHRpb24uSW5wdXRBY3Rpb24gPT09IFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0uTW9kYWwpe1xyXG4gICAgICAgIG9wdC5tb2RhbCA9IHRoaXMudGFibGUub3B0aW9uc0FjdGlvbnMuZmluZCh4ID0+IHgubmFtZSA9PT0gb3B0aW9uLkFjdGlvbik7XHJcbiAgICAgICAgb3B0Lm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgICAgICBpZiAob3B0Lm1vZGFsLnRhYmxlKXtcclxuICAgICAgICAgICAgY29uc3QgcCA9IG5ldyBQZXJtaXNzaW9uQ2xhc3MoKTtcclxuICAgICAgICAgICAgcC5SZWxhdGVkSWQgPSB0aGlzLnJvdy5EYXRhLklkO1xyXG4gICAgICAgICAgICBwLkFyZWEgPSB0aGlzLnRhYmxlLnBlcm1pc3Npb25zLkFyZWE7XHJcbiAgICAgICAgICAgIHAuQ29udHJvbGxlciA9IHRoaXMudGFibGUucGVybWlzc2lvbnMuQ29udHJvbGxlcjtcclxuICAgICAgICAgICAgcC5BY3Rpb24gPSBvcHRpb24uQWN0aW9uO1xyXG4gICAgICAgICAgICBwLkFjY2Vzc2VzID0gdGhpcy5yb3cuT3B0aW9ucy5maWx0ZXIoeCA9PiB4LlBhcmVudElkID09PSBvcHRpb24uSWQpO1xyXG4gICAgICAgICAgICBvcHQubW9kYWwudGFibGUucGVybWlzc2lvbnMgPSBwO1xyXG4gICAgICAgICAgICBpZiAob3B0Lm1vZGFsLnRhYmxlLmZvcm0pe1xyXG4gICAgICAgICAgICAgIG9wdC5tb2RhbC50YWJsZS5mb3JtLnVybCA9IHAuZ2V0VXJsKCkgKyAnSW5zZXJ0JztcclxuICAgICAgICAgICAgICBvcHQubW9kYWwudGFibGUuZm9ybS5iYXNlVXJsID0gcC5nZXRVcmwoKSArICdJbnNlcnQnO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIG9wdC5tb2RhbC50YWJsZS5zZXQoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmIChvcHQubW9kYWwuZm9ybSl7XHJcbiAgICAgICAgICAgIG9wdC5tb2RhbC5mb3JtLm5hbWUgPSBvcHRpb24uTmFtZTtcclxuICAgICAgICAgICAgb3B0Lm1vZGFsLmZvcm0udXJsID0gb3B0Lm1vZGFsLmZvcm0uYmFzZVVybCArICdVcGRhdGUvJyArIHRoaXMucm93LkRhdGEuSWQ7XHJcbiAgICAgICAgICAgIG9wdC5tb2RhbC5mb3JtLmxvYWREYXRhKG9wdC5tb2RhbC5mb3JtLmJhc2VVcmwgKyAnR2V0LycgKyB0aGlzLnJvdy5EYXRhLklkKTtcclxuICAgICAgICAgICAgb3B0Lm1vZGFsLmZvcm0ub25TdWNjZXNzQmFzZSA9ICgpID0+IHtcclxuICAgICAgICAgICAgICBvcHQubW9kYWwuaGlkZSgpO1xyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKG9wdC5tb2RhbC5hY2NvcmRpb24pe1xyXG4gICAgICAgICAgICBmb3IgKGNvbnN0IHIgb2Ygb3B0Lm1vZGFsLmFjY29yZGlvbi5yb3dzKXtcclxuICAgICAgICAgICAgICBpZiAoci50YWJsZSl7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgICAgICAgICAgcC5SZWxhdGVkSWQgPSB0aGlzLnJvdy5EYXRhLklkO1xyXG4gICAgICAgICAgICAgICAgcC5BcmVhID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5BcmVhO1xyXG4gICAgICAgICAgICAgICAgcC5Db250cm9sbGVyID0gb3B0aW9uLkNvbnRyb2xsZXI7XHJcbiAgICAgICAgICAgICAgICBwLkFjdGlvbiA9IHIubmFtZTtcclxuICAgICAgICAgICAgICAgIHAuQWNjZXNzZXMgPSB0aGlzLnJvdy5PcHRpb25zLmZpbHRlcih4ID0+IHguUGFyZW50SWQgPT09IG9wdGlvbi5JZCk7XHJcbiAgICAgICAgICAgICAgICByLnRhYmxlLnBlcm1pc3Npb25zID0gcDtcclxuICAgICAgICAgICAgICAgIGlmIChyLnRhYmxlLmZvcm0pe1xyXG4gICAgICAgICAgICAgICAgICByLnRhYmxlLmZvcm0udXJsID0gcC5nZXRVcmwoKSArICdJbnNlcnQnO1xyXG4gICAgICAgICAgICAgICAgICByLnRhYmxlLmZvcm0uYmFzZVVybCA9IHAuZ2V0VXJsKCkgKyAnSW5zZXJ0JztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHIudGFibGUuc2V0KCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChvcHRpb24uSW5wdXRBY3Rpb24gPT09IFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0uRmlsZSl7XHJcbiAgICAgICAgY29uc3QgcCA9IG5ldyBQZXJtaXNzaW9uQ2xhc3MoKTtcclxuICAgICAgICBwLlJlbGF0ZWRJZCA9IHRoaXMudGFibGUucGVybWlzc2lvbnMuUmVsYXRlZElkO1xyXG4gICAgICAgIHAuQXJlYSA9IHRoaXMudGFibGUucGVybWlzc2lvbnMuQXJlYTtcclxuICAgICAgICBwLkNvbnRyb2xsZXIgPSBvcHRpb24uQ29udHJvbGxlcjtcclxuICAgICAgICBwLkFjdGlvbiA9IG9wdGlvbi5BY3Rpb247XHJcbiAgICAgICAgb3B0LnVybCA9ICcvRmlsZScgKyBwLmdldFVybCgpICsgJy8nICsgdGhpcy5yb3cuRGF0YS5JZDtcclxuICAgICAgICBvcHQudXJsTmV3VGFiID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChvcHRpb24uSW5wdXRBY3Rpb24gPT09IFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0uQ29uZmlybSl7XHJcbiAgICAgICAgb3B0Lm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgICAgcC5SZWxhdGVkSWQgPSB0aGlzLnRhYmxlLnBlcm1pc3Npb25zLlJlbGF0ZWRJZDtcclxuICAgICAgICAgIHAuQXJlYSA9IHRoaXMudGFibGUucGVybWlzc2lvbnMuQXJlYTtcclxuICAgICAgICAgIHAuQ29udHJvbGxlciA9IG9wdGlvbi5Db250cm9sbGVyO1xyXG4gICAgICAgICAgcC5BY3Rpb24gPSBvcHRpb24uQWN0aW9uO1xyXG4gICAgICAgICAgdGhpcy50YWJsZS5zaG93Q29uZmlybSh0aGlzLnRhYmxlLmwob3B0aW9uLkFjdGlvbiArICdDb25maXJtJyksIHAuZ2V0VXJsKCkgKyAnLycgKyB0aGlzLnJvdy5EYXRhLklkLCBudWxsLCAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMudGFibGUubG9hZCgpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChvcHRpb24uSW5wdXRBY3Rpb24gPT09IFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0uT25DbGljayl7XHJcbiAgICAgICAgb3B0Lm9uQ2xpY2sgPSAoYnRuKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnRhYmxlLm9wdGlvbnNBY3Rpb25zLmZpbmQoeCA9PiB4Lm5hbWUgPT09IG9wdGlvbi5BY3Rpb24pLm9uQ2xpY2soYnRuKTtcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIG9wdHMucHVzaChvcHQpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG9wdHM7XHJcbiAgICAvLyByZXR1cm4gKHRoaXMuYWRkQ2hpbGRyZW4gIT09IG51bGwgJiYgKHRoaXMudGFibGUubGV2ZWwgPT09IG51bGwgfHwgdGhpcy50YWJsZS5sZXZlbCA+IHRoaXMubGV2ZWwpID8gW3RoaXMuYWRkQ2hpbGRyZW5dIDogW10pXHJcbiAgICAvLyAgIC5jb25jYXQodGhpcy50YWJsZS5vcHRpb25zLmZpbHRlcih4ID0+IHguY29uZGl0aW9uID09IG51bGwgfHxcclxuICAgIC8vICAgICAoeC5jb25kaXRpb24uc3RhcnRzV2l0aCgnIScpID8gIXRoaXMucm93LkRhdGFbeC5jb25kaXRpb24uc3Vic3RyaW5nKDEpXSA6IHRoaXMucm93LkRhdGFbeC5jb25kaXRpb25dKSkubWFwKChvKSA9PiB7XHJcbiAgICAvLyAgICAgY29uc3QgaSA9IEhlbHBlckNsYXNzLmNsb25lKG8pO1xyXG4gICAgLy8gICAgIGlmIChpLnVybCl7XHJcbiAgICAvLyAgICAgICBpLnVybCA9IGkudXJsLnJlcGxhY2UoJ3t9JywgdGhpcy5yb3cuRGF0YS5JZCk7XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gICAgIGkucm93ID0gdGhpcy5yb3cuRGF0YTtcclxuICAgIC8vICAgICBpLmNsYXNzID0gaS5jbGFzcyArICcgbS1oLTUgaC0yNSBkLWliIHZhLW0gZi11JztcclxuICAgIC8vICAgICByZXR1cm4gaTtcclxuICAgIC8vIH0pKS5jb25jYXQodGhpcy50YWJsZS5oYXNTdGF0dXMgPyBbdGhpcy5vcHRTdGF0dXNdIDogW10pXHJcbiAgICAvLyAgICAgLmNvbmNhdCh0aGlzLnRhYmxlLnBlcm1pc3Npb25zLmhhc0FjY2VzcygnVXBkYXRlJykgPyBbdGhpcy5vcHRFZGl0XSA6IFtdKVxyXG4gICAgLy8gICAgIC5jb25jYXQodGhpcy50YWJsZS5wZXJtaXNzaW9ucy5oYXNBY2Nlc3MoJ0RlbGV0ZScpID8gW3RoaXMub3B0RGVsZXRlXSA6IFtdKTtcclxuICB9XHJcbiAgZ2V0Q2VsbChjb2w6IFRhYmxlQ29sbENsYXNzKTogYW55e1xyXG4gICAgY29uc29sZS5sb2coJ2dldENlbGwnKTtcclxuICAgIGNvbnN0IGN2ID0gXy5nZXQodGhpcy5yb3cuRGF0YSwgY29sLm5hbWUpO1xyXG4gICAgaWYgKGNvbC5mdW4gIT0gbnVsbCkge1xyXG4gICAgICByZXR1cm4gY29sLmZ1bih0aGlzLnJvdy5EYXRhKTtcclxuICAgIH0gZWxzZSBpZiAoY29sLmVudW0gIT09IG51bGwpIHtcclxuICAgICAgcmV0dXJuIGNvbC5lbnVtLmdldChjdik7XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLkRhdGVEaWYpIHtcclxuICAgICAgcmV0dXJuIEhlbHBlckNsYXNzLmdldERhdGVEaWYodGhpcy50YWJsZS5sLCBjdik7XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLkRhdGUpIHtcclxuICAgICAgcmV0dXJuIEhlbHBlckNsYXNzLmdldERhdGUoY3YpO1xyXG4gICAgfSBlbHNlIGlmIChjb2wudHlwZSA9PT0gVGFibGVDb2xsVHlwZS5EYXRlVGltZSkge1xyXG4gICAgICByZXR1cm4gSGVscGVyQ2xhc3MuZ2V0RGF0ZVRpbWUoY3YpO1xyXG4gICAgfSBlbHNlIGlmIChjb2wudHlwZSA9PT0gVGFibGVDb2xsVHlwZS5UaW1lKSB7XHJcbiAgICAgIHJldHVybiBIZWxwZXJDbGFzcy5nZXRUaW1lKGN2KTtcclxuICAgIH0gZWxzZSBpZiAoY29sLnR5cGUgPT09IFRhYmxlQ29sbFR5cGUuQ29sb3IpIHtcclxuICAgICAgcmV0dXJuICc8ZGl2IGNsYXNzPVwiY29sb3JcIiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6ICcgKyBjdiArICc7IGNvbG9yOiAnICsgSGVscGVyQ2xhc3MuZ2V0Q29sb3JCeUJnQ29sb3IoY3YpICsgJ1wiPicgKyBjdiArICc8L2Rpdj4nO1xyXG4gICAgfSBlbHNlIGlmIChjb2wudHlwZSA9PT0gVGFibGVDb2xsVHlwZS5VcmwpIHtcclxuICAgICAgcmV0dXJuICc8YSB0YXJnZXQ9XCJfYmxhbmtcIiBocmVmPVwiJyArIGN2ICsgJ1wiPicgKyBjdiArICc8L2E+JztcclxuICAgIH0gZWxzZSBpZiAoY29sLnR5cGUgPT09IFRhYmxlQ29sbFR5cGUuSW1hZ2UpIHtcclxuICAgICAgcmV0dXJuICc8aW1nIGNsYXNzPVwiaC0xMDBcIiBhbHQ9XCJcIiBzcmM9XCInICsgdGhpcy5zZXJ2aWNlLmVudmlyb25tZW50LnVybCArIGN2ICsgJ1wiLz4nO1xyXG4gICAgfSBlbHNlIGlmIChjb2wudHlwZSA9PT0gVGFibGVDb2xsVHlwZS5GaWxlU2l6ZSkge1xyXG4gICAgICByZXR1cm4gSGVscGVyQ2xhc3MuZ2V0RmlsZVNpemUoY3YpO1xyXG4gICAgfSBlbHNlIGlmIChjb2wudHlwZSA9PT0gVGFibGVDb2xsVHlwZS5QcmljZSkge1xyXG4gICAgICByZXR1cm4gY3YudG9Mb2NhbGVTdHJpbmcoKSArICcgJyArIHRoaXMudGFibGUubCgnUmlhbCcpO1xyXG4gICAgfSBlbHNlIGlmIChjb2wudHlwZSA9PT0gVGFibGVDb2xsVHlwZS5QbGFxdWUpIHtcclxuICAgICAgY29uc3QgcGFydHMgPSBjdi5zcGxpdCgnXycpO1xyXG4gICAgICBpZiAocGFydHMubGVuZ3RoID09PSA0KSB7XHJcbiAgICAgICAgcmV0dXJuICc8ZGl2IGNsYXNzPVwicGxhcXVlJyArIChwYXJ0c1sxXSA9PT0gJ9i5JyA/ICcgcCcgOiAnJykgKyAocGFydHNbMV0gPT09ICfYp9mE2YEnID8gJyBnJyA6ICcnKSArICdcIj4nICtcclxuICAgICAgICAgICc8ZGl2IGNsYXNzPVwicGFydDFcIj4nICsgcGFydHNbMF0gKyAnPC9kaXY+JyArXHJcbiAgICAgICAgICAnPGRpdiBjbGFzcz1cInBhcnQyXCI+JyArIHBhcnRzWzFdICsgJzwvZGl2PicgK1xyXG4gICAgICAgICAgJzxkaXYgY2xhc3M9XCJwYXJ0M1wiPicgKyBwYXJ0c1syXSArICc8L2Rpdj4nICtcclxuICAgICAgICAgICc8ZGl2IGNsYXNzPVwicGFydDRcIj4nICsgcGFydHNbM10gKyAnPC9kaXY+JyArXHJcbiAgICAgICAgICAnPC9kaXY+JztcclxuICAgICAgfSBlbHNlIGlmIChwYXJ0cy5sZW5ndGggPT09IDIpe1xyXG4gICAgICAgIHJldHVybiAnPGRpdiBjbGFzcz1cInBsYXF1ZSBwbGFxdWUtbVwiPicgK1xyXG4gICAgICAgICAgJzxkaXYgY2xhc3M9XCJwYXJ0MVwiPicgKyBwYXJ0c1swXSArICc8L2Rpdj4nICtcclxuICAgICAgICAgICc8ZGl2IGNsYXNzPVwicGFydDJcIj4nICsgcGFydHNbMV0gKyAnPC9kaXY+JyArXHJcbiAgICAgICAgICAnPC9kaXY+JztcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmIChjb2wudHlwZSA9PT0gVGFibGVDb2xsVHlwZS5QbGFxdWVUZXh0KSB7XHJcbiAgICAgIGNvbnN0IHBhcnRzID0gY3Yuc3BsaXQoJ18nKTtcclxuICAgICAgaWYgKHBhcnRzLmxlbmd0aCA9PT0gNCl7XHJcbiAgICAgICAgcmV0dXJuIGA8ZGl2IGNsYXNzPVwibHRyXCI+JHtwYXJ0c1swXX0gJHtwYXJ0c1sxXX0mbHJtOyAke3BhcnRzWzJdfSAke3BhcnRzWzNdfTwvZGl2PmA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLnRhYmxlLmwoY3YpO1xyXG4gIH1cclxuICBnZXRDb2wobik6IHN0cmluZ3tcclxuICAgIGxldCBjID0gdGhpcy5yb3cuRGF0YTtcclxuICAgIG4uc3BsaXQoJy4nKS5mb3JFYWNoKCh4KSA9PiB7XHJcbiAgICAgIGMgPSBjW3hdO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gYztcclxuICB9XHJcbiAgZWRpdChvcHQ6IElucHV0Q2xhc3MpOiB2b2lke1xyXG4gICAgaWYgKHRoaXMudGFibGUucGVybWlzc2lvbnMuVHlwZSA9PT0gUGVybWlzc2lvblR5cGVFbnVtLkZvcm0pe1xyXG4gICAgICB0aGlzLnRhYmxlLmZvcm0ubmFtZSA9IG9wdC5uYW1lO1xyXG4gICAgICB0aGlzLnRhYmxlLmZvcm0uc2V0RGF0YSh0aGlzLnJvdy5EYXRhKTtcclxuICAgICAgdGhpcy50YWJsZS5mb3JtLnNldEJ1dHRvbnModGhpcy50YWJsZS5mb3JtLm9uVG9wLCB0cnVlLCB0aGlzLnJvdy5EYXRhLklkKTtcclxuICAgICAgdGhpcy50YWJsZS5mb3JtLmlucHV0cy5maWx0ZXIoeCA9PiB4LmluRWRpdERpc2FibGVkKS5mb3JFYWNoKHggPT4geC5kaXNhYmxlZCA9IHRydWUpO1xyXG4gICAgICB0aGlzLnRhYmxlLmZvcm0uaW5wdXRzLmZpbHRlcih4ID0+ICF4LmluRWRpdFZpc2libGUpLmZvckVhY2goeCA9PiB4LnZpc2libGUgPSBmYWxzZSk7XHJcbiAgICB9ZWxzZXtcclxuICAgICAgbmV3IFJlcXVlc3RDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCB0aGlzLnRhYmxlLmwpLnNlbmQodGhpcy50YWJsZS51cmwgKyAnR2V0LycgKyB0aGlzLnJvdy5EYXRhLklkLCBNZXRob2QuUG9zdCxcclxuICAgICAgICBudWxsLCBvcHQsIChyZXN1bHQpID0+IHtcclxuICAgICAgICB0aGlzLnRhYmxlLmZvcm0ubmFtZSA9IG9wdC5uYW1lO1xyXG4gICAgICAgIHRoaXMudGFibGUuZm9ybS5zZXRCdXR0b25zKHRoaXMudGFibGUuZm9ybS5vblRvcCwgdHJ1ZSwgdGhpcy5yb3cuRGF0YS5JZCk7XHJcbiAgICAgICAgdGhpcy50YWJsZS5mb3JtLnNldERhdGEocmVzdWx0KTtcclxuICAgICAgICB0aGlzLnRhYmxlLmZvcm0uaW5wdXRzLmZpbHRlcih4ID0+IHguaW5FZGl0RGlzYWJsZWQpLmZvckVhY2goeCA9PiB4LmRpc2FibGVkID0gdHJ1ZSk7XHJcbiAgICAgICAgdGhpcy50YWJsZS5mb3JtLmlucHV0cy5maWx0ZXIoeCA9PiAheC5pbkVkaXRWaXNpYmxlKS5mb3JFYWNoKHggPT4geC52aXNpYmxlID0gZmFsc2UpO1xyXG4gICAgICAgIGlmICh0aGlzLnRhYmxlLm1vZGFsKXtcclxuICAgICAgICAgIHRoaXMudGFibGUubW9kYWwuc2hvdygpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGdldENoaWxkcmVuKCk6IGFueVtde1xyXG4gICAgcmV0dXJuIHRoaXMucm93LkRhdGEuSWQgPyB0aGlzLnRhYmxlLnJvd3MuZmlsdGVyKHggPT4geC5EYXRhLlBhcmVudElkID09PSB0aGlzLnJvdy5EYXRhLklkKSA6IFtdO1xyXG4gIH1cclxufVxyXG4iXX0=
400
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUucm93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJEOi9Qcm9qZWN0cy9Qc1Rvb2xraXQvVUkvcHJvamVjdHMvcHMtdG9vbGtpdC11aS9zcmMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy90YWJsZS9yb3cvdGFibGUucm93LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUU1QixPQUFPLEVBQ0wsU0FBUyxFQUNULE1BQU0sRUFBRSx3QkFBd0IsRUFDaEMseUJBQXlCLEVBQ3pCLHVCQUF1QixFQUN2QixrQkFBa0IsRUFDbEIsYUFBYSxFQUNiLGVBQWUsRUFDaEIsTUFBTSw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDdkQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQzVELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUMxRCxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxRSxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFPbEUsTUFBTSxPQUFPLGlCQUFpQjtJQW9CNUIsWUFBbUIsT0FBaUM7UUFBakMsWUFBTyxHQUFQLE9BQU8sQ0FBMEI7UUFsQnBELGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUV6QyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQVF4QyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUl4QyxpQkFBWSxHQUFlLElBQUksQ0FBQztR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QUNuRyxDQUFDOzs7WUFwWEYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxlQUFlO2dCQUN6Qiw2akVBQXlDOzthQUUxQzs7O1lBUk8sd0JBQXdCOzs7MEJBVTdCLE1BQU07eUJBRU4sTUFBTTtvQkFFTixLQUFLO29CQUVMLEtBQUs7a0JBRUwsS0FBSzt5QkFFTCxNQUFNOzBCQVFOLFNBQVMsU0FBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XHJcbmltcG9ydCB7VGFibGVDbGFzcywgVGFibGVDb2xsQ2xhc3N9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvdGFibGUuY2xhc3MnO1xyXG5pbXBvcnQge1xyXG4gIElucHV0VHlwZSxcclxuICBNZXRob2QsIFBlcm1pc3Npb25BY2Nlc3NUeXBlRW51bSxcclxuICBQZXJtaXNzaW9uSW5wdXRBY3Rpb25FbnVtLFxyXG4gIFBlcm1pc3Npb25JbnB1dFR5cGVFbnVtLFxyXG4gIFBlcm1pc3Npb25UeXBlRW51bSxcclxuICBUYWJsZUNvbGxUeXBlLFxyXG4gIFRhYmxlT3B0aW9uVHlwZVxyXG59IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvZW51bS5jbGFzcyc7XHJcbmltcG9ydCB7SW5wdXRDbGFzc30gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9mb3JtLmNsYXNzJztcclxuaW1wb3J0IHtSZXF1ZXN0Q2xhc3N9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvcmVxdWVzdC5jbGFzcyc7XHJcbmltcG9ydCB7SGVscGVyQ2xhc3N9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvaGVscGVyLmNsYXNzJztcclxuaW1wb3J0IHtQc1Rvb2xraXRVaUNvbmZpZ1NlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2NvbmZpZy5zZXJ2aWNlJztcclxuaW1wb3J0ICogYXMgJCBmcm9tICdqcXVlcnknO1xyXG5pbXBvcnQge1Blcm1pc3Npb25DbGFzc30gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9wZXJtaXNzaW9uLmNsYXNzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXRhYmxlLXJvdycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLnJvdy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdGFibGUucm93LmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFibGVSb3dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXR7XHJcbiAgQE91dHB1dCgpXHJcbiAgY29uZmlybVNob3cgPSBuZXcgRXZlbnRFbWl0dGVyPG9iamVjdD4oKTtcclxuICBAT3V0cHV0KClcclxuICBjaGFuZ2VSb3dzID0gbmV3IEV2ZW50RW1pdHRlcjxvYmplY3Q+KCk7XHJcbiAgQElucHV0KClcclxuICBsZXZlbDogbnVtYmVyO1xyXG4gIEBJbnB1dCgpXHJcbiAgdGFibGU6IFRhYmxlQ2xhc3M7XHJcbiAgQElucHV0KClcclxuICByb3c7XHJcbiAgQE91dHB1dCgpXHJcbiAgbG9hZFBhcmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG4gIGdldCB0eXBlKCk6IHR5cGVvZiBJbnB1dFR5cGUgeyByZXR1cm4gSW5wdXRUeXBlOyB9XHJcbiAgZ2V0IHRhYmxlT3B0aW9uVHlwZSgpOiB0eXBlb2YgVGFibGVPcHRpb25UeXBleyByZXR1cm4gVGFibGVPcHRpb25UeXBlOyB9XHJcbiAgb3B0U3RhdHVzOiBJbnB1dENsYXNzO1xyXG4gIHNob3dDaGlsZHJlbjogSW5wdXRDbGFzcyA9IG51bGw7XHJcbiAgYWRkQ2hpbGRyZW46IElucHV0Q2xhc3MgPSBudWxsO1xyXG4gIGNoaWxkcmVuOiBhbnlbXSA9IFtdO1xyXG4gIEBWaWV3Q2hpbGQoJ2NoaWxkcmVuRGl2JykgY2hpbGRyZW5EaXY6IEVsZW1lbnRSZWY7XHJcbiAgY29uc3RydWN0b3IocHVibGljIHNlcnZpY2U6IFBzVG9vbGtpdFVpQ29uZmlnU2VydmljZSkge1xyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnRhYmxlLmhhc0NoaWxkcmVuKXtcclxuICAgICAgaWYgKCF0aGlzLnRhYmxlLmNoaWxkcmVuQXV0b0xvYWQpe1xyXG4gICAgICAgIHRoaXMuY2hpbGRyZW4gPSB0aGlzLmdldENoaWxkcmVuKCk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMudGFibGUucGVybWlzc2lvbnMuaGFzQWNjZXNzKFBlcm1pc3Npb25BY2Nlc3NUeXBlRW51bS5JbnNlcnQpKXtcclxuICAgICAgICB0aGlzLmFkZENoaWxkcmVuID0gbmV3IElucHV0Q2xhc3ModGhpcy50YWJsZS5lbnZpcm9ubWVudCwgdGhpcy50YWJsZS5sLCB0aGlzLnRhYmxlLm5hbWUgKyAnQWRkU3Vic2V0VGl0bGUnLFxyXG4gICAgICAgICAgJ2ZhLWR1b3RvbmUgZmEtcGx1cyBmYS1yb3RhdGUtOTAnLCBJbnB1dFR5cGUuSWNvbixcclxuICAgICAgICAgICdncmVlbiBtLWgtNSBoLTI1IGQtaWIgdmEtbSBmLXUnKTtcclxuICAgICAgICB0aGlzLmFkZENoaWxkcmVuLm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0ub25TdWNjZXNzQmFzZSA9ICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy50YWJsZS5tb2RhbC5oaWRlKCk7XHJcbiAgICAgICAgICAgIHRoaXMuc2hvd0NoaWxkcmVuLnR5cGUgPSBJbnB1dFR5cGUuSWNvbjtcclxuICAgICAgICAgICAgdGhpcy5sb2FkQ2hpbGRyZW4odGhpcy5yb3cuRGF0YS5JZCk7XHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgICAgdGhpcy50YWJsZS5zaG93SW5zZXJ0TW9kYWwodGhpcy5yb3cuRGF0YS5JZCk7XHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnNob3dDaGlsZHJlbiA9IG5ldyBJbnB1dENsYXNzKHRoaXMudGFibGUuZW52aXJvbm1lbnQsIHRoaXMudGFibGUubCwgdGhpcy50YWJsZS5uYW1lICsgJ1N1YnNldFRpdGxlJywgJ2ZhLWR1b3RvbmUgZmEtYW5nbGUtbGVmdCBmLXMtMjInLFxyXG4gICAgICAgIHRoaXMucm93LkRhdGEuQ291bnRDaGlsZCA+IDAgfHwgKCF0aGlzLnRhYmxlLmNoaWxkcmVuQXV0b0xvYWQgJiYgdGhpcy5jaGlsZHJlbi5sZW5ndGggPiAwKSA/IElucHV0VHlwZS5JY29uIDogSW5wdXRUeXBlLkhpZGRlbiwgJ2gtMjUgbS1oLTUgZC1pYiB2YS1tIGYtdScpO1xyXG4gICAgICB0aGlzLnNob3dDaGlsZHJlbi5vbkNsaWNrID0gKCkgPT4ge1xyXG4gICAgICAgIGlmICgkKHRoaXMuY2hpbGRyZW5EaXYubmF0aXZlRWxlbWVudCkuaXMoJzp2aXNpYmxlJykpe1xyXG4gICAgICAgICAgJCh0aGlzLmNoaWxkcmVuRGl2Lm5hdGl2ZUVsZW1lbnQpLnNsaWRlVXAoKTtcclxuICAgICAgICAgIHRoaXMuc2hvd0NoaWxkcmVuLmljb24gPSAnZmEtZHVvdG9uZSBmYS1hbmdsZS1sZWZ0IGYtcy0yMic7XHJcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmNoaWxkcmVuLmxlbmd0aCA9PT0gMCl7XHJcbiAgICAgICAgICB0aGlzLmxvYWRDaGlsZHJlbih0aGlzLnJvdy5EYXRhLklkKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgJCh0aGlzLmNoaWxkcmVuRGl2Lm5hdGl2ZUVsZW1lbnQpLnNsaWRlRG93bigpO1xyXG4gICAgICAgICAgdGhpcy5zaG93Q2hpbGRyZW4uaWNvbiA9ICdmYS1kdW90b25lIGZhLWFuZ2xlLWRvd24gZi1zLTIyJztcclxuICAgICAgICB9XHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy50YWJsZS5oYXNTdGF0dXMpe1xyXG4gICAgICB0aGlzLm9wdFN0YXR1cyA9IG5ldyBJbnB1dENsYXNzKHRoaXMudGFibGUuZW52aXJvbm1lbnQsIHRoaXMudGFibGUubCwgJ1N0YXR1cycsXHJcbiAgICAgICAgdGhpcy5yb3cuRGF0YS5BY3RpdmUgPyAnZmEtdG9nZ2xlLW9uJyA6ICdmYS10b2dnbGUtb2ZmJywgSW5wdXRUeXBlLkljb24sXHJcbiAgICAgICAgJ20taC01IGgtMjAgJyArICh0aGlzLnJvdy5EYXRhLkFjdGl2ZSA/ICdncmVlbicgOiAnJykpO1xyXG4gICAgICB0aGlzLm9wdFN0YXR1cy5yb3cgPSB0aGlzLnJvdy5EYXRhO1xyXG4gICAgICB0aGlzLm9wdFN0YXR1cy5vbkNsaWNrID0gKGJ0bikgPT4ge1xyXG4gICAgICAgIG5ldyBSZXF1ZXN0Q2xhc3ModGhpcy50YWJsZS5sKS5zZW5kKHRoaXMudGFibGUudXJsICsgJy9TdGF0dXMvJyArIGJ0bi5yb3cuSWQsIE1ldGhvZC5Qb3N0LCBudWxsLCBidG4sIChyKSA9PiB7XHJcbiAgICAgICAgICBidG4uY2xhc3MgPSAnbS1oLTUgaC0yMCAnICsgKHIgPyAnZ3JlZW4nIDogJycpO1xyXG4gICAgICAgICAgYnRuLmljb24gPSByID8gJ2ZhLXRvZ2dsZS1vbicgOiAnZmEtdG9nZ2xlLW9mZic7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy50YWJsZS5zb3J0YWJsZSl7XHJcbiAgICAgIHRoaXMuc2V0U29ydFJvdygpO1xyXG4gICAgfVxyXG4gIH1cclxuICBsb2FkQ2hpbGRyZW4ocCk6IHZvaWR7XHJcbiAgICBuZXcgUmVxdWVzdENsYXNzKHRoaXMudGFibGUuZW52aXJvbm1lbnQsIHRoaXMudGFibGUubCkuc2VuZCh0aGlzLnRhYmxlLnVybCArIGBMaXN0LyR7cH1gLCBNZXRob2QuUG9zdCxcclxuICAgICAgbnVsbCwgdGhpcy5zaG93Q2hpbGRyZW4sIChyZXN1bHQpID0+IHtcclxuICAgICAgdGhpcy5jaGlsZHJlbiA9IHJlc3VsdC5MaXN0O1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAkKHRoaXMuY2hpbGRyZW5EaXYubmF0aXZlRWxlbWVudCkuc2xpZGVEb3duKCk7XHJcbiAgICAgICAgdGhpcy5zaG93Q2hpbGRyZW4uaWNvbiA9ICdmYS1kdW90b25lIGZhLWFuZ2xlLWRvd24gZi1zLTIyJztcclxuICAgICAgfSwgNTApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHNlbGVjdCgpOiB2b2lke1xyXG4gICAgdGhpcy5yb3cuRGF0YS5zZWxlY3RlZCA9ICF0aGlzLnJvdy5EYXRhLnNlbGVjdGVkO1xyXG4gIH1cclxuICBvbkNoYW5nZVJvd3MoZSk6IHZvaWR7XHJcbiAgICByZXR1cm4gdGhpcy5jaGFuZ2VSb3dzLmVtaXQoZSk7XHJcbiAgfVxyXG4gIG9uQ29uZmlybVNob3coZSk6IHZvaWR7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maXJtU2hvdy5lbWl0KGUpO1xyXG4gIH1cclxuICBzZXRTb3J0Um93KCk6IHZvaWR7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgaWYgKHRoaXMudGFibGUuaGFzQ2hpbGRyZW4pIHtcclxuICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgJCh0aGlzLmNoaWxkcmVuRGl2Lm5hdGl2ZUVsZW1lbnQpLnNvcnRhYmxlKHtcclxuICAgICAgICAgIGF4aXM6ICd5JyxcclxuICAgICAgICAgIGhhbmRsZTogJz4gLnJvdyA+IC5pdGVtLWNvbiA+IC5oYW5kbGUtc29ydGFibGUnLFxyXG4gICAgICAgICAgdXBkYXRlOiAoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBbXTtcclxuICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgICAgICAgICAkKHRoaXMuY2hpbGRyZW5EaXYubmF0aXZlRWxlbWVudCkuc29ydGFibGUoJ3RvQXJyYXknKS5mb3JFYWNoKHggPT4gZGF0YS5wdXNoKHgpKTtcclxuICAgICAgICAgICAgbmV3IFJlcXVlc3RDbGFzcyh0aGlzLnRhYmxlLmwpLnNlbmQodGhpcy50YWJsZS51cmwgKyAnU29ydCcsIE1ldGhvZC5Qb3N0LCBkYXRhLCBudWxsLCAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgaWYgKHRoaXMudGFibGUub25Tb3J0KXtcclxuICAgICAgICAgICAgICAgIHRoaXMudGFibGUub25Tb3J0KCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSwgNTAwKTtcclxuICB9XHJcblxyXG4gIGdldElucHV0cygpOiBJbnB1dENsYXNzW117XHJcbiAgICBjb25zdCBpbnBzID0gW107XHJcbiAgICBmb3IgKGNvbnN0IG9wdGlvbiBvZiB0aGlzLnJvdy5PcHRpb25zLmZpbHRlcih4ID0+IHguVHlwZSA9PT0gUGVybWlzc2lvblR5cGVFbnVtLk9wdGlvbiAmJiBvcHRpb24uSW5wdXRBY3Rpb24gPT09IFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0uSW5wdXQpKXtcclxuICAgICAgY29uc3QgaW5wID0gbmV3IElucHV0Q2xhc3ModGhpcy50YWJsZS5lbnZpcm9ubWVudCwgdGhpcy50YWJsZS5sLCBvcHRpb24uTmFtZSwgb3B0aW9uLkljb24sIElucHV0VHlwZS5DaGVjaywgJ2gtMjUgbS1oLTUgZC1pYiB2YS1tIGYtdScpO1xyXG4gICAgICBpbnAucm93ID0gdGhpcy5yb3c7XHJcbiAgICAgIGlucC5vbkNoYW5nZSA9ICgpID0+IHtcclxuICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgIHAuUmVsYXRlZElkID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5SZWxhdGVkSWQ7XHJcbiAgICAgICAgcC5BcmVhID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5BcmVhO1xyXG4gICAgICAgIHAuQ29udHJvbGxlciA9IG9wdGlvbi5Db250cm9sbGVyO1xyXG4gICAgICAgIHAuQWN0aW9uID0gb3B0aW9uLkFjdGlvbjtcclxuICAgICAgICBuZXcgUmVxdWVzdENsYXNzKHRoaXMudGFibGUubCkuc2VuZChwLmdldFVybCgpLCBNZXRob2QuUG9zdCwgbnVsbCwgbnVsbCwgKCkgPT4ge1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGlucHMucHVzaChpbnApO1xyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGlucHM7XHJcbiAgfVxyXG4gIGdldE9wdGlvbnMoKTogSW5wdXRDbGFzc1tde1xyXG4gICAgY29uc3Qgb3B0czogSW5wdXRDbGFzc1tdID0gdGhpcy5hZGRDaGlsZHJlbiAhPT0gbnVsbCAmJiAodGhpcy50YWJsZS5sZXZlbCA9PT0gbnVsbCB8fCB0aGlzLnRhYmxlLmxldmVsID4gdGhpcy5sZXZlbCkgP1xyXG4gICAgICBbdGhpcy5hZGRDaGlsZHJlbl0gOiBbXTtcclxuICAgIGZvciAoY29uc3Qgb3B0aW9uIG9mIHRoaXMucm93Lk9wdGlvbnMuZmlsdGVyKHggPT4geC5UeXBlID09PSBQZXJtaXNzaW9uVHlwZUVudW0uT3B0aW9uICYmIG9wdGlvbi5JbnB1dEFjdGlvbiAhPT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5JbnB1dCkpe1xyXG4gICAgICBjb25zdCBvcHQgPSBuZXcgSW5wdXRDbGFzcyh0aGlzLnRhYmxlLmVudmlyb25tZW50LCB0aGlzLnRhYmxlLmwsIG9wdGlvbi5OYW1lLCBvcHRpb24uSWNvbixcclxuICAgICAgICBvcHRpb24uSW5wdXRUeXBlID09PSBQZXJtaXNzaW9uSW5wdXRUeXBlRW51bS5JY29uID8gSW5wdXRUeXBlLkljb24gOiBJbnB1dFR5cGUuQnV0dG9uLCAnYmx1ZSBoLTI1IG0taC01IGQtaWIgdmEtbSBmLXUnKTtcclxuICAgICAgb3B0LnJvdyA9IHRoaXMucm93O1xyXG4gICAgICBpZiAob3B0aW9uLkFjY2Vzc1R5cGUgPT09IFBlcm1pc3Npb25BY2Nlc3NUeXBlRW51bS5VcGRhdGUpe1xyXG4gICAgICAgIGlmICh0aGlzLnRhYmxlLmZvcm0pe1xyXG4gICAgICAgICAgb3B0Lm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMudGFibGUuZm9ybS51cmwgPSB0aGlzLnRhYmxlLnVybCArICdVcGRhdGUvJyArIHRoaXMucm93LkRhdGEuSWQ7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLnRhYmxlLmhhc0NoaWxkcmVuICYmIHRoaXMucm93LkRhdGEuUGFyZW50SWQgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgIHRoaXMudGFibGUuZm9ybS5vblN1Y2Nlc3NCYXNlID0gKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy50YWJsZS5tb2RhbC5oaWRlKCk7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy50YWJsZS5jaGlsZHJlbkF1dG9Mb2FkKXtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5sb2FkUGFyZW50LmVtaXQodGhpcy5yb3cuRGF0YS5QYXJlbnRJZCk7XHJcbiAgICAgICAgICAgICAgICB9ZWxzZXtcclxuICAgICAgICAgICAgICAgICAgdGhpcy50YWJsZS5sb2FkKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0ub25TdWNjZXNzQmFzZSA9ICgpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmICghdGhpcy50YWJsZS5mb3JtLm9uVG9wKXtcclxuICAgICAgICAgICAgICAgICAgdGhpcy50YWJsZS5tb2RhbC5oaWRlKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB0aGlzLnRhYmxlLmZvcm0uY2xlYXIoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMudGFibGUubG9hZCgpO1xyXG4gICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5lZGl0KG9wdCk7XHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBvcHQudXJsID0gdGhpcy50YWJsZS51cmwgKyAnL1VwZGF0ZS8nICsgdGhpcy5yb3cuRGF0YS5JZDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAob3B0aW9uLkFjY2Vzc1R5cGUgPT09IFBlcm1pc3Npb25BY2Nlc3NUeXBlRW51bS5EZWxldGUpe1xyXG4gICAgICAgIG9wdC5jbGFzcyA9IG9wdC5jbGFzcy5yZXBsYWNlKCdibHVlJywgJ3JlZCcpO1xyXG4gICAgICAgIG9wdC5vbkNsaWNrID0gKCkgPT4ge1xyXG4gICAgICAgICAgaWYgKHRoaXMudGFibGUuZm9ybSl7XHJcbiAgICAgICAgICAgIHRoaXMudGFibGUuZm9ybS5jbGVhcigpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHRoaXMudGFibGUucGVybWlzc2lvbnMuVHlwZSA9PT0gUGVybWlzc2lvblR5cGVFbnVtLkZvcm0pe1xyXG4gICAgICAgICAgICB0aGlzLnRhYmxlLnJvd3MgPSB0aGlzLnRhYmxlLnJvd3MuZmlsdGVyKHggPT4geC5JZCAhPT0gdGhpcy5yb3cuRGF0YS5JZCk7XHJcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlUm93cy5lbWl0KHRoaXMucm93LkRhdGEpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5jb25maXJtU2hvdy5lbWl0KHtpZDogdGhpcy5yb3cuRGF0YS5JZCwgYWNjZXB0OiAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy50YWJsZS5oYXNDaGlsZHJlbiAmJiB0aGlzLnRhYmxlLmNoaWxkcmVuQXV0b0xvYWQgJiYgdGhpcy5yb3cuRGF0YS5QYXJlbnRJZCAhPSBudWxsICl7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMubG9hZFBhcmVudC5lbWl0KHRoaXMucm93LkRhdGEuUGFyZW50SWQpO1xyXG4gICAgICAgICAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMudGFibGUubG9hZCgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH19KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKG9wdGlvbi5BY2Nlc3NUeXBlID09PSBQZXJtaXNzaW9uQWNjZXNzVHlwZUVudW0uUmVwb3J0KXtcclxuICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgIHAuQXJlYSA9IHRoaXMudGFibGUucGVybWlzc2lvbnMuQXJlYTtcclxuICAgICAgICBwLkNvbnRyb2xsZXIgPSAnUHJpbnQnO1xyXG4gICAgICAgIHAuQWN0aW9uID0gb3B0aW9uLkNvbnRyb2xsZXI7XHJcbiAgICAgICAgb3B0LnVybCA9ICcvUmVwb3J0JyArIHAuZ2V0VXJsKCkgKyAnLycgKyB0aGlzLnJvdy5EYXRhLklkO1xyXG4gICAgICAgIG9wdC51cmxOZXdUYWIgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKG9wdGlvbi5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5MaW5rIHx8IG9wdGlvbi5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5MaW5rTmV3VGFiKXtcclxuICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgIHAuUmVsYXRlZElkID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5SZWxhdGVkSWQ7XHJcbiAgICAgICAgcC5BcmVhID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5BcmVhO1xyXG4gICAgICAgIHAuQ29udHJvbGxlciA9IG9wdGlvbi5Db250cm9sbGVyO1xyXG4gICAgICAgIHAuQWN0aW9uID0gb3B0aW9uLkFjdGlvbjtcclxuICAgICAgICBvcHQudXJsID0gcC5nZXRVcmwoKSArICcvJyArIHRoaXMucm93LkRhdGEuSWQ7XHJcbiAgICAgICAgb3B0LnVybE5ld1RhYiA9IG9wdGlvbi5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5MaW5rTmV3VGFiO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKG9wdGlvbi5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5Nb2RhbCl7XHJcbiAgICAgICAgb3B0Lm1vZGFsID0gdGhpcy50YWJsZS5vcHRpb25zQWN0aW9ucy5maW5kKHggPT4geC5uYW1lID09PSBvcHRpb24uQWN0aW9uKTtcclxuICAgICAgICBvcHQub25DbGljayA9ICgpID0+IHtcclxuICAgICAgICAgIGlmIChvcHQubW9kYWwudGFibGUpe1xyXG4gICAgICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgICAgICBwLlJlbGF0ZWRJZCA9IHRoaXMucm93LkRhdGEuSWQ7XHJcbiAgICAgICAgICAgIHAuQXJlYSA9IHRoaXMudGFibGUucGVybWlzc2lvbnMuQXJlYTtcclxuICAgICAgICAgICAgcC5Db250cm9sbGVyID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5Db250cm9sbGVyO1xyXG4gICAgICAgICAgICBwLkFjdGlvbiA9IG9wdGlvbi5BY3Rpb247XHJcbiAgICAgICAgICAgIHAuQWNjZXNzZXMgPSB0aGlzLnJvdy5PcHRpb25zLmZpbHRlcih4ID0+IHguUGFyZW50SWQgPT09IG9wdGlvbi5JZCk7XHJcbiAgICAgICAgICAgIG9wdC5tb2RhbC50YWJsZS5wZXJtaXNzaW9ucyA9IHA7XHJcbiAgICAgICAgICAgIGlmIChvcHQubW9kYWwudGFibGUuZm9ybSl7XHJcbiAgICAgICAgICAgICAgb3B0Lm1vZGFsLnRhYmxlLmZvcm0udXJsID0gcC5nZXRVcmwoKSArICdJbnNlcnQnO1xyXG4gICAgICAgICAgICAgIG9wdC5tb2RhbC50YWJsZS5mb3JtLmJhc2VVcmwgPSBwLmdldFVybCgpICsgJ0luc2VydCc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgb3B0Lm1vZGFsLnRhYmxlLnNldCgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKG9wdC5tb2RhbC5mb3JtKXtcclxuICAgICAgICAgICAgb3B0Lm1vZGFsLmZvcm0ubmFtZSA9IG9wdGlvbi5OYW1lO1xyXG4gICAgICAgICAgICBvcHQubW9kYWwuZm9ybS51cmwgPSBvcHQubW9kYWwuZm9ybS5iYXNlVXJsICsgJ1VwZGF0ZS8nICsgdGhpcy5yb3cuRGF0YS5JZDtcclxuICAgICAgICAgICAgb3B0Lm1vZGFsLmZvcm0ubG9hZERhdGEob3B0Lm1vZGFsLmZvcm0uYmFzZVVybCArICdHZXQvJyArIHRoaXMucm93LkRhdGEuSWQpO1xyXG4gICAgICAgICAgICBvcHQubW9kYWwuZm9ybS5vblN1Y2Nlc3NCYXNlID0gKCkgPT4ge1xyXG4gICAgICAgICAgICAgIG9wdC5tb2RhbC5oaWRlKCk7XHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAob3B0Lm1vZGFsLmFjY29yZGlvbil7XHJcbiAgICAgICAgICAgIGZvciAoY29uc3QgciBvZiBvcHQubW9kYWwuYWNjb3JkaW9uLnJvd3Mpe1xyXG4gICAgICAgICAgICAgIGlmIChyLnRhYmxlKXtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHAgPSBuZXcgUGVybWlzc2lvbkNsYXNzKCk7XHJcbiAgICAgICAgICAgICAgICBwLlJlbGF0ZWRJZCA9IHRoaXMucm93LkRhdGEuSWQ7XHJcbiAgICAgICAgICAgICAgICBwLkFyZWEgPSB0aGlzLnRhYmxlLnBlcm1pc3Npb25zLkFyZWE7XHJcbiAgICAgICAgICAgICAgICBwLkNvbnRyb2xsZXIgPSBvcHRpb24uQ29udHJvbGxlcjtcclxuICAgICAgICAgICAgICAgIHAuQWN0aW9uID0gci5uYW1lO1xyXG4gICAgICAgICAgICAgICAgcC5BY2Nlc3NlcyA9IHRoaXMucm93Lk9wdGlvbnMuZmlsdGVyKHggPT4geC5QYXJlbnRJZCA9PT0gb3B0aW9uLklkKTtcclxuICAgICAgICAgICAgICAgIHIudGFibGUucGVybWlzc2lvbnMgPSBwO1xyXG4gICAgICAgICAgICAgICAgaWYgKHIudGFibGUuZm9ybSl7XHJcbiAgICAgICAgICAgICAgICAgIHIudGFibGUuZm9ybS51cmwgPSBwLmdldFVybCgpICsgJ0luc2VydCc7XHJcbiAgICAgICAgICAgICAgICAgIHIudGFibGUuZm9ybS5iYXNlVXJsID0gcC5nZXRVcmwoKSArICdJbnNlcnQnO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgci50YWJsZS5zZXQoKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKG9wdGlvbi5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5GaWxlKXtcclxuICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgIHAuUmVsYXRlZElkID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5SZWxhdGVkSWQ7XHJcbiAgICAgICAgcC5BcmVhID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5BcmVhO1xyXG4gICAgICAgIHAuQ29udHJvbGxlciA9IG9wdGlvbi5Db250cm9sbGVyO1xyXG4gICAgICAgIHAuQWN0aW9uID0gb3B0aW9uLkFjdGlvbjtcclxuICAgICAgICBvcHQudXJsID0gJy9GaWxlJyArIHAuZ2V0VXJsKCkgKyAnLycgKyB0aGlzLnJvdy5EYXRhLklkO1xyXG4gICAgICAgIG9wdC51cmxOZXdUYWIgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKG9wdGlvbi5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5Db25maXJtKXtcclxuICAgICAgICBvcHQub25DbGljayA9ICgpID0+IHtcclxuICAgICAgICAgIGNvbnN0IHAgPSBuZXcgUGVybWlzc2lvbkNsYXNzKCk7XHJcbiAgICAgICAgICBwLlJlbGF0ZWRJZCA9IHRoaXMudGFibGUucGVybWlzc2lvbnMuUmVsYXRlZElkO1xyXG4gICAgICAgICAgcC5BcmVhID0gdGhpcy50YWJsZS5wZXJtaXNzaW9ucy5BcmVhO1xyXG4gICAgICAgICAgcC5Db250cm9sbGVyID0gb3B0aW9uLkNvbnRyb2xsZXI7XHJcbiAgICAgICAgICBwLkFjdGlvbiA9IG9wdGlvbi5BY3Rpb247XHJcbiAgICAgICAgICB0aGlzLnRhYmxlLnNob3dDb25maXJtKHRoaXMudGFibGUubChvcHRpb24uQWN0aW9uICsgJ0NvbmZpcm0nKSwgcC5nZXRVcmwoKSArICcvJyArIHRoaXMucm93LkRhdGEuSWQsIG51bGwsICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy50YWJsZS5sb2FkKCk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKG9wdGlvbi5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5PbkNsaWNrKXtcclxuICAgICAgICBvcHQub25DbGljayA9IChidG4pID0+IHtcclxuICAgICAgICAgIHRoaXMudGFibGUub3B0aW9uc0FjdGlvbnMuZmluZCh4ID0+IHgubmFtZSA9PT0gb3B0aW9uLkFjdGlvbikub25DbGljayhidG4pO1xyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgb3B0cy5wdXNoKG9wdCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gb3B0cztcclxuICAgIC8vIHJldHVybiAodGhpcy5hZGRDaGlsZHJlbiAhPT0gbnVsbCAmJiAodGhpcy50YWJsZS5sZXZlbCA9PT0gbnVsbCB8fCB0aGlzLnRhYmxlLmxldmVsID4gdGhpcy5sZXZlbCkgPyBbdGhpcy5hZGRDaGlsZHJlbl0gOiBbXSlcclxuICAgIC8vICAgLmNvbmNhdCh0aGlzLnRhYmxlLm9wdGlvbnMuZmlsdGVyKHggPT4geC5jb25kaXRpb24gPT0gbnVsbCB8fFxyXG4gICAgLy8gICAgICh4LmNvbmRpdGlvbi5zdGFydHNXaXRoKCchJykgPyAhdGhpcy5yb3cuRGF0YVt4LmNvbmRpdGlvbi5zdWJzdHJpbmcoMSldIDogdGhpcy5yb3cuRGF0YVt4LmNvbmRpdGlvbl0pKS5tYXAoKG8pID0+IHtcclxuICAgIC8vICAgICBjb25zdCBpID0gSGVscGVyQ2xhc3MuY2xvbmUobyk7XHJcbiAgICAvLyAgICAgaWYgKGkudXJsKXtcclxuICAgIC8vICAgICAgIGkudXJsID0gaS51cmwucmVwbGFjZSgne30nLCB0aGlzLnJvdy5EYXRhLklkKTtcclxuICAgIC8vICAgICB9XHJcbiAgICAvLyAgICAgaS5yb3cgPSB0aGlzLnJvdy5EYXRhO1xyXG4gICAgLy8gICAgIGkuY2xhc3MgPSBpLmNsYXNzICsgJyBtLWgtNSBoLTI1IGQtaWIgdmEtbSBmLXUnO1xyXG4gICAgLy8gICAgIHJldHVybiBpO1xyXG4gICAgLy8gfSkpLmNvbmNhdCh0aGlzLnRhYmxlLmhhc1N0YXR1cyA/IFt0aGlzLm9wdFN0YXR1c10gOiBbXSlcclxuICAgIC8vICAgICAuY29uY2F0KHRoaXMudGFibGUucGVybWlzc2lvbnMuaGFzQWNjZXNzKCdVcGRhdGUnKSA/IFt0aGlzLm9wdEVkaXRdIDogW10pXHJcbiAgICAvLyAgICAgLmNvbmNhdCh0aGlzLnRhYmxlLnBlcm1pc3Npb25zLmhhc0FjY2VzcygnRGVsZXRlJykgPyBbdGhpcy5vcHREZWxldGVdIDogW10pO1xyXG4gIH1cclxuICBnZXRDZWxsKGNvbDogVGFibGVDb2xsQ2xhc3MpOiBhbnl7XHJcbiAgICBjb25zb2xlLmxvZygnZ2V0Q2VsbCcpO1xyXG4gICAgY29uc3QgY3YgPSBfLmdldCh0aGlzLnJvdy5EYXRhLCBjb2wubmFtZSk7XHJcbiAgICBpZiAoY29sLmZ1biAhPSBudWxsKSB7XHJcbiAgICAgIHJldHVybiBjb2wuZnVuKHRoaXMucm93LkRhdGEpO1xyXG4gICAgfSBlbHNlIGlmIChjb2wuZW51bSAhPT0gbnVsbCkge1xyXG4gICAgICByZXR1cm4gY29sLmVudW0uZ2V0KGN2KTtcclxuICAgIH0gZWxzZSBpZiAoY29sLnR5cGUgPT09IFRhYmxlQ29sbFR5cGUuRGF0ZURpZikge1xyXG4gICAgICByZXR1cm4gSGVscGVyQ2xhc3MuZ2V0RGF0ZURpZih0aGlzLnRhYmxlLmwsIGN2KTtcclxuICAgIH0gZWxzZSBpZiAoY29sLnR5cGUgPT09IFRhYmxlQ29sbFR5cGUuRGF0ZSkge1xyXG4gICAgICByZXR1cm4gSGVscGVyQ2xhc3MuZ2V0RGF0ZShjdik7XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLkRhdGVUaW1lKSB7XHJcbiAgICAgIHJldHVybiBIZWxwZXJDbGFzcy5nZXREYXRlVGltZShjdik7XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLlRpbWUpIHtcclxuICAgICAgcmV0dXJuIEhlbHBlckNsYXNzLmdldFRpbWUoY3YpO1xyXG4gICAgfSBlbHNlIGlmIChjb2wudHlwZSA9PT0gVGFibGVDb2xsVHlwZS5Db2xvcikge1xyXG4gICAgICByZXR1cm4gJzxkaXYgY2xhc3M9XCJjb2xvclwiIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogJyArIGN2ICsgJzsgY29sb3I6ICcgKyBIZWxwZXJDbGFzcy5nZXRDb2xvckJ5QmdDb2xvcihjdikgKyAnXCI+JyArIGN2ICsgJzwvZGl2Pic7XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLlVybCkge1xyXG4gICAgICByZXR1cm4gJzxhIHRhcmdldD1cIl9ibGFua1wiIGhyZWY9XCInICsgY3YgKyAnXCI+JyArIGN2ICsgJzwvYT4nO1xyXG4gICAgfSBlbHNlIGlmIChjb2wudHlwZSA9PT0gVGFibGVDb2xsVHlwZS5JbWFnZSkge1xyXG4gICAgICByZXR1cm4gJzxpbWcgY2xhc3M9XCJoLTEwMFwiIGFsdD1cIlwiIHNyYz1cIicgKyB0aGlzLnNlcnZpY2UuZW52aXJvbm1lbnQudXJsICsgY3YgKyAnXCIvPic7XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLkZpbGVTaXplKSB7XHJcbiAgICAgIHJldHVybiBIZWxwZXJDbGFzcy5nZXRGaWxlU2l6ZShjdik7XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLlByaWNlKSB7XHJcbiAgICAgIHJldHVybiBjdi50b0xvY2FsZVN0cmluZygpICsgJyAnICsgdGhpcy50YWJsZS5sKCdSaWFsJyk7XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLlBsYXF1ZSkge1xyXG4gICAgICBjb25zdCBwYXJ0cyA9IGN2LnNwbGl0KCdfJyk7XHJcbiAgICAgIGlmIChwYXJ0cy5sZW5ndGggPT09IDQpIHtcclxuICAgICAgICByZXR1cm4gJzxkaXYgY2xhc3M9XCJwbGFxdWUnICsgKHBhcnRzWzFdID09PSAn2LknID8gJyBwJyA6ICcnKSArIChwYXJ0c1sxXSA9PT0gJ9in2YTZgScgPyAnIGcnIDogJycpICsgJ1wiPicgK1xyXG4gICAgICAgICAgJzxkaXYgY2xhc3M9XCJwYXJ0MVwiPicgKyBwYXJ0c1swXSArICc8L2Rpdj4nICtcclxuICAgICAgICAgICc8ZGl2IGNsYXNzPVwicGFydDJcIj4nICsgcGFydHNbMV0gKyAnPC9kaXY+JyArXHJcbiAgICAgICAgICAnPGRpdiBjbGFzcz1cInBhcnQzXCI+JyArIHBhcnRzWzJdICsgJzwvZGl2PicgK1xyXG4gICAgICAgICAgJzxkaXYgY2xhc3M9XCJwYXJ0NFwiPicgKyBwYXJ0c1szXSArICc8L2Rpdj4nICtcclxuICAgICAgICAgICc8L2Rpdj4nO1xyXG4gICAgICB9IGVsc2UgaWYgKHBhcnRzLmxlbmd0aCA9PT0gMil7XHJcbiAgICAgICAgcmV0dXJuICc8ZGl2IGNsYXNzPVwicGxhcXVlIHBsYXF1ZS1tXCI+JyArXHJcbiAgICAgICAgICAnPGRpdiBjbGFzcz1cInBhcnQxXCI+JyArIHBhcnRzWzBdICsgJzwvZGl2PicgK1xyXG4gICAgICAgICAgJzxkaXYgY2xhc3M9XCJwYXJ0MlwiPicgKyBwYXJ0c1sxXSArICc8L2Rpdj4nICtcclxuICAgICAgICAgICc8L2Rpdj4nO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbGxUeXBlLlBsYXF1ZVRleHQpIHtcclxuICAgICAgY29uc3QgcGFydHMgPSBjdi5zcGxpdCgnXycpO1xyXG4gICAgICBpZiAocGFydHMubGVuZ3RoID09PSA0KXtcclxuICAgICAgICByZXR1cm4gYDxkaXYgY2xhc3M9XCJsdHJcIj4ke3BhcnRzWzBdfSAke3BhcnRzWzFdfSZscm07ICR7cGFydHNbMl19ICR7cGFydHNbM119PC9kaXY+YDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMudGFibGUubChjdik7XHJcbiAgfVxyXG4gIGdldENvbChuKTogc3RyaW5ne1xyXG4gICAgbGV0IGMgPSB0aGlzLnJvdy5EYXRhO1xyXG4gICAgbi5zcGxpdCgnLicpLmZvckVhY2goKHgpID0+IHtcclxuICAgICAgYyA9IGNbeF07XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBjO1xyXG4gIH1cclxuICBlZGl0KG9wdDogSW5wdXRDbGFzcyk6IHZvaWR7XHJcbiAgICBpZiAodGhpcy50YWJsZS5wZXJtaXNzaW9ucy5UeXBlID09PSBQZXJtaXNzaW9uVHlwZUVudW0uRm9ybSl7XHJcbiAgICAgIHRoaXMudGFibGUuZm9ybS5uYW1lID0gb3B0Lm5hbWU7XHJcbiAgICAgIHRoaXMudGFibGUuZm9ybS5zZXREYXRhKHRoaXMucm93LkRhdGEpO1xyXG4gICAgICB0aGlzLnRhYmxlLmZvcm0uc2V0QnV0dG9ucyh0aGlzLnRhYmxlLmZvcm0ub25Ub3AsIHRydWUsIHRoaXMucm93LkRhdGEuSWQpO1xyXG4gICAgICB0aGlzLnRhYmxlLmZvcm0uaW5wdXRzLmZpbHRlcih4ID0+IHguaW5FZGl0RGlzYWJsZWQpLmZvckVhY2goeCA9PiB4LmRpc2FibGVkID0gdHJ1ZSk7XHJcbiAgICAgIHRoaXMudGFibGUuZm9ybS5pbnB1dHMuZmlsdGVyKHggPT4gIXguaW5FZGl0VmlzaWJsZSkuZm9yRWFjaCh4ID0+IHgudmlzaWJsZSA9IGZhbHNlKTtcclxuICAgIH1lbHNle1xyXG4gICAgICBuZXcgUmVxdWVzdENsYXNzKHRoaXMudGFibGUuZW52aXJvbm1lbnQsIHRoaXMudGFibGUubCkuc2VuZCh0aGlzLnRhYmxlLnVybCArICdHZXQvJyArIHRoaXMucm93LkRhdGEuSWQsIE1ldGhvZC5Qb3N0LFxyXG4gICAgICAgIG51bGwsIG9wdCwgKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgIHRoaXMudGFibGUuZm9ybS5uYW1lID0gb3B0Lm5hbWU7XHJcbiAgICAgICAgdGhpcy50YWJsZS5mb3JtLnNldEJ1dHRvbnModGhpcy50YWJsZS5mb3JtLm9uVG9wLCB0cnVlLCB0aGlzLnJvdy5EYXRhLklkKTtcclxuICAgICAgICB0aGlzLnRhYmxlLmZvcm0uc2V0RGF0YShyZXN1bHQpO1xyXG4gICAgICAgIHRoaXMudGFibGUuZm9ybS5pbnB1dHMuZmlsdGVyKHggPT4geC5pbkVkaXREaXNhYmxlZCkuZm9yRWFjaCh4ID0+IHguZGlzYWJsZWQgPSB0cnVlKTtcclxuICAgICAgICB0aGlzLnRhYmxlLmZvcm0uaW5wdXRzLmZpbHRlcih4ID0+ICF4LmluRWRpdFZpc2libGUpLmZvckVhY2goeCA9PiB4LnZpc2libGUgPSBmYWxzZSk7XHJcbiAgICAgICAgaWYgKHRoaXMudGFibGUubW9kYWwpe1xyXG4gICAgICAgICAgdGhpcy50YWJsZS5tb2RhbC5zaG93KCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbiAgZ2V0Q2hpbGRyZW4oKTogYW55W117XHJcbiAgICByZXR1cm4gdGhpcy5yb3cuRGF0YS5JZCA/IHRoaXMudGFibGUucm93cy5maWx0ZXIoeCA9PiB4LkRhdGEuUGFyZW50SWQgPT09IHRoaXMucm93LkRhdGEuSWQpIDogW107XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -496,7 +496,6 @@ var PermissionTypeEnum;
496
496
  PermissionTypeEnum[PermissionTypeEnum["Item"] = 0] = "Item";
497
497
  PermissionTypeEnum[PermissionTypeEnum["Access"] = 1] = "Access";
498
498
  PermissionTypeEnum[PermissionTypeEnum["Option"] = 2] = "Option";
499
- PermissionTypeEnum[PermissionTypeEnum["Input"] = 3] = "Input";
500
499
  })(PermissionTypeEnum || (PermissionTypeEnum = {}));
501
500
  var PermissionAccessTypeEnum;
502
501
  (function (PermissionAccessTypeEnum) {
@@ -515,6 +514,7 @@ var PermissionInputActionEnum;
515
514
  PermissionInputActionEnum[PermissionInputActionEnum["File"] = 4] = "File";
516
515
  PermissionInputActionEnum[PermissionInputActionEnum["Modal"] = 5] = "Modal";
517
516
  PermissionInputActionEnum[PermissionInputActionEnum["Confirm"] = 6] = "Confirm";
517
+ PermissionInputActionEnum[PermissionInputActionEnum["Input"] = 7] = "Input";
518
518
  })(PermissionInputActionEnum || (PermissionInputActionEnum = {}));
519
519
  var PermissionInputTypeEnum;
520
520
  (function (PermissionInputTypeEnum) {
@@ -2057,7 +2057,7 @@ class TableRowComponent {
2057
2057
  }
2058
2058
  getInputs() {
2059
2059
  const inps = [];
2060
- for (const option of this.row.Options.filter(x => x.Type === PermissionTypeEnum.Option)) {
2060
+ for (const option of this.row.Options.filter(x => x.Type === PermissionTypeEnum.Option && option.InputAction === PermissionInputActionEnum.Input)) {
2061
2061
  const inp = new InputClass(this.table.environment, this.table.l, option.Name, option.Icon, InputType.Check, 'h-25 m-h-5 d-ib va-m f-u');
2062
2062
  inp.row = this.row;
2063
2063
  inp.onChange = () => {
@@ -2076,7 +2076,7 @@ class TableRowComponent {
2076
2076
  getOptions() {
2077
2077
  const opts = this.addChildren !== null && (this.table.level === null || this.table.level > this.level) ?
2078
2078
  [this.addChildren] : [];
2079
- for (const option of this.row.Options.filter(x => x.Type === PermissionTypeEnum.Option)) {
2079
+ for (const option of this.row.Options.filter(x => x.Type === PermissionTypeEnum.Option && option.InputAction !== PermissionInputActionEnum.Input)) {
2080
2080
  const opt = new InputClass(this.table.environment, this.table.l, option.Name, option.Icon, option.InputType === PermissionInputTypeEnum.Icon ? InputType.Icon : InputType.Button, 'blue h-25 m-h-5 d-ib va-m f-u');
2081
2081
  opt.row = this.row;
2082
2082
  if (option.AccessType === PermissionAccessTypeEnum.Update) {