diff --git a/.obsidian/plugins/find-unlinked-files/main.js b/.obsidian/plugins/find-unlinked-files/main.js index 2dfa931c..f82cacd9 100644 --- a/.obsidian/plugins/find-unlinked-files/main.js +++ b/.obsidian/plugins/find-unlinked-files/main.js @@ -447,7 +447,7 @@ var Utils = /** @class */ (function () { */ Utils.writeAndOpenFile = function (app, outputFileName, text, openFile) { return __awaiter(this, void 0, void 0, function () { - var fileIsAlreadyOpened; + var fileIsAlreadyOpened, newPane, file; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, app.vault.adapter.write(outputFileName, text)]; @@ -461,11 +461,22 @@ var Utils = /** @class */ (function () { fileIsAlreadyOpened = true; } }); - if (!fileIsAlreadyOpened) { - // app.workspace.getLeaf().openFile(app.vault.getAbstractFileByPath(outputFileName) as TFile); - app.workspace.openLinkText(outputFileName, "/"); - } - return [2 /*return*/]; + if (!!fileIsAlreadyOpened) return [3 /*break*/, 5]; + newPane = app.workspace.getLeavesOfType("empty").length == 0; + if (!newPane) return [3 /*break*/, 2]; + app.workspace.openLinkText(outputFileName, "/", true); + return [3 /*break*/, 5]; + case 2: + file = app.vault.getAbstractFileByPath(outputFileName); + if (!(file instanceof obsidian.TFile)) return [3 /*break*/, 4]; + return [4 /*yield*/, app.workspace.getLeavesOfType("empty")[0].openFile(file)]; + case 3: + _a.sent(); + return [3 /*break*/, 5]; + case 4: + app.workspace.openLinkText(outputFileName, "/", true); + _a.label = 5; + case 5: return [2 /*return*/]; } }); }); @@ -735,4 +746,4 @@ var FindOrphanedFilesPlugin = /** @class */ (function (_super) { }(obsidian.Plugin)); module.exports = FindOrphanedFilesPlugin; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZXMiOlsibm9kZV9tb2R1bGVzL3RzbGliL3RzbGliLmVzNi5qcyIsInNyYy9kZWxldGVGaWxlc01vZGFsLnRzIiwic3JjL3NldHRpbmdzVGFiLnRzIiwic3JjL3V0aWxzLnRzIiwic3JjL21haW4udHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Db3B5cmlnaHQgKGMpIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi5cclxuXHJcblBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUgZm9yIGFueVxyXG5wdXJwb3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQuXHJcblxyXG5USEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiIEFORCBUSEUgQVVUSE9SIERJU0NMQUlNUyBBTEwgV0FSUkFOVElFUyBXSVRIXHJcblJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWVxyXG5BTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBTUEVDSUFMLCBESVJFQ1QsXHJcbklORElSRUNULCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTVxyXG5MT1NTIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgTkVHTElHRU5DRSBPUlxyXG5PVEhFUiBUT1JUSU9VUyBBQ1RJT04sIEFSSVNJTkcgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SXHJcblBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqICovXHJcbi8qIGdsb2JhbCBSZWZsZWN0LCBQcm9taXNlICovXHJcblxyXG52YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHtcclxuICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHxcclxuICAgICAgICAoeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbiAoZCwgYikgeyBkLl9fcHJvdG9fXyA9IGI7IH0pIHx8XHJcbiAgICAgICAgZnVuY3Rpb24gKGQsIGIpIHsgZm9yICh2YXIgcCBpbiBiKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIsIHApKSBkW3BdID0gYltwXTsgfTtcclxuICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpO1xyXG59O1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fZXh0ZW5kcyhkLCBiKSB7XHJcbiAgICBpZiAodHlwZW9mIGIgIT09IFwiZnVuY3Rpb25cIiAmJiBiICE9PSBudWxsKVxyXG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJDbGFzcyBleHRlbmRzIHZhbHVlIFwiICsgU3RyaW5nKGIpICsgXCIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbFwiKTtcclxuICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7XHJcbiAgICBmdW5jdGlvbiBfXygpIHsgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7IH1cclxuICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTtcclxufVxyXG5cclxuZXhwb3J0IHZhciBfX2Fzc2lnbiA9IGZ1bmN0aW9uKCkge1xyXG4gICAgX19hc3NpZ24gPSBPYmplY3QuYXNzaWduIHx8IGZ1bmN0aW9uIF9fYXNzaWduKHQpIHtcclxuICAgICAgICBmb3IgKHZhciBzLCBpID0gMSwgbiA9IGFyZ3VtZW50cy5sZW5ndGg7IGkgPCBuOyBpKyspIHtcclxuICAgICAgICAgICAgcyA9IGFyZ3VtZW50c1tpXTtcclxuICAgICAgICAgICAgZm9yICh2YXIgcCBpbiBzKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHMsIHApKSB0W3BdID0gc1twXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHQ7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gX19hc3NpZ24uYXBwbHkodGhpcywgYXJndW1lbnRzKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fcmVzdChzLCBlKSB7XHJcbiAgICB2YXIgdCA9IHt9O1xyXG4gICAgZm9yICh2YXIgcCBpbiBzKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHMsIHApICYmIGUuaW5kZXhPZihwKSA8IDApXHJcbiAgICAgICAgdFtwXSA9IHNbcF07XHJcbiAgICBpZiAocyAhPSBudWxsICYmIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzID09PSBcImZ1bmN0aW9uXCIpXHJcbiAgICAgICAgZm9yICh2YXIgaSA9IDAsIHAgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHMpOyBpIDwgcC5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBpZiAoZS5pbmRleE9mKHBbaV0pIDwgMCAmJiBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwocywgcFtpXSkpXHJcbiAgICAgICAgICAgICAgICB0W3BbaV1dID0gc1twW2ldXTtcclxuICAgICAgICB9XHJcbiAgICByZXR1cm4gdDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fZGVjb3JhdGUoZGVjb3JhdG9ycywgdGFyZ2V0LCBrZXksIGRlc2MpIHtcclxuICAgIHZhciBjID0gYXJndW1lbnRzLmxlbmd0aCwgciA9IGMgPCAzID8gdGFyZ2V0IDogZGVzYyA9PT0gbnVsbCA/IGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldCwga2V5KSA6IGRlc2MsIGQ7XHJcbiAgICBpZiAodHlwZW9mIFJlZmxlY3QgPT09IFwib2JqZWN0XCIgJiYgdHlwZW9mIFJlZmxlY3QuZGVjb3JhdGUgPT09IFwiZnVuY3Rpb25cIikgciA9IFJlZmxlY3QuZGVjb3JhdGUoZGVjb3JhdG9ycywgdGFyZ2V0LCBrZXksIGRlc2MpO1xyXG4gICAgZWxzZSBmb3IgKHZhciBpID0gZGVjb3JhdG9ycy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkgaWYgKGQgPSBkZWNvcmF0b3JzW2ldKSByID0gKGMgPCAzID8gZChyKSA6IGMgPiAzID8gZCh0YXJnZXQsIGtleSwgcikgOiBkKHRhcmdldCwga2V5KSkgfHwgcjtcclxuICAgIHJldHVybiBjID4gMyAmJiByICYmIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwgciksIHI7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX3BhcmFtKHBhcmFtSW5kZXgsIGRlY29yYXRvcikge1xyXG4gICAgcmV0dXJuIGZ1bmN0aW9uICh0YXJnZXQsIGtleSkgeyBkZWNvcmF0b3IodGFyZ2V0LCBrZXksIHBhcmFtSW5kZXgpOyB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX21ldGFkYXRhKG1ldGFkYXRhS2V5LCBtZXRhZGF0YVZhbHVlKSB7XHJcbiAgICBpZiAodHlwZW9mIFJlZmxlY3QgPT09IFwib2JqZWN0XCIgJiYgdHlwZW9mIFJlZmxlY3QubWV0YWRhdGEgPT09IFwiZnVuY3Rpb25cIikgcmV0dXJuIFJlZmxlY3QubWV0YWRhdGEobWV0YWRhdGFLZXksIG1ldGFkYXRhVmFsdWUpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19hd2FpdGVyKHRoaXNBcmcsIF9hcmd1bWVudHMsIFAsIGdlbmVyYXRvcikge1xyXG4gICAgZnVuY3Rpb24gYWRvcHQodmFsdWUpIHsgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgUCA/IHZhbHVlIDogbmV3IFAoZnVuY3Rpb24gKHJlc29sdmUpIHsgcmVzb2x2ZSh2YWx1ZSk7IH0pOyB9XHJcbiAgICByZXR1cm4gbmV3IChQIHx8IChQID0gUHJvbWlzZSkpKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcclxuICAgICAgICBmdW5jdGlvbiBmdWxmaWxsZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3IubmV4dCh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XHJcbiAgICAgICAgZnVuY3Rpb24gcmVqZWN0ZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3JbXCJ0aHJvd1wiXSh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XHJcbiAgICAgICAgZnVuY3Rpb24gc3RlcChyZXN1bHQpIHsgcmVzdWx0LmRvbmUgPyByZXNvbHZlKHJlc3VsdC52YWx1ZSkgOiBhZG9wdChyZXN1bHQudmFsdWUpLnRoZW4oZnVsZmlsbGVkLCByZWplY3RlZCk7IH1cclxuICAgICAgICBzdGVwKChnZW5lcmF0b3IgPSBnZW5lcmF0b3IuYXBwbHkodGhpc0FyZywgX2FyZ3VtZW50cyB8fCBbXSkpLm5leHQoKSk7XHJcbiAgICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fZ2VuZXJhdG9yKHRoaXNBcmcsIGJvZHkpIHtcclxuICAgIHZhciBfID0geyBsYWJlbDogMCwgc2VudDogZnVuY3Rpb24oKSB7IGlmICh0WzBdICYgMSkgdGhyb3cgdFsxXTsgcmV0dXJuIHRbMV07IH0sIHRyeXM6IFtdLCBvcHM6IFtdIH0sIGYsIHksIHQsIGc7XHJcbiAgICByZXR1cm4gZyA9IHsgbmV4dDogdmVyYigwKSwgXCJ0aHJvd1wiOiB2ZXJiKDEpLCBcInJldHVyblwiOiB2ZXJiKDIpIH0sIHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiAoZ1tTeW1ib2wuaXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7IHJldHVybiB0aGlzOyB9KSwgZztcclxuICAgIGZ1bmN0aW9uIHZlcmIobikgeyByZXR1cm4gZnVuY3Rpb24gKHYpIHsgcmV0dXJuIHN0ZXAoW24sIHZdKTsgfTsgfVxyXG4gICAgZnVuY3Rpb24gc3RlcChvcCkge1xyXG4gICAgICAgIGlmIChmKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLlwiKTtcclxuICAgICAgICB3aGlsZSAoXykgdHJ5IHtcclxuICAgICAgICAgICAgaWYgKGYgPSAxLCB5ICYmICh0ID0gb3BbMF0gJiAyID8geVtcInJldHVyblwiXSA6IG9wWzBdID8geVtcInRocm93XCJdIHx8ICgodCA9IHlbXCJyZXR1cm5cIl0pICYmIHQuY2FsbCh5KSwgMCkgOiB5Lm5leHQpICYmICEodCA9IHQuY2FsbCh5LCBvcFsxXSkpLmRvbmUpIHJldHVybiB0O1xyXG4gICAgICAgICAgICBpZiAoeSA9IDAsIHQpIG9wID0gW29wWzBdICYgMiwgdC52YWx1ZV07XHJcbiAgICAgICAgICAgIHN3aXRjaCAob3BbMF0pIHtcclxuICAgICAgICAgICAgICAgIGNhc2UgMDogY2FzZSAxOiB0ID0gb3A7IGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgY2FzZSA0OiBfLmxhYmVsKys7IHJldHVybiB7IHZhbHVlOiBvcFsxXSwgZG9uZTogZmFsc2UgfTtcclxuICAgICAgICAgICAgICAgIGNhc2UgNTogXy5sYWJlbCsrOyB5ID0gb3BbMV07IG9wID0gWzBdOyBjb250aW51ZTtcclxuICAgICAgICAgICAgICAgIGNhc2UgNzogb3AgPSBfLm9wcy5wb3AoKTsgXy50cnlzLnBvcCgpOyBjb250aW51ZTtcclxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCEodCA9IF8udHJ5cywgdCA9IHQubGVuZ3RoID4gMCAmJiB0W3QubGVuZ3RoIC0gMV0pICYmIChvcFswXSA9PT0gNiB8fCBvcFswXSA9PT0gMikpIHsgXyA9IDA7IGNvbnRpbnVlOyB9XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSAzICYmICghdCB8fCAob3BbMV0gPiB0WzBdICYmIG9wWzFdIDwgdFszXSkpKSB7IF8ubGFiZWwgPSBvcFsxXTsgYnJlYWs7IH1cclxuICAgICAgICAgICAgICAgICAgICBpZiAob3BbMF0gPT09IDYgJiYgXy5sYWJlbCA8IHRbMV0pIHsgXy5sYWJlbCA9IHRbMV07IHQgPSBvcDsgYnJlYWs7IH1cclxuICAgICAgICAgICAgICAgICAgICBpZiAodCAmJiBfLmxhYmVsIDwgdFsyXSkgeyBfLmxhYmVsID0gdFsyXTsgXy5vcHMucHVzaChvcCk7IGJyZWFrOyB9XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRbMl0pIF8ub3BzLnBvcCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIF8udHJ5cy5wb3AoKTsgY29udGludWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgb3AgPSBib2R5LmNhbGwodGhpc0FyZywgXyk7XHJcbiAgICAgICAgfSBjYXRjaCAoZSkgeyBvcCA9IFs2LCBlXTsgeSA9IDA7IH0gZmluYWxseSB7IGYgPSB0ID0gMDsgfVxyXG4gICAgICAgIGlmIChvcFswXSAmIDUpIHRocm93IG9wWzFdOyByZXR1cm4geyB2YWx1ZTogb3BbMF0gPyBvcFsxXSA6IHZvaWQgMCwgZG9uZTogdHJ1ZSB9O1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgdmFyIF9fY3JlYXRlQmluZGluZyA9IE9iamVjdC5jcmVhdGUgPyAoZnVuY3Rpb24obywgbSwgaywgazIpIHtcclxuICAgIGlmIChrMiA9PT0gdW5kZWZpbmVkKSBrMiA9IGs7XHJcbiAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7XHJcbiAgICBpZiAoIWRlc2MgfHwgKFwiZ2V0XCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkge1xyXG4gICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7IHJldHVybiBtW2tdOyB9IH07XHJcbiAgICB9XHJcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpO1xyXG59KSA6IChmdW5jdGlvbihvLCBtLCBrLCBrMikge1xyXG4gICAgaWYgKGsyID09PSB1bmRlZmluZWQpIGsyID0gaztcclxuICAgIG9bazJdID0gbVtrXTtcclxufSk7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19leHBvcnRTdGFyKG0sIG8pIHtcclxuICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09IFwiZGVmYXVsdFwiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobywgcCkpIF9fY3JlYXRlQmluZGluZyhvLCBtLCBwKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fdmFsdWVzKG8pIHtcclxuICAgIHZhciBzID0gdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7XHJcbiAgICBpZiAobSkgcmV0dXJuIG0uY2FsbChvKTtcclxuICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gXCJudW1iZXJcIikgcmV0dXJuIHtcclxuICAgICAgICBuZXh0OiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgICAgIGlmIChvICYmIGkgPj0gby5sZW5ndGgpIG8gPSB2b2lkIDA7XHJcbiAgICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTtcclxuICAgICAgICB9XHJcbiAgICB9O1xyXG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gXCJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLlwiIDogXCJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuXCIpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19yZWFkKG8sIG4pIHtcclxuICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIG9bU3ltYm9sLml0ZXJhdG9yXTtcclxuICAgIGlmICghbSkgcmV0dXJuIG87XHJcbiAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTtcclxuICAgIHRyeSB7XHJcbiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7XHJcbiAgICB9XHJcbiAgICBjYXRjaCAoZXJyb3IpIHsgZSA9IHsgZXJyb3I6IGVycm9yIH07IH1cclxuICAgIGZpbmFsbHkge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpW1wicmV0dXJuXCJdKSkgbS5jYWxsKGkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBmaW5hbGx5IHsgaWYgKGUpIHRocm93IGUuZXJyb3I7IH1cclxuICAgIH1cclxuICAgIHJldHVybiBhcjtcclxufVxyXG5cclxuLyoqIEBkZXByZWNhdGVkICovXHJcbmV4cG9ydCBmdW5jdGlvbiBfX3NwcmVhZCgpIHtcclxuICAgIGZvciAodmFyIGFyID0gW10sIGkgPSAwOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKVxyXG4gICAgICAgIGFyID0gYXIuY29uY2F0KF9fcmVhZChhcmd1bWVudHNbaV0pKTtcclxuICAgIHJldHVybiBhcjtcclxufVxyXG5cclxuLyoqIEBkZXByZWNhdGVkICovXHJcbmV4cG9ydCBmdW5jdGlvbiBfX3NwcmVhZEFycmF5cygpIHtcclxuICAgIGZvciAodmFyIHMgPSAwLCBpID0gMCwgaWwgPSBhcmd1bWVudHMubGVuZ3RoOyBpIDwgaWw7IGkrKykgcyArPSBhcmd1bWVudHNbaV0ubGVuZ3RoO1xyXG4gICAgZm9yICh2YXIgciA9IEFycmF5KHMpLCBrID0gMCwgaSA9IDA7IGkgPCBpbDsgaSsrKVxyXG4gICAgICAgIGZvciAodmFyIGEgPSBhcmd1bWVudHNbaV0sIGogPSAwLCBqbCA9IGEubGVuZ3RoOyBqIDwgamw7IGorKywgaysrKVxyXG4gICAgICAgICAgICByW2tdID0gYVtqXTtcclxuICAgIHJldHVybiByO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19zcHJlYWRBcnJheSh0bywgZnJvbSwgcGFjaykge1xyXG4gICAgaWYgKHBhY2sgfHwgYXJndW1lbnRzLmxlbmd0aCA9PT0gMikgZm9yICh2YXIgaSA9IDAsIGwgPSBmcm9tLmxlbmd0aCwgYXI7IGkgPCBsOyBpKyspIHtcclxuICAgICAgICBpZiAoYXIgfHwgIShpIGluIGZyb20pKSB7XHJcbiAgICAgICAgICAgIGlmICghYXIpIGFyID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZnJvbSwgMCwgaSk7XHJcbiAgICAgICAgICAgIGFyW2ldID0gZnJvbVtpXTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdG8uY29uY2F0KGFyIHx8IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGZyb20pKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fYXdhaXQodikge1xyXG4gICAgcmV0dXJuIHRoaXMgaW5zdGFuY2VvZiBfX2F3YWl0ID8gKHRoaXMudiA9IHYsIHRoaXMpIDogbmV3IF9fYXdhaXQodik7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX2FzeW5jR2VuZXJhdG9yKHRoaXNBcmcsIF9hcmd1bWVudHMsIGdlbmVyYXRvcikge1xyXG4gICAgaWYgKCFTeW1ib2wuYXN5bmNJdGVyYXRvcikgdGhyb3cgbmV3IFR5cGVFcnJvcihcIlN5bWJvbC5hc3luY0l0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLlwiKTtcclxuICAgIHZhciBnID0gZ2VuZXJhdG9yLmFwcGx5KHRoaXNBcmcsIF9hcmd1bWVudHMgfHwgW10pLCBpLCBxID0gW107XHJcbiAgICByZXR1cm4gaSA9IHt9LCB2ZXJiKFwibmV4dFwiKSwgdmVyYihcInRocm93XCIpLCB2ZXJiKFwicmV0dXJuXCIpLCBpW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXM7IH0sIGk7XHJcbiAgICBmdW5jdGlvbiB2ZXJiKG4pIHsgaWYgKGdbbl0pIGlbbl0gPSBmdW5jdGlvbiAodikgeyByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24gKGEsIGIpIHsgcS5wdXNoKFtuLCB2LCBhLCBiXSkgPiAxIHx8IHJlc3VtZShuLCB2KTsgfSk7IH07IH1cclxuICAgIGZ1bmN0aW9uIHJlc3VtZShuLCB2KSB7IHRyeSB7IHN0ZXAoZ1tuXSh2KSk7IH0gY2F0Y2ggKGUpIHsgc2V0dGxlKHFbMF1bM10sIGUpOyB9IH1cclxuICAgIGZ1bmN0aW9uIHN0ZXAocikgeyByLnZhbHVlIGluc3RhbmNlb2YgX19hd2FpdCA/IFByb21pc2UucmVzb2x2ZShyLnZhbHVlLnYpLnRoZW4oZnVsZmlsbCwgcmVqZWN0KSA6IHNldHRsZShxWzBdWzJdLCByKTsgfVxyXG4gICAgZnVuY3Rpb24gZnVsZmlsbCh2YWx1ZSkgeyByZXN1bWUoXCJuZXh0XCIsIHZhbHVlKTsgfVxyXG4gICAgZnVuY3Rpb24gcmVqZWN0KHZhbHVlKSB7IHJlc3VtZShcInRocm93XCIsIHZhbHVlKTsgfVxyXG4gICAgZnVuY3Rpb24gc2V0dGxlKGYsIHYpIHsgaWYgKGYodiksIHEuc2hpZnQoKSwgcS5sZW5ndGgpIHJlc3VtZShxWzBdWzBdLCBxWzBdWzFdKTsgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19hc3luY0RlbGVnYXRvcihvKSB7XHJcbiAgICB2YXIgaSwgcDtcclxuICAgIHJldHVybiBpID0ge30sIHZlcmIoXCJuZXh0XCIpLCB2ZXJiKFwidGhyb3dcIiwgZnVuY3Rpb24gKGUpIHsgdGhyb3cgZTsgfSksIHZlcmIoXCJyZXR1cm5cIiksIGlbU3ltYm9sLml0ZXJhdG9yXSA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXM7IH0sIGk7XHJcbiAgICBmdW5jdGlvbiB2ZXJiKG4sIGYpIHsgaVtuXSA9IG9bbl0gPyBmdW5jdGlvbiAodikgeyByZXR1cm4gKHAgPSAhcCkgPyB7IHZhbHVlOiBfX2F3YWl0KG9bbl0odikpLCBkb25lOiBuID09PSBcInJldHVyblwiIH0gOiBmID8gZih2KSA6IHY7IH0gOiBmOyB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX2FzeW5jVmFsdWVzKG8pIHtcclxuICAgIGlmICghU3ltYm9sLmFzeW5jSXRlcmF0b3IpIHRocm93IG5ldyBUeXBlRXJyb3IoXCJTeW1ib2wuYXN5bmNJdGVyYXRvciBpcyBub3QgZGVmaW5lZC5cIik7XHJcbiAgICB2YXIgbSA9IG9bU3ltYm9sLmFzeW5jSXRlcmF0b3JdLCBpO1xyXG4gICAgcmV0dXJuIG0gPyBtLmNhbGwobykgOiAobyA9IHR5cGVvZiBfX3ZhbHVlcyA9PT0gXCJmdW5jdGlvblwiID8gX192YWx1ZXMobykgOiBvW1N5bWJvbC5pdGVyYXRvcl0oKSwgaSA9IHt9LCB2ZXJiKFwibmV4dFwiKSwgdmVyYihcInRocm93XCIpLCB2ZXJiKFwicmV0dXJuXCIpLCBpW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXM7IH0sIGkpO1xyXG4gICAgZnVuY3Rpb24gdmVyYihuKSB7IGlbbl0gPSBvW25dICYmIGZ1bmN0aW9uICh2KSB7IHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7IHYgPSBvW25dKHYpLCBzZXR0bGUocmVzb2x2ZSwgcmVqZWN0LCB2LmRvbmUsIHYudmFsdWUpOyB9KTsgfTsgfVxyXG4gICAgZnVuY3Rpb24gc2V0dGxlKHJlc29sdmUsIHJlamVjdCwgZCwgdikgeyBQcm9taXNlLnJlc29sdmUodikudGhlbihmdW5jdGlvbih2KSB7IHJlc29sdmUoeyB2YWx1ZTogdiwgZG9uZTogZCB9KTsgfSwgcmVqZWN0KTsgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19tYWtlVGVtcGxhdGVPYmplY3QoY29va2VkLCByYXcpIHtcclxuICAgIGlmIChPYmplY3QuZGVmaW5lUHJvcGVydHkpIHsgT2JqZWN0LmRlZmluZVByb3BlcnR5KGNvb2tlZCwgXCJyYXdcIiwgeyB2YWx1ZTogcmF3IH0pOyB9IGVsc2UgeyBjb29rZWQucmF3ID0gcmF3OyB9XHJcbiAgICByZXR1cm4gY29va2VkO1xyXG59O1xyXG5cclxudmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IE9iamVjdC5jcmVhdGUgPyAoZnVuY3Rpb24obywgdikge1xyXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIFwiZGVmYXVsdFwiLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2IH0pO1xyXG59KSA6IGZ1bmN0aW9uKG8sIHYpIHtcclxuICAgIG9bXCJkZWZhdWx0XCJdID0gdjtcclxufTtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX2ltcG9ydFN0YXIobW9kKSB7XHJcbiAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kO1xyXG4gICAgdmFyIHJlc3VsdCA9IHt9O1xyXG4gICAgaWYgKG1vZCAhPSBudWxsKSBmb3IgKHZhciBrIGluIG1vZCkgaWYgKGsgIT09IFwiZGVmYXVsdFwiICYmIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChtb2QsIGspKSBfX2NyZWF0ZUJpbmRpbmcocmVzdWx0LCBtb2QsIGspO1xyXG4gICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTtcclxuICAgIHJldHVybiByZXN1bHQ7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX2ltcG9ydERlZmF1bHQobW9kKSB7XHJcbiAgICByZXR1cm4gKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgPyBtb2QgOiB7IGRlZmF1bHQ6IG1vZCB9O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19jbGFzc1ByaXZhdGVGaWVsZEdldChyZWNlaXZlciwgc3RhdGUsIGtpbmQsIGYpIHtcclxuICAgIGlmIChraW5kID09PSBcImFcIiAmJiAhZikgdGhyb3cgbmV3IFR5cGVFcnJvcihcIlByaXZhdGUgYWNjZXNzb3Igd2FzIGRlZmluZWQgd2l0aG91dCBhIGdldHRlclwiKTtcclxuICAgIGlmICh0eXBlb2Ygc3RhdGUgPT09IFwiZnVuY3Rpb25cIiA/IHJlY2VpdmVyICE9PSBzdGF0ZSB8fCAhZiA6ICFzdGF0ZS5oYXMocmVjZWl2ZXIpKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IHJlYWQgcHJpdmF0ZSBtZW1iZXIgZnJvbSBhbiBvYmplY3Qgd2hvc2UgY2xhc3MgZGlkIG5vdCBkZWNsYXJlIGl0XCIpO1xyXG4gICAgcmV0dXJuIGtpbmQgPT09IFwibVwiID8gZiA6IGtpbmQgPT09IFwiYVwiID8gZi5jYWxsKHJlY2VpdmVyKSA6IGYgPyBmLnZhbHVlIDogc3RhdGUuZ2V0KHJlY2VpdmVyKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fY2xhc3NQcml2YXRlRmllbGRTZXQocmVjZWl2ZXIsIHN0YXRlLCB2YWx1ZSwga2luZCwgZikge1xyXG4gICAgaWYgKGtpbmQgPT09IFwibVwiKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiUHJpdmF0ZSBtZXRob2QgaXMgbm90IHdyaXRhYmxlXCIpO1xyXG4gICAgaWYgKGtpbmQgPT09IFwiYVwiICYmICFmKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiUHJpdmF0ZSBhY2Nlc3NvciB3YXMgZGVmaW5lZCB3aXRob3V0IGEgc2V0dGVyXCIpO1xyXG4gICAgaWYgKHR5cGVvZiBzdGF0ZSA9PT0gXCJmdW5jdGlvblwiID8gcmVjZWl2ZXIgIT09IHN0YXRlIHx8ICFmIDogIXN0YXRlLmhhcyhyZWNlaXZlcikpIHRocm93IG5ldyBUeXBlRXJyb3IoXCJDYW5ub3Qgd3JpdGUgcHJpdmF0ZSBtZW1iZXIgdG8gYW4gb2JqZWN0IHdob3NlIGNsYXNzIGRpZCBub3QgZGVjbGFyZSBpdFwiKTtcclxuICAgIHJldHVybiAoa2luZCA9PT0gXCJhXCIgPyBmLmNhbGwocmVjZWl2ZXIsIHZhbHVlKSA6IGYgPyBmLnZhbHVlID0gdmFsdWUgOiBzdGF0ZS5zZXQocmVjZWl2ZXIsIHZhbHVlKSksIHZhbHVlO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19jbGFzc1ByaXZhdGVGaWVsZEluKHN0YXRlLCByZWNlaXZlcikge1xyXG4gICAgaWYgKHJlY2VpdmVyID09PSBudWxsIHx8ICh0eXBlb2YgcmVjZWl2ZXIgIT09IFwib2JqZWN0XCIgJiYgdHlwZW9mIHJlY2VpdmVyICE9PSBcImZ1bmN0aW9uXCIpKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IHVzZSAnaW4nIG9wZXJhdG9yIG9uIG5vbi1vYmplY3RcIik7XHJcbiAgICByZXR1cm4gdHlwZW9mIHN0YXRlID09PSBcImZ1bmN0aW9uXCIgPyByZWNlaXZlciA9PT0gc3RhdGUgOiBzdGF0ZS5oYXMocmVjZWl2ZXIpO1xyXG59XHJcbiIsImltcG9ydCB7IEFwcCwgTW9kYWwsIFRGaWxlIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5leHBvcnQgY2xhc3MgRGVsZXRlRmlsZXNNb2RhbCBleHRlbmRzIE1vZGFsIHtcblx0ZmlsZXNUb0RlbGV0ZTogVEZpbGVbXTtcblx0Y29uc3RydWN0b3IoYXBwOiBBcHAsIGZpbGVzVG9EZWxldGU6IFRGaWxlW10pIHtcblx0XHRzdXBlcihhcHApO1xuXHRcdHRoaXMuZmlsZXNUb0RlbGV0ZSA9IGZpbGVzVG9EZWxldGU7XG5cdH1cblxuXHRvbk9wZW4oKSB7XG5cdFx0bGV0IHsgY29udGVudEVsLCB0aXRsZUVsIH0gPSB0aGlzO1xuXHRcdHRpdGxlRWwuc2V0VGV4dCgnTW92ZSAnICsgdGhpcy5maWxlc1RvRGVsZXRlLmxlbmd0aCArICcgZmlsZXMgdG8gc3lzdGVtIHRyYXNoPycpO1xuXHRcdGNvbnRlbnRFbFxuXHRcdFx0LmNyZWF0ZUVsKFwiYnV0dG9uXCIsIHsgdGV4dDogXCJDYW5jZWxcIiB9KVxuXHRcdFx0LmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLCAoKSA9PiB0aGlzLmNsb3NlKCkpO1xuXHRcdGNvbnRlbnRFbFxuXHRcdFx0LnNldEF0dHIoXCJtYXJnaW5cIiwgXCJhdXRvXCIpO1xuXG5cdFx0Y29udGVudEVsXG5cdFx0XHQuY3JlYXRlRWwoXCJidXR0b25cIixcblx0XHRcdFx0e1xuXHRcdFx0XHRcdGNsczogXCJtb2QtY3RhXCIsXG5cdFx0XHRcdFx0dGV4dDogXCJDb25maXJtXCJcblx0XHRcdFx0fSlcblx0XHRcdC5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIiwgYXN5bmMgKCkgPT4ge1xuXHRcdFx0XHRmb3IgKGNvbnN0IGZpbGUgb2YgdGhpcy5maWxlc1RvRGVsZXRlKSB7XG5cdFx0XHRcdFx0YXdhaXQgdGhpcy5hcHAudmF1bHQudHJhc2goZmlsZSwgdHJ1ZSk7XG5cdFx0XHRcdH1cblx0XHRcdFx0dGhpcy5jbG9zZSgpO1xuXHRcdFx0fSk7XG5cblx0fVxuXG5cdG9uQ2xvc2UoKSB7XG5cdFx0bGV0IHsgY29udGVudEVsIH0gPSB0aGlzO1xuXHRcdGNvbnRlbnRFbC5lbXB0eSgpO1xuXHR9XG59XG4iLCJpbXBvcnQgeyBBcHAsIG5vcm1hbGl6ZVBhdGgsIFBsdWdpblNldHRpbmdUYWIsIFNldHRpbmcgfSBmcm9tICdvYnNpZGlhbic7XG5pbXBvcnQgRmluZE9ycGhhbmVkRmlsZXNQbHVnaW4sIHsgU2V0dGluZ3MgfSBmcm9tICcuL21haW4nO1xuXG5leHBvcnQgY2xhc3MgU2V0dGluZ3NUYWIgZXh0ZW5kcyBQbHVnaW5TZXR0aW5nVGFiIHtcbiAgICBwbHVnaW46IEZpbmRPcnBoYW5lZEZpbGVzUGx1Z2luO1xuICAgIGNvbnN0cnVjdG9yKGFwcDogQXBwLCBwbHVnaW46IEZpbmRPcnBoYW5lZEZpbGVzUGx1Z2luLCBwcml2YXRlIGRlZmF1bHRTZXR0aW5nczogU2V0dGluZ3MpIHtcbiAgICAgICAgc3VwZXIoYXBwLCBwbHVnaW4pO1xuICAgICAgICB0aGlzLnBsdWdpbiA9IHBsdWdpbjtcbiAgICB9XG5cbiAgICAvLyBBZGQgdHJhaWxpbmcgc2xhc2ggdG8gY2F0Y2ggZmlsZXMgbmFtZWQgbGlrZSB0aGUgZGlyZWN0b3J5LiBTZWUgaHR0cHM6Ly9naXRodWIuY29tL1ZpbnplbnQwMy9maW5kLXVubGlua2VkLWZpbGVzL2lzc3Vlcy8yNFxuICAgIGZvcm1hdFBhdGgocGF0aDogc3RyaW5nLCBhZGREaXJlY3RvcnlTbGFzaDogYm9vbGVhbik6IHN0cmluZyB7XG4gICAgICAgIGlmIChwYXRoLmxlbmd0aCA9PSAwKVxuICAgICAgICAgICAgcmV0dXJuIHBhdGg7XG4gICAgICAgIHBhdGggPSBub3JtYWxpemVQYXRoKHBhdGgpO1xuICAgICAgICBpZiAoYWRkRGlyZWN0b3J5U2xhc2gpXG4gICAgICAgICAgICByZXR1cm4gcGF0aCArIFwiL1wiO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICByZXR1cm4gcGF0aDtcbiAgICB9XG5cbiAgICBkaXNwbGF5KCk6IHZvaWQge1xuICAgICAgICBsZXQgeyBjb250YWluZXJFbCB9ID0gdGhpcztcbiAgICAgICAgY29udGFpbmVyRWwuZW1wdHkoKTtcbiAgICAgICAgY29udGFpbmVyRWwuY3JlYXRlRWwoXCJoMlwiLCB7IHRleHQ6IHRoaXMucGx1Z2luLm1hbmlmZXN0Lm5hbWUgfSk7XG5cbiAgICAgICAgY29udGFpbmVyRWwuY3JlYXRlRWwoXCJoNFwiLCB7IHRleHQ6IFwiU2V0dGluZ3MgZm9yIGZpbmRpbmcgb3JwaGFuZWQgZmlsZXNcIiB9KTtcblxuICAgICAgICBuZXcgU2V0dGluZyhjb250YWluZXJFbClcbiAgICAgICAgICAgIC5zZXROYW1lKFwiT3BlbiBvdXRwdXQgZmlsZVwiKVxuICAgICAgICAgICAgLmFkZFRvZ2dsZShjYiA9PlxuICAgICAgICAgICAgICAgIGNiLnNldFZhbHVlKHRoaXMucGx1Z2luLnNldHRpbmdzLm9wZW5PdXRwdXRGaWxlKVxuICAgICAgICAgICAgICAgICAgICAub25DaGFuZ2UodmFsdWUgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2V0dGluZ3Mub3Blbk91dHB1dEZpbGUgPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNhdmVTZXR0aW5ncygpO1xuICAgICAgICAgICAgICAgICAgICB9KSk7XG5cbiAgICAgICAgbmV3IFNldHRpbmcoY29udGFpbmVyRWwpXG4gICAgICAgICAgICAuc2V0TmFtZSgnT3V0cHV0IGZpbGUgbmFtZScpXG4gICAgICAgICAgICAuc2V0RGVzYygnU2V0IG5hbWUgb2Ygb3V0cHV0IGZpbGUgKHdpdGhvdXQgZmlsZSBleHRlbnNpb24pLiBNYWtlIHN1cmUgbm8gZmlsZSBleGlzdHMgd2l0aCB0aGlzIG5hbWUgYmVjYXVzZSBpdCB3aWxsIGJlIG92ZXJ3cml0dGVuISBJZiB0aGUgbmFtZSBpcyBlbXB0eSwgdGhlIGRlZmF1bHQgbmFtZSBpcyBzZXQuJylcbiAgICAgICAgICAgIC5hZGRUZXh0KGNiID0+IGNiLm9uQ2hhbmdlKHZhbHVlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodmFsdWUubGVuZ3RoID09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2V0dGluZ3Mub3V0cHV0RmlsZU5hbWUgPSB0aGlzLmRlZmF1bHRTZXR0aW5ncy5vdXRwdXRGaWxlTmFtZTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zZXR0aW5ncy5vdXRwdXRGaWxlTmFtZSA9IHZhbHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zYXZlU2V0dGluZ3MoKTtcbiAgICAgICAgICAgIH0pLnNldFZhbHVlKHRoaXMucGx1Z2luLnNldHRpbmdzLm91dHB1dEZpbGVOYW1lKSk7XG5cbiAgICAgICAgbmV3IFNldHRpbmcoY29udGFpbmVyRWwpXG4gICAgICAgICAgICAuc2V0TmFtZSgnRGlzYWJsZSB3b3JraW5nIGxpbmtzJylcbiAgICAgICAgICAgIC5zZXREZXNjKCdJbmRlbnQgbGluZXMgdG8gZGlzYWJsZSB0aGUgbGluayBhbmQgdG8gY2xlYW4gdXAgdGhlIGdyYXBoIHZpZXcnKVxuICAgICAgICAgICAgLmFkZFRvZ2dsZShjYiA9PiBjYi5vbkNoYW5nZSh2YWx1ZSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2V0dGluZ3MuZGlzYWJsZVdvcmtpbmdMaW5rcyA9IHZhbHVlO1xuICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNhdmVTZXR0aW5ncygpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgKS5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy5kaXNhYmxlV29ya2luZ0xpbmtzKSk7XG5cbiAgICAgICAgbmV3IFNldHRpbmcoY29udGFpbmVyRWwpXG4gICAgICAgICAgICAuc2V0TmFtZShcIkV4Y2x1ZGUgZmlsZXMgaW4gdGhlIGdpdmVuIGRpcmVjdG9yaWVzXCIpXG4gICAgICAgICAgICAuc2V0RGVzYyhcIkVuYWJsZSB0byBleGNsdWRlIGZpbGVzIGluIHRoZSBnaXZlbiBkaXJlY3Rvcmllcy4gRGlzYWJsZSB0byBvbmx5IGluY2x1ZGUgZmlsZXMgaW4gdGhlIGdpdmVuIGRpcmVjdG9yaWVzXCIpXG4gICAgICAgICAgICAuYWRkVG9nZ2xlKGNiID0+XG4gICAgICAgICAgICAgICAgY2Iuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3MuaWdub3JlRGlyZWN0b3JpZXMpXG4gICAgICAgICAgICAgICAgICAgIC5vbkNoYW5nZSh2YWx1ZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zZXR0aW5ncy5pZ25vcmVEaXJlY3RvcmllcyA9IHZhbHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2F2ZVNldHRpbmdzKCk7XG4gICAgICAgICAgICAgICAgICAgIH0pKTtcblxuICAgICAgICBuZXcgU2V0dGluZyhjb250YWluZXJFbClcbiAgICAgICAgICAgIC5zZXROYW1lKFwiRGlyZWN0b3JpZXNcIilcbiAgICAgICAgICAgIC5zZXREZXNjKFwiQWRkIGVhY2ggZGlyZWN0b3J5IHBhdGggaW4gYSBuZXcgbGluZVwiKVxuICAgICAgICAgICAgLmFkZFRleHRBcmVhKGNiID0+IGNiXG4gICAgICAgICAgICAgICAgLnNldFBsYWNlaG9sZGVyKFwiRGlyZWN0b3J5L1N1YmRpcmVjdG9yeVwiKVxuICAgICAgICAgICAgICAgIC5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy5kaXJlY3Rvcmllc1RvSWdub3JlLmpvaW4oXCJcXG5cIikpXG4gICAgICAgICAgICAgICAgLm9uQ2hhbmdlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBsZXQgcGF0aHMgPSB2YWx1ZS50cmltKCkuc3BsaXQoXCJcXG5cIikubWFwKHZhbHVlID0+IHRoaXMuZm9ybWF0UGF0aCh2YWx1ZSwgdHJ1ZSkpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zZXR0aW5ncy5kaXJlY3Rvcmllc1RvSWdub3JlID0gcGF0aHM7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNhdmVTZXR0aW5ncygpO1xuICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgbmV3IFNldHRpbmcoY29udGFpbmVyRWwpXG4gICAgICAgICAgICAuc2V0TmFtZShcIkV4Y2x1ZGUgZmlsZXNcIilcbiAgICAgICAgICAgIC5zZXREZXNjKFwiQWRkIGVhY2ggZmlsZSBwYXRoIGluIGEgbmV3IGxpbmUgKHdpdGggZmlsZSBleHRlbnNpb24hKVwiKVxuICAgICAgICAgICAgLmFkZFRleHRBcmVhKGNiID0+IGNiXG4gICAgICAgICAgICAgICAgLnNldFBsYWNlaG9sZGVyKFwiRGlyZWN0b3J5L2ZpbGUubWRcIilcbiAgICAgICAgICAgICAgICAuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3MuZmlsZXNUb0lnbm9yZS5qb2luKFwiXFxuXCIpKVxuICAgICAgICAgICAgICAgIC5vbkNoYW5nZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHBhdGhzID0gdmFsdWUudHJpbSgpLnNwbGl0KFwiXFxuXCIpLm1hcCh2YWx1ZSA9PiB0aGlzLmZvcm1hdFBhdGgodmFsdWUsIGZhbHNlKSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNldHRpbmdzLmZpbGVzVG9JZ25vcmUgPSBwYXRocztcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2F2ZVNldHRpbmdzKCk7XG4gICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICBuZXcgU2V0dGluZyhjb250YWluZXJFbClcbiAgICAgICAgICAgIC5zZXROYW1lKFwiRXhjbHVkZSBsaW5rc1wiKVxuICAgICAgICAgICAgLnNldERlc2MoXCJFeGNsdWRlIGZpbGVzLCB3aGljaCBjb250YWluIHRoZSBnaXZlbiBmaWxlIGFzIGxpbmsuIEFkZCBlYWNoIGZpbGUgcGF0aCBpbiBhIG5ldyBsaW5lICh3aXRoIGZpbGUgZXh0ZW5zaW9uISkuIFNldCBpdCB0byBgKmAgdG8gZXhjbHVkZSBmaWxlcyB3aXRoIGxpbmtzLlwiKVxuICAgICAgICAgICAgLmFkZFRleHRBcmVhKGNiID0+IGNiXG4gICAgICAgICAgICAgICAgLnNldFBsYWNlaG9sZGVyKFwiRGlyZWN0b3J5L2ZpbGUubWRcIilcbiAgICAgICAgICAgICAgICAuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3MubGlua3NUb0lnbm9yZS5qb2luKFwiXFxuXCIpKVxuICAgICAgICAgICAgICAgIC5vbkNoYW5nZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHBhdGhzID0gdmFsdWUudHJpbSgpLnNwbGl0KFwiXFxuXCIpLm1hcCh2YWx1ZSA9PiB0aGlzLmZvcm1hdFBhdGgodmFsdWUsIGZhbHNlKSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNldHRpbmdzLmxpbmtzVG9JZ25vcmUgPSBwYXRocztcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2F2ZVNldHRpbmdzKCk7XG4gICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICBuZXcgU2V0dGluZyhjb250YWluZXJFbClcbiAgICAgICAgICAgIC5zZXROYW1lKFwiRXhjbHVkZSBmaWxlcyB3aXRoIHRoZSBnaXZlbiBmaWxldHlwZXNcIilcbiAgICAgICAgICAgIC5zZXREZXNjKFwiRW5hYmxlIHRvIGV4Y2x1ZGUgZmlsZXMgd2l0aCB0aGUgZ2l2ZW4gZmlsZXR5cGVzLiBEaXNhYmxlIHRvIG9ubHkgaW5jbHVkZSBmaWxlcyB3aXRoIHRoZSBnaXZlbiBmaWxldHlwZXNcIilcbiAgICAgICAgICAgIC5hZGRUb2dnbGUoY2IgPT5cbiAgICAgICAgICAgICAgICBjYi5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy5pZ25vcmVGaWxlVHlwZXMpXG4gICAgICAgICAgICAgICAgICAgIC5vbkNoYW5nZSh2YWx1ZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zZXR0aW5ncy5pZ25vcmVGaWxlVHlwZXMgPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNhdmVTZXR0aW5ncygpO1xuICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoXCJGaWxlIHR5cGVzXCIpXG4gICAgICAgICAgICAuc2V0RGVzYyhcIkVmZmVjdCBkZXBlbmRzIG9uIHRvZ2dsZSBhYm92ZVwiKVxuICAgICAgICAgICAgLmFkZFRleHRBcmVhKGNiID0+IGNiXG4gICAgICAgICAgICAgICAgLnNldFBsYWNlaG9sZGVyKFwiZG9jeCx0eHRcIilcbiAgICAgICAgICAgICAgICAuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3MuZmlsZVR5cGVzVG9JZ25vcmUuam9pbihcIixcIikpXG4gICAgICAgICAgICAgICAgLm9uQ2hhbmdlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBsZXQgZXh0ZW5zaW9ucyA9IHZhbHVlLnRyaW0oKS5zcGxpdChcIixcIik7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNldHRpbmdzLmZpbGVUeXBlc1RvSWdub3JlID0gZXh0ZW5zaW9ucztcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2F2ZVNldHRpbmdzKCk7XG4gICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICBuZXcgU2V0dGluZyhjb250YWluZXJFbClcbiAgICAgICAgICAgIC5zZXROYW1lKFwiRXhjbHVkZSB0YWdzXCIpXG4gICAgICAgICAgICAuc2V0RGVzYyhcIkV4Y2x1ZGUgZmlsZXMsIHdoaWNoIGNvbnRhaW4gdGhlIGdpdmVuIHRhZy4gQWRkIGVhY2ggdGFnIHNlcGFyYXRlZCBieSBjb21tYSAod2l0aG91dCBgI2ApXCIpXG4gICAgICAgICAgICAuYWRkVGV4dEFyZWEoY2IgPT4gY2JcbiAgICAgICAgICAgICAgICAuc2V0UGxhY2Vob2xkZXIoXCJ0b2RvLHVuZmluaXNoZWRcIilcbiAgICAgICAgICAgICAgICAuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3MudGFnc1RvSWdub3JlLmpvaW4oXCIsXCIpKVxuICAgICAgICAgICAgICAgIC5vbkNoYW5nZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHRhZ3MgPSB2YWx1ZS50cmltKCkuc3BsaXQoXCIsXCIpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zZXR0aW5ncy50YWdzVG9JZ25vcmUgPSB0YWdzO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zYXZlU2V0dGluZ3MoKTtcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoXCJGaWxldHlwZXMgdG8gZGVsZXRlIHBlciBjb21tYW5kLiBTZWUgUkVBRE1FLlwiKVxuICAgICAgICAgICAgLnNldERlc2MoXCJBZGQgZWFjaCBmaWxldHlwZSBzZXBhcmF0ZWQgYnkgY29tbWEuIFNldCB0byBgKmAgdG8gZGVsZXRlIGFsbCBmaWxlcy5cIilcbiAgICAgICAgICAgIC5hZGRUZXh0QXJlYShjYiA9PiBjYlxuICAgICAgICAgICAgICAgIC5zZXRQbGFjZWhvbGRlcihcImpwZyxwbmdcIilcbiAgICAgICAgICAgICAgICAuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3MuZmlsZVR5cGVzVG9EZWxldGUuam9pbihcIixcIikpXG4gICAgICAgICAgICAgICAgLm9uQ2hhbmdlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBsZXQgZXh0ZW5zaW9ucyA9IHZhbHVlLnRyaW0oKS5zcGxpdChcIixcIik7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNldHRpbmdzLmZpbGVUeXBlc1RvRGVsZXRlID0gZXh0ZW5zaW9ucztcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2F2ZVNldHRpbmdzKCk7XG4gICAgICAgICAgICAgICAgfSkpO1xuXG5cbiAgICAgICAgLy8vIFNldHRpbmdzIGZvciBmaW5kIGJyb2tlbkxpbmtzXG4gICAgICAgIGNvbnRhaW5lckVsLmNyZWF0ZUVsKFwiaDRcIiwgeyB0ZXh0OiBcIlNldHRpbmdzIGZvciBmaW5kaW5nIGJyb2tlbiBsaW5rc1wiIH0pO1xuXG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoJ091dHB1dCBmaWxlIG5hbWUnKVxuICAgICAgICAgICAgLnNldERlc2MoJ1NldCBuYW1lIG9mIG91dHB1dCBmaWxlICh3aXRob3V0IGZpbGUgZXh0ZW5zaW9uKS4gTWFrZSBzdXJlIG5vIGZpbGUgZXhpc3RzIHdpdGggdGhpcyBuYW1lIGJlY2F1c2UgaXQgd2lsbCBiZSBvdmVyd3JpdHRlbiEgSWYgdGhlIG5hbWUgaXMgZW1wdHksIHRoZSBkZWZhdWx0IG5hbWUgaXMgc2V0LicpXG4gICAgICAgICAgICAuYWRkVGV4dChjYiA9PiBjYi5vbkNoYW5nZSh2YWx1ZSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHZhbHVlLmxlbmd0aCA9PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNldHRpbmdzLnVucmVzb2x2ZWRMaW5rc091dHB1dEZpbGVOYW1lID0gdGhpcy5kZWZhdWx0U2V0dGluZ3MudW5yZXNvbHZlZExpbmtzT3V0cHV0RmlsZU5hbWU7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2V0dGluZ3MudW5yZXNvbHZlZExpbmtzT3V0cHV0RmlsZU5hbWUgPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2F2ZVNldHRpbmdzKCk7XG4gICAgICAgICAgICB9KS5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy51bnJlc29sdmVkTGlua3NPdXRwdXRGaWxlTmFtZSkpO1xuXG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoXCJFeGNsdWRlIGRpcmVjdG9yaWVzXCIpXG4gICAgICAgICAgICAuc2V0RGVzYyhcIkV4Y2x1ZGUgbGlua3MgaW4gZmlsZXMgaW4gdGhlIHNwZWNpZmllZCBkaXJlY3RvcnkuIEFkZCBlYWNoIGRpcmVjdG9yeSBwYXRoIGluIGEgbmV3IGxpbmVcIilcbiAgICAgICAgICAgIC5hZGRUZXh0QXJlYShjYiA9PiBjYlxuICAgICAgICAgICAgICAgIC5zZXRQbGFjZWhvbGRlcihcIkRpcmVjdG9yeS9TdWJkaXJlY3RvcnlcIilcbiAgICAgICAgICAgICAgICAuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3MudW5yZXNvbHZlZExpbmtzRGlyZWN0b3JpZXNUb0lnbm9yZS5qb2luKFwiXFxuXCIpKVxuICAgICAgICAgICAgICAgIC5vbkNoYW5nZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHBhdGhzID0gdmFsdWUudHJpbSgpLnNwbGl0KFwiXFxuXCIpLm1hcCh2YWx1ZSA9PiB0aGlzLmZvcm1hdFBhdGgodmFsdWUsIHRydWUpKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2V0dGluZ3MudW5yZXNvbHZlZExpbmtzRGlyZWN0b3JpZXNUb0lnbm9yZSA9IHBhdGhzO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zYXZlU2V0dGluZ3MoKTtcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoXCJFeGNsdWRlIGZpbGVzXCIpXG4gICAgICAgICAgICAuc2V0RGVzYyhcIkV4Y2x1ZGUgbGlua3MgaW4gdGhlIHNwZWNpZmllZCBmaWxlLiBBZGQgZWFjaCBmaWxlIHBhdGggaW4gYSBuZXcgbGluZSAod2l0aCBmaWxlIGV4dGVuc2lvbiEpXCIpXG4gICAgICAgICAgICAuYWRkVGV4dEFyZWEoY2IgPT4gY2JcbiAgICAgICAgICAgICAgICAuc2V0UGxhY2Vob2xkZXIoXCJEaXJlY3RvcnkvZmlsZS5tZFwiKVxuICAgICAgICAgICAgICAgIC5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy51bnJlc29sdmVkTGlua3NGaWxlc1RvSWdub3JlLmpvaW4oXCJcXG5cIikpXG4gICAgICAgICAgICAgICAgLm9uQ2hhbmdlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBsZXQgcGF0aHMgPSB2YWx1ZS50cmltKCkuc3BsaXQoXCJcXG5cIikubWFwKHZhbHVlID0+IHRoaXMuZm9ybWF0UGF0aCh2YWx1ZSwgZmFsc2UpKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2V0dGluZ3MudW5yZXNvbHZlZExpbmtzRmlsZXNUb0lnbm9yZSA9IHBhdGhzO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zYXZlU2V0dGluZ3MoKTtcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoXCJFeGNsdWRlIGxpbmtzXCIpXG4gICAgICAgICAgICAuc2V0RGVzYyhcIkV4Y2x1ZGUgZmlsZXMsIHdoaWNoIGNvbnRhaW4gdGhlIGdpdmVuIGZpbGUgYXMgbGluay4gQWRkIGVhY2ggZmlsZSBwYXRoIGluIGEgbmV3IGxpbmUgKHdpdGggZmlsZSBleHRlbnNpb24hKS4gU2V0IGl0IHRvIGAqYCB0byBleGNsdWRlIGZpbGVzIHdpdGggbGlua3MuXCIpXG4gICAgICAgICAgICAuYWRkVGV4dEFyZWEoY2IgPT4gY2JcbiAgICAgICAgICAgICAgICAuc2V0UGxhY2Vob2xkZXIoXCJEaXJlY3RvcnkvZmlsZS5tZFwiKVxuICAgICAgICAgICAgICAgIC5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy51bnJlc29sdmVkTGlua3NMaW5rc1RvSWdub3JlLmpvaW4oXCJcXG5cIikpXG4gICAgICAgICAgICAgICAgLm9uQ2hhbmdlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBsZXQgcGF0aHMgPSB2YWx1ZS50cmltKCkuc3BsaXQoXCJcXG5cIikubWFwKHZhbHVlID0+IHRoaXMuZm9ybWF0UGF0aCh2YWx1ZSwgZmFsc2UpKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2V0dGluZ3MudW5yZXNvbHZlZExpbmtzTGlua3NUb0lnbm9yZSA9IHBhdGhzO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zYXZlU2V0dGluZ3MoKTtcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoXCJFeGNsdWRlIGZpbGV0eXBlc1wiKVxuICAgICAgICAgICAgLnNldERlc2MoXCJFeGNsdWRlIGxpbmtzIHdpdGggdGhlIHNwZWNpZmllZCBmaWxldHlwZS4gQWRkIGVhY2ggZmlsZXR5cGUgc2VwYXJhdGVkIGJ5IGNvbW1hXCIpXG4gICAgICAgICAgICAuYWRkVGV4dEFyZWEoY2IgPT4gY2JcbiAgICAgICAgICAgICAgICAuc2V0UGxhY2Vob2xkZXIoXCJkb2N4LHR4dFwiKVxuICAgICAgICAgICAgICAgIC5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy51bnJlc29sdmVkTGlua3NGaWxlVHlwZXNUb0lnbm9yZS5qb2luKFwiLFwiKSlcbiAgICAgICAgICAgICAgICAub25DaGFuZ2UoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBleHRlbnNpb25zID0gdmFsdWUudHJpbSgpLnNwbGl0KFwiLFwiKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2V0dGluZ3MudW5yZXNvbHZlZExpbmtzRmlsZVR5cGVzVG9JZ25vcmUgPSBleHRlbnNpb25zO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zYXZlU2V0dGluZ3MoKTtcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoXCJFeGNsdWRlIHRhZ3NcIilcbiAgICAgICAgICAgIC5zZXREZXNjKFwiRXhjbHVkZSBsaW5rcyBpbiBmaWxlcywgd2hpY2ggY29udGFpbiB0aGUgZ2l2ZW4gdGFnLiBBZGQgZWFjaCB0YWcgc2VwYXJhdGVkIGJ5IGNvbW1hICh3aXRob3V0IGAjYClcIilcbiAgICAgICAgICAgIC5hZGRUZXh0QXJlYShjYiA9PiBjYlxuICAgICAgICAgICAgICAgIC5zZXRQbGFjZWhvbGRlcihcInRvZG8sdW5maW5pc2hlZFwiKVxuICAgICAgICAgICAgICAgIC5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy51bnJlc29sdmVkTGlua3NUYWdzVG9JZ25vcmUuam9pbihcIixcIikpXG4gICAgICAgICAgICAgICAgLm9uQ2hhbmdlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBsZXQgdGFncyA9IHZhbHVlLnRyaW0oKS5zcGxpdChcIixcIik7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNldHRpbmdzLnVucmVzb2x2ZWRMaW5rc1RhZ3NUb0lnbm9yZSA9IHRhZ3M7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNhdmVTZXR0aW5ncygpO1xuICAgICAgICAgICAgICAgIH0pKTtcblxuICAgICAgICBjb250YWluZXJFbC5jcmVhdGVFbChcImg0XCIsIHsgdGV4dDogXCJTZXR0aW5ncyBmb3IgZmluZGluZyBmaWxlcyB3aXRob3V0IHRhZ3NcIiB9KTtcblxuICAgICAgICBuZXcgU2V0dGluZyhjb250YWluZXJFbClcbiAgICAgICAgICAgIC5zZXROYW1lKCdPdXRwdXQgZmlsZSBuYW1lJylcbiAgICAgICAgICAgIC5zZXREZXNjKCdTZXQgbmFtZSBvZiBvdXRwdXQgZmlsZSAod2l0aG91dCBmaWxlIGV4dGVuc2lvbikuIE1ha2Ugc3VyZSBubyBmaWxlIGV4aXN0cyB3aXRoIHRoaXMgbmFtZSBiZWNhdXNlIGl0IHdpbGwgYmUgb3ZlcndyaXR0ZW4hIElmIHRoZSBuYW1lIGlzIGVtcHR5LCB0aGUgZGVmYXVsdCBuYW1lIGlzIHNldC4nKVxuICAgICAgICAgICAgLmFkZFRleHQoY2IgPT4gY2Iub25DaGFuZ2UodmFsdWUgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh2YWx1ZS5sZW5ndGggPT0gMCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zZXR0aW5ncy53aXRob3V0VGFnc091dHB1dEZpbGVOYW1lID0gdGhpcy5kZWZhdWx0U2V0dGluZ3Mud2l0aG91dFRhZ3NPdXRwdXRGaWxlTmFtZTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zZXR0aW5ncy53aXRob3V0VGFnc091dHB1dEZpbGVOYW1lID0gdmFsdWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNhdmVTZXR0aW5ncygpO1xuICAgICAgICAgICAgfSkuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3Mud2l0aG91dFRhZ3NPdXRwdXRGaWxlTmFtZSkpO1xuXG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoXCJFeGNsdWRlIGZpbGVzXCIpXG4gICAgICAgICAgICAuc2V0RGVzYyhcIkV4Y2x1ZGUgdGhlIHNwZWNpZmljIGZpbGVzLiBBZGQgZWFjaCBmaWxlIHBhdGggaW4gYSBuZXcgbGluZSAod2l0aCBmaWxlIGV4dGVuc2lvbiEpXCIpXG4gICAgICAgICAgICAuYWRkVGV4dEFyZWEoY2IgPT4gY2JcbiAgICAgICAgICAgICAgICAuc2V0UGxhY2Vob2xkZXIoXCJEaXJlY3RvcnkvZmlsZS5tZFwiKVxuICAgICAgICAgICAgICAgIC5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy53aXRob3V0VGFnc0ZpbGVzVG9JZ25vcmUuam9pbihcIlxcblwiKSlcbiAgICAgICAgICAgICAgICAub25DaGFuZ2UoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBwYXRocyA9IHZhbHVlLnRyaW0oKS5zcGxpdChcIlxcblwiKS5tYXAodmFsdWUgPT4gdGhpcy5mb3JtYXRQYXRoKHZhbHVlLCBmYWxzZSkpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zZXR0aW5ncy53aXRob3V0VGFnc0ZpbGVzVG9JZ25vcmUgPSBwYXRocztcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2F2ZVNldHRpbmdzKCk7XG4gICAgICAgICAgICAgICAgfSkpO1xuXG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoXCJFeGNsdWRlIGRpcmVjdG9yaWVzXCIpXG4gICAgICAgICAgICAuc2V0RGVzYyhcIkV4Y2x1ZGUgZmlsZXMgaW4gdGhlIHNwZWNpZmllZCBkaXJlY3Rvcmllcy4gQWRkIGVhY2ggZGlyZWN0b3J5IHBhdGggaW4gYSBuZXcgbGluZVwiKVxuICAgICAgICAgICAgLmFkZFRleHRBcmVhKGNiID0+IGNiXG4gICAgICAgICAgICAgICAgLnNldFBsYWNlaG9sZGVyKFwiRGlyZWN0b3J5L1N1YmRpcmVjdG9yeVwiKVxuICAgICAgICAgICAgICAgIC5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy53aXRob3V0VGFnc0RpcmVjdG9yaWVzVG9JZ25vcmUuam9pbihcIlxcblwiKSlcbiAgICAgICAgICAgICAgICAub25DaGFuZ2UoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBwYXRocyA9IHZhbHVlLnRyaW0oKS5zcGxpdChcIlxcblwiKS5tYXAodmFsdWUgPT4gdGhpcy5mb3JtYXRQYXRoKHZhbHVlLCB0cnVlKSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNldHRpbmdzLndpdGhvdXRUYWdzRGlyZWN0b3JpZXNUb0lnbm9yZSA9IHBhdGhzO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zYXZlU2V0dGluZ3MoKTtcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgfVxufVxuIiwiaW1wb3J0IHsgQXBwLCBDYWNoZWRNZXRhZGF0YSwgZ2V0QWxsVGFncywgaXRlcmF0ZUNhY2hlUmVmcyB9IGZyb20gXCJvYnNpZGlhblwiO1xuXG5leHBvcnQgY2xhc3MgVXRpbHMge1xuICAgIHByaXZhdGUgZmlsZUNhY2hlOiBDYWNoZWRNZXRhZGF0YTtcblxuICAgIC8qKlxuICAgICAqIENoZWNrcyBmb3IgdGhlIGdpdmVuIHNldHRpbmdzLiBJcyB1c2VkIGZvciBgRmluZCBvcnBoYW5lZCBmaWxlc2AgYW5kIGBGaW5kIGJyb2tlbiBsaW5rc2BcbiAgICAgKiBAcGFyYW0gYXBwIFxuICAgICAqIEBwYXJhbSBmaWxlUGF0aCBcbiAgICAgKiBAcGFyYW0gdGFnc1RvSWdub3JlIFxuICAgICAqIEBwYXJhbSBsaW5rc1RvSWdub3JlIFxuICAgICAqIEBwYXJhbSBkaXJlY3Rvcmllc1RvSWdub3JlIFxuICAgICAqIEBwYXJhbSBmaWxlc1RvSWdub3JlIFxuICAgICAqIEBwYXJhbSBpZ25vcmVEaXJlY3Rvcmllc1xuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGFwcDogQXBwLFxuICAgICAgICBwcml2YXRlIGZpbGVQYXRoOiBzdHJpbmcsXG4gICAgICAgIHByaXZhdGUgdGFnc1RvSWdub3JlOiBzdHJpbmdbXSxcbiAgICAgICAgcHJpdmF0ZSBsaW5rc1RvSWdub3JlOiBzdHJpbmdbXSxcbiAgICAgICAgcHJpdmF0ZSBkaXJlY3Rvcmllc1RvSWdub3JlOiBzdHJpbmdbXSxcbiAgICAgICAgcHJpdmF0ZSBmaWxlc1RvSWdub3JlOiBzdHJpbmdbXSxcbiAgICAgICAgcHJpdmF0ZSBpZ25vcmVEaXJlY3RvcmllczogYm9vbGVhbiA9IHRydWUsXG4gICAgICAgIHByaXZhdGUgZGlyPzogc3RyaW5nLFxuICAgICkge1xuICAgICAgICB0aGlzLmZpbGVDYWNoZSA9IGFwcC5tZXRhZGF0YUNhY2hlLmdldENhY2hlKGZpbGVQYXRoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhhc1RhZ3NUb0lnbm9yZSgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgdGFncyA9IGdldEFsbFRhZ3ModGhpcy5maWxlQ2FjaGUpO1xuICAgICAgICByZXR1cm4gdGFncz8uZmluZCgodGFnKSA9PiB0aGlzLnRhZ3NUb0lnbm9yZS5jb250YWlucyh0YWcuc3Vic3RyaW5nKDEpKSkgIT09IHVuZGVmaW5lZDtcbiAgICB9XG4gICAgcHJpdmF0ZSBoYXNMaW5rc1RvSWdub3JlKCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoKHRoaXMuZmlsZUNhY2hlPy5lbWJlZHMgIT0gbnVsbCB8fCB0aGlzLmZpbGVDYWNoZT8ubGlua3MgIT0gbnVsbCkgJiYgdGhpcy5saW5rc1RvSWdub3JlWzBdID09IFwiKlwiKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBpdGVyYXRlQ2FjaGVSZWZzKHRoaXMuZmlsZUNhY2hlLCBjYiA9PiB7XG4gICAgICAgICAgICBjb25zdCBsaW5rID0gdGhpcy5hcHAubWV0YWRhdGFDYWNoZS5nZXRGaXJzdExpbmtwYXRoRGVzdChjYi5saW5rLCB0aGlzLmZpbGVQYXRoKT8ucGF0aDtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmxpbmtzVG9JZ25vcmUuY29udGFpbnMobGluayk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2hlY2tEaXJlY3RvcnkoKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICh0aGlzLmRpcikge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmZpbGVQYXRoLnN0YXJ0c1dpdGgodGhpcy5kaXIpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjb250YWlucyA9IHRoaXMuZGlyZWN0b3JpZXNUb0lnbm9yZS5maW5kKCh2YWx1ZSkgPT4gdmFsdWUubGVuZ3RoICE9IDAgJiYgdGhpcy5maWxlUGF0aC5zdGFydHNXaXRoKHZhbHVlKSkgIT09IHVuZGVmaW5lZDtcbiAgICAgICAgaWYgKHRoaXMuaWdub3JlRGlyZWN0b3JpZXMpIHtcbiAgICAgICAgICAgIHJldHVybiBjb250YWlucztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiAhY29udGFpbnM7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGlzRmlsZVRvSWdub3JlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5maWxlc1RvSWdub3JlLmNvbnRhaW5zKHRoaXMuZmlsZVBhdGgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBpc1ZhbGlkKCkge1xuICAgICAgICByZXR1cm4gIXRoaXMuaGFzVGFnc1RvSWdub3JlKCkgJiYgIXRoaXMuaGFzTGlua3NUb0lnbm9yZSgpICYmICF0aGlzLmNoZWNrRGlyZWN0b3J5KCkgJiYgIXRoaXMuaXNGaWxlVG9JZ25vcmUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBXcml0ZXMgdGhlIHRleHQgdG8gdGhlIGZpbGUgYW5kIG9wZW5zIHRoZSBmaWxlIGluIGEgbmV3IHBhbmUgaWYgaXQgaXMgbm90IG9wZW5lZCB5ZXRcbiAgICAgKiBAcGFyYW0gYXBwIFxuICAgICAqIEBwYXJhbSBvdXRwdXRGaWxlTmFtZSBuYW1lIG9mIHRoZSBvdXRwdXQgZmlsZVxuICAgICAqIEBwYXJhbSB0ZXh0IGRhdGEgdG8gYmUgd3JpdHRlbiB0byB0aGUgZmlsZVxuICAgICAqL1xuICAgIHN0YXRpYyBhc3luYyB3cml0ZUFuZE9wZW5GaWxlKGFwcDogQXBwLCBvdXRwdXRGaWxlTmFtZTogc3RyaW5nLCB0ZXh0OiBzdHJpbmcsIG9wZW5GaWxlOiBib29sZWFuKSB7XG4gICAgICAgIGF3YWl0IGFwcC52YXVsdC5hZGFwdGVyLndyaXRlKG91dHB1dEZpbGVOYW1lLCB0ZXh0KTtcbiAgICAgICAgaWYgKCFvcGVuRmlsZSkgcmV0dXJuO1xuXG4gICAgICAgIGxldCBmaWxlSXNBbHJlYWR5T3BlbmVkID0gZmFsc2U7XG4gICAgICAgIGFwcC53b3Jrc3BhY2UuaXRlcmF0ZUFsbExlYXZlcyhsZWFmID0+IHtcbiAgICAgICAgICAgIGlmIChsZWFmLmdldERpc3BsYXlUZXh0KCkgIT0gXCJcIiAmJiBvdXRwdXRGaWxlTmFtZS5zdGFydHNXaXRoKGxlYWYuZ2V0RGlzcGxheVRleHQoKSkpIHtcbiAgICAgICAgICAgICAgICBmaWxlSXNBbHJlYWR5T3BlbmVkID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGlmICghZmlsZUlzQWxyZWFkeU9wZW5lZCkge1xuICAgICAgICAgICAgLy8gYXBwLndvcmtzcGFjZS5nZXRMZWFmKCkub3BlbkZpbGUoYXBwLnZhdWx0LmdldEFic3RyYWN0RmlsZUJ5UGF0aChvdXRwdXRGaWxlTmFtZSkgYXMgVEZpbGUpO1xuICAgICAgICAgICAgYXBwLndvcmtzcGFjZS5vcGVuTGlua1RleHQob3V0cHV0RmlsZU5hbWUsIFwiL1wiKTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCJpbXBvcnQgeyBnZXRBbGxUYWdzLCBnZXRMaW5rcGF0aCwgaXRlcmF0ZUNhY2hlUmVmcywgTm90aWNlLCBQbHVnaW4sIFRGaWxlLCBURm9sZGVyIH0gZnJvbSAnb2JzaWRpYW4nO1xyXG5pbXBvcnQgeyBEZWxldGVGaWxlc01vZGFsIH0gZnJvbSAnLi9kZWxldGVGaWxlc01vZGFsJztcclxuaW1wb3J0IHsgU2V0dGluZ3NUYWIgfSBmcm9tICcuL3NldHRpbmdzVGFiJztcclxuaW1wb3J0IHsgVXRpbHMgfSBmcm9tICcuL3V0aWxzJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU2V0dGluZ3Mge1xyXG5cdG91dHB1dEZpbGVOYW1lOiBzdHJpbmc7XHJcblx0ZGlzYWJsZVdvcmtpbmdMaW5rczogYm9vbGVhbjtcclxuXHRkaXJlY3Rvcmllc1RvSWdub3JlOiBzdHJpbmdbXTtcclxuXHRmaWxlc1RvSWdub3JlOiBzdHJpbmdbXTtcclxuXHRmaWxlVHlwZXNUb0lnbm9yZTogc3RyaW5nW107XHJcblx0bGlua3NUb0lnbm9yZTogc3RyaW5nW107XHJcblx0dGFnc1RvSWdub3JlOiBzdHJpbmdbXTtcclxuXHRmaWxlVHlwZXNUb0RlbGV0ZTogc3RyaW5nW107XHJcblx0aWdub3JlRmlsZVR5cGVzOiBib29sZWFuO1xyXG5cdGlnbm9yZURpcmVjdG9yaWVzOiBib29sZWFuO1xyXG5cdHVucmVzb2x2ZWRMaW5rc0RpcmVjdG9yaWVzVG9JZ25vcmU6IHN0cmluZ1tdO1xyXG5cdHVucmVzb2x2ZWRMaW5rc0ZpbGVzVG9JZ25vcmU6IHN0cmluZ1tdO1xyXG5cdHVucmVzb2x2ZWRMaW5rc0ZpbGVUeXBlc1RvSWdub3JlOiBzdHJpbmdbXTtcclxuXHR1bnJlc29sdmVkTGlua3NMaW5rc1RvSWdub3JlOiBzdHJpbmdbXTtcclxuXHR1bnJlc29sdmVkTGlua3NUYWdzVG9JZ25vcmU6IHN0cmluZ1tdO1xyXG5cdHVucmVzb2x2ZWRMaW5rc091dHB1dEZpbGVOYW1lOiBzdHJpbmc7XHJcblx0d2l0aG91dFRhZ3NEaXJlY3Rvcmllc1RvSWdub3JlOiBzdHJpbmdbXTtcclxuXHR3aXRob3V0VGFnc0ZpbGVzVG9JZ25vcmU6IHN0cmluZ1tdO1xyXG5cdHdpdGhvdXRUYWdzT3V0cHV0RmlsZU5hbWU6IHN0cmluZztcclxuXHRvcGVuT3V0cHV0RmlsZTogYm9vbGVhbjtcclxufVxyXG5jb25zdCBERUZBVUxUX1NFVFRJTkdTOiBTZXR0aW5ncyA9IHtcclxuXHRvdXRwdXRGaWxlTmFtZTogXCJvcnBoYW5lZCBmaWxlcyBvdXRwdXRcIixcclxuXHRkaXNhYmxlV29ya2luZ0xpbmtzOiBmYWxzZSxcclxuXHRkaXJlY3Rvcmllc1RvSWdub3JlOiBbXSxcclxuXHRmaWxlc1RvSWdub3JlOiBbXSxcclxuXHRmaWxlVHlwZXNUb0lnbm9yZTogW10sXHJcblx0bGlua3NUb0lnbm9yZTogW10sXHJcblx0dGFnc1RvSWdub3JlOiBbXSxcclxuXHRmaWxlVHlwZXNUb0RlbGV0ZTogW10sXHJcblx0aWdub3JlRmlsZVR5cGVzOiB0cnVlLFxyXG5cdGlnbm9yZURpcmVjdG9yaWVzOiB0cnVlLFxyXG5cdHVucmVzb2x2ZWRMaW5rc091dHB1dEZpbGVOYW1lOiBcImJyb2tlbiBsaW5rcyBvdXRwdXRcIixcclxuXHR1bnJlc29sdmVkTGlua3NEaXJlY3Rvcmllc1RvSWdub3JlOiBbXSxcclxuXHR1bnJlc29sdmVkTGlua3NGaWxlc1RvSWdub3JlOiBbXSxcclxuXHR1bnJlc29sdmVkTGlua3NGaWxlVHlwZXNUb0lnbm9yZTogW10sXHJcblx0dW5yZXNvbHZlZExpbmtzTGlua3NUb0lnbm9yZTogW10sXHJcblx0dW5yZXNvbHZlZExpbmtzVGFnc1RvSWdub3JlOiBbXSxcclxuXHR3aXRob3V0VGFnc0RpcmVjdG9yaWVzVG9JZ25vcmU6IFtdLFxyXG5cdHdpdGhvdXRUYWdzRmlsZXNUb0lnbm9yZTogW10sXHJcblx0d2l0aG91dFRhZ3NPdXRwdXRGaWxlTmFtZTogXCJmaWxlcyB3aXRob3V0IHRhZ3NcIixcclxuXHRvcGVuT3V0cHV0RmlsZTogdHJ1ZSxcclxufTtcclxuXHJcbmludGVyZmFjZSBCcm9rZW5MaW5rIHtcclxuXHRsaW5rOiBzdHJpbmc7XHJcblx0ZmlsZXM6IHN0cmluZ1tdO1xyXG59XHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEZpbmRPcnBoYW5lZEZpbGVzUGx1Z2luIGV4dGVuZHMgUGx1Z2luIHtcclxuXHRzZXR0aW5nczogU2V0dGluZ3M7XHJcblx0YXN5bmMgb25sb2FkKCkge1xyXG5cdFx0Y29uc29sZS5sb2coJ2xvYWRpbmcgJyArIHRoaXMubWFuaWZlc3QubmFtZSArIFwiIHBsdWdpblwiKTtcclxuXHRcdGF3YWl0IHRoaXMubG9hZFNldHRpbmdzKCk7XHJcblx0XHR0aGlzLmFkZENvbW1hbmQoe1xyXG5cdFx0XHRpZDogJ2ZpbmQtdW5saW5rZWQtZmlsZXMnLFxyXG5cdFx0XHRuYW1lOiAnRmluZCBvcnBoYW5lZCBmaWxlcycsXHJcblx0XHRcdGNhbGxiYWNrOiAoKSA9PiB0aGlzLmZpbmRPcnBoYW5lZEZpbGVzKCksXHJcblx0XHR9KTtcclxuXHRcdHRoaXMuYWRkQ29tbWFuZCh7XHJcblx0XHRcdGlkOiAnZmluZC11bnJlc29sdmVkLWxpbmsnLFxyXG5cdFx0XHRuYW1lOiAnRmluZCBicm9rZW4gbGlua3MnLFxyXG5cdFx0XHRjYWxsYmFjazogKCkgPT4gdGhpcy5maW5kQnJva2VuTGlua3MoKSxcclxuXHRcdH0pO1xyXG5cdFx0dGhpcy5hZGRDb21tYW5kKHtcclxuXHRcdFx0aWQ6IFwiZGVsZXRlLXVubGlua2VkLWZpbGVzXCIsXHJcblx0XHRcdG5hbWU6IFwiRGVsZXRlIG9ycGhhbmVkIGZpbGVzIHdpdGggY2VydGFpbiBleHRlbnNpb24uIFNlZSBSRUFETUVcIixcclxuXHRcdFx0Y2FsbGJhY2s6ICgpID0+IHRoaXMuZGVsZXRlT3JwaGFuZWRGaWxlcygpXHJcblx0XHR9KTtcclxuXHRcdHRoaXMuYWRkQ29tbWFuZCh7XHJcblx0XHRcdGlkOiBcImZpbmQtZmlsZXMtd2l0aG91dC10YWdzXCIsXHJcblx0XHRcdG5hbWU6IFwiRmluZCBmaWxlcyB3aXRob3V0IHRhZ3NcIixcclxuXHRcdFx0Y2FsbGJhY2s6ICgpID0+IHRoaXMuZmluZEZpbGVzV2l0aG91dFRhZ3MoKVxyXG5cdFx0fSk7XHJcblx0XHR0aGlzLmFkZFNldHRpbmdUYWIobmV3IFNldHRpbmdzVGFiKHRoaXMuYXBwLCB0aGlzLCBERUZBVUxUX1NFVFRJTkdTKSk7XHJcblxyXG5cdFx0dGhpcy5hcHAud29ya3NwYWNlLm9uKFwiZmlsZS1tZW51XCIsIChtZW51LCBmaWxlLCBzb3VyY2UsIGxlYWYpID0+IHtcclxuXHRcdFx0aWYgKGZpbGUgaW5zdGFuY2VvZiBURm9sZGVyKSB7XHJcblx0XHRcdFx0bWVudS5hZGRJdGVtKGNiID0+IHtcclxuXHRcdFx0XHRcdGNiLnNldEljb24oXCJzZWFyY2hcIik7XHJcblx0XHRcdFx0XHRjYi5zZXRUaXRsZShcIkZpbmQgb3JwaGFuZWQgZmlsZXNcIik7XHJcblx0XHRcdFx0XHQvLyBBZGQgdHJhaWxpbmcgc2xhc2ggdG8gY2F0Y2ggZmlsZXMgbmFtZWQgbGlrZSB0aGUgZGlyZWN0b3J5LiBTZWUgaHR0cHM6Ly9naXRodWIuY29tL1ZpbnplbnQwMy9maW5kLXVubGlua2VkLWZpbGVzL2lzc3Vlcy8yNFxyXG5cdFx0XHRcdFx0Y2Iub25DbGljaygoZSkgPT4geyB0aGlzLmZpbmRPcnBoYW5lZEZpbGVzKGZpbGUucGF0aCArIFwiL1wiKTsgfSk7XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0ZmluZE9ycGhhbmVkRmlsZXMoZGlyPzogc3RyaW5nKSB7XHJcblx0XHRjb25zdCBvdXRGaWxlTmFtZSA9IHRoaXMuc2V0dGluZ3Mub3V0cHV0RmlsZU5hbWUgKyBcIi5tZFwiO1xyXG5cdFx0bGV0IG91dEZpbGU6IFRGaWxlO1xyXG5cdFx0Y29uc3QgZmlsZXMgPSB0aGlzLmFwcC52YXVsdC5nZXRGaWxlcygpO1xyXG5cdFx0Y29uc3QgbWFya2Rvd25GaWxlcyA9IHRoaXMuYXBwLnZhdWx0LmdldE1hcmtkb3duRmlsZXMoKTtcclxuXHRcdGxldCBsaW5rczogc3RyaW5nW10gPSBbXTtcclxuXHJcblx0XHRtYXJrZG93bkZpbGVzLmZvckVhY2goKG1hcmtGaWxlOiBURmlsZSkgPT4ge1xyXG5cdFx0XHRpZiAobWFya0ZpbGUucGF0aCA9PSBvdXRGaWxlTmFtZSkge1xyXG5cdFx0XHRcdG91dEZpbGUgPSBtYXJrRmlsZTtcclxuXHRcdFx0XHRyZXR1cm47XHJcblx0XHRcdH1cclxuXHRcdFx0aXRlcmF0ZUNhY2hlUmVmcyh0aGlzLmFwcC5tZXRhZGF0YUNhY2hlLmdldEZpbGVDYWNoZShtYXJrRmlsZSksIGNiID0+IHtcclxuXHRcdFx0XHRsZXQgdHh0ID0gdGhpcy5hcHAubWV0YWRhdGFDYWNoZS5nZXRGaXJzdExpbmtwYXRoRGVzdChnZXRMaW5rcGF0aChjYi5saW5rKSwgbWFya0ZpbGUucGF0aCk7XHJcblx0XHRcdFx0aWYgKHR4dCAhPSBudWxsKVxyXG5cdFx0XHRcdFx0bGlua3MucHVzaCh0eHQucGF0aCk7XHJcblx0XHRcdH0pO1xyXG5cdFx0fSk7XHJcblx0XHRjb25zdCBub3RMaW5rZWRGaWxlcyA9IGZpbGVzLmZpbHRlcigoZmlsZSkgPT4gdGhpcy5pc1ZhbGlkKGZpbGUsIGxpbmtzLCBkaXIpKTtcclxuXHRcdG5vdExpbmtlZEZpbGVzLnJlbW92ZShvdXRGaWxlKTtcclxuXHJcblxyXG5cdFx0bGV0IHRleHQgPSBcIlwiO1xyXG5cdFx0bGV0IHByZWZpeDogc3RyaW5nO1xyXG5cdFx0aWYgKHRoaXMuc2V0dGluZ3MuZGlzYWJsZVdvcmtpbmdMaW5rcylcclxuXHRcdFx0cHJlZml4ID0gXCJcdFwiO1xyXG5cdFx0ZWxzZVxyXG5cdFx0XHRwcmVmaXggPSBcIlwiO1xyXG5cdFx0bm90TGlua2VkRmlsZXMuZm9yRWFjaCgoZmlsZSkgPT4ge1xyXG5cdFx0XHR0ZXh0ICs9IHByZWZpeCArIFwiLSBbW1wiICsgdGhpcy5hcHAubWV0YWRhdGFDYWNoZS5maWxlVG9MaW5rdGV4dChmaWxlLCBcIi9cIiwgZmFsc2UpICsgXCJdXVxcblwiO1xyXG5cdFx0fSk7XHJcblx0XHRVdGlscy53cml0ZUFuZE9wZW5GaWxlKHRoaXMuYXBwLCBvdXRGaWxlTmFtZSwgdGV4dCwgdGhpcy5zZXR0aW5ncy5vcGVuT3V0cHV0RmlsZSk7XHJcblxyXG5cdH1cclxuXHRhc3luYyBkZWxldGVPcnBoYW5lZEZpbGVzKCkge1xyXG5cdFx0aWYgKCFhd2FpdCB0aGlzLmFwcC52YXVsdC5hZGFwdGVyLmV4aXN0cyh0aGlzLnNldHRpbmdzLm91dHB1dEZpbGVOYW1lICsgXCIubWRcIikpIHtcclxuXHRcdFx0bmV3IE5vdGljZShcIkNhbid0IGZpbmQgZmlsZSAtIFBsZWFzZSBydW4gdGhlIGBGaW5kIG9ycGhhbmVkIGZpbGVzJyBjb21tYW5kIGJlZm9yZVwiKTtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cdFx0Y29uc3QgbGlua3MgPSB0aGlzLmFwcC5tZXRhZGF0YUNhY2hlLmdldENhY2hlKHRoaXMuc2V0dGluZ3Mub3V0cHV0RmlsZU5hbWUgKyBcIi5tZFwiKT8ubGlua3MgPz8gW107XHJcblx0XHRjb25zdCBmaWxlc1RvRGVsZXRlOiBURmlsZVtdID0gW107XHJcblx0XHRjb25zb2xlLmxvZyh0aGlzLnNldHRpbmdzLmZpbGVUeXBlc1RvRGVsZXRlKTtcclxuXHRcdGxpbmtzLmZvckVhY2goKGxpbmspID0+IHtcclxuXHRcdFx0Y29uc3QgZmlsZSA9IHRoaXMuYXBwLm1ldGFkYXRhQ2FjaGUuZ2V0Rmlyc3RMaW5rcGF0aERlc3QobGluay5saW5rLCBcIi9cIik7XHJcblx0XHRcdGlmICghZmlsZSlcclxuXHRcdFx0XHRyZXR1cm47XHJcblxyXG5cdFx0XHRpZiAodGhpcy5zZXR0aW5ncy5maWxlVHlwZXNUb0RlbGV0ZVswXSA9PSBcIipcIiB8fCB0aGlzLnNldHRpbmdzLmZpbGVUeXBlc1RvRGVsZXRlLmNvbnRhaW5zKGZpbGUuZXh0ZW5zaW9uKSkge1xyXG5cdFx0XHRcdGZpbGVzVG9EZWxldGUucHVzaChmaWxlKTtcclxuXHRcdFx0fVxyXG5cdFx0fSk7XHJcblx0XHRpZiAoZmlsZXNUb0RlbGV0ZS5sZW5ndGggPiAwKVxyXG5cdFx0XHRuZXcgRGVsZXRlRmlsZXNNb2RhbCh0aGlzLmFwcCwgZmlsZXNUb0RlbGV0ZSkub3BlbigpO1xyXG5cdH1cclxuXHRmaW5kQnJva2VuTGlua3MoKSB7XHJcblx0XHRjb25zdCBvdXRGaWxlTmFtZSA9IHRoaXMuc2V0dGluZ3MudW5yZXNvbHZlZExpbmtzT3V0cHV0RmlsZU5hbWUgKyBcIi5tZFwiO1xyXG5cdFx0Y29uc3QgbGlua3M6IEJyb2tlbkxpbmtbXSA9IFtdO1xyXG5cdFx0Y29uc3QgYnJva2VuTGlua3MgPSB0aGlzLmFwcC5tZXRhZGF0YUNhY2hlLnVucmVzb2x2ZWRMaW5rcztcclxuXHJcblx0XHRmb3IgKGxldCBmaWxlUGF0aCBpbiBicm9rZW5MaW5rcykge1xyXG5cdFx0XHRpZiAoZmlsZVBhdGggPT0gdGhpcy5zZXR0aW5ncy51bnJlc29sdmVkTGlua3NPdXRwdXRGaWxlTmFtZSArIFwiLm1kXCIpIGNvbnRpbnVlO1xyXG5cclxuXHRcdFx0Y29uc3QgZmlsZVR5cGUgPSBmaWxlUGF0aC5zdWJzdHJpbmcoZmlsZVBhdGgubGFzdEluZGV4T2YoXCIuXCIpICsgMSk7XHJcblxyXG5cdFx0XHRjb25zdCB1dGlscyA9IG5ldyBVdGlscyhcclxuXHRcdFx0XHR0aGlzLmFwcCxcclxuXHRcdFx0XHRmaWxlUGF0aCxcclxuXHRcdFx0XHR0aGlzLnNldHRpbmdzLnVucmVzb2x2ZWRMaW5rc1RhZ3NUb0lnbm9yZSxcclxuXHRcdFx0XHR0aGlzLnNldHRpbmdzLnVucmVzb2x2ZWRMaW5rc0xpbmtzVG9JZ25vcmUsXHJcblx0XHRcdFx0dGhpcy5zZXR0aW5ncy51bnJlc29sdmVkTGlua3NEaXJlY3Rvcmllc1RvSWdub3JlLFxyXG5cdFx0XHRcdHRoaXMuc2V0dGluZ3MudW5yZXNvbHZlZExpbmtzRmlsZXNUb0lnbm9yZVxyXG5cdFx0XHQpO1xyXG5cdFx0XHRpZiAoIXV0aWxzLmlzVmFsaWQoKSkgY29udGludWU7XHJcblxyXG5cdFx0XHRmb3IgKGNvbnN0IGxpbmsgaW4gYnJva2VuTGlua3NbZmlsZVBhdGhdKSB7XHJcblx0XHRcdFx0Y29uc3QgbGlua0ZpbGVUeXBlID0gbGluay5zdWJzdHJpbmcobGluay5sYXN0SW5kZXhPZihcIi5cIikgKyAxKTtcclxuXHRcdFx0XHRjb25zb2xlLmxvZyhsaW5rRmlsZVR5cGUpO1xyXG5cclxuXHRcdFx0XHRpZiAodGhpcy5zZXR0aW5ncy51bnJlc29sdmVkTGlua3NGaWxlVHlwZXNUb0lnbm9yZS5jb250YWlucyhsaW5rRmlsZVR5cGUpKSBjb250aW51ZTtcclxuXHJcblx0XHRcdFx0bGV0IGZvcm1hdHRlZEZpbGVQYXRoID0gZmlsZVBhdGg7XHJcblx0XHRcdFx0aWYgKGZpbGVUeXBlID09IFwibWRcIikge1xyXG5cdFx0XHRcdFx0Zm9ybWF0dGVkRmlsZVBhdGggPSBmaWxlUGF0aC5zdWJzdHJpbmcoMCwgZmlsZVBhdGgubGFzdEluZGV4T2YoXCIubWRcIikpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRjb25zdCBicm9rZW5MaW5rOiBCcm9rZW5MaW5rID0geyBmaWxlczogW2Zvcm1hdHRlZEZpbGVQYXRoXSwgbGluazogbGluayB9O1xyXG5cdFx0XHRcdGlmIChsaW5rcy5jb250YWlucyhicm9rZW5MaW5rKSlcclxuXHRcdFx0XHRcdGNvbnRpbnVlO1xyXG5cdFx0XHRcdGNvbnN0IGR1cGxpY2F0aW9uID0gbGlua3MuZmluZCgoZSkgPT4gZS5saW5rID09IGxpbmspO1xyXG5cdFx0XHRcdGlmIChkdXBsaWNhdGlvbikge1xyXG5cdFx0XHRcdFx0ZHVwbGljYXRpb24uZmlsZXMucHVzaChmb3JtYXR0ZWRGaWxlUGF0aCk7XHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdGxpbmtzLnB1c2goYnJva2VuTGluayk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRVdGlscy53cml0ZUFuZE9wZW5GaWxlKFxyXG5cdFx0XHR0aGlzLmFwcCxcclxuXHRcdFx0b3V0RmlsZU5hbWUsXHJcblx0XHRcdFtcclxuXHRcdFx0XHRcIkRvbid0IGZvcmdldCB0aGF0IGNyZWF0aW5nIHRoZSBmaWxlIGZyb20gaGVyZSBtYXkgY3JlYXRlIHRoZSBmaWxlIGluIHRoZSB3cm9uZyBkaXJlY3RvcnkhXCIsXHJcblx0XHRcdFx0Li4ubGlua3MubWFwKChlKSA9PiBgLSBbWyR7ZS5saW5rfV1dIGluIFtbJHtlLmZpbGVzLmpvaW4oXCJdXSwgW1tcIil9XV1gKVxyXG5cdFx0XHRdLmpvaW4oXCJcXG5cIiksXHJcblx0XHRcdHRoaXMuc2V0dGluZ3Mub3Blbk91dHB1dEZpbGUpO1xyXG5cclxuXHR9XHJcblxyXG5cdGZpbmRGaWxlc1dpdGhvdXRUYWdzKCkge1xyXG5cdFx0Y29uc3Qgb3V0RmlsZU5hbWUgPSB0aGlzLnNldHRpbmdzLndpdGhvdXRUYWdzT3V0cHV0RmlsZU5hbWUgKyBcIi5tZFwiO1xyXG5cdFx0bGV0IG91dEZpbGU6IFRGaWxlO1xyXG5cdFx0Y29uc3QgZmlsZXMgPSB0aGlzLmFwcC52YXVsdC5nZXRNYXJrZG93bkZpbGVzKCk7XHJcblx0XHRsZXQgd2l0aG91dEZpbGVzID0gZmlsZXMuZmlsdGVyKChmaWxlKSA9PiB7XHJcblx0XHRcdGlmIChuZXcgVXRpbHModGhpcy5hcHAsIGZpbGUucGF0aCwgW10sIFtdLCB0aGlzLnNldHRpbmdzLndpdGhvdXRUYWdzRGlyZWN0b3JpZXNUb0lnbm9yZSwgdGhpcy5zZXR0aW5ncy53aXRob3V0VGFnc0ZpbGVzVG9JZ25vcmUsIHRydWUpLmlzVmFsaWQoKSkge1xyXG5cdFx0XHRcdHJldHVybiAoZ2V0QWxsVGFncyh0aGlzLmFwcC5tZXRhZGF0YUNhY2hlLmdldEZpbGVDYWNoZShmaWxlKSkubGVuZ3RoID8/IDApIDw9IDA7XHJcblxyXG5cdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdFx0fVxyXG5cdFx0fSk7XHJcblx0XHR3aXRob3V0RmlsZXMucmVtb3ZlKG91dEZpbGUpO1xyXG5cclxuXHJcblx0XHRsZXQgcHJlZml4OiBzdHJpbmc7XHJcblx0XHRpZiAodGhpcy5zZXR0aW5ncy5kaXNhYmxlV29ya2luZ0xpbmtzKVxyXG5cdFx0XHRwcmVmaXggPSBcIlx0XCI7XHJcblx0XHRlbHNlXHJcblx0XHRcdHByZWZpeCA9IFwiXCI7XHJcblx0XHRjb25zdCB0ZXh0ID0gd2l0aG91dEZpbGVzLm1hcCgoZmlsZSkgPT4gYCR7cHJlZml4fS0gW1ske2ZpbGUucGF0aH1dXWApLmpvaW4oXCJcXG5cIik7XHJcblx0XHRVdGlscy53cml0ZUFuZE9wZW5GaWxlKHRoaXMuYXBwLCBvdXRGaWxlTmFtZSwgdGV4dCwgdGhpcy5zZXR0aW5ncy5vcGVuT3V0cHV0RmlsZSk7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiBDaGVja3MgaWYgdGhlIGdpdmVuIGZpbGUgaW4gYW4gb3JwaGFuZWQgZmlsZVxyXG5cdCAqIFxyXG5cdCAqIEBwYXJhbSBmaWxlIGZpbGUgdG8gY2hlY2tcclxuXHQgKiBAcGFyYW0gbGlua3MgYWxsIGxpbmtzIGluIHRoZSB2YXVsdFxyXG5cdCAqL1xyXG5cdGlzVmFsaWQoZmlsZTogVEZpbGUsIGxpbmtzOiBzdHJpbmdbXSwgZGlyOiBzdHJpbmcpOiBib29sZWFuIHtcclxuXHRcdGlmIChsaW5rcy5jb250YWlucyhmaWxlLnBhdGgpKVxyXG5cdFx0XHRyZXR1cm4gZmFsc2U7XHJcblxyXG5cdFx0Ly9maWxldHlwZXMgdG8gaWdub3JlIGJ5IGRlZmF1bHRcclxuXHRcdGlmIChmaWxlLmV4dGVuc2lvbiA9PSBcImNzc1wiKVxyXG5cdFx0XHRyZXR1cm4gZmFsc2U7XHJcblxyXG5cdFx0aWYgKHRoaXMuc2V0dGluZ3MuZmlsZVR5cGVzVG9JZ25vcmVbMF0gIT09IFwiXCIpIHtcclxuXHRcdFx0Y29uc3QgY29udGFpbnNGaWxlVHlwZSA9IHRoaXMuc2V0dGluZ3MuZmlsZVR5cGVzVG9JZ25vcmUuY29udGFpbnMoZmlsZS5leHRlbnNpb24pO1xyXG5cdFx0XHRpZiAodGhpcy5zZXR0aW5ncy5pZ25vcmVGaWxlVHlwZXMpIHtcclxuXHRcdFx0XHRpZiAoY29udGFpbnNGaWxlVHlwZSkgcmV0dXJuO1xyXG5cdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdGlmICghY29udGFpbnNGaWxlVHlwZSkgcmV0dXJuO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0Y29uc3QgdXRpbHMgPSBuZXcgVXRpbHMoXHJcblx0XHRcdHRoaXMuYXBwLFxyXG5cdFx0XHRmaWxlLnBhdGgsXHJcblx0XHRcdHRoaXMuc2V0dGluZ3MudGFnc1RvSWdub3JlLFxyXG5cdFx0XHR0aGlzLnNldHRpbmdzLmxpbmtzVG9JZ25vcmUsXHJcblx0XHRcdHRoaXMuc2V0dGluZ3MuZGlyZWN0b3JpZXNUb0lnbm9yZSxcclxuXHRcdFx0dGhpcy5zZXR0aW5ncy5maWxlc1RvSWdub3JlLFxyXG5cdFx0XHR0aGlzLnNldHRpbmdzLmlnbm9yZURpcmVjdG9yaWVzLFxyXG5cdFx0XHRkaXJcclxuXHRcdCk7XHJcblx0XHRpZiAoIXV0aWxzLmlzVmFsaWQoKSlcclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cclxuXHRcdHJldHVybiB0cnVlO1xyXG5cdH1cclxuXHJcblxyXG5cclxuXHRvbnVubG9hZCgpIHtcclxuXHRcdGNvbnNvbGUubG9nKCd1bmxvYWRpbmcgJyArIHRoaXMubWFuaWZlc3QubmFtZSArIFwiIHBsdWdpblwiKTtcclxuXHR9XHJcblx0YXN5bmMgbG9hZFNldHRpbmdzKCkge1xyXG5cdFx0dGhpcy5zZXR0aW5ncyA9IE9iamVjdC5hc3NpZ24oREVGQVVMVF9TRVRUSU5HUywgYXdhaXQgdGhpcy5sb2FkRGF0YSgpKTtcclxuXHR9XHJcblxyXG5cdGFzeW5jIHNhdmVTZXR0aW5ncygpIHtcclxuXHRcdGF3YWl0IHRoaXMuc2F2ZURhdGEodGhpcy5zZXR0aW5ncyk7XHJcblx0fVxyXG59XHJcbiJdLCJuYW1lcyI6WyJNb2RhbCIsIm5vcm1hbGl6ZVBhdGgiLCJTZXR0aW5nIiwiUGx1Z2luU2V0dGluZ1RhYiIsImdldEFsbFRhZ3MiLCJpdGVyYXRlQ2FjaGVSZWZzIiwiVEZvbGRlciIsImdldExpbmtwYXRoIiwiTm90aWNlIiwiUGx1Z2luIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJLGFBQWEsR0FBRyxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUU7QUFDbkMsSUFBSSxhQUFhLEdBQUcsTUFBTSxDQUFDLGNBQWM7QUFDekMsU0FBUyxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsWUFBWSxLQUFLLElBQUksVUFBVSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO0FBQ3BGLFFBQVEsVUFBVSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0FBQzFHLElBQUksT0FBTyxhQUFhLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQy9CLENBQUMsQ0FBQztBQUNGO0FBQ08sU0FBUyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUNoQyxJQUFJLElBQUksT0FBTyxDQUFDLEtBQUssVUFBVSxJQUFJLENBQUMsS0FBSyxJQUFJO0FBQzdDLFFBQVEsTUFBTSxJQUFJLFNBQVMsQ0FBQyxzQkFBc0IsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsK0JBQStCLENBQUMsQ0FBQztBQUNsRyxJQUFJLGFBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDeEIsSUFBSSxTQUFTLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLEVBQUU7QUFDM0MsSUFBSSxDQUFDLENBQUMsU0FBUyxHQUFHLENBQUMsS0FBSyxJQUFJLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ3pGLENBQUM7QUF1Q0Q7QUFDTyxTQUFTLFNBQVMsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUU7QUFDN0QsSUFBSSxTQUFTLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxPQUFPLEtBQUssWUFBWSxDQUFDLEdBQUcsS0FBSyxHQUFHLElBQUksQ0FBQyxDQUFDLFVBQVUsT0FBTyxFQUFFLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUU7QUFDaEgsSUFBSSxPQUFPLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxPQUFPLENBQUMsRUFBRSxVQUFVLE9BQU8sRUFBRSxNQUFNLEVBQUU7QUFDL0QsUUFBUSxTQUFTLFNBQVMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO0FBQ25HLFFBQVEsU0FBUyxRQUFRLENBQUMsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO0FBQ3RHLFFBQVEsU0FBUyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsTUFBTSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQyxFQUFFO0FBQ3RILFFBQVEsSUFBSSxDQUFDLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLFVBQVUsSUFBSSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0FBQzlFLEtBQUssQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQUNEO0FBQ08sU0FBUyxXQUFXLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRTtBQUMzQyxJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDckgsSUFBSSxPQUFPLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsT0FBTyxNQUFNLEtBQUssVUFBVSxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsV0FBVyxFQUFFLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUM3SixJQUFJLFNBQVMsSUFBSSxDQUFDLENBQUMsRUFBRSxFQUFFLE9BQU8sVUFBVSxDQUFDLEVBQUUsRUFBRSxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFO0FBQ3RFLElBQUksU0FBUyxJQUFJLENBQUMsRUFBRSxFQUFFO0FBQ3RCLFFBQVEsSUFBSSxDQUFDLEVBQUUsTUFBTSxJQUFJLFNBQVMsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0FBQ3RFLFFBQVEsT0FBTyxDQUFDLEVBQUUsSUFBSTtBQUN0QixZQUFZLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ3pLLFlBQVksSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFF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 +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZXMiOlsibm9kZV9tb2R1bGVzL3RzbGliL3RzbGliLmVzNi5qcyIsInNyYy9kZWxldGVGaWxlc01vZGFsLnRzIiwic3JjL3NldHRpbmdzVGFiLnRzIiwic3JjL3V0aWxzLnRzIiwic3JjL21haW4udHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Db3B5cmlnaHQgKGMpIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi5cclxuXHJcblBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUgZm9yIGFueVxyXG5wdXJwb3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQuXHJcblxyXG5USEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiIEFORCBUSEUgQVVUSE9SIERJU0NMQUlNUyBBTEwgV0FSUkFOVElFUyBXSVRIXHJcblJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWVxyXG5BTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBTUEVDSUFMLCBESVJFQ1QsXHJcbklORElSRUNULCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTVxyXG5MT1NTIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgTkVHTElHRU5DRSBPUlxyXG5PVEhFUiBUT1JUSU9VUyBBQ1RJT04sIEFSSVNJTkcgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SXHJcblBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqICovXHJcbi8qIGdsb2JhbCBSZWZsZWN0LCBQcm9taXNlICovXHJcblxyXG52YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHtcclxuICAgIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHxcclxuICAgICAgICAoeyBfX3Byb3RvX186IFtdIH0gaW5zdGFuY2VvZiBBcnJheSAmJiBmdW5jdGlvbiAoZCwgYikgeyBkLl9fcHJvdG9fXyA9IGI7IH0pIHx8XHJcbiAgICAgICAgZnVuY3Rpb24gKGQsIGIpIHsgZm9yICh2YXIgcCBpbiBiKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIsIHApKSBkW3BdID0gYltwXTsgfTtcclxuICAgIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpO1xyXG59O1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fZXh0ZW5kcyhkLCBiKSB7XHJcbiAgICBpZiAodHlwZW9mIGIgIT09IFwiZnVuY3Rpb25cIiAmJiBiICE9PSBudWxsKVxyXG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJDbGFzcyBleHRlbmRzIHZhbHVlIFwiICsgU3RyaW5nKGIpICsgXCIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbFwiKTtcclxuICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7XHJcbiAgICBmdW5jdGlvbiBfXygpIHsgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7IH1cclxuICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTtcclxufVxyXG5cclxuZXhwb3J0IHZhciBfX2Fzc2lnbiA9IGZ1bmN0aW9uKCkge1xyXG4gICAgX19hc3NpZ24gPSBPYmplY3QuYXNzaWduIHx8IGZ1bmN0aW9uIF9fYXNzaWduKHQpIHtcclxuICAgICAgICBmb3IgKHZhciBzLCBpID0gMSwgbiA9IGFyZ3VtZW50cy5sZW5ndGg7IGkgPCBuOyBpKyspIHtcclxuICAgICAgICAgICAgcyA9IGFyZ3VtZW50c1tpXTtcclxuICAgICAgICAgICAgZm9yICh2YXIgcCBpbiBzKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHMsIHApKSB0W3BdID0gc1twXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHQ7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gX19hc3NpZ24uYXBwbHkodGhpcywgYXJndW1lbnRzKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fcmVzdChzLCBlKSB7XHJcbiAgICB2YXIgdCA9IHt9O1xyXG4gICAgZm9yICh2YXIgcCBpbiBzKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHMsIHApICYmIGUuaW5kZXhPZihwKSA8IDApXHJcbiAgICAgICAgdFtwXSA9IHNbcF07XHJcbiAgICBpZiAocyAhPSBudWxsICYmIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzID09PSBcImZ1bmN0aW9uXCIpXHJcbiAgICAgICAgZm9yICh2YXIgaSA9IDAsIHAgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHMpOyBpIDwgcC5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBpZiAoZS5pbmRleE9mKHBbaV0pIDwgMCAmJiBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwocywgcFtpXSkpXHJcbiAgICAgICAgICAgICAgICB0W3BbaV1dID0gc1twW2ldXTtcclxuICAgICAgICB9XHJcbiAgICByZXR1cm4gdDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fZGVjb3JhdGUoZGVjb3JhdG9ycywgdGFyZ2V0LCBrZXksIGRlc2MpIHtcclxuICAgIHZhciBjID0gYXJndW1lbnRzLmxlbmd0aCwgciA9IGMgPCAzID8gdGFyZ2V0IDogZGVzYyA9PT0gbnVsbCA/IGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldCwga2V5KSA6IGRlc2MsIGQ7XHJcbiAgICBpZiAodHlwZW9mIFJlZmxlY3QgPT09IFwib2JqZWN0XCIgJiYgdHlwZW9mIFJlZmxlY3QuZGVjb3JhdGUgPT09IFwiZnVuY3Rpb25cIikgciA9IFJlZmxlY3QuZGVjb3JhdGUoZGVjb3JhdG9ycywgdGFyZ2V0LCBrZXksIGRlc2MpO1xyXG4gICAgZWxzZSBmb3IgKHZhciBpID0gZGVjb3JhdG9ycy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkgaWYgKGQgPSBkZWNvcmF0b3JzW2ldKSByID0gKGMgPCAzID8gZChyKSA6IGMgPiAzID8gZCh0YXJnZXQsIGtleSwgcikgOiBkKHRhcmdldCwga2V5KSkgfHwgcjtcclxuICAgIHJldHVybiBjID4gMyAmJiByICYmIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwgciksIHI7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX3BhcmFtKHBhcmFtSW5kZXgsIGRlY29yYXRvcikge1xyXG4gICAgcmV0dXJuIGZ1bmN0aW9uICh0YXJnZXQsIGtleSkgeyBkZWNvcmF0b3IodGFyZ2V0LCBrZXksIHBhcmFtSW5kZXgpOyB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX21ldGFkYXRhKG1ldGFkYXRhS2V5LCBtZXRhZGF0YVZhbHVlKSB7XHJcbiAgICBpZiAodHlwZW9mIFJlZmxlY3QgPT09IFwib2JqZWN0XCIgJiYgdHlwZW9mIFJlZmxlY3QubWV0YWRhdGEgPT09IFwiZnVuY3Rpb25cIikgcmV0dXJuIFJlZmxlY3QubWV0YWRhdGEobWV0YWRhdGFLZXksIG1ldGFkYXRhVmFsdWUpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19hd2FpdGVyKHRoaXNBcmcsIF9hcmd1bWVudHMsIFAsIGdlbmVyYXRvcikge1xyXG4gICAgZnVuY3Rpb24gYWRvcHQodmFsdWUpIHsgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgUCA/IHZhbHVlIDogbmV3IFAoZnVuY3Rpb24gKHJlc29sdmUpIHsgcmVzb2x2ZSh2YWx1ZSk7IH0pOyB9XHJcbiAgICByZXR1cm4gbmV3IChQIHx8IChQID0gUHJvbWlzZSkpKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcclxuICAgICAgICBmdW5jdGlvbiBmdWxmaWxsZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3IubmV4dCh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XHJcbiAgICAgICAgZnVuY3Rpb24gcmVqZWN0ZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3JbXCJ0aHJvd1wiXSh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XHJcbiAgICAgICAgZnVuY3Rpb24gc3RlcChyZXN1bHQpIHsgcmVzdWx0LmRvbmUgPyByZXNvbHZlKHJlc3VsdC52YWx1ZSkgOiBhZG9wdChyZXN1bHQudmFsdWUpLnRoZW4oZnVsZmlsbGVkLCByZWplY3RlZCk7IH1cclxuICAgICAgICBzdGVwKChnZW5lcmF0b3IgPSBnZW5lcmF0b3IuYXBwbHkodGhpc0FyZywgX2FyZ3VtZW50cyB8fCBbXSkpLm5leHQoKSk7XHJcbiAgICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fZ2VuZXJhdG9yKHRoaXNBcmcsIGJvZHkpIHtcclxuICAgIHZhciBfID0geyBsYWJlbDogMCwgc2VudDogZnVuY3Rpb24oKSB7IGlmICh0WzBdICYgMSkgdGhyb3cgdFsxXTsgcmV0dXJuIHRbMV07IH0sIHRyeXM6IFtdLCBvcHM6IFtdIH0sIGYsIHksIHQsIGc7XHJcbiAgICByZXR1cm4gZyA9IHsgbmV4dDogdmVyYigwKSwgXCJ0aHJvd1wiOiB2ZXJiKDEpLCBcInJldHVyblwiOiB2ZXJiKDIpIH0sIHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiAoZ1tTeW1ib2wuaXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7IHJldHVybiB0aGlzOyB9KSwgZztcclxuICAgIGZ1bmN0aW9uIHZlcmIobikgeyByZXR1cm4gZnVuY3Rpb24gKHYpIHsgcmV0dXJuIHN0ZXAoW24sIHZdKTsgfTsgfVxyXG4gICAgZnVuY3Rpb24gc3RlcChvcCkge1xyXG4gICAgICAgIGlmIChmKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLlwiKTtcclxuICAgICAgICB3aGlsZSAoXykgdHJ5IHtcclxuICAgICAgICAgICAgaWYgKGYgPSAxLCB5ICYmICh0ID0gb3BbMF0gJiAyID8geVtcInJldHVyblwiXSA6IG9wWzBdID8geVtcInRocm93XCJdIHx8ICgodCA9IHlbXCJyZXR1cm5cIl0pICYmIHQuY2FsbCh5KSwgMCkgOiB5Lm5leHQpICYmICEodCA9IHQuY2FsbCh5LCBvcFsxXSkpLmRvbmUpIHJldHVybiB0O1xyXG4gICAgICAgICAgICBpZiAoeSA9IDAsIHQpIG9wID0gW29wWzBdICYgMiwgdC52YWx1ZV07XHJcbiAgICAgICAgICAgIHN3aXRjaCAob3BbMF0pIHtcclxuICAgICAgICAgICAgICAgIGNhc2UgMDogY2FzZSAxOiB0ID0gb3A7IGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgY2FzZSA0OiBfLmxhYmVsKys7IHJldHVybiB7IHZhbHVlOiBvcFsxXSwgZG9uZTogZmFsc2UgfTtcclxuICAgICAgICAgICAgICAgIGNhc2UgNTogXy5sYWJlbCsrOyB5ID0gb3BbMV07IG9wID0gWzBdOyBjb250aW51ZTtcclxuICAgICAgICAgICAgICAgIGNhc2UgNzogb3AgPSBfLm9wcy5wb3AoKTsgXy50cnlzLnBvcCgpOyBjb250aW51ZTtcclxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCEodCA9IF8udHJ5cywgdCA9IHQubGVuZ3RoID4gMCAmJiB0W3QubGVuZ3RoIC0gMV0pICYmIChvcFswXSA9PT0gNiB8fCBvcFswXSA9PT0gMikpIHsgXyA9IDA7IGNvbnRpbnVlOyB9XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSAzICYmICghdCB8fCAob3BbMV0gPiB0WzBdICYmIG9wWzFdIDwgdFszXSkpKSB7IF8ubGFiZWwgPSBvcFsxXTsgYnJlYWs7IH1cclxuICAgICAgICAgICAgICAgICAgICBpZiAob3BbMF0gPT09IDYgJiYgXy5sYWJlbCA8IHRbMV0pIHsgXy5sYWJlbCA9IHRbMV07IHQgPSBvcDsgYnJlYWs7IH1cclxuICAgICAgICAgICAgICAgICAgICBpZiAodCAmJiBfLmxhYmVsIDwgdFsyXSkgeyBfLmxhYmVsID0gdFsyXTsgXy5vcHMucHVzaChvcCk7IGJyZWFrOyB9XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRbMl0pIF8ub3BzLnBvcCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIF8udHJ5cy5wb3AoKTsgY29udGludWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgb3AgPSBib2R5LmNhbGwodGhpc0FyZywgXyk7XHJcbiAgICAgICAgfSBjYXRjaCAoZSkgeyBvcCA9IFs2LCBlXTsgeSA9IDA7IH0gZmluYWxseSB7IGYgPSB0ID0gMDsgfVxyXG4gICAgICAgIGlmIChvcFswXSAmIDUpIHRocm93IG9wWzFdOyByZXR1cm4geyB2YWx1ZTogb3BbMF0gPyBvcFsxXSA6IHZvaWQgMCwgZG9uZTogdHJ1ZSB9O1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgdmFyIF9fY3JlYXRlQmluZGluZyA9IE9iamVjdC5jcmVhdGUgPyAoZnVuY3Rpb24obywgbSwgaywgazIpIHtcclxuICAgIGlmIChrMiA9PT0gdW5kZWZpbmVkKSBrMiA9IGs7XHJcbiAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobSwgayk7XHJcbiAgICBpZiAoIWRlc2MgfHwgKFwiZ2V0XCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkge1xyXG4gICAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7IHJldHVybiBtW2tdOyB9IH07XHJcbiAgICB9XHJcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpO1xyXG59KSA6IChmdW5jdGlvbihvLCBtLCBrLCBrMikge1xyXG4gICAgaWYgKGsyID09PSB1bmRlZmluZWQpIGsyID0gaztcclxuICAgIG9bazJdID0gbVtrXTtcclxufSk7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19leHBvcnRTdGFyKG0sIG8pIHtcclxuICAgIGZvciAodmFyIHAgaW4gbSkgaWYgKHAgIT09IFwiZGVmYXVsdFwiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobywgcCkpIF9fY3JlYXRlQmluZGluZyhvLCBtLCBwKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fdmFsdWVzKG8pIHtcclxuICAgIHZhciBzID0gdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7XHJcbiAgICBpZiAobSkgcmV0dXJuIG0uY2FsbChvKTtcclxuICAgIGlmIChvICYmIHR5cGVvZiBvLmxlbmd0aCA9PT0gXCJudW1iZXJcIikgcmV0dXJuIHtcclxuICAgICAgICBuZXh0OiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgICAgIGlmIChvICYmIGkgPj0gby5sZW5ndGgpIG8gPSB2b2lkIDA7XHJcbiAgICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTtcclxuICAgICAgICB9XHJcbiAgICB9O1xyXG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gXCJPYmplY3QgaXMgbm90IGl0ZXJhYmxlLlwiIDogXCJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuXCIpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19yZWFkKG8sIG4pIHtcclxuICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIG9bU3ltYm9sLml0ZXJhdG9yXTtcclxuICAgIGlmICghbSkgcmV0dXJuIG87XHJcbiAgICB2YXIgaSA9IG0uY2FsbChvKSwgciwgYXIgPSBbXSwgZTtcclxuICAgIHRyeSB7XHJcbiAgICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7XHJcbiAgICB9XHJcbiAgICBjYXRjaCAoZXJyb3IpIHsgZSA9IHsgZXJyb3I6IGVycm9yIH07IH1cclxuICAgIGZpbmFsbHkge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpW1wicmV0dXJuXCJdKSkgbS5jYWxsKGkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBmaW5hbGx5IHsgaWYgKGUpIHRocm93IGUuZXJyb3I7IH1cclxuICAgIH1cclxuICAgIHJldHVybiBhcjtcclxufVxyXG5cclxuLyoqIEBkZXByZWNhdGVkICovXHJcbmV4cG9ydCBmdW5jdGlvbiBfX3NwcmVhZCgpIHtcclxuICAgIGZvciAodmFyIGFyID0gW10sIGkgPSAwOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKVxyXG4gICAgICAgIGFyID0gYXIuY29uY2F0KF9fcmVhZChhcmd1bWVudHNbaV0pKTtcclxuICAgIHJldHVybiBhcjtcclxufVxyXG5cclxuLyoqIEBkZXByZWNhdGVkICovXHJcbmV4cG9ydCBmdW5jdGlvbiBfX3NwcmVhZEFycmF5cygpIHtcclxuICAgIGZvciAodmFyIHMgPSAwLCBpID0gMCwgaWwgPSBhcmd1bWVudHMubGVuZ3RoOyBpIDwgaWw7IGkrKykgcyArPSBhcmd1bWVudHNbaV0ubGVuZ3RoO1xyXG4gICAgZm9yICh2YXIgciA9IEFycmF5KHMpLCBrID0gMCwgaSA9IDA7IGkgPCBpbDsgaSsrKVxyXG4gICAgICAgIGZvciAodmFyIGEgPSBhcmd1bWVudHNbaV0sIGogPSAwLCBqbCA9IGEubGVuZ3RoOyBqIDwgamw7IGorKywgaysrKVxyXG4gICAgICAgICAgICByW2tdID0gYVtqXTtcclxuICAgIHJldHVybiByO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19zcHJlYWRBcnJheSh0bywgZnJvbSwgcGFjaykge1xyXG4gICAgaWYgKHBhY2sgfHwgYXJndW1lbnRzLmxlbmd0aCA9PT0gMikgZm9yICh2YXIgaSA9IDAsIGwgPSBmcm9tLmxlbmd0aCwgYXI7IGkgPCBsOyBpKyspIHtcclxuICAgICAgICBpZiAoYXIgfHwgIShpIGluIGZyb20pKSB7XHJcbiAgICAgICAgICAgIGlmICghYXIpIGFyID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZnJvbSwgMCwgaSk7XHJcbiAgICAgICAgICAgIGFyW2ldID0gZnJvbVtpXTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdG8uY29uY2F0KGFyIHx8IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGZyb20pKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fYXdhaXQodikge1xyXG4gICAgcmV0dXJuIHRoaXMgaW5zdGFuY2VvZiBfX2F3YWl0ID8gKHRoaXMudiA9IHYsIHRoaXMpIDogbmV3IF9fYXdhaXQodik7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX2FzeW5jR2VuZXJhdG9yKHRoaXNBcmcsIF9hcmd1bWVudHMsIGdlbmVyYXRvcikge1xyXG4gICAgaWYgKCFTeW1ib2wuYXN5bmNJdGVyYXRvcikgdGhyb3cgbmV3IFR5cGVFcnJvcihcIlN5bWJvbC5hc3luY0l0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLlwiKTtcclxuICAgIHZhciBnID0gZ2VuZXJhdG9yLmFwcGx5KHRoaXNBcmcsIF9hcmd1bWVudHMgfHwgW10pLCBpLCBxID0gW107XHJcbiAgICByZXR1cm4gaSA9IHt9LCB2ZXJiKFwibmV4dFwiKSwgdmVyYihcInRocm93XCIpLCB2ZXJiKFwicmV0dXJuXCIpLCBpW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXM7IH0sIGk7XHJcbiAgICBmdW5jdGlvbiB2ZXJiKG4pIHsgaWYgKGdbbl0pIGlbbl0gPSBmdW5jdGlvbiAodikgeyByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24gKGEsIGIpIHsgcS5wdXNoKFtuLCB2LCBhLCBiXSkgPiAxIHx8IHJlc3VtZShuLCB2KTsgfSk7IH07IH1cclxuICAgIGZ1bmN0aW9uIHJlc3VtZShuLCB2KSB7IHRyeSB7IHN0ZXAoZ1tuXSh2KSk7IH0gY2F0Y2ggKGUpIHsgc2V0dGxlKHFbMF1bM10sIGUpOyB9IH1cclxuICAgIGZ1bmN0aW9uIHN0ZXAocikgeyByLnZhbHVlIGluc3RhbmNlb2YgX19hd2FpdCA/IFByb21pc2UucmVzb2x2ZShyLnZhbHVlLnYpLnRoZW4oZnVsZmlsbCwgcmVqZWN0KSA6IHNldHRsZShxWzBdWzJdLCByKTsgfVxyXG4gICAgZnVuY3Rpb24gZnVsZmlsbCh2YWx1ZSkgeyByZXN1bWUoXCJuZXh0XCIsIHZhbHVlKTsgfVxyXG4gICAgZnVuY3Rpb24gcmVqZWN0KHZhbHVlKSB7IHJlc3VtZShcInRocm93XCIsIHZhbHVlKTsgfVxyXG4gICAgZnVuY3Rpb24gc2V0dGxlKGYsIHYpIHsgaWYgKGYodiksIHEuc2hpZnQoKSwgcS5sZW5ndGgpIHJlc3VtZShxWzBdWzBdLCBxWzBdWzFdKTsgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19hc3luY0RlbGVnYXRvcihvKSB7XHJcbiAgICB2YXIgaSwgcDtcclxuICAgIHJldHVybiBpID0ge30sIHZlcmIoXCJuZXh0XCIpLCB2ZXJiKFwidGhyb3dcIiwgZnVuY3Rpb24gKGUpIHsgdGhyb3cgZTsgfSksIHZlcmIoXCJyZXR1cm5cIiksIGlbU3ltYm9sLml0ZXJhdG9yXSA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXM7IH0sIGk7XHJcbiAgICBmdW5jdGlvbiB2ZXJiKG4sIGYpIHsgaVtuXSA9IG9bbl0gPyBmdW5jdGlvbiAodikgeyByZXR1cm4gKHAgPSAhcCkgPyB7IHZhbHVlOiBfX2F3YWl0KG9bbl0odikpLCBkb25lOiBuID09PSBcInJldHVyblwiIH0gOiBmID8gZih2KSA6IHY7IH0gOiBmOyB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX2FzeW5jVmFsdWVzKG8pIHtcclxuICAgIGlmICghU3ltYm9sLmFzeW5jSXRlcmF0b3IpIHRocm93IG5ldyBUeXBlRXJyb3IoXCJTeW1ib2wuYXN5bmNJdGVyYXRvciBpcyBub3QgZGVmaW5lZC5cIik7XHJcbiAgICB2YXIgbSA9IG9bU3ltYm9sLmFzeW5jSXRlcmF0b3JdLCBpO1xyXG4gICAgcmV0dXJuIG0gPyBtLmNhbGwobykgOiAobyA9IHR5cGVvZiBfX3ZhbHVlcyA9PT0gXCJmdW5jdGlvblwiID8gX192YWx1ZXMobykgOiBvW1N5bWJvbC5pdGVyYXRvcl0oKSwgaSA9IHt9LCB2ZXJiKFwibmV4dFwiKSwgdmVyYihcInRocm93XCIpLCB2ZXJiKFwicmV0dXJuXCIpLCBpW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXM7IH0sIGkpO1xyXG4gICAgZnVuY3Rpb24gdmVyYihuKSB7IGlbbl0gPSBvW25dICYmIGZ1bmN0aW9uICh2KSB7IHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7IHYgPSBvW25dKHYpLCBzZXR0bGUocmVzb2x2ZSwgcmVqZWN0LCB2LmRvbmUsIHYudmFsdWUpOyB9KTsgfTsgfVxyXG4gICAgZnVuY3Rpb24gc2V0dGxlKHJlc29sdmUsIHJlamVjdCwgZCwgdikgeyBQcm9taXNlLnJlc29sdmUodikudGhlbihmdW5jdGlvbih2KSB7IHJlc29sdmUoeyB2YWx1ZTogdiwgZG9uZTogZCB9KTsgfSwgcmVqZWN0KTsgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19tYWtlVGVtcGxhdGVPYmplY3QoY29va2VkLCByYXcpIHtcclxuICAgIGlmIChPYmplY3QuZGVmaW5lUHJvcGVydHkpIHsgT2JqZWN0LmRlZmluZVByb3BlcnR5KGNvb2tlZCwgXCJyYXdcIiwgeyB2YWx1ZTogcmF3IH0pOyB9IGVsc2UgeyBjb29rZWQucmF3ID0gcmF3OyB9XHJcbiAgICByZXR1cm4gY29va2VkO1xyXG59O1xyXG5cclxudmFyIF9fc2V0TW9kdWxlRGVmYXVsdCA9IE9iamVjdC5jcmVhdGUgPyAoZnVuY3Rpb24obywgdikge1xyXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIFwiZGVmYXVsdFwiLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2IH0pO1xyXG59KSA6IGZ1bmN0aW9uKG8sIHYpIHtcclxuICAgIG9bXCJkZWZhdWx0XCJdID0gdjtcclxufTtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX2ltcG9ydFN0YXIobW9kKSB7XHJcbiAgICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kO1xyXG4gICAgdmFyIHJlc3VsdCA9IHt9O1xyXG4gICAgaWYgKG1vZCAhPSBudWxsKSBmb3IgKHZhciBrIGluIG1vZCkgaWYgKGsgIT09IFwiZGVmYXVsdFwiICYmIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChtb2QsIGspKSBfX2NyZWF0ZUJpbmRpbmcocmVzdWx0LCBtb2QsIGspO1xyXG4gICAgX19zZXRNb2R1bGVEZWZhdWx0KHJlc3VsdCwgbW9kKTtcclxuICAgIHJldHVybiByZXN1bHQ7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX2ltcG9ydERlZmF1bHQobW9kKSB7XHJcbiAgICByZXR1cm4gKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgPyBtb2QgOiB7IGRlZmF1bHQ6IG1vZCB9O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19jbGFzc1ByaXZhdGVGaWVsZEdldChyZWNlaXZlciwgc3RhdGUsIGtpbmQsIGYpIHtcclxuICAgIGlmIChraW5kID09PSBcImFcIiAmJiAhZikgdGhyb3cgbmV3IFR5cGVFcnJvcihcIlByaXZhdGUgYWNjZXNzb3Igd2FzIGRlZmluZWQgd2l0aG91dCBhIGdldHRlclwiKTtcclxuICAgIGlmICh0eXBlb2Ygc3RhdGUgPT09IFwiZnVuY3Rpb25cIiA/IHJlY2VpdmVyICE9PSBzdGF0ZSB8fCAhZiA6ICFzdGF0ZS5oYXMocmVjZWl2ZXIpKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IHJlYWQgcHJpdmF0ZSBtZW1iZXIgZnJvbSBhbiBvYmplY3Qgd2hvc2UgY2xhc3MgZGlkIG5vdCBkZWNsYXJlIGl0XCIpO1xyXG4gICAgcmV0dXJuIGtpbmQgPT09IFwibVwiID8gZiA6IGtpbmQgPT09IFwiYVwiID8gZi5jYWxsKHJlY2VpdmVyKSA6IGYgPyBmLnZhbHVlIDogc3RhdGUuZ2V0KHJlY2VpdmVyKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fY2xhc3NQcml2YXRlRmllbGRTZXQocmVjZWl2ZXIsIHN0YXRlLCB2YWx1ZSwga2luZCwgZikge1xyXG4gICAgaWYgKGtpbmQgPT09IFwibVwiKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiUHJpdmF0ZSBtZXRob2QgaXMgbm90IHdyaXRhYmxlXCIpO1xyXG4gICAgaWYgKGtpbmQgPT09IFwiYVwiICYmICFmKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiUHJpdmF0ZSBhY2Nlc3NvciB3YXMgZGVmaW5lZCB3aXRob3V0IGEgc2V0dGVyXCIpO1xyXG4gICAgaWYgKHR5cGVvZiBzdGF0ZSA9PT0gXCJmdW5jdGlvblwiID8gcmVjZWl2ZXIgIT09IHN0YXRlIHx8ICFmIDogIXN0YXRlLmhhcyhyZWNlaXZlcikpIHRocm93IG5ldyBUeXBlRXJyb3IoXCJDYW5ub3Qgd3JpdGUgcHJpdmF0ZSBtZW1iZXIgdG8gYW4gb2JqZWN0IHdob3NlIGNsYXNzIGRpZCBub3QgZGVjbGFyZSBpdFwiKTtcclxuICAgIHJldHVybiAoa2luZCA9PT0gXCJhXCIgPyBmLmNhbGwocmVjZWl2ZXIsIHZhbHVlKSA6IGYgPyBmLnZhbHVlID0gdmFsdWUgOiBzdGF0ZS5zZXQocmVjZWl2ZXIsIHZhbHVlKSksIHZhbHVlO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19jbGFzc1ByaXZhdGVGaWVsZEluKHN0YXRlLCByZWNlaXZlcikge1xyXG4gICAgaWYgKHJlY2VpdmVyID09PSBudWxsIHx8ICh0eXBlb2YgcmVjZWl2ZXIgIT09IFwib2JqZWN0XCIgJiYgdHlwZW9mIHJlY2VpdmVyICE9PSBcImZ1bmN0aW9uXCIpKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IHVzZSAnaW4nIG9wZXJhdG9yIG9uIG5vbi1vYmplY3RcIik7XHJcbiAgICByZXR1cm4gdHlwZW9mIHN0YXRlID09PSBcImZ1bmN0aW9uXCIgPyByZWNlaXZlciA9PT0gc3RhdGUgOiBzdGF0ZS5oYXMocmVjZWl2ZXIpO1xyXG59XHJcbiIsImltcG9ydCB7IEFwcCwgTW9kYWwsIFRGaWxlIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5leHBvcnQgY2xhc3MgRGVsZXRlRmlsZXNNb2RhbCBleHRlbmRzIE1vZGFsIHtcblx0ZmlsZXNUb0RlbGV0ZTogVEZpbGVbXTtcblx0Y29uc3RydWN0b3IoYXBwOiBBcHAsIGZpbGVzVG9EZWxldGU6IFRGaWxlW10pIHtcblx0XHRzdXBlcihhcHApO1xuXHRcdHRoaXMuZmlsZXNUb0RlbGV0ZSA9IGZpbGVzVG9EZWxldGU7XG5cdH1cblxuXHRvbk9wZW4oKSB7XG5cdFx0bGV0IHsgY29udGVudEVsLCB0aXRsZUVsIH0gPSB0aGlzO1xuXHRcdHRpdGxlRWwuc2V0VGV4dCgnTW92ZSAnICsgdGhpcy5maWxlc1RvRGVsZXRlLmxlbmd0aCArICcgZmlsZXMgdG8gc3lzdGVtIHRyYXNoPycpO1xuXHRcdGNvbnRlbnRFbFxuXHRcdFx0LmNyZWF0ZUVsKFwiYnV0dG9uXCIsIHsgdGV4dDogXCJDYW5jZWxcIiB9KVxuXHRcdFx0LmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLCAoKSA9PiB0aGlzLmNsb3NlKCkpO1xuXHRcdGNvbnRlbnRFbFxuXHRcdFx0LnNldEF0dHIoXCJtYXJnaW5cIiwgXCJhdXRvXCIpO1xuXG5cdFx0Y29udGVudEVsXG5cdFx0XHQuY3JlYXRlRWwoXCJidXR0b25cIixcblx0XHRcdFx0e1xuXHRcdFx0XHRcdGNsczogXCJtb2QtY3RhXCIsXG5cdFx0XHRcdFx0dGV4dDogXCJDb25maXJtXCJcblx0XHRcdFx0fSlcblx0XHRcdC5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIiwgYXN5bmMgKCkgPT4ge1xuXHRcdFx0XHRmb3IgKGNvbnN0IGZpbGUgb2YgdGhpcy5maWxlc1RvRGVsZXRlKSB7XG5cdFx0XHRcdFx0YXdhaXQgdGhpcy5hcHAudmF1bHQudHJhc2goZmlsZSwgdHJ1ZSk7XG5cdFx0XHRcdH1cblx0XHRcdFx0dGhpcy5jbG9zZSgpO1xuXHRcdFx0fSk7XG5cblx0fVxuXG5cdG9uQ2xvc2UoKSB7XG5cdFx0bGV0IHsgY29udGVudEVsIH0gPSB0aGlzO1xuXHRcdGNvbnRlbnRFbC5lbXB0eSgpO1xuXHR9XG59XG4iLCJpbXBvcnQgeyBBcHAsIG5vcm1hbGl6ZVBhdGgsIFBsdWdpblNldHRpbmdUYWIsIFNldHRpbmcgfSBmcm9tICdvYnNpZGlhbic7XG5pbXBvcnQgRmluZE9ycGhhbmVkRmlsZXNQbHVnaW4sIHsgU2V0dGluZ3MgfSBmcm9tICcuL21haW4nO1xuXG5leHBvcnQgY2xhc3MgU2V0dGluZ3NUYWIgZXh0ZW5kcyBQbHVnaW5TZXR0aW5nVGFiIHtcbiAgICBwbHVnaW46IEZpbmRPcnBoYW5lZEZpbGVzUGx1Z2luO1xuICAgIGNvbnN0cnVjdG9yKGFwcDogQXBwLCBwbHVnaW46IEZpbmRPcnBoYW5lZEZpbGVzUGx1Z2luLCBwcml2YXRlIGRlZmF1bHRTZXR0aW5nczogU2V0dGluZ3MpIHtcbiAgICAgICAgc3VwZXIoYXBwLCBwbHVnaW4pO1xuICAgICAgICB0aGlzLnBsdWdpbiA9IHBsdWdpbjtcbiAgICB9XG5cbiAgICAvLyBBZGQgdHJhaWxpbmcgc2xhc2ggdG8gY2F0Y2ggZmlsZXMgbmFtZWQgbGlrZSB0aGUgZGlyZWN0b3J5LiBTZWUgaHR0cHM6Ly9naXRodWIuY29tL1ZpbnplbnQwMy9maW5kLXVubGlua2VkLWZpbGVzL2lzc3Vlcy8yNFxuICAgIGZvcm1hdFBhdGgocGF0aDogc3RyaW5nLCBhZGREaXJlY3RvcnlTbGFzaDogYm9vbGVhbik6IHN0cmluZyB7XG4gICAgICAgIGlmIChwYXRoLmxlbmd0aCA9PSAwKVxuICAgICAgICAgICAgcmV0dXJuIHBhdGg7XG4gICAgICAgIHBhdGggPSBub3JtYWxpemVQYXRoKHBhdGgpO1xuICAgICAgICBpZiAoYWRkRGlyZWN0b3J5U2xhc2gpXG4gICAgICAgICAgICByZXR1cm4gcGF0aCArIFwiL1wiO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICByZXR1cm4gcGF0aDtcbiAgICB9XG5cbiAgICBkaXNwbGF5KCk6IHZvaWQge1xuICAgICAgICBsZXQgeyBjb250YWluZXJFbCB9ID0gdGhpcztcbiAgICAgICAgY29udGFpbmVyRWwuZW1wdHkoKTtcbiAgICAgICAgY29udGFpbmVyRWwuY3JlYXRlRWwoXCJoMlwiLCB7IHRleHQ6IHRoaXMucGx1Z2luLm1hbmlmZXN0Lm5hbWUgfSk7XG5cbiAgICAgICAgY29udGFpbmVyRWwuY3JlYXRlRWwoXCJoNFwiLCB7IHRleHQ6IFwiU2V0dGluZ3MgZm9yIGZpbmRpbmcgb3JwaGFuZWQgZmlsZXNcIiB9KTtcblxuICAgICAgICBuZXcgU2V0dGluZyhjb250YWluZXJFbClcbiAgICAgICAgICAgIC5zZXROYW1lKFwiT3BlbiBvdXRwdXQgZmlsZVwiKVxuICAgICAgICAgICAgLmFkZFRvZ2dsZShjYiA9PlxuICAgICAgICAgICAgICAgIGNiLnNldFZhbHVlKHRoaXMucGx1Z2luLnNldHRpbmdzLm9wZW5PdXRwdXRGaWxlKVxuICAgICAgICAgICAgICAgICAgICAub25DaGFuZ2UodmFsdWUgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2V0dGluZ3Mub3Blbk91dHB1dEZpbGUgPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNhdmVTZXR0aW5ncygpO1xuICAgICAgICAgICAgICAgICAgICB9KSk7XG5cbiAgICAgICAgbmV3IFNldHRpbmcoY29udGFpbmVyRWwpXG4gICAgICAgICAgICAuc2V0TmFtZSgnT3V0cHV0IGZpbGUgbmFtZScpXG4gICAgICAgICAgICAuc2V0RGVzYygnU2V0IG5hbWUgb2Ygb3V0cHV0IGZpbGUgKHdpdGhvdXQgZmlsZSBleHRlbnNpb24pLiBNYWtlIHN1cmUgbm8gZmlsZSBleGlzdHMgd2l0aCB0aGlzIG5hbWUgYmVjYXVzZSBpdCB3aWxsIGJlIG92ZXJ3cml0dGVuISBJZiB0aGUgbmFtZSBpcyBlbXB0eSwgdGhlIGRlZmF1bHQgbmFtZSBpcyBzZXQuJylcbiAgICAgICAgICAgIC5hZGRUZXh0KGNiID0+IGNiLm9uQ2hhbmdlKHZhbHVlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodmFsdWUubGVuZ3RoID09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2V0dGluZ3Mub3V0cHV0RmlsZU5hbWUgPSB0aGlzLmRlZmF1bHRTZXR0aW5ncy5vdXRwdXRGaWxlTmFtZTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zZXR0aW5ncy5vdXRwdXRGaWxlTmFtZSA9IHZhbHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zYXZlU2V0dGluZ3MoKTtcbiAgICAgICAgICAgIH0pLnNldFZhbHVlKHRoaXMucGx1Z2luLnNldHRpbmdzLm91dHB1dEZpbGVOYW1lKSk7XG5cbiAgICAgICAgbmV3IFNldHRpbmcoY29udGFpbmVyRWwpXG4gICAgICAgICAgICAuc2V0TmFtZSgnRGlzYWJsZSB3b3JraW5nIGxpbmtzJylcbiAgICAgICAgICAgIC5zZXREZXNjKCdJbmRlbnQgbGluZXMgdG8gZGlzYWJsZSB0aGUgbGluayBhbmQgdG8gY2xlYW4gdXAgdGhlIGdyYXBoIHZpZXcnKVxuICAgICAgICAgICAgLmFkZFRvZ2dsZShjYiA9PiBjYi5vbkNoYW5nZSh2YWx1ZSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2V0dGluZ3MuZGlzYWJsZVdvcmtpbmdMaW5rcyA9IHZhbHVlO1xuICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNhdmVTZXR0aW5ncygpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgKS5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy5kaXNhYmxlV29ya2luZ0xpbmtzKSk7XG5cbiAgICAgICAgbmV3IFNldHRpbmcoY29udGFpbmVyRWwpXG4gICAgICAgICAgICAuc2V0TmFtZShcIkV4Y2x1ZGUgZmlsZXMgaW4gdGhlIGdpdmVuIGRpcmVjdG9yaWVzXCIpXG4gICAgICAgICAgICAuc2V0RGVzYyhcIkVuYWJsZSB0byBleGNsdWRlIGZpbGVzIGluIHRoZSBnaXZlbiBkaXJlY3Rvcmllcy4gRGlzYWJsZSB0byBvbmx5IGluY2x1ZGUgZmlsZXMgaW4gdGhlIGdpdmVuIGRpcmVjdG9yaWVzXCIpXG4gICAgICAgICAgICAuYWRkVG9nZ2xlKGNiID0+XG4gICAgICAgICAgICAgICAgY2Iuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3MuaWdub3JlRGlyZWN0b3JpZXMpXG4gICAgICAgICAgICAgICAgICAgIC5vbkNoYW5nZSh2YWx1ZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zZXR0aW5ncy5pZ25vcmVEaXJlY3RvcmllcyA9IHZhbHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2F2ZVNldHRpbmdzKCk7XG4gICAgICAgICAgICAgICAgICAgIH0pKTtcblxuICAgICAgICBuZXcgU2V0dGluZyhjb250YWluZXJFbClcbiAgICAgICAgICAgIC5zZXROYW1lKFwiRGlyZWN0b3JpZXNcIilcbiAgICAgICAgICAgIC5zZXREZXNjKFwiQWRkIGVhY2ggZGlyZWN0b3J5IHBhdGggaW4gYSBuZXcgbGluZVwiKVxuICAgICAgICAgICAgLmFkZFRleHRBcmVhKGNiID0+IGNiXG4gICAgICAgICAgICAgICAgLnNldFBsYWNlaG9sZGVyKFwiRGlyZWN0b3J5L1N1YmRpcmVjdG9yeVwiKVxuICAgICAgICAgICAgICAgIC5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy5kaXJlY3Rvcmllc1RvSWdub3JlLmpvaW4oXCJcXG5cIikpXG4gICAgICAgICAgICAgICAgLm9uQ2hhbmdlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBsZXQgcGF0aHMgPSB2YWx1ZS50cmltKCkuc3BsaXQoXCJcXG5cIikubWFwKHZhbHVlID0+IHRoaXMuZm9ybWF0UGF0aCh2YWx1ZSwgdHJ1ZSkpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zZXR0aW5ncy5kaXJlY3Rvcmllc1RvSWdub3JlID0gcGF0aHM7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNhdmVTZXR0aW5ncygpO1xuICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgbmV3IFNldHRpbmcoY29udGFpbmVyRWwpXG4gICAgICAgICAgICAuc2V0TmFtZShcIkV4Y2x1ZGUgZmlsZXNcIilcbiAgICAgICAgICAgIC5zZXREZXNjKFwiQWRkIGVhY2ggZmlsZSBwYXRoIGluIGEgbmV3IGxpbmUgKHdpdGggZmlsZSBleHRlbnNpb24hKVwiKVxuICAgICAgICAgICAgLmFkZFRleHRBcmVhKGNiID0+IGNiXG4gICAgICAgICAgICAgICAgLnNldFBsYWNlaG9sZGVyKFwiRGlyZWN0b3J5L2ZpbGUubWRcIilcbiAgICAgICAgICAgICAgICAuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3MuZmlsZXNUb0lnbm9yZS5qb2luKFwiXFxuXCIpKVxuICAgICAgICAgICAgICAgIC5vbkNoYW5nZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHBhdGhzID0gdmFsdWUudHJpbSgpLnNwbGl0KFwiXFxuXCIpLm1hcCh2YWx1ZSA9PiB0aGlzLmZvcm1hdFBhdGgodmFsdWUsIGZhbHNlKSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNldHRpbmdzLmZpbGVzVG9JZ25vcmUgPSBwYXRocztcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2F2ZVNldHRpbmdzKCk7XG4gICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICBuZXcgU2V0dGluZyhjb250YWluZXJFbClcbiAgICAgICAgICAgIC5zZXROYW1lKFwiRXhjbHVkZSBsaW5rc1wiKVxuICAgICAgICAgICAgLnNldERlc2MoXCJFeGNsdWRlIGZpbGVzLCB3aGljaCBjb250YWluIHRoZSBnaXZlbiBmaWxlIGFzIGxpbmsuIEFkZCBlYWNoIGZpbGUgcGF0aCBpbiBhIG5ldyBsaW5lICh3aXRoIGZpbGUgZXh0ZW5zaW9uISkuIFNldCBpdCB0byBgKmAgdG8gZXhjbHVkZSBmaWxlcyB3aXRoIGxpbmtzLlwiKVxuICAgICAgICAgICAgLmFkZFRleHRBcmVhKGNiID0+IGNiXG4gICAgICAgICAgICAgICAgLnNldFBsYWNlaG9sZGVyKFwiRGlyZWN0b3J5L2ZpbGUubWRcIilcbiAgICAgICAgICAgICAgICAuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3MubGlua3NUb0lnbm9yZS5qb2luKFwiXFxuXCIpKVxuICAgICAgICAgICAgICAgIC5vbkNoYW5nZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHBhdGhzID0gdmFsdWUudHJpbSgpLnNwbGl0KFwiXFxuXCIpLm1hcCh2YWx1ZSA9PiB0aGlzLmZvcm1hdFBhdGgodmFsdWUsIGZhbHNlKSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNldHRpbmdzLmxpbmtzVG9JZ25vcmUgPSBwYXRocztcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2F2ZVNldHRpbmdzKCk7XG4gICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICBuZXcgU2V0dGluZyhjb250YWluZXJFbClcbiAgICAgICAgICAgIC5zZXROYW1lKFwiRXhjbHVkZSBmaWxlcyB3aXRoIHRoZSBnaXZlbiBmaWxldHlwZXNcIilcbiAgICAgICAgICAgIC5zZXREZXNjKFwiRW5hYmxlIHRvIGV4Y2x1ZGUgZmlsZXMgd2l0aCB0aGUgZ2l2ZW4gZmlsZXR5cGVzLiBEaXNhYmxlIHRvIG9ubHkgaW5jbHVkZSBmaWxlcyB3aXRoIHRoZSBnaXZlbiBmaWxldHlwZXNcIilcbiAgICAgICAgICAgIC5hZGRUb2dnbGUoY2IgPT5cbiAgICAgICAgICAgICAgICBjYi5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy5pZ25vcmVGaWxlVHlwZXMpXG4gICAgICAgICAgICAgICAgICAgIC5vbkNoYW5nZSh2YWx1ZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zZXR0aW5ncy5pZ25vcmVGaWxlVHlwZXMgPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNhdmVTZXR0aW5ncygpO1xuICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoXCJGaWxlIHR5cGVzXCIpXG4gICAgICAgICAgICAuc2V0RGVzYyhcIkVmZmVjdCBkZXBlbmRzIG9uIHRvZ2dsZSBhYm92ZVwiKVxuICAgICAgICAgICAgLmFkZFRleHRBcmVhKGNiID0+IGNiXG4gICAgICAgICAgICAgICAgLnNldFBsYWNlaG9sZGVyKFwiZG9jeCx0eHRcIilcbiAgICAgICAgICAgICAgICAuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3MuZmlsZVR5cGVzVG9JZ25vcmUuam9pbihcIixcIikpXG4gICAgICAgICAgICAgICAgLm9uQ2hhbmdlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBsZXQgZXh0ZW5zaW9ucyA9IHZhbHVlLnRyaW0oKS5zcGxpdChcIixcIik7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNldHRpbmdzLmZpbGVUeXBlc1RvSWdub3JlID0gZXh0ZW5zaW9ucztcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2F2ZVNldHRpbmdzKCk7XG4gICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICBuZXcgU2V0dGluZyhjb250YWluZXJFbClcbiAgICAgICAgICAgIC5zZXROYW1lKFwiRXhjbHVkZSB0YWdzXCIpXG4gICAgICAgICAgICAuc2V0RGVzYyhcIkV4Y2x1ZGUgZmlsZXMsIHdoaWNoIGNvbnRhaW4gdGhlIGdpdmVuIHRhZy4gQWRkIGVhY2ggdGFnIHNlcGFyYXRlZCBieSBjb21tYSAod2l0aG91dCBgI2ApXCIpXG4gICAgICAgICAgICAuYWRkVGV4dEFyZWEoY2IgPT4gY2JcbiAgICAgICAgICAgICAgICAuc2V0UGxhY2Vob2xkZXIoXCJ0b2RvLHVuZmluaXNoZWRcIilcbiAgICAgICAgICAgICAgICAuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3MudGFnc1RvSWdub3JlLmpvaW4oXCIsXCIpKVxuICAgICAgICAgICAgICAgIC5vbkNoYW5nZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHRhZ3MgPSB2YWx1ZS50cmltKCkuc3BsaXQoXCIsXCIpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zZXR0aW5ncy50YWdzVG9JZ25vcmUgPSB0YWdzO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zYXZlU2V0dGluZ3MoKTtcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoXCJGaWxldHlwZXMgdG8gZGVsZXRlIHBlciBjb21tYW5kLiBTZWUgUkVBRE1FLlwiKVxuICAgICAgICAgICAgLnNldERlc2MoXCJBZGQgZWFjaCBmaWxldHlwZSBzZXBhcmF0ZWQgYnkgY29tbWEuIFNldCB0byBgKmAgdG8gZGVsZXRlIGFsbCBmaWxlcy5cIilcbiAgICAgICAgICAgIC5hZGRUZXh0QXJlYShjYiA9PiBjYlxuICAgICAgICAgICAgICAgIC5zZXRQbGFjZWhvbGRlcihcImpwZyxwbmdcIilcbiAgICAgICAgICAgICAgICAuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3MuZmlsZVR5cGVzVG9EZWxldGUuam9pbihcIixcIikpXG4gICAgICAgICAgICAgICAgLm9uQ2hhbmdlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBsZXQgZXh0ZW5zaW9ucyA9IHZhbHVlLnRyaW0oKS5zcGxpdChcIixcIik7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNldHRpbmdzLmZpbGVUeXBlc1RvRGVsZXRlID0gZXh0ZW5zaW9ucztcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2F2ZVNldHRpbmdzKCk7XG4gICAgICAgICAgICAgICAgfSkpO1xuXG5cbiAgICAgICAgLy8vIFNldHRpbmdzIGZvciBmaW5kIGJyb2tlbkxpbmtzXG4gICAgICAgIGNvbnRhaW5lckVsLmNyZWF0ZUVsKFwiaDRcIiwgeyB0ZXh0OiBcIlNldHRpbmdzIGZvciBmaW5kaW5nIGJyb2tlbiBsaW5rc1wiIH0pO1xuXG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoJ091dHB1dCBmaWxlIG5hbWUnKVxuICAgICAgICAgICAgLnNldERlc2MoJ1NldCBuYW1lIG9mIG91dHB1dCBmaWxlICh3aXRob3V0IGZpbGUgZXh0ZW5zaW9uKS4gTWFrZSBzdXJlIG5vIGZpbGUgZXhpc3RzIHdpdGggdGhpcyBuYW1lIGJlY2F1c2UgaXQgd2lsbCBiZSBvdmVyd3JpdHRlbiEgSWYgdGhlIG5hbWUgaXMgZW1wdHksIHRoZSBkZWZhdWx0IG5hbWUgaXMgc2V0LicpXG4gICAgICAgICAgICAuYWRkVGV4dChjYiA9PiBjYi5vbkNoYW5nZSh2YWx1ZSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHZhbHVlLmxlbmd0aCA9PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNldHRpbmdzLnVucmVzb2x2ZWRMaW5rc091dHB1dEZpbGVOYW1lID0gdGhpcy5kZWZhdWx0U2V0dGluZ3MudW5yZXNvbHZlZExpbmtzT3V0cHV0RmlsZU5hbWU7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2V0dGluZ3MudW5yZXNvbHZlZExpbmtzT3V0cHV0RmlsZU5hbWUgPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2F2ZVNldHRpbmdzKCk7XG4gICAgICAgICAgICB9KS5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy51bnJlc29sdmVkTGlua3NPdXRwdXRGaWxlTmFtZSkpO1xuXG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoXCJFeGNsdWRlIGRpcmVjdG9yaWVzXCIpXG4gICAgICAgICAgICAuc2V0RGVzYyhcIkV4Y2x1ZGUgbGlua3MgaW4gZmlsZXMgaW4gdGhlIHNwZWNpZmllZCBkaXJlY3RvcnkuIEFkZCBlYWNoIGRpcmVjdG9yeSBwYXRoIGluIGEgbmV3IGxpbmVcIilcbiAgICAgICAgICAgIC5hZGRUZXh0QXJlYShjYiA9PiBjYlxuICAgICAgICAgICAgICAgIC5zZXRQbGFjZWhvbGRlcihcIkRpcmVjdG9yeS9TdWJkaXJlY3RvcnlcIilcbiAgICAgICAgICAgICAgICAuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3MudW5yZXNvbHZlZExpbmtzRGlyZWN0b3JpZXNUb0lnbm9yZS5qb2luKFwiXFxuXCIpKVxuICAgICAgICAgICAgICAgIC5vbkNoYW5nZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHBhdGhzID0gdmFsdWUudHJpbSgpLnNwbGl0KFwiXFxuXCIpLm1hcCh2YWx1ZSA9PiB0aGlzLmZvcm1hdFBhdGgodmFsdWUsIHRydWUpKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2V0dGluZ3MudW5yZXNvbHZlZExpbmtzRGlyZWN0b3JpZXNUb0lnbm9yZSA9IHBhdGhzO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zYXZlU2V0dGluZ3MoKTtcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoXCJFeGNsdWRlIGZpbGVzXCIpXG4gICAgICAgICAgICAuc2V0RGVzYyhcIkV4Y2x1ZGUgbGlua3MgaW4gdGhlIHNwZWNpZmllZCBmaWxlLiBBZGQgZWFjaCBmaWxlIHBhdGggaW4gYSBuZXcgbGluZSAod2l0aCBmaWxlIGV4dGVuc2lvbiEpXCIpXG4gICAgICAgICAgICAuYWRkVGV4dEFyZWEoY2IgPT4gY2JcbiAgICAgICAgICAgICAgICAuc2V0UGxhY2Vob2xkZXIoXCJEaXJlY3RvcnkvZmlsZS5tZFwiKVxuICAgICAgICAgICAgICAgIC5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy51bnJlc29sdmVkTGlua3NGaWxlc1RvSWdub3JlLmpvaW4oXCJcXG5cIikpXG4gICAgICAgICAgICAgICAgLm9uQ2hhbmdlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBsZXQgcGF0aHMgPSB2YWx1ZS50cmltKCkuc3BsaXQoXCJcXG5cIikubWFwKHZhbHVlID0+IHRoaXMuZm9ybWF0UGF0aCh2YWx1ZSwgZmFsc2UpKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2V0dGluZ3MudW5yZXNvbHZlZExpbmtzRmlsZXNUb0lnbm9yZSA9IHBhdGhzO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zYXZlU2V0dGluZ3MoKTtcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoXCJFeGNsdWRlIGxpbmtzXCIpXG4gICAgICAgICAgICAuc2V0RGVzYyhcIkV4Y2x1ZGUgZmlsZXMsIHdoaWNoIGNvbnRhaW4gdGhlIGdpdmVuIGZpbGUgYXMgbGluay4gQWRkIGVhY2ggZmlsZSBwYXRoIGluIGEgbmV3IGxpbmUgKHdpdGggZmlsZSBleHRlbnNpb24hKS4gU2V0IGl0IHRvIGAqYCB0byBleGNsdWRlIGZpbGVzIHdpdGggbGlua3MuXCIpXG4gICAgICAgICAgICAuYWRkVGV4dEFyZWEoY2IgPT4gY2JcbiAgICAgICAgICAgICAgICAuc2V0UGxhY2Vob2xkZXIoXCJEaXJlY3RvcnkvZmlsZS5tZFwiKVxuICAgICAgICAgICAgICAgIC5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy51bnJlc29sdmVkTGlua3NMaW5rc1RvSWdub3JlLmpvaW4oXCJcXG5cIikpXG4gICAgICAgICAgICAgICAgLm9uQ2hhbmdlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBsZXQgcGF0aHMgPSB2YWx1ZS50cmltKCkuc3BsaXQoXCJcXG5cIikubWFwKHZhbHVlID0+IHRoaXMuZm9ybWF0UGF0aCh2YWx1ZSwgZmFsc2UpKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2V0dGluZ3MudW5yZXNvbHZlZExpbmtzTGlua3NUb0lnbm9yZSA9IHBhdGhzO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zYXZlU2V0dGluZ3MoKTtcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoXCJFeGNsdWRlIGZpbGV0eXBlc1wiKVxuICAgICAgICAgICAgLnNldERlc2MoXCJFeGNsdWRlIGxpbmtzIHdpdGggdGhlIHNwZWNpZmllZCBmaWxldHlwZS4gQWRkIGVhY2ggZmlsZXR5cGUgc2VwYXJhdGVkIGJ5IGNvbW1hXCIpXG4gICAgICAgICAgICAuYWRkVGV4dEFyZWEoY2IgPT4gY2JcbiAgICAgICAgICAgICAgICAuc2V0UGxhY2Vob2xkZXIoXCJkb2N4LHR4dFwiKVxuICAgICAgICAgICAgICAgIC5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy51bnJlc29sdmVkTGlua3NGaWxlVHlwZXNUb0lnbm9yZS5qb2luKFwiLFwiKSlcbiAgICAgICAgICAgICAgICAub25DaGFuZ2UoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBleHRlbnNpb25zID0gdmFsdWUudHJpbSgpLnNwbGl0KFwiLFwiKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2V0dGluZ3MudW5yZXNvbHZlZExpbmtzRmlsZVR5cGVzVG9JZ25vcmUgPSBleHRlbnNpb25zO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zYXZlU2V0dGluZ3MoKTtcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoXCJFeGNsdWRlIHRhZ3NcIilcbiAgICAgICAgICAgIC5zZXREZXNjKFwiRXhjbHVkZSBsaW5rcyBpbiBmaWxlcywgd2hpY2ggY29udGFpbiB0aGUgZ2l2ZW4gdGFnLiBBZGQgZWFjaCB0YWcgc2VwYXJhdGVkIGJ5IGNvbW1hICh3aXRob3V0IGAjYClcIilcbiAgICAgICAgICAgIC5hZGRUZXh0QXJlYShjYiA9PiBjYlxuICAgICAgICAgICAgICAgIC5zZXRQbGFjZWhvbGRlcihcInRvZG8sdW5maW5pc2hlZFwiKVxuICAgICAgICAgICAgICAgIC5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy51bnJlc29sdmVkTGlua3NUYWdzVG9JZ25vcmUuam9pbihcIixcIikpXG4gICAgICAgICAgICAgICAgLm9uQ2hhbmdlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBsZXQgdGFncyA9IHZhbHVlLnRyaW0oKS5zcGxpdChcIixcIik7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNldHRpbmdzLnVucmVzb2x2ZWRMaW5rc1RhZ3NUb0lnbm9yZSA9IHRhZ3M7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNhdmVTZXR0aW5ncygpO1xuICAgICAgICAgICAgICAgIH0pKTtcblxuICAgICAgICBjb250YWluZXJFbC5jcmVhdGVFbChcImg0XCIsIHsgdGV4dDogXCJTZXR0aW5ncyBmb3IgZmluZGluZyBmaWxlcyB3aXRob3V0IHRhZ3NcIiB9KTtcblxuICAgICAgICBuZXcgU2V0dGluZyhjb250YWluZXJFbClcbiAgICAgICAgICAgIC5zZXROYW1lKCdPdXRwdXQgZmlsZSBuYW1lJylcbiAgICAgICAgICAgIC5zZXREZXNjKCdTZXQgbmFtZSBvZiBvdXRwdXQgZmlsZSAod2l0aG91dCBmaWxlIGV4dGVuc2lvbikuIE1ha2Ugc3VyZSBubyBmaWxlIGV4aXN0cyB3aXRoIHRoaXMgbmFtZSBiZWNhdXNlIGl0IHdpbGwgYmUgb3ZlcndyaXR0ZW4hIElmIHRoZSBuYW1lIGlzIGVtcHR5LCB0aGUgZGVmYXVsdCBuYW1lIGlzIHNldC4nKVxuICAgICAgICAgICAgLmFkZFRleHQoY2IgPT4gY2Iub25DaGFuZ2UodmFsdWUgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh2YWx1ZS5sZW5ndGggPT0gMCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zZXR0aW5ncy53aXRob3V0VGFnc091dHB1dEZpbGVOYW1lID0gdGhpcy5kZWZhdWx0U2V0dGluZ3Mud2l0aG91dFRhZ3NPdXRwdXRGaWxlTmFtZTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zZXR0aW5ncy53aXRob3V0VGFnc091dHB1dEZpbGVOYW1lID0gdmFsdWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNhdmVTZXR0aW5ncygpO1xuICAgICAgICAgICAgfSkuc2V0VmFsdWUodGhpcy5wbHVnaW4uc2V0dGluZ3Mud2l0aG91dFRhZ3NPdXRwdXRGaWxlTmFtZSkpO1xuXG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoXCJFeGNsdWRlIGZpbGVzXCIpXG4gICAgICAgICAgICAuc2V0RGVzYyhcIkV4Y2x1ZGUgdGhlIHNwZWNpZmljIGZpbGVzLiBBZGQgZWFjaCBmaWxlIHBhdGggaW4gYSBuZXcgbGluZSAod2l0aCBmaWxlIGV4dGVuc2lvbiEpXCIpXG4gICAgICAgICAgICAuYWRkVGV4dEFyZWEoY2IgPT4gY2JcbiAgICAgICAgICAgICAgICAuc2V0UGxhY2Vob2xkZXIoXCJEaXJlY3RvcnkvZmlsZS5tZFwiKVxuICAgICAgICAgICAgICAgIC5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy53aXRob3V0VGFnc0ZpbGVzVG9JZ25vcmUuam9pbihcIlxcblwiKSlcbiAgICAgICAgICAgICAgICAub25DaGFuZ2UoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBwYXRocyA9IHZhbHVlLnRyaW0oKS5zcGxpdChcIlxcblwiKS5tYXAodmFsdWUgPT4gdGhpcy5mb3JtYXRQYXRoKHZhbHVlLCBmYWxzZSkpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zZXR0aW5ncy53aXRob3V0VGFnc0ZpbGVzVG9JZ25vcmUgPSBwYXRocztcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbHVnaW4uc2F2ZVNldHRpbmdzKCk7XG4gICAgICAgICAgICAgICAgfSkpO1xuXG4gICAgICAgIG5ldyBTZXR0aW5nKGNvbnRhaW5lckVsKVxuICAgICAgICAgICAgLnNldE5hbWUoXCJFeGNsdWRlIGRpcmVjdG9yaWVzXCIpXG4gICAgICAgICAgICAuc2V0RGVzYyhcIkV4Y2x1ZGUgZmlsZXMgaW4gdGhlIHNwZWNpZmllZCBkaXJlY3Rvcmllcy4gQWRkIGVhY2ggZGlyZWN0b3J5IHBhdGggaW4gYSBuZXcgbGluZVwiKVxuICAgICAgICAgICAgLmFkZFRleHRBcmVhKGNiID0+IGNiXG4gICAgICAgICAgICAgICAgLnNldFBsYWNlaG9sZGVyKFwiRGlyZWN0b3J5L1N1YmRpcmVjdG9yeVwiKVxuICAgICAgICAgICAgICAgIC5zZXRWYWx1ZSh0aGlzLnBsdWdpbi5zZXR0aW5ncy53aXRob3V0VGFnc0RpcmVjdG9yaWVzVG9JZ25vcmUuam9pbihcIlxcblwiKSlcbiAgICAgICAgICAgICAgICAub25DaGFuZ2UoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBwYXRocyA9IHZhbHVlLnRyaW0oKS5zcGxpdChcIlxcblwiKS5tYXAodmFsdWUgPT4gdGhpcy5mb3JtYXRQYXRoKHZhbHVlLCB0cnVlKSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNldHRpbmdzLndpdGhvdXRUYWdzRGlyZWN0b3JpZXNUb0lnbm9yZSA9IHBhdGhzO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBsdWdpbi5zYXZlU2V0dGluZ3MoKTtcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgfVxufVxuIiwiaW1wb3J0IHsgQXBwLCBDYWNoZWRNZXRhZGF0YSwgZ2V0QWxsVGFncywgaXRlcmF0ZUNhY2hlUmVmcywgVEZpbGUgfSBmcm9tIFwib2JzaWRpYW5cIjtcblxuZXhwb3J0IGNsYXNzIFV0aWxzIHtcbiAgICBwcml2YXRlIGZpbGVDYWNoZTogQ2FjaGVkTWV0YWRhdGE7XG5cbiAgICAvKipcbiAgICAgKiBDaGVja3MgZm9yIHRoZSBnaXZlbiBzZXR0aW5ncy4gSXMgdXNlZCBmb3IgYEZpbmQgb3JwaGFuZWQgZmlsZXNgIGFuZCBgRmluZCBicm9rZW4gbGlua3NgXG4gICAgICogQHBhcmFtIGFwcCBcbiAgICAgKiBAcGFyYW0gZmlsZVBhdGggXG4gICAgICogQHBhcmFtIHRhZ3NUb0lnbm9yZSBcbiAgICAgKiBAcGFyYW0gbGlua3NUb0lnbm9yZSBcbiAgICAgKiBAcGFyYW0gZGlyZWN0b3JpZXNUb0lnbm9yZSBcbiAgICAgKiBAcGFyYW0gZmlsZXNUb0lnbm9yZSBcbiAgICAgKiBAcGFyYW0gaWdub3JlRGlyZWN0b3JpZXNcbiAgICAgKi9cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBhcHA6IEFwcCxcbiAgICAgICAgcHJpdmF0ZSBmaWxlUGF0aDogc3RyaW5nLFxuICAgICAgICBwcml2YXRlIHRhZ3NUb0lnbm9yZTogc3RyaW5nW10sXG4gICAgICAgIHByaXZhdGUgbGlua3NUb0lnbm9yZTogc3RyaW5nW10sXG4gICAgICAgIHByaXZhdGUgZGlyZWN0b3JpZXNUb0lnbm9yZTogc3RyaW5nW10sXG4gICAgICAgIHByaXZhdGUgZmlsZXNUb0lnbm9yZTogc3RyaW5nW10sXG4gICAgICAgIHByaXZhdGUgaWdub3JlRGlyZWN0b3JpZXM6IGJvb2xlYW4gPSB0cnVlLFxuICAgICAgICBwcml2YXRlIGRpcj86IHN0cmluZyxcbiAgICApIHtcbiAgICAgICAgdGhpcy5maWxlQ2FjaGUgPSBhcHAubWV0YWRhdGFDYWNoZS5nZXRDYWNoZShmaWxlUGF0aCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYXNUYWdzVG9JZ25vcmUoKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHRhZ3MgPSBnZXRBbGxUYWdzKHRoaXMuZmlsZUNhY2hlKTtcbiAgICAgICAgcmV0dXJuIHRhZ3M/LmZpbmQoKHRhZykgPT4gdGhpcy50YWdzVG9JZ25vcmUuY29udGFpbnModGFnLnN1YnN0cmluZygxKSkpICE9PSB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHByaXZhdGUgaGFzTGlua3NUb0lnbm9yZSgpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCh0aGlzLmZpbGVDYWNoZT8uZW1iZWRzICE9IG51bGwgfHwgdGhpcy5maWxlQ2FjaGU/LmxpbmtzICE9IG51bGwpICYmIHRoaXMubGlua3NUb0lnbm9yZVswXSA9PSBcIipcIikge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaXRlcmF0ZUNhY2hlUmVmcyh0aGlzLmZpbGVDYWNoZSwgY2IgPT4ge1xuICAgICAgICAgICAgY29uc3QgbGluayA9IHRoaXMuYXBwLm1ldGFkYXRhQ2FjaGUuZ2V0Rmlyc3RMaW5rcGF0aERlc3QoY2IubGluaywgdGhpcy5maWxlUGF0aCk/LnBhdGg7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5saW5rc1RvSWdub3JlLmNvbnRhaW5zKGxpbmspO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNoZWNrRGlyZWN0b3J5KCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAodGhpcy5kaXIpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5maWxlUGF0aC5zdGFydHNXaXRoKHRoaXMuZGlyKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY29udGFpbnMgPSB0aGlzLmRpcmVjdG9yaWVzVG9JZ25vcmUuZmluZCgodmFsdWUpID0+IHZhbHVlLmxlbmd0aCAhPSAwICYmIHRoaXMuZmlsZVBhdGguc3RhcnRzV2l0aCh2YWx1ZSkpICE9PSB1bmRlZmluZWQ7XG4gICAgICAgIGlmICh0aGlzLmlnbm9yZURpcmVjdG9yaWVzKSB7XG4gICAgICAgICAgICByZXR1cm4gY29udGFpbnM7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gIWNvbnRhaW5zO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc0ZpbGVUb0lnbm9yZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmlsZXNUb0lnbm9yZS5jb250YWlucyh0aGlzLmZpbGVQYXRoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaXNWYWxpZCgpIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmhhc1RhZ3NUb0lnbm9yZSgpICYmICF0aGlzLmhhc0xpbmtzVG9JZ25vcmUoKSAmJiAhdGhpcy5jaGVja0RpcmVjdG9yeSgpICYmICF0aGlzLmlzRmlsZVRvSWdub3JlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogV3JpdGVzIHRoZSB0ZXh0IHRvIHRoZSBmaWxlIGFuZCBvcGVucyB0aGUgZmlsZSBpbiBhIG5ldyBwYW5lIGlmIGl0IGlzIG5vdCBvcGVuZWQgeWV0XG4gICAgICogQHBhcmFtIGFwcCBcbiAgICAgKiBAcGFyYW0gb3V0cHV0RmlsZU5hbWUgbmFtZSBvZiB0aGUgb3V0cHV0IGZpbGVcbiAgICAgKiBAcGFyYW0gdGV4dCBkYXRhIHRvIGJlIHdyaXR0ZW4gdG8gdGhlIGZpbGVcbiAgICAgKi9cbiAgICBzdGF0aWMgYXN5bmMgd3JpdGVBbmRPcGVuRmlsZShhcHA6IEFwcCwgb3V0cHV0RmlsZU5hbWU6IHN0cmluZywgdGV4dDogc3RyaW5nLCBvcGVuRmlsZTogYm9vbGVhbikge1xuICAgICAgICBhd2FpdCBhcHAudmF1bHQuYWRhcHRlci53cml0ZShvdXRwdXRGaWxlTmFtZSwgdGV4dCk7XG4gICAgICAgIGlmICghb3BlbkZpbGUpIHJldHVybjtcblxuICAgICAgICBsZXQgZmlsZUlzQWxyZWFkeU9wZW5lZCA9IGZhbHNlO1xuICAgICAgICBhcHAud29ya3NwYWNlLml0ZXJhdGVBbGxMZWF2ZXMobGVhZiA9PiB7XG4gICAgICAgICAgICBpZiAobGVhZi5nZXREaXNwbGF5VGV4dCgpICE9IFwiXCIgJiYgb3V0cHV0RmlsZU5hbWUuc3RhcnRzV2l0aChsZWFmLmdldERpc3BsYXlUZXh0KCkpKSB7XG4gICAgICAgICAgICAgICAgZmlsZUlzQWxyZWFkeU9wZW5lZCA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoIWZpbGVJc0FscmVhZHlPcGVuZWQpIHtcbiAgICAgICAgICAgIGNvbnN0IG5ld1BhbmUgPSBhcHAud29ya3NwYWNlLmdldExlYXZlc09mVHlwZShcImVtcHR5XCIpLmxlbmd0aCA9PSAwO1xuICAgICAgICAgICAgaWYgKG5ld1BhbmUpIHtcbiAgICAgICAgICAgICAgICBhcHAud29ya3NwYWNlLm9wZW5MaW5rVGV4dChvdXRwdXRGaWxlTmFtZSwgXCIvXCIsIHRydWUpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCBmaWxlID0gYXBwLnZhdWx0LmdldEFic3RyYWN0RmlsZUJ5UGF0aChvdXRwdXRGaWxlTmFtZSk7XG5cbiAgICAgICAgICAgICAgICBpZiAoZmlsZSBpbnN0YW5jZW9mIFRGaWxlKSB7XG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IGFwcC53b3Jrc3BhY2UuZ2V0TGVhdmVzT2ZUeXBlKFwiZW1wdHlcIilbMF0ub3BlbkZpbGUoZmlsZSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgYXBwLndvcmtzcGFjZS5vcGVuTGlua1RleHQob3V0cHV0RmlsZU5hbWUsIFwiL1wiLCB0cnVlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJpbXBvcnQgeyBnZXRBbGxUYWdzLCBnZXRMaW5rcGF0aCwgaXRlcmF0ZUNhY2hlUmVmcywgTm90aWNlLCBQbHVnaW4sIFRGaWxlLCBURm9sZGVyIH0gZnJvbSAnb2JzaWRpYW4nO1xyXG5pbXBvcnQgeyBEZWxldGVGaWxlc01vZGFsIH0gZnJvbSAnLi9kZWxldGVGaWxlc01vZGFsJztcclxuaW1wb3J0IHsgU2V0dGluZ3NUYWIgfSBmcm9tICcuL3NldHRpbmdzVGFiJztcclxuaW1wb3J0IHsgVXRpbHMgfSBmcm9tICcuL3V0aWxzJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU2V0dGluZ3Mge1xyXG5cdG91dHB1dEZpbGVOYW1lOiBzdHJpbmc7XHJcblx0ZGlzYWJsZVdvcmtpbmdMaW5rczogYm9vbGVhbjtcclxuXHRkaXJlY3Rvcmllc1RvSWdub3JlOiBzdHJpbmdbXTtcclxuXHRmaWxlc1RvSWdub3JlOiBzdHJpbmdbXTtcclxuXHRmaWxlVHlwZXNUb0lnbm9yZTogc3RyaW5nW107XHJcblx0bGlua3NUb0lnbm9yZTogc3RyaW5nW107XHJcblx0dGFnc1RvSWdub3JlOiBzdHJpbmdbXTtcclxuXHRmaWxlVHlwZXNUb0RlbGV0ZTogc3RyaW5nW107XHJcblx0aWdub3JlRmlsZVR5cGVzOiBib29sZWFuO1xyXG5cdGlnbm9yZURpcmVjdG9yaWVzOiBib29sZWFuO1xyXG5cdHVucmVzb2x2ZWRMaW5rc0RpcmVjdG9yaWVzVG9JZ25vcmU6IHN0cmluZ1tdO1xyXG5cdHVucmVzb2x2ZWRMaW5rc0ZpbGVzVG9JZ25vcmU6IHN0cmluZ1tdO1xyXG5cdHVucmVzb2x2ZWRMaW5rc0ZpbGVUeXBlc1RvSWdub3JlOiBzdHJpbmdbXTtcclxuXHR1bnJlc29sdmVkTGlua3NMaW5rc1RvSWdub3JlOiBzdHJpbmdbXTtcclxuXHR1bnJlc29sdmVkTGlua3NUYWdzVG9JZ25vcmU6IHN0cmluZ1tdO1xyXG5cdHVucmVzb2x2ZWRMaW5rc091dHB1dEZpbGVOYW1lOiBzdHJpbmc7XHJcblx0d2l0aG91dFRhZ3NEaXJlY3Rvcmllc1RvSWdub3JlOiBzdHJpbmdbXTtcclxuXHR3aXRob3V0VGFnc0ZpbGVzVG9JZ25vcmU6IHN0cmluZ1tdO1xyXG5cdHdpdGhvdXRUYWdzT3V0cHV0RmlsZU5hbWU6IHN0cmluZztcclxuXHRvcGVuT3V0cHV0RmlsZTogYm9vbGVhbjtcclxufVxyXG5jb25zdCBERUZBVUxUX1NFVFRJTkdTOiBTZXR0aW5ncyA9IHtcclxuXHRvdXRwdXRGaWxlTmFtZTogXCJvcnBoYW5lZCBmaWxlcyBvdXRwdXRcIixcclxuXHRkaXNhYmxlV29ya2luZ0xpbmtzOiBmYWxzZSxcclxuXHRkaXJlY3Rvcmllc1RvSWdub3JlOiBbXSxcclxuXHRmaWxlc1RvSWdub3JlOiBbXSxcclxuXHRmaWxlVHlwZXNUb0lnbm9yZTogW10sXHJcblx0bGlua3NUb0lnbm9yZTogW10sXHJcblx0dGFnc1RvSWdub3JlOiBbXSxcclxuXHRmaWxlVHlwZXNUb0RlbGV0ZTogW10sXHJcblx0aWdub3JlRmlsZVR5cGVzOiB0cnVlLFxyXG5cdGlnbm9yZURpcmVjdG9yaWVzOiB0cnVlLFxyXG5cdHVucmVzb2x2ZWRMaW5rc091dHB1dEZpbGVOYW1lOiBcImJyb2tlbiBsaW5rcyBvdXRwdXRcIixcclxuXHR1bnJlc29sdmVkTGlua3NEaXJlY3Rvcmllc1RvSWdub3JlOiBbXSxcclxuXHR1bnJlc29sdmVkTGlua3NGaWxlc1RvSWdub3JlOiBbXSxcclxuXHR1bnJlc29sdmVkTGlua3NGaWxlVHlwZXNUb0lnbm9yZTogW10sXHJcblx0dW5yZXNvbHZlZExpbmtzTGlua3NUb0lnbm9yZTogW10sXHJcblx0dW5yZXNvbHZlZExpbmtzVGFnc1RvSWdub3JlOiBbXSxcclxuXHR3aXRob3V0VGFnc0RpcmVjdG9yaWVzVG9JZ25vcmU6IFtdLFxyXG5cdHdpdGhvdXRUYWdzRmlsZXNUb0lnbm9yZTogW10sXHJcblx0d2l0aG91dFRhZ3NPdXRwdXRGaWxlTmFtZTogXCJmaWxlcyB3aXRob3V0IHRhZ3NcIixcclxuXHRvcGVuT3V0cHV0RmlsZTogdHJ1ZSxcclxufTtcclxuXHJcbmludGVyZmFjZSBCcm9rZW5MaW5rIHtcclxuXHRsaW5rOiBzdHJpbmc7XHJcblx0ZmlsZXM6IHN0cmluZ1tdO1xyXG59XHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEZpbmRPcnBoYW5lZEZpbGVzUGx1Z2luIGV4dGVuZHMgUGx1Z2luIHtcclxuXHRzZXR0aW5nczogU2V0dGluZ3M7XHJcblx0YXN5bmMgb25sb2FkKCkge1xyXG5cdFx0Y29uc29sZS5sb2coJ2xvYWRpbmcgJyArIHRoaXMubWFuaWZlc3QubmFtZSArIFwiIHBsdWdpblwiKTtcclxuXHRcdGF3YWl0IHRoaXMubG9hZFNldHRpbmdzKCk7XHJcblx0XHR0aGlzLmFkZENvbW1hbmQoe1xyXG5cdFx0XHRpZDogJ2ZpbmQtdW5saW5rZWQtZmlsZXMnLFxyXG5cdFx0XHRuYW1lOiAnRmluZCBvcnBoYW5lZCBmaWxlcycsXHJcblx0XHRcdGNhbGxiYWNrOiAoKSA9PiB0aGlzLmZpbmRPcnBoYW5lZEZpbGVzKCksXHJcblx0XHR9KTtcclxuXHRcdHRoaXMuYWRkQ29tbWFuZCh7XHJcblx0XHRcdGlkOiAnZmluZC11bnJlc29sdmVkLWxpbmsnLFxyXG5cdFx0XHRuYW1lOiAnRmluZCBicm9rZW4gbGlua3MnLFxyXG5cdFx0XHRjYWxsYmFjazogKCkgPT4gdGhpcy5maW5kQnJva2VuTGlua3MoKSxcclxuXHRcdH0pO1xyXG5cdFx0dGhpcy5hZGRDb21tYW5kKHtcclxuXHRcdFx0aWQ6IFwiZGVsZXRlLXVubGlua2VkLWZpbGVzXCIsXHJcblx0XHRcdG5hbWU6IFwiRGVsZXRlIG9ycGhhbmVkIGZpbGVzIHdpdGggY2VydGFpbiBleHRlbnNpb24uIFNlZSBSRUFETUVcIixcclxuXHRcdFx0Y2FsbGJhY2s6ICgpID0+IHRoaXMuZGVsZXRlT3JwaGFuZWRGaWxlcygpXHJcblx0XHR9KTtcclxuXHRcdHRoaXMuYWRkQ29tbWFuZCh7XHJcblx0XHRcdGlkOiBcImZpbmQtZmlsZXMtd2l0aG91dC10YWdzXCIsXHJcblx0XHRcdG5hbWU6IFwiRmluZCBmaWxlcyB3aXRob3V0IHRhZ3NcIixcclxuXHRcdFx0Y2FsbGJhY2s6ICgpID0+IHRoaXMuZmluZEZpbGVzV2l0aG91dFRhZ3MoKVxyXG5cdFx0fSk7XHJcblx0XHR0aGlzLmFkZFNldHRpbmdUYWIobmV3IFNldHRpbmdzVGFiKHRoaXMuYXBwLCB0aGlzLCBERUZBVUxUX1NFVFRJTkdTKSk7XHJcblxyXG5cdFx0dGhpcy5hcHAud29ya3NwYWNlLm9uKFwiZmlsZS1tZW51XCIsIChtZW51LCBmaWxlLCBzb3VyY2UsIGxlYWYpID0+IHtcclxuXHRcdFx0aWYgKGZpbGUgaW5zdGFuY2VvZiBURm9sZGVyKSB7XHJcblx0XHRcdFx0bWVudS5hZGRJdGVtKGNiID0+IHtcclxuXHRcdFx0XHRcdGNiLnNldEljb24oXCJzZWFyY2hcIik7XHJcblx0XHRcdFx0XHRjYi5zZXRUaXRsZShcIkZpbmQgb3JwaGFuZWQgZmlsZXNcIik7XHJcblx0XHRcdFx0XHQvLyBBZGQgdHJhaWxpbmcgc2xhc2ggdG8gY2F0Y2ggZmlsZXMgbmFtZWQgbGlrZSB0aGUgZGlyZWN0b3J5LiBTZWUgaHR0cHM6Ly9naXRodWIuY29tL1ZpbnplbnQwMy9maW5kLXVubGlua2VkLWZpbGVzL2lzc3Vlcy8yNFxyXG5cdFx0XHRcdFx0Y2Iub25DbGljaygoZSkgPT4geyB0aGlzLmZpbmRPcnBoYW5lZEZpbGVzKGZpbGUucGF0aCArIFwiL1wiKTsgfSk7XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0ZmluZE9ycGhhbmVkRmlsZXMoZGlyPzogc3RyaW5nKSB7XHJcblx0XHRjb25zdCBvdXRGaWxlTmFtZSA9IHRoaXMuc2V0dGluZ3Mub3V0cHV0RmlsZU5hbWUgKyBcIi5tZFwiO1xyXG5cdFx0bGV0IG91dEZpbGU6IFRGaWxlO1xyXG5cdFx0Y29uc3QgZmlsZXMgPSB0aGlzLmFwcC52YXVsdC5nZXRGaWxlcygpO1xyXG5cdFx0Y29uc3QgbWFya2Rvd25GaWxlcyA9IHRoaXMuYXBwLnZhdWx0LmdldE1hcmtkb3duRmlsZXMoKTtcclxuXHRcdGxldCBsaW5rczogc3RyaW5nW10gPSBbXTtcclxuXHJcblx0XHRtYXJrZG93bkZpbGVzLmZvckVhY2goKG1hcmtGaWxlOiBURmlsZSkgPT4ge1xyXG5cdFx0XHRpZiAobWFya0ZpbGUucGF0aCA9PSBvdXRGaWxlTmFtZSkge1xyXG5cdFx0XHRcdG91dEZpbGUgPSBtYXJrRmlsZTtcclxuXHRcdFx0XHRyZXR1cm47XHJcblx0XHRcdH1cclxuXHRcdFx0aXRlcmF0ZUNhY2hlUmVmcyh0aGlzLmFwcC5tZXRhZGF0YUNhY2hlLmdldEZpbGVDYWNoZShtYXJrRmlsZSksIGNiID0+IHtcclxuXHRcdFx0XHRsZXQgdHh0ID0gdGhpcy5hcHAubWV0YWRhdGFDYWNoZS5nZXRGaXJzdExpbmtwYXRoRGVzdChnZXRMaW5rcGF0aChjYi5saW5rKSwgbWFya0ZpbGUucGF0aCk7XHJcblx0XHRcdFx0aWYgKHR4dCAhPSBudWxsKVxyXG5cdFx0XHRcdFx0bGlua3MucHVzaCh0eHQucGF0aCk7XHJcblx0XHRcdH0pO1xyXG5cdFx0fSk7XHJcblx0XHRjb25zdCBub3RMaW5rZWRGaWxlcyA9IGZpbGVzLmZpbHRlcigoZmlsZSkgPT4gdGhpcy5pc1ZhbGlkKGZpbGUsIGxpbmtzLCBkaXIpKTtcclxuXHRcdG5vdExpbmtlZEZpbGVzLnJlbW92ZShvdXRGaWxlKTtcclxuXHJcblxyXG5cdFx0bGV0IHRleHQgPSBcIlwiO1xyXG5cdFx0bGV0IHByZWZpeDogc3RyaW5nO1xyXG5cdFx0aWYgKHRoaXMuc2V0dGluZ3MuZGlzYWJsZVdvcmtpbmdMaW5rcylcclxuXHRcdFx0cHJlZml4ID0gXCJcdFwiO1xyXG5cdFx0ZWxzZVxyXG5cdFx0XHRwcmVmaXggPSBcIlwiO1xyXG5cdFx0bm90TGlua2VkRmlsZXMuZm9yRWFjaCgoZmlsZSkgPT4ge1xyXG5cdFx0XHR0ZXh0ICs9IHByZWZpeCArIFwiLSBbW1wiICsgdGhpcy5hcHAubWV0YWRhdGFDYWNoZS5maWxlVG9MaW5rdGV4dChmaWxlLCBcIi9cIiwgZmFsc2UpICsgXCJdXVxcblwiO1xyXG5cdFx0fSk7XHJcblx0XHRVdGlscy53cml0ZUFuZE9wZW5GaWxlKHRoaXMuYXBwLCBvdXRGaWxlTmFtZSwgdGV4dCwgdGhpcy5zZXR0aW5ncy5vcGVuT3V0cHV0RmlsZSk7XHJcblxyXG5cdH1cclxuXHRhc3luYyBkZWxldGVPcnBoYW5lZEZpbGVzKCkge1xyXG5cdFx0aWYgKCFhd2FpdCB0aGlzLmFwcC52YXVsdC5hZGFwdGVyLmV4aXN0cyh0aGlzLnNldHRpbmdzLm91dHB1dEZpbGVOYW1lICsgXCIubWRcIikpIHtcclxuXHRcdFx0bmV3IE5vdGljZShcIkNhbid0IGZpbmQgZmlsZSAtIFBsZWFzZSBydW4gdGhlIGBGaW5kIG9ycGhhbmVkIGZpbGVzJyBjb21tYW5kIGJlZm9yZVwiKTtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cdFx0Y29uc3QgbGlua3MgPSB0aGlzLmFwcC5tZXRhZGF0YUNhY2hlLmdldENhY2hlKHRoaXMuc2V0dGluZ3Mub3V0cHV0RmlsZU5hbWUgKyBcIi5tZFwiKT8ubGlua3MgPz8gW107XHJcblx0XHRjb25zdCBmaWxlc1RvRGVsZXRlOiBURmlsZVtdID0gW107XHJcblx0XHRjb25zb2xlLmxvZyh0aGlzLnNldHRpbmdzLmZpbGVUeXBlc1RvRGVsZXRlKTtcclxuXHRcdGxpbmtzLmZvckVhY2goKGxpbmspID0+IHtcclxuXHRcdFx0Y29uc3QgZmlsZSA9IHRoaXMuYXBwLm1ldGFkYXRhQ2FjaGUuZ2V0Rmlyc3RMaW5rcGF0aERlc3QobGluay5saW5rLCBcIi9cIik7XHJcblx0XHRcdGlmICghZmlsZSlcclxuXHRcdFx0XHRyZXR1cm47XHJcblxyXG5cdFx0XHRpZiAodGhpcy5zZXR0aW5ncy5maWxlVHlwZXNUb0RlbGV0ZVswXSA9PSBcIipcIiB8fCB0aGlzLnNldHRpbmdzLmZpbGVUeXBlc1RvRGVsZXRlLmNvbnRhaW5zKGZpbGUuZXh0ZW5zaW9uKSkge1xyXG5cdFx0XHRcdGZpbGVzVG9EZWxldGUucHVzaChmaWxlKTtcclxuXHRcdFx0fVxyXG5cdFx0fSk7XHJcblx0XHRpZiAoZmlsZXNUb0RlbGV0ZS5sZW5ndGggPiAwKVxyXG5cdFx0XHRuZXcgRGVsZXRlRmlsZXNNb2RhbCh0aGlzLmFwcCwgZmlsZXNUb0RlbGV0ZSkub3BlbigpO1xyXG5cdH1cclxuXHRmaW5kQnJva2VuTGlua3MoKSB7XHJcblx0XHRjb25zdCBvdXRGaWxlTmFtZSA9IHRoaXMuc2V0dGluZ3MudW5yZXNvbHZlZExpbmtzT3V0cHV0RmlsZU5hbWUgKyBcIi5tZFwiO1xyXG5cdFx0Y29uc3QgbGlua3M6IEJyb2tlbkxpbmtbXSA9IFtdO1xyXG5cdFx0Y29uc3QgYnJva2VuTGlua3MgPSB0aGlzLmFwcC5tZXRhZGF0YUNhY2hlLnVucmVzb2x2ZWRMaW5rcztcclxuXHJcblx0XHRmb3IgKGxldCBmaWxlUGF0aCBpbiBicm9rZW5MaW5rcykge1xyXG5cdFx0XHRpZiAoZmlsZVBhdGggPT0gdGhpcy5zZXR0aW5ncy51bnJlc29sdmVkTGlua3NPdXRwdXRGaWxlTmFtZSArIFwiLm1kXCIpIGNvbnRpbnVlO1xyXG5cclxuXHRcdFx0Y29uc3QgZmlsZVR5cGUgPSBmaWxlUGF0aC5zdWJzdHJpbmcoZmlsZVBhdGgubGFzdEluZGV4T2YoXCIuXCIpICsgMSk7XHJcblxyXG5cdFx0XHRjb25zdCB1dGlscyA9IG5ldyBVdGlscyhcclxuXHRcdFx0XHR0aGlzLmFwcCxcclxuXHRcdFx0XHRmaWxlUGF0aCxcclxuXHRcdFx0XHR0aGlzLnNldHRpbmdzLnVucmVzb2x2ZWRMaW5rc1RhZ3NUb0lnbm9yZSxcclxuXHRcdFx0XHR0aGlzLnNldHRpbmdzLnVucmVzb2x2ZWRMaW5rc0xpbmtzVG9JZ25vcmUsXHJcblx0XHRcdFx0dGhpcy5zZXR0aW5ncy51bnJlc29sdmVkTGlua3NEaXJlY3Rvcmllc1RvSWdub3JlLFxyXG5cdFx0XHRcdHRoaXMuc2V0dGluZ3MudW5yZXNvbHZlZExpbmtzRmlsZXNUb0lnbm9yZVxyXG5cdFx0XHQpO1xyXG5cdFx0XHRpZiAoIXV0aWxzLmlzVmFsaWQoKSkgY29udGludWU7XHJcblxyXG5cdFx0XHRmb3IgKGNvbnN0IGxpbmsgaW4gYnJva2VuTGlua3NbZmlsZVBhdGhdKSB7XHJcblx0XHRcdFx0Y29uc3QgbGlua0ZpbGVUeXBlID0gbGluay5zdWJzdHJpbmcobGluay5sYXN0SW5kZXhPZihcIi5cIikgKyAxKTtcclxuXHRcdFx0XHRjb25zb2xlLmxvZyhsaW5rRmlsZVR5cGUpO1xyXG5cclxuXHRcdFx0XHRpZiAodGhpcy5zZXR0aW5ncy51bnJlc29sdmVkTGlua3NGaWxlVHlwZXNUb0lnbm9yZS5jb250YWlucyhsaW5rRmlsZVR5cGUpKSBjb250aW51ZTtcclxuXHJcblx0XHRcdFx0bGV0IGZvcm1hdHRlZEZpbGVQYXRoID0gZmlsZVBhdGg7XHJcblx0XHRcdFx0aWYgKGZpbGVUeXBlID09IFwibWRcIikge1xyXG5cdFx0XHRcdFx0Zm9ybWF0dGVkRmlsZVBhdGggPSBmaWxlUGF0aC5zdWJzdHJpbmcoMCwgZmlsZVBhdGgubGFzdEluZGV4T2YoXCIubWRcIikpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRjb25zdCBicm9rZW5MaW5rOiBCcm9rZW5MaW5rID0geyBmaWxlczogW2Zvcm1hdHRlZEZpbGVQYXRoXSwgbGluazogbGluayB9O1xyXG5cdFx0XHRcdGlmIChsaW5rcy5jb250YWlucyhicm9rZW5MaW5rKSlcclxuXHRcdFx0XHRcdGNvbnRpbnVlO1xyXG5cdFx0XHRcdGNvbnN0IGR1cGxpY2F0aW9uID0gbGlua3MuZmluZCgoZSkgPT4gZS5saW5rID09IGxpbmspO1xyXG5cdFx0XHRcdGlmIChkdXBsaWNhdGlvbikge1xyXG5cdFx0XHRcdFx0ZHVwbGljYXRpb24uZmlsZXMucHVzaChmb3JtYXR0ZWRGaWxlUGF0aCk7XHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdGxpbmtzLnB1c2goYnJva2VuTGluayk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRVdGlscy53cml0ZUFuZE9wZW5GaWxlKFxyXG5cdFx0XHR0aGlzLmFwcCxcclxuXHRcdFx0b3V0RmlsZU5hbWUsXHJcblx0XHRcdFtcclxuXHRcdFx0XHRcIkRvbid0IGZvcmdldCB0aGF0IGNyZWF0aW5nIHRoZSBmaWxlIGZyb20gaGVyZSBtYXkgY3JlYXRlIHRoZSBmaWxlIGluIHRoZSB3cm9uZyBkaXJlY3RvcnkhXCIsXHJcblx0XHRcdFx0Li4ubGlua3MubWFwKChlKSA9PiBgLSBbWyR7ZS5saW5rfV1dIGluIFtbJHtlLmZpbGVzLmpvaW4oXCJdXSwgW1tcIil9XV1gKVxyXG5cdFx0XHRdLmpvaW4oXCJcXG5cIiksXHJcblx0XHRcdHRoaXMuc2V0dGluZ3Mub3Blbk91dHB1dEZpbGUpO1xyXG5cclxuXHR9XHJcblxyXG5cdGZpbmRGaWxlc1dpdGhvdXRUYWdzKCkge1xyXG5cdFx0Y29uc3Qgb3V0RmlsZU5hbWUgPSB0aGlzLnNldHRpbmdzLndpdGhvdXRUYWdzT3V0cHV0RmlsZU5hbWUgKyBcIi5tZFwiO1xyXG5cdFx0bGV0IG91dEZpbGU6IFRGaWxlO1xyXG5cdFx0Y29uc3QgZmlsZXMgPSB0aGlzLmFwcC52YXVsdC5nZXRNYXJrZG93bkZpbGVzKCk7XHJcblx0XHRsZXQgd2l0aG91dEZpbGVzID0gZmlsZXMuZmlsdGVyKChmaWxlKSA9PiB7XHJcblx0XHRcdGlmIChuZXcgVXRpbHModGhpcy5hcHAsIGZpbGUucGF0aCwgW10sIFtdLCB0aGlzLnNldHRpbmdzLndpdGhvdXRUYWdzRGlyZWN0b3JpZXNUb0lnbm9yZSwgdGhpcy5zZXR0aW5ncy53aXRob3V0VGFnc0ZpbGVzVG9JZ25vcmUsIHRydWUpLmlzVmFsaWQoKSkge1xyXG5cdFx0XHRcdHJldHVybiAoZ2V0QWxsVGFncyh0aGlzLmFwcC5tZXRhZGF0YUNhY2hlLmdldEZpbGVDYWNoZShmaWxlKSkubGVuZ3RoID8/IDApIDw9IDA7XHJcblxyXG5cdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdFx0fVxyXG5cdFx0fSk7XHJcblx0XHR3aXRob3V0RmlsZXMucmVtb3ZlKG91dEZpbGUpO1xyXG5cclxuXHJcblx0XHRsZXQgcHJlZml4OiBzdHJpbmc7XHJcblx0XHRpZiAodGhpcy5zZXR0aW5ncy5kaXNhYmxlV29ya2luZ0xpbmtzKVxyXG5cdFx0XHRwcmVmaXggPSBcIlx0XCI7XHJcblx0XHRlbHNlXHJcblx0XHRcdHByZWZpeCA9IFwiXCI7XHJcblx0XHRjb25zdCB0ZXh0ID0gd2l0aG91dEZpbGVzLm1hcCgoZmlsZSkgPT4gYCR7cHJlZml4fS0gW1ske2ZpbGUucGF0aH1dXWApLmpvaW4oXCJcXG5cIik7XHJcblx0XHRVdGlscy53cml0ZUFuZE9wZW5GaWxlKHRoaXMuYXBwLCBvdXRGaWxlTmFtZSwgdGV4dCwgdGhpcy5zZXR0aW5ncy5vcGVuT3V0cHV0RmlsZSk7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiBDaGVja3MgaWYgdGhlIGdpdmVuIGZpbGUgaW4gYW4gb3JwaGFuZWQgZmlsZVxyXG5cdCAqIFxyXG5cdCAqIEBwYXJhbSBmaWxlIGZpbGUgdG8gY2hlY2tcclxuXHQgKiBAcGFyYW0gbGlua3MgYWxsIGxpbmtzIGluIHRoZSB2YXVsdFxyXG5cdCAqL1xyXG5cdGlzVmFsaWQoZmlsZTogVEZpbGUsIGxpbmtzOiBzdHJpbmdbXSwgZGlyOiBzdHJpbmcpOiBib29sZWFuIHtcclxuXHRcdGlmIChsaW5rcy5jb250YWlucyhmaWxlLnBhdGgpKVxyXG5cdFx0XHRyZXR1cm4gZmFsc2U7XHJcblxyXG5cdFx0Ly9maWxldHlwZXMgdG8gaWdub3JlIGJ5IGRlZmF1bHRcclxuXHRcdGlmIChmaWxlLmV4dGVuc2lvbiA9PSBcImNzc1wiKVxyXG5cdFx0XHRyZXR1cm4gZmFsc2U7XHJcblxyXG5cdFx0aWYgKHRoaXMuc2V0dGluZ3MuZmlsZVR5cGVzVG9JZ25vcmVbMF0gIT09IFwiXCIpIHtcclxuXHRcdFx0Y29uc3QgY29udGFpbnNGaWxlVHlwZSA9IHRoaXMuc2V0dGluZ3MuZmlsZVR5cGVzVG9JZ25vcmUuY29udGFpbnMoZmlsZS5leHRlbnNpb24pO1xyXG5cdFx0XHRpZiAodGhpcy5zZXR0aW5ncy5pZ25vcmVGaWxlVHlwZXMpIHtcclxuXHRcdFx0XHRpZiAoY29udGFpbnNGaWxlVHlwZSkgcmV0dXJuO1xyXG5cdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdGlmICghY29udGFpbnNGaWxlVHlwZSkgcmV0dXJuO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0Y29uc3QgdXRpbHMgPSBuZXcgVXRpbHMoXHJcblx0XHRcdHRoaXMuYXBwLFxyXG5cdFx0XHRmaWxlLnBhdGgsXHJcblx0XHRcdHRoaXMuc2V0dGluZ3MudGFnc1RvSWdub3JlLFxyXG5cdFx0XHR0aGlzLnNldHRpbmdzLmxpbmtzVG9JZ25vcmUsXHJcblx0XHRcdHRoaXMuc2V0dGluZ3MuZGlyZWN0b3JpZXNUb0lnbm9yZSxcclxuXHRcdFx0dGhpcy5zZXR0aW5ncy5maWxlc1RvSWdub3JlLFxyXG5cdFx0XHR0aGlzLnNldHRpbmdzLmlnbm9yZURpcmVjdG9yaWVzLFxyXG5cdFx0XHRkaXJcclxuXHRcdCk7XHJcblx0XHRpZiAoIXV0aWxzLmlzVmFsaWQoKSlcclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cclxuXHRcdHJldHVybiB0cnVlO1xyXG5cdH1cclxuXHJcblxyXG5cclxuXHRvbnVubG9hZCgpIHtcclxuXHRcdGNvbnNvbGUubG9nKCd1bmxvYWRpbmcgJyArIHRoaXMubWFuaWZlc3QubmFtZSArIFwiIHBsdWdpblwiKTtcclxuXHR9XHJcblx0YXN5bmMgbG9hZFNldHRpbmdzKCkge1xyXG5cdFx0dGhpcy5zZXR0aW5ncyA9IE9iamVjdC5hc3NpZ24oREVGQVVMVF9TRVRUSU5HUywgYXdhaXQgdGhpcy5sb2FkRGF0YSgpKTtcclxuXHR9XHJcblxyXG5cdGFzeW5jIHNhdmVTZXR0aW5ncygpIHtcclxuXHRcdGF3YWl0IHRoaXMuc2F2ZURhdGEodGhpcy5zZXR0aW5ncyk7XHJcblx0fVxyXG59XHJcbiJdLCJuYW1lcyI6WyJNb2RhbCIsIm5vcm1hbGl6ZVBhdGgiLCJTZXR0aW5nIiwiUGx1Z2luU2V0dGluZ1RhYiIsImdldEFsbFRhZ3MiLCJpdGVyYXRlQ2FjaGVSZWZzIiwiVEZpbGUiLCJURm9sZGVyIiwiZ2V0TGlua3BhdGgiLCJOb3RpY2UiLCJQbHVnaW4iXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUksYUFBYSxHQUFHLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRTtBQUNuQyxJQUFJLGFBQWEsR0FBRyxNQUFNLENBQUMsY0FBYztBQUN6QyxTQUFTLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxZQUFZLEtBQUssSUFBSSxVQUFVLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUM7QUFDcEYsUUFBUSxVQUFVLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7QUFDMUcsSUFBSSxPQUFPLGFBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDL0IsQ0FBQyxDQUFDO0FBQ0Y7QUFDTyxTQUFTLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFO0FBQ2hDLElBQUksSUFBSSxPQUFPLENBQUMsS0FBSyxVQUFVLElBQUksQ0FBQyxLQUFLLElBQUk7QUFDN0MsUUFBUSxNQUFNLElBQUksU0FBUyxDQUFDLHNCQUFzQixHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRywrQkFBK0IsQ0FBQyxDQUFDO0FBQ2xHLElBQUksYUFBYSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUN4QixJQUFJLFNBQVMsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUMsRUFBRTtBQUMzQyxJQUFJLENBQUMsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxLQUFLLElBQUksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDekYsQ0FBQztBQXVDRDtBQUNPLFNBQVMsU0FBUyxDQUFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRTtBQUM3RCxJQUFJLFNBQVMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLE9BQU8sS0FBSyxZQUFZLENBQUMsR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsVUFBVSxPQUFPLEVBQUUsRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRTtBQUNoSCxJQUFJLE9BQU8sS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLE9BQU8sQ0FBQyxFQUFFLFVBQVUsT0FBTyxFQUFFLE1BQU0sRUFBRTtBQUMvRCxRQUFRLFNBQVMsU0FBUyxDQUFDLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7QUFDbkcsUUFBUSxTQUFTLFFBQVEsQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7QUFDdEcsUUFBUSxTQUFTLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBRSxNQUFNLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDLEVBQUU7QUFDdEgsUUFBUSxJQUFJLENBQUMsQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsVUFBVSxJQUFJLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7QUFDOUUsS0FBSyxDQUFDLENBQUM7QUFDUCxDQUFDO0FBQ0Q7QUFDTyxTQUFTLFdBQVcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFO0FBQzNDLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUNySCxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxPQUFPLE1BQU0sS0FBSyxVQUFVLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxXQUFXLEVBQUUsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQzdKLElBQUksU0FBUyxJQUFJLENBQUMsQ0FBQyxFQUFFLEVBQUUsT0FBTyxVQUFVLENBQUMsRUFBRSxFQUFFLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUU7QUFDdEUsSUFBSSxTQUFTLElBQUksQ0FBQyxFQUFFLEVBQUU7QUFDdEIsUUFBUSxJQUFJLENBQUMsRUFBRSxNQUFNLElBQUksU0FBUyxDQUFDLGlDQUFpQyxDQUFDLENBQUM7QUFDdEUsUUFBUSxPQUFPLENBQUMsRUFBRSxJQUFJO0FBQ3RCLFlBQVksSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDekssWUFBWSxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3BELFlBQVksUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQ3pCLGdCQUFnQixLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxNQUFNO0FBQzlDLGdCQUFnQixLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUM7QUFDeEUsZ0JBQWdCLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7QUFDakUsZ0JBQWdCLEtBQUssQ0FBQyxFQUFFLEVBQUUsR0FBRyxDQUFDLENB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 diff --git a/.obsidian/plugins/find-unlinked-files/manifest.json b/.obsidian/plugins/find-unlinked-files/manifest.json index a271583e..e5626436 100644 --- a/.obsidian/plugins/find-unlinked-files/manifest.json +++ b/.obsidian/plugins/find-unlinked-files/manifest.json @@ -1,9 +1,9 @@ { "id": "find-unlinked-files", "name": "Find orphaned files and broken links", - "version": "1.6.0", + "version": "1.6.1", "description": "Find files that are not linked anywhere and would otherwise be lost in your vault. In other words: files with no backlinks.", "author": "Vinzent", "authorUrl": "https://github.com/Vinzent03", "isDesktopOnly": false -} \ No newline at end of file +} diff --git a/.obsidian/plugins/obsidian-activity-history/data.json b/.obsidian/plugins/obsidian-activity-history/data.json index 13644420..d302e339 100644 --- a/.obsidian/plugins/obsidian-activity-history/data.json +++ b/.obsidian/plugins/obsidian-activity-history/data.json @@ -12,8 +12,8 @@ "checkpointList": [ { "path": "/", - "date": "2022-08-08", - "size": 6257065 + "date": "2022-08-12", + "size": 6249427 } ], "activityHistory": [ @@ -862,7 +862,23 @@ }, { "date": "2022-08-08", - "value": 19101 + "value": 19682 + }, + { + "date": "2022-08-09", + "value": 1270 + }, + { + "date": "2022-08-10", + "value": 15670 + }, + { + "date": "2022-08-11", + "value": 1119 + }, + { + "date": "2022-08-12", + "value": 1088 } ] } diff --git a/.obsidian/plugins/obsidian-commits/data.json b/.obsidian/plugins/obsidian-commits/data.json index 9c3ec851..a9d76168 100644 --- a/.obsidian/plugins/obsidian-commits/data.json +++ b/.obsidian/plugins/obsidian-commits/data.json @@ -2775,9 +2775,9 @@ "links": 2 }, "06.02 Investments/VC Tasks.md": { - "size": 7809, + "size": 3838, "tags": 3, - "links": 6 + "links": 7 }, "06.02 Investments/@Investment Task master.md": { "size": 3317, @@ -2785,7 +2785,7 @@ "links": 6 }, "06.02 Investments/Crypto Tasks.md": { - "size": 8855, + "size": 5196, "tags": 3, "links": 11 }, @@ -2860,7 +2860,7 @@ "links": 3 }, "06.02 Investments/Equity Tasks.md": { - "size": 8259, + "size": 3843, "tags": 3, "links": 4 }, @@ -3225,7 +3225,7 @@ "links": 6 }, "00.01 Admin/Calendars/2022-01-23.md": { - "size": 1158, + "size": 1330, "tags": 3, "links": 7 }, @@ -3235,7 +3235,7 @@ "links": 5 }, "00.01 Admin/Calendars/2022-01-25.md": { - "size": 938, + "size": 1119, "tags": 0, "links": 4 }, @@ -3500,7 +3500,7 @@ "links": 5 }, "00.01 Admin/Calendars/2022-04-10.md": { - "size": 1139, + "size": 1264, "tags": 0, "links": 6 }, @@ -4609,11 +4609,6 @@ "tags": 0, "links": 3 }, - "00.01 Admin/Calendars/2022-08-11 Meg's mum back to Belfast.md": { - "size": 162, - "tags": 0, - "links": 3 - }, "00.01 Admin/Calendars/2022-07-22.md": { "size": 1108, "tags": 0, @@ -4732,45 +4727,80 @@ "00.03 News/Moral Panics Come and Go. Sex Bracelet Hysteria Is Forever..md": { "size": 21181, "tags": 3, - "links": 1 + "links": 2 }, "00.03 News/Seven years of sex abuse How Mormon officials let it happen.md": { "size": 27161, "tags": 3, - "links": 1 + "links": 2 }, "00.03 News/The Most Surveilled Place in America.md": { "size": 51162, "tags": 3, - "links": 1 + "links": 2 }, "00.03 News/Sam Taggart’s Hard Sell.md": { "size": 59075, "tags": 3, - "links": 1 + "links": 2 }, "00.03 News/While Britain burns, the Tories are … fiddling with themselves again Marina Hyde.md": { "size": 9157, "tags": 3, - "links": 1 + "links": 2 }, "00.03 News/Why Putting Solar Canopies on Parking Lots Is a Smart Green Move.md": { "size": 16678, "tags": 4, - "links": 1 + "links": 2 }, "00.01 Admin/Calendars/2022-08-08.md": { "size": 1210, "tags": 0, "links": 4 + }, + "00.01 Admin/Calendars/2022-08-09.md": { + "size": 1210, + "tags": 0, + "links": 4 + }, + "00.01 Admin/Calendars/2022-08-10.md": { + "size": 1356, + "tags": 0, + "links": 7 + }, + "00.01 Admin/Calendars/2022-08-10 Meg's mum back to Belfast.md": { + "size": 162, + "tags": 0, + "links": 3 + }, + "00.01 Admin/Calendars/2022-08-11 Reparation Oignon LIP.md": { + "size": 239, + "tags": 0, + "links": 2 + }, + "archive.md": { + "size": 0, + "tags": 0, + "links": 0 + }, + "00.01 Admin/Calendars/2022-08-11.md": { + "size": 1195, + "tags": 0, + "links": 4 + }, + "00.01 Admin/Calendars/2022-08-12.md": { + "size": 1195, + "tags": 0, + "links": 4 } }, "commitTypes": { "/": { - "Refactor": 650, - "Create": 627, - "Link": 1263, - "Expand": 636 + "Refactor": 655, + "Create": 633, + "Link": 1278, + "Expand": 642 } }, "dailyCommits": { @@ -4782,32 +4812,32 @@ "4": 12, "5": 6, "6": 23, - "7": 213, - "8": 358, - "9": 314, - "10": 169, - "11": 116, - "12": 133, - "13": 252, + "7": 216, + "8": 359, + "9": 317, + "10": 173, + "11": 120, + "12": 137, + "13": 260, "14": 177, - "15": 115, - "16": 102, + "15": 117, + "16": 103, "17": 130, "18": 316, "19": 165, "20": 133, "21": 73, - "22": 226, + "22": 228, "23": 52 } }, "weeklyCommits": { "/": { - "Mon": 556, - "Tue": 258, - "Wed": 301, - "Thu": 354, - "Fri": 298, + "Mon": 559, + "Tue": 263, + "Wed": 319, + "Thu": 358, + "Fri": 300, "Sat": 0, "Sun": 1409 } @@ -4815,6 +4845,12 @@ "recentCommits": { "/": { "Expanded": [ + " 2022-04-10 ", + " 2022-08-10 ", + " 2022-08-11 Reparation Oignon LIP ", + " 2022-08-12 Reparation Oignon LIP ", + " 2022-01-25 ", + " 2022-01-23 ", " 2022-01-31 ", " 2022-02-04 ", " 2022-02-10 ", @@ -4859,15 +4895,15 @@ " 2022-03-12 ", " 2022-03-13 ", " 2022-03-17 ", - " 2022-03-24 ", - " 2022-03-30 ", - " 2022-03-31 ", - " 2022-03-21 ", - " 2022-03-25 ", - " 2022-03-28 ", - " 2022-03-29 " + " 2022-03-24 " ], "Created": [ + " 2022-08-12 ", + " 2022-08-11 ", + " archive ", + " 2022-08-12 Reparation Oignon LIP ", + " 2022-08-10 ", + " 2022-08-09 ", " 2022-08-08 ", " Why Putting Solar Canopies on Parking Lots Is a Smart Green Move ", " While Britain burns, the Tories are … fiddling with themselves again Marina Hyde ", @@ -4912,15 +4948,11 @@ " Scenes from an Open Marriage - The Paris Review ", " Saudi Crown Prince’s $500 Billion ’Smart City’ Faces Major Setbacks ", " Hollywood's Finest series on pregnancy and homelessness - Los Angeles Times ", - " It was a secret road map for breaking the law to get an abortion. Now, ‘The List’ and its tactics are resurfacing ", - " The Surprising Evolution of Dinner Parties ", - " 2022-07-17 ", - " Untitled ", - " Untitled ", - " 2022-07-16 ", - " 2022-07-15 " + " It was a secret road map for breaking the law to get an abortion. Now, ‘The List’ and its tactics are resurfacing " ], "Renamed": [ + " 2022-08-11 Reparation Oignon LIP ", + " 2022-08-10 Meg's mum back to Belfast ", " Why Putting Solar Canopies on Parking Lots Is a Smart Green Move ", " While Britain burns, the Tories are … fiddling with themselves again Marina Hyde ", " Sam Taggart’s Hard Sell ", @@ -4969,9 +5001,7 @@ " Amélie Solanet ", " @Bahrein ", " Bahrein ", - " The Biggest Change in Media Since Cable Is Happening Right Now ", - " Jeff Bezos’s Next Monopoly The Press ", - " At 88, Poker Legend Doyle Brunson Is Still Bluffing. Or Is He " + " The Biggest Change in Media Since Cable Is Happening Right Now " ], "Tagged": [ " Why Putting Solar Canopies on Parking Lots Is a Smart Green Move ", @@ -5068,7 +5098,10 @@ " Avignon ", " Bahrein ", " Obsidian plugins ", - " @Reading master " + " @Reading master ", + " Equity Tasks ", + " Crypto Tasks ", + " VC Tasks " ], "Deleted": [ " Inside Putin's Anti-Semitic Turn ", @@ -5124,6 +5157,21 @@ " unlinked files output " ], "Linked": [ + " 2022-08-12 ", + " Sam Taggart’s Hard Sell ", + " 2022-08-11 ", + " While Britain burns, the Tories are … fiddling with themselves again Marina Hyde ", + " 2022-08-10 ", + " 2022-08-10 ", + " VC Tasks ", + " 2022-08-11 Reparation Oignon LIP ", + " 2022-08-12 Reparation Oignon LIP ", + " 2022-08-10 ", + " Seven years of sex abuse How Mormon officials let it happen ", + " The Most Surveilled Place in America ", + " Moral Panics Come and Go. Sex Bracelet Hysteria Is Forever. ", + " 2022-08-09 ", + " Why Putting Solar Canopies on Parking Lots Is a Smart Green Move ", " 2022-08-08 ", " Why Putting Solar Canopies on Parking Lots Is a Smart Green Move ", " Disaster at 18,200 feet ", @@ -5159,22 +5207,7 @@ " The Age of the Superyacht ", " Saudi Crown Prince’s $500 Billion ’Smart City’ Faces Major Setbacks ", " 2022-07-26 ", - " Meet the Lobbyist Next Door ", - " The Age of the Superyacht ", - " 2022-07-25 ", - " 2022-07-24 ", - " It was a secret road map for breaking the law to get an abortion. Now, ‘The List’ and its tactics are resurfacing ", - " 2022-07-23 ", - " 2022-08-05 Megan & mum back ", - " 2022-07-22 ", - " 2022-07-29 Megan - Belfast ", - " 2022-08-05 Megan & mum back ", - " 2022-08-11 Meg's mum back to Belfast ", - " 2022-07-21 ", - " 2022-07-20 ", - " 2022-07-19 ", - " 2022-07-18 ", - " Scenes from an Open Marriage - The Paris Review " + " Meet the Lobbyist Next Door " ], "Removed Tags from": [ " Le Miel de Paris ", diff --git a/.obsidian/plugins/obsidian-reminder-plugin/data.json b/.obsidian/plugins/obsidian-reminder-plugin/data.json index f2a3ff6a..32ee3452 100644 --- a/.obsidian/plugins/obsidian-reminder-plugin/data.json +++ b/.obsidian/plugins/obsidian-reminder-plugin/data.json @@ -342,29 +342,29 @@ ], "01.02 Home/Household.md": [ { - "title": "♻ [[Household]]: *Cardboard* recycling collection", - "time": "2022-08-09", - "rowNumber": 88 - }, - { - "title": ":bed: [[Household]] Change bedsheets", + "title": ":bed: [[Household]] Change bedsheets %%done_del%%", "time": "2022-08-13", - "rowNumber": 123 + "rowNumber": 124 }, { "title": "🛎 🧻 REMINDER [[Household]]: check need for toilet paper", "time": "2022-08-15", - "rowNumber": 111 + "rowNumber": 112 }, { "title": "♻ [[Household]]: *Paper* recycling collection", "time": "2022-08-16", "rowNumber": 72 }, + { + "title": "♻ [[Household]]: *Cardboard* recycling collection", + "time": "2022-08-23", + "rowNumber": 88 + }, { "title": "🛎 🛍 REMINDER [[Household]]: Monthly shop in France", "time": "2022-08-27", - "rowNumber": 108 + "rowNumber": 109 } ], "01.03 Family/Pia Bousquié.md": [ @@ -462,28 +462,43 @@ ], "06.02 Investments/VC Tasks.md": [ { - "title": "💰[[VC Tasks#internet alerts|monitor VC news and publications]]", + "title": "💰[[VC Tasks#internet alerts|monitor VC news and publications]] %%done_del%%", "time": "2022-08-12", "rowNumber": 74 } ], "06.02 Investments/Crypto Tasks.md": [ { - "title": "💰[[Crypto Tasks#internet alerts|monitor Crypto news and publications]]", + "title": "💰[[Crypto Tasks#internet alerts|monitor Crypto news and publications]] %%done_del%%", "time": "2022-08-12", "rowNumber": 74 + }, + { + "title": "Check [[Nimbus]] earnings %%done_del%%", + "time": "2022-08-15", + "rowNumber": 76 + }, + { + "title": "Vote for [[EOS]] block producers %%done_del%%", + "time": "2022-08-16", + "rowNumber": 75 + }, + { + "title": "Find staking for [[Aragon]]", + "time": "2022-09-30", + "rowNumber": 77 } ], "06.02 Investments/Equity Tasks.md": [ { - "title": "💰[[Equity Tasks#internet alerts|monitor Equity news and publications]]", + "title": "💰[[Equity Tasks#internet alerts|monitor Equity news and publications]] %%done_del%%", "time": "2022-08-12", "rowNumber": 74 } ], "05.02 Networks/Configuring UFW.md": [ { - "title": "🖥 [[Selfhosting]], [[Configuring UFW|Firewall]] Get IP addresses caught by Postfix", + "title": "🖥 [[Selfhosting]], [[Configuring UFW|Firewall]] Get IP addresses caught by Postfix %%done_del%%", "time": "2022-08-13", "rowNumber": 239 }, @@ -507,13 +522,6 @@ "rowNumber": 87 } ], - "00.01 Admin/Calendars/2022-04-10.md": [ - { - "title": "21:01 :stopwatch: [[2022-04-10|Memo]], [[Amaury de Villeneuve|Chapal]]: trouver un réparateur pour l'oignon Lipp", - "time": "2022-08-10", - "rowNumber": 91 - } - ], "00.01 Admin/Calendars/2022-06-04.md": [ { "title": "17:30 :desktop_computer: [[Selfhosting]], [[Server Cloud]], [[2022-06-04|Memo]]: Split [[Nextcloud]] into Seafile & caldav server", diff --git a/.obsidian/plugins/obsidian-tasks-plugin/main.js b/.obsidian/plugins/obsidian-tasks-plugin/main.js index 797fba05..9da0a4af 100644 --- a/.obsidian/plugins/obsidian-tasks-plugin/main.js +++ b/.obsidian/plugins/obsidian-tasks-plugin/main.js @@ -122,67 +122,30 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -var p_=Object.create;var On=Object.defineProperty,h_=Object.defineProperties,m_=Object.getOwnPropertyDescriptor,y_=Object.getOwnPropertyDescriptors,g_=Object.getOwnPropertyNames,$d=Object.getOwnPropertySymbols,__=Object.getPrototypeOf,Bd=Object.prototype.hasOwnProperty,T_=Object.prototype.propertyIsEnumerable;var jd=(r,e,t)=>e in r?On(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Ye=(r,e)=>{for(var t in e||(e={}))Bd.call(e,t)&&jd(r,t,e[t]);if($d)for(var t of $d(e))T_.call(e,t)&&jd(r,t,e[t]);return r},It=(r,e)=>h_(r,y_(e));var p=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),b_=(r,e)=>{for(var t in e)On(r,t,{get:e[t],enumerable:!0})},Gd=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of g_(e))!Bd.call(r,i)&&i!==t&&On(r,i,{get:()=>e[i],enumerable:!(n=m_(e,i))||n.enumerable});return r};var as=(r,e,t)=>(t=r!=null?p_(__(r)):{},Gd(e||!r||!r.__esModule?On(t,"default",{value:r,enumerable:!0}):t,r)),v_=r=>Gd(On({},"__esModule",{value:!0}),r);var ne=(r,e,t)=>new Promise((n,i)=>{var s=u=>{try{o(t.next(u))}catch(l){i(l)}},a=u=>{try{o(t.throw(u))}catch(l){i(l)}},o=u=>u.done?n(u.value):Promise.resolve(u.value).then(s,a);o((t=t.apply(r,e)).next())});var Tf=p((pA,fs)=>{var Qd,Jd,ef,tf,rf,nf,sf,af,of,ds,Ha,uf,lf,Vr,cf,df,ff,pf,hf,mf,yf,gf,_f;(function(r){var e=typeof global=="object"?global:typeof self=="object"?self:typeof this=="object"?this:{};typeof define=="function"&&define.amd?define("tslib",["exports"],function(n){r(t(e,t(n)))}):typeof fs=="object"&&typeof fs.exports=="object"?r(t(e,t(fs.exports))):r(t(e));function t(n,i){return n!==e&&(typeof Object.create=="function"?Object.defineProperty(n,"__esModule",{value:!0}):n.__esModule=!0),function(s,a){return n[s]=i?i(s,a):a}}})(function(r){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,n){t.__proto__=n}||function(t,n){for(var i in n)n.hasOwnProperty(i)&&(t[i]=n[i])};Qd=function(t,n){e(t,n);function i(){this.constructor=t}t.prototype=n===null?Object.create(n):(i.prototype=n.prototype,new i)},Jd=Object.assign||function(t){for(var n,i=1,s=arguments.length;i=0;l--)(u=t[l])&&(o=(a<3?u(o):a>3?u(n,i,o):u(n,i))||o);return a>3&&o&&Object.defineProperty(n,i,o),o},rf=function(t,n){return function(i,s){n(i,s,t)}},nf=function(t,n){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(t,n)},sf=function(t,n,i,s){function a(o){return o instanceof i?o:new i(function(u){u(o)})}return new(i||(i=Promise))(function(o,u){function l(f){try{d(s.next(f))}catch(h){u(h)}}function c(f){try{d(s.throw(f))}catch(h){u(h)}}function d(f){f.done?o(f.value):a(f.value).then(l,c)}d((s=s.apply(t,n||[])).next())})},af=function(t,n){var i={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},s,a,o,u;return u={next:l(0),throw:l(1),return:l(2)},typeof Symbol=="function"&&(u[Symbol.iterator]=function(){return this}),u;function l(d){return function(f){return c([d,f])}}function c(d){if(s)throw new TypeError("Generator is already executing.");for(;i;)try{if(s=1,a&&(o=d[0]&2?a.return:d[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,d[1])).done)return o;switch(a=0,o&&(d=[d[0]&2,o.value]),d[0]){case 0:case 1:o=d;break;case 4:return i.label++,{value:d[1],done:!1};case 5:i.label++,a=d[1],d=[0];continue;case 7:d=i.ops.pop(),i.trys.pop();continue;default:if(o=i.trys,!(o=o.length>0&&o[o.length-1])&&(d[0]===6||d[0]===2)){i=0;continue}if(d[0]===3&&(!o||d[1]>o[0]&&d[1]=t.length&&(t=void 0),{value:t&&t[s++],done:!t}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")},Ha=function(t,n){var i=typeof Symbol=="function"&&t[Symbol.iterator];if(!i)return t;var s=i.call(t),a,o=[],u;try{for(;(n===void 0||n-- >0)&&!(a=s.next()).done;)o.push(a.value)}catch(l){u={error:l}}finally{try{a&&!a.done&&(i=s.return)&&i.call(s)}finally{if(u)throw u.error}}return o},uf=function(){for(var t=[],n=0;n1||l(m,y)})})}function l(m,y){try{c(s[m](y))}catch(g){h(o[0][3],g)}}function c(m){m.value instanceof Vr?Promise.resolve(m.value.v).then(d,f):h(o[0][2],m)}function d(m){l("next",m)}function f(m){l("throw",m)}function h(m,y){m(y),o.shift(),o.length&&l(o[0][0],o[0][1])}},df=function(t){var n,i;return n={},s("next"),s("throw",function(a){throw a}),s("return"),n[Symbol.iterator]=function(){return this},n;function s(a,o){n[a]=t[a]?function(u){return(i=!i)?{value:Vr(t[a](u)),done:a==="return"}:o?o(u):u}:o}},ff=function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n=t[Symbol.asyncIterator],i;return n?n.call(t):(t=typeof ds=="function"?ds(t):t[Symbol.iterator](),i={},s("next"),s("throw"),s("return"),i[Symbol.asyncIterator]=function(){return this},i);function s(o){i[o]=t[o]&&function(u){return new Promise(function(l,c){u=t[o](u),a(l,c,u.done,u.value)})}}function a(o,u,l,c){Promise.resolve(c).then(function(d){o({value:d,done:l})},u)}},pf=function(t,n){return Object.defineProperty?Object.defineProperty(t,"raw",{value:n}):t.raw=n,t},hf=function(t){if(t&&t.__esModule)return t;var n={};if(t!=null)for(var i in t)Object.hasOwnProperty.call(t,i)&&(n[i]=t[i]);return n.default=t,n},mf=function(t){return t&&t.__esModule?t:{default:t}},yf=function(t,n){if(!n.has(t))throw new TypeError("attempted to get private field on non-instance");return n.get(t)},gf=function(t,n,i){if(!n.has(t))throw new TypeError("attempted to set private field on non-instance");return n.set(t,i),i},r("__extends",Qd),r("__assign",Jd),r("__rest",ef),r("__decorate",tf),r("__param",rf),r("__metadata",nf),r("__awaiter",sf),r("__generator",af),r("__exportStar",of),r("__createBinding",_f),r("__values",ds),r("__read",Ha),r("__spread",uf),r("__spreadArrays",lf),r("__await",Vr),r("__asyncGenerator",cf),r("__asyncDelegator",df),r("__asyncValues",ff),r("__makeTemplateObject",pf),r("__importStar",hf),r("__importDefault",mf),r("__classPrivateFieldGet",yf),r("__classPrivateFieldSet",gf)})});var Q=p(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.matchAnyPattern=pr.extractTerms=pr.repeatedTimeunitPattern=void 0;function fT(r,e){let t=e.replace(/\((?!\?)/g,"(?:");return`${r}${t}\\s{0,5}(?:,?\\s{0,5}${t}){0,10}`}pr.repeatedTimeunitPattern=fT;function pp(r){let e;return r instanceof Array?e=[...r]:r instanceof Map?e=Array.from(r.keys()):e=Object.keys(r),e}pr.extractTerms=pp;function pT(r){return`(?:${pp(r).sort((t,n)=>n.length-t.length).join("|").replace(/\./g,"\\.")})`}pr.matchAnyPattern=pT});var K=p((so,ao)=>{(function(r,e){typeof so=="object"&&typeof ao!="undefined"?ao.exports=e():typeof define=="function"&&define.amd?define(e):(r=typeof globalThis!="undefined"?globalThis:r||self).dayjs=e()})(so,function(){"use strict";var r=1e3,e=6e4,t=36e5,n="millisecond",i="second",s="minute",a="hour",o="day",u="week",l="month",c="quarter",d="year",f="date",h="Invalid Date",m=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,g={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},O=function(D,v,_){var M=String(D);return!M||M.length>=v?D:""+Array(v+1-M.length).join(_)+D},S={s:O,z:function(D){var v=-D.utcOffset(),_=Math.abs(v),M=Math.floor(_/60),b=_%60;return(v<=0?"+":"-")+O(M,2,"0")+":"+O(b,2,"0")},m:function D(v,_){if(v.date()<_.date())return-D(_,v);var M=12*(_.year()-v.year())+(_.month()-v.month()),b=v.clone().add(M,l),k=_-b<0,P=v.clone().add(M+(k?-1:1),l);return+(-(M+(_-b)/(k?b-P:P-b))||0)},a:function(D){return D<0?Math.ceil(D)||0:Math.floor(D)},p:function(D){return{M:l,y:d,w:u,d:o,D:f,h:a,m:s,s:i,ms:n,Q:c}[D]||String(D||"").toLowerCase().replace(/s$/,"")},u:function(D){return D===void 0}},N="en",z={};z[N]=g;var te=function(D){return D instanceof Ie},le=function(D,v,_){var M;if(!D)return N;if(typeof D=="string")z[D]&&(M=D),v&&(z[D]=v,M=D);else{var b=D.name;z[b]=D,M=b}return!_&&M&&(N=M),M||!_&&N},x=function(D,v){if(te(D))return D.clone();var _=typeof v=="object"?v:{};return _.date=D,_.args=arguments,new Ie(_)},w=S;w.l=le,w.i=te,w.w=function(D,v){return x(D,{locale:v.$L,utc:v.$u,x:v.$x,$offset:v.$offset})};var Ie=function(){function D(_){this.$L=le(_.locale,null,!0),this.parse(_)}var v=D.prototype;return v.parse=function(_){this.$d=function(M){var b=M.date,k=M.utc;if(b===null)return new Date(NaN);if(w.u(b))return new Date;if(b instanceof Date)return new Date(b);if(typeof b=="string"&&!/Z$/i.test(b)){var P=b.match(m);if(P){var Y=P[2]-1||0,J=(P[7]||"0").substring(0,3);return k?new Date(Date.UTC(P[1],Y,P[3]||1,P[4]||0,P[5]||0,P[6]||0,J)):new Date(P[1],Y,P[3]||1,P[4]||0,P[5]||0,P[6]||0,J)}}return new Date(b)}(_),this.$x=_.x||{},this.init()},v.init=function(){var _=this.$d;this.$y=_.getFullYear(),this.$M=_.getMonth(),this.$D=_.getDate(),this.$W=_.getDay(),this.$H=_.getHours(),this.$m=_.getMinutes(),this.$s=_.getSeconds(),this.$ms=_.getMilliseconds()},v.$utils=function(){return w},v.isValid=function(){return this.$d.toString()!==h},v.isSame=function(_,M){var b=x(_);return this.startOf(M)<=b&&b<=this.endOf(M)},v.isAfter=function(_,M){return x(_){"use strict";var hT=hr&&hr.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(hr,"__esModule",{value:!0});hr.findYearClosestToRef=hr.findMostLikelyADYear=void 0;var mT=hT(K());function yT(r){return r<100&&(r>50?r=r+1900:r=r+2e3),r}hr.findMostLikelyADYear=yT;function gT(r,e,t){let n=mT.default(r),i=n;i=i.month(t-1),i=i.date(e),i=i.year(n.year());let s=i.add(1,"y"),a=i.add(-1,"y");return Math.abs(s.diff(n)){"use strict";Object.defineProperty(U,"__esModule",{value:!0});U.parseTimeUnits=U.TIME_UNITS_PATTERN=U.parseYear=U.YEAR_PATTERN=U.parseOrdinalNumberPattern=U.ORDINAL_NUMBER_PATTERN=U.parseNumberPattern=U.NUMBER_PATTERN=U.TIME_UNIT_DICTIONARY=U.ORDINAL_WORD_DICTIONARY=U.INTEGER_WORD_DICTIONARY=U.MONTH_DICTIONARY=U.FULL_MONTH_NAME_DICTIONARY=U.WEEKDAY_DICTIONARY=void 0;var vs=Q(),_T=Ce();U.WEEKDAY_DICTIONARY={sunday:0,sun:0,"sun.":0,monday:1,mon:1,"mon.":1,tuesday:2,tue:2,"tue.":2,wednesday:3,wed:3,"wed.":3,thursday:4,thurs:4,"thurs.":4,thur:4,"thur.":4,thu:4,"thu.":4,friday:5,fri:5,"fri.":5,saturday:6,sat:6,"sat.":6};U.FULL_MONTH_NAME_DICTIONARY={january:1,february:2,march:3,april:4,may:5,june:6,july:7,august:8,september:9,october:10,november:11,december:12};U.MONTH_DICTIONARY=Object.assign(Object.assign({},U.FULL_MONTH_NAME_DICTIONARY),{jan:1,"jan.":1,feb:2,"feb.":2,mar:3,"mar.":3,apr:4,"apr.":4,jun:6,"jun.":6,jul:7,"jul.":7,aug:8,"aug.":8,sep:9,"sep.":9,sept:9,"sept.":9,oct:10,"oct.":10,nov:11,"nov.":11,dec:12,"dec.":12});U.INTEGER_WORD_DICTIONARY={one:1,two:2,three:3,four:4,five:5,six:6,seven:7,eight:8,nine:9,ten:10,eleven:11,twelve:12};U.ORDINAL_WORD_DICTIONARY={first:1,second:2,third:3,fourth:4,fifth:5,sixth:6,seventh:7,eighth:8,ninth:9,tenth:10,eleventh:11,twelfth:12,thirteenth:13,fourteenth:14,fifteenth:15,sixteenth:16,seventeenth:17,eighteenth:18,nineteenth:19,twentieth:20,"twenty first":21,"twenty-first":21,"twenty second":22,"twenty-second":22,"twenty third":23,"twenty-third":23,"twenty fourth":24,"twenty-fourth":24,"twenty fifth":25,"twenty-fifth":25,"twenty sixth":26,"twenty-sixth":26,"twenty seventh":27,"twenty-seventh":27,"twenty eighth":28,"twenty-eighth":28,"twenty ninth":29,"twenty-ninth":29,thirtieth:30,"thirty first":31,"thirty-first":31};U.TIME_UNIT_DICTIONARY={sec:"second",second:"second",seconds:"second",min:"minute",mins:"minute",minute:"minute",minutes:"minute",h:"hour",hr:"hour",hrs:"hour",hour:"hour",hours:"hour",day:"d",days:"d",week:"week",weeks:"week",month:"month",months:"month",qtr:"quarter",quarter:"quarter",quarters:"quarter",y:"year",yr:"year",year:"year",years:"year"};U.NUMBER_PATTERN=`(?:${vs.matchAnyPattern(U.INTEGER_WORD_DICTIONARY)}|[0-9]+|[0-9]+\\.[0-9]+|half(?:\\s{0,2}an?)?|an?\\b(?:\\s{0,2}few)?|few|several|a?\\s{0,2}couple\\s{0,2}(?:of)?)`;function mp(r){let e=r.toLowerCase();return U.INTEGER_WORD_DICTIONARY[e]!==void 0?U.INTEGER_WORD_DICTIONARY[e]:e==="a"||e==="an"?1:e.match(/few/)?3:e.match(/half/)?.5:e.match(/couple/)?2:e.match(/several/)?7:parseFloat(e)}U.parseNumberPattern=mp;U.ORDINAL_NUMBER_PATTERN=`(?:${vs.matchAnyPattern(U.ORDINAL_WORD_DICTIONARY)}|[0-9]{1,2}(?:st|nd|rd|th)?)`;function TT(r){let e=r.toLowerCase();return U.ORDINAL_WORD_DICTIONARY[e]!==void 0?U.ORDINAL_WORD_DICTIONARY[e]:(e=e.replace(/(?:st|nd|rd|th)$/i,""),parseInt(e))}U.parseOrdinalNumberPattern=TT;U.YEAR_PATTERN="(?:[1-9][0-9]{0,3}\\s{0,2}(?:BE|AD|BC|BCE|CE)|[1-2][0-9]{3}|[5-9][0-9])";function bT(r){if(/BE/i.test(r))return r=r.replace(/BE/i,""),parseInt(r)-543;if(/BCE?/i.test(r))return r=r.replace(/BCE?/i,""),-parseInt(r);if(/(AD|CE)/i.test(r))return r=r.replace(/(AD|CE)/i,""),parseInt(r);let e=parseInt(r);return _T.findMostLikelyADYear(e)}U.parseYear=bT;var yp=`(${U.NUMBER_PATTERN})\\s{0,3}(${vs.matchAnyPattern(U.TIME_UNIT_DICTIONARY)})`,hp=new RegExp(yp,"i");U.TIME_UNITS_PATTERN=vs.repeatedTimeunitPattern("(?:(?:about|around)\\s{0,3})?",yp);function vT(r){let e={},t=r,n=hp.exec(t);for(;n;)ET(e,n),t=t.substring(n[0].length).trim(),n=hp.exec(t);return e}U.parseTimeUnits=vT;function ET(r,e){let t=mp(e[1]),n=U.TIME_UNIT_DICTIONARY[e[2].toLowerCase()];r[n]=t}});var gp=p((oo,uo)=>{(function(r,e){typeof oo=="object"&&typeof uo!="undefined"?uo.exports=e():typeof define=="function"&&define.amd?define(e):(r=typeof globalThis!="undefined"?globalThis:r||self).dayjs_plugin_quarterOfYear=e()})(oo,function(){"use strict";var r="month",e="quarter";return function(t,n){var i=n.prototype;i.quarter=function(o){return this.$utils().u(o)?Math.ceil((this.month()+1)/3):this.month(this.month()%3+3*(o-1))};var s=i.add;i.add=function(o,u){return o=Number(o),this.$utils().p(u)===e?this.add(3*o,r):s.bind(this)(o,u)};var a=i.startOf;i.startOf=function(o,u){var l=this.$utils(),c=!!l.u(u)||u;if(l.p(o)===e){var d=this.quarter()-1;return c?this.month(3*d).startOf(r).startOf("day"):this.month(3*d+2).endOf(r).endOf("day")}return a.bind(this)(o,u)}}})});var rt=p(Mt=>{"use strict";Object.defineProperty(Mt,"__esModule",{value:!0});Mt.implySimilarTime=Mt.assignSimilarTime=Mt.assignSimilarDate=Mt.assignTheNextDay=void 0;var _p=Te();function RT(r,e){e=e.add(1,"day"),Tp(r,e),bp(r,e)}Mt.assignTheNextDay=RT;function Tp(r,e){r.assign("day",e.date()),r.assign("month",e.month()+1),r.assign("year",e.year())}Mt.assignSimilarDate=Tp;function wT(r,e){r.assign("hour",e.hour()),r.assign("minute",e.minute()),r.assign("second",e.second()),r.assign("millisecond",e.millisecond()),r.get("hour")<12?r.assign("meridiem",_p.Meridiem.AM):r.assign("meridiem",_p.Meridiem.PM)}Mt.assignSimilarTime=wT;function bp(r,e){r.imply("hour",e.hour()),r.imply("minute",e.minute()),r.imply("second",e.second()),r.imply("millisecond",e.millisecond())}Mt.implySimilarTime=bp});var vp=p(Cr=>{"use strict";Object.defineProperty(Cr,"__esModule",{value:!0});Cr.toTimezoneOffset=Cr.TIMEZONE_ABBR_MAP=void 0;Cr.TIMEZONE_ABBR_MAP={ACDT:630,ACST:570,ADT:-180,AEDT:660,AEST:600,AFT:270,AKDT:-480,AKST:-540,ALMT:360,AMST:-180,AMT:-240,ANAST:720,ANAT:720,AQTT:300,ART:-180,AST:-240,AWDT:540,AWST:480,AZOST:0,AZOT:-60,AZST:300,AZT:240,BNT:480,BOT:-240,BRST:-120,BRT:-180,BST:60,BTT:360,CAST:480,CAT:120,CCT:390,CDT:-300,CEST:120,CET:60,CHADT:825,CHAST:765,CKT:-600,CLST:-180,CLT:-240,COT:-300,CST:-360,CVT:-60,CXT:420,ChST:600,DAVT:420,EASST:-300,EAST:-360,EAT:180,ECT:-300,EDT:-240,EEST:180,EET:120,EGST:0,EGT:-60,EST:-300,ET:-300,FJST:780,FJT:720,FKST:-180,FKT:-240,FNT:-120,GALT:-360,GAMT:-540,GET:240,GFT:-180,GILT:720,GMT:0,GST:240,GYT:-240,HAA:-180,HAC:-300,HADT:-540,HAE:-240,HAP:-420,HAR:-360,HAST:-600,HAT:-90,HAY:-480,HKT:480,HLV:-210,HNA:-240,HNC:-360,HNE:-300,HNP:-480,HNR:-420,HNT:-150,HNY:-540,HOVT:420,ICT:420,IDT:180,IOT:360,IRDT:270,IRKST:540,IRKT:540,IRST:210,IST:330,JST:540,KGT:360,KRAST:480,KRAT:480,KST:540,KUYT:240,LHDT:660,LHST:630,LINT:840,MAGST:720,MAGT:720,MART:-510,MAWT:300,MDT:-360,MESZ:120,MEZ:60,MHT:720,MMT:390,MSD:240,MSK:180,MST:-420,MUT:240,MVT:300,MYT:480,NCT:660,NDT:-90,NFT:690,NOVST:420,NOVT:360,NPT:345,NST:-150,NUT:-660,NZDT:780,NZST:720,OMSST:420,OMST:420,PDT:-420,PET:-300,PETST:720,PETT:720,PGT:600,PHOT:780,PHT:480,PKT:300,PMDT:-120,PMST:-180,PONT:660,PST:-480,PT:-480,PWT:540,PYST:-180,PYT:-240,RET:240,SAMT:240,SAST:120,SBT:660,SCT:240,SGT:480,SRT:-180,SST:-660,TAHT:-600,TFT:300,TJT:300,TKT:780,TLT:540,TMT:300,TVT:720,ULAT:480,UTC:0,UYST:-120,UYT:-180,UZT:300,VET:-210,VLAST:660,VLAT:660,VUT:660,WAST:120,WAT:60,WEST:60,WESZ:60,WET:0,WEZ:0,WFT:720,WGST:-120,WGT:-180,WIB:420,WIT:540,WITA:480,WST:780,WT:0,YAKST:600,YAKT:600,YAPT:600,YEKST:360,YEKT:360};function DT(r){var e;return r==null?null:typeof r=="number"?r:(e=Cr.TIMEZONE_ABBR_MAP[r])!==null&&e!==void 0?e:null}Cr.toTimezoneOffset=DT});var de=p(Pt=>{"use strict";var Ep=Pt&&Pt.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Pt,"__esModule",{value:!0});Pt.ParsingResult=Pt.ParsingComponents=Pt.ReferenceWithTimezone=void 0;var MT=Ep(gp()),Es=Ep(K()),lo=rt(),PT=vp();Es.default.extend(MT.default);var co=class{constructor(e){var t;e=e!=null?e:new Date,e instanceof Date?this.instant=e:(this.instant=(t=e.instant)!==null&&t!==void 0?t:new Date,this.timezoneOffset=PT.toTimezoneOffset(e.timezone))}};Pt.ReferenceWithTimezone=co;var Sr=class{constructor(e,t){if(this.reference=e,this.knownValues={},this.impliedValues={},t)for(let i in t)this.knownValues[i]=t[i];let n=Es.default(e.instant);this.imply("day",n.date()),this.imply("month",n.month()+1),this.imply("year",n.year()),this.imply("hour",12),this.imply("minute",0),this.imply("second",0),this.imply("millisecond",0)}get(e){return e in this.knownValues?this.knownValues[e]:e in this.impliedValues?this.impliedValues[e]:null}isCertain(e){return e in this.knownValues}getCertainComponents(){return Object.keys(this.knownValues)}imply(e,t){return e in this.knownValues?this:(this.impliedValues[e]=t,this)}assign(e,t){return this.knownValues[e]=t,delete this.impliedValues[e],this}delete(e){delete this.knownValues[e],delete this.impliedValues[e]}clone(){let e=new Sr(this.reference);e.knownValues={},e.impliedValues={};for(let t in this.knownValues)e.knownValues[t]=this.knownValues[t];for(let t in this.impliedValues)e.impliedValues[t]=this.impliedValues[t];return e}isOnlyDate(){return!this.isCertain("hour")&&!this.isCertain("minute")&&!this.isCertain("second")}isOnlyTime(){return!this.isCertain("weekday")&&!this.isCertain("day")&&!this.isCertain("month")}isOnlyWeekdayComponent(){return this.isCertain("weekday")&&!this.isCertain("day")&&!this.isCertain("month")}isOnlyDayMonthComponent(){return this.isCertain("day")&&this.isCertain("month")&&!this.isCertain("year")}isValidDate(){let e=this.dateWithoutTimezoneAdjustment();return!(e.getFullYear()!==this.get("year")||e.getMonth()!==this.get("month")-1||e.getDate()!==this.get("day")||this.get("hour")!=null&&e.getHours()!=this.get("hour")||this.get("minute")!=null&&e.getMinutes()!=this.get("minute"))}toString(){return`[ParsingComponents {knownValues: ${JSON.stringify(this.knownValues)}, impliedValues: ${JSON.stringify(this.impliedValues)}}, reference: ${JSON.stringify(this.reference)}]`}dayjs(){return Es.default(this.date())}date(){let e=this.dateWithoutTimezoneAdjustment();return new Date(e.getTime()+this.getSystemTimezoneAdjustmentMinute(e)*6e4)}dateWithoutTimezoneAdjustment(){let e=new Date(this.get("year"),this.get("month")-1,this.get("day"),this.get("hour"),this.get("minute"),this.get("second"),this.get("millisecond"));return e.setFullYear(this.get("year")),e}getSystemTimezoneAdjustmentMinute(e){var t,n;(!e||e.getTime()<0)&&(e=new Date);let i=-e.getTimezoneOffset(),s=(n=(t=this.get("timezoneOffset"))!==null&&t!==void 0?t:this.reference.timezoneOffset)!==null&&n!==void 0?n:i;return i-s}static createRelativeFromReference(e,t){let n=Es.default(e.instant);for(let s in t)n=n.add(t[s],s);let i=new Sr(e);return t.hour||t.minute||t.second?(lo.assignSimilarTime(i,n),lo.assignSimilarDate(i,n),e.timezoneOffset!==null&&i.assign("timezoneOffset",-e.instant.getTimezoneOffset())):(lo.implySimilarTime(i,n),e.timezoneOffset!==null&&i.imply("timezoneOffset",-e.instant.getTimezoneOffset()),t.d?(i.assign("day",n.date()),i.assign("month",n.month()+1),i.assign("year",n.year())):(t.week&&i.imply("weekday",n.day()),i.imply("day",n.date()),t.month?(i.assign("month",n.month()+1),i.assign("year",n.year())):(i.imply("month",n.month()+1),t.year?i.assign("year",n.year()):i.imply("year",n.year())))),i}};Pt.ParsingComponents=Sr;var Wn=class{constructor(e,t,n,i,s){this.reference=e,this.refDate=e.instant,this.index=t,this.text=n,this.start=i||new Sr(e),this.end=s}clone(){let e=new Wn(this.reference,this.index,this.text);return e.start=this.start?this.start.clone():null,e.end=this.end?this.end.clone():null,e}date(){return this.start.date()}toString(){return`[ParsingResult {index: ${this.index}, text: '${this.text}', ...}]`}};Pt.ParsingResult=Wn});var E=p(Rs=>{"use strict";Object.defineProperty(Rs,"__esModule",{value:!0});Rs.AbstractParserWithWordBoundaryChecking=void 0;var fo=class{constructor(){this.cachedInnerPattern=null,this.cachedPattern=null}patternLeftBoundary(){return"(\\W|^)"}pattern(e){let t=this.innerPattern(e);return t==this.cachedInnerPattern?this.cachedPattern:(this.cachedPattern=new RegExp(`${this.patternLeftBoundary()}${t.source}`,t.flags),this.cachedInnerPattern=t,this.cachedPattern)}extract(e,t){var n;let i=(n=t[1])!==null&&n!==void 0?n:"";t.index=t.index+i.length,t[0]=t[0].substring(i.length);for(let s=2;s{"use strict";Object.defineProperty(mo,"__esModule",{value:!0});var ho=Se(),OT=de(),AT=E(),kT=new RegExp(`(?:within|in|for)\\s*(?:(?:about|around|roughly|approximately|just)\\s*(?:~\\s*)?)?(${ho.TIME_UNITS_PATTERN})(?=\\W|$)`,"i"),NT=new RegExp(`(?:(?:about|around|roughly|approximately|just)\\s*(?:~\\s*)?)?(${ho.TIME_UNITS_PATTERN})(?=\\W|$)`,"i"),po=class extends AT.AbstractParserWithWordBoundaryChecking{innerPattern(e){return e.option.forwardDate?NT:kT}innerExtract(e,t){let n=ho.parseTimeUnits(t[1]);return OT.ParsingComponents.createRelativeFromReference(e.reference,n)}};mo.default=po});var Ap=p(go=>{"use strict";Object.defineProperty(go,"__esModule",{value:!0});var CT=Ce(),Pp=Se(),Op=Se(),ws=Se(),ST=Q(),xT=E(),IT=new RegExp(`(?:on\\s{0,3})?(${ws.ORDINAL_NUMBER_PATTERN})(?:\\s{0,3}(?:to|\\-|\\\u2013|until|through|till)?\\s{0,3}(${ws.ORDINAL_NUMBER_PATTERN}))?(?:-|/|\\s{0,3}(?:of)?\\s{0,3})(${ST.matchAnyPattern(Pp.MONTH_DICTIONARY)})(?:(?:-|/|,?\\s{0,3})(${Op.YEAR_PATTERN}(?![^\\s]\\d)))?(?=\\W|$)`,"i"),wp=1,Dp=2,UT=3,Mp=4,yo=class extends xT.AbstractParserWithWordBoundaryChecking{innerPattern(){return IT}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=Pp.MONTH_DICTIONARY[t[UT].toLowerCase()],s=ws.parseOrdinalNumberPattern(t[wp]);if(s>31)return t.index=t.index+t[wp].length,null;if(n.start.assign("month",i),n.start.assign("day",s),t[Mp]){let a=Op.parseYear(t[Mp]);n.start.assign("year",a)}else{let a=CT.findYearClosestToRef(e.refDate,s,i);n.start.imply("year",a)}if(t[Dp]){let a=ws.parseOrdinalNumberPattern(t[Dp]);n.end=n.start.clone(),n.end.assign("day",a)}return n}};go.default=yo});var xp=p(To=>{"use strict";Object.defineProperty(To,"__esModule",{value:!0});var qT=Ce(),Cp=Se(),Ds=Se(),Sp=Se(),FT=Q(),WT=E(),LT=new RegExp(`(${FT.matchAnyPattern(Cp.MONTH_DICTIONARY)})(?:-|/|\\s*,?\\s*)(${Ds.ORDINAL_NUMBER_PATTERN})(?!\\s*(?:am|pm))\\s*(?:(?:to|\\-)\\s*(${Ds.ORDINAL_NUMBER_PATTERN})\\s*)?(?:(?:-|/|\\s*,?\\s*)(${Sp.YEAR_PATTERN}))?(?=\\W|$)(?!\\:\\d)`,"i"),YT=1,$T=2,kp=3,Np=4,_o=class extends WT.AbstractParserWithWordBoundaryChecking{innerPattern(){return LT}innerExtract(e,t){let n=Cp.MONTH_DICTIONARY[t[YT].toLowerCase()],i=Ds.parseOrdinalNumberPattern(t[$T]);if(i>31)return null;let s=e.createParsingComponents({day:i,month:n});if(t[Np]){let u=Sp.parseYear(t[Np]);s.assign("year",u)}else{let u=qT.findYearClosestToRef(e.refDate,i,n);s.imply("year",u)}if(!t[kp])return s;let a=Ds.parseOrdinalNumberPattern(t[kp]),o=e.createParsingResult(t.index,t[0]);return o.start=s,o.end=s.clone(),o.end.assign("day",a),o}};To.default=_o});var qp=p(Eo=>{"use strict";Object.defineProperty(Eo,"__esModule",{value:!0});var bo=Se(),jT=Ce(),BT=Q(),Up=Se(),GT=E(),HT=new RegExp(`((?:in)\\s*)?(${BT.matchAnyPattern(bo.MONTH_DICTIONARY)})\\s*(?:[,-]?\\s*(${Up.YEAR_PATTERN})?)?(?=[^\\s\\w]|\\s+[^0-9]|\\s+$|$)`,"i"),zT=1,KT=2,Ip=3,vo=class extends GT.AbstractParserWithWordBoundaryChecking{innerPattern(){return HT}innerExtract(e,t){let n=t[KT].toLowerCase();if(t[0].length<=3&&!bo.FULL_MONTH_NAME_DICTIONARY[n])return null;let i=e.createParsingResult(t.index+(t[zT]||"").length,t.index+t[0].length);i.start.imply("day",1);let s=bo.MONTH_DICTIONARY[n];if(i.start.assign("month",s),t[Ip]){let a=Up.parseYear(t[Ip]);i.start.assign("year",a)}else{let a=jT.findYearClosestToRef(e.refDate,1,s);i.start.imply("year",a)}return i}};Eo.default=vo});var Lp=p(wo=>{"use strict";Object.defineProperty(wo,"__esModule",{value:!0});var Wp=Se(),VT=Q(),ZT=E(),XT=new RegExp(`([0-9]{4})[\\.\\/\\s](?:(${VT.matchAnyPattern(Wp.MONTH_DICTIONARY)})|([0-9]{1,2}))[\\.\\/\\s]([0-9]{1,2})(?=\\W|$)`,"i"),QT=1,JT=2,Fp=3,eb=4,Ro=class extends ZT.AbstractParserWithWordBoundaryChecking{innerPattern(){return XT}innerExtract(e,t){let n=t[Fp]?parseInt(t[Fp]):Wp.MONTH_DICTIONARY[t[JT].toLowerCase()];if(n<1||n>12)return null;let i=parseInt(t[QT]);return{day:parseInt(t[eb]),month:n,year:i}}};wo.default=Ro});var Yp=p(Mo=>{"use strict";Object.defineProperty(Mo,"__esModule",{value:!0});var tb=E(),rb=new RegExp("([0-9]|0[1-9]|1[012])/([0-9]{4})","i"),nb=1,ib=2,Do=class extends tb.AbstractParserWithWordBoundaryChecking{innerPattern(){return rb}innerExtract(e,t){let n=parseInt(t[ib]),i=parseInt(t[nb]);return e.createParsingComponents().imply("day",1).assign("month",i).assign("year",n)}};Mo.default=Do});var xr=p(Os=>{"use strict";Object.defineProperty(Os,"__esModule",{value:!0});Os.AbstractTimeExpressionParser=void 0;var je=Te();function sb(r,e,t,n){return new RegExp(`${r}${e}(\\d{1,4})(?:(?:\\.|:|\uFF1A)(\\d{1,2})(?:(?::|\uFF1A)(\\d{2})(?:\\.(\\d{1,6}))?)?)?(?:\\s*(a\\.m\\.|p\\.m\\.|am?|pm?))?${t}`,n)}function ab(r,e){return new RegExp(`^(${r})(\\d{1,4})(?:(?:\\.|\\:|\\\uFF1A)(\\d{1,2})(?:(?:\\.|\\:|\\\uFF1A)(\\d{1,2})(?:\\.(\\d{1,6}))?)?)?(?:\\s*(a\\.m\\.|p\\.m\\.|am?|pm?))?${e}`,"i")}var $p=2,en=3,Ms=4,Ps=5,Ln=6,Po=class{constructor(e=!1){this.cachedPrimaryPrefix=null,this.cachedPrimarySuffix=null,this.cachedPrimaryTimePattern=null,this.cachedFollowingPhase=null,this.cachedFollowingSuffix=null,this.cachedFollowingTimePatten=null,this.strictMode=e}patternFlags(){return"i"}primaryPatternLeftBoundary(){return"(^|\\s|T|\\b)"}primarySuffix(){return"(?=\\W|$)"}followingSuffix(){return"(?=\\W|$)"}pattern(e){return this.getPrimaryTimePatternThroughCache()}extract(e,t){let n=this.extractPrimaryTimeComponents(e,t);if(!n)return t.index+=t[0].length,null;let i=t.index+t[1].length,s=t[0].substring(t[1].length),a=e.createParsingResult(i,s,n);t.index+=t[0].length;let o=e.text.substring(t.index),l=this.getFollowingTimePatternThroughCache().exec(o);return s.match(/^\d{3,4}/)&&l&&l[0].match(/^\s*([+-])\s*\d{2,4}$/)?null:!l||l[0].match(/^\s*([+-])\s*\d{3,4}$/)?this.checkAndReturnWithoutFollowingPattern(a):(a.end=this.extractFollowingTimeComponents(e,l,a),a.end&&(a.text+=l[0]),this.checkAndReturnWithFollowingPattern(a))}extractPrimaryTimeComponents(e,t,n=!1){let i=e.createParsingComponents(),s=0,a=null,o=parseInt(t[$p]);if(o>100){if(this.strictMode||t[en]!=null)return null;s=o%100,o=Math.floor(o/100)}if(o>24)return null;if(t[en]!=null){if(t[en].length==1&&!t[Ln])return null;s=parseInt(t[en])}if(s>=60)return null;if(o>12&&(a=je.Meridiem.PM),t[Ln]!=null){if(o>12)return null;let u=t[Ln][0].toLowerCase();u=="a"&&(a=je.Meridiem.AM,o==12&&(o=0)),u=="p"&&(a=je.Meridiem.PM,o!=12&&(o+=12))}if(i.assign("hour",o),i.assign("minute",s),a!==null?i.assign("meridiem",a):o<12?i.imply("meridiem",je.Meridiem.AM):i.imply("meridiem",je.Meridiem.PM),t[Ps]!=null){let u=parseInt(t[Ps].substring(0,3));if(u>=1e3)return null;i.assign("millisecond",u)}if(t[Ms]!=null){let u=parseInt(t[Ms]);if(u>=60)return null;i.assign("second",u)}return i}extractFollowingTimeComponents(e,t,n){let i=e.createParsingComponents();if(t[Ps]!=null){let u=parseInt(t[Ps].substring(0,3));if(u>=1e3)return null;i.assign("millisecond",u)}if(t[Ms]!=null){let u=parseInt(t[Ms]);if(u>=60)return null;i.assign("second",u)}let s=parseInt(t[$p]),a=0,o=-1;if(t[en]!=null?a=parseInt(t[en]):s>100&&(a=s%100,s=Math.floor(s/100)),a>=60||s>24)return null;if(s>=12&&(o=je.Meridiem.PM),t[Ln]!=null){if(s>12)return null;let u=t[Ln][0].toLowerCase();u=="a"&&(o=je.Meridiem.AM,s==12&&(s=0,i.isCertain("day")||i.imply("day",i.get("day")+1))),u=="p"&&(o=je.Meridiem.PM,s!=12&&(s+=12)),n.start.isCertain("meridiem")||(o==je.Meridiem.AM?(n.start.imply("meridiem",je.Meridiem.AM),n.start.get("hour")==12&&n.start.assign("hour",0)):(n.start.imply("meridiem",je.Meridiem.PM),n.start.get("hour")!=12&&n.start.assign("hour",n.start.get("hour")+12)))}return i.assign("hour",s),i.assign("minute",a),o>=0?i.assign("meridiem",o):n.start.isCertain("meridiem")&&n.start.get("hour")>12?n.start.get("hour")-12>s?i.imply("meridiem",je.Meridiem.AM):s<=12&&(i.assign("hour",s+12),i.assign("meridiem",je.Meridiem.PM)):s>12?i.imply("meridiem",je.Meridiem.PM):s<=12&&i.imply("meridiem",je.Meridiem.AM),i.date().getTime()24)return null}return e}checkAndReturnWithFollowingPattern(e){if(e.text.match(/^\d+-\d+$/))return null;let t=e.text.match(/[^\d:.](\d[\d.]+)\s*-\s*(\d[\d.]+)$/);if(t){if(this.strictMode)return null;let n=t[1],i=t[2];if(i.includes(".")&&!i.match(/\d(\.\d{2})+$/))return null;let s=parseInt(i),a=parseInt(n);if(s>24||a>24)return null}return e}getPrimaryTimePatternThroughCache(){let e=this.primaryPrefix(),t=this.primarySuffix();return this.cachedPrimaryPrefix===e&&this.cachedPrimarySuffix===t?this.cachedPrimaryTimePattern:(this.cachedPrimaryTimePattern=sb(this.primaryPatternLeftBoundary(),e,t,this.patternFlags()),this.cachedPrimaryPrefix=e,this.cachedPrimarySuffix=t,this.cachedPrimaryTimePattern)}getFollowingTimePatternThroughCache(){let e=this.followingPhase(),t=this.followingSuffix();return this.cachedFollowingPhase===e&&this.cachedFollowingSuffix===t?this.cachedFollowingTimePatten:(this.cachedFollowingTimePatten=ab(e,t),this.cachedFollowingPhase=e,this.cachedFollowingSuffix=t,this.cachedFollowingTimePatten)}};Os.AbstractTimeExpressionParser=Po});var jp=p(Ao=>{"use strict";Object.defineProperty(Ao,"__esModule",{value:!0});var As=Te(),ob=xr(),Oo=class extends ob.AbstractTimeExpressionParser{constructor(e){super(e)}followingPhase(){return"\\s*(?:\\-|\\\u2013|\\~|\\\u301C|to|\\?)\\s*"}primaryPrefix(){return"(?:(?:at|from)\\s*)??"}primarySuffix(){return"(?:\\s*(?:o\\W*clock|at\\s*night|in\\s*the\\s*(?:morning|afternoon)))?(?!/)(?=\\W|$)"}extractPrimaryTimeComponents(e,t){let n=super.extractPrimaryTimeComponents(e,t);if(n){if(t[0].endsWith("night")){let i=n.get("hour");i>=6&&i<12?(n.assign("hour",n.get("hour")+12),n.assign("meridiem",As.Meridiem.PM)):i<6&&n.assign("meridiem",As.Meridiem.AM)}if(t[0].endsWith("afternoon")){n.assign("meridiem",As.Meridiem.PM);let i=n.get("hour");i>=0&&i<=6&&n.assign("hour",n.get("hour")+12)}t[0].endsWith("morning")&&(n.assign("meridiem",As.Meridiem.AM),n.get("hour")<12&&n.assign("hour",n.get("hour")))}return n}};Ao.default=Oo});var nt=p(tn=>{"use strict";Object.defineProperty(tn,"__esModule",{value:!0});tn.addImpliedTimeUnits=tn.reverseTimeUnits=void 0;function ub(r){let e={};for(let t in r)e[t]=-r[t];return e}tn.reverseTimeUnits=ub;function lb(r,e){let t=r.clone(),n=r.dayjs();for(let i in e)n=n.add(e[i],i);return("day"in e||"d"in e||"week"in e||"month"in e||"year"in e)&&(t.imply("day",n.date()),t.imply("month",n.month()+1),t.imply("year",n.year())),("second"in e||"minute"in e||"hour"in e)&&(t.imply("second",n.second()),t.imply("minute",n.minute()),t.imply("hour",n.hour())),t}tn.addImpliedTimeUnits=lb});var Bp=p(Co=>{"use strict";Object.defineProperty(Co,"__esModule",{value:!0});var No=Se(),cb=de(),db=E(),fb=nt(),pb=new RegExp(`(${No.TIME_UNITS_PATTERN})\\s{0,5}(?:ago|before|earlier)(?=(?:\\W|$))`,"i"),hb=new RegExp(`(${No.TIME_UNITS_PATTERN})\\s{0,5}ago(?=(?:\\W|$))`,"i"),ko=class extends db.AbstractParserWithWordBoundaryChecking{constructor(e){super(),this.strictMode=e}innerPattern(){return this.strictMode?hb:pb}innerExtract(e,t){let n=No.parseTimeUnits(t[1]),i=fb.reverseTimeUnits(n);return cb.ParsingComponents.createRelativeFromReference(e.reference,i)}};Co.default=ko});var Gp=p(Io=>{"use strict";Object.defineProperty(Io,"__esModule",{value:!0});var xo=Se(),mb=de(),yb=E(),gb=new RegExp(`(${xo.TIME_UNITS_PATTERN})\\s{0,5}(?:later|after|from now|henceforth|forward|out)(?=(?:\\W|$))`,"i"),_b=new RegExp("("+xo.TIME_UNITS_PATTERN+")(later|from now)(?=(?:\\W|$))","i"),Tb=1,So=class extends yb.AbstractParserWithWordBoundaryChecking{constructor(e){super(),this.strictMode=e}innerPattern(){return this.strictMode?_b:gb}innerExtract(e,t){let n=xo.parseTimeUnits(t[Tb]);return mb.ParsingComponents.createRelativeFromReference(e.reference,n)}};Io.default=So});var nn=p(rn=>{"use strict";Object.defineProperty(rn,"__esModule",{value:!0});rn.MergingRefiner=rn.Filter=void 0;var Uo=class{refine(e,t){return t.filter(n=>this.isValid(e,n))}};rn.Filter=Uo;var qo=class{refine(e,t){if(t.length<2)return t;let n=[],i=t[0],s=null;for(let a=1;a{console.log(`${this.constructor.name} merged ${u} and ${l} into ${c}`)}),i=c}}return i!=null&&n.push(i),n}};rn.MergingRefiner=qo});var Ot=p(Wo=>{"use strict";Object.defineProperty(Wo,"__esModule",{value:!0});var bb=nn(),Fo=class extends bb.MergingRefiner{shouldMergeResults(e,t,n){return!t.end&&!n.end&&e.match(this.patternBetween())!=null}mergeResults(e,t,n){if(!t.start.isOnlyWeekdayComponent()&&!n.start.isOnlyWeekdayComponent()&&(n.start.getCertainComponents().forEach(s=>{t.start.isCertain(s)||t.start.assign(s,n.start.get(s))}),t.start.getCertainComponents().forEach(s=>{n.start.isCertain(s)||n.start.assign(s,t.start.get(s))})),t.start.date().getTime()>n.start.date().getTime()){let s=t.start.dayjs(),a=n.start.dayjs();t.start.isOnlyWeekdayComponent()&&s.add(-7,"days").isBefore(a)?(s=s.add(-7,"days"),t.start.imply("day",s.date()),t.start.imply("month",s.month()+1),t.start.imply("year",s.year())):n.start.isOnlyWeekdayComponent()&&a.add(7,"days").isAfter(s)?(a=a.add(7,"days"),n.start.imply("day",a.date()),n.start.imply("month",a.month()+1),n.start.imply("year",a.year())):[n,t]=[t,n]}let i=t.clone();return i.start=t.start,i.end=n.start,i.index=Math.min(t.index,n.index),t.index{"use strict";var vb=Yn&&Yn.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Yn,"__esModule",{value:!0});var Eb=vb(Ot()),Lo=class extends Eb.default{patternBetween(){return/^\s*(to|-)\s*$/i}};Yn.default=Lo});var zp=p(sn=>{"use strict";Object.defineProperty(sn,"__esModule",{value:!0});sn.mergeDateTimeComponent=sn.mergeDateTimeResult=void 0;var Rb=Te();function wb(r,e){let t=r.clone(),n=r.start,i=e.start;if(t.start=Yo(n,i),r.end!=null||e.end!=null){let s=r.end==null?r.start:r.end,a=e.end==null?e.start:e.end,o=Yo(s,a);r.end==null&&o.date().getTime(){"use strict";Object.defineProperty(jo,"__esModule",{value:!0});var Db=nn(),Kp=zp(),$o=class extends Db.MergingRefiner{shouldMergeResults(e,t,n){return(t.start.isOnlyDate()&&n.start.isOnlyTime()||n.start.isOnlyDate()&&t.start.isOnlyTime())&&e.match(this.patternBetween())!=null}mergeResults(e,t,n){let i=t.start.isOnlyDate()?Kp.mergeDateTimeResult(t,n):Kp.mergeDateTimeResult(n,t);return i.index=t.index,i.text=t.text+e+n.text,i}};jo.default=$o});var Vp=p($n=>{"use strict";var Mb=$n&&$n.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty($n,"__esModule",{value:!0});var Pb=Mb($t()),Bo=class extends Pb.default{patternBetween(){return new RegExp("^\\s*(T|at|after|before|on|of|,|-)?\\s*$")}};$n.default=Bo});var Zp=p(Ho=>{"use strict";Object.defineProperty(Ho,"__esModule",{value:!0});var Ob=new RegExp("^\\s*,?\\s*\\(?([A-Z]{2,4})\\)?(?=\\W|$)","i"),Ab={ACDT:630,ACST:570,ADT:-180,AEDT:660,AEST:600,AFT:270,AKDT:-480,AKST:-540,ALMT:360,AMST:-180,AMT:-240,ANAST:720,ANAT:720,AQTT:300,ART:-180,AST:-240,AWDT:540,AWST:480,AZOST:0,AZOT:-60,AZST:300,AZT:240,BNT:480,BOT:-240,BRST:-120,BRT:-180,BST:60,BTT:360,CAST:480,CAT:120,CCT:390,CDT:-300,CEST:120,CET:60,CHADT:825,CHAST:765,CKT:-600,CLST:-180,CLT:-240,COT:-300,CST:-360,CVT:-60,CXT:420,ChST:600,DAVT:420,EASST:-300,EAST:-360,EAT:180,ECT:-300,EDT:-240,EEST:180,EET:120,EGST:0,EGT:-60,EST:-300,ET:-300,FJST:780,FJT:720,FKST:-180,FKT:-240,FNT:-120,GALT:-360,GAMT:-540,GET:240,GFT:-180,GILT:720,GMT:0,GST:240,GYT:-240,HAA:-180,HAC:-300,HADT:-540,HAE:-240,HAP:-420,HAR:-360,HAST:-600,HAT:-90,HAY:-480,HKT:480,HLV:-210,HNA:-240,HNC:-360,HNE:-300,HNP:-480,HNR:-420,HNT:-150,HNY:-540,HOVT:420,ICT:420,IDT:180,IOT:360,IRDT:270,IRKST:540,IRKT:540,IRST:210,IST:330,JST:540,KGT:360,KRAST:480,KRAT:480,KST:540,KUYT:240,LHDT:660,LHST:630,LINT:840,MAGST:720,MAGT:720,MART:-510,MAWT:300,MDT:-360,MESZ:120,MEZ:60,MHT:720,MMT:390,MSD:240,MSK:240,MST:-420,MUT:240,MVT:300,MYT:480,NCT:660,NDT:-90,NFT:690,NOVST:420,NOVT:360,NPT:345,NST:-150,NUT:-660,NZDT:780,NZST:720,OMSST:420,OMST:420,PDT:-420,PET:-300,PETST:720,PETT:720,PGT:600,PHOT:780,PHT:480,PKT:300,PMDT:-120,PMST:-180,PONT:660,PST:-480,PT:-480,PWT:540,PYST:-180,PYT:-240,RET:240,SAMT:240,SAST:120,SBT:660,SCT:240,SGT:480,SRT:-180,SST:-660,TAHT:-600,TFT:300,TJT:300,TKT:780,TLT:540,TMT:300,TVT:720,ULAT:480,UTC:0,UYST:-120,UYT:-180,UZT:300,VET:-210,VLAST:660,VLAT:660,VUT:660,WAST:120,WAT:60,WEST:60,WESZ:60,WET:0,WEZ:0,WFT:720,WGST:-120,WGT:-180,WIB:420,WIT:540,WITA:480,WST:780,WT:0,YAKST:600,YAKT:600,YAPT:600,YEKST:360,YEKT:360},Go=class{constructor(e){this.timezone=Object.assign(Object.assign({},Ab),e)}refine(e,t){var n;let i=(n=e.option.timezones)!==null&&n!==void 0?n:{};return t.forEach(s=>{var a,o;let u=e.text.substring(s.index+s.text.length),l=Ob.exec(u);if(!l)return;let c=l[1].toUpperCase(),d=(o=(a=i[c])!==null&&a!==void 0?a:this.timezone[c])!==null&&o!==void 0?o:null;if(d===null)return;e.debug(()=>{console.log(`Extracting timezone: '${c}' into: ${d} for: ${s.start}`)});let f=s.start.get("timezoneOffset");f!==null&&d!=f&&(s.start.isCertain("timezoneOffset")||c!=l[1])||s.start.isOnlyDate()&&c!=l[1]||(s.text+=l[0],s.start.isCertain("timezoneOffset")||s.start.assign("timezoneOffset",d),s.end!=null&&!s.end.isCertain("timezoneOffset")&&s.end.assign("timezoneOffset",d))}),t}};Ho.default=Go});var ks=p(Ko=>{"use strict";Object.defineProperty(Ko,"__esModule",{value:!0});var kb=new RegExp("^\\s*(?:\\(?(?:GMT|UTC)\\s?)?([+-])(\\d{1,2})(?::?(\\d{2}))?\\)?","i"),Nb=1,Cb=2,Sb=3,zo=class{refine(e,t){return t.forEach(function(n){if(n.start.isCertain("timezoneOffset"))return;let i=e.text.substring(n.index+n.text.length),s=kb.exec(i);if(!s)return;e.debug(()=>{console.log(`Extracting timezone: '${s[0]}' into : ${n}`)});let a=parseInt(s[Cb]),o=parseInt(s[Sb]||"0"),u=a*60+o;u>14*60||(s[Nb]==="-"&&(u=-u),n.end!=null&&n.end.assign("timezoneOffset",u),n.start.assign("timezoneOffset",u),n.text+=s[0])}),t}};Ko.default=zo});var Xp=p(Zo=>{"use strict";Object.defineProperty(Zo,"__esModule",{value:!0});var Vo=class{refine(e,t){if(t.length<2)return t;let n=[],i=t[0];for(let s=1;si.text.length&&(i=a):(n.push(i),i=a)}return i!=null&&n.push(i),n}};Zo.default=Vo});var Qp=p(jn=>{"use strict";var xb=jn&&jn.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(jn,"__esModule",{value:!0});var Ib=xb(K()),Xo=class{refine(e,t){return e.option.forwardDate&&t.forEach(function(n){let i=Ib.default(e.refDate);if(n.start.isOnlyDayMonthComponent()&&i.isAfter(n.start.dayjs()))for(let s=0;s<3&&i.isAfter(n.start.dayjs());s++)n.start.imply("year",n.start.get("year")+1),e.debug(()=>{console.log(`Forward yearly adjusted for ${n} (${n.start})`)}),n.end&&!n.end.isCertain("year")&&(n.end.imply("year",n.end.get("year")+1),e.debug(()=>{console.log(`Forward yearly adjusted for ${n} (${n.end})`)}));n.start.isOnlyWeekdayComponent()&&i.isAfter(n.start.dayjs())&&(i.day()>=n.start.get("weekday")?i=i.day(n.start.get("weekday")+7):i=i.day(n.start.get("weekday")),n.start.imply("day",i.date()),n.start.imply("month",i.month()+1),n.start.imply("year",i.year()),e.debug(()=>{console.log(`Forward weekly adjusted for ${n} (${n.start})`)}),n.end&&n.end.isOnlyWeekdayComponent()&&(i.day()>n.end.get("weekday")?i=i.day(n.end.get("weekday")+7):i=i.day(n.end.get("weekday")),n.end.imply("day",i.date()),n.end.imply("month",i.month()+1),n.end.imply("year",i.year()),e.debug(()=>{console.log(`Forward weekly adjusted for ${n} (${n.end})`)})))}),t}};jn.default=Xo});var Jp=p(Jo=>{"use strict";Object.defineProperty(Jo,"__esModule",{value:!0});var Ub=nn(),Qo=class extends Ub.Filter{constructor(e){super(),this.strictMode=e}isValid(e,t){return t.text.replace(" ","").match(/^\d*(\.\d*)?$/)?(e.debug(()=>{console.log(`Removing unlikely result '${t.text}'`)}),!1):t.start.isValidDate()?t.end&&!t.end.isValidDate()?(e.debug(()=>{console.log(`Removing invalid result: ${t} (${t.end})`)}),!1):this.strictMode?this.isStrictModeValid(e,t):!0:(e.debug(()=>{console.log(`Removing invalid result: ${t} (${t.start})`)}),!1)}isStrictModeValid(e,t){return t.start.isOnlyWeekdayComponent()?(e.debug(()=>{console.log(`(Strict) Removing weekday only component: ${t} (${t.end})`)}),!1):t.start.isOnlyTime()&&(!t.start.isCertain("hour")||!t.start.isCertain("minute"))?(e.debug(()=>{console.log(`(Strict) Removing uncertain time component: ${t} (${t.end})`)}),!1):!0}};Jo.default=Qo});var ru=p(tu=>{"use strict";Object.defineProperty(tu,"__esModule",{value:!0});var qb=E(),Fb=new RegExp("([0-9]{4})\\-([0-9]{1,2})\\-([0-9]{1,2})(?:T([0-9]{1,2}):([0-9]{1,2})(?::([0-9]{1,2})(?:\\.(\\d{1,4}))?)?(?:Z|([+-]\\d{2}):?(\\d{2})?)?)?(?=\\W|$)","i"),Wb=1,Lb=2,Yb=3,eh=4,$b=5,th=6,rh=7,nh=8,ih=9,eu=class extends qb.AbstractParserWithWordBoundaryChecking{innerPattern(){return Fb}innerExtract(e,t){let n={};if(n.year=parseInt(t[Wb]),n.month=parseInt(t[Lb]),n.day=parseInt(t[Yb]),t[eh]!=null)if(n.hour=parseInt(t[eh]),n.minute=parseInt(t[$b]),t[th]!=null&&(n.second=parseInt(t[th])),t[rh]!=null&&(n.millisecond=parseInt(t[rh])),t[nh]==null)n.timezoneOffset=0;else{let i=parseInt(t[nh]),s=0;t[ih]!=null&&(s=parseInt(t[ih]));let a=i*60;a<0?a-=s:a+=s,n.timezoneOffset=a}return n}};tu.default=eu});var sh=p(iu=>{"use strict";Object.defineProperty(iu,"__esModule",{value:!0});var jb=nn(),nu=class extends jb.MergingRefiner{mergeResults(e,t,n){let i=n.clone();return i.index=t.index,i.text=t.text+e+i.text,i.start.assign("weekday",t.start.get("weekday")),i.end&&i.end.assign("weekday",t.start.get("weekday")),i}shouldMergeResults(e,t,n){return t.start.isOnlyWeekdayComponent()&&!t.start.isCertain("hour")&&n.start.isCertain("day")&&e.match(/^,?\s*$/)!=null}};iu.default=nu});var jt=p(an=>{"use strict";var Ir=an&&an.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(an,"__esModule",{value:!0});an.includeCommonConfiguration=void 0;var Bb=Ir(Zp()),Gb=Ir(ks()),ah=Ir(Xp()),Hb=Ir(Qp()),zb=Ir(Jp()),Kb=Ir(ru()),Vb=Ir(sh());function Zb(r,e=!1){return r.parsers.unshift(new Kb.default),r.refiners.unshift(new Vb.default),r.refiners.unshift(new Bb.default),r.refiners.unshift(new Gb.default),r.refiners.unshift(new ah.default),r.refiners.push(new ah.default),r.refiners.push(new Hb.default),r.refiners.push(new zb.default(e)),r}an.includeCommonConfiguration=Zb});var Gt=p(X=>{"use strict";var Xb=X&&X.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(X,"__esModule",{value:!0});X.noon=X.morning=X.midnight=X.yesterdayEvening=X.evening=X.lastNight=X.tonight=X.theDayAfter=X.tomorrow=X.theDayBefore=X.yesterday=X.today=X.now=void 0;var At=de(),on=Xb(K()),Bt=rt(),Bn=Te();function Qb(r){let e=on.default(r.instant),t=new At.ParsingComponents(r,{});return Bt.assignSimilarDate(t,e),Bt.assignSimilarTime(t,e),r.timezoneOffset!==null&&t.assign("timezoneOffset",e.utcOffset()),t}X.now=Qb;function Jb(r){let e=on.default(r.instant),t=new At.ParsingComponents(r,{});return Bt.assignSimilarDate(t,e),Bt.implySimilarTime(t,e),t}X.today=Jb;function e1(r){return oh(r,1)}X.yesterday=e1;function oh(r,e){return su(r,-e)}X.theDayBefore=oh;function t1(r){return su(r,1)}X.tomorrow=t1;function su(r,e){let t=on.default(r.instant),n=new At.ParsingComponents(r,{});return t=t.add(e,"day"),Bt.assignSimilarDate(n,t),Bt.implySimilarTime(n,t),n}X.theDayAfter=su;function r1(r,e=22){let t=on.default(r.instant),n=new At.ParsingComponents(r,{});return n.imply("hour",e),n.imply("meridiem",Bn.Meridiem.PM),Bt.assignSimilarDate(n,t),n}X.tonight=r1;function n1(r,e=0){let t=on.default(r.instant),n=new At.ParsingComponents(r,{});return t.hour()<6&&(t=t.add(-1,"day")),Bt.assignSimilarDate(n,t),n.imply("hour",e),n}X.lastNight=n1;function i1(r,e=20){let t=new At.ParsingComponents(r,{});return t.imply("meridiem",Bn.Meridiem.PM),t.imply("hour",e),t}X.evening=i1;function s1(r,e=20){let t=on.default(r.instant),n=new At.ParsingComponents(r,{});return t=t.add(-1,"day"),Bt.assignSimilarDate(n,t),n.imply("hour",e),n.imply("meridiem",Bn.Meridiem.PM),n}X.yesterdayEvening=s1;function a1(r){let e=new At.ParsingComponents(r,{});return e.imply("hour",0),e.imply("minute",0),e.imply("second",0),e}X.midnight=a1;function o1(r,e=6){let t=new At.ParsingComponents(r,{});return t.imply("meridiem",Bn.Meridiem.AM),t.imply("hour",e),t}X.morning=o1;function u1(r){let e=new At.ParsingComponents(r,{});return e.imply("meridiem",Bn.Meridiem.AM),e.imply("hour",12),e}X.noon=u1});var uh=p(pt=>{"use strict";var l1=pt&&pt.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),c1=pt&&pt.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),d1=pt&&pt.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&l1(e,r,t);return c1(e,r),e},f1=pt&&pt.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(pt,"__esModule",{value:!0});var p1=f1(K()),h1=E(),m1=rt(),Gn=d1(Gt()),y1=/(now|today|tonight|tomorrow|tmr|tmrw|yesterday|last\s*night)(?=\W|$)/i,au=class extends h1.AbstractParserWithWordBoundaryChecking{innerPattern(e){return y1}innerExtract(e,t){let n=p1.default(e.refDate),i=t[0].toLowerCase(),s=e.createParsingComponents();switch(i){case"now":return Gn.now(e.reference);case"today":return Gn.today(e.reference);case"yesterday":return Gn.yesterday(e.reference);case"tomorrow":case"tmr":case"tmrw":return Gn.tomorrow(e.reference);case"tonight":return Gn.tonight(e.reference);default:i.match(/last\s*night/)&&(n.hour()>6&&(n=n.add(-1,"day")),m1.assignSimilarDate(s,n),s.imply("hour",0));break}return s}};pt.default=au});var lh=p(Hn=>{"use strict";var g1=Hn&&Hn.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Hn,"__esModule",{value:!0});var Ns=Te(),_1=E(),T1=g1(K()),b1=rt(),v1=/(?:this)?\s{0,3}(morning|afternoon|evening|night|midnight|noon)(?=\W|$)/i,ou=class extends _1.AbstractParserWithWordBoundaryChecking{innerPattern(){return v1}innerExtract(e,t){let n=T1.default(e.refDate),i=e.createParsingComponents();switch(t[1].toLowerCase()){case"afternoon":i.imply("meridiem",Ns.Meridiem.PM),i.imply("hour",15);break;case"evening":case"night":i.imply("meridiem",Ns.Meridiem.PM),i.imply("hour",20);break;case"midnight":b1.assignTheNextDay(i,n),i.imply("hour",0),i.imply("minute",0),i.imply("second",0);break;case"morning":i.imply("meridiem",Ns.Meridiem.AM),i.imply("hour",6);break;case"noon":i.imply("meridiem",Ns.Meridiem.AM),i.imply("hour",12);break}return i}};Hn.default=ou});var Ur=p(mr=>{"use strict";var E1=mr&&mr.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(mr,"__esModule",{value:!0});mr.toDayJSClosestWeekday=mr.toDayJSWeekday=void 0;var ch=E1(K());function R1(r,e,t){if(!t)return dh(r,e);let n=ch.default(r);switch(t){case"this":n=n.day(e);break;case"next":n=n.day(e+7);break;case"last":n=n.day(e-7);break}return n}mr.toDayJSWeekday=R1;function dh(r,e){let t=ch.default(r),n=t.day();return Math.abs(e-7-n){"use strict";Object.defineProperty(lu,"__esModule",{value:!0});var fh=Se(),w1=Q(),D1=E(),M1=Ur(),P1=new RegExp(`(?:(?:\\,|\\(|\\\uFF08)\\s*)?(?:on\\s*?)?(?:(this|last|past|next)\\s*)?(${w1.matchAnyPattern(fh.WEEKDAY_DICTIONARY)})(?:\\s*(?:\\,|\\)|\\\uFF09))?(?:\\s*(this|last|past|next)\\s*week)?(?=\\W|$)`,"i"),O1=1,A1=2,k1=3,uu=class extends D1.AbstractParserWithWordBoundaryChecking{innerPattern(){return P1}innerExtract(e,t){let n=t[A1].toLowerCase(),i=fh.WEEKDAY_DICTIONARY[n],s=t[O1],a=t[k1],o=s||a;o=o||"",o=o.toLowerCase();let u=null;o=="last"||o=="past"?u="last":o=="next"?u="next":o=="this"&&(u="this");let l=M1.toDayJSWeekday(e.refDate,i,u);return e.createParsingComponents().assign("weekday",i).imply("day",l.date()).imply("month",l.month()+1).imply("year",l.year())}};lu.default=uu});var yh=p(zn=>{"use strict";var N1=zn&&zn.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(zn,"__esModule",{value:!0});var mh=Se(),hh=de(),C1=N1(K()),S1=E(),x1=Q(),I1=new RegExp(`(this|last|past|next|after\\s*this)\\s*(${x1.matchAnyPattern(mh.TIME_UNIT_DICTIONARY)})(?=\\s*)(?=\\W|$)`,"i"),U1=1,q1=2,cu=class extends S1.AbstractParserWithWordBoundaryChecking{innerPattern(){return I1}innerExtract(e,t){let n=t[U1].toLowerCase(),i=t[q1].toLowerCase(),s=mh.TIME_UNIT_DICTIONARY[i];if(n=="next"||n.startsWith("after")){let u={};return u[s]=1,hh.ParsingComponents.createRelativeFromReference(e.reference,u)}if(n=="last"||n=="past"){let u={};return u[s]=-1,hh.ParsingComponents.createRelativeFromReference(e.reference,u)}let a=e.createParsingComponents(),o=C1.default(e.reference.instant);return i.match(/week/i)?(o=o.add(-o.get("d"),"d"),a.imply("day",o.date()),a.imply("month",o.month()+1),a.imply("year",o.year())):i.match(/month/i)?(o=o.add(-o.date()+1,"d"),a.imply("day",o.date()),a.assign("year",o.year()),a.assign("month",o.month()+1)):i.match(/year/i)&&(o=o.add(-o.date()+1,"d"),o=o.add(-o.month(),"month"),a.imply("day",o.date()),a.imply("month",o.month()+1),a.assign("year",o.year())),a}};zn.default=cu});var ht=p(cn=>{"use strict";Object.defineProperty(cn,"__esModule",{value:!0});cn.ParsingContext=cn.Chrono=void 0;var un=de(),F1=du(),ln=class{constructor(e){e=e||F1.createCasualConfiguration(),this.parsers=[...e.parsers],this.refiners=[...e.refiners]}clone(){return new ln({parsers:[...this.parsers],refiners:[...this.refiners]})}parseDate(e,t,n){let i=this.parse(e,t,n);return i.length>0?i[0].start.date():null}parse(e,t,n){let i=new Cs(e,t,n),s=[];return this.parsers.forEach(a=>{let o=ln.executeParser(i,a);s=s.concat(o)}),s.sort((a,o)=>a.index-o.index),this.refiners.forEach(function(a){s=a.refine(i,s)}),s}static executeParser(e,t){let n=[],i=t.pattern(e),s=e.text,a=e.text,o=i.exec(a);for(;o;){let u=o.index+s.length-a.length;o.index=u;let l=t.extract(e,o);if(!l){a=s.substring(o.index+1),o=i.exec(a);continue}let c=null;l instanceof un.ParsingResult?c=l:l instanceof un.ParsingComponents?(c=e.createParsingResult(o.index,o[0]),c.start=l):c=e.createParsingResult(o.index,o[0],l),e.debug(()=>console.log(`${t.constructor.name} extracted result ${c}`)),n.push(c),a=s.substring(u+c.text.length),o=i.exec(a)}return n}};cn.Chrono=ln;var Cs=class{constructor(e,t,n){this.text=e,this.reference=new un.ReferenceWithTimezone(t),this.option=n!=null?n:{},this.refDate=this.reference.instant}createParsingComponents(e){return e instanceof un.ParsingComponents?e:new un.ParsingComponents(this.reference,e)}createParsingResult(e,t,n,i){let s=typeof t=="string"?t:this.text.substring(e,t),a=n?this.createParsingComponents(n):null,o=i?this.createParsingComponents(i):null;return new un.ParsingResult(this.reference,e,s,a,o)}debug(e){this.option.debug&&(this.option.debug instanceof Function?this.option.debug(e):this.option.debug.debug(e))}};cn.ParsingContext=Cs});var qr=p(hu=>{"use strict";Object.defineProperty(hu,"__esModule",{value:!0});var gh=Ce(),W1=new RegExp("([^\\d]|^)([0-3]{0,1}[0-9]{1})[\\/\\.\\-]([0-3]{0,1}[0-9]{1})(?:[\\/\\.\\-]([0-9]{4}|[0-9]{2}))?(\\W|$)","i"),Ss=1,_h=5,Th=2,bh=3,fu=4,pu=class{constructor(e){this.groupNumberMonth=e?bh:Th,this.groupNumberDay=e?Th:bh}pattern(){return W1}extract(e,t){if(t[Ss]=="/"||t[_h]=="/"){t.index+=t[0].length;return}let n=t.index+t[Ss].length,i=t[0].substr(t[Ss].length,t[0].length-t[Ss].length-t[_h].length);if(i.match(/^\d\.\d$/)||i.match(/^\d\.\d{1,2}\.\d{1,2}\s*$/)||!t[fu]&&t[0].indexOf("/")<0)return;let s=e.createParsingResult(n,i),a=parseInt(t[this.groupNumberMonth]),o=parseInt(t[this.groupNumberDay]);if((a<1||a>12)&&a>12)if(o>=1&&o<=12&&a<=31)[o,a]=[a,o];else return null;if(o<1||o>31)return null;if(s.start.assign("day",o),s.start.assign("month",a),t[fu]){let u=parseInt(t[fu]),l=gh.findMostLikelyADYear(u);s.start.assign("year",l)}else{let u=gh.findYearClosestToRef(e.refDate,o,a);s.start.imply("year",u)}return s}};hu.default=pu});var Eh=p(yu=>{"use strict";Object.defineProperty(yu,"__esModule",{value:!0});var vh=Se(),L1=de(),Y1=E(),$1=nt(),j1=new RegExp(`(this|last|past|next|after|\\+|-)\\s*(${vh.TIME_UNITS_PATTERN})(?=\\W|$)`,"i"),mu=class extends Y1.AbstractParserWithWordBoundaryChecking{innerPattern(){return j1}innerExtract(e,t){let n=t[1].toLowerCase(),i=vh.parseTimeUnits(t[2]);switch(n){case"last":case"past":case"-":i=$1.reverseTimeUnits(i);break}return L1.ParsingComponents.createRelativeFromReference(e.reference,i)}};yu.default=mu});var wh=p(Tu=>{"use strict";Object.defineProperty(Tu,"__esModule",{value:!0});var B1=nn(),gu=de(),G1=Se(),H1=nt();function Rh(r){return r.text.match(/\s+(before|from)$/i)!=null}function z1(r){return r.text.match(/\s+(after|since)$/i)!=null}var _u=class extends B1.MergingRefiner{patternBetween(){return/^\s*$/i}shouldMergeResults(e,t,n){return!e.match(this.patternBetween())||!Rh(t)&&!z1(t)?!1:!!n.start.get("day")&&!!n.start.get("month")&&!!n.start.get("year")}mergeResults(e,t,n){let i=G1.parseTimeUnits(t.text);Rh(t)&&(i=H1.reverseTimeUnits(i));let s=gu.ParsingComponents.createRelativeFromReference(new gu.ReferenceWithTimezone(n.start.date()),i);return new gu.ParsingResult(n.reference,t.index,`${t.text}${e}${n.text}`,s)}};Tu.default=_u});var du=p(me=>{"use strict";var ve=me&&me.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(me,"__esModule",{value:!0});me.createConfiguration=me.createCasualConfiguration=me.parseDate=me.parse=me.GB=me.strict=me.casual=void 0;var K1=ve(Rp()),V1=ve(Ap()),Z1=ve(xp()),X1=ve(qp()),Q1=ve(Lp()),J1=ve(Yp()),ev=ve(jp()),tv=ve(Bp()),rv=ve(Gp()),nv=ve(Hp()),iv=ve(Vp()),sv=jt(),av=ve(uh()),ov=ve(lh()),uv=ve(ph()),lv=ve(yh()),bu=ht(),cv=ve(qr()),dv=ve(Eh()),fv=ve(wh());me.casual=new bu.Chrono(Dh(!1));me.strict=new bu.Chrono(xs(!0,!1));me.GB=new bu.Chrono(xs(!1,!0));function pv(r,e,t){return me.casual.parse(r,e,t)}me.parse=pv;function hv(r,e,t){return me.casual.parseDate(r,e,t)}me.parseDate=hv;function Dh(r=!1){let e=xs(!1,r);return e.parsers.unshift(new av.default),e.parsers.unshift(new ov.default),e.parsers.unshift(new X1.default),e.parsers.unshift(new lv.default),e.parsers.unshift(new dv.default),e}me.createCasualConfiguration=Dh;function xs(r=!0,e=!1){return sv.includeCommonConfiguration({parsers:[new cv.default(e),new K1.default,new V1.default,new Z1.default,new uv.default,new Q1.default,new J1.default,new ev.default(r),new tv.default(r),new rv.default(r)],refiners:[new fv.default,new iv.default,new nv.default]},r)}me.createConfiguration=xs});var Mh=p(Eu=>{"use strict";Object.defineProperty(Eu,"__esModule",{value:!0});var mv=xr(),vu=class extends mv.AbstractTimeExpressionParser{primaryPrefix(){return"(?:(?:um|von)\\s*)?"}followingPhase(){return"\\s*(?:\\-|\\\u2013|\\~|\\\u301C|bis)\\s*"}extractPrimaryTimeComponents(e,t){return t[0].match(/^\s*\d{4}\s*$/)?null:super.extractPrimaryTimeComponents(e,t)}};Eu.default=vu});var Kn=p(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.parseTimeUnits=ee.TIME_UNITS_PATTERN=ee.parseYear=ee.YEAR_PATTERN=ee.parseNumberPattern=ee.NUMBER_PATTERN=ee.TIME_UNIT_DICTIONARY=ee.INTEGER_WORD_DICTIONARY=ee.MONTH_DICTIONARY=ee.WEEKDAY_DICTIONARY=void 0;var Ru=Q(),yv=Ce();ee.WEEKDAY_DICTIONARY={sonntag:0,so:0,montag:1,mo:1,dienstag:2,di:2,mittwoch:3,mi:3,donnerstag:4,do:4,freitag:5,fr:5,samstag:6,sa:6};ee.MONTH_DICTIONARY={januar:1,j\u00E4nner:1,janner:1,jan:1,"jan.":1,februar:2,feber:2,feb:2,"feb.":2,m\u00E4rz:3,maerz:3,m\u00E4r:3,"m\xE4r.":3,mrz:3,"mrz.":3,april:4,apr:4,"apr.":4,mai:5,juni:6,jun:6,"jun.":6,juli:7,jul:7,"jul.":7,august:8,aug:8,"aug.":8,september:9,sep:9,"sep.":9,sept:9,"sept.":9,oktober:10,okt:10,"okt.":10,november:11,nov:11,"nov.":11,dezember:12,dez:12,"dez.":12};ee.INTEGER_WORD_DICTIONARY={eins:1,eine:1,einem:1,einen:1,einer:1,zwei:2,drei:3,vier:4,f\u00FCnf:5,fuenf:5,sechs:6,sieben:7,acht:8,neun:9,zehn:10,elf:11,zw\u00F6lf:12,zwoelf:12};ee.TIME_UNIT_DICTIONARY={sek:"second",sekunde:"second",sekunden:"second",min:"minute",minute:"minute",minuten:"minute",h:"hour",std:"hour",stunde:"hour",stunden:"hour",tag:"d",tage:"d",tagen:"d",woche:"week",wochen:"week",monat:"month",monate:"month",monaten:"month",monats:"month",quartal:"quarter",quartals:"quarter",quartale:"quarter",quartalen:"quarter",a:"year",j:"year",jr:"year",jahr:"year",jahre:"year",jahren:"year",jahres:"year"};ee.NUMBER_PATTERN=`(?:${Ru.matchAnyPattern(ee.INTEGER_WORD_DICTIONARY)}|[0-9]+|[0-9]+\\.[0-9]+|half(?:\\s*an?)?|an?\\b(?:\\s*few)?|few|several|a?\\s*couple\\s*(?:of)?)`;function Oh(r){let e=r.toLowerCase();return ee.INTEGER_WORD_DICTIONARY[e]!==void 0?ee.INTEGER_WORD_DICTIONARY[e]:e==="a"||e==="an"?1:e.match(/few/)?3:e.match(/half/)?.5:e.match(/couple/)?2:e.match(/several/)?7:parseFloat(e)}ee.parseNumberPattern=Oh;ee.YEAR_PATTERN="(?:[0-9]{1,4}(?:\\s*[vn]\\.?\\s*(?:C(?:hr)?|(?:u\\.?|d\\.?(?:\\s*g\\.?)?)?\\s*Z)\\.?|\\s*(?:u\\.?|d\\.?(?:\\s*g\\.)?)\\s*Z\\.?)?)";function gv(r){if(/v/i.test(r))return-parseInt(r.replace(/[^0-9]+/gi,""));if(/n/i.test(r))return parseInt(r.replace(/[^0-9]+/gi,""));if(/z/i.test(r))return parseInt(r.replace(/[^0-9]+/gi,""));let e=parseInt(r);return yv.findMostLikelyADYear(e)}ee.parseYear=gv;var Ah=`(${ee.NUMBER_PATTERN})\\s{0,5}(${Ru.matchAnyPattern(ee.TIME_UNIT_DICTIONARY)})\\s{0,5}`,Ph=new RegExp(Ah,"i");ee.TIME_UNITS_PATTERN=Ru.repeatedTimeunitPattern("",Ah);function _v(r){let e={},t=r,n=Ph.exec(t);for(;n;)Tv(e,n),t=t.substring(n[0].length),n=Ph.exec(t);return e}ee.parseTimeUnits=_v;function Tv(r,e){let t=Oh(e[1]),n=ee.TIME_UNIT_DICTIONARY[e[2].toLowerCase()];r[n]=t}});var Nh=p(Du=>{"use strict";Object.defineProperty(Du,"__esModule",{value:!0});var kh=Kn(),bv=Q(),vv=E(),Ev=Ur(),Rv=new RegExp(`(?:(?:\\,|\\(|\\\uFF08)\\s*)?(?:a[mn]\\s*?)?(?:(diese[mn]|letzte[mn]|n(?:\xE4|ae)chste[mn])\\s*)?(${bv.matchAnyPattern(kh.WEEKDAY_DICTIONARY)})(?:\\s*(?:\\,|\\)|\\\uFF09))?(?:\\s*(diese|letzte|n(?:\xE4|ae)chste)\\s*woche)?(?=\\W|$)`,"i"),wv=1,Dv=3,Mv=2,wu=class extends vv.AbstractParserWithWordBoundaryChecking{innerPattern(){return Rv}innerExtract(e,t){let n=t[Mv].toLowerCase(),i=kh.WEEKDAY_DICTIONARY[n],s=t[wv],a=t[Dv],o=s||a;o=o||"",o=o.toLowerCase();let u=null;o.match(/letzte/)?u="last":o.match(/chste/)?u="next":o.match(/diese/)&&(u="this");let l=Ev.toDayJSWeekday(e.refDate,i,u);return e.createParsingComponents().assign("weekday",i).imply("day",l.date()).imply("month",l.month()+1).imply("year",l.year())}};Du.default=wu});var Ih=p(Mu=>{"use strict";Object.defineProperty(Mu,"__esModule",{value:!0});var yr=Te(),Pv=new RegExp("(^|\\s|T)(?:(?:um|von)\\s*)?(\\d{1,2})(?:h|:)?(?:(\\d{1,2})(?:m|:)?)?(?:(\\d{1,2})(?:s)?)?(?:\\s*Uhr)?(?:\\s*(morgens|vormittags|nachmittags|abends|nachts|am\\s+(?:Morgen|Vormittag|Nachmittag|Abend)|in\\s+der\\s+Nacht))?(?=\\W|$)","i"),Ov=new RegExp("^\\s*(\\-|\\\u2013|\\~|\\\u301C|bis(?:\\s+um)?|\\?)\\s*(\\d{1,2})(?:h|:)?(?:(\\d{1,2})(?:m|:)?)?(?:(\\d{1,2})(?:s)?)?(?:\\s*Uhr)?(?:\\s*(morgens|vormittags|nachmittags|abends|nachts|am\\s+(?:Morgen|Vormittag|Nachmittag|Abend)|in\\s+der\\s+Nacht))?(?=\\W|$)","i"),Av=2,Ch=3,Sh=4,xh=5,dn=class{pattern(e){return Pv}extract(e,t){let n=e.createParsingResult(t.index+t[1].length,t[0].substring(t[1].length));if(n.text.match(/^\d{4}$/)||(n.start=dn.extractTimeComponent(n.start.clone(),t),!n.start))return t.index+=t[0].length,null;let i=e.text.substring(t.index+t[0].length),s=Ov.exec(i);return s&&(n.end=dn.extractTimeComponent(n.start.clone(),s),n.end&&(n.text+=s[0])),n}static extractTimeComponent(e,t){let n=0,i=0,s=null;if(n=parseInt(t[Av]),t[Ch]!=null&&(i=parseInt(t[Ch])),i>=60||n>24)return null;if(n>=12&&(s=yr.Meridiem.PM),t[xh]!=null){if(n>12)return null;let a=t[xh].toLowerCase();a.match(/morgen|vormittag/)&&(s=yr.Meridiem.AM,n==12&&(n=0)),a.match(/nachmittag|abend/)&&(s=yr.Meridiem.PM,n!=12&&(n+=12)),a.match(/nacht/)&&(n==12?(s=yr.Meridiem.AM,n=0):n<6?s=yr.Meridiem.AM:(s=yr.Meridiem.PM,n+=12))}if(e.assign("hour",n),e.assign("minute",i),s!==null?e.assign("meridiem",s):n<12?e.imply("meridiem",yr.Meridiem.AM):e.imply("meridiem",yr.Meridiem.PM),t[Sh]!=null){let a=parseInt(t[Sh]);if(a>=60)return null;e.assign("second",a)}return e}};Mu.default=dn});var Uh=p(Vn=>{"use strict";var kv=Vn&&Vn.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Vn,"__esModule",{value:!0});var Nv=kv(Ot()),Pu=class extends Nv.default{patternBetween(){return/^\s*(bis(?:\s*(?:am|zum))?|-)\s*$/i}};Vn.default=Pu});var qh=p(Zn=>{"use strict";var Cv=Zn&&Zn.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Zn,"__esModule",{value:!0});var Sv=Cv($t()),Ou=class extends Sv.default{patternBetween(){return new RegExp("^\\s*(T|um|am|,|-)?\\s*$")}};Zn.default=Ou});var Au=p(Qn=>{"use strict";var xv=Qn&&Qn.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Qn,"__esModule",{value:!0});var Iv=xv(K()),Fr=Te(),Uv=E(),qv=rt(),Fv=nt(),Xn=class extends Uv.AbstractParserWithWordBoundaryChecking{innerPattern(e){return/(diesen)?\s*(morgen|vormittag|mittags?|nachmittag|abend|nacht|mitternacht)(?=\W|$)/i}innerExtract(e,t){let n=Iv.default(e.refDate),i=t[2].toLowerCase(),s=e.createParsingComponents();return qv.implySimilarTime(s,n),Xn.extractTimeComponents(s,i)}static extractTimeComponents(e,t){switch(t){case"morgen":e.imply("hour",6),e.imply("minute",0),e.imply("second",0),e.imply("meridiem",Fr.Meridiem.AM);break;case"vormittag":e.imply("hour",9),e.imply("minute",0),e.imply("second",0),e.imply("meridiem",Fr.Meridiem.AM);break;case"mittag":case"mittags":e.imply("hour",12),e.imply("minute",0),e.imply("second",0),e.imply("meridiem",Fr.Meridiem.AM);break;case"nachmittag":e.imply("hour",15),e.imply("minute",0),e.imply("second",0),e.imply("meridiem",Fr.Meridiem.PM);break;case"abend":e.imply("hour",18),e.imply("minute",0),e.imply("second",0),e.imply("meridiem",Fr.Meridiem.PM);break;case"nacht":e.imply("hour",22),e.imply("minute",0),e.imply("second",0),e.imply("meridiem",Fr.Meridiem.PM);break;case"mitternacht":e.get("hour")>1&&(e=Fv.addImpliedTimeUnits(e,{day:1})),e.imply("hour",0),e.imply("minute",0),e.imply("second",0),e.imply("meridiem",Fr.Meridiem.AM);break}return e}};Qn.default=Xn});var Lh=p(mt=>{"use strict";var Wv=mt&&mt.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),Lv=mt&&mt.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),Yv=mt&&mt.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&Wv(e,r,t);return Lv(e,r),e},Wh=mt&&mt.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(mt,"__esModule",{value:!0});var $v=Wh(K()),jv=E(),Wr=rt(),Bv=Wh(Au()),Fh=Yv(Gt()),Gv=new RegExp("(jetzt|heute|morgen|\xFCbermorgen|uebermorgen|gestern|vorgestern|letzte\\s*nacht)(?:\\s*(morgen|vormittag|mittags?|nachmittag|abend|nacht|mitternacht))?(?=\\W|$)","i"),Hv=1,zv=2,ku=class extends jv.AbstractParserWithWordBoundaryChecking{innerPattern(e){return Gv}innerExtract(e,t){let n=$v.default(e.refDate),i=(t[Hv]||"").toLowerCase(),s=(t[zv]||"").toLowerCase(),a=e.createParsingComponents();switch(i){case"jetzt":a=Fh.now(e.reference);break;case"heute":a=Fh.today(e.reference);break;case"morgen":Wr.assignTheNextDay(a,n);break;case"\xFCbermorgen":case"uebermorgen":n=n.add(1,"day"),Wr.assignTheNextDay(a,n);break;case"gestern":n=n.add(-1,"day"),Wr.assignSimilarDate(a,n),Wr.implySimilarTime(a,n);break;case"vorgestern":n=n.add(-2,"day"),Wr.assignSimilarDate(a,n),Wr.implySimilarTime(a,n);break;default:i.match(/letzte\s*nacht/)&&(n.hour()>6&&(n=n.add(-1,"day")),Wr.assignSimilarDate(a,n),a.imply("hour",0));break}return s&&(a=Bv.default.extractTimeComponents(a,s)),a}};mt.default=ku});var Hh=p(Cu=>{"use strict";Object.defineProperty(Cu,"__esModule",{value:!0});var Kv=Ce(),Bh=Kn(),Gh=Kn(),Vv=Q(),Zv=E(),Xv=new RegExp(`(?:am\\s*?)?(?:den\\s*?)?([0-9]{1,2})\\.(?:\\s*(?:bis(?:\\s*(?:am|zum))?|\\-|\\\u2013|\\s)\\s*([0-9]{1,2})\\.?)?\\s*(${Vv.matchAnyPattern(Bh.MONTH_DICTIONARY)})(?:(?:-|/|,?\\s*)(${Gh.YEAR_PATTERN}(?![^\\s]\\d)))?(?=\\W|$)`,"i"),Yh=1,$h=2,Qv=3,jh=4,Nu=class extends Zv.AbstractParserWithWordBoundaryChecking{innerPattern(){return Xv}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=Bh.MONTH_DICTIONARY[t[Qv].toLowerCase()],s=parseInt(t[Yh]);if(s>31)return t.index=t.index+t[Yh].length,null;if(n.start.assign("month",i),n.start.assign("day",s),t[jh]){let a=Gh.parseYear(t[jh]);n.start.assign("year",a)}else{let a=Kv.findYearClosestToRef(e.refDate,s,i);n.start.imply("year",a)}if(t[$h]){let a=parseInt(t[$h]);n.end=n.start.clone(),n.end.assign("day",a)}return n}};Cu.default=Nu});var zh=p(xu=>{"use strict";Object.defineProperty(xu,"__esModule",{value:!0});var Is=Kn(),Jv=de(),eE=E(),tE=nt(),rE=Q(),Su=class extends eE.AbstractParserWithWordBoundaryChecking{constructor(){super()}innerPattern(){return new RegExp(`(?:\\s*((?:n\xE4chste|kommende|folgende|letzte|vergangene|vorige|vor(?:her|an)gegangene)(?:s|n|m|r)?|vor|in)\\s*)?(${Is.NUMBER_PATTERN})?(?:\\s*(n\xE4chste|kommende|folgende|letzte|vergangene|vorige|vor(?:her|an)gegangene)(?:s|n|m|r)?)?\\s*(${rE.matchAnyPattern(Is.TIME_UNIT_DICTIONARY)})`,"i")}innerExtract(e,t){let n=t[2]?Is.parseNumberPattern(t[2]):1,i=Is.TIME_UNIT_DICTIONARY[t[4].toLowerCase()],s={};s[i]=n;let a=t[1]||t[3]||"";if(a=a.toLowerCase(),!!a)return(/vor/.test(a)||/letzte/.test(a)||/vergangen/.test(a))&&(s=tE.reverseTimeUnits(s)),Jv.ParsingComponents.createRelativeFromReference(e.reference,s)}};xu.default=Su});var Zh=p(Ee=>{"use strict";var yt=Ee&&Ee.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Ee,"__esModule",{value:!0});Ee.createConfiguration=Ee.createCasualConfiguration=Ee.parseDate=Ee.parse=Ee.strict=Ee.casual=void 0;var nE=jt(),Kh=ht(),iE=yt(qr()),sE=yt(ru()),aE=yt(Mh()),oE=yt(Nh()),uE=yt(Ih()),lE=yt(Uh()),cE=yt(qh()),dE=yt(Lh()),fE=yt(Au()),pE=yt(Hh()),hE=yt(zh());Ee.casual=new Kh.Chrono(Vh());Ee.strict=new Kh.Chrono(Iu(!0));function mE(r,e,t){return Ee.casual.parse(r,e,t)}Ee.parse=mE;function yE(r,e,t){return Ee.casual.parseDate(r,e,t)}Ee.parseDate=yE;function Vh(r=!0){let e=Iu(!1,r);return e.parsers.unshift(new fE.default),e.parsers.unshift(new dE.default),e.parsers.unshift(new hE.default),e}Ee.createCasualConfiguration=Vh;function Iu(r=!0,e=!0){return nE.includeCommonConfiguration({parsers:[new sE.default,new iE.default(e),new aE.default,new uE.default,new pE.default,new oE.default],refiners:[new lE.default,new cE.default]},r)}Ee.createConfiguration=Iu});var Qh=p(gt=>{"use strict";var gE=gt&>.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),_E=gt&>.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),TE=gt&>.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&gE(e,r,t);return _E(e,r),e},bE=gt&>.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(gt,"__esModule",{value:!0});var vE=bE(K()),EE=Te(),RE=E(),Xh=rt(),Us=TE(Gt()),Uu=class extends RE.AbstractParserWithWordBoundaryChecking{innerPattern(e){return/(maintenant|aujourd'hui|demain|hier|cette\s*nuit|la\s*veille)(?=\W|$)/i}innerExtract(e,t){let n=vE.default(e.refDate),i=t[0].toLowerCase(),s=e.createParsingComponents();switch(i){case"maintenant":return Us.now(e.reference);case"aujourd'hui":return Us.today(e.reference);case"hier":return Us.yesterday(e.reference);case"demain":return Us.tomorrow(e.reference);default:i.match(/cette\s*nuit/)?(Xh.assignSimilarDate(s,n),s.imply("hour",22),s.imply("meridiem",EE.Meridiem.PM)):i.match(/la\s*veille/)&&(n=n.add(-1,"day"),Xh.assignSimilarDate(s,n),s.imply("hour",0))}return s}};gt.default=Uu});var Jh=p(Fu=>{"use strict";Object.defineProperty(Fu,"__esModule",{value:!0});var Jn=Te(),wE=E(),qu=class extends wE.AbstractParserWithWordBoundaryChecking{innerPattern(e){return/(cet?)?\s*(matin|soir|après-midi|aprem|a midi|à minuit)(?=\W|$)/i}innerExtract(e,t){let n=t[2].toLowerCase(),i=e.createParsingComponents();switch(n){case"apr\xE8s-midi":case"aprem":i.imply("hour",14),i.imply("minute",0),i.imply("meridiem",Jn.Meridiem.PM);break;case"soir":i.imply("hour",18),i.imply("minute",0),i.imply("meridiem",Jn.Meridiem.PM);break;case"matin":i.imply("hour",8),i.imply("minute",0),i.imply("meridiem",Jn.Meridiem.AM);break;case"a midi":i.imply("hour",12),i.imply("minute",0),i.imply("meridiem",Jn.Meridiem.AM);break;case"\xE0 minuit":i.imply("hour",0),i.imply("meridiem",Jn.Meridiem.AM);break}return i}};Fu.default=qu});var em=p(Lu=>{"use strict";Object.defineProperty(Lu,"__esModule",{value:!0});var DE=xr(),Wu=class extends DE.AbstractTimeExpressionParser{primaryPrefix(){return"(?:(?:[\xE0a])\\s*)?"}followingPhase(){return"\\s*(?:\\-|\\\u2013|\\~|\\\u301C|[\xE0a]|\\?)\\s*"}extractPrimaryTimeComponents(e,t){return t[0].match(/^\s*\d{4}\s*$/)?null:super.extractPrimaryTimeComponents(e,t)}};Lu.default=Wu});var tm=p(ei=>{"use strict";var ME=ei&&ei.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ei,"__esModule",{value:!0});var PE=ME($t()),Yu=class extends PE.default{patternBetween(){return new RegExp("^\\s*(T|\xE0|a|vers|de|,|-)?\\s*$")}};ei.default=Yu});var rm=p(ti=>{"use strict";var OE=ti&&ti.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ti,"__esModule",{value:!0});var AE=OE(Ot()),$u=class extends AE.default{patternBetween(){return/^\s*(à|a|-)\s*$/i}};ti.default=$u});var gr=p(V=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.parseTimeUnits=V.TIME_UNITS_PATTERN=V.parseYear=V.YEAR_PATTERN=V.parseOrdinalNumberPattern=V.ORDINAL_NUMBER_PATTERN=V.parseNumberPattern=V.NUMBER_PATTERN=V.TIME_UNIT_DICTIONARY=V.INTEGER_WORD_DICTIONARY=V.MONTH_DICTIONARY=V.WEEKDAY_DICTIONARY=void 0;var ju=Q();V.WEEKDAY_DICTIONARY={dimanche:0,dim:0,lundi:1,lun:1,mardi:2,mar:2,mercredi:3,mer:3,jeudi:4,jeu:4,vendredi:5,ven:5,samedi:6,sam:6};V.MONTH_DICTIONARY={janvier:1,jan:1,"jan.":1,f\u00E9vrier:2,f\u00E9v:2,"f\xE9v.":2,fevrier:2,fev:2,"fev.":2,mars:3,mar:3,"mar.":3,avril:4,avr:4,"avr.":4,mai:5,juin:6,jun:6,juillet:7,juil:7,jul:7,"jul.":7,ao\u00FBt:8,aout:8,septembre:9,sep:9,"sep.":9,sept:9,"sept.":9,octobre:10,oct:10,"oct.":10,novembre:11,nov:11,"nov.":11,d\u00E9cembre:12,decembre:12,dec:12,"dec.":12};V.INTEGER_WORD_DICTIONARY={un:1,deux:2,trois:3,quatre:4,cinq:5,six:6,sept:7,huit:8,neuf:9,dix:10,onze:11,douze:12,treize:13};V.TIME_UNIT_DICTIONARY={sec:"second",seconde:"second",secondes:"second",min:"minute",mins:"minute",minute:"minute",minutes:"minute",h:"hour",hr:"hour",hrs:"hour",heure:"hour",heures:"hour",jour:"d",jours:"d",semaine:"week",semaines:"week",mois:"month",trimestre:"quarter",trimestres:"quarter",ans:"year",ann\u00E9e:"year",ann\u00E9es:"year"};V.NUMBER_PATTERN=`(?:${ju.matchAnyPattern(V.INTEGER_WORD_DICTIONARY)}|[0-9]+|[0-9]+\\.[0-9]+|une?\\b|quelques?|demi-?)`;function im(r){let e=r.toLowerCase();return V.INTEGER_WORD_DICTIONARY[e]!==void 0?V.INTEGER_WORD_DICTIONARY[e]:e==="une"||e==="un"?1:e.match(/quelques?/)?3:e.match(/demi-?/)?.5:parseFloat(e)}V.parseNumberPattern=im;V.ORDINAL_NUMBER_PATTERN="(?:[0-9]{1,2}(?:er)?)";function kE(r){let e=r.toLowerCase();return e=e.replace(/(?:er)$/i,""),parseInt(e)}V.parseOrdinalNumberPattern=kE;V.YEAR_PATTERN="(?:[1-9][0-9]{0,3}\\s*(?:AC|AD|p\\.\\s*C(?:hr?)?\\.\\s*n\\.)|[1-2][0-9]{3}|[5-9][0-9])";function NE(r){if(/AC/i.test(r))return r=r.replace(/BC/i,""),-parseInt(r);if(/AD/i.test(r)||/C/i.test(r))return r=r.replace(/[^\d]+/i,""),parseInt(r);let e=parseInt(r);return e<100&&(e>50?e=e+1900:e=e+2e3),e}V.parseYear=NE;var sm=`(${V.NUMBER_PATTERN})\\s{0,5}(${ju.matchAnyPattern(V.TIME_UNIT_DICTIONARY)})\\s{0,5}`,nm=new RegExp(sm,"i");V.TIME_UNITS_PATTERN=ju.repeatedTimeunitPattern("",sm);function CE(r){let e={},t=r,n=nm.exec(t);for(;n;)SE(e,n),t=t.substring(n[0].length),n=nm.exec(t);return e}V.parseTimeUnits=CE;function SE(r,e){let t=im(e[1]),n=V.TIME_UNIT_DICTIONARY[e[2].toLowerCase()];r[n]=t}});var om=p(Gu=>{"use strict";Object.defineProperty(Gu,"__esModule",{value:!0});var am=gr(),xE=Q(),IE=E(),UE=Ur(),qE=new RegExp(`(?:(?:\\,|\\(|\\\uFF08)\\s*)?(?:(?:ce)\\s*)?(${xE.matchAnyPattern(am.WEEKDAY_DICTIONARY)})(?:\\s*(?:\\,|\\)|\\\uFF09))?(?:\\s*(dernier|prochain)\\s*)?(?=\\W|\\d|$)`,"i"),FE=1,WE=2,Bu=class extends IE.AbstractParserWithWordBoundaryChecking{innerPattern(){return qE}innerExtract(e,t){let n=t[FE].toLowerCase(),i=am.WEEKDAY_DICTIONARY[n];if(i===void 0)return null;let s=t[WE];s=s||"",s=s.toLowerCase();let a=null;s=="dernier"?a="last":s=="prochain"&&(a="next");let o=UE.toDayJSWeekday(e.refDate,i,a);return e.createParsingComponents().assign("weekday",i).imply("day",o.date()).imply("month",o.month()+1).imply("year",o.year())}};Gu.default=Bu});var dm=p(Hu=>{"use strict";Object.defineProperty(Hu,"__esModule",{value:!0});var ri=Te(),LE=new RegExp("(^|\\s|T)(?:(?:[\xE0a])\\s*)?(\\d{1,2})(?:h|:)?(?:(\\d{1,2})(?:m|:)?)?(?:(\\d{1,2})(?:s|:)?)?(?:\\s*(A\\.M\\.|P\\.M\\.|AM?|PM?))?(?=\\W|$)","i"),YE=new RegExp("^\\s*(\\-|\\\u2013|\\~|\\\u301C|[\xE0a]|\\?)\\s*(\\d{1,2})(?:h|:)?(?:(\\d{1,2})(?:m|:)?)?(?:(\\d{1,2})(?:s|:)?)?(?:\\s*(A\\.M\\.|P\\.M\\.|AM?|PM?))?(?=\\W|$)","i"),$E=2,um=3,lm=4,cm=5,fn=class{pattern(e){return LE}extract(e,t){let n=e.createParsingResult(t.index+t[1].length,t[0].substring(t[1].length));if(n.text.match(/^\d{4}$/)||(n.start=fn.extractTimeComponent(n.start.clone(),t),!n.start))return t.index+=t[0].length,null;let i=e.text.substring(t.index+t[0].length),s=YE.exec(i);return s&&(n.end=fn.extractTimeComponent(n.start.clone(),s),n.end&&(n.text+=s[0])),n}static extractTimeComponent(e,t){let n=0,i=0,s=null;if(n=parseInt(t[$E]),t[um]!=null&&(i=parseInt(t[um])),i>=60||n>24)return null;if(n>=12&&(s=ri.Meridiem.PM),t[cm]!=null){if(n>12)return null;let a=t[cm][0].toLowerCase();a=="a"&&(s=ri.Meridiem.AM,n==12&&(n=0)),a=="p"&&(s=ri.Meridiem.PM,n!=12&&(n+=12))}if(e.assign("hour",n),e.assign("minute",i),s!==null?e.assign("meridiem",s):n<12?e.imply("meridiem",ri.Meridiem.AM):e.imply("meridiem",ri.Meridiem.PM),t[lm]!=null){let a=parseInt(t[lm]);if(a>=60)return null;e.assign("second",a)}return e}};Hu.default=fn});var gm=p(Ku=>{"use strict";Object.defineProperty(Ku,"__esModule",{value:!0});var jE=Ce(),mm=gr(),ym=gr(),qs=gr(),BE=Q(),GE=E(),HE=new RegExp(`(?:on\\s*?)?(${qs.ORDINAL_NUMBER_PATTERN})(?:\\s*(?:au|\\-|\\\u2013|jusqu'au?|\\s)\\s*(${qs.ORDINAL_NUMBER_PATTERN}))?(?:-|/|\\s*(?:de)?\\s*)(${BE.matchAnyPattern(mm.MONTH_DICTIONARY)})(?:(?:-|/|,?\\s*)(${ym.YEAR_PATTERN}(?![^\\s]\\d)))?(?=\\W|$)`,"i"),fm=1,pm=2,zE=3,hm=4,zu=class extends GE.AbstractParserWithWordBoundaryChecking{innerPattern(){return HE}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=mm.MONTH_DICTIONARY[t[zE].toLowerCase()],s=qs.parseOrdinalNumberPattern(t[fm]);if(s>31)return t.index=t.index+t[fm].length,null;if(n.start.assign("month",i),n.start.assign("day",s),t[hm]){let a=ym.parseYear(t[hm]);n.start.assign("year",a)}else{let a=jE.findYearClosestToRef(e.refDate,s,i);n.start.imply("year",a)}if(t[pm]){let a=qs.parseOrdinalNumberPattern(t[pm]);n.end=n.start.clone(),n.end.assign("day",a)}return n}};Ku.default=zu});var Tm=p(Zu=>{"use strict";Object.defineProperty(Zu,"__esModule",{value:!0});var _m=gr(),KE=de(),VE=E(),ZE=nt(),Vu=class extends VE.AbstractParserWithWordBoundaryChecking{constructor(){super()}innerPattern(){return new RegExp(`il y a\\s*(${_m.TIME_UNITS_PATTERN})(?=(?:\\W|$))`,"i")}innerExtract(e,t){let n=_m.parseTimeUnits(t[1]),i=ZE.reverseTimeUnits(n);return KE.ParsingComponents.createRelativeFromReference(e.reference,i)}};Zu.default=Vu});var vm=p(Qu=>{"use strict";Object.defineProperty(Qu,"__esModule",{value:!0});var bm=gr(),XE=de(),QE=E(),Xu=class extends QE.AbstractParserWithWordBoundaryChecking{innerPattern(){return new RegExp(`(?:dans|en|pour|pendant|de)\\s*(${bm.TIME_UNITS_PATTERN})(?=\\W|$)`,"i")}innerExtract(e,t){let n=bm.parseTimeUnits(t[1]);return XE.ParsingComponents.createRelativeFromReference(e.reference,n)}};Qu.default=Xu});var Em=p(el=>{"use strict";Object.defineProperty(el,"__esModule",{value:!0});var Fs=gr(),JE=de(),e0=E(),t0=nt(),r0=Q(),Ju=class extends e0.AbstractParserWithWordBoundaryChecking{constructor(){super()}innerPattern(){return new RegExp(`(?:les?|la|l'|du|des?)\\s*(${Fs.NUMBER_PATTERN})?(?:\\s*(prochaine?s?|derni[e\xE8]re?s?|pass[\xE9e]e?s?|pr[\xE9e]c[\xE9e]dents?|suivante?s?))?\\s*(${r0.matchAnyPattern(Fs.TIME_UNIT_DICTIONARY)})(?:\\s*(prochaine?s?|derni[e\xE8]re?s?|pass[\xE9e]e?s?|pr[\xE9e]c[\xE9e]dents?|suivante?s?))?`,"i")}innerExtract(e,t){let n=t[1]?Fs.parseNumberPattern(t[1]):1,i=Fs.TIME_UNIT_DICTIONARY[t[3].toLowerCase()],s={};s[i]=n;let a=t[2]||t[4]||"";if(a=a.toLowerCase(),!!a)return(/derni[eè]re?s?/.test(a)||/pass[ée]e?s?/.test(a)||/pr[ée]c[ée]dents?/.test(a))&&(s=t0.reverseTimeUnits(s)),JE.ParsingComponents.createRelativeFromReference(e.reference,s)}};el.default=Ju});var Dm=p(Re=>{"use strict";var it=Re&&Re.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Re,"__esModule",{value:!0});Re.createConfiguration=Re.createCasualConfiguration=Re.parseDate=Re.parse=Re.strict=Re.casual=void 0;var n0=jt(),Rm=ht(),i0=it(Qh()),s0=it(Jh()),a0=it(qr()),o0=it(em()),u0=it(tm()),l0=it(rm()),c0=it(om()),d0=it(dm()),f0=it(gm()),p0=it(Tm()),h0=it(vm()),m0=it(Em());Re.casual=new Rm.Chrono(wm());Re.strict=new Rm.Chrono(tl(!0));function y0(r,e,t){return Re.casual.parse(r,e,t)}Re.parse=y0;function g0(r,e,t){return Re.casual.parseDate(r,e,t)}Re.parseDate=g0;function wm(r=!0){let e=tl(!1,r);return e.parsers.unshift(new i0.default),e.parsers.unshift(new s0.default),e.parsers.unshift(new m0.default),e}Re.createCasualConfiguration=wm;function tl(r=!0,e=!0){return n0.includeCommonConfiguration({parsers:[new a0.default(e),new f0.default,new o0.default,new d0.default,new p0.default,new h0.default,new c0.default],refiners:[new u0.default,new l0.default]},r)}Re.createConfiguration=tl});var Mm=p(Ws=>{"use strict";Object.defineProperty(Ws,"__esModule",{value:!0});Ws.toHankaku=void 0;function _0(r){return String(r).replace(/\u2019/g,"'").replace(/\u201D/g,'"').replace(/\u3000/g," ").replace(/\uFFE5/g,"\xA5").replace(/[\uFF01\uFF03-\uFF06\uFF08\uFF09\uFF0C-\uFF19\uFF1C-\uFF1F\uFF21-\uFF3B\uFF3D\uFF3F\uFF41-\uFF5B\uFF5D\uFF5E]/g,T0)}Ws.toHankaku=_0;function T0(r){return String.fromCharCode(r.charCodeAt(0)-65248)}});var Om=p(ni=>{"use strict";var b0=ni&&ni.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ni,"__esModule",{value:!0});var rl=Mm(),v0=Ce(),E0=b0(K()),R0=/(?:(?:([同今本])|((昭和|平成|令和)?([0-90-9]{1,4}|元)))年\s*)?([0-90-9]{1,2})月\s*([0-90-9]{1,2})日/i,Pm=1,w0=2,nl=3,D0=4,M0=5,P0=6,il=class{pattern(){return R0}extract(e,t){let n=parseInt(rl.toHankaku(t[M0])),i=parseInt(rl.toHankaku(t[P0])),s=e.createParsingComponents({day:i,month:n});if(t[Pm]&&t[Pm].match("\u540C|\u4ECA|\u672C")){let a=E0.default(e.refDate);s.assign("year",a.year())}if(t[w0]){let a=t[D0],o=a=="\u5143"?1:parseInt(rl.toHankaku(a));t[nl]=="\u4EE4\u548C"?o+=2018:t[nl]=="\u5E73\u6210"?o+=1988:t[nl]=="\u662D\u548C"&&(o+=1925),s.assign("year",o)}else{let a=v0.findYearClosestToRef(e.refDate,i,n);s.imply("year",a)}return s}};ni.default=il});var Am=p(ii=>{"use strict";var O0=ii&&ii.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ii,"__esModule",{value:!0});var A0=O0(Ot()),sl=class extends A0.default{patternBetween(){return/^\s*(から|ー|-)\s*$/i}};ii.default=sl});var Nm=p(_t=>{"use strict";var k0=_t&&_t.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),N0=_t&&_t.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),C0=_t&&_t.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&k0(e,r,t);return N0(e,r),e},S0=_t&&_t.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(_t,"__esModule",{value:!0});var x0=S0(K()),km=Te(),al=C0(Gt()),I0=/今日|当日|昨日|明日|今夜|今夕|今晩|今朝/i,ol=class{pattern(){return I0}extract(e,t){let n=t[0],i=x0.default(e.refDate),s=e.createParsingComponents();switch(n){case"\u6628\u65E5":return al.yesterday(e.reference);case"\u660E\u65E5":return al.tomorrow(e.reference);case"\u4ECA\u65E5":case"\u5F53\u65E5":return al.today(e.reference)}return n=="\u4ECA\u591C"||n=="\u4ECA\u5915"||n=="\u4ECA\u6669"?(s.imply("hour",22),s.assign("meridiem",km.Meridiem.PM)):n.match("\u4ECA\u671D")&&(s.imply("hour",6),s.assign("meridiem",km.Meridiem.AM)),s.assign("day",i.date()),s.assign("month",i.month()+1),s.assign("year",i.year()),s}};_t.default=ol});var xm=p(we=>{"use strict";var ul=we&&we.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(we,"__esModule",{value:!0});we.createConfiguration=we.createCasualConfiguration=we.parseDate=we.parse=we.strict=we.casual=void 0;var U0=ul(Om()),q0=ul(Am()),F0=ul(Nm()),Cm=ht();we.casual=new Cm.Chrono(Sm());we.strict=new Cm.Chrono(ll());function W0(r,e,t){return we.casual.parse(r,e,t)}we.parse=W0;function L0(r,e,t){return we.casual.parseDate(r,e,t)}we.parseDate=L0;function Sm(){let r=ll();return r.parsers.unshift(new F0.default),r}we.createCasualConfiguration=Sm;function ll(){return{parsers:[new U0.default],refiners:[new q0.default]}}we.createConfiguration=ll});var Ls=p(kt=>{"use strict";Object.defineProperty(kt,"__esModule",{value:!0});kt.parseYear=kt.YEAR_PATTERN=kt.MONTH_DICTIONARY=kt.WEEKDAY_DICTIONARY=void 0;kt.WEEKDAY_DICTIONARY={domingo:0,dom:0,segunda:1,"segunda-feira":1,seg:1,ter\u00E7a:2,"ter\xE7a-feira":2,ter:2,quarta:3,"quarta-feira":3,qua:3,quinta:4,"quinta-feira":4,qui:4,sexta:5,"sexta-feira":5,sex:5,s\u00E1bado:6,sabado:6,sab:6};kt.MONTH_DICTIONARY={janeiro:1,jan:1,"jan.":1,fevereiro:2,fev:2,"fev.":2,mar\u00E7o:3,mar:3,"mar.":3,abril:4,abr:4,"abr.":4,maio:5,mai:5,"mai.":5,junho:6,jun:6,"jun.":6,julho:7,jul:7,"jul.":7,agosto:8,ago:8,"ago.":8,setembro:9,set:9,"set.":9,outubro:10,out:10,"out.":10,novembro:11,nov:11,"nov.":11,dezembro:12,dez:12,"dez.":12};kt.YEAR_PATTERN="[0-9]{1,4}(?![^\\s]\\d)(?:\\s*[a|d]\\.?\\s*c\\.?|\\s*a\\.?\\s*d\\.?)?";function Y0(r){if(r.match(/^[0-9]{1,4}$/)){let e=parseInt(r);return e<100&&(e>50?e=e+1900:e=e+2e3),e}return r.match(/a\.?\s*c\.?/i)?(r=r.replace(/a\.?\s*c\.?/i,""),-parseInt(r)):parseInt(r)}kt.parseYear=Y0});var Um=p(dl=>{"use strict";Object.defineProperty(dl,"__esModule",{value:!0});var Im=Ls(),$0=Q(),j0=E(),B0=Ur(),G0=new RegExp(`(?:(?:\\,|\\(|\\\uFF08)\\s*)?(?:(este|esta|passado|pr[o\xF3]ximo)\\s*)?(${$0.matchAnyPattern(Im.WEEKDAY_DICTIONARY)})(?:\\s*(?:\\,|\\)|\\\uFF09))?(?:\\s*(este|esta|passado|pr[\xF3o]ximo)\\s*semana)?(?=\\W|\\d|$)`,"i"),H0=1,z0=2,K0=3,cl=class extends j0.AbstractParserWithWordBoundaryChecking{innerPattern(){return G0}innerExtract(e,t){let n=t[z0].toLowerCase(),i=Im.WEEKDAY_DICTIONARY[n];if(i===void 0)return null;let s=t[H0],a=t[K0],o=s||a||"";o=o.toLowerCase();let u=null;o=="passado"?u="this":o=="pr\xF3ximo"||o=="proximo"?u="next":o=="este"&&(u="this");let l=B0.toDayJSWeekday(e.refDate,i,u);return e.createParsingComponents().assign("weekday",i).imply("day",l.date()).imply("month",l.month()+1).imply("year",l.year())}};dl.default=cl});var qm=p(pl=>{"use strict";Object.defineProperty(pl,"__esModule",{value:!0});var V0=xr(),fl=class extends V0.AbstractTimeExpressionParser{primaryPrefix(){return"(?:(?:ao?|\xE0s?|das|da|de|do)\\s*)?"}followingPhase(){return"\\s*(?:\\-|\\\u2013|\\~|\\\u301C|a(?:o)?|\\?)\\s*"}};pl.default=fl});var Fm=p(si=>{"use strict";var Z0=si&&si.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(si,"__esModule",{value:!0});var X0=Z0($t()),hl=class extends X0.default{patternBetween(){return new RegExp("^\\s*(?:,|\xE0)?\\s*$")}};si.default=hl});var Wm=p(ai=>{"use strict";var Q0=ai&&ai.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ai,"__esModule",{value:!0});var J0=Q0(Ot()),ml=class extends J0.default{patternBetween(){return/^\s*(?:-)\s*$/i}};ai.default=ml});var Gm=p(gl=>{"use strict";Object.defineProperty(gl,"__esModule",{value:!0});var eR=Ce(),jm=Ls(),Bm=Ls(),tR=Q(),rR=E(),nR=new RegExp(`([0-9]{1,2})(?:\xBA|\xAA|\xB0)?(?:\\s*(?:desde|de|\\-|\\\u2013|ao?|\\s)\\s*([0-9]{1,2})(?:\xBA|\xAA|\xB0)?)?\\s*(?:de)?\\s*(?:-|/|\\s*(?:de|,)?\\s*)(${tR.matchAnyPattern(jm.MONTH_DICTIONARY)})(?:\\s*(?:de|,)?\\s*(${Bm.YEAR_PATTERN}))?(?=\\W|$)`,"i"),Lm=1,Ym=2,iR=3,$m=4,yl=class extends rR.AbstractParserWithWordBoundaryChecking{innerPattern(){return nR}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=jm.MONTH_DICTIONARY[t[iR].toLowerCase()],s=parseInt(t[Lm]);if(s>31)return t.index=t.index+t[Lm].length,null;if(n.start.assign("month",i),n.start.assign("day",s),t[$m]){let a=Bm.parseYear(t[$m]);n.start.assign("year",a)}else{let a=eR.findYearClosestToRef(e.refDate,s,i);n.start.imply("year",a)}if(t[Ym]){let a=parseInt(t[Ym]);n.end=n.start.clone(),n.end.assign("day",a)}return n}};gl.default=yl});var Hm=p(Ht=>{"use strict";var sR=Ht&&Ht.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),aR=Ht&&Ht.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),oR=Ht&&Ht.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&sR(e,r,t);return aR(e,r),e};Object.defineProperty(Ht,"__esModule",{value:!0});var uR=E(),Ys=oR(Gt()),_l=class extends uR.AbstractParserWithWordBoundaryChecking{innerPattern(e){return/(agora|hoje|amanha|amanhã|ontem)(?=\W|$)/i}innerExtract(e,t){let n=t[0].toLowerCase(),i=e.createParsingComponents();switch(n){case"agora":return Ys.now(e.reference);case"hoje":return Ys.today(e.reference);case"amanha":case"amanh\xE3":return Ys.tomorrow(e.reference);case"ontem":return Ys.yesterday(e.reference)}return i}};Ht.default=_l});var zm=p(oi=>{"use strict";var lR=oi&&oi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(oi,"__esModule",{value:!0});var $s=Te(),cR=E(),dR=rt(),fR=lR(K()),Tl=class extends cR.AbstractParserWithWordBoundaryChecking{innerPattern(){return/(?:esta\s*)?(manha|manhã|tarde|meia-noite|meio-dia|noite)(?=\W|$)/i}innerExtract(e,t){let n=fR.default(e.refDate),i=e.createParsingComponents();switch(t[1].toLowerCase()){case"tarde":i.imply("meridiem",$s.Meridiem.PM),i.imply("hour",15);break;case"noite":i.imply("meridiem",$s.Meridiem.PM),i.imply("hour",22);break;case"manha":case"manh\xE3":i.imply("meridiem",$s.Meridiem.AM),i.imply("hour",6);break;case"meia-noite":dR.assignTheNextDay(i,n),i.imply("hour",0),i.imply("minute",0),i.imply("second",0);break;case"meio-dia":i.imply("meridiem",$s.Meridiem.AM),i.imply("hour",12);break}return i}};oi.default=Tl});var Zm=p(De=>{"use strict";var _r=De&&De.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(De,"__esModule",{value:!0});De.createConfiguration=De.createCasualConfiguration=De.parseDate=De.parse=De.strict=De.casual=void 0;var pR=jt(),Km=ht(),hR=_r(qr()),mR=_r(Um()),yR=_r(qm()),gR=_r(Fm()),_R=_r(Wm()),TR=_r(Gm()),bR=_r(Hm()),vR=_r(zm());De.casual=new Km.Chrono(Vm());De.strict=new Km.Chrono(bl(!0));function ER(r,e,t){return De.casual.parse(r,e,t)}De.parse=ER;function RR(r,e,t){return De.casual.parseDate(r,e,t)}De.parseDate=RR;function Vm(r=!0){let e=bl(!1,r);return e.parsers.push(new bR.default),e.parsers.push(new vR.default),e}De.createCasualConfiguration=Vm;function bl(r=!0,e=!0){return pR.includeCommonConfiguration({parsers:[new hR.default(e),new mR.default,new yR.default,new TR.default],refiners:[new gR.default,new _R.default]},r)}De.createConfiguration=bl});var Xm=p(ui=>{"use strict";var wR=ui&&ui.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ui,"__esModule",{value:!0});var DR=wR(Ot()),vl=class extends DR.default{patternBetween(){return/^\s*(tot|-)\s*$/i}};ui.default=vl});var Qm=p(li=>{"use strict";var MR=li&&li.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(li,"__esModule",{value:!0});var PR=MR($t()),El=class extends PR.default{patternBetween(){return new RegExp("^\\s*(om|na|voor|in de|,|-)?\\s*$")}};li.default=El});var Jm=p(zt=>{"use strict";var OR=zt&&zt.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),AR=zt&&zt.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),kR=zt&&zt.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&OR(e,r,t);return AR(e,r),e};Object.defineProperty(zt,"__esModule",{value:!0});var NR=E(),js=kR(Gt()),Rl=class extends NR.AbstractParserWithWordBoundaryChecking{innerPattern(e){return/(nu|vandaag|morgen|morgend|gisteren)(?=\W|$)/i}innerExtract(e,t){let n=t[0].toLowerCase(),i=e.createParsingComponents();switch(n){case"nu":return js.now(e.reference);case"vandaag":return js.today(e.reference);case"morgen":case"morgend":return js.tomorrow(e.reference);case"gisteren":return js.yesterday(e.reference)}return i}};zt.default=Rl});var ey=p(ci=>{"use strict";var CR=ci&&ci.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ci,"__esModule",{value:!0});var Bs=Te(),SR=E(),xR=CR(K()),IR=rt(),UR=1,qR=2,wl=class extends SR.AbstractParserWithWordBoundaryChecking{innerPattern(){return/(deze)?\s*(namiddag|avond|middernacht|ochtend|middag|'s middags|'s avonds|'s ochtends)(?=\W|$)/i}innerExtract(e,t){let n=xR.default(e.refDate),i=e.createParsingComponents();switch(t[UR]==="deze"&&(i.assign("day",e.refDate.getDate()),i.assign("month",e.refDate.getMonth()+1),i.assign("year",e.refDate.getFullYear())),t[qR].toLowerCase()){case"namiddag":case"'s namiddags":i.imply("meridiem",Bs.Meridiem.PM),i.imply("hour",15);break;case"avond":case"'s avonds'":i.imply("meridiem",Bs.Meridiem.PM),i.imply("hour",20);break;case"middernacht":IR.assignTheNextDay(i,n),i.imply("hour",0),i.imply("minute",0),i.imply("second",0);break;case"ochtend":case"'s ochtends":i.imply("meridiem",Bs.Meridiem.AM),i.imply("hour",6);break;case"middag":case"'s middags":i.imply("meridiem",Bs.Meridiem.AM),i.imply("hour",12);break}return i}};ci.default=wl});var Ze=p($=>{"use strict";Object.defineProperty($,"__esModule",{value:!0});$.parseTimeUnits=$.TIME_UNITS_PATTERN=$.parseYear=$.YEAR_PATTERN=$.parseOrdinalNumberPattern=$.ORDINAL_NUMBER_PATTERN=$.parseNumberPattern=$.NUMBER_PATTERN=$.TIME_UNIT_DICTIONARY=$.ORDINAL_WORD_DICTIONARY=$.INTEGER_WORD_DICTIONARY=$.MONTH_DICTIONARY=$.WEEKDAY_DICTIONARY=void 0;var Gs=Q(),FR=Ce();$.WEEKDAY_DICTIONARY={zondag:0,zon:0,"zon.":0,zo:0,"zo.":0,maandag:1,ma:1,"ma.":1,dinsdag:2,din:2,"din.":2,di:2,"di.":2,woensdag:3,woe:3,"woe.":3,wo:3,"wo.":3,donderdag:4,dond:4,"dond.":4,do:4,"do.":4,vrijdag:5,vrij:5,"vrij.":5,vr:5,"vr.":5,zaterdag:6,zat:6,"zat.":6,za:6,"za.":6};$.MONTH_DICTIONARY={januari:1,jan:1,"jan.":1,februari:2,feb:2,"feb.":2,maart:3,mar:3,"mar.":3,april:4,apr:4,"apr.":4,mei:5,juni:6,jun:6,"jun.":6,juli:7,jul:7,"jul.":7,augustus:8,aug:8,"aug.":8,september:9,sep:9,"sep.":9,sept:9,"sept.":9,oktober:10,okt:10,"okt.":10,november:11,nov:11,"nov.":11,december:12,dec:12,"dec.":12};$.INTEGER_WORD_DICTIONARY={een:1,twee:2,drie:3,vier:4,vijf:5,zes:6,zeven:7,acht:8,negen:9,tien:10,elf:11,twaalf:12};$.ORDINAL_WORD_DICTIONARY={eerste:1,tweede:2,derde:3,vierde:4,vijfde:5,zesde:6,zevende:7,achtste:8,negende:9,tiende:10,elfde:11,twaalfde:12,dertiende:13,veertiende:14,vijftiende:15,zestiende:16,zeventiende:17,achttiende:18,negentiende:19,twintigste:20,eenentwintigste:21,twee\u00EBntwintigste:22,drieentwintigste:23,vierentwintigste:24,vijfentwintigste:25,zesentwintigste:26,zevenentwintigste:27,achtentwintig:28,negenentwintig:29,dertigste:30,eenendertigste:31};$.TIME_UNIT_DICTIONARY={sec:"second",second:"second",seconden:"second",min:"minute",mins:"minute",minute:"minute",minuut:"minute",minuten:"minute",minuutje:"minute",h:"hour",hr:"hour",hrs:"hour",uur:"hour",u:"hour",uren:"hour",dag:"d",dagen:"d",week:"week",weken:"week",maand:"month",maanden:"month",jaar:"year",jr:"year",jaren:"year"};$.NUMBER_PATTERN=`(?:${Gs.matchAnyPattern($.INTEGER_WORD_DICTIONARY)}|[0-9]+|[0-9]+[\\.,][0-9]+|halve?|half|paar)`;function ry(r){let e=r.toLowerCase();return $.INTEGER_WORD_DICTIONARY[e]!==void 0?$.INTEGER_WORD_DICTIONARY[e]:e==="paar"?2:e==="half"||e.match(/halve?/)?.5:parseFloat(e.replace(",","."))}$.parseNumberPattern=ry;$.ORDINAL_NUMBER_PATTERN=`(?:${Gs.matchAnyPattern($.ORDINAL_WORD_DICTIONARY)}|[0-9]{1,2}(?:ste|de)?)`;function WR(r){let e=r.toLowerCase();return $.ORDINAL_WORD_DICTIONARY[e]!==void 0?$.ORDINAL_WORD_DICTIONARY[e]:(e=e.replace(/(?:ste|de)$/i,""),parseInt(e))}$.parseOrdinalNumberPattern=WR;$.YEAR_PATTERN="(?:[1-9][0-9]{0,3}\\s*(?:voor Christus|na Christus)|[1-2][0-9]{3}|[5-9][0-9])";function LR(r){if(/voor Christus/i.test(r))return r=r.replace(/voor Christus/i,""),-parseInt(r);if(/na Christus/i.test(r))return r=r.replace(/na Christus/i,""),parseInt(r);let e=parseInt(r);return FR.findMostLikelyADYear(e)}$.parseYear=LR;var ny=`(${$.NUMBER_PATTERN})\\s{0,5}(${Gs.matchAnyPattern($.TIME_UNIT_DICTIONARY)})\\s{0,5}`,ty=new RegExp(ny,"i");$.TIME_UNITS_PATTERN=Gs.repeatedTimeunitPattern("(?:(?:binnen|in)\\s*)?",ny);function YR(r){let e={},t=r,n=ty.exec(t);for(;n;)$R(e,n),t=t.substring(n[0].length),n=ty.exec(t);return e}$.parseTimeUnits=YR;function $R(r,e){let t=ry(e[1]),n=$.TIME_UNIT_DICTIONARY[e[2].toLowerCase()];r[n]=t}});var sy=p(Ml=>{"use strict";Object.defineProperty(Ml,"__esModule",{value:!0});var iy=Ze(),jR=de(),BR=E(),Dl=class extends BR.AbstractParserWithWordBoundaryChecking{innerPattern(){return new RegExp("(?:binnen|in|binnen de|voor)\\s*("+iy.TIME_UNITS_PATTERN+")(?=\\W|$)","i")}innerExtract(e,t){let n=iy.parseTimeUnits(t[1]);return jR.ParsingComponents.createRelativeFromReference(e.reference,n)}};Ml.default=Dl});var oy=p(Ol=>{"use strict";Object.defineProperty(Ol,"__esModule",{value:!0});var ay=Ze(),GR=Q(),HR=E(),zR=Ur(),KR=new RegExp(`(?:(?:\\,|\\(|\\\uFF08)\\s*)?(?:op\\s*?)?(?:(deze|vorige|volgende)\\s*(?:week\\s*)?)?(${GR.matchAnyPattern(ay.WEEKDAY_DICTIONARY)})(?=\\W|$)`,"i"),VR=1,ZR=2,XR=3,Pl=class extends HR.AbstractParserWithWordBoundaryChecking{innerPattern(){return KR}innerExtract(e,t){let n=t[ZR].toLowerCase(),i=ay.WEEKDAY_DICTIONARY[n],s=t[VR],a=t[XR],o=s||a;o=o||"",o=o.toLowerCase();let u=null;o=="vorige"?u="last":o=="volgende"?u="next":o=="deze"&&(u="this");let l=zR.toDayJSWeekday(e.refDate,i,u);return e.createParsingComponents().assign("weekday",i).imply("day",l.date()).imply("month",l.month()+1).imply("year",l.year())}};Ol.default=Pl});var py=p(kl=>{"use strict";Object.defineProperty(kl,"__esModule",{value:!0});var QR=Ce(),dy=Ze(),Hs=Ze(),fy=Ze(),JR=Q(),ew=E(),tw=new RegExp(`(?:on\\s*?)?(${Hs.ORDINAL_NUMBER_PATTERN})(?:\\s*(?:tot|\\-|\\\u2013|until|through|till|\\s)\\s*(${Hs.ORDINAL_NUMBER_PATTERN}))?(?:-|/|\\s*(?:of)?\\s*)(`+JR.matchAnyPattern(dy.MONTH_DICTIONARY)+`)(?:(?:-|/|,?\\s*)(${fy.YEAR_PATTERN}(?![^\\s]\\d)))?(?=\\W|$)`,"i"),rw=3,uy=1,ly=2,cy=4,Al=class extends ew.AbstractParserWithWordBoundaryChecking{innerPattern(){return tw}innerExtract(e,t){let n=dy.MONTH_DICTIONARY[t[rw].toLowerCase()],i=Hs.parseOrdinalNumberPattern(t[uy]);if(i>31)return t.index=t.index+t[uy].length,null;let s=e.createParsingComponents({day:i,month:n});if(t[cy]){let u=fy.parseYear(t[cy]);s.assign("year",u)}else{let u=QR.findYearClosestToRef(e.refDate,i,n);s.imply("year",u)}if(!t[ly])return s;let a=Hs.parseOrdinalNumberPattern(t[ly]),o=e.createParsingResult(t.index,t[0]);return o.start=s,o.end=s.clone(),o.end.assign("day",a),o}};kl.default=Al});var gy=p(Cl=>{"use strict";Object.defineProperty(Cl,"__esModule",{value:!0});var my=Ze(),nw=Ce(),iw=Q(),yy=Ze(),sw=E(),aw=new RegExp(`(${iw.matchAnyPattern(my.MONTH_DICTIONARY)})\\s*(?:[,-]?\\s*(${yy.YEAR_PATTERN})?)?(?=[^\\s\\w]|\\s+[^0-9]|\\s+$|$)`,"i"),ow=1,hy=2,Nl=class extends sw.AbstractParserWithWordBoundaryChecking{innerPattern(){return aw}innerExtract(e,t){let n=e.createParsingComponents();n.imply("day",1);let i=t[ow],s=my.MONTH_DICTIONARY[i.toLowerCase()];if(n.assign("month",s),t[hy]){let a=yy.parseYear(t[hy]);n.assign("year",a)}else{let a=nw.findYearClosestToRef(e.refDate,1,s);n.imply("year",a)}return n}};Cl.default=Nl});var _y=p(xl=>{"use strict";Object.defineProperty(xl,"__esModule",{value:!0});var uw=E(),lw=new RegExp("([0-9]|0[1-9]|1[012])/([0-9]{4})","i"),cw=1,dw=2,Sl=class extends uw.AbstractParserWithWordBoundaryChecking{innerPattern(){return lw}innerExtract(e,t){let n=parseInt(t[dw]),i=parseInt(t[cw]);return e.createParsingComponents().imply("day",1).assign("month",i).assign("year",n)}};xl.default=Sl});var Ty=p(Ul=>{"use strict";Object.defineProperty(Ul,"__esModule",{value:!0});var fw=xr(),Il=class extends fw.AbstractTimeExpressionParser{primaryPrefix(){return"(?:(?:om)\\s*)?"}followingPhase(){return"\\s*(?:\\-|\\\u2013|\\~|\\\u301C|om|\\?)\\s*"}primarySuffix(){return"(?:\\s*(?:uur))?(?!/)(?=\\W|$)"}extractPrimaryTimeComponents(e,t){return t[0].match(/^\s*\d{4}\s*$/)?null:super.extractPrimaryTimeComponents(e,t)}};Ul.default=Il});var Ey=p(Fl=>{"use strict";Object.defineProperty(Fl,"__esModule",{value:!0});var vy=Ze(),pw=Q(),hw=E(),mw=new RegExp(`([0-9]{4})[\\.\\/\\s](?:(${pw.matchAnyPattern(vy.MONTH_DICTIONARY)})|([0-9]{1,2}))[\\.\\/\\s]([0-9]{1,2})(?=\\W|$)`,"i"),yw=1,gw=2,by=3,_w=4,ql=class extends hw.AbstractParserWithWordBoundaryChecking{innerPattern(){return mw}innerExtract(e,t){let n=t[by]?parseInt(t[by]):vy.MONTH_DICTIONARY[t[gw].toLowerCase()];if(n<1||n>12)return null;let i=parseInt(t[yw]);return{day:parseInt(t[_w]),month:n,year:i}}};Fl.default=ql});var Ry=p(di=>{"use strict";var Tw=di&&di.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(di,"__esModule",{value:!0});var bw=E(),zs=Te(),Wl=rt(),vw=Tw(K()),Ew=1,Rw=2,Ll=class extends bw.AbstractParserWithWordBoundaryChecking{innerPattern(e){return/(gisteren|morgen|van)(ochtend|middag|namiddag|avond|nacht)(?=\W|$)/i}innerExtract(e,t){let n=t[Ew].toLowerCase(),i=t[Rw].toLowerCase(),s=e.createParsingComponents(),a=vw.default(e.refDate);switch(n){case"gisteren":Wl.assignSimilarDate(s,a.add(-1,"day"));break;case"van":Wl.assignSimilarDate(s,a);break;case"morgen":Wl.assignTheNextDay(s,a);break}switch(i){case"ochtend":s.imply("meridiem",zs.Meridiem.AM),s.imply("hour",6);break;case"middag":s.imply("meridiem",zs.Meridiem.AM),s.imply("hour",12);break;case"namiddag":s.imply("meridiem",zs.Meridiem.PM),s.imply("hour",15);break;case"avond":s.imply("meridiem",zs.Meridiem.PM),s.imply("hour",20);break}return s}};di.default=Ll});var Dy=p($l=>{"use strict";Object.defineProperty($l,"__esModule",{value:!0});var wy=Ze(),ww=de(),Dw=E(),Mw=nt(),Pw=new RegExp(`(deze|vorige|afgelopen|komende|over|\\+|-)\\s*(${wy.TIME_UNITS_PATTERN})(?=\\W|$)`,"i"),Yl=class extends Dw.AbstractParserWithWordBoundaryChecking{innerPattern(){return Pw}innerExtract(e,t){let n=t[1].toLowerCase(),i=wy.parseTimeUnits(t[2]);switch(n){case"vorige":case"afgelopen":case"-":i=Mw.reverseTimeUnits(i);break}return ww.ParsingComponents.createRelativeFromReference(e.reference,i)}};$l.default=Yl});var Oy=p(fi=>{"use strict";var Ow=fi&&fi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(fi,"__esModule",{value:!0});var Py=Ze(),My=de(),Aw=Ow(K()),kw=E(),Nw=Q(),Cw=new RegExp(`(dit|deze|komende|volgend|volgende|afgelopen|vorige)\\s*(${Nw.matchAnyPattern(Py.TIME_UNIT_DICTIONARY)})(?=\\s*)(?=\\W|$)`,"i"),Sw=1,xw=2,jl=class extends kw.AbstractParserWithWordBoundaryChecking{innerPattern(){return Cw}innerExtract(e,t){let n=t[Sw].toLowerCase(),i=t[xw].toLowerCase(),s=Py.TIME_UNIT_DICTIONARY[i];if(n=="volgend"||n=="volgende"||n=="komende"){let u={};return u[s]=1,My.ParsingComponents.createRelativeFromReference(e.reference,u)}if(n=="afgelopen"||n=="vorige"){let u={};return u[s]=-1,My.ParsingComponents.createRelativeFromReference(e.reference,u)}let a=e.createParsingComponents(),o=Aw.default(e.reference.instant);return i.match(/week/i)?(o=o.add(-o.get("d"),"d"),a.imply("day",o.date()),a.imply("month",o.month()+1),a.imply("year",o.year())):i.match(/maand/i)?(o=o.add(-o.date()+1,"d"),a.imply("day",o.date()),a.assign("year",o.year()),a.assign("month",o.month()+1)):i.match(/jaar/i)&&(o=o.add(-o.date()+1,"d"),o=o.add(-o.month(),"month"),a.imply("day",o.date()),a.imply("month",o.month()+1),a.assign("year",o.year())),a}};fi.default=jl});var Ay=p(Hl=>{"use strict";Object.defineProperty(Hl,"__esModule",{value:!0});var Gl=Ze(),Iw=de(),Uw=E(),qw=nt(),Fw=new RegExp("("+Gl.TIME_UNITS_PATTERN+")(?:geleden|voor|eerder)(?=(?:\\W|$))","i"),Ww=new RegExp("("+Gl.TIME_UNITS_PATTERN+")geleden(?=(?:\\W|$))","i"),Bl=class extends Uw.AbstractParserWithWordBoundaryChecking{constructor(e){super(),this.strictMode=e}innerPattern(){return this.strictMode?Ww:Fw}innerExtract(e,t){let n=Gl.parseTimeUnits(t[1]),i=qw.reverseTimeUnits(n);return Iw.ParsingComponents.createRelativeFromReference(e.reference,i)}};Hl.default=Bl});var ky=p(Vl=>{"use strict";Object.defineProperty(Vl,"__esModule",{value:!0});var Kl=Ze(),Lw=de(),Yw=E(),$w=new RegExp("("+Kl.TIME_UNITS_PATTERN+")(later|na|vanaf nu|voortaan|vooruit|uit)(?=(?:\\W|$))","i"),jw=new RegExp("("+Kl.TIME_UNITS_PATTERN+")(later|vanaf nu)(?=(?:\\W|$))","i"),Bw=1,zl=class extends Yw.AbstractParserWithWordBoundaryChecking{constructor(e){super(),this.strictMode=e}innerPattern(){return this.strictMode?jw:$w}innerExtract(e,t){let n=Kl.parseTimeUnits(t[Bw]);return Lw.ParsingComponents.createRelativeFromReference(e.reference,n)}};Vl.default=zl});var xy=p(Me=>{"use strict";var xe=Me&&Me.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Me,"__esModule",{value:!0});Me.createConfiguration=Me.createCasualConfiguration=Me.parseDate=Me.parse=Me.strict=Me.casual=void 0;var Gw=jt(),Ny=ht(),Hw=xe(Xm()),zw=xe(Qm()),Kw=xe(Jm()),Vw=xe(ey()),Zw=xe(qr()),Xw=xe(sy()),Qw=xe(oy()),Jw=xe(py()),Cy=xe(gy()),eD=xe(_y()),tD=xe(Ty()),rD=xe(Ey()),nD=xe(Ry()),iD=xe(Dy()),sD=xe(Oy()),aD=xe(Ay()),oD=xe(ky());Me.casual=new Ny.Chrono(Sy());Me.strict=new Ny.Chrono(Zl(!0));function uD(r,e,t){return Me.casual.parse(r,e,t)}Me.parse=uD;function lD(r,e,t){return Me.casual.parseDate(r,e,t)}Me.parseDate=lD;function Sy(r=!0){let e=Zl(!1,r);return e.parsers.unshift(new Kw.default),e.parsers.unshift(new Vw.default),e.parsers.unshift(new nD.default),e.parsers.unshift(new Cy.default),e.parsers.unshift(new sD.default),e.parsers.unshift(new iD.default),e}Me.createCasualConfiguration=Sy;function Zl(r=!0,e=!0){return Gw.includeCommonConfiguration({parsers:[new Zw.default(e),new Xw.default,new Jw.default,new Cy.default,new Qw.default,new rD.default,new eD.default,new tD.default(r),new aD.default(r),new oD.default(r)],refiners:[new zw.default,new Hw.default]},r)}Me.createConfiguration=Zl});var Fy=p(pi=>{"use strict";var cD=pi&&pi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(pi,"__esModule",{value:!0});var dD=cD(K()),fD=E(),pD=1,Iy=2,hD=3,Uy=4,qy=5,mD=6,Xl=class extends fD.AbstractParserWithWordBoundaryChecking{innerPattern(e){return new RegExp("(\u800C\u5BB6|\u7ACB(?:\u523B|\u5373)|\u5373\u523B)|(\u4ECA|\u660E|\u524D|\u5927\u524D|\u5F8C|\u5927\u5F8C|\u807D|\u6628|\u5C0B|\u7434)(\u65E9|\u671D|\u665A)|(\u4E0A(?:\u5348|\u665D)|\u671D(?:\u65E9)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348|\u665D)|\u664F(?:\u665D)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668))|(\u4ECA|\u660E|\u524D|\u5927\u524D|\u5F8C|\u5927\u5F8C|\u807D|\u6628|\u5C0B|\u7434)(?:\u65E5|\u5929)(?:[\\s|,|\uFF0C]*)(?:(\u4E0A(?:\u5348|\u665D)|\u671D(?:\u65E9)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348|\u665D)|\u664F(?:\u665D)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668)))?","i")}innerExtract(e,t){let n=t.index,i=e.createParsingResult(n,t[0]),s=dD.default(e.refDate),a=s;if(t[pD])i.start.imply("hour",s.hour()),i.start.imply("minute",s.minute()),i.start.imply("second",s.second()),i.start.imply("millisecond",s.millisecond());else if(t[Iy]){let o=t[Iy],u=t[hD];o=="\u660E"||o=="\u807D"?s.hour()>1&&(a=a.add(1,"day")):o=="\u6628"||o=="\u5C0B"||o=="\u7434"?a=a.add(-1,"day"):o=="\u524D"?a=a.add(-2,"day"):o=="\u5927\u524D"?a=a.add(-3,"day"):o=="\u5F8C"?a=a.add(2,"day"):o=="\u5927\u5F8C"&&(a=a.add(3,"day")),u=="\u65E9"||u=="\u671D"?i.start.imply("hour",6):u=="\u665A"&&(i.start.imply("hour",22),i.start.imply("meridiem",1))}else if(t[Uy]){let u=t[Uy][0];u=="\u65E9"||u=="\u671D"||u=="\u4E0A"?i.start.imply("hour",6):u=="\u4E0B"||u=="\u664F"?(i.start.imply("hour",15),i.start.imply("meridiem",1)):u=="\u4E2D"?(i.start.imply("hour",12),i.start.imply("meridiem",1)):u=="\u591C"||u=="\u665A"?(i.start.imply("hour",22),i.start.imply("meridiem",1)):u=="\u51CC"&&i.start.imply("hour",0)}else if(t[qy]){let o=t[qy];o=="\u660E"||o=="\u807D"?s.hour()>1&&(a=a.add(1,"day")):o=="\u6628"||o=="\u5C0B"||o=="\u7434"?a=a.add(-1,"day"):o=="\u524D"?a=a.add(-2,"day"):o=="\u5927\u524D"?a=a.add(-3,"day"):o=="\u5F8C"?a=a.add(2,"day"):o=="\u5927\u5F8C"&&(a=a.add(3,"day"));let u=t[mD];if(u){let l=u[0];l=="\u65E9"||l=="\u671D"||l=="\u4E0A"?i.start.imply("hour",6):l=="\u4E0B"||l=="\u664F"?(i.start.imply("hour",15),i.start.imply("meridiem",1)):l=="\u4E2D"?(i.start.imply("hour",12),i.start.imply("meridiem",1)):l=="\u591C"||l=="\u665A"?(i.start.imply("hour",22),i.start.imply("meridiem",1)):l=="\u51CC"&&i.start.imply("hour",0)}}return i.start.assign("day",a.date()),i.start.assign("month",a.month()+1),i.start.assign("year",a.year()),i}};pi.default=Xl});var pn=p(Ge=>{"use strict";Object.defineProperty(Ge,"__esModule",{value:!0});Ge.zhStringToYear=Ge.zhStringToNumber=Ge.WEEKDAY_OFFSET=Ge.NUMBER=void 0;Ge.NUMBER={\u96F6:0,\u4E00:1,\u4E8C:2,\u5169:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9,\u5341:10,\u5EFF:20,\u5345:30};Ge.WEEKDAY_OFFSET={\u5929:0,\u65E5:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6};function yD(r){let e=0;for(let t=0;t{"use strict";var _D=hi&&hi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(hi,"__esModule",{value:!0});var TD=_D(K()),bD=E(),Lr=pn(),Ql=1,Wy=2,Jl=3,ec=class extends bD.AbstractParserWithWordBoundaryChecking{innerPattern(){return new RegExp("(\\d{2,4}|["+Object.keys(Lr.NUMBER).join("")+"]{4}|["+Object.keys(Lr.NUMBER).join("")+"]{2})?(?:\\s*)(?:\u5E74)?(?:[\\s|,|\uFF0C]*)(\\d{1,2}|["+Object.keys(Lr.NUMBER).join("")+"]{1,2})(?:\\s*)(?:\u6708)(?:\\s*)(\\d{1,2}|["+Object.keys(Lr.NUMBER).join("")+"]{1,2})?(?:\\s*)(?:\u65E5|\u865F)?")}innerExtract(e,t){let n=TD.default(e.refDate),i=e.createParsingResult(t.index,t[0]),s=parseInt(t[Wy]);if(isNaN(s)&&(s=Lr.zhStringToNumber(t[Wy])),i.start.assign("month",s),t[Jl]){let a=parseInt(t[Jl]);isNaN(a)&&(a=Lr.zhStringToNumber(t[Jl])),i.start.assign("day",a)}else i.start.imply("day",n.date());if(t[Ql]){let a=parseInt(t[Ql]);isNaN(a)&&(a=Lr.zhStringToYear(t[Ql])),i.start.assign("year",a)}else i.start.imply("year",n.year());return i}};hi.default=ec});var $y=p(mi=>{"use strict";var vD=mi&&mi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(mi,"__esModule",{value:!0});var ED=vD(K()),RD=E(),Yy=pn(),wD=new RegExp("(\\d+|["+Object.keys(Yy.NUMBER).join("")+"]+|\u534A|\u5E7E)(?:\\s*)(?:\u500B)?(\u79D2(?:\u9418)?|\u5206\u9418|\u5C0F\u6642|\u9418|\u65E5|\u5929|\u661F\u671F|\u79AE\u62DC|\u6708|\u5E74)(?:(?:\u4E4B|\u904E)?\u5F8C|(?:\u4E4B)?\u5167)","i"),tc=1,DD=2,rc=class extends RD.AbstractParserWithWordBoundaryChecking{innerPattern(){return wD}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=parseInt(t[tc]);if(isNaN(i)&&(i=Yy.zhStringToNumber(t[tc])),isNaN(i)){let u=t[tc];if(u==="\u5E7E")i=3;else if(u==="\u534A")i=.5;else return null}let s=ED.default(e.refDate),o=t[DD][0];return o.match(/[日天星禮月年]/)?(o=="\u65E5"||o=="\u5929"?s=s.add(i,"d"):o=="\u661F"||o=="\u79AE"?s=s.add(i*7,"d"):o=="\u6708"?s=s.add(i,"month"):o=="\u5E74"&&(s=s.add(i,"year")),n.start.assign("year",s.year()),n.start.assign("month",s.month()+1),n.start.assign("day",s.date()),n):(o=="\u79D2"?s=s.add(i,"second"):o=="\u5206"?s=s.add(i,"minute"):(o=="\u5C0F"||o=="\u9418")&&(s=s.add(i,"hour")),n.start.imply("year",s.year()),n.start.imply("month",s.month()+1),n.start.imply("day",s.date()),n.start.assign("hour",s.hour()),n.start.assign("minute",s.minute()),n.start.assign("second",s.second()),n)}};mi.default=rc});var By=p(yi=>{"use strict";var MD=yi&&yi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(yi,"__esModule",{value:!0});var PD=MD(K()),OD=E(),jy=pn(),AD=new RegExp("(?\u4E0A|\u4ECA|\u4E0B|\u9019|\u5462)(?:\u500B)?(?:\u661F\u671F|\u79AE\u62DC|\u9031)(?"+Object.keys(jy.WEEKDAY_OFFSET).join("|")+")"),nc=class extends OD.AbstractParserWithWordBoundaryChecking{innerPattern(){return AD}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=t.groups.weekday,s=jy.WEEKDAY_OFFSET[i];if(s===void 0)return null;let a=null,o=t.groups.prefix;o=="\u4E0A"?a="last":o=="\u4E0B"?a="next":(o=="\u4ECA"||o=="\u9019"||o=="\u5462")&&(a="this");let u=PD.default(e.refDate),l=!1,c=u.day();return a=="last"||a=="past"?(u=u.day(s-7),l=!0):a=="next"?(u=u.day(s+7),l=!0):a=="this"?u=u.day(s):Math.abs(s-7-c){"use strict";var kD=gi&&gi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(gi,"__esModule",{value:!0});var ND=kD(K()),CD=E(),at=pn(),SD=new RegExp("(?:\u7531|\u5F9E|\u81EA)?(?:(\u4ECA|\u660E|\u524D|\u5927\u524D|\u5F8C|\u5927\u5F8C|\u807D|\u6628|\u5C0B|\u7434)(\u65E9|\u671D|\u665A)|(\u4E0A(?:\u5348|\u665D)|\u671D(?:\u65E9)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348|\u665D)|\u664F(?:\u665D)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668))|(\u4ECA|\u660E|\u524D|\u5927\u524D|\u5F8C|\u5927\u5F8C|\u807D|\u6628|\u5C0B|\u7434)(?:\u65E5|\u5929)(?:[\\s,\uFF0C]*)(?:(\u4E0A(?:\u5348|\u665D)|\u671D(?:\u65E9)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348|\u665D)|\u664F(?:\u665D)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668)))?)?(?:[\\s,\uFF0C]*)(?:(\\d+|["+Object.keys(at.NUMBER).join("")+"]+)(?:\\s*)(?:\u9EDE|\u6642|:|\uFF1A)(?:\\s*)(\\d+|\u534A|\u6B63|\u6574|["+Object.keys(at.NUMBER).join("")+"]+)?(?:\\s*)(?:\u5206|:|\uFF1A)?(?:\\s*)(\\d+|["+Object.keys(at.NUMBER).join("")+"]+)?(?:\\s*)(?:\u79D2)?)(?:\\s*(A.M.|P.M.|AM?|PM?))?","i"),xD=new RegExp("(?:^\\s*(?:\u5230|\u81F3|\\-|\\\u2013|\\~|\\\u301C)\\s*)(?:(\u4ECA|\u660E|\u524D|\u5927\u524D|\u5F8C|\u5927\u5F8C|\u807D|\u6628|\u5C0B|\u7434)(\u65E9|\u671D|\u665A)|(\u4E0A(?:\u5348|\u665D)|\u671D(?:\u65E9)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348|\u665D)|\u664F(?:\u665D)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668))|(\u4ECA|\u660E|\u524D|\u5927\u524D|\u5F8C|\u5927\u5F8C|\u807D|\u6628|\u5C0B|\u7434)(?:\u65E5|\u5929)(?:[\\s,\uFF0C]*)(?:(\u4E0A(?:\u5348|\u665D)|\u671D(?:\u65E9)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348|\u665D)|\u664F(?:\u665D)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668)))?)?(?:[\\s,\uFF0C]*)(?:(\\d+|["+Object.keys(at.NUMBER).join("")+"]+)(?:\\s*)(?:\u9EDE|\u6642|:|\uFF1A)(?:\\s*)(\\d+|\u534A|\u6B63|\u6574|["+Object.keys(at.NUMBER).join("")+"]+)?(?:\\s*)(?:\u5206|:|\uFF1A)?(?:\\s*)(\\d+|["+Object.keys(at.NUMBER).join("")+"]+)?(?:\\s*)(?:\u79D2)?)(?:\\s*(A.M.|P.M.|AM?|PM?))?","i"),Ks=1,Vs=2,Zs=3,Xs=4,Qs=5,Js=6,st=7,hn=8,ea=9,ic=class extends CD.AbstractParserWithWordBoundaryChecking{innerPattern(){return SD}innerExtract(e,t){if(t.index>0&&e.text[t.index-1].match(/\w/))return null;let n=ND.default(e.refDate),i=e.createParsingResult(t.index,t[0]),s=n.clone();if(t[Ks]){var a=t[Ks];a=="\u660E"||a=="\u807D"?n.hour()>1&&s.add(1,"day"):a=="\u6628"||a=="\u5C0B"||a=="\u7434"?s.add(-1,"day"):a=="\u524D"?s.add(-2,"day"):a=="\u5927\u524D"?s.add(-3,"day"):a=="\u5F8C"?s.add(2,"day"):a=="\u5927\u5F8C"&&s.add(3,"day"),i.start.assign("day",s.date()),i.start.assign("month",s.month()+1),i.start.assign("year",s.year())}else if(t[Xs]){var o=t[Xs];o=="\u660E"||o=="\u807D"?s.add(1,"day"):o=="\u6628"||o=="\u5C0B"||o=="\u7434"?s.add(-1,"day"):o=="\u524D"?s.add(-2,"day"):o=="\u5927\u524D"?s.add(-3,"day"):o=="\u5F8C"?s.add(2,"day"):o=="\u5927\u5F8C"&&s.add(3,"day"),i.start.assign("day",s.date()),i.start.assign("month",s.month()+1),i.start.assign("year",s.year())}else i.start.imply("day",s.date()),i.start.imply("month",s.month()+1),i.start.imply("year",s.year());let u=0,l=0,c=-1;if(t[hn]){var d=parseInt(t[hn]);if(isNaN(d)&&(d=at.zhStringToNumber(t[hn])),d>=60)return null;i.start.assign("second",d)}if(u=parseInt(t[Js]),isNaN(u)&&(u=at.zhStringToNumber(t[Js])),t[st]?t[st]=="\u534A"?l=30:t[st]=="\u6B63"||t[st]=="\u6574"?l=0:(l=parseInt(t[st]),isNaN(l)&&(l=at.zhStringToNumber(t[st]))):u>100&&(l=u%100,u=Math.floor(u/100)),l>=60||u>24)return null;if(u>=12&&(c=1),t[ea]){if(u>12)return null;var f=t[ea][0].toLowerCase();f=="a"&&(c=0,u==12&&(u=0)),f=="p"&&(c=1,u!=12&&(u+=12))}else if(t[Vs]){var h=t[Vs],m=h[0];m=="\u671D"||m=="\u65E9"?(c=0,u==12&&(u=0)):m=="\u665A"&&(c=1,u!=12&&(u+=12))}else if(t[Zs]){var y=t[Zs],g=y[0];g=="\u4E0A"||g=="\u671D"||g=="\u65E9"||g=="\u51CC"?(c=0,u==12&&(u=0)):(g=="\u4E0B"||g=="\u664F"||g=="\u665A")&&(c=1,u!=12&&(u+=12))}else if(t[Qs]){var O=t[Qs],S=O[0];S=="\u4E0A"||S=="\u671D"||S=="\u65E9"||S=="\u51CC"?(c=0,u==12&&(u=0)):(S=="\u4E0B"||S=="\u664F"||S=="\u665A")&&(c=1,u!=12&&(u+=12))}if(i.start.assign("hour",u),i.start.assign("minute",l),c>=0?i.start.assign("meridiem",c):u<12?i.start.imply("meridiem",0):i.start.imply("meridiem",1),t=xD.exec(e.text.substring(i.index+i.text.length)),!t)return i.text.match(/^\d+$/)?null:i;let N=s.clone();if(i.end=e.createParsingComponents(),t[Ks]){var a=t[Ks];a=="\u660E"||a=="\u807D"?n.hour()>1&&N.add(1,"day"):a=="\u6628"||a=="\u5C0B"||a=="\u7434"?N.add(-1,"day"):a=="\u524D"?N.add(-2,"day"):a=="\u5927\u524D"?N.add(-3,"day"):a=="\u5F8C"?N.add(2,"day"):a=="\u5927\u5F8C"&&N.add(3,"day"),i.end.assign("day",N.date()),i.end.assign("month",N.month()+1),i.end.assign("year",N.year())}else if(t[Xs]){var o=t[Xs];o=="\u660E"||o=="\u807D"?N.add(1,"day"):o=="\u6628"||o=="\u5C0B"||o=="\u7434"?N.add(-1,"day"):o=="\u524D"?N.add(-2,"day"):o=="\u5927\u524D"?N.add(-3,"day"):o=="\u5F8C"?N.add(2,"day"):o=="\u5927\u5F8C"&&N.add(3,"day"),i.end.assign("day",N.date()),i.end.assign("month",N.month()+1),i.end.assign("year",N.year())}else i.end.imply("day",N.date()),i.end.imply("month",N.month()+1),i.end.imply("year",N.year());if(u=0,l=0,c=-1,t[hn]){var d=parseInt(t[hn]);if(isNaN(d)&&(d=at.zhStringToNumber(t[hn])),d>=60)return null;i.end.assign("second",d)}if(u=parseInt(t[Js]),isNaN(u)&&(u=at.zhStringToNumber(t[Js])),t[st]?t[st]=="\u534A"?l=30:t[st]=="\u6B63"||t[st]=="\u6574"?l=0:(l=parseInt(t[st]),isNaN(l)&&(l=at.zhStringToNumber(t[st]))):u>100&&(l=u%100,u=Math.floor(u/100)),l>=60||u>24)return null;if(u>=12&&(c=1),t[ea]){if(u>12)return null;var f=t[ea][0].toLowerCase();f=="a"&&(c=0,u==12&&(u=0)),f=="p"&&(c=1,u!=12&&(u+=12)),i.start.isCertain("meridiem")||(c==0?(i.start.imply("meridiem",0),i.start.get("hour")==12&&i.start.assign("hour",0)):(i.start.imply("meridiem",1),i.start.get("hour")!=12&&i.start.assign("hour",i.start.get("hour")+12)))}else if(t[Vs]){var h=t[Vs],m=h[0];m=="\u671D"||m=="\u65E9"?(c=0,u==12&&(u=0)):m=="\u665A"&&(c=1,u!=12&&(u+=12))}else if(t[Zs]){var y=t[Zs],g=y[0];g=="\u4E0A"||g=="\u671D"||g=="\u65E9"||g=="\u51CC"?(c=0,u==12&&(u=0)):(g=="\u4E0B"||g=="\u664F"||g=="\u665A")&&(c=1,u!=12&&(u+=12))}else if(t[Qs]){var O=t[Qs],S=O[0];S=="\u4E0A"||S=="\u671D"||S=="\u65E9"||S=="\u51CC"?(c=0,u==12&&(u=0)):(S=="\u4E0B"||S=="\u664F"||S=="\u665A")&&(c=1,u!=12&&(u+=12))}return i.text=i.text+t[0],i.end.assign("hour",u),i.end.assign("minute",l),c>=0?i.end.assign("meridiem",c):i.start.isCertain("meridiem")&&i.start.get("meridiem")==1&&i.start.get("hour")>u?i.end.imply("meridiem",0):u>12&&i.end.imply("meridiem",1),i.end.date().getTime(){"use strict";var ID=_i&&_i.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(_i,"__esModule",{value:!0});var UD=ID(K()),qD=E(),Hy=pn(),FD=new RegExp("(?:\u661F\u671F|\u79AE\u62DC|\u9031)(?"+Object.keys(Hy.WEEKDAY_OFFSET).join("|")+")"),sc=class extends qD.AbstractParserWithWordBoundaryChecking{innerPattern(){return FD}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=t.groups.weekday,s=Hy.WEEKDAY_OFFSET[i];if(s===void 0)return null;let a=UD.default(e.refDate),o=!1,u=a.day();return Math.abs(s-7-u){"use strict";var WD=Ti&&Ti.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Ti,"__esModule",{value:!0});var LD=WD(Ot()),ac=class extends LD.default{patternBetween(){return/^\s*(至|到|\-|\~|~|-|ー)\s*$/i}};Ti.default=ac});var Vy=p(bi=>{"use strict";var YD=bi&&bi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(bi,"__esModule",{value:!0});var $D=YD($t()),oc=class extends $D.default{patternBetween(){return/^\s*$/i}};bi.default=oc});var Zy=p(ye=>{"use strict";var Kt=ye&&ye.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ye,"__esModule",{value:!0});ye.createConfiguration=ye.createCasualConfiguration=ye.parseDate=ye.parse=ye.strict=ye.casual=ye.hant=void 0;var uc=ht(),jD=Kt(ks()),BD=jt(),GD=Kt(Fy()),HD=Kt(Ly()),zD=Kt($y()),KD=Kt(By()),VD=Kt(Gy()),ZD=Kt(zy()),XD=Kt(Ky()),QD=Kt(Vy());ye.hant=new uc.Chrono(lc());ye.casual=new uc.Chrono(lc());ye.strict=new uc.Chrono(cc());function JD(r,e,t){return ye.casual.parse(r,e,t)}ye.parse=JD;function eM(r,e,t){return ye.casual.parseDate(r,e,t)}ye.parseDate=eM;function lc(){let r=cc();return r.parsers.unshift(new GD.default),r}ye.createCasualConfiguration=lc;function cc(){let r=BD.includeCommonConfiguration({parsers:[new HD.default,new KD.default,new ZD.default,new VD.default,new zD.default],refiners:[new XD.default,new QD.default]});return r.refiners=r.refiners.filter(e=>!(e instanceof jD.default)),r}ye.createConfiguration=cc});var eg=p(vi=>{"use strict";var tM=vi&&vi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(vi,"__esModule",{value:!0});var rM=tM(K()),nM=E(),iM=1,Xy=2,sM=3,Qy=4,Jy=5,aM=6,dc=class extends nM.AbstractParserWithWordBoundaryChecking{innerPattern(e){return new RegExp("(\u73B0\u5728|\u7ACB(?:\u523B|\u5373)|\u5373\u523B)|(\u4ECA|\u660E|\u524D|\u5927\u524D|\u540E|\u5927\u540E|\u6628)(\u65E9|\u665A)|(\u4E0A(?:\u5348)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668))|(\u4ECA|\u660E|\u524D|\u5927\u524D|\u540E|\u5927\u540E|\u6628)(?:\u65E5|\u5929)(?:[\\s|,|\uFF0C]*)(?:(\u4E0A(?:\u5348)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668)))?","i")}innerExtract(e,t){let n=t.index,i=e.createParsingResult(n,t[0]),s=rM.default(e.refDate),a=s;if(t[iM])i.start.imply("hour",s.hour()),i.start.imply("minute",s.minute()),i.start.imply("second",s.second()),i.start.imply("millisecond",s.millisecond());else if(t[Xy]){let o=t[Xy],u=t[sM];o=="\u660E"?s.hour()>1&&(a=a.add(1,"day")):o=="\u6628"?a=a.add(-1,"day"):o=="\u524D"?a=a.add(-2,"day"):o=="\u5927\u524D"?a=a.add(-3,"day"):o=="\u540E"?a=a.add(2,"day"):o=="\u5927\u540E"&&(a=a.add(3,"day")),u=="\u65E9"?i.start.imply("hour",6):u=="\u665A"&&(i.start.imply("hour",22),i.start.imply("meridiem",1))}else if(t[Qy]){let u=t[Qy][0];u=="\u65E9"||u=="\u4E0A"?i.start.imply("hour",6):u=="\u4E0B"?(i.start.imply("hour",15),i.start.imply("meridiem",1)):u=="\u4E2D"?(i.start.imply("hour",12),i.start.imply("meridiem",1)):u=="\u591C"||u=="\u665A"?(i.start.imply("hour",22),i.start.imply("meridiem",1)):u=="\u51CC"&&i.start.imply("hour",0)}else if(t[Jy]){let o=t[Jy];o=="\u660E"?s.hour()>1&&(a=a.add(1,"day")):o=="\u6628"?a=a.add(-1,"day"):o=="\u524D"?a=a.add(-2,"day"):o=="\u5927\u524D"?a=a.add(-3,"day"):o=="\u540E"?a=a.add(2,"day"):o=="\u5927\u540E"&&(a=a.add(3,"day"));let u=t[aM];if(u){let l=u[0];l=="\u65E9"||l=="\u4E0A"?i.start.imply("hour",6):l=="\u4E0B"?(i.start.imply("hour",15),i.start.imply("meridiem",1)):l=="\u4E2D"?(i.start.imply("hour",12),i.start.imply("meridiem",1)):l=="\u591C"||l=="\u665A"?(i.start.imply("hour",22),i.start.imply("meridiem",1)):l=="\u51CC"&&i.start.imply("hour",0)}}return i.start.assign("day",a.date()),i.start.assign("month",a.month()+1),i.start.assign("year",a.year()),i}};vi.default=dc});var mn=p(He=>{"use strict";Object.defineProperty(He,"__esModule",{value:!0});He.zhStringToYear=He.zhStringToNumber=He.WEEKDAY_OFFSET=He.NUMBER=void 0;He.NUMBER={\u96F6:0,"\u3007":0,\u4E00:1,\u4E8C:2,\u4E24:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9,\u5341:10};He.WEEKDAY_OFFSET={\u5929:0,\u65E5:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6};function oM(r){let e=0;for(let t=0;t{"use strict";var lM=Ei&&Ei.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Ei,"__esModule",{value:!0});var cM=lM(K()),dM=E(),Yr=mn(),fc=1,tg=2,pc=3,hc=class extends dM.AbstractParserWithWordBoundaryChecking{innerPattern(){return new RegExp("(\\d{2,4}|["+Object.keys(Yr.NUMBER).join("")+"]{4}|["+Object.keys(Yr.NUMBER).join("")+"]{2})?(?:\\s*)(?:\u5E74)?(?:[\\s|,|\uFF0C]*)(\\d{1,2}|["+Object.keys(Yr.NUMBER).join("")+"]{1,3})(?:\\s*)(?:\u6708)(?:\\s*)(\\d{1,2}|["+Object.keys(Yr.NUMBER).join("")+"]{1,3})?(?:\\s*)(?:\u65E5|\u53F7)?")}innerExtract(e,t){let n=cM.default(e.refDate),i=e.createParsingResult(t.index,t[0]),s=parseInt(t[tg]);if(isNaN(s)&&(s=Yr.zhStringToNumber(t[tg])),i.start.assign("month",s),t[pc]){let a=parseInt(t[pc]);isNaN(a)&&(a=Yr.zhStringToNumber(t[pc])),i.start.assign("day",a)}else i.start.imply("day",n.date());if(t[fc]){let a=parseInt(t[fc]);isNaN(a)&&(a=Yr.zhStringToYear(t[fc])),i.start.assign("year",a)}else i.start.imply("year",n.year());return i}};Ei.default=hc});var ig=p(Ri=>{"use strict";var fM=Ri&&Ri.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Ri,"__esModule",{value:!0});var pM=fM(K()),hM=E(),ng=mn(),mM=new RegExp("(\\d+|["+Object.keys(ng.NUMBER).join("")+"]+|\u534A|\u51E0)(?:\\s*)(?:\u4E2A)?(\u79D2(?:\u949F)?|\u5206\u949F|\u5C0F\u65F6|\u949F|\u65E5|\u5929|\u661F\u671F|\u793C\u62DC|\u6708|\u5E74)(?:(?:\u4E4B|\u8FC7)?\u540E|(?:\u4E4B)?\u5185)","i"),mc=1,yM=2,yc=class extends hM.AbstractParserWithWordBoundaryChecking{innerPattern(){return mM}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=parseInt(t[mc]);if(isNaN(i)&&(i=ng.zhStringToNumber(t[mc])),isNaN(i)){let u=t[mc];if(u==="\u51E0")i=3;else if(u==="\u534A")i=.5;else return null}let s=pM.default(e.refDate),o=t[yM][0];return o.match(/[日天星礼月年]/)?(o=="\u65E5"||o=="\u5929"?s=s.add(i,"d"):o=="\u661F"||o=="\u793C"?s=s.add(i*7,"d"):o=="\u6708"?s=s.add(i,"month"):o=="\u5E74"&&(s=s.add(i,"year")),n.start.assign("year",s.year()),n.start.assign("month",s.month()+1),n.start.assign("day",s.date()),n):(o=="\u79D2"?s=s.add(i,"second"):o=="\u5206"?s=s.add(i,"minute"):(o=="\u5C0F"||o=="\u949F")&&(s=s.add(i,"hour")),n.start.imply("year",s.year()),n.start.imply("month",s.month()+1),n.start.imply("day",s.date()),n.start.assign("hour",s.hour()),n.start.assign("minute",s.minute()),n.start.assign("second",s.second()),n)}};Ri.default=yc});var ag=p(wi=>{"use strict";var gM=wi&&wi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(wi,"__esModule",{value:!0});var _M=gM(K()),TM=E(),sg=mn(),bM=new RegExp("(?\u4E0A|\u4E0B|\u8FD9)(?:\u4E2A)?(?:\u661F\u671F|\u793C\u62DC|\u5468)(?"+Object.keys(sg.WEEKDAY_OFFSET).join("|")+")"),gc=class extends TM.AbstractParserWithWordBoundaryChecking{innerPattern(){return bM}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=t.groups.weekday,s=sg.WEEKDAY_OFFSET[i];if(s===void 0)return null;let a=null,o=t.groups.prefix;o=="\u4E0A"?a="last":o=="\u4E0B"?a="next":o=="\u8FD9"&&(a="this");let u=_M.default(e.refDate),l=!1,c=u.day();return a=="last"||a=="past"?(u=u.day(s-7),l=!0):a=="next"?(u=u.day(s+7),l=!0):a=="this"?u=u.day(s):Math.abs(s-7-c){"use strict";var vM=Di&&Di.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Di,"__esModule",{value:!0});var EM=vM(K()),RM=E(),ut=mn(),wM=new RegExp("(?:\u4ECE|\u81EA)?(?:(\u4ECA|\u660E|\u524D|\u5927\u524D|\u540E|\u5927\u540E|\u6628)(\u65E9|\u671D|\u665A)|(\u4E0A(?:\u5348)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668))|(\u4ECA|\u660E|\u524D|\u5927\u524D|\u540E|\u5927\u540E|\u6628)(?:\u65E5|\u5929)(?:[\\s,\uFF0C]*)(?:(\u4E0A(?:\u5348)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668)))?)?(?:[\\s,\uFF0C]*)(?:(\\d+|["+Object.keys(ut.NUMBER).join("")+"]+)(?:\\s*)(?:\u70B9|\u65F6|:|\uFF1A)(?:\\s*)(\\d+|\u534A|\u6B63|\u6574|["+Object.keys(ut.NUMBER).join("")+"]+)?(?:\\s*)(?:\u5206|:|\uFF1A)?(?:\\s*)(\\d+|["+Object.keys(ut.NUMBER).join("")+"]+)?(?:\\s*)(?:\u79D2)?)(?:\\s*(A.M.|P.M.|AM?|PM?))?","i"),DM=new RegExp("(?:^\\s*(?:\u5230|\u81F3|\\-|\\\u2013|\\~|\\\u301C)\\s*)(?:(\u4ECA|\u660E|\u524D|\u5927\u524D|\u540E|\u5927\u540E|\u6628)(\u65E9|\u671D|\u665A)|(\u4E0A(?:\u5348)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668))|(\u4ECA|\u660E|\u524D|\u5927\u524D|\u540E|\u5927\u540E|\u6628)(?:\u65E5|\u5929)(?:[\\s,\uFF0C]*)(?:(\u4E0A(?:\u5348)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668)))?)?(?:[\\s,\uFF0C]*)(?:(\\d+|["+Object.keys(ut.NUMBER).join("")+"]+)(?:\\s*)(?:\u70B9|\u65F6|:|\uFF1A)(?:\\s*)(\\d+|\u534A|\u6B63|\u6574|["+Object.keys(ut.NUMBER).join("")+"]+)?(?:\\s*)(?:\u5206|:|\uFF1A)?(?:\\s*)(\\d+|["+Object.keys(ut.NUMBER).join("")+"]+)?(?:\\s*)(?:\u79D2)?)(?:\\s*(A.M.|P.M.|AM?|PM?))?","i"),ta=1,ra=2,na=3,ia=4,sa=5,aa=6,ot=7,yn=8,oa=9,_c=class extends RM.AbstractParserWithWordBoundaryChecking{innerPattern(){return wM}innerExtract(e,t){if(t.index>0&&e.text[t.index-1].match(/\w/))return null;let n=EM.default(e.refDate),i=e.createParsingResult(t.index,t[0]),s=n.clone();if(t[ta]){let c=t[ta];c=="\u660E"?n.hour()>1&&s.add(1,"day"):c=="\u6628"?s.add(-1,"day"):c=="\u524D"?s.add(-2,"day"):c=="\u5927\u524D"?s.add(-3,"day"):c=="\u540E"?s.add(2,"day"):c=="\u5927\u540E"&&s.add(3,"day"),i.start.assign("day",s.date()),i.start.assign("month",s.month()+1),i.start.assign("year",s.year())}else if(t[ia]){let c=t[ia];c=="\u660E"?s.add(1,"day"):c=="\u6628"?s.add(-1,"day"):c=="\u524D"?s.add(-2,"day"):c=="\u5927\u524D"?s.add(-3,"day"):c=="\u540E"?s.add(2,"day"):c=="\u5927\u540E"&&s.add(3,"day"),i.start.assign("day",s.date()),i.start.assign("month",s.month()+1),i.start.assign("year",s.year())}else i.start.imply("day",s.date()),i.start.imply("month",s.month()+1),i.start.imply("year",s.year());let a=0,o=0,u=-1;if(t[yn]){let c=parseInt(t[yn]);if(isNaN(c)&&(c=ut.zhStringToNumber(t[yn])),c>=60)return null;i.start.assign("second",c)}if(a=parseInt(t[aa]),isNaN(a)&&(a=ut.zhStringToNumber(t[aa])),t[ot]?t[ot]=="\u534A"?o=30:t[ot]=="\u6B63"||t[ot]=="\u6574"?o=0:(o=parseInt(t[ot]),isNaN(o)&&(o=ut.zhStringToNumber(t[ot]))):a>100&&(o=a%100,a=Math.floor(a/100)),o>=60||a>24)return null;if(a>=12&&(u=1),t[oa]){if(a>12)return null;let c=t[oa][0].toLowerCase();c=="a"&&(u=0,a==12&&(a=0)),c=="p"&&(u=1,a!=12&&(a+=12))}else if(t[ra]){let d=t[ra][0];d=="\u65E9"?(u=0,a==12&&(a=0)):d=="\u665A"&&(u=1,a!=12&&(a+=12))}else if(t[na]){let d=t[na][0];d=="\u4E0A"||d=="\u65E9"||d=="\u51CC"?(u=0,a==12&&(a=0)):(d=="\u4E0B"||d=="\u665A")&&(u=1,a!=12&&(a+=12))}else if(t[sa]){let d=t[sa][0];d=="\u4E0A"||d=="\u65E9"||d=="\u51CC"?(u=0,a==12&&(a=0)):(d=="\u4E0B"||d=="\u665A")&&(u=1,a!=12&&(a+=12))}if(i.start.assign("hour",a),i.start.assign("minute",o),u>=0?i.start.assign("meridiem",u):a<12?i.start.imply("meridiem",0):i.start.imply("meridiem",1),t=DM.exec(e.text.substring(i.index+i.text.length)),!t)return i.text.match(/^\d+$/)?null:i;let l=s.clone();if(i.end=e.createParsingComponents(),t[ta]){let c=t[ta];c=="\u660E"?n.hour()>1&&l.add(1,"day"):c=="\u6628"?l.add(-1,"day"):c=="\u524D"?l.add(-2,"day"):c=="\u5927\u524D"?l.add(-3,"day"):c=="\u540E"?l.add(2,"day"):c=="\u5927\u540E"&&l.add(3,"day"),i.end.assign("day",l.date()),i.end.assign("month",l.month()+1),i.end.assign("year",l.year())}else if(t[ia]){let c=t[ia];c=="\u660E"?l.add(1,"day"):c=="\u6628"?l.add(-1,"day"):c=="\u524D"?l.add(-2,"day"):c=="\u5927\u524D"?l.add(-3,"day"):c=="\u540E"?l.add(2,"day"):c=="\u5927\u540E"&&l.add(3,"day"),i.end.assign("day",l.date()),i.end.assign("month",l.month()+1),i.end.assign("year",l.year())}else i.end.imply("day",l.date()),i.end.imply("month",l.month()+1),i.end.imply("year",l.year());if(a=0,o=0,u=-1,t[yn]){let c=parseInt(t[yn]);if(isNaN(c)&&(c=ut.zhStringToNumber(t[yn])),c>=60)return null;i.end.assign("second",c)}if(a=parseInt(t[aa]),isNaN(a)&&(a=ut.zhStringToNumber(t[aa])),t[ot]?t[ot]=="\u534A"?o=30:t[ot]=="\u6B63"||t[ot]=="\u6574"?o=0:(o=parseInt(t[ot]),isNaN(o)&&(o=ut.zhStringToNumber(t[ot]))):a>100&&(o=a%100,a=Math.floor(a/100)),o>=60||a>24)return null;if(a>=12&&(u=1),t[oa]){if(a>12)return null;let c=t[oa][0].toLowerCase();c=="a"&&(u=0,a==12&&(a=0)),c=="p"&&(u=1,a!=12&&(a+=12)),i.start.isCertain("meridiem")||(u==0?(i.start.imply("meridiem",0),i.start.get("hour")==12&&i.start.assign("hour",0)):(i.start.imply("meridiem",1),i.start.get("hour")!=12&&i.start.assign("hour",i.start.get("hour")+12)))}else if(t[ra]){let d=t[ra][0];d=="\u65E9"?(u=0,a==12&&(a=0)):d=="\u665A"&&(u=1,a!=12&&(a+=12))}else if(t[na]){let d=t[na][0];d=="\u4E0A"||d=="\u65E9"||d=="\u51CC"?(u=0,a==12&&(a=0)):(d=="\u4E0B"||d=="\u665A")&&(u=1,a!=12&&(a+=12))}else if(t[sa]){let d=t[sa][0];d=="\u4E0A"||d=="\u65E9"||d=="\u51CC"?(u=0,a==12&&(a=0)):(d=="\u4E0B"||d=="\u665A")&&(u=1,a!=12&&(a+=12))}return i.text=i.text+t[0],i.end.assign("hour",a),i.end.assign("minute",o),u>=0?i.end.assign("meridiem",u):i.start.isCertain("meridiem")&&i.start.get("meridiem")==1&&i.start.get("hour")>a?i.end.imply("meridiem",0):a>12&&i.end.imply("meridiem",1),i.end.date().getTime(){"use strict";var MM=Mi&&Mi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Mi,"__esModule",{value:!0});var PM=MM(K()),OM=E(),ug=mn(),AM=new RegExp("(?:\u661F\u671F|\u793C\u62DC|\u5468)(?"+Object.keys(ug.WEEKDAY_OFFSET).join("|")+")"),Tc=class extends OM.AbstractParserWithWordBoundaryChecking{innerPattern(){return AM}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=t.groups.weekday,s=ug.WEEKDAY_OFFSET[i];if(s===void 0)return null;let a=PM.default(e.refDate),o=!1,u=a.day();return Math.abs(s-7-u){"use strict";var kM=Pi&&Pi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Pi,"__esModule",{value:!0});var NM=kM(Ot()),bc=class extends NM.default{patternBetween(){return/^\s*(至|到|-|~|~|-|ー)\s*$/i}};Pi.default=bc});var dg=p(Oi=>{"use strict";var CM=Oi&&Oi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Oi,"__esModule",{value:!0});var SM=CM($t()),vc=class extends SM.default{patternBetween(){return/^\s*$/i}};Oi.default=vc});var fg=p(ge=>{"use strict";var Vt=ge&&ge.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ge,"__esModule",{value:!0});ge.createConfiguration=ge.createCasualConfiguration=ge.parseDate=ge.parse=ge.strict=ge.casual=ge.hans=void 0;var Ec=ht(),xM=Vt(ks()),IM=jt(),UM=Vt(eg()),qM=Vt(rg()),FM=Vt(ig()),WM=Vt(ag()),LM=Vt(og()),YM=Vt(lg()),$M=Vt(cg()),jM=Vt(dg());ge.hans=new Ec.Chrono(Rc());ge.casual=new Ec.Chrono(Rc());ge.strict=new Ec.Chrono(wc());function BM(r,e,t){return ge.casual.parse(r,e,t)}ge.parse=BM;function GM(r,e,t){return ge.casual.parseDate(r,e,t)}ge.parseDate=GM;function Rc(){let r=wc();return r.parsers.unshift(new UM.default),r}ge.createCasualConfiguration=Rc;function wc(){let r=IM.includeCommonConfiguration({parsers:[new qM.default,new WM.default,new YM.default,new LM.default,new FM.default],refiners:[new $M.default,new jM.default]});return r.refiners=r.refiners.filter(e=>!(e instanceof xM.default)),r}ge.createConfiguration=wc});var hg=p(Xe=>{"use strict";var pg=Xe&&Xe.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),HM=Xe&&Xe.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),zM=Xe&&Xe.__exportStar||function(r,e){for(var t in r)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&pg(e,r,t)},KM=Xe&&Xe.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&pg(e,r,t);return HM(e,r),e};Object.defineProperty(Xe,"__esModule",{value:!0});Xe.hans=void 0;zM(Zy(),Xe);Xe.hans=KM(fg())});var ze=p(I=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});I.parseTimeUnits=I.TIME_UNITS_PATTERN=I.parseYear=I.YEAR_PATTERN=I.parseOrdinalNumberPattern=I.ORDINAL_NUMBER_PATTERN=I.parseNumberPattern=I.NUMBER_PATTERN=I.TIME_UNIT_DICTIONARY=I.ORDINAL_WORD_DICTIONARY=I.INTEGER_WORD_DICTIONARY=I.MONTH_DICTIONARY=I.FULL_MONTH_NAME_DICTIONARY=I.WEEKDAY_DICTIONARY=I.REGEX_PARTS=void 0;var ua=Q(),VM=Ce();I.REGEX_PARTS={leftBoundary:"([^\\p{L}\\p{N}_]|^)",rightBoundary:"(?=[^\\p{L}\\p{N}_]|$)",flags:"iu"};I.WEEKDAY_DICTIONARY={\u0432\u043E\u0441\u043A\u0440\u0435\u0441\u0435\u043D\u044C\u0435:0,\u0432\u043E\u0441\u043A\u0440\u0435\u0441\u0435\u043D\u044C\u044F:0,\u0432\u0441\u043A:0,"\u0432\u0441\u043A.":0,\u043F\u043E\u043D\u0435\u0434\u0435\u043B\u044C\u043D\u0438\u043A:1,\u043F\u043E\u043D\u0435\u0434\u0435\u043B\u044C\u043D\u0438\u043A\u0430:1,\u043F\u043D:1,"\u043F\u043D.":1,\u0432\u0442\u043E\u0440\u043D\u0438\u043A:2,\u0432\u0442\u043E\u0440\u043D\u0438\u043A\u0430:2,\u0432\u0442:2,"\u0432\u0442.":2,\u0441\u0440\u0435\u0434\u0430:3,\u0441\u0440\u0435\u0434\u044B:3,\u0441\u0440\u0435\u0434\u0443:3,\u0441\u0440:3,"\u0441\u0440.":3,\u0447\u0435\u0442\u0432\u0435\u0440\u0433:4,\u0447\u0435\u0442\u0432\u0435\u0440\u0433\u0430:4,\u0447\u0442:4,"\u0447\u0442.":4,\u043F\u044F\u0442\u043D\u0438\u0446\u0430:5,\u043F\u044F\u0442\u043D\u0438\u0446\u0443:5,\u043F\u044F\u0442\u043D\u0438\u0446\u044B:5,\u043F\u0442:5,"\u043F\u0442.":5,\u0441\u0443\u0431\u0431\u043E\u0442\u0430:6,\u0441\u0443\u0431\u0431\u043E\u0442\u0443:6,\u0441\u0443\u0431\u0431\u043E\u0442\u044B:6,\u0441\u0431:6,"\u0441\u0431.":6};I.FULL_MONTH_NAME_DICTIONARY={\u044F\u043D\u0432\u0430\u0440\u044C:1,\u044F\u043D\u0432\u0430\u0440\u044F:1,\u044F\u043D\u0432\u0430\u0440\u0435:1,\u0444\u0435\u0432\u0440\u044F\u043B\u044C:2,\u0444\u0435\u0432\u0440\u044F\u043B\u044F:2,\u0444\u0435\u0432\u0440\u044F\u043B\u0435:2,\u043C\u0430\u0440\u0442:3,\u043C\u0430\u0440\u0442\u0430:3,\u043C\u0430\u0440\u0442\u0435:3,\u0430\u043F\u0440\u0435\u043B\u044C:4,\u0430\u043F\u0440\u0435\u043B\u044F:4,\u0430\u043F\u0440\u0435\u043B\u0435:4,\u043C\u0430\u0439:5,\u043C\u0430\u044F:5,\u043C\u0430\u0435:5,\u0438\u044E\u043D\u044C:6,\u0438\u044E\u043D\u044F:6,\u0438\u044E\u043D\u0435:6,\u0438\u044E\u043B\u044C:7,\u0438\u044E\u043B\u044F:7,\u0438\u044E\u043B\u0435:7,\u0430\u0432\u0433\u0443\u0441\u0442:8,\u0430\u0432\u0433\u0443\u0441\u0442\u0430:8,\u0430\u0432\u0433\u0443\u0441\u0442\u0435:8,\u0441\u0435\u043D\u0442\u044F\u0431\u0440\u044C:9,\u0441\u0435\u043D\u0442\u044F\u0431\u0440\u044F:9,\u0441\u0435\u043D\u0442\u044F\u0431\u0440\u0435:9,\u043E\u043A\u0442\u044F\u0431\u0440\u044C:10,\u043E\u043A\u0442\u044F\u0431\u0440\u044F:10,\u043E\u043A\u0442\u044F\u0431\u0440\u0435:10,\u043D\u043E\u044F\u0431\u0440\u044C:11,\u043D\u043E\u044F\u0431\u0440\u044F:11,\u043D\u043E\u044F\u0431\u0440\u0435:11,\u0434\u0435\u043A\u0430\u0431\u0440\u044C:12,\u0434\u0435\u043A\u0430\u0431\u0440\u044F:12,\u0434\u0435\u043A\u0430\u0431\u0440\u0435:12};I.MONTH_DICTIONARY=Object.assign(Object.assign({},I.FULL_MONTH_NAME_DICTIONARY),{\u044F\u043D\u0432:1,"\u044F\u043D\u0432.":1,\u0444\u0435\u0432:2,"\u0444\u0435\u0432.":2,\u043C\u0430\u0440:3,"\u043C\u0430\u0440.":3,\u0430\u043F\u0440:4,"\u0430\u043F\u0440.":4,\u0430\u0432\u0433:8,"\u0430\u0432\u0433.":8,\u0441\u0435\u043D:9,"\u0441\u0435\u043D.":9,\u043E\u043A\u0442:10,"\u043E\u043A\u0442.":10,\u043D\u043E\u044F:11,"\u043D\u043E\u044F.":11,\u0434\u0435\u043A:12,"\u0434\u0435\u043A.":12});I.INTEGER_WORD_DICTIONARY={\u043E\u0434\u0438\u043D:1,\u043E\u0434\u043D\u0430:1,\u043E\u0434\u043D\u043E\u0439:1,\u043E\u0434\u043D\u0443:1,\u0434\u0432\u0435:2,\u0434\u0432\u0430:2,\u0434\u0432\u0443\u0445:2,\u0442\u0440\u0438:3,\u0442\u0440\u0435\u0445:3,\u0442\u0440\u0451\u0445:3,\u0447\u0435\u0442\u044B\u0440\u0435:4,\u0447\u0435\u0442\u044B\u0440\u0435\u0445:4,\u0447\u0435\u0442\u044B\u0440\u0451\u0445:4,\u043F\u044F\u0442\u044C:5,\u043F\u044F\u0442\u0438:5,\u0448\u0435\u0441\u0442\u044C:6,\u0448\u0435\u0441\u0442\u0438:6,\u0441\u0435\u043C\u044C:7,\u0441\u0435\u043C\u0438:7,\u0432\u043E\u0441\u0435\u043C\u044C:8,\u0432\u043E\u0441\u0435\u043C\u044C\u043C\u0438:8,\u0434\u0435\u0432\u044F\u0442\u044C:9,\u0434\u0435\u0432\u044F\u0442\u0438:9,\u0434\u0435\u0441\u044F\u0442\u044C:10,\u0434\u0435\u0441\u044F\u0442\u0438:10,\u043E\u0434\u0438\u043D\u043D\u0430\u0434\u0446\u0430\u0442\u044C:11,\u043E\u0434\u0438\u043D\u043D\u0430\u0434\u0446\u0430\u0442\u0438:11,\u0434\u0432\u0435\u043D\u0430\u0434\u0446\u0430\u0442\u044C:12,\u0434\u0432\u0435\u043D\u0430\u0434\u0446\u0430\u0442\u0438:12};I.ORDINAL_WORD_DICTIONARY={\u043F\u0435\u0440\u0432\u043E\u0435:1,\u043F\u0435\u0440\u0432\u043E\u0433\u043E:1,\u0432\u0442\u043E\u0440\u043E\u0435:2,\u0432\u0442\u043E\u0440\u043E\u0433\u043E:2,\u0442\u0440\u0435\u0442\u044C\u0435:3,\u0442\u0440\u0435\u0442\u044C\u0435\u0433\u043E:3,\u0447\u0435\u0442\u0432\u0435\u0440\u0442\u043E\u0435:4,\u0447\u0435\u0442\u0432\u0435\u0440\u0442\u043E\u0433\u043E:4,\u043F\u044F\u0442\u043E\u0435:5,\u043F\u044F\u0442\u043E\u0433\u043E:5,\u0448\u0435\u0441\u0442\u043E\u0435:6,\u0448\u0435\u0441\u0442\u043E\u0433\u043E:6,\u0441\u0435\u0434\u044C\u043C\u043E\u0435:7,\u0441\u0435\u0434\u044C\u043C\u043E\u0433\u043E:7,\u0432\u043E\u0441\u044C\u043C\u043E\u0435:8,\u0432\u043E\u0441\u044C\u043C\u043E\u0433\u043E:8,\u0434\u0435\u0432\u044F\u0442\u043E\u0435:9,\u0434\u0435\u0432\u044F\u0442\u043E\u0433\u043E:9,\u0434\u0435\u0441\u044F\u0442\u043E\u0435:10,\u0434\u0435\u0441\u044F\u0442\u043E\u0433\u043E:10,\u043E\u0434\u0438\u043D\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0435:11,\u043E\u0434\u0438\u043D\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:11,\u0434\u0432\u0435\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0435:12,\u0434\u0432\u0435\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:12,\u0442\u0440\u0438\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0435:13,\u0442\u0440\u0438\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:13,\u0447\u0435\u0442\u044B\u0440\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0435:14,\u0447\u0435\u0442\u044B\u0440\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:14,\u043F\u044F\u0442\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0435:15,\u043F\u044F\u0442\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:15,\u0448\u0435\u0441\u0442\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0435:16,\u0448\u0435\u0441\u0442\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:16,\u0441\u0435\u043C\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0435:17,\u0441\u0435\u043C\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:17,\u0432\u043E\u0441\u0435\u043C\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0435:18,\u0432\u043E\u0441\u0435\u043C\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:18,\u0434\u0435\u0432\u044F\u0442\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0435:19,\u0434\u0435\u0432\u044F\u0442\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:19,\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u043E\u0435:20,\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:20,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u043F\u0435\u0440\u0432\u043E\u0435":21,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u043F\u0435\u0440\u0432\u043E\u0433\u043E":21,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0432\u0442\u043E\u0440\u043E\u0435":22,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0432\u0442\u043E\u0440\u043E\u0433\u043E":22,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0442\u0440\u0435\u0442\u044C\u0435":23,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0442\u0440\u0435\u0442\u044C\u0435\u0433\u043E":23,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0447\u0435\u0442\u0432\u0435\u0440\u0442\u043E\u0435":24,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0447\u0435\u0442\u0432\u0435\u0440\u0442\u043E\u0433\u043E":24,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u043F\u044F\u0442\u043E\u0435":25,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u043F\u044F\u0442\u043E\u0433\u043E":25,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0448\u0435\u0441\u0442\u043E\u0435":26,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0448\u0435\u0441\u0442\u043E\u0433\u043E":26,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0441\u0435\u0434\u044C\u043C\u043E\u0435":27,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0441\u0435\u0434\u044C\u043C\u043E\u0433\u043E":27,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0432\u043E\u0441\u044C\u043C\u043E\u0435":28,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0432\u043E\u0441\u044C\u043C\u043E\u0433\u043E":28,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0434\u0435\u0432\u044F\u0442\u043E\u0435":29,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0434\u0435\u0432\u044F\u0442\u043E\u0433\u043E":29,\u0442\u0440\u0438\u0434\u0446\u0430\u0442\u043E\u0435:30,\u0442\u0440\u0438\u0434\u0446\u0430\u0442\u043E\u0433\u043E:30,"\u0442\u0440\u0438\u0434\u0446\u0430\u0442\u044C \u043F\u0435\u0440\u0432\u043E\u0435":31,"\u0442\u0440\u0438\u0434\u0446\u0430\u0442\u044C \u043F\u0435\u0440\u0432\u043E\u0433\u043E":31};I.TIME_UNIT_DICTIONARY={\u0441\u0435\u043A:"second",\u0441\u0435\u043A\u0443\u043D\u0434\u0430:"second",\u0441\u0435\u043A\u0443\u043D\u0434:"second",\u0441\u0435\u043A\u0443\u043D\u0434\u044B:"second",\u0441\u0435\u043A\u0443\u043D\u0434\u0443:"second",\u0441\u0435\u043A\u0443\u043D\u0434\u043E\u0447\u043A\u0430:"second",\u0441\u0435\u043A\u0443\u043D\u0434\u043E\u0447\u043A\u0438:"second",\u0441\u0435\u043A\u0443\u043D\u0434\u043E\u0447\u0435\u043A:"second",\u0441\u0435\u043A\u0443\u043D\u0434\u043E\u0447\u043A\u0443:"second",\u043C\u0438\u043D:"minute",\u043C\u0438\u043D\u0443\u0442\u0430:"minute",\u043C\u0438\u043D\u0443\u0442:"minute",\u043C\u0438\u043D\u0443\u0442\u044B:"minute",\u043C\u0438\u043D\u0443\u0442\u0443:"minute",\u043C\u0438\u043D\u0443\u0442\u043E\u043A:"minute",\u043C\u0438\u043D\u0443\u0442\u043A\u0438:"minute",\u043C\u0438\u043D\u0443\u0442\u043A\u0443:"minute",\u0447\u0430\u0441:"hour",\u0447\u0430\u0441\u043E\u0432:"hour",\u0447\u0430\u0441\u0430:"hour",\u0447\u0430\u0441\u0443:"hour",\u0447\u0430\u0441\u0438\u043A\u043E\u0432:"hour",\u0447\u0430\u0441\u0438\u043A\u0430:"hour",\u0447\u0430\u0441\u0438\u043A\u0435:"hour",\u0447\u0430\u0441\u0438\u043A:"hour",\u0434\u0435\u043D\u044C:"d",\u0434\u043D\u044F:"d",\u0434\u043D\u0435\u0439:"d",\u0441\u0443\u0442\u043E\u043A:"d",\u0441\u0443\u0442\u043A\u0438:"d",\u043D\u0435\u0434\u0435\u043B\u044F:"week",\u043D\u0435\u0434\u0435\u043B\u0435:"week",\u043D\u0435\u0434\u0435\u043B\u0438:"week",\u043D\u0435\u0434\u0435\u043B\u044E:"week",\u043D\u0435\u0434\u0435\u043B\u044C:"week",\u043D\u0435\u0434\u0435\u043B\u044C\u043A\u0435:"week",\u043D\u0435\u0434\u0435\u043B\u044C\u043A\u0438:"week",\u043D\u0435\u0434\u0435\u043B\u0435\u043A:"week",\u043C\u0435\u0441\u044F\u0446:"month",\u043C\u0435\u0441\u044F\u0446\u0435:"month",\u043C\u0435\u0441\u044F\u0446\u0435\u0432:"month",\u043C\u0435\u0441\u044F\u0446\u0430:"month",\u043A\u0432\u0430\u0440\u0442\u0430\u043B:"quarter",\u043A\u0432\u0430\u0440\u0442\u0430\u043B\u0435:"quarter",\u043A\u0432\u0430\u0440\u0442\u0430\u043B\u043E\u0432:"quarter",\u0433\u043E\u0434:"year",\u0433\u043E\u0434\u0430:"year",\u0433\u043E\u0434\u0443:"year",\u0433\u043E\u0434\u043E\u0432:"year",\u043B\u0435\u0442:"year",\u0433\u043E\u0434\u0438\u043A:"year",\u0433\u043E\u0434\u0438\u043A\u0430:"year",\u0433\u043E\u0434\u0438\u043A\u043E\u0432:"year"};I.NUMBER_PATTERN=`(?:${ua.matchAnyPattern(I.INTEGER_WORD_DICTIONARY)}|[0-9]+|[0-9]+\\.[0-9]+|\u043F\u043E\u043B|\u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E|\u043F\u0430\u0440(?:\u044B|\u0443)|\\s{0,3})`;function yg(r){let e=r.toLowerCase();return I.INTEGER_WORD_DICTIONARY[e]!==void 0?I.INTEGER_WORD_DICTIONARY[e]:e.match(/несколько/)?3:e.match(/пол/)?.5:e.match(/пар/)?2:e===""?1:parseFloat(e)}I.parseNumberPattern=yg;I.ORDINAL_NUMBER_PATTERN=`(?:${ua.matchAnyPattern(I.ORDINAL_WORD_DICTIONARY)}|[0-9]{1,2}(?:\u0433\u043E|\u043E\u0433\u043E|\u0435|\u043E\u0435)?)`;function ZM(r){let e=r.toLowerCase();return I.ORDINAL_WORD_DICTIONARY[e]!==void 0?I.ORDINAL_WORD_DICTIONARY[e]:(e=e.replace(/(?:st|nd|rd|th)$/i,""),parseInt(e))}I.parseOrdinalNumberPattern=ZM;var Dc="(?:\\s+(?:\u0433\u043E\u0434\u0443|\u0433\u043E\u0434\u0430|\u0433\u043E\u0434|\u0433|\u0433.))?";I.YEAR_PATTERN=`(?:[1-9][0-9]{0,3}${Dc}\\s*(?:\u043D.\u044D.|\u0434\u043E \u043D.\u044D.|\u043D. \u044D.|\u0434\u043E \u043D. \u044D.)|[1-2][0-9]{3}${Dc}|[5-9][0-9]${Dc})`;function XM(r){if(/(год|года|г|г.)/i.test(r)&&(r=r.replace(/(год|года|г|г.)/i,"")),/(до н.э.|до н. э.)/i.test(r))return r=r.replace(/(до н.э.|до н. э.)/i,""),-parseInt(r);if(/(н. э.|н.э.)/i.test(r))return r=r.replace(/(н. э.|н.э.)/i,""),parseInt(r);let e=parseInt(r);return VM.findMostLikelyADYear(e)}I.parseYear=XM;var gg=`(${I.NUMBER_PATTERN})\\s{0,3}(${ua.matchAnyPattern(I.TIME_UNIT_DICTIONARY)})`,mg=new RegExp(gg,"i");I.TIME_UNITS_PATTERN=ua.repeatedTimeunitPattern("(?:(?:\u043E\u043A\u043E\u043B\u043E|\u043F\u0440\u0438\u043C\u0435\u0440\u043D\u043E)\\s{0,3})?",gg);function QM(r){let e={},t=r,n=mg.exec(t);for(;n;)JM(e,n),t=t.substring(n[0].length).trim(),n=mg.exec(t);return e}I.parseTimeUnits=QM;function JM(r,e){let t=yg(e[1]),n=I.TIME_UNIT_DICTIONARY[e[2].toLowerCase()];r[n]=t}});var Tg=p(Pc=>{"use strict";Object.defineProperty(Pc,"__esModule",{value:!0});var Ai=ze(),eP=de(),tP=E(),_g=`(?:(?:\u043E\u043A\u043E\u043B\u043E|\u043F\u0440\u0438\u043C\u0435\u0440\u043D\u043E)\\s*(?:~\\s*)?)?(${Ai.TIME_UNITS_PATTERN})${Ai.REGEX_PARTS.rightBoundary}`,rP=new RegExp(`(?:\u0432 \u0442\u0435\u0447\u0435\u043D\u0438\u0435|\u0432 \u0442\u0435\u0447\u0435\u043D\u0438\u0438)\\s*${_g}`,Ai.REGEX_PARTS.flags),nP=new RegExp(_g,"i"),Mc=class extends tP.AbstractParserWithWordBoundaryChecking{patternLeftBoundary(){return Ai.REGEX_PARTS.leftBoundary}innerPattern(e){return e.option.forwardDate?nP:rP}innerExtract(e,t){let n=Ai.parseTimeUnits(t[1]);return eP.ParsingComponents.createRelativeFromReference(e.reference,n)}};Pc.default=Mc});var wg=p(Ac=>{"use strict";Object.defineProperty(Ac,"__esModule",{value:!0});var iP=Ce(),ki=ze(),Rg=ze(),la=ze(),sP=Q(),aP=E(),oP=new RegExp(`(?:\u0441)?\\s*(${la.ORDINAL_NUMBER_PATTERN})(?:\\s{0,3}(?:\u043F\u043E|-|\u2013|\u0434\u043E)?\\s{0,3}(${la.ORDINAL_NUMBER_PATTERN}))?(?:-|\\/|\\s{0,3}(?:of)?\\s{0,3})(${sP.matchAnyPattern(ki.MONTH_DICTIONARY)})(?:(?:-|\\/|,?\\s{0,3})(${Rg.YEAR_PATTERN}(?![^\\s]\\d)))?${ki.REGEX_PARTS.rightBoundary}`,ki.REGEX_PARTS.flags),bg=1,vg=2,uP=3,Eg=4,Oc=class extends aP.AbstractParserWithWordBoundaryChecking{patternLeftBoundary(){return ki.REGEX_PARTS.leftBoundary}innerPattern(){return oP}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=ki.MONTH_DICTIONARY[t[uP].toLowerCase()],s=la.parseOrdinalNumberPattern(t[bg]);if(s>31)return t.index=t.index+t[bg].length,null;if(n.start.assign("month",i),n.start.assign("day",s),t[Eg]){let a=Rg.parseYear(t[Eg]);n.start.assign("year",a)}else{let a=iP.findYearClosestToRef(e.refDate,s,i);n.start.imply("year",a)}if(t[vg]){let a=la.parseOrdinalNumberPattern(t[vg]);n.end=n.start.clone(),n.end.assign("day",a)}return n}};Ac.default=Oc});var Pg=p(Nc=>{"use strict";Object.defineProperty(Nc,"__esModule",{value:!0});var Ni=ze(),lP=Ce(),cP=Q(),Mg=ze(),dP=E(),fP=new RegExp(`((?:\u0432)\\s*)?(${cP.matchAnyPattern(Ni.MONTH_DICTIONARY)})\\s*(?:[,-]?\\s*(${Mg.YEAR_PATTERN})?)?(?=[^\\s\\w]|\\s+[^0-9]|\\s+$|$)`,Ni.REGEX_PARTS.flags),pP=2,Dg=3,kc=class extends dP.AbstractParserWithWordBoundaryChecking{patternLeftBoundary(){return Ni.REGEX_PARTS.leftBoundary}innerPattern(){return fP}innerExtract(e,t){let n=t[pP].toLowerCase();if(t[0].length<=3&&!Ni.FULL_MONTH_NAME_DICTIONARY[n])return null;let i=e.createParsingResult(t.index,t.index+t[0].length);i.start.imply("day",1);let s=Ni.MONTH_DICTIONARY[n];if(i.start.assign("month",s),t[Dg]){let a=Mg.parseYear(t[Dg]);i.start.assign("year",a)}else{let a=lP.findYearClosestToRef(e.refDate,1,s);i.start.imply("year",a)}return i}};Nc.default=kc});var Ag=p(Sc=>{"use strict";Object.defineProperty(Sc,"__esModule",{value:!0});var ca=Te(),hP=xr(),Og=ze(),Cc=class extends hP.AbstractTimeExpressionParser{constructor(e){super(e)}patternFlags(){return Og.REGEX_PARTS.flags}primaryPatternLeftBoundary(){return"(^|\\s|T|(?:[^\\p{L}\\p{N}_]))"}followingPhase(){return"\\s*(?:\\-|\\\u2013|\\~|\\\u301C|\u0434\u043E|\u0438|\u043F\u043E|\\?)\\s*"}primaryPrefix(){return"(?:(?:\u0432|\u0441)\\s*)??"}primarySuffix(){return`(?:\\s*(?:\u0443\u0442\u0440\u0430|\u0432\u0435\u0447\u0435\u0440\u0430|\u043F\u043E\u0441\u043B\u0435 \u043F\u043E\u043B\u0443\u0434\u043D\u044F))?(?!\\/)${Og.REGEX_PARTS.rightBoundary}`}extractPrimaryTimeComponents(e,t){let n=super.extractPrimaryTimeComponents(e,t);if(n){if(t[0].endsWith("\u0432\u0435\u0447\u0435\u0440\u0430")){let i=n.get("hour");i>=6&&i<12?(n.assign("hour",n.get("hour")+12),n.assign("meridiem",ca.Meridiem.PM)):i<6&&n.assign("meridiem",ca.Meridiem.AM)}if(t[0].endsWith("\u043F\u043E\u0441\u043B\u0435 \u043F\u043E\u043B\u0443\u0434\u043D\u044F")){n.assign("meridiem",ca.Meridiem.PM);let i=n.get("hour");i>=0&&i<=6&&n.assign("hour",n.get("hour")+12)}t[0].endsWith("\u0443\u0442\u0440\u0430")&&(n.assign("meridiem",ca.Meridiem.AM),n.get("hour")<12&&n.assign("hour",n.get("hour")))}return n}};Sc.default=Cc});var kg=p(Ic=>{"use strict";Object.defineProperty(Ic,"__esModule",{value:!0});var da=ze(),mP=de(),yP=E(),gP=nt(),_P=new RegExp(`(${da.TIME_UNITS_PATTERN})\\s{0,5}\u043D\u0430\u0437\u0430\u0434(?=(?:\\W|$))`,da.REGEX_PARTS.flags),xc=class extends yP.AbstractParserWithWordBoundaryChecking{patternLeftBoundary(){return da.REGEX_PARTS.leftBoundary}innerPattern(){return _P}innerExtract(e,t){let n=da.parseTimeUnits(t[1]),i=gP.reverseTimeUnits(n);return mP.ParsingComponents.createRelativeFromReference(e.reference,i)}};Ic.default=xc});var Ng=p(Ci=>{"use strict";var TP=Ci&&Ci.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Ci,"__esModule",{value:!0});var bP=TP(Ot()),Uc=class extends bP.default{patternBetween(){return/^\s*(и до|и по|до|по|-)\s*$/i}};Ci.default=Uc});var Cg=p(Si=>{"use strict";var vP=Si&&Si.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Si,"__esModule",{value:!0});var EP=vP($t()),qc=class extends EP.default{patternBetween(){return new RegExp("^\\s*(T|\u0432|,|-)?\\s*$")}};Si.default=qc});var Sg=p(Zt=>{"use strict";var RP=Zt&&Zt.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),wP=Zt&&Zt.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),DP=Zt&&Zt.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&RP(e,r,t);return wP(e,r),e};Object.defineProperty(Zt,"__esModule",{value:!0});var MP=E(),xi=DP(Gt()),Fc=ze(),PP=new RegExp(`(?:\u0441|\u0441\u043E)?\\s*(\u0441\u0435\u0433\u043E\u0434\u043D\u044F|\u0432\u0447\u0435\u0440\u0430|\u0437\u0430\u0432\u0442\u0440\u0430|\u043F\u043E\u0441\u043B\u0435\u0437\u0430\u0432\u0442\u0440\u0430|\u043F\u043E\u0437\u0430\u0432\u0447\u0435\u0440\u0430)${Fc.REGEX_PARTS.rightBoundary}`,Fc.REGEX_PARTS.flags),Wc=class extends MP.AbstractParserWithWordBoundaryChecking{patternLeftBoundary(){return Fc.REGEX_PARTS.leftBoundary}innerPattern(e){return PP}innerExtract(e,t){let n=t[1].toLowerCase(),i=e.createParsingComponents();switch(n){case"\u0441\u0435\u0433\u043E\u0434\u043D\u044F":return xi.today(e.reference);case"\u0432\u0447\u0435\u0440\u0430":return xi.yesterday(e.reference);case"\u0437\u0430\u0432\u0442\u0440\u0430":return xi.tomorrow(e.reference);case"\u043F\u043E\u0441\u043B\u0435\u0437\u0430\u0432\u0442\u0440\u0430":return xi.theDayAfter(e.reference,2);case"\u043F\u043E\u0437\u0430\u0432\u0447\u0435\u0440\u0430":return xi.theDayBefore(e.reference,2)}return i}};Zt.default=Wc});var xg=p(Tt=>{"use strict";var OP=Tt&&Tt.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),AP=Tt&&Tt.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),kP=Tt&&Tt.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&OP(e,r,t);return AP(e,r),e},NP=Tt&&Tt.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Tt,"__esModule",{value:!0});var CP=E(),$r=kP(Gt()),SP=rt(),xP=NP(K()),Lc=ze(),IP=new RegExp(`(\u0441\u0435\u0439\u0447\u0430\u0441|\u043F\u0440\u043E\u0448\u043B\u044B\u043C\\s*\u0432\u0435\u0447\u0435\u0440\u043E\u043C|\u043F\u0440\u043E\u0448\u043B\u043E\u0439\\s*\u043D\u043E\u0447\u044C\u044E|\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0439\\s*\u043D\u043E\u0447\u044C\u044E|\u0441\u0435\u0433\u043E\u0434\u043D\u044F\\s*\u043D\u043E\u0447\u044C\u044E|\u044D\u0442\u043E\u0439\\s*\u043D\u043E\u0447\u044C\u044E|\u043D\u043E\u0447\u044C\u044E|\u044D\u0442\u0438\u043C \u0443\u0442\u0440\u043E\u043C|\u0443\u0442\u0440\u043E\u043C|\u0443\u0442\u0440\u0430|\u0432\\s*\u043F\u043E\u043B\u0434\u0435\u043D\u044C|\u0432\u0435\u0447\u0435\u0440\u043E\u043C|\u0432\u0435\u0447\u0435\u0440\u0430|\u0432\\s*\u043F\u043E\u043B\u043D\u043E\u0447\u044C)${Lc.REGEX_PARTS.rightBoundary}`,Lc.REGEX_PARTS.flags),Yc=class extends CP.AbstractParserWithWordBoundaryChecking{patternLeftBoundary(){return Lc.REGEX_PARTS.leftBoundary}innerPattern(){return IP}innerExtract(e,t){let n=xP.default(e.refDate),i=t[0].toLowerCase(),s=e.createParsingComponents();if(i==="\u0441\u0435\u0439\u0447\u0430\u0441")return $r.now(e.reference);if(i==="\u0432\u0435\u0447\u0435\u0440\u043E\u043C"||i==="\u0432\u0435\u0447\u0435\u0440\u0430")return $r.evening(e.reference);if(i.endsWith("\u0443\u0442\u0440\u043E\u043C")||i.endsWith("\u0443\u0442\u0440\u0430"))return $r.morning(e.reference);if(i.match(/в\s*полдень/))return $r.noon(e.reference);if(i.match(/прошлой\s*ночью/))return $r.lastNight(e.reference);if(i.match(/прошлым\s*вечером/))return $r.yesterdayEvening(e.reference);if(i.match(/следующей\s*ночью/)){let a=n.hour()<22?1:2;n=n.add(a,"day"),SP.assignSimilarDate(s,n),s.imply("hour",0)}return i.match(/в\s*полночь/)||i.endsWith("\u043D\u043E\u0447\u044C\u044E")?$r.midnight(e.reference):s}};Tt.default=Yc});var Ig=p(jc=>{"use strict";Object.defineProperty(jc,"__esModule",{value:!0});var Ii=ze(),UP=Q(),qP=E(),FP=Ur(),WP=new RegExp(`(?:(?:,|\\(|\uFF08)\\s*)?(?:\u0432\\s*?)?(?:(\u044D\u0442\u0443|\u044D\u0442\u043E\u0442|\u043F\u0440\u043E\u0448\u043B\u044B\u0439|\u043F\u0440\u043E\u0448\u043B\u0443\u044E|\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0439|\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0443\u044E|\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0433\u043E)\\s*)?(${UP.matchAnyPattern(Ii.WEEKDAY_DICTIONARY)})(?:\\s*(?:,|\\)|\uFF09))?(?:\\s*\u043D\u0430\\s*(\u044D\u0442\u043E\u0439|\u043F\u0440\u043E\u0448\u043B\u043E\u0439|\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0439)\\s*\u043D\u0435\u0434\u0435\u043B\u0435)?${Ii.REGEX_PARTS.rightBoundary}`,Ii.REGEX_PARTS.flags),LP=1,YP=2,$P=3,$c=class extends qP.AbstractParserWithWordBoundaryChecking{innerPattern(){return WP}patternLeftBoundary(){return Ii.REGEX_PARTS.leftBoundary}innerExtract(e,t){let n=t[YP].toLowerCase(),i=Ii.WEEKDAY_DICTIONARY[n],s=t[LP],a=t[$P],o=s||a;o=o||"",o=o.toLowerCase();let u=null;o=="\u043F\u0440\u043E\u0448\u043B\u044B\u0439"||o=="\u043F\u0440\u043E\u0448\u043B\u0443\u044E"||o=="\u043F\u0440\u043E\u0448\u043B\u043E\u0439"?u="last":o=="\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0439"||o=="\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0443\u044E"||o=="\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0439"||o=="\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0433\u043E"?u="next":(o=="\u044D\u0442\u043E\u0442"||o=="\u044D\u0442\u0443"||o=="\u044D\u0442\u043E\u0439")&&(u="this");let l=FP.toDayJSWeekday(e.refDate,i,u);return e.createParsingComponents().assign("weekday",i).imply("day",l.date()).imply("month",l.month()+1).imply("year",l.year())}};jc.default=$c});var qg=p(qi=>{"use strict";var jP=qi&&qi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(qi,"__esModule",{value:!0});var Ui=ze(),Ug=de(),BP=jP(K()),GP=E(),HP=Q(),zP=new RegExp(`(\u0432 \u043F\u0440\u043E\u0448\u043B\u043E\u043C|\u043D\u0430 \u043F\u0440\u043E\u0448\u043B\u043E\u0439|\u043D\u0430 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0439|\u0432 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u043C|\u043D\u0430 \u044D\u0442\u043E\u0439|\u0432 \u044D\u0442\u043E\u043C)\\s*(${HP.matchAnyPattern(Ui.TIME_UNIT_DICTIONARY)})(?=\\s*)${Ui.REGEX_PARTS.rightBoundary}`,Ui.REGEX_PARTS.flags),KP=1,VP=2,Bc=class extends GP.AbstractParserWithWordBoundaryChecking{patternLeftBoundary(){return Ui.REGEX_PARTS.leftBoundary}innerPattern(){return zP}innerExtract(e,t){let n=t[KP].toLowerCase(),i=t[VP].toLowerCase(),s=Ui.TIME_UNIT_DICTIONARY[i];if(n=="\u043D\u0430 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0439"||n=="\u0432 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u043C"){let u={};return u[s]=1,Ug.ParsingComponents.createRelativeFromReference(e.reference,u)}if(n=="\u0432 \u043F\u0440\u043E\u0448\u043B\u043E\u043C"||n=="\u043D\u0430 \u043F\u0440\u043E\u0448\u043B\u043E\u0439"){let u={};return u[s]=-1,Ug.ParsingComponents.createRelativeFromReference(e.reference,u)}let a=e.createParsingComponents(),o=BP.default(e.reference.instant);return s.match(/week/i)?(o=o.add(-o.get("d"),"d"),a.imply("day",o.date()),a.imply("month",o.month()+1),a.imply("year",o.year())):s.match(/month/i)?(o=o.add(-o.date()+1,"d"),a.imply("day",o.date()),a.assign("year",o.year()),a.assign("month",o.month()+1)):s.match(/year/i)&&(o=o.add(-o.date()+1,"d"),o=o.add(-o.month(),"month"),a.imply("day",o.date()),a.imply("month",o.month()+1),a.assign("year",o.year())),a}};qi.default=Bc});var Fg=p(Hc=>{"use strict";Object.defineProperty(Hc,"__esModule",{value:!0});var Fi=ze(),ZP=de(),XP=E(),QP=nt(),JP=new RegExp(`(\u044D\u0442\u0438|\u043F\u043E\u0441\u043B\u0435\u0434\u043D\u0438\u0435|\u043F\u0440\u043E\u0448\u043B\u044B\u0435|\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0435|\u043F\u043E\u0441\u043B\u0435|\u0447\u0435\u0440\u0435\u0437|\\+|-)\\s*(${Fi.TIME_UNITS_PATTERN})${Fi.REGEX_PARTS.rightBoundary}`,Fi.REGEX_PARTS.flags),Gc=class extends XP.AbstractParserWithWordBoundaryChecking{patternLeftBoundary(){return Fi.REGEX_PARTS.leftBoundary}innerPattern(){return JP}innerExtract(e,t){let n=t[1].toLowerCase(),i=Fi.parseTimeUnits(t[2]);switch(n){case"\u043F\u043E\u0441\u043B\u0435\u0434\u043D\u0438\u0435":case"\u043F\u0440\u043E\u0448\u043B\u044B\u0435":case"-":i=QP.reverseTimeUnits(i);break}return ZP.ParsingComponents.createRelativeFromReference(e.reference,i)}};Hc.default=Gc});var Yg=p(Pe=>{"use strict";var Qe=Pe&&Pe.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Pe,"__esModule",{value:!0});Pe.createConfiguration=Pe.createCasualConfiguration=Pe.parseDate=Pe.parse=Pe.strict=Pe.casual=void 0;var eO=Qe(Tg()),tO=Qe(wg()),rO=Qe(Pg()),nO=Qe(Ag()),iO=Qe(kg()),sO=Qe(Ng()),aO=Qe(Cg()),oO=jt(),uO=Qe(Sg()),lO=Qe(xg()),cO=Qe(Ig()),dO=Qe(qg()),Wg=ht(),fO=Qe(qr()),pO=Qe(Fg());Pe.casual=new Wg.Chrono(Lg());Pe.strict=new Wg.Chrono(zc(!0));function hO(r,e,t){return Pe.casual.parse(r,e,t)}Pe.parse=hO;function mO(r,e,t){return Pe.casual.parseDate(r,e,t)}Pe.parseDate=mO;function Lg(){let r=zc(!1);return r.parsers.unshift(new uO.default),r.parsers.unshift(new lO.default),r.parsers.unshift(new rO.default),r.parsers.unshift(new dO.default),r.parsers.unshift(new pO.default),r}Pe.createCasualConfiguration=Lg;function zc(r=!0){return oO.includeCommonConfiguration({parsers:[new fO.default(!0),new eO.default,new tO.default,new cO.default,new nO.default(r),new iO.default],refiners:[new aO.default,new sO.default]},r)}Pe.createConfiguration=zc});var Te=p(q=>{"use strict";var yO=q&&q.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),gO=q&&q.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),Tr=q&&q.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&yO(e,r,t);return gO(e,r),e};Object.defineProperty(q,"__esModule",{value:!0});q.parseDate=q.parse=q.casual=q.strict=q.ru=q.zh=q.nl=q.pt=q.ja=q.fr=q.de=q.Meridiem=q.Chrono=q.en=void 0;var Kc=Tr(du());q.en=Kc;var _O=ht();Object.defineProperty(q,"Chrono",{enumerable:!0,get:function(){return _O.Chrono}});var TO;(function(r){r[r.AM=0]="AM",r[r.PM=1]="PM"})(TO=q.Meridiem||(q.Meridiem={}));var bO=Tr(Zh());q.de=bO;var vO=Tr(Dm());q.fr=vO;var EO=Tr(xm());q.ja=EO;var RO=Tr(Zm());q.pt=RO;var wO=Tr(xy());q.nl=wO;var DO=Tr(hg());q.zh=DO;var MO=Tr(Yg());q.ru=MO;q.strict=Kc.strict;q.casual=Kc.casual;function PO(r,e,t){return q.casual.parse(r,e,t)}q.parse=PO;function OO(r,e,t){return q.casual.parseDate(r,e,t)}q.parseDate=OO});var Ct=p(Rr=>{"use strict";Rr.__esModule=!0;var UO;(function(r){r.AND="AND",r.OR="OR",r.XOR="XOR",r.NOT="NOT"})(UO=Rr.Operators||(Rr.Operators={}));var qO;(function(r){r.OPEN_PARENTHESIS="(",r.CLOSE_PARENTHESIS=")"})(qO=Rr.StructuralCharacters||(Rr.StructuralCharacters={}));var FO;(function(r){r.IDENTIFIER="IDENTIFIER",r.OPERATOR="OPERATOR",r.STRUCTURAL_CHARACTER="STRUCTURAL_CHARACTER",r.EOF="EOF",r.COMMENT="COMMENT"})(FO=Rr.Tokens||(Rr.Tokens={}))});var cd=p(Oa=>{"use strict";Oa.__esModule=!0;var fe=Ct();Oa.OPERATOR_PRECEDENCE={NOT:0,XOR:1,AND:2,OR:3};Oa.VALID_TOKENS={identifierOnly:[{name:fe.Tokens.IDENTIFIER},{name:fe.Tokens.STRUCTURAL_CHARACTER,value:fe.StructuralCharacters.OPEN_PARENTHESIS}],identifierOrNot:[{name:fe.Tokens.IDENTIFIER},{name:fe.Tokens.STRUCTURAL_CHARACTER,value:fe.StructuralCharacters.OPEN_PARENTHESIS},{name:fe.Tokens.OPERATOR,value:fe.Operators.NOT}],binaryOperator:[{name:fe.Tokens.OPERATOR,value:fe.Operators.AND},{name:fe.Tokens.OPERATOR,value:fe.Operators.OR},{name:fe.Tokens.OPERATOR,value:fe.Operators.XOR}],binaryOperatorOrClose:[{name:fe.Tokens.OPERATOR,value:fe.Operators.AND},{name:fe.Tokens.OPERATOR,value:fe.Operators.OR},{name:fe.Tokens.OPERATOR,value:fe.Operators.XOR},{name:fe.Tokens.STRUCTURAL_CHARACTER,value:fe.StructuralCharacters.CLOSE_PARENTHESIS}]}});var dd=p(Jt=>{"use strict";Jt.__esModule=!0;var Tn=Ct();Jt.STRUCTURAL_CHARACTERS={"(":Tn.StructuralCharacters.OPEN_PARENTHESIS,")":Tn.StructuralCharacters.CLOSE_PARENTHESIS};Jt.OPERATORS={AND:Tn.Operators.AND,OR:Tn.Operators.OR,XOR:Tn.Operators.XOR,NOT:Tn.Operators.NOT};Jt.SEPARATORS=new Set([32,9,10,13].map(function(r){return String.fromCodePoint(r)}));Jt.QUOTED_IDENTIFIER_DELIMITER=String.fromCodePoint(34);Jt.COMMENT_DELIMITER=String.fromCodePoint(35);Jt.EOL=String.fromCodePoint(10);Jt.ESCAPE_CHARACTER=String.fromCodePoint(92)});var Xg=p(er=>{"use strict";var fd=er&&er.__assign||function(){return fd=Object.assign||function(r){for(var e,t=1,n=arguments.length;t{"use strict";pd.__esModule=!0;var bn=Ct(),Je=dd(),vn=Xg();pd.lex=function(r){for(var e=null,t=null,n=null,i=0;i{"use strict";var WO=tr&&tr.__spreadArrays||function(){for(var r=0,e=0,t=arguments.length;e{"use strict";var Rn=Vi&&Vi.__spreadArrays||function(){for(var r=0,e=0,t=arguments.length;e{"use strict";rr.__esModule=!0;var r_=Ct();rr.andUtil=function(r,e){return r&&e};rr.orUtil=function(r,e){return r||e};rr.xorUtil=function(r,e){return r!==e};rr.notUtil=function(r){return!r};rr.isIdentifier=function(r){var e=r.name,t=r.value;return e===r_.Tokens.IDENTIFIER&&typeof t=="string"};rr.isOperator=function(r){var e=r.name,t=r.value;return e===r_.Tokens.OPERATOR&&typeof t=="string"};rr.throwInvalidExpression=function(r){throw new TypeError("Invalid postfix expression: "+r)}});var n_=p(Td=>{"use strict";var Zi;Td.__esModule=!0;var gd=Ct(),_d=yd();Td.OPERATOR_MAP=(Zi={},Zi[gd.Operators.AND]=_d.andUtil,Zi[gd.Operators.OR]=_d.orUtil,Zi[gd.Operators.XOR]=_d.xorUtil,Zi)});var s_=p(Gr=>{"use strict";var bd=Gr&&Gr.__spreadArrays||function(){for(var r=0,e=0,t=arguments.length;e{"use strict";Xi.__esModule=!0;var a_=s_();Xi.getEvaluator=a_.getEvaluator;Xi.evaluate=a_.evaluate;var jO=md();Xi.parse=jO.parse});var ZO={};b_(ZO,{default:()=>Ua});module.exports=v_(ZO);var f_=require("obsidian");var ms=require("obsidian");var QO=new Error("timeout while waiting for mutex to become available"),JO=new Error("mutex already locked"),E_=new Error("request for lock canceled"),Hd=function(r,e,t,n){function i(s){return s instanceof t?s:new t(function(a){a(s)})}return new(t||(t=Promise))(function(s,a){function o(c){try{l(n.next(c))}catch(d){a(d)}}function u(c){try{l(n.throw(c))}catch(d){a(d)}}function l(c){c.done?s(c.value):i(c.value).then(o,u)}l((n=n.apply(r,e||[])).next())})},Ya=class{constructor(e,t=E_){if(this._maxConcurrency=e,this._cancelError=t,this._queue=[],this._waiters=[],e<=0)throw new Error("semaphore must be initialized to a positive value");this._value=e}acquire(){let e=this.isLocked(),t=new Promise((n,i)=>this._queue.push({resolve:n,reject:i}));return e||this._dispatch(),t}runExclusive(e){return Hd(this,void 0,void 0,function*(){let[t,n]=yield this.acquire();try{return yield e(t)}finally{n()}})}waitForUnlock(){return Hd(this,void 0,void 0,function*(){return this.isLocked()?new Promise(t=>this._waiters.push({resolve:t})):Promise.resolve()})}isLocked(){return this._value<=0}release(){if(this._maxConcurrency>1)throw new Error("this method is unavailable on semaphores with concurrency > 1; use the scoped release returned by acquire instead");if(this._currentReleaser){let e=this._currentReleaser;this._currentReleaser=void 0,e()}}cancel(){this._queue.forEach(e=>e.reject(this._cancelError)),this._queue=[]}_dispatch(){let e=this._queue.shift();if(!e)return;let t=!1;this._currentReleaser=()=>{t||(t=!0,this._value++,this._resolveWaiters(),this._dispatch())},e.resolve([this._value--,this._currentReleaser])}_resolveWaiters(){this._waiters.forEach(e=>e.resolve()),this._waiters=[]}},R_=function(r,e,t,n){function i(s){return s instanceof t?s:new t(function(a){a(s)})}return new(t||(t=Promise))(function(s,a){function o(c){try{l(n.next(c))}catch(d){a(d)}}function u(c){try{l(n.throw(c))}catch(d){a(d)}}function l(c){c.done?s(c.value):i(c.value).then(o,u)}l((n=n.apply(r,e||[])).next())})},os=class{constructor(e){this._semaphore=new Ya(1,e)}acquire(){return R_(this,void 0,void 0,function*(){let[,e]=yield this._semaphore.acquire();return e})}runExclusive(e){return this._semaphore.runExclusive(()=>e())}isLocked(){return this._semaphore.isLocked()}waitForUnlock(){return this._semaphore.waitForUnlock()}release(){this._semaphore.release()}cancel(){return this._semaphore.cancel()}};var Jf=require("obsidian");var zd=require("obsidian");var w_={globalFilter:"",removeGlobalFilter:!1,setDoneDate:!0,autoSuggestInEditor:!0,autoSuggestMinMatch:0,autoSuggestMaxItems:6},$a=Ye({},w_),ie=()=>Ye({},$a),Ut=r=>($a=Ye(Ye({},$a),r),ie());var ja,Ba,Kd=({metadataCache:r,vault:e})=>{ja=r,Ba=e},us=t=>ne(void 0,[t],function*({originalTask:r,newTasks:e}){if(Ba===void 0||ja===void 0){console.error("Tasks: cannot use File before initializing it.");return}Array.isArray(e)||(e=[e]),Vd({originalTask:r,newTasks:e,vault:Ba,metadataCache:ja,previousTries:0})}),Vd=s=>ne(void 0,[s],function*({originalTask:r,newTasks:e,vault:t,metadataCache:n,previousTries:i}){let a=()=>{if(i>10){console.error("Tasks: Too many retries. File update not possible ...");return}let g=Math.min(Math.pow(10,i),100);setTimeout(()=>{Vd({originalTask:r,newTasks:e,vault:t,metadataCache:n,previousTries:i+1})},g)},o=t.getAbstractFileByPath(r.path);if(!(o instanceof zd.TFile))return console.warn(`Tasks: No file found for task ${r.description}. Retrying ...`),a();if(o.extension!=="md"){console.error("Tasks: Only supporting files with the .md file extension.");return}let u=n.getFileCache(o);if(u==null||u===null)return console.warn(`Tasks: No file cache found for file ${o.path}. Retrying ...`),a();let l=u.listItems;if(l===void 0||l.length===0)return console.warn(`Tasks: No list items found in file cache of ${o.path}. Retrying ...`),a();let d=(yield t.read(o)).split(` -`),{globalFilter:f}=ie(),h,m=0;for(let g of l){if(g.position.start.lineg.toFileLineString()),...d.slice(h.position.start.line+1)];yield t.modify(o,y.join(` -`))});var Kr=class{constructor(){this.hideTaskCount=!1;this.hideBacklinks=!1;this.hidePriority=!1;this.hideStartDate=!1;this.hideScheduledDate=!1;this.hideDoneDate=!1;this.hideDueDate=!1;this.hideRecurrenceRule=!1;this.hideEditButton=!1;this.shortMode=!1}};var ls=["MO","TU","WE","TH","FR","SA","SU"],he=function(){function r(e,t){if(t===0)throw new Error("Can't create weekday with n == 0");this.weekday=e,this.n=t}return r.fromStr=function(e){return new r(ls.indexOf(e))},r.prototype.nth=function(e){return this.n===e?this:new r(this.weekday,e)},r.prototype.equals=function(e){return this.weekday===e.weekday&&this.n===e.n},r.prototype.toString=function(){var e=ls[this.weekday];return this.n&&(e=(this.n>0?"+":"")+String(this.n)+e),e},r.prototype.getJsWeekday=function(){return this.weekday===6?0:this.weekday+1},r}();var se=function(r){return r!=null},Ke=function(r){return typeof r=="number"},Ga=function(r){return ls.indexOf(r)>=0},Ne=Array.isArray,et=function(r,e){e===void 0&&(e=r),arguments.length===1&&(e=r,r=0);for(var t=[],n=r;n>0,n.length>e?String(n):(e=e-n.length,e>t.length&&(t+=j(t,e/t.length)),t.slice(0,e)+String(n))}var Xd=function(r,e,t){var n=r.split(e);return t?n.slice(0,t).concat([n.slice(t).join(e)]):n},Ue=function(r,e){var t=r%e;return t*e<0?t+e:t},cs=function(r,e){return{div:Math.floor(r/e),mod:Ue(r,e)}},Ve=function(r){return!se(r)||r.length===0},pe=function(r){return!Ve(r)},B=function(r,e){return pe(r)&&r.indexOf(e)!==-1};var ur;(function(r){r.MONTH_DAYS=[31,28,31,30,31,30,31,31,30,31,30,31],r.ONE_DAY=1e3*60*60*24,r.MAXYEAR=9999,r.ORDINAL_BASE=new Date(Date.UTC(1970,0,1)),r.PY_WEEKDAYS=[6,0,1,2,3,4,5],r.getYearDay=function(e){var t=new Date(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate());return Math.ceil((t.valueOf()-new Date(e.getUTCFullYear(),0,1).valueOf())/r.ONE_DAY)+1},r.isLeapYear=function(e){return e%4===0&&e%100!==0||e%400===0},r.isDate=function(e){return e instanceof Date},r.isValidDate=function(e){return r.isDate(e)&&!isNaN(e.getTime())},r.tzOffset=function(e){return e.getTimezoneOffset()*60*1e3},r.daysBetween=function(e,t){var n=e.getTime()-r.tzOffset(e),i=t.getTime()-r.tzOffset(t),s=n-i;return Math.round(s/r.ONE_DAY)},r.toOrdinal=function(e){return r.daysBetween(e,r.ORDINAL_BASE)},r.fromOrdinal=function(e){return new Date(r.ORDINAL_BASE.getTime()+e*r.ONE_DAY)},r.getMonthDays=function(e){var t=e.getUTCMonth();return t===1&&r.isLeapYear(e.getUTCFullYear())?29:r.MONTH_DAYS[t]},r.getWeekday=function(e){return r.PY_WEEKDAYS[e.getUTCDay()]},r.monthRange=function(e,t){var n=new Date(Date.UTC(e,t,1));return[r.getWeekday(n),r.getMonthDays(n)]},r.combine=function(e,t){return t=t||e,new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()))},r.clone=function(e){var t=new Date(e.getTime());return t},r.cloneDates=function(e){for(var t=[],n=0;nthis.maxDate;if(this.method==="between"){if(t)return!0;if(n)return!1}else if(this.method==="before"){if(n)return!1}else if(this.method==="after")return t?!0:(this.add(e),!1);return this.add(e)},r.prototype.add=function(e){return this._result.push(e),!0},r.prototype.getValue=function(){var e=this._result;switch(this.method){case"all":case"between":return e;case"before":case"after":default:return e.length?e[e.length-1]:null}},r.prototype.clone=function(){return new r(this.method,this.args)},r}(),qt=D_;var bf=as(Tf(),1),{__extends:Zr,__assign:$e,__rest:hA,__decorate:mA,__param:yA,__metadata:gA,__awaiter:_A,__generator:TA,__exportStar:bA,__createBinding:vA,__values:EA,__read:RA,__spread:wA,__spreadArrays:Pr,__await:DA,__asyncGenerator:MA,__asyncDelegator:PA,__asyncValues:OA,__makeTemplateObject:AA,__importStar:kA,__importDefault:NA,__classPrivateFieldGet:CA,__classPrivateFieldSet:SA}=bf.default;var M_=function(r){Zr(e,r);function e(t,n,i){var s=r.call(this,t,n)||this;return s.iterator=i,s}return e.prototype.add=function(t){return this.iterator(t,this._result.length)?(this._result.push(t),!0):!1},e}(qt),za=M_;var P_={dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],tokens:{SKIP:/^[ \r\n\t]+|^\.$/,number:/^[1-9][0-9]*/,numberAsText:/^(one|two|three)/i,every:/^every/i,"day(s)":/^days?/i,"weekday(s)":/^weekdays?/i,"week(s)":/^weeks?/i,"hour(s)":/^hours?/i,"minute(s)":/^minutes?/i,"month(s)":/^months?/i,"year(s)":/^years?/i,on:/^(on|in)/i,at:/^(at)/i,the:/^the/i,first:/^first/i,second:/^second/i,third:/^third/i,nth:/^([1-9][0-9]*)(\.|th|nd|rd|st)/i,last:/^last/i,for:/^for/i,"time(s)":/^times?/i,until:/^(un)?til/i,monday:/^mo(n(day)?)?/i,tuesday:/^tu(e(s(day)?)?)?/i,wednesday:/^we(d(n(esday)?)?)?/i,thursday:/^th(u(r(sday)?)?)?/i,friday:/^fr(i(day)?)?/i,saturday:/^sa(t(urday)?)?/i,sunday:/^su(n(day)?)?/i,january:/^jan(uary)?/i,february:/^feb(ruary)?/i,march:/^mar(ch)?/i,april:/^apr(il)?/i,may:/^may/i,june:/^june?/i,july:/^july?/i,august:/^aug(ust)?/i,september:/^sep(t(ember)?)?/i,october:/^oct(ober)?/i,november:/^nov(ember)?/i,december:/^dec(ember)?/i,comma:/^(,\s*|(and|or)\s*)+/i}},Or=P_;var vf=function(r,e){return r.indexOf(e)!==-1},O_=function(r){return r.toString()},A_=function(r,e,t){return e+" "+t+", "+r},k_=function(){function r(e,t,n,i){if(t===void 0&&(t=O_),n===void 0&&(n=Or),i===void 0&&(i=A_),this.text=[],this.language=n||Or,this.gettext=t,this.dateFormatter=i,this.rrule=e,this.options=e.options,this.origOptions=e.origOptions,this.origOptions.bymonthday){var s=[].concat(this.options.bymonthday),a=[].concat(this.options.bynmonthday);s.sort(function(c,d){return c-d}),a.sort(function(c,d){return d-c}),this.bymonthday=s.concat(a),this.bymonthday.length||(this.bymonthday=null)}if(se(this.origOptions.byweekday)){var o=Ne(this.origOptions.byweekday)?this.origOptions.byweekday:[this.origOptions.byweekday],u=String(o);this.byweekday={allWeeks:o.filter(function(c){return!c.n}),someWeeks:o.filter(function(c){return Boolean(c.n)}),isWeekdays:u.indexOf("MO")!==-1&&u.indexOf("TU")!==-1&&u.indexOf("WE")!==-1&&u.indexOf("TH")!==-1&&u.indexOf("FR")!==-1&&u.indexOf("SA")===-1&&u.indexOf("SU")===-1,isEveryDay:u.indexOf("MO")!==-1&&u.indexOf("TU")!==-1&&u.indexOf("WE")!==-1&&u.indexOf("TH")!==-1&&u.indexOf("FR")!==-1&&u.indexOf("SA")!==-1&&u.indexOf("SU")!==-1};var l=function(c,d){return c.weekday-d.weekday};this.byweekday.allWeeks.sort(l),this.byweekday.someWeeks.sort(l),this.byweekday.allWeeks.length||(this.byweekday.allWeeks=null),this.byweekday.someWeeks.length||(this.byweekday.someWeeks=null)}else this.byweekday=null}return r.isFullyConvertible=function(e){var t=!0;if(!(e.options.freq in r.IMPLEMENTED)||e.origOptions.until&&e.origOptions.count)return!1;for(var n in e.origOptions){if(vf(["dtstart","wkst","freq"],n))return!0;if(!vf(r.IMPLEMENTED[e.options.freq],n))return!1}return t},r.prototype.isFullyConvertible=function(){return r.isFullyConvertible(this.rrule)},r.prototype.toString=function(){var e=this.gettext;if(!(this.options.freq in r.IMPLEMENTED))return e("RRule error: Unable to fully convert this rrule to text");if(this.text=[e("every")],this[R.FREQUENCIES[this.options.freq]](),this.options.until){this.add(e("until"));var t=this.options.until;this.add(this.dateFormatter(t.getUTCFullYear(),this.language.monthNames[t.getUTCMonth()],t.getUTCDate()))}else this.options.count&&this.add(e("for")).add(this.options.count.toString()).add(this.plural(this.options.count)?e("times"):e("time"));return this.isFullyConvertible()||this.add(e("(~ approximate)")),this.text.join("")},r.prototype.HOURLY=function(){var e=this.gettext;this.options.interval!==1&&this.add(this.options.interval.toString()),this.add(this.plural(this.options.interval)?e("hours"):e("hour"))},r.prototype.MINUTELY=function(){var e=this.gettext;this.options.interval!==1&&this.add(this.options.interval.toString()),this.add(this.plural(this.options.interval)?e("minutes"):e("minute"))},r.prototype.DAILY=function(){var e=this.gettext;this.options.interval!==1&&this.add(this.options.interval.toString()),this.byweekday&&this.byweekday.isWeekdays?this.add(this.plural(this.options.interval)?e("weekdays"):e("weekday")):this.add(this.plural(this.options.interval)?e("days"):e("day")),this.origOptions.bymonth&&(this.add(e("in")),this._bymonth()),this.bymonthday?this._bymonthday():this.byweekday?this._byweekday():this.origOptions.byhour&&this._byhour()},r.prototype.WEEKLY=function(){var e=this.gettext;this.options.interval!==1&&this.add(this.options.interval.toString()).add(this.plural(this.options.interval)?e("weeks"):e("week")),this.byweekday&&this.byweekday.isWeekdays?this.options.interval===1?this.add(this.plural(this.options.interval)?e("weekdays"):e("weekday")):this.add(e("on")).add(e("weekdays")):this.byweekday&&this.byweekday.isEveryDay?this.add(this.plural(this.options.interval)?e("days"):e("day")):(this.options.interval===1&&this.add(e("week")),this.origOptions.bymonth&&(this.add(e("in")),this._bymonth()),this.bymonthday?this._bymonthday():this.byweekday&&this._byweekday())},r.prototype.MONTHLY=function(){var e=this.gettext;this.origOptions.bymonth?(this.options.interval!==1&&(this.add(this.options.interval.toString()).add(e("months")),this.plural(this.options.interval)&&this.add(e("in"))),this._bymonth()):(this.options.interval!==1&&this.add(this.options.interval.toString()),this.add(this.plural(this.options.interval)?e("months"):e("month"))),this.bymonthday?this._bymonthday():this.byweekday&&this.byweekday.isWeekdays?this.add(e("on")).add(e("weekdays")):this.byweekday&&this._byweekday()},r.prototype.YEARLY=function(){var e=this.gettext;this.origOptions.bymonth?(this.options.interval!==1&&(this.add(this.options.interval.toString()),this.add(e("years"))),this._bymonth()):(this.options.interval!==1&&this.add(this.options.interval.toString()),this.add(this.plural(this.options.interval)?e("years"):e("year"))),this.bymonthday?this._bymonthday():this.byweekday&&this._byweekday(),this.options.byyearday&&this.add(e("on the")).add(this.list(this.options.byyearday,this.nth,e("and"))).add(e("day")),this.options.byweekno&&this.add(e("in")).add(this.plural(this.options.byweekno.length)?e("weeks"):e("week")).add(this.list(this.options.byweekno,void 0,e("and")))},r.prototype._bymonthday=function(){var e=this.gettext;this.byweekday&&this.byweekday.allWeeks?this.add(e("on")).add(this.list(this.byweekday.allWeeks,this.weekdaytext,e("or"))).add(e("the")).add(this.list(this.bymonthday,this.nth,e("or"))):this.add(e("on the")).add(this.list(this.bymonthday,this.nth,e("and")))},r.prototype._byweekday=function(){var e=this.gettext;this.byweekday.allWeeks&&!this.byweekday.isWeekdays&&this.add(e("on")).add(this.list(this.byweekday.allWeeks,this.weekdaytext)),this.byweekday.someWeeks&&(this.byweekday.allWeeks&&this.add(e("and")),this.add(e("on the")).add(this.list(this.byweekday.someWeeks,this.weekdaytext,e("and"))))},r.prototype._byhour=function(){var e=this.gettext;this.add(e("at")).add(this.list(this.origOptions.byhour,void 0,e("and")))},r.prototype._bymonth=function(){this.add(this.list(this.options.bymonth,this.monthtext,this.gettext("and")))},r.prototype.nth=function(e){e=parseInt(e.toString(),10);var t,n,i=this.gettext;if(e===-1)return i("last");switch(n=Math.abs(e),n){case 1:case 21:case 31:t=n+i("st");break;case 2:case 22:t=n+i("nd");break;case 3:case 23:t=n+i("rd");break;default:t=n+i("th")}return e<0?t+" "+i("last"):t},r.prototype.monthtext=function(e){return this.language.monthNames[e-1]},r.prototype.weekdaytext=function(e){var t=Ke(e)?(e+1)%7:e.getJsWeekday();return(e.n?this.nth(e.n)+" ":"")+this.language.dayNames[t]},r.prototype.plural=function(e){return e%100!==1},r.prototype.add=function(e){return this.text.push(" "),this.text.push(e),this},r.prototype.list=function(e,t,n,i){i===void 0&&(i=","),Ne(e)||(e=[e]);var s=function(u,l,c){for(var d="",f=0;fe[0].length)&&(e=a,t=s)}if(e!=null&&(this.text=this.text.substr(e[0].length),this.text===""&&(this.done=!0)),e==null){this.done=!0,this.symbol=null,this.value=null;return}}while(t==="SKIP");return this.symbol=t,this.value=e,!0},r.prototype.accept=function(e){if(this.symbol===e){if(this.value){var t=this.value;return this.nextSymbol(),t}return this.nextSymbol(),!0}return!1},r.prototype.acceptNumber=function(){return this.accept("number")},r.prototype.expect=function(e){if(this.accept(e))return!0;throw new Error("expected "+e+" but found "+this.symbol)},r}();function An(r,e){e===void 0&&(e=Or);var t={},n=new N_(e.tokens);if(!n.start(r))return null;return i(),t;function i(){n.expect("every");var f=n.acceptNumber();if(f&&(t.interval=parseInt(f[0],10)),n.isDone())throw new Error("Unexpected end");switch(n.symbol){case"day(s)":t.freq=R.DAILY,n.nextSymbol()&&(a(),d());break;case"weekday(s)":t.freq=R.WEEKLY,t.byweekday=[R.MO,R.TU,R.WE,R.TH,R.FR],n.nextSymbol(),d();break;case"week(s)":t.freq=R.WEEKLY,n.nextSymbol()&&(s(),d());break;case"hour(s)":t.freq=R.HOURLY,n.nextSymbol()&&(s(),d());break;case"minute(s)":t.freq=R.MINUTELY,n.nextSymbol()&&(s(),d());break;case"month(s)":t.freq=R.MONTHLY,n.nextSymbol()&&(s(),d());break;case"year(s)":t.freq=R.YEARLY,n.nextSymbol()&&(s(),d());break;case"monday":case"tuesday":case"wednesday":case"thursday":case"friday":case"saturday":case"sunday":t.freq=R.WEEKLY;var h=n.symbol.substr(0,2).toUpperCase();if(t.byweekday=[R[h]],!n.nextSymbol())return;for(;n.accept("comma");){if(n.isDone())throw new Error("Unexpected end");var m=u();if(!m)throw new Error("Unexpected symbol "+n.symbol+", expected weekday");t.byweekday.push(R[m]),n.nextSymbol()}c(),d();break;case"january":case"february":case"march":case"april":case"may":case"june":case"july":case"august":case"september":case"october":case"november":case"december":if(t.freq=R.YEARLY,t.bymonth=[o()],!n.nextSymbol())return;for(;n.accept("comma");){if(n.isDone())throw new Error("Unexpected end");var y=o();if(!y)throw new Error("Unexpected symbol "+n.symbol+", expected month");t.bymonth.push(y),n.nextSymbol()}s(),d();break;default:throw new Error("Unknown symbol")}}function s(){var f=n.accept("on"),h=n.accept("the");if(!!(f||h))do{var m=l(),y=u(),g=o();if(m)y?(n.nextSymbol(),t.byweekday||(t.byweekday=[]),t.byweekday.push(R[y].nth(m))):(t.bymonthday||(t.bymonthday=[]),t.bymonthday.push(m),n.accept("day(s)"));else if(y)n.nextSymbol(),t.byweekday||(t.byweekday=[]),t.byweekday.push(R[y]);else if(n.symbol==="weekday(s)")n.nextSymbol(),t.byweekday||(t.byweekday=[R.MO,R.TU,R.WE,R.TH,R.FR]);else if(n.symbol==="week(s)"){n.nextSymbol();var O=n.acceptNumber();if(!O)throw new Error("Unexpected symbol "+n.symbol+", expected week number");for(t.byweekno=[parseInt(O[0],10)];n.accept("comma");){if(O=n.acceptNumber(),!O)throw new Error("Unexpected symbol "+n.symbol+"; expected monthday");t.byweekno.push(parseInt(O[0],10))}}else if(g)n.nextSymbol(),t.bymonth||(t.bymonth=[]),t.bymonth.push(g);else return}while(n.accept("comma")||n.accept("the")||n.accept("on"))}function a(){var f=n.accept("at");if(!!f)do{var h=n.acceptNumber();if(!h)throw new Error("Unexpected symbol "+n.symbol+", expected hour");for(t.byhour=[parseInt(h[0],10)];n.accept("comma");){if(h=n.acceptNumber(),!h)throw new Error("Unexpected symbol "+n.symbol+"; expected hour");t.byhour.push(parseInt(h[0],10))}}while(n.accept("comma")||n.accept("at"))}function o(){switch(n.symbol){case"january":return 1;case"february":return 2;case"march":return 3;case"april":return 4;case"may":return 5;case"june":return 6;case"july":return 7;case"august":return 8;case"september":return 9;case"october":return 10;case"november":return 11;case"december":return 12;default:return!1}}function u(){switch(n.symbol){case"monday":case"tuesday":case"wednesday":case"thursday":case"friday":case"saturday":case"sunday":return n.symbol.substr(0,2).toUpperCase();default:return!1}}function l(){switch(n.symbol){case"last":return n.nextSymbol(),-1;case"first":return n.nextSymbol(),1;case"second":return n.nextSymbol(),n.accept("last")?-2:2;case"third":return n.nextSymbol(),n.accept("last")?-3:3;case"nth":var f=parseInt(n.value[1],10);if(f<-366||f>366)throw new Error("Nth out of range: "+f);return n.nextSymbol(),n.accept("last")?-f:f;default:return!1}}function c(){n.accept("on"),n.accept("the");var f=l();if(!!f)for(t.bymonthday=[f],n.nextSymbol();n.accept("comma");){if(f=l(),!f)throw new Error("Unexpected symbol "+n.symbol+"; expected monthday");t.bymonthday.push(f),n.nextSymbol()}}function d(){if(n.symbol==="until"){var f=Date.parse(n.text);if(!f)throw new Error("Cannot parse until date:"+n.text);t.until=new Date(f)}else n.accept("for")&&(t.count=parseInt(n.value[0],10),n.expect("number"))}}var F;(function(r){r[r.YEARLY=0]="YEARLY",r[r.MONTHLY=1]="MONTHLY",r[r.WEEKLY=2]="WEEKLY",r[r.DAILY=3]="DAILY",r[r.HOURLY=4]="HOURLY",r[r.MINUTELY=5]="MINUTELY",r[r.SECONDLY=6]="SECONDLY"})(F||(F={}));function kn(r){return r12){var n=Math.floor(this.month/12),i=Ue(this.month,12);this.month=i,this.year+=n,this.month===0&&(this.month=12,--this.year)}},e.prototype.addWeekly=function(t,n){n>this.getWeekday()?this.day+=-(this.getWeekday()+1+(6-n))+t*7:this.day+=-(this.getWeekday()-n)+t*7,this.fixDay()},e.prototype.addDaily=function(t){this.day+=t,this.fixDay()},e.prototype.addHours=function(t,n,i){for(n&&(this.hour+=Math.floor((23-this.hour)/t)*t);;){this.hour+=t;var s=cs(this.hour,24),a=s.div,o=s.mod;if(a&&(this.hour=o,this.addDaily(a)),Ve(i)||B(i,this.hour))break}},e.prototype.addMinutes=function(t,n,i,s){for(n&&(this.minute+=Math.floor((1439-(this.hour*60+this.minute))/t)*t);;){this.minute+=t;var a=cs(this.minute,60),o=a.div,u=a.mod;if(o&&(this.minute=u,this.addHours(o,!1,i)),(Ve(i)||B(i,this.hour))&&(Ve(s)||B(s,this.minute)))break}},e.prototype.addSeconds=function(t,n,i,s,a){for(n&&(this.second+=Math.floor((86399-(this.hour*3600+this.minute*60+this.second))/t)*t);;){this.second+=t;var o=cs(this.second,60),u=o.div,l=o.mod;if(u&&(this.second=l,this.addMinutes(u,!1,i,s)),(Ve(i)||B(i,this.hour))&&(Ve(s)||B(s,this.minute))&&(Ve(a)||B(a,this.second)))break}},e.prototype.fixDay=function(){if(!(this.day<=28)){var t=ur.monthRange(this.year,this.month-1)[1];if(!(this.day<=t))for(;this.day>t;){if(this.day-=t,++this.month,this.month===13&&(this.month=1,++this.year,this.year>ur.MAXYEAR))return;t=ur.monthRange(this.year,this.month-1)[1]}}},e.prototype.add=function(t,n){var i=t.freq,s=t.interval,a=t.wkst,o=t.byhour,u=t.byminute,l=t.bysecond;switch(i){case F.YEARLY:return this.addYears(s);case F.MONTHLY:return this.addMonths(s);case F.WEEKLY:return this.addWeekly(s,a);case F.DAILY:return this.addDaily(s);case F.HOURLY:return this.addHours(s,n,o);case F.MINUTELY:return this.addMinutes(s,n,o,u);case F.SECONDLY:return this.addSeconds(s,n,o,u,l)}},e}(Qr);function Ka(r){for(var e=[],t=Object.keys(r),n=0,i=t;n=-366&&n<=366))throw new Error("bysetpos must be between 1 and 366, or between -366 and -1")}}if(!(Boolean(e.byweekno)||pe(e.byweekno)||pe(e.byyearday)||Boolean(e.bymonthday)||pe(e.bymonthday)||se(e.byweekday)||se(e.byeaster)))switch(e.freq){case R.YEARLY:e.bymonth||(e.bymonth=e.dtstart.getUTCMonth()+1),e.bymonthday=e.dtstart.getUTCDate();break;case R.MONTHLY:e.bymonthday=e.dtstart.getUTCDate();break;case R.WEEKLY:e.byweekday=[A.getWeekday(e.dtstart)];break}if(se(e.bymonth)&&!Ne(e.bymonth)&&(e.bymonth=[e.bymonth]),se(e.byyearday)&&!Ne(e.byyearday)&&Ke(e.byyearday)&&(e.byyearday=[e.byyearday]),!se(e.bymonthday))e.bymonthday=[],e.bynmonthday=[];else if(Ne(e.bymonthday)){for(var i=[],s=[],t=0;t0?i.push(n):n<0&&s.push(n)}e.bymonthday=i,e.bynmonthday=s}else e.bymonthday<0?(e.bynmonthday=[e.bymonthday],e.bymonthday=[]):(e.bynmonthday=[],e.bymonthday=[e.bymonthday]);if(se(e.byweekno)&&!Ne(e.byweekno)&&(e.byweekno=[e.byweekno]),!se(e.byweekday))e.bynweekday=null;else if(Ke(e.byweekday))e.byweekday=[e.byweekday],e.bynweekday=null;else if(Ga(e.byweekday))e.byweekday=[he.fromStr(e.byweekday).weekday],e.bynweekday=null;else if(e.byweekday instanceof he)!e.byweekday.n||e.freq>R.MONTHLY?(e.byweekday=[e.byweekday.weekday],e.bynweekday=null):(e.bynweekday=[[e.byweekday.weekday,e.byweekday.n]],e.byweekday=null);else{for(var a=[],o=[],t=0;tR.MONTHLY?a.push(u.weekday):o.push([u.weekday,u.n])}e.byweekday=pe(a)?a:null,e.bynweekday=pe(o)?o:null}return se(e.byhour)?Ke(e.byhour)&&(e.byhour=[e.byhour]):e.byhour=e.freq=4?(c=0,l=o.yearlen+Ue(a-e.wkst,7)):l=n-c;for(var d=Math.floor(l/7),f=Ue(l,7),h=Math.floor(d+f/4),m=0;m0&&y<=h){var g=void 0;y>1?(g=c+(y-1)*7,c!==u&&(g-=7-u)):g=c;for(var O=0;O<7&&(o.wnomask[g]=1,g++,o.wdaymask[g]!==e.wkst);O++);}}if(B(e.byweekno,1)){var g=c+h*7;if(c!==u&&(g-=7-u),g=4?(z=0,le=te+Ue(N-e.wkst,7)):le=n-c,S=Math.floor(52+Ue(le,7)/4)}if(B(e.byweekno,S))for(var g=0;gs)return Ft(r);if(S>=t){var N=Gf(S,e);if(!r.accept(N)||o&&(--o,!o))return Ft(r)}}else for(var O=h;Os)return Ft(r);if(S>=t){var N=Gf(S,e);if(!r.accept(N)||o&&(--o,!o))return Ft(r)}}}if(e.interval===0||(u.add(e,y),u.year>A.MAXYEAR))return Ft(r);kn(n)||(c=l.gettimeset(n)(u.hour,u.minute,u.second,0)),l.rebuild(u.year,u.month)}}function j_(r,e,t){var n=t.bymonth,i=t.byweekno,s=t.byweekday,a=t.byeaster,o=t.bymonthday,u=t.bynmonthday,l=t.byyearday;return pe(n)&&!B(n,r.mmask[e])||pe(i)&&!r.wnomask[e]||pe(s)&&!B(s,r.wdaymask[e])||pe(r.nwdaymask)&&!r.nwdaymask[e]||a!==null&&!B(r.eastermask,e)||(pe(o)||pe(u))&&!B(o,r.mdaymask[e])&&!B(u,r.nmdaymask[e])||pe(l)&&(e=r.yearlen&&!B(l,e+1-r.yearlen)&&!B(l,-r.nextyearlen+e-r.yearlen))}function Gf(r,e){return new Ar(r,e.tzid).rezonedDate()}function Ft(r){return r.getValue()}function B_(r,e,t,n,i){for(var s=!1,a=e;a=R.HOURLY&&pe(i)&&!B(i,e.hour)||n>=R.MINUTELY&&pe(s)&&!B(s,e.minute)||n>=R.SECONDLY&&pe(a)&&!B(a,e.second)?[]:r.gettimeset(n)(e.hour,e.minute,e.second,e.millisecond)}var tt={MO:new he(0),TU:new he(1),WE:new he(2),TH:new he(3),FR:new he(4),SA:new he(5),SU:new he(6)},Nn={freq:F.YEARLY,dtstart:null,interval:1,wkst:tt.MO,count:null,until:null,tzid:null,bysetpos:null,bymonth:null,bymonthday:null,bynmonthday:null,byyearday:null,byweekno:null,byweekday:null,bynweekday:null,byhour:null,byminute:null,bysecond:null,byeaster:null},Of=Object.keys(Nn),R=function(){function r(e,t){e===void 0&&(e={}),t===void 0&&(t=!1),this._cache=t?null:new Nf,this.origOptions=Ka(e);var n=Mf(e).parsedOptions;this.options=n}return r.parseText=function(e,t){return An(e,t)},r.fromText=function(e,t){return Ef(e,t)},r.fromString=function(e){return new r(r.parseString(e)||void 0)},r.prototype._iter=function(e){return ps(e,this.options)},r.prototype._cacheGet=function(e,t){return this._cache?this._cache._cacheGet(e,t):!1},r.prototype._cacheAdd=function(e,t,n){if(!!this._cache)return this._cache._cacheAdd(e,t,n)},r.prototype.all=function(e){if(e)return this._iter(new za("all",{},e));var t=this._cacheGet("all");return t===!1&&(t=this._iter(new qt("all",{})),this._cacheAdd("all",t)),t},r.prototype.between=function(e,t,n,i){if(n===void 0&&(n=!1),!A.isValidDate(e)||!A.isValidDate(t))throw new Error("Invalid date passed in to RRule.between");var s={before:t,after:e,inc:n};if(i)return this._iter(new za("between",s,i));var a=this._cacheGet("between",s);return a===!1&&(a=this._iter(new qt("between",s)),this._cacheAdd("between",a,s)),a},r.prototype.before=function(e,t){if(t===void 0&&(t=!1),!A.isValidDate(e))throw new Error("Invalid date passed in to RRule.before");var n={dt:e,inc:t},i=this._cacheGet("before",n);return i===!1&&(i=this._iter(new qt("before",n)),this._cacheAdd("before",i,n)),i},r.prototype.after=function(e,t){if(t===void 0&&(t=!1),!A.isValidDate(e))throw new Error("Invalid date passed in to RRule.after");var n={dt:e,inc:t},i=this._cacheGet("after",n);return i===!1&&(i=this._iter(new qt("after",n)),this._cacheAdd("after",i,n)),i},r.prototype.count=function(){return this.all().length},r.prototype.toString=function(){return xn(this.origOptions)},r.prototype.toText=function(e,t,n){return Rf(this,e,t,n)},r.prototype.isFullyConvertibleToText=function(){return wf(this)},r.prototype.clone=function(){return new r(this.origOptions)},r.FREQUENCIES=["YEARLY","MONTHLY","WEEKLY","DAILY","HOURLY","MINUTELY","SECONDLY"],r.YEARLY=F.YEARLY,r.MONTHLY=F.MONTHLY,r.WEEKLY=F.WEEKLY,r.DAILY=F.DAILY,r.HOURLY=F.HOURLY,r.MINUTELY=F.MINUTELY,r.SECONDLY=F.SECONDLY,r.MO=tt.MO,r.TU=tt.TU,r.WE=tt.WE,r.TH=tt.TH,r.FR=tt.FR,r.SA=tt.SA,r.SU=tt.SU,r.parseString=Sn,r.optionsToString=xn,r}();function Hf(r,e,t,n,i,s){var a={},o=r.accept;function u(f,h){t.forEach(function(m){m.between(f,h,!0).forEach(function(y){a[Number(y)]=!0})})}i.forEach(function(f){var h=new Ar(f,s).rezonedDate();a[Number(h)]=!0}),r.accept=function(f){var h=Number(f);return isNaN(h)?o.call(this,f):!a[h]&&(u(new Date(h-1),new Date(h+1)),!a[h])?(a[h]=!0,o.call(this,f)):!0},r.method==="between"&&(u(r.args.after,r.args.before),r.accept=function(f){var h=Number(f);return a[h]?!0:(a[h]=!0,o.call(this,f))});for(var l=0;l1||i.length||s.length||a.length){var c=new Xa(l);return c.dtstart(o),c.tzid(u||void 0),n.forEach(function(f){c.rrule(new R(Za(f,o,u),l))}),i.forEach(function(f){c.rdate(f)}),s.forEach(function(f){c.exrule(new R(Za(f,o,u),l))}),a.forEach(function(f){c.exdate(f)}),e.compatible&&e.dtstart&&c.rdate(o),c}var d=n[0]||{};return new R(Za(d,d.dtstart||e.dtstart||o,d.tzid||e.tzid||u),l)}function hs(r,e){return e===void 0&&(e={}),z_(r,K_(e))}function Za(r,e,t){return $e($e({},r),{dtstart:e,tzid:t})}function K_(r){var e=[],t=Object.keys(r),n=Object.keys(zf);if(t.forEach(function(i){B(n,i)||e.push(i)}),e.length)throw new Error("Invalid options: "+e.join(", "));return $e($e({},zf),r)}function V_(r){if(r.indexOf(":")===-1)return{name:"RRULE",value:r};var e=Xd(r,":",1),t=e[0],n=e[1];return{name:t,value:n}}function Z_(r){var e=V_(r),t=e.name,n=e.value,i=t.split(";");if(!i)throw new Error("empty property name");return{name:i[0].toUpperCase(),parms:i.slice(1),value:n}}function X_(r,e){if(e===void 0&&(e=!1),r=r&&r.trim(),!r)throw new Error("Invalid empty string");if(!e)return r.split(/\s/);for(var t=r.split(` -`),n=0;n0&&i[0]===" "?(t[n-1]+=i.slice(1),t.splice(n,1)):n+=1:t.splice(n,1)}return t}function Q_(r){r.forEach(function(e){if(!/(VALUE=DATE(-TIME)?)|(TZID=)/.test(e))throw new Error("unsupported RDATE/EXDATE parm: "+e)})}function Kf(r,e){return Q_(e),r.split(",").map(function(t){return A.untilStringToDate(t)})}function Vf(r){var e=this;return function(t){if(t!==void 0&&(e["_"+r]=t),e["_"+r]!==void 0)return e["_"+r];for(var n=0;ne in r?On(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,$e=(r,e)=>{for(var t in e||(e={}))Gd.call(e,t)&&Bd(r,t,e[t]);if(jd)for(var t of jd(e))E_.call(e,t)&&Bd(r,t,e[t]);return r},Ut=(r,e)=>g_(r,T_(e));var h=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),R_=(r,e)=>{for(var t in e)On(r,t,{get:e[t],enumerable:!0})},Hd=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of b_(e))!Gd.call(r,i)&&i!==t&&On(r,i,{get:()=>e[i],enumerable:!(n=__(e,i))||n.enumerable});return r};var as=(r,e,t)=>(t=r!=null?y_(v_(r)):{},Hd(e||!r||!r.__esModule?On(t,"default",{value:r,enumerable:!0}):t,r)),w_=r=>Hd(On({},"__esModule",{value:!0}),r);var se=(r,e,t)=>new Promise((n,i)=>{var s=u=>{try{o(t.next(u))}catch(l){i(l)}},a=u=>{try{o(t.throw(u))}catch(l){i(l)}},o=u=>u.done?n(u.value):Promise.resolve(u.value).then(s,a);o((t=t.apply(r,e)).next())});var vf=h((yA,ps)=>{var Jd,ef,tf,rf,nf,sf,af,of,uf,ds,za,lf,cf,df,Vr,ff,pf,hf,mf,yf,gf,_f,Tf,bf,fs;(function(r){var e=typeof global=="object"?global:typeof self=="object"?self:typeof this=="object"?this:{};typeof define=="function"&&define.amd?define("tslib",["exports"],function(n){r(t(e,t(n)))}):typeof ps=="object"&&typeof ps.exports=="object"?r(t(e,t(ps.exports))):r(t(e));function t(n,i){return n!==e&&(typeof Object.create=="function"?Object.defineProperty(n,"__esModule",{value:!0}):n.__esModule=!0),function(s,a){return n[s]=i?i(s,a):a}}})(function(r){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,i){n.__proto__=i}||function(n,i){for(var s in i)Object.prototype.hasOwnProperty.call(i,s)&&(n[s]=i[s])};Jd=function(n,i){if(typeof i!="function"&&i!==null)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");e(n,i);function s(){this.constructor=n}n.prototype=i===null?Object.create(i):(s.prototype=i.prototype,new s)},ef=Object.assign||function(n){for(var i,s=1,a=arguments.length;s=0;c--)(l=n[c])&&(u=(o<3?l(u):o>3?l(i,s,u):l(i,s))||u);return o>3&&u&&Object.defineProperty(i,s,u),u},nf=function(n,i){return function(s,a){i(s,a,n)}},sf=function(n,i){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,i)},af=function(n,i,s,a){function o(u){return u instanceof s?u:new s(function(l){l(u)})}return new(s||(s=Promise))(function(u,l){function c(p){try{f(a.next(p))}catch(y){l(y)}}function d(p){try{f(a.throw(p))}catch(y){l(y)}}function f(p){p.done?u(p.value):o(p.value).then(c,d)}f((a=a.apply(n,i||[])).next())})},of=function(n,i){var s={label:0,sent:function(){if(u[0]&1)throw u[1];return u[1]},trys:[],ops:[]},a,o,u,l;return l={next:c(0),throw:c(1),return:c(2)},typeof Symbol=="function"&&(l[Symbol.iterator]=function(){return this}),l;function c(f){return function(p){return d([f,p])}}function d(f){if(a)throw new TypeError("Generator is already executing.");for(;s;)try{if(a=1,o&&(u=f[0]&2?o.return:f[0]?o.throw||((u=o.return)&&u.call(o),0):o.next)&&!(u=u.call(o,f[1])).done)return u;switch(o=0,u&&(f=[f[0]&2,u.value]),f[0]){case 0:case 1:u=f;break;case 4:return s.label++,{value:f[1],done:!1};case 5:s.label++,o=f[1],f=[0];continue;case 7:f=s.ops.pop(),s.trys.pop();continue;default:if(u=s.trys,!(u=u.length>0&&u[u.length-1])&&(f[0]===6||f[0]===2)){s=0;continue}if(f[0]===3&&(!u||f[1]>u[0]&&f[1]=n.length&&(n=void 0),{value:n&&n[a++],done:!n}}};throw new TypeError(i?"Object is not iterable.":"Symbol.iterator is not defined.")},za=function(n,i){var s=typeof Symbol=="function"&&n[Symbol.iterator];if(!s)return n;var a=s.call(n),o,u=[],l;try{for(;(i===void 0||i-- >0)&&!(o=a.next()).done;)u.push(o.value)}catch(c){l={error:c}}finally{try{o&&!o.done&&(s=a.return)&&s.call(a)}finally{if(l)throw l.error}}return u},lf=function(){for(var n=[],i=0;i1||c(m,g)})})}function c(m,g){try{d(a[m](g))}catch(A){y(u[0][3],A)}}function d(m){m.value instanceof Vr?Promise.resolve(m.value.v).then(f,p):y(u[0][2],m)}function f(m){c("next",m)}function p(m){c("throw",m)}function y(m,g){m(g),u.shift(),u.length&&c(u[0][0],u[0][1])}},pf=function(n){var i,s;return i={},a("next"),a("throw",function(o){throw o}),a("return"),i[Symbol.iterator]=function(){return this},i;function a(o,u){i[o]=n[o]?function(l){return(s=!s)?{value:Vr(n[o](l)),done:o==="return"}:u?u(l):l}:u}},hf=function(n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var i=n[Symbol.asyncIterator],s;return i?i.call(n):(n=typeof ds=="function"?ds(n):n[Symbol.iterator](),s={},a("next"),a("throw"),a("return"),s[Symbol.asyncIterator]=function(){return this},s);function a(u){s[u]=n[u]&&function(l){return new Promise(function(c,d){l=n[u](l),o(c,d,l.done,l.value)})}}function o(u,l,c,d){Promise.resolve(d).then(function(f){u({value:f,done:c})},l)}},mf=function(n,i){return Object.defineProperty?Object.defineProperty(n,"raw",{value:i}):n.raw=i,n};var t=Object.create?function(n,i){Object.defineProperty(n,"default",{enumerable:!0,value:i})}:function(n,i){n.default=i};yf=function(n){if(n&&n.__esModule)return n;var i={};if(n!=null)for(var s in n)s!=="default"&&Object.prototype.hasOwnProperty.call(n,s)&&fs(i,n,s);return t(i,n),i},gf=function(n){return n&&n.__esModule?n:{default:n}},_f=function(n,i,s,a){if(s==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof i=="function"?n!==i||!a:!i.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return s==="m"?a:s==="a"?a.call(n):a?a.value:i.get(n)},Tf=function(n,i,s,a,o){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!o)throw new TypeError("Private accessor was defined without a setter");if(typeof i=="function"?n!==i||!o:!i.has(n))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?o.call(n,s):o?o.value=s:i.set(n,s),s},bf=function(n,i){if(i===null||typeof i!="object"&&typeof i!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof n=="function"?i===n:n.has(i)},r("__extends",Jd),r("__assign",ef),r("__rest",tf),r("__decorate",rf),r("__param",nf),r("__metadata",sf),r("__awaiter",af),r("__generator",of),r("__exportStar",uf),r("__createBinding",fs),r("__values",ds),r("__read",za),r("__spread",lf),r("__spreadArrays",cf),r("__spreadArray",df),r("__await",Vr),r("__asyncGenerator",ff),r("__asyncDelegator",pf),r("__asyncValues",hf),r("__makeTemplateObject",mf),r("__importStar",yf),r("__importDefault",gf),r("__classPrivateFieldGet",_f),r("__classPrivateFieldSet",Tf),r("__classPrivateFieldIn",bf)})});var Q=h(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.matchAnyPattern=hr.extractTerms=hr.repeatedTimeunitPattern=void 0;function mT(r,e){let t=e.replace(/\((?!\?)/g,"(?:");return`${r}${t}\\s{0,5}(?:,?\\s{0,5}${t}){0,10}`}hr.repeatedTimeunitPattern=mT;function mp(r){let e;return r instanceof Array?e=[...r]:r instanceof Map?e=Array.from(r.keys()):e=Object.keys(r),e}hr.extractTerms=mp;function yT(r){return`(?:${mp(r).sort((t,n)=>n.length-t.length).join("|").replace(/\./g,"\\.")})`}hr.matchAnyPattern=yT});var K=h((ao,oo)=>{(function(r,e){typeof ao=="object"&&typeof oo!="undefined"?oo.exports=e():typeof define=="function"&&define.amd?define(e):(r=typeof globalThis!="undefined"?globalThis:r||self).dayjs=e()})(ao,function(){"use strict";var r=1e3,e=6e4,t=36e5,n="millisecond",i="second",s="minute",a="hour",o="day",u="week",l="month",c="quarter",d="year",f="date",p="Invalid Date",y=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,m=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,g={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},A=function(M,v,_){var P=String(M);return!P||P.length>=v?M:""+Array(v+1-P.length).join(_)+M},C={s:A,z:function(M){var v=-M.utcOffset(),_=Math.abs(v),P=Math.floor(_/60),E=_%60;return(v<=0?"+":"-")+A(P,2,"0")+":"+A(E,2,"0")},m:function M(v,_){if(v.date()<_.date())return-M(_,v);var P=12*(_.year()-v.year())+(_.month()-v.month()),E=v.clone().add(P,l),S=_-E<0,O=v.clone().add(P+(S?-1:1),l);return+(-(P+(_-E)/(S?E-O:O-E))||0)},a:function(M){return M<0?Math.ceil(M)||0:Math.floor(M)},p:function(M){return{M:l,y:d,w:u,d:o,D:f,h:a,m:s,s:i,ms:n,Q:c}[M]||String(M||"").toLowerCase().replace(/s$/,"")},u:function(M){return M===void 0}},N="en",z={};z[N]=g;var re=function(M){return M instanceof ye},de=function(M,v,_){var P;if(!M)return N;if(typeof M=="string")z[M]&&(P=M),v&&(z[M]=v,P=M);else{var E=M.name;z[E]=M,P=E}return!_&&P&&(N=P),P||!_&&N},J=function(M,v){if(re(M))return M.clone();var _=typeof v=="object"?v:{};return _.date=M,_.args=arguments,new ye(_)},D=C;D.l=de,D.i=re,D.w=function(M,v){return J(M,{locale:v.$L,utc:v.$u,x:v.$x,$offset:v.$offset})};var ye=function(){function M(_){this.$L=de(_.locale,null,!0),this.parse(_)}var v=M.prototype;return v.parse=function(_){this.$d=function(P){var E=P.date,S=P.utc;if(E===null)return new Date(NaN);if(D.u(E))return new Date;if(E instanceof Date)return new Date(E);if(typeof E=="string"&&!/Z$/i.test(E)){var O=E.match(y);if(O){var q=O[2]-1||0,ee=(O[7]||"0").substring(0,3);return S?new Date(Date.UTC(O[1],q,O[3]||1,O[4]||0,O[5]||0,O[6]||0,ee)):new Date(O[1],q,O[3]||1,O[4]||0,O[5]||0,O[6]||0,ee)}}return new Date(E)}(_),this.$x=_.x||{},this.init()},v.init=function(){var _=this.$d;this.$y=_.getFullYear(),this.$M=_.getMonth(),this.$D=_.getDate(),this.$W=_.getDay(),this.$H=_.getHours(),this.$m=_.getMinutes(),this.$s=_.getSeconds(),this.$ms=_.getMilliseconds()},v.$utils=function(){return D},v.isValid=function(){return this.$d.toString()!==p},v.isSame=function(_,P){var E=J(_);return this.startOf(P)<=E&&E<=this.endOf(P)},v.isAfter=function(_,P){return J(_){"use strict";var gT=mr&&mr.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(mr,"__esModule",{value:!0});mr.findYearClosestToRef=mr.findMostLikelyADYear=void 0;var _T=gT(K());function TT(r){return r<100&&(r>50?r=r+1900:r=r+2e3),r}mr.findMostLikelyADYear=TT;function bT(r,e,t){let n=_T.default(r),i=n;i=i.month(t-1),i=i.date(e),i=i.year(n.year());let s=i.add(1,"y"),a=i.add(-1,"y");return Math.abs(s.diff(n)){"use strict";Object.defineProperty(U,"__esModule",{value:!0});U.parseTimeUnits=U.TIME_UNITS_PATTERN=U.parseYear=U.YEAR_PATTERN=U.parseOrdinalNumberPattern=U.ORDINAL_NUMBER_PATTERN=U.parseNumberPattern=U.NUMBER_PATTERN=U.TIME_UNIT_DICTIONARY=U.ORDINAL_WORD_DICTIONARY=U.INTEGER_WORD_DICTIONARY=U.MONTH_DICTIONARY=U.FULL_MONTH_NAME_DICTIONARY=U.WEEKDAY_DICTIONARY=void 0;var Es=Q(),vT=xe();U.WEEKDAY_DICTIONARY={sunday:0,sun:0,"sun.":0,monday:1,mon:1,"mon.":1,tuesday:2,tue:2,"tue.":2,wednesday:3,wed:3,"wed.":3,thursday:4,thurs:4,"thurs.":4,thur:4,"thur.":4,thu:4,"thu.":4,friday:5,fri:5,"fri.":5,saturday:6,sat:6,"sat.":6};U.FULL_MONTH_NAME_DICTIONARY={january:1,february:2,march:3,april:4,may:5,june:6,july:7,august:8,september:9,october:10,november:11,december:12};U.MONTH_DICTIONARY=Object.assign(Object.assign({},U.FULL_MONTH_NAME_DICTIONARY),{jan:1,"jan.":1,feb:2,"feb.":2,mar:3,"mar.":3,apr:4,"apr.":4,jun:6,"jun.":6,jul:7,"jul.":7,aug:8,"aug.":8,sep:9,"sep.":9,sept:9,"sept.":9,oct:10,"oct.":10,nov:11,"nov.":11,dec:12,"dec.":12});U.INTEGER_WORD_DICTIONARY={one:1,two:2,three:3,four:4,five:5,six:6,seven:7,eight:8,nine:9,ten:10,eleven:11,twelve:12};U.ORDINAL_WORD_DICTIONARY={first:1,second:2,third:3,fourth:4,fifth:5,sixth:6,seventh:7,eighth:8,ninth:9,tenth:10,eleventh:11,twelfth:12,thirteenth:13,fourteenth:14,fifteenth:15,sixteenth:16,seventeenth:17,eighteenth:18,nineteenth:19,twentieth:20,"twenty first":21,"twenty-first":21,"twenty second":22,"twenty-second":22,"twenty third":23,"twenty-third":23,"twenty fourth":24,"twenty-fourth":24,"twenty fifth":25,"twenty-fifth":25,"twenty sixth":26,"twenty-sixth":26,"twenty seventh":27,"twenty-seventh":27,"twenty eighth":28,"twenty-eighth":28,"twenty ninth":29,"twenty-ninth":29,thirtieth:30,"thirty first":31,"thirty-first":31};U.TIME_UNIT_DICTIONARY={sec:"second",second:"second",seconds:"second",min:"minute",mins:"minute",minute:"minute",minutes:"minute",h:"hour",hr:"hour",hrs:"hour",hour:"hour",hours:"hour",day:"d",days:"d",week:"week",weeks:"week",month:"month",months:"month",qtr:"quarter",quarter:"quarter",quarters:"quarter",y:"year",yr:"year",year:"year",years:"year"};U.NUMBER_PATTERN=`(?:${Es.matchAnyPattern(U.INTEGER_WORD_DICTIONARY)}|[0-9]+|[0-9]+\\.[0-9]+|half(?:\\s{0,2}an?)?|an?\\b(?:\\s{0,2}few)?|few|several|a?\\s{0,2}couple\\s{0,2}(?:of)?)`;function gp(r){let e=r.toLowerCase();return U.INTEGER_WORD_DICTIONARY[e]!==void 0?U.INTEGER_WORD_DICTIONARY[e]:e==="a"||e==="an"?1:e.match(/few/)?3:e.match(/half/)?.5:e.match(/couple/)?2:e.match(/several/)?7:parseFloat(e)}U.parseNumberPattern=gp;U.ORDINAL_NUMBER_PATTERN=`(?:${Es.matchAnyPattern(U.ORDINAL_WORD_DICTIONARY)}|[0-9]{1,2}(?:st|nd|rd|th)?)`;function ET(r){let e=r.toLowerCase();return U.ORDINAL_WORD_DICTIONARY[e]!==void 0?U.ORDINAL_WORD_DICTIONARY[e]:(e=e.replace(/(?:st|nd|rd|th)$/i,""),parseInt(e))}U.parseOrdinalNumberPattern=ET;U.YEAR_PATTERN="(?:[1-9][0-9]{0,3}\\s{0,2}(?:BE|AD|BC|BCE|CE)|[1-2][0-9]{3}|[5-9][0-9])";function RT(r){if(/BE/i.test(r))return r=r.replace(/BE/i,""),parseInt(r)-543;if(/BCE?/i.test(r))return r=r.replace(/BCE?/i,""),-parseInt(r);if(/(AD|CE)/i.test(r))return r=r.replace(/(AD|CE)/i,""),parseInt(r);let e=parseInt(r);return vT.findMostLikelyADYear(e)}U.parseYear=RT;var _p=`(${U.NUMBER_PATTERN})\\s{0,3}(${Es.matchAnyPattern(U.TIME_UNIT_DICTIONARY)})`,yp=new RegExp(_p,"i");U.TIME_UNITS_PATTERN=Es.repeatedTimeunitPattern("(?:(?:about|around)\\s{0,3})?",_p);function wT(r){let e={},t=r,n=yp.exec(t);for(;n;)DT(e,n),t=t.substring(n[0].length).trim(),n=yp.exec(t);return e}U.parseTimeUnits=wT;function DT(r,e){let t=gp(e[1]),n=U.TIME_UNIT_DICTIONARY[e[2].toLowerCase()];r[n]=t}});var Tp=h((uo,lo)=>{(function(r,e){typeof uo=="object"&&typeof lo!="undefined"?lo.exports=e():typeof define=="function"&&define.amd?define(e):(r=typeof globalThis!="undefined"?globalThis:r||self).dayjs_plugin_quarterOfYear=e()})(uo,function(){"use strict";var r="month",e="quarter";return function(t,n){var i=n.prototype;i.quarter=function(o){return this.$utils().u(o)?Math.ceil((this.month()+1)/3):this.month(this.month()%3+3*(o-1))};var s=i.add;i.add=function(o,u){return o=Number(o),this.$utils().p(u)===e?this.add(3*o,r):s.bind(this)(o,u)};var a=i.startOf;i.startOf=function(o,u){var l=this.$utils(),c=!!l.u(u)||u;if(l.p(o)===e){var d=this.quarter()-1;return c?this.month(3*d).startOf(r).startOf("day"):this.month(3*d+2).endOf(r).endOf("day")}return a.bind(this)(o,u)}}})});var nt=h(Pt=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:!0});Pt.implySimilarTime=Pt.assignSimilarTime=Pt.assignSimilarDate=Pt.assignTheNextDay=void 0;var bp=Ee();function MT(r,e){e=e.add(1,"day"),vp(r,e),Ep(r,e)}Pt.assignTheNextDay=MT;function vp(r,e){r.assign("day",e.date()),r.assign("month",e.month()+1),r.assign("year",e.year())}Pt.assignSimilarDate=vp;function PT(r,e){r.assign("hour",e.hour()),r.assign("minute",e.minute()),r.assign("second",e.second()),r.assign("millisecond",e.millisecond()),r.get("hour")<12?r.assign("meridiem",bp.Meridiem.AM):r.assign("meridiem",bp.Meridiem.PM)}Pt.assignSimilarTime=PT;function Ep(r,e){r.imply("hour",e.hour()),r.imply("minute",e.minute()),r.imply("second",e.second()),r.imply("millisecond",e.millisecond())}Pt.implySimilarTime=Ep});var Rp=h(Cr=>{"use strict";Object.defineProperty(Cr,"__esModule",{value:!0});Cr.toTimezoneOffset=Cr.TIMEZONE_ABBR_MAP=void 0;Cr.TIMEZONE_ABBR_MAP={ACDT:630,ACST:570,ADT:-180,AEDT:660,AEST:600,AFT:270,AKDT:-480,AKST:-540,ALMT:360,AMST:-180,AMT:-240,ANAST:720,ANAT:720,AQTT:300,ART:-180,AST:-240,AWDT:540,AWST:480,AZOST:0,AZOT:-60,AZST:300,AZT:240,BNT:480,BOT:-240,BRST:-120,BRT:-180,BST:60,BTT:360,CAST:480,CAT:120,CCT:390,CDT:-300,CEST:120,CET:60,CHADT:825,CHAST:765,CKT:-600,CLST:-180,CLT:-240,COT:-300,CST:-360,CVT:-60,CXT:420,ChST:600,DAVT:420,EASST:-300,EAST:-360,EAT:180,ECT:-300,EDT:-240,EEST:180,EET:120,EGST:0,EGT:-60,EST:-300,ET:-300,FJST:780,FJT:720,FKST:-180,FKT:-240,FNT:-120,GALT:-360,GAMT:-540,GET:240,GFT:-180,GILT:720,GMT:0,GST:240,GYT:-240,HAA:-180,HAC:-300,HADT:-540,HAE:-240,HAP:-420,HAR:-360,HAST:-600,HAT:-90,HAY:-480,HKT:480,HLV:-210,HNA:-240,HNC:-360,HNE:-300,HNP:-480,HNR:-420,HNT:-150,HNY:-540,HOVT:420,ICT:420,IDT:180,IOT:360,IRDT:270,IRKST:540,IRKT:540,IRST:210,IST:330,JST:540,KGT:360,KRAST:480,KRAT:480,KST:540,KUYT:240,LHDT:660,LHST:630,LINT:840,MAGST:720,MAGT:720,MART:-510,MAWT:300,MDT:-360,MESZ:120,MEZ:60,MHT:720,MMT:390,MSD:240,MSK:180,MST:-420,MUT:240,MVT:300,MYT:480,NCT:660,NDT:-90,NFT:690,NOVST:420,NOVT:360,NPT:345,NST:-150,NUT:-660,NZDT:780,NZST:720,OMSST:420,OMST:420,PDT:-420,PET:-300,PETST:720,PETT:720,PGT:600,PHOT:780,PHT:480,PKT:300,PMDT:-120,PMST:-180,PONT:660,PST:-480,PT:-480,PWT:540,PYST:-180,PYT:-240,RET:240,SAMT:240,SAST:120,SBT:660,SCT:240,SGT:480,SRT:-180,SST:-660,TAHT:-600,TFT:300,TJT:300,TKT:780,TLT:540,TMT:300,TVT:720,ULAT:480,UTC:0,UYST:-120,UYT:-180,UZT:300,VET:-210,VLAST:660,VLAT:660,VUT:660,WAST:120,WAT:60,WEST:60,WESZ:60,WET:0,WEZ:0,WFT:720,WGST:-120,WGT:-180,WIB:420,WIT:540,WITA:480,WST:780,WT:0,YAKST:600,YAKT:600,YAPT:600,YEKST:360,YEKT:360};function OT(r){var e;return r==null?null:typeof r=="number"?r:(e=Cr.TIMEZONE_ABBR_MAP[r])!==null&&e!==void 0?e:null}Cr.toTimezoneOffset=OT});var pe=h(Ot=>{"use strict";var wp=Ot&&Ot.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Ot,"__esModule",{value:!0});Ot.ParsingResult=Ot.ParsingComponents=Ot.ReferenceWithTimezone=void 0;var AT=wp(Tp()),Rs=wp(K()),co=nt(),kT=Rp();Rs.default.extend(AT.default);var fo=class{constructor(e){var t;e=e!=null?e:new Date,e instanceof Date?this.instant=e:(this.instant=(t=e.instant)!==null&&t!==void 0?t:new Date,this.timezoneOffset=kT.toTimezoneOffset(e.timezone))}};Ot.ReferenceWithTimezone=fo;var Sr=class{constructor(e,t){if(this.reference=e,this.knownValues={},this.impliedValues={},t)for(let i in t)this.knownValues[i]=t[i];let n=Rs.default(e.instant);this.imply("day",n.date()),this.imply("month",n.month()+1),this.imply("year",n.year()),this.imply("hour",12),this.imply("minute",0),this.imply("second",0),this.imply("millisecond",0)}get(e){return e in this.knownValues?this.knownValues[e]:e in this.impliedValues?this.impliedValues[e]:null}isCertain(e){return e in this.knownValues}getCertainComponents(){return Object.keys(this.knownValues)}imply(e,t){return e in this.knownValues?this:(this.impliedValues[e]=t,this)}assign(e,t){return this.knownValues[e]=t,delete this.impliedValues[e],this}delete(e){delete this.knownValues[e],delete this.impliedValues[e]}clone(){let e=new Sr(this.reference);e.knownValues={},e.impliedValues={};for(let t in this.knownValues)e.knownValues[t]=this.knownValues[t];for(let t in this.impliedValues)e.impliedValues[t]=this.impliedValues[t];return e}isOnlyDate(){return!this.isCertain("hour")&&!this.isCertain("minute")&&!this.isCertain("second")}isOnlyTime(){return!this.isCertain("weekday")&&!this.isCertain("day")&&!this.isCertain("month")}isOnlyWeekdayComponent(){return this.isCertain("weekday")&&!this.isCertain("day")&&!this.isCertain("month")}isOnlyDayMonthComponent(){return this.isCertain("day")&&this.isCertain("month")&&!this.isCertain("year")}isValidDate(){let e=this.dateWithoutTimezoneAdjustment();return!(e.getFullYear()!==this.get("year")||e.getMonth()!==this.get("month")-1||e.getDate()!==this.get("day")||this.get("hour")!=null&&e.getHours()!=this.get("hour")||this.get("minute")!=null&&e.getMinutes()!=this.get("minute"))}toString(){return`[ParsingComponents {knownValues: ${JSON.stringify(this.knownValues)}, impliedValues: ${JSON.stringify(this.impliedValues)}}, reference: ${JSON.stringify(this.reference)}]`}dayjs(){return Rs.default(this.date())}date(){let e=this.dateWithoutTimezoneAdjustment();return new Date(e.getTime()+this.getSystemTimezoneAdjustmentMinute(e)*6e4)}dateWithoutTimezoneAdjustment(){let e=new Date(this.get("year"),this.get("month")-1,this.get("day"),this.get("hour"),this.get("minute"),this.get("second"),this.get("millisecond"));return e.setFullYear(this.get("year")),e}getSystemTimezoneAdjustmentMinute(e){var t,n;(!e||e.getTime()<0)&&(e=new Date);let i=-e.getTimezoneOffset(),s=(n=(t=this.get("timezoneOffset"))!==null&&t!==void 0?t:this.reference.timezoneOffset)!==null&&n!==void 0?n:i;return i-s}static createRelativeFromReference(e,t){let n=Rs.default(e.instant);for(let s in t)n=n.add(t[s],s);let i=new Sr(e);return t.hour||t.minute||t.second?(co.assignSimilarTime(i,n),co.assignSimilarDate(i,n),e.timezoneOffset!==null&&i.assign("timezoneOffset",-e.instant.getTimezoneOffset())):(co.implySimilarTime(i,n),e.timezoneOffset!==null&&i.imply("timezoneOffset",-e.instant.getTimezoneOffset()),t.d?(i.assign("day",n.date()),i.assign("month",n.month()+1),i.assign("year",n.year())):(t.week&&i.imply("weekday",n.day()),i.imply("day",n.date()),t.month?(i.assign("month",n.month()+1),i.assign("year",n.year())):(i.imply("month",n.month()+1),t.year?i.assign("year",n.year()):i.imply("year",n.year())))),i}};Ot.ParsingComponents=Sr;var Wn=class{constructor(e,t,n,i,s){this.reference=e,this.refDate=e.instant,this.index=t,this.text=n,this.start=i||new Sr(e),this.end=s}clone(){let e=new Wn(this.reference,this.index,this.text);return e.start=this.start?this.start.clone():null,e.end=this.end?this.end.clone():null,e}date(){return this.start.date()}toString(){return`[ParsingResult {index: ${this.index}, text: '${this.text}', ...}]`}};Ot.ParsingResult=Wn});var R=h(ws=>{"use strict";Object.defineProperty(ws,"__esModule",{value:!0});ws.AbstractParserWithWordBoundaryChecking=void 0;var po=class{constructor(){this.cachedInnerPattern=null,this.cachedPattern=null}patternLeftBoundary(){return"(\\W|^)"}pattern(e){let t=this.innerPattern(e);return t==this.cachedInnerPattern?this.cachedPattern:(this.cachedPattern=new RegExp(`${this.patternLeftBoundary()}${t.source}`,t.flags),this.cachedInnerPattern=t,this.cachedPattern)}extract(e,t){var n;let i=(n=t[1])!==null&&n!==void 0?n:"";t.index=t.index+i.length,t[0]=t[0].substring(i.length);for(let s=2;s{"use strict";Object.defineProperty(yo,"__esModule",{value:!0});var mo=Ie(),NT=pe(),CT=R(),ST=new RegExp(`(?:within|in|for)\\s*(?:(?:about|around|roughly|approximately|just)\\s*(?:~\\s*)?)?(${mo.TIME_UNITS_PATTERN})(?=\\W|$)`,"i"),xT=new RegExp(`(?:(?:about|around|roughly|approximately|just)\\s*(?:~\\s*)?)?(${mo.TIME_UNITS_PATTERN})(?=\\W|$)`,"i"),ho=class extends CT.AbstractParserWithWordBoundaryChecking{innerPattern(e){return e.option.forwardDate?xT:ST}innerExtract(e,t){let n=mo.parseTimeUnits(t[1]);return NT.ParsingComponents.createRelativeFromReference(e.reference,n)}};yo.default=ho});var Np=h(_o=>{"use strict";Object.defineProperty(_o,"__esModule",{value:!0});var IT=xe(),Ap=Ie(),kp=Ie(),Ds=Ie(),UT=Q(),qT=R(),FT=new RegExp(`(?:on\\s{0,3})?(${Ds.ORDINAL_NUMBER_PATTERN})(?:\\s{0,3}(?:to|\\-|\\\u2013|until|through|till)?\\s{0,3}(${Ds.ORDINAL_NUMBER_PATTERN}))?(?:-|/|\\s{0,3}(?:of)?\\s{0,3})(${UT.matchAnyPattern(Ap.MONTH_DICTIONARY)})(?:(?:-|/|,?\\s{0,3})(${kp.YEAR_PATTERN}(?![^\\s]\\d)))?(?=\\W|$)`,"i"),Mp=1,Pp=2,WT=3,Op=4,go=class extends qT.AbstractParserWithWordBoundaryChecking{innerPattern(){return FT}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=Ap.MONTH_DICTIONARY[t[WT].toLowerCase()],s=Ds.parseOrdinalNumberPattern(t[Mp]);if(s>31)return t.index=t.index+t[Mp].length,null;if(n.start.assign("month",i),n.start.assign("day",s),t[Op]){let a=kp.parseYear(t[Op]);n.start.assign("year",a)}else{let a=IT.findYearClosestToRef(e.refDate,s,i);n.start.imply("year",a)}if(t[Pp]){let a=Ds.parseOrdinalNumberPattern(t[Pp]);n.end=n.start.clone(),n.end.assign("day",a)}return n}};_o.default=go});var Up=h(bo=>{"use strict";Object.defineProperty(bo,"__esModule",{value:!0});var LT=xe(),xp=Ie(),Ms=Ie(),Ip=Ie(),YT=Q(),$T=R(),jT=new RegExp(`(${YT.matchAnyPattern(xp.MONTH_DICTIONARY)})(?:-|/|\\s*,?\\s*)(${Ms.ORDINAL_NUMBER_PATTERN})(?!\\s*(?:am|pm))\\s*(?:(?:to|\\-)\\s*(${Ms.ORDINAL_NUMBER_PATTERN})\\s*)?(?:(?:-|/|\\s*,?\\s*)(${Ip.YEAR_PATTERN}))?(?=\\W|$)(?!\\:\\d)`,"i"),BT=1,GT=2,Cp=3,Sp=4,To=class extends $T.AbstractParserWithWordBoundaryChecking{innerPattern(){return jT}innerExtract(e,t){let n=xp.MONTH_DICTIONARY[t[BT].toLowerCase()],i=Ms.parseOrdinalNumberPattern(t[GT]);if(i>31)return null;let s=e.createParsingComponents({day:i,month:n});if(t[Sp]){let u=Ip.parseYear(t[Sp]);s.assign("year",u)}else{let u=LT.findYearClosestToRef(e.refDate,i,n);s.imply("year",u)}if(!t[Cp])return s;let a=Ms.parseOrdinalNumberPattern(t[Cp]),o=e.createParsingResult(t.index,t[0]);return o.start=s,o.end=s.clone(),o.end.assign("day",a),o}};bo.default=To});var Wp=h(Ro=>{"use strict";Object.defineProperty(Ro,"__esModule",{value:!0});var vo=Ie(),HT=xe(),zT=Q(),Fp=Ie(),KT=R(),VT=new RegExp(`((?:in)\\s*)?(${zT.matchAnyPattern(vo.MONTH_DICTIONARY)})\\s*(?:[,-]?\\s*(${Fp.YEAR_PATTERN})?)?(?=[^\\s\\w]|\\s+[^0-9]|\\s+$|$)`,"i"),ZT=1,XT=2,qp=3,Eo=class extends KT.AbstractParserWithWordBoundaryChecking{innerPattern(){return VT}innerExtract(e,t){let n=t[XT].toLowerCase();if(t[0].length<=3&&!vo.FULL_MONTH_NAME_DICTIONARY[n])return null;let i=e.createParsingResult(t.index+(t[ZT]||"").length,t.index+t[0].length);i.start.imply("day",1);let s=vo.MONTH_DICTIONARY[n];if(i.start.assign("month",s),t[qp]){let a=Fp.parseYear(t[qp]);i.start.assign("year",a)}else{let a=HT.findYearClosestToRef(e.refDate,1,s);i.start.imply("year",a)}return i}};Ro.default=Eo});var $p=h(Do=>{"use strict";Object.defineProperty(Do,"__esModule",{value:!0});var Yp=Ie(),QT=Q(),JT=R(),eb=new RegExp(`([0-9]{4})[\\.\\/\\s](?:(${QT.matchAnyPattern(Yp.MONTH_DICTIONARY)})|([0-9]{1,2}))[\\.\\/\\s]([0-9]{1,2})(?=\\W|$)`,"i"),tb=1,rb=2,Lp=3,nb=4,wo=class extends JT.AbstractParserWithWordBoundaryChecking{innerPattern(){return eb}innerExtract(e,t){let n=t[Lp]?parseInt(t[Lp]):Yp.MONTH_DICTIONARY[t[rb].toLowerCase()];if(n<1||n>12)return null;let i=parseInt(t[tb]);return{day:parseInt(t[nb]),month:n,year:i}}};Do.default=wo});var jp=h(Po=>{"use strict";Object.defineProperty(Po,"__esModule",{value:!0});var ib=R(),sb=new RegExp("([0-9]|0[1-9]|1[012])/([0-9]{4})","i"),ab=1,ob=2,Mo=class extends ib.AbstractParserWithWordBoundaryChecking{innerPattern(){return sb}innerExtract(e,t){let n=parseInt(t[ob]),i=parseInt(t[ab]);return e.createParsingComponents().imply("day",1).assign("month",i).assign("year",n)}};Po.default=Mo});var xr=h(As=>{"use strict";Object.defineProperty(As,"__esModule",{value:!0});As.AbstractTimeExpressionParser=void 0;var Be=Ee();function ub(r,e,t,n){return new RegExp(`${r}${e}(\\d{1,4})(?:(?:\\.|:|\uFF1A)(\\d{1,2})(?:(?::|\uFF1A)(\\d{2})(?:\\.(\\d{1,6}))?)?)?(?:\\s*(a\\.m\\.|p\\.m\\.|am?|pm?))?${t}`,n)}function lb(r,e){return new RegExp(`^(${r})(\\d{1,4})(?:(?:\\.|\\:|\\\uFF1A)(\\d{1,2})(?:(?:\\.|\\:|\\\uFF1A)(\\d{1,2})(?:\\.(\\d{1,6}))?)?)?(?:\\s*(a\\.m\\.|p\\.m\\.|am?|pm?))?${e}`,"i")}var Bp=2,en=3,Ps=4,Os=5,Ln=6,Oo=class{constructor(e=!1){this.cachedPrimaryPrefix=null,this.cachedPrimarySuffix=null,this.cachedPrimaryTimePattern=null,this.cachedFollowingPhase=null,this.cachedFollowingSuffix=null,this.cachedFollowingTimePatten=null,this.strictMode=e}patternFlags(){return"i"}primaryPatternLeftBoundary(){return"(^|\\s|T|\\b)"}primarySuffix(){return"(?=\\W|$)"}followingSuffix(){return"(?=\\W|$)"}pattern(e){return this.getPrimaryTimePatternThroughCache()}extract(e,t){let n=this.extractPrimaryTimeComponents(e,t);if(!n)return t.index+=t[0].length,null;let i=t.index+t[1].length,s=t[0].substring(t[1].length),a=e.createParsingResult(i,s,n);t.index+=t[0].length;let o=e.text.substring(t.index),l=this.getFollowingTimePatternThroughCache().exec(o);return s.match(/^\d{3,4}/)&&l&&l[0].match(/^\s*([+-])\s*\d{2,4}$/)?null:!l||l[0].match(/^\s*([+-])\s*\d{3,4}$/)?this.checkAndReturnWithoutFollowingPattern(a):(a.end=this.extractFollowingTimeComponents(e,l,a),a.end&&(a.text+=l[0]),this.checkAndReturnWithFollowingPattern(a))}extractPrimaryTimeComponents(e,t,n=!1){let i=e.createParsingComponents(),s=0,a=null,o=parseInt(t[Bp]);if(o>100){if(this.strictMode||t[en]!=null)return null;s=o%100,o=Math.floor(o/100)}if(o>24)return null;if(t[en]!=null){if(t[en].length==1&&!t[Ln])return null;s=parseInt(t[en])}if(s>=60)return null;if(o>12&&(a=Be.Meridiem.PM),t[Ln]!=null){if(o>12)return null;let u=t[Ln][0].toLowerCase();u=="a"&&(a=Be.Meridiem.AM,o==12&&(o=0)),u=="p"&&(a=Be.Meridiem.PM,o!=12&&(o+=12))}if(i.assign("hour",o),i.assign("minute",s),a!==null?i.assign("meridiem",a):o<12?i.imply("meridiem",Be.Meridiem.AM):i.imply("meridiem",Be.Meridiem.PM),t[Os]!=null){let u=parseInt(t[Os].substring(0,3));if(u>=1e3)return null;i.assign("millisecond",u)}if(t[Ps]!=null){let u=parseInt(t[Ps]);if(u>=60)return null;i.assign("second",u)}return i}extractFollowingTimeComponents(e,t,n){let i=e.createParsingComponents();if(t[Os]!=null){let u=parseInt(t[Os].substring(0,3));if(u>=1e3)return null;i.assign("millisecond",u)}if(t[Ps]!=null){let u=parseInt(t[Ps]);if(u>=60)return null;i.assign("second",u)}let s=parseInt(t[Bp]),a=0,o=-1;if(t[en]!=null?a=parseInt(t[en]):s>100&&(a=s%100,s=Math.floor(s/100)),a>=60||s>24)return null;if(s>=12&&(o=Be.Meridiem.PM),t[Ln]!=null){if(s>12)return null;let u=t[Ln][0].toLowerCase();u=="a"&&(o=Be.Meridiem.AM,s==12&&(s=0,i.isCertain("day")||i.imply("day",i.get("day")+1))),u=="p"&&(o=Be.Meridiem.PM,s!=12&&(s+=12)),n.start.isCertain("meridiem")||(o==Be.Meridiem.AM?(n.start.imply("meridiem",Be.Meridiem.AM),n.start.get("hour")==12&&n.start.assign("hour",0)):(n.start.imply("meridiem",Be.Meridiem.PM),n.start.get("hour")!=12&&n.start.assign("hour",n.start.get("hour")+12)))}return i.assign("hour",s),i.assign("minute",a),o>=0?i.assign("meridiem",o):n.start.isCertain("meridiem")&&n.start.get("hour")>12?n.start.get("hour")-12>s?i.imply("meridiem",Be.Meridiem.AM):s<=12&&(i.assign("hour",s+12),i.assign("meridiem",Be.Meridiem.PM)):s>12?i.imply("meridiem",Be.Meridiem.PM):s<=12&&i.imply("meridiem",Be.Meridiem.AM),i.date().getTime()24)return null}return e}checkAndReturnWithFollowingPattern(e){if(e.text.match(/^\d+-\d+$/))return null;let t=e.text.match(/[^\d:.](\d[\d.]+)\s*-\s*(\d[\d.]+)$/);if(t){if(this.strictMode)return null;let n=t[1],i=t[2];if(i.includes(".")&&!i.match(/\d(\.\d{2})+$/))return null;let s=parseInt(i),a=parseInt(n);if(s>24||a>24)return null}return e}getPrimaryTimePatternThroughCache(){let e=this.primaryPrefix(),t=this.primarySuffix();return this.cachedPrimaryPrefix===e&&this.cachedPrimarySuffix===t?this.cachedPrimaryTimePattern:(this.cachedPrimaryTimePattern=ub(this.primaryPatternLeftBoundary(),e,t,this.patternFlags()),this.cachedPrimaryPrefix=e,this.cachedPrimarySuffix=t,this.cachedPrimaryTimePattern)}getFollowingTimePatternThroughCache(){let e=this.followingPhase(),t=this.followingSuffix();return this.cachedFollowingPhase===e&&this.cachedFollowingSuffix===t?this.cachedFollowingTimePatten:(this.cachedFollowingTimePatten=lb(e,t),this.cachedFollowingPhase=e,this.cachedFollowingSuffix=t,this.cachedFollowingTimePatten)}};As.AbstractTimeExpressionParser=Oo});var Gp=h(ko=>{"use strict";Object.defineProperty(ko,"__esModule",{value:!0});var ks=Ee(),cb=xr(),Ao=class extends cb.AbstractTimeExpressionParser{constructor(e){super(e)}followingPhase(){return"\\s*(?:\\-|\\\u2013|\\~|\\\u301C|to|\\?)\\s*"}primaryPrefix(){return"(?:(?:at|from)\\s*)??"}primarySuffix(){return"(?:\\s*(?:o\\W*clock|at\\s*night|in\\s*the\\s*(?:morning|afternoon)))?(?!/)(?=\\W|$)"}extractPrimaryTimeComponents(e,t){let n=super.extractPrimaryTimeComponents(e,t);if(n){if(t[0].endsWith("night")){let i=n.get("hour");i>=6&&i<12?(n.assign("hour",n.get("hour")+12),n.assign("meridiem",ks.Meridiem.PM)):i<6&&n.assign("meridiem",ks.Meridiem.AM)}if(t[0].endsWith("afternoon")){n.assign("meridiem",ks.Meridiem.PM);let i=n.get("hour");i>=0&&i<=6&&n.assign("hour",n.get("hour")+12)}t[0].endsWith("morning")&&(n.assign("meridiem",ks.Meridiem.AM),n.get("hour")<12&&n.assign("hour",n.get("hour")))}return n}};ko.default=Ao});var it=h(tn=>{"use strict";Object.defineProperty(tn,"__esModule",{value:!0});tn.addImpliedTimeUnits=tn.reverseTimeUnits=void 0;function db(r){let e={};for(let t in r)e[t]=-r[t];return e}tn.reverseTimeUnits=db;function fb(r,e){let t=r.clone(),n=r.dayjs();for(let i in e)n=n.add(e[i],i);return("day"in e||"d"in e||"week"in e||"month"in e||"year"in e)&&(t.imply("day",n.date()),t.imply("month",n.month()+1),t.imply("year",n.year())),("second"in e||"minute"in e||"hour"in e)&&(t.imply("second",n.second()),t.imply("minute",n.minute()),t.imply("hour",n.hour())),t}tn.addImpliedTimeUnits=fb});var Hp=h(So=>{"use strict";Object.defineProperty(So,"__esModule",{value:!0});var Co=Ie(),pb=pe(),hb=R(),mb=it(),yb=new RegExp(`(${Co.TIME_UNITS_PATTERN})\\s{0,5}(?:ago|before|earlier)(?=(?:\\W|$))`,"i"),gb=new RegExp(`(${Co.TIME_UNITS_PATTERN})\\s{0,5}ago(?=(?:\\W|$))`,"i"),No=class extends hb.AbstractParserWithWordBoundaryChecking{constructor(e){super(),this.strictMode=e}innerPattern(){return this.strictMode?gb:yb}innerExtract(e,t){let n=Co.parseTimeUnits(t[1]),i=mb.reverseTimeUnits(n);return pb.ParsingComponents.createRelativeFromReference(e.reference,i)}};So.default=No});var zp=h(Uo=>{"use strict";Object.defineProperty(Uo,"__esModule",{value:!0});var Io=Ie(),_b=pe(),Tb=R(),bb=new RegExp(`(${Io.TIME_UNITS_PATTERN})\\s{0,5}(?:later|after|from now|henceforth|forward|out)(?=(?:\\W|$))`,"i"),vb=new RegExp("("+Io.TIME_UNITS_PATTERN+")(later|from now)(?=(?:\\W|$))","i"),Eb=1,xo=class extends Tb.AbstractParserWithWordBoundaryChecking{constructor(e){super(),this.strictMode=e}innerPattern(){return this.strictMode?vb:bb}innerExtract(e,t){let n=Io.parseTimeUnits(t[Eb]);return _b.ParsingComponents.createRelativeFromReference(e.reference,n)}};Uo.default=xo});var nn=h(rn=>{"use strict";Object.defineProperty(rn,"__esModule",{value:!0});rn.MergingRefiner=rn.Filter=void 0;var qo=class{refine(e,t){return t.filter(n=>this.isValid(e,n))}};rn.Filter=qo;var Fo=class{refine(e,t){if(t.length<2)return t;let n=[],i=t[0],s=null;for(let a=1;a{console.log(`${this.constructor.name} merged ${u} and ${l} into ${c}`)}),i=c}}return i!=null&&n.push(i),n}};rn.MergingRefiner=Fo});var At=h(Lo=>{"use strict";Object.defineProperty(Lo,"__esModule",{value:!0});var Rb=nn(),Wo=class extends Rb.MergingRefiner{shouldMergeResults(e,t,n){return!t.end&&!n.end&&e.match(this.patternBetween())!=null}mergeResults(e,t,n){if(!t.start.isOnlyWeekdayComponent()&&!n.start.isOnlyWeekdayComponent()&&(n.start.getCertainComponents().forEach(s=>{t.start.isCertain(s)||t.start.assign(s,n.start.get(s))}),t.start.getCertainComponents().forEach(s=>{n.start.isCertain(s)||n.start.assign(s,t.start.get(s))})),t.start.date().getTime()>n.start.date().getTime()){let s=t.start.dayjs(),a=n.start.dayjs();t.start.isOnlyWeekdayComponent()&&s.add(-7,"days").isBefore(a)?(s=s.add(-7,"days"),t.start.imply("day",s.date()),t.start.imply("month",s.month()+1),t.start.imply("year",s.year())):n.start.isOnlyWeekdayComponent()&&a.add(7,"days").isAfter(s)?(a=a.add(7,"days"),n.start.imply("day",a.date()),n.start.imply("month",a.month()+1),n.start.imply("year",a.year())):[n,t]=[t,n]}let i=t.clone();return i.start=t.start,i.end=n.start,i.index=Math.min(t.index,n.index),t.index{"use strict";var wb=Yn&&Yn.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Yn,"__esModule",{value:!0});var Db=wb(At()),Yo=class extends Db.default{patternBetween(){return/^\s*(to|-)\s*$/i}};Yn.default=Yo});var Vp=h(sn=>{"use strict";Object.defineProperty(sn,"__esModule",{value:!0});sn.mergeDateTimeComponent=sn.mergeDateTimeResult=void 0;var Mb=Ee();function Pb(r,e){let t=r.clone(),n=r.start,i=e.start;if(t.start=$o(n,i),r.end!=null||e.end!=null){let s=r.end==null?r.start:r.end,a=e.end==null?e.start:e.end,o=$o(s,a);r.end==null&&o.date().getTime(){"use strict";Object.defineProperty(Bo,"__esModule",{value:!0});var Ob=nn(),Zp=Vp(),jo=class extends Ob.MergingRefiner{shouldMergeResults(e,t,n){return(t.start.isOnlyDate()&&n.start.isOnlyTime()||n.start.isOnlyDate()&&t.start.isOnlyTime())&&e.match(this.patternBetween())!=null}mergeResults(e,t,n){let i=t.start.isOnlyDate()?Zp.mergeDateTimeResult(t,n):Zp.mergeDateTimeResult(n,t);return i.index=t.index,i.text=t.text+e+n.text,i}};Bo.default=jo});var Xp=h($n=>{"use strict";var Ab=$n&&$n.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty($n,"__esModule",{value:!0});var kb=Ab(jt()),Go=class extends kb.default{patternBetween(){return new RegExp("^\\s*(T|at|after|before|on|of|,|-)?\\s*$")}};$n.default=Go});var Qp=h(zo=>{"use strict";Object.defineProperty(zo,"__esModule",{value:!0});var Nb=new RegExp("^\\s*,?\\s*\\(?([A-Z]{2,4})\\)?(?=\\W|$)","i"),Cb={ACDT:630,ACST:570,ADT:-180,AEDT:660,AEST:600,AFT:270,AKDT:-480,AKST:-540,ALMT:360,AMST:-180,AMT:-240,ANAST:720,ANAT:720,AQTT:300,ART:-180,AST:-240,AWDT:540,AWST:480,AZOST:0,AZOT:-60,AZST:300,AZT:240,BNT:480,BOT:-240,BRST:-120,BRT:-180,BST:60,BTT:360,CAST:480,CAT:120,CCT:390,CDT:-300,CEST:120,CET:60,CHADT:825,CHAST:765,CKT:-600,CLST:-180,CLT:-240,COT:-300,CST:-360,CVT:-60,CXT:420,ChST:600,DAVT:420,EASST:-300,EAST:-360,EAT:180,ECT:-300,EDT:-240,EEST:180,EET:120,EGST:0,EGT:-60,EST:-300,ET:-300,FJST:780,FJT:720,FKST:-180,FKT:-240,FNT:-120,GALT:-360,GAMT:-540,GET:240,GFT:-180,GILT:720,GMT:0,GST:240,GYT:-240,HAA:-180,HAC:-300,HADT:-540,HAE:-240,HAP:-420,HAR:-360,HAST:-600,HAT:-90,HAY:-480,HKT:480,HLV:-210,HNA:-240,HNC:-360,HNE:-300,HNP:-480,HNR:-420,HNT:-150,HNY:-540,HOVT:420,ICT:420,IDT:180,IOT:360,IRDT:270,IRKST:540,IRKT:540,IRST:210,IST:330,JST:540,KGT:360,KRAST:480,KRAT:480,KST:540,KUYT:240,LHDT:660,LHST:630,LINT:840,MAGST:720,MAGT:720,MART:-510,MAWT:300,MDT:-360,MESZ:120,MEZ:60,MHT:720,MMT:390,MSD:240,MSK:240,MST:-420,MUT:240,MVT:300,MYT:480,NCT:660,NDT:-90,NFT:690,NOVST:420,NOVT:360,NPT:345,NST:-150,NUT:-660,NZDT:780,NZST:720,OMSST:420,OMST:420,PDT:-420,PET:-300,PETST:720,PETT:720,PGT:600,PHOT:780,PHT:480,PKT:300,PMDT:-120,PMST:-180,PONT:660,PST:-480,PT:-480,PWT:540,PYST:-180,PYT:-240,RET:240,SAMT:240,SAST:120,SBT:660,SCT:240,SGT:480,SRT:-180,SST:-660,TAHT:-600,TFT:300,TJT:300,TKT:780,TLT:540,TMT:300,TVT:720,ULAT:480,UTC:0,UYST:-120,UYT:-180,UZT:300,VET:-210,VLAST:660,VLAT:660,VUT:660,WAST:120,WAT:60,WEST:60,WESZ:60,WET:0,WEZ:0,WFT:720,WGST:-120,WGT:-180,WIB:420,WIT:540,WITA:480,WST:780,WT:0,YAKST:600,YAKT:600,YAPT:600,YEKST:360,YEKT:360},Ho=class{constructor(e){this.timezone=Object.assign(Object.assign({},Cb),e)}refine(e,t){var n;let i=(n=e.option.timezones)!==null&&n!==void 0?n:{};return t.forEach(s=>{var a,o;let u=e.text.substring(s.index+s.text.length),l=Nb.exec(u);if(!l)return;let c=l[1].toUpperCase(),d=(o=(a=i[c])!==null&&a!==void 0?a:this.timezone[c])!==null&&o!==void 0?o:null;if(d===null)return;e.debug(()=>{console.log(`Extracting timezone: '${c}' into: ${d} for: ${s.start}`)});let f=s.start.get("timezoneOffset");f!==null&&d!=f&&(s.start.isCertain("timezoneOffset")||c!=l[1])||s.start.isOnlyDate()&&c!=l[1]||(s.text+=l[0],s.start.isCertain("timezoneOffset")||s.start.assign("timezoneOffset",d),s.end!=null&&!s.end.isCertain("timezoneOffset")&&s.end.assign("timezoneOffset",d))}),t}};zo.default=Ho});var Ns=h(Vo=>{"use strict";Object.defineProperty(Vo,"__esModule",{value:!0});var Sb=new RegExp("^\\s*(?:\\(?(?:GMT|UTC)\\s?)?([+-])(\\d{1,2})(?::?(\\d{2}))?\\)?","i"),xb=1,Ib=2,Ub=3,Ko=class{refine(e,t){return t.forEach(function(n){if(n.start.isCertain("timezoneOffset"))return;let i=e.text.substring(n.index+n.text.length),s=Sb.exec(i);if(!s)return;e.debug(()=>{console.log(`Extracting timezone: '${s[0]}' into : ${n}`)});let a=parseInt(s[Ib]),o=parseInt(s[Ub]||"0"),u=a*60+o;u>14*60||(s[xb]==="-"&&(u=-u),n.end!=null&&n.end.assign("timezoneOffset",u),n.start.assign("timezoneOffset",u),n.text+=s[0])}),t}};Vo.default=Ko});var Jp=h(Xo=>{"use strict";Object.defineProperty(Xo,"__esModule",{value:!0});var Zo=class{refine(e,t){if(t.length<2)return t;let n=[],i=t[0];for(let s=1;si.text.length&&(i=a):(n.push(i),i=a)}return i!=null&&n.push(i),n}};Xo.default=Zo});var eh=h(jn=>{"use strict";var qb=jn&&jn.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(jn,"__esModule",{value:!0});var Fb=qb(K()),Qo=class{refine(e,t){return e.option.forwardDate&&t.forEach(function(n){let i=Fb.default(e.refDate);if(n.start.isOnlyDayMonthComponent()&&i.isAfter(n.start.dayjs()))for(let s=0;s<3&&i.isAfter(n.start.dayjs());s++)n.start.imply("year",n.start.get("year")+1),e.debug(()=>{console.log(`Forward yearly adjusted for ${n} (${n.start})`)}),n.end&&!n.end.isCertain("year")&&(n.end.imply("year",n.end.get("year")+1),e.debug(()=>{console.log(`Forward yearly adjusted for ${n} (${n.end})`)}));n.start.isOnlyWeekdayComponent()&&i.isAfter(n.start.dayjs())&&(i.day()>=n.start.get("weekday")?i=i.day(n.start.get("weekday")+7):i=i.day(n.start.get("weekday")),n.start.imply("day",i.date()),n.start.imply("month",i.month()+1),n.start.imply("year",i.year()),e.debug(()=>{console.log(`Forward weekly adjusted for ${n} (${n.start})`)}),n.end&&n.end.isOnlyWeekdayComponent()&&(i.day()>n.end.get("weekday")?i=i.day(n.end.get("weekday")+7):i=i.day(n.end.get("weekday")),n.end.imply("day",i.date()),n.end.imply("month",i.month()+1),n.end.imply("year",i.year()),e.debug(()=>{console.log(`Forward weekly adjusted for ${n} (${n.end})`)})))}),t}};jn.default=Qo});var th=h(eu=>{"use strict";Object.defineProperty(eu,"__esModule",{value:!0});var Wb=nn(),Jo=class extends Wb.Filter{constructor(e){super(),this.strictMode=e}isValid(e,t){return t.text.replace(" ","").match(/^\d*(\.\d*)?$/)?(e.debug(()=>{console.log(`Removing unlikely result '${t.text}'`)}),!1):t.start.isValidDate()?t.end&&!t.end.isValidDate()?(e.debug(()=>{console.log(`Removing invalid result: ${t} (${t.end})`)}),!1):this.strictMode?this.isStrictModeValid(e,t):!0:(e.debug(()=>{console.log(`Removing invalid result: ${t} (${t.start})`)}),!1)}isStrictModeValid(e,t){return t.start.isOnlyWeekdayComponent()?(e.debug(()=>{console.log(`(Strict) Removing weekday only component: ${t} (${t.end})`)}),!1):t.start.isOnlyTime()&&(!t.start.isCertain("hour")||!t.start.isCertain("minute"))?(e.debug(()=>{console.log(`(Strict) Removing uncertain time component: ${t} (${t.end})`)}),!1):!0}};eu.default=Jo});var nu=h(ru=>{"use strict";Object.defineProperty(ru,"__esModule",{value:!0});var Lb=R(),Yb=new RegExp("([0-9]{4})\\-([0-9]{1,2})\\-([0-9]{1,2})(?:T([0-9]{1,2}):([0-9]{1,2})(?::([0-9]{1,2})(?:\\.(\\d{1,4}))?)?(?:Z|([+-]\\d{2}):?(\\d{2})?)?)?(?=\\W|$)","i"),$b=1,jb=2,Bb=3,rh=4,Gb=5,nh=6,ih=7,sh=8,ah=9,tu=class extends Lb.AbstractParserWithWordBoundaryChecking{innerPattern(){return Yb}innerExtract(e,t){let n={};if(n.year=parseInt(t[$b]),n.month=parseInt(t[jb]),n.day=parseInt(t[Bb]),t[rh]!=null)if(n.hour=parseInt(t[rh]),n.minute=parseInt(t[Gb]),t[nh]!=null&&(n.second=parseInt(t[nh])),t[ih]!=null&&(n.millisecond=parseInt(t[ih])),t[sh]==null)n.timezoneOffset=0;else{let i=parseInt(t[sh]),s=0;t[ah]!=null&&(s=parseInt(t[ah]));let a=i*60;a<0?a-=s:a+=s,n.timezoneOffset=a}return n}};ru.default=tu});var oh=h(su=>{"use strict";Object.defineProperty(su,"__esModule",{value:!0});var Hb=nn(),iu=class extends Hb.MergingRefiner{mergeResults(e,t,n){let i=n.clone();return i.index=t.index,i.text=t.text+e+i.text,i.start.assign("weekday",t.start.get("weekday")),i.end&&i.end.assign("weekday",t.start.get("weekday")),i}shouldMergeResults(e,t,n){return t.start.isOnlyWeekdayComponent()&&!t.start.isCertain("hour")&&n.start.isCertain("day")&&e.match(/^,?\s*$/)!=null}};su.default=iu});var Bt=h(an=>{"use strict";var Ir=an&&an.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(an,"__esModule",{value:!0});an.includeCommonConfiguration=void 0;var zb=Ir(Qp()),Kb=Ir(Ns()),uh=Ir(Jp()),Vb=Ir(eh()),Zb=Ir(th()),Xb=Ir(nu()),Qb=Ir(oh());function Jb(r,e=!1){return r.parsers.unshift(new Xb.default),r.refiners.unshift(new Qb.default),r.refiners.unshift(new zb.default),r.refiners.unshift(new Kb.default),r.refiners.unshift(new uh.default),r.refiners.push(new uh.default),r.refiners.push(new Vb.default),r.refiners.push(new Zb.default(e)),r}an.includeCommonConfiguration=Jb});var Ht=h(X=>{"use strict";var e1=X&&X.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(X,"__esModule",{value:!0});X.noon=X.morning=X.midnight=X.yesterdayEvening=X.evening=X.lastNight=X.tonight=X.theDayAfter=X.tomorrow=X.theDayBefore=X.yesterday=X.today=X.now=void 0;var kt=pe(),on=e1(K()),Gt=nt(),Bn=Ee();function t1(r){let e=on.default(r.instant),t=new kt.ParsingComponents(r,{});return Gt.assignSimilarDate(t,e),Gt.assignSimilarTime(t,e),r.timezoneOffset!==null&&t.assign("timezoneOffset",e.utcOffset()),t}X.now=t1;function r1(r){let e=on.default(r.instant),t=new kt.ParsingComponents(r,{});return Gt.assignSimilarDate(t,e),Gt.implySimilarTime(t,e),t}X.today=r1;function n1(r){return lh(r,1)}X.yesterday=n1;function lh(r,e){return au(r,-e)}X.theDayBefore=lh;function i1(r){return au(r,1)}X.tomorrow=i1;function au(r,e){let t=on.default(r.instant),n=new kt.ParsingComponents(r,{});return t=t.add(e,"day"),Gt.assignSimilarDate(n,t),Gt.implySimilarTime(n,t),n}X.theDayAfter=au;function s1(r,e=22){let t=on.default(r.instant),n=new kt.ParsingComponents(r,{});return n.imply("hour",e),n.imply("meridiem",Bn.Meridiem.PM),Gt.assignSimilarDate(n,t),n}X.tonight=s1;function a1(r,e=0){let t=on.default(r.instant),n=new kt.ParsingComponents(r,{});return t.hour()<6&&(t=t.add(-1,"day")),Gt.assignSimilarDate(n,t),n.imply("hour",e),n}X.lastNight=a1;function o1(r,e=20){let t=new kt.ParsingComponents(r,{});return t.imply("meridiem",Bn.Meridiem.PM),t.imply("hour",e),t}X.evening=o1;function u1(r,e=20){let t=on.default(r.instant),n=new kt.ParsingComponents(r,{});return t=t.add(-1,"day"),Gt.assignSimilarDate(n,t),n.imply("hour",e),n.imply("meridiem",Bn.Meridiem.PM),n}X.yesterdayEvening=u1;function l1(r){let e=new kt.ParsingComponents(r,{});return e.imply("hour",0),e.imply("minute",0),e.imply("second",0),e}X.midnight=l1;function c1(r,e=6){let t=new kt.ParsingComponents(r,{});return t.imply("meridiem",Bn.Meridiem.AM),t.imply("hour",e),t}X.morning=c1;function d1(r){let e=new kt.ParsingComponents(r,{});return e.imply("meridiem",Bn.Meridiem.AM),e.imply("hour",12),e}X.noon=d1});var ch=h(ht=>{"use strict";var f1=ht&&ht.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),p1=ht&&ht.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),h1=ht&&ht.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&f1(e,r,t);return p1(e,r),e},m1=ht&&ht.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ht,"__esModule",{value:!0});var y1=m1(K()),g1=R(),_1=nt(),Gn=h1(Ht()),T1=/(now|today|tonight|tomorrow|tmr|tmrw|yesterday|last\s*night)(?=\W|$)/i,ou=class extends g1.AbstractParserWithWordBoundaryChecking{innerPattern(e){return T1}innerExtract(e,t){let n=y1.default(e.refDate),i=t[0].toLowerCase(),s=e.createParsingComponents();switch(i){case"now":return Gn.now(e.reference);case"today":return Gn.today(e.reference);case"yesterday":return Gn.yesterday(e.reference);case"tomorrow":case"tmr":case"tmrw":return Gn.tomorrow(e.reference);case"tonight":return Gn.tonight(e.reference);default:i.match(/last\s*night/)&&(n.hour()>6&&(n=n.add(-1,"day")),_1.assignSimilarDate(s,n),s.imply("hour",0));break}return s}};ht.default=ou});var dh=h(Hn=>{"use strict";var b1=Hn&&Hn.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Hn,"__esModule",{value:!0});var Cs=Ee(),v1=R(),E1=b1(K()),R1=nt(),w1=/(?:this)?\s{0,3}(morning|afternoon|evening|night|midnight|noon)(?=\W|$)/i,uu=class extends v1.AbstractParserWithWordBoundaryChecking{innerPattern(){return w1}innerExtract(e,t){let n=E1.default(e.refDate),i=e.createParsingComponents();switch(t[1].toLowerCase()){case"afternoon":i.imply("meridiem",Cs.Meridiem.PM),i.imply("hour",15);break;case"evening":case"night":i.imply("meridiem",Cs.Meridiem.PM),i.imply("hour",20);break;case"midnight":R1.assignTheNextDay(i,n),i.imply("hour",0),i.imply("minute",0),i.imply("second",0);break;case"morning":i.imply("meridiem",Cs.Meridiem.AM),i.imply("hour",6);break;case"noon":i.imply("meridiem",Cs.Meridiem.AM),i.imply("hour",12);break}return i}};Hn.default=uu});var Ur=h(yr=>{"use strict";var D1=yr&&yr.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(yr,"__esModule",{value:!0});yr.toDayJSClosestWeekday=yr.toDayJSWeekday=void 0;var fh=D1(K());function M1(r,e,t){if(!t)return ph(r,e);let n=fh.default(r);switch(t){case"this":n=n.day(e);break;case"next":n=n.day(e+7);break;case"last":n=n.day(e-7);break}return n}yr.toDayJSWeekday=M1;function ph(r,e){let t=fh.default(r),n=t.day();return Math.abs(e-7-n){"use strict";Object.defineProperty(cu,"__esModule",{value:!0});var hh=Ie(),P1=Q(),O1=R(),A1=Ur(),k1=new RegExp(`(?:(?:\\,|\\(|\\\uFF08)\\s*)?(?:on\\s*?)?(?:(this|last|past|next)\\s*)?(${P1.matchAnyPattern(hh.WEEKDAY_DICTIONARY)})(?:\\s*(?:\\,|\\)|\\\uFF09))?(?:\\s*(this|last|past|next)\\s*week)?(?=\\W|$)`,"i"),N1=1,C1=2,S1=3,lu=class extends O1.AbstractParserWithWordBoundaryChecking{innerPattern(){return k1}innerExtract(e,t){let n=t[C1].toLowerCase(),i=hh.WEEKDAY_DICTIONARY[n],s=t[N1],a=t[S1],o=s||a;o=o||"",o=o.toLowerCase();let u=null;o=="last"||o=="past"?u="last":o=="next"?u="next":o=="this"&&(u="this");let l=A1.toDayJSWeekday(e.refDate,i,u);return e.createParsingComponents().assign("weekday",i).imply("day",l.date()).imply("month",l.month()+1).imply("year",l.year())}};cu.default=lu});var _h=h(zn=>{"use strict";var x1=zn&&zn.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(zn,"__esModule",{value:!0});var gh=Ie(),yh=pe(),I1=x1(K()),U1=R(),q1=Q(),F1=new RegExp(`(this|last|past|next|after\\s*this)\\s*(${q1.matchAnyPattern(gh.TIME_UNIT_DICTIONARY)})(?=\\s*)(?=\\W|$)`,"i"),W1=1,L1=2,du=class extends U1.AbstractParserWithWordBoundaryChecking{innerPattern(){return F1}innerExtract(e,t){let n=t[W1].toLowerCase(),i=t[L1].toLowerCase(),s=gh.TIME_UNIT_DICTIONARY[i];if(n=="next"||n.startsWith("after")){let u={};return u[s]=1,yh.ParsingComponents.createRelativeFromReference(e.reference,u)}if(n=="last"||n=="past"){let u={};return u[s]=-1,yh.ParsingComponents.createRelativeFromReference(e.reference,u)}let a=e.createParsingComponents(),o=I1.default(e.reference.instant);return i.match(/week/i)?(o=o.add(-o.get("d"),"d"),a.imply("day",o.date()),a.imply("month",o.month()+1),a.imply("year",o.year())):i.match(/month/i)?(o=o.add(-o.date()+1,"d"),a.imply("day",o.date()),a.assign("year",o.year()),a.assign("month",o.month()+1)):i.match(/year/i)&&(o=o.add(-o.date()+1,"d"),o=o.add(-o.month(),"month"),a.imply("day",o.date()),a.imply("month",o.month()+1),a.assign("year",o.year())),a}};zn.default=du});var mt=h(cn=>{"use strict";Object.defineProperty(cn,"__esModule",{value:!0});cn.ParsingContext=cn.Chrono=void 0;var un=pe(),Y1=fu(),ln=class{constructor(e){e=e||Y1.createCasualConfiguration(),this.parsers=[...e.parsers],this.refiners=[...e.refiners]}clone(){return new ln({parsers:[...this.parsers],refiners:[...this.refiners]})}parseDate(e,t,n){let i=this.parse(e,t,n);return i.length>0?i[0].start.date():null}parse(e,t,n){let i=new Ss(e,t,n),s=[];return this.parsers.forEach(a=>{let o=ln.executeParser(i,a);s=s.concat(o)}),s.sort((a,o)=>a.index-o.index),this.refiners.forEach(function(a){s=a.refine(i,s)}),s}static executeParser(e,t){let n=[],i=t.pattern(e),s=e.text,a=e.text,o=i.exec(a);for(;o;){let u=o.index+s.length-a.length;o.index=u;let l=t.extract(e,o);if(!l){a=s.substring(o.index+1),o=i.exec(a);continue}let c=null;l instanceof un.ParsingResult?c=l:l instanceof un.ParsingComponents?(c=e.createParsingResult(o.index,o[0]),c.start=l):c=e.createParsingResult(o.index,o[0],l),e.debug(()=>console.log(`${t.constructor.name} extracted result ${c}`)),n.push(c),a=s.substring(u+c.text.length),o=i.exec(a)}return n}};cn.Chrono=ln;var Ss=class{constructor(e,t,n){this.text=e,this.reference=new un.ReferenceWithTimezone(t),this.option=n!=null?n:{},this.refDate=this.reference.instant}createParsingComponents(e){return e instanceof un.ParsingComponents?e:new un.ParsingComponents(this.reference,e)}createParsingResult(e,t,n,i){let s=typeof t=="string"?t:this.text.substring(e,t),a=n?this.createParsingComponents(n):null,o=i?this.createParsingComponents(i):null;return new un.ParsingResult(this.reference,e,s,a,o)}debug(e){this.option.debug&&(this.option.debug instanceof Function?this.option.debug(e):this.option.debug.debug(e))}};cn.ParsingContext=Ss});var qr=h(mu=>{"use strict";Object.defineProperty(mu,"__esModule",{value:!0});var Th=xe(),$1=new RegExp("([^\\d]|^)([0-3]{0,1}[0-9]{1})[\\/\\.\\-]([0-3]{0,1}[0-9]{1})(?:[\\/\\.\\-]([0-9]{4}|[0-9]{2}))?(\\W|$)","i"),xs=1,bh=5,vh=2,Eh=3,pu=4,hu=class{constructor(e){this.groupNumberMonth=e?Eh:vh,this.groupNumberDay=e?vh:Eh}pattern(){return $1}extract(e,t){if(t[xs]=="/"||t[bh]=="/"){t.index+=t[0].length;return}let n=t.index+t[xs].length,i=t[0].substr(t[xs].length,t[0].length-t[xs].length-t[bh].length);if(i.match(/^\d\.\d$/)||i.match(/^\d\.\d{1,2}\.\d{1,2}\s*$/)||!t[pu]&&t[0].indexOf("/")<0)return;let s=e.createParsingResult(n,i),a=parseInt(t[this.groupNumberMonth]),o=parseInt(t[this.groupNumberDay]);if((a<1||a>12)&&a>12)if(o>=1&&o<=12&&a<=31)[o,a]=[a,o];else return null;if(o<1||o>31)return null;if(s.start.assign("day",o),s.start.assign("month",a),t[pu]){let u=parseInt(t[pu]),l=Th.findMostLikelyADYear(u);s.start.assign("year",l)}else{let u=Th.findYearClosestToRef(e.refDate,o,a);s.start.imply("year",u)}return s}};mu.default=hu});var wh=h(gu=>{"use strict";Object.defineProperty(gu,"__esModule",{value:!0});var Rh=Ie(),j1=pe(),B1=R(),G1=it(),H1=new RegExp(`(this|last|past|next|after|\\+|-)\\s*(${Rh.TIME_UNITS_PATTERN})(?=\\W|$)`,"i"),yu=class extends B1.AbstractParserWithWordBoundaryChecking{innerPattern(){return H1}innerExtract(e,t){let n=t[1].toLowerCase(),i=Rh.parseTimeUnits(t[2]);switch(n){case"last":case"past":case"-":i=G1.reverseTimeUnits(i);break}return j1.ParsingComponents.createRelativeFromReference(e.reference,i)}};gu.default=yu});var Mh=h(bu=>{"use strict";Object.defineProperty(bu,"__esModule",{value:!0});var z1=nn(),_u=pe(),K1=Ie(),V1=it();function Dh(r){return r.text.match(/\s+(before|from)$/i)!=null}function Z1(r){return r.text.match(/\s+(after|since)$/i)!=null}var Tu=class extends z1.MergingRefiner{patternBetween(){return/^\s*$/i}shouldMergeResults(e,t,n){return!e.match(this.patternBetween())||!Dh(t)&&!Z1(t)?!1:!!n.start.get("day")&&!!n.start.get("month")&&!!n.start.get("year")}mergeResults(e,t,n){let i=K1.parseTimeUnits(t.text);Dh(t)&&(i=V1.reverseTimeUnits(i));let s=_u.ParsingComponents.createRelativeFromReference(new _u.ReferenceWithTimezone(n.start.date()),i);return new _u.ParsingResult(n.reference,t.index,`${t.text}${e}${n.text}`,s)}};bu.default=Tu});var fu=h(_e=>{"use strict";var we=_e&&_e.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(_e,"__esModule",{value:!0});_e.createConfiguration=_e.createCasualConfiguration=_e.parseDate=_e.parse=_e.GB=_e.strict=_e.casual=void 0;var X1=we(Dp()),Q1=we(Np()),J1=we(Up()),ev=we(Wp()),tv=we($p()),rv=we(jp()),nv=we(Gp()),iv=we(Hp()),sv=we(zp()),av=we(Kp()),ov=we(Xp()),uv=Bt(),lv=we(ch()),cv=we(dh()),dv=we(mh()),fv=we(_h()),vu=mt(),pv=we(qr()),hv=we(wh()),mv=we(Mh());_e.casual=new vu.Chrono(Ph(!1));_e.strict=new vu.Chrono(Is(!0,!1));_e.GB=new vu.Chrono(Is(!1,!0));function yv(r,e,t){return _e.casual.parse(r,e,t)}_e.parse=yv;function gv(r,e,t){return _e.casual.parseDate(r,e,t)}_e.parseDate=gv;function Ph(r=!1){let e=Is(!1,r);return e.parsers.unshift(new lv.default),e.parsers.unshift(new cv.default),e.parsers.unshift(new ev.default),e.parsers.unshift(new fv.default),e.parsers.unshift(new hv.default),e}_e.createCasualConfiguration=Ph;function Is(r=!0,e=!1){return uv.includeCommonConfiguration({parsers:[new pv.default(e),new X1.default,new Q1.default,new J1.default,new dv.default,new tv.default,new rv.default,new nv.default(r),new iv.default(r),new sv.default(r)],refiners:[new mv.default,new ov.default,new av.default]},r)}_e.createConfiguration=Is});var Oh=h(Ru=>{"use strict";Object.defineProperty(Ru,"__esModule",{value:!0});var _v=xr(),Eu=class extends _v.AbstractTimeExpressionParser{primaryPrefix(){return"(?:(?:um|von)\\s*)?"}followingPhase(){return"\\s*(?:\\-|\\\u2013|\\~|\\\u301C|bis)\\s*"}extractPrimaryTimeComponents(e,t){return t[0].match(/^\s*\d{4}\s*$/)?null:super.extractPrimaryTimeComponents(e,t)}};Ru.default=Eu});var Kn=h(te=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});te.parseTimeUnits=te.TIME_UNITS_PATTERN=te.parseYear=te.YEAR_PATTERN=te.parseNumberPattern=te.NUMBER_PATTERN=te.TIME_UNIT_DICTIONARY=te.INTEGER_WORD_DICTIONARY=te.MONTH_DICTIONARY=te.WEEKDAY_DICTIONARY=void 0;var wu=Q(),Tv=xe();te.WEEKDAY_DICTIONARY={sonntag:0,so:0,montag:1,mo:1,dienstag:2,di:2,mittwoch:3,mi:3,donnerstag:4,do:4,freitag:5,fr:5,samstag:6,sa:6};te.MONTH_DICTIONARY={januar:1,j\u00E4nner:1,janner:1,jan:1,"jan.":1,februar:2,feber:2,feb:2,"feb.":2,m\u00E4rz:3,maerz:3,m\u00E4r:3,"m\xE4r.":3,mrz:3,"mrz.":3,april:4,apr:4,"apr.":4,mai:5,juni:6,jun:6,"jun.":6,juli:7,jul:7,"jul.":7,august:8,aug:8,"aug.":8,september:9,sep:9,"sep.":9,sept:9,"sept.":9,oktober:10,okt:10,"okt.":10,november:11,nov:11,"nov.":11,dezember:12,dez:12,"dez.":12};te.INTEGER_WORD_DICTIONARY={eins:1,eine:1,einem:1,einen:1,einer:1,zwei:2,drei:3,vier:4,f\u00FCnf:5,fuenf:5,sechs:6,sieben:7,acht:8,neun:9,zehn:10,elf:11,zw\u00F6lf:12,zwoelf:12};te.TIME_UNIT_DICTIONARY={sek:"second",sekunde:"second",sekunden:"second",min:"minute",minute:"minute",minuten:"minute",h:"hour",std:"hour",stunde:"hour",stunden:"hour",tag:"d",tage:"d",tagen:"d",woche:"week",wochen:"week",monat:"month",monate:"month",monaten:"month",monats:"month",quartal:"quarter",quartals:"quarter",quartale:"quarter",quartalen:"quarter",a:"year",j:"year",jr:"year",jahr:"year",jahre:"year",jahren:"year",jahres:"year"};te.NUMBER_PATTERN=`(?:${wu.matchAnyPattern(te.INTEGER_WORD_DICTIONARY)}|[0-9]+|[0-9]+\\.[0-9]+|half(?:\\s*an?)?|an?\\b(?:\\s*few)?|few|several|a?\\s*couple\\s*(?:of)?)`;function kh(r){let e=r.toLowerCase();return te.INTEGER_WORD_DICTIONARY[e]!==void 0?te.INTEGER_WORD_DICTIONARY[e]:e==="a"||e==="an"?1:e.match(/few/)?3:e.match(/half/)?.5:e.match(/couple/)?2:e.match(/several/)?7:parseFloat(e)}te.parseNumberPattern=kh;te.YEAR_PATTERN="(?:[0-9]{1,4}(?:\\s*[vn]\\.?\\s*(?:C(?:hr)?|(?:u\\.?|d\\.?(?:\\s*g\\.?)?)?\\s*Z)\\.?|\\s*(?:u\\.?|d\\.?(?:\\s*g\\.)?)\\s*Z\\.?)?)";function bv(r){if(/v/i.test(r))return-parseInt(r.replace(/[^0-9]+/gi,""));if(/n/i.test(r))return parseInt(r.replace(/[^0-9]+/gi,""));if(/z/i.test(r))return parseInt(r.replace(/[^0-9]+/gi,""));let e=parseInt(r);return Tv.findMostLikelyADYear(e)}te.parseYear=bv;var Nh=`(${te.NUMBER_PATTERN})\\s{0,5}(${wu.matchAnyPattern(te.TIME_UNIT_DICTIONARY)})\\s{0,5}`,Ah=new RegExp(Nh,"i");te.TIME_UNITS_PATTERN=wu.repeatedTimeunitPattern("",Nh);function vv(r){let e={},t=r,n=Ah.exec(t);for(;n;)Ev(e,n),t=t.substring(n[0].length),n=Ah.exec(t);return e}te.parseTimeUnits=vv;function Ev(r,e){let t=kh(e[1]),n=te.TIME_UNIT_DICTIONARY[e[2].toLowerCase()];r[n]=t}});var Sh=h(Mu=>{"use strict";Object.defineProperty(Mu,"__esModule",{value:!0});var Ch=Kn(),Rv=Q(),wv=R(),Dv=Ur(),Mv=new RegExp(`(?:(?:\\,|\\(|\\\uFF08)\\s*)?(?:a[mn]\\s*?)?(?:(diese[mn]|letzte[mn]|n(?:\xE4|ae)chste[mn])\\s*)?(${Rv.matchAnyPattern(Ch.WEEKDAY_DICTIONARY)})(?:\\s*(?:\\,|\\)|\\\uFF09))?(?:\\s*(diese|letzte|n(?:\xE4|ae)chste)\\s*woche)?(?=\\W|$)`,"i"),Pv=1,Ov=3,Av=2,Du=class extends wv.AbstractParserWithWordBoundaryChecking{innerPattern(){return Mv}innerExtract(e,t){let n=t[Av].toLowerCase(),i=Ch.WEEKDAY_DICTIONARY[n],s=t[Pv],a=t[Ov],o=s||a;o=o||"",o=o.toLowerCase();let u=null;o.match(/letzte/)?u="last":o.match(/chste/)?u="next":o.match(/diese/)&&(u="this");let l=Dv.toDayJSWeekday(e.refDate,i,u);return e.createParsingComponents().assign("weekday",i).imply("day",l.date()).imply("month",l.month()+1).imply("year",l.year())}};Mu.default=Du});var qh=h(Pu=>{"use strict";Object.defineProperty(Pu,"__esModule",{value:!0});var gr=Ee(),kv=new RegExp("(^|\\s|T)(?:(?:um|von)\\s*)?(\\d{1,2})(?:h|:)?(?:(\\d{1,2})(?:m|:)?)?(?:(\\d{1,2})(?:s)?)?(?:\\s*Uhr)?(?:\\s*(morgens|vormittags|nachmittags|abends|nachts|am\\s+(?:Morgen|Vormittag|Nachmittag|Abend)|in\\s+der\\s+Nacht))?(?=\\W|$)","i"),Nv=new RegExp("^\\s*(\\-|\\\u2013|\\~|\\\u301C|bis(?:\\s+um)?|\\?)\\s*(\\d{1,2})(?:h|:)?(?:(\\d{1,2})(?:m|:)?)?(?:(\\d{1,2})(?:s)?)?(?:\\s*Uhr)?(?:\\s*(morgens|vormittags|nachmittags|abends|nachts|am\\s+(?:Morgen|Vormittag|Nachmittag|Abend)|in\\s+der\\s+Nacht))?(?=\\W|$)","i"),Cv=2,xh=3,Ih=4,Uh=5,dn=class{pattern(e){return kv}extract(e,t){let n=e.createParsingResult(t.index+t[1].length,t[0].substring(t[1].length));if(n.text.match(/^\d{4}$/)||(n.start=dn.extractTimeComponent(n.start.clone(),t),!n.start))return t.index+=t[0].length,null;let i=e.text.substring(t.index+t[0].length),s=Nv.exec(i);return s&&(n.end=dn.extractTimeComponent(n.start.clone(),s),n.end&&(n.text+=s[0])),n}static extractTimeComponent(e,t){let n=0,i=0,s=null;if(n=parseInt(t[Cv]),t[xh]!=null&&(i=parseInt(t[xh])),i>=60||n>24)return null;if(n>=12&&(s=gr.Meridiem.PM),t[Uh]!=null){if(n>12)return null;let a=t[Uh].toLowerCase();a.match(/morgen|vormittag/)&&(s=gr.Meridiem.AM,n==12&&(n=0)),a.match(/nachmittag|abend/)&&(s=gr.Meridiem.PM,n!=12&&(n+=12)),a.match(/nacht/)&&(n==12?(s=gr.Meridiem.AM,n=0):n<6?s=gr.Meridiem.AM:(s=gr.Meridiem.PM,n+=12))}if(e.assign("hour",n),e.assign("minute",i),s!==null?e.assign("meridiem",s):n<12?e.imply("meridiem",gr.Meridiem.AM):e.imply("meridiem",gr.Meridiem.PM),t[Ih]!=null){let a=parseInt(t[Ih]);if(a>=60)return null;e.assign("second",a)}return e}};Pu.default=dn});var Fh=h(Vn=>{"use strict";var Sv=Vn&&Vn.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Vn,"__esModule",{value:!0});var xv=Sv(At()),Ou=class extends xv.default{patternBetween(){return/^\s*(bis(?:\s*(?:am|zum))?|-)\s*$/i}};Vn.default=Ou});var Wh=h(Zn=>{"use strict";var Iv=Zn&&Zn.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Zn,"__esModule",{value:!0});var Uv=Iv(jt()),Au=class extends Uv.default{patternBetween(){return new RegExp("^\\s*(T|um|am|,|-)?\\s*$")}};Zn.default=Au});var ku=h(Qn=>{"use strict";var qv=Qn&&Qn.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Qn,"__esModule",{value:!0});var Fv=qv(K()),Fr=Ee(),Wv=R(),Lv=nt(),Yv=it(),Xn=class extends Wv.AbstractParserWithWordBoundaryChecking{innerPattern(e){return/(diesen)?\s*(morgen|vormittag|mittags?|nachmittag|abend|nacht|mitternacht)(?=\W|$)/i}innerExtract(e,t){let n=Fv.default(e.refDate),i=t[2].toLowerCase(),s=e.createParsingComponents();return Lv.implySimilarTime(s,n),Xn.extractTimeComponents(s,i)}static extractTimeComponents(e,t){switch(t){case"morgen":e.imply("hour",6),e.imply("minute",0),e.imply("second",0),e.imply("meridiem",Fr.Meridiem.AM);break;case"vormittag":e.imply("hour",9),e.imply("minute",0),e.imply("second",0),e.imply("meridiem",Fr.Meridiem.AM);break;case"mittag":case"mittags":e.imply("hour",12),e.imply("minute",0),e.imply("second",0),e.imply("meridiem",Fr.Meridiem.AM);break;case"nachmittag":e.imply("hour",15),e.imply("minute",0),e.imply("second",0),e.imply("meridiem",Fr.Meridiem.PM);break;case"abend":e.imply("hour",18),e.imply("minute",0),e.imply("second",0),e.imply("meridiem",Fr.Meridiem.PM);break;case"nacht":e.imply("hour",22),e.imply("minute",0),e.imply("second",0),e.imply("meridiem",Fr.Meridiem.PM);break;case"mitternacht":e.get("hour")>1&&(e=Yv.addImpliedTimeUnits(e,{day:1})),e.imply("hour",0),e.imply("minute",0),e.imply("second",0),e.imply("meridiem",Fr.Meridiem.AM);break}return e}};Qn.default=Xn});var $h=h(yt=>{"use strict";var $v=yt&&yt.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),jv=yt&&yt.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),Bv=yt&&yt.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&$v(e,r,t);return jv(e,r),e},Yh=yt&&yt.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(yt,"__esModule",{value:!0});var Gv=Yh(K()),Hv=R(),Wr=nt(),zv=Yh(ku()),Lh=Bv(Ht()),Kv=new RegExp("(jetzt|heute|morgen|\xFCbermorgen|uebermorgen|gestern|vorgestern|letzte\\s*nacht)(?:\\s*(morgen|vormittag|mittags?|nachmittag|abend|nacht|mitternacht))?(?=\\W|$)","i"),Vv=1,Zv=2,Nu=class extends Hv.AbstractParserWithWordBoundaryChecking{innerPattern(e){return Kv}innerExtract(e,t){let n=Gv.default(e.refDate),i=(t[Vv]||"").toLowerCase(),s=(t[Zv]||"").toLowerCase(),a=e.createParsingComponents();switch(i){case"jetzt":a=Lh.now(e.reference);break;case"heute":a=Lh.today(e.reference);break;case"morgen":Wr.assignTheNextDay(a,n);break;case"\xFCbermorgen":case"uebermorgen":n=n.add(1,"day"),Wr.assignTheNextDay(a,n);break;case"gestern":n=n.add(-1,"day"),Wr.assignSimilarDate(a,n),Wr.implySimilarTime(a,n);break;case"vorgestern":n=n.add(-2,"day"),Wr.assignSimilarDate(a,n),Wr.implySimilarTime(a,n);break;default:i.match(/letzte\s*nacht/)&&(n.hour()>6&&(n=n.add(-1,"day")),Wr.assignSimilarDate(a,n),a.imply("hour",0));break}return s&&(a=zv.default.extractTimeComponents(a,s)),a}};yt.default=Nu});var Kh=h(Su=>{"use strict";Object.defineProperty(Su,"__esModule",{value:!0});var Xv=xe(),Hh=Kn(),zh=Kn(),Qv=Q(),Jv=R(),eE=new RegExp(`(?:am\\s*?)?(?:den\\s*?)?([0-9]{1,2})\\.(?:\\s*(?:bis(?:\\s*(?:am|zum))?|\\-|\\\u2013|\\s)\\s*([0-9]{1,2})\\.?)?\\s*(${Qv.matchAnyPattern(Hh.MONTH_DICTIONARY)})(?:(?:-|/|,?\\s*)(${zh.YEAR_PATTERN}(?![^\\s]\\d)))?(?=\\W|$)`,"i"),jh=1,Bh=2,tE=3,Gh=4,Cu=class extends Jv.AbstractParserWithWordBoundaryChecking{innerPattern(){return eE}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=Hh.MONTH_DICTIONARY[t[tE].toLowerCase()],s=parseInt(t[jh]);if(s>31)return t.index=t.index+t[jh].length,null;if(n.start.assign("month",i),n.start.assign("day",s),t[Gh]){let a=zh.parseYear(t[Gh]);n.start.assign("year",a)}else{let a=Xv.findYearClosestToRef(e.refDate,s,i);n.start.imply("year",a)}if(t[Bh]){let a=parseInt(t[Bh]);n.end=n.start.clone(),n.end.assign("day",a)}return n}};Su.default=Cu});var Vh=h(Iu=>{"use strict";Object.defineProperty(Iu,"__esModule",{value:!0});var Us=Kn(),rE=pe(),nE=R(),iE=it(),sE=Q(),xu=class extends nE.AbstractParserWithWordBoundaryChecking{constructor(){super()}innerPattern(){return new RegExp(`(?:\\s*((?:n\xE4chste|kommende|folgende|letzte|vergangene|vorige|vor(?:her|an)gegangene)(?:s|n|m|r)?|vor|in)\\s*)?(${Us.NUMBER_PATTERN})?(?:\\s*(n\xE4chste|kommende|folgende|letzte|vergangene|vorige|vor(?:her|an)gegangene)(?:s|n|m|r)?)?\\s*(${sE.matchAnyPattern(Us.TIME_UNIT_DICTIONARY)})`,"i")}innerExtract(e,t){let n=t[2]?Us.parseNumberPattern(t[2]):1,i=Us.TIME_UNIT_DICTIONARY[t[4].toLowerCase()],s={};s[i]=n;let a=t[1]||t[3]||"";if(a=a.toLowerCase(),!!a)return(/vor/.test(a)||/letzte/.test(a)||/vergangen/.test(a))&&(s=iE.reverseTimeUnits(s)),rE.ParsingComponents.createRelativeFromReference(e.reference,s)}};Iu.default=xu});var Qh=h(De=>{"use strict";var gt=De&&De.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(De,"__esModule",{value:!0});De.createConfiguration=De.createCasualConfiguration=De.parseDate=De.parse=De.strict=De.casual=void 0;var aE=Bt(),Zh=mt(),oE=gt(qr()),uE=gt(nu()),lE=gt(Oh()),cE=gt(Sh()),dE=gt(qh()),fE=gt(Fh()),pE=gt(Wh()),hE=gt($h()),mE=gt(ku()),yE=gt(Kh()),gE=gt(Vh());De.casual=new Zh.Chrono(Xh());De.strict=new Zh.Chrono(Uu(!0));function _E(r,e,t){return De.casual.parse(r,e,t)}De.parse=_E;function TE(r,e,t){return De.casual.parseDate(r,e,t)}De.parseDate=TE;function Xh(r=!0){let e=Uu(!1,r);return e.parsers.unshift(new mE.default),e.parsers.unshift(new hE.default),e.parsers.unshift(new gE.default),e}De.createCasualConfiguration=Xh;function Uu(r=!0,e=!0){return aE.includeCommonConfiguration({parsers:[new uE.default,new oE.default(e),new lE.default,new dE.default,new yE.default,new cE.default],refiners:[new fE.default,new pE.default]},r)}De.createConfiguration=Uu});var em=h(_t=>{"use strict";var bE=_t&&_t.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),vE=_t&&_t.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),EE=_t&&_t.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&bE(e,r,t);return vE(e,r),e},RE=_t&&_t.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(_t,"__esModule",{value:!0});var wE=RE(K()),DE=Ee(),ME=R(),Jh=nt(),qs=EE(Ht()),qu=class extends ME.AbstractParserWithWordBoundaryChecking{innerPattern(e){return/(maintenant|aujourd'hui|demain|hier|cette\s*nuit|la\s*veille)(?=\W|$)/i}innerExtract(e,t){let n=wE.default(e.refDate),i=t[0].toLowerCase(),s=e.createParsingComponents();switch(i){case"maintenant":return qs.now(e.reference);case"aujourd'hui":return qs.today(e.reference);case"hier":return qs.yesterday(e.reference);case"demain":return qs.tomorrow(e.reference);default:i.match(/cette\s*nuit/)?(Jh.assignSimilarDate(s,n),s.imply("hour",22),s.imply("meridiem",DE.Meridiem.PM)):i.match(/la\s*veille/)&&(n=n.add(-1,"day"),Jh.assignSimilarDate(s,n),s.imply("hour",0))}return s}};_t.default=qu});var tm=h(Wu=>{"use strict";Object.defineProperty(Wu,"__esModule",{value:!0});var Jn=Ee(),PE=R(),Fu=class extends PE.AbstractParserWithWordBoundaryChecking{innerPattern(e){return/(cet?)?\s*(matin|soir|après-midi|aprem|a midi|à minuit)(?=\W|$)/i}innerExtract(e,t){let n=t[2].toLowerCase(),i=e.createParsingComponents();switch(n){case"apr\xE8s-midi":case"aprem":i.imply("hour",14),i.imply("minute",0),i.imply("meridiem",Jn.Meridiem.PM);break;case"soir":i.imply("hour",18),i.imply("minute",0),i.imply("meridiem",Jn.Meridiem.PM);break;case"matin":i.imply("hour",8),i.imply("minute",0),i.imply("meridiem",Jn.Meridiem.AM);break;case"a midi":i.imply("hour",12),i.imply("minute",0),i.imply("meridiem",Jn.Meridiem.AM);break;case"\xE0 minuit":i.imply("hour",0),i.imply("meridiem",Jn.Meridiem.AM);break}return i}};Wu.default=Fu});var rm=h(Yu=>{"use strict";Object.defineProperty(Yu,"__esModule",{value:!0});var OE=xr(),Lu=class extends OE.AbstractTimeExpressionParser{primaryPrefix(){return"(?:(?:[\xE0a])\\s*)?"}followingPhase(){return"\\s*(?:\\-|\\\u2013|\\~|\\\u301C|[\xE0a]|\\?)\\s*"}extractPrimaryTimeComponents(e,t){return t[0].match(/^\s*\d{4}\s*$/)?null:super.extractPrimaryTimeComponents(e,t)}};Yu.default=Lu});var nm=h(ei=>{"use strict";var AE=ei&&ei.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ei,"__esModule",{value:!0});var kE=AE(jt()),$u=class extends kE.default{patternBetween(){return new RegExp("^\\s*(T|\xE0|a|vers|de|,|-)?\\s*$")}};ei.default=$u});var im=h(ti=>{"use strict";var NE=ti&&ti.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ti,"__esModule",{value:!0});var CE=NE(At()),ju=class extends CE.default{patternBetween(){return/^\s*(à|a|-)\s*$/i}};ti.default=ju});var _r=h(V=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.parseTimeUnits=V.TIME_UNITS_PATTERN=V.parseYear=V.YEAR_PATTERN=V.parseOrdinalNumberPattern=V.ORDINAL_NUMBER_PATTERN=V.parseNumberPattern=V.NUMBER_PATTERN=V.TIME_UNIT_DICTIONARY=V.INTEGER_WORD_DICTIONARY=V.MONTH_DICTIONARY=V.WEEKDAY_DICTIONARY=void 0;var Bu=Q();V.WEEKDAY_DICTIONARY={dimanche:0,dim:0,lundi:1,lun:1,mardi:2,mar:2,mercredi:3,mer:3,jeudi:4,jeu:4,vendredi:5,ven:5,samedi:6,sam:6};V.MONTH_DICTIONARY={janvier:1,jan:1,"jan.":1,f\u00E9vrier:2,f\u00E9v:2,"f\xE9v.":2,fevrier:2,fev:2,"fev.":2,mars:3,mar:3,"mar.":3,avril:4,avr:4,"avr.":4,mai:5,juin:6,jun:6,juillet:7,juil:7,jul:7,"jul.":7,ao\u00FBt:8,aout:8,septembre:9,sep:9,"sep.":9,sept:9,"sept.":9,octobre:10,oct:10,"oct.":10,novembre:11,nov:11,"nov.":11,d\u00E9cembre:12,decembre:12,dec:12,"dec.":12};V.INTEGER_WORD_DICTIONARY={un:1,deux:2,trois:3,quatre:4,cinq:5,six:6,sept:7,huit:8,neuf:9,dix:10,onze:11,douze:12,treize:13};V.TIME_UNIT_DICTIONARY={sec:"second",seconde:"second",secondes:"second",min:"minute",mins:"minute",minute:"minute",minutes:"minute",h:"hour",hr:"hour",hrs:"hour",heure:"hour",heures:"hour",jour:"d",jours:"d",semaine:"week",semaines:"week",mois:"month",trimestre:"quarter",trimestres:"quarter",ans:"year",ann\u00E9e:"year",ann\u00E9es:"year"};V.NUMBER_PATTERN=`(?:${Bu.matchAnyPattern(V.INTEGER_WORD_DICTIONARY)}|[0-9]+|[0-9]+\\.[0-9]+|une?\\b|quelques?|demi-?)`;function am(r){let e=r.toLowerCase();return V.INTEGER_WORD_DICTIONARY[e]!==void 0?V.INTEGER_WORD_DICTIONARY[e]:e==="une"||e==="un"?1:e.match(/quelques?/)?3:e.match(/demi-?/)?.5:parseFloat(e)}V.parseNumberPattern=am;V.ORDINAL_NUMBER_PATTERN="(?:[0-9]{1,2}(?:er)?)";function SE(r){let e=r.toLowerCase();return e=e.replace(/(?:er)$/i,""),parseInt(e)}V.parseOrdinalNumberPattern=SE;V.YEAR_PATTERN="(?:[1-9][0-9]{0,3}\\s*(?:AC|AD|p\\.\\s*C(?:hr?)?\\.\\s*n\\.)|[1-2][0-9]{3}|[5-9][0-9])";function xE(r){if(/AC/i.test(r))return r=r.replace(/BC/i,""),-parseInt(r);if(/AD/i.test(r)||/C/i.test(r))return r=r.replace(/[^\d]+/i,""),parseInt(r);let e=parseInt(r);return e<100&&(e>50?e=e+1900:e=e+2e3),e}V.parseYear=xE;var om=`(${V.NUMBER_PATTERN})\\s{0,5}(${Bu.matchAnyPattern(V.TIME_UNIT_DICTIONARY)})\\s{0,5}`,sm=new RegExp(om,"i");V.TIME_UNITS_PATTERN=Bu.repeatedTimeunitPattern("",om);function IE(r){let e={},t=r,n=sm.exec(t);for(;n;)UE(e,n),t=t.substring(n[0].length),n=sm.exec(t);return e}V.parseTimeUnits=IE;function UE(r,e){let t=am(e[1]),n=V.TIME_UNIT_DICTIONARY[e[2].toLowerCase()];r[n]=t}});var lm=h(Hu=>{"use strict";Object.defineProperty(Hu,"__esModule",{value:!0});var um=_r(),qE=Q(),FE=R(),WE=Ur(),LE=new RegExp(`(?:(?:\\,|\\(|\\\uFF08)\\s*)?(?:(?:ce)\\s*)?(${qE.matchAnyPattern(um.WEEKDAY_DICTIONARY)})(?:\\s*(?:\\,|\\)|\\\uFF09))?(?:\\s*(dernier|prochain)\\s*)?(?=\\W|\\d|$)`,"i"),YE=1,$E=2,Gu=class extends FE.AbstractParserWithWordBoundaryChecking{innerPattern(){return LE}innerExtract(e,t){let n=t[YE].toLowerCase(),i=um.WEEKDAY_DICTIONARY[n];if(i===void 0)return null;let s=t[$E];s=s||"",s=s.toLowerCase();let a=null;s=="dernier"?a="last":s=="prochain"&&(a="next");let o=WE.toDayJSWeekday(e.refDate,i,a);return e.createParsingComponents().assign("weekday",i).imply("day",o.date()).imply("month",o.month()+1).imply("year",o.year())}};Hu.default=Gu});var pm=h(zu=>{"use strict";Object.defineProperty(zu,"__esModule",{value:!0});var ri=Ee(),jE=new RegExp("(^|\\s|T)(?:(?:[\xE0a])\\s*)?(\\d{1,2})(?:h|:)?(?:(\\d{1,2})(?:m|:)?)?(?:(\\d{1,2})(?:s|:)?)?(?:\\s*(A\\.M\\.|P\\.M\\.|AM?|PM?))?(?=\\W|$)","i"),BE=new RegExp("^\\s*(\\-|\\\u2013|\\~|\\\u301C|[\xE0a]|\\?)\\s*(\\d{1,2})(?:h|:)?(?:(\\d{1,2})(?:m|:)?)?(?:(\\d{1,2})(?:s|:)?)?(?:\\s*(A\\.M\\.|P\\.M\\.|AM?|PM?))?(?=\\W|$)","i"),GE=2,cm=3,dm=4,fm=5,fn=class{pattern(e){return jE}extract(e,t){let n=e.createParsingResult(t.index+t[1].length,t[0].substring(t[1].length));if(n.text.match(/^\d{4}$/)||(n.start=fn.extractTimeComponent(n.start.clone(),t),!n.start))return t.index+=t[0].length,null;let i=e.text.substring(t.index+t[0].length),s=BE.exec(i);return s&&(n.end=fn.extractTimeComponent(n.start.clone(),s),n.end&&(n.text+=s[0])),n}static extractTimeComponent(e,t){let n=0,i=0,s=null;if(n=parseInt(t[GE]),t[cm]!=null&&(i=parseInt(t[cm])),i>=60||n>24)return null;if(n>=12&&(s=ri.Meridiem.PM),t[fm]!=null){if(n>12)return null;let a=t[fm][0].toLowerCase();a=="a"&&(s=ri.Meridiem.AM,n==12&&(n=0)),a=="p"&&(s=ri.Meridiem.PM,n!=12&&(n+=12))}if(e.assign("hour",n),e.assign("minute",i),s!==null?e.assign("meridiem",s):n<12?e.imply("meridiem",ri.Meridiem.AM):e.imply("meridiem",ri.Meridiem.PM),t[dm]!=null){let a=parseInt(t[dm]);if(a>=60)return null;e.assign("second",a)}return e}};zu.default=fn});var Tm=h(Vu=>{"use strict";Object.defineProperty(Vu,"__esModule",{value:!0});var HE=xe(),gm=_r(),_m=_r(),Fs=_r(),zE=Q(),KE=R(),VE=new RegExp(`(?:on\\s*?)?(${Fs.ORDINAL_NUMBER_PATTERN})(?:\\s*(?:au|\\-|\\\u2013|jusqu'au?|\\s)\\s*(${Fs.ORDINAL_NUMBER_PATTERN}))?(?:-|/|\\s*(?:de)?\\s*)(${zE.matchAnyPattern(gm.MONTH_DICTIONARY)})(?:(?:-|/|,?\\s*)(${_m.YEAR_PATTERN}(?![^\\s]\\d)))?(?=\\W|$)`,"i"),hm=1,mm=2,ZE=3,ym=4,Ku=class extends KE.AbstractParserWithWordBoundaryChecking{innerPattern(){return VE}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=gm.MONTH_DICTIONARY[t[ZE].toLowerCase()],s=Fs.parseOrdinalNumberPattern(t[hm]);if(s>31)return t.index=t.index+t[hm].length,null;if(n.start.assign("month",i),n.start.assign("day",s),t[ym]){let a=_m.parseYear(t[ym]);n.start.assign("year",a)}else{let a=HE.findYearClosestToRef(e.refDate,s,i);n.start.imply("year",a)}if(t[mm]){let a=Fs.parseOrdinalNumberPattern(t[mm]);n.end=n.start.clone(),n.end.assign("day",a)}return n}};Vu.default=Ku});var vm=h(Xu=>{"use strict";Object.defineProperty(Xu,"__esModule",{value:!0});var bm=_r(),XE=pe(),QE=R(),JE=it(),Zu=class extends QE.AbstractParserWithWordBoundaryChecking{constructor(){super()}innerPattern(){return new RegExp(`il y a\\s*(${bm.TIME_UNITS_PATTERN})(?=(?:\\W|$))`,"i")}innerExtract(e,t){let n=bm.parseTimeUnits(t[1]),i=JE.reverseTimeUnits(n);return XE.ParsingComponents.createRelativeFromReference(e.reference,i)}};Xu.default=Zu});var Rm=h(Ju=>{"use strict";Object.defineProperty(Ju,"__esModule",{value:!0});var Em=_r(),e0=pe(),t0=R(),Qu=class extends t0.AbstractParserWithWordBoundaryChecking{innerPattern(){return new RegExp(`(?:dans|en|pour|pendant|de)\\s*(${Em.TIME_UNITS_PATTERN})(?=\\W|$)`,"i")}innerExtract(e,t){let n=Em.parseTimeUnits(t[1]);return e0.ParsingComponents.createRelativeFromReference(e.reference,n)}};Ju.default=Qu});var wm=h(tl=>{"use strict";Object.defineProperty(tl,"__esModule",{value:!0});var Ws=_r(),r0=pe(),n0=R(),i0=it(),s0=Q(),el=class extends n0.AbstractParserWithWordBoundaryChecking{constructor(){super()}innerPattern(){return new RegExp(`(?:les?|la|l'|du|des?)\\s*(${Ws.NUMBER_PATTERN})?(?:\\s*(prochaine?s?|derni[e\xE8]re?s?|pass[\xE9e]e?s?|pr[\xE9e]c[\xE9e]dents?|suivante?s?))?\\s*(${s0.matchAnyPattern(Ws.TIME_UNIT_DICTIONARY)})(?:\\s*(prochaine?s?|derni[e\xE8]re?s?|pass[\xE9e]e?s?|pr[\xE9e]c[\xE9e]dents?|suivante?s?))?`,"i")}innerExtract(e,t){let n=t[1]?Ws.parseNumberPattern(t[1]):1,i=Ws.TIME_UNIT_DICTIONARY[t[3].toLowerCase()],s={};s[i]=n;let a=t[2]||t[4]||"";if(a=a.toLowerCase(),!!a)return(/derni[eè]re?s?/.test(a)||/pass[ée]e?s?/.test(a)||/pr[ée]c[ée]dents?/.test(a))&&(s=i0.reverseTimeUnits(s)),r0.ParsingComponents.createRelativeFromReference(e.reference,s)}};tl.default=el});var Pm=h(Me=>{"use strict";var st=Me&&Me.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Me,"__esModule",{value:!0});Me.createConfiguration=Me.createCasualConfiguration=Me.parseDate=Me.parse=Me.strict=Me.casual=void 0;var a0=Bt(),Dm=mt(),o0=st(em()),u0=st(tm()),l0=st(qr()),c0=st(rm()),d0=st(nm()),f0=st(im()),p0=st(lm()),h0=st(pm()),m0=st(Tm()),y0=st(vm()),g0=st(Rm()),_0=st(wm());Me.casual=new Dm.Chrono(Mm());Me.strict=new Dm.Chrono(rl(!0));function T0(r,e,t){return Me.casual.parse(r,e,t)}Me.parse=T0;function b0(r,e,t){return Me.casual.parseDate(r,e,t)}Me.parseDate=b0;function Mm(r=!0){let e=rl(!1,r);return e.parsers.unshift(new o0.default),e.parsers.unshift(new u0.default),e.parsers.unshift(new _0.default),e}Me.createCasualConfiguration=Mm;function rl(r=!0,e=!0){return a0.includeCommonConfiguration({parsers:[new l0.default(e),new m0.default,new c0.default,new h0.default,new y0.default,new g0.default,new p0.default],refiners:[new d0.default,new f0.default]},r)}Me.createConfiguration=rl});var Om=h(Ls=>{"use strict";Object.defineProperty(Ls,"__esModule",{value:!0});Ls.toHankaku=void 0;function v0(r){return String(r).replace(/\u2019/g,"'").replace(/\u201D/g,'"').replace(/\u3000/g," ").replace(/\uFFE5/g,"\xA5").replace(/[\uFF01\uFF03-\uFF06\uFF08\uFF09\uFF0C-\uFF19\uFF1C-\uFF1F\uFF21-\uFF3B\uFF3D\uFF3F\uFF41-\uFF5B\uFF5D\uFF5E]/g,E0)}Ls.toHankaku=v0;function E0(r){return String.fromCharCode(r.charCodeAt(0)-65248)}});var km=h(ni=>{"use strict";var R0=ni&&ni.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ni,"__esModule",{value:!0});var nl=Om(),w0=xe(),D0=R0(K()),M0=/(?:(?:([同今本])|((昭和|平成|令和)?([0-90-9]{1,4}|元)))年\s*)?([0-90-9]{1,2})月\s*([0-90-9]{1,2})日/i,Am=1,P0=2,il=3,O0=4,A0=5,k0=6,sl=class{pattern(){return M0}extract(e,t){let n=parseInt(nl.toHankaku(t[A0])),i=parseInt(nl.toHankaku(t[k0])),s=e.createParsingComponents({day:i,month:n});if(t[Am]&&t[Am].match("\u540C|\u4ECA|\u672C")){let a=D0.default(e.refDate);s.assign("year",a.year())}if(t[P0]){let a=t[O0],o=a=="\u5143"?1:parseInt(nl.toHankaku(a));t[il]=="\u4EE4\u548C"?o+=2018:t[il]=="\u5E73\u6210"?o+=1988:t[il]=="\u662D\u548C"&&(o+=1925),s.assign("year",o)}else{let a=w0.findYearClosestToRef(e.refDate,i,n);s.imply("year",a)}return s}};ni.default=sl});var Nm=h(ii=>{"use strict";var N0=ii&&ii.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ii,"__esModule",{value:!0});var C0=N0(At()),al=class extends C0.default{patternBetween(){return/^\s*(から|ー|-)\s*$/i}};ii.default=al});var Sm=h(Tt=>{"use strict";var S0=Tt&&Tt.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),x0=Tt&&Tt.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),I0=Tt&&Tt.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&S0(e,r,t);return x0(e,r),e},U0=Tt&&Tt.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Tt,"__esModule",{value:!0});var q0=U0(K()),Cm=Ee(),ol=I0(Ht()),F0=/今日|当日|昨日|明日|今夜|今夕|今晩|今朝/i,ul=class{pattern(){return F0}extract(e,t){let n=t[0],i=q0.default(e.refDate),s=e.createParsingComponents();switch(n){case"\u6628\u65E5":return ol.yesterday(e.reference);case"\u660E\u65E5":return ol.tomorrow(e.reference);case"\u4ECA\u65E5":case"\u5F53\u65E5":return ol.today(e.reference)}return n=="\u4ECA\u591C"||n=="\u4ECA\u5915"||n=="\u4ECA\u6669"?(s.imply("hour",22),s.assign("meridiem",Cm.Meridiem.PM)):n.match("\u4ECA\u671D")&&(s.imply("hour",6),s.assign("meridiem",Cm.Meridiem.AM)),s.assign("day",i.date()),s.assign("month",i.month()+1),s.assign("year",i.year()),s}};Tt.default=ul});var Um=h(Pe=>{"use strict";var ll=Pe&&Pe.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Pe,"__esModule",{value:!0});Pe.createConfiguration=Pe.createCasualConfiguration=Pe.parseDate=Pe.parse=Pe.strict=Pe.casual=void 0;var W0=ll(km()),L0=ll(Nm()),Y0=ll(Sm()),xm=mt();Pe.casual=new xm.Chrono(Im());Pe.strict=new xm.Chrono(cl());function $0(r,e,t){return Pe.casual.parse(r,e,t)}Pe.parse=$0;function j0(r,e,t){return Pe.casual.parseDate(r,e,t)}Pe.parseDate=j0;function Im(){let r=cl();return r.parsers.unshift(new Y0.default),r}Pe.createCasualConfiguration=Im;function cl(){return{parsers:[new W0.default],refiners:[new L0.default]}}Pe.createConfiguration=cl});var Ys=h(Nt=>{"use strict";Object.defineProperty(Nt,"__esModule",{value:!0});Nt.parseYear=Nt.YEAR_PATTERN=Nt.MONTH_DICTIONARY=Nt.WEEKDAY_DICTIONARY=void 0;Nt.WEEKDAY_DICTIONARY={domingo:0,dom:0,segunda:1,"segunda-feira":1,seg:1,ter\u00E7a:2,"ter\xE7a-feira":2,ter:2,quarta:3,"quarta-feira":3,qua:3,quinta:4,"quinta-feira":4,qui:4,sexta:5,"sexta-feira":5,sex:5,s\u00E1bado:6,sabado:6,sab:6};Nt.MONTH_DICTIONARY={janeiro:1,jan:1,"jan.":1,fevereiro:2,fev:2,"fev.":2,mar\u00E7o:3,mar:3,"mar.":3,abril:4,abr:4,"abr.":4,maio:5,mai:5,"mai.":5,junho:6,jun:6,"jun.":6,julho:7,jul:7,"jul.":7,agosto:8,ago:8,"ago.":8,setembro:9,set:9,"set.":9,outubro:10,out:10,"out.":10,novembro:11,nov:11,"nov.":11,dezembro:12,dez:12,"dez.":12};Nt.YEAR_PATTERN="[0-9]{1,4}(?![^\\s]\\d)(?:\\s*[a|d]\\.?\\s*c\\.?|\\s*a\\.?\\s*d\\.?)?";function B0(r){if(r.match(/^[0-9]{1,4}$/)){let e=parseInt(r);return e<100&&(e>50?e=e+1900:e=e+2e3),e}return r.match(/a\.?\s*c\.?/i)?(r=r.replace(/a\.?\s*c\.?/i,""),-parseInt(r)):parseInt(r)}Nt.parseYear=B0});var Fm=h(fl=>{"use strict";Object.defineProperty(fl,"__esModule",{value:!0});var qm=Ys(),G0=Q(),H0=R(),z0=Ur(),K0=new RegExp(`(?:(?:\\,|\\(|\\\uFF08)\\s*)?(?:(este|esta|passado|pr[o\xF3]ximo)\\s*)?(${G0.matchAnyPattern(qm.WEEKDAY_DICTIONARY)})(?:\\s*(?:\\,|\\)|\\\uFF09))?(?:\\s*(este|esta|passado|pr[\xF3o]ximo)\\s*semana)?(?=\\W|\\d|$)`,"i"),V0=1,Z0=2,X0=3,dl=class extends H0.AbstractParserWithWordBoundaryChecking{innerPattern(){return K0}innerExtract(e,t){let n=t[Z0].toLowerCase(),i=qm.WEEKDAY_DICTIONARY[n];if(i===void 0)return null;let s=t[V0],a=t[X0],o=s||a||"";o=o.toLowerCase();let u=null;o=="passado"?u="this":o=="pr\xF3ximo"||o=="proximo"?u="next":o=="este"&&(u="this");let l=z0.toDayJSWeekday(e.refDate,i,u);return e.createParsingComponents().assign("weekday",i).imply("day",l.date()).imply("month",l.month()+1).imply("year",l.year())}};fl.default=dl});var Wm=h(hl=>{"use strict";Object.defineProperty(hl,"__esModule",{value:!0});var Q0=xr(),pl=class extends Q0.AbstractTimeExpressionParser{primaryPrefix(){return"(?:(?:ao?|\xE0s?|das|da|de|do)\\s*)?"}followingPhase(){return"\\s*(?:\\-|\\\u2013|\\~|\\\u301C|a(?:o)?|\\?)\\s*"}};hl.default=pl});var Lm=h(si=>{"use strict";var J0=si&&si.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(si,"__esModule",{value:!0});var eR=J0(jt()),ml=class extends eR.default{patternBetween(){return new RegExp("^\\s*(?:,|\xE0)?\\s*$")}};si.default=ml});var Ym=h(ai=>{"use strict";var tR=ai&&ai.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ai,"__esModule",{value:!0});var rR=tR(At()),yl=class extends rR.default{patternBetween(){return/^\s*(?:-)\s*$/i}};ai.default=yl});var zm=h(_l=>{"use strict";Object.defineProperty(_l,"__esModule",{value:!0});var nR=xe(),Gm=Ys(),Hm=Ys(),iR=Q(),sR=R(),aR=new RegExp(`([0-9]{1,2})(?:\xBA|\xAA|\xB0)?(?:\\s*(?:desde|de|\\-|\\\u2013|ao?|\\s)\\s*([0-9]{1,2})(?:\xBA|\xAA|\xB0)?)?\\s*(?:de)?\\s*(?:-|/|\\s*(?:de|,)?\\s*)(${iR.matchAnyPattern(Gm.MONTH_DICTIONARY)})(?:\\s*(?:de|,)?\\s*(${Hm.YEAR_PATTERN}))?(?=\\W|$)`,"i"),$m=1,jm=2,oR=3,Bm=4,gl=class extends sR.AbstractParserWithWordBoundaryChecking{innerPattern(){return aR}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=Gm.MONTH_DICTIONARY[t[oR].toLowerCase()],s=parseInt(t[$m]);if(s>31)return t.index=t.index+t[$m].length,null;if(n.start.assign("month",i),n.start.assign("day",s),t[Bm]){let a=Hm.parseYear(t[Bm]);n.start.assign("year",a)}else{let a=nR.findYearClosestToRef(e.refDate,s,i);n.start.imply("year",a)}if(t[jm]){let a=parseInt(t[jm]);n.end=n.start.clone(),n.end.assign("day",a)}return n}};_l.default=gl});var Km=h(zt=>{"use strict";var uR=zt&&zt.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),lR=zt&&zt.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),cR=zt&&zt.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&uR(e,r,t);return lR(e,r),e};Object.defineProperty(zt,"__esModule",{value:!0});var dR=R(),$s=cR(Ht()),Tl=class extends dR.AbstractParserWithWordBoundaryChecking{innerPattern(e){return/(agora|hoje|amanha|amanhã|ontem)(?=\W|$)/i}innerExtract(e,t){let n=t[0].toLowerCase(),i=e.createParsingComponents();switch(n){case"agora":return $s.now(e.reference);case"hoje":return $s.today(e.reference);case"amanha":case"amanh\xE3":return $s.tomorrow(e.reference);case"ontem":return $s.yesterday(e.reference)}return i}};zt.default=Tl});var Vm=h(oi=>{"use strict";var fR=oi&&oi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(oi,"__esModule",{value:!0});var js=Ee(),pR=R(),hR=nt(),mR=fR(K()),bl=class extends pR.AbstractParserWithWordBoundaryChecking{innerPattern(){return/(?:esta\s*)?(manha|manhã|tarde|meia-noite|meio-dia|noite)(?=\W|$)/i}innerExtract(e,t){let n=mR.default(e.refDate),i=e.createParsingComponents();switch(t[1].toLowerCase()){case"tarde":i.imply("meridiem",js.Meridiem.PM),i.imply("hour",15);break;case"noite":i.imply("meridiem",js.Meridiem.PM),i.imply("hour",22);break;case"manha":case"manh\xE3":i.imply("meridiem",js.Meridiem.AM),i.imply("hour",6);break;case"meia-noite":hR.assignTheNextDay(i,n),i.imply("hour",0),i.imply("minute",0),i.imply("second",0);break;case"meio-dia":i.imply("meridiem",js.Meridiem.AM),i.imply("hour",12);break}return i}};oi.default=bl});var Qm=h(Oe=>{"use strict";var Tr=Oe&&Oe.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Oe,"__esModule",{value:!0});Oe.createConfiguration=Oe.createCasualConfiguration=Oe.parseDate=Oe.parse=Oe.strict=Oe.casual=void 0;var yR=Bt(),Zm=mt(),gR=Tr(qr()),_R=Tr(Fm()),TR=Tr(Wm()),bR=Tr(Lm()),vR=Tr(Ym()),ER=Tr(zm()),RR=Tr(Km()),wR=Tr(Vm());Oe.casual=new Zm.Chrono(Xm());Oe.strict=new Zm.Chrono(vl(!0));function DR(r,e,t){return Oe.casual.parse(r,e,t)}Oe.parse=DR;function MR(r,e,t){return Oe.casual.parseDate(r,e,t)}Oe.parseDate=MR;function Xm(r=!0){let e=vl(!1,r);return e.parsers.push(new RR.default),e.parsers.push(new wR.default),e}Oe.createCasualConfiguration=Xm;function vl(r=!0,e=!0){return yR.includeCommonConfiguration({parsers:[new gR.default(e),new _R.default,new TR.default,new ER.default],refiners:[new bR.default,new vR.default]},r)}Oe.createConfiguration=vl});var Jm=h(ui=>{"use strict";var PR=ui&&ui.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ui,"__esModule",{value:!0});var OR=PR(At()),El=class extends OR.default{patternBetween(){return/^\s*(tot|-)\s*$/i}};ui.default=El});var ey=h(li=>{"use strict";var AR=li&&li.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(li,"__esModule",{value:!0});var kR=AR(jt()),Rl=class extends kR.default{patternBetween(){return new RegExp("^\\s*(om|na|voor|in de|,|-)?\\s*$")}};li.default=Rl});var ty=h(Kt=>{"use strict";var NR=Kt&&Kt.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),CR=Kt&&Kt.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),SR=Kt&&Kt.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&NR(e,r,t);return CR(e,r),e};Object.defineProperty(Kt,"__esModule",{value:!0});var xR=R(),Bs=SR(Ht()),wl=class extends xR.AbstractParserWithWordBoundaryChecking{innerPattern(e){return/(nu|vandaag|morgen|morgend|gisteren)(?=\W|$)/i}innerExtract(e,t){let n=t[0].toLowerCase(),i=e.createParsingComponents();switch(n){case"nu":return Bs.now(e.reference);case"vandaag":return Bs.today(e.reference);case"morgen":case"morgend":return Bs.tomorrow(e.reference);case"gisteren":return Bs.yesterday(e.reference)}return i}};Kt.default=wl});var ry=h(ci=>{"use strict";var IR=ci&&ci.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ci,"__esModule",{value:!0});var Gs=Ee(),UR=R(),qR=IR(K()),FR=nt(),WR=1,LR=2,Dl=class extends UR.AbstractParserWithWordBoundaryChecking{innerPattern(){return/(deze)?\s*(namiddag|avond|middernacht|ochtend|middag|'s middags|'s avonds|'s ochtends)(?=\W|$)/i}innerExtract(e,t){let n=qR.default(e.refDate),i=e.createParsingComponents();switch(t[WR]==="deze"&&(i.assign("day",e.refDate.getDate()),i.assign("month",e.refDate.getMonth()+1),i.assign("year",e.refDate.getFullYear())),t[LR].toLowerCase()){case"namiddag":case"'s namiddags":i.imply("meridiem",Gs.Meridiem.PM),i.imply("hour",15);break;case"avond":case"'s avonds'":i.imply("meridiem",Gs.Meridiem.PM),i.imply("hour",20);break;case"middernacht":FR.assignTheNextDay(i,n),i.imply("hour",0),i.imply("minute",0),i.imply("second",0);break;case"ochtend":case"'s ochtends":i.imply("meridiem",Gs.Meridiem.AM),i.imply("hour",6);break;case"middag":case"'s middags":i.imply("meridiem",Gs.Meridiem.AM),i.imply("hour",12);break}return i}};ci.default=Dl});var Xe=h($=>{"use strict";Object.defineProperty($,"__esModule",{value:!0});$.parseTimeUnits=$.TIME_UNITS_PATTERN=$.parseYear=$.YEAR_PATTERN=$.parseOrdinalNumberPattern=$.ORDINAL_NUMBER_PATTERN=$.parseNumberPattern=$.NUMBER_PATTERN=$.TIME_UNIT_DICTIONARY=$.ORDINAL_WORD_DICTIONARY=$.INTEGER_WORD_DICTIONARY=$.MONTH_DICTIONARY=$.WEEKDAY_DICTIONARY=void 0;var Hs=Q(),YR=xe();$.WEEKDAY_DICTIONARY={zondag:0,zon:0,"zon.":0,zo:0,"zo.":0,maandag:1,ma:1,"ma.":1,dinsdag:2,din:2,"din.":2,di:2,"di.":2,woensdag:3,woe:3,"woe.":3,wo:3,"wo.":3,donderdag:4,dond:4,"dond.":4,do:4,"do.":4,vrijdag:5,vrij:5,"vrij.":5,vr:5,"vr.":5,zaterdag:6,zat:6,"zat.":6,za:6,"za.":6};$.MONTH_DICTIONARY={januari:1,jan:1,"jan.":1,februari:2,feb:2,"feb.":2,maart:3,mar:3,"mar.":3,april:4,apr:4,"apr.":4,mei:5,juni:6,jun:6,"jun.":6,juli:7,jul:7,"jul.":7,augustus:8,aug:8,"aug.":8,september:9,sep:9,"sep.":9,sept:9,"sept.":9,oktober:10,okt:10,"okt.":10,november:11,nov:11,"nov.":11,december:12,dec:12,"dec.":12};$.INTEGER_WORD_DICTIONARY={een:1,twee:2,drie:3,vier:4,vijf:5,zes:6,zeven:7,acht:8,negen:9,tien:10,elf:11,twaalf:12};$.ORDINAL_WORD_DICTIONARY={eerste:1,tweede:2,derde:3,vierde:4,vijfde:5,zesde:6,zevende:7,achtste:8,negende:9,tiende:10,elfde:11,twaalfde:12,dertiende:13,veertiende:14,vijftiende:15,zestiende:16,zeventiende:17,achttiende:18,negentiende:19,twintigste:20,eenentwintigste:21,twee\u00EBntwintigste:22,drieentwintigste:23,vierentwintigste:24,vijfentwintigste:25,zesentwintigste:26,zevenentwintigste:27,achtentwintig:28,negenentwintig:29,dertigste:30,eenendertigste:31};$.TIME_UNIT_DICTIONARY={sec:"second",second:"second",seconden:"second",min:"minute",mins:"minute",minute:"minute",minuut:"minute",minuten:"minute",minuutje:"minute",h:"hour",hr:"hour",hrs:"hour",uur:"hour",u:"hour",uren:"hour",dag:"d",dagen:"d",week:"week",weken:"week",maand:"month",maanden:"month",jaar:"year",jr:"year",jaren:"year"};$.NUMBER_PATTERN=`(?:${Hs.matchAnyPattern($.INTEGER_WORD_DICTIONARY)}|[0-9]+|[0-9]+[\\.,][0-9]+|halve?|half|paar)`;function iy(r){let e=r.toLowerCase();return $.INTEGER_WORD_DICTIONARY[e]!==void 0?$.INTEGER_WORD_DICTIONARY[e]:e==="paar"?2:e==="half"||e.match(/halve?/)?.5:parseFloat(e.replace(",","."))}$.parseNumberPattern=iy;$.ORDINAL_NUMBER_PATTERN=`(?:${Hs.matchAnyPattern($.ORDINAL_WORD_DICTIONARY)}|[0-9]{1,2}(?:ste|de)?)`;function $R(r){let e=r.toLowerCase();return $.ORDINAL_WORD_DICTIONARY[e]!==void 0?$.ORDINAL_WORD_DICTIONARY[e]:(e=e.replace(/(?:ste|de)$/i,""),parseInt(e))}$.parseOrdinalNumberPattern=$R;$.YEAR_PATTERN="(?:[1-9][0-9]{0,3}\\s*(?:voor Christus|na Christus)|[1-2][0-9]{3}|[5-9][0-9])";function jR(r){if(/voor Christus/i.test(r))return r=r.replace(/voor Christus/i,""),-parseInt(r);if(/na Christus/i.test(r))return r=r.replace(/na Christus/i,""),parseInt(r);let e=parseInt(r);return YR.findMostLikelyADYear(e)}$.parseYear=jR;var sy=`(${$.NUMBER_PATTERN})\\s{0,5}(${Hs.matchAnyPattern($.TIME_UNIT_DICTIONARY)})\\s{0,5}`,ny=new RegExp(sy,"i");$.TIME_UNITS_PATTERN=Hs.repeatedTimeunitPattern("(?:(?:binnen|in)\\s*)?",sy);function BR(r){let e={},t=r,n=ny.exec(t);for(;n;)GR(e,n),t=t.substring(n[0].length),n=ny.exec(t);return e}$.parseTimeUnits=BR;function GR(r,e){let t=iy(e[1]),n=$.TIME_UNIT_DICTIONARY[e[2].toLowerCase()];r[n]=t}});var oy=h(Pl=>{"use strict";Object.defineProperty(Pl,"__esModule",{value:!0});var ay=Xe(),HR=pe(),zR=R(),Ml=class extends zR.AbstractParserWithWordBoundaryChecking{innerPattern(){return new RegExp("(?:binnen|in|binnen de|voor)\\s*("+ay.TIME_UNITS_PATTERN+")(?=\\W|$)","i")}innerExtract(e,t){let n=ay.parseTimeUnits(t[1]);return HR.ParsingComponents.createRelativeFromReference(e.reference,n)}};Pl.default=Ml});var ly=h(Al=>{"use strict";Object.defineProperty(Al,"__esModule",{value:!0});var uy=Xe(),KR=Q(),VR=R(),ZR=Ur(),XR=new RegExp(`(?:(?:\\,|\\(|\\\uFF08)\\s*)?(?:op\\s*?)?(?:(deze|vorige|volgende)\\s*(?:week\\s*)?)?(${KR.matchAnyPattern(uy.WEEKDAY_DICTIONARY)})(?=\\W|$)`,"i"),QR=1,JR=2,ew=3,Ol=class extends VR.AbstractParserWithWordBoundaryChecking{innerPattern(){return XR}innerExtract(e,t){let n=t[JR].toLowerCase(),i=uy.WEEKDAY_DICTIONARY[n],s=t[QR],a=t[ew],o=s||a;o=o||"",o=o.toLowerCase();let u=null;o=="vorige"?u="last":o=="volgende"?u="next":o=="deze"&&(u="this");let l=ZR.toDayJSWeekday(e.refDate,i,u);return e.createParsingComponents().assign("weekday",i).imply("day",l.date()).imply("month",l.month()+1).imply("year",l.year())}};Al.default=Ol});var my=h(Nl=>{"use strict";Object.defineProperty(Nl,"__esModule",{value:!0});var tw=xe(),py=Xe(),zs=Xe(),hy=Xe(),rw=Q(),nw=R(),iw=new RegExp(`(?:on\\s*?)?(${zs.ORDINAL_NUMBER_PATTERN})(?:\\s*(?:tot|\\-|\\\u2013|until|through|till|\\s)\\s*(${zs.ORDINAL_NUMBER_PATTERN}))?(?:-|/|\\s*(?:of)?\\s*)(`+rw.matchAnyPattern(py.MONTH_DICTIONARY)+`)(?:(?:-|/|,?\\s*)(${hy.YEAR_PATTERN}(?![^\\s]\\d)))?(?=\\W|$)`,"i"),sw=3,cy=1,dy=2,fy=4,kl=class extends nw.AbstractParserWithWordBoundaryChecking{innerPattern(){return iw}innerExtract(e,t){let n=py.MONTH_DICTIONARY[t[sw].toLowerCase()],i=zs.parseOrdinalNumberPattern(t[cy]);if(i>31)return t.index=t.index+t[cy].length,null;let s=e.createParsingComponents({day:i,month:n});if(t[fy]){let u=hy.parseYear(t[fy]);s.assign("year",u)}else{let u=tw.findYearClosestToRef(e.refDate,i,n);s.imply("year",u)}if(!t[dy])return s;let a=zs.parseOrdinalNumberPattern(t[dy]),o=e.createParsingResult(t.index,t[0]);return o.start=s,o.end=s.clone(),o.end.assign("day",a),o}};Nl.default=kl});var Ty=h(Sl=>{"use strict";Object.defineProperty(Sl,"__esModule",{value:!0});var gy=Xe(),aw=xe(),ow=Q(),_y=Xe(),uw=R(),lw=new RegExp(`(${ow.matchAnyPattern(gy.MONTH_DICTIONARY)})\\s*(?:[,-]?\\s*(${_y.YEAR_PATTERN})?)?(?=[^\\s\\w]|\\s+[^0-9]|\\s+$|$)`,"i"),cw=1,yy=2,Cl=class extends uw.AbstractParserWithWordBoundaryChecking{innerPattern(){return lw}innerExtract(e,t){let n=e.createParsingComponents();n.imply("day",1);let i=t[cw],s=gy.MONTH_DICTIONARY[i.toLowerCase()];if(n.assign("month",s),t[yy]){let a=_y.parseYear(t[yy]);n.assign("year",a)}else{let a=aw.findYearClosestToRef(e.refDate,1,s);n.imply("year",a)}return n}};Sl.default=Cl});var by=h(Il=>{"use strict";Object.defineProperty(Il,"__esModule",{value:!0});var dw=R(),fw=new RegExp("([0-9]|0[1-9]|1[012])/([0-9]{4})","i"),pw=1,hw=2,xl=class extends dw.AbstractParserWithWordBoundaryChecking{innerPattern(){return fw}innerExtract(e,t){let n=parseInt(t[hw]),i=parseInt(t[pw]);return e.createParsingComponents().imply("day",1).assign("month",i).assign("year",n)}};Il.default=xl});var vy=h(ql=>{"use strict";Object.defineProperty(ql,"__esModule",{value:!0});var mw=xr(),Ul=class extends mw.AbstractTimeExpressionParser{primaryPrefix(){return"(?:(?:om)\\s*)?"}followingPhase(){return"\\s*(?:\\-|\\\u2013|\\~|\\\u301C|om|\\?)\\s*"}primarySuffix(){return"(?:\\s*(?:uur))?(?!/)(?=\\W|$)"}extractPrimaryTimeComponents(e,t){return t[0].match(/^\s*\d{4}\s*$/)?null:super.extractPrimaryTimeComponents(e,t)}};ql.default=Ul});var wy=h(Wl=>{"use strict";Object.defineProperty(Wl,"__esModule",{value:!0});var Ry=Xe(),yw=Q(),gw=R(),_w=new RegExp(`([0-9]{4})[\\.\\/\\s](?:(${yw.matchAnyPattern(Ry.MONTH_DICTIONARY)})|([0-9]{1,2}))[\\.\\/\\s]([0-9]{1,2})(?=\\W|$)`,"i"),Tw=1,bw=2,Ey=3,vw=4,Fl=class extends gw.AbstractParserWithWordBoundaryChecking{innerPattern(){return _w}innerExtract(e,t){let n=t[Ey]?parseInt(t[Ey]):Ry.MONTH_DICTIONARY[t[bw].toLowerCase()];if(n<1||n>12)return null;let i=parseInt(t[Tw]);return{day:parseInt(t[vw]),month:n,year:i}}};Wl.default=Fl});var Dy=h(di=>{"use strict";var Ew=di&&di.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(di,"__esModule",{value:!0});var Rw=R(),Ks=Ee(),Ll=nt(),ww=Ew(K()),Dw=1,Mw=2,Yl=class extends Rw.AbstractParserWithWordBoundaryChecking{innerPattern(e){return/(gisteren|morgen|van)(ochtend|middag|namiddag|avond|nacht)(?=\W|$)/i}innerExtract(e,t){let n=t[Dw].toLowerCase(),i=t[Mw].toLowerCase(),s=e.createParsingComponents(),a=ww.default(e.refDate);switch(n){case"gisteren":Ll.assignSimilarDate(s,a.add(-1,"day"));break;case"van":Ll.assignSimilarDate(s,a);break;case"morgen":Ll.assignTheNextDay(s,a);break}switch(i){case"ochtend":s.imply("meridiem",Ks.Meridiem.AM),s.imply("hour",6);break;case"middag":s.imply("meridiem",Ks.Meridiem.AM),s.imply("hour",12);break;case"namiddag":s.imply("meridiem",Ks.Meridiem.PM),s.imply("hour",15);break;case"avond":s.imply("meridiem",Ks.Meridiem.PM),s.imply("hour",20);break}return s}};di.default=Yl});var Py=h(jl=>{"use strict";Object.defineProperty(jl,"__esModule",{value:!0});var My=Xe(),Pw=pe(),Ow=R(),Aw=it(),kw=new RegExp(`(deze|vorige|afgelopen|komende|over|\\+|-)\\s*(${My.TIME_UNITS_PATTERN})(?=\\W|$)`,"i"),$l=class extends Ow.AbstractParserWithWordBoundaryChecking{innerPattern(){return kw}innerExtract(e,t){let n=t[1].toLowerCase(),i=My.parseTimeUnits(t[2]);switch(n){case"vorige":case"afgelopen":case"-":i=Aw.reverseTimeUnits(i);break}return Pw.ParsingComponents.createRelativeFromReference(e.reference,i)}};jl.default=$l});var ky=h(fi=>{"use strict";var Nw=fi&&fi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(fi,"__esModule",{value:!0});var Ay=Xe(),Oy=pe(),Cw=Nw(K()),Sw=R(),xw=Q(),Iw=new RegExp(`(dit|deze|komende|volgend|volgende|afgelopen|vorige)\\s*(${xw.matchAnyPattern(Ay.TIME_UNIT_DICTIONARY)})(?=\\s*)(?=\\W|$)`,"i"),Uw=1,qw=2,Bl=class extends Sw.AbstractParserWithWordBoundaryChecking{innerPattern(){return Iw}innerExtract(e,t){let n=t[Uw].toLowerCase(),i=t[qw].toLowerCase(),s=Ay.TIME_UNIT_DICTIONARY[i];if(n=="volgend"||n=="volgende"||n=="komende"){let u={};return u[s]=1,Oy.ParsingComponents.createRelativeFromReference(e.reference,u)}if(n=="afgelopen"||n=="vorige"){let u={};return u[s]=-1,Oy.ParsingComponents.createRelativeFromReference(e.reference,u)}let a=e.createParsingComponents(),o=Cw.default(e.reference.instant);return i.match(/week/i)?(o=o.add(-o.get("d"),"d"),a.imply("day",o.date()),a.imply("month",o.month()+1),a.imply("year",o.year())):i.match(/maand/i)?(o=o.add(-o.date()+1,"d"),a.imply("day",o.date()),a.assign("year",o.year()),a.assign("month",o.month()+1)):i.match(/jaar/i)&&(o=o.add(-o.date()+1,"d"),o=o.add(-o.month(),"month"),a.imply("day",o.date()),a.imply("month",o.month()+1),a.assign("year",o.year())),a}};fi.default=Bl});var Ny=h(zl=>{"use strict";Object.defineProperty(zl,"__esModule",{value:!0});var Hl=Xe(),Fw=pe(),Ww=R(),Lw=it(),Yw=new RegExp("("+Hl.TIME_UNITS_PATTERN+")(?:geleden|voor|eerder)(?=(?:\\W|$))","i"),$w=new RegExp("("+Hl.TIME_UNITS_PATTERN+")geleden(?=(?:\\W|$))","i"),Gl=class extends Ww.AbstractParserWithWordBoundaryChecking{constructor(e){super(),this.strictMode=e}innerPattern(){return this.strictMode?$w:Yw}innerExtract(e,t){let n=Hl.parseTimeUnits(t[1]),i=Lw.reverseTimeUnits(n);return Fw.ParsingComponents.createRelativeFromReference(e.reference,i)}};zl.default=Gl});var Cy=h(Zl=>{"use strict";Object.defineProperty(Zl,"__esModule",{value:!0});var Vl=Xe(),jw=pe(),Bw=R(),Gw=new RegExp("("+Vl.TIME_UNITS_PATTERN+")(later|na|vanaf nu|voortaan|vooruit|uit)(?=(?:\\W|$))","i"),Hw=new RegExp("("+Vl.TIME_UNITS_PATTERN+")(later|vanaf nu)(?=(?:\\W|$))","i"),zw=1,Kl=class extends Bw.AbstractParserWithWordBoundaryChecking{constructor(e){super(),this.strictMode=e}innerPattern(){return this.strictMode?Hw:Gw}innerExtract(e,t){let n=Vl.parseTimeUnits(t[zw]);return jw.ParsingComponents.createRelativeFromReference(e.reference,n)}};Zl.default=Kl});var Uy=h(Ae=>{"use strict";var Ue=Ae&&Ae.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Ae,"__esModule",{value:!0});Ae.createConfiguration=Ae.createCasualConfiguration=Ae.parseDate=Ae.parse=Ae.strict=Ae.casual=void 0;var Kw=Bt(),Sy=mt(),Vw=Ue(Jm()),Zw=Ue(ey()),Xw=Ue(ty()),Qw=Ue(ry()),Jw=Ue(qr()),eD=Ue(oy()),tD=Ue(ly()),rD=Ue(my()),xy=Ue(Ty()),nD=Ue(by()),iD=Ue(vy()),sD=Ue(wy()),aD=Ue(Dy()),oD=Ue(Py()),uD=Ue(ky()),lD=Ue(Ny()),cD=Ue(Cy());Ae.casual=new Sy.Chrono(Iy());Ae.strict=new Sy.Chrono(Xl(!0));function dD(r,e,t){return Ae.casual.parse(r,e,t)}Ae.parse=dD;function fD(r,e,t){return Ae.casual.parseDate(r,e,t)}Ae.parseDate=fD;function Iy(r=!0){let e=Xl(!1,r);return e.parsers.unshift(new Xw.default),e.parsers.unshift(new Qw.default),e.parsers.unshift(new aD.default),e.parsers.unshift(new xy.default),e.parsers.unshift(new uD.default),e.parsers.unshift(new oD.default),e}Ae.createCasualConfiguration=Iy;function Xl(r=!0,e=!0){return Kw.includeCommonConfiguration({parsers:[new Jw.default(e),new eD.default,new rD.default,new xy.default,new tD.default,new sD.default,new nD.default,new iD.default(r),new lD.default(r),new cD.default(r)],refiners:[new Zw.default,new Vw.default]},r)}Ae.createConfiguration=Xl});var Ly=h(pi=>{"use strict";var pD=pi&&pi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(pi,"__esModule",{value:!0});var hD=pD(K()),mD=R(),yD=1,qy=2,gD=3,Fy=4,Wy=5,_D=6,Ql=class extends mD.AbstractParserWithWordBoundaryChecking{innerPattern(e){return new RegExp("(\u800C\u5BB6|\u7ACB(?:\u523B|\u5373)|\u5373\u523B)|(\u4ECA|\u660E|\u524D|\u5927\u524D|\u5F8C|\u5927\u5F8C|\u807D|\u6628|\u5C0B|\u7434)(\u65E9|\u671D|\u665A)|(\u4E0A(?:\u5348|\u665D)|\u671D(?:\u65E9)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348|\u665D)|\u664F(?:\u665D)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668))|(\u4ECA|\u660E|\u524D|\u5927\u524D|\u5F8C|\u5927\u5F8C|\u807D|\u6628|\u5C0B|\u7434)(?:\u65E5|\u5929)(?:[\\s|,|\uFF0C]*)(?:(\u4E0A(?:\u5348|\u665D)|\u671D(?:\u65E9)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348|\u665D)|\u664F(?:\u665D)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668)))?","i")}innerExtract(e,t){let n=t.index,i=e.createParsingResult(n,t[0]),s=hD.default(e.refDate),a=s;if(t[yD])i.start.imply("hour",s.hour()),i.start.imply("minute",s.minute()),i.start.imply("second",s.second()),i.start.imply("millisecond",s.millisecond());else if(t[qy]){let o=t[qy],u=t[gD];o=="\u660E"||o=="\u807D"?s.hour()>1&&(a=a.add(1,"day")):o=="\u6628"||o=="\u5C0B"||o=="\u7434"?a=a.add(-1,"day"):o=="\u524D"?a=a.add(-2,"day"):o=="\u5927\u524D"?a=a.add(-3,"day"):o=="\u5F8C"?a=a.add(2,"day"):o=="\u5927\u5F8C"&&(a=a.add(3,"day")),u=="\u65E9"||u=="\u671D"?i.start.imply("hour",6):u=="\u665A"&&(i.start.imply("hour",22),i.start.imply("meridiem",1))}else if(t[Fy]){let u=t[Fy][0];u=="\u65E9"||u=="\u671D"||u=="\u4E0A"?i.start.imply("hour",6):u=="\u4E0B"||u=="\u664F"?(i.start.imply("hour",15),i.start.imply("meridiem",1)):u=="\u4E2D"?(i.start.imply("hour",12),i.start.imply("meridiem",1)):u=="\u591C"||u=="\u665A"?(i.start.imply("hour",22),i.start.imply("meridiem",1)):u=="\u51CC"&&i.start.imply("hour",0)}else if(t[Wy]){let o=t[Wy];o=="\u660E"||o=="\u807D"?s.hour()>1&&(a=a.add(1,"day")):o=="\u6628"||o=="\u5C0B"||o=="\u7434"?a=a.add(-1,"day"):o=="\u524D"?a=a.add(-2,"day"):o=="\u5927\u524D"?a=a.add(-3,"day"):o=="\u5F8C"?a=a.add(2,"day"):o=="\u5927\u5F8C"&&(a=a.add(3,"day"));let u=t[_D];if(u){let l=u[0];l=="\u65E9"||l=="\u671D"||l=="\u4E0A"?i.start.imply("hour",6):l=="\u4E0B"||l=="\u664F"?(i.start.imply("hour",15),i.start.imply("meridiem",1)):l=="\u4E2D"?(i.start.imply("hour",12),i.start.imply("meridiem",1)):l=="\u591C"||l=="\u665A"?(i.start.imply("hour",22),i.start.imply("meridiem",1)):l=="\u51CC"&&i.start.imply("hour",0)}}return i.start.assign("day",a.date()),i.start.assign("month",a.month()+1),i.start.assign("year",a.year()),i}};pi.default=Ql});var pn=h(He=>{"use strict";Object.defineProperty(He,"__esModule",{value:!0});He.zhStringToYear=He.zhStringToNumber=He.WEEKDAY_OFFSET=He.NUMBER=void 0;He.NUMBER={\u96F6:0,\u4E00:1,\u4E8C:2,\u5169:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9,\u5341:10,\u5EFF:20,\u5345:30};He.WEEKDAY_OFFSET={\u5929:0,\u65E5:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6};function TD(r){let e=0;for(let t=0;t{"use strict";var vD=hi&&hi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(hi,"__esModule",{value:!0});var ED=vD(K()),RD=R(),Lr=pn(),Jl=1,Yy=2,ec=3,tc=class extends RD.AbstractParserWithWordBoundaryChecking{innerPattern(){return new RegExp("(\\d{2,4}|["+Object.keys(Lr.NUMBER).join("")+"]{4}|["+Object.keys(Lr.NUMBER).join("")+"]{2})?(?:\\s*)(?:\u5E74)?(?:[\\s|,|\uFF0C]*)(\\d{1,2}|["+Object.keys(Lr.NUMBER).join("")+"]{1,2})(?:\\s*)(?:\u6708)(?:\\s*)(\\d{1,2}|["+Object.keys(Lr.NUMBER).join("")+"]{1,2})?(?:\\s*)(?:\u65E5|\u865F)?")}innerExtract(e,t){let n=ED.default(e.refDate),i=e.createParsingResult(t.index,t[0]),s=parseInt(t[Yy]);if(isNaN(s)&&(s=Lr.zhStringToNumber(t[Yy])),i.start.assign("month",s),t[ec]){let a=parseInt(t[ec]);isNaN(a)&&(a=Lr.zhStringToNumber(t[ec])),i.start.assign("day",a)}else i.start.imply("day",n.date());if(t[Jl]){let a=parseInt(t[Jl]);isNaN(a)&&(a=Lr.zhStringToYear(t[Jl])),i.start.assign("year",a)}else i.start.imply("year",n.year());return i}};hi.default=tc});var By=h(mi=>{"use strict";var wD=mi&&mi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(mi,"__esModule",{value:!0});var DD=wD(K()),MD=R(),jy=pn(),PD=new RegExp("(\\d+|["+Object.keys(jy.NUMBER).join("")+"]+|\u534A|\u5E7E)(?:\\s*)(?:\u500B)?(\u79D2(?:\u9418)?|\u5206\u9418|\u5C0F\u6642|\u9418|\u65E5|\u5929|\u661F\u671F|\u79AE\u62DC|\u6708|\u5E74)(?:(?:\u4E4B|\u904E)?\u5F8C|(?:\u4E4B)?\u5167)","i"),rc=1,OD=2,nc=class extends MD.AbstractParserWithWordBoundaryChecking{innerPattern(){return PD}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=parseInt(t[rc]);if(isNaN(i)&&(i=jy.zhStringToNumber(t[rc])),isNaN(i)){let u=t[rc];if(u==="\u5E7E")i=3;else if(u==="\u534A")i=.5;else return null}let s=DD.default(e.refDate),o=t[OD][0];return o.match(/[日天星禮月年]/)?(o=="\u65E5"||o=="\u5929"?s=s.add(i,"d"):o=="\u661F"||o=="\u79AE"?s=s.add(i*7,"d"):o=="\u6708"?s=s.add(i,"month"):o=="\u5E74"&&(s=s.add(i,"year")),n.start.assign("year",s.year()),n.start.assign("month",s.month()+1),n.start.assign("day",s.date()),n):(o=="\u79D2"?s=s.add(i,"second"):o=="\u5206"?s=s.add(i,"minute"):(o=="\u5C0F"||o=="\u9418")&&(s=s.add(i,"hour")),n.start.imply("year",s.year()),n.start.imply("month",s.month()+1),n.start.imply("day",s.date()),n.start.assign("hour",s.hour()),n.start.assign("minute",s.minute()),n.start.assign("second",s.second()),n)}};mi.default=nc});var Hy=h(yi=>{"use strict";var AD=yi&&yi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(yi,"__esModule",{value:!0});var kD=AD(K()),ND=R(),Gy=pn(),CD=new RegExp("(?\u4E0A|\u4ECA|\u4E0B|\u9019|\u5462)(?:\u500B)?(?:\u661F\u671F|\u79AE\u62DC|\u9031)(?"+Object.keys(Gy.WEEKDAY_OFFSET).join("|")+")"),ic=class extends ND.AbstractParserWithWordBoundaryChecking{innerPattern(){return CD}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=t.groups.weekday,s=Gy.WEEKDAY_OFFSET[i];if(s===void 0)return null;let a=null,o=t.groups.prefix;o=="\u4E0A"?a="last":o=="\u4E0B"?a="next":(o=="\u4ECA"||o=="\u9019"||o=="\u5462")&&(a="this");let u=kD.default(e.refDate),l=!1,c=u.day();return a=="last"||a=="past"?(u=u.day(s-7),l=!0):a=="next"?(u=u.day(s+7),l=!0):a=="this"?u=u.day(s):Math.abs(s-7-c){"use strict";var SD=gi&&gi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(gi,"__esModule",{value:!0});var xD=SD(K()),ID=R(),ot=pn(),UD=new RegExp("(?:\u7531|\u5F9E|\u81EA)?(?:(\u4ECA|\u660E|\u524D|\u5927\u524D|\u5F8C|\u5927\u5F8C|\u807D|\u6628|\u5C0B|\u7434)(\u65E9|\u671D|\u665A)|(\u4E0A(?:\u5348|\u665D)|\u671D(?:\u65E9)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348|\u665D)|\u664F(?:\u665D)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668))|(\u4ECA|\u660E|\u524D|\u5927\u524D|\u5F8C|\u5927\u5F8C|\u807D|\u6628|\u5C0B|\u7434)(?:\u65E5|\u5929)(?:[\\s,\uFF0C]*)(?:(\u4E0A(?:\u5348|\u665D)|\u671D(?:\u65E9)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348|\u665D)|\u664F(?:\u665D)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668)))?)?(?:[\\s,\uFF0C]*)(?:(\\d+|["+Object.keys(ot.NUMBER).join("")+"]+)(?:\\s*)(?:\u9EDE|\u6642|:|\uFF1A)(?:\\s*)(\\d+|\u534A|\u6B63|\u6574|["+Object.keys(ot.NUMBER).join("")+"]+)?(?:\\s*)(?:\u5206|:|\uFF1A)?(?:\\s*)(\\d+|["+Object.keys(ot.NUMBER).join("")+"]+)?(?:\\s*)(?:\u79D2)?)(?:\\s*(A.M.|P.M.|AM?|PM?))?","i"),qD=new RegExp("(?:^\\s*(?:\u5230|\u81F3|\\-|\\\u2013|\\~|\\\u301C)\\s*)(?:(\u4ECA|\u660E|\u524D|\u5927\u524D|\u5F8C|\u5927\u5F8C|\u807D|\u6628|\u5C0B|\u7434)(\u65E9|\u671D|\u665A)|(\u4E0A(?:\u5348|\u665D)|\u671D(?:\u65E9)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348|\u665D)|\u664F(?:\u665D)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668))|(\u4ECA|\u660E|\u524D|\u5927\u524D|\u5F8C|\u5927\u5F8C|\u807D|\u6628|\u5C0B|\u7434)(?:\u65E5|\u5929)(?:[\\s,\uFF0C]*)(?:(\u4E0A(?:\u5348|\u665D)|\u671D(?:\u65E9)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348|\u665D)|\u664F(?:\u665D)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668)))?)?(?:[\\s,\uFF0C]*)(?:(\\d+|["+Object.keys(ot.NUMBER).join("")+"]+)(?:\\s*)(?:\u9EDE|\u6642|:|\uFF1A)(?:\\s*)(\\d+|\u534A|\u6B63|\u6574|["+Object.keys(ot.NUMBER).join("")+"]+)?(?:\\s*)(?:\u5206|:|\uFF1A)?(?:\\s*)(\\d+|["+Object.keys(ot.NUMBER).join("")+"]+)?(?:\\s*)(?:\u79D2)?)(?:\\s*(A.M.|P.M.|AM?|PM?))?","i"),Vs=1,Zs=2,Xs=3,Qs=4,Js=5,ea=6,at=7,hn=8,ta=9,sc=class extends ID.AbstractParserWithWordBoundaryChecking{innerPattern(){return UD}innerExtract(e,t){if(t.index>0&&e.text[t.index-1].match(/\w/))return null;let n=xD.default(e.refDate),i=e.createParsingResult(t.index,t[0]),s=n.clone();if(t[Vs]){var a=t[Vs];a=="\u660E"||a=="\u807D"?n.hour()>1&&s.add(1,"day"):a=="\u6628"||a=="\u5C0B"||a=="\u7434"?s.add(-1,"day"):a=="\u524D"?s.add(-2,"day"):a=="\u5927\u524D"?s.add(-3,"day"):a=="\u5F8C"?s.add(2,"day"):a=="\u5927\u5F8C"&&s.add(3,"day"),i.start.assign("day",s.date()),i.start.assign("month",s.month()+1),i.start.assign("year",s.year())}else if(t[Qs]){var o=t[Qs];o=="\u660E"||o=="\u807D"?s.add(1,"day"):o=="\u6628"||o=="\u5C0B"||o=="\u7434"?s.add(-1,"day"):o=="\u524D"?s.add(-2,"day"):o=="\u5927\u524D"?s.add(-3,"day"):o=="\u5F8C"?s.add(2,"day"):o=="\u5927\u5F8C"&&s.add(3,"day"),i.start.assign("day",s.date()),i.start.assign("month",s.month()+1),i.start.assign("year",s.year())}else i.start.imply("day",s.date()),i.start.imply("month",s.month()+1),i.start.imply("year",s.year());let u=0,l=0,c=-1;if(t[hn]){var d=parseInt(t[hn]);if(isNaN(d)&&(d=ot.zhStringToNumber(t[hn])),d>=60)return null;i.start.assign("second",d)}if(u=parseInt(t[ea]),isNaN(u)&&(u=ot.zhStringToNumber(t[ea])),t[at]?t[at]=="\u534A"?l=30:t[at]=="\u6B63"||t[at]=="\u6574"?l=0:(l=parseInt(t[at]),isNaN(l)&&(l=ot.zhStringToNumber(t[at]))):u>100&&(l=u%100,u=Math.floor(u/100)),l>=60||u>24)return null;if(u>=12&&(c=1),t[ta]){if(u>12)return null;var f=t[ta][0].toLowerCase();f=="a"&&(c=0,u==12&&(u=0)),f=="p"&&(c=1,u!=12&&(u+=12))}else if(t[Zs]){var p=t[Zs],y=p[0];y=="\u671D"||y=="\u65E9"?(c=0,u==12&&(u=0)):y=="\u665A"&&(c=1,u!=12&&(u+=12))}else if(t[Xs]){var m=t[Xs],g=m[0];g=="\u4E0A"||g=="\u671D"||g=="\u65E9"||g=="\u51CC"?(c=0,u==12&&(u=0)):(g=="\u4E0B"||g=="\u664F"||g=="\u665A")&&(c=1,u!=12&&(u+=12))}else if(t[Js]){var A=t[Js],C=A[0];C=="\u4E0A"||C=="\u671D"||C=="\u65E9"||C=="\u51CC"?(c=0,u==12&&(u=0)):(C=="\u4E0B"||C=="\u664F"||C=="\u665A")&&(c=1,u!=12&&(u+=12))}if(i.start.assign("hour",u),i.start.assign("minute",l),c>=0?i.start.assign("meridiem",c):u<12?i.start.imply("meridiem",0):i.start.imply("meridiem",1),t=qD.exec(e.text.substring(i.index+i.text.length)),!t)return i.text.match(/^\d+$/)?null:i;let N=s.clone();if(i.end=e.createParsingComponents(),t[Vs]){var a=t[Vs];a=="\u660E"||a=="\u807D"?n.hour()>1&&N.add(1,"day"):a=="\u6628"||a=="\u5C0B"||a=="\u7434"?N.add(-1,"day"):a=="\u524D"?N.add(-2,"day"):a=="\u5927\u524D"?N.add(-3,"day"):a=="\u5F8C"?N.add(2,"day"):a=="\u5927\u5F8C"&&N.add(3,"day"),i.end.assign("day",N.date()),i.end.assign("month",N.month()+1),i.end.assign("year",N.year())}else if(t[Qs]){var o=t[Qs];o=="\u660E"||o=="\u807D"?N.add(1,"day"):o=="\u6628"||o=="\u5C0B"||o=="\u7434"?N.add(-1,"day"):o=="\u524D"?N.add(-2,"day"):o=="\u5927\u524D"?N.add(-3,"day"):o=="\u5F8C"?N.add(2,"day"):o=="\u5927\u5F8C"&&N.add(3,"day"),i.end.assign("day",N.date()),i.end.assign("month",N.month()+1),i.end.assign("year",N.year())}else i.end.imply("day",N.date()),i.end.imply("month",N.month()+1),i.end.imply("year",N.year());if(u=0,l=0,c=-1,t[hn]){var d=parseInt(t[hn]);if(isNaN(d)&&(d=ot.zhStringToNumber(t[hn])),d>=60)return null;i.end.assign("second",d)}if(u=parseInt(t[ea]),isNaN(u)&&(u=ot.zhStringToNumber(t[ea])),t[at]?t[at]=="\u534A"?l=30:t[at]=="\u6B63"||t[at]=="\u6574"?l=0:(l=parseInt(t[at]),isNaN(l)&&(l=ot.zhStringToNumber(t[at]))):u>100&&(l=u%100,u=Math.floor(u/100)),l>=60||u>24)return null;if(u>=12&&(c=1),t[ta]){if(u>12)return null;var f=t[ta][0].toLowerCase();f=="a"&&(c=0,u==12&&(u=0)),f=="p"&&(c=1,u!=12&&(u+=12)),i.start.isCertain("meridiem")||(c==0?(i.start.imply("meridiem",0),i.start.get("hour")==12&&i.start.assign("hour",0)):(i.start.imply("meridiem",1),i.start.get("hour")!=12&&i.start.assign("hour",i.start.get("hour")+12)))}else if(t[Zs]){var p=t[Zs],y=p[0];y=="\u671D"||y=="\u65E9"?(c=0,u==12&&(u=0)):y=="\u665A"&&(c=1,u!=12&&(u+=12))}else if(t[Xs]){var m=t[Xs],g=m[0];g=="\u4E0A"||g=="\u671D"||g=="\u65E9"||g=="\u51CC"?(c=0,u==12&&(u=0)):(g=="\u4E0B"||g=="\u664F"||g=="\u665A")&&(c=1,u!=12&&(u+=12))}else if(t[Js]){var A=t[Js],C=A[0];C=="\u4E0A"||C=="\u671D"||C=="\u65E9"||C=="\u51CC"?(c=0,u==12&&(u=0)):(C=="\u4E0B"||C=="\u664F"||C=="\u665A")&&(c=1,u!=12&&(u+=12))}return i.text=i.text+t[0],i.end.assign("hour",u),i.end.assign("minute",l),c>=0?i.end.assign("meridiem",c):i.start.isCertain("meridiem")&&i.start.get("meridiem")==1&&i.start.get("hour")>u?i.end.imply("meridiem",0):u>12&&i.end.imply("meridiem",1),i.end.date().getTime(){"use strict";var FD=_i&&_i.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(_i,"__esModule",{value:!0});var WD=FD(K()),LD=R(),Ky=pn(),YD=new RegExp("(?:\u661F\u671F|\u79AE\u62DC|\u9031)(?"+Object.keys(Ky.WEEKDAY_OFFSET).join("|")+")"),ac=class extends LD.AbstractParserWithWordBoundaryChecking{innerPattern(){return YD}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=t.groups.weekday,s=Ky.WEEKDAY_OFFSET[i];if(s===void 0)return null;let a=WD.default(e.refDate),o=!1,u=a.day();return Math.abs(s-7-u){"use strict";var $D=Ti&&Ti.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Ti,"__esModule",{value:!0});var jD=$D(At()),oc=class extends jD.default{patternBetween(){return/^\s*(至|到|\-|\~|~|-|ー)\s*$/i}};Ti.default=oc});var Xy=h(bi=>{"use strict";var BD=bi&&bi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(bi,"__esModule",{value:!0});var GD=BD(jt()),uc=class extends GD.default{patternBetween(){return/^\s*$/i}};bi.default=uc});var Qy=h(Te=>{"use strict";var Vt=Te&&Te.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Te,"__esModule",{value:!0});Te.createConfiguration=Te.createCasualConfiguration=Te.parseDate=Te.parse=Te.strict=Te.casual=Te.hant=void 0;var lc=mt(),HD=Vt(Ns()),zD=Bt(),KD=Vt(Ly()),VD=Vt($y()),ZD=Vt(By()),XD=Vt(Hy()),QD=Vt(zy()),JD=Vt(Vy()),eM=Vt(Zy()),tM=Vt(Xy());Te.hant=new lc.Chrono(cc());Te.casual=new lc.Chrono(cc());Te.strict=new lc.Chrono(dc());function rM(r,e,t){return Te.casual.parse(r,e,t)}Te.parse=rM;function nM(r,e,t){return Te.casual.parseDate(r,e,t)}Te.parseDate=nM;function cc(){let r=dc();return r.parsers.unshift(new KD.default),r}Te.createCasualConfiguration=cc;function dc(){let r=zD.includeCommonConfiguration({parsers:[new VD.default,new XD.default,new JD.default,new QD.default,new ZD.default],refiners:[new eM.default,new tM.default]});return r.refiners=r.refiners.filter(e=>!(e instanceof HD.default)),r}Te.createConfiguration=dc});var rg=h(vi=>{"use strict";var iM=vi&&vi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(vi,"__esModule",{value:!0});var sM=iM(K()),aM=R(),oM=1,Jy=2,uM=3,eg=4,tg=5,lM=6,fc=class extends aM.AbstractParserWithWordBoundaryChecking{innerPattern(e){return new RegExp("(\u73B0\u5728|\u7ACB(?:\u523B|\u5373)|\u5373\u523B)|(\u4ECA|\u660E|\u524D|\u5927\u524D|\u540E|\u5927\u540E|\u6628)(\u65E9|\u665A)|(\u4E0A(?:\u5348)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668))|(\u4ECA|\u660E|\u524D|\u5927\u524D|\u540E|\u5927\u540E|\u6628)(?:\u65E5|\u5929)(?:[\\s|,|\uFF0C]*)(?:(\u4E0A(?:\u5348)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668)))?","i")}innerExtract(e,t){let n=t.index,i=e.createParsingResult(n,t[0]),s=sM.default(e.refDate),a=s;if(t[oM])i.start.imply("hour",s.hour()),i.start.imply("minute",s.minute()),i.start.imply("second",s.second()),i.start.imply("millisecond",s.millisecond());else if(t[Jy]){let o=t[Jy],u=t[uM];o=="\u660E"?s.hour()>1&&(a=a.add(1,"day")):o=="\u6628"?a=a.add(-1,"day"):o=="\u524D"?a=a.add(-2,"day"):o=="\u5927\u524D"?a=a.add(-3,"day"):o=="\u540E"?a=a.add(2,"day"):o=="\u5927\u540E"&&(a=a.add(3,"day")),u=="\u65E9"?i.start.imply("hour",6):u=="\u665A"&&(i.start.imply("hour",22),i.start.imply("meridiem",1))}else if(t[eg]){let u=t[eg][0];u=="\u65E9"||u=="\u4E0A"?i.start.imply("hour",6):u=="\u4E0B"?(i.start.imply("hour",15),i.start.imply("meridiem",1)):u=="\u4E2D"?(i.start.imply("hour",12),i.start.imply("meridiem",1)):u=="\u591C"||u=="\u665A"?(i.start.imply("hour",22),i.start.imply("meridiem",1)):u=="\u51CC"&&i.start.imply("hour",0)}else if(t[tg]){let o=t[tg];o=="\u660E"?s.hour()>1&&(a=a.add(1,"day")):o=="\u6628"?a=a.add(-1,"day"):o=="\u524D"?a=a.add(-2,"day"):o=="\u5927\u524D"?a=a.add(-3,"day"):o=="\u540E"?a=a.add(2,"day"):o=="\u5927\u540E"&&(a=a.add(3,"day"));let u=t[lM];if(u){let l=u[0];l=="\u65E9"||l=="\u4E0A"?i.start.imply("hour",6):l=="\u4E0B"?(i.start.imply("hour",15),i.start.imply("meridiem",1)):l=="\u4E2D"?(i.start.imply("hour",12),i.start.imply("meridiem",1)):l=="\u591C"||l=="\u665A"?(i.start.imply("hour",22),i.start.imply("meridiem",1)):l=="\u51CC"&&i.start.imply("hour",0)}}return i.start.assign("day",a.date()),i.start.assign("month",a.month()+1),i.start.assign("year",a.year()),i}};vi.default=fc});var mn=h(ze=>{"use strict";Object.defineProperty(ze,"__esModule",{value:!0});ze.zhStringToYear=ze.zhStringToNumber=ze.WEEKDAY_OFFSET=ze.NUMBER=void 0;ze.NUMBER={\u96F6:0,"\u3007":0,\u4E00:1,\u4E8C:2,\u4E24:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9,\u5341:10};ze.WEEKDAY_OFFSET={\u5929:0,\u65E5:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6};function cM(r){let e=0;for(let t=0;t{"use strict";var fM=Ei&&Ei.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Ei,"__esModule",{value:!0});var pM=fM(K()),hM=R(),Yr=mn(),pc=1,ng=2,hc=3,mc=class extends hM.AbstractParserWithWordBoundaryChecking{innerPattern(){return new RegExp("(\\d{2,4}|["+Object.keys(Yr.NUMBER).join("")+"]{4}|["+Object.keys(Yr.NUMBER).join("")+"]{2})?(?:\\s*)(?:\u5E74)?(?:[\\s|,|\uFF0C]*)(\\d{1,2}|["+Object.keys(Yr.NUMBER).join("")+"]{1,3})(?:\\s*)(?:\u6708)(?:\\s*)(\\d{1,2}|["+Object.keys(Yr.NUMBER).join("")+"]{1,3})?(?:\\s*)(?:\u65E5|\u53F7)?")}innerExtract(e,t){let n=pM.default(e.refDate),i=e.createParsingResult(t.index,t[0]),s=parseInt(t[ng]);if(isNaN(s)&&(s=Yr.zhStringToNumber(t[ng])),i.start.assign("month",s),t[hc]){let a=parseInt(t[hc]);isNaN(a)&&(a=Yr.zhStringToNumber(t[hc])),i.start.assign("day",a)}else i.start.imply("day",n.date());if(t[pc]){let a=parseInt(t[pc]);isNaN(a)&&(a=Yr.zhStringToYear(t[pc])),i.start.assign("year",a)}else i.start.imply("year",n.year());return i}};Ei.default=mc});var ag=h(Ri=>{"use strict";var mM=Ri&&Ri.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Ri,"__esModule",{value:!0});var yM=mM(K()),gM=R(),sg=mn(),_M=new RegExp("(\\d+|["+Object.keys(sg.NUMBER).join("")+"]+|\u534A|\u51E0)(?:\\s*)(?:\u4E2A)?(\u79D2(?:\u949F)?|\u5206\u949F|\u5C0F\u65F6|\u949F|\u65E5|\u5929|\u661F\u671F|\u793C\u62DC|\u6708|\u5E74)(?:(?:\u4E4B|\u8FC7)?\u540E|(?:\u4E4B)?\u5185)","i"),yc=1,TM=2,gc=class extends gM.AbstractParserWithWordBoundaryChecking{innerPattern(){return _M}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=parseInt(t[yc]);if(isNaN(i)&&(i=sg.zhStringToNumber(t[yc])),isNaN(i)){let u=t[yc];if(u==="\u51E0")i=3;else if(u==="\u534A")i=.5;else return null}let s=yM.default(e.refDate),o=t[TM][0];return o.match(/[日天星礼月年]/)?(o=="\u65E5"||o=="\u5929"?s=s.add(i,"d"):o=="\u661F"||o=="\u793C"?s=s.add(i*7,"d"):o=="\u6708"?s=s.add(i,"month"):o=="\u5E74"&&(s=s.add(i,"year")),n.start.assign("year",s.year()),n.start.assign("month",s.month()+1),n.start.assign("day",s.date()),n):(o=="\u79D2"?s=s.add(i,"second"):o=="\u5206"?s=s.add(i,"minute"):(o=="\u5C0F"||o=="\u949F")&&(s=s.add(i,"hour")),n.start.imply("year",s.year()),n.start.imply("month",s.month()+1),n.start.imply("day",s.date()),n.start.assign("hour",s.hour()),n.start.assign("minute",s.minute()),n.start.assign("second",s.second()),n)}};Ri.default=gc});var ug=h(wi=>{"use strict";var bM=wi&&wi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(wi,"__esModule",{value:!0});var vM=bM(K()),EM=R(),og=mn(),RM=new RegExp("(?\u4E0A|\u4E0B|\u8FD9)(?:\u4E2A)?(?:\u661F\u671F|\u793C\u62DC|\u5468)(?"+Object.keys(og.WEEKDAY_OFFSET).join("|")+")"),_c=class extends EM.AbstractParserWithWordBoundaryChecking{innerPattern(){return RM}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=t.groups.weekday,s=og.WEEKDAY_OFFSET[i];if(s===void 0)return null;let a=null,o=t.groups.prefix;o=="\u4E0A"?a="last":o=="\u4E0B"?a="next":o=="\u8FD9"&&(a="this");let u=vM.default(e.refDate),l=!1,c=u.day();return a=="last"||a=="past"?(u=u.day(s-7),l=!0):a=="next"?(u=u.day(s+7),l=!0):a=="this"?u=u.day(s):Math.abs(s-7-c){"use strict";var wM=Di&&Di.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Di,"__esModule",{value:!0});var DM=wM(K()),MM=R(),lt=mn(),PM=new RegExp("(?:\u4ECE|\u81EA)?(?:(\u4ECA|\u660E|\u524D|\u5927\u524D|\u540E|\u5927\u540E|\u6628)(\u65E9|\u671D|\u665A)|(\u4E0A(?:\u5348)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668))|(\u4ECA|\u660E|\u524D|\u5927\u524D|\u540E|\u5927\u540E|\u6628)(?:\u65E5|\u5929)(?:[\\s,\uFF0C]*)(?:(\u4E0A(?:\u5348)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668)))?)?(?:[\\s,\uFF0C]*)(?:(\\d+|["+Object.keys(lt.NUMBER).join("")+"]+)(?:\\s*)(?:\u70B9|\u65F6|:|\uFF1A)(?:\\s*)(\\d+|\u534A|\u6B63|\u6574|["+Object.keys(lt.NUMBER).join("")+"]+)?(?:\\s*)(?:\u5206|:|\uFF1A)?(?:\\s*)(\\d+|["+Object.keys(lt.NUMBER).join("")+"]+)?(?:\\s*)(?:\u79D2)?)(?:\\s*(A.M.|P.M.|AM?|PM?))?","i"),OM=new RegExp("(?:^\\s*(?:\u5230|\u81F3|\\-|\\\u2013|\\~|\\\u301C)\\s*)(?:(\u4ECA|\u660E|\u524D|\u5927\u524D|\u540E|\u5927\u540E|\u6628)(\u65E9|\u671D|\u665A)|(\u4E0A(?:\u5348)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668))|(\u4ECA|\u660E|\u524D|\u5927\u524D|\u540E|\u5927\u540E|\u6628)(?:\u65E5|\u5929)(?:[\\s,\uFF0C]*)(?:(\u4E0A(?:\u5348)|\u65E9(?:\u4E0A)|\u4E0B(?:\u5348)|\u665A(?:\u4E0A)|\u591C(?:\u665A)?|\u4E2D(?:\u5348)|\u51CC(?:\u6668)))?)?(?:[\\s,\uFF0C]*)(?:(\\d+|["+Object.keys(lt.NUMBER).join("")+"]+)(?:\\s*)(?:\u70B9|\u65F6|:|\uFF1A)(?:\\s*)(\\d+|\u534A|\u6B63|\u6574|["+Object.keys(lt.NUMBER).join("")+"]+)?(?:\\s*)(?:\u5206|:|\uFF1A)?(?:\\s*)(\\d+|["+Object.keys(lt.NUMBER).join("")+"]+)?(?:\\s*)(?:\u79D2)?)(?:\\s*(A.M.|P.M.|AM?|PM?))?","i"),ra=1,na=2,ia=3,sa=4,aa=5,oa=6,ut=7,yn=8,ua=9,Tc=class extends MM.AbstractParserWithWordBoundaryChecking{innerPattern(){return PM}innerExtract(e,t){if(t.index>0&&e.text[t.index-1].match(/\w/))return null;let n=DM.default(e.refDate),i=e.createParsingResult(t.index,t[0]),s=n.clone();if(t[ra]){let c=t[ra];c=="\u660E"?n.hour()>1&&s.add(1,"day"):c=="\u6628"?s.add(-1,"day"):c=="\u524D"?s.add(-2,"day"):c=="\u5927\u524D"?s.add(-3,"day"):c=="\u540E"?s.add(2,"day"):c=="\u5927\u540E"&&s.add(3,"day"),i.start.assign("day",s.date()),i.start.assign("month",s.month()+1),i.start.assign("year",s.year())}else if(t[sa]){let c=t[sa];c=="\u660E"?s.add(1,"day"):c=="\u6628"?s.add(-1,"day"):c=="\u524D"?s.add(-2,"day"):c=="\u5927\u524D"?s.add(-3,"day"):c=="\u540E"?s.add(2,"day"):c=="\u5927\u540E"&&s.add(3,"day"),i.start.assign("day",s.date()),i.start.assign("month",s.month()+1),i.start.assign("year",s.year())}else i.start.imply("day",s.date()),i.start.imply("month",s.month()+1),i.start.imply("year",s.year());let a=0,o=0,u=-1;if(t[yn]){let c=parseInt(t[yn]);if(isNaN(c)&&(c=lt.zhStringToNumber(t[yn])),c>=60)return null;i.start.assign("second",c)}if(a=parseInt(t[oa]),isNaN(a)&&(a=lt.zhStringToNumber(t[oa])),t[ut]?t[ut]=="\u534A"?o=30:t[ut]=="\u6B63"||t[ut]=="\u6574"?o=0:(o=parseInt(t[ut]),isNaN(o)&&(o=lt.zhStringToNumber(t[ut]))):a>100&&(o=a%100,a=Math.floor(a/100)),o>=60||a>24)return null;if(a>=12&&(u=1),t[ua]){if(a>12)return null;let c=t[ua][0].toLowerCase();c=="a"&&(u=0,a==12&&(a=0)),c=="p"&&(u=1,a!=12&&(a+=12))}else if(t[na]){let d=t[na][0];d=="\u65E9"?(u=0,a==12&&(a=0)):d=="\u665A"&&(u=1,a!=12&&(a+=12))}else if(t[ia]){let d=t[ia][0];d=="\u4E0A"||d=="\u65E9"||d=="\u51CC"?(u=0,a==12&&(a=0)):(d=="\u4E0B"||d=="\u665A")&&(u=1,a!=12&&(a+=12))}else if(t[aa]){let d=t[aa][0];d=="\u4E0A"||d=="\u65E9"||d=="\u51CC"?(u=0,a==12&&(a=0)):(d=="\u4E0B"||d=="\u665A")&&(u=1,a!=12&&(a+=12))}if(i.start.assign("hour",a),i.start.assign("minute",o),u>=0?i.start.assign("meridiem",u):a<12?i.start.imply("meridiem",0):i.start.imply("meridiem",1),t=OM.exec(e.text.substring(i.index+i.text.length)),!t)return i.text.match(/^\d+$/)?null:i;let l=s.clone();if(i.end=e.createParsingComponents(),t[ra]){let c=t[ra];c=="\u660E"?n.hour()>1&&l.add(1,"day"):c=="\u6628"?l.add(-1,"day"):c=="\u524D"?l.add(-2,"day"):c=="\u5927\u524D"?l.add(-3,"day"):c=="\u540E"?l.add(2,"day"):c=="\u5927\u540E"&&l.add(3,"day"),i.end.assign("day",l.date()),i.end.assign("month",l.month()+1),i.end.assign("year",l.year())}else if(t[sa]){let c=t[sa];c=="\u660E"?l.add(1,"day"):c=="\u6628"?l.add(-1,"day"):c=="\u524D"?l.add(-2,"day"):c=="\u5927\u524D"?l.add(-3,"day"):c=="\u540E"?l.add(2,"day"):c=="\u5927\u540E"&&l.add(3,"day"),i.end.assign("day",l.date()),i.end.assign("month",l.month()+1),i.end.assign("year",l.year())}else i.end.imply("day",l.date()),i.end.imply("month",l.month()+1),i.end.imply("year",l.year());if(a=0,o=0,u=-1,t[yn]){let c=parseInt(t[yn]);if(isNaN(c)&&(c=lt.zhStringToNumber(t[yn])),c>=60)return null;i.end.assign("second",c)}if(a=parseInt(t[oa]),isNaN(a)&&(a=lt.zhStringToNumber(t[oa])),t[ut]?t[ut]=="\u534A"?o=30:t[ut]=="\u6B63"||t[ut]=="\u6574"?o=0:(o=parseInt(t[ut]),isNaN(o)&&(o=lt.zhStringToNumber(t[ut]))):a>100&&(o=a%100,a=Math.floor(a/100)),o>=60||a>24)return null;if(a>=12&&(u=1),t[ua]){if(a>12)return null;let c=t[ua][0].toLowerCase();c=="a"&&(u=0,a==12&&(a=0)),c=="p"&&(u=1,a!=12&&(a+=12)),i.start.isCertain("meridiem")||(u==0?(i.start.imply("meridiem",0),i.start.get("hour")==12&&i.start.assign("hour",0)):(i.start.imply("meridiem",1),i.start.get("hour")!=12&&i.start.assign("hour",i.start.get("hour")+12)))}else if(t[na]){let d=t[na][0];d=="\u65E9"?(u=0,a==12&&(a=0)):d=="\u665A"&&(u=1,a!=12&&(a+=12))}else if(t[ia]){let d=t[ia][0];d=="\u4E0A"||d=="\u65E9"||d=="\u51CC"?(u=0,a==12&&(a=0)):(d=="\u4E0B"||d=="\u665A")&&(u=1,a!=12&&(a+=12))}else if(t[aa]){let d=t[aa][0];d=="\u4E0A"||d=="\u65E9"||d=="\u51CC"?(u=0,a==12&&(a=0)):(d=="\u4E0B"||d=="\u665A")&&(u=1,a!=12&&(a+=12))}return i.text=i.text+t[0],i.end.assign("hour",a),i.end.assign("minute",o),u>=0?i.end.assign("meridiem",u):i.start.isCertain("meridiem")&&i.start.get("meridiem")==1&&i.start.get("hour")>a?i.end.imply("meridiem",0):a>12&&i.end.imply("meridiem",1),i.end.date().getTime(){"use strict";var AM=Mi&&Mi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Mi,"__esModule",{value:!0});var kM=AM(K()),NM=R(),cg=mn(),CM=new RegExp("(?:\u661F\u671F|\u793C\u62DC|\u5468)(?"+Object.keys(cg.WEEKDAY_OFFSET).join("|")+")"),bc=class extends NM.AbstractParserWithWordBoundaryChecking{innerPattern(){return CM}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=t.groups.weekday,s=cg.WEEKDAY_OFFSET[i];if(s===void 0)return null;let a=kM.default(e.refDate),o=!1,u=a.day();return Math.abs(s-7-u){"use strict";var SM=Pi&&Pi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Pi,"__esModule",{value:!0});var xM=SM(At()),vc=class extends xM.default{patternBetween(){return/^\s*(至|到|-|~|~|-|ー)\s*$/i}};Pi.default=vc});var pg=h(Oi=>{"use strict";var IM=Oi&&Oi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Oi,"__esModule",{value:!0});var UM=IM(jt()),Ec=class extends UM.default{patternBetween(){return/^\s*$/i}};Oi.default=Ec});var hg=h(be=>{"use strict";var Zt=be&&be.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(be,"__esModule",{value:!0});be.createConfiguration=be.createCasualConfiguration=be.parseDate=be.parse=be.strict=be.casual=be.hans=void 0;var Rc=mt(),qM=Zt(Ns()),FM=Bt(),WM=Zt(rg()),LM=Zt(ig()),YM=Zt(ag()),$M=Zt(ug()),jM=Zt(lg()),BM=Zt(dg()),GM=Zt(fg()),HM=Zt(pg());be.hans=new Rc.Chrono(wc());be.casual=new Rc.Chrono(wc());be.strict=new Rc.Chrono(Dc());function zM(r,e,t){return be.casual.parse(r,e,t)}be.parse=zM;function KM(r,e,t){return be.casual.parseDate(r,e,t)}be.parseDate=KM;function wc(){let r=Dc();return r.parsers.unshift(new WM.default),r}be.createCasualConfiguration=wc;function Dc(){let r=FM.includeCommonConfiguration({parsers:[new LM.default,new $M.default,new BM.default,new jM.default,new YM.default],refiners:[new GM.default,new HM.default]});return r.refiners=r.refiners.filter(e=>!(e instanceof qM.default)),r}be.createConfiguration=Dc});var yg=h(Qe=>{"use strict";var mg=Qe&&Qe.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),VM=Qe&&Qe.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),ZM=Qe&&Qe.__exportStar||function(r,e){for(var t in r)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&mg(e,r,t)},XM=Qe&&Qe.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&mg(e,r,t);return VM(e,r),e};Object.defineProperty(Qe,"__esModule",{value:!0});Qe.hans=void 0;ZM(Qy(),Qe);Qe.hans=XM(hg())});var Ke=h(I=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});I.parseTimeUnits=I.TIME_UNITS_PATTERN=I.parseYear=I.YEAR_PATTERN=I.parseOrdinalNumberPattern=I.ORDINAL_NUMBER_PATTERN=I.parseNumberPattern=I.NUMBER_PATTERN=I.TIME_UNIT_DICTIONARY=I.ORDINAL_WORD_DICTIONARY=I.INTEGER_WORD_DICTIONARY=I.MONTH_DICTIONARY=I.FULL_MONTH_NAME_DICTIONARY=I.WEEKDAY_DICTIONARY=I.REGEX_PARTS=void 0;var la=Q(),QM=xe();I.REGEX_PARTS={leftBoundary:"([^\\p{L}\\p{N}_]|^)",rightBoundary:"(?=[^\\p{L}\\p{N}_]|$)",flags:"iu"};I.WEEKDAY_DICTIONARY={\u0432\u043E\u0441\u043A\u0440\u0435\u0441\u0435\u043D\u044C\u0435:0,\u0432\u043E\u0441\u043A\u0440\u0435\u0441\u0435\u043D\u044C\u044F:0,\u0432\u0441\u043A:0,"\u0432\u0441\u043A.":0,\u043F\u043E\u043D\u0435\u0434\u0435\u043B\u044C\u043D\u0438\u043A:1,\u043F\u043E\u043D\u0435\u0434\u0435\u043B\u044C\u043D\u0438\u043A\u0430:1,\u043F\u043D:1,"\u043F\u043D.":1,\u0432\u0442\u043E\u0440\u043D\u0438\u043A:2,\u0432\u0442\u043E\u0440\u043D\u0438\u043A\u0430:2,\u0432\u0442:2,"\u0432\u0442.":2,\u0441\u0440\u0435\u0434\u0430:3,\u0441\u0440\u0435\u0434\u044B:3,\u0441\u0440\u0435\u0434\u0443:3,\u0441\u0440:3,"\u0441\u0440.":3,\u0447\u0435\u0442\u0432\u0435\u0440\u0433:4,\u0447\u0435\u0442\u0432\u0435\u0440\u0433\u0430:4,\u0447\u0442:4,"\u0447\u0442.":4,\u043F\u044F\u0442\u043D\u0438\u0446\u0430:5,\u043F\u044F\u0442\u043D\u0438\u0446\u0443:5,\u043F\u044F\u0442\u043D\u0438\u0446\u044B:5,\u043F\u0442:5,"\u043F\u0442.":5,\u0441\u0443\u0431\u0431\u043E\u0442\u0430:6,\u0441\u0443\u0431\u0431\u043E\u0442\u0443:6,\u0441\u0443\u0431\u0431\u043E\u0442\u044B:6,\u0441\u0431:6,"\u0441\u0431.":6};I.FULL_MONTH_NAME_DICTIONARY={\u044F\u043D\u0432\u0430\u0440\u044C:1,\u044F\u043D\u0432\u0430\u0440\u044F:1,\u044F\u043D\u0432\u0430\u0440\u0435:1,\u0444\u0435\u0432\u0440\u044F\u043B\u044C:2,\u0444\u0435\u0432\u0440\u044F\u043B\u044F:2,\u0444\u0435\u0432\u0440\u044F\u043B\u0435:2,\u043C\u0430\u0440\u0442:3,\u043C\u0430\u0440\u0442\u0430:3,\u043C\u0430\u0440\u0442\u0435:3,\u0430\u043F\u0440\u0435\u043B\u044C:4,\u0430\u043F\u0440\u0435\u043B\u044F:4,\u0430\u043F\u0440\u0435\u043B\u0435:4,\u043C\u0430\u0439:5,\u043C\u0430\u044F:5,\u043C\u0430\u0435:5,\u0438\u044E\u043D\u044C:6,\u0438\u044E\u043D\u044F:6,\u0438\u044E\u043D\u0435:6,\u0438\u044E\u043B\u044C:7,\u0438\u044E\u043B\u044F:7,\u0438\u044E\u043B\u0435:7,\u0430\u0432\u0433\u0443\u0441\u0442:8,\u0430\u0432\u0433\u0443\u0441\u0442\u0430:8,\u0430\u0432\u0433\u0443\u0441\u0442\u0435:8,\u0441\u0435\u043D\u0442\u044F\u0431\u0440\u044C:9,\u0441\u0435\u043D\u0442\u044F\u0431\u0440\u044F:9,\u0441\u0435\u043D\u0442\u044F\u0431\u0440\u0435:9,\u043E\u043A\u0442\u044F\u0431\u0440\u044C:10,\u043E\u043A\u0442\u044F\u0431\u0440\u044F:10,\u043E\u043A\u0442\u044F\u0431\u0440\u0435:10,\u043D\u043E\u044F\u0431\u0440\u044C:11,\u043D\u043E\u044F\u0431\u0440\u044F:11,\u043D\u043E\u044F\u0431\u0440\u0435:11,\u0434\u0435\u043A\u0430\u0431\u0440\u044C:12,\u0434\u0435\u043A\u0430\u0431\u0440\u044F:12,\u0434\u0435\u043A\u0430\u0431\u0440\u0435:12};I.MONTH_DICTIONARY=Object.assign(Object.assign({},I.FULL_MONTH_NAME_DICTIONARY),{\u044F\u043D\u0432:1,"\u044F\u043D\u0432.":1,\u0444\u0435\u0432:2,"\u0444\u0435\u0432.":2,\u043C\u0430\u0440:3,"\u043C\u0430\u0440.":3,\u0430\u043F\u0440:4,"\u0430\u043F\u0440.":4,\u0430\u0432\u0433:8,"\u0430\u0432\u0433.":8,\u0441\u0435\u043D:9,"\u0441\u0435\u043D.":9,\u043E\u043A\u0442:10,"\u043E\u043A\u0442.":10,\u043D\u043E\u044F:11,"\u043D\u043E\u044F.":11,\u0434\u0435\u043A:12,"\u0434\u0435\u043A.":12});I.INTEGER_WORD_DICTIONARY={\u043E\u0434\u0438\u043D:1,\u043E\u0434\u043D\u0430:1,\u043E\u0434\u043D\u043E\u0439:1,\u043E\u0434\u043D\u0443:1,\u0434\u0432\u0435:2,\u0434\u0432\u0430:2,\u0434\u0432\u0443\u0445:2,\u0442\u0440\u0438:3,\u0442\u0440\u0435\u0445:3,\u0442\u0440\u0451\u0445:3,\u0447\u0435\u0442\u044B\u0440\u0435:4,\u0447\u0435\u0442\u044B\u0440\u0435\u0445:4,\u0447\u0435\u0442\u044B\u0440\u0451\u0445:4,\u043F\u044F\u0442\u044C:5,\u043F\u044F\u0442\u0438:5,\u0448\u0435\u0441\u0442\u044C:6,\u0448\u0435\u0441\u0442\u0438:6,\u0441\u0435\u043C\u044C:7,\u0441\u0435\u043C\u0438:7,\u0432\u043E\u0441\u0435\u043C\u044C:8,\u0432\u043E\u0441\u0435\u043C\u044C\u043C\u0438:8,\u0434\u0435\u0432\u044F\u0442\u044C:9,\u0434\u0435\u0432\u044F\u0442\u0438:9,\u0434\u0435\u0441\u044F\u0442\u044C:10,\u0434\u0435\u0441\u044F\u0442\u0438:10,\u043E\u0434\u0438\u043D\u043D\u0430\u0434\u0446\u0430\u0442\u044C:11,\u043E\u0434\u0438\u043D\u043D\u0430\u0434\u0446\u0430\u0442\u0438:11,\u0434\u0432\u0435\u043D\u0430\u0434\u0446\u0430\u0442\u044C:12,\u0434\u0432\u0435\u043D\u0430\u0434\u0446\u0430\u0442\u0438:12};I.ORDINAL_WORD_DICTIONARY={\u043F\u0435\u0440\u0432\u043E\u0435:1,\u043F\u0435\u0440\u0432\u043E\u0433\u043E:1,\u0432\u0442\u043E\u0440\u043E\u0435:2,\u0432\u0442\u043E\u0440\u043E\u0433\u043E:2,\u0442\u0440\u0435\u0442\u044C\u0435:3,\u0442\u0440\u0435\u0442\u044C\u0435\u0433\u043E:3,\u0447\u0435\u0442\u0432\u0435\u0440\u0442\u043E\u0435:4,\u0447\u0435\u0442\u0432\u0435\u0440\u0442\u043E\u0433\u043E:4,\u043F\u044F\u0442\u043E\u0435:5,\u043F\u044F\u0442\u043E\u0433\u043E:5,\u0448\u0435\u0441\u0442\u043E\u0435:6,\u0448\u0435\u0441\u0442\u043E\u0433\u043E:6,\u0441\u0435\u0434\u044C\u043C\u043E\u0435:7,\u0441\u0435\u0434\u044C\u043C\u043E\u0433\u043E:7,\u0432\u043E\u0441\u044C\u043C\u043E\u0435:8,\u0432\u043E\u0441\u044C\u043C\u043E\u0433\u043E:8,\u0434\u0435\u0432\u044F\u0442\u043E\u0435:9,\u0434\u0435\u0432\u044F\u0442\u043E\u0433\u043E:9,\u0434\u0435\u0441\u044F\u0442\u043E\u0435:10,\u0434\u0435\u0441\u044F\u0442\u043E\u0433\u043E:10,\u043E\u0434\u0438\u043D\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0435:11,\u043E\u0434\u0438\u043D\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:11,\u0434\u0432\u0435\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0435:12,\u0434\u0432\u0435\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:12,\u0442\u0440\u0438\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0435:13,\u0442\u0440\u0438\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:13,\u0447\u0435\u0442\u044B\u0440\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0435:14,\u0447\u0435\u0442\u044B\u0440\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:14,\u043F\u044F\u0442\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0435:15,\u043F\u044F\u0442\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:15,\u0448\u0435\u0441\u0442\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0435:16,\u0448\u0435\u0441\u0442\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:16,\u0441\u0435\u043C\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0435:17,\u0441\u0435\u043C\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:17,\u0432\u043E\u0441\u0435\u043C\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0435:18,\u0432\u043E\u0441\u0435\u043C\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:18,\u0434\u0435\u0432\u044F\u0442\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0435:19,\u0434\u0435\u0432\u044F\u0442\u043D\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:19,\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u043E\u0435:20,\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u043E\u0433\u043E:20,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u043F\u0435\u0440\u0432\u043E\u0435":21,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u043F\u0435\u0440\u0432\u043E\u0433\u043E":21,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0432\u0442\u043E\u0440\u043E\u0435":22,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0432\u0442\u043E\u0440\u043E\u0433\u043E":22,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0442\u0440\u0435\u0442\u044C\u0435":23,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0442\u0440\u0435\u0442\u044C\u0435\u0433\u043E":23,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0447\u0435\u0442\u0432\u0435\u0440\u0442\u043E\u0435":24,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0447\u0435\u0442\u0432\u0435\u0440\u0442\u043E\u0433\u043E":24,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u043F\u044F\u0442\u043E\u0435":25,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u043F\u044F\u0442\u043E\u0433\u043E":25,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0448\u0435\u0441\u0442\u043E\u0435":26,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0448\u0435\u0441\u0442\u043E\u0433\u043E":26,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0441\u0435\u0434\u044C\u043C\u043E\u0435":27,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0441\u0435\u0434\u044C\u043C\u043E\u0433\u043E":27,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0432\u043E\u0441\u044C\u043C\u043E\u0435":28,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0432\u043E\u0441\u044C\u043C\u043E\u0433\u043E":28,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0434\u0435\u0432\u044F\u0442\u043E\u0435":29,"\u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044C \u0434\u0435\u0432\u044F\u0442\u043E\u0433\u043E":29,\u0442\u0440\u0438\u0434\u0446\u0430\u0442\u043E\u0435:30,\u0442\u0440\u0438\u0434\u0446\u0430\u0442\u043E\u0433\u043E:30,"\u0442\u0440\u0438\u0434\u0446\u0430\u0442\u044C \u043F\u0435\u0440\u0432\u043E\u0435":31,"\u0442\u0440\u0438\u0434\u0446\u0430\u0442\u044C \u043F\u0435\u0440\u0432\u043E\u0433\u043E":31};I.TIME_UNIT_DICTIONARY={\u0441\u0435\u043A:"second",\u0441\u0435\u043A\u0443\u043D\u0434\u0430:"second",\u0441\u0435\u043A\u0443\u043D\u0434:"second",\u0441\u0435\u043A\u0443\u043D\u0434\u044B:"second",\u0441\u0435\u043A\u0443\u043D\u0434\u0443:"second",\u0441\u0435\u043A\u0443\u043D\u0434\u043E\u0447\u043A\u0430:"second",\u0441\u0435\u043A\u0443\u043D\u0434\u043E\u0447\u043A\u0438:"second",\u0441\u0435\u043A\u0443\u043D\u0434\u043E\u0447\u0435\u043A:"second",\u0441\u0435\u043A\u0443\u043D\u0434\u043E\u0447\u043A\u0443:"second",\u043C\u0438\u043D:"minute",\u043C\u0438\u043D\u0443\u0442\u0430:"minute",\u043C\u0438\u043D\u0443\u0442:"minute",\u043C\u0438\u043D\u0443\u0442\u044B:"minute",\u043C\u0438\u043D\u0443\u0442\u0443:"minute",\u043C\u0438\u043D\u0443\u0442\u043E\u043A:"minute",\u043C\u0438\u043D\u0443\u0442\u043A\u0438:"minute",\u043C\u0438\u043D\u0443\u0442\u043A\u0443:"minute",\u0447\u0430\u0441:"hour",\u0447\u0430\u0441\u043E\u0432:"hour",\u0447\u0430\u0441\u0430:"hour",\u0447\u0430\u0441\u0443:"hour",\u0447\u0430\u0441\u0438\u043A\u043E\u0432:"hour",\u0447\u0430\u0441\u0438\u043A\u0430:"hour",\u0447\u0430\u0441\u0438\u043A\u0435:"hour",\u0447\u0430\u0441\u0438\u043A:"hour",\u0434\u0435\u043D\u044C:"d",\u0434\u043D\u044F:"d",\u0434\u043D\u0435\u0439:"d",\u0441\u0443\u0442\u043E\u043A:"d",\u0441\u0443\u0442\u043A\u0438:"d",\u043D\u0435\u0434\u0435\u043B\u044F:"week",\u043D\u0435\u0434\u0435\u043B\u0435:"week",\u043D\u0435\u0434\u0435\u043B\u0438:"week",\u043D\u0435\u0434\u0435\u043B\u044E:"week",\u043D\u0435\u0434\u0435\u043B\u044C:"week",\u043D\u0435\u0434\u0435\u043B\u044C\u043A\u0435:"week",\u043D\u0435\u0434\u0435\u043B\u044C\u043A\u0438:"week",\u043D\u0435\u0434\u0435\u043B\u0435\u043A:"week",\u043C\u0435\u0441\u044F\u0446:"month",\u043C\u0435\u0441\u044F\u0446\u0435:"month",\u043C\u0435\u0441\u044F\u0446\u0435\u0432:"month",\u043C\u0435\u0441\u044F\u0446\u0430:"month",\u043A\u0432\u0430\u0440\u0442\u0430\u043B:"quarter",\u043A\u0432\u0430\u0440\u0442\u0430\u043B\u0435:"quarter",\u043A\u0432\u0430\u0440\u0442\u0430\u043B\u043E\u0432:"quarter",\u0433\u043E\u0434:"year",\u0433\u043E\u0434\u0430:"year",\u0433\u043E\u0434\u0443:"year",\u0433\u043E\u0434\u043E\u0432:"year",\u043B\u0435\u0442:"year",\u0433\u043E\u0434\u0438\u043A:"year",\u0433\u043E\u0434\u0438\u043A\u0430:"year",\u0433\u043E\u0434\u0438\u043A\u043E\u0432:"year"};I.NUMBER_PATTERN=`(?:${la.matchAnyPattern(I.INTEGER_WORD_DICTIONARY)}|[0-9]+|[0-9]+\\.[0-9]+|\u043F\u043E\u043B|\u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E|\u043F\u0430\u0440(?:\u044B|\u0443)|\\s{0,3})`;function _g(r){let e=r.toLowerCase();return I.INTEGER_WORD_DICTIONARY[e]!==void 0?I.INTEGER_WORD_DICTIONARY[e]:e.match(/несколько/)?3:e.match(/пол/)?.5:e.match(/пар/)?2:e===""?1:parseFloat(e)}I.parseNumberPattern=_g;I.ORDINAL_NUMBER_PATTERN=`(?:${la.matchAnyPattern(I.ORDINAL_WORD_DICTIONARY)}|[0-9]{1,2}(?:\u0433\u043E|\u043E\u0433\u043E|\u0435|\u043E\u0435)?)`;function JM(r){let e=r.toLowerCase();return I.ORDINAL_WORD_DICTIONARY[e]!==void 0?I.ORDINAL_WORD_DICTIONARY[e]:(e=e.replace(/(?:st|nd|rd|th)$/i,""),parseInt(e))}I.parseOrdinalNumberPattern=JM;var Mc="(?:\\s+(?:\u0433\u043E\u0434\u0443|\u0433\u043E\u0434\u0430|\u0433\u043E\u0434|\u0433|\u0433.))?";I.YEAR_PATTERN=`(?:[1-9][0-9]{0,3}${Mc}\\s*(?:\u043D.\u044D.|\u0434\u043E \u043D.\u044D.|\u043D. \u044D.|\u0434\u043E \u043D. \u044D.)|[1-2][0-9]{3}${Mc}|[5-9][0-9]${Mc})`;function eP(r){if(/(год|года|г|г.)/i.test(r)&&(r=r.replace(/(год|года|г|г.)/i,"")),/(до н.э.|до н. э.)/i.test(r))return r=r.replace(/(до н.э.|до н. э.)/i,""),-parseInt(r);if(/(н. э.|н.э.)/i.test(r))return r=r.replace(/(н. э.|н.э.)/i,""),parseInt(r);let e=parseInt(r);return QM.findMostLikelyADYear(e)}I.parseYear=eP;var Tg=`(${I.NUMBER_PATTERN})\\s{0,3}(${la.matchAnyPattern(I.TIME_UNIT_DICTIONARY)})`,gg=new RegExp(Tg,"i");I.TIME_UNITS_PATTERN=la.repeatedTimeunitPattern("(?:(?:\u043E\u043A\u043E\u043B\u043E|\u043F\u0440\u0438\u043C\u0435\u0440\u043D\u043E)\\s{0,3})?",Tg);function tP(r){let e={},t=r,n=gg.exec(t);for(;n;)rP(e,n),t=t.substring(n[0].length).trim(),n=gg.exec(t);return e}I.parseTimeUnits=tP;function rP(r,e){let t=_g(e[1]),n=I.TIME_UNIT_DICTIONARY[e[2].toLowerCase()];r[n]=t}});var vg=h(Oc=>{"use strict";Object.defineProperty(Oc,"__esModule",{value:!0});var Ai=Ke(),nP=pe(),iP=R(),bg=`(?:(?:\u043E\u043A\u043E\u043B\u043E|\u043F\u0440\u0438\u043C\u0435\u0440\u043D\u043E)\\s*(?:~\\s*)?)?(${Ai.TIME_UNITS_PATTERN})${Ai.REGEX_PARTS.rightBoundary}`,sP=new RegExp(`(?:\u0432 \u0442\u0435\u0447\u0435\u043D\u0438\u0435|\u0432 \u0442\u0435\u0447\u0435\u043D\u0438\u0438)\\s*${bg}`,Ai.REGEX_PARTS.flags),aP=new RegExp(bg,"i"),Pc=class extends iP.AbstractParserWithWordBoundaryChecking{patternLeftBoundary(){return Ai.REGEX_PARTS.leftBoundary}innerPattern(e){return e.option.forwardDate?aP:sP}innerExtract(e,t){let n=Ai.parseTimeUnits(t[1]);return nP.ParsingComponents.createRelativeFromReference(e.reference,n)}};Oc.default=Pc});var Mg=h(kc=>{"use strict";Object.defineProperty(kc,"__esModule",{value:!0});var oP=xe(),ki=Ke(),Dg=Ke(),ca=Ke(),uP=Q(),lP=R(),cP=new RegExp(`(?:\u0441)?\\s*(${ca.ORDINAL_NUMBER_PATTERN})(?:\\s{0,3}(?:\u043F\u043E|-|\u2013|\u0434\u043E)?\\s{0,3}(${ca.ORDINAL_NUMBER_PATTERN}))?(?:-|\\/|\\s{0,3}(?:of)?\\s{0,3})(${uP.matchAnyPattern(ki.MONTH_DICTIONARY)})(?:(?:-|\\/|,?\\s{0,3})(${Dg.YEAR_PATTERN}(?![^\\s]\\d)))?${ki.REGEX_PARTS.rightBoundary}`,ki.REGEX_PARTS.flags),Eg=1,Rg=2,dP=3,wg=4,Ac=class extends lP.AbstractParserWithWordBoundaryChecking{patternLeftBoundary(){return ki.REGEX_PARTS.leftBoundary}innerPattern(){return cP}innerExtract(e,t){let n=e.createParsingResult(t.index,t[0]),i=ki.MONTH_DICTIONARY[t[dP].toLowerCase()],s=ca.parseOrdinalNumberPattern(t[Eg]);if(s>31)return t.index=t.index+t[Eg].length,null;if(n.start.assign("month",i),n.start.assign("day",s),t[wg]){let a=Dg.parseYear(t[wg]);n.start.assign("year",a)}else{let a=oP.findYearClosestToRef(e.refDate,s,i);n.start.imply("year",a)}if(t[Rg]){let a=ca.parseOrdinalNumberPattern(t[Rg]);n.end=n.start.clone(),n.end.assign("day",a)}return n}};kc.default=Ac});var Ag=h(Cc=>{"use strict";Object.defineProperty(Cc,"__esModule",{value:!0});var Ni=Ke(),fP=xe(),pP=Q(),Og=Ke(),hP=R(),mP=new RegExp(`((?:\u0432)\\s*)?(${pP.matchAnyPattern(Ni.MONTH_DICTIONARY)})\\s*(?:[,-]?\\s*(${Og.YEAR_PATTERN})?)?(?=[^\\s\\w]|\\s+[^0-9]|\\s+$|$)`,Ni.REGEX_PARTS.flags),yP=2,Pg=3,Nc=class extends hP.AbstractParserWithWordBoundaryChecking{patternLeftBoundary(){return Ni.REGEX_PARTS.leftBoundary}innerPattern(){return mP}innerExtract(e,t){let n=t[yP].toLowerCase();if(t[0].length<=3&&!Ni.FULL_MONTH_NAME_DICTIONARY[n])return null;let i=e.createParsingResult(t.index,t.index+t[0].length);i.start.imply("day",1);let s=Ni.MONTH_DICTIONARY[n];if(i.start.assign("month",s),t[Pg]){let a=Og.parseYear(t[Pg]);i.start.assign("year",a)}else{let a=fP.findYearClosestToRef(e.refDate,1,s);i.start.imply("year",a)}return i}};Cc.default=Nc});var Ng=h(xc=>{"use strict";Object.defineProperty(xc,"__esModule",{value:!0});var da=Ee(),gP=xr(),kg=Ke(),Sc=class extends gP.AbstractTimeExpressionParser{constructor(e){super(e)}patternFlags(){return kg.REGEX_PARTS.flags}primaryPatternLeftBoundary(){return"(^|\\s|T|(?:[^\\p{L}\\p{N}_]))"}followingPhase(){return"\\s*(?:\\-|\\\u2013|\\~|\\\u301C|\u0434\u043E|\u0438|\u043F\u043E|\\?)\\s*"}primaryPrefix(){return"(?:(?:\u0432|\u0441)\\s*)??"}primarySuffix(){return`(?:\\s*(?:\u0443\u0442\u0440\u0430|\u0432\u0435\u0447\u0435\u0440\u0430|\u043F\u043E\u0441\u043B\u0435 \u043F\u043E\u043B\u0443\u0434\u043D\u044F))?(?!\\/)${kg.REGEX_PARTS.rightBoundary}`}extractPrimaryTimeComponents(e,t){let n=super.extractPrimaryTimeComponents(e,t);if(n){if(t[0].endsWith("\u0432\u0435\u0447\u0435\u0440\u0430")){let i=n.get("hour");i>=6&&i<12?(n.assign("hour",n.get("hour")+12),n.assign("meridiem",da.Meridiem.PM)):i<6&&n.assign("meridiem",da.Meridiem.AM)}if(t[0].endsWith("\u043F\u043E\u0441\u043B\u0435 \u043F\u043E\u043B\u0443\u0434\u043D\u044F")){n.assign("meridiem",da.Meridiem.PM);let i=n.get("hour");i>=0&&i<=6&&n.assign("hour",n.get("hour")+12)}t[0].endsWith("\u0443\u0442\u0440\u0430")&&(n.assign("meridiem",da.Meridiem.AM),n.get("hour")<12&&n.assign("hour",n.get("hour")))}return n}};xc.default=Sc});var Cg=h(Uc=>{"use strict";Object.defineProperty(Uc,"__esModule",{value:!0});var fa=Ke(),_P=pe(),TP=R(),bP=it(),vP=new RegExp(`(${fa.TIME_UNITS_PATTERN})\\s{0,5}\u043D\u0430\u0437\u0430\u0434(?=(?:\\W|$))`,fa.REGEX_PARTS.flags),Ic=class extends TP.AbstractParserWithWordBoundaryChecking{patternLeftBoundary(){return fa.REGEX_PARTS.leftBoundary}innerPattern(){return vP}innerExtract(e,t){let n=fa.parseTimeUnits(t[1]),i=bP.reverseTimeUnits(n);return _P.ParsingComponents.createRelativeFromReference(e.reference,i)}};Uc.default=Ic});var Sg=h(Ci=>{"use strict";var EP=Ci&&Ci.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Ci,"__esModule",{value:!0});var RP=EP(At()),qc=class extends RP.default{patternBetween(){return/^\s*(и до|и по|до|по|-)\s*$/i}};Ci.default=qc});var xg=h(Si=>{"use strict";var wP=Si&&Si.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Si,"__esModule",{value:!0});var DP=wP(jt()),Fc=class extends DP.default{patternBetween(){return new RegExp("^\\s*(T|\u0432|,|-)?\\s*$")}};Si.default=Fc});var Ig=h(Xt=>{"use strict";var MP=Xt&&Xt.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),PP=Xt&&Xt.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),OP=Xt&&Xt.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&MP(e,r,t);return PP(e,r),e};Object.defineProperty(Xt,"__esModule",{value:!0});var AP=R(),xi=OP(Ht()),Wc=Ke(),kP=new RegExp(`(?:\u0441|\u0441\u043E)?\\s*(\u0441\u0435\u0433\u043E\u0434\u043D\u044F|\u0432\u0447\u0435\u0440\u0430|\u0437\u0430\u0432\u0442\u0440\u0430|\u043F\u043E\u0441\u043B\u0435\u0437\u0430\u0432\u0442\u0440\u0430|\u043F\u043E\u0437\u0430\u0432\u0447\u0435\u0440\u0430)${Wc.REGEX_PARTS.rightBoundary}`,Wc.REGEX_PARTS.flags),Lc=class extends AP.AbstractParserWithWordBoundaryChecking{patternLeftBoundary(){return Wc.REGEX_PARTS.leftBoundary}innerPattern(e){return kP}innerExtract(e,t){let n=t[1].toLowerCase(),i=e.createParsingComponents();switch(n){case"\u0441\u0435\u0433\u043E\u0434\u043D\u044F":return xi.today(e.reference);case"\u0432\u0447\u0435\u0440\u0430":return xi.yesterday(e.reference);case"\u0437\u0430\u0432\u0442\u0440\u0430":return xi.tomorrow(e.reference);case"\u043F\u043E\u0441\u043B\u0435\u0437\u0430\u0432\u0442\u0440\u0430":return xi.theDayAfter(e.reference,2);case"\u043F\u043E\u0437\u0430\u0432\u0447\u0435\u0440\u0430":return xi.theDayBefore(e.reference,2)}return i}};Xt.default=Lc});var Ug=h(bt=>{"use strict";var NP=bt&&bt.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),CP=bt&&bt.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),SP=bt&&bt.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&NP(e,r,t);return CP(e,r),e},xP=bt&&bt.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(bt,"__esModule",{value:!0});var IP=R(),$r=SP(Ht()),UP=nt(),qP=xP(K()),Yc=Ke(),FP=new RegExp(`(\u0441\u0435\u0439\u0447\u0430\u0441|\u043F\u0440\u043E\u0448\u043B\u044B\u043C\\s*\u0432\u0435\u0447\u0435\u0440\u043E\u043C|\u043F\u0440\u043E\u0448\u043B\u043E\u0439\\s*\u043D\u043E\u0447\u044C\u044E|\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0439\\s*\u043D\u043E\u0447\u044C\u044E|\u0441\u0435\u0433\u043E\u0434\u043D\u044F\\s*\u043D\u043E\u0447\u044C\u044E|\u044D\u0442\u043E\u0439\\s*\u043D\u043E\u0447\u044C\u044E|\u043D\u043E\u0447\u044C\u044E|\u044D\u0442\u0438\u043C \u0443\u0442\u0440\u043E\u043C|\u0443\u0442\u0440\u043E\u043C|\u0443\u0442\u0440\u0430|\u0432\\s*\u043F\u043E\u043B\u0434\u0435\u043D\u044C|\u0432\u0435\u0447\u0435\u0440\u043E\u043C|\u0432\u0435\u0447\u0435\u0440\u0430|\u0432\\s*\u043F\u043E\u043B\u043D\u043E\u0447\u044C)${Yc.REGEX_PARTS.rightBoundary}`,Yc.REGEX_PARTS.flags),$c=class extends IP.AbstractParserWithWordBoundaryChecking{patternLeftBoundary(){return Yc.REGEX_PARTS.leftBoundary}innerPattern(){return FP}innerExtract(e,t){let n=qP.default(e.refDate),i=t[0].toLowerCase(),s=e.createParsingComponents();if(i==="\u0441\u0435\u0439\u0447\u0430\u0441")return $r.now(e.reference);if(i==="\u0432\u0435\u0447\u0435\u0440\u043E\u043C"||i==="\u0432\u0435\u0447\u0435\u0440\u0430")return $r.evening(e.reference);if(i.endsWith("\u0443\u0442\u0440\u043E\u043C")||i.endsWith("\u0443\u0442\u0440\u0430"))return $r.morning(e.reference);if(i.match(/в\s*полдень/))return $r.noon(e.reference);if(i.match(/прошлой\s*ночью/))return $r.lastNight(e.reference);if(i.match(/прошлым\s*вечером/))return $r.yesterdayEvening(e.reference);if(i.match(/следующей\s*ночью/)){let a=n.hour()<22?1:2;n=n.add(a,"day"),UP.assignSimilarDate(s,n),s.imply("hour",0)}return i.match(/в\s*полночь/)||i.endsWith("\u043D\u043E\u0447\u044C\u044E")?$r.midnight(e.reference):s}};bt.default=$c});var qg=h(Bc=>{"use strict";Object.defineProperty(Bc,"__esModule",{value:!0});var Ii=Ke(),WP=Q(),LP=R(),YP=Ur(),$P=new RegExp(`(?:(?:,|\\(|\uFF08)\\s*)?(?:\u0432\\s*?)?(?:(\u044D\u0442\u0443|\u044D\u0442\u043E\u0442|\u043F\u0440\u043E\u0448\u043B\u044B\u0439|\u043F\u0440\u043E\u0448\u043B\u0443\u044E|\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0439|\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0443\u044E|\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0433\u043E)\\s*)?(${WP.matchAnyPattern(Ii.WEEKDAY_DICTIONARY)})(?:\\s*(?:,|\\)|\uFF09))?(?:\\s*\u043D\u0430\\s*(\u044D\u0442\u043E\u0439|\u043F\u0440\u043E\u0448\u043B\u043E\u0439|\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0439)\\s*\u043D\u0435\u0434\u0435\u043B\u0435)?${Ii.REGEX_PARTS.rightBoundary}`,Ii.REGEX_PARTS.flags),jP=1,BP=2,GP=3,jc=class extends LP.AbstractParserWithWordBoundaryChecking{innerPattern(){return $P}patternLeftBoundary(){return Ii.REGEX_PARTS.leftBoundary}innerExtract(e,t){let n=t[BP].toLowerCase(),i=Ii.WEEKDAY_DICTIONARY[n],s=t[jP],a=t[GP],o=s||a;o=o||"",o=o.toLowerCase();let u=null;o=="\u043F\u0440\u043E\u0448\u043B\u044B\u0439"||o=="\u043F\u0440\u043E\u0448\u043B\u0443\u044E"||o=="\u043F\u0440\u043E\u0448\u043B\u043E\u0439"?u="last":o=="\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0439"||o=="\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0443\u044E"||o=="\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0439"||o=="\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0433\u043E"?u="next":(o=="\u044D\u0442\u043E\u0442"||o=="\u044D\u0442\u0443"||o=="\u044D\u0442\u043E\u0439")&&(u="this");let l=YP.toDayJSWeekday(e.refDate,i,u);return e.createParsingComponents().assign("weekday",i).imply("day",l.date()).imply("month",l.month()+1).imply("year",l.year())}};Bc.default=jc});var Wg=h(qi=>{"use strict";var HP=qi&&qi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(qi,"__esModule",{value:!0});var Ui=Ke(),Fg=pe(),zP=HP(K()),KP=R(),VP=Q(),ZP=new RegExp(`(\u0432 \u043F\u0440\u043E\u0448\u043B\u043E\u043C|\u043D\u0430 \u043F\u0440\u043E\u0448\u043B\u043E\u0439|\u043D\u0430 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0439|\u0432 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u043C|\u043D\u0430 \u044D\u0442\u043E\u0439|\u0432 \u044D\u0442\u043E\u043C)\\s*(${VP.matchAnyPattern(Ui.TIME_UNIT_DICTIONARY)})(?=\\s*)${Ui.REGEX_PARTS.rightBoundary}`,Ui.REGEX_PARTS.flags),XP=1,QP=2,Gc=class extends KP.AbstractParserWithWordBoundaryChecking{patternLeftBoundary(){return Ui.REGEX_PARTS.leftBoundary}innerPattern(){return ZP}innerExtract(e,t){let n=t[XP].toLowerCase(),i=t[QP].toLowerCase(),s=Ui.TIME_UNIT_DICTIONARY[i];if(n=="\u043D\u0430 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0439"||n=="\u0432 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u043C"){let u={};return u[s]=1,Fg.ParsingComponents.createRelativeFromReference(e.reference,u)}if(n=="\u0432 \u043F\u0440\u043E\u0448\u043B\u043E\u043C"||n=="\u043D\u0430 \u043F\u0440\u043E\u0448\u043B\u043E\u0439"){let u={};return u[s]=-1,Fg.ParsingComponents.createRelativeFromReference(e.reference,u)}let a=e.createParsingComponents(),o=zP.default(e.reference.instant);return s.match(/week/i)?(o=o.add(-o.get("d"),"d"),a.imply("day",o.date()),a.imply("month",o.month()+1),a.imply("year",o.year())):s.match(/month/i)?(o=o.add(-o.date()+1,"d"),a.imply("day",o.date()),a.assign("year",o.year()),a.assign("month",o.month()+1)):s.match(/year/i)&&(o=o.add(-o.date()+1,"d"),o=o.add(-o.month(),"month"),a.imply("day",o.date()),a.imply("month",o.month()+1),a.assign("year",o.year())),a}};qi.default=Gc});var Lg=h(zc=>{"use strict";Object.defineProperty(zc,"__esModule",{value:!0});var Fi=Ke(),JP=pe(),eO=R(),tO=it(),rO=new RegExp(`(\u044D\u0442\u0438|\u043F\u043E\u0441\u043B\u0435\u0434\u043D\u0438\u0435|\u043F\u0440\u043E\u0448\u043B\u044B\u0435|\u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0435|\u043F\u043E\u0441\u043B\u0435|\u0447\u0435\u0440\u0435\u0437|\\+|-)\\s*(${Fi.TIME_UNITS_PATTERN})${Fi.REGEX_PARTS.rightBoundary}`,Fi.REGEX_PARTS.flags),Hc=class extends eO.AbstractParserWithWordBoundaryChecking{patternLeftBoundary(){return Fi.REGEX_PARTS.leftBoundary}innerPattern(){return rO}innerExtract(e,t){let n=t[1].toLowerCase(),i=Fi.parseTimeUnits(t[2]);switch(n){case"\u043F\u043E\u0441\u043B\u0435\u0434\u043D\u0438\u0435":case"\u043F\u0440\u043E\u0448\u043B\u044B\u0435":case"-":i=tO.reverseTimeUnits(i);break}return JP.ParsingComponents.createRelativeFromReference(e.reference,i)}};zc.default=Hc});var jg=h(ke=>{"use strict";var Je=ke&&ke.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ke,"__esModule",{value:!0});ke.createConfiguration=ke.createCasualConfiguration=ke.parseDate=ke.parse=ke.strict=ke.casual=void 0;var nO=Je(vg()),iO=Je(Mg()),sO=Je(Ag()),aO=Je(Ng()),oO=Je(Cg()),uO=Je(Sg()),lO=Je(xg()),cO=Bt(),dO=Je(Ig()),fO=Je(Ug()),pO=Je(qg()),hO=Je(Wg()),Yg=mt(),mO=Je(qr()),yO=Je(Lg());ke.casual=new Yg.Chrono($g());ke.strict=new Yg.Chrono(Kc(!0));function gO(r,e,t){return ke.casual.parse(r,e,t)}ke.parse=gO;function _O(r,e,t){return ke.casual.parseDate(r,e,t)}ke.parseDate=_O;function $g(){let r=Kc(!1);return r.parsers.unshift(new dO.default),r.parsers.unshift(new fO.default),r.parsers.unshift(new sO.default),r.parsers.unshift(new hO.default),r.parsers.unshift(new yO.default),r}ke.createCasualConfiguration=$g;function Kc(r=!0){return cO.includeCommonConfiguration({parsers:[new mO.default(!0),new nO.default,new iO.default,new pO.default,new aO.default(r),new oO.default],refiners:[new lO.default,new uO.default]},r)}ke.createConfiguration=Kc});var Ee=h(F=>{"use strict";var TO=F&&F.__createBinding||(Object.create?function(r,e,t,n){n===void 0&&(n=t),Object.defineProperty(r,n,{enumerable:!0,get:function(){return e[t]}})}:function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]}),bO=F&&F.__setModuleDefault||(Object.create?function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}:function(r,e){r.default=e}),br=F&&F.__importStar||function(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)t!=="default"&&Object.prototype.hasOwnProperty.call(r,t)&&TO(e,r,t);return bO(e,r),e};Object.defineProperty(F,"__esModule",{value:!0});F.parseDate=F.parse=F.casual=F.strict=F.ru=F.zh=F.nl=F.pt=F.ja=F.fr=F.de=F.Meridiem=F.Chrono=F.en=void 0;var Vc=br(fu());F.en=Vc;var vO=mt();Object.defineProperty(F,"Chrono",{enumerable:!0,get:function(){return vO.Chrono}});var EO;(function(r){r[r.AM=0]="AM",r[r.PM=1]="PM"})(EO=F.Meridiem||(F.Meridiem={}));var RO=br(Qh());F.de=RO;var wO=br(Pm());F.fr=wO;var DO=br(Um());F.ja=DO;var MO=br(Qm());F.pt=MO;var PO=br(Uy());F.nl=PO;var OO=br(yg());F.zh=OO;var AO=br(jg());F.ru=AO;F.strict=Vc.strict;F.casual=Vc.casual;function kO(r,e,t){return F.casual.parse(r,e,t)}F.parse=kO;function NO(r,e,t){return F.casual.parseDate(r,e,t)}F.parseDate=NO});var St=h(wr=>{"use strict";wr.__esModule=!0;var WO;(function(r){r.AND="AND",r.OR="OR",r.XOR="XOR",r.NOT="NOT"})(WO=wr.Operators||(wr.Operators={}));var LO;(function(r){r.OPEN_PARENTHESIS="(",r.CLOSE_PARENTHESIS=")"})(LO=wr.StructuralCharacters||(wr.StructuralCharacters={}));var YO;(function(r){r.IDENTIFIER="IDENTIFIER",r.OPERATOR="OPERATOR",r.STRUCTURAL_CHARACTER="STRUCTURAL_CHARACTER",r.EOF="EOF",r.COMMENT="COMMENT"})(YO=wr.Tokens||(wr.Tokens={}))});var dd=h(Aa=>{"use strict";Aa.__esModule=!0;var he=St();Aa.OPERATOR_PRECEDENCE={NOT:0,XOR:1,AND:2,OR:3};Aa.VALID_TOKENS={identifierOnly:[{name:he.Tokens.IDENTIFIER},{name:he.Tokens.STRUCTURAL_CHARACTER,value:he.StructuralCharacters.OPEN_PARENTHESIS}],identifierOrNot:[{name:he.Tokens.IDENTIFIER},{name:he.Tokens.STRUCTURAL_CHARACTER,value:he.StructuralCharacters.OPEN_PARENTHESIS},{name:he.Tokens.OPERATOR,value:he.Operators.NOT}],binaryOperator:[{name:he.Tokens.OPERATOR,value:he.Operators.AND},{name:he.Tokens.OPERATOR,value:he.Operators.OR},{name:he.Tokens.OPERATOR,value:he.Operators.XOR}],binaryOperatorOrClose:[{name:he.Tokens.OPERATOR,value:he.Operators.AND},{name:he.Tokens.OPERATOR,value:he.Operators.OR},{name:he.Tokens.OPERATOR,value:he.Operators.XOR},{name:he.Tokens.STRUCTURAL_CHARACTER,value:he.StructuralCharacters.CLOSE_PARENTHESIS}]}});var fd=h(er=>{"use strict";er.__esModule=!0;var Tn=St();er.STRUCTURAL_CHARACTERS={"(":Tn.StructuralCharacters.OPEN_PARENTHESIS,")":Tn.StructuralCharacters.CLOSE_PARENTHESIS};er.OPERATORS={AND:Tn.Operators.AND,OR:Tn.Operators.OR,XOR:Tn.Operators.XOR,NOT:Tn.Operators.NOT};er.SEPARATORS=new Set([32,9,10,13].map(function(r){return String.fromCodePoint(r)}));er.QUOTED_IDENTIFIER_DELIMITER=String.fromCodePoint(34);er.COMMENT_DELIMITER=String.fromCodePoint(35);er.EOL=String.fromCodePoint(10);er.ESCAPE_CHARACTER=String.fromCodePoint(92)});var e_=h(tr=>{"use strict";var pd=tr&&tr.__assign||function(){return pd=Object.assign||function(r){for(var e,t=1,n=arguments.length;t{"use strict";hd.__esModule=!0;var bn=St(),et=fd(),vn=e_();hd.lex=function(r){for(var e=null,t=null,n=null,i=0;i{"use strict";var $O=rr&&rr.__spreadArrays||function(){for(var r=0,e=0,t=arguments.length;e{"use strict";var Rn=Vi&&Vi.__spreadArrays||function(){for(var r=0,e=0,t=arguments.length;e{"use strict";nr.__esModule=!0;var s_=St();nr.andUtil=function(r,e){return r&&e};nr.orUtil=function(r,e){return r||e};nr.xorUtil=function(r,e){return r!==e};nr.notUtil=function(r){return!r};nr.isIdentifier=function(r){var e=r.name,t=r.value;return e===s_.Tokens.IDENTIFIER&&typeof t=="string"};nr.isOperator=function(r){var e=r.name,t=r.value;return e===s_.Tokens.OPERATOR&&typeof t=="string"};nr.throwInvalidExpression=function(r){throw new TypeError("Invalid postfix expression: "+r)}});var a_=h(bd=>{"use strict";var Zi;bd.__esModule=!0;var _d=St(),Td=gd();bd.OPERATOR_MAP=(Zi={},Zi[_d.Operators.AND]=Td.andUtil,Zi[_d.Operators.OR]=Td.orUtil,Zi[_d.Operators.XOR]=Td.xorUtil,Zi)});var u_=h(Gr=>{"use strict";var vd=Gr&&Gr.__spreadArrays||function(){for(var r=0,e=0,t=arguments.length;e{"use strict";Xi.__esModule=!0;var l_=u_();Xi.getEvaluator=l_.getEvaluator;Xi.evaluate=l_.evaluate;var HO=yd();Xi.parse=HO.parse});var JO={};R_(JO,{default:()=>qa});module.exports=w_(JO);var m_=require("obsidian");var ys=require("obsidian");var tA=new Error("timeout while waiting for mutex to become available"),rA=new Error("mutex already locked"),D_=new Error("request for lock canceled"),zd=function(r,e,t,n){function i(s){return s instanceof t?s:new t(function(a){a(s)})}return new(t||(t=Promise))(function(s,a){function o(c){try{l(n.next(c))}catch(d){a(d)}}function u(c){try{l(n.throw(c))}catch(d){a(d)}}function l(c){c.done?s(c.value):i(c.value).then(o,u)}l((n=n.apply(r,e||[])).next())})},$a=class{constructor(e,t=D_){if(this._maxConcurrency=e,this._cancelError=t,this._queue=[],this._waiters=[],e<=0)throw new Error("semaphore must be initialized to a positive value");this._value=e}acquire(){let e=this.isLocked(),t=new Promise((n,i)=>this._queue.push({resolve:n,reject:i}));return e||this._dispatch(),t}runExclusive(e){return zd(this,void 0,void 0,function*(){let[t,n]=yield this.acquire();try{return yield e(t)}finally{n()}})}waitForUnlock(){return zd(this,void 0,void 0,function*(){return this.isLocked()?new Promise(t=>this._waiters.push({resolve:t})):Promise.resolve()})}isLocked(){return this._value<=0}release(){if(this._maxConcurrency>1)throw new Error("this method is unavailable on semaphores with concurrency > 1; use the scoped release returned by acquire instead");if(this._currentReleaser){let e=this._currentReleaser;this._currentReleaser=void 0,e()}}cancel(){this._queue.forEach(e=>e.reject(this._cancelError)),this._queue=[]}_dispatch(){let e=this._queue.shift();if(!e)return;let t=!1;this._currentReleaser=()=>{t||(t=!0,this._value++,this._resolveWaiters(),this._dispatch())},e.resolve([this._value--,this._currentReleaser])}_resolveWaiters(){this._waiters.forEach(e=>e.resolve()),this._waiters=[]}},M_=function(r,e,t,n){function i(s){return s instanceof t?s:new t(function(a){a(s)})}return new(t||(t=Promise))(function(s,a){function o(c){try{l(n.next(c))}catch(d){a(d)}}function u(c){try{l(n.throw(c))}catch(d){a(d)}}function l(c){c.done?s(c.value):i(c.value).then(o,u)}l((n=n.apply(r,e||[])).next())})},os=class{constructor(e){this._semaphore=new $a(1,e)}acquire(){return M_(this,void 0,void 0,function*(){let[,e]=yield this._semaphore.acquire();return e})}runExclusive(e){return this._semaphore.runExclusive(()=>e())}isLocked(){return this._semaphore.isLocked()}waitForUnlock(){return this._semaphore.waitForUnlock()}release(){this._semaphore.release()}cancel(){return this._semaphore.cancel()}};var tp=require("obsidian");var Kd=require("obsidian");var P_={globalFilter:"",removeGlobalFilter:!1,setDoneDate:!0,autoSuggestInEditor:!0,autoSuggestMinMatch:0,autoSuggestMaxItems:6},ja=$e({},P_),ne=()=>$e({},ja),qt=r=>(ja=$e($e({},ja),r),ne());var Ba,Ga,Vd=({metadataCache:r,vault:e})=>{Ba=r,Ga=e},us=t=>se(void 0,[t],function*({originalTask:r,newTasks:e}){if(Ga===void 0||Ba===void 0){console.error("Tasks: cannot use File before initializing it.");return}Array.isArray(e)||(e=[e]),Zd({originalTask:r,newTasks:e,vault:Ga,metadataCache:Ba,previousTries:0})}),Zd=s=>se(void 0,[s],function*({originalTask:r,newTasks:e,vault:t,metadataCache:n,previousTries:i}){let a=()=>{if(i>10){console.error("Tasks: Too many retries. File update not possible ...");return}let g=Math.min(Math.pow(10,i),100);setTimeout(()=>{Zd({originalTask:r,newTasks:e,vault:t,metadataCache:n,previousTries:i+1})},g)},o=t.getAbstractFileByPath(r.path);if(!(o instanceof Kd.TFile))return console.warn(`Tasks: No file found for task ${r.description}. Retrying ...`),a();if(o.extension!=="md"){console.error("Tasks: Only supporting files with the .md file extension.");return}let u=n.getFileCache(o);if(u==null||u===null)return console.warn(`Tasks: No file cache found for file ${o.path}. Retrying ...`),a();let l=u.listItems;if(l===void 0||l.length===0)return console.warn(`Tasks: No list items found in file cache of ${o.path}. Retrying ...`),a();let d=(yield t.read(o)).split(` +`),{globalFilter:f}=ne(),p,y=0;for(let g of l){if(g.position.start.lineg.toFileLineString()),...d.slice(p.position.start.line+1)];yield t.modify(o,m.join(` +`))});var Kr=class{constructor(){this.hideTaskCount=!1;this.hideBacklinks=!1;this.hidePriority=!1;this.hideStartDate=!1;this.hideScheduledDate=!1;this.hideDoneDate=!1;this.hideDueDate=!1;this.hideRecurrenceRule=!1;this.hideEditButton=!1;this.shortMode=!1}};var ls=["MO","TU","WE","TH","FR","SA","SU"],ge=function(){function r(e,t){if(t===0)throw new Error("Can't create weekday with n == 0");this.weekday=e,this.n=t}return r.fromStr=function(e){return new r(ls.indexOf(e))},r.prototype.nth=function(e){return this.n===e?this:new r(this.weekday,e)},r.prototype.equals=function(e){return this.weekday===e.weekday&&this.n===e.n},r.prototype.toString=function(){var e=ls[this.weekday];return this.n&&(e=(this.n>0?"+":"")+String(this.n)+e),e},r.prototype.getJsWeekday=function(){return this.weekday===6?0:this.weekday+1},r}();var ae=function(r){return r!=null},Ve=function(r){return typeof r=="number"},Ha=function(r){return typeof r=="string"&&ls.includes(r)},Se=Array.isArray,tt=function(r,e){e===void 0&&(e=r),arguments.length===1&&(e=r,r=0);for(var t=[],n=r;n>0,n.length>e?String(n):(e=e-n.length,e>t.length&&(t+=j(t,e/t.length)),t.slice(0,e)+String(n))}var Qd=function(r,e,t){var n=r.split(e);return t?n.slice(0,t).concat([n.slice(t).join(e)]):n},qe=function(r,e){var t=r%e;return t*e<0?t+e:t},cs=function(r,e){return{div:Math.floor(r/e),mod:qe(r,e)}},Ze=function(r){return!ae(r)||r.length===0},me=function(r){return!Ze(r)},B=function(r,e){return me(r)&&r.indexOf(e)!==-1};var lr;(function(r){r.MONTH_DAYS=[31,28,31,30,31,30,31,31,30,31,30,31],r.ONE_DAY=1e3*60*60*24,r.MAXYEAR=9999,r.ORDINAL_BASE=new Date(Date.UTC(1970,0,1)),r.PY_WEEKDAYS=[6,0,1,2,3,4,5],r.getYearDay=function(e){var t=new Date(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate());return Math.ceil((t.valueOf()-new Date(e.getUTCFullYear(),0,1).valueOf())/r.ONE_DAY)+1},r.isLeapYear=function(e){return e%4===0&&e%100!==0||e%400===0},r.isDate=function(e){return e instanceof Date},r.isValidDate=function(e){return r.isDate(e)&&!isNaN(e.getTime())},r.tzOffset=function(e){return e.getTimezoneOffset()*60*1e3},r.daysBetween=function(e,t){var n=e.getTime()-r.tzOffset(e),i=t.getTime()-r.tzOffset(t),s=n-i;return Math.round(s/r.ONE_DAY)},r.toOrdinal=function(e){return r.daysBetween(e,r.ORDINAL_BASE)},r.fromOrdinal=function(e){return new Date(r.ORDINAL_BASE.getTime()+e*r.ONE_DAY)},r.getMonthDays=function(e){var t=e.getUTCMonth();return t===1&&r.isLeapYear(e.getUTCFullYear())?29:r.MONTH_DAYS[t]},r.getWeekday=function(e){return r.PY_WEEKDAYS[e.getUTCDay()]},r.monthRange=function(e,t){var n=new Date(Date.UTC(e,t,1));return[r.getWeekday(n),r.getMonthDays(n)]},r.combine=function(e,t){return t=t||e,new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()))},r.clone=function(e){var t=new Date(e.getTime());return t},r.cloneDates=function(e){for(var t=[],n=0;nthis.maxDate;if(this.method==="between"){if(t)return!0;if(n)return!1}else if(this.method==="before"){if(n)return!1}else if(this.method==="after")return t?!0:(this.add(e),!1);return this.add(e)},r.prototype.add=function(e){return this._result.push(e),!0},r.prototype.getValue=function(){var e=this._result;switch(this.method){case"all":case"between":return e;case"before":case"after":default:return e.length?e[e.length-1]:null}},r.prototype.clone=function(){return new r(this.method,this.args)},r}(),Ft=O_;var Ef=as(vf(),1),{__extends:Zr,__assign:je,__rest:gA,__decorate:_A,__param:TA,__metadata:bA,__awaiter:vA,__generator:EA,__exportStar:RA,__createBinding:wA,__values:DA,__read:MA,__spread:PA,__spreadArrays:OA,__spreadArray:T,__await:AA,__asyncGenerator:kA,__asyncDelegator:NA,__asyncValues:CA,__makeTemplateObject:SA,__importStar:xA,__importDefault:IA,__classPrivateFieldGet:UA,__classPrivateFieldSet:qA,__classPrivateFieldIn:FA}=Ef.default;var A_=function(r){Zr(e,r);function e(t,n,i){var s=r.call(this,t,n)||this;return s.iterator=i,s}return e.prototype.add=function(t){return this.iterator(t,this._result.length)?(this._result.push(t),!0):!1},e}(Ft),Ka=A_;var k_={dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],tokens:{SKIP:/^[ \r\n\t]+|^\.$/,number:/^[1-9][0-9]*/,numberAsText:/^(one|two|three)/i,every:/^every/i,"day(s)":/^days?/i,"weekday(s)":/^weekdays?/i,"week(s)":/^weeks?/i,"hour(s)":/^hours?/i,"minute(s)":/^minutes?/i,"month(s)":/^months?/i,"year(s)":/^years?/i,on:/^(on|in)/i,at:/^(at)/i,the:/^the/i,first:/^first/i,second:/^second/i,third:/^third/i,nth:/^([1-9][0-9]*)(\.|th|nd|rd|st)/i,last:/^last/i,for:/^for/i,"time(s)":/^times?/i,until:/^(un)?til/i,monday:/^mo(n(day)?)?/i,tuesday:/^tu(e(s(day)?)?)?/i,wednesday:/^we(d(n(esday)?)?)?/i,thursday:/^th(u(r(sday)?)?)?/i,friday:/^fr(i(day)?)?/i,saturday:/^sa(t(urday)?)?/i,sunday:/^su(n(day)?)?/i,january:/^jan(uary)?/i,february:/^feb(ruary)?/i,march:/^mar(ch)?/i,april:/^apr(il)?/i,may:/^may/i,june:/^june?/i,july:/^july?/i,august:/^aug(ust)?/i,september:/^sep(t(ember)?)?/i,october:/^oct(ober)?/i,november:/^nov(ember)?/i,december:/^dec(ember)?/i,comma:/^(,\s*|(and|or)\s*)+/i}},Or=k_;var Rf=function(r,e){return r.indexOf(e)!==-1},N_=function(r){return r.toString()},C_=function(r,e,t){return"".concat(e," ").concat(t,", ").concat(r)},S_=function(){function r(e,t,n,i){if(t===void 0&&(t=N_),n===void 0&&(n=Or),i===void 0&&(i=C_),this.text=[],this.language=n||Or,this.gettext=t,this.dateFormatter=i,this.rrule=e,this.options=e.options,this.origOptions=e.origOptions,this.origOptions.bymonthday){var s=[].concat(this.options.bymonthday),a=[].concat(this.options.bynmonthday);s.sort(function(c,d){return c-d}),a.sort(function(c,d){return d-c}),this.bymonthday=s.concat(a),this.bymonthday.length||(this.bymonthday=null)}if(ae(this.origOptions.byweekday)){var o=Se(this.origOptions.byweekday)?this.origOptions.byweekday:[this.origOptions.byweekday],u=String(o);this.byweekday={allWeeks:o.filter(function(c){return!c.n}),someWeeks:o.filter(function(c){return Boolean(c.n)}),isWeekdays:u.indexOf("MO")!==-1&&u.indexOf("TU")!==-1&&u.indexOf("WE")!==-1&&u.indexOf("TH")!==-1&&u.indexOf("FR")!==-1&&u.indexOf("SA")===-1&&u.indexOf("SU")===-1,isEveryDay:u.indexOf("MO")!==-1&&u.indexOf("TU")!==-1&&u.indexOf("WE")!==-1&&u.indexOf("TH")!==-1&&u.indexOf("FR")!==-1&&u.indexOf("SA")!==-1&&u.indexOf("SU")!==-1};var l=function(c,d){return c.weekday-d.weekday};this.byweekday.allWeeks.sort(l),this.byweekday.someWeeks.sort(l),this.byweekday.allWeeks.length||(this.byweekday.allWeeks=null),this.byweekday.someWeeks.length||(this.byweekday.someWeeks=null)}else this.byweekday=null}return r.isFullyConvertible=function(e){var t=!0;if(!(e.options.freq in r.IMPLEMENTED)||e.origOptions.until&&e.origOptions.count)return!1;for(var n in e.origOptions){if(Rf(["dtstart","wkst","freq"],n))return!0;if(!Rf(r.IMPLEMENTED[e.options.freq],n))return!1}return t},r.prototype.isFullyConvertible=function(){return r.isFullyConvertible(this.rrule)},r.prototype.toString=function(){var e=this.gettext;if(!(this.options.freq in r.IMPLEMENTED))return e("RRule error: Unable to fully convert this rrule to text");if(this.text=[e("every")],this[w.FREQUENCIES[this.options.freq]](),this.options.until){this.add(e("until"));var t=this.options.until;this.add(this.dateFormatter(t.getUTCFullYear(),this.language.monthNames[t.getUTCMonth()],t.getUTCDate()))}else this.options.count&&this.add(e("for")).add(this.options.count.toString()).add(this.plural(this.options.count)?e("times"):e("time"));return this.isFullyConvertible()||this.add(e("(~ approximate)")),this.text.join("")},r.prototype.HOURLY=function(){var e=this.gettext;this.options.interval!==1&&this.add(this.options.interval.toString()),this.add(this.plural(this.options.interval)?e("hours"):e("hour"))},r.prototype.MINUTELY=function(){var e=this.gettext;this.options.interval!==1&&this.add(this.options.interval.toString()),this.add(this.plural(this.options.interval)?e("minutes"):e("minute"))},r.prototype.DAILY=function(){var e=this.gettext;this.options.interval!==1&&this.add(this.options.interval.toString()),this.byweekday&&this.byweekday.isWeekdays?this.add(this.plural(this.options.interval)?e("weekdays"):e("weekday")):this.add(this.plural(this.options.interval)?e("days"):e("day")),this.origOptions.bymonth&&(this.add(e("in")),this._bymonth()),this.bymonthday?this._bymonthday():this.byweekday?this._byweekday():this.origOptions.byhour&&this._byhour()},r.prototype.WEEKLY=function(){var e=this.gettext;this.options.interval!==1&&this.add(this.options.interval.toString()).add(this.plural(this.options.interval)?e("weeks"):e("week")),this.byweekday&&this.byweekday.isWeekdays?this.options.interval===1?this.add(this.plural(this.options.interval)?e("weekdays"):e("weekday")):this.add(e("on")).add(e("weekdays")):this.byweekday&&this.byweekday.isEveryDay?this.add(this.plural(this.options.interval)?e("days"):e("day")):(this.options.interval===1&&this.add(e("week")),this.origOptions.bymonth&&(this.add(e("in")),this._bymonth()),this.bymonthday?this._bymonthday():this.byweekday&&this._byweekday())},r.prototype.MONTHLY=function(){var e=this.gettext;this.origOptions.bymonth?(this.options.interval!==1&&(this.add(this.options.interval.toString()).add(e("months")),this.plural(this.options.interval)&&this.add(e("in"))),this._bymonth()):(this.options.interval!==1&&this.add(this.options.interval.toString()),this.add(this.plural(this.options.interval)?e("months"):e("month"))),this.bymonthday?this._bymonthday():this.byweekday&&this.byweekday.isWeekdays?this.add(e("on")).add(e("weekdays")):this.byweekday&&this._byweekday()},r.prototype.YEARLY=function(){var e=this.gettext;this.origOptions.bymonth?(this.options.interval!==1&&(this.add(this.options.interval.toString()),this.add(e("years"))),this._bymonth()):(this.options.interval!==1&&this.add(this.options.interval.toString()),this.add(this.plural(this.options.interval)?e("years"):e("year"))),this.bymonthday?this._bymonthday():this.byweekday&&this._byweekday(),this.options.byyearday&&this.add(e("on the")).add(this.list(this.options.byyearday,this.nth,e("and"))).add(e("day")),this.options.byweekno&&this.add(e("in")).add(this.plural(this.options.byweekno.length)?e("weeks"):e("week")).add(this.list(this.options.byweekno,void 0,e("and")))},r.prototype._bymonthday=function(){var e=this.gettext;this.byweekday&&this.byweekday.allWeeks?this.add(e("on")).add(this.list(this.byweekday.allWeeks,this.weekdaytext,e("or"))).add(e("the")).add(this.list(this.bymonthday,this.nth,e("or"))):this.add(e("on the")).add(this.list(this.bymonthday,this.nth,e("and")))},r.prototype._byweekday=function(){var e=this.gettext;this.byweekday.allWeeks&&!this.byweekday.isWeekdays&&this.add(e("on")).add(this.list(this.byweekday.allWeeks,this.weekdaytext)),this.byweekday.someWeeks&&(this.byweekday.allWeeks&&this.add(e("and")),this.add(e("on the")).add(this.list(this.byweekday.someWeeks,this.weekdaytext,e("and"))))},r.prototype._byhour=function(){var e=this.gettext;this.add(e("at")).add(this.list(this.origOptions.byhour,void 0,e("and")))},r.prototype._bymonth=function(){this.add(this.list(this.options.bymonth,this.monthtext,this.gettext("and")))},r.prototype.nth=function(e){e=parseInt(e.toString(),10);var t,n=this.gettext;if(e===-1)return n("last");var i=Math.abs(e);switch(i){case 1:case 21:case 31:t=i+n("st");break;case 2:case 22:t=i+n("nd");break;case 3:case 23:t=i+n("rd");break;default:t=i+n("th")}return e<0?t+" "+n("last"):t},r.prototype.monthtext=function(e){return this.language.monthNames[e-1]},r.prototype.weekdaytext=function(e){var t=Ve(e)?(e+1)%7:e.getJsWeekday();return(e.n?this.nth(e.n)+" ":"")+this.language.dayNames[t]},r.prototype.plural=function(e){return e%100!==1},r.prototype.add=function(e){return this.text.push(" "),this.text.push(e),this},r.prototype.list=function(e,t,n,i){var s=this;i===void 0&&(i=","),Se(e)||(e=[e]);var a=function(u,l,c){for(var d="",f=0;fe[0].length)&&(e=s,t=i)}if(e!=null&&(this.text=this.text.substr(e[0].length),this.text===""&&(this.done=!0)),e==null){this.done=!0,this.symbol=null,this.value=null;return}}while(t==="SKIP");return this.symbol=t,this.value=e,!0},r.prototype.accept=function(e){if(this.symbol===e){if(this.value){var t=this.value;return this.nextSymbol(),t}return this.nextSymbol(),!0}return!1},r.prototype.acceptNumber=function(){return this.accept("number")},r.prototype.expect=function(e){if(this.accept(e))return!0;throw new Error("expected "+e+" but found "+this.symbol)},r}();function An(r,e){e===void 0&&(e=Or);var t={},n=new x_(e.tokens);if(!n.start(r))return null;return i(),t;function i(){n.expect("every");var f=n.acceptNumber();if(f&&(t.interval=parseInt(f[0],10)),n.isDone())throw new Error("Unexpected end");switch(n.symbol){case"day(s)":t.freq=w.DAILY,n.nextSymbol()&&(a(),d());break;case"weekday(s)":t.freq=w.WEEKLY,t.byweekday=[w.MO,w.TU,w.WE,w.TH,w.FR],n.nextSymbol(),d();break;case"week(s)":t.freq=w.WEEKLY,n.nextSymbol()&&(s(),d());break;case"hour(s)":t.freq=w.HOURLY,n.nextSymbol()&&(s(),d());break;case"minute(s)":t.freq=w.MINUTELY,n.nextSymbol()&&(s(),d());break;case"month(s)":t.freq=w.MONTHLY,n.nextSymbol()&&(s(),d());break;case"year(s)":t.freq=w.YEARLY,n.nextSymbol()&&(s(),d());break;case"monday":case"tuesday":case"wednesday":case"thursday":case"friday":case"saturday":case"sunday":t.freq=w.WEEKLY;var p=n.symbol.substr(0,2).toUpperCase();if(t.byweekday=[w[p]],!n.nextSymbol())return;for(;n.accept("comma");){if(n.isDone())throw new Error("Unexpected end");var y=u();if(!y)throw new Error("Unexpected symbol "+n.symbol+", expected weekday");t.byweekday.push(w[y]),n.nextSymbol()}c(),d();break;case"january":case"february":case"march":case"april":case"may":case"june":case"july":case"august":case"september":case"october":case"november":case"december":if(t.freq=w.YEARLY,t.bymonth=[o()],!n.nextSymbol())return;for(;n.accept("comma");){if(n.isDone())throw new Error("Unexpected end");var m=o();if(!m)throw new Error("Unexpected symbol "+n.symbol+", expected month");t.bymonth.push(m),n.nextSymbol()}s(),d();break;default:throw new Error("Unknown symbol")}}function s(){var f=n.accept("on"),p=n.accept("the");if(!!(f||p))do{var y=l(),m=u(),g=o();if(y)m?(n.nextSymbol(),t.byweekday||(t.byweekday=[]),t.byweekday.push(w[m].nth(y))):(t.bymonthday||(t.bymonthday=[]),t.bymonthday.push(y),n.accept("day(s)"));else if(m)n.nextSymbol(),t.byweekday||(t.byweekday=[]),t.byweekday.push(w[m]);else if(n.symbol==="weekday(s)")n.nextSymbol(),t.byweekday||(t.byweekday=[w.MO,w.TU,w.WE,w.TH,w.FR]);else if(n.symbol==="week(s)"){n.nextSymbol();var A=n.acceptNumber();if(!A)throw new Error("Unexpected symbol "+n.symbol+", expected week number");for(t.byweekno=[parseInt(A[0],10)];n.accept("comma");){if(A=n.acceptNumber(),!A)throw new Error("Unexpected symbol "+n.symbol+"; expected monthday");t.byweekno.push(parseInt(A[0],10))}}else if(g)n.nextSymbol(),t.bymonth||(t.bymonth=[]),t.bymonth.push(g);else return}while(n.accept("comma")||n.accept("the")||n.accept("on"))}function a(){var f=n.accept("at");if(!!f)do{var p=n.acceptNumber();if(!p)throw new Error("Unexpected symbol "+n.symbol+", expected hour");for(t.byhour=[parseInt(p[0],10)];n.accept("comma");){if(p=n.acceptNumber(),!p)throw new Error("Unexpected symbol "+n.symbol+"; expected hour");t.byhour.push(parseInt(p[0],10))}}while(n.accept("comma")||n.accept("at"))}function o(){switch(n.symbol){case"january":return 1;case"february":return 2;case"march":return 3;case"april":return 4;case"may":return 5;case"june":return 6;case"july":return 7;case"august":return 8;case"september":return 9;case"october":return 10;case"november":return 11;case"december":return 12;default:return!1}}function u(){switch(n.symbol){case"monday":case"tuesday":case"wednesday":case"thursday":case"friday":case"saturday":case"sunday":return n.symbol.substr(0,2).toUpperCase();default:return!1}}function l(){switch(n.symbol){case"last":return n.nextSymbol(),-1;case"first":return n.nextSymbol(),1;case"second":return n.nextSymbol(),n.accept("last")?-2:2;case"third":return n.nextSymbol(),n.accept("last")?-3:3;case"nth":var f=parseInt(n.value[1],10);if(f<-366||f>366)throw new Error("Nth out of range: "+f);return n.nextSymbol(),n.accept("last")?-f:f;default:return!1}}function c(){n.accept("on"),n.accept("the");var f=l();if(!!f)for(t.bymonthday=[f],n.nextSymbol();n.accept("comma");){if(f=l(),!f)throw new Error("Unexpected symbol "+n.symbol+"; expected monthday");t.bymonthday.push(f),n.nextSymbol()}}function d(){if(n.symbol==="until"){var f=Date.parse(n.text);if(!f)throw new Error("Cannot parse until date:"+n.text);t.until=new Date(f)}else n.accept("for")&&(t.count=parseInt(n.value[0],10),n.expect("number"))}}var W;(function(r){r[r.YEARLY=0]="YEARLY",r[r.MONTHLY=1]="MONTHLY",r[r.WEEKLY=2]="WEEKLY",r[r.DAILY=3]="DAILY",r[r.HOURLY=4]="HOURLY",r[r.MINUTELY=5]="MINUTELY",r[r.SECONDLY=6]="SECONDLY"})(W||(W={}));function kn(r){return r12){var n=Math.floor(this.month/12),i=qe(this.month,12);this.month=i,this.year+=n,this.month===0&&(this.month=12,--this.year)}},e.prototype.addWeekly=function(t,n){n>this.getWeekday()?this.day+=-(this.getWeekday()+1+(6-n))+t*7:this.day+=-(this.getWeekday()-n)+t*7,this.fixDay()},e.prototype.addDaily=function(t){this.day+=t,this.fixDay()},e.prototype.addHours=function(t,n,i){for(n&&(this.hour+=Math.floor((23-this.hour)/t)*t);;){this.hour+=t;var s=cs(this.hour,24),a=s.div,o=s.mod;if(a&&(this.hour=o,this.addDaily(a)),Ze(i)||B(i,this.hour))break}},e.prototype.addMinutes=function(t,n,i,s){for(n&&(this.minute+=Math.floor((1439-(this.hour*60+this.minute))/t)*t);;){this.minute+=t;var a=cs(this.minute,60),o=a.div,u=a.mod;if(o&&(this.minute=u,this.addHours(o,!1,i)),(Ze(i)||B(i,this.hour))&&(Ze(s)||B(s,this.minute)))break}},e.prototype.addSeconds=function(t,n,i,s,a){for(n&&(this.second+=Math.floor((86399-(this.hour*3600+this.minute*60+this.second))/t)*t);;){this.second+=t;var o=cs(this.second,60),u=o.div,l=o.mod;if(u&&(this.second=l,this.addMinutes(u,!1,i,s)),(Ze(i)||B(i,this.hour))&&(Ze(s)||B(s,this.minute))&&(Ze(a)||B(a,this.second)))break}},e.prototype.fixDay=function(){if(!(this.day<=28)){var t=lr.monthRange(this.year,this.month-1)[1];if(!(this.day<=t))for(;this.day>t;){if(this.day-=t,++this.month,this.month===13&&(this.month=1,++this.year,this.year>lr.MAXYEAR))return;t=lr.monthRange(this.year,this.month-1)[1]}}},e.prototype.add=function(t,n){var i=t.freq,s=t.interval,a=t.wkst,o=t.byhour,u=t.byminute,l=t.bysecond;switch(i){case W.YEARLY:return this.addYears(s);case W.MONTHLY:return this.addMonths(s);case W.WEEKLY:return this.addWeekly(s,a);case W.DAILY:return this.addDaily(s);case W.HOURLY:return this.addHours(s,n,o);case W.MINUTELY:return this.addMinutes(s,n,o,u);case W.SECONDLY:return this.addSeconds(s,n,o,u,l)}},e}(Qr);function Va(r){for(var e=[],t=Object.keys(r),n=0,i=t;n=-366&&n<=366))throw new Error("bysetpos must be between 1 and 366, or between -366 and -1")}}if(!(Boolean(e.byweekno)||me(e.byweekno)||me(e.byyearday)||Boolean(e.bymonthday)||me(e.bymonthday)||ae(e.byweekday)||ae(e.byeaster)))switch(e.freq){case w.YEARLY:e.bymonth||(e.bymonth=e.dtstart.getUTCMonth()+1),e.bymonthday=e.dtstart.getUTCDate();break;case w.MONTHLY:e.bymonthday=e.dtstart.getUTCDate();break;case w.WEEKLY:e.byweekday=[k.getWeekday(e.dtstart)];break}if(ae(e.bymonth)&&!Se(e.bymonth)&&(e.bymonth=[e.bymonth]),ae(e.byyearday)&&!Se(e.byyearday)&&Ve(e.byyearday)&&(e.byyearday=[e.byyearday]),!ae(e.bymonthday))e.bymonthday=[],e.bynmonthday=[];else if(Se(e.bymonthday)){for(var i=[],s=[],t=0;t0?i.push(n):n<0&&s.push(n)}e.bymonthday=i,e.bynmonthday=s}else e.bymonthday<0?(e.bynmonthday=[e.bymonthday],e.bymonthday=[]):(e.bynmonthday=[],e.bymonthday=[e.bymonthday]);if(ae(e.byweekno)&&!Se(e.byweekno)&&(e.byweekno=[e.byweekno]),!ae(e.byweekday))e.bynweekday=null;else if(Ve(e.byweekday))e.byweekday=[e.byweekday],e.bynweekday=null;else if(Ha(e.byweekday))e.byweekday=[ge.fromStr(e.byweekday).weekday],e.bynweekday=null;else if(e.byweekday instanceof ge)!e.byweekday.n||e.freq>w.MONTHLY?(e.byweekday=[e.byweekday.weekday],e.bynweekday=null):(e.bynweekday=[[e.byweekday.weekday,e.byweekday.n]],e.byweekday=null);else{for(var a=[],o=[],t=0;tw.MONTHLY?a.push(u.weekday):o.push([u.weekday,u.n])}e.byweekday=me(a)?a:null,e.bynweekday=me(o)?o:null}return ae(e.byhour)?Ve(e.byhour)&&(e.byhour=[e.byhour]):e.byhour=e.freq=4?(c=0,l=o.yearlen+qe(a-e.wkst,7)):l=n-c;for(var d=Math.floor(l/7),f=qe(l,7),p=Math.floor(d+f/4),y=0;y0&&m<=p){var g=void 0;m>1?(g=c+(m-1)*7,c!==u&&(g-=7-u)):g=c;for(var A=0;A<7&&(o.wnomask[g]=1,g++,o.wdaymask[g]!==e.wkst);A++);}}if(B(e.byweekno,1)){var g=c+p*7;if(c!==u&&(g-=7-u),g=4?(z=0,de=re+qe(N-e.wkst,7)):de=n-c,C=Math.floor(52+qe(de,7)/4)}if(B(e.byweekno,C))for(var g=0;gs)return Wt(r);if(C>=t){var N=zf(C,e);if(!r.accept(N)||o&&(--o,!o))return Wt(r)}}else for(var A=p;As)return Wt(r);if(C>=t){var N=zf(C,e);if(!r.accept(N)||o&&(--o,!o))return Wt(r)}}}if(e.interval===0||(u.add(e,m),u.year>k.MAXYEAR))return Wt(r);kn(n)||(c=l.gettimeset(n)(u.hour,u.minute,u.second,0)),l.rebuild(u.year,u.month)}}function H_(r,e,t){var n=t.bymonth,i=t.byweekno,s=t.byweekday,a=t.byeaster,o=t.bymonthday,u=t.bynmonthday,l=t.byyearday;return me(n)&&!B(n,r.mmask[e])||me(i)&&!r.wnomask[e]||me(s)&&!B(s,r.wdaymask[e])||me(r.nwdaymask)&&!r.nwdaymask[e]||a!==null&&!B(r.eastermask,e)||(me(o)||me(u))&&!B(o,r.mdaymask[e])&&!B(u,r.nmdaymask[e])||me(l)&&(e=r.yearlen&&!B(l,e+1-r.yearlen)&&!B(l,-r.nextyearlen+e-r.yearlen))}function zf(r,e){return new Ar(r,e.tzid).rezonedDate()}function Wt(r){return r.getValue()}function z_(r,e,t,n,i){for(var s=!1,a=e;a=w.HOURLY&&me(i)&&!B(i,e.hour)||n>=w.MINUTELY&&me(s)&&!B(s,e.minute)||n>=w.SECONDLY&&me(a)&&!B(a,e.second)?[]:r.gettimeset(n)(e.hour,e.minute,e.second,e.millisecond)}var rt={MO:new ge(0),TU:new ge(1),WE:new ge(2),TH:new ge(3),FR:new ge(4),SA:new ge(5),SU:new ge(6)},Nn={freq:W.YEARLY,dtstart:null,interval:1,wkst:rt.MO,count:null,until:null,tzid:null,bysetpos:null,bymonth:null,bymonthday:null,bynmonthday:null,byyearday:null,byweekno:null,byweekday:null,bynweekday:null,byhour:null,byminute:null,bysecond:null,byeaster:null},kf=Object.keys(Nn),w=function(){function r(e,t){e===void 0&&(e={}),t===void 0&&(t=!1),this._cache=t?null:new Sf,this.origOptions=Va(e);var n=Of(e).parsedOptions;this.options=n}return r.parseText=function(e,t){return An(e,t)},r.fromText=function(e,t){return wf(e,t)},r.fromString=function(e){return new r(r.parseString(e)||void 0)},r.prototype._iter=function(e){return hs(e,this.options)},r.prototype._cacheGet=function(e,t){return this._cache?this._cache._cacheGet(e,t):!1},r.prototype._cacheAdd=function(e,t,n){if(!!this._cache)return this._cache._cacheAdd(e,t,n)},r.prototype.all=function(e){if(e)return this._iter(new Ka("all",{},e));var t=this._cacheGet("all");return t===!1&&(t=this._iter(new Ft("all",{})),this._cacheAdd("all",t)),t},r.prototype.between=function(e,t,n,i){if(n===void 0&&(n=!1),!k.isValidDate(e)||!k.isValidDate(t))throw new Error("Invalid date passed in to RRule.between");var s={before:t,after:e,inc:n};if(i)return this._iter(new Ka("between",s,i));var a=this._cacheGet("between",s);return a===!1&&(a=this._iter(new Ft("between",s)),this._cacheAdd("between",a,s)),a},r.prototype.before=function(e,t){if(t===void 0&&(t=!1),!k.isValidDate(e))throw new Error("Invalid date passed in to RRule.before");var n={dt:e,inc:t},i=this._cacheGet("before",n);return i===!1&&(i=this._iter(new Ft("before",n)),this._cacheAdd("before",i,n)),i},r.prototype.after=function(e,t){if(t===void 0&&(t=!1),!k.isValidDate(e))throw new Error("Invalid date passed in to RRule.after");var n={dt:e,inc:t},i=this._cacheGet("after",n);return i===!1&&(i=this._iter(new Ft("after",n)),this._cacheAdd("after",i,n)),i},r.prototype.count=function(){return this.all().length},r.prototype.toString=function(){return xn(this.origOptions)},r.prototype.toText=function(e,t,n){return Df(this,e,t,n)},r.prototype.isFullyConvertibleToText=function(){return Mf(this)},r.prototype.clone=function(){return new r(this.origOptions)},r.FREQUENCIES=["YEARLY","MONTHLY","WEEKLY","DAILY","HOURLY","MINUTELY","SECONDLY"],r.YEARLY=W.YEARLY,r.MONTHLY=W.MONTHLY,r.WEEKLY=W.WEEKLY,r.DAILY=W.DAILY,r.HOURLY=W.HOURLY,r.MINUTELY=W.MINUTELY,r.SECONDLY=W.SECONDLY,r.MO=rt.MO,r.TU=rt.TU,r.WE=rt.WE,r.TH=rt.TH,r.FR=rt.FR,r.SA=rt.SA,r.SU=rt.SU,r.parseString=Sn,r.optionsToString=xn,r}();function Kf(r,e,t,n,i,s){var a={},o=r.accept;function u(f,p){t.forEach(function(y){y.between(f,p,!0).forEach(function(m){a[Number(m)]=!0})})}i.forEach(function(f){var p=new Ar(f,s).rezonedDate();a[Number(p)]=!0}),r.accept=function(f){var p=Number(f);return isNaN(p)?o.call(this,f):!a[p]&&(u(new Date(p-1),new Date(p+1)),!a[p])?(a[p]=!0,o.call(this,f)):!0},r.method==="between"&&(u(r.args.after,r.args.before),r.accept=function(f){var p=Number(f);return a[p]?!0:(a[p]=!0,o.call(this,f))});for(var l=0;l1||i.length||s.length||a.length){var c=new Qa(l);return c.dtstart(o),c.tzid(u||void 0),n.forEach(function(f){c.rrule(new w(Xa(f,o,u),l))}),i.forEach(function(f){c.rdate(f)}),s.forEach(function(f){c.exrule(new w(Xa(f,o,u),l))}),a.forEach(function(f){c.exdate(f)}),e.compatible&&e.dtstart&&c.rdate(o),c}var d=n[0]||{};return new w(Xa(d,d.dtstart||e.dtstart||o,d.tzid||e.tzid||u),l)}function ms(r,e){return e===void 0&&(e={}),Z_(r,X_(e))}function Xa(r,e,t){return je(je({},r),{dtstart:e,tzid:t})}function X_(r){var e=[],t=Object.keys(r),n=Object.keys(Vf);if(t.forEach(function(i){B(n,i)||e.push(i)}),e.length)throw new Error("Invalid options: "+e.join(", "));return je(je({},Vf),r)}function Q_(r){if(r.indexOf(":")===-1)return{name:"RRULE",value:r};var e=Qd(r,":",1),t=e[0],n=e[1];return{name:t,value:n}}function J_(r){var e=Q_(r),t=e.name,n=e.value,i=t.split(";");if(!i)throw new Error("empty property name");return{name:i[0].toUpperCase(),parms:i.slice(1),value:n}}function eT(r,e){if(e===void 0&&(e=!1),r=r&&r.trim(),!r)throw new Error("Invalid empty string");if(!e)return r.split(/\s/);for(var t=r.split(` +`),n=0;n0&&i[0]===" "?(t[n-1]+=i.slice(1),t.splice(n,1)):n+=1:t.splice(n,1)}return t}function tT(r){r.forEach(function(e){if(!/(VALUE=DATE(-TIME)?)|(TZID=)/.test(e))throw new Error("unsupported RDATE/EXDATE parm: "+e)})}function Zf(r,e){return tT(e),r.split(",").map(function(t){return k.untilStringToDate(t)})}function Xf(r){var e=this;return function(t){if(t!==void 0&&(e["_".concat(r)]=t),e["_".concat(r)]!==void 0)return e["_".concat(r)];for(var n=0;ne(t,n)*-1}static makeCompositeComparator(e){return(t,n)=>{for(let i of e){let s=i(t,n);if(s!==0)return s}return 0}}static compareByUrgency(e,t){return t.urgency-e.urgency}static compareByStatus(e,t){return e.statust.status?-1:0}static compareByPriority(e,t){return e.priority.localeCompare(t.priority)}static compareByStartDate(e,t){return G.compareByDate(e.startDate,t.startDate)}static compareByScheduledDate(e,t){return G.compareByDate(e.scheduledDate,t.scheduledDate)}static compareByDueDate(e,t){return G.compareByDate(e.dueDate,t.dueDate)}static compareByDoneDate(e,t){return G.compareByDate(e.doneDate,t.doneDate)}static compareByTag(e,t){if(e.tags.length===0&&t.tags.length===0)return 0;if(e.tags.length===0)return 1;if(t.tags.length===0)return-1;let n=G.tagPropertyInstance-1;return e.tags.length=G.tagPropertyInstance?1:t.tags.length=G.tagPropertyInstance?-1:e.tags.lengtht.tags[n]?1:0}static compareByDate(e,t){return e!==null&&t===null?-1:e===null&&t!==null?1:e!==null&&t!==null?e.isAfter(t)?1:e.isBefore(t)?-1:0:0}static compareByPath(e,t){return e.patht.path?1:0}static compareByDescription(e,t){return G.cleanDescription(e.description).localeCompare(G.cleanDescription(t.description))}static cleanDescription(e){let t=ie().globalFilter;e=e.replace(t,"").trim();let n=/^\[\[?([^\]]*)\]/,i=e.match(n);if(i!==null){let l=i[1];e=l.substring(l.indexOf("|")+1)+e.replace(n,"")}let s=/^\*\*?([^*]*)\*/,a=e.match(s);a!==null&&(e=a[1]+e.replace(n,""));let o=/^==?([^=]*)==/,u=e.match(o);return u!==null&&(e=u[1]+e.replace(o,"")),e}},Be=G;Be.tagPropertyInstance=1,Be.comparators={urgency:G.compareByUrgency,description:G.compareByDescription,priority:G.compareByPriority,start:G.compareByStartDate,scheduled:G.compareByScheduledDate,due:G.compareByDueDate,done:G.compareByDoneDate,path:G.compareByPath,status:G.compareByStatus,tag:G.compareByTag};var dt=class{constructor({rrule:e,baseOnToday:t,referenceDate:n,startDate:i,scheduledDate:s,dueDate:a}){this.rrule=e,this.baseOnToday=t,this.referenceDate=n,this.startDate=i,this.scheduledDate=s,this.dueDate=a}static fromText({recurrenceRuleText:e,startDate:t,scheduledDate:n,dueDate:i}){try{let s=e.match(/^([a-zA-Z0-9, !]+?)( when done)?$/i);if(s==null)return null;let a=s[1].trim(),o=s[2]!==void 0,u=R.parseText(a);if(u!==null){let l=null;i?l=window.moment(i):n?l=window.moment(n):t&&(l=window.moment(t)),!o&&l!==null?u.dtstart=window.moment(l).startOf("day").utc(!0).toDate():u.dtstart=window.moment().startOf("day").utc(!0).toDate();let c=new R(u);return new dt({rrule:c,baseOnToday:o,referenceDate:l,startDate:t,scheduledDate:n,dueDate:i})}}catch(s){}return null}toText(){let e=this.rrule.toText();return this.baseOnToday&&(e+=" when done"),e}next(){var t;let e;if(this.baseOnToday){let n=window.moment();e=new R(It(Ye({},this.rrule.origOptions),{dtstart:n.startOf("day").utc(!0).toDate()})).after(n.endOf("day").utc(!0).toDate())}else{let n=window.moment((t=this.referenceDate)!=null?t:void 0).endOf("day").utc(!0);e=this.rrule.after(n.toDate())}if(e!==null){let i=window.moment.utc(e).local(!0).startOf("day"),s=null,a=null,o=null;if(this.referenceDate){if(this.startDate){let u=window.moment.duration(this.startDate.diff(this.referenceDate));s=window.moment(i),s.add(Math.round(u.asDays()),"days")}if(this.scheduledDate){let u=window.moment.duration(this.scheduledDate.diff(this.referenceDate));a=window.moment(i),a.add(Math.round(u.asDays()),"days")}if(this.dueDate){let u=window.moment.duration(this.dueDate.diff(this.referenceDate));o=window.moment(i),o.add(Math.round(u.asDays()),"days")}}return{startDate:s,scheduledDate:a,dueDate:o}}return null}identicalTo(e){return this.baseOnToday!==e.baseOnToday||Be.compareByDate(this.startDate,e.startDate)!==0||Be.compareByDate(this.scheduledDate,e.scheduledDate)!==0||Be.compareByDate(this.dueDate,e.dueDate)!==0?!1:this.toText()===e.toText()}};var Lt=class{static calculate(e){let t=0;if(e.dueDate!==null){let n=Math.round(window.moment().diff(e.dueDate)/Lt.milliSecondsPerDay),i;n>=7?i=1:n>=-14?i=(n+14)*.8/21+.2:i=.2,t+=i*Lt.dueCoefficient}switch(e.scheduledDate!==null&&window.moment().isSameOrAfter(e.scheduledDate)&&(t+=1*Lt.scheduledCoefficient),e.startDate!==null&&window.moment().isBefore(e.startDate)&&(t+=1*Lt.startedCoefficient),e.priority){case"1":t+=1*Lt.priorityCoefficient;break;case"2":t+=.65*Lt.priorityCoefficient;break;case"3":t+=.325*Lt.priorityCoefficient;break}return t}},Wt=Lt;Wt.dueCoefficient=12,Wt.scheduledCoefficient=5,Wt.startedCoefficient=-3,Wt.priorityCoefficient=6,Wt.milliSecondsPerDay=1e3*60*60*24;var be={High:"\u23EB",Medium:"\u{1F53C}",Low:"\u{1F53D}",None:""},Et="\u{1F501}",Rt="\u{1F6EB}",wt="\u23F3",Dt="\u{1F4C5}",Qa="\u2705",H=class{constructor({status:e,description:t,path:n,indentation:i,sectionStart:s,sectionIndex:a,originalStatusCharacter:o,precedingHeader:u,priority:l,startDate:c,scheduledDate:d,dueDate:f,doneDate:h,recurrence:m,blockLink:y,tags:g}){this._urgency=null;this.status=e,this.description=t,this.path=n,this.indentation=i,this.sectionStart=s,this.sectionIndex=a,this.originalStatusCharacter=o,this.precedingHeader=u,this.tags=g,this.priority=l,this.startDate=c,this.scheduledDate=d,this.dueDate=f,this.doneDate=h,this.recurrence=m,this.blockLink=y}static fromLine({line:e,path:t,sectionStart:n,sectionIndex:i,precedingHeader:s}){let a=e.match(H.taskRegex);if(a===null)return null;let o=a[3].trim(),{globalFilter:u}=ie();if(!o.includes(u))return null;let l=o,c=a[1],d=a[2].toLowerCase(),f;switch(d){case" ":f="Todo";break;default:f="Done"}let h=l.match(this.blockLinkRegex),m=h!==null?h[0]:"";m!==""&&(l=l.replace(this.blockLinkRegex,"").trim());let y,g="3",O=null,S=null,N=null,z=null,te="",le=null,x=[],w="",Ie=20,Oe=0;do{y=!1;let v=l.match(H.priorityRegex);if(v!==null){switch(v[1]){case be.Low:g="4";break;case be.Medium:g="2";break;case be.High:g="1";break}l=l.replace(H.priorityRegex,"").trim(),y=!0}let _=l.match(H.doneDateRegex);_!==null&&(z=window.moment(_[1],H.dateFormat),l=l.replace(H.doneDateRegex,"").trim(),y=!0);let M=l.match(H.dueDateRegex);M!==null&&(N=window.moment(M[1],H.dateFormat),l=l.replace(H.dueDateRegex,"").trim(),y=!0);let b=l.match(H.scheduledDateRegex);b!==null&&(S=window.moment(b[1],H.dateFormat),l=l.replace(H.scheduledDateRegex,"").trim(),y=!0);let k=l.match(H.startDateRegex);k!==null&&(O=window.moment(k[1],H.dateFormat),l=l.replace(H.startDateRegex,"").trim(),y=!0);let P=l.match(H.recurrenceRegex);P!==null&&(te=P[1].trim(),l=l.replace(H.recurrenceRegex,"").trim(),y=!0);let Y=l.match(H.hashTagsFromEnd);if(Y!=null){l=l.replace(H.hashTagsFromEnd,"").trim(),y=!0;let J=Y[0].trim();w=w.length>0?[J,w].join(" "):J}Oe++}while(y&&Oe<=Ie);te.length>0&&(le=dt.fromText({recurrenceRuleText:te,startDate:O,scheduledDate:S,dueDate:N})),w.length>0&&(l+=" "+w);let D=l.match(this.hashTags);return D!==null&&(x=D.filter(v=>v!==u).map(v=>v.trim())),new H({status:f,description:l,path:t,indentation:c,sectionStart:n,sectionIndex:i,originalStatusCharacter:d,precedingHeader:s,priority:g,startDate:O,scheduledDate:S,dueDate:N,doneDate:z,recurrence:le,blockLink:m,tags:x})}toLi(s){return ne(this,arguments,function*({parentUlElement:e,listIndex:t,layoutOptions:n,isFilenameUnique:i}){let a=e.createEl("li");a.addClasses(["task-list-item","plugin-tasks-list-item"]);let o=this.toString(n),{globalFilter:u,removeGlobalFilter:l}=ie();l&&(o=o.replace(u,"").trim());let c=a.createSpan();c.addClass("tasks-list-text"),yield Jf.MarkdownRenderer.renderMarkdown(o,c,this.path,null);let d=c.querySelector("blockquote"),f=d!=null?d:c,h=f.querySelector("p");if(h!==null){for(;h.firstChild;)f.insertBefore(h.firstChild,h);h.remove()}c.findAll("p").forEach(y=>{y.hasChildNodes()||y.remove()}),c.findAll(".footnotes").forEach(y=>{y.remove()});let m=a.createEl("input");return m.addClass("task-list-item-checkbox"),m.type="checkbox",this.status!=="Todo"&&(m.checked=!0,a.addClass("is-checked")),m.onClickEvent(y=>{y.preventDefault(),y.stopPropagation(),m.disabled=!0;let g=this.toggle();us({originalTask:this,newTasks:g})}),a.prepend(m),a.setAttr("data-task",this.originalStatusCharacter.trim()),a.setAttr("data-line",t),m.setAttr("data-line",t),n!=null&&n.shortMode&&this.addTooltip({element:c,isFilenameUnique:i}),a})}toString(e){var i;e=e!=null?e:new Kr;let t=this.description;if(!e.hidePriority){let s="";this.priority==="1"?s=" "+be.High:this.priority==="2"?s=" "+be.Medium:this.priority==="4"&&(s=" "+be.Low),t+=s}return!e.hideRecurrenceRule&&this.recurrence&&(t+=e.shortMode?" "+Et:` ${Et} ${this.recurrence.toText()}`),!e.hideStartDate&&this.startDate&&(t+=e.shortMode?" "+Rt:` ${Rt} ${this.startDate.format(H.dateFormat)}`),!e.hideScheduledDate&&this.scheduledDate&&(t+=e.shortMode?" "+wt:` ${wt} ${this.scheduledDate.format(H.dateFormat)}`),!e.hideDueDate&&this.dueDate&&(t+=e.shortMode?" "+Dt:` ${Dt} ${this.dueDate.format(H.dateFormat)}`),!e.hideDoneDate&&this.doneDate&&(t+=e.shortMode?" "+Qa:` ${Qa} ${this.doneDate.format(H.dateFormat)}`),t+=(i=this.blockLink)!=null?i:"",t}toFileLineString(){return`${this.indentation}- [${this.originalStatusCharacter}] ${this.toString()}`}toggle(){let e=this.status==="Todo"?"Done":"Todo",t=null,n=null;if(e!=="Todo"){let{setDoneDate:a}=ie();a&&(t=window.moment()),this.recurrence!==null&&(n=this.recurrence.next())}let i=new H(It(Ye({},this),{status:e,doneDate:t,originalStatusCharacter:e==="Done"?"x":" "})),s=[];if(n!==null){let a=new H(It(Ye(Ye({},this),n),{blockLink:""}));s.push(a)}return s.push(i),s}get urgency(){return this._urgency===null&&(this._urgency=Wt.calculate(this)),this._urgency}get filename(){let e=this.path.match(/([^/]+)\.md$/);return e!==null?e[1]:null}getLinkText({isFilenameUnique:e}){let t;return e?t=this.filename:t="/"+this.path,t===null?null:(this.precedingHeader!==null&&this.precedingHeader!==t&&(t=t+" > "+this.precedingHeader),t)}static tasksListsIdentical(e,t){return e.length!==t.length?!1:e.every((n,i)=>n.identicalTo(t[i]))}identicalTo(e){let t=["status","description","path","indentation","sectionStart","sectionIndex","originalStatusCharacter","precedingHeader","priority","blockLink"];for(let s of t)if(this[s]!==e[s])return!1;if(this.tags.length!==e.tags.length||!this.tags.every(function(s,a){return s===e.tags[a]}))return!1;t=["startDate","scheduledDate","dueDate","doneDate"];for(let s of t){let a=this[s],o=e[s];if(Be.compareByDate(a,o)!==0)return!1}let n=this.recurrence,i=e.recurrence;return n===null&&i!==null||n!==null&&i===null?!1:!(n&&i&&!n.identicalTo(i))}addTooltip({element:e,isFilenameUnique:t}){e.addEventListener("mouseenter",()=>{let n=e.createDiv();n.addClasses(["tooltip","mod-right"]),this.recurrence&&n.createDiv().setText(`${Et} ${this.recurrence.toText()}`),this.startDate&&n.createDiv().setText(H.toTooltipDate({signifier:Rt,date:this.startDate})),this.scheduledDate&&n.createDiv().setText(H.toTooltipDate({signifier:wt,date:this.scheduledDate})),this.dueDate&&n.createDiv().setText(H.toTooltipDate({signifier:Dt,date:this.dueDate})),this.doneDate&&n.createDiv().setText(H.toTooltipDate({signifier:Qa,date:this.doneDate}));let i=this.getLinkText({isFilenameUnique:t});i&&n.createDiv().setText(`\u{1F517} ${i}`),e.addEventListener("mouseleave",()=>{n.remove()})})}static toTooltipDate({signifier:e,date:t}){return`${e} ${t.format(H.dateFormat)} (${t.from(window.moment().startOf("day"))})`}getDescriptionWithoutGlobalFilter(){let{globalFilter:e}=ie();return this.description.replace(e,"").replace(" "," ").trim()}},W=H;W.dateFormat="YYYY-MM-DD",W.taskRegex=/^([\s\t]*)[-*] +\[(.)\] *(.*)/u,W.blockLinkRegex=/ \^[a-zA-Z0-9-]+$/u,W.priorityRegex=/([⏫🔼🔽])$/u,W.startDateRegex=/🛫 *(\d{4}-\d{2}-\d{2})$/u,W.scheduledDateRegex=/[⏳⌛] *(\d{4}-\d{2}-\d{2})$/u,W.dueDateRegex=/[📅📆🗓] *(\d{4}-\d{2}-\d{2})$/u,W.doneDateRegex=/✅ *(\d{4}-\d{2}-\d{2})$/u,W.recurrenceRegex=/🔁 ?([a-zA-Z0-9, !]+)$/iu,W.hashTags=/(^|\s)#[^ !@#$%^&*(),.?":{}|<>]*/g,W.hashTagsFromEnd=new RegExp(H.hashTags.source+"$");var dr=class{constructor({metadataCache:e,vault:t,events:n}){this.metadataCache=e,this.metadataCacheEventReferences=[],this.vault=t,this.vaultEventReferences=[],this.events=n,this.eventsEventReferences=[],this.tasksMutex=new os,this.state="Cold",this.tasks=[],this.loadedAfterFirstResolve=!1,this.subscribeToCache(),this.subscribeToVault(),this.subscribeToEvents(),this.loadVault()}unload(){for(let e of this.metadataCacheEventReferences)this.metadataCache.offref(e);for(let e of this.vaultEventReferences)this.vault.offref(e);for(let e of this.eventsEventReferences)this.events.off(e)}getTasks(){return this.tasks}getState(){return this.state}notifySubscribers(){this.events.triggerCacheUpdate({tasks:this.tasks,state:this.state})}subscribeToCache(){let e=this.metadataCache.on("resolved",()=>ne(this,null,function*(){this.loadedAfterFirstResolve||(this.loadedAfterFirstResolve=!0,this.loadVault())}));this.metadataCacheEventReferences.push(e);let t=this.metadataCache.on("changed",n=>{this.tasksMutex.runExclusive(()=>{this.indexFile(n)})});this.metadataCacheEventReferences.push(t)}subscribeToVault(){let e=this.vault.on("create",i=>{i instanceof ms.TFile&&this.tasksMutex.runExclusive(()=>{this.indexFile(i)})});this.vaultEventReferences.push(e);let t=this.vault.on("delete",i=>{i instanceof ms.TFile&&this.tasksMutex.runExclusive(()=>{this.tasks=this.tasks.filter(s=>s.path!==i.path),this.notifySubscribers()})});this.vaultEventReferences.push(t);let n=this.vault.on("rename",(i,s)=>{i instanceof ms.TFile&&this.tasksMutex.runExclusive(()=>{this.tasks=this.tasks.map(a=>a.path===s?new W(It(Ye({},a),{path:i.path})):a),this.notifySubscribers()})});this.vaultEventReferences.push(n)}subscribeToEvents(){let e=this.events.onRequestCacheUpdate(t=>{t({tasks:this.tasks,state:this.state})});this.eventsEventReferences.push(e)}loadVault(){return this.tasksMutex.runExclusive(()=>ne(this,null,function*(){this.state="Initializing",yield Promise.all(this.vault.getMarkdownFiles().map(e=>this.indexFile(e))),this.state="Warm",this.notifySubscribers()}))}indexFile(e){return ne(this,null,function*(){let t=this.metadataCache.getFileCache(e);if(t==null)return;let n=t.listItems;n===void 0&&(n=[]);let i=this.tasks.filter(o=>o.path===e.path),s=yield this.vault.cachedRead(e),a=dr.getTasksFromFileContent(s,n,t,e);W.tasksListsIdentical(i,a)||(this.getState()=="Warm"&&console.debug(`At least one task, its line number or its heading has changed in ${e.path}: triggering a refresh of all active Tasks blocks in Live Preview and Reading mode views.`),this.tasks=this.tasks.filter(o=>o.path!==e.path),this.tasks.push(...a),this.notifySubscribers())})}static getTasksFromFileContent(e,t,n,i){let s=[],a=e.split(` -`),o=null,u=0;for(let l of t)if(l.task!==void 0){if((o===null||o.position.end.line=e)return n;return null}static getPrecedingHeader({lineNumberTask:e,sections:t,fileLines:n}){if(t===void 0)return null;let i;for(let l of t)if(l.type==="heading"){if(l.position.start.line>e)break;i=l}if(i===void 0)return null;let s=i.position.start.line,a=n[s],o=/^#+ +(.*)/u,u=a.match(o);return u===null?null:u[1]}};var Qc=require("obsidian");var Bg=require("obsidian");function Jr(){}function to(r){return r()}function tp(){return Object.create(null)}function Nr(r){r.forEach(to)}function np(r){return typeof r=="function"}function ip(r,e){return r!=r?e==e:r!==e||r&&typeof r=="object"||typeof r=="function"}function sp(r){return Object.keys(r).length===0}var ap=!1;function J_(){ap=!0}function eT(){ap=!1}function T(r,e){r.appendChild(e)}function ro(r,e,t){r.insertBefore(e,t||null)}function bs(r){r.parentNode.removeChild(r)}function C(r){return document.createElement(r)}function tT(r){return document.createElementNS("http://www.w3.org/2000/svg",r)}function Yt(r){return document.createTextNode(r)}function Z(){return Yt(" ")}function fr(r,e,t,n){return r.addEventListener(e,t,n),()=>r.removeEventListener(e,t,n)}function op(r){return function(e){return e.preventDefault(),r.call(this,e)}}function L(r,e,t){t==null?r.removeAttribute(e):r.getAttribute(e)!==t&&r.setAttribute(e,t)}function rT(r){return Array.from(r.childNodes)}function up(r,e){e=""+e,r.wholeText!==e&&(r.data=e)}function ft(r,e){r.value=e==null?"":e}function no(r,e){for(let t=0;t{let u=s.map(to).filter(np);a?a.push(...u):Nr(u),r.$$.on_mount=[]}),o.forEach(Fn)}function dp(r,e){let t=r.$$;t.fragment!==null&&(Nr(t.on_destroy),t.fragment&&t.fragment.d(e),t.on_destroy=t.fragment=null,t.ctx=[])}function cT(r,e){r.$$.dirty[0]===-1&&(In.push(r),sT(),r.$$.dirty.fill(0)),r.$$.dirty[e/31|0]|=1<{let m=h.length?h[0]:f;return l.ctx&&i(l.ctx[d],l.ctx[d]=m)&&(!l.skip_bound&&l.bound[d]&&l.bound[d](m),c&&cT(r,d)),f}):[],l.update(),c=!0,Nr(l.before_update),l.fragment=n?n(l.ctx):!1,e.target){if(e.hydrate){J_();let d=rT(e.target);l.fragment&&l.fragment.l(d),d.forEach(bs)}else l.fragment&&l.fragment.c();e.intro&&uT(r.$$.fragment),lT(r,e.target,e.anchor,e.customElement),eT(),cp()}Un(u)}var dT;typeof HTMLElement=="function"&&(dT=class extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){let{on_mount:r}=this.$$;this.$$.on_disconnect=r.map(to).filter(np);for(let e in this.$$.slotted)this.appendChild(this.$$.slotted[e])}attributeChangedCallback(r,e,t){this[r]=t}disconnectedCallback(){Nr(this.$$.on_disconnect)}$destroy(){dp(this,1),this.$destroy=Jr}$on(r,e){let t=this.$$.callbacks[r]||(this.$$.callbacks[r]=[]);return t.push(e),()=>{let n=t.indexOf(e);n!==-1&&t.splice(n,1)}}$set(r){this.$$set&&!sp(r)&&(this.$$.skip_bound=!0,this.$$set(r),this.$$.skip_bound=!1)}});var Ts=class{$destroy(){dp(this,1),this.$destroy=Jr}$on(e,t){let n=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return n.push(t),()=>{let i=n.indexOf(t);i!==-1&&n.splice(i,1)}}$set(e){this.$$set&&!sp(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}};var Wi=as(Te());var AO={td:"today",tm:"tomorrow",yd:"yesterday",tw:"this week",nw:"next week",weekend:"sat",we:"sat"};function gn(r){for(let[e,t]of Object.entries(AO))r=r.replace(RegExp(`\\b${e}\\s`,"i"),t);return r}function kO(r){let e,t,n,i,s,a,o,u,l,c,d,f,h,m,y,g,O,S,N,z,te,le,x,w,Ie,Oe,D,v,_,M,b,k,P,Y,J,ae,re,lt,We,ir,sr,ct,Ae,ke,ar,wr,St,Ed,Mn,Rd,wd,Qi,Dd,or,Ji,Md,xt,Pd,Pn,Od,Ad,es,kd,Nd,Cd,Hr,zr,Sd,Dr,ts,xd,qa,rs=r[0].status+"",Fa,Id,ns,Ud,is,qd,Fd,Wd,Wa,Ld,ss,La,Yd;return{c(){e=C("div"),t=C("form"),n=C("div"),i=C("label"),i.textContent="Description",s=Z(),a=C("input"),o=Z(),u=C("hr"),l=Z(),c=C("div"),d=C("label"),d.textContent="Priority",f=Z(),h=C("select"),m=C("option"),m.textContent="None",y=C("option"),y.textContent=`${be.High} High`,g=C("option"),g.textContent=`${be.Medium} Medium`,O=C("option"),O.textContent=`${be.Low} Low`,S=Z(),N=C("hr"),z=Z(),te=C("div"),le=C("label"),le.textContent="Recurrence",x=Z(),w=C("input"),Ie=Z(),Oe=C("code"),D=Yt(Et),v=Z(),_=new kr(!1),M=Z(),b=C("hr"),k=Z(),P=C("div"),Y=C("div"),J=C("label"),J.textContent="Due",ae=Z(),re=C("input"),lt=Z(),We=C("code"),ir=Yt(Dt),sr=Z(),ct=new kr(!1),Ae=Z(),ke=C("div"),ar=C("label"),ar.textContent="Scheduled",wr=Z(),St=C("input"),Ed=Z(),Mn=C("code"),Rd=Yt(wt),wd=Z(),Qi=new kr(!1),Dd=Z(),or=C("div"),Ji=C("label"),Ji.textContent="Start",Md=Z(),xt=C("input"),Pd=Z(),Pn=C("code"),Od=Yt(Rt),Ad=Z(),es=new kr(!1),kd=Z(),Nd=C("hr"),Cd=Z(),Hr=C("div"),zr=C("div"),Sd=Yt(`Status: - `),Dr=C("input"),xd=Z(),qa=C("code"),Fa=Yt(rs),Id=Z(),ns=C("div"),Ud=Yt(`Done on: - `),is=C("code"),qd=Z(),Fd=C("hr"),Wd=Z(),Wa=C("div"),Ld=Z(),ss=C("div"),ss.innerHTML='',L(i,"for","description"),L(a,"id","description"),L(a,"type","text"),L(a,"class","tasks-modal-description"),L(a,"placeholder","Take out the trash"),L(n,"class","tasks-modal-section"),L(d,"for","priority"),m.__value="none",m.value=m.__value,y.__value="high",y.value=y.__value,g.__value="medium",g.value=g.__value,O.__value="low",O.value=O.__value,L(h,"id","priority"),L(h,"class","dropdown"),r[0].priority===void 0&&Fn(()=>r[14].call(h)),L(c,"class","tasks-modal-section"),L(le,"for","recurrence"),L(w,"id","description"),L(w,"type","text"),L(w,"placeholder","Try 'every 2 weeks on Thursday'."),_.a=null,L(te,"class","tasks-modal-section"),L(J,"for","due"),L(re,"id","due"),L(re,"type","text"),L(re,"placeholder",Vc),ct.a=null,L(Y,"class","tasks-modal-date"),L(ar,"for","scheduled"),L(St,"id","scheduled"),L(St,"type","text"),L(St,"placeholder",Vc),Qi.a=null,L(ke,"class","tasks-modal-date"),L(Ji,"for","start"),L(xt,"id","start"),L(xt,"type","text"),L(xt,"placeholder",Vc),es.a=null,L(or,"class","tasks-modal-date"),L(P,"class","tasks-modal-section"),L(Dr,"type","checkbox"),L(Dr,"class","task-list-item-checkbox tasks-modal-checkbox"),Dr.checked=ts=r[0].status==="Done",Dr.disabled=!0,L(Hr,"class","tasks-modal-section"),L(Wa,"class","tasks-modal-section"),L(ss,"class","tasks-modal-section"),L(e,"class","tasks-modal")},m(ce,Le){ro(ce,e,Le),T(e,t),T(t,n),T(n,i),T(n,s),T(n,a),ft(a,r[0].description),r[13](a),T(t,o),T(t,u),T(t,l),T(t,c),T(c,d),T(c,f),T(c,h),T(h,m),T(h,y),T(h,g),T(h,O),no(h,r[0].priority),T(t,S),T(t,N),T(t,z),T(t,te),T(te,le),T(te,x),T(te,w),ft(w,r[0].recurrenceRule),T(te,Ie),T(te,Oe),T(Oe,D),T(Oe,v),_.m(r[5],Oe),T(t,M),T(t,b),T(t,k),T(t,P),T(P,Y),T(Y,J),T(Y,ae),T(Y,re),ft(re,r[0].dueDate),T(Y,lt),T(Y,We),T(We,ir),T(We,sr),ct.m(r[4],We),T(P,Ae),T(P,ke),T(ke,ar),T(ke,wr),T(ke,St),ft(St,r[0].scheduledDate),T(ke,Ed),T(ke,Mn),T(Mn,Rd),T(Mn,wd),Qi.m(r[3],Mn),T(P,Dd),T(P,or),T(or,Ji),T(or,Md),T(or,xt),ft(xt,r[0].startDate),T(or,Pd),T(or,Pn),T(Pn,Od),T(Pn,Ad),es.m(r[2],Pn),T(t,kd),T(t,Nd),T(t,Cd),T(t,Hr),T(Hr,zr),T(zr,Sd),T(zr,Dr),T(zr,xd),T(zr,qa),T(qa,Fa),T(Hr,Id),T(Hr,ns),T(ns,Ud),T(ns,is),is.innerHTML=r[6],T(t,qd),T(t,Fd),T(t,Wd),T(t,Wa),T(t,Ld),T(t,ss),La||(Yd=[fr(a,"input",r[12]),fr(h,"change",r[14]),fr(w,"input",r[15]),fr(re,"input",r[16]),fr(St,"input",r[17]),fr(xt,"input",r[18]),fr(t,"submit",op(r[7]))],La=!0)},p(ce,[Le]){Le&1&&a.value!==ce[0].description&&ft(a,ce[0].description),Le&1&&no(h,ce[0].priority),Le&1&&w.value!==ce[0].recurrenceRule&&ft(w,ce[0].recurrenceRule),Le&32&&_.p(ce[5]),Le&1&&re.value!==ce[0].dueDate&&ft(re,ce[0].dueDate),Le&16&&ct.p(ce[4]),Le&1&&St.value!==ce[0].scheduledDate&&ft(St,ce[0].scheduledDate),Le&8&&Qi.p(ce[3]),Le&1&&xt.value!==ce[0].startDate&&ft(xt,ce[0].startDate),Le&4&&es.p(ce[2]),Le&1&&ts!==(ts=ce[0].status==="Done")&&(Dr.checked=ts),Le&1&&rs!==(rs=ce[0].status+"")&&up(Fa,rs),Le&64&&(is.innerHTML=ce[6])},i:Jr,o:Jr,d(ce){ce&&bs(e),r[13](null),La=!1,Nr(Yd)}}}var Vc="Try 'Monday' or 'tomorrow', or [td|tm|yd|tw|nw|we] then space.";function NO(r,e,t){var n,i;let{task:s}=e,{onSubmit:a}=e,o,u={description:"",status:"Todo",priority:"none",recurrenceRule:"",startDate:"",scheduledDate:"",dueDate:"",doneDate:""},l="",c="",d="",f="",h="";function m(x,w,Ie=void 0){if(!w)return`no ${x} date`;let Oe=Wi.parseDate(w,Ie,{forwardDate:Ie!=null});return Oe!==null?window.moment(Oe).format("YYYY-MM-DD"):`invalid ${x} date`}io(()=>{let x=s.getDescriptionWithoutGlobalFilter(),w="none";s.priority==="4"?w="low":s.priority==="2"?w="medium":s.priority==="1"&&(w="high"),t(0,u={description:x,status:s.status,priority:w,recurrenceRule:s.recurrence?s.recurrence.toText():"",startDate:s.startDate?s.startDate.format("YYYY-MM-DD"):"",scheduledDate:s.scheduledDate?s.scheduledDate.format("YYYY-MM-DD"):"",dueDate:s.dueDate?s.dueDate.format("YYYY-MM-DD"):"",doneDate:s.doneDate?s.doneDate.format("YYYY-MM-DD"):""}),setTimeout(()=>{o.focus()},10)});let y=()=>{let{globalFilter:x}=ie(),w=u.description.trim();w.includes(x)||(w=x+" "+w);let Ie=null,Oe=Wi.parseDate(u.startDate,new Date,{forwardDate:!0});Oe!==null&&(Ie=window.moment(Oe));let D=null,v=Wi.parseDate(u.scheduledDate,new Date,{forwardDate:!0});v!==null&&(D=window.moment(v));let _=null,M=Wi.parseDate(u.dueDate,new Date,{forwardDate:!0});M!==null&&(_=window.moment(M));let b=null;u.recurrenceRule&&(b=dt.fromText({recurrenceRuleText:u.recurrenceRule,startDate:Ie,scheduledDate:D,dueDate:_}));let k;switch(u.priority){case"low":k="4";break;case"medium":k="2";break;case"high":k="1";break;default:k="3"}let P=new W(Object.assign(Object.assign({},s),{description:w,status:u.status,priority:k,recurrence:b,startDate:Ie,scheduledDate:D,dueDate:_,doneDate:window.moment(u.doneDate,"YYYY-MM-DD").isValid()?window.moment(u.doneDate,"YYYY-MM-DD"):null}));a([P])};function g(){u.description=this.value,t(0,u)}function O(x){_s[x?"unshift":"push"](()=>{o=x,t(1,o)})}function S(){u.priority=lp(this),t(0,u)}function N(){u.recurrenceRule=this.value,t(0,u)}function z(){u.dueDate=this.value,t(0,u)}function te(){u.scheduledDate=this.value,t(0,u)}function le(){u.startDate=this.value,t(0,u)}return r.$$set=x=>{"task"in x&&t(8,s=x.task),"onSubmit"in x&&t(9,a=x.onSubmit)},r.$$.update=()=>{if(r.$$.dirty&1){e:t(0,u.startDate=gn(u.startDate),u),t(2,l=m("start",u.startDate,new Date))}if(r.$$.dirty&1){e:t(0,u.scheduledDate=gn(u.scheduledDate),u),t(3,c=m("scheduled",u.scheduledDate,new Date))}if(r.$$.dirty&1){e:t(0,u.dueDate=gn(u.dueDate),u),t(4,d=m("due",u.dueDate,new Date))}if(r.$$.dirty&3073){e:u.recurrenceRule?t(5,f=t(11,i=t(10,n=dt.fromText({recurrenceRuleText:u.recurrenceRule,startDate:null,scheduledDate:null,dueDate:null}))===null||n===void 0?void 0:n.toText())!==null&&i!==void 0?i:"invalid recurrence rule"):t(5,f="not recurring")}if(r.$$.dirty&1){e:t(6,h=m("done",u.doneDate))}},[u,o,l,c,d,f,h,y,s,a,n,i,g,O,S,N,z,te,le]}var Zc=class extends Ts{constructor(e){super(),fp(this,e,NO,kO,ip,{task:8,onSubmit:9})}},jg=Zc;var _n=class extends Bg.Modal{constructor({app:t,task:n,onSubmit:i}){super(t);this.task=n,this.onSubmit=s=>{i(s),this.close()}}onOpen(){this.titleEl.setText("Create or edit Task");let{contentEl:t}=this;new jg({target:t,props:{task:this.task,onSubmit:this.onSubmit}})}onClose(){let{contentEl:t}=this;t.empty()}};var Gg=(r,e,t,n)=>{var d;if(r)return t instanceof Qc.MarkdownView;if(!(t instanceof Qc.MarkdownView))return;let i=(d=t.file)==null?void 0:d.path;if(i===void 0)return;let a=e.getCursor().line,o=e.getLine(a),u=CO({line:o,path:i}),l=f=>{let h=f.map(m=>m.toFileLineString()).join(` -`);e.setLine(a,h)};new _n({app:n,task:u,onSubmit:l}).open()},CO=({line:r,path:e})=>{var d;let t=W.fromLine({line:r,path:e,sectionStart:0,sectionIndex:0,precedingHeader:null});if(t!==null)return t;let n=/^([\s\t]*)[-*]? *(\[(.)\])? *(.*)/u,i=r.match(n);if(i===null)return console.error("Tasks: Cannot create task on line:",r),new W({status:"Todo",description:"",path:e,indentation:"",originalStatusCharacter:" ",priority:"3",startDate:null,scheduledDate:null,dueDate:null,doneDate:null,recurrence:null,sectionStart:0,sectionIndex:0,precedingHeader:null,blockLink:"",tags:[]});let s=i[1],a=(d=i[3])!=null?d:" ",o=a===" "?"Todo":"Done",u=i[4],l=r.match(W.blockLinkRegex),c=l!==null?l[0]:"";return c!==""&&(u=u.replace(W.blockLinkRegex,"")),new W({status:o,description:u,path:e,indentation:s,originalStatusCharacter:a,blockLink:c,priority:"3",startDate:null,scheduledDate:null,dueDate:null,doneDate:null,recurrence:null,sectionStart:0,sectionIndex:0,precedingHeader:null,tags:[]})};var Jc=require("obsidian");var Hg=(r,e,t)=>{var u;if(r)return t instanceof Jc.MarkdownView;if(!(t instanceof Jc.MarkdownView))return;let n=(u=t.file)==null?void 0:u.path;if(n===void 0)return;let i=e.getCursor(),s=i.line,a=e.getLine(s),o=SO({line:a,path:n});e.setLine(s,o),/[^ [\]*-]/.test(o)&&e.setCursor({line:i.line,ch:i.ch+o.length-a.length})},SO=({line:r,path:e})=>{let t=r,n=W.fromLine({line:r,path:e,sectionStart:0,sectionIndex:0,precedingHeader:null});if(n!==null)t=xO({task:n});else{let i=r.match(W.taskRegex);if(i!==null)t=IO({regexMatch:i});else{let s=/^([\s\t]*)([-*])/;s.test(r)?t=r.replace(s,"$1$2 [ ]"):t=r.replace(/^([\s\t]*)/,"$1- ")}}return t},xO=({task:r})=>r.toggle().map(n=>n.toFileLineString()).join(` -`),IO=({regexMatch:r})=>{let e=r[1],t=r[2].toLowerCase(),n=r[3];return`${e}- [${t===" "?"x":" "}] ${n}`};var fa=class{get app(){return this.plugin.app}constructor({plugin:e}){this.plugin=e,e.addCommand({id:"edit-task",name:"Create or edit task",icon:"pencil",editorCheckCallback:(t,n,i)=>Gg(t,n,i,this.app)}),e.addCommand({id:"toggle-done",name:"Toggle task done",icon:"check-in-circle",editorCheckCallback:Hg})}};var pa=class{constructor({obsidianEents:e}){this.obsidianEvents=e}onCacheUpdate(e){return this.obsidianEvents.on("obsidian-tasks-plugin:cache-update",e)}triggerCacheUpdate(e){this.obsidianEvents.trigger("obsidian-tasks-plugin:cache-update",e)}onRequestCacheUpdate(e){return this.obsidianEvents.on("obsidian-tasks-plugin:request-cache-update",e)}triggerRequestCacheUpdate(e){this.obsidianEvents.trigger("obsidian-tasks-plugin:request-cache-update",e)}off(e){this.obsidianEvents.offref(e)}};var ha=class{constructor({plugin:e}){this.markdownPostProcessor=this._markdownPostProcessor.bind(this);e.registerMarkdownPostProcessor(this._markdownPostProcessor.bind(this))}_markdownPostProcessor(e,t){return ne(this,null,function*(){var c;let{globalFilter:n}=ie(),i=e.findAll(".task-list-item").filter(d=>{var m;let f=(m=d.textContent)==null?void 0:m.split(` -`);if(f===void 0)return!1;let h=null;for(let y=0;yzg.ViewPlugin.fromClass(ed),ed=class{constructor(e){this.view=e,this.handleClickEvent=this.handleClickEvent.bind(this),this.view.dom.addEventListener("click",this.handleClickEvent)}destroy(){this.view.dom.removeEventListener("click",this.handleClickEvent)}handleClickEvent(e){let{target:t}=e;if(!t||!(t instanceof HTMLInputElement)||t.type!=="checkbox")return!1;let{state:n}=this.view,i=this.view.posAtDOM(t),s=n.doc.lineAt(i),a=W.fromLine({line:s.text,path:"",sectionStart:0,sectionIndex:0,precedingHeader:null});if(a===null)return!1;e.preventDefault();let u=a.toggle().map(d=>d.toFileLineString()).join(n.lineBreak),l=n.update({changes:{from:s.from,to:s.to,insert:u}});this.view.dispatch(l);let c=t.checked;return setTimeout(()=>{t.checked=c},1),!0}};var l_=require("obsidian");var ma=class{constructor(e,t){this.nestingLevel=e,this.name=t}};var ya=class{constructor(e){this.lastHeadingAtLevel=new Array;let n=e.keys().next().value.length;for(let i=0;it.set(o,a)),e.pop();return t}};var _a=class extends Map{},Ta=class extends ga{},ba=class{constructor(e,t){this.groups=new _a;let n=this.buildGroupingTree(e,t);this.groups=n.generateAllPaths(),this.groups=this.getSortedGroups()}buildGroupingTree(e,t){let n=new Ta(t),i=[n];for(let s of e){let a=[];for(let o of i)for(let u of o.values){let l=br.getGroupNamesForTask(s.property,u);for(let c of l){let d=o.children.get(c);d===void 0&&(d=new Ta([]),o.children.set(c,d),a.push(d)),d.values.push(u)}}i=a}return n}getSortedGroups(){return new _a([...this.groups.entries()].sort())}};var va=class{constructor(e,t,n){this.groups=e,this.groupHeadings=t,this.tasks=n}tasksAsStringOfLines(){let e="";for(let t of this.tasks)e+=t.toFileLineString()+` +`).map(function(i){return i.replace(/^RRULE:/,"EXRULE:")}).filter(function(i){return!/^DTSTART/.test(i)}))}),this._rdate.length&&t.push(ep("RDATE",this._rdate,this.tzid())),this._exdate.length&&t.push(ep("EXDATE",this._exdate,this.tzid())),t},e.prototype.toString=function(){return this.valueOf().join(` +`)},e.prototype.clone=function(){var t=new e(!!this._cache);return this._rrule.forEach(function(n){return t.rrule(n.clone())}),this._exrule.forEach(function(n){return t.exrule(n.clone())}),this._rdate.forEach(function(n){return t.rdate(new Date(n.getTime()))}),this._exdate.forEach(function(n){return t.exdate(new Date(n.getTime()))}),t},e}(w);function Qf(r,e){if(!(r instanceof w))throw new TypeError(String(r)+" is not RRule instance");B(e.map(String),String(r))||e.push(r)}function Jf(r,e){if(!(r instanceof Date))throw new TypeError(String(r)+" is not Date instance");B(e.map(Number),Number(r))||(e.push(r),k.sort(e))}function ep(r,e,t){var n=!t||t.toUpperCase()==="UTC",i=n?"".concat(r,":"):"".concat(r,";TZID=").concat(t,":"),s=e.map(function(a){return k.timeToUntilString(a.valueOf(),n)}).join(",");return"".concat(i).concat(s)}var G=class{static by(e,t){let n=[G.compareByUrgency,G.compareByStatus,G.compareByDueDate,G.compareByPriority,G.compareByPath],i=[];for(let{property:s,reverse:a,propertyInstance:o}of e.sorting){let u=G.comparators[s];i.push(a?G.makeReversedComparator(u):u),s==="tag"&&(G.tagPropertyInstance=o)}return t.sort(G.makeCompositeComparator([...i,...n]))}static makeReversedComparator(e){return(t,n)=>e(t,n)*-1}static makeCompositeComparator(e){return(t,n)=>{for(let i of e){let s=i(t,n);if(s!==0)return s}return 0}}static compareByUrgency(e,t){return t.urgency-e.urgency}static compareByStatus(e,t){return e.statust.status?-1:0}static compareByPriority(e,t){return e.priority.localeCompare(t.priority)}static compareByStartDate(e,t){return G.compareByDate(e.startDate,t.startDate)}static compareByScheduledDate(e,t){return G.compareByDate(e.scheduledDate,t.scheduledDate)}static compareByDueDate(e,t){return G.compareByDate(e.dueDate,t.dueDate)}static compareByDoneDate(e,t){return G.compareByDate(e.doneDate,t.doneDate)}static compareByTag(e,t){if(e.tags.length===0&&t.tags.length===0)return 0;if(e.tags.length===0)return 1;if(t.tags.length===0)return-1;let n=G.tagPropertyInstance-1;return e.tags.length=G.tagPropertyInstance?1:t.tags.length=G.tagPropertyInstance?-1:e.tags.lengtht.tags[n]?1:0}static compareByDate(e,t){return e!==null&&t===null?-1:e===null&&t!==null?1:e!==null&&t!==null?e.isAfter(t)?1:e.isBefore(t)?-1:0:0}static compareByPath(e,t){return e.patht.path?1:0}static compareByDescription(e,t){return G.cleanDescription(e.description).localeCompare(G.cleanDescription(t.description))}static cleanDescription(e){let t=ne().globalFilter;e=e.replace(t,"").trim();let n=/^\[\[?([^\]]*)\]/,i=e.match(n);if(i!==null){let l=i[1];e=l.substring(l.indexOf("|")+1)+e.replace(n,"")}let s=/^\*\*?([^*]*)\*/,a=e.match(s);a!==null&&(e=a[1]+e.replace(n,""));let o=/^==?([^=]*)==/,u=e.match(o);return u!==null&&(e=u[1]+e.replace(o,"")),e}},Ge=G;Ge.tagPropertyInstance=1,Ge.comparators={urgency:G.compareByUrgency,description:G.compareByDescription,priority:G.compareByPriority,start:G.compareByStartDate,scheduled:G.compareByScheduledDate,due:G.compareByDueDate,done:G.compareByDoneDate,path:G.compareByPath,status:G.compareByStatus,tag:G.compareByTag};var ft=class{constructor({rrule:e,baseOnToday:t,referenceDate:n,startDate:i,scheduledDate:s,dueDate:a}){this.rrule=e,this.baseOnToday=t,this.referenceDate=n,this.startDate=i,this.scheduledDate=s,this.dueDate=a}static fromText({recurrenceRuleText:e,startDate:t,scheduledDate:n,dueDate:i}){try{let s=e.match(/^([a-zA-Z0-9, !]+?)( when done)?$/i);if(s==null)return null;let a=s[1].trim(),o=s[2]!==void 0,u=w.parseText(a);if(u!==null){let l=null;i?l=window.moment(i):n?l=window.moment(n):t&&(l=window.moment(t)),!o&&l!==null?u.dtstart=window.moment(l).startOf("day").utc(!0).toDate():u.dtstart=window.moment().startOf("day").utc(!0).toDate();let c=new w(u);return new ft({rrule:c,baseOnToday:o,referenceDate:l,startDate:t,scheduledDate:n,dueDate:i})}}catch(s){}return null}toText(){let e=this.rrule.toText();return this.baseOnToday&&(e+=" when done"),e}next(){var t;let e;if(this.baseOnToday){let n=window.moment();e=new w(Ut($e({},this.rrule.origOptions),{dtstart:n.startOf("day").utc(!0).toDate()})).after(n.endOf("day").utc(!0).toDate())}else{let n=window.moment((t=this.referenceDate)!=null?t:void 0).endOf("day").utc(!0);e=this.rrule.after(n.toDate())}if(e!==null){let i=window.moment.utc(e).local(!0).startOf("day"),s=null,a=null,o=null;if(this.referenceDate){if(this.startDate){let u=window.moment.duration(this.startDate.diff(this.referenceDate));s=window.moment(i),s.add(Math.round(u.asDays()),"days")}if(this.scheduledDate){let u=window.moment.duration(this.scheduledDate.diff(this.referenceDate));a=window.moment(i),a.add(Math.round(u.asDays()),"days")}if(this.dueDate){let u=window.moment.duration(this.dueDate.diff(this.referenceDate));o=window.moment(i),o.add(Math.round(u.asDays()),"days")}}return{startDate:s,scheduledDate:a,dueDate:o}}return null}identicalTo(e){return this.baseOnToday!==e.baseOnToday||Ge.compareByDate(this.startDate,e.startDate)!==0||Ge.compareByDate(this.scheduledDate,e.scheduledDate)!==0||Ge.compareByDate(this.dueDate,e.dueDate)!==0?!1:this.toText()===e.toText()}};var Yt=class{static calculate(e){let t=0;if(e.dueDate!==null){let n=Math.round(window.moment().diff(e.dueDate)/Yt.milliSecondsPerDay),i;n>=7?i=1:n>=-14?i=(n+14)*.8/21+.2:i=.2,t+=i*Yt.dueCoefficient}switch(e.scheduledDate!==null&&window.moment().isSameOrAfter(e.scheduledDate)&&(t+=1*Yt.scheduledCoefficient),e.startDate!==null&&window.moment().isBefore(e.startDate)&&(t+=1*Yt.startedCoefficient),e.priority){case"1":t+=1*Yt.priorityCoefficient;break;case"2":t+=.65*Yt.priorityCoefficient;break;case"3":t+=.325*Yt.priorityCoefficient;break}return t}},Lt=Yt;Lt.dueCoefficient=12,Lt.scheduledCoefficient=5,Lt.startedCoefficient=-3,Lt.priorityCoefficient=6,Lt.milliSecondsPerDay=1e3*60*60*24;var Re={High:"\u23EB",Medium:"\u{1F53C}",Low:"\u{1F53D}",None:""},Rt="\u{1F501}",wt="\u{1F6EB}",Dt="\u23F3",Mt="\u{1F4C5}",Ja="\u2705",H=class{constructor({status:e,description:t,path:n,indentation:i,sectionStart:s,sectionIndex:a,originalStatusCharacter:o,precedingHeader:u,priority:l,startDate:c,scheduledDate:d,dueDate:f,doneDate:p,recurrence:y,blockLink:m,tags:g}){this._urgency=null;this.status=e,this.description=t,this.path=n,this.indentation=i,this.sectionStart=s,this.sectionIndex=a,this.originalStatusCharacter=o,this.precedingHeader=u,this.tags=g,this.priority=l,this.startDate=c,this.scheduledDate=d,this.dueDate=f,this.doneDate=p,this.recurrence=y,this.blockLink=m}static fromLine({line:e,path:t,sectionStart:n,sectionIndex:i,precedingHeader:s}){let a=e.match(H.taskRegex);if(a===null)return null;let o=a[3].trim(),{globalFilter:u}=ne();if(!o.includes(u))return null;let l=o,c=a[1],d=a[2].toLowerCase(),f;switch(d){case" ":f="Todo";break;default:f="Done"}let p=l.match(this.blockLinkRegex),y=p!==null?p[0]:"";y!==""&&(l=l.replace(this.blockLinkRegex,"").trim());let m,g="3",A=null,C=null,N=null,z=null,re="",de=null,J=[],D="",ye=20,le=0;do{m=!1;let v=l.match(H.priorityRegex);if(v!==null){switch(v[1]){case Re.Low:g="4";break;case Re.Medium:g="2";break;case Re.High:g="1";break}l=l.replace(H.priorityRegex,"").trim(),m=!0}let _=l.match(H.doneDateRegex);_!==null&&(z=window.moment(_[1],H.dateFormat),l=l.replace(H.doneDateRegex,"").trim(),m=!0);let P=l.match(H.dueDateRegex);P!==null&&(N=window.moment(P[1],H.dateFormat),l=l.replace(H.dueDateRegex,"").trim(),m=!0);let E=l.match(H.scheduledDateRegex);E!==null&&(C=window.moment(E[1],H.dateFormat),l=l.replace(H.scheduledDateRegex,"").trim(),m=!0);let S=l.match(H.startDateRegex);S!==null&&(A=window.moment(S[1],H.dateFormat),l=l.replace(H.startDateRegex,"").trim(),m=!0);let O=l.match(H.recurrenceRegex);O!==null&&(re=O[1].trim(),l=l.replace(H.recurrenceRegex,"").trim(),m=!0);let q=l.match(H.hashTagsFromEnd);if(q!=null){l=l.replace(H.hashTagsFromEnd,"").trim(),m=!0;let ee=q[0].trim();D=D.length>0?[ee,D].join(" "):ee}le++}while(m&&le<=ye);re.length>0&&(de=ft.fromText({recurrenceRuleText:re,startDate:A,scheduledDate:C,dueDate:N})),D.length>0&&(l+=" "+D);let M=l.match(this.hashTags);return M!==null&&(J=M.filter(v=>v!==u).map(v=>v.trim())),new H({status:f,description:l,path:t,indentation:c,sectionStart:n,sectionIndex:i,originalStatusCharacter:d,precedingHeader:s,priority:g,startDate:A,scheduledDate:C,dueDate:N,doneDate:z,recurrence:de,blockLink:y,tags:J})}toLi(s){return se(this,arguments,function*({parentUlElement:e,listIndex:t,layoutOptions:n,isFilenameUnique:i}){let a=e.createEl("li");a.addClasses(["task-list-item","plugin-tasks-list-item"]);let o=this.toString(n),{globalFilter:u,removeGlobalFilter:l}=ne();l&&(o=o.replace(u,"").trim());let c=a.createSpan();c.addClass("tasks-list-text"),yield tp.MarkdownRenderer.renderMarkdown(o,c,this.path,null);let d=c.querySelector("blockquote"),f=d!=null?d:c,p=f.querySelector("p");if(p!==null){for(;p.firstChild;)f.insertBefore(p.firstChild,p);p.remove()}c.findAll("p").forEach(m=>{m.hasChildNodes()||m.remove()}),c.findAll(".footnotes").forEach(m=>{m.remove()});let y=a.createEl("input");return y.addClass("task-list-item-checkbox"),y.type="checkbox",this.status!=="Todo"&&(y.checked=!0,a.addClass("is-checked")),y.onClickEvent(m=>{m.preventDefault(),m.stopPropagation(),y.disabled=!0;let g=this.toggle();us({originalTask:this,newTasks:g})}),a.prepend(y),a.setAttr("data-task",this.originalStatusCharacter.trim()),a.setAttr("data-line",t),y.setAttr("data-line",t),n!=null&&n.shortMode&&this.addTooltip({element:c,isFilenameUnique:i}),a})}toString(e){var i;e=e!=null?e:new Kr;let t=this.description;if(!e.hidePriority){let s="";this.priority==="1"?s=" "+Re.High:this.priority==="2"?s=" "+Re.Medium:this.priority==="4"&&(s=" "+Re.Low),t+=s}return!e.hideRecurrenceRule&&this.recurrence&&(t+=e.shortMode?" "+Rt:` ${Rt} ${this.recurrence.toText()}`),!e.hideStartDate&&this.startDate&&(t+=e.shortMode?" "+wt:` ${wt} ${this.startDate.format(H.dateFormat)}`),!e.hideScheduledDate&&this.scheduledDate&&(t+=e.shortMode?" "+Dt:` ${Dt} ${this.scheduledDate.format(H.dateFormat)}`),!e.hideDueDate&&this.dueDate&&(t+=e.shortMode?" "+Mt:` ${Mt} ${this.dueDate.format(H.dateFormat)}`),!e.hideDoneDate&&this.doneDate&&(t+=e.shortMode?" "+Ja:` ${Ja} ${this.doneDate.format(H.dateFormat)}`),t+=(i=this.blockLink)!=null?i:"",t}toFileLineString(){return`${this.indentation}- [${this.originalStatusCharacter}] ${this.toString()}`}toggle(){let e=this.status==="Todo"?"Done":"Todo",t=null,n=null;if(e!=="Todo"){let{setDoneDate:a}=ne();a&&(t=window.moment()),this.recurrence!==null&&(n=this.recurrence.next())}let i=new H(Ut($e({},this),{status:e,doneDate:t,originalStatusCharacter:e==="Done"?"x":" "})),s=[];if(n!==null){let a=new H(Ut($e($e({},this),n),{blockLink:""}));s.push(a)}return s.push(i),s}get urgency(){return this._urgency===null&&(this._urgency=Lt.calculate(this)),this._urgency}get filename(){let e=this.path.match(/([^/]+)\.md$/);return e!==null?e[1]:null}getLinkText({isFilenameUnique:e}){let t;return e?t=this.filename:t="/"+this.path,t===null?null:(this.precedingHeader!==null&&this.precedingHeader!==t&&(t=t+" > "+this.precedingHeader),t)}static tasksListsIdentical(e,t){return e.length!==t.length?!1:e.every((n,i)=>n.identicalTo(t[i]))}identicalTo(e){let t=["status","description","path","indentation","sectionStart","sectionIndex","originalStatusCharacter","precedingHeader","priority","blockLink"];for(let s of t)if(this[s]!==e[s])return!1;if(this.tags.length!==e.tags.length||!this.tags.every(function(s,a){return s===e.tags[a]}))return!1;t=["startDate","scheduledDate","dueDate","doneDate"];for(let s of t){let a=this[s],o=e[s];if(Ge.compareByDate(a,o)!==0)return!1}let n=this.recurrence,i=e.recurrence;return n===null&&i!==null||n!==null&&i===null?!1:!(n&&i&&!n.identicalTo(i))}addTooltip({element:e,isFilenameUnique:t}){e.addEventListener("mouseenter",()=>{let n=e.createDiv();n.addClasses(["tooltip","mod-right"]),this.recurrence&&n.createDiv().setText(`${Rt} ${this.recurrence.toText()}`),this.startDate&&n.createDiv().setText(H.toTooltipDate({signifier:wt,date:this.startDate})),this.scheduledDate&&n.createDiv().setText(H.toTooltipDate({signifier:Dt,date:this.scheduledDate})),this.dueDate&&n.createDiv().setText(H.toTooltipDate({signifier:Mt,date:this.dueDate})),this.doneDate&&n.createDiv().setText(H.toTooltipDate({signifier:Ja,date:this.doneDate}));let i=this.getLinkText({isFilenameUnique:t});i&&n.createDiv().setText(`\u{1F517} ${i}`),e.addEventListener("mouseleave",()=>{n.remove()})})}static toTooltipDate({signifier:e,date:t}){return`${e} ${t.format(H.dateFormat)} (${t.from(window.moment().startOf("day"))})`}escapeRegExp(e){return e.replace(/([.*+?^${}()|[\]/\\])/g,"\\$1")}getDescriptionWithoutGlobalFilter(){let{globalFilter:e}=ne(),t=this.description;if(e.length===0)return t;let n=RegExp("(^|\\s)"+this.escapeRegExp(e)+"($|\\s)","ug");return this.description.search(n)>-1&&(t=t.replace(n,"$1$2").replace(" "," ").trim()),t}},L=H;L.dateFormat="YYYY-MM-DD",L.taskRegex=/^([\s\t>]*)[-*] +\[(.)\] *(.*)/u,L.blockLinkRegex=/ \^[a-zA-Z0-9-]+$/u,L.priorityRegex=/([⏫🔼🔽])$/u,L.startDateRegex=/🛫 *(\d{4}-\d{2}-\d{2})$/u,L.scheduledDateRegex=/[⏳⌛] *(\d{4}-\d{2}-\d{2})$/u,L.dueDateRegex=/[📅📆🗓] *(\d{4}-\d{2}-\d{2})$/u,L.doneDateRegex=/✅ *(\d{4}-\d{2}-\d{2})$/u,L.recurrenceRegex=/🔁 ?([a-zA-Z0-9, !]+)$/iu,L.hashTags=/(^|\s)#[^ !@#$%^&*(),.?":{}|<>]*/g,L.hashTagsFromEnd=new RegExp(H.hashTags.source+"$");var fr=class{constructor({metadataCache:e,vault:t,events:n}){this.metadataCache=e,this.metadataCacheEventReferences=[],this.vault=t,this.vaultEventReferences=[],this.events=n,this.eventsEventReferences=[],this.tasksMutex=new os,this.state="Cold",this.tasks=[],this.loadedAfterFirstResolve=!1,this.subscribeToCache(),this.subscribeToVault(),this.subscribeToEvents(),this.loadVault()}unload(){for(let e of this.metadataCacheEventReferences)this.metadataCache.offref(e);for(let e of this.vaultEventReferences)this.vault.offref(e);for(let e of this.eventsEventReferences)this.events.off(e)}getTasks(){return this.tasks}getState(){return this.state}notifySubscribers(){this.events.triggerCacheUpdate({tasks:this.tasks,state:this.state})}subscribeToCache(){let e=this.metadataCache.on("resolved",()=>se(this,null,function*(){this.loadedAfterFirstResolve||(this.loadedAfterFirstResolve=!0,this.loadVault())}));this.metadataCacheEventReferences.push(e);let t=this.metadataCache.on("changed",n=>{this.tasksMutex.runExclusive(()=>{this.indexFile(n)})});this.metadataCacheEventReferences.push(t)}subscribeToVault(){let e=this.vault.on("create",i=>{i instanceof ys.TFile&&this.tasksMutex.runExclusive(()=>{this.indexFile(i)})});this.vaultEventReferences.push(e);let t=this.vault.on("delete",i=>{i instanceof ys.TFile&&this.tasksMutex.runExclusive(()=>{this.tasks=this.tasks.filter(s=>s.path!==i.path),this.notifySubscribers()})});this.vaultEventReferences.push(t);let n=this.vault.on("rename",(i,s)=>{i instanceof ys.TFile&&this.tasksMutex.runExclusive(()=>{this.tasks=this.tasks.map(a=>a.path===s?new L(Ut($e({},a),{path:i.path})):a),this.notifySubscribers()})});this.vaultEventReferences.push(n)}subscribeToEvents(){let e=this.events.onRequestCacheUpdate(t=>{t({tasks:this.tasks,state:this.state})});this.eventsEventReferences.push(e)}loadVault(){return this.tasksMutex.runExclusive(()=>se(this,null,function*(){this.state="Initializing",yield Promise.all(this.vault.getMarkdownFiles().map(e=>this.indexFile(e))),this.state="Warm",this.notifySubscribers()}))}indexFile(e){return se(this,null,function*(){let t=this.metadataCache.getFileCache(e);if(t==null)return;let n=t.listItems;n===void 0&&(n=[]);let i=this.tasks.filter(o=>o.path===e.path),s=yield this.vault.cachedRead(e),a=fr.getTasksFromFileContent(s,n,t,e);L.tasksListsIdentical(i,a)||(this.getState()=="Warm"&&console.debug(`At least one task, its line number or its heading has changed in ${e.path}: triggering a refresh of all active Tasks blocks in Live Preview and Reading mode views.`),this.tasks=this.tasks.filter(o=>o.path!==e.path),this.tasks.push(...a),this.notifySubscribers())})}static getTasksFromFileContent(e,t,n,i){let s=[],a=e.split(` +`),o=null,u=0;for(let l of t)if(l.task!==void 0){if((o===null||o.position.end.line=e)return n;return null}static getPrecedingHeader({lineNumberTask:e,sections:t,fileLines:n}){if(t===void 0)return null;let i;for(let l of t)if(l.type==="heading"){if(l.position.start.line>e)break;i=l}if(i===void 0)return null;let s=i.position.start.line,a=n[s],o=/^#+ +(.*)/u,u=a.match(o);return u===null?null:u[1]}};var Jc=require("obsidian");var Hg=require("obsidian");function Jr(){}function ro(r){return r()}function np(){return Object.create(null)}function Nr(r){r.forEach(ro)}function sp(r){return typeof r=="function"}function ap(r,e){return r!=r?e==e:r!==e||r&&typeof r=="object"||typeof r=="function"}function op(r){return Object.keys(r).length===0}var up=!1;function rT(){up=!0}function nT(){up=!1}function b(r,e){r.appendChild(e)}function no(r,e,t){r.insertBefore(e,t||null)}function vs(r){r.parentNode.removeChild(r)}function x(r){return document.createElement(r)}function iT(r){return document.createElementNS("http://www.w3.org/2000/svg",r)}function $t(r){return document.createTextNode(r)}function Z(){return $t(" ")}function pr(r,e,t,n){return r.addEventListener(e,t,n),()=>r.removeEventListener(e,t,n)}function lp(r){return function(e){return e.preventDefault(),r.call(this,e)}}function Y(r,e,t){t==null?r.removeAttribute(e):r.getAttribute(e)!==t&&r.setAttribute(e,t)}function sT(r){return Array.from(r.childNodes)}function cp(r,e){e=""+e,r.wholeText!==e&&(r.data=e)}function pt(r,e){r.value=e==null?"":e}function io(r,e){for(let t=0;t{let u=s.map(ro).filter(sp);a?a.push(...u):Nr(u),r.$$.on_mount=[]}),o.forEach(Fn)}function pp(r,e){let t=r.$$;t.fragment!==null&&(Nr(t.on_destroy),t.fragment&&t.fragment.d(e),t.on_destroy=t.fragment=null,t.ctx=[])}function pT(r,e){r.$$.dirty[0]===-1&&(In.push(r),uT(),r.$$.dirty.fill(0)),r.$$.dirty[e/31|0]|=1<{let y=p.length?p[0]:f;return l.ctx&&i(l.ctx[d],l.ctx[d]=y)&&(!l.skip_bound&&l.bound[d]&&l.bound[d](y),c&&pT(r,d)),f}):[],l.update(),c=!0,Nr(l.before_update),l.fragment=n?n(l.ctx):!1,e.target){if(e.hydrate){rT();let d=sT(e.target);l.fragment&&l.fragment.l(d),d.forEach(vs)}else l.fragment&&l.fragment.c();e.intro&&dT(r.$$.fragment),fT(r,e.target,e.anchor,e.customElement),nT(),fp()}Un(u)}var hT;typeof HTMLElement=="function"&&(hT=class extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){let{on_mount:r}=this.$$;this.$$.on_disconnect=r.map(ro).filter(sp);for(let e in this.$$.slotted)this.appendChild(this.$$.slotted[e])}attributeChangedCallback(r,e,t){this[r]=t}disconnectedCallback(){Nr(this.$$.on_disconnect)}$destroy(){pp(this,1),this.$destroy=Jr}$on(r,e){let t=this.$$.callbacks[r]||(this.$$.callbacks[r]=[]);return t.push(e),()=>{let n=t.indexOf(e);n!==-1&&t.splice(n,1)}}$set(r){this.$$set&&!op(r)&&(this.$$.skip_bound=!0,this.$$set(r),this.$$.skip_bound=!1)}});var bs=class{$destroy(){pp(this,1),this.$destroy=Jr}$on(e,t){let n=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return n.push(t),()=>{let i=n.indexOf(t);i!==-1&&n.splice(i,1)}}$set(e){this.$$set&&!op(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}};var Wi=as(Ee());var CO={td:"today",tm:"tomorrow",yd:"yesterday",tw:"this week",nw:"next week",weekend:"sat",we:"sat"};function gn(r){for(let[e,t]of Object.entries(CO))r=r.replace(RegExp(`\\b${e}\\s`,"i"),t);return r}function SO(r){let e,t,n,i,s,a,o,u,l,c,d,f,p,y,m,g,A,C,N,z,re,de,J,D,ye,le,M,v,_,P,E,S,O,q,ee,oe,ie,ct,Le,sr,ar,dt,Ne,Ce,or,Dr,xt,Rd,Mn,wd,Dd,Qi,Md,ur,Ji,Pd,It,Od,Pn,Ad,kd,es,Nd,Cd,Sd,Hr,zr,xd,Mr,ts,Id,Fa,rs=r[0].status+"",Wa,Ud,ns,qd,is,Fd,Wd,Ld,La,Yd,ss,Ya,$d;return{c(){e=x("div"),t=x("form"),n=x("div"),i=x("label"),i.textContent="Description",s=Z(),a=x("input"),o=Z(),u=x("hr"),l=Z(),c=x("div"),d=x("label"),d.textContent="Priority",f=Z(),p=x("select"),y=x("option"),y.textContent="None",m=x("option"),m.textContent=`${Re.High} High`,g=x("option"),g.textContent=`${Re.Medium} Medium`,A=x("option"),A.textContent=`${Re.Low} Low`,C=Z(),N=x("hr"),z=Z(),re=x("div"),de=x("label"),de.textContent="Recurrence",J=Z(),D=x("input"),ye=Z(),le=x("code"),M=$t(Rt),v=Z(),_=new kr(!1),P=Z(),E=x("hr"),S=Z(),O=x("div"),q=x("div"),ee=x("label"),ee.textContent="Due",oe=Z(),ie=x("input"),ct=Z(),Le=x("code"),sr=$t(Mt),ar=Z(),dt=new kr(!1),Ne=Z(),Ce=x("div"),or=x("label"),or.textContent="Scheduled",Dr=Z(),xt=x("input"),Rd=Z(),Mn=x("code"),wd=$t(Dt),Dd=Z(),Qi=new kr(!1),Md=Z(),ur=x("div"),Ji=x("label"),Ji.textContent="Start",Pd=Z(),It=x("input"),Od=Z(),Pn=x("code"),Ad=$t(wt),kd=Z(),es=new kr(!1),Nd=Z(),Cd=x("hr"),Sd=Z(),Hr=x("div"),zr=x("div"),xd=$t(`Status: + `),Mr=x("input"),Id=Z(),Fa=x("code"),Wa=$t(rs),Ud=Z(),ns=x("div"),qd=$t(`Done on: + `),is=x("code"),Fd=Z(),Wd=x("hr"),Ld=Z(),La=x("div"),Yd=Z(),ss=x("div"),ss.innerHTML='',Y(i,"for","description"),Y(a,"id","description"),Y(a,"type","text"),Y(a,"class","tasks-modal-description"),Y(a,"placeholder","Take out the trash"),Y(n,"class","tasks-modal-section"),Y(d,"for","priority"),y.__value="none",y.value=y.__value,m.__value="high",m.value=m.__value,g.__value="medium",g.value=g.__value,A.__value="low",A.value=A.__value,Y(p,"id","priority"),Y(p,"class","dropdown"),r[0].priority===void 0&&Fn(()=>r[14].call(p)),Y(c,"class","tasks-modal-section"),Y(de,"for","recurrence"),Y(D,"id","description"),Y(D,"type","text"),Y(D,"placeholder","Try 'every 2 weeks on Thursday'."),_.a=null,Y(re,"class","tasks-modal-section"),Y(ee,"for","due"),Y(ie,"id","due"),Y(ie,"type","text"),Y(ie,"placeholder",Zc),dt.a=null,Y(q,"class","tasks-modal-date"),Y(or,"for","scheduled"),Y(xt,"id","scheduled"),Y(xt,"type","text"),Y(xt,"placeholder",Zc),Qi.a=null,Y(Ce,"class","tasks-modal-date"),Y(Ji,"for","start"),Y(It,"id","start"),Y(It,"type","text"),Y(It,"placeholder",Zc),es.a=null,Y(ur,"class","tasks-modal-date"),Y(O,"class","tasks-modal-section"),Y(Mr,"type","checkbox"),Y(Mr,"class","task-list-item-checkbox tasks-modal-checkbox"),Mr.checked=ts=r[0].status==="Done",Mr.disabled=!0,Y(Hr,"class","tasks-modal-section"),Y(La,"class","tasks-modal-section"),Y(ss,"class","tasks-modal-section"),Y(e,"class","tasks-modal")},m(fe,Ye){no(fe,e,Ye),b(e,t),b(t,n),b(n,i),b(n,s),b(n,a),pt(a,r[0].description),r[13](a),b(t,o),b(t,u),b(t,l),b(t,c),b(c,d),b(c,f),b(c,p),b(p,y),b(p,m),b(p,g),b(p,A),io(p,r[0].priority),b(t,C),b(t,N),b(t,z),b(t,re),b(re,de),b(re,J),b(re,D),pt(D,r[0].recurrenceRule),b(re,ye),b(re,le),b(le,M),b(le,v),_.m(r[5],le),b(t,P),b(t,E),b(t,S),b(t,O),b(O,q),b(q,ee),b(q,oe),b(q,ie),pt(ie,r[0].dueDate),b(q,ct),b(q,Le),b(Le,sr),b(Le,ar),dt.m(r[4],Le),b(O,Ne),b(O,Ce),b(Ce,or),b(Ce,Dr),b(Ce,xt),pt(xt,r[0].scheduledDate),b(Ce,Rd),b(Ce,Mn),b(Mn,wd),b(Mn,Dd),Qi.m(r[3],Mn),b(O,Md),b(O,ur),b(ur,Ji),b(ur,Pd),b(ur,It),pt(It,r[0].startDate),b(ur,Od),b(ur,Pn),b(Pn,Ad),b(Pn,kd),es.m(r[2],Pn),b(t,Nd),b(t,Cd),b(t,Sd),b(t,Hr),b(Hr,zr),b(zr,xd),b(zr,Mr),b(zr,Id),b(zr,Fa),b(Fa,Wa),b(Hr,Ud),b(Hr,ns),b(ns,qd),b(ns,is),is.innerHTML=r[6],b(t,Fd),b(t,Wd),b(t,Ld),b(t,La),b(t,Yd),b(t,ss),Ya||($d=[pr(a,"input",r[12]),pr(p,"change",r[14]),pr(D,"input",r[15]),pr(ie,"input",r[16]),pr(xt,"input",r[17]),pr(It,"input",r[18]),pr(t,"submit",lp(r[7]))],Ya=!0)},p(fe,[Ye]){Ye&1&&a.value!==fe[0].description&&pt(a,fe[0].description),Ye&1&&io(p,fe[0].priority),Ye&1&&D.value!==fe[0].recurrenceRule&&pt(D,fe[0].recurrenceRule),Ye&32&&_.p(fe[5]),Ye&1&&ie.value!==fe[0].dueDate&&pt(ie,fe[0].dueDate),Ye&16&&dt.p(fe[4]),Ye&1&&xt.value!==fe[0].scheduledDate&&pt(xt,fe[0].scheduledDate),Ye&8&&Qi.p(fe[3]),Ye&1&&It.value!==fe[0].startDate&&pt(It,fe[0].startDate),Ye&4&&es.p(fe[2]),Ye&1&&ts!==(ts=fe[0].status==="Done")&&(Mr.checked=ts),Ye&1&&rs!==(rs=fe[0].status+"")&&cp(Wa,rs),Ye&64&&(is.innerHTML=fe[6])},i:Jr,o:Jr,d(fe){fe&&vs(e),r[13](null),Ya=!1,Nr($d)}}}var Zc="Try 'Monday' or 'tomorrow', or [td|tm|yd|tw|nw|we] then space.";function xO(r,e,t){var n,i;let{task:s}=e,{onSubmit:a}=e,o,u={description:"",status:"Todo",priority:"none",recurrenceRule:"",startDate:"",scheduledDate:"",dueDate:"",doneDate:""},l="",c="",d="",f="",p="",y=!1;function m(D,ye,le=void 0){if(!ye)return`no ${D} date`;let M=Wi.parseDate(ye,le,{forwardDate:le!=null});return M!==null?window.moment(M).format("YYYY-MM-DD"):`invalid ${D} date`}so(()=>{let{globalFilter:D}=ne(),ye=s.getDescriptionWithoutGlobalFilter();(ye!=s.description||ye.indexOf(D)==-1)&&(y=!0);let le="none";s.priority==="4"?le="low":s.priority==="2"?le="medium":s.priority==="1"&&(le="high"),t(0,u={description:ye,status:s.status,priority:le,recurrenceRule:s.recurrence?s.recurrence.toText():"",startDate:s.startDate?s.startDate.format("YYYY-MM-DD"):"",scheduledDate:s.scheduledDate?s.scheduledDate.format("YYYY-MM-DD"):"",dueDate:s.dueDate?s.dueDate.format("YYYY-MM-DD"):"",doneDate:s.doneDate?s.doneDate.format("YYYY-MM-DD"):""}),setTimeout(()=>{o.focus()},10)});let g=()=>{let{globalFilter:D}=ne(),ye=u.description.trim();y&&(ye=D+" "+ye);let le=null,M=Wi.parseDate(u.startDate,new Date,{forwardDate:!0});M!==null&&(le=window.moment(M));let v=null,_=Wi.parseDate(u.scheduledDate,new Date,{forwardDate:!0});_!==null&&(v=window.moment(_));let P=null,E=Wi.parseDate(u.dueDate,new Date,{forwardDate:!0});E!==null&&(P=window.moment(E));let S=null;u.recurrenceRule&&(S=ft.fromText({recurrenceRuleText:u.recurrenceRule,startDate:le,scheduledDate:v,dueDate:P}));let O;switch(u.priority){case"low":O="4";break;case"medium":O="2";break;case"high":O="1";break;default:O="3"}let q=new L(Object.assign(Object.assign({},s),{description:ye,status:u.status,priority:O,recurrence:S,startDate:le,scheduledDate:v,dueDate:P,doneDate:window.moment(u.doneDate,"YYYY-MM-DD").isValid()?window.moment(u.doneDate,"YYYY-MM-DD"):null}));a([q])};function A(){u.description=this.value,t(0,u)}function C(D){Ts[D?"unshift":"push"](()=>{o=D,t(1,o)})}function N(){u.priority=dp(this),t(0,u)}function z(){u.recurrenceRule=this.value,t(0,u)}function re(){u.dueDate=this.value,t(0,u)}function de(){u.scheduledDate=this.value,t(0,u)}function J(){u.startDate=this.value,t(0,u)}return r.$$set=D=>{"task"in D&&t(8,s=D.task),"onSubmit"in D&&t(9,a=D.onSubmit)},r.$$.update=()=>{if(r.$$.dirty&1){e:t(0,u.startDate=gn(u.startDate),u),t(2,l=m("start",u.startDate,new Date))}if(r.$$.dirty&1){e:t(0,u.scheduledDate=gn(u.scheduledDate),u),t(3,c=m("scheduled",u.scheduledDate,new Date))}if(r.$$.dirty&1){e:t(0,u.dueDate=gn(u.dueDate),u),t(4,d=m("due",u.dueDate,new Date))}if(r.$$.dirty&3073){e:u.recurrenceRule?t(5,f=t(11,i=t(10,n=ft.fromText({recurrenceRuleText:u.recurrenceRule,startDate:null,scheduledDate:null,dueDate:null}))===null||n===void 0?void 0:n.toText())!==null&&i!==void 0?i:"invalid recurrence rule"):t(5,f="not recurring")}if(r.$$.dirty&1){e:t(6,p=m("done",u.doneDate))}},[u,o,l,c,d,f,p,g,s,a,n,i,A,C,N,z,re,de,J]}var Xc=class extends bs{constructor(e){super(),hp(this,e,xO,SO,ap,{task:8,onSubmit:9})}},Gg=Xc;var _n=class extends Hg.Modal{constructor({app:t,task:n,onSubmit:i}){super(t);this.task=n,this.onSubmit=s=>{i(s),this.close()}}onOpen(){this.titleEl.setText("Create or edit Task");let{contentEl:t}=this;new Gg({target:t,props:{task:this.task,onSubmit:this.onSubmit}})}onClose(){let{contentEl:t}=this;t.empty()}};var zg=(r,e,t,n)=>{var d;if(r)return t instanceof Jc.MarkdownView;if(!(t instanceof Jc.MarkdownView))return;let i=(d=t.file)==null?void 0:d.path;if(i===void 0)return;let a=e.getCursor().line,o=e.getLine(a),u=IO({line:o,path:i}),l=f=>{let p=f.map(y=>y.toFileLineString()).join(` +`);e.setLine(a,p)};new _n({app:n,task:u,onSubmit:l}).open()},IO=({line:r,path:e})=>{var d;let t=L.fromLine({line:r,path:e,sectionStart:0,sectionIndex:0,precedingHeader:null});if(t!==null)return t;let n=/^([\s\t>]*)[-*]? *(\[(.)\])? *(.*)/u,i=r.match(n);if(i===null)return console.error("Tasks: Cannot create task on line:",r),new L({status:"Todo",description:"",path:e,indentation:"",originalStatusCharacter:" ",priority:"3",startDate:null,scheduledDate:null,dueDate:null,doneDate:null,recurrence:null,sectionStart:0,sectionIndex:0,precedingHeader:null,blockLink:"",tags:[]});let s=i[1],a=(d=i[3])!=null?d:" ",o=a===" "?"Todo":"Done",u=i[4],l=r.match(L.blockLinkRegex),c=l!==null?l[0]:"";return c!==""&&(u=u.replace(L.blockLinkRegex,"")),new L({status:o,description:u,path:e,indentation:s,originalStatusCharacter:a,blockLink:c,priority:"3",startDate:null,scheduledDate:null,dueDate:null,doneDate:null,recurrence:null,sectionStart:0,sectionIndex:0,precedingHeader:null,tags:[]})};var ed=require("obsidian");var Kg=(r,e,t)=>{var u;if(r)return t instanceof ed.MarkdownView;if(!(t instanceof ed.MarkdownView))return;let n=(u=t.file)==null?void 0:u.path;if(n===void 0)return;let i=e.getCursor(),s=i.line,a=e.getLine(s),o=UO({line:a,path:n});e.setLine(s,o),/[^ [\]*-]/.test(o)&&e.setCursor({line:i.line,ch:i.ch+o.length-a.length})},UO=({line:r,path:e})=>{let t=r,n=L.fromLine({line:r,path:e,sectionStart:0,sectionIndex:0,precedingHeader:null});if(n!==null)t=qO({task:n});else{let i=r.match(L.taskRegex);if(i!==null)t=FO({regexMatch:i});else{let s=/^([\s\t>]*)([-*])/;s.test(r)?t=r.replace(s,"$1$2 [ ]"):t=r.replace(/^([\s\t>]*)/,"$1- ")}}return t},qO=({task:r})=>r.toggle().map(n=>n.toFileLineString()).join(` +`),FO=({regexMatch:r})=>{let e=r[1],t=r[2].toLowerCase(),n=r[3];return`${e}- [${t===" "?"x":" "}] ${n}`};var pa=class{get app(){return this.plugin.app}constructor({plugin:e}){this.plugin=e,e.addCommand({id:"edit-task",name:"Create or edit task",icon:"pencil",editorCheckCallback:(t,n,i)=>zg(t,n,i,this.app)}),e.addCommand({id:"toggle-done",name:"Toggle task done",icon:"check-in-circle",editorCheckCallback:Kg})}};var ha=class{constructor({obsidianEvents:e}){this.obsidianEvents=e}onCacheUpdate(e){return this.obsidianEvents.on("obsidian-tasks-plugin:cache-update",e)}triggerCacheUpdate(e){this.obsidianEvents.trigger("obsidian-tasks-plugin:cache-update",e)}onRequestCacheUpdate(e){return this.obsidianEvents.on("obsidian-tasks-plugin:request-cache-update",e)}triggerRequestCacheUpdate(e){this.obsidianEvents.trigger("obsidian-tasks-plugin:request-cache-update",e)}off(e){this.obsidianEvents.offref(e)}};var ma=class{constructor({plugin:e}){this.markdownPostProcessor=this._markdownPostProcessor.bind(this);e.registerMarkdownPostProcessor(this._markdownPostProcessor.bind(this))}_markdownPostProcessor(e,t){return se(this,null,function*(){var c;let{globalFilter:n}=ne(),i=e.findAll(".task-list-item").filter(d=>{var y;let f=(y=d.textContent)==null?void 0:y.split(` +`);if(f===void 0)return!1;let p=null;for(let m=0;mVg.ViewPlugin.fromClass(td),td=class{constructor(e){this.view=e,this.handleClickEvent=this.handleClickEvent.bind(this),this.view.dom.addEventListener("click",this.handleClickEvent)}destroy(){this.view.dom.removeEventListener("click",this.handleClickEvent)}handleClickEvent(e){let{target:t}=e;if(!t||!(t instanceof HTMLInputElement)||t.type!=="checkbox")return!1;let n=t.closest("ul.plugin-tasks-query-result, div.callout-content");if(n){if(n.matches("div.callout-content")){let f=`obsidian-tasks-plugin warning: Tasks cannot add or remove completion dates or make the next copy of a recurring task for tasks written inside a callout when you click their checkboxes in Live Preview. +If you wanted Tasks to do these things, please undo your change, then either click the line of the task and use the "Toggle Task Done" command, or switch to Reading View to click the checkbox.`;console.warn(f),new Zg.Notice(f,45e3)}return!1}let{state:i}=this.view,s=this.view.posAtDOM(t),a=i.doc.lineAt(s),o=L.fromLine({line:a.text,path:"",sectionStart:0,sectionIndex:0,precedingHeader:null});if(console.debug(`Live Preview Extension: toggle called. Position: ${s} Line: ${a.text}`),o===null)return!1;e.preventDefault();let l=o.toggle().map(f=>f.toFileLineString()).join(i.lineBreak),c=i.update({changes:{from:a.from,to:a.to,insert:l}});this.view.dispatch(c);let d=t.checked;return setTimeout(()=>{t.checked=d},1),!0}};var f_=require("obsidian");var ya=class{constructor(e,t){this.nestingLevel=e,this.name=t}};var ga=class{constructor(e){this.lastHeadingAtLevel=new Array;let n=e.keys().next().value.length;for(let i=0;it.set(o,a)),e.pop();return t}};var Ta=class extends Map{},ba=class extends _a{},va=class{constructor(e,t){this.groups=new Ta;let n=this.buildGroupingTree(e,t);this.groups=n.generateAllPaths(),this.groups=this.getSortedGroups()}buildGroupingTree(e,t){let n=new ba(t),i=[n];for(let s of e){let a=[];for(let o of i)for(let u of o.values){let l=vr.getGroupNamesForTask(s.property,u);for(let c of l){let d=o.children.get(c);d===void 0&&(d=new ba([]),o.children.set(c,d),a.push(d)),d.values.push(u)}}i=a}return n}getSortedGroups(){return new Ta([...this.groups.entries()].sort())}};var Ea=class{constructor(e,t,n){this.groups=e,this.groupHeadings=t,this.tasks=n}tasksAsStringOfLines(){let e="";for(let t of this.tasks)e+=t.toFileLineString()+` `;return e}toString(){let e=` `;e+=`Group names: [${this.groups}] `;for(let t of this.groupHeadings)e+=`${"#".repeat(4+t.nestingLevel)} ${t.name} -`;return e+=this.tasksAsStringOfLines(),e}};var Ea=class{constructor(e,t){this._groups=new Array;this._totalTaskCount=0;this._totalTaskCount=t.length;let n=new ba(e,t);this.addTasks(n)}get groups(){return this._groups}totalTasksCount(){return this._totalTaskCount}toString(){let e="";for(let n of this.groups)e+=n.toString(),e+=` +`;return e+=this.tasksAsStringOfLines(),e}};var Ra=class{constructor(e,t){this._groups=new Array;this._totalTaskCount=0;this._totalTaskCount=t.length;let n=new va(e,t);this.addTasks(n)}get groups(){return this._groups}totalTasksCount(){return this._totalTaskCount}toString(){let e="";for(let n of this.groups)e+=n.toString(),e+=` --- `;return e+=` ${this.totalTasksCount()} tasks -`,e}addTasks(e){let t=new ya(e.groups);for(let[n,i]of e.groups){let s=t.getHeadingsForTaskGroup(n),a=new va(n,s,i);this.add(a)}}add(e){this._groups.push(e)}};var Vg=as(Te()),Xt=class{static parseDate(e,t=!1){return window.moment(Vg.parseDate(e,void 0,{forwardDate:t})).startOf("day")}};var ue=class{canCreateFilterForLine(e){return ue.lineMatchesFilter(this.filterRegexp(),e)}static lineMatchesFilter(e,t){return e?e.test(t):!1}static getMatch(e,t){return e?t.match(e):null}};var _e=class{};var vr=class extends ue{canCreateFilterForLine(e){return e===vr.instructionForFieldPresence||e===vr.instructionForFieldAbsence?!0:super.canCreateFilterForLine(e)}createFilterOrErrorMessage(e){let t=new _e;if(e===vr.instructionForFieldPresence){let i=new _e;return i.filter=s=>this.dates(s).some(a=>a!==null),i}if(e===vr.instructionForFieldAbsence){let i=new _e;return i.filter=s=>!this.dates(s).some(a=>a!==null),i}let n=ue.getMatch(this.filterRegexp(),e);if(n!==null){let i=Xt.parseDate(n[2]);i.isValid()?n[1]==="before"?t.filter=s=>this.dates(s).some(a=>a&&a.isBefore(i)):n[1]==="after"?t.filter=s=>this.dates(s).some(a=>a&&a.isAfter(i)):t.filter=s=>this.dates(s).some(a=>a&&a.isSame(i)):t.error="do not understand happens date"}else t.error="do not understand query filter (happens date)";return t}earliestDate(e){return new vr().dates(e).sort(Be.compareByDate)[0]}filterRegexp(){return vr.happensRegexp}dates(e){return Array.of(e.startDate,e.scheduledDate,e.dueDate)}fieldName(){return"happens"}},Qt=vr;Qt.happensRegexp=/^happens (before|after|on)? ?(.*)/,Qt.instructionForFieldPresence="has happens date",Qt.instructionForFieldAbsence="no happens date";var oe=class{static by(e,t){return new Ea(e,t)}static getGroupNamesForTask(e,t){let n=oe.groupers[e];return n(t)}static groupByPriority(e){let t="ERROR";switch(e.priority){case"1":t="High";break;case"2":t="Medium";break;case"3":t="None";break;case"4":t="Low";break}return[`Priority ${e.priority}: ${t}`]}static groupByRecurrence(e){return e.recurrence!==null?[e.recurrence.toText()]:["None"]}static groupByRecurring(e){return e.recurrence!==null?["Recurring"]:["Not Recurring"]}static groupByStartDate(e){return[oe.stringFromDate(e.startDate,"start")]}static groupByScheduledDate(e){return[oe.stringFromDate(e.scheduledDate,"scheduled")]}static groupByDueDate(e){return[oe.stringFromDate(e.dueDate,"due")]}static groupByDoneDate(e){return[oe.stringFromDate(e.doneDate,"done")]}static groupByHappensDate(e){let t=new Qt().earliestDate(e);return[oe.stringFromDate(t,"happens")]}static stringFromDate(e,t){return e===null?"No "+t+" date":e.format(oe.groupDateFormat)}static groupByPath(e){return[e.path.replace(".md","")]}static groupByFolder(e){let t=e.path,n=e.filename+".md",i=t.substring(0,t.lastIndexOf(n));return i===""?["/"]:[i]}static groupByFileName(e){let t=e.filename;return t===null?["Unknown Location"]:[t]}static groupByRoot(e){let t=e.path.replace(/\\/g,"/"),n=t.indexOf("/");return n==-1?["/"]:[t.substring(0,n+1)]}static groupByBacklink(e){let t=e.getLinkText({isFilenameUnique:!0});return t===null?["Unknown Location"]:[t]}static groupByStatus(e){return[e.status]}static groupByHeading(e){return e.precedingHeader===null||e.precedingHeader.length===0?["(No heading)"]:[e.precedingHeader]}static groupByTags(e){return e.tags.length==0?["(No tags)"]:e.tags}},br=oe;br.groupDateFormat="YYYY-MM-DD dddd",br.groupers={backlink:oe.groupByBacklink,done:oe.groupByDoneDate,due:oe.groupByDueDate,filename:oe.groupByFileName,folder:oe.groupByFolder,happens:oe.groupByHappensDate,heading:oe.groupByHeading,path:oe.groupByPath,priority:oe.groupByPriority,recurrence:oe.groupByRecurrence,recurring:oe.groupByRecurring,root:oe.groupByRoot,scheduled:oe.groupByScheduledDate,start:oe.groupByStartDate,status:oe.groupByStatus,tags:oe.groupByTags};var bt=class extends ue{createFilterOrErrorMessage(e){let t=new _e,n=ue.getMatch(this.filterRegexp(),e);return n!==null?n[1]==="includes"?t.filter=s=>bt.stringIncludesCaseInsensitive(this.value(s),n[2]):n[1]==="does not include"?t.filter=s=>!bt.stringIncludesCaseInsensitive(this.value(s),n[2]):t.error=`do not understand query filter (${this.fieldName()})`:t.error=`do not understand query filter (${this.fieldName()})`,t}static stringIncludesCaseInsensitive(e,t){return e.toLocaleLowerCase().includes(t.toLocaleLowerCase())}};var td=class extends bt{fieldName(){return"description"}filterRegexp(){return td.descriptionRegexp}value(e){let t=ie().globalFilter;return e.description.replace(t,"").trim()}},Li=td;Li.descriptionRegexp=/^description (includes|does not include) (.*)/;var Nt=class extends ue{constructor(){super(...arguments);this.instructionForFieldPresence=`has ${this.fieldName()} date`;this.instructionForFieldAbsence=`no ${this.fieldName()} date`}canCreateFilterForLine(t){return t===this.instructionForFieldPresence||t===this.instructionForFieldAbsence?!0:super.canCreateFilterForLine(t)}createFilterOrErrorMessage(t){let n=new _e;if(t===this.instructionForFieldPresence)return n.filter=s=>this.date(s)!==null,n;if(t===this.instructionForFieldAbsence)return n.filter=s=>this.date(s)===null,n;let i=ue.getMatch(this.filterRegexp(),t);if(i!==null){let s=Xt.parseDate(i[2]);s.isValid()?i[1]==="before"?n.filter=a=>{let o=this.date(a);return o?o.isBefore(s):this.filterResultIfFieldMissing()}:i[1]==="after"?n.filter=a=>{let o=this.date(a);return o?o.isAfter(s):this.filterResultIfFieldMissing()}:n.filter=a=>{let o=this.date(a);return o?o.isSame(s):this.filterResultIfFieldMissing()}:n.error="do not understand "+this.fieldName()+" date"}else n.error="do not understand query filter ("+this.fieldName()+" date)";return n}};var rd=class extends Nt{filterRegexp(){return rd.doneRegexp}fieldName(){return"done"}date(e){return e.doneDate}filterResultIfFieldMissing(){return!1}},Yi=rd;Yi.doneRegexp=/^done (before|after|on)? ?(.*)/;var nd=class extends Nt{filterRegexp(){return nd.dueRegexp}fieldName(){return"due"}date(e){return e.dueDate}filterResultIfFieldMissing(){return!1}},$i=nd;$i.dueRegexp=/^due (before|after|on)? ?(.*)/;var Ra=class{constructor(e,t){this._instruction=e,this._filter=t}canCreateFilterForLine(e){return e==this._instruction}createFilterOrErrorMessage(e){let t=new _e;return e===this._instruction?(t.filter=this._filter,t):(t.error=`do not understand filter: ${e}`,t)}};var wa=class{constructor(){this._filters=[]}add(e,t){this._filters.push(new Ra(e,t))}canCreateFilterForLine(e){for(let t of this._filters)if(t.canCreateFilterForLine(e))return!0;return!1}createFilterOrErrorMessage(e){for(let n of this._filters){let i=n.createFilterOrErrorMessage(e);if(i.error===void 0)return i}let t=new _e;return t.error=`do not understand filter: ${e}`,t}};var Er=class extends ue{constructor(){super(...arguments);this._filters=new wa}canCreateFilterForLine(t){return this._filters.canCreateFilterForLine(t)}createFilterOrErrorMessage(t){return this._filters.createFilterOrErrorMessage(t)}filterRegexp(){return null}};var Da=class extends Er{constructor(){super(),this._filters.add("exclude sub-items",e=>e.indentation==="")}fieldName(){return"exclude"}};var id=class extends bt{filterRegexp(){return id.headingRegexp}fieldName(){return"heading"}value(e){return e.precedingHeader?e.precedingHeader:""}},ji=id;ji.headingRegexp=/^heading (includes|does not include) (.*)/;var sd=class extends bt{filterRegexp(){return sd.pathRegexp}fieldName(){return"path"}value(e){return e.path}},Bi=sd;Bi.pathRegexp=/^path (includes|does not include) (.*)/;var ad=class extends ue{createFilterOrErrorMessage(e){let t=new _e,n=ue.getMatch(this.filterRegexp(),e);if(n!==null){let i=n[3],s=null;switch(i){case"low":s="4";break;case"none":s="3";break;case"medium":s="2";break;case"high":s="1";break}if(s===null)return t.error="do not understand priority",t;let a;n[2]==="above"?a=o=>o.priority?o.priority.localeCompare(s)<0:!1:n[2]==="below"?a=o=>o.priority?o.priority.localeCompare(s)>0:!1:a=o=>o.priority?o.priority===s:!1,t.filter=a}else t.error="do not understand query filter (priority)";return t}fieldName(){return"priority"}filterRegexp(){return ad.priorityRegexp}},Gi=ad;Gi.priorityRegexp=/^priority (is )?(above|below)? ?(low|none|medium|high)/;var od=class extends Nt{filterRegexp(){return od.scheduledRegexp}fieldName(){return"scheduled"}date(e){return e.scheduledDate}filterResultIfFieldMissing(){return!1}},Hi=od;Hi.scheduledRegexp=/^scheduled (before|after|on)? ?(.*)/;var ud=class extends Nt{filterRegexp(){return ud.startRegexp}fieldName(){return"start"}date(e){return e.startDate}filterResultIfFieldMissing(){return!0}},zi=ud;zi.startRegexp=/^starts (before|after|on)? ?(.*)/;var Ma=class extends Er{constructor(){super(),this._filters.add("is recurring",e=>e.recurrence!==null),this._filters.add("is not recurring",e=>e.recurrence===null)}fieldName(){return"recurring"}};var Pa=class extends Er{constructor(){super(),this._filters.add("done",e=>e.status==="Done"),this._filters.add("not done",e=>e.status!=="Done")}fieldName(){return"status"}};var ld=class extends ue{createFilterOrErrorMessage(e){let t=new _e,n=ue.getMatch(this.filterRegexp(),e);if(n!==null){let i=n[2],s=n[3].replace(/^#/,"");i==="include"||i==="includes"?t.filter=a=>a.tags.find(o=>o.toLowerCase().includes(s.toLowerCase()))!==void 0:n[2]==="do not include"||n[2]==="does not include"?t.filter=a=>a.tags.find(o=>o.toLowerCase().includes(s.toLowerCase()))==null:t.error="do not understand query filter (tag/tags)"}else t.error="do not understand query filter (tag/tags)";return t}fieldName(){return"tag/tags"}filterRegexp(){return ld.tagRegexp}},Ki=ld;Ki.tagRegexp=/^(tag|tags) (includes|does not include|include|do not include) (.*)/;var u_=as(o_());var Na=class extends ue{constructor(){super(...arguments);this.basicBooleanRegexp=/.*(AND|OR|XOR|NOT)\s*[("].*/g;this.supportedOperators=["AND","OR","XOR","NOT"];this.subFields={}}filterRegexp(){return this.basicBooleanRegexp}createFilterOrErrorMessage(t){return this.parseLine(t)}fieldName(){return"boolean query"}parseLine(t){let n=new _e;if(t.length===0)return n.error="empty line",n;let i=this.preprocessExpression(t);try{let s=(0,u_.parse)(i);for(let a of s)if(a.name==="IDENTIFIER"&&a.value){let o=a.value.trim();if(!(o in this.subFields)){let u=Ca(o);if(u===null)return n.error=`couldn't parse sub-expression '${o}'`,n;if(u.error)return n.error=`couldn't parse sub-expression '${o}': ${u.error}`,n;u.filter&&(this.subFields[o]=u.filter)}}else if(a.name==="OPERATOR"){if(a.value==null)return n.error="empty operator in boolean query",n;if(!this.supportedOperators.includes(a.value))return n.error=`unknown boolean operator '${a.value}'`,n}return n.filter=a=>this.filterTaskWithParsedQuery(a,s),n}catch(s){let a=s instanceof Error?s.message:"unknown error type";return n.error=`malformed boolean query -- ${a} (check the documentation for guidelines)`,n}return n}preprocessExpression(t){return t.replace(/\(([^()]+)\)/g,'("$1")')}filterTaskWithParsedQuery(t,n){let i=o=>o==="true",s=o=>o?"true":"false",a=[];for(let o of n)if(o.name==="IDENTIFIER"){if(o.value==null)throw Error("null token value");let u=this.subFields[o.value.trim()],l=u(t);a.push(s(l))}else if(o.name==="OPERATOR")if(o.value==="NOT"){let u=i(a.pop());a.push(s(!u))}else if(o.value==="OR"){let u=i(a.pop()),l=i(a.pop());a.push(s(u||l))}else if(o.value==="AND"){let u=i(a.pop()),l=i(a.pop());a.push(s(u&&l))}else if(o.value==="XOR"){let u=i(a.pop()),l=i(a.pop());a.push(s(u&&!l||!u&&l))}else throw Error("Unsupported operator: "+o.value);else throw Error("Unsupported token type: "+o);return i(a[0])}};var BO=[()=>new Pa,()=>new Ma,()=>new Gi,()=>new Qt,()=>new zi,()=>new Hi,()=>new $i,()=>new Yi,()=>new Bi,()=>new Li,()=>new Ki,()=>new ji,()=>new Da,()=>new Na];function Ca(r){for(let e of BO){let t=e();if(t.canCreateFilterForLine(r))return t.createFilterOrErrorMessage(r)}return null}var wn=class{constructor({source:e}){this._limit=void 0;this._layoutOptions=new Kr;this._filters=[];this._error=void 0;this._sorting=[];this._grouping=[];this.sortByRegexp=/^sort by (urgency|status|priority|start|scheduled|due|done|path|description|tag)( reverse)?[\s]*(\d+)?/;this.groupByRegexp=/^group by (backlink|done|due|filename|folder|happens|heading|path|priority|recurrence|recurring|root|scheduled|start|status|tags)/;this.hideOptionsRegexp=/^hide (task count|backlink|priority|start date|scheduled date|done date|due date|recurrence rule|edit button)/;this.shortModeRegexp=/^short/;this.limitRegexp=/^limit (to )?(\d+)( tasks?)?/;this.commentRegexp=/^#.*/;this.source=e,e.split(` -`).map(t=>t.trim()).forEach(t=>{switch(!0){case t==="":break;case this.shortModeRegexp.test(t):this._layoutOptions.shortMode=!0;break;case this.limitRegexp.test(t):this.parseLimit({line:t});break;case this.sortByRegexp.test(t):this.parseSortBy({line:t});break;case this.groupByRegexp.test(t):this.parseGroupBy({line:t});break;case this.hideOptionsRegexp.test(t):this.parseHideOptions({line:t});break;case this.commentRegexp.test(t):break;case this.parseFilter(t):break;default:this._error=`do not understand query: ${t}`}})}get limit(){return this._limit}get layoutOptions(){return this._layoutOptions}get filters(){return this._filters}get sorting(){return this._sorting}get grouping(){return this._grouping}get error(){return this._error}applyQueryToTasks(e){this.filters.forEach(n=>{e=e.filter(n)});let t=Be.by(this,e).slice(0,this.limit);return br.by(this.grouping,t)}parseHideOptions({line:e}){let t=e.match(this.hideOptionsRegexp);if(t!==null)switch(t[1].trim().toLowerCase()){case"task count":this._layoutOptions.hideTaskCount=!0;break;case"backlink":this._layoutOptions.hideBacklinks=!0;break;case"priority":this._layoutOptions.hidePriority=!0;break;case"start date":this._layoutOptions.hideStartDate=!0;break;case"scheduled date":this._layoutOptions.hideScheduledDate=!0;break;case"due date":this._layoutOptions.hideDueDate=!0;break;case"done date":this._layoutOptions.hideDoneDate=!0;break;case"recurrence rule":this._layoutOptions.hideRecurrenceRule=!0;break;case"edit button":this._layoutOptions.hideEditButton=!0;break;default:this._error="do not understand hide option"}}parseFilter(e){let t=Ca(e);return t!=null?(t.filter?this._filters.push(t.filter):this._error=t.error,!0):!1}parseLimit({line:e}){let t=e.match(this.limitRegexp);t!==null?this._limit=Number.parseInt(t[2],10):this._error="do not understand query limit"}parseSortBy({line:e}){let t=e.match(this.sortByRegexp);t!==null?this._sorting.push({property:t[1],reverse:!!t[2],propertyInstance:isNaN(+t[3])?1:+t[3]}):this._error="do not understand query sorting"}parseGroupBy({line:e}){let t=e.match(this.groupByRegexp);t!==null?this._grouping.push({property:t[1]}):this._error="do not understand query grouping"}};var Sa=class{constructor({plugin:e,events:t}){this.addQueryRenderChild=this._addQueryRenderChild.bind(this);this.app=e.app,this.events=t,e.registerMarkdownCodeBlockProcessor("tasks",this._addQueryRenderChild.bind(this))}_addQueryRenderChild(e,t,n){return ne(this,null,function*(){n.addChild(new Dn({app:this.app,events:this.events,container:t,source:e,filePath:n.sourcePath}))})}},Dn=class extends l_.MarkdownRenderChild{constructor({app:t,events:n,container:i,source:s,filePath:a}){super(i);switch(this.app=t,this.events=n,this.source=s,this.filePath=a,this.containerEl.className){case"block-language-tasks":this.query=new wn({source:s}),this.queryType="tasks";break;default:this.query=new wn({source:s}),this.queryType="tasks";break}}onload(){this.events.triggerRequestCacheUpdate(this.render.bind(this)),this.renderEventRef=this.events.onCacheUpdate(this.render.bind(this)),this.reloadQueryAtMidnight()}onunload(){this.renderEventRef!==void 0&&this.events.off(this.renderEventRef),this.queryReloadTimeout!==void 0&&clearTimeout(this.queryReloadTimeout)}reloadQueryAtMidnight(){let t=new Date;t.setHours(24,0,0,0);let n=new Date,i=t.getTime()-n.getTime();this.queryReloadTimeout=setTimeout(()=>{this.query=new wn({source:this.source}),this.events.triggerRequestCacheUpdate(this.render.bind(this)),this.reloadQueryAtMidnight()},i+1e3)}render(i){return ne(this,arguments,function*({tasks:t,state:n}){var a;let s=this.containerEl.createEl("div");if(n==="Warm"&&this.query.error===void 0){console.debug(`Render ${this.queryType} called for a block in active file "${this.filePath}", to select from ${t.length} tasks: plugin state: ${n}`);let o=this.query.applyQueryToTasks(t);for(let l of o.groups){Dn.addGroupHeadings(s,l.groupHeadings);let{taskList:c}=yield this.createTasksList({tasks:l.tasks,content:s});s.appendChild(c)}let u=o.totalTasksCount();console.debug(`${u} of ${t.length} tasks displayed in a block in "${this.filePath}"`),this.addTaskCount(s,u)}else this.query.error!==void 0?s.setText(`Tasks query: ${this.query.error}`):s.setText("Loading Tasks ...");(a=this.containerEl.firstChild)==null||a.replaceWith(s)})}createTasksList(i){return ne(this,arguments,function*({tasks:t,content:n}){let s=t.length,a=n.createEl("ul");a.addClasses(["contains-task-list","plugin-tasks-query-result"]);for(let o=0;om.remove());let f=c.createSpan(),h=this.query.layoutOptions.shortMode;this.query.layoutOptions.hideBacklinks||this.addBacklinks(f,u,h,l),this.query.layoutOptions.hideEditButton||this.addEditButton(f,u),a.appendChild(c)}return{taskList:a,tasksCount:s}})}addEditButton(t,n){t.createEl("a",{cls:"tasks-edit"}).onClickEvent(s=>{s.preventDefault();let a=u=>{us({originalTask:n,newTasks:u})};new _n({app:this.app,task:n,onSubmit:a}).open()})}static addGroupHeadings(t,n){for(let i of n)Dn.addGroupHeading(t,i)}static addGroupHeading(t,n){let i;n.nestingLevel===0?i=t.createEl("h4",{cls:"tasks-group-heading"}):n.nestingLevel===1?i=t.createEl("h5",{cls:"tasks-group-heading"}):i=t.createEl("h6",{cls:"tasks-group-heading"}),i.appendText(n.name)}addBacklinks(t,n,i,s){var u;t.addClass("tasks-backlink"),i||t.append(" (");let a=t.createEl("a");if(a.href=n.path,a.setAttribute("data-href",n.path),a.rel="noopener",a.target="_blank",a.addClass("internal-link"),i&&a.addClass("internal-link-short-mode"),n.precedingHeader!==null){let l=n.precedingHeader.replace(/#/g,"");a.href=a.href+"#"+l,a.setAttribute("data-href",a.getAttribute("data-href")+"#"+l)}let o;i?o=" \u{1F517}":o=(u=n.getLinkText({isFilenameUnique:s}))!=null?u:"",a.setText(o),i||t.append(")")}addTaskCount(t,n){this.query.layoutOptions.hideTaskCount||t.createDiv({text:`${n} task${n!==1?"s":""}`,cls:"tasks-count"})}isFilenameUnique({task:t}){let n=t.path.match(/([^/]*)\..+$/i);if(n===null)return;let i=n[1];return this.app.vault.getMarkdownFiles().filter(a=>{if(a.basename===i)return!0}).length<2}};var nr=require("obsidian");var xa=class extends nr.PluginSettingTab{constructor({plugin:t}){super(t.app,t);this.plugin=t}display(){let{containerEl:t}=this;t.empty(),t.createEl("h2",{text:"Tasks Settings"}),t.createEl("p",{cls:"tasks-setting-important",text:"Changing any settings requires a restart of obsidian."}),new nr.Setting(t).setName("Global task filter").setDesc("The global filter will be applied to all checklist items.").addText(n=>{let i=ie();n.setPlaceholder("#task").setValue(i.globalFilter).onChange(s=>ne(this,null,function*(){Ut({globalFilter:s}),yield this.plugin.saveSettings()}))}),t.createEl("div",{cls:"setting-item-description",text:'The global filter will be applied to all checklist items to filter out "non-task" checklist items.\nA checklist item must include the specified string in its description in order to be considered a task.\nFor example, if you set the global filter to `#task`, the Tasks plugin will only handle checklist items tagged with `#task`.\nOther checklist items will remain normal checklist items and not appear in queries or get a done date set.\nLeave empty if you want all checklist items from your vault to be tasks managed by this plugin.'}),new nr.Setting(t).setName("Remove global filter from description").setDesc("Enabling this removes the string that you set as global filter from the task description when displaying a task.").addToggle(n=>{let i=ie();n.setValue(i.removeGlobalFilter).onChange(s=>ne(this,null,function*(){Ut({removeGlobalFilter:s}),yield this.plugin.saveSettings()}))}),new nr.Setting(t).setName("Set done date on every completed task").setDesc("Enabling this will add a timestamp \u2705 YYYY-MM-DD at the end when a task is toggled to done").addToggle(n=>{let i=ie();n.setValue(i.setDoneDate).onChange(s=>ne(this,null,function*(){Ut({setDoneDate:s}),yield this.plugin.saveSettings()}))}),new nr.Setting(t).setName("Auto-suggest task content").setDesc("Enabling this will open an intelligent suggest menu while typing inside a recognized task line.").addToggle(n=>{let i=ie();n.setValue(i.autoSuggestInEditor).onChange(s=>ne(this,null,function*(){Ut({autoSuggestInEditor:s}),yield this.plugin.saveSettings()}))}),new nr.Setting(t).setName("Minimum match length for auto-suggest").setDesc("If higher than 0, auto-suggest will be triggered only when the beginning of any supported keywords is recognized.").addSlider(n=>{let i=ie();n.setLimits(0,3,1).setValue(i.autoSuggestMinMatch).setDynamicTooltip().onChange(s=>ne(this,null,function*(){Ut({autoSuggestMinMatch:s}),yield this.plugin.saveSettings()}))}),new nr.Setting(t).setName("Maximum number of auto-suggestions to show").setDesc('How many suggestions should be shown when an auto-suggest menu pops up (including the "\u23CE" option).').addSlider(n=>{let i=ie();n.setLimits(3,12,1).setValue(i.autoSuggestMaxItems).setDynamicTooltip().onChange(s=>ne(this,null,function*(){Ut({autoSuggestMaxItems:s}),yield this.plugin.saveSettings()}))})}};var d_=require("obsidian");var GO=`${Rt}${wt}${Dt}`;function c_(r,e,t){let n=[];n=n.concat(KO(r,e,t)),n=n.concat(VO(r,e,t));let i=zO(r,t),s=vd(r,/([a-zA-Z'_-]*)/g,e),a=!1;if(s&&s.length>0){let o=s[0];if(o.length>=Math.max(1,t.autoSuggestMinMatch)){let u=i.filter(l=>l.displayText.toLowerCase().includes(o.toLowerCase()));for(let l of u)n.push({suggestionType:"match",displayText:l.displayText,appendText:l.appendText,insertAt:s.index,insertSkip:o.length}),a=!0}}return!a&&t.autoSuggestMinMatch===0&&(n=n.concat(i)),n.length>0&&!n.some(o=>o.suggestionType==="match")&&n.unshift({suggestionType:"empty",displayText:"\u23CE",appendText:` -`}),n=n.slice(0,t.autoSuggestMaxItems),n}function HO(r){if(Object.values(be).some(e=>e.length>0&&r.includes(e)))return!0}function zO(r,e){let t=[];return r.includes(Dt)||t.push({displayText:`${Dt} due date`,appendText:`${Dt} `}),r.includes(Rt)||t.push({displayText:`${Rt} start date`,appendText:`${Rt} `}),r.includes(wt)||t.push({displayText:`${wt} scheduled date`,appendText:`${wt} `}),HO(r)||(t.push({displayText:`${be.High} high priority`,appendText:`${be.High} `}),t.push({displayText:`${be.Medium} medium priority`,appendText:`${be.Medium} `}),t.push({displayText:`${be.Low} low priority`,appendText:`${be.Low} `})),r.includes(Et)||t.push({displayText:`${Et} recurring (repeat)`,appendText:`${Et} `}),t}function KO(r,e,t){let n=["today","tomorrow","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","next week","next month","next year"],i=[],s=new RegExp(`([${GO}])\\s*([0-9a-zA-Z ]*)`,"ug"),a=vd(r,s,e);if(a&&a.length>=2){let o=a[1],u=a[2];if(u.length1?Xt.parseDate(gn(u),!0):null;l&&l.isValid()&&i.push({displayText:`${l.format(W.dateFormat)}`,appendText:`${o} ${l.format(W.dateFormat)} `,insertAt:a.index,insertSkip:a[0].length});let c=1,d=5,f=n.filter(h=>u&&u.length>=c&&h.toLowerCase().includes(u.toLowerCase())).slice(0,d);f.length===0&&(f=n.slice(0,d));for(let h of f){let y=`${Xt.parseDate(h,!0).format(W.dateFormat)}`;i.push({suggestionType:"match",displayText:`${h} (${y})`,appendText:`${o} ${y} `,insertAt:a.index,insertSkip:a[0].length})}}return i}function VO(r,e,t){var o;let n=["every","every day","every week","every month","every month on the","every year","every week on Sunday","every week on Monday","every week on Tuesday","every week on Wednesday","every week on Thursday","every week on Friday","every week on Saturday"],i=[],s=new RegExp(`(${Et})\\s*([0-9a-zA-Z ]*)`,"ug"),a=vd(r,s,e);if(a&&a.length>=2){let u=a[1],l=a[2];if(l.length0){let h=(o=dt.fromText({recurrenceRuleText:l,startDate:null,scheduledDate:null,dueDate:null}))==null?void 0:o.toText();if(h){let m=`${u} ${h} `;if(i.push({suggestionType:"match",displayText:`\u2705 ${h}`,appendText:m,insertAt:a.index,insertSkip:a[0].length}),a[0]==m)return[]}}let c=1,d=t.autoSuggestMaxItems/2,f=n.filter(h=>l&&l.length>=c&&h.toLowerCase().includes(l.toLowerCase())).slice(0,d);f.length===0&&l.trim().length===0&&(f=n.slice(0,d));for(let h of f)i.push({suggestionType:"match",displayText:`${h}`,appendText:`${u} ${h} `,insertAt:a.index,insertSkip:a[0].length})}return i}function vd(r,e,t){let n=r.matchAll(e);for(let i of n)if((i==null?void 0:i.index)&&i.index<=t&&t<=i.index+i[0].length)return i;return[]}var Ia=class extends d_.EditorSuggest{constructor(t,n){super(t);this.settings=n}onTrigger(t,n,i){if(!this.settings.autoSuggestInEditor)return null;let s=n.getLine(t.line);return s.contains(this.settings.globalFilter)&&s.match(W.taskRegex)?{start:{line:t.line,ch:0},end:{line:t.line,ch:s.length},query:s}:null}getSuggestions(t){let n=t.query,i=t.editor.getCursor(),s=c_(n,i.ch,this.settings),a=[];for(let o of s)a.push(It(Ye({},o),{context:t}));return a}renderSuggestion(t,n){n.setText(t.displayText)}selectSuggestion(t,n){var u,l,c;let i=t.context.editor;if(t.suggestionType==="empty"){this.close();let d=new KeyboardEvent("keydown",{code:"Enter",key:"Enter"});(l=(u=i==null?void 0:i.cm)==null?void 0:u.contentDOM)==null||l.dispatchEvent(d);return}let s=t.context.editor.getCursor(),a={line:s.line,ch:(c=t.insertAt)!=null?c:s.ch},o=t.insertSkip?{line:s.line,ch:a.ch+t.insertSkip}:void 0;t.context.editor.replaceRange(t.appendText,a,o),t.context.editor.setCursor({line:s.line,ch:a.ch+t.appendText.length})}};var Ua=class extends f_.Plugin{onload(){return ne(this,null,function*(){console.log('loading plugin "tasks"'),yield this.loadSettings(),this.addSettingTab(new xa({plugin:this})),Kd({metadataCache:this.app.metadataCache,vault:this.app.vault});let t=new pa({obsidianEents:this.app.workspace});this.cache=new dr({metadataCache:this.app.metadataCache,vault:this.app.vault,events:t}),this.inlineRenderer=new ha({plugin:this}),this.queryRenderer=new Sa({plugin:this,events:t}),this.registerEditorExtension(Kg()),this.registerEditorSuggest(new Ia(this.app,ie())),new fa({plugin:this})})}onunload(){var t;console.log('unloading plugin "tasks"'),(t=this.cache)==null||t.unload()}loadSettings(){return ne(this,null,function*(){let t=yield this.loadData();Ut(t)})}saveSettings(){return ne(this,null,function*(){yield this.saveData(ie())})}}; -/*! - * rrule.js - Library for working with recurrence rules for calendar dates. - * https://github.com/jakubroztocil/rrule - * - * Copyright 2010, Jakub Roztocil and Lars Schoning - * Licenced under the BSD licence. - * https://github.com/jakubroztocil/rrule/blob/master/LICENCE - * - * Based on: - * python-dateutil - Extensions to the standard Python datetime module. - * Copyright (c) 2003-2011 - Gustavo Niemeyer - * Copyright (c) 2012 - Tomi Pieviläinen - * https://github.com/jakubroztocil/rrule/blob/master/LICENCE - * - */ -/*! -* rrule.js - Library for working with recurrence rules for calendar dates. -* https://github.com/jakubroztocil/rrule -* -* Copyright 2010, Jakub Roztocil and Lars Schoning -* Licenced under the BSD licence. -* https://github.com/jakubroztocil/rrule/blob/master/LICENCE -* -*/ -/*! ***************************************************************************** -Copyright (c) Microsoft Corporation. - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH -REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY -AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, -INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM -LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR -OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -PERFORMANCE OF THIS SOFTWARE. -***************************************************************************** */ +`,e}addTasks(e){let t=new ga(e.groups);for(let[n,i]of e.groups){let s=t.getHeadingsForTaskGroup(n),a=new Ea(n,s,i);this.add(a)}}add(e){this._groups.push(e)}};var Qg=as(Ee()),Qt=class{static parseDate(e,t=!1){return window.moment(Qg.parseDate(e,void 0,{forwardDate:t})).startOf("day")}};var ce=class{canCreateFilterForLine(e){return ce.lineMatchesFilter(this.filterRegexp(),e)}static lineMatchesFilter(e,t){return e?e.test(t):!1}static getMatch(e,t){return e?t.match(e):null}};var ve=class{};var Er=class extends ce{canCreateFilterForLine(e){return e===Er.instructionForFieldPresence||e===Er.instructionForFieldAbsence?!0:super.canCreateFilterForLine(e)}createFilterOrErrorMessage(e){let t=new ve;if(e===Er.instructionForFieldPresence){let i=new ve;return i.filter=s=>this.dates(s).some(a=>a!==null),i}if(e===Er.instructionForFieldAbsence){let i=new ve;return i.filter=s=>!this.dates(s).some(a=>a!==null),i}let n=ce.getMatch(this.filterRegexp(),e);if(n!==null){let i=Qt.parseDate(n[2]);i.isValid()?n[1]==="before"?t.filter=s=>this.dates(s).some(a=>a&&a.isBefore(i)):n[1]==="after"?t.filter=s=>this.dates(s).some(a=>a&&a.isAfter(i)):t.filter=s=>this.dates(s).some(a=>a&&a.isSame(i)):t.error="do not understand happens date"}else t.error="do not understand query filter (happens date)";return t}earliestDate(e){return new Er().dates(e).sort(Ge.compareByDate)[0]}filterRegexp(){return Er.happensRegexp}dates(e){return Array.of(e.startDate,e.scheduledDate,e.dueDate)}fieldName(){return"happens"}},Jt=Er;Jt.happensRegexp=/^happens (before|after|on)? ?(.*)/,Jt.instructionForFieldPresence="has happens date",Jt.instructionForFieldAbsence="no happens date";var ue=class{static by(e,t){return new Ra(e,t)}static getGroupNamesForTask(e,t){let n=ue.groupers[e];return n(t)}static groupByPriority(e){let t="ERROR";switch(e.priority){case"1":t="High";break;case"2":t="Medium";break;case"3":t="None";break;case"4":t="Low";break}return[`Priority ${e.priority}: ${t}`]}static groupByRecurrence(e){return e.recurrence!==null?[e.recurrence.toText()]:["None"]}static groupByRecurring(e){return e.recurrence!==null?["Recurring"]:["Not Recurring"]}static groupByStartDate(e){return[ue.stringFromDate(e.startDate,"start")]}static groupByScheduledDate(e){return[ue.stringFromDate(e.scheduledDate,"scheduled")]}static groupByDueDate(e){return[ue.stringFromDate(e.dueDate,"due")]}static groupByDoneDate(e){return[ue.stringFromDate(e.doneDate,"done")]}static groupByHappensDate(e){let t=new Jt().earliestDate(e);return[ue.stringFromDate(t,"happens")]}static stringFromDate(e,t){return e===null?"No "+t+" date":e.format(ue.groupDateFormat)}static groupByPath(e){return[e.path.replace(".md","")]}static groupByFolder(e){let t=e.path,n=e.filename+".md",i=t.substring(0,t.lastIndexOf(n));return i===""?["/"]:[i]}static groupByFileName(e){let t=e.filename;return t===null?["Unknown Location"]:[t]}static groupByRoot(e){let t=e.path.replace(/\\/g,"/"),n=t.indexOf("/");return n==-1?["/"]:[t.substring(0,n+1)]}static groupByBacklink(e){let t=e.getLinkText({isFilenameUnique:!0});return t===null?["Unknown Location"]:[t]}static groupByStatus(e){return[e.status]}static groupByHeading(e){return e.precedingHeader===null||e.precedingHeader.length===0?["(No heading)"]:[e.precedingHeader]}static groupByTags(e){return e.tags.length==0?["(No tags)"]:e.tags}},vr=ue;vr.groupDateFormat="YYYY-MM-DD dddd",vr.groupers={backlink:ue.groupByBacklink,done:ue.groupByDoneDate,due:ue.groupByDueDate,filename:ue.groupByFileName,folder:ue.groupByFolder,happens:ue.groupByHappensDate,heading:ue.groupByHeading,path:ue.groupByPath,priority:ue.groupByPriority,recurrence:ue.groupByRecurrence,recurring:ue.groupByRecurring,root:ue.groupByRoot,scheduled:ue.groupByScheduledDate,start:ue.groupByStartDate,status:ue.groupByStatus,tags:ue.groupByTags};var vt=class extends ce{createFilterOrErrorMessage(e){let t=new ve,n=ce.getMatch(this.filterRegexp(),e);return n!==null?n[1]==="includes"?t.filter=s=>vt.stringIncludesCaseInsensitive(this.value(s),n[2]):n[1]==="does not include"?t.filter=s=>!vt.stringIncludesCaseInsensitive(this.value(s),n[2]):t.error=`do not understand query filter (${this.fieldName()})`:t.error=`do not understand query filter (${this.fieldName()})`,t}static stringIncludesCaseInsensitive(e,t){return e.toLocaleLowerCase().includes(t.toLocaleLowerCase())}};var rd=class extends vt{fieldName(){return"description"}filterRegexp(){return rd.descriptionRegexp}value(e){let t=ne().globalFilter;return e.description.replace(t,"").trim()}},Li=rd;Li.descriptionRegexp=/^description (includes|does not include) (.*)/;var Ct=class extends ce{constructor(){super(...arguments);this.instructionForFieldPresence=`has ${this.fieldName()} date`;this.instructionForFieldAbsence=`no ${this.fieldName()} date`}canCreateFilterForLine(t){return t===this.instructionForFieldPresence||t===this.instructionForFieldAbsence?!0:super.canCreateFilterForLine(t)}createFilterOrErrorMessage(t){let n=new ve;if(t===this.instructionForFieldPresence)return n.filter=s=>this.date(s)!==null,n;if(t===this.instructionForFieldAbsence)return n.filter=s=>this.date(s)===null,n;let i=ce.getMatch(this.filterRegexp(),t);if(i!==null){let s=Qt.parseDate(i[2]);s.isValid()?i[1]==="before"?n.filter=a=>{let o=this.date(a);return o?o.isBefore(s):this.filterResultIfFieldMissing()}:i[1]==="after"?n.filter=a=>{let o=this.date(a);return o?o.isAfter(s):this.filterResultIfFieldMissing()}:n.filter=a=>{let o=this.date(a);return o?o.isSame(s):this.filterResultIfFieldMissing()}:n.error="do not understand "+this.fieldName()+" date"}else n.error="do not understand query filter ("+this.fieldName()+" date)";return n}};var nd=class extends Ct{filterRegexp(){return nd.doneRegexp}fieldName(){return"done"}date(e){return e.doneDate}filterResultIfFieldMissing(){return!1}},Yi=nd;Yi.doneRegexp=/^done (before|after|on)? ?(.*)/;var id=class extends Ct{filterRegexp(){return id.dueRegexp}fieldName(){return"due"}date(e){return e.dueDate}filterResultIfFieldMissing(){return!1}},$i=id;$i.dueRegexp=/^due (before|after|on)? ?(.*)/;var wa=class{constructor(e,t){this._instruction=e,this._filter=t}canCreateFilterForLine(e){return e==this._instruction}createFilterOrErrorMessage(e){let t=new ve;return e===this._instruction?(t.filter=this._filter,t):(t.error=`do not understand filter: ${e}`,t)}};var Da=class{constructor(){this._filters=[]}add(e,t){this._filters.push(new wa(e,t))}canCreateFilterForLine(e){for(let t of this._filters)if(t.canCreateFilterForLine(e))return!0;return!1}createFilterOrErrorMessage(e){for(let n of this._filters){let i=n.createFilterOrErrorMessage(e);if(i.error===void 0)return i}let t=new ve;return t.error=`do not understand filter: ${e}`,t}};var Rr=class extends ce{constructor(){super(...arguments);this._filters=new Da}canCreateFilterForLine(t){return this._filters.canCreateFilterForLine(t)}createFilterOrErrorMessage(t){return this._filters.createFilterOrErrorMessage(t)}filterRegexp(){return null}};var Ma=class extends Rr{constructor(){super(),this._filters.add("exclude sub-items",e=>{if(e.indentation==="")return!0;let t=e.indentation.lastIndexOf(">");return t===-1?!1:/^ ?$/.test(e.indentation.slice(t+1))})}fieldName(){return"exclude"}};var sd=class extends vt{filterRegexp(){return sd.headingRegexp}fieldName(){return"heading"}value(e){return e.precedingHeader?e.precedingHeader:""}},ji=sd;ji.headingRegexp=/^heading (includes|does not include) (.*)/;var ad=class extends vt{filterRegexp(){return ad.pathRegexp}fieldName(){return"path"}value(e){return e.path}},Bi=ad;Bi.pathRegexp=/^path (includes|does not include) (.*)/;var od=class extends ce{createFilterOrErrorMessage(e){let t=new ve,n=ce.getMatch(this.filterRegexp(),e);if(n!==null){let i=n[3],s=null;switch(i){case"low":s="4";break;case"none":s="3";break;case"medium":s="2";break;case"high":s="1";break}if(s===null)return t.error="do not understand priority",t;let a;n[2]==="above"?a=o=>o.priority?o.priority.localeCompare(s)<0:!1:n[2]==="below"?a=o=>o.priority?o.priority.localeCompare(s)>0:!1:a=o=>o.priority?o.priority===s:!1,t.filter=a}else t.error="do not understand query filter (priority)";return t}fieldName(){return"priority"}filterRegexp(){return od.priorityRegexp}},Gi=od;Gi.priorityRegexp=/^priority (is )?(above|below)? ?(low|none|medium|high)/;var ud=class extends Ct{filterRegexp(){return ud.scheduledRegexp}fieldName(){return"scheduled"}date(e){return e.scheduledDate}filterResultIfFieldMissing(){return!1}},Hi=ud;Hi.scheduledRegexp=/^scheduled (before|after|on)? ?(.*)/;var ld=class extends Ct{filterRegexp(){return ld.startRegexp}fieldName(){return"start"}date(e){return e.startDate}filterResultIfFieldMissing(){return!0}},zi=ld;zi.startRegexp=/^starts (before|after|on)? ?(.*)/;var Pa=class extends Rr{constructor(){super(),this._filters.add("is recurring",e=>e.recurrence!==null),this._filters.add("is not recurring",e=>e.recurrence===null)}fieldName(){return"recurring"}};var Oa=class extends Rr{constructor(){super(),this._filters.add("done",e=>e.status==="Done"),this._filters.add("not done",e=>e.status!=="Done")}fieldName(){return"status"}};var cd=class extends ce{createFilterOrErrorMessage(e){let t=new ve,n=ce.getMatch(this.filterRegexp(),e);if(n!==null){let i=n[2],s=n[3].replace(/^#/,"");i==="include"||i==="includes"?t.filter=a=>a.tags.find(o=>o.toLowerCase().includes(s.toLowerCase()))!==void 0:n[2]==="do not include"||n[2]==="does not include"?t.filter=a=>a.tags.find(o=>o.toLowerCase().includes(s.toLowerCase()))==null:t.error="do not understand query filter (tag/tags)"}else t.error="do not understand query filter (tag/tags)";return t}fieldName(){return"tag/tags"}filterRegexp(){return cd.tagRegexp}},Ki=cd;Ki.tagRegexp=/^(tag|tags) (includes|does not include|include|do not include) (.*)/;var d_=as(c_());var Ca=class extends ce{constructor(){super(...arguments);this.basicBooleanRegexp=/.*(AND|OR|XOR|NOT)\s*[("].*/g;this.supportedOperators=["AND","OR","XOR","NOT"];this.subFields={}}filterRegexp(){return this.basicBooleanRegexp}createFilterOrErrorMessage(t){return this.parseLine(t)}fieldName(){return"boolean query"}parseLine(t){let n=new ve;if(t.length===0)return n.error="empty line",n;let i=this.preprocessExpression(t);try{let s=(0,d_.parse)(i);for(let a of s)if(a.name==="IDENTIFIER"&&a.value){let o=a.value.trim();if(!(o in this.subFields)){let u=Sa(o);if(u===null)return n.error=`couldn't parse sub-expression '${o}'`,n;if(u.error)return n.error=`couldn't parse sub-expression '${o}': ${u.error}`,n;u.filter&&(this.subFields[o]=u.filter)}}else if(a.name==="OPERATOR"){if(a.value==null)return n.error="empty operator in boolean query",n;if(!this.supportedOperators.includes(a.value))return n.error=`unknown boolean operator '${a.value}'`,n}return n.filter=a=>this.filterTaskWithParsedQuery(a,s),n}catch(s){let a=s instanceof Error?s.message:"unknown error type";return n.error=`malformed boolean query -- ${a} (check the documentation for guidelines)`,n}return n}preprocessExpression(t){return t.replace(/\(([^()]+)\)/g,'("$1")')}filterTaskWithParsedQuery(t,n){let i=o=>o==="true",s=o=>o?"true":"false",a=[];for(let o of n)if(o.name==="IDENTIFIER"){if(o.value==null)throw Error("null token value");let u=this.subFields[o.value.trim()],l=u(t);a.push(s(l))}else if(o.name==="OPERATOR")if(o.value==="NOT"){let u=i(a.pop());a.push(s(!u))}else if(o.value==="OR"){let u=i(a.pop()),l=i(a.pop());a.push(s(u||l))}else if(o.value==="AND"){let u=i(a.pop()),l=i(a.pop());a.push(s(u&&l))}else if(o.value==="XOR"){let u=i(a.pop()),l=i(a.pop());a.push(s(u&&!l||!u&&l))}else throw Error("Unsupported operator: "+o.value);else throw Error("Unsupported token type: "+o);return i(a[0])}};var zO=[()=>new Oa,()=>new Pa,()=>new Gi,()=>new Jt,()=>new zi,()=>new Hi,()=>new $i,()=>new Yi,()=>new Bi,()=>new Li,()=>new Ki,()=>new ji,()=>new Ma,()=>new Ca];function Sa(r){for(let e of zO){let t=e();if(t.canCreateFilterForLine(r))return t.createFilterOrErrorMessage(r)}return null}var wn=class{constructor({source:e}){this._limit=void 0;this._layoutOptions=new Kr;this._filters=[];this._error=void 0;this._sorting=[];this._grouping=[];this.sortByRegexp=/^sort by (urgency|status|priority|start|scheduled|due|done|path|description|tag)( reverse)?[\s]*(\d+)?/;this.groupByRegexp=/^group by (backlink|done|due|filename|folder|happens|heading|path|priority|recurrence|recurring|root|scheduled|start|status|tags)/;this.hideOptionsRegexp=/^hide (task count|backlink|priority|start date|scheduled date|done date|due date|recurrence rule|edit button)/;this.shortModeRegexp=/^short/;this.limitRegexp=/^limit (to )?(\d+)( tasks?)?/;this.commentRegexp=/^#.*/;this.source=e,e.split(` +`).map(t=>t.trim()).forEach(t=>{switch(!0){case t==="":break;case this.shortModeRegexp.test(t):this._layoutOptions.shortMode=!0;break;case this.limitRegexp.test(t):this.parseLimit({line:t});break;case this.sortByRegexp.test(t):this.parseSortBy({line:t});break;case this.groupByRegexp.test(t):this.parseGroupBy({line:t});break;case this.hideOptionsRegexp.test(t):this.parseHideOptions({line:t});break;case this.commentRegexp.test(t):break;case this.parseFilter(t):break;default:this._error=`do not understand query: ${t}`}})}get limit(){return this._limit}get layoutOptions(){return this._layoutOptions}get filters(){return this._filters}get sorting(){return this._sorting}get grouping(){return this._grouping}get error(){return this._error}applyQueryToTasks(e){this.filters.forEach(n=>{e=e.filter(n)});let t=Ge.by(this,e).slice(0,this.limit);return vr.by(this.grouping,t)}parseHideOptions({line:e}){let t=e.match(this.hideOptionsRegexp);if(t!==null)switch(t[1].trim().toLowerCase()){case"task count":this._layoutOptions.hideTaskCount=!0;break;case"backlink":this._layoutOptions.hideBacklinks=!0;break;case"priority":this._layoutOptions.hidePriority=!0;break;case"start date":this._layoutOptions.hideStartDate=!0;break;case"scheduled date":this._layoutOptions.hideScheduledDate=!0;break;case"due date":this._layoutOptions.hideDueDate=!0;break;case"done date":this._layoutOptions.hideDoneDate=!0;break;case"recurrence rule":this._layoutOptions.hideRecurrenceRule=!0;break;case"edit button":this._layoutOptions.hideEditButton=!0;break;default:this._error="do not understand hide option"}}parseFilter(e){let t=Sa(e);return t!=null?(t.filter?this._filters.push(t.filter):this._error=t.error,!0):!1}parseLimit({line:e}){let t=e.match(this.limitRegexp);t!==null?this._limit=Number.parseInt(t[2],10):this._error="do not understand query limit"}parseSortBy({line:e}){let t=e.match(this.sortByRegexp);t!==null?this._sorting.push({property:t[1],reverse:!!t[2],propertyInstance:isNaN(+t[3])?1:+t[3]}):this._error="do not understand query sorting"}parseGroupBy({line:e}){let t=e.match(this.groupByRegexp);t!==null?this._grouping.push({property:t[1]}):this._error="do not understand query grouping"}};var xa=class{constructor({plugin:e,events:t}){this.addQueryRenderChild=this._addQueryRenderChild.bind(this);this.app=e.app,this.events=t,e.registerMarkdownCodeBlockProcessor("tasks",this._addQueryRenderChild.bind(this))}_addQueryRenderChild(e,t,n){return se(this,null,function*(){n.addChild(new Dn({app:this.app,events:this.events,container:t,source:e,filePath:n.sourcePath}))})}},Dn=class extends f_.MarkdownRenderChild{constructor({app:t,events:n,container:i,source:s,filePath:a}){super(i);switch(this.app=t,this.events=n,this.source=s,this.filePath=a,this.containerEl.className){case"block-language-tasks":this.query=new wn({source:s}),this.queryType="tasks";break;default:this.query=new wn({source:s}),this.queryType="tasks";break}}onload(){this.events.triggerRequestCacheUpdate(this.render.bind(this)),this.renderEventRef=this.events.onCacheUpdate(this.render.bind(this)),this.reloadQueryAtMidnight()}onunload(){this.renderEventRef!==void 0&&this.events.off(this.renderEventRef),this.queryReloadTimeout!==void 0&&clearTimeout(this.queryReloadTimeout)}reloadQueryAtMidnight(){let t=new Date;t.setHours(24,0,0,0);let n=new Date,i=t.getTime()-n.getTime();this.queryReloadTimeout=setTimeout(()=>{this.query=new wn({source:this.source}),this.events.triggerRequestCacheUpdate(this.render.bind(this)),this.reloadQueryAtMidnight()},i+1e3)}render(i){return se(this,arguments,function*({tasks:t,state:n}){var a;let s=this.containerEl.createEl("div");if(n==="Warm"&&this.query.error===void 0){console.debug(`Render ${this.queryType} called for a block in active file "${this.filePath}", to select from ${t.length} tasks: plugin state: ${n}`);let o=this.query.applyQueryToTasks(t);for(let l of o.groups){Dn.addGroupHeadings(s,l.groupHeadings);let{taskList:c}=yield this.createTasksList({tasks:l.tasks,content:s});s.appendChild(c)}let u=o.totalTasksCount();console.debug(`${u} of ${t.length} tasks displayed in a block in "${this.filePath}"`),this.addTaskCount(s,u)}else this.query.error!==void 0?s.setText(`Tasks query: ${this.query.error}`):s.setText("Loading Tasks ...");(a=this.containerEl.firstChild)==null||a.replaceWith(s)})}createTasksList(i){return se(this,arguments,function*({tasks:t,content:n}){let s=t.length,a=n.createEl("ul");a.addClasses(["contains-task-list","plugin-tasks-query-result"]);for(let o=0;oy.remove());let f=c.createSpan(),p=this.query.layoutOptions.shortMode;this.query.layoutOptions.hideBacklinks||this.addBacklinks(f,u,p,l),this.query.layoutOptions.hideEditButton||this.addEditButton(f,u),a.appendChild(c)}return{taskList:a,tasksCount:s}})}addEditButton(t,n){t.createEl("a",{cls:"tasks-edit"}).onClickEvent(s=>{s.preventDefault();let a=u=>{us({originalTask:n,newTasks:u})};new _n({app:this.app,task:n,onSubmit:a}).open()})}static addGroupHeadings(t,n){for(let i of n)Dn.addGroupHeading(t,i)}static addGroupHeading(t,n){let i;n.nestingLevel===0?i=t.createEl("h4",{cls:"tasks-group-heading"}):n.nestingLevel===1?i=t.createEl("h5",{cls:"tasks-group-heading"}):i=t.createEl("h6",{cls:"tasks-group-heading"}),i.appendText(n.name)}addBacklinks(t,n,i,s){var u;t.addClass("tasks-backlink"),i||t.append(" (");let a=t.createEl("a");if(a.href=n.path,a.setAttribute("data-href",n.path),a.rel="noopener",a.target="_blank",a.addClass("internal-link"),i&&a.addClass("internal-link-short-mode"),n.precedingHeader!==null){let l=n.precedingHeader.replace(/#/g,"");a.href=a.href+"#"+l,a.setAttribute("data-href",a.getAttribute("data-href")+"#"+l)}let o;i?o=" \u{1F517}":o=(u=n.getLinkText({isFilenameUnique:s}))!=null?u:"",a.setText(o),i||t.append(")")}addTaskCount(t,n){this.query.layoutOptions.hideTaskCount||t.createDiv({text:`${n} task${n!==1?"s":""}`,cls:"tasks-count"})}isFilenameUnique({task:t}){let n=t.path.match(/([^/]*)\..+$/i);if(n===null)return;let i=n[1];return this.app.vault.getMarkdownFiles().filter(a=>{if(a.basename===i)return!0}).length<2}};var ir=require("obsidian");var Ia=class extends ir.PluginSettingTab{constructor({plugin:t}){super(t.app,t);this.plugin=t}display(){let{containerEl:t}=this;t.empty(),t.createEl("h2",{text:"Tasks Settings"}),t.createEl("p",{cls:"tasks-setting-important",text:"Changing any settings requires a restart of obsidian."}),new ir.Setting(t).setName("Global task filter").setDesc("The global filter will be applied to all checklist items.").addText(n=>{let i=ne();n.setPlaceholder("#task").setValue(i.globalFilter).onChange(s=>se(this,null,function*(){qt({globalFilter:s}),yield this.plugin.saveSettings()}))}),t.createEl("div",{cls:"setting-item-description",text:'The global filter will be applied to all checklist items to filter out "non-task" checklist items.\nA checklist item must include the specified string in its description in order to be considered a task.\nFor example, if you set the global filter to `#task`, the Tasks plugin will only handle checklist items tagged with `#task`.\nOther checklist items will remain normal checklist items and not appear in queries or get a done date set.\nLeave empty if you want all checklist items from your vault to be tasks managed by this plugin.'}),new ir.Setting(t).setName("Remove global filter from description").setDesc("Enabling this removes the string that you set as global filter from the task description when displaying a task.").addToggle(n=>{let i=ne();n.setValue(i.removeGlobalFilter).onChange(s=>se(this,null,function*(){qt({removeGlobalFilter:s}),yield this.plugin.saveSettings()}))}),new ir.Setting(t).setName("Set done date on every completed task").setDesc("Enabling this will add a timestamp \u2705 YYYY-MM-DD at the end when a task is toggled to done").addToggle(n=>{let i=ne();n.setValue(i.setDoneDate).onChange(s=>se(this,null,function*(){qt({setDoneDate:s}),yield this.plugin.saveSettings()}))}),new ir.Setting(t).setName("Auto-suggest task content").setDesc("Enabling this will open an intelligent suggest menu while typing inside a recognized task line.").addToggle(n=>{let i=ne();n.setValue(i.autoSuggestInEditor).onChange(s=>se(this,null,function*(){qt({autoSuggestInEditor:s}),yield this.plugin.saveSettings()}))}),new ir.Setting(t).setName("Minimum match length for auto-suggest").setDesc("If higher than 0, auto-suggest will be triggered only when the beginning of any supported keywords is recognized.").addSlider(n=>{let i=ne();n.setLimits(0,3,1).setValue(i.autoSuggestMinMatch).setDynamicTooltip().onChange(s=>se(this,null,function*(){qt({autoSuggestMinMatch:s}),yield this.plugin.saveSettings()}))}),new ir.Setting(t).setName("Maximum number of auto-suggestions to show").setDesc('How many suggestions should be shown when an auto-suggest menu pops up (including the "\u23CE" option).').addSlider(n=>{let i=ne();n.setLimits(3,12,1).setValue(i.autoSuggestMaxItems).setDynamicTooltip().onChange(s=>se(this,null,function*(){qt({autoSuggestMaxItems:s}),yield this.plugin.saveSettings()}))})}};var h_=require("obsidian");var KO=`${wt}${Dt}${Mt}`;function p_(r,e,t){let n=[];n=n.concat(XO(r,e,t)),n=n.concat(QO(r,e,t));let i=ZO(r,t),s=Ed(r,/([a-zA-Z'_-]*)/g,e),a=!1;if(s&&s.length>0){let o=s[0];if(o.length>=Math.max(1,t.autoSuggestMinMatch)){let u=i.filter(l=>l.displayText.toLowerCase().includes(o.toLowerCase()));for(let l of u)n.push({suggestionType:"match",displayText:l.displayText,appendText:l.appendText,insertAt:s.index,insertSkip:o.length}),a=!0}}return!a&&t.autoSuggestMinMatch===0&&(n=n.concat(i)),n.length>0&&!n.some(o=>o.suggestionType==="match")&&n.unshift({suggestionType:"empty",displayText:"\u23CE",appendText:` +`}),n=n.slice(0,t.autoSuggestMaxItems),n}function VO(r){if(Object.values(Re).some(e=>e.length>0&&r.includes(e)))return!0}function ZO(r,e){let t=[];return r.includes(Mt)||t.push({displayText:`${Mt} due date`,appendText:`${Mt} `}),r.includes(wt)||t.push({displayText:`${wt} start date`,appendText:`${wt} `}),r.includes(Dt)||t.push({displayText:`${Dt} scheduled date`,appendText:`${Dt} `}),VO(r)||(t.push({displayText:`${Re.High} high priority`,appendText:`${Re.High} `}),t.push({displayText:`${Re.Medium} medium priority`,appendText:`${Re.Medium} `}),t.push({displayText:`${Re.Low} low priority`,appendText:`${Re.Low} `})),r.includes(Rt)||t.push({displayText:`${Rt} recurring (repeat)`,appendText:`${Rt} `}),t}function XO(r,e,t){let n=["today","tomorrow","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","next week","next month","next year"],i=[],s=new RegExp(`([${KO}])\\s*([0-9a-zA-Z ]*)`,"ug"),a=Ed(r,s,e);if(a&&a.length>=2){let o=a[1],u=a[2];if(u.length1?Qt.parseDate(gn(u),!0):null;l&&l.isValid()&&i.push({displayText:`${l.format(L.dateFormat)}`,appendText:`${o} ${l.format(L.dateFormat)} `,insertAt:a.index,insertSkip:a[0].length});let c=1,d=5,f=n.filter(p=>u&&u.length>=c&&p.toLowerCase().includes(u.toLowerCase())).slice(0,d);f.length===0&&(f=n.slice(0,d));for(let p of f){let m=`${Qt.parseDate(p,!0).format(L.dateFormat)}`;i.push({suggestionType:"match",displayText:`${p} (${m})`,appendText:`${o} ${m} `,insertAt:a.index,insertSkip:a[0].length})}}return i}function QO(r,e,t){var o;let n=["every","every day","every week","every month","every month on the","every year","every week on Sunday","every week on Monday","every week on Tuesday","every week on Wednesday","every week on Thursday","every week on Friday","every week on Saturday"],i=[],s=new RegExp(`(${Rt})\\s*([0-9a-zA-Z ]*)`,"ug"),a=Ed(r,s,e);if(a&&a.length>=2){let u=a[1],l=a[2];if(l.length0){let p=(o=ft.fromText({recurrenceRuleText:l,startDate:null,scheduledDate:null,dueDate:null}))==null?void 0:o.toText();if(p){let y=`${u} ${p} `;if(i.push({suggestionType:"match",displayText:`\u2705 ${p}`,appendText:y,insertAt:a.index,insertSkip:a[0].length}),a[0]==y)return[]}}let c=1,d=t.autoSuggestMaxItems/2,f=n.filter(p=>l&&l.length>=c&&p.toLowerCase().includes(l.toLowerCase())).slice(0,d);f.length===0&&l.trim().length===0&&(f=n.slice(0,d));for(let p of f)i.push({suggestionType:"match",displayText:`${p}`,appendText:`${u} ${p} `,insertAt:a.index,insertSkip:a[0].length})}return i}function Ed(r,e,t){let n=r.matchAll(e);for(let i of n)if((i==null?void 0:i.index)&&i.index<=t&&t<=i.index+i[0].length)return i;return[]}var Ua=class extends h_.EditorSuggest{constructor(t,n){super(t);this.settings=n}onTrigger(t,n,i){if(!this.settings.autoSuggestInEditor)return null;let s=n.getLine(t.line);return s.contains(this.settings.globalFilter)&&s.match(L.taskRegex)?{start:{line:t.line,ch:0},end:{line:t.line,ch:s.length},query:s}:null}getSuggestions(t){let n=t.query,i=t.editor.getCursor(),s=p_(n,i.ch,this.settings),a=[];for(let o of s)a.push(Ut($e({},o),{context:t}));return a}renderSuggestion(t,n){n.setText(t.displayText)}selectSuggestion(t,n){var u,l,c;let i=t.context.editor;if(t.suggestionType==="empty"){this.close();let d=new KeyboardEvent("keydown",{code:"Enter",key:"Enter"});(l=(u=i==null?void 0:i.cm)==null?void 0:u.contentDOM)==null||l.dispatchEvent(d);return}let s=t.context.editor.getCursor(),a={line:s.line,ch:(c=t.insertAt)!=null?c:s.ch},o=t.insertSkip?{line:s.line,ch:a.ch+t.insertSkip}:void 0;t.context.editor.replaceRange(t.appendText,a,o),t.context.editor.setCursor({line:s.line,ch:a.ch+t.appendText.length})}};var qa=class extends m_.Plugin{onload(){return se(this,null,function*(){console.log('loading plugin "tasks"'),yield this.loadSettings(),this.addSettingTab(new Ia({plugin:this})),Vd({metadataCache:this.app.metadataCache,vault:this.app.vault});let t=new ha({obsidianEvents:this.app.workspace});this.cache=new fr({metadataCache:this.app.metadataCache,vault:this.app.vault,events:t}),this.inlineRenderer=new ma({plugin:this}),this.queryRenderer=new xa({plugin:this,events:t}),this.registerEditorExtension(Xg()),this.registerEditorSuggest(new Ua(this.app,ne())),new pa({plugin:this})})}onunload(){var t;console.log('unloading plugin "tasks"'),(t=this.cache)==null||t.unload()}loadSettings(){return se(this,null,function*(){let t=yield this.loadData();qt(t)})}saveSettings(){return se(this,null,function*(){yield this.saveData(ne())})}}; diff --git a/.obsidian/plugins/obsidian-tasks-plugin/manifest.json b/.obsidian/plugins/obsidian-tasks-plugin/manifest.json index 7e824ec8..15743582 100644 --- a/.obsidian/plugins/obsidian-tasks-plugin/manifest.json +++ b/.obsidian/plugins/obsidian-tasks-plugin/manifest.json @@ -1,7 +1,7 @@ { "id": "obsidian-tasks-plugin", "name": "Tasks", - "version": "1.11.0", + "version": "1.11.1", "minAppVersion": "0.14.6", "description": "Task management for Obsidian", "author": "Martin Schenck and Clare Macrae", diff --git a/.obsidian/workspace b/.obsidian/workspace index 455ebce9..de98239a 100644 --- a/.obsidian/workspace +++ b/.obsidian/workspace @@ -4,12 +4,12 @@ "type": "split", "children": [ { - "id": "1326f40102541ef2", + "id": "e12e1bd3cf42a7c6", "type": "leaf", "state": { "type": "markdown", "state": { - "file": "00.01 Admin/Calendars/2022-01-22.md", + "file": "01.02 Home/@Main Dashboard.md", "mode": "preview", "source": false } @@ -77,7 +77,7 @@ "state": { "type": "backlink", "state": { - "file": "00.01 Admin/Calendars/2022-01-22.md", + "file": "01.02 Home/@Main Dashboard.md", "collapseAll": false, "extraContext": false, "sortOrder": "alphabetical", @@ -94,7 +94,7 @@ "state": { "type": "outgoing-link", "state": { - "file": "00.01 Admin/Calendars/2022-01-22.md", + "file": "01.02 Home/@Main Dashboard.md", "linksCollapsed": false, "unlinkedCollapsed": false } @@ -151,17 +151,17 @@ ], "currentTab": 2 }, - "active": "1326f40102541ef2", + "active": "e12e1bd3cf42a7c6", "lastOpenFiles": [ - "00.01 Admin/Calendars/2022-01-23.md", - "00.01 Admin/Calendars/2022-01-24.md", - "00.01 Admin/Calendars/2022-01-25.md", - "00.01 Admin/Calendars/2022-01-26.md", - "00.01 Admin/Calendars/2022-01-27.md", - "00.01 Admin/Calendars/2022-01-28.md", - "00.01 Admin/Calendars/2022-01-29.md", - "00.01 Admin/Calendars/2022-01-30.md", - "00.01 Admin/Calendars/2022-01-31.md", - "00.01 Admin/Calendars/2022-02-01.md" + "00.01 Admin/Calendars/2022-08-12.md", + "01.02 Home/@Main Dashboard.md", + "00.01 Admin/Calendars/2022-08-11.md", + "00.03 News/Sam Taggart’s Hard Sell.md", + "00.01 Admin/Calendars/2022-08-10.md", + "00.03 News/While Britain burns, the Tories are … fiddling with themselves again Marina Hyde.md", + "00.01 Admin/Calendars/2022-04-10.md", + "00.01 Admin/Calendars/2022-04-11.md", + "00.01 Admin/Calendars/2022-04-12.md", + "00.01 Admin/Calendars/2022-04-13.md" ] } \ No newline at end of file diff --git a/00.01 Admin/Calendars/2022-04-10.md b/00.01 Admin/Calendars/2022-04-10.md index 05836438..4853ac79 100644 --- a/00.01 Admin/Calendars/2022-04-10.md +++ b/00.01 Admin/Calendars/2022-04-10.md @@ -89,7 +89,7 @@ This section does serve for quick memos. %% ### %%   -- [ ] 21:01 :stopwatch: [[2022-04-10|Memo]], [[Amaury de Villeneuve|Chapal]]: trouver un réparateur pour l'oignon Lipp 📅 2022-08-10 +- [x] 21:01 :stopwatch: [[2022-04-10|Memo]], [[Amaury de Villeneuve|Chapal]]: trouver un réparateur pour l'oignon LIP 📅 2022-08-20 ✅ 2022-08-11 --- diff --git a/00.01 Admin/Calendars/2022-06-20.md b/00.01 Admin/Calendars/2022-06-20.md index cf6ff22c..db23a485 100644 --- a/00.01 Admin/Calendars/2022-06-20.md +++ b/00.01 Admin/Calendars/2022-06-20.md @@ -89,7 +89,7 @@ This section does serve for quick memos. %% ### %%   -- [ ] 08:25 Anniversaire de [[Noémie de Villeneuve]] +- [x] 08:25 Anniversaire de [[Noémie de Villeneuve]] ✅ 2022-08-10 --- diff --git a/00.01 Admin/Calendars/2022-08-08.md b/00.01 Admin/Calendars/2022-08-08.md index fa86b7d9..76f9845c 100644 --- a/00.01 Admin/Calendars/2022-08-08.md +++ b/00.01 Admin/Calendars/2022-08-08.md @@ -13,9 +13,9 @@ Stress: 25 FrontHeadBar: 5 EarHeadBar: 30 BackHeadBar: 20 -Water: -Coffee: -Steps: +Water: 4.75 +Coffee: 5 +Steps: 15280 Ski: Riding: Racket: diff --git a/00.01 Admin/Calendars/2022-08-09.md b/00.01 Admin/Calendars/2022-08-09.md new file mode 100644 index 00000000..f1ddfc42 --- /dev/null +++ b/00.01 Admin/Calendars/2022-08-09.md @@ -0,0 +1,118 @@ +--- + +Date: 2022-08-09 +DocType: Note +Hierarchy: +TimeStamp: +location: +CollapseMetaTable: Yes +Sleep: 8 +Happiness: 90 +Gratefulness: 90 +Stress: 25 +FrontHeadBar: 5 +EarHeadBar: 30 +BackHeadBar: 20 +Water: 4 +Coffee: 5 +Steps: 7406 +Ski: +Riding: 1 +Racket: +Football: +title: "Daily Note" +allDay: true +date: 2022-08-09 + +--- + +%% Parent:: [[@Life Admin]] %% + +--- + +[[2022-08-08|<< 🗓 Previous ]]       [[@Main Dashboard|Back]]       [[2022-08-10|🗓 Next >>]] + +--- + +  + +```button +name Record today's health +type command +action MetaEdit: Run MetaEdit +id EditMetaData +``` +^button-2022-08-09Edit + +```button +name Save +type command +action Save current file +id Save +``` +^button-2022-08-09NSave + +  + +# 2022-08-09 + +  + +```ad-abstract +title: Summary +collapse: open +Note Description +``` + +  + +```toc +style: number +``` + +  + +--- + +  + +### Memos + +  + +#### Memos + +This section does serve for quick memos. + +  + + +%% ### %% +  + +--- + +  + +### Notes + +  + +Loret ipsum + +  + +--- + +  + +### Linked activity + +  + +```dataview +Table from [[2022-08-09]] +``` + +  +  \ No newline at end of file diff --git a/00.01 Admin/Calendars/2022-08-10 Meg's mum back to Belfast.md b/00.01 Admin/Calendars/2022-08-10 Meg's mum back to Belfast.md new file mode 100644 index 00000000..4a429de6 --- /dev/null +++ b/00.01 Admin/Calendars/2022-08-10 Meg's mum back to Belfast.md @@ -0,0 +1,8 @@ +--- +title: Meg's mum back to Belfast +allDay: true +date: 2022-08-10 +endDate: 2022-08-11 +--- + +[[MRCK|Meggi-mo]]'s mum is back to [[Belfast]] [[2022-08-10|in the morning]]. \ No newline at end of file diff --git a/00.01 Admin/Calendars/2022-08-10.md b/00.01 Admin/Calendars/2022-08-10.md new file mode 100644 index 00000000..ff757f5f --- /dev/null +++ b/00.01 Admin/Calendars/2022-08-10.md @@ -0,0 +1,120 @@ +--- + +Date: 2022-08-10 +DocType: Note +Hierarchy: +TimeStamp: +location: +CollapseMetaTable: Yes +Sleep: 8 +Happiness: 90 +Gratefulness: 90 +Stress: 25 +FrontHeadBar: 5 +EarHeadBar: 30 +BackHeadBar: 20 +Water: 4.23 +Coffee: 4 +Steps: 10801 +Ski: +Riding: +Racket: +Football: +title: "Daily Note" +allDay: true +date: 2022-08-10 + +--- + +%% Parent:: [[@Life Admin]] %% + +--- + +[[2022-08-09|<< 🗓 Previous ]]       [[@Main Dashboard|Back]]       [[2022-08-11|🗓 Next >>]] + +--- + +  + +```button +name Record today's health +type command +action MetaEdit: Run MetaEdit +id EditMetaData +``` +^button-2022-08-10Edit + +```button +name Save +type command +action Save current file +id Save +``` +^button-2022-08-10NSave + +  + +# 2022-08-10 + +  + +```ad-abstract +title: Summary +collapse: open +Note Description +``` + +  + +```toc +style: number +``` + +  + +--- + +  + +### Memos + +  + +#### Memos + +This section does serve for quick memos. + +  + + +%% ### %% +  +- [x] 13:18 :fountain_pen: [[2022-08-10|Memo]], [[@@Life Organisation|Life admin]] get a new cartridge for my Mont Blanc pen 📅 2022-08-14 ✅ 2022-08-10 ^0fcqse +- [x] 13:50 :athletic_shoe: [[2022-08-10|Memo]], [[@@Life organisation|Life admin]] buy low cut sneakers 📅 2022-08-14 ✅ 2022-08-10 + +--- + +  + +### Notes + +  + +Loret ipsum + +  + +--- + +  + +### Linked activity + +  + +```dataview +Table from [[2022-08-10]] +``` + +  +  \ No newline at end of file diff --git a/00.01 Admin/Calendars/2022-08-11 Meg's mum back to Belfast.md b/00.01 Admin/Calendars/2022-08-11 Meg's mum back to Belfast.md deleted file mode 100644 index 22e618e4..00000000 --- a/00.01 Admin/Calendars/2022-08-11 Meg's mum back to Belfast.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: Meg's mum back to Belfast -allDay: true -date: 2022-08-11 -endDate: 2022-08-12 ---- - -[[MRCK|Meggi-mo]]'s mum is back to [[Belfast]] [[2022-08-11|in the morning]]. \ No newline at end of file diff --git a/00.01 Admin/Calendars/2022-08-11 Reparation Oignon LIP.md b/00.01 Admin/Calendars/2022-08-11 Reparation Oignon LIP.md new file mode 100644 index 00000000..e15ad44d --- /dev/null +++ b/00.01 Admin/Calendars/2022-08-11 Reparation Oignon LIP.md @@ -0,0 +1,13 @@ +--- +title: Reparation Oignon LIP +allDay: false +startTime: 10:00 +endTime: 10:30 +date: 2022-08-11 +--- + +address:: Schäracherstrasse 6, CH-8053 Zürich + +--- + +Rendez-vous de réparation de l'oignon LIP [[@Family|Chapal]] à [[2022-08-11|10h]]. \ No newline at end of file diff --git a/00.01 Admin/Calendars/2022-08-11.md b/00.01 Admin/Calendars/2022-08-11.md new file mode 100644 index 00000000..59444010 --- /dev/null +++ b/00.01 Admin/Calendars/2022-08-11.md @@ -0,0 +1,115 @@ +--- + +Date: 2022-08-11 +DocType: Note +Hierarchy: +TimeStamp: +location: +CollapseMetaTable: Yes +Sleep: 8 +Happiness: 90 +Gratefulness: 90 +Stress: 25 +FrontHeadBar: 5 +EarHeadBar: 30 +BackHeadBar: 20 +Water: 3.85 +Coffee: 3 +Steps: 6386 +Ski: +Riding: +Racket: +Football: +title: "Daily Note" +allDay: true +date: 2022-08-11 + +--- + +%% Parent:: [[@Life Admin]] %% + +--- + +[[2022-08-10|<< 🗓 Previous ]]       [[@Main Dashboard|Back]]       [[2022-08-12|🗓 Next >>]] + +--- + +  + +```button +name Record today's health +type command +action MetaEdit: Run MetaEdit +id EditMetaData +``` +^button-2022-08-11Edit + +```button +name Save +type command +action Save current file +id Save +``` +^button-2022-08-11NSave + +  + +# 2022-08-11 + +  + +> [!summary]+ +> Daily note for 2022-08-11 + +  + +```toc +style: number +``` + +  + +--- + +  + +### Memos + +  + +#### Memos + +This section does serve for quick memos. + +  + + +%% ### %% +  + +--- + +  + +### Notes + +  + +Loret ipsum + +  + +--- + +  + +### Linked activity + +  + +```dataview +Table from [[2022-08-11]] +``` + +  +  \ No newline at end of file diff --git a/00.01 Admin/Calendars/2022-08-12.md b/00.01 Admin/Calendars/2022-08-12.md new file mode 100644 index 00000000..f338908d --- /dev/null +++ b/00.01 Admin/Calendars/2022-08-12.md @@ -0,0 +1,115 @@ +--- + +Date: 2022-08-12 +DocType: Note +Hierarchy: +TimeStamp: +location: +CollapseMetaTable: Yes +Sleep: 7.5 +Happiness: 90 +Gratefulness: 90 +Stress: 25 +FrontHeadBar: 5 +EarHeadBar: 30 +BackHeadBar: 20 +Water: +Coffee: 1 +Steps: +Ski: +Riding: +Racket: +Football: +title: "Daily Note" +allDay: true +date: 2022-08-12 + +--- + +%% Parent:: [[@Life Admin]] %% + +--- + +[[2022-08-11|<< 🗓 Previous ]]       [[@Main Dashboard|Back]]       [[2022-08-13|🗓 Next >>]] + +--- + +  + +```button +name Record today's health +type command +action MetaEdit: Run MetaEdit +id EditMetaData +``` +^button-2022-08-12Edit + +```button +name Save +type command +action Save current file +id Save +``` +^button-2022-08-12NSave + +  + +# 2022-08-12 + +  + +> [!summary]+ +> Daily note for 2022-08-12 + +  + +```toc +style: number +``` + +  + +--- + +  + +### Memos + +  + +#### Memos + +This section does serve for quick memos. + +  + + +%% ### %% +  + +--- + +  + +### Notes + +  + +Loret ipsum + +  + +--- + +  + +### Linked activity + +  + +```dataview +Table from [[2022-08-12]] +``` + +  +  \ No newline at end of file diff --git a/00.01 Admin/Templates/@Master Note.md b/00.01 Admin/Templates/@Master Note.md index a1bfa3f0..32eb4cd0 100644 --- a/00.01 Admin/Templates/@Master Note.md +++ b/00.01 Admin/Templates/@Master Note.md @@ -38,11 +38,8 @@ id Save # Folder map   -```ad-abstract -title: Summary -collapse: open -This note enables to navigate in the <% tp.file.folder() %> section and find any Note in this Vault by Note or Tag -``` +> [!summary]+ +> This note enables to navigate in the <% tp.file.folder() %> section and find any Note in this Vault by Note or Tag   diff --git a/00.01 Admin/Templates/@Task Master.md b/00.01 Admin/Templates/@Task Master.md index e4033cf4..7168507a 100644 --- a/00.01 Admin/Templates/@Task Master.md +++ b/00.01 Admin/Templates/@Task Master.md @@ -40,11 +40,8 @@ id Save   -```ad-abstract -title: Summary -collapse: open -This space centralises all tasks and to-dos in the <% tp.file.folder() %> folder. -``` +> [!summary]+ +>This space centralises all tasks and to-dos in the <% tp.file.folder() %> folder.   diff --git a/00.01 Admin/Templates/Template Coffee.md b/00.01 Admin/Templates/Template Coffee.md index c8dca817..f5e59e7c 100644 --- a/00.01 Admin/Templates/Template Coffee.md +++ b/00.01 Admin/Templates/Template Coffee.md @@ -36,11 +36,8 @@ id Save   -```ad-abstract -title: Summary -collapse: open -Description -``` +> [!summary]+ +>Description   diff --git a/00.01 Admin/Templates/Template Daily.md b/00.01 Admin/Templates/Template Daily.md index 6881a80d..ce4b7125 100644 --- a/00.01 Admin/Templates/Template Daily.md +++ b/00.01 Admin/Templates/Template Daily.md @@ -58,11 +58,8 @@ id Save   -```ad-abstract -title: Summary -collapse: open -Note Description -``` +> [!summary]+ +> Daily note for <% tp.file.title %>   diff --git a/00.01 Admin/Templates/Template Investment.md b/00.01 Admin/Templates/Template Investment.md index 4c2fa6f1..79957bdb 100644 --- a/00.01 Admin/Templates/Template Investment.md +++ b/00.01 Admin/Templates/Template Investment.md @@ -15,6 +15,7 @@ Investment: Trading: PDate: PPrice: +CollapseMetaTable: yes --- @@ -46,11 +47,8 @@ id Save   -```ad-abstract -title: Summary -collapse: open -Product Description -``` +> [!summary]+ +> Product Description   diff --git a/00.01 Admin/Templates/Template Note.md b/00.01 Admin/Templates/Template Note.md index 1594c7f2..809dd7bb 100644 --- a/00.01 Admin/Templates/Template Note.md +++ b/00.01 Admin/Templates/Template Note.md @@ -31,11 +31,8 @@ id Save   -```ad-abstract -title: Summary -collapse: open -Note Description -``` +> [!summary]+ +> Note Description   diff --git a/00.01 Admin/Templates/Template Person.md b/00.01 Admin/Templates/Template Person.md index 7d9b6284..fcc4f4ad 100644 --- a/00.01 Admin/Templates/Template Person.md +++ b/00.01 Admin/Templates/Template Person.md @@ -60,11 +60,8 @@ id Save   -```ad-abstract -title: Summary -collapse: open -Person Description -``` +> [!summary]+ +> Person Description   diff --git a/00.01 Admin/Templates/Template Place.md b/00.01 Admin/Templates/Template Place.md index 1003018f..c704bb48 100644 --- a/00.01 Admin/Templates/Template Place.md +++ b/00.01 Admin/Templates/Template Place.md @@ -42,11 +42,8 @@ id Save   -```ad-abstract -title: Summary -collapse: open -Note Description -``` +> [!summary]+ +> Note Description   @@ -64,14 +61,11 @@ style: number   -```ad-address -~~~ -Horton Country Park +> [!address] +> Horton Country Park Horton Lane Epsom KT19 8PL United Kingdom -~~~ -```   diff --git a/00.01 Admin/Templates/Template Pocket Source.md b/00.01 Admin/Templates/Template Pocket Source.md index b265d323..d2bef144 100644 --- a/00.01 Admin/Templates/Template Pocket Source.md +++ b/00.01 Admin/Templates/Template Pocket Source.md @@ -47,11 +47,8 @@ id Save   -```ad-abstract -title: Summary -collapse: open -{{excerpt}} -``` +> [!summary]+ +> {{excerpt}}   diff --git a/00.01 Admin/Templates/Template Product.md b/00.01 Admin/Templates/Template Product.md index 76f2c30e..5092d36c 100644 --- a/00.01 Admin/Templates/Template Product.md +++ b/00.01 Admin/Templates/Template Product.md @@ -11,6 +11,7 @@ Product: Type: Link: Value: +CollapseMetaTable: yes --- @@ -42,11 +43,8 @@ id Save   -```ad-abstract -title: Summary -collapse: open -Product Description -``` +> [!summary]+ +> Product Description   diff --git a/00.01 Admin/Templates/Template Server.md b/00.01 Admin/Templates/Template Server.md index 1bf7f7de..98cd02e8 100644 --- a/00.01 Admin/Templates/Template Server.md +++ b/00.01 Admin/Templates/Template Server.md @@ -23,6 +23,7 @@ Disk: Type: UsedSpace: TimeStamp: +CollapseMetaTable: yes --- @@ -54,11 +55,8 @@ id Save   -```ad-abstract -title: Summary -collapse: open -Product Description -``` +> [!summary]+ +> Product Description   diff --git a/00.01 Admin/Templates/Template Source.md b/00.01 Admin/Templates/Template Source.md index d146646a..886e292e 100644 --- a/00.01 Admin/Templates/Template Source.md +++ b/00.01 Admin/Templates/Template Source.md @@ -13,6 +13,7 @@ Source: Author: Published: Link: +CollapseMetaTable: yes --- @@ -44,11 +45,8 @@ id Save   -```ad-abstract -title: Summary -collapse: open -Source Description -``` +> [!summary]+ +> Source Description   diff --git a/00.01 Admin/Templates/Template Task.md b/00.01 Admin/Templates/Template Task.md index 354571ea..127f89fb 100644 --- a/00.01 Admin/Templates/Template Task.md +++ b/00.01 Admin/Templates/Template Task.md @@ -54,11 +54,8 @@ id Save   -```ad-abstract -title: Summary -collapse: open -Loret ipsum -``` +> [!summary]+ +> Loret ipsum   diff --git a/00.01 Admin/Templates/Template Travel.md b/00.01 Admin/Templates/Template Travel.md index f002fb22..21c247cc 100644 --- a/00.01 Admin/Templates/Template Travel.md +++ b/00.01 Admin/Templates/Template Travel.md @@ -14,6 +14,7 @@ Travel: Budget: BestSeason: DepartureDate: +CollapseMetaTable: yes --- @@ -45,11 +46,8 @@ id Save   -```ad-abstract -title: Summary -collapse: open -Product Description -``` +> [!summary]+ +> Product Description   diff --git a/00.01 Admin/Templates/Template Wine.md b/00.01 Admin/Templates/Template Wine.md index d9b3ca71..e7bc9107 100644 --- a/00.01 Admin/Templates/Template Wine.md +++ b/00.01 Admin/Templates/Template Wine.md @@ -41,11 +41,8 @@ id Save   -```ad-abstract -title: Summary -collapse: open -Description -``` +> [!summary]+ +> Description   diff --git a/00.01 Admin/Test sheet.md b/00.01 Admin/Test sheet.md index bea1ec64..b6a41da1 100644 --- a/00.01 Admin/Test sheet.md +++ b/00.01 Admin/Test sheet.md @@ -22,14 +22,27 @@ await dv.io.load(dv.page("02.02 Paris/Abri")) > Command line test > ``` -not found: ☀️ 🌡️-7°C 🌬️↙3km/h - -not found: ☀️ 🌡️-7°C 🌬️↙3km/h Syntax Description +> [!seealso] +> Test + +> [!success] +> Reteet + +> [!missing] +> 3 + +> [!email] +> 4 + +> [!credentials] +> 5 + + - [ ] to-do - [/] incomplete diff --git a/00.03 News/Moral Panics Come and Go. Sex Bracelet Hysteria Is Forever..md b/00.03 News/Moral Panics Come and Go. Sex Bracelet Hysteria Is Forever..md index 050a5729..a03ef58c 100644 --- a/00.03 News/Moral Panics Come and Go. Sex Bracelet Hysteria Is Forever..md +++ b/00.03 News/Moral Panics Come and Go. Sex Bracelet Hysteria Is Forever..md @@ -12,7 +12,7 @@ CollapseMetaTable: Yes --- Parent:: [[@News|News]] -Read:: No +Read:: [[2022-08-09]] --- diff --git a/00.03 News/Sam Taggart’s Hard Sell.md b/00.03 News/Sam Taggart’s Hard Sell.md index 8ac3cc1c..648448ee 100644 --- a/00.03 News/Sam Taggart’s Hard Sell.md +++ b/00.03 News/Sam Taggart’s Hard Sell.md @@ -12,7 +12,7 @@ CollapseMetaTable: Yes --- Parent:: [[@News|News]] -Read:: No +Read:: [[2022-08-11]] --- diff --git a/00.03 News/Seven years of sex abuse How Mormon officials let it happen.md b/00.03 News/Seven years of sex abuse How Mormon officials let it happen.md index 21595618..91ab3a9c 100644 --- a/00.03 News/Seven years of sex abuse How Mormon officials let it happen.md +++ b/00.03 News/Seven years of sex abuse How Mormon officials let it happen.md @@ -12,7 +12,7 @@ CollapseMetaTable: Yes --- Parent:: [[@News|News]] -Read:: No +Read:: [[2022-08-09]] --- diff --git a/00.03 News/The Most Surveilled Place in America.md b/00.03 News/The Most Surveilled Place in America.md index a1bab08c..bc37c011 100644 --- a/00.03 News/The Most Surveilled Place in America.md +++ b/00.03 News/The Most Surveilled Place in America.md @@ -12,7 +12,7 @@ CollapseMetaTable: Yes --- Parent:: [[@News|News]] -Read:: No +Read:: [[2022-08-09]] --- diff --git a/00.03 News/While Britain burns, the Tories are … fiddling with themselves again Marina Hyde.md b/00.03 News/While Britain burns, the Tories are … fiddling with themselves again Marina Hyde.md index 0c79bdf6..928700c3 100644 --- a/00.03 News/While Britain burns, the Tories are … fiddling with themselves again Marina Hyde.md +++ b/00.03 News/While Britain burns, the Tories are … fiddling with themselves again Marina Hyde.md @@ -12,7 +12,7 @@ CollapseMetaTable: Yes --- Parent:: [[@News|News]] -Read:: No +Read:: [[2022-08-10]] --- diff --git a/00.03 News/Why Putting Solar Canopies on Parking Lots Is a Smart Green Move.md b/00.03 News/Why Putting Solar Canopies on Parking Lots Is a Smart Green Move.md index 0ffa350a..1373649a 100644 --- a/00.03 News/Why Putting Solar Canopies on Parking Lots Is a Smart Green Move.md +++ b/00.03 News/Why Putting Solar Canopies on Parking Lots Is a Smart Green Move.md @@ -12,7 +12,7 @@ CollapseMetaTable: Yes --- Parent:: [[@News|News]] -Read:: No +Read:: [[2022-08-08]] --- diff --git a/01.02 Home/@Main Dashboard.md b/01.02 Home/@Main Dashboard.md index facdb03a..ecdf6e9a 100644 --- a/01.02 Home/@Main Dashboard.md +++ b/01.02 Home/@Main Dashboard.md @@ -107,11 +107,8 @@ dv.span(`   -```ad-abstract -title: Summary -collapse: open -This space is the main dashboard of my vault. -``` +> [!summary]+ +> This space is the main dashboard of my vault.   diff --git a/01.02 Home/Household.md b/01.02 Home/Household.md index 385575d9..e9896410 100644 --- a/01.02 Home/Household.md +++ b/01.02 Home/Household.md @@ -86,7 +86,8 @@ This section on different household obligations. - [x] [[Household]]: *Paper* recycling collection 🔁 every 2 weeks on Tuesday 📅 2022-02-15 ✅ 2022-02-14 - [x] [[Household]]: *Paper* recycling collection 🔁 every 2 weeks on Tuesday 📅 2022-02-01 ✅ 2022-01-31 - [x] [[Household]]: *Paper* recycling collection 🔁 every 2 weeks on Tuesday 📅 2022-01-18 ✅ 2022-01-17 -- [ ] ♻ [[Household]]: *Cardboard* recycling collection 🔁 every 2 weeks on Tuesday 📅 2022-08-09 +- [ ] ♻ [[Household]]: *Cardboard* recycling collection 🔁 every 2 weeks on Tuesday 📅 2022-08-23 +- [x] ♻ [[Household]]: *Cardboard* recycling collection 🔁 every 2 weeks on Tuesday 📅 2022-08-09 ✅ 2022-08-08 - [x] ♻ [[Household]]: *Cardboard* recycling collection 🔁 every 2 weeks on Tuesday 📅 2022-07-26 ✅ 2022-07-25 - [x] ♻ [[Household]]: *Cardboard* recycling collection 🔁 every 2 weeks on Tuesday 📅 2022-07-12 ✅ 2022-07-10 - [x] ♻ [[Household]]: *Cardboard* recycling collection 🔁 every 2 weeks on Tuesday 📅 2022-06-28 ✅ 2022-06-27 @@ -121,7 +122,7 @@ This section on different household obligations. - [x] 🛎 🧻 REMINDER [[Household]]: check need for toilet paper 🔁 every week 📅 2022-06-13 ✅ 2022-06-10 - [x] 🛎 🧻 REMINDER [[Household]]: check need for toilet paper 🔁 every week 📅 2022-06-06 ✅ 2022-06-07 - [x] 🛎 🧻 REMINDER [[Household]]: check need for toilet paper 🔁 every week 📅 2022-05-30 ✅ 2022-05-29 -- [ ] :bed: [[Household]] Change bedsheets 🔁 every 2 weeks on Saturday 📅 2022-08-13 +- [ ] :bed: [[Household]] Change bedsheets %%done_del%% 🔁 every 2 weeks on Saturday 📅 2022-08-13 - [x] :bed: [[Household]] Change bedsheets 🔁 every 2 weeks on Saturday 📅 2022-07-30 ✅ 2022-07-29 - [x] :bed: [[Household]] Change bedsheets 🔁 every 2 weeks on Saturday 📅 2022-07-16 ✅ 2022-07-17 - [x] :bed: [[Household]] Change bedsheets 🔁 every 2 weeks on Saturday 📅 2022-07-02 ✅ 2022-07-02 diff --git a/05.02 Networks/Configuring UFW.md b/05.02 Networks/Configuring UFW.md index 01770b17..2455308e 100644 --- a/05.02 Networks/Configuring UFW.md +++ b/05.02 Networks/Configuring UFW.md @@ -237,7 +237,7 @@ sudo bash /etc/addip4ban/addip4ban.sh #### Ban List Tasks -- [ ] 🖥 [[Selfhosting]], [[Configuring UFW|Firewall]] Get IP addresses caught by Postfix 🔁 every week on Saturday 📅 2022-08-13 +- [ ] 🖥 [[Selfhosting]], [[Configuring UFW|Firewall]] Get IP addresses caught by Postfix %%done_del%% 🔁 every week on Saturday 📅 2022-08-13 - [x] 🖥 [[Selfhosting]], [[Configuring UFW|Firewall]] Get IP addresses caught by Postfix 🔁 every week on Saturday 📅 2022-08-06 ✅ 2022-08-05 - [x] 🖥 [[Selfhosting]], [[Configuring UFW|Firewall]] Get IP addresses caught by Postfix 🔁 every week on Saturday 📅 2022-07-30 ✅ 2022-07-29 - [x] 🖥 [[Selfhosting]], [[Configuring UFW|Firewall]] Get IP addresses caught by Postfix 🔁 every week on Saturday 📅 2022-07-23 ✅ 2022-07-22 diff --git a/05.02 Networks/Selfhosting.md b/05.02 Networks/Selfhosting.md index 0c61eaa4..103df1a7 100644 --- a/05.02 Networks/Selfhosting.md +++ b/05.02 Networks/Selfhosting.md @@ -33,11 +33,9 @@ id Save   -```ad-abstract -title: Summary -collapse: open -This note explores self-hosting through its infrastructure and associated services. -``` +> [!summary]+ +> This note explores self-hosting through its infrastructure and associated services. +   @@ -63,10 +61,8 @@ This section sums up required infrastructure for self-hosting online services. An option is to look at a **Virtual Private Server** (VPS) service. This also solves the issue of the access to the Internet, that is more and more advised to not come from a home connection. -```ad-tip -title: Tip -A good aggregator for low-cost VPS [here](https://lowendbox.com) -``` +> [!tip] +> A good aggregator for low-cost VPS [here](https://lowendbox.com) Otherwise, **physical hardware** include: @@ -96,19 +92,15 @@ More and more literature point that a home Internet connection may not be the mo #### Domain [[#^Top|TOP]] -```ad-info -title: privacy-friendly domain manager -[Njalla](https://njal.la/) -``` +> [!info] Privacy-friendly domain manager +> [Njalla](https://njal.la/) Domain management is important for several reasons: email and email routine can only be defined once per domain. As such, email services (self-hosting, email aliasing) need to be run on separate domains. For self-hosting, the folllowing domain will be used: **mfxm.fr** -```ad-warning -title: Warning -Sub-domains to be defined with **webhost**. -``` +> [!warning] +> Sub-domains to be defined with **webhost**.   @@ -120,11 +112,10 @@ Security is paramount at the points of connection to the server. SSH protocols a ##### RSA Key [[#^Top|TOP]] -```ad-info -title: Documentation -[SSH Key Tutorial](https://www.linode.com/docs/guides/use-public-key-authentication-with-ssh/) + +> [!info] Documentation +> [SSH Key Tutorial](https://www.linode.com/docs/guides/use-public-key-authentication-with-ssh/) [SSH Key Tutorial 2](https://upcloud.com/community/tutorials/use-ssh-keys-authentication/) -``` All documentation to implement such control can be found [[VPS Console Dialogue#Securing Server access|here]]. @@ -132,10 +123,8 @@ All documentation to implement such control can be found [[VPS Console Dialogue# ##### VPN -```ad-info -title: Documentation -[SSH VPN](https://openvpn.net/community-resources/how-to/) -``` +> [!info] Documentation +> [SSH VPN](https://openvpn.net/community-resources/how-to/) Not tested. @@ -145,20 +134,17 @@ Not tested. Additional measures can be found below and are in majority described [[VPS Console Dialogue#Editing the Server's SSH config|here]]. -```ad-info -title: Documentation -[Securing SSH](https://www.redhat.com/sysadmin/eight-ways-secure-ssh) -``` +> [!info] Documentation +> [Securing SSH](https://www.redhat.com/sysadmin/eight-ways-secure-ssh)   #### Continuity & backups [[#^Top|TOP]] -```ad-info -title: Documentation -[Local backup](https://blog.ssdnodes.com/blog/vps-backups-simple-overthinking/) + +> [!info] Documentation +> [Local backup](https://blog.ssdnodes.com/blog/vps-backups-simple-overthinking/) [Hot Copy](https://programmerbear.com/how-to-backup-your-entire-server-or-vps-while-its-running-using-linux-hot-copy/) -``` Backups are managed through the **tar** command and dispatched over the network with **rclone**. Instructions can be found [[VPS Console Dialogue#Backing up a server|here]]. @@ -166,12 +152,10 @@ Backups are managed through the **tar** command and dispatched over the network #### Server Monitoring [[#^Top|TOP]] -```ad-info -title: Documentation -[Monit](https://mmonit.com/) +> [!info] Documentation +> [Monit](https://mmonit.com/) [Performance Co-Pilot](https://pcp.io/) [Nagios](https://nagios.org) -``` Monitoring is implemented through a free and open-source tool called [[Configuring Monit|monit]]. @@ -190,12 +174,10 @@ Other Apps include: [[#^Top|TOP]]   -```ad-tip -title: Considerations to start -[Tutorial](https://cyberhost.uk/getting-started/) +> [!tip] Considerations to start +> [Tutorial](https://cyberhost.uk/getting-started/) [Caddy tutorial](https://cyberhost.uk/caddy-setup/) [Nginx Proxy Manager tutorial](https://cyberhost.uk/npm-setup/) -``` In essence, to run multiple services on the same hardware, a few basic steps need to be taken to ensure that each service runs properly. @@ -237,42 +219,35 @@ Email service can be fully built but has many components to it: server, database 2. [Mail-in-a-Box](https://mailinabox.email/) 3. [Docker-mailserver](https://hub.docker.com/r/tvial/docker-mailserver/) which is command-line-only and to be built more extensively than the two other alternatives - -```ad-info -title: Documentation -[Reddit Documentation](https://reddit.com/r/selfhosted/comments/6h88qf/on_selfhosted_mail_servers/) - -[Tutorial](https://github.com/ajgon/self-hosted-mailserver/blob/master/docs/nsa-proof-your-e-mail-in-2-hours.md) -``` +> [!info] Documentation +> [Reddit Documentation](https://reddit.com/r/selfhosted/comments/6h88qf/on_selfhosted_mail_servers/) +> [Tutorial](https://github.com/ajgon/self-hosted-mailserver/blob/master/docs/nsa-proof-your-e-mail-in-2-hours.md)   #### [[Server Alias|Email alias]] service [[#^Top|TOP]] -```ad-info -title: Documentation -[Tutorial](https://github.com/simple-login/app) -``` + +> [!info] Documentation +> [Tutorial](https://github.com/simple-login/app) +   #### Instant Messenging [[#^Top|TOP]] -```ad-info -title: Documentation -[[Element]] -``` + +> [!info] Documentation +> [[Element]]   #### Website -```ad-info -title: CMS -Open source CMS solution: [The world’s fastest framework for building websites | Hugo](https://gohugo.io/) -Or [Jekyll • Simple, blog-aware, static sites | Transform your plain text into static websites and blogs](https://jekyllrb.com/) -Or [Eleventy, a simpler static site generator.](https://www.11ty.dev/) -``` +> [!info] CMS +> Open source CMS solution: [The world’s fastest framework for building websites | Hugo](https://gohugo.io/) +> Or [Jekyll • Simple, blog-aware, static sites | Transform your plain text into static websites and blogs](https://jekyllrb.com/) +> Or [Eleventy, a simpler static site generator.](https://www.11ty.dev/)   @@ -286,15 +261,11 @@ Through Wordpres with [Thirsty Affiliates](https://thirstyaffiliates.com): free [[#^Top|TOP]] ##### Photos -```ad-info -title: Photoprism -Self-hosted photo management solution: [here](https://photoprism.app/) -``` +> [!info] Photoprism +> Self-hosted photo management solution: [here](https://photoprism.app/) -```ad-info -title: Piwigo -[Website](https://piwigo.org/) -``` +> [!info] Piwigo +> [Website](https://piwigo.org/)   @@ -316,11 +287,8 @@ Database: MySQL, MariaDB, Postgres |------|---------- | **AdGuard** | *none* - -```ad-info -title: VPS ideas -[MikroVPS - FR](https://my.mikrovps.net/cart.php?a=checkout&gid=34&language=English&pid=584&promocode=LEB2021LXC50&utm_source=lowendbox&utm_medium=display&utm_campaign=lbpromo2021) -``` +> [!info] VPS Ideas +> [Website](https://piwigo.org/) [[#^Top|TOP]] diff --git a/05.02 Networks/VPS Console Dialogue.md b/05.02 Networks/VPS Console Dialogue.md index 4394ae32..ad9af427 100644 --- a/05.02 Networks/VPS Console Dialogue.md +++ b/05.02 Networks/VPS Console Dialogue.md @@ -31,11 +31,8 @@ id Save   -```ad-abstract -title: Summary -collapse: open -A quick note to use command-line to interact with VPS. -``` +> [!summary]+ +> A quick note to use command-line to interact with VPS.   @@ -53,11 +50,8 @@ style: number   -```ad-abstract -title: Summary -collapse: open -Simple commands to start using a Virtual Private Server. -``` +> [!summary]+ +> Simple commands to start using a Virtual Private Server.   diff --git a/06.02 Investments/@Investment Task master.md b/06.02 Investments/@Investment Task master.md index f35ee3e0..b95cf4a8 100644 --- a/06.02 Investments/@Investment Task master.md +++ b/06.02 Investments/@Investment Task master.md @@ -109,17 +109,16 @@ taskFunc.getPriorityTasks({app, dv, luxon, that:this, theme: "Wealth"}) **[[Crypto Tasks]]** -```ad-task -title: Non recurring -~~~tasks -not done -is not recurring -path includes Crypto Tasks -sort by due -hide backlink -hide task count -~~~ -``` +> [!task] Non recurring +> ```tasks +> not done +>is not recurring +>path includes Crypto Tasks +>sort by due +>hide backlink +>hide task count +>``` + ```ad-task title: Recurring diff --git a/06.02 Investments/Crypto Tasks.md b/06.02 Investments/Crypto Tasks.md index 0cf240da..ae46e71f 100644 --- a/06.02 Investments/Crypto Tasks.md +++ b/06.02 Investments/Crypto Tasks.md @@ -72,42 +72,10 @@ All tasks and to-dos Crypto-related. [[#^Top|TOP]]   -- [ ] 💰[[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-08-12 -- [x] 💰[[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-08-05 ✅ 2022-08-07 -- [x] 💰[[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-07-29 ✅ 2022-07-29 -- [x] 💰[[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-07-22 ✅ 2022-07-22 -- [x] 💰[[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-07-15 ✅ 2022-07-15 -- [x] 💰[[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-07-08 ✅ 2022-07-09 -- [x] 💰[[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-07-01 ✅ 2022-07-01 -- [x] 💰[[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-06-24 ✅ 2022-06-24 -- [x] 💰[[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-06-17 ✅ 2022-06-18 -- [x] 💰[[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-06-10 ✅ 2022-06-10 -- [x] 💰[[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-06-03 ✅ 2022-06-04 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-05-27 ✅ 2022-05-27 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-05-20 ✅ 2022-05-20 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-05-13 ✅ 2022-05-14 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-05-06 ✅ 2022-05-06 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-04-29 ✅ 2022-04-29 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-04-22 ✅ 2022-04-22 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-04-15 ✅ 2022-04-15 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-04-08 ✅ 2022-04-08 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-04-01 ✅ 2022-04-01 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-03-25 ✅ 2022-03-25 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-03-18 ✅ 2022-03-18 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-03-11 ✅ 2022-03-12 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-03-04 ✅ 2022-03-05 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-02-25 ✅ 2022-02-25 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-02-18 ✅ 2022-02-18 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-02-12 ✅ 2022-02-11 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-02-11 ✅ 2022-02-11 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-02-04 ✅ 2022-02-04 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-01-29 ✅ 2022-01-28 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-01-28 ✅ 2022-01-28 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-01-22 ✅ 2022-01-21 -- [x] [[Crypto Tasks#internet alerts|monitor Crypto news and publications]] 🔁 every week on Friday 📅 2022-01-21 ✅ 2022-01-21 -- [ ] Vote for [[EOS]] block producers 🔁 every month on the 1st Tuesday -- [ ] Check [[Nimbus]] earnings 🔁 every month on the 2nd Monday -- [ ] Find staking for [[Aragon]] +- [ ] 💰[[Crypto Tasks#internet alerts|monitor Crypto news and publications]] %%done_del%% 🔁 every week on Friday 📅 2022-08-12 +- [ ] Vote for [[EOS]] block producers %%done_del%% 🔁 every month on the 1st Tuesday 📅 2022-08-16 +- [ ] Check [[Nimbus]] earnings %%done_del%% 🔁 every month on the 2nd Monday 📅 2022-08-15 +- [ ] Find staking for [[Aragon]] 📅 2022-09-30   diff --git a/06.02 Investments/Equity Tasks.md b/06.02 Investments/Equity Tasks.md index f26f51ad..d365d573 100644 --- a/06.02 Investments/Equity Tasks.md +++ b/06.02 Investments/Equity Tasks.md @@ -72,40 +72,7 @@ Note summarising all tasks and to-dos for Listed Equity investments. [[#^Top|TOP]]   -- [ ] 💰[[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-08-12 -- [x] 💰[[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-08-05 ✅ 2022-08-07 -- [x] 💰[[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-07-29 ✅ 2022-07-29 -- [x] 💰[[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-07-22 ✅ 2022-07-22 -- [x] 💰[[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-07-15 ✅ 2022-07-15 -- [x] 💰[[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-07-08 ✅ 2022-07-09 -- [x] 💰[[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-07-01 ✅ 2022-07-01 -- [x] 💰[[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-06-24 ✅ 2022-06-24 -- [x] 💰[[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-06-17 ✅ 2022-06-18 -- [x] 💰[[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-06-10 ✅ 2022-06-10 -- [x] 💰[[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-06-03 ✅ 2022-06-04 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-05-27 ✅ 2022-05-27 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-05-20 ✅ 2022-05-20 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-05-13 ✅ 2022-05-14 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-05-06 ✅ 2022-05-06 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-04-29 ✅ 2022-04-29 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-04-22 ✅ 2022-04-22 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-04-15 ✅ 2022-04-15 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-04-08 ✅ 2022-04-08 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-04-01 ✅ 2022-04-01 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-03-25 ✅ 2022-03-25 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-03-18 ✅ 2022-03-18 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-03-11 ✅ 2022-03-12 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-03-04 ✅ 2022-03-05 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-02-25 ✅ 2022-02-25 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-02-19 ✅ 2022-02-18 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-02-18 ✅ 2022-02-18 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-02-12 ✅ 2022-02-11 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-02-11 ✅ 2022-02-11 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-02-04 ✅ 2022-02-04 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-01-29 ✅ 2022-01-28 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-01-28 ✅ 2022-01-28 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-01-22 ✅ 2022-01-21 -- [x] [[Equity Tasks#internet alerts|monitor Equity news and publications]] 🔁 every week on Friday 📅 2022-01-21 ✅ 2022-01-21 +- [ ] 💰[[Equity Tasks#internet alerts|monitor Equity news and publications]] %%done_del%% 🔁 every week on Friday 📅 2022-08-12   diff --git a/06.02 Investments/VC Tasks.md b/06.02 Investments/VC Tasks.md index 39dd933a..40348f11 100644 --- a/06.02 Investments/VC Tasks.md +++ b/06.02 Investments/VC Tasks.md @@ -72,40 +72,8 @@ Tasks and to-dos for VC investments. [[#^Top|TOP]]   -- [ ] 💰[[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-08-12 -- [x] 💰[[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-08-05 ✅ 2022-08-07 -- [x] 💰[[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-07-29 ✅ 2022-07-29 -- [x] 💰[[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-07-22 ✅ 2022-07-22 -- [x] 💰[[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-07-15 ✅ 2022-07-15 -- [x] 💰[[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-07-08 ✅ 2022-07-09 -- [x] 💰[[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-07-01 ✅ 2022-07-01 -- [x] 💰[[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-06-24 ✅ 2022-06-24 -- [x] 💰[[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-06-17 ✅ 2022-06-18 -- [x] 💰[[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-06-10 ✅ 2022-06-10 -- [x] 💰[[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-06-03 ✅ 2022-06-04 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-05-27 ✅ 2022-05-27 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-05-20 ✅ 2022-05-20 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-05-13 ✅ 2022-05-14 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-05-06 ✅ 2022-05-06 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-04-29 ✅ 2022-04-29 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-04-22 ✅ 2022-04-22 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-04-15 ✅ 2022-04-15 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-04-08 ✅ 2022-04-08 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-04-01 ✅ 2022-04-01 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-03-25 ✅ 2022-03-25 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-03-18 ✅ 2022-03-18 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-03-11 ✅ 2022-03-12 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-03-04 ✅ 2022-03-05 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-02-25 ✅ 2022-02-25 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-02-18 ✅ 2022-02-18 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-02-12 ✅ 2022-02-11 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-02-11 ✅ 2022-02-11 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-02-04 ✅ 2022-02-04 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-01-29 ✅ 2022-01-28 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-01-28 ✅ 2022-01-28 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-01-22 ✅ 2022-01-21 -- [x] [[VC Tasks#internet alerts|monitor VC news and publications]] 🔁 every week on Friday 📅 2022-01-21 ✅ 2022-01-21 -- [ ] Integrate 'Current Valuations' in note +- [ ] 💰[[VC Tasks#internet alerts|monitor VC news and publications]] %%done_del%% 🔁 every week on Friday 📅 2022-08-12 +- [x] :bar_chart: [[VC Tasks]] Integrate 'Current Valuations' in note 📅 2022-08-16 ✅ 2022-08-10   diff --git a/archive.md b/archive.md new file mode 100644 index 00000000..e69de29b