zek 16.1.18 → 16.1.20
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/esm2022/lib/models/key-pair.model.mjs +1 -1
- package/esm2022/lib/utils/array-helper.mjs +4 -1
- package/esm2022/lib/utils/date-helper.mjs +9 -1
- package/fesm2022/zek.mjs +11 -0
- package/fesm2022/zek.mjs.map +1 -1
- package/lib/models/key-pair.model.d.ts +2 -2
- package/lib/utils/array-helper.d.ts +1 -0
- package/lib/utils/date-helper.d.ts +1 -0
- package/package.json +1 -1
|
@@ -11,4 +11,4 @@ export class KeyPairChecked extends KeyPair {
|
|
|
11
11
|
}
|
|
12
12
|
export class KeyPairRequired extends KeyPair {
|
|
13
13
|
}
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5LXBhaXIubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi9tb2RlbHMva2V5LXBhaXIubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLE9BQU87SUFJaEIsWUFBWSxJQUF1QjtRQUMvQixJQUFJLElBQUksRUFBRTtZQUNOLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1NBQzdCO0lBQ0wsQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLFNBQW9DLFNBQVEsT0FBcUI7Q0FFN0U7QUFFRCxNQUFNLE9BQU8sY0FBeUMsU0FBUSxPQUFxQjtDQUdsRjtBQUVELE1BQU0sT0FBTyxlQUEwQyxTQUFRLE9BQXFCO0NBRW5GIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIEtleVBhaXI8VEtleSA9IGFueSwgVFZhbHVlID0gYW55PiB7XHJcbiAgICBrZXk/OiBUS2V5IHwgbnVsbDtcclxuICAgIHZhbHVlPzogVFZhbHVlIHwgbnVsbDtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihpbml0PzogUGFydGlhbDxLZXlQYWlyPikge1xyXG4gICAgICAgIGlmIChpbml0KSB7XHJcbiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywgaW5pdCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgS2V5UGFpckV4PFRLZXkgPSBhbnksIFRWYWx1ZSA9IGFueT4gZXh0ZW5kcyBLZXlQYWlyPFRLZXksIFRWYWx1ZT4ge1xyXG4gICAgW2tleTogc3RyaW5nXTogYW55XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBLZXlQYWlyQ2hlY2tlZDxUS2V5ID0gYW55LCBUVmFsdWUgPSBhbnk+IGV4dGVuZHMgS2V5UGFpcjxUS2V5LCBUVmFsdWU+IHtcclxuICAgIGNoZWNrZWQ/
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5LXBhaXIubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi9tb2RlbHMva2V5LXBhaXIubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLE9BQU87SUFJaEIsWUFBWSxJQUF1QjtRQUMvQixJQUFJLElBQUksRUFBRTtZQUNOLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1NBQzdCO0lBQ0wsQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLFNBQW9DLFNBQVEsT0FBcUI7Q0FFN0U7QUFFRCxNQUFNLE9BQU8sY0FBeUMsU0FBUSxPQUFxQjtDQUdsRjtBQUVELE1BQU0sT0FBTyxlQUEwQyxTQUFRLE9BQXFCO0NBRW5GIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIEtleVBhaXI8VEtleSA9IGFueSwgVFZhbHVlID0gYW55PiB7XHJcbiAgICBrZXk/OiBUS2V5IHwgbnVsbDtcclxuICAgIHZhbHVlPzogVFZhbHVlIHwgbnVsbDtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihpbml0PzogUGFydGlhbDxLZXlQYWlyPikge1xyXG4gICAgICAgIGlmIChpbml0KSB7XHJcbiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywgaW5pdCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgS2V5UGFpckV4PFRLZXkgPSBhbnksIFRWYWx1ZSA9IGFueT4gZXh0ZW5kcyBLZXlQYWlyPFRLZXksIFRWYWx1ZT4ge1xyXG4gICAgW2tleTogc3RyaW5nXTogYW55XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBLZXlQYWlyQ2hlY2tlZDxUS2V5ID0gYW55LCBUVmFsdWUgPSBhbnk+IGV4dGVuZHMgS2V5UGFpcjxUS2V5LCBUVmFsdWU+IHtcclxuICAgIGNoZWNrZWQ/OiBib29sZWFuIHwgbnVsbDtcclxuXHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBLZXlQYWlyUmVxdWlyZWQ8VEtleSA9IGFueSwgVFZhbHVlID0gYW55PiBleHRlbmRzIEtleVBhaXI8VEtleSwgVFZhbHVlPiB7XHJcbiAgICByZXF1aXJlZD86IGJvb2xlYW4gfCBudWxsO1xyXG59Il19
|
|
@@ -13,6 +13,9 @@ export class ArrayHelper {
|
|
|
13
13
|
return false;
|
|
14
14
|
}
|
|
15
15
|
;
|
|
16
|
+
static isArray(arg) {
|
|
17
|
+
return Array.isArray(arg) && arg.length > 0;
|
|
18
|
+
}
|
|
16
19
|
// static distinct(value: any[]) {
|
|
17
20
|
// var arr: any[] = [];
|
|
18
21
|
// for (var i = 0; i < value.length; i++) {
|
|
@@ -111,4 +114,4 @@ export class ArrayHelper {
|
|
|
111
114
|
return this.enumToKeyPairBaseArray(value);
|
|
112
115
|
}
|
|
113
116
|
}
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvdXRpbHMvYXJyYXktaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNEQUFzRDtBQUN0RCwrQ0FBK0M7QUFLL0MsTUFBTSxPQUFPLFdBQVc7SUFDcEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFZLEVBQUUsS0FBYSxFQUFFLENBQU07UUFDN0MsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFBQSxDQUFDO0lBRUYsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFZLEVBQUUsQ0FBTTtRQUNoQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNuQyxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO2dCQUFFLE9BQU8sSUFBSSxDQUFDO1NBQ25DO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUFBLENBQUM7SUFFRixrQ0FBa0M7SUFDbEMsMkJBQTJCO0lBQzNCLCtDQUErQztJQUMvQyw4QkFBOEI7SUFDOUIsMENBQTBDO0lBQzFDLDZCQUE2QjtJQUM3QixZQUFZO0lBQ1osUUFBUTtJQUNSLGtCQUFrQjtJQUNsQixJQUFJO0lBRUosTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFhO1FBQ3pCLElBQUksTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLEVBQUUsRUFBRSxJQUFJLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUUxRCxLQUFLLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxLQUFLLEdBQUcsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQ3pDLElBQUksS0FBSyxHQUFHLE1BQU0sQ0FB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RDtRQUNELE9BQU8sTUFBTSxDQUFDO1FBQ2Qsd0ZBQXdGO0lBQzVGLENBQUM7SUFDRCxNQUFNLENBQUMsa0JBQWtCLENBQUMsS0FBVTtRQUNoQyxPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBMEIsS0FBSyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUNELE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxLQUFVO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUE0QixLQUFLLENBQUMsQ0FBQztJQUN6RSxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBpbXBvcnQgeyBLZXlQYWlyIH0gZnJvbSBcIi4uL21vZGVscy9rZXktcGFpci5tb2RlbFwiO1xyXG4vLyBpbXBvcnQgeyBUcmVlIH0gZnJvbSBcIi4uL21vZGVscy90cmVlLm1vZGVsXCI7XHJcblxyXG5pbXBvcnQgeyBLZXlQYWlyLCBLZXlQYWlyRXgsIFRyZWUgfSBmcm9tIFwiLi4vbW9kZWxzXCI7XHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIEFycmF5SGVscGVyIHtcclxuICAgIHN0YXRpYyBpbnNlcnQodmFsdWU6IGFueVtdLCBpbmRleDogbnVtYmVyLCB2OiBhbnkpIHtcclxuICAgICAgICB2YWx1ZS5zcGxpY2UoaW5kZXgsIDAsIHYpO1xyXG4gICAgfTtcclxuXHJcbiAgICBzdGF0aWMgY29udGFpbnModmFsdWU6IGFueVtdLCB2OiBhbnkpIHtcclxuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHZhbHVlLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGlmICh2YWx1ZVtpXSA9PT0gdikgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH07XHJcblxyXG4gICAgLy8gc3RhdGljIGRpc3RpbmN0KHZhbHVlOiBhbnlbXSkge1xyXG4gICAgLy8gICAgIHZhciBhcnI6IGFueVtdID0gW107XHJcbiAgICAvLyAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB2YWx1ZS5sZW5ndGg7IGkrKykge1xyXG4gICAgLy8gICAgICAgICBsZXQgdmFsID0gdmFsdWVbaV07XHJcbiAgICAvLyAgICAgICAgIGlmICghdGhpcy5jb250YWlucyhhcnIsIHZhbCkpIHtcclxuICAgIC8vICAgICAgICAgICAgIGFyci5wdXNoKHZhbCk7XHJcbiAgICAvLyAgICAgICAgIH1cclxuICAgIC8vICAgICB9XHJcbiAgICAvLyAgICAgcmV0dXJuIGFycjtcclxuICAgIC8vIH1cclxuXHJcbiAgICBzdGF0aWMgZGlzdGluY3Qoc291cmNlOiBhbnlbXSkge1xyXG4gICAgICAgIGxldCBsZW5ndGggPSBzb3VyY2UubGVuZ3RoLCByZXN1bHQgPSBbXSwgc2VlbiA9IG5ldyBTZXQoKTtcclxuXHJcbiAgICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGxlbmd0aDsgaW5kZXgrKykge1xyXG4gICAgICAgICAgICBsZXQgdmFsdWUgPSBzb3VyY2VbaW5kZXhdO1xyXG4gICAgICAgICAgICBpZiAoc2Vlbi5oYXModmFsdWUpKSBjb250aW51ZTtcclxuXHJcbiAgICAgICAgICAgIHNlZW4uYWRkKHZhbHVlKTtcclxuICAgICAgICAgICAgcmVzdWx0LnB1c2godmFsdWUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgZmlsdGVyQnlLZXkoZmlsdGVyVmFsdWU6IGFueSwga2V5OiBzdHJpbmcsIGFycmF5OiBhbnlbXSkge1xyXG4gICAgICAgIGlmICh0eXBlb2YgZmlsdGVyVmFsdWUgPT09ICd1bmRlZmluZWQnIHx8IGZpbHRlclZhbHVlID09IG51bGwgfHwgKHR5cGVvZiBrZXkgPT09ICdzdHJpbmcnICYmIGtleS5sZW5ndGggPT09IDApKVxyXG4gICAgICAgICAgICByZXR1cm4gYXJyYXk7XHJcblxyXG4gICAgICAgIHJldHVybiBhcnJheS5maWx0ZXIoeCA9PiB4ICE9PSB1bmRlZmluZWQgJiYgeCAhPT0gbnVsbCAmJiB4W2tleV0gPT09IGZpbHRlclZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgZmxhdHRlbkFycmF5KHZhbHVlOiBhbnlbXSk6IGFueVtdIHtcclxuICAgICAgICBsZXQgcmVzdWx0OiBhbnlbXSA9IFtdO1xyXG4gICAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgICAgICB2YWx1ZS5mb3JFYWNoKHRyZWUgPT4ge1xyXG4gICAgICAgICAgICAgICAgdHJlZS5pbmRlbnQgPSAwO1xyXG4gICAgICAgICAgICAgICAgcmVzdWx0LnB1c2godHJlZSk7XHJcbiAgICAgICAgICAgICAgICByZXN1bHQgPSByZXN1bHQuY29uY2F0KHRoaXMuZ2V0Q2hpbGRyZW4odHJlZSkpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHN0YXRpYyBnZXRDaGlsZHJlbih0cmVlOiBUcmVlLCBpbmRlbnQ6IG51bWJlciA9IDEpOiBhbnlbXSB7XHJcbiAgICAgICAgbGV0IHJlc3VsdDogYW55W10gPSBbXTtcclxuICAgICAgICBpZiAodHJlZS5jaGlsZHJlbikge1xyXG4gICAgICAgICAgICB0cmVlLmNoaWxkcmVuQ291bnQgPSB0cmVlLmNoaWxkcmVuLmxlbmd0aDtcclxuICAgICAgICAgICAgdHJlZS5jaGlsZHJlbi5mb3JFYWNoKGNoaWxkID0+IHtcclxuICAgICAgICAgICAgICAgIGNoaWxkLmluZGVudCA9IGluZGVudDtcclxuICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKGNoaWxkKTtcclxuICAgICAgICAgICAgICAgIHJlc3VsdCA9IHJlc3VsdC5jb25jYXQodGhpcy5nZXRDaGlsZHJlbihjaGlsZCwgaW5kZW50ICsgMSkpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0cmVlLmNoaWxkcmVuQ291bnQgPSAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZGVsZXRlIHRyZWUuY2hpbGRyZW47XHJcbiAgICAgICAgZGVsZXRlIHRyZWUuY2hpbGRyZW5JZHM7XHJcbiAgICAgICAgLy9kZWxldGUgdHJlZS5jaGlsZHJlbkNvdW50O1xyXG4gICAgICAgIC8vZGVsZXRlIHRyZWUuaW5kZW50O1xyXG4gICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9XHJcblxyXG5cclxuXHJcbiAgICBzdGF0aWMgdHJlZVRvS2V5UGFpckFycmF5KHZhbHVlOiBUcmVlW10pIHtcclxuICAgICAgICBsZXQgcmVzdWx0OiBLZXlQYWlyW10gPSBbXTtcclxuICAgICAgICBpZiAodmFsdWUpIHtcclxuICAgICAgICAgICAgdmFsdWUuZm9yRWFjaCh0cmVlID0+IHtcclxuICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKHsga2V5OiB0cmVlLmtleSwgdmFsdWU6IHRyZWUudmFsdWUgfSk7XHJcbiAgICAgICAgICAgICAgICByZXN1bHQgPSByZXN1bHQuY29uY2F0KHRoaXMuZ2V0SW5kZW50Q2hpbGRyZW4odHJlZSkpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHByaXZhdGUgc3RhdGljIGdldEluZGVudENoaWxkcmVuKHRyZWU6IFRyZWUsIGluZGVudDogbnVtYmVyID0gMSk6IEtleVBhaXJbXSB7XHJcbiAgICAgICAgbGV0IHJlc3VsdDogS2V5UGFpcltdID0gW107XHJcbiAgICAgICAgaWYgKHRyZWUuY2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgdHJlZS5jaGlsZHJlbi5mb3JFYWNoKGNoaWxkID0+IHtcclxuICAgICAgICAgICAgICAgIC8vcmVzdWx0LnB1c2goeyBrZXk6IGNoaWxkLmtleSwgdmFsdWU6ICfilJQnICsgJ+KUgCcucmVwZWF0KGluZGVudCkgKyBjaGlsZC52YWx1ZSB9KTtcclxuICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKHsga2V5OiBjaGlsZC5rZXksIHZhbHVlOiAnJmVtc3A7Jy5yZXBlYXQoaW5kZW50KSArIGNoaWxkLnZhbHVlIH0pO1xyXG4gICAgICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0LmNvbmNhdCh0aGlzLmdldENoaWxkcmVuKGNoaWxkLCBpbmRlbnQgKyAxKSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgcHJpdmF0ZSBzdGF0aWMgZW51bVRvS2V5UGFpckJhc2VBcnJheTxUIGV4dGVuZHMgS2V5UGFpcjxudW1iZXIsIHN0cmluZz4+KHZhbHVlOiBhbnkpOiBUW10ge1xyXG4gICAgICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyh2YWx1ZSk7XHJcbiAgICAgICAgY29uc3Qgc2xpY2UgPSBrZXlzLmxlbmd0aCAvIDI7XHJcbiAgICAgICAgbGV0IHJlc3VsdDogVFtdID0gW107XHJcbiAgICAgICAgLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBzbGljZTsgaSsrKSB7XHJcbiAgICAgICAgLy8gICAgIHJlc3VsdC5wdXNoKHsga2V5OiAra2V5c1tpXSwgdmFsdWU6IGtleXNbaSArIHNsaWNlXSB9IGFzIFQpO1xyXG4gICAgICAgIC8vIH1cclxuICAgICAgICBmb3IgKGxldCBpID0gc2xpY2U7IGkgPCBrZXlzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGxldCBuYW1lID0ga2V5c1tpXTtcclxuICAgICAgICAgICAgcmVzdWx0LnB1c2goeyBrZXk6ICsgdmFsdWVbbmFtZV0sIHZhbHVlOiBuYW1lIH0gYXMgVCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICAgICAgLy9yZXR1cm4gQXJyYXkuZnJvbShrZXlzLnNsaWNlKGtleXMubGVuZ3RoIC8gMiksIHggPT4geyBrZXk6eCwgdmFsdWU6J2FhYScgfSBhcyBPYmplY3QpO1xyXG4gICAgfVxyXG4gICAgc3RhdGljIGVudW1Ub0tleVBhaXJBcnJheSh2YWx1ZTogYW55KTogS2V5UGFpcjxudW1iZXIsIHN0cmluZz5bXSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZW51bVRvS2V5UGFpckJhc2VBcnJheTxLZXlQYWlyPG51bWJlciwgc3RyaW5nPj4odmFsdWUpO1xyXG4gICAgfVxyXG4gICAgc3RhdGljIGVudW1Ub0tleVBhaXJFeEFycmF5KHZhbHVlOiBhbnkpOiBLZXlQYWlyRXg8bnVtYmVyLCBzdHJpbmc+W10ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmVudW1Ub0tleVBhaXJCYXNlQXJyYXk8S2V5UGFpckV4PG51bWJlciwgc3RyaW5nPj4odmFsdWUpO1xyXG4gICAgfVxyXG59Il19
|
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvdXRpbHMvYXJyYXktaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNEQUFzRDtBQUN0RCwrQ0FBK0M7QUFLL0MsTUFBTSxPQUFPLFdBQVc7SUFDcEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFZLEVBQUUsS0FBYSxFQUFFLENBQU07UUFDN0MsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFBQSxDQUFDO0lBRUYsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFZLEVBQUUsQ0FBTTtRQUNoQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNuQyxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO2dCQUFFLE9BQU8sSUFBSSxDQUFDO1NBQ25DO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUFBLENBQUM7SUFHRixNQUFNLENBQUMsT0FBTyxDQUFDLEdBQVE7UUFDbkIsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFDRCxrQ0FBa0M7SUFDbEMsMkJBQTJCO0lBQzNCLCtDQUErQztJQUMvQyw4QkFBOEI7SUFDOUIsMENBQTBDO0lBQzFDLDZCQUE2QjtJQUM3QixZQUFZO0lBQ1osUUFBUTtJQUNSLGtCQUFrQjtJQUNsQixJQUFJO0lBRUosTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFhO1FBQ3pCLElBQUksTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLEVBQUUsRUFBRSxJQUFJLEdBQUcsSUFB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QyxDQUFDLENBQUM7WUFDbkIsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFPLENBQUMsQ0FBQztTQUN6RDtRQUNELE9BQU8sTUFBTSxDQUFDO1FBQ2Qsd0ZBQXdGO0lBQzVGLENBQUM7SUFDRCxNQUFNLENBQUMsa0JBQWtCLENBQUMsS0FBVTtRQUNoQyxPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBMEIsS0FBSyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUNELE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxLQUFVO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUE0QixLQUFLLENBQUMsQ0FBQztJQUN6RSxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBpbXBvcnQgeyBLZXlQYWlyIH0gZnJvbSBcIi4uL21vZGVscy9rZXktcGFpci5tb2RlbFwiO1xyXG4vLyBpbXBvcnQgeyBUcmVlIH0gZnJvbSBcIi4uL21vZGVscy90cmVlLm1vZGVsXCI7XHJcblxyXG5pbXBvcnQgeyBLZXlQYWlyLCBLZXlQYWlyRXgsIFRyZWUgfSBmcm9tIFwiLi4vbW9kZWxzXCI7XHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIEFycmF5SGVscGVyIHtcclxuICAgIHN0YXRpYyBpbnNlcnQodmFsdWU6IGFueVtdLCBpbmRleDogbnVtYmVyLCB2OiBhbnkpIHtcclxuICAgICAgICB2YWx1ZS5zcGxpY2UoaW5kZXgsIDAsIHYpO1xyXG4gICAgfTtcclxuXHJcbiAgICBzdGF0aWMgY29udGFpbnModmFsdWU6IGFueVtdLCB2OiBhbnkpIHtcclxuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHZhbHVlLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGlmICh2YWx1ZVtpXSA9PT0gdikgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH07XHJcblxyXG5cclxuICAgIHN0YXRpYyBpc0FycmF5KGFyZzogYW55KSB7XHJcbiAgICAgICAgcmV0dXJuIEFycmF5LmlzQXJyYXkoYXJnKSAmJiBhcmcubGVuZ3RoID4gMDtcclxuICAgIH1cclxuICAgIC8vIHN0YXRpYyBkaXN0aW5jdCh2YWx1ZTogYW55W10pIHtcclxuICAgIC8vICAgICB2YXIgYXJyOiBhbnlbXSA9IFtdO1xyXG4gICAgLy8gICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdmFsdWUubGVuZ3RoOyBpKyspIHtcclxuICAgIC8vICAgICAgICAgbGV0IHZhbCA9IHZhbHVlW2ldO1xyXG4gICAgLy8gICAgICAgICBpZiAoIXRoaXMuY29udGFpbnMoYXJyLCB2YWwpKSB7XHJcbiAgICAvLyAgICAgICAgICAgICBhcnIucHVzaCh2YWwpO1xyXG4gICAgLy8gICAgICAgICB9XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gICAgIHJldHVybiBhcnI7XHJcbiAgICAvLyB9XHJcblxyXG4gICAgc3RhdGljIGRpc3RpbmN0KHNvdXJjZTogYW55W10pIHtcclxuICAgICAgICBsZXQgbGVuZ3RoID0gc291cmNlLmxlbmd0aCwgcmVzdWx0ID0gW10sIHNlZW4gPSBuZXcgU2V0KCk7XHJcblxyXG4gICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBsZW5ndGg7IGluZGV4KyspIHtcclxuICAgICAgICAgICAgbGV0IHZhbHVlID0gc291cmNlW2luZGV4XTtcclxuICAgICAgICAgICAgaWYgKHNlZW4uaGFzKHZhbHVlKSkgY29udGludWU7XHJcblxyXG4gICAgICAgICAgICBzZWVuLmFkZCh2YWx1ZSk7XHJcbiAgICAgICAgICAgIHJlc3VsdC5wdXNoKHZhbHVlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGZpbHRlckJ5S2V5KGZpbHRlclZhbHVlOiBhbnksIGtleTogc3RyaW5nLCBhcnJheTogYW55W10pIHtcclxuICAgICAgICBpZiAodHlwZW9mIGZpbHRlclZhbHVlID09PSAndW5kZWZpbmVkJyB8fCBmaWx0ZXJWYWx1ZSA9PSBudWxsIHx8ICh0eXBlb2Yga2V5ID09PSAnc3RyaW5nJyAmJiBrZXkubGVuZ3RoID09PSAwKSlcclxuICAgICAgICAgICAgcmV0dXJuIGFycmF5O1xyXG5cclxuICAgICAgICByZXR1cm4gYXJyYXkuZmlsdGVyKHggPT4geCAhPT0gdW5kZWZpbmVkICYmIHggIT09IG51bGwgJiYgeFtrZXldID09PSBmaWx0ZXJWYWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGZsYXR0ZW5BcnJheSh2YWx1ZTogYW55W10pOiBhbnlbXSB7XHJcbiAgICAgICAgbGV0IHJlc3VsdDogYW55W10gPSBbXTtcclxuICAgICAgICBpZiAodmFsdWUpIHtcclxuICAgICAgICAgICAgdmFsdWUuZm9yRWFjaCh0cmVlID0+IHtcclxuICAgICAgICAgICAgICAgIHRyZWUuaW5kZW50ID0gMDtcclxuICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKHRyZWUpO1xyXG4gICAgICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0LmNvbmNhdCh0aGlzLmdldENoaWxkcmVuKHRyZWUpKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBzdGF0aWMgZ2V0Q2hpbGRyZW4odHJlZTogVHJlZSwgaW5kZW50OiBudW1iZXIgPSAxKTogYW55W10ge1xyXG4gICAgICAgIGxldCByZXN1bHQ6IGFueVtdID0gW107XHJcbiAgICAgICAgaWYgKHRyZWUuY2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgdHJlZS5jaGlsZHJlbkNvdW50ID0gdHJlZS5jaGlsZHJlbi5sZW5ndGg7XHJcbiAgICAgICAgICAgIHRyZWUuY2hpbGRyZW4uZm9yRWFjaChjaGlsZCA9PiB7XHJcbiAgICAgICAgICAgICAgICBjaGlsZC5pbmRlbnQgPSBpbmRlbnQ7XHJcbiAgICAgICAgICAgICAgICByZXN1bHQucHVzaChjaGlsZCk7XHJcbiAgICAgICAgICAgICAgICByZXN1bHQgPSByZXN1bHQuY29uY2F0KHRoaXMuZ2V0Q2hpbGRyZW4oY2hpbGQsIGluZGVudCArIDEpKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdHJlZS5jaGlsZHJlbkNvdW50ID0gMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGRlbGV0ZSB0cmVlLmNoaWxkcmVuO1xyXG4gICAgICAgIGRlbGV0ZSB0cmVlLmNoaWxkcmVuSWRzO1xyXG4gICAgICAgIC8vZGVsZXRlIHRyZWUuY2hpbGRyZW5Db3VudDtcclxuICAgICAgICAvL2RlbGV0ZSB0cmVlLmluZGVudDtcclxuICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgc3RhdGljIHRyZWVUb0tleVBhaXJBcnJheSh2YWx1ZTogVHJlZVtdKSB7XHJcbiAgICAgICAgbGV0IHJlc3VsdDogS2V5UGFpcltdID0gW107XHJcbiAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICAgIHZhbHVlLmZvckVhY2godHJlZSA9PiB7XHJcbiAgICAgICAgICAgICAgICByZXN1bHQucHVzaCh7IGtleTogdHJlZS5rZXksIHZhbHVlOiB0cmVlLnZhbHVlIH0pO1xyXG4gICAgICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0LmNvbmNhdCh0aGlzLmdldEluZGVudENoaWxkcmVuKHRyZWUpKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBwcml2YXRlIHN0YXRpYyBnZXRJbmRlbnRDaGlsZHJlbih0cmVlOiBUcmVlLCBpbmRlbnQ6IG51bWJlciA9IDEpOiBLZXlQYWlyW10ge1xyXG4gICAgICAgIGxldCByZXN1bHQ6IEtleVBhaXJbXSA9IFtdO1xyXG4gICAgICAgIGlmICh0cmVlLmNoaWxkcmVuKSB7XHJcbiAgICAgICAgICAgIHRyZWUuY2hpbGRyZW4uZm9yRWFjaChjaGlsZCA9PiB7XHJcbiAgICAgICAgICAgICAgICAvL3Jlc3VsdC5wdXNoKHsga2V5OiBjaGlsZC5rZXksIHZhbHVlOiAn4pSUJyArICfilIAnLnJlcGVhdChpbmRlbnQpICsgY2hpbGQudmFsdWUgfSk7XHJcbiAgICAgICAgICAgICAgICByZXN1bHQucHVzaCh7IGtleTogY2hpbGQua2V5LCB2YWx1ZTogJyZlbXNwOycucmVwZWF0KGluZGVudCkgKyBjaGlsZC52YWx1ZSB9KTtcclxuICAgICAgICAgICAgICAgIHJlc3VsdCA9IHJlc3VsdC5jb25jYXQodGhpcy5nZXRDaGlsZHJlbihjaGlsZCwgaW5kZW50ICsgMSkpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgIH1cclxuXHJcblxyXG5cclxuICAgIHByaXZhdGUgc3RhdGljIGVudW1Ub0tleVBhaXJCYXNlQXJyYXk8VCBleHRlbmRzIEtleVBhaXI8bnVtYmVyLCBzdHJpbmc+Pih2YWx1ZTogYW55KTogVFtdIHtcclxuICAgICAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXModmFsdWUpO1xyXG4gICAgICAgIGNvbnN0IHNsaWNlID0ga2V5cy5sZW5ndGggLyAyO1xyXG4gICAgICAgIGxldCByZXN1bHQ6IFRbXSA9IFtdO1xyXG4gICAgICAgIC8vIGZvciAobGV0IGkgPSAwOyBpIDwgc2xpY2U7IGkrKykge1xyXG4gICAgICAgIC8vICAgICByZXN1bHQucHVzaCh7IGtleTogK2tleXNbaV0sIHZhbHVlOiBrZXlzW2kgKyBzbGljZV0gfSBhcyBUKTtcclxuICAgICAgICAvLyB9XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IHNsaWNlOyBpIDwga2V5cy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBsZXQgbmFtZSA9IGtleXNbaV07XHJcbiAgICAgICAgICAgIHJlc3VsdC5wdXNoKHsga2V5OiArIHZhbHVlW25hbWVdLCB2YWx1ZTogbmFtZSB9IGFzIFQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgICAgIC8vcmV0dXJuIEFycmF5LmZyb20oa2V5cy5zbGljZShrZXlzLmxlbmd0aCAvIDIpLCB4ID0+IHsga2V5OngsIHZhbHVlOidhYWEnIH0gYXMgT2JqZWN0KTtcclxuICAgIH1cclxuICAgIHN0YXRpYyBlbnVtVG9LZXlQYWlyQXJyYXkodmFsdWU6IGFueSk6IEtleVBhaXI8bnVtYmVyLCBzdHJpbmc+W10ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmVudW1Ub0tleVBhaXJCYXNlQXJyYXk8S2V5UGFpcjxudW1iZXIsIHN0cmluZz4+KHZhbHVlKTtcclxuICAgIH1cclxuICAgIHN0YXRpYyBlbnVtVG9LZXlQYWlyRXhBcnJheSh2YWx1ZTogYW55KTogS2V5UGFpckV4PG51bWJlciwgc3RyaW5nPltdIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5lbnVtVG9LZXlQYWlyQmFzZUFycmF5PEtleVBhaXJFeDxudW1iZXIsIHN0cmluZz4+KHZhbHVlKTtcclxuICAgIH1cclxufSJdfQ==
|
|
@@ -60,6 +60,14 @@ export class DateHelper {
|
|
|
60
60
|
date.setFullYear(v.getFullYear() + years);
|
|
61
61
|
return date;
|
|
62
62
|
}
|
|
63
|
+
static addMonths(v, months) {
|
|
64
|
+
if (!months)
|
|
65
|
+
return v;
|
|
66
|
+
let date = v;
|
|
67
|
+
date.setMonth(date.getMonth() + months);
|
|
68
|
+
return date;
|
|
69
|
+
}
|
|
70
|
+
;
|
|
63
71
|
static addDays(v, days) {
|
|
64
72
|
if (!days)
|
|
65
73
|
return v;
|
|
@@ -232,4 +240,4 @@ export class DateHelper {
|
|
|
232
240
|
return value instanceof Date && !isNaN(value.valueOf());
|
|
233
241
|
}
|
|
234
242
|
}
|
|
235
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi91dGlscy9kYXRlLWhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSTNDLE1BQU0sT0FBTyxVQUFVO0lBRW5CLE1BQU0sQ0FBQyxPQUFPO1FBQ1YsT0FBTyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBQUEsQ0FBQztJQUVGLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBb0IsRUFBRSxNQUFvQjtRQUNwRCxJQUFJLElBQUksR0FBRyxDQUFDLE1BQU0sS0FBSyxTQUFTLElBQUksTUFBTSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUNyRSxJQUFJLElBQUksR0FBRyxDQUFDLE1BQU0sS0FBSyxTQUFTLElBQUksTUFBTSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUdyRSxJQUFJLElBQUksS0FBSyxJQUFJLEVBQUU7WUFDZixPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtZQUNoQixPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUVELE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM3QyxDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFXLEVBQUUsR0FBUztRQUNsQyxJQUFJLEtBQUssR0FBRyxJQUFJLEtBQUssRUFBUSxDQUFDO1FBQzlCLElBQUksSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3JDLE9BQU8sSUFBSSxJQUFJLEdBQUcsRUFBRTtZQUNoQixLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDM0IsSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQ2hDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBVztRQUN2QixJQUFJLElBQUksR0FBRyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDL0IsSUFBSSxLQUFLLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzdCLElBQUksR0FBRyxHQUFHLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUMxQixJQUFJLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUVoRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsTUFBTSxDQUFDLGVBQWUsQ0FBQyxLQUFvQjtRQUN2QyxJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWpDLElBQUksQ0FBQyxJQUFJO1lBQ0wsT0FBTyxJQUFJLENBQUM7UUFFaEIsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzlCLHFDQUFxQztRQUNyQyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ2hDLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUV6QixJQUFJLEdBQUcsR0FBRyxHQUFHLElBQUksSUFBSSxLQUFLLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxLQUFLLElBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsR0FBRyxFQUFFLENBQUM7UUFDbEYsZ0hBQWdIO1FBQ2hILE9BQU8sR0FBRyxDQUFDO0lBQ2YsQ0FBQztJQUlELE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBVyxFQUFFLElBQStCO1FBQ3ZELElBQUksR0FBRyxHQUFHLFVBQVUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLEdBQUc7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUV2QixJQUFJLFFBQVEsR0FBRyxJQUFJLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxHQUFHLEdBQUcsQ0FBQyxDQUFDO1FBQ3BELElBQUksSUFBSSxHQUFHLEtBQUssQ0FBQztRQUNqQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUNsRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBQUEsQ0FBQztJQUNGLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBTyxFQUFFLEtBQWE7UUFDbEMsSUFBSSxDQUFDLEtBQUs7WUFBRSxPQUFPLENBQUMsQ0FBQztRQUVyQixJQUFJLElBQUksR0FBRyxDQUFDLENBQUM7UUFDYixJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxLQUFLLENBQUMsQ0FBQztRQUMxQyxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBQ0QsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFPLEVBQUUsSUFBWTtRQUNoQyxJQUFJLENBQUMsSUFBSTtZQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRXBCLElBQUksSUFBSSxHQUFHLENBQUMsQ0FBQztRQUNiLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ3BDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFBQSxDQUFDO0lBQ0YsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFPLEVBQUUsS0FBYTtRQUNsQyxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRXJCLElBQUksSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZCLDRFQUE0RTtRQUM1RSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxLQUFLLENBQUMsQ0FBQztRQUN2QyxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBQ0QsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFPLEVBQUUsT0FBZTtRQUN0QyxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRXZCLElBQUksSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZCLDRFQUE0RTtRQUM1RSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsR0FBRyxPQUFPLENBQUMsQ0FBQztRQUM3QyxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBQ0QsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFPLEVBQUUsT0FBZTtRQUN0QyxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRXZCLElBQUksSUFBSSxHQUFHLENBQUMsQ0FBQztRQUNiLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxDQUFDO1FBRTdDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFBQSxDQUFDO0lBQ0YsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFVO1FBQ3JCLElBQUksS0FBSyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7UUFDdkIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBQUEsQ0FBQztJQUNGLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBVTtRQUNuQixPQUFPLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUFBLENBQUM7SUFDRixNQUFNLENBQUMsY0FBYyxDQUFDLENBQU8sRUFBRSxDQUFPO1FBQ2xDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDOUMsQ0FBQztJQUFBLENBQUM7SUFDRixNQUFNLENBQUMsU0FBUyxDQUFDLENBQU87UUFDcEIsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUFBLENBQUM7SUFDRixNQUFNLENBQUMsVUFBVSxDQUFDLENBQU8sRUFBRSxDQUFPO1FBQzlCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3BILENBQUM7SUFBQSxDQUFDO0lBR0YsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUE0QixFQUFFLEdBQWlCO1FBQ3pELElBQUksS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxFQUFFLElBQUksS0FBSyxLQUFLLEtBQUs7WUFBRSxPQUFPLElBQUksQ0FBQztRQUUxRixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWhDLElBQUksT0FBTyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDL0MsSUFBSSxRQUFRLEdBQUcsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUV4QyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQSxxRkFBcUY7SUFDM0ksQ0FBQztJQUFBLENBQUM7SUFDRixNQUFNLENBQUMsWUFBWSxDQUFDLEtBQVcsRUFBRSxJQUFrQjtRQUMvQyxJQUFJLENBQUMsSUFBSTtZQUNMLE9BQU8sSUFBSSxDQUFDO1FBRWhCLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pCLElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDaEQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFBLHFGQUFxRjtJQUNoSSxDQUFDO0lBQUEsQ0FBQztJQUNGLE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBVyxFQUFFLElBQWtCO1FBQ2hELElBQUksQ0FBQyxJQUFJO1lBQ0wsT0FBTyxJQUFJLENBQUM7UUFFaEIsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekIsSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNoRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUFBLENBQUM7SUFDRixNQUFNLENBQUMsZUFBZSxDQUFDLEtBQVcsRUFBRSxJQUFrQjtRQUNsRCxJQUFJLENBQUMsSUFBSTtZQUNMLE9BQU8sSUFBSSxDQUFDO1FBRWhCLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pCLElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDaEQsRUFBRTtRQUNGLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFBQSxDQUFDO2FBS0ssdUJBQWtCLEdBQ3JCLHNHQUFzRyxDQUFDO0lBQzNHLG9HQUFvRztJQUdwRyxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDdkIsSUFBSSxPQUFPLEtBQUssS0FBSyxXQUFXLElBQUksS0FBSyxJQUFJLElBQUksSUFBSSxLQUFLLEtBQUssRUFBRTtZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQy9FLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQscUdBQXFHO0lBQ3JHLDBDQUEwQztJQUUxQzs7Ozs7Ozs7Ozs7T0FXRztJQUNILE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBNkI7UUFDdkMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3BCLE9BQU8sS0FBSyxDQUFDO1NBQ2hCO1FBRUQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDNUMsT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUMxQjtRQUVELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFO1lBQzNCLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7WUFFckIsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRW5DLDhFQUE4RTtZQUM5RSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQVksR0FBRyxRQUFRLENBQUMsRUFBRTtnQkFDakMsT0FBTyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUM3QjtZQUVELElBQUksMkJBQTJCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUN6Qzs7Ozs7OzBFQU0wRDtnQkFDMUQsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFXLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzlELE9BQU8sSUFBSSxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7YUFDaEM7WUFFRCxJQUFJLEtBQThCLENBQUM7WUFDbkMsSUFBSSxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsRUFBRTtnQkFDOUMsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3RDO1NBQ0o7UUFFRCxNQUFNLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFZLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNwQixNQUFNLElBQUksS0FBSyxDQUFDLHNCQUFzQixLQUFLLGVBQWUsQ0FBQyxDQUFDO1NBQy9EO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxlQUFlLENBQUMsS0FBdUI7UUFDMUMsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDekIsSUFBSSxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBRWQsMkZBQTJGO1FBQzNGLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUNyRSxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFFL0QsMERBQTBEO1FBQzFELElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ1YsTUFBTSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDdEMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDeEM7UUFDRCxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoRixNQUFNLENBQUMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQztRQUN6QyxNQUFNLENBQUMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUN4QyxNQUFNLENBQUMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2hDLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ2pFLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQVU7UUFDcEIsT0FBTyxLQUFLLFlBQVksSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQzVELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUaW1lSGVscGVyIH0gZnJvbSBcIi4vdGltZS1oZWxwZXJcIjtcclxuXHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIERhdGVIZWxwZXIge1xyXG5cclxuICAgIHN0YXRpYyBtaW5EYXRlKCkge1xyXG4gICAgICAgIHJldHVybiBuZXcgRGF0ZSgwKTtcclxuICAgIH07XHJcblxyXG4gICAgc3RhdGljIGVxdWFscyh2YWx1ZTE/OiBEYXRlIHwgbnVsbCwgdmFsdWUyPzogRGF0ZSB8IG51bGwpIHtcclxuICAgICAgICBsZXQgdmFsMSA9ICh2YWx1ZTEgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZTEgPT09IG51bGwpID8gbnVsbCA6IHZhbHVlMTtcclxuICAgICAgICBsZXQgdmFsMiA9ICh2YWx1ZTIgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZTIgPT09IG51bGwpID8gbnVsbCA6IHZhbHVlMjtcclxuXHJcblxyXG4gICAgICAgIGlmICh2YWwxID09PSB2YWwyKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCF2YWwxIHx8ICF2YWwyKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB2YWwxLmdldFRpbWUoKSA9PT0gdmFsMi5nZXRUaW1lKCk7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGdldERhdGVzKHN0YXJ0OiBEYXRlLCBlbmQ6IERhdGUpIHtcclxuICAgICAgICB2YXIgZGF0ZXMgPSBuZXcgQXJyYXk8RGF0ZT4oKTtcclxuICAgICAgICB2YXIgZGF0ZSA9IG5ldyBEYXRlKHN0YXJ0LnZhbHVlT2YoKSk7XHJcbiAgICAgICAgd2hpbGUgKGRhdGUgPD0gZW5kKSB7XHJcbiAgICAgICAgICAgIGRhdGVzLnB1c2gobmV3IERhdGUoZGF0ZSkpO1xyXG4gICAgICAgICAgICBkYXRlID0gdGhpcy5hZGREYXlzKGRhdGUsIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZGF0ZXM7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGRhdGVPbmx5KHZhbHVlOiBEYXRlKSB7XHJcbiAgICAgICAgbGV0IHllYXIgPSB2YWx1ZS5nZXRGdWxsWWVhcigpO1xyXG4gICAgICAgIGxldCBtb250aCA9IHZhbHVlLmdldE1vbnRoKCk7XHJcbiAgICAgICAgbGV0IGRheSA9IHZhbHVlLmdldERhdGUoKTtcclxuICAgICAgICBsZXQgZGF0ZSA9IG5ldyBEYXRlKERhdGUuVVRDKHllYXIsIG1vbnRoLCBkYXkpKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGRhdGU7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIHRvSVNPRGF0ZVN0cmluZyh2YWx1ZTogRGF0ZSB8IHN0cmluZykge1xyXG4gICAgICAgIGxldCBkYXRlID0gdGhpcy5wYXJzZURhdGUodmFsdWUpO1xyXG5cclxuICAgICAgICBpZiAoIWRhdGUpXHJcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG5cclxuICAgICAgICBsZXQgeWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKTtcclxuICAgICAgICAvLyBBZGQgKzEgdG8gbW9udGggc2luY2UgMCBpcyBKYW51YXJ5XHJcbiAgICAgICAgbGV0IG1vbnRoID0gZGF0ZS5nZXRNb250aCgpICsgMTtcclxuICAgICAgICBsZXQgZGF5ID0gZGF0ZS5nZXREYXRlKCk7XHJcblxyXG4gICAgICAgIGxldCBzdHIgPSBgJHt5ZWFyfS0ke21vbnRoIDwgMTAgPyAnMCcgOiAnJ30ke21vbnRofS0ke2RheSA8IDEwID8gJzAnIDogJyd9JHtkYXl9YDtcclxuICAgICAgICAvL3N0ciA9IHllYXIudG9TdHJpbmcoKSArIFwiLVwiICsgKG1vbnRoICsgMSkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCBcIjBcIikgKyBcIi1cIiArIGRheS50b1N0cmluZygpLnBhZFN0YXJ0KDIsIFwiMFwiKTtcclxuICAgICAgICByZXR1cm4gc3RyO1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgc3RhdGljIGFkZFRpbWUodmFsdWU6IERhdGUsIHRpbWU6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwpIHtcclxuICAgICAgICBsZXQgdG1wID0gVGltZUhlbHBlci5wYXJzZVRpbWUodGltZSk7XHJcbiAgICAgICAgaWYgKCF0bXApIHJldHVybiB2YWx1ZTtcclxuXHJcbiAgICAgICAgbGV0IHRpbWVEYXRlID0gbmV3IERhdGUoJzE5NzAtMDEtMDFUJyArIHRpbWUgKyAnWicpO1xyXG4gICAgICAgIGxldCBkYXRlID0gdmFsdWU7XHJcbiAgICAgICAgZGF0ZS5zZXRUaW1lKGRhdGUuZ2V0VGltZSgpICsgdGltZURhdGUuZ2V0VGltZSgpKTtcclxuICAgICAgICByZXR1cm4gZGF0ZTtcclxuICAgIH07XHJcbiAgICBzdGF0aWMgYWRkWWVhcnModjogRGF0ZSwgeWVhcnM6IG51bWJlcik6IERhdGUge1xyXG4gICAgICAgIGlmICgheWVhcnMpIHJldHVybiB2O1xyXG5cclxuICAgICAgICBsZXQgZGF0ZSA9IHY7XHJcbiAgICAgICAgZGF0ZS5zZXRGdWxsWWVhcih2LmdldEZ1bGxZZWFyKCkgKyB5ZWFycyk7XHJcbiAgICAgICAgcmV0dXJuIGRhdGU7XHJcbiAgICB9XHJcbiAgICBzdGF0aWMgYWRkRGF5cyh2OiBEYXRlLCBkYXlzOiBudW1iZXIpIHtcclxuICAgICAgICBpZiAoIWRheXMpIHJldHVybiB2O1xyXG5cclxuICAgICAgICBsZXQgZGF0ZSA9IHY7XHJcbiAgICAgICAgZGF0ZS5zZXREYXRlKGRhdGUuZ2V0RGF0ZSgpICsgZGF5cyk7XHJcbiAgICAgICAgcmV0dXJuIGRhdGU7XHJcbiAgICB9O1xyXG4gICAgc3RhdGljIGFkZEhvdXJzKHY6IERhdGUsIGhvdXJzOiBudW1iZXIpIHtcclxuICAgICAgICBpZiAoIWhvdXJzKSByZXR1cm4gdjtcclxuXHJcbiAgICAgICAgbGV0IGRhdGUgPSBuZXcgRGF0ZSh2KTtcclxuICAgICAgICAvL3RvZG8gbmVlZCB0byBjaGVjayBpZiB0aGlzIGxpbmUgbmVlZHMgLS0+IGRhdGUgPSBuZXcgRGF0ZShkYXRlLmdldFRpbWUoKSk7XHJcbiAgICAgICAgZGF0ZS5zZXRIb3VycyhkYXRlLmdldEhvdXJzKCkgKyBob3Vycyk7XHJcbiAgICAgICAgcmV0dXJuIGRhdGU7XHJcbiAgICB9XHJcbiAgICBzdGF0aWMgYWRkTWludXRlcyh2OiBEYXRlLCBtaW51dGVzOiBudW1iZXIpIHtcclxuICAgICAgICBpZiAoIW1pbnV0ZXMpIHJldHVybiB2O1xyXG5cclxuICAgICAgICBsZXQgZGF0ZSA9IG5ldyBEYXRlKHYpO1xyXG4gICAgICAgIC8vdG9kbyBuZWVkIHRvIGNoZWNrIGlmIHRoaXMgbGluZSBuZWVkcyAtLT4gZGF0ZSA9IG5ldyBEYXRlKGRhdGUuZ2V0VGltZSgpKTtcclxuICAgICAgICBkYXRlLnNldE1pbnV0ZXMoZGF0ZS5nZXRNaW51dGVzKCkgKyBtaW51dGVzKTtcclxuICAgICAgICByZXR1cm4gZGF0ZTtcclxuICAgIH1cclxuICAgIHN0YXRpYyBhZGRTZWNvbmRzKHY6IERhdGUsIHNlY29uZHM6IG51bWJlcikge1xyXG4gICAgICAgIGlmICghc2Vjb25kcykgcmV0dXJuIHY7XHJcblxyXG4gICAgICAgIGxldCBkYXRlID0gdjtcclxuICAgICAgICBkYXRlLnNldFNlY29uZHMoZGF0ZS5nZXRTZWNvbmRzKCkgKyBzZWNvbmRzKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGRhdGU7XHJcbiAgICB9O1xyXG4gICAgc3RhdGljIGlzVG9kYXkoZGF0ZTogRGF0ZSkge1xyXG4gICAgICAgIGxldCB0b2RheSA9IG5ldyBEYXRlKCk7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNTYW1lRGF0ZShkYXRlLCB0b2RheSk7XHJcbiAgICB9O1xyXG4gICAgc3RhdGljIGNsb25lKGRhdGU6IERhdGUpIHtcclxuICAgICAgICByZXR1cm4gbmV3IERhdGUoK2RhdGUpO1xyXG4gICAgfTtcclxuICAgIHN0YXRpYyBpc0Fub3RoZXJNb250aChhOiBEYXRlLCBiOiBEYXRlKSB7XHJcbiAgICAgICAgcmV0dXJuIGIgJiYgYS5nZXRNb250aCgpICE9PSBiLmdldE1vbnRoKCk7XHJcbiAgICB9O1xyXG4gICAgc3RhdGljIGlzV2Vla2VuZCh2OiBEYXRlLCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB2LmdldERheSgpID09PSAwIHx8IHYuZ2V0RGF5KCkgPT09IDY7XHJcbiAgICB9O1xyXG4gICAgc3RhdGljIGlzU2FtZURhdGUoYTogRGF0ZSwgYjogRGF0ZSkge1xyXG4gICAgICAgIHJldHVybiBiICYmIGEuZ2V0RnVsbFllYXIoKSA9PT0gYi5nZXRGdWxsWWVhcigpICYmIGEuZ2V0TW9udGgoKSA9PT0gYi5nZXRNb250aCgpICYmIGEuZ2V0RGF0ZSgpID09PSBiLmdldERhdGUoKTtcclxuICAgIH07XHJcblxyXG5cclxuICAgIHN0YXRpYyBnZXRBZ2UodmFsdWU/OiBEYXRlIHwgc3RyaW5nIHwgbnVsbCwgbm93PzogRGF0ZSB8IG51bGwpIHtcclxuICAgICAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gJycgfHwgdmFsdWUgIT09IHZhbHVlKSByZXR1cm4gbnVsbDtcclxuXHJcbiAgICAgICAgY29uc3QgZGF0ZSA9IHRoaXMudG9EYXRlKHZhbHVlKTtcclxuXHJcbiAgICAgICAgbGV0IG5vd1RpbWUgPSBub3cgPyBub3cuZ2V0VGltZSgpIDogRGF0ZS5ub3coKTtcclxuICAgICAgICBsZXQgdGltZURpZmYgPSBub3dUaW1lIC0gZGF0ZS5nZXRUaW1lKCk7XHJcblxyXG4gICAgICAgIHJldHVybiBNYXRoLmZsb29yKCh0aW1lRGlmZiAvIDg2NDAwMDAwKSAvIDM2NS4yNSk7Ly84NjQwMDAwMCA9ICgxMDAwICogNjAgKiA2MCAqIDI0KSA9IDEwMDAgbWlsbGlzZWNvbmQgKiA2MHNlY29uZCAgKiA2MG1pbnV0ZSAqIDI0aG91clxyXG4gICAgfTtcclxuICAgIHN0YXRpYyBzdWJ0cmFjdERheXModmFsdWU6IERhdGUsIGRhdGU/OiBEYXRlIHwgbnVsbCkge1xyXG4gICAgICAgIGlmICghZGF0ZSlcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcblxyXG4gICAgICAgIGRhdGUgPSB0aGlzLnRvRGF0ZShkYXRlKTtcclxuICAgICAgICBsZXQgdGltZURpZmYgPSBkYXRlLmdldFRpbWUoKSAtIHZhbHVlLmdldFRpbWUoKTtcclxuICAgICAgICByZXR1cm4gTWF0aC5mbG9vcih0aW1lRGlmZiAvIDg2NDAwMDAwKTsvLzg2NDAwMDAwID0gKDEwMDAgKiA2MCAqIDYwICogMjQpID0gMTAwMCBtaWxsaXNlY29uZCAqIDYwc2Vjb25kICAqIDYwbWludXRlICogMjRob3VyXHJcbiAgICB9O1xyXG4gICAgc3RhdGljIHN1YnRyYWN0SG91cnModmFsdWU6IERhdGUsIGRhdGU/OiBEYXRlIHwgbnVsbCkge1xyXG4gICAgICAgIGlmICghZGF0ZSlcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcblxyXG4gICAgICAgIGRhdGUgPSB0aGlzLnRvRGF0ZShkYXRlKTtcclxuICAgICAgICBsZXQgdGltZURpZmYgPSBkYXRlLmdldFRpbWUoKSAtIHZhbHVlLmdldFRpbWUoKTtcclxuICAgICAgICByZXR1cm4gTWF0aC5mbG9vcigodGltZURpZmYgJSA4NjQwMDAwMCkgLyAzNjAwMDAwKTtcclxuICAgIH07XHJcbiAgICBzdGF0aWMgc3VidHJhY3RNaW51dGVzKHZhbHVlOiBEYXRlLCBkYXRlPzogRGF0ZSB8IG51bGwpIHtcclxuICAgICAgICBpZiAoIWRhdGUpXHJcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG5cclxuICAgICAgICBkYXRlID0gdGhpcy50b0RhdGUoZGF0ZSk7XHJcbiAgICAgICAgbGV0IHRpbWVEaWZmID0gZGF0ZS5nZXRUaW1lKCkgLSB2YWx1ZS5nZXRUaW1lKCk7XHJcbiAgICAgICAgLy9cclxuICAgICAgICByZXR1cm4gTWF0aC5mbG9vcigoKHRpbWVEaWZmICUgODY0MDAwMDApICUgMzYwMDAwMCkgLyA2MDAwMCk7XHJcbiAgICB9O1xyXG5cclxuXHJcblxyXG5cclxuICAgIHN0YXRpYyBJU084NjAxX0RBVEVfUkVHRVggPVxyXG4gICAgICAgIC9eKFxcZHs0fSktPyhcXGRcXGQpLT8oXFxkXFxkKSg/OlQoXFxkXFxkKSg/Ojo/KFxcZFxcZCkoPzo6PyhcXGRcXGQpKD86XFwuKFxcZCspKT8pPyk/KFp8KFsrLV0pKFxcZFxcZCk6PyhcXGRcXGQpKT8pPyQvO1xyXG4gICAgLy8gICAgICAgIDEgICAgICAgIDIgICAgICAgMyAgICAgICAgIDQgICAgICAgICAgNSAgICAgICAgICA2ICAgICAgICAgIDcgICAgICAgICAgOCAgOSAgICAgMTAgICAgICAxMVxyXG5cclxuXHJcbiAgICBzdGF0aWMgcGFyc2VEYXRlKHZhbHVlOiBhbnkpOiBEYXRlIHwgbnVsbCB7XHJcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3VuZGVmaW5lZCcgfHwgdmFsdWUgPT0gbnVsbCB8fCB2YWx1ZSA9PT0gJycpIHJldHVybiBudWxsO1xyXG4gICAgICAgIHJldHVybiB0aGlzLnRvRGF0ZSh2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gIGV4cG9ydCBmdW5jdGlvbiB0b0RhdGUodmFsdWU6IHN0cmluZ3xudW1iZXJ8RGF0ZSk6IERhdGUgdGhpcyBmdW5jdGlvbiBpcyBpbXBvcnRlZCBmcm9tIGRhdGUgcGlwZSBcclxuICAgIC8vIHBhY2thZ2VzL2NvbW1vbi9zcmMvaTE4bi9mb3JtYXRfZGF0ZS50c1xyXG5cclxuICAgIC8qKipcclxuICAgICAqIENvbnZlcnRzIGEgdmFsdWUgdG8gZGF0ZS5cclxuICAgICAqXHJcbiAgICAgKiBTdXBwb3J0ZWQgaW5wdXQgZm9ybWF0czpcclxuICAgICAqIC0gYERhdGVgXHJcbiAgICAgKiAtIG51bWJlcjogdGltZXN0YW1wXHJcbiAgICAgKiAtIHN0cmluZzogbnVtZXJpYyAoZS5nLiBcIjEyMzRcIiksIElTTyBhbmQgZGF0ZSBzdHJpbmdzIGluIGEgZm9ybWF0IHN1cHBvcnRlZCBieVxyXG4gICAgICogICBbRGF0ZS5wYXJzZSgpXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9EYXRlL3BhcnNlKS5cclxuICAgICAqICAgTm90ZTogSVNPIHN0cmluZ3Mgd2l0aG91dCB0aW1lIHJldHVybiBhIGRhdGUgd2l0aG91dCB0aW1lb2Zmc2V0LlxyXG4gICAgICpcclxuICAgICAqIFRocm93cyBpZiB1bmFibGUgdG8gY29udmVydCB0byBhIGRhdGUuXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyB0b0RhdGUodmFsdWU6IHN0cmluZyB8IG51bWJlciB8IERhdGUpOiBEYXRlIHtcclxuICAgICAgICBpZiAodGhpcy5pc0RhdGUodmFsdWUpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInICYmICFpc05hTih2YWx1ZSkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIG5ldyBEYXRlKHZhbHVlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgICAgIHZhbHVlID0gdmFsdWUudHJpbSgpO1xyXG5cclxuICAgICAgICAgICAgY29uc3QgcGFyc2VkTmIgPSBwYXJzZUZsb2F0KHZhbHVlKTtcclxuXHJcbiAgICAgICAgICAgIC8vIGFueSBzdHJpbmcgdGhhdCBvbmx5IGNvbnRhaW5zIG51bWJlcnMsIGxpa2UgXCIxMjM0XCIgYnV0IG5vdCBsaWtlIFwiMTIzNGhlbGxvXCJcclxuICAgICAgICAgICAgaWYgKCFpc05hTih2YWx1ZSBhcyBhbnkgLSBwYXJzZWROYikpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRGF0ZShwYXJzZWROYik7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmICgvXihcXGR7NH0tXFxkezEsMn0tXFxkezEsMn0pJC8udGVzdCh2YWx1ZSkpIHtcclxuICAgICAgICAgICAgICAgIC8qIEZvciBJU08gU3RyaW5ncyB3aXRob3V0IHRpbWUgdGhlIGRheSwgbW9udGggYW5kIHllYXIgbXVzdCBiZSBleHRyYWN0ZWQgZnJvbSB0aGUgSVNPIFN0cmluZ1xyXG4gICAgICAgICAgICAgICAgYmVmb3JlIERhdGUgY3JlYXRpb24gdG8gYXZvaWQgdGltZSBvZmZzZXQgYW5kIGVycm9ycyBpbiB0aGUgbmV3IERhdGUuXHJcbiAgICAgICAgICAgICAgICBJZiB3ZSBvbmx5IHJlcGxhY2UgJy0nIHdpdGggJywnIGluIHRoZSBJU08gU3RyaW5nIChcIjIwMTUsMDEsMDFcIiksIGFuZCB0cnkgdG8gY3JlYXRlIGEgbmV3XHJcbiAgICAgICAgICAgICAgICBkYXRlLCBzb21lIGJyb3dzZXJzIChlLmcuIElFIDkpIHdpbGwgdGhyb3cgYW4gaW52YWxpZCBEYXRlIGVycm9yLlxyXG4gICAgICAgICAgICAgICAgSWYgd2UgbGVhdmUgdGhlICctJyAoXCIyMDE1LTAxLTAxXCIpIGFuZCB0cnkgdG8gY3JlYXRlIGEgbmV3IERhdGUoXCIyMDE1LTAxLTAxXCIpIHRoZSB0aW1lb2Zmc2V0XHJcbiAgICAgICAgICAgICAgICBpcyBhcHBsaWVkLlxyXG4gICAgICAgICAgICAgICAgTm90ZTogSVNPIG1vbnRocyBhcmUgMCBmb3IgSmFudWFyeSwgMSBmb3IgRmVicnVhcnksIC4uLiAqL1xyXG4gICAgICAgICAgICAgICAgY29uc3QgW3ksIG0sIGRdID0gdmFsdWUuc3BsaXQoJy0nKS5tYXAoKHZhbDogc3RyaW5nKSA9PiArdmFsKTtcclxuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRGF0ZSh5LCBtIC0gMSwgZCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGxldCBtYXRjaDogUmVnRXhwTWF0Y2hBcnJheSB8IG51bGw7XHJcbiAgICAgICAgICAgIGlmIChtYXRjaCA9IHZhbHVlLm1hdGNoKHRoaXMuSVNPODYwMV9EQVRFX1JFR0VYKSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaXNvU3RyaW5nVG9EYXRlKG1hdGNoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKHZhbHVlIGFzIGFueSk7XHJcbiAgICAgICAgaWYgKCF0aGlzLmlzRGF0ZShkYXRlKSkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVuYWJsZSB0byBjb252ZXJ0IFwiJHt2YWx1ZX1cIiBpbnRvIGEgZGF0ZWApO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZGF0ZTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENvbnZlcnRzIGEgZGF0ZSBpbiBJU084NjAxIHRvIGEgRGF0ZS5cclxuICAgICAqIFVzZWQgaW5zdGVhZCBvZiBgRGF0ZS5wYXJzZWAgYmVjYXVzZSBvZiBicm93c2VyIGRpc2NyZXBhbmNpZXMuXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBpc29TdHJpbmdUb0RhdGUobWF0Y2g6IFJlZ0V4cE1hdGNoQXJyYXkpOiBEYXRlIHtcclxuICAgICAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoMCk7XHJcbiAgICAgICAgbGV0IHR6SG91ciA9IDA7XHJcbiAgICAgICAgbGV0IHR6TWluID0gMDtcclxuXHJcbiAgICAgICAgLy8gbWF0Y2hbOF0gbWVhbnMgdGhhdCB0aGUgc3RyaW5nIGNvbnRhaW5zIFwiWlwiIChVVEMpIG9yIGEgdGltZXpvbmUgbGlrZSBcIiswMTowMFwiIG9yIFwiKzAxMDBcIlxyXG4gICAgICAgIGNvbnN0IGRhdGVTZXR0ZXIgPSBtYXRjaFs4XSA/IGRhdGUuc2V0VVRDRnVsbFllYXIgOiBkYXRlLnNldEZ1bGxZZWFyO1xyXG4gICAgICAgIGNvbnN0IHRpbWVTZXR0ZXIgPSBtYXRjaFs4XSA/IGRhdGUuc2V0VVRDSG91cnMgOiBkYXRlLnNldEhvdXJzO1xyXG5cclxuICAgICAgICAvLyBpZiB0aGVyZSBpcyBhIHRpbWV6b25lIGRlZmluZWQgbGlrZSBcIiswMTowMFwiIG9yIFwiKzAxMDBcIlxyXG4gICAgICAgIGlmIChtYXRjaFs5XSkge1xyXG4gICAgICAgICAgICB0ekhvdXIgPSBOdW1iZXIobWF0Y2hbOV0gKyBtYXRjaFsxMF0pO1xyXG4gICAgICAgICAgICB0ek1pbiA9IE51bWJlcihtYXRjaFs5XSArIG1hdGNoWzExXSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGRhdGVTZXR0ZXIuY2FsbChkYXRlLCBOdW1iZXIobWF0Y2hbMV0pLCBOdW1iZXIobWF0Y2hbMl0pIC0gMSwgTnVtYmVyKG1hdGNoWzNdKSk7XHJcbiAgICAgICAgY29uc3QgaCA9IE51bWJlcihtYXRjaFs0XSB8fCAwKSAtIHR6SG91cjtcclxuICAgICAgICBjb25zdCBtID0gTnVtYmVyKG1hdGNoWzVdIHx8IDApIC0gdHpNaW47XHJcbiAgICAgICAgY29uc3QgcyA9IE51bWJlcihtYXRjaFs2XSB8fCAwKTtcclxuICAgICAgICBjb25zdCBtcyA9IE1hdGgucm91bmQocGFyc2VGbG9hdCgnMC4nICsgKG1hdGNoWzddIHx8IDApKSAqIDEwMDApO1xyXG4gICAgICAgIHRpbWVTZXR0ZXIuY2FsbChkYXRlLCBoLCBtLCBzLCBtcyk7XHJcbiAgICAgICAgcmV0dXJuIGRhdGU7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGlzRGF0ZSh2YWx1ZTogYW55KTogdmFsdWUgaXMgRGF0ZSB7XHJcbiAgICAgICAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgRGF0ZSAmJiAhaXNOYU4odmFsdWUudmFsdWVPZigpKTtcclxuICAgIH1cclxufSJdfQ==
|
|
243
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi91dGlscy9kYXRlLWhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSTNDLE1BQU0sT0FBTyxVQUFVO0lBRW5CLE1BQU0sQ0FBQyxPQUFPO1FBQ1YsT0FBTyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBQUEsQ0FBQztJQUVGLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBb0IsRUFBRSxNQUFvQjtRQUNwRCxJQUFJLElBQUksR0FBRyxDQUFDLE1BQU0sS0FBSyxTQUFTLElBQUksTUFBTSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUNyRSxJQUFJLElBQUksR0FBRyxDQUFDLE1BQU0sS0FBSyxTQUFTLElBQUksTUFBTSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUdyRSxJQUFJLElBQUksS0FBSyxJQUFJLEVBQUU7WUFDZixPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtZQUNoQixPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUVELE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM3QyxDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFXLEVBQUUsR0FBUztRQUNsQyxJQUFJLEtBQUssR0FBRyxJQUFJLEtBQUssRUFBUSxDQUFDO1FBQzlCLElBQUksSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3JD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RSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ2pFLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQVU7UUFDcEIsT0FBTyxLQUFLLFlBQVksSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQzVELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUaW1lSGVscGVyIH0gZnJvbSBcIi4vdGltZS1oZWxwZXJcIjtcclxuXHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIERhdGVIZWxwZXIge1xyXG5cclxuICAgIHN0YXRpYyBtaW5EYXRlKCkge1xyXG4gICAgICAgIHJldHVybiBuZXcgRGF0ZSgwKTtcclxuICAgIH07XHJcblxyXG4gICAgc3RhdGljIGVxdWFscyh2YWx1ZTE/OiBEYXRlIHwgbnVsbCwgdmFsdWUyPzogRGF0ZSB8IG51bGwpIHtcclxuICAgICAgICBsZXQgdmFsMSA9ICh2YWx1ZTEgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZTEgPT09IG51bGwpID8gbnVsbCA6IHZhbHVlMTtcclxuICAgICAgICBsZXQgdmFsMiA9ICh2YWx1ZTIgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZTIgPT09IG51bGwpID8gbnVsbCA6IHZhbHVlMjtcclxuXHJcblxyXG4gICAgICAgIGlmICh2YWwxID09PSB2YWwyKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCF2YWwxIHx8ICF2YWwyKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB2YWwxLmdldFRpbWUoKSA9PT0gdmFsMi5nZXRUaW1lKCk7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGdldERhdGVzKHN0YXJ0OiBEYXRlLCBlbmQ6IERhdGUpIHtcclxuICAgICAgICB2YXIgZGF0ZXMgPSBuZXcgQXJyYXk8RGF0ZT4oKTtcclxuICAgICAgICB2YXIgZGF0ZSA9IG5ldyBEYXRlKHN0YXJ0LnZhbHVlT2YoKSk7XHJcbiAgICAgICAgd2hpbGUgKGRhdGUgPD0gZW5kKSB7XHJcbiAgICAgICAgICAgIGRhdGVzLnB1c2gobmV3IERhdGUoZGF0ZSkpO1xyXG4gICAgICAgICAgICBkYXRlID0gdGhpcy5hZGREYXlzKGRhdGUsIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZGF0ZXM7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGRhdGVPbmx5KHZhbHVlOiBEYXRlKSB7XHJcbiAgICAgICAgbGV0IHllYXIgPSB2YWx1ZS5nZXRGdWxsWWVhcigpO1xyXG4gICAgICAgIGxldCBtb250aCA9IHZhbHVlLmdldE1vbnRoKCk7XHJcbiAgICAgICAgbGV0IGRheSA9IHZhbHVlLmdldERhdGUoKTtcclxuICAgICAgICBsZXQgZGF0ZSA9IG5ldyBEYXRlKERhdGUuVVRDKHllYXIsIG1vbnRoLCBkYXkpKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGRhdGU7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIHRvSVNPRGF0ZVN0cmluZyh2YWx1ZTogRGF0ZSB8IHN0cmluZykge1xyXG4gICAgICAgIGxldCBkYXRlID0gdGhpcy5wYXJzZURhdGUodmFsdWUpO1xyXG5cclxuICAgICAgICBpZiAoIWRhdGUpXHJcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG5cclxuICAgICAgICBsZXQgeWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKTtcclxuICAgICAgICAvLyBBZGQgKzEgdG8gbW9udGggc2luY2UgMCBpcyBKYW51YXJ5XHJcbiAgICAgICAgbGV0IG1vbnRoID0gZGF0ZS5nZXRNb250aCgpICsgMTtcclxuICAgICAgICBsZXQgZGF5ID0gZGF0ZS5nZXREYXRlKCk7XHJcblxyXG4gICAgICAgIGxldCBzdHIgPSBgJHt5ZWFyfS0ke21vbnRoIDwgMTAgPyAnMCcgOiAnJ30ke21vbnRofS0ke2RheSA8IDEwID8gJzAnIDogJyd9JHtkYXl9YDtcclxuICAgICAgICAvL3N0ciA9IHllYXIudG9TdHJpbmcoKSArIFwiLVwiICsgKG1vbnRoICsgMSkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCBcIjBcIikgKyBcIi1cIiArIGRheS50b1N0cmluZygpLnBhZFN0YXJ0KDIsIFwiMFwiKTtcclxuICAgICAgICByZXR1cm4gc3RyO1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgc3RhdGljIGFkZFRpbWUodmFsdWU6IERhdGUsIHRpbWU6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwpIHtcclxuICAgICAgICBsZXQgdG1wID0gVGltZUhlbHBlci5wYXJzZVRpbWUodGltZSk7XHJcbiAgICAgICAgaWYgKCF0bXApIHJldHVybiB2YWx1ZTtcclxuXHJcbiAgICAgICAgbGV0IHRpbWVEYXRlID0gbmV3IERhdGUoJzE5NzAtMDEtMDFUJyArIHRpbWUgKyAnWicpO1xyXG4gICAgICAgIGxldCBkYXRlID0gdmFsdWU7XHJcbiAgICAgICAgZGF0ZS5zZXRUaW1lKGRhdGUuZ2V0VGltZSgpICsgdGltZURhdGUuZ2V0VGltZSgpKTtcclxuICAgICAgICByZXR1cm4gZGF0ZTtcclxuICAgIH07XHJcbiAgICBzdGF0aWMgYWRkWWVhcnModjogRGF0ZSwgeWVhcnM6IG51bWJlcik6IERhdGUge1xyXG4gICAgICAgIGlmICgheWVhcnMpIHJldHVybiB2O1xyXG5cclxuICAgICAgICBsZXQgZGF0ZSA9IHY7XHJcbiAgICAgICAgZGF0ZS5zZXRGdWxsWWVhcih2LmdldEZ1bGxZZWFyKCkgKyB5ZWFycyk7XHJcbiAgICAgICAgcmV0dXJuIGRhdGU7XHJcbiAgICB9XHJcbiAgICBzdGF0aWMgYWRkTW9udGhzKHY6IERhdGUsIG1vbnRoczogbnVtYmVyKSB7XHJcbiAgICAgICAgaWYgKCFtb250aHMpIHJldHVybiB2O1xyXG5cclxuICAgICAgICBsZXQgZGF0ZSA9IHY7XHJcbiAgICAgICAgZGF0ZS5zZXRNb250aChkYXRlLmdldE1vbnRoKCkgKyBtb250aHMpO1xyXG4gICAgICAgIHJldHVybiBkYXRlO1xyXG4gICAgfTtcclxuICAgIHN0YXRpYyBhZGREYXlzKHY6IERhdGUsIGRheXM6IG51bWJlcikge1xyXG4gICAgICAgIGlmICghZGF5cykgcmV0dXJuIHY7XHJcblxyXG4gICAgICAgIGxldCBkYXRlID0gdjtcclxuICAgICAgICBkYXRlLnNldERhdGUoZGF0ZS5nZXREYXRlKCkgKyBkYXlzKTtcclxuICAgICAgICByZXR1cm4gZGF0ZTtcclxuICAgIH07XHJcbiAgICBzdGF0aWMgYWRkSG91cnModjogRGF0ZSwgaG91cnM6IG51bWJlcikge1xyXG4gICAgICAgIGlmICghaG91cnMpIHJldHVybiB2O1xyXG5cclxuICAgICAgICBsZXQgZGF0ZSA9IG5ldyBEYXRlKHYpO1xyXG4gICAgICAgIC8vdG9kbyBuZWVkIHRvIGNoZWNrIGlmIHRoaXMgbGluZSBuZWVkcyAtLT4gZGF0ZSA9IG5ldyBEYXRlKGRhdGUuZ2V0VGltZSgpKTtcclxuICAgICAgICBkYXRlLnNldEhvdXJzKGRhdGUuZ2V0SG91cnMoKSArIGhvdXJzKTtcclxuICAgICAgICByZXR1cm4gZGF0ZTtcclxuICAgIH1cclxuICAgIHN0YXRpYyBhZGRNaW51dGVzKHY6IERhdGUsIG1pbnV0ZXM6IG51bWJlcikge1xyXG4gICAgICAgIGlmICghbWludXRlcykgcmV0dXJuIHY7XHJcblxyXG4gICAgICAgIGxldCBkYXRlID0gbmV3IERhdGUodik7XHJcbiAgICAgICAgLy90b2RvIG5lZWQgdG8gY2hlY2sgaWYgdGhpcyBsaW5lIG5lZWRzIC0tPiBkYXRlID0gbmV3IERhdGUoZGF0ZS5nZXRUaW1lKCkpO1xyXG4gICAgICAgIGRhdGUuc2V0TWludXRlcyhkYXRlLmdldE1pbnV0ZXMoKSArIG1pbnV0ZXMpO1xyXG4gICAgICAgIHJldHVybiBkYXRlO1xyXG4gICAgfVxyXG4gICAgc3RhdGljIGFkZFNlY29uZHModjogRGF0ZSwgc2Vjb25kczogbnVtYmVyKSB7XHJcbiAgICAgICAgaWYgKCFzZWNvbmRzKSByZXR1cm4gdjtcclxuXHJcbiAgICAgICAgbGV0IGRhdGUgPSB2O1xyXG4gICAgICAgIGRhdGUuc2V0U2Vjb25kcyhkYXRlLmdldFNlY29uZHMoKSArIHNlY29uZHMpO1xyXG5cclxuICAgICAgICByZXR1cm4gZGF0ZTtcclxuICAgIH07XHJcbiAgICBzdGF0aWMgaXNUb2RheShkYXRlOiBEYXRlKSB7XHJcbiAgICAgICAgbGV0IHRvZGF5ID0gbmV3IERhdGUoKTtcclxuICAgICAgICByZXR1cm4gdGhpcy5pc1NhbWVEYXRlKGRhdGUsIHRvZGF5KTtcclxuICAgIH07XHJcbiAgICBzdGF0aWMgY2xvbmUoZGF0ZTogRGF0ZSkge1xyXG4gICAgICAgIHJldHVybiBuZXcgRGF0ZSgrZGF0ZSk7XHJcbiAgICB9O1xyXG4gICAgc3RhdGljIGlzQW5vdGhlck1vbnRoKGE6IERhdGUsIGI6IERhdGUpIHtcclxuICAgICAgICByZXR1cm4gYiAmJiBhLmdldE1vbnRoKCkgIT09IGIuZ2V0TW9udGgoKTtcclxuICAgIH07XHJcbiAgICBzdGF0aWMgaXNXZWVrZW5kKHY6IERhdGUsKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHYuZ2V0RGF5KCkgPT09IDAgfHwgdi5nZXREYXkoKSA9PT0gNjtcclxuICAgIH07XHJcbiAgICBzdGF0aWMgaXNTYW1lRGF0ZShhOiBEYXRlLCBiOiBEYXRlKSB7XHJcbiAgICAgICAgcmV0dXJuIGIgJiYgYS5nZXRGdWxsWWVhcigpID09PSBiLmdldEZ1bGxZZWFyKCkgJiYgYS5nZXRNb250aCgpID09PSBiLmdldE1vbnRoKCkgJiYgYS5nZXREYXRlKCkgPT09IGIuZ2V0RGF0ZSgpO1xyXG4gICAgfTtcclxuXHJcblxyXG4gICAgc3RhdGljIGdldEFnZSh2YWx1ZT86IERhdGUgfCBzdHJpbmcgfCBudWxsLCBub3c/OiBEYXRlIHwgbnVsbCkge1xyXG4gICAgICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSAnJyB8fCB2YWx1ZSAhPT0gdmFsdWUpIHJldHVybiBudWxsO1xyXG5cclxuICAgICAgICBjb25zdCBkYXRlID0gdGhpcy50b0RhdGUodmFsdWUpO1xyXG5cclxuICAgICAgICBsZXQgbm93VGltZSA9IG5vdyA/IG5vdy5nZXRUaW1lKCkgOiBEYXRlLm5vdygpO1xyXG4gICAgICAgIGxldCB0aW1lRGlmZiA9IG5vd1RpbWUgLSBkYXRlLmdldFRpbWUoKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIE1hdGguZmxvb3IoKHRpbWVEaWZmIC8gODY0MDAwMDApIC8gMzY1LjI1KTsvLzg2NDAwMDAwID0gKDEwMDAgKiA2MCAqIDYwICogMjQpID0gMTAwMCBtaWxsaXNlY29uZCAqIDYwc2Vjb25kICAqIDYwbWludXRlICogMjRob3VyXHJcbiAgICB9O1xyXG4gICAgc3RhdGljIHN1YnRyYWN0RGF5cyh2YWx1ZTogRGF0ZSwgZGF0ZT86IERhdGUgfCBudWxsKSB7XHJcbiAgICAgICAgaWYgKCFkYXRlKVxyXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcclxuXHJcbiAgICAgICAgZGF0ZSA9IHRoaXMudG9EYXRlKGRhdGUpO1xyXG4gICAgICAgIGxldCB0aW1lRGlmZiA9IGRhdGUuZ2V0VGltZSgpIC0gdmFsdWUuZ2V0VGltZSgpO1xyXG4gICAgICAgIHJldHVybiBNYXRoLmZsb29yKHRpbWVEaWZmIC8gODY0MDAwMDApOy8vODY0MDAwMDAgPSAoMTAwMCAqIDYwICogNjAgKiAyNCkgPSAxMDAwIG1pbGxpc2Vjb25kICogNjBzZWNvbmQgICogNjBtaW51dGUgKiAyNGhvdXJcclxuICAgIH07XHJcbiAgICBzdGF0aWMgc3VidHJhY3RIb3Vycyh2YWx1ZTogRGF0ZSwgZGF0ZT86IERhdGUgfCBudWxsKSB7XHJcbiAgICAgICAgaWYgKCFkYXRlKVxyXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcclxuXHJcbiAgICAgICAgZGF0ZSA9IHRoaXMudG9EYXRlKGRhdGUpO1xyXG4gICAgICAgIGxldCB0aW1lRGlmZiA9IGRhdGUuZ2V0VGltZSgpIC0gdmFsdWUuZ2V0VGltZSgpO1xyXG4gICAgICAgIHJldHVybiBNYXRoLmZsb29yKCh0aW1lRGlmZiAlIDg2NDAwMDAwKSAvIDM2MDAwMDApO1xyXG4gICAgfTtcclxuICAgIHN0YXRpYyBzdWJ0cmFjdE1pbnV0ZXModmFsdWU6IERhdGUsIGRhdGU/OiBEYXRlIHwgbnVsbCkge1xyXG4gICAgICAgIGlmICghZGF0ZSlcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcblxyXG4gICAgICAgIGRhdGUgPSB0aGlzLnRvRGF0ZShkYXRlKTtcclxuICAgICAgICBsZXQgdGltZURpZmYgPSBkYXRlLmdldFRpbWUoKSAtIHZhbHVlLmdldFRpbWUoKTtcclxuICAgICAgICAvL1xyXG4gICAgICAgIHJldHVybiBNYXRoLmZsb29yKCgodGltZURpZmYgJSA4NjQwMDAwMCkgJSAzNjAwMDAwKSAvIDYwMDAwKTtcclxuICAgIH07XHJcblxyXG5cclxuXHJcblxyXG4gICAgc3RhdGljIElTTzg2MDFfREFURV9SRUdFWCA9XHJcbiAgICAgICAgL14oXFxkezR9KS0/KFxcZFxcZCktPyhcXGRcXGQpKD86VChcXGRcXGQpKD86Oj8oXFxkXFxkKSg/Ojo/KFxcZFxcZCkoPzpcXC4oXFxkKykpPyk/KT8oWnwoWystXSkoXFxkXFxkKTo/KFxcZFxcZCkpPyk/JC87XHJcbiAgICAvLyAgICAgICAgMSAgICAgICAgMiAgICAgICAzICAgICAgICAgNCAgICAgICAgICA1ICAgICAgICAgIDYgICAgICAgICAgNyAgICAgICAgICA4ICA5ICAgICAxMCAgICAgIDExXHJcblxyXG5cclxuICAgIHN0YXRpYyBwYXJzZURhdGUodmFsdWU6IGFueSk6IERhdGUgfCBudWxsIHtcclxuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAndW5kZWZpbmVkJyB8fCB2YWx1ZSA9PSBudWxsIHx8IHZhbHVlID09PSAnJykgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMudG9EYXRlKHZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyAgZXhwb3J0IGZ1bmN0aW9uIHRvRGF0ZSh2YWx1ZTogc3RyaW5nfG51bWJlcnxEYXRlKTogRGF0ZSB0aGlzIGZ1bmN0aW9uIGlzIGltcG9ydGVkIGZyb20gZGF0ZSBwaXBlIFxyXG4gICAgLy8gcGFja2FnZXMvY29tbW9uL3NyYy9pMThuL2Zvcm1hdF9kYXRlLnRzXHJcblxyXG4gICAgLyoqKlxyXG4gICAgICogQ29udmVydHMgYSB2YWx1ZSB0byBkYXRlLlxyXG4gICAgICpcclxuICAgICAqIFN1cHBvcnRlZCBpbnB1dCBmb3JtYXRzOlxyXG4gICAgICogLSBgRGF0ZWBcclxuICAgICAqIC0gbnVtYmVyOiB0aW1lc3RhbXBcclxuICAgICAqIC0gc3RyaW5nOiBudW1lcmljIChlLmcuIFwiMTIzNFwiKSwgSVNPIGFuZCBkYXRlIHN0cmluZ3MgaW4gYSBmb3JtYXQgc3VwcG9ydGVkIGJ5XHJcbiAgICAgKiAgIFtEYXRlLnBhcnNlKCldKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL0RhdGUvcGFyc2UpLlxyXG4gICAgICogICBOb3RlOiBJU08gc3RyaW5ncyB3aXRob3V0IHRpbWUgcmV0dXJuIGEgZGF0ZSB3aXRob3V0IHRpbWVvZmZzZXQuXHJcbiAgICAgKlxyXG4gICAgICogVGhyb3dzIGlmIHVuYWJsZSB0byBjb252ZXJ0IHRvIGEgZGF0ZS5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIHRvRGF0ZSh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgRGF0ZSk6IERhdGUge1xyXG4gICAgICAgIGlmICh0aGlzLmlzRGF0ZSh2YWx1ZSkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicgJiYgIWlzTmFOKHZhbHVlKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gbmV3IERhdGUodmFsdWUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgICAgICAgdmFsdWUgPSB2YWx1ZS50cmltKCk7XHJcblxyXG4gICAgICAgICAgICBjb25zdCBwYXJzZWROYiA9IHBhcnNlRmxvYXQodmFsdWUpO1xyXG5cclxuICAgICAgICAgICAgLy8gYW55IHN0cmluZyB0aGF0IG9ubHkgY29udGFpbnMgbnVtYmVycywgbGlrZSBcIjEyMzRcIiBidXQgbm90IGxpa2UgXCIxMjM0aGVsbG9cIlxyXG4gICAgICAgICAgICBpZiAoIWlzTmFOKHZhbHVlIGFzIGFueSAtIHBhcnNlZE5iKSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBEYXRlKHBhcnNlZE5iKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaWYgKC9eKFxcZHs0fS1cXGR7MSwyfS1cXGR7MSwyfSkkLy50ZXN0KHZhbHVlKSkge1xyXG4gICAgICAgICAgICAgICAgLyogRm9yIElTTyBTdHJpbmdzIHdpdGhvdXQgdGltZSB0aGUgZGF5LCBtb250aCBhbmQgeWVhciBtdXN0IGJlIGV4dHJhY3RlZCBmcm9tIHRoZSBJU08gU3RyaW5nXHJcbiAgICAgICAgICAgICAgICBiZWZvcmUgRGF0ZSBjcmVhdGlvbiB0byBhdm9pZCB0aW1lIG9mZnNldCBhbmQgZXJyb3JzIGluIHRoZSBuZXcgRGF0ZS5cclxuICAgICAgICAgICAgICAgIElmIHdlIG9ubHkgcmVwbGFjZSAnLScgd2l0aCAnLCcgaW4gdGhlIElTTyBTdHJpbmcgKFwiMjAxNSwwMSwwMVwiKSwgYW5kIHRyeSB0byBjcmVhdGUgYSBuZXdcclxuICAgICAgICAgICAgICAgIGRhdGUsIHNvbWUgYnJvd3NlcnMgKGUuZy4gSUUgOSkgd2lsbCB0aHJvdyBhbiBpbnZhbGlkIERhdGUgZXJyb3IuXHJcbiAgICAgICAgICAgICAgICBJZiB3ZSBsZWF2ZSB0aGUgJy0nIChcIjIwMTUtMDEtMDFcIikgYW5kIHRyeSB0byBjcmVhdGUgYSBuZXcgRGF0ZShcIjIwMTUtMDEtMDFcIikgdGhlIHRpbWVvZmZzZXRcclxuICAgICAgICAgICAgICAgIGlzIGFwcGxpZWQuXHJcbiAgICAgICAgICAgICAgICBOb3RlOiBJU08gbW9udGhzIGFyZSAwIGZvciBKYW51YXJ5LCAxIGZvciBGZWJydWFyeSwgLi4uICovXHJcbiAgICAgICAgICAgICAgICBjb25zdCBbeSwgbSwgZF0gPSB2YWx1ZS5zcGxpdCgnLScpLm1hcCgodmFsOiBzdHJpbmcpID0+ICt2YWwpO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBEYXRlKHksIG0gLSAxLCBkKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgbGV0IG1hdGNoOiBSZWdFeHBNYXRjaEFycmF5IHwgbnVsbDtcclxuICAgICAgICAgICAgaWYgKG1hdGNoID0gdmFsdWUubWF0Y2godGhpcy5JU084NjAxX0RBVEVfUkVHRVgpKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5pc29TdHJpbmdUb0RhdGUobWF0Y2gpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBkYXRlID0gbmV3IERhdGUodmFsdWUgYXMgYW55KTtcclxuICAgICAgICBpZiAoIXRoaXMuaXNEYXRlKGRhdGUpKSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5hYmxlIHRvIGNvbnZlcnQgXCIke3ZhbHVlfVwiIGludG8gYSBkYXRlYCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBkYXRlO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ29udmVydHMgYSBkYXRlIGluIElTTzg2MDEgdG8gYSBEYXRlLlxyXG4gICAgICogVXNlZCBpbnN0ZWFkIG9mIGBEYXRlLnBhcnNlYCBiZWNhdXNlIG9mIGJyb3dzZXIgZGlzY3JlcGFuY2llcy5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGlzb1N0cmluZ1RvRGF0ZShtYXRjaDogUmVnRXhwTWF0Y2hBcnJheSk6IERhdGUge1xyXG4gICAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSgwKTtcclxuICAgICAgICBsZXQgdHpIb3VyID0gMDtcclxuICAgICAgICBsZXQgdHpNaW4gPSAwO1xyXG5cclxuICAgICAgICAvLyBtYXRjaFs4XSBtZWFucyB0aGF0IHRoZSBzdHJpbmcgY29udGFpbnMgXCJaXCIgKFVUQykgb3IgYSB0aW1lem9uZSBsaWtlIFwiKzAxOjAwXCIgb3IgXCIrMDEwMFwiXHJcbiAgICAgICAgY29uc3QgZGF0ZVNldHRlciA9IG1hdGNoWzhdID8gZGF0ZS5zZXRVVENGdWxsWWVhciA6IGRhdGUuc2V0RnVsbFllYXI7XHJcbiAgICAgICAgY29uc3QgdGltZVNldHRlciA9IG1hdGNoWzhdID8gZGF0ZS5zZXRVVENIb3VycyA6IGRhdGUuc2V0SG91cnM7XHJcblxyXG4gICAgICAgIC8vIGlmIHRoZXJlIGlzIGEgdGltZXpvbmUgZGVmaW5lZCBsaWtlIFwiKzAxOjAwXCIgb3IgXCIrMDEwMFwiXHJcbiAgICAgICAgaWYgKG1hdGNoWzldKSB7XHJcbiAgICAgICAgICAgIHR6SG91ciA9IE51bWJlcihtYXRjaFs5XSArIG1hdGNoWzEwXSk7XHJcbiAgICAgICAgICAgIHR6TWluID0gTnVtYmVyKG1hdGNoWzldICsgbWF0Y2hbMTFdKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZGF0ZVNldHRlci5jYWxsKGRhdGUsIE51bWJlcihtYXRjaFsxXSksIE51bWJlcihtYXRjaFsyXSkgLSAxLCBOdW1iZXIobWF0Y2hbM10pKTtcclxuICAgICAgICBjb25zdCBoID0gTnVtYmVyKG1hdGNoWzRdIHx8IDApIC0gdHpIb3VyO1xyXG4gICAgICAgIGNvbnN0IG0gPSBOdW1iZXIobWF0Y2hbNV0gfHwgMCkgLSB0ek1pbjtcclxuICAgICAgICBjb25zdCBzID0gTnVtYmVyKG1hdGNoWzZdIHx8IDApO1xyXG4gICAgICAgIGNvbnN0IG1zID0gTWF0aC5yb3VuZChwYXJzZUZsb2F0KCcwLicgKyAobWF0Y2hbN10gfHwgMCkpICogMTAwMCk7XHJcbiAgICAgICAgdGltZVNldHRlci5jYWxsKGRhdGUsIGgsIG0sIHMsIG1zKTtcclxuICAgICAgICByZXR1cm4gZGF0ZTtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgaXNEYXRlKHZhbHVlOiBhbnkpOiB2YWx1ZSBpcyBEYXRlIHtcclxuICAgICAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBEYXRlICYmICFpc05hTih2YWx1ZS52YWx1ZU9mKCkpO1xyXG4gICAgfVxyXG59Il19
|
package/fesm2022/zek.mjs
CHANGED
|
@@ -29,6 +29,9 @@ class ArrayHelper {
|
|
|
29
29
|
return false;
|
|
30
30
|
}
|
|
31
31
|
;
|
|
32
|
+
static isArray(arg) {
|
|
33
|
+
return Array.isArray(arg) && arg.length > 0;
|
|
34
|
+
}
|
|
32
35
|
// static distinct(value: any[]) {
|
|
33
36
|
// var arr: any[] = [];
|
|
34
37
|
// for (var i = 0; i < value.length; i++) {
|
|
@@ -539,6 +542,14 @@ class DateHelper {
|
|
|
539
542
|
date.setFullYear(v.getFullYear() + years);
|
|
540
543
|
return date;
|
|
541
544
|
}
|
|
545
|
+
static addMonths(v, months) {
|
|
546
|
+
if (!months)
|
|
547
|
+
return v;
|
|
548
|
+
let date = v;
|
|
549
|
+
date.setMonth(date.getMonth() + months);
|
|
550
|
+
return date;
|
|
551
|
+
}
|
|
552
|
+
;
|
|
542
553
|
static addDays(v, days) {
|
|
543
554
|
if (!days)
|
|
544
555
|
return v;
|