{"version":3,"file":"form-layout.es.js","sources":["../src/assets/witkac.png","../node_modules/@witkac/utils/dist/methods/arrayAvg.js","../node_modules/@witkac/utils/dist/methods/arrayDistinct.js","../node_modules/@witkac/utils/dist/methods/arrayDistinctItem.js","../node_modules/@witkac/utils/dist/methods/arrayIncludesAll.js","../node_modules/@witkac/utils/dist/methods/arrayMax.js","../node_modules/@witkac/utils/dist/methods/arrayMin.js","../node_modules/@witkac/utils/dist/methods/arraySum.js","../node_modules/ms/index.js","../node_modules/debug/src/common.js","../node_modules/debug/src/browser.js","../node_modules/@witkac/utils/dist/methods/createDebug.js","../node_modules/@witkac/utils/dist/methods/dateParse.js","../node_modules/@witkac/utils/dist/methods/numberFormatPad.js","../node_modules/@witkac/utils/dist/methods/dateTimeFormat.js","../node_modules/@witkac/utils/dist/methods/dateAdd.js","../node_modules/@witkac/utils/dist/methods/timeSpan.js","../node_modules/@witkac/utils/dist/methods/dateDiff.js","../node_modules/@witkac/utils/dist/methods/dateFormat.js","../node_modules/@witkac/utils/dist/methods/dateFromPesel.js","../node_modules/@witkac/utils/dist/methods/dateIsLeapYear.js","../node_modules/@witkac/utils/dist/methods/datePart.js","../node_modules/@witkac/utils/dist/methods/dateListMonths.js","../node_modules/@witkac/utils/dist/methods/dateListYears.js","../node_modules/@witkac/utils/dist/methods/dateNow.js","../node_modules/@witkac/utils/dist/methods/dateSet.js","../node_modules/@witkac/utils/dist/methods/dateToday.js","../node_modules/@witkac/utils/dist/methods/deepMerge.js","../node_modules/@witkac/utils/dist/methods/fileToBase64.js","../node_modules/@witkac/utils/dist/methods/generateGuid.js","../node_modules/@witkac/utils/dist/methods/generateIban.js","../node_modules/@witkac/utils/dist/methods/generateId.js","../node_modules/@witkac/utils/dist/methods/generatePesel.js","../node_modules/@witkac/utils/dist/methods/getPath.js","../node_modules/@witkac/utils/dist/methods/ibanFormat.js","../node_modules/@witkac/utils/dist/methods/interpolate.js","../__vite-browser-external","../node_modules/@witkac/utils/dist/methods/iterateFileByLine.js","../node_modules/@witkac/utils/dist/methods/numberToWords.js","../node_modules/@witkac/utils/dist/methods/listNumberFormat.js","../node_modules/@witkac/utils/dist/methods/nullDefault.js","../node_modules/@witkac/utils/dist/methods/numberRound.js","../node_modules/@witkac/utils/dist/methods/numberFormat.js","../node_modules/@witkac/utils/dist/methods/numberFormatMoney.js","../node_modules/@witkac/utils/dist/methods/numberFormatSpace.js","../node_modules/@witkac/utils/dist/methods/numberHasValue.js","../node_modules/@witkac/utils/dist/methods/numberListNext.js","../node_modules/@witkac/utils/dist/methods/numberPercent.js","../node_modules/@witkac/utils/dist/methods/numberToWordsMoney.js","../node_modules/@witkac/utils/dist/methods/objectDeepCopy.js","../node_modules/@witkac/utils/dist/methods/randomInt.js","../node_modules/@witkac/utils/dist/methods/setPath.js","../node_modules/@witkac/utils/dist/methods/stringCheck.js","../node_modules/@witkac/utils/dist/methods/stringReverse.js","../node_modules/@witkac/utils/dist/methods/stringTrim.js","../node_modules/@witkac/utils/dist/methods/timeFormat.js","../node_modules/@witkac/utils/dist/methods/tryParseBoolean.js","../node_modules/@witkac/utils/dist/methods/tryParseDate.js","../node_modules/@witkac/utils/dist/methods/tryParseFloat.js","../node_modules/@witkac/utils/dist/methods/tryParseInt.js","../node_modules/@witkac/utils/dist/index.js","../src/utils/confirm/confirm.ts","../src/services/confirm.service.ts","../src/components/confirm/Confirm.vue","../src/components/Layout.vue","../node_modules/reflect-metadata/Reflect.js","../node_modules/@witkac/jschema/dist/JSchema.es.js","../src/composables/sections.ts","../src/composables/form.ts"],"sourcesContent":["export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMoAAABJCAYAAAELRolIAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA+dpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjQtMDktMDlUMTQ6MDE6NTQrMDI6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDI0LTA5LTA5VDE0OjA0OjM1KzAyOjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDI0LTA5LTA5VDE0OjA0OjM1KzAyOjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpBRTYxNDJCQTZFQTMxMUVGQTcxQ0NGRUY1M0EwRUFCNCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpBRTYxNDJCQjZFQTMxMUVGQTcxQ0NGRUY1M0EwRUFCNCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjpp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\"","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.arrayAvg = void 0;\n/**\n * średnia wartośc z tablicy\n * @param array tablica do sumowania\n * @param prop pole w wierszu podlegające sumowaniu, można pominąć\n */\nfunction arrayAvg(array, prop) {\n if (prop) {\n return array.reduce((a, b) => a[prop] + b[prop], 0) / array.length;\n }\n else {\n return array.reduce((a, b) => a + b, 0) / array.length;\n }\n}\nexports.arrayAvg = arrayAvg;\n//# sourceMappingURL=arrayAvg.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.arrayDistinct = void 0;\n/**\n * unikalne wartości z tablicy\n * @param array tablica do sumowania\n * @param prop zwracane pole z wiersza tablicy\n */\nfunction arrayDistinct(array, prop) {\n const $result = [];\n const $distinct = {};\n if (prop) {\n for (let i = 0; i < array.length; i++) {\n const $v = array[i][prop];\n if ($distinct[$v] === undefined) {\n $result.push($v);\n $distinct[$v] = i;\n }\n }\n }\n else {\n for (let i = 0; i < array.length; i++) {\n if ($distinct[array[i]] === undefined) {\n $result.push(array[i]);\n $distinct[array[i]] = i;\n }\n }\n }\n return $result;\n}\nexports.arrayDistinct = arrayDistinct;\n//# sourceMappingURL=arrayDistinct.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.arrayDistinctItem = void 0;\n/**\n * unikalne wiersze z tablicy\n * @param array tablica do sumowania\n * @param prop pole do określenia unikalności wiersza\n */\nfunction arrayDistinctItem(array, prop) {\n const $result = [];\n const $distinct = {};\n if (prop) {\n for (let i = 0; i < array.length; i++) {\n const $v = array[i][prop];\n if ($distinct[$v] === undefined) {\n $result.push(array[i]);\n $distinct[$v] = i;\n }\n }\n }\n else {\n for (let i = 0; i < array.length; i++) {\n if ($distinct[array[i]] === undefined) {\n $result.push(array[i]);\n $distinct[array[i]] = i;\n }\n }\n }\n return $result;\n}\nexports.arrayDistinctItem = arrayDistinctItem;\n//# sourceMappingURL=arrayDistinctItem.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.arrayIncludesAll = void 0;\nfunction arrayIncludesAll(arr, requiredArr) {\n if (!Array.isArray(arr) || !Array.isArray(requiredArr)) {\n return false;\n }\n for (const element of requiredArr) {\n if (!arr.includes(element)) {\n return false;\n }\n }\n return true;\n}\nexports.arrayIncludesAll = arrayIncludesAll;\n//# sourceMappingURL=arrayIncludesAll.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.arrayMax = void 0;\n/**\n * zwraca maksymalną wartość\n * @param values tablica wartości\n * @param prop sprawdzane property\n */\nfunction arrayMax(values, prop) {\n let result = values[0];\n let i = values.length;\n if (prop) {\n while (--i > 0) {\n const $v = values[i][prop];\n if ($v > result) {\n result = $v;\n }\n }\n }\n else {\n while (--i > 0) {\n if (values[i] > result) {\n result = values[i];\n }\n }\n }\n return result;\n}\nexports.arrayMax = arrayMax;\n//# sourceMappingURL=arrayMax.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.arrayMin = void 0;\n/**\n * zwraca minimalną wartość\n * @param values tablica wartości\n * @param prop sprawdzane property\n */\nfunction arrayMin(values, prop) {\n let result = values[0];\n let i = values.length;\n if (prop) {\n while (--i > 0) {\n const $v = values[i][prop];\n if ($v < result) {\n result = $v;\n }\n }\n }\n else {\n while (--i > 0) {\n if (values[i] < result) {\n result = values[i];\n }\n }\n }\n return result;\n}\nexports.arrayMin = arrayMin;\n//# sourceMappingURL=arrayMin.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.arraySum = void 0;\n/**\n * sumuje wartości w tablicy\n * @param array tablica do sumowania\n * @param prop pole w wierszu podlegające sumowaniu, można pominąć\n */\nfunction arraySum(array, prop) {\n if (prop) {\n return array.reduce((a, b) => a[prop] + b[prop], 0);\n }\n else {\n return array.reduce((a, b) => a + b, 0);\n }\n}\nexports.arraySum = arraySum;\n//# sourceMappingURL=arraySum.js.map","/**\n * Helpers.\n */\n\nvar s = 1000;\nvar m = s * 60;\nvar h = m * 60;\nvar d = h * 24;\nvar w = d * 7;\nvar y = d * 365.25;\n\n/**\n * Parse or format the given `val`.\n *\n * Options:\n *\n * - `long` verbose formatting [false]\n *\n * @param {String|Number} val\n * @param {Object} [options]\n * @throws {Error} throw an error if val is not a non-empty string or a number\n * @return {String|Number}\n * @api public\n */\n\nmodule.exports = function (val, options) {\n options = options || {};\n var type = typeof val;\n if (type === 'string' && val.length > 0) {\n return parse(val);\n } else if (type === 'number' && isFinite(val)) {\n return options.long ? fmtLong(val) : fmtShort(val);\n }\n throw new Error(\n 'val is not a non-empty string or a valid number. val=' +\n JSON.stringify(val)\n );\n};\n\n/**\n * Parse the given `str` and return milliseconds.\n *\n * @param {String} str\n * @return {Number}\n * @api private\n */\n\nfunction parse(str) {\n str = String(str);\n if (str.length > 100) {\n return;\n }\n var match = /^(-?(?:\\d+)?\\.?\\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(\n str\n );\n if (!match) {\n return;\n }\n var n = parseFloat(match[1]);\n var type = (match[2] || 'ms').toLowerCase();\n switch (type) {\n case 'years':\n case 'year':\n case 'yrs':\n case 'yr':\n case 'y':\n return n * y;\n case 'weeks':\n case 'week':\n case 'w':\n return n * w;\n case 'days':\n case 'day':\n case 'd':\n return n * d;\n case 'hours':\n case 'hour':\n case 'hrs':\n case 'hr':\n case 'h':\n return n * h;\n case 'minutes':\n case 'minute':\n case 'mins':\n case 'min':\n case 'm':\n return n * m;\n case 'seconds':\n case 'second':\n case 'secs':\n case 'sec':\n case 's':\n return n * s;\n case 'milliseconds':\n case 'millisecond':\n case 'msecs':\n case 'msec':\n case 'ms':\n return n;\n default:\n return undefined;\n }\n}\n\n/**\n * Short format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtShort(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return Math.round(ms / d) + 'd';\n }\n if (msAbs >= h) {\n return Math.round(ms / h) + 'h';\n }\n if (msAbs >= m) {\n return Math.round(ms / m) + 'm';\n }\n if (msAbs >= s) {\n return Math.round(ms / s) + 's';\n }\n return ms + 'ms';\n}\n\n/**\n * Long format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtLong(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return plural(ms, msAbs, d, 'day');\n }\n if (msAbs >= h) {\n return plural(ms, msAbs, h, 'hour');\n }\n if (msAbs >= m) {\n return plural(ms, msAbs, m, 'minute');\n }\n if (msAbs >= s) {\n return plural(ms, msAbs, s, 'second');\n }\n return ms + ' ms';\n}\n\n/**\n * Pluralization helper.\n */\n\nfunction plural(ms, msAbs, n, name) {\n var isPlural = msAbs >= n * 1.5;\n return Math.round(ms / n) + ' ' + name + (isPlural ? 's' : '');\n}\n","\n/**\n * This is the common logic for both the Node.js and web browser\n * implementations of `debug()`.\n */\n\nfunction setup(env) {\n\tcreateDebug.debug = createDebug;\n\tcreateDebug.default = createDebug;\n\tcreateDebug.coerce = coerce;\n\tcreateDebug.disable = disable;\n\tcreateDebug.enable = enable;\n\tcreateDebug.enabled = enabled;\n\tcreateDebug.humanize = require('ms');\n\tcreateDebug.destroy = destroy;\n\n\tObject.keys(env).forEach(key => {\n\t\tcreateDebug[key] = env[key];\n\t});\n\n\t/**\n\t* The currently active debug mode names, and names to skip.\n\t*/\n\n\tcreateDebug.names = [];\n\tcreateDebug.skips = [];\n\n\t/**\n\t* Map of special \"%n\" handling functions, for the debug \"format\" argument.\n\t*\n\t* Valid key names are a single, lower or upper-case letter, i.e. \"n\" and \"N\".\n\t*/\n\tcreateDebug.formatters = {};\n\n\t/**\n\t* Selects a color for a debug namespace\n\t* @param {String} namespace The namespace string for the debug instance to be colored\n\t* @return {Number|String} An ANSI color code for the given namespace\n\t* @api private\n\t*/\n\tfunction selectColor(namespace) {\n\t\tlet hash = 0;\n\n\t\tfor (let i = 0; i < namespace.length; i++) {\n\t\t\thash = ((hash << 5) - hash) + namespace.charCodeAt(i);\n\t\t\thash |= 0; // Convert to 32bit integer\n\t\t}\n\n\t\treturn createDebug.colors[Math.abs(hash) % createDebug.colors.length];\n\t}\n\tcreateDebug.selectColor = selectColor;\n\n\t/**\n\t* Create a debugger with the given `namespace`.\n\t*\n\t* @param {String} namespace\n\t* @return {Function}\n\t* @api public\n\t*/\n\tfunction createDebug(namespace) {\n\t\tlet prevTime;\n\t\tlet enableOverride = null;\n\t\tlet namespacesCache;\n\t\tlet enabledCache;\n\n\t\tfunction debug(...args) {\n\t\t\t// Disabled?\n\t\t\tif (!debug.enabled) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst self = debug;\n\n\t\t\t// Set `diff` timestamp\n\t\t\tconst curr = Number(new Date());\n\t\t\tconst ms = curr - (prevTime || curr);\n\t\t\tself.diff = ms;\n\t\t\tself.prev = prevTime;\n\t\t\tself.curr = curr;\n\t\t\tprevTime = curr;\n\n\t\t\targs[0] = createDebug.coerce(args[0]);\n\n\t\t\tif (typeof args[0] !== 'string') {\n\t\t\t\t// Anything else let's inspect with %O\n\t\t\t\targs.unshift('%O');\n\t\t\t}\n\n\t\t\t// Apply any `formatters` transformations\n\t\t\tlet index = 0;\n\t\t\targs[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => {\n\t\t\t\t// If we encounter an escaped % then don't increase the array index\n\t\t\t\tif (match === '%%') {\n\t\t\t\t\treturn '%';\n\t\t\t\t}\n\t\t\t\tindex++;\n\t\t\t\tconst formatter = createDebug.formatters[format];\n\t\t\t\tif (typeof formatter === 'function') {\n\t\t\t\t\tconst val = args[index];\n\t\t\t\t\tmatch = formatter.call(self, val);\n\n\t\t\t\t\t// Now we need to remove `args[index]` since it's inlined in the `format`\n\t\t\t\t\targs.splice(index, 1);\n\t\t\t\t\tindex--;\n\t\t\t\t}\n\t\t\t\treturn match;\n\t\t\t});\n\n\t\t\t// Apply env-specific formatting (colors, etc.)\n\t\t\tcreateDebug.formatArgs.call(self, args);\n\n\t\t\tconst logFn = self.log || createDebug.log;\n\t\t\tlogFn.apply(self, args);\n\t\t}\n\n\t\tdebug.namespace = namespace;\n\t\tdebug.useColors = createDebug.useColors();\n\t\tdebug.color = createDebug.selectColor(namespace);\n\t\tdebug.extend = extend;\n\t\tdebug.destroy = createDebug.destroy; // XXX Temporary. Will be removed in the next major release.\n\n\t\tObject.defineProperty(debug, 'enabled', {\n\t\t\tenumerable: true,\n\t\t\tconfigurable: false,\n\t\t\tget: () => {\n\t\t\t\tif (enableOverride !== null) {\n\t\t\t\t\treturn enableOverride;\n\t\t\t\t}\n\t\t\t\tif (namespacesCache !== createDebug.namespaces) {\n\t\t\t\t\tnamespacesCache = createDebug.namespaces;\n\t\t\t\t\tenabledCache = createDebug.enabled(namespace);\n\t\t\t\t}\n\n\t\t\t\treturn enabledCache;\n\t\t\t},\n\t\t\tset: v => {\n\t\t\t\tenableOverride = v;\n\t\t\t}\n\t\t});\n\n\t\t// Env-specific initialization logic for debug instances\n\t\tif (typeof createDebug.init === 'function') {\n\t\t\tcreateDebug.init(debug);\n\t\t}\n\n\t\treturn debug;\n\t}\n\n\tfunction extend(namespace, delimiter) {\n\t\tconst newDebug = createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace);\n\t\tnewDebug.log = this.log;\n\t\treturn newDebug;\n\t}\n\n\t/**\n\t* Enables a debug mode by namespaces. This can include modes\n\t* separated by a colon and wildcards.\n\t*\n\t* @param {String} namespaces\n\t* @api public\n\t*/\n\tfunction enable(namespaces) {\n\t\tcreateDebug.save(namespaces);\n\t\tcreateDebug.namespaces = namespaces;\n\n\t\tcreateDebug.names = [];\n\t\tcreateDebug.skips = [];\n\n\t\tconst split = (typeof namespaces === 'string' ? namespaces : '')\n\t\t\t.trim()\n\t\t\t.replace(' ', ',')\n\t\t\t.split(',')\n\t\t\t.filter(Boolean);\n\n\t\tfor (const ns of split) {\n\t\t\tif (ns[0] === '-') {\n\t\t\t\tcreateDebug.skips.push(ns.slice(1));\n\t\t\t} else {\n\t\t\t\tcreateDebug.names.push(ns);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the given string matches a namespace template, honoring\n\t * asterisks as wildcards.\n\t *\n\t * @param {String} search\n\t * @param {String} template\n\t * @return {Boolean}\n\t */\n\tfunction matchesTemplate(search, template) {\n\t\tlet searchIndex = 0;\n\t\tlet templateIndex = 0;\n\t\tlet starIndex = -1;\n\t\tlet matchIndex = 0;\n\n\t\twhile (searchIndex < search.length) {\n\t\t\tif (templateIndex < template.length && (template[templateIndex] === search[searchIndex] || template[templateIndex] === '*')) {\n\t\t\t\t// Match character or proceed with wildcard\n\t\t\t\tif (template[templateIndex] === '*') {\n\t\t\t\t\tstarIndex = templateIndex;\n\t\t\t\t\tmatchIndex = searchIndex;\n\t\t\t\t\ttemplateIndex++; // Skip the '*'\n\t\t\t\t} else {\n\t\t\t\t\tsearchIndex++;\n\t\t\t\t\ttemplateIndex++;\n\t\t\t\t}\n\t\t\t} else if (starIndex !== -1) { // eslint-disable-line no-negated-condition\n\t\t\t\t// Backtrack to the last '*' and try to match more characters\n\t\t\t\ttemplateIndex = starIndex + 1;\n\t\t\t\tmatchIndex++;\n\t\t\t\tsearchIndex = matchIndex;\n\t\t\t} else {\n\t\t\t\treturn false; // No match\n\t\t\t}\n\t\t}\n\n\t\t// Handle trailing '*' in template\n\t\twhile (templateIndex < template.length && template[templateIndex] === '*') {\n\t\t\ttemplateIndex++;\n\t\t}\n\n\t\treturn templateIndex === template.length;\n\t}\n\n\t/**\n\t* Disable debug output.\n\t*\n\t* @return {String} namespaces\n\t* @api public\n\t*/\n\tfunction disable() {\n\t\tconst namespaces = [\n\t\t\t...createDebug.names,\n\t\t\t...createDebug.skips.map(namespace => '-' + namespace)\n\t\t].join(',');\n\t\tcreateDebug.enable('');\n\t\treturn namespaces;\n\t}\n\n\t/**\n\t* Returns true if the given mode name is enabled, false otherwise.\n\t*\n\t* @param {String} name\n\t* @return {Boolean}\n\t* @api public\n\t*/\n\tfunction enabled(name) {\n\t\tfor (const skip of createDebug.skips) {\n\t\t\tif (matchesTemplate(name, skip)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\tfor (const ns of createDebug.names) {\n\t\t\tif (matchesTemplate(name, ns)) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t* Coerce `val`.\n\t*\n\t* @param {Mixed} val\n\t* @return {Mixed}\n\t* @api private\n\t*/\n\tfunction coerce(val) {\n\t\tif (val instanceof Error) {\n\t\t\treturn val.stack || val.message;\n\t\t}\n\t\treturn val;\n\t}\n\n\t/**\n\t* XXX DO NOT USE. This is a temporary stub function.\n\t* XXX It WILL be removed in the next major release.\n\t*/\n\tfunction destroy() {\n\t\tconsole.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');\n\t}\n\n\tcreateDebug.enable(createDebug.load());\n\n\treturn createDebug;\n}\n\nmodule.exports = setup;\n","/* eslint-env browser */\n\n/**\n * This is the web browser implementation of `debug()`.\n */\n\nexports.formatArgs = formatArgs;\nexports.save = save;\nexports.load = load;\nexports.useColors = useColors;\nexports.storage = localstorage();\nexports.destroy = (() => {\n\tlet warned = false;\n\n\treturn () => {\n\t\tif (!warned) {\n\t\t\twarned = true;\n\t\t\tconsole.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');\n\t\t}\n\t};\n})();\n\n/**\n * Colors.\n */\n\nexports.colors = [\n\t'#0000CC',\n\t'#0000FF',\n\t'#0033CC',\n\t'#0033FF',\n\t'#0066CC',\n\t'#0066FF',\n\t'#0099CC',\n\t'#0099FF',\n\t'#00CC00',\n\t'#00CC33',\n\t'#00CC66',\n\t'#00CC99',\n\t'#00CCCC',\n\t'#00CCFF',\n\t'#3300CC',\n\t'#3300FF',\n\t'#3333CC',\n\t'#3333FF',\n\t'#3366CC',\n\t'#3366FF',\n\t'#3399CC',\n\t'#3399FF',\n\t'#33CC00',\n\t'#33CC33',\n\t'#33CC66',\n\t'#33CC99',\n\t'#33CCCC',\n\t'#33CCFF',\n\t'#6600CC',\n\t'#6600FF',\n\t'#6633CC',\n\t'#6633FF',\n\t'#66CC00',\n\t'#66CC33',\n\t'#9900CC',\n\t'#9900FF',\n\t'#9933CC',\n\t'#9933FF',\n\t'#99CC00',\n\t'#99CC33',\n\t'#CC0000',\n\t'#CC0033',\n\t'#CC0066',\n\t'#CC0099',\n\t'#CC00CC',\n\t'#CC00FF',\n\t'#CC3300',\n\t'#CC3333',\n\t'#CC3366',\n\t'#CC3399',\n\t'#CC33CC',\n\t'#CC33FF',\n\t'#CC6600',\n\t'#CC6633',\n\t'#CC9900',\n\t'#CC9933',\n\t'#CCCC00',\n\t'#CCCC33',\n\t'#FF0000',\n\t'#FF0033',\n\t'#FF0066',\n\t'#FF0099',\n\t'#FF00CC',\n\t'#FF00FF',\n\t'#FF3300',\n\t'#FF3333',\n\t'#FF3366',\n\t'#FF3399',\n\t'#FF33CC',\n\t'#FF33FF',\n\t'#FF6600',\n\t'#FF6633',\n\t'#FF9900',\n\t'#FF9933',\n\t'#FFCC00',\n\t'#FFCC33'\n];\n\n/**\n * Currently only WebKit-based Web Inspectors, Firefox >= v31,\n * and the Firebug extension (any Firefox version) are known\n * to support \"%c\" CSS customizations.\n *\n * TODO: add a `localStorage` variable to explicitly enable/disable colors\n */\n\n// eslint-disable-next-line complexity\nfunction useColors() {\n\t// NB: In an Electron preload script, document will be defined but not fully\n\t// initialized. Since we know we're in Chrome, we'll just detect this case\n\t// explicitly\n\tif (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) {\n\t\treturn true;\n\t}\n\n\t// Internet Explorer and Edge do not support colors.\n\tif (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\\/(\\d+)/)) {\n\t\treturn false;\n\t}\n\n\tlet m;\n\n\t// Is webkit? http://stackoverflow.com/a/16459606/376773\n\t// document is undefined in react-native: https://github.com/facebook/react-native/pull/1632\n\t// eslint-disable-next-line no-return-assign\n\treturn (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) ||\n\t\t// Is firebug? http://stackoverflow.com/a/398120/376773\n\t\t(typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) ||\n\t\t// Is firefox >= v31?\n\t\t// https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages\n\t\t(typeof navigator !== 'undefined' && navigator.userAgent && (m = navigator.userAgent.toLowerCase().match(/firefox\\/(\\d+)/)) && parseInt(m[1], 10) >= 31) ||\n\t\t// Double check webkit in userAgent just in case we are in a worker\n\t\t(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\\/(\\d+)/));\n}\n\n/**\n * Colorize log arguments if enabled.\n *\n * @api public\n */\n\nfunction formatArgs(args) {\n\targs[0] = (this.useColors ? '%c' : '') +\n\t\tthis.namespace +\n\t\t(this.useColors ? ' %c' : ' ') +\n\t\targs[0] +\n\t\t(this.useColors ? '%c ' : ' ') +\n\t\t'+' + module.exports.humanize(this.diff);\n\n\tif (!this.useColors) {\n\t\treturn;\n\t}\n\n\tconst c = 'color: ' + this.color;\n\targs.splice(1, 0, c, 'color: inherit');\n\n\t// The final \"%c\" is somewhat tricky, because there could be other\n\t// arguments passed either before or after the %c, so we need to\n\t// figure out the correct index to insert the CSS into\n\tlet index = 0;\n\tlet lastC = 0;\n\targs[0].replace(/%[a-zA-Z%]/g, match => {\n\t\tif (match === '%%') {\n\t\t\treturn;\n\t\t}\n\t\tindex++;\n\t\tif (match === '%c') {\n\t\t\t// We only are interested in the *last* %c\n\t\t\t// (the user may have provided their own)\n\t\t\tlastC = index;\n\t\t}\n\t});\n\n\targs.splice(lastC, 0, c);\n}\n\n/**\n * Invokes `console.debug()` when available.\n * No-op when `console.debug` is not a \"function\".\n * If `console.debug` is not available, falls back\n * to `console.log`.\n *\n * @api public\n */\nexports.log = console.debug || console.log || (() => {});\n\n/**\n * Save `namespaces`.\n *\n * @param {String} namespaces\n * @api private\n */\nfunction save(namespaces) {\n\ttry {\n\t\tif (namespaces) {\n\t\t\texports.storage.setItem('debug', namespaces);\n\t\t} else {\n\t\t\texports.storage.removeItem('debug');\n\t\t}\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n}\n\n/**\n * Load `namespaces`.\n *\n * @return {String} returns the previously persisted debug modes\n * @api private\n */\nfunction load() {\n\tlet r;\n\ttry {\n\t\tr = exports.storage.getItem('debug');\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n\n\t// If debug isn't set in LS, and we're in Electron, try to load $DEBUG\n\tif (!r && typeof process !== 'undefined' && 'env' in process) {\n\t\tr = process.env.DEBUG;\n\t}\n\n\treturn r;\n}\n\n/**\n * Localstorage attempts to return the localstorage.\n *\n * This is necessary because safari throws\n * when a user disables cookies/localstorage\n * and you attempt to access it.\n *\n * @return {LocalStorage}\n * @api private\n */\n\nfunction localstorage() {\n\ttry {\n\t\t// TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context\n\t\t// The Browser also has localStorage in the global context.\n\t\treturn localStorage;\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n}\n\nmodule.exports = require('./common')(exports);\n\nconst {formatters} = module.exports;\n\n/**\n * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.\n */\n\nformatters.j = function (v) {\n\ttry {\n\t\treturn JSON.stringify(v);\n\t} catch (error) {\n\t\treturn '[UnexpectedJSONParseError]: ' + error.message;\n\t}\n};\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createDebug = void 0;\nconst debug_1 = __importDefault(require(\"debug\"));\n/**\n * Tworzy instancję debugera\n *\n * @export\n * @param {string} namespace\n * @returns {debug.Debugger}\n */\nfunction createDebug(namespace) {\n return (0, debug_1.default)('witkac:' + namespace);\n}\nexports.createDebug = createDebug;\n//# sourceMappingURL=createDebug.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.dateParse = void 0;\n/**\n * Parsowanie tekstowego formatu daty do Date\n * @param date data w formacie YYYY-MM-DD lub YYYY-MM-DD HH:mm:ss\n */\nfunction dateParse(date) {\n if (date.length === 10) {\n return new Date(date + ' 00:00:00');\n }\n else {\n return new Date(date);\n }\n}\nexports.dateParse = dateParse;\n//# sourceMappingURL=dateParse.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.numberFormatPad = void 0;\n/**\n * dodaje widoące zera do liczby\n * @param value liczba\n * @param minLength minimalna, wynikowa długośc tekstu, domyslnie 2\n */\nfunction numberFormatPad(value, minLength = 2) {\n let result = '' + value;\n while (result.length < minLength) {\n result = '0' + result;\n }\n return result;\n}\nexports.numberFormatPad = numberFormatPad;\n//# sourceMappingURL=numberFormatPad.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.formatDateFunction = exports.dayShort = exports.dayNames = exports.monthShort = exports.monthNames = exports.dateTimeFormat = void 0;\nconst numberFormatPad_1 = require(\"./numberFormatPad\");\n/**\n * formatuje datę i czas do formatu yyyy-MM-dd HH:mm:ss\n * @param dt data typu Date\n */\nfunction dateTimeFormat(dt, format) {\n return exports.formatDateFunction[format || 'yyyy-MM-dd HH:mm:ss'](dt);\n}\nexports.dateTimeFormat = dateTimeFormat;\nexports.monthNames = [\n 'styczeń',\n 'luty',\n 'marzec',\n 'kwiecień',\n 'maj',\n 'czerwiec',\n 'lipiec',\n 'sierpień',\n 'wrzesień',\n 'październik',\n 'listopad',\n 'grudzień'\n];\nexports.monthShort = [\n 'sty',\n 'lut',\n 'mar',\n 'kwi',\n 'maj',\n 'cze',\n 'lip',\n 'sie',\n 'wrz',\n 'paź',\n 'lis',\n 'gru'\n];\nexports.dayNames = ['poniedziałek', 'wtorek', 'środa', 'czwartek', 'piątek', 'sobota', 'niedziela'];\nconst dayNames2 = ['niedziela', 'poniedziałek', 'wtorek', 'środa', 'czwartek', 'piątek', 'sobota'];\nexports.dayShort = ['Pn', 'Wt', 'Śr', 'Cz', 'Pt', 'So', 'N'];\nconst dayShort2 = ['Pn', 'Wt', 'Śr', 'Cz', 'Pt', 'So', 'N'];\nexports.formatDateFunction = {\n 'dd.MM.yyyy': (dt) => (0, numberFormatPad_1.numberFormatPad)(dt.getDate()) + '.' + (0, numberFormatPad_1.numberFormatPad)(dt.getMonth() + 1) + '.' + dt.getFullYear(),\n 'yyyy-MM-dd': (dt) => dt.getFullYear() + '-' + (0, numberFormatPad_1.numberFormatPad)(dt.getMonth() + 1) + '-' + (0, numberFormatPad_1.numberFormatPad)(dt.getDate()),\n 'MMMM yyyy': (dt) => `${exports.monthNames[dt.getMonth()]} ${dt.getFullYear()}`,\n 'MMM yyyy': (dt) => `${exports.monthShort[dt.getMonth()]} ${dt.getFullYear()}`,\n dddd: (dt) => dayNames2[dt.getDay()],\n ddd: (dt) => dayShort2[dt.getDay()],\n dd: (dt) => (0, numberFormatPad_1.numberFormatPad)(dt.getDate()),\n d: (dt) => dt.getDate().toString(),\n MMMM: (dt) => exports.monthNames[dt.getMonth()],\n MMM: (dt) => exports.monthShort[dt.getMonth()],\n MM: (dt) => (0, numberFormatPad_1.numberFormatPad)(dt.getMonth() + 1),\n M: (dt) => (dt.getMonth() + 1).toString(),\n HH: (dt) => (0, numberFormatPad_1.numberFormatPad)(dt.getHours()),\n H: (dt) => dt.getHours().toString(),\n mm: (dt) => (0, numberFormatPad_1.numberFormatPad)(dt.getMinutes()),\n m: (dt) => dt.getMinutes().toString(),\n ss: (dt) => (0, numberFormatPad_1.numberFormatPad)(dt.getSeconds()),\n s: (dt) => dt.getSeconds().toString(),\n 'HH:mm:ss': (dt) => `${(0, numberFormatPad_1.numberFormatPad)(dt.getHours())}:${(0, numberFormatPad_1.numberFormatPad)(dt.getMinutes())}:${(0, numberFormatPad_1.numberFormatPad)(dt.getSeconds())}`,\n 'dd.MM.yyyy HH:mm:ss': (dt) => exports.formatDateFunction['dd.MM.yyyy'](dt) + ' ' + exports.formatDateFunction['HH:mm:ss'](dt),\n 'yyyy-MM-dd HH:mm:ss': (dt) => exports.formatDateFunction['yyyy-MM-dd'](dt) + ' ' + exports.formatDateFunction['HH:mm:ss'](dt)\n};\n//# sourceMappingURL=dateTimeFormat.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.dateAdd = void 0;\nconst dateParse_1 = require(\"./dateParse\");\nconst dateTimeFormat_1 = require(\"./dateTimeFormat\");\n/**\n * dodaje określoną liczbę jednostek do daty\n * @param date data wejściowa\n * @param part częśc daty do zmiany y M d h m s\n * @param value o lie zwiększyć\n */\nfunction dateAdd(date, part, value) {\n const inputDate = (0, dateParse_1.dateParse)(date);\n const result = new Date(inputDate);\n switch (part) {\n case 'y':\n case 'yy':\n case 'yyyy':\n case 'year':\n result.setFullYear(inputDate.getFullYear() + value);\n break;\n case 'M':\n case 'MM':\n case 'month':\n result.setMonth(inputDate.getMonth() + value);\n break;\n case 'd':\n case 'dd':\n case 'day':\n result.setDate(inputDate.getDate() + value);\n break;\n case 'h':\n case 'hh':\n case 'hour':\n result.setHours(inputDate.getHours() + value);\n break;\n case 'm':\n case 'mm':\n case 'minute':\n result.setMinutes(inputDate.getMinutes() + value);\n break;\n case 's':\n case 'ss':\n case 'second':\n result.setSeconds(inputDate.getSeconds() + value);\n break;\n }\n if (date.length === 10) {\n return (0, dateTimeFormat_1.dateTimeFormat)(result).replace(' 00:00:00', '');\n }\n else {\n return (0, dateTimeFormat_1.dateTimeFormat)(result);\n }\n}\nexports.dateAdd = dateAdd;\n//# sourceMappingURL=dateAdd.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TimeSpan = void 0;\nconst dateParse_1 = require(\"./dateParse\");\nconst numberFormatPad_1 = require(\"./numberFormatPad\");\n/**\n * klasa reprezentująca różnicę czasu\n *\n * @export\n * @class TimeSpan\n */\nclass TimeSpan {\n static diff(lateDate, earlyDate) {\n try {\n const dt1 = (0, dateParse_1.dateParse)(lateDate);\n const dt2 = (0, dateParse_1.dateParse)(earlyDate);\n const offset = dt1.getTimezoneOffset() - dt2.getTimezoneOffset(); // zeby pomiedzy datami z czasu zimowego i letniego było dokładnie 24 h\n return new TimeSpan(dt1.getTime() - dt2.getTime() - offset * 60 * 1000, dt1, dt2);\n }\n catch (err) {\n if (process.env.NODE_ENV === 'development') {\n console.error(`[DEBUG] invalid TimeSpan(\"${lateDate}\",\"${earlyDate}\")`, err);\n debugger;\n }\n return new TimeSpan(0);\n }\n }\n ms;\n earlyDate;\n lateDate;\n constructor(ms, lateDate, earlyDate) {\n this.ms = ms;\n this.lateDate = lateDate;\n this.earlyDate = earlyDate;\n }\n /**\n * całkowita liczba milisekund\n */\n get totalMiliseconds() {\n return this.ms;\n }\n /**\n * ilośc milisekund po odjęciu sekund, minut, godzin i dni\n */\n get miliseconds() {\n return this.ms % 1000;\n }\n /**\n * całkowita liczba sekund = liczba milisekund /1000\n */\n get totalSeconds() {\n return this.ms / 1000;\n }\n /**\n * liczba sekund po odjęciu minut, godzin i dni\n */\n get seconds() {\n // return this.ms % (1000 * 60);\n return Math.trunc((this.totalMinutes % 1) * 60);\n }\n /**\n * całkowita liczba minut\n */\n get totalMinutes() {\n return this.ms / 60000 /* 1000 * 60 */;\n }\n /**\n * liczba minut po odjęciu godzin i dni\n */\n get minutes() {\n return Math.trunc((this.totalHours % 1) * 60);\n }\n /**\n * całkowita liczba godzin\n */\n get totalHours() {\n return this.ms / 3600000 /* 1000 * 60 * 60 */;\n }\n /**\n * liczba godzn po odjęciu liczby dni\n */\n get hours() {\n return Math.trunc((this.totalDays % 1) * 24);\n }\n /**\n * całkowita liczba dni\n */\n get totalDays() {\n return this.ms / 86400000 /*1000 * 60 * 60 * 24*/;\n }\n /**\n * liczba dni, wartośc całkowita\n */\n get days() {\n return Math.trunc(this.totalDays);\n }\n /**\n * liczba miesięcy, wartośc całkowita\n */\n get months() {\n if (this.earlyDate && this.lateDate) {\n let res = (this.lateDate.getFullYear() - this.earlyDate.getFullYear()) * 12;\n res += this.lateDate.getMonth();\n res -= this.earlyDate.getMonth();\n if (res > 0) {\n if (this.lateDate.getDate() < this.earlyDate.getDate()) {\n res--;\n }\n }\n else if (res < 0) {\n if (this.lateDate.getDate() > this.earlyDate.getDate()) {\n res++;\n }\n }\n return res;\n }\n else {\n return Math.trunc(this.days / 30);\n }\n }\n /**\n * liczba lat, wartość całkowita\n */\n get years() {\n if (this.earlyDate && this.lateDate) {\n const date = new Date(this.ms);\n const years = Math.abs(date.getUTCFullYear() - 1970);\n if (this.lateDate < this.earlyDate) {\n return -years;\n }\n return years;\n }\n else {\n return Math.trunc(this.months / 12);\n }\n }\n /**\n * róznica w postaci HH:mm:ss\n */\n toString() {\n return ((0, numberFormatPad_1.numberFormatPad)(Math.trunc(this.totalHours), 2) +\n ':' +\n (0, numberFormatPad_1.numberFormatPad)(this.minutes, 2) +\n ':' +\n (0, numberFormatPad_1.numberFormatPad)(this.seconds, 2));\n }\n}\nexports.TimeSpan = TimeSpan;\n//# sourceMappingURL=timeSpan.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.dateDiff = void 0;\nconst timeSpan_1 = require(\"./timeSpan\");\n/**\n * Oblicza różnicę pomiędzy datami\n * @param lateDate data późniejsza\n * @param earlyDate data wcześniejsza\n */\nfunction dateDiff(lateDate, earlyDate) {\n return timeSpan_1.TimeSpan.diff(lateDate, earlyDate);\n}\nexports.dateDiff = dateDiff;\n//# sourceMappingURL=dateDiff.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.dateFormat = void 0;\nconst dateTimeFormat_1 = require(\"./dateTimeFormat\");\n/**\n * formatuje datę do formatu yyyy-MM-dd\n * @param dt data typu Date\n */\nfunction dateFormat(dt) {\n if (process.env.NODE_ENV !== 'production') {\n console.log('fdata: ' + dt);\n }\n return dateTimeFormat_1.formatDateFunction['yyyy-MM-dd'](dt);\n}\nexports.dateFormat = dateFormat;\n//# sourceMappingURL=dateFormat.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.dateFromPesel = void 0;\nfunction dateFromPesel(pesel) {\n if (!pesel) {\n return;\n }\n const peselArray = [];\n for (let i = 0; i < 11; i++) {\n peselArray[i] = parseInt(pesel.substring(i, i + 1));\n if (isNaN(peselArray[i])) {\n return;\n }\n }\n const weight = [1, 3, 7, 9, 1, 3, 7, 9, 1, 3, 1];\n let sum = 0;\n for (let i = 0; i < 11; i++) {\n sum += weight[i] * peselArray[i];\n }\n if (sum % 10 != 0) {\n return;\n }\n let year = 1900 + peselArray[0] * 10 + peselArray[1];\n if (peselArray[2] >= 2 && peselArray[2] < 8) {\n year += Math.floor(peselArray[2] / 2) * 100;\n }\n if (peselArray[2] >= 8) {\n year -= 100;\n }\n const month = (peselArray[2] % 2) * 10 + peselArray[3];\n const day = peselArray[4] * 10 + peselArray[5];\n return `${year}-${month.toString().padStart(2, '0')}-${day.toString().padStart(2, '0')}`;\n}\nexports.dateFromPesel = dateFromPesel;\n//# sourceMappingURL=dateFromPesel.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isLeapYear = void 0;\n/**\n * czy rok jest przestępny\n *\n * @param {number} year\n * @returns {boolean}\n */\nfunction isLeapYear(year) {\n return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n}\nexports.isLeapYear = isLeapYear;\n//# sourceMappingURL=dateIsLeapYear.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.datePart = void 0;\n/**\n * zwraca liczbę reprezetującą częśc daty\n * @param date data w formacie yyyy-MM-dd HH:mm:ss\n * @param part rok:y,yy,yyy,year;\n * miesiąc:M,MM,month;\n * dzien:d,dd,day;\n * godzina:h,hh,hour;\n * minuta:m,mm,minute;\n * sekunda:s,ss,second;\n */\nfunction datePart(date, part) {\n switch (part) {\n case 'y':\n case 'yy':\n case 'yyyy':\n case 'year':\n return _getInt(date, 0, 4);\n case 'M':\n case 'MM':\n case 'month':\n return _getInt(date, 5, 2);\n case 'd':\n case 'dd':\n case 'day':\n return _getInt(date, 8, 2);\n case 'h':\n case 'hh':\n case 'hour':\n return _getInt(date, 11, 2);\n case 'm':\n case 'mm':\n case 'minute':\n return _getInt(date, 14, 2);\n case 's':\n case 'ss':\n case 'second':\n return _getInt(date, 17, 2);\n default:\n return 0;\n }\n}\nexports.datePart = datePart;\nfunction _getInt(s, start, length) {\n if (start < s.length) {\n return +s.substr(start, length);\n const res = +s.substr(start, length);\n if (!isNaN(res)) {\n return res;\n }\n }\n return 0;\n}\n//# sourceMappingURL=datePart.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.dateListMonths = void 0;\nconst datePart_1 = require(\"./datePart\");\nconst dateTimeFormat_1 = require(\"./dateTimeFormat\");\nconst numberFormatPad_1 = require(\"./numberFormatPad\");\n/**\n * Zwraca tablicę zawierającą listę miesięcy pomiędzy datami\n * @param startDate data początkowa\n * @param endDate data końcowa\n * @param format format, domyślnie MMMM yyyy, czyli \"styczeń 2019\"\n */\nfunction dateListMonths(startDate, endDate, format /* = 'MMMM yyyy'*/) {\n let m1 = (0, datePart_1.datePart)(startDate, 'M') - 1;\n let y1 = (0, datePart_1.datePart)(startDate, 'y');\n const m2 = (0, datePart_1.datePart)(endDate, 'M') - 1;\n const y2 = (0, datePart_1.datePart)(endDate, 'y');\n const result = [];\n let func;\n switch (format) {\n case 'MMMM yyyy':\n func = (m, y) => dateTimeFormat_1.monthNames[m] + ' ' + y;\n break;\n case 'MMM yyyy':\n func = (m, y) => dateTimeFormat_1.monthShort[m] + ' ' + y;\n break;\n case 'MM yyyy':\n func = (m, y) => (0, numberFormatPad_1.numberFormatPad)(m + 1) + ' ' + y;\n break;\n case 'M yyyy':\n func = (m, y) => m + 1 + ' ' + y;\n break;\n case 'MMMM':\n func = (m) => dateTimeFormat_1.monthNames[m];\n break;\n case 'MMM':\n func = (m) => dateTimeFormat_1.monthShort[m];\n break;\n case 'MM':\n func = (m) => (0, numberFormatPad_1.numberFormatPad)(m + 1);\n break;\n case 'M':\n func = (m) => (m + 1).toString();\n break;\n default:\n func = (m, y) => dateTimeFormat_1.monthNames[m] + ' ' + y;\n break;\n }\n while ((m1 <= m2 && y1 === y2) || y1 < y2) {\n result.push(func(m1, y1));\n m1++;\n if (m1 > 11) {\n m1 = 0;\n y1++;\n }\n }\n return result;\n}\nexports.dateListMonths = dateListMonths;\n//# sourceMappingURL=dateListMonths.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.dateListYears = void 0;\nconst datePart_1 = require(\"./datePart\");\n/**\n * Zwraca tablicę zawierającą listę lat pomiędzy datami\n * @param startDate data początkowa\n * @param endDate data końcowa\n */\nfunction dateListYears(startDate, endDate) {\n let y1 = (0, datePart_1.datePart)(startDate, 'y');\n const y2 = (0, datePart_1.datePart)(endDate, 'y');\n const result = [];\n while (y1 <= y2) {\n result.push(y1);\n y1++;\n }\n return result;\n}\nexports.dateListYears = dateListYears;\n//# sourceMappingURL=dateListYears.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.dateNow = void 0;\nconst dateTimeFormat_1 = require(\"./dateTimeFormat\");\n/**\n * aktualna data i czas w formacie yyyy-MM-dd HH:mm:ss\n */\nfunction dateNow() {\n return (0, dateTimeFormat_1.dateTimeFormat)(new Date());\n}\nexports.dateNow = dateNow;\n//# sourceMappingURL=dateNow.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.dateSet = void 0;\nconst dateParse_1 = require(\"./dateParse\");\nconst dateTimeFormat_1 = require(\"./dateTimeFormat\");\n/**\n * dodaje określoną liczbę jednostek do daty\n * @param date data wejściowa\n * @param part częśc daty do zmiany\n * @param value o lie zwiększyć\n */\nfunction dateSet(date, part, value) {\n const inputDate = (0, dateParse_1.dateParse)(date);\n const result = new Date(inputDate);\n switch (part) {\n case 'y':\n case 'yy':\n case 'yyyy':\n case 'year':\n result.setFullYear(value);\n break;\n case 'M':\n case 'MM':\n case 'month':\n result.setMonth(value + 1);\n break;\n case 'd':\n case 'dd':\n case 'day':\n result.setDate(value);\n break;\n case 'h':\n case 'hh':\n case 'hour':\n result.setHours(value);\n break;\n case 'm':\n case 'mm':\n case 'minute':\n result.setMinutes(value);\n break;\n case 's':\n case 'ss':\n case 'second':\n result.setSeconds(value);\n break;\n }\n if (date.length === 10) {\n return (0, dateTimeFormat_1.dateTimeFormat)(result).replace(' 00:00:00', '');\n }\n else {\n return (0, dateTimeFormat_1.dateTimeFormat)(result);\n }\n}\nexports.dateSet = dateSet;\n//# sourceMappingURL=dateSet.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.dateToday = void 0;\nconst dateFormat_1 = require(\"./dateFormat\");\n/**\n * dzisiejsza data w formacie yyyy-MM-dd\n */\nfunction dateToday() {\n return (0, dateFormat_1.dateFormat)(new Date());\n}\nexports.dateToday = dateToday;\n//# sourceMappingURL=dateToday.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.deepMerge = void 0;\n/**\n * Merguje 2 obiekty \"głęboko\"\n *\n * @param {*} dst\n * @param {*} src\n * @returns\n */\nfunction mergeProps(dst, src) {\n for (const key in src) {\n if (!src.hasOwnProperty(key)) {\n continue;\n }\n const element = src[key];\n const dstelement = dst[key];\n if (dstelement === undefined || element === null) {\n dst[key] = element;\n continue;\n }\n if (element === undefined) {\n continue;\n }\n if (Array.isArray(element) && typeof element[0] !== 'object') {\n dst[key] = element;\n }\n else if (typeof element === 'object' && typeof dstelement === 'object') {\n dst[key] = mergeProps(dst[key], element);\n }\n else {\n dst[key] = element;\n }\n }\n return dst;\n}\n/**\n * Merguje listę obiektów \"głęboko\"\n *\n * @export\n * @param {...any[]} jsonList\n * @returns\n */\nfunction deepMerge(...jsonList) {\n if (!jsonList.length) {\n return;\n }\n if (jsonList.length === 1) {\n return jsonList[0];\n }\n const result = Object.assign({}, JSON.parse(JSON.stringify(jsonList.shift())));\n jsonList.forEach((json) => mergeProps(result, json));\n return result;\n}\nexports.deepMerge = deepMerge;\n//# sourceMappingURL=deepMerge.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.fileToBase64 = void 0;\n/**\n * Mapuje plik na base64\n *\n * @export\n * @param {File} file\n * @returns {Promise}\n */\nfunction fileToBase64(file) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onload = () => resolve(reader.result);\n reader.readAsDataURL(file);\n reader.onerror = (error) => reject(error);\n });\n}\nexports.fileToBase64 = fileToBase64;\n//# sourceMappingURL=fileToBase64.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.generateGuid = void 0;\n/**\n * generuje guid w formacie xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\n */\nfunction generateGuid() {\n const g = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx';\n return g.replace(/[xy]/g, (c) => {\n // tslint:disable-next-line:no-bitwise\n const r = (Math.random() * 16) | 0;\n // tslint:disable-next-line:no-bitwise\n const v = c === 'x' ? r : (r & 0x3) | 0x8;\n return v.toString(16);\n });\n}\nexports.generateGuid = generateGuid;\n//# sourceMappingURL=generateGuid.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.generateIban = void 0;\n/**\n * Generuje numer IBAN\n *\n * @export\n * @returns {string}\n */\nfunction generateIban() {\n const ibanBase = `${getBankCodePart()}${getRandomPart()}`;\n const checksum = getChecksum(ibanBase);\n return `${checksum}${ibanBase}`;\n}\nexports.generateIban = generateIban;\nconst BANK_CODES = [\n '10902330',\n '15601081',\n '12402470',\n '10301016',\n '80630001',\n '10301410',\n '12401532',\n '10101023',\n '10100055',\n '10100000',\n '10101140'\n];\n/**\n * Zwraca część kodu banku\n *\n * @returns {string}\n */\nfunction getBankCodePart() {\n return BANK_CODES[Math.floor(Math.random() * BANK_CODES.length)];\n}\n/**\n * Zwraca część losową\n *\n * @returns {string}\n */\nfunction getRandomPart() {\n return new Array(4)\n .fill(undefined)\n .map(() => Math.floor(Math.random() * 10000)\n .toString()\n .padStart(4, '0'))\n .join('');\n}\nconst PL_VALUE = 2521;\n/**\n * Zwraca sumę kontrolną\n *\n * @param {string} ibanBase\n * @returns {string}\n */\nfunction getChecksum(ibanBase) {\n const moduloResult = BigInt(`${ibanBase}${PL_VALUE}00`) % BigInt(97);\n return (98 - parseInt(moduloResult.toString())).toString().padStart(2, '0');\n}\n//# sourceMappingURL=generateIban.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.generateId = void 0;\nlet seed = 1;\n/**\n * Generowanie ID\n *\n * @export\n * @param {string} [prefix='id']\n * @return {string}\n */\nfunction generateId(prefix = 'id') {\n if (!prefix) {\n prefix = 'id';\n }\n return `${prefix}_${seed++}`;\n}\nexports.generateId = generateId;\n//# sourceMappingURL=generateId.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.generatePesel = void 0;\n/**\n * Generuje numer PESEL\n *\n * @export\n * @returns {string}\n */\nfunction generatePesel() {\n const peselBase = `${generateBirthdayPart()}${generateRandomPart()}`;\n const checksum = generateChecksum(peselBase);\n return `${peselBase}${checksum}`;\n}\nexports.generatePesel = generatePesel;\n/**\n * Generuje część z daty urodzin\n *\n * @returns {string}\n */\nfunction generateBirthdayPart() {\n const randomYear = 1950 + Math.floor(Math.random() * 49);\n const randomMonth = Math.floor(Math.random() * 12) + 1;\n const randomDay = Math.floor(Math.random() * 28) + 1;\n return `${randomYear.toString().substring(2)}${randomMonth.toString().padStart(2, '0')}${randomDay\n .toString()\n .padStart(2, '0')}`;\n}\n/**\n * Generuje część losową\n *\n * @returns {string}\n */\nfunction generateRandomPart() {\n const randomNumber = Math.floor(Math.random() * 10000);\n return randomNumber.toString().padStart(4, '0');\n}\nconst WEIGHTS = [1, 3, 7, 9, 1, 3, 7, 9, 1, 3];\n/**\n * Generuje sumę kontrolną\n *\n * @param {string} peselBase\n * @returns {string}\n */\nfunction generateChecksum(peselBase) {\n const sum = WEIGHTS.reduce((total, weight, index) => total + weight * parseInt(peselBase[index]), 0);\n const magicNumber = sum % 10;\n if (magicNumber === 0) {\n return '0';\n }\n return (10 - magicNumber).toString();\n}\n//# sourceMappingURL=generatePesel.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getPath = void 0;\n/**\n * Pobiera element znajdujący się w obiekcie pod daną ścieżką\n *\n * @export\n * @param {object} obj\n * @param {(string | string[])} objectPath\n * @returns {*}\n */\nfunction getPath(obj, objectPath) {\n if (!Array.isArray(objectPath)) {\n objectPath = objectPath.split('.');\n }\n return objectPath.reduce((current, key) => {\n if (!current) {\n return current;\n }\n else if (current instanceof Promise) {\n return current.then((value) => value[key]);\n }\n return current[key];\n }, obj);\n}\nexports.getPath = getPath;\n//# sourceMappingURL=getPath.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ibanFormat = void 0;\nconst EVERY_FOUR_CHARS = /(.{4})(?!$)/g;\nconst NON_ALPHANUM = /[^a-zA-Z0-9]/g;\n/**\n * Formatuje ciąg znaków na IBAN\n *\n * @export\n * @param {string} value poprawna wartość IBAN\n * @param {string} [separator=' ']\n * @return\n */\nfunction ibanFormat(value, separator = ' ') {\n if (!value) {\n return;\n }\n const prepareValue = value.replace(NON_ALPHANUM, '').toUpperCase();\n const prepLength = prepareValue.length % 4;\n const prepend = prepareValue.substring(0, prepLength);\n const rest = prepareValue.substring(prepLength);\n return prepend + separator + rest.replace(EVERY_FOUR_CHARS, '$1' + separator);\n}\nexports.ibanFormat = ibanFormat;\n//# sourceMappingURL=ibanFormat.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.interpolate = void 0;\n/**\n * Interpolacja tekstu\n * przykład użycia `interpolate(\"Test ${test} ${numericValue}\", ['test', 'numericValue'], 'wartość test', 123)\n *\n * @export\n * @param {string} stringToInterpolate\n * @param {string[]} [argNames]\n * @param {...any[]} args\n * @returns {string}\n */\nfunction interpolate(stringToInterpolate, argNames, ...args) {\n return new Function(...(argNames || []), `return \\`${stringToInterpolate}\\``)(...args);\n}\nexports.interpolate = interpolate;\n//# sourceMappingURL=interpolate.js.map","export default {}","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.iterateFileByLine = void 0;\nconst fs_1 = require(\"fs\");\nconst readline_1 = require(\"readline\");\n/**\n * Wykonywanie metody dla każdej linii w pliku\n *\n * @export\n * @param {string} file\n * @param {((line: string) => Promise | void)} task\n * @returns {Promise}\n */\nasync function iterateFileByLine(file, task) {\n const readStream = typeof file === 'string' ? (0, fs_1.createReadStream)(file) : file;\n const readline = (0, readline_1.createInterface)({ input: readStream });\n for await (const line of readline) {\n await task(line);\n }\n}\nexports.iterateFileByLine = iterateFileByLine;\n//# sourceMappingURL=iterateFileByLine.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.numberToWords = void 0;\n// treść jednostek\nconst UNITS = [\n 'zero',\n 'jeden',\n 'dwa',\n 'trzy',\n 'cztery',\n 'pięć',\n 'sześć',\n 'siedem',\n 'osiem',\n 'dziewięć',\n 'dziesięć',\n 'jedenaście',\n 'dwanaście',\n 'trzynaście',\n 'czternaście',\n 'piętnaście',\n 'szesnaście',\n 'siedemnaście',\n 'osiemnaście',\n 'dziewiętnaście'\n];\n// Tablica opisów dziesiątek\nconst TENS = [\n 'dwadzieścia',\n 'trzydzieści',\n 'czterdzieści',\n 'pięćdziesiąt',\n 'sześćdziesiąt',\n 'siedemdziesiąt',\n 'osiemdziesiąt',\n 'dziewięćdziesiąt'\n];\n// Tablica obisów setek\nconst HUNDREDS = [\n '',\n 'sto',\n 'dwieście',\n 'trzysta',\n 'czterysta',\n 'pięćset',\n 'sześćset',\n 'siedemset',\n 'osiemset',\n 'dziewięćset'\n];\n// Dwuwymiarowa tablica tysięcy,milionów,miliarów ...\nconst ORTHER_UNITS = [\n ['tysiąc', 'tysiące', 'tysięcy'],\n ['milion', 'miliony', 'milionów'],\n ['miliard', 'miliardy', 'miliardów'],\n ['bilion', 'biliony', 'bilionów'],\n ['biliard', 'biliardy', 'biliardów'],\n ['trylion', 'tryliony', 'trylionów'],\n ['tryliard', 'tryliardy', 'tryliardów'],\n ['kwadrylion', 'kwadryliony', 'kwadrylionów'],\n ['kwadryliard', 'kwadryliardy', 'kwadryliardów']\n];\n/**\n * Konwersja małych liczb na tekst ()\n *\n * @param {number} value liczba\n * @returns {(string | null)} liczba tekstowo\n */\nfunction smallValueToWords(value) {\n if (value === 0) {\n return null;\n }\n let valueInWords = '';\n // Konwertuj setki.\n const hundreds = Math.floor(value / 100);\n if (hundreds > 0) {\n valueInWords += HUNDREDS[hundreds];\n value -= hundreds * 100;\n }\n // Konwertuj dziesiątki i jedności.\n if (value > 0) {\n if (valueInWords.length > 0) {\n valueInWords += ' ';\n }\n if (value < 20) {\n // Liczby poniżej 20 przekonwertuj na podstawie\n // tablicy jedności.\n valueInWords += UNITS[value];\n }\n else {\n // Większe liczby przekonwertuj łącząc nazwy\n // krotności dziesiątek z nazwami jedności.\n valueInWords += TENS[Math.floor(value / 10) - 2];\n const lastDigit = value % 10;\n if (lastDigit > 0) {\n valueInWords += ' ';\n valueInWords += UNITS[lastDigit];\n }\n }\n }\n return valueInWords;\n}\n/**\n * Obliczenia dla dużych liczb ... i odmiana prawidłowa ich wartości..\n * 2 - D. lm (tysięcy)\n * 1 - M. lm (tysiące)\n * 0 - M. lp (tysiąc)\n *\n * @param {number} value liczba do zamiany\n * @returns {number} indeks w tablicy odmian\n */\nfunction getBigUnitIndex(value) {\n const lastDigit = value % 10;\n if (value / 10 >= 1 && lastDigit === 1) {\n return 2;\n }\n const last2digits = value % 100;\n if ((last2digits >= 10 && (last2digits <= 20 || lastDigit === 0)) || lastDigit > 4) {\n return 2;\n }\n return lastDigit === 1 ? 0 : 1;\n}\n/**\n * wewnętrzna funkcja rekurencyjna zamienijąca liczbę na tekst\n *\n * @param {RefString} valueInWords odwołanie do tekstu który jest tworzony przez funkcję\n * @param {number} value liczba do zamiany\n * @param {number} level która potęga liczby tysiąc jest obsługiwan przez funkcję 0- 0-1000, 1- 1001-1000000 itp\n * @returns {number} liczba która pozostała do zamiany na tekst\n */\nfunction _towordsinternal(valueInWords, value, level) {\n let smallValue = 0;\n const divisor = Math.pow(1000, level + 1);\n let rest = value;\n if (divisor <= value) {\n // Jeśli liczbę da się podzielić przez najbliższą\n // potęgę 1000, kontynuuj rekurencję.\n value = _towordsinternal(valueInWords, value, level + 1);\n const pvalue = value / divisor;\n smallValue = Math.floor(pvalue);\n if (valueInWords.text.length > 0) {\n valueInWords.text += ' ';\n }\n rest = value - smallValue * divisor;\n if (smallValue > 0) {\n // teraz dopisuje jeden, np: jeden tysiąc\n if (smallValue > 1 || valueInWords.text.length > 0 || rest === 0) {\n valueInWords.text += smallValueToWords(smallValue);\n valueInWords.text += ' ';\n }\n }\n if (smallValue > 0) {\n const ulevel = ORTHER_UNITS[level];\n if (ulevel !== undefined) {\n const bindex = getBigUnitIndex(smallValue);\n valueInWords.text += ulevel[bindex];\n }\n }\n }\n return rest;\n}\n/**\n * zamiana liczby całkowitej na tekst\n *\n * @param {number} value liczba całkowita\n * @returns {string} liczba słownie\n */\nfunction _towords(value) {\n if (value === 0) {\n // Zero.\n return UNITS[0];\n }\n const valueInWords = {\n text: ''\n };\n const smallValue = _towordsinternal(valueInWords, value, 0);\n if (smallValue > 0) {\n if (valueInWords.text.length > 0) {\n valueInWords.text += ' ';\n }\n valueInWords.text += smallValueToWords(smallValue);\n }\n return valueInWords.text;\n}\n/**\n * Zamiana liczny na słownie\n *\n * @export\n * @param {number} value liczba do zamiany na słownie\n * @returns {string} liczba słownie\n */\nfunction numberToWords(value) {\n // Generalna funkcja ptzetworzenia zmiennej\n if (value < 0) {\n value = value * -1;\n }\n return _towords(Math.floor(value));\n}\nexports.numberToWords = numberToWords;\n//# sourceMappingURL=numberToWords.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.listNumberFormat = exports.smallRomanValue = exports.bigRomanValue = exports.bigLetterValue = exports.smallLetterValue = void 0;\nconst numberToWords_1 = require(\"./numberToWords\");\n/**\n * cache małych liter\n */\nconst SMALL_LETTERS_CACHE = [];\n/**\n * cache wielkich liter\n */\nconst BIG_LETTERS_CACHE = [];\n/**\n * cache symboli rzymskich, wielkie litery\n */\nconst BIG_ROMANS_CACHE = [];\n/**\n * cache symboli rzymskich, małe litery\n */\nconst SMALL_ROMANS_CACHE = [];\n/**\n * jednostki w zapisie rzymskim, wielkie litery\n */\nconst BIG_ROMANS_UNITS = [\n ['', 'I', 'II', 'III', 'IV', 'V', 'VI', 'VII', 'VIII', 'IX'],\n ['', 'X', 'XX', 'XXX', 'XL', 'L', 'LX', 'LXX', 'LXXX', 'XC'],\n ['', 'C', 'CC', 'CCC', 'CD', 'D', 'DC', 'DCC', 'DCCC', 'CM']\n];\n/**\n * jednostki w zapisie rzymskim, małe litery\n */\nconst SMALL_ROMANS_UNITS = [\n ['', 'i', 'ii', 'iii', 'iv', 'v', 'vi', 'vii', 'viii', 'ix'],\n ['', 'x', 'xx', 'xxx', 'xl', 'l', 'lx', 'lxx', 'lxxx', 'xc'],\n ['', 'c', 'cc', 'ccc', 'cd', 'd', 'dc', 'dcc', 'dccc', 'cm']\n];\n/**\n * uniwersalna funkcja do zamiany liczby na literę\n *\n * @param {number} value wartość\n * @param {number} startAsciiIndex startowy kod ASCII odpowiadający wartości 0\n * @param {string[]} cache cache wyników\n * @returns\n */\nfunction letterValue(value, startAsciiIndex, cache) {\n if (cache[value] !== undefined) {\n return cache[value];\n }\n let result = '';\n if (value > 24) {\n let ivalue = value;\n result = '';\n while (ivalue > 0) {\n const nvalue = ivalue % 24;\n result = String.fromCharCode(nvalue + startAsciiIndex) + result;\n if (ivalue === nvalue) {\n break;\n }\n ivalue = Math.floor(ivalue / 24);\n }\n }\n else {\n result = value ? String.fromCharCode(value + startAsciiIndex) : '';\n }\n return (cache[value] = result);\n}\n/**\n * zamiana liczby na odpowiadającą jej małą literę\n * 1-a, 2-b ... 24-z, 25-aa, 26-ab\n *\n * @export\n * @param {number} value liczba\n * @returns {string} odpowidająca jej wartośc literowa\n */\nfunction smallLetterValue(value) {\n return letterValue(value, 96, SMALL_LETTERS_CACHE);\n}\nexports.smallLetterValue = smallLetterValue;\n/**\n * zamiana liczby na odpowiadającą jej wielką literę\n * 1-A, 2-B ... 24-Z, 25-AA, 26-AB\n *\n * @export\n * @param {number} value liczba\n * @returns {string} odpowidająca jej wartośc literowa\n */\nfunction bigLetterValue(value) {\n return letterValue(value, 64, BIG_LETTERS_CACHE);\n}\nexports.bigLetterValue = bigLetterValue;\n/**\n * uniwersalna funkcja do zamiany liczby na liczbę rzymską\n *\n * @param {number} value liczba\n * @param {string[][]} units tablica jednostek w zapisie rzymskim\n * @param {string[]} cache cache wyników\n * @returns\n */\nfunction romanValue(value, units, cache) {\n if (cache[value] !== undefined) {\n return cache[value];\n }\n let level = 0;\n let tlevel = 10;\n let ivalue = value;\n let result = '';\n while (ivalue > 0) {\n const dvalue = ivalue % tlevel;\n result = units[level][dvalue] + result;\n if (dvalue === ivalue) {\n break;\n }\n ivalue = Math.floor(ivalue / tlevel);\n level++;\n tlevel *= 10;\n }\n return (cache[value] = result);\n}\n/**\n * zmiana liczy na zapis rzymski, wielkimi literami\n * 1-I, 2-II .... 10-X ...\n *\n * @export\n * @param {number} value liczba\n * @returns {string} liczba w zapisie rzymskim\n */\nfunction bigRomanValue(value) {\n return romanValue(value, BIG_ROMANS_UNITS, BIG_ROMANS_CACHE);\n}\nexports.bigRomanValue = bigRomanValue;\n/**\n * zmiana liczy na zapis rzymski, małymi literami\n * 1-i, 2-ii .... 10-x ...\n *\n * @export\n * @param {number} value liczba\n * @returns {string} liczba w zapisie rzymskim\n */\nfunction smallRomanValue(value) {\n return romanValue(value, SMALL_ROMANS_UNITS, SMALL_ROMANS_CACHE);\n}\nexports.smallRomanValue = smallRomanValue;\n/**\n * Formatuje liczbę do tekstu wyświetlanego na liście\n *\n * @export\n * @param {number} value wartośc liczbowa\n * @param {string} [type='1.'] typ formatowania\n * @returns {string} sformatowany tekst\n */\nfunction listNumberFormat(value, type = '1.') {\n switch (type) {\n case '1':\n return value.toString();\n case '1.':\n return value + '.';\n case '1)':\n return value + ')';\n case '(1)':\n return '(' + value + ')';\n case '§':\n case '§ 1':\n return '§ ' + value;\n case '§ 1.':\n return '§ ' + value + '.';\n case 'a':\n return smallLetterValue(value);\n case 'a)':\n return smallLetterValue(value) + ')';\n case 'a.':\n return smallLetterValue(value) + '.';\n case '(a)':\n return '(' + smallLetterValue(value) + ')';\n case 'A':\n return bigLetterValue(value);\n case 'A)':\n return bigLetterValue(value) + ')';\n case 'A.':\n return bigLetterValue(value) + '.';\n case '(A)':\n return '(' + bigLetterValue(value) + ')';\n case 'i':\n return smallRomanValue(value);\n case 'i.':\n return smallRomanValue(value) + '.';\n case 'i)':\n return smallRomanValue(value) + ')';\n case '(i)':\n return '(' + smallRomanValue(value) + ')';\n case 'I':\n return bigRomanValue(value);\n case 'I)':\n return bigRomanValue(value) + ')';\n case 'I.':\n return bigRomanValue(value) + '.';\n case '(I)':\n return '(' + bigRomanValue(value) + ')';\n case 'abc':\n return (0, numberToWords_1.numberToWords)(value);\n case 'abc)':\n return (0, numberToWords_1.numberToWords)(value) + ')';\n case 'abc.':\n return (0, numberToWords_1.numberToWords)(value) + '.';\n default:\n return '*';\n }\n}\nexports.listNumberFormat = listNumberFormat;\n//# sourceMappingURL=listNumberFormat.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.nullDefault = void 0;\n/**\n * sprawdza czy wartośc jest null, jeśli tak to zwraca valueIfNull\n * @param value wartość do sprawdzenia\n * @param valueIfNull co ma zwracać gdy value === null\n */\nfunction nullDefault(value, valueIfNull) {\n return value === null ? valueIfNull : value;\n}\nexports.nullDefault = nullDefault;\n//# sourceMappingURL=nullDefault.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.numberRound = void 0;\nconst precisions = [1, 10, 1e2, 1e3, 1e4, 1e5, 1e6, 1e7, 1e8];\n/**\n * zaokrągla liczbę zmiennoprzecinkową uwzględniając przekłamania JS\n * @param value liczba\n * @param precision do ilu miejsc po przecinku zaokrąglić, domyślnie 2\n */\nfunction numberRound(value, precision = 2) {\n if (value === undefined) {\n return value;\n }\n if (value % 1 === 0) {\n return value;\n }\n else {\n return Math.round(value * precisions[precision] + 0.0000000000001) / precisions[precision];\n }\n}\nexports.numberRound = numberRound;\n//# sourceMappingURL=numberRound.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.numberFormat = void 0;\nconst numberRound_1 = require(\"./numberRound\");\n/**\n * formatuje liczbę zmiennoprzecinkową do polskiego formatu\n * @param value liczba\n * @param precision do ilu miejsc po przecinku zaokrąglić, domyślnie 8\n */\nfunction numberFormat(value, precision = 8) {\n if (value === null) {\n return '';\n }\n if (value % 1 === 0) {\n return value.toString();\n }\n return (0, numberRound_1.numberRound)(value, precision).toString().replace('.', ',');\n}\nexports.numberFormat = numberFormat;\n//# sourceMappingURL=numberFormat.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.numberFormatMoney = void 0;\nconst numberRound_1 = require(\"./numberRound\");\nconst precisions = ['', '.0', '.00', '.000', '.0000', '.00000', '.000000', '.0000000', '.00000000'];\n/**\n * formatuje liczbę zmiennoprzecinkową do polskiego formatu\n * @param value liczba\n * @param forcezeros czy zachować zera ,00\n * @param precision do ilu miejsc po przecinku zaokrąglić, domyślnie 2\n */\nfunction numberFormatMoney(value, forcezeros, precision = 2) {\n if (value === null) {\n return '';\n }\n if (value % 1 === 0) {\n if (forcezeros) {\n return value.toString() + precisions[precision].replace('.', ',');\n }\n else {\n return value.toString();\n }\n }\n const s = (0, numberRound_1.numberRound)(value, precision).toFixed(precision);\n if (forcezeros) {\n return s.replace('.', ',');\n }\n else {\n return s.replace(precisions[precision], '').replace('.', ',');\n }\n}\nexports.numberFormatMoney = numberFormatMoney;\n//# sourceMappingURL=numberFormatMoney.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.numberFormatSpace = void 0;\nconst numberFormatMoney_1 = require(\"./numberFormatMoney\");\n/**\n * formatuje liczbę zmiennoprzecinkową do polskiego formatu\n * @param value liczba\n * @param forcezeros czy zachować zera ,00\n * @param precision do ilu miejsc po przecinku zaokrąglić, domyślnie 2\n */\nfunction numberFormatSpace(value, forcezeros, precision = 2) {\n let ext;\n if (typeof value !== 'string') {\n ext = (0, numberFormatMoney_1.numberFormatMoney)(value, forcezeros, precision);\n }\n else {\n ext = value;\n }\n const parts = ext.split(',');\n let result = '';\n const partsLength = parts[0].length - 1;\n for (let i = 0; i <= partsLength; i++) {\n result = parts[0][partsLength - i] + result;\n if (i < partsLength && (i === 2 || i === 5 || i === 8 || i === 11)) {\n result = ' ' + result;\n }\n }\n if (parts.length > 1) {\n return result + ',' + parts[1];\n }\n else {\n return result;\n }\n}\nexports.numberFormatSpace = numberFormatSpace;\n//# sourceMappingURL=numberFormatSpace.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.numberHasValue = void 0;\n/**\n * Sprawdzenie czy liczba ma wartość\n *\n * @export\n * @param {number} value\n * @return {boolean}\n */\nfunction numberHasValue(value) {\n return !!value || value === 0;\n}\nexports.numberHasValue = numberHasValue;\n//# sourceMappingURL=numberHasValue.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.numberListNext = void 0;\nconst listNumberFormat_1 = require(\"./listNumberFormat\");\n/**\n * domyslne fotmatowania dla określonych poziomów\n */\nconst DEFAULT_TYPE = ['1.', 'a)', 'i.'];\n/**\n * Oblicza następny numer na liście\n *\n * @export\n * @param {number[]} levels lista ostatnich wartości na każdym poziomie zagnieżdzenia\n * @param {number} [level=0] poziom zagnieżdzenia, domyślnie 0\n * @param {string} [type] typ formatowania, domyslnie wyliczany na podstawieni poziomu zagnieżdzenia: 1. -> a) -> i.\n * @param {number} [value] ręczne ustawienie wartości, ma wpływ na dalszą numerację\n * @returns {string} zwraca sformatowy tekst odpowieadający kolejnej wartości\n */\nfunction numberListNext(levels, level = 0, type, value) {\n let result = '';\n if (!type) {\n type = DEFAULT_TYPE[level % 3];\n }\n if (value === undefined) {\n value = (levels[level] || 0) + 1;\n }\n switch (type) {\n case '1.1.':\n case '1.1.1.':\n result = value + '.';\n for (let i = level - 1; i >= 0; i--) {\n result = levels[i] + '.' + result;\n }\n break;\n case '1.1':\n case '1.1.1':\n result = '' + value;\n for (let i = level - 1; i >= 0; i--) {\n result = levels[i] + '.' + result;\n }\n break;\n default:\n result = (0, listNumberFormat_1.listNumberFormat)(value, type);\n }\n levels[level] = value;\n levels.length = level + 1;\n return result;\n}\nexports.numberListNext = numberListNext;\n//# sourceMappingURL=numberListNext.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.numberParecent = void 0;\nconst numberRound_1 = require(\"./numberRound\");\n/**\n * obliczanie wartości procentowej\n * @param value wartość\n * @param totalValue wartośc odpowiadająca 100%\n */\nfunction numberParecent(value, totalValue) {\n if (totalValue === 0) {\n return 0;\n }\n else {\n const result = (value * 100) / totalValue;\n return result < 0 ? 0 : (0, numberRound_1.numberRound)(result, 8);\n }\n}\nexports.numberParecent = numberParecent;\n//# sourceMappingURL=numberPercent.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.numberToWordsMoney = void 0;\nconst numberFormatPad_1 = require(\"./numberFormatPad\");\nconst numberRound_1 = require(\"./numberRound\");\nconst numberToWords_1 = require(\"./numberToWords\");\n/**\n * tekst złotych\n * @param value liczba złotych\n */\nfunction intText(value) {\n if (value === 1) {\n return 'złoty';\n }\n const decValue = value % 100;\n if (decValue >= 5 && decValue <= 20)\n return 'złotych';\n switch (decValue % 10) {\n case 2:\n case 3:\n case 4:\n return 'złote';\n }\n return 'złotych';\n}\n/**\n * tekst groszy\n * @param value liczba groszy\n */\nfunction fracText(value) {\n if (value === 1) {\n return 'grosz';\n }\n const decValue = value % 100;\n if (decValue >= 5 && decValue <= 20)\n return 'groszy';\n switch (decValue % 10) {\n case 2:\n case 3:\n case 4:\n return 'grosze';\n }\n return 'groszy';\n}\n/**\n * Zamiana kwoty na słownie ze słowem złoty/ch\n * @param value kwota do zamiany\n * @param currency co wstawić jako walutę, domyslnie automatycznie dopasowuje odmianę `złoty`\n * @param forceShowGr czy wymusić grosze w przypadku gdy liczba groszy jest równa 0\n * @param showGrWords czy wyświetlać grosze słownie\n */\nfunction numberToWordsMoney(value, currency = '', forceShowGr = false, showGrWords = false) {\n if (value < 0) {\n value = value * -1;\n }\n let strValue = '';\n const intValue = Math.floor(value);\n const fracValue = (0, numberRound_1.numberRound)((value - intValue) * 100, 0);\n if (!currency) {\n currency = intText(intValue);\n }\n strValue = (0, numberToWords_1.numberToWords)(intValue) + ' ' + currency;\n if (fracValue !== 0 || forceShowGr) {\n strValue += showGrWords\n ? ' ' + (0, numberToWords_1.numberToWords)(fracValue) + ' ' + fracText(fracValue)\n : ' ' + (0, numberFormatPad_1.numberFormatPad)(fracValue, 2) + '/100';\n }\n return strValue;\n}\nexports.numberToWordsMoney = numberToWordsMoney;\n//# sourceMappingURL=numberToWordsMoney.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.objectDeepCopy = void 0;\n/**\n * Głębokie kopiowanie\n * @param data date do skopiowania\n */\nfunction objectDeepCopy(data) {\n return JSON.parse(JSON.stringify(data));\n}\nexports.objectDeepCopy = objectDeepCopy;\n//# sourceMappingURL=objectDeepCopy.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.randomInt = void 0;\n/**\n * Generuje pseudolosową liczbę całkowitą z zakresu\n *\n * @export\n * @param {number} [min=0]\n * @param {number} [max=100]\n * @return {*} {number}\n */\nfunction randomInt(min = 0, max = 100) {\n min = Math.ceil(min);\n max = Math.floor(max);\n return Math.floor(Math.random() * (max - min + 1) + min);\n}\nexports.randomInt = randomInt;\n//# sourceMappingURL=randomInt.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.setPath = void 0;\n/**\n * Ustawia wartość obiektu na wybranej ścieżce\n *\n * @export\n * @param {object} obj\n * @param {*} value\n * @param {(string | string[])} path\n */\nfunction setPath(obj, value, path) {\n if (!Array.isArray(path)) {\n path = path.split('.');\n }\n let index;\n for (index = 0; index < path.length - 1; index++) {\n const currentPath = path[index];\n if (!obj[currentPath]) {\n if (typeof obj !== 'object') {\n throw new Error('Nie można utworzyć ścieżki');\n }\n obj[currentPath] = {};\n }\n obj = obj[currentPath];\n }\n obj[path[index]] = value;\n}\nexports.setPath = setPath;\n//# sourceMappingURL=setPath.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.checkFormatFunction = exports.passport = exports.phone = exports.phone9 = exports.numeric = exports.guid = exports.email = exports.dowod = exports.iban = exports.regon = exports.regon14 = exports.regon9 = exports.pesel = exports.kw = exports.KW_COURT = exports.nip = exports.regex = exports.ipv6 = exports.ipv4 = exports.uuid = exports.url = exports.uri = exports.hostname = exports.date_time = exports.kod = exports.time = exports.date = exports.stringCheck = void 0;\nconst dateIsLeapYear_1 = require(\"./dateIsLeapYear\");\n/**\n * Sprawdza czy tekst jest podanego formatu\n * @param text wartośc do weryfikacji\n * @param format format tekstu\n */\nfunction stringCheck(text, format) {\n return checkFormatFunction(format)(text);\n}\nexports.stringCheck = stringCheck;\nconst MONTH_DAYS = [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\nconst DATE0 = /^(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)([t|T|\\s](00:00:00))?$/;\n/**\n * data yyyy-MM-dd, lub yyyy-MM-dd 00:00:00\n * sprawdza również czy data jest prawidłowa, wraz ze sprawdzaniem roku przestępnego\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction date(text) {\n // dopuszcony jest zerowy czas 00:00:00\n const matches = text.match(DATE0);\n if (!matches) {\n return false;\n }\n const year = +matches[1];\n const month = +matches[2];\n const day = +matches[3];\n return month >= 1 && month <= 12 && day >= 1 && day <= (month === 2 && (0, dateIsLeapYear_1.isLeapYear)(year) ? 29 : MONTH_DAYS[month]);\n}\nexports.date = date;\nconst TIME = /^(\\d\\d):(\\d\\d):(\\d\\d)(\\.\\d+)?(z|[+-]\\d\\d:\\d\\d)?$/i;\n/**\n * czas HH:m:ss\n *\n * @export\n * @param {string} text\n * @param {boolean} [full] czy wymagana jest strea czasowa\n * @returns {boolean}\n */\nfunction time(text, full) {\n const matches = text.match(TIME);\n if (!matches) {\n return false;\n }\n const hour = Number(matches[1]);\n const minute = Number(matches[2]);\n const second = Number(matches[3]);\n const timeZone = matches[5];\n return (((hour <= 23 && minute <= 59 && second <= 59) || (hour === 23 && minute === 59 && second === 60)) &&\n (!full || timeZone !== ''));\n}\nexports.time = time;\nconst KOD_POCZTOWY = /^[0-9]{2}-[0-9]{3}$/;\n/**\n * kod pocztowy: 76-200\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction kod(text) {\n return KOD_POCZTOWY.test(text);\n}\nexports.kod = kod;\nconst DATE_TIME_SEPARATOR = /t|\\s/i;\n/**\n * data z czasem, yyyy-MM-dd HH:mm:ss\n * mogą być rozdzielone `t` lub ` `\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction date_time(text) {\n // http://tools.ietf.org/html/rfc3339#section-5.6\n const dateTime = text.split(DATE_TIME_SEPARATOR);\n return dateTime.length === 2 && date(dateTime[0]) && time(dateTime[1], true);\n}\nexports.date_time = date_time;\nconst HOSTNAME = /^[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*$/i;\n/**\n * host np. server.domena.pl\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction hostname(text) {\n return text.length <= 255 && HOSTNAME.test(text);\n}\nexports.hostname = hostname;\nconst NOT_URI_FRAGMENT = /\\/|:/;\nconst URI = /^(?:[a-z][a-z0-9+\\-.]*:)(?:\\/?\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\\.[a-z0-9\\-._~!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)|(?:[a-z0-9\\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\\d*)?(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\\?(?:[a-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;\n/**\n * URI, np. file://xvxvx\n *\n * @export\n * @param {string} text\n * @returns\n */\nfunction uri(text) {\n return NOT_URI_FRAGMENT.test(text) && URI.test(text);\n}\nexports.uri = uri;\nconst URL = /^(?:(?:http[s\\u017F]?|ftp):\\/\\/)(?:(?:[\\0-\\x08\\x0E-\\x1F!-\\x9F\\xA1-\\u167F\\u1681-\\u1FFF\\u200B-\\u2027\\u202A-\\u202E\\u2030-\\u205E\\u2060-\\u2FFF\\u3001-\\uD7FF\\uE000-\\uFEFE\\uFF00-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+(?::(?:[\\0-\\x08\\x0E-\\x1F!-\\x9F\\xA1-\\u167F\\u1681-\\u1FFF\\u200B-\\u2027\\u202A-\\u202E\\u2030-\\u205E\\u2060-\\u2FFF\\u3001-\\uD7FF\\uE000-\\uFEFE\\uFF00-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])*)?@)?(?:(?!10(?:\\.[0-9]{1,3}){3})(?!127(?:\\.[0-9]{1,3}){3})(?!169\\.254(?:\\.[0-9]{1,3}){2})(?!192\\.168(?:\\.[0-9]{1,3}){2})(?!172\\.(?:1[6-9]|2[0-9]|3[01])(?:\\.[0-9]{1,3}){2})(?:[1-9][0-9]?|1[0-9][0-9]|2[01][0-9]|22[0-3])(?:\\.(?:1?[0-9]{1,2}|2[0-4][0-9]|25[0-5])){2}(?:\\.(?:[1-9][0-9]?|1[0-9][0-9]|2[0-4][0-9]|25[0-4]))|(?:(?:(?:[0-9KSa-z\\xA1-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+-?)*(?:[0-9KSa-z\\xA1-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+)(?:\\.(?:(?:[0-9KSa-z\\xA1-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+-?)*(?:[0-9KSa-z\\xA1-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+)*(?:\\.(?:(?:[KSa-z\\xA1-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF]){2,})))(?::[0-9]{2,5})?(?:\\/(?:[\\0-\\x08\\x0E-\\x1F!-\\x9F\\xA1-\\u167F\\u1681-\\u1FFF\\u200B-\\u2027\\u202A-\\u202E\\u2030-\\u205E\\u2060-\\u2FFF\\u3001-\\uD7FF\\uE000-\\uFEFE\\uFF00-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])*)?$/i;\n/**\n * URL, np. https://google.com\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction url(text) {\n return URL.test(text);\n}\nexports.url = url;\nconst UUID = /^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i;\n/**\n * UUID\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction uuid(text) {\n return UUID.test(text);\n}\nexports.uuid = uuid;\nconst IPv4 = /^(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)$/;\n/**\n * IP4: 192.168.23.4\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction ipv4(text) {\n return IPv4.test(text);\n}\nexports.ipv4 = ipv4;\nconst IPv6 = /^\\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:)))(?:%.+)?\\s*$/i;\n/**\n * IP6: 2001:0db8:85a3:0000:0000:8a2e:0370:7334\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction ipv6(text) {\n return IPv6.test(text);\n}\nexports.ipv6 = ipv6;\nconst Z_ANCHOR = /[^\\\\]\\\\Z/;\n/**\n * RegEx\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction regex(text) {\n if (Z_ANCHOR.test(text)) {\n return false;\n }\n try {\n // new RegExp(str);\n return new RegExp(text) !== null;\n }\n catch (e) {\n return false;\n }\n}\nexports.regex = regex;\nconst NIP_WEIGHTS = [6, 5, 7, 2, 3, 4, 5, 6, 7];\n/**\n * NIP: 9570716562\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction nip(text) {\n text = text.replace(/[\\s-]/g, '');\n if (text.length === 10) {\n let sum = 0;\n for (let i = 0; i < 9; i++) {\n const val = Number(text[i]);\n if (!isNaN(val)) {\n sum += val * NIP_WEIGHTS[i];\n }\n }\n return sum % 11 === Number(text[9]);\n }\n return false;\n}\nexports.nip = nip;\n/**\n * obiekt zawierający wszystkie symbole sądów\n */\nexports.KW_COURT = {\n WL1A: 'Aleksandrów Kujawski',\n SU1A: 'Augustów',\n OL1Y: 'Bartoszyce',\n PT1B: 'Bełchatów',\n KA1B: 'Będzin',\n LU1B: 'Biała podlaska',\n RA2G: 'Białobrzegi',\n KO1B: 'Białogard',\n BI1B: 'Białystok',\n BB1B: 'Bielsko-Biała',\n BI1P: 'Bielsk Podlaski',\n ZA1B: 'Biłgoraj',\n OL1B: 'Biskupiec',\n TR1O: 'BochniaR1O',\n JG1B: 'Bolesławiec',\n EL1B: 'Braniewo',\n TO1B: 'Brodnica',\n OP1B: 'Brzeg',\n TR1B: 'Brzesko',\n LD1B: 'Brzeziny',\n KS1B: 'Brzozów',\n KI1B: 'Busko Zdrój',\n BY1B: 'Bydgoszcz',\n KA1Y: 'Bytom',\n SL1B: 'Bytów',\n LU1C: 'Chełm',\n TO1C: 'Chełmno',\n PO1H: 'Chodzież',\n SL1C: 'Chojnice',\n KA1C: 'Chorzów',\n SZ1C: 'Choszczno',\n KR1C: 'Chrzanów',\n PL1C: 'Ciechanów',\n BB1C: 'Cieszyn',\n PO2T: 'Czarnków',\n KR1K: 'Czernichów',\n CZ1C: 'Częstochowa',\n SL1Z: 'Człuchów',\n KA1D: 'Dąbrowa Górnicza',\n TR1D: 'Dąbrowa Tarnowska',\n RZ1D: 'Dębica',\n KR2Y: 'Dobczyce',\n KO1D: 'Drawsko Pomorskie',\n EL1D: 'Działdowo',\n SW1D: 'Dzierżoniów',\n EL1E: 'Elbląg',\n OL1E: 'Ełk',\n SI1G: 'Garwolin',\n GD1G: 'Gdańsk',\n GD1Y: 'Gdynia',\n OL1G: 'Giżycko',\n GL1G: 'Gliwice',\n LE1G: 'Głogów',\n OP1G: 'Głubczyce',\n PO1G: 'Gniezno',\n SZ1O: 'Goleniów',\n TO1G: 'Golub-Dobrzyń',\n NS1G: 'Gorlice',\n GW1G: 'Gorzów Wielkopolski',\n PL1G: 'Gostynin',\n PO1Y: 'Gostyń',\n LM1G: 'Grajewo',\n WA1G: 'Grodzisk Mazowiecki',\n PO1S: 'Grodzisk Wlkp.',\n RA1G: 'Grójec',\n TO1U: 'Grudziądz',\n SZ1G: 'Gryfice',\n SZ1Y: 'Gryfino',\n ZG2K: 'Gubin',\n BI2P: 'Hajnówka',\n ZA1H: 'Hrubieszów',\n EL1I: 'Iława',\n BY1I: 'Inowrocław',\n ZA1J: 'Janów Lubelski',\n KZ1J: 'Jarocin',\n PR1J: 'Jarosław',\n KS1J: 'Jasło',\n GL1J: 'Jastrzębie-Zdrój',\n LE1J: 'Jawor',\n KA1J: 'Jaworzno',\n JG1J: 'Jelenia Góra',\n KI1J: 'Jędrzejów',\n KZ1A: 'Kalisz',\n JG1K: 'Kamienna Góra',\n SZ1K: 'Kamień Pomorski',\n GD1R: 'Kartuzy',\n KA1K: 'Katowice',\n KI1I: 'Kazimierza wielka',\n OP1K: 'Kędzierzyn-koźle',\n KZ1E: 'Kępno',\n OL1K: 'Kętrzyn',\n KR2E: 'Kęty',\n KI1L: 'Kielce',\n OP1U: 'Kluczbork',\n CZ2C: 'Kłobuck',\n SW1K: 'Kłodzko',\n TB1K: 'Kolbuszowa',\n KO1L: 'Kołobrzeg',\n KN1K: 'Koło',\n KN1N: 'Konin',\n KI1K: 'Końskie',\n KO1K: 'Koszalin',\n PO1K: 'Kościan',\n GD1E: 'Kościerzyna',\n RA1K: 'Kozienice',\n KR1P: 'Kraków',\n ZA1K: 'Krasnystaw',\n LU1K: 'Kraśnik',\n KS1K: 'Krosno',\n ZG1K: 'Krosno Odrzańskie',\n KZ1R: 'Krotoszyn',\n KR2K: 'Krzeszowice',\n LD1K: 'Kutno',\n GD1I: 'Kwidzyn',\n WA1L: 'Legionowo',\n LE1L: 'Legnica',\n KS1E: 'Lesko',\n PO1L: 'Leszno',\n RZ1E: 'Leżajsk',\n SL1L: 'Lębork',\n OL1L: 'Lidzbark Warmiński',\n NS1L: 'Limanowa',\n WL1L: 'Lipno',\n RA1L: 'Lipsko',\n PR1L: 'Lubaczów',\n JG1L: 'Lubań',\n LU1A: 'Lubartów',\n LE1U: 'Lubin',\n CZ1L: 'Lubliniec',\n LU1I: 'Lublin',\n JG1S: 'Lwówek Śląski',\n RZ1A: 'Łańcut',\n SR1L: 'Łask',\n LD1Y: 'Łęczyca',\n SZ1L: 'Łobez',\n LM1L: 'Łomża',\n SI2S: 'Łosice',\n LD1O: 'Łowicz',\n LD1M: 'Łódź',\n LU1U: 'Łuków',\n GD1M: 'Malbork',\n SL1M: 'Miastko',\n KR1M: 'Miechów',\n TB1M: 'Mielec',\n PO2A: 'Międzychód',\n GW1M: 'Międzyrzecz',\n KA1M: 'Mikołów',\n WR1M: 'Milicz',\n SI1M: 'Mińsk Mazowiecki',\n PL1M: 'Mława',\n BY1M: 'Mogilno',\n EL2O: 'Morąg',\n OL1M: 'Mrągowo',\n NS2L: 'Mszana Dolna',\n NS1M: 'Muszyna',\n KA1L: 'Mysłowice',\n CZ1M: 'Myszków',\n KR1Y: 'Myślenice',\n SZ1M: 'Myślibórz',\n BY1N: 'Nakło nad Notecią',\n OL1N: 'Nidzica',\n KR2I: 'Niepołomice',\n TB1N: 'Nisko',\n SW2K: 'Nowa Ruda',\n ZG1N: 'Nowa Sól',\n EL1N: 'Nowe Miasto Lubawskie',\n GD2M: 'Nowy Dwór Gdański',\n WA1N: 'Nowy Dwór Mazowiecki',\n NS1S: 'Nowy Sącz',\n NS1T: 'Nowy Targ',\n PO1N: 'Nowy Tomyśl',\n OP1N: 'Nysa',\n PO1O: 'Oborniki',\n OL1C: 'Olecko',\n OP1L: 'Olesno',\n WR1E: 'Oleśnica',\n KR1O: 'Olkusz',\n OL1O: 'Olsztyn',\n WR1O: 'Oława',\n KI1T: 'Opatów',\n PT1O: 'Opoczno',\n LU1O: 'Opole Lubelskie',\n OP1O: 'Opole',\n OS1O: 'Ostrołęka',\n KI1O: 'Ostrowiec Świętokrzyski',\n EL1O: 'Ostróda',\n OS1M: 'Ostrów Mazowiecka',\n KZ1W: 'Ostrów Wielkopolski',\n KZ1O: 'Ostrzeszów',\n KR1E: 'Oświęcim',\n WA1O: 'Otwock',\n LD1P: 'Pabianice',\n SR2W: 'Pajęczno',\n WA1I: 'Piaseczno',\n PO1I: 'Piła',\n KI1P: 'Pińczów',\n RA2Z: 'Pionki',\n PT1P: 'Piotrków Trybunalski',\n OL1P: 'Pisz',\n KZ1P: 'Pleszew',\n PL1P: 'Płock',\n PL1L: 'Płońsk',\n SR2L: 'Poddębice',\n SZ2S: 'Police',\n PO1P: 'Poznań (V)',\n PO2P: 'Poznań (VI)',\n KR1H: 'Proszowice',\n OP1P: 'Prudnik',\n WA1P: 'Pruszków',\n OS1P: 'Przasnysz',\n PR1P: 'Przemyśl',\n PR1R: 'Przeworsk',\n RA1P: 'Przysucha',\n KA1P: 'Pszczyna',\n GD2W: 'Puck',\n LU1P: 'Puławy',\n OS1U: 'Pułtusk',\n SZ2T: 'Pyrzyce',\n GL1R: 'Racibórz',\n RA1R: 'Radom',\n PT1R: 'Radomsko',\n WL1R: 'Radziejów',\n LU1R: 'Radzyń Podlaski',\n LD1R: 'Rawa Mazowiecka',\n PO1R: 'Rawicz',\n RZ1R: 'Ropczyce',\n GL1S: 'Ruda Śląska',\n GL1Y: 'Rybnik',\n LU1Y: 'Ryki',\n WL1Y: 'Rypin',\n RZ1Z: 'Rzeszów',\n KI1S: 'Sandomierz',\n KS1S: 'Sanok',\n SU1N: 'Sejny',\n BY2T: 'Sępólno Krajeńskie',\n SI1S: 'Siedlce',\n KA1I: 'Siemianowice Śląskie',\n BI3P: 'Siemiatycze',\n PR2R: 'Sieniawa',\n SR1S: 'Sieradz',\n PL1E: 'Sierpc',\n KR2P: 'Skała',\n KI1R: 'Skarżysko-Kamienna',\n KR3I: 'Skawina',\n LD1H: 'Skierniewice',\n KO1E: 'Sławno',\n KR1S: 'Słomniki',\n GW1S: 'Słubice',\n KN1S: 'Słupca',\n SL1S: 'Słupsk',\n PL1O: 'Sochaczew',\n SI1P: 'Sokołów Podlaski',\n BI1S: 'Sokółka',\n GD1S: 'Sopot',\n KA1S: 'Sosnowiec',\n TB1S: 'Stalowa Wola',\n KI1H: 'Starachowice',\n SZ1T: 'Stargard Szczeciński',\n GD1A: 'Starogard Gdański',\n KI1A: 'Staszów',\n GW1K: 'Strzelce Krajeńskie',\n OP1S: 'Strzelce Opolskie',\n WR1T: 'Strzelin',\n RZ1S: 'Strzyżów',\n KR1B: 'Sucha Beskidzka',\n ZG2S: 'Sulechów',\n GW1U: 'Sulęcin',\n SU1S: 'Suwałki',\n PO1A: 'Szamotuły',\n KO1I: 'Szczecinek',\n SZ1S: 'Szczecin',\n OL1S: 'Szczytno',\n GD2I: 'Sztum',\n BY1U: 'Szubin',\n RA1S: 'Szydłowiec',\n PO1M: 'Śrem',\n WR1S: 'Środa Śląska',\n PO1D: 'Środa Wlkp.',\n SW1S: 'Świdnica',\n KO2B: 'Świdwin',\n ZG1S: 'Świebodzin',\n BY1S: 'Świecie',\n SZ1W: 'Świnoujście',\n TB1T: 'Tarnobrzeg',\n GL1T: 'Tarnowskie Góry',\n TR1T: 'Tarnów',\n GD1T: 'Tczew',\n ZA1T: 'Tomaszów Lubelski',\n PT1T: 'Tomaszów Mazowiecki',\n TO1T: 'Toruń',\n PO1T: 'Trzcianka',\n WR1W: 'Trzebnica',\n BY1T: 'Tuchola',\n TR2T: 'Tuchów',\n KN1T: 'Turek',\n KA1T: 'Tychy',\n RZ2Z: 'Tyczyn',\n KS2E: 'Ustrzyki Dolne',\n KR1W: 'Wadowice',\n SW1W: 'Wałbrzych',\n KO1W: 'Wałcz',\n WA3M: 'Warszawa (IX)',\n WA1M: 'Warszawa (VI)',\n WA2M: 'Warszawa (VII)',\n WA4M: 'Warszawa (X)',\n WA5M: 'Warszawa (XIII)',\n WA6M: 'Warszawa (XV)',\n TO1W: 'Wąbrzeźno',\n PO1B: 'Wągrowiec',\n GD1W: 'Wejherowo',\n OL2G: 'Węgorzewo',\n SI1W: 'Węgrów',\n KR1I: 'Wieliczka',\n SR1W: 'Wieluń',\n WL1W: 'Włocławek',\n LU1W: 'Włodawa',\n KI1W: 'Włoszczowa',\n GL1W: 'Wodzisław Śląski',\n PO1E: 'Wolsztyn',\n WA1W: 'Wołomin',\n WR1L: 'Wołów',\n WR1K: 'Wrocław',\n PO1F: 'Września',\n ZG1W: 'Wschowa',\n PO2H: 'Wyrzysk',\n LM1W: 'Wysokie Mazowieckie',\n OS1W: 'Wyszków',\n GL1Z: 'Zabrze',\n NS1Z: 'Zakopane',\n LM1Z: 'Zambrów',\n ZA1Z: 'Zamość',\n CZ1Z: 'Zawiercie',\n SW1Z: 'Ząbkowice Śląskie',\n SR1Z: 'Zduńska Wola',\n LD1G: 'Zgierz',\n JG1Z: 'Zgorzelec',\n ZG1E: 'Zielona Góra',\n LE1Z: 'Złotoryja',\n PO1Z: 'Złotów',\n RA1Z: 'Zwoleń',\n ZG1G: 'Żagań',\n ZG1R: 'Żary',\n BY1Z: 'Żnin',\n GL1X: 'Żory',\n PL2M: 'Żuromin',\n PL1Z: 'Żyrardów',\n BB1Z: 'Żywiec'\n};\n/**\n * obiekt zawierający wartości poszczegółnych znaków\n */\nconst KW_LETTER_VALUES = {\n 0: 0,\n 1: 1,\n 2: 2,\n 3: 3,\n 4: 4,\n 5: 5,\n 6: 6,\n 7: 7,\n 8: 8,\n 9: 9,\n X: 10,\n A: 11,\n B: 12,\n C: 13,\n D: 14,\n E: 15,\n F: 16,\n G: 17,\n H: 18,\n I: 19,\n J: 20,\n K: 21,\n L: 22,\n M: 23,\n N: 24,\n O: 25,\n P: 26,\n R: 27,\n S: 28,\n T: 29,\n U: 30,\n W: 31,\n Y: 32,\n Z: 33\n};\n/**\n * numer księgi wieczystej: GD1G/00000125/6\n *\n * @export\n * @param {string} text\n * @returns\n */\nfunction kw(text) {\n if (text == null)\n return false;\n if (text.length !== 15)\n return false;\n text = text.toUpperCase();\n // sprawdza slashe\n if (text[4] !== '/' || text[13] !== '/')\n return false;\n // sprawdza czy symbol sądu jest prawidłowy\n if (exports.KW_COURT[text.substr(0, 4)] === undefined) {\n return false;\n }\n // sprawdzanie czy w środku jest na pewno liczba\n if (isNaN(+text.substr(5, 8))) {\n return false;\n }\n // obliczanie sumy kontolnej\n const sum = 1 * (KW_LETTER_VALUES[text[0]] || 0) +\n 3 * (KW_LETTER_VALUES[text[1]] || 0) +\n 7 * (KW_LETTER_VALUES[text[2]] || 0) +\n 1 * (KW_LETTER_VALUES[text[3]] || 0) +\n 3 * (KW_LETTER_VALUES[text[5]] || 0) +\n 7 * (KW_LETTER_VALUES[text[6]] || 0) +\n 1 * (KW_LETTER_VALUES[text[7]] || 0) +\n 3 * (KW_LETTER_VALUES[text[8]] || 0) +\n 7 * (KW_LETTER_VALUES[text[9]] || 0) +\n 1 * (KW_LETTER_VALUES[text[10]] || 0) +\n 3 * (KW_LETTER_VALUES[text[11]] || 0) +\n 7 * (KW_LETTER_VALUES[text[12]] || 0);\n // jeśli suma kontrolna jest różna sumie modulo 10 to numer jest nieprawidłowy\n if (+text[14] !== sum % 10)\n return false;\n return true;\n}\nexports.kw = kw;\nconst PESEL_WEIGHTS = [9, 7, 3, 1, 9, 7, 3, 1, 9, 7];\n/**\n * PESEL: 77010904673\n *\n * @export\n * @param {string} text\n * @returns\n */\nfunction pesel(text) {\n text = text.replace(/[\\s-]/g, '');\n if (text.length === 11) {\n let sum = 0;\n for (let i = 0; i < 10; i++) {\n const val = Number(text[i]);\n if (!isNaN(val)) {\n sum += val * PESEL_WEIGHTS[i];\n }\n }\n return sum % 10 === Number(text[10]);\n }\n return false;\n}\nexports.pesel = pesel;\nconst REGON9_WEIGHTS = [8, 9, 2, 3, 4, 5, 6, 7];\n/**\n * regon (9 znakowy): 220318890\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction regon9(text) {\n if (text.length === 9) {\n let sum = 0;\n for (let i = 0; i < 8; i++) {\n const val = Number(text[i]);\n if (!isNaN(val)) {\n sum += val * REGON9_WEIGHTS[i];\n }\n }\n let mod = sum % 11;\n if (mod === 10) {\n mod = 0;\n }\n return mod === Number(text[8]);\n }\n return false;\n}\nexports.regon9 = regon9;\nconst REGON14_WEIGHTS = [2, 4, 8, 5, 0, 9, 7, 3, 6, 1, 2, 4, 8];\n/**\n * regon (14 znakowy)\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction regon14(text) {\n // if ((regon.length == 14) && (parseInt(regon, 14) > 0)) {\n if (text.length === 14) {\n // czy regon konczy sie na 5 zer ? jesli tak to sprawdz go jako 9 elementowy\n if (text.endsWith('00000')) {\n return regon9(text.substr(0, 9));\n }\n let sum = 0;\n for (let i = 0; i < 13; i++) {\n const val = Number(text[i]);\n if (!isNaN(val)) {\n sum += val * REGON14_WEIGHTS[i];\n }\n }\n let mod = sum % 11;\n if (mod === 10) {\n mod = 0;\n }\n return mod === Number(text[13]);\n }\n return false;\n}\nexports.regon14 = regon14;\n/**\n * regon, sprawdza zarówno wersje 9 oraz 14 znakową\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction regon(text) {\n return text.length === 9 ? regon9(text) : regon14(text);\n}\nexports.regon = regon;\nconst IBAN_WEIGHTS = [\n 1, 10, 3, 30, 9, 90, 27, 76, 81, 34, 49, 5, 50, 15, 53, 45, 62, 38, 89, 17, 73, 51, 25, 56, 75, 71, 31, 19, 93, 57\n];\n/**\n * numer rachunku w postaci IBAN (26 znaków, moga być ze spacjami)\n * 67 1140 2004 0000 3602 1050 8845\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction iban(text) {\n if (text === '00000000000000000000000000') {\n return true;\n }\n text = text.replace(/[^0-9]+/g, '');\n if (text.length === 26) {\n text = text + '2521';\n text = text.substr(2) + text.substr(0, 2);\n let Z = 0;\n for (let i = 0; i < 30; i++) {\n Z += Number(text[29 - i]) * IBAN_WEIGHTS[i];\n }\n if (Z % 97 === 1) {\n return true;\n }\n else {\n return false;\n }\n }\n else {\n return false;\n }\n}\nexports.iban = iban;\nconst LETTER_VALUES = {\n 0: 0,\n 1: 1,\n 2: 2,\n 3: 3,\n 4: 4,\n 5: 5,\n 6: 6,\n 7: 7,\n 8: 8,\n 9: 9,\n A: 10,\n B: 11,\n C: 12,\n D: 13,\n E: 14,\n F: 15,\n G: 16,\n H: 17,\n I: 18,\n J: 19,\n K: 20,\n L: 21,\n M: 22,\n N: 23,\n O: 24,\n P: 25,\n Q: 26,\n R: 27,\n S: 28,\n T: 29,\n U: 30,\n W: 31,\n X: 32,\n Y: 33,\n Z: 34\n};\n/**\n * seria i numer dowodu: AVG793448\n *\n * @export\n * @param {string} text\n * @returns\n */\nfunction dowod(text) {\n text = text.replace(/[\\s-]/g, '');\n // var numer = value.trim().replace(\" \", \"\").replace(\"-\", \"\");\n // Check length\n if (text == null || text.length !== 9) {\n return false;\n }\n text = text.toUpperCase();\n // Check seria\n for (let i = 0; i < 3; i++) {\n if (LETTER_VALUES[text[i]] < 10) {\n return false;\n }\n }\n // Check number\n for (let i = 3; i < 9; i++) {\n const glv = LETTER_VALUES[text[i]];\n if (glv === undefined || glv < 0 || glv > 9) {\n return false;\n }\n }\n // sprawdz cyfre controlna\n let sum = 7 * LETTER_VALUES[text[0]] +\n 3 * LETTER_VALUES[text[1]] +\n 1 * LETTER_VALUES[text[2]] +\n 7 * LETTER_VALUES[text[4]] +\n 3 * LETTER_VALUES[text[5]] +\n 1 * LETTER_VALUES[text[6]] +\n 7 * LETTER_VALUES[text[7]] +\n 3 * LETTER_VALUES[text[8]];\n sum %= 10;\n if (sum !== LETTER_VALUES[text[3]]) {\n return false;\n }\n return true;\n}\nexports.dowod = dowod;\nconst EMAIL = /^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i;\n/**\n * email, daniel@jursza.com\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction email(text) {\n return EMAIL.test(text);\n}\nexports.email = email;\nconst GUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;\n/**\n * guid, d020cc46-c999-4ba5-a7d0-8ddb13ade32c\n * 3 segment musi się zaczynać od cyfry 1-5\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction guid(text) {\n return GUID.test(text);\n}\nexports.guid = guid;\nconst NUMERIC = /^\\d+$/;\n/**\n * czy to liczba, same cyfry\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction numeric(text) {\n return NUMERIC.test(text);\n}\nexports.numeric = numeric;\nconst PHONE9 = /^\\d{9}$/;\n/**\n * 9 cyfrowy numer telefonu, same cyfry\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction phone9(text) {\n return PHONE9.test(text);\n}\nexports.phone9 = phone9;\nconst PHONE = /^\\d{9}$/;\n/**\n * numer telefonu, same cyfry\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction phone(text) {\n return PHONE.test(text);\n}\nexports.phone = phone;\nconst PASSPORT_WEIGHTS = [7, 3, 9, 1, 7, 3, 1, 7, 3];\n/**\n * seria i numer paszportu\n *\n * @export\n * @param {string} text\n * @returns {boolean}\n */\nfunction passport(text) {\n if (text.length !== 9) {\n return false;\n }\n let sum = 0;\n for (let i = 0; i < text.length; i++) {\n const value = text[i] === '<' ? 0 : LETTER_VALUES[text[i]];\n if (value !== -1) {\n sum += value * PASSPORT_WEIGHTS[i];\n }\n }\n sum = sum % 10;\n return sum === 0;\n}\nexports.passport = passport;\nconst formatFunctions = {\n date,\n time,\n date_time,\n 'date-time': date_time,\n nip,\n regon,\n regon9,\n regon14,\n kw,\n dowod,\n passport,\n guid,\n numeric,\n phone9,\n phone,\n email,\n iban,\n pesel,\n kod,\n kodpocztowy: kod,\n nrb: iban,\n uri,\n url,\n uuid,\n regex\n};\n// formatPatterns.DATE.toLocaleString()\nfunction checkFormatFunction(format) {\n return formatFunctions[format] || (() => true);\n}\nexports.checkFormatFunction = checkFormatFunction;\n//# sourceMappingURL=stringCheck.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.stringReverse = void 0;\n/**\n * Odwraca ciąg znaków\n *\n * @export\n * @param {string} text\n * @returns {string}\n */\nfunction stringReverse(text) {\n return text.split('').reverse().join('');\n}\nexports.stringReverse = stringReverse;\n//# sourceMappingURL=stringReverse.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.stringTrim = void 0;\n/**\n * Obcina początkowe i końcowe spacje w tekscie\n * @param text tekst do obcięcia\n */\nfunction stringTrim(text) {\n return (text || '').trim();\n}\nexports.stringTrim = stringTrim;\n//# sourceMappingURL=stringTrim.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.timeFormat = void 0;\nconst dateTimeFormat_1 = require(\"./dateTimeFormat\");\n/**\n * formatuje czas do formatu HH:mm:ss\n * @param dt data typu Date\n */\nfunction timeFormat(dt) {\n return dateTimeFormat_1.formatDateFunction['HH:mm:ss'](dt);\n}\nexports.timeFormat = timeFormat;\n//# sourceMappingURL=timeFormat.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.tryParseBoolean = void 0;\n/**\n * Parsuje kolejne wartości, zwracając pierwszą, której można przypisać wartość typu bool\n *\n * @export\n * @param {...any[]} values\n * @returns {boolean}\n */\nfunction tryParseBoolean(...values) {\n for (const value of values) {\n if (value === true || value === 'true' || value === 1 || value === '1') {\n return true;\n }\n if (value === false || value === 'false' || value === 0 || value === '0') {\n return false;\n }\n }\n return undefined;\n}\nexports.tryParseBoolean = tryParseBoolean;\n//# sourceMappingURL=tryParseBoolean.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.tryParseDate = void 0;\n/**\n * Próbuje odczytać datę\n *\n * @export\n * @param {...any[]} values\n * @returns {(Date | undefined)}\n */\nfunction tryParseDate(...values) {\n for (const value of values) {\n if (!value) {\n continue;\n }\n if (!isNaN(Date.parse(value))) {\n return new Date(value);\n }\n }\n}\nexports.tryParseDate = tryParseDate;\n//# sourceMappingURL=tryParseDate.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.tryParseFloat = void 0;\n/**\n * Parsuje kolejne wartości, zwracając pierwszą, której można przypisać wartość typu float\n *\n * @export\n * @param {...any[]} values\n * @returns {(number | undefined)}\n */\nfunction tryParseFloat(...values) {\n for (let value of values) {\n if (typeof value === 'string') {\n value = value.replace(',', '.');\n }\n const parsedValue = parseFloat(value);\n if (!isNaN(parsedValue)) {\n return parsedValue;\n }\n }\n}\nexports.tryParseFloat = tryParseFloat;\n//# sourceMappingURL=tryParseFloat.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.tryParseInt = void 0;\n/**\n * Parsuje kolejne wartości, zwracając pierwszą, której można przypisać wartość typu int\n *\n * @export\n * @param {...any[]} values\n * @returns {number}\n */\nfunction tryParseInt(...values) {\n for (const value of values) {\n const parsedValue = parseInt(value);\n if (!isNaN(parsedValue) && parsedValue.toString() === value.toString().replace(/^0+(?!$)/, '')) {\n return parsedValue;\n }\n }\n}\nexports.tryParseInt = tryParseInt;\n//# sourceMappingURL=tryParseInt.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.timeFormat = exports.stringTrim = exports.stringReverse = exports.stringCheck = exports.setPath = exports.randomInt = exports.objectDeepCopy = exports.numberToWordsMoney = exports.numberToWords = exports.numberRound = exports.numberParecent = exports.numberListNext = exports.numberHasValue = exports.numberFormatSpace = exports.numberFormatPad = exports.numberFormatMoney = exports.numberFormat = exports.nullDefault = exports.listNumberFormat = exports.iterateFileByLine = exports.interpolate = exports.ibanFormat = exports.getPath = exports.generatePesel = exports.generateId = exports.generateIban = exports.generateGuid = exports.fileToBase64 = exports.deepMerge = exports.dateToday = exports.dateTimeFormat = exports.dateSet = exports.datePart = exports.dateParse = exports.dateNow = exports.dateListYears = exports.dateListMonths = exports.isLeapYear = exports.dateFromPesel = exports.dateFormat = exports.dateDiff = exports.dateAdd = exports.createDebug = exports.arraySum = exports.arrayMin = exports.arrayMax = exports.arrayIncludesAll = exports.arrayDistinctItem = exports.arrayDistinct = exports.arrayAvg = void 0;\nexports.tryParseInt = exports.tryParseFloat = exports.tryParseDate = exports.tryParseBoolean = exports.TimeSpan = void 0;\nvar arrayAvg_1 = require(\"./methods/arrayAvg\");\nObject.defineProperty(exports, \"arrayAvg\", { enumerable: true, get: function () { return arrayAvg_1.arrayAvg; } });\nvar arrayDistinct_1 = require(\"./methods/arrayDistinct\");\nObject.defineProperty(exports, \"arrayDistinct\", { enumerable: true, get: function () { return arrayDistinct_1.arrayDistinct; } });\nvar arrayDistinctItem_1 = require(\"./methods/arrayDistinctItem\");\nObject.defineProperty(exports, \"arrayDistinctItem\", { enumerable: true, get: function () { return arrayDistinctItem_1.arrayDistinctItem; } });\nvar arrayIncludesAll_1 = require(\"./methods/arrayIncludesAll\");\nObject.defineProperty(exports, \"arrayIncludesAll\", { enumerable: true, get: function () { return arrayIncludesAll_1.arrayIncludesAll; } });\nvar arrayMax_1 = require(\"./methods/arrayMax\");\nObject.defineProperty(exports, \"arrayMax\", { enumerable: true, get: function () { return arrayMax_1.arrayMax; } });\nvar arrayMin_1 = require(\"./methods/arrayMin\");\nObject.defineProperty(exports, \"arrayMin\", { enumerable: true, get: function () { return arrayMin_1.arrayMin; } });\nvar arraySum_1 = require(\"./methods/arraySum\");\nObject.defineProperty(exports, \"arraySum\", { enumerable: true, get: function () { return arraySum_1.arraySum; } });\nvar createDebug_1 = require(\"./methods/createDebug\");\nObject.defineProperty(exports, \"createDebug\", { enumerable: true, get: function () { return createDebug_1.createDebug; } });\nvar dateAdd_1 = require(\"./methods/dateAdd\");\nObject.defineProperty(exports, \"dateAdd\", { enumerable: true, get: function () { return dateAdd_1.dateAdd; } });\nvar dateDiff_1 = require(\"./methods/dateDiff\");\nObject.defineProperty(exports, \"dateDiff\", { enumerable: true, get: function () { return dateDiff_1.dateDiff; } });\nvar dateFormat_1 = require(\"./methods/dateFormat\");\nObject.defineProperty(exports, \"dateFormat\", { enumerable: true, get: function () { return dateFormat_1.dateFormat; } });\nvar dateFromPesel_1 = require(\"./methods/dateFromPesel\");\nObject.defineProperty(exports, \"dateFromPesel\", { enumerable: true, get: function () { return dateFromPesel_1.dateFromPesel; } });\nvar dateIsLeapYear_1 = require(\"./methods/dateIsLeapYear\");\nObject.defineProperty(exports, \"isLeapYear\", { enumerable: true, get: function () { return dateIsLeapYear_1.isLeapYear; } });\nvar dateListMonths_1 = require(\"./methods/dateListMonths\");\nObject.defineProperty(exports, \"dateListMonths\", { enumerable: true, get: function () { return dateListMonths_1.dateListMonths; } });\nvar dateListYears_1 = require(\"./methods/dateListYears\");\nObject.defineProperty(exports, \"dateListYears\", { enumerable: true, get: function () { return dateListYears_1.dateListYears; } });\nvar dateNow_1 = require(\"./methods/dateNow\");\nObject.defineProperty(exports, \"dateNow\", { enumerable: true, get: function () { return dateNow_1.dateNow; } });\nvar dateParse_1 = require(\"./methods/dateParse\");\nObject.defineProperty(exports, \"dateParse\", { enumerable: true, get: function () { return dateParse_1.dateParse; } });\nvar datePart_1 = require(\"./methods/datePart\");\nObject.defineProperty(exports, \"datePart\", { enumerable: true, get: function () { return datePart_1.datePart; } });\nvar dateSet_1 = require(\"./methods/dateSet\");\nObject.defineProperty(exports, \"dateSet\", { enumerable: true, get: function () { return dateSet_1.dateSet; } });\nvar dateTimeFormat_1 = require(\"./methods/dateTimeFormat\");\nObject.defineProperty(exports, \"dateTimeFormat\", { enumerable: true, get: function () { return dateTimeFormat_1.dateTimeFormat; } });\nvar dateToday_1 = require(\"./methods/dateToday\");\nObject.defineProperty(exports, \"dateToday\", { enumerable: true, get: function () { return dateToday_1.dateToday; } });\nvar deepMerge_1 = require(\"./methods/deepMerge\");\nObject.defineProperty(exports, \"deepMerge\", { enumerable: true, get: function () { return deepMerge_1.deepMerge; } });\nvar fileToBase64_1 = require(\"./methods/fileToBase64\");\nObject.defineProperty(exports, \"fileToBase64\", { enumerable: true, get: function () { return fileToBase64_1.fileToBase64; } });\nvar generateGuid_1 = require(\"./methods/generateGuid\");\nObject.defineProperty(exports, \"generateGuid\", { enumerable: true, get: function () { return generateGuid_1.generateGuid; } });\nvar generateIban_1 = require(\"./methods/generateIban\");\nObject.defineProperty(exports, \"generateIban\", { enumerable: true, get: function () { return generateIban_1.generateIban; } });\nvar generateId_1 = require(\"./methods/generateId\");\nObject.defineProperty(exports, \"generateId\", { enumerable: true, get: function () { return generateId_1.generateId; } });\nvar generatePesel_1 = require(\"./methods/generatePesel\");\nObject.defineProperty(exports, \"generatePesel\", { enumerable: true, get: function () { return generatePesel_1.generatePesel; } });\nvar getPath_1 = require(\"./methods/getPath\");\nObject.defineProperty(exports, \"getPath\", { enumerable: true, get: function () { return getPath_1.getPath; } });\nvar ibanFormat_1 = require(\"./methods/ibanFormat\");\nObject.defineProperty(exports, \"ibanFormat\", { enumerable: true, get: function () { return ibanFormat_1.ibanFormat; } });\nvar interpolate_1 = require(\"./methods/interpolate\");\nObject.defineProperty(exports, \"interpolate\", { enumerable: true, get: function () { return interpolate_1.interpolate; } });\nvar iterateFileByLine_1 = require(\"./methods/iterateFileByLine\");\nObject.defineProperty(exports, \"iterateFileByLine\", { enumerable: true, get: function () { return iterateFileByLine_1.iterateFileByLine; } });\nvar listNumberFormat_1 = require(\"./methods/listNumberFormat\");\nObject.defineProperty(exports, \"listNumberFormat\", { enumerable: true, get: function () { return listNumberFormat_1.listNumberFormat; } });\nvar nullDefault_1 = require(\"./methods/nullDefault\");\nObject.defineProperty(exports, \"nullDefault\", { enumerable: true, get: function () { return nullDefault_1.nullDefault; } });\nvar numberFormat_1 = require(\"./methods/numberFormat\");\nObject.defineProperty(exports, \"numberFormat\", { enumerable: true, get: function () { return numberFormat_1.numberFormat; } });\nvar numberFormatMoney_1 = require(\"./methods/numberFormatMoney\");\nObject.defineProperty(exports, \"numberFormatMoney\", { enumerable: true, get: function () { return numberFormatMoney_1.numberFormatMoney; } });\nvar numberFormatPad_1 = require(\"./methods/numberFormatPad\");\nObject.defineProperty(exports, \"numberFormatPad\", { enumerable: true, get: function () { return numberFormatPad_1.numberFormatPad; } });\nvar numberFormatSpace_1 = require(\"./methods/numberFormatSpace\");\nObject.defineProperty(exports, \"numberFormatSpace\", { enumerable: true, get: function () { return numberFormatSpace_1.numberFormatSpace; } });\nvar numberHasValue_1 = require(\"./methods/numberHasValue\");\nObject.defineProperty(exports, \"numberHasValue\", { enumerable: true, get: function () { return numberHasValue_1.numberHasValue; } });\nvar numberListNext_1 = require(\"./methods/numberListNext\");\nObject.defineProperty(exports, \"numberListNext\", { enumerable: true, get: function () { return numberListNext_1.numberListNext; } });\nvar numberPercent_1 = require(\"./methods/numberPercent\");\nObject.defineProperty(exports, \"numberParecent\", { enumerable: true, get: function () { return numberPercent_1.numberParecent; } });\nvar numberRound_1 = require(\"./methods/numberRound\");\nObject.defineProperty(exports, \"numberRound\", { enumerable: true, get: function () { return numberRound_1.numberRound; } });\nvar numberToWords_1 = require(\"./methods/numberToWords\");\nObject.defineProperty(exports, \"numberToWords\", { enumerable: true, get: function () { return numberToWords_1.numberToWords; } });\nvar numberToWordsMoney_1 = require(\"./methods/numberToWordsMoney\");\nObject.defineProperty(exports, \"numberToWordsMoney\", { enumerable: true, get: function () { return numberToWordsMoney_1.numberToWordsMoney; } });\nvar objectDeepCopy_1 = require(\"./methods/objectDeepCopy\");\nObject.defineProperty(exports, \"objectDeepCopy\", { enumerable: true, get: function () { return objectDeepCopy_1.objectDeepCopy; } });\nvar randomInt_1 = require(\"./methods/randomInt\");\nObject.defineProperty(exports, \"randomInt\", { enumerable: true, get: function () { return randomInt_1.randomInt; } });\nvar setPath_1 = require(\"./methods/setPath\");\nObject.defineProperty(exports, \"setPath\", { enumerable: true, get: function () { return setPath_1.setPath; } });\nvar stringCheck_1 = require(\"./methods/stringCheck\");\nObject.defineProperty(exports, \"stringCheck\", { enumerable: true, get: function () { return stringCheck_1.stringCheck; } });\nvar stringReverse_1 = require(\"./methods/stringReverse\");\nObject.defineProperty(exports, \"stringReverse\", { enumerable: true, get: function () { return stringReverse_1.stringReverse; } });\nvar stringTrim_1 = require(\"./methods/stringTrim\");\nObject.defineProperty(exports, \"stringTrim\", { enumerable: true, get: function () { return stringTrim_1.stringTrim; } });\nvar timeFormat_1 = require(\"./methods/timeFormat\");\nObject.defineProperty(exports, \"timeFormat\", { enumerable: true, get: function () { return timeFormat_1.timeFormat; } });\nvar timeSpan_1 = require(\"./methods/timeSpan\");\nObject.defineProperty(exports, \"TimeSpan\", { enumerable: true, get: function () { return timeSpan_1.TimeSpan; } });\nvar tryParseBoolean_1 = require(\"./methods/tryParseBoolean\");\nObject.defineProperty(exports, \"tryParseBoolean\", { enumerable: true, get: function () { return tryParseBoolean_1.tryParseBoolean; } });\nvar tryParseDate_1 = require(\"./methods/tryParseDate\");\nObject.defineProperty(exports, \"tryParseDate\", { enumerable: true, get: function () { return tryParseDate_1.tryParseDate; } });\nvar tryParseFloat_1 = require(\"./methods/tryParseFloat\");\nObject.defineProperty(exports, \"tryParseFloat\", { enumerable: true, get: function () { return tryParseFloat_1.tryParseFloat; } });\nvar tryParseInt_1 = require(\"./methods/tryParseInt\");\nObject.defineProperty(exports, \"tryParseInt\", { enumerable: true, get: function () { return tryParseInt_1.tryParseInt; } });\n//# sourceMappingURL=index.js.map","import { generateId } from '@witkac/utils'\n\nimport type { ConfirmOptions } from '../../typings/confirmOptions'\n\n/**\n * Potwierdzenie\n *\n * @export\n * @class Confirm\n */\nexport class Confirm {\n /**\n * Identyfikator\n *\n * @type {string}\n * @memberof Confirm\n */\n public id: string\n\n /**\n * Wynik potwierdzenia\n *\n * @type {Promise}\n * @memberof Confirm\n */\n public result: Promise\n\n /**\n * Akceptacja potwierdzenia\n *\n * @memberof Confirm\n */\n public accept!: () => void\n\n /**\n * Odrzucenie potwierdzenia\n *\n * @memberof Confirm\n */\n public reject!: () => void\n\n constructor(\n public message: string,\n public options?: ConfirmOptions,\n ) {\n this.id = generateId('confirm')\n this.result = new Promise((resolve, reject) => {\n this.accept = () => resolve(true)\n this.reject = () => reject(false)\n })\n }\n}\n","import { type Ref, ref } from 'vue'\n\nimport type { ConfirmOptions } from '../typings/confirmOptions'\nimport { Confirm } from '../utils/confirm/confirm'\n\n/**\n * Serwis potwierdzenia akcji\n *\n * @export\n * @class ModalService\n */\nexport class ConfirmService {\n /**\n * Oczekujące potwierdzenia\n *\n * @type {Ref}\n * @memberof ConfirmService\n */\n public pendingConfirms: Ref = ref([])\n\n /**\n * Proste potwierdzenie akcji\n *\n * @param {string} message\n * @param {(Record)} [translateParameters]\n * @returns {Promise}\n * @memberof ConfirmService\n */\n public confirm(\n message: string,\n translateParameters?: Record,\n ): Promise {\n return this.configurable(message, { translateParameters })\n }\n\n /**\n * Prosty dialog\n *\n * @param {string} message\n * @param {(Record)} [translateParameters]\n * @returns {Promise}\n * @memberof ConfirmService\n */\n public dialog(\n message: string,\n translateParameters?: Record,\n ): Promise {\n return this.configurable(message, {\n translateParameters,\n acceptButtonText: 'buttons.ok',\n hideRejectButton: true,\n })\n }\n\n /**\n * Potwierdzenie akcji z konfiguracją\n *\n * @param {string} message\n * @param {ConfirmOptions} [options]\n * @returns {Promise}\n * @memberof ConfirmService\n */\n public configurable(message: string, options?: ConfirmOptions): Promise {\n const currentConfirm = new Confirm(message, options)\n this.pendingConfirms.value.push(currentConfirm)\n return currentConfirm.result.finally(\n () =>\n (this.pendingConfirms.value = this.pendingConfirms.value.filter(\n (pendingConfirm) => pendingConfirm.id !== currentConfirm.id,\n )),\n )\n }\n}\n\nexport const confirmService = new ConfirmService()\n","\n\n\n\n\n","\n\n\n\n\n","/*! *****************************************************************************\nCopyright (C) Microsoft. All rights reserved.\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\nthis file except in compliance with the License. You may obtain a copy of the\nLicense at http://www.apache.org/licenses/LICENSE-2.0\n\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\nMERCHANTABLITY OR NON-INFRINGEMENT.\n\nSee the Apache Version 2.0 License for specific language governing permissions\nand limitations under the License.\n***************************************************************************** */\nvar Reflect;\n(function (Reflect) {\n // Metadata Proposal\n // https://rbuckton.github.io/reflect-metadata/\n (function (factory) {\n var root = typeof globalThis === \"object\" ? globalThis :\n typeof global === \"object\" ? global :\n typeof self === \"object\" ? self :\n typeof this === \"object\" ? this :\n sloppyModeThis();\n var exporter = makeExporter(Reflect);\n if (typeof root.Reflect !== \"undefined\") {\n exporter = makeExporter(root.Reflect, exporter);\n }\n factory(exporter, root);\n if (typeof root.Reflect === \"undefined\") {\n root.Reflect = Reflect;\n }\n function makeExporter(target, previous) {\n return function (key, value) {\n Object.defineProperty(target, key, { configurable: true, writable: true, value: value });\n if (previous)\n previous(key, value);\n };\n }\n function functionThis() {\n try {\n return Function(\"return this;\")();\n }\n catch (_) { }\n }\n function indirectEvalThis() {\n try {\n return (void 0, eval)(\"(function() { return this; })()\");\n }\n catch (_) { }\n }\n function sloppyModeThis() {\n return functionThis() || indirectEvalThis();\n }\n })(function (exporter, root) {\n var hasOwn = Object.prototype.hasOwnProperty;\n // feature test for Symbol support\n var supportsSymbol = typeof Symbol === \"function\";\n var toPrimitiveSymbol = supportsSymbol && typeof Symbol.toPrimitive !== \"undefined\" ? Symbol.toPrimitive : \"@@toPrimitive\";\n var iteratorSymbol = supportsSymbol && typeof Symbol.iterator !== \"undefined\" ? Symbol.iterator : \"@@iterator\";\n var supportsCreate = typeof Object.create === \"function\"; // feature test for Object.create support\n var supportsProto = { __proto__: [] } instanceof Array; // feature test for __proto__ support\n var downLevel = !supportsCreate && !supportsProto;\n var HashMap = {\n // create an object in dictionary mode (a.k.a. \"slow\" mode in v8)\n create: supportsCreate\n ? function () { return MakeDictionary(Object.create(null)); }\n : supportsProto\n ? function () { return MakeDictionary({ __proto__: null }); }\n : function () { return MakeDictionary({}); },\n has: downLevel\n ? function (map, key) { return hasOwn.call(map, key); }\n : function (map, key) { return key in map; },\n get: downLevel\n ? function (map, key) { return hasOwn.call(map, key) ? map[key] : undefined; }\n : function (map, key) { return map[key]; },\n };\n // Load global or shim versions of Map, Set, and WeakMap\n var functionPrototype = Object.getPrototypeOf(Function);\n var _Map = typeof Map === \"function\" && typeof Map.prototype.entries === \"function\" ? Map : CreateMapPolyfill();\n var _Set = typeof Set === \"function\" && typeof Set.prototype.entries === \"function\" ? Set : CreateSetPolyfill();\n var _WeakMap = typeof WeakMap === \"function\" ? WeakMap : CreateWeakMapPolyfill();\n var registrySymbol = supportsSymbol ? Symbol.for(\"@reflect-metadata:registry\") : undefined;\n var metadataRegistry = GetOrCreateMetadataRegistry();\n var metadataProvider = CreateMetadataProvider(metadataRegistry);\n /**\n * Applies a set of decorators to a property of a target object.\n * @param decorators An array of decorators.\n * @param target The target object.\n * @param propertyKey (Optional) The property key to decorate.\n * @param attributes (Optional) The property descriptor for the target key.\n * @remarks Decorators are applied in reverse order.\n * @example\n *\n * class Example {\n * // property declarations are not part of ES6, though they are valid in TypeScript:\n * // static staticProperty;\n * // property;\n *\n * constructor(p) { }\n * static staticMethod(p) { }\n * method(p) { }\n * }\n *\n * // constructor\n * Example = Reflect.decorate(decoratorsArray, Example);\n *\n * // property (on constructor)\n * Reflect.decorate(decoratorsArray, Example, \"staticProperty\");\n *\n * // property (on prototype)\n * Reflect.decorate(decoratorsArray, Example.prototype, \"property\");\n *\n * // method (on constructor)\n * Object.defineProperty(Example, \"staticMethod\",\n * Reflect.decorate(decoratorsArray, Example, \"staticMethod\",\n * Object.getOwnPropertyDescriptor(Example, \"staticMethod\")));\n *\n * // method (on prototype)\n * Object.defineProperty(Example.prototype, \"method\",\n * Reflect.decorate(decoratorsArray, Example.prototype, \"method\",\n * Object.getOwnPropertyDescriptor(Example.prototype, \"method\")));\n *\n */\n function decorate(decorators, target, propertyKey, attributes) {\n if (!IsUndefined(propertyKey)) {\n if (!IsArray(decorators))\n throw new TypeError();\n if (!IsObject(target))\n throw new TypeError();\n if (!IsObject(attributes) && !IsUndefined(attributes) && !IsNull(attributes))\n throw new TypeError();\n if (IsNull(attributes))\n attributes = undefined;\n propertyKey = ToPropertyKey(propertyKey);\n return DecorateProperty(decorators, target, propertyKey, attributes);\n }\n else {\n if (!IsArray(decorators))\n throw new TypeError();\n if (!IsConstructor(target))\n throw new TypeError();\n return DecorateConstructor(decorators, target);\n }\n }\n exporter(\"decorate\", decorate);\n // 4.1.2 Reflect.metadata(metadataKey, metadataValue)\n // https://rbuckton.github.io/reflect-metadata/#reflect.metadata\n /**\n * A default metadata decorator factory that can be used on a class, class member, or parameter.\n * @param metadataKey The key for the metadata entry.\n * @param metadataValue The value for the metadata entry.\n * @returns A decorator function.\n * @remarks\n * If `metadataKey` is already defined for the target and target key, the\n * metadataValue for that key will be overwritten.\n * @example\n *\n * // constructor\n * @Reflect.metadata(key, value)\n * class Example {\n * }\n *\n * // property (on constructor, TypeScript only)\n * class Example {\n * @Reflect.metadata(key, value)\n * static staticProperty;\n * }\n *\n * // property (on prototype, TypeScript only)\n * class Example {\n * @Reflect.metadata(key, value)\n * property;\n * }\n *\n * // method (on constructor)\n * class Example {\n * @Reflect.metadata(key, value)\n * static staticMethod() { }\n * }\n *\n * // method (on prototype)\n * class Example {\n * @Reflect.metadata(key, value)\n * method() { }\n * }\n *\n */\n function metadata(metadataKey, metadataValue) {\n function decorator(target, propertyKey) {\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey) && !IsPropertyKey(propertyKey))\n throw new TypeError();\n OrdinaryDefineOwnMetadata(metadataKey, metadataValue, target, propertyKey);\n }\n return decorator;\n }\n exporter(\"metadata\", metadata);\n /**\n * Define a unique metadata entry on the target.\n * @param metadataKey A key used to store and retrieve metadata.\n * @param metadataValue A value that contains attached metadata.\n * @param target The target object on which to define metadata.\n * @param propertyKey (Optional) The property key for the target.\n * @example\n *\n * class Example {\n * // property declarations are not part of ES6, though they are valid in TypeScript:\n * // static staticProperty;\n * // property;\n *\n * constructor(p) { }\n * static staticMethod(p) { }\n * method(p) { }\n * }\n *\n * // constructor\n * Reflect.defineMetadata(\"custom:annotation\", options, Example);\n *\n * // property (on constructor)\n * Reflect.defineMetadata(\"custom:annotation\", options, Example, \"staticProperty\");\n *\n * // property (on prototype)\n * Reflect.defineMetadata(\"custom:annotation\", options, Example.prototype, \"property\");\n *\n * // method (on constructor)\n * Reflect.defineMetadata(\"custom:annotation\", options, Example, \"staticMethod\");\n *\n * // method (on prototype)\n * Reflect.defineMetadata(\"custom:annotation\", options, Example.prototype, \"method\");\n *\n * // decorator factory as metadata-producing annotation.\n * function MyAnnotation(options): Decorator {\n * return (target, key?) => Reflect.defineMetadata(\"custom:annotation\", options, target, key);\n * }\n *\n */\n function defineMetadata(metadataKey, metadataValue, target, propertyKey) {\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey))\n propertyKey = ToPropertyKey(propertyKey);\n return OrdinaryDefineOwnMetadata(metadataKey, metadataValue, target, propertyKey);\n }\n exporter(\"defineMetadata\", defineMetadata);\n /**\n * Gets a value indicating whether the target object or its prototype chain has the provided metadata key defined.\n * @param metadataKey A key used to store and retrieve metadata.\n * @param target The target object on which the metadata is defined.\n * @param propertyKey (Optional) The property key for the target.\n * @returns `true` if the metadata key was defined on the target object or its prototype chain; otherwise, `false`.\n * @example\n *\n * class Example {\n * // property declarations are not part of ES6, though they are valid in TypeScript:\n * // static staticProperty;\n * // property;\n *\n * constructor(p) { }\n * static staticMethod(p) { }\n * method(p) { }\n * }\n *\n * // constructor\n * result = Reflect.hasMetadata(\"custom:annotation\", Example);\n *\n * // property (on constructor)\n * result = Reflect.hasMetadata(\"custom:annotation\", Example, \"staticProperty\");\n *\n * // property (on prototype)\n * result = Reflect.hasMetadata(\"custom:annotation\", Example.prototype, \"property\");\n *\n * // method (on constructor)\n * result = Reflect.hasMetadata(\"custom:annotation\", Example, \"staticMethod\");\n *\n * // method (on prototype)\n * result = Reflect.hasMetadata(\"custom:annotation\", Example.prototype, \"method\");\n *\n */\n function hasMetadata(metadataKey, target, propertyKey) {\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey))\n propertyKey = ToPropertyKey(propertyKey);\n return OrdinaryHasMetadata(metadataKey, target, propertyKey);\n }\n exporter(\"hasMetadata\", hasMetadata);\n /**\n * Gets a value indicating whether the target object has the provided metadata key defined.\n * @param metadataKey A key used to store and retrieve metadata.\n * @param target The target object on which the metadata is defined.\n * @param propertyKey (Optional) The property key for the target.\n * @returns `true` if the metadata key was defined on the target object; otherwise, `false`.\n * @example\n *\n * class Example {\n * // property declarations are not part of ES6, though they are valid in TypeScript:\n * // static staticProperty;\n * // property;\n *\n * constructor(p) { }\n * static staticMethod(p) { }\n * method(p) { }\n * }\n *\n * // constructor\n * result = Reflect.hasOwnMetadata(\"custom:annotation\", Example);\n *\n * // property (on constructor)\n * result = Reflect.hasOwnMetadata(\"custom:annotation\", Example, \"staticProperty\");\n *\n * // property (on prototype)\n * result = Reflect.hasOwnMetadata(\"custom:annotation\", Example.prototype, \"property\");\n *\n * // method (on constructor)\n * result = Reflect.hasOwnMetadata(\"custom:annotation\", Example, \"staticMethod\");\n *\n * // method (on prototype)\n * result = Reflect.hasOwnMetadata(\"custom:annotation\", Example.prototype, \"method\");\n *\n */\n function hasOwnMetadata(metadataKey, target, propertyKey) {\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey))\n propertyKey = ToPropertyKey(propertyKey);\n return OrdinaryHasOwnMetadata(metadataKey, target, propertyKey);\n }\n exporter(\"hasOwnMetadata\", hasOwnMetadata);\n /**\n * Gets the metadata value for the provided metadata key on the target object or its prototype chain.\n * @param metadataKey A key used to store and retrieve metadata.\n * @param target The target object on which the metadata is defined.\n * @param propertyKey (Optional) The property key for the target.\n * @returns The metadata value for the metadata key if found; otherwise, `undefined`.\n * @example\n *\n * class Example {\n * // property declarations are not part of ES6, though they are valid in TypeScript:\n * // static staticProperty;\n * // property;\n *\n * constructor(p) { }\n * static staticMethod(p) { }\n * method(p) { }\n * }\n *\n * // constructor\n * result = Reflect.getMetadata(\"custom:annotation\", Example);\n *\n * // property (on constructor)\n * result = Reflect.getMetadata(\"custom:annotation\", Example, \"staticProperty\");\n *\n * // property (on prototype)\n * result = Reflect.getMetadata(\"custom:annotation\", Example.prototype, \"property\");\n *\n * // method (on constructor)\n * result = Reflect.getMetadata(\"custom:annotation\", Example, \"staticMethod\");\n *\n * // method (on prototype)\n * result = Reflect.getMetadata(\"custom:annotation\", Example.prototype, \"method\");\n *\n */\n function getMetadata(metadataKey, target, propertyKey) {\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey))\n propertyKey = ToPropertyKey(propertyKey);\n return OrdinaryGetMetadata(metadataKey, target, propertyKey);\n }\n exporter(\"getMetadata\", getMetadata);\n /**\n * Gets the metadata value for the provided metadata key on the target object.\n * @param metadataKey A key used to store and retrieve metadata.\n * @param target The target object on which the metadata is defined.\n * @param propertyKey (Optional) The property key for the target.\n * @returns The metadata value for the metadata key if found; otherwise, `undefined`.\n * @example\n *\n * class Example {\n * // property declarations are not part of ES6, though they are valid in TypeScript:\n * // static staticProperty;\n * // property;\n *\n * constructor(p) { }\n * static staticMethod(p) { }\n * method(p) { }\n * }\n *\n * // constructor\n * result = Reflect.getOwnMetadata(\"custom:annotation\", Example);\n *\n * // property (on constructor)\n * result = Reflect.getOwnMetadata(\"custom:annotation\", Example, \"staticProperty\");\n *\n * // property (on prototype)\n * result = Reflect.getOwnMetadata(\"custom:annotation\", Example.prototype, \"property\");\n *\n * // method (on constructor)\n * result = Reflect.getOwnMetadata(\"custom:annotation\", Example, \"staticMethod\");\n *\n * // method (on prototype)\n * result = Reflect.getOwnMetadata(\"custom:annotation\", Example.prototype, \"method\");\n *\n */\n function getOwnMetadata(metadataKey, target, propertyKey) {\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey))\n propertyKey = ToPropertyKey(propertyKey);\n return OrdinaryGetOwnMetadata(metadataKey, target, propertyKey);\n }\n exporter(\"getOwnMetadata\", getOwnMetadata);\n /**\n * Gets the metadata keys defined on the target object or its prototype chain.\n * @param target The target object on which the metadata is defined.\n * @param propertyKey (Optional) The property key for the target.\n * @returns An array of unique metadata keys.\n * @example\n *\n * class Example {\n * // property declarations are not part of ES6, though they are valid in TypeScript:\n * // static staticProperty;\n * // property;\n *\n * constructor(p) { }\n * static staticMethod(p) { }\n * method(p) { }\n * }\n *\n * // constructor\n * result = Reflect.getMetadataKeys(Example);\n *\n * // property (on constructor)\n * result = Reflect.getMetadataKeys(Example, \"staticProperty\");\n *\n * // property (on prototype)\n * result = Reflect.getMetadataKeys(Example.prototype, \"property\");\n *\n * // method (on constructor)\n * result = Reflect.getMetadataKeys(Example, \"staticMethod\");\n *\n * // method (on prototype)\n * result = Reflect.getMetadataKeys(Example.prototype, \"method\");\n *\n */\n function getMetadataKeys(target, propertyKey) {\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey))\n propertyKey = ToPropertyKey(propertyKey);\n return OrdinaryMetadataKeys(target, propertyKey);\n }\n exporter(\"getMetadataKeys\", getMetadataKeys);\n /**\n * Gets the unique metadata keys defined on the target object.\n * @param target The target object on which the metadata is defined.\n * @param propertyKey (Optional) The property key for the target.\n * @returns An array of unique metadata keys.\n * @example\n *\n * class Example {\n * // property declarations are not part of ES6, though they are valid in TypeScript:\n * // static staticProperty;\n * // property;\n *\n * constructor(p) { }\n * static staticMethod(p) { }\n * method(p) { }\n * }\n *\n * // constructor\n * result = Reflect.getOwnMetadataKeys(Example);\n *\n * // property (on constructor)\n * result = Reflect.getOwnMetadataKeys(Example, \"staticProperty\");\n *\n * // property (on prototype)\n * result = Reflect.getOwnMetadataKeys(Example.prototype, \"property\");\n *\n * // method (on constructor)\n * result = Reflect.getOwnMetadataKeys(Example, \"staticMethod\");\n *\n * // method (on prototype)\n * result = Reflect.getOwnMetadataKeys(Example.prototype, \"method\");\n *\n */\n function getOwnMetadataKeys(target, propertyKey) {\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey))\n propertyKey = ToPropertyKey(propertyKey);\n return OrdinaryOwnMetadataKeys(target, propertyKey);\n }\n exporter(\"getOwnMetadataKeys\", getOwnMetadataKeys);\n /**\n * Deletes the metadata entry from the target object with the provided key.\n * @param metadataKey A key used to store and retrieve metadata.\n * @param target The target object on which the metadata is defined.\n * @param propertyKey (Optional) The property key for the target.\n * @returns `true` if the metadata entry was found and deleted; otherwise, false.\n * @example\n *\n * class Example {\n * // property declarations are not part of ES6, though they are valid in TypeScript:\n * // static staticProperty;\n * // property;\n *\n * constructor(p) { }\n * static staticMethod(p) { }\n * method(p) { }\n * }\n *\n * // constructor\n * result = Reflect.deleteMetadata(\"custom:annotation\", Example);\n *\n * // property (on constructor)\n * result = Reflect.deleteMetadata(\"custom:annotation\", Example, \"staticProperty\");\n *\n * // property (on prototype)\n * result = Reflect.deleteMetadata(\"custom:annotation\", Example.prototype, \"property\");\n *\n * // method (on constructor)\n * result = Reflect.deleteMetadata(\"custom:annotation\", Example, \"staticMethod\");\n *\n * // method (on prototype)\n * result = Reflect.deleteMetadata(\"custom:annotation\", Example.prototype, \"method\");\n *\n */\n function deleteMetadata(metadataKey, target, propertyKey) {\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey))\n propertyKey = ToPropertyKey(propertyKey);\n if (!IsObject(target))\n throw new TypeError();\n if (!IsUndefined(propertyKey))\n propertyKey = ToPropertyKey(propertyKey);\n var provider = GetMetadataProvider(target, propertyKey, /*Create*/ false);\n if (IsUndefined(provider))\n return false;\n return provider.OrdinaryDeleteMetadata(metadataKey, target, propertyKey);\n }\n exporter(\"deleteMetadata\", deleteMetadata);\n function DecorateConstructor(decorators, target) {\n for (var i = decorators.length - 1; i >= 0; --i) {\n var decorator = decorators[i];\n var decorated = decorator(target);\n if (!IsUndefined(decorated) && !IsNull(decorated)) {\n if (!IsConstructor(decorated))\n throw new TypeError();\n target = decorated;\n }\n }\n return target;\n }\n function DecorateProperty(decorators, target, propertyKey, descriptor) {\n for (var i = decorators.length - 1; i >= 0; --i) {\n var decorator = decorators[i];\n var decorated = decorator(target, propertyKey, descriptor);\n if (!IsUndefined(decorated) && !IsNull(decorated)) {\n if (!IsObject(decorated))\n throw new TypeError();\n descriptor = decorated;\n }\n }\n return descriptor;\n }\n // 3.1.1.1 OrdinaryHasMetadata(MetadataKey, O, P)\n // https://rbuckton.github.io/reflect-metadata/#ordinaryhasmetadata\n function OrdinaryHasMetadata(MetadataKey, O, P) {\n var hasOwn = OrdinaryHasOwnMetadata(MetadataKey, O, P);\n if (hasOwn)\n return true;\n var parent = OrdinaryGetPrototypeOf(O);\n if (!IsNull(parent))\n return OrdinaryHasMetadata(MetadataKey, parent, P);\n return false;\n }\n // 3.1.2.1 OrdinaryHasOwnMetadata(MetadataKey, O, P)\n // https://rbuckton.github.io/reflect-metadata/#ordinaryhasownmetadata\n function OrdinaryHasOwnMetadata(MetadataKey, O, P) {\n var provider = GetMetadataProvider(O, P, /*Create*/ false);\n if (IsUndefined(provider))\n return false;\n return ToBoolean(provider.OrdinaryHasOwnMetadata(MetadataKey, O, P));\n }\n // 3.1.3.1 OrdinaryGetMetadata(MetadataKey, O, P)\n // https://rbuckton.github.io/reflect-metadata/#ordinarygetmetadata\n function OrdinaryGetMetadata(MetadataKey, O, P) {\n var hasOwn = OrdinaryHasOwnMetadata(MetadataKey, O, P);\n if (hasOwn)\n return OrdinaryGetOwnMetadata(MetadataKey, O, P);\n var parent = OrdinaryGetPrototypeOf(O);\n if (!IsNull(parent))\n return OrdinaryGetMetadata(MetadataKey, parent, P);\n return undefined;\n }\n // 3.1.4.1 OrdinaryGetOwnMetadata(MetadataKey, O, P)\n // https://rbuckton.github.io/reflect-metadata/#ordinarygetownmetadata\n function OrdinaryGetOwnMetadata(MetadataKey, O, P) {\n var provider = GetMetadataProvider(O, P, /*Create*/ false);\n if (IsUndefined(provider))\n return;\n return provider.OrdinaryGetOwnMetadata(MetadataKey, O, P);\n }\n // 3.1.5.1 OrdinaryDefineOwnMetadata(MetadataKey, MetadataValue, O, P)\n // https://rbuckton.github.io/reflect-metadata/#ordinarydefineownmetadata\n function OrdinaryDefineOwnMetadata(MetadataKey, MetadataValue, O, P) {\n var provider = GetMetadataProvider(O, P, /*Create*/ true);\n provider.OrdinaryDefineOwnMetadata(MetadataKey, MetadataValue, O, P);\n }\n // 3.1.6.1 OrdinaryMetadataKeys(O, P)\n // https://rbuckton.github.io/reflect-metadata/#ordinarymetadatakeys\n function OrdinaryMetadataKeys(O, P) {\n var ownKeys = OrdinaryOwnMetadataKeys(O, P);\n var parent = OrdinaryGetPrototypeOf(O);\n if (parent === null)\n return ownKeys;\n var parentKeys = OrdinaryMetadataKeys(parent, P);\n if (parentKeys.length <= 0)\n return ownKeys;\n if (ownKeys.length <= 0)\n return parentKeys;\n var set = new _Set();\n var keys = [];\n for (var _i = 0, ownKeys_1 = ownKeys; _i < ownKeys_1.length; _i++) {\n var key = ownKeys_1[_i];\n var hasKey = set.has(key);\n if (!hasKey) {\n set.add(key);\n keys.push(key);\n }\n }\n for (var _a = 0, parentKeys_1 = parentKeys; _a < parentKeys_1.length; _a++) {\n var key = parentKeys_1[_a];\n var hasKey = set.has(key);\n if (!hasKey) {\n set.add(key);\n keys.push(key);\n }\n }\n return keys;\n }\n // 3.1.7.1 OrdinaryOwnMetadataKeys(O, P)\n // https://rbuckton.github.io/reflect-metadata/#ordinaryownmetadatakeys\n function OrdinaryOwnMetadataKeys(O, P) {\n var provider = GetMetadataProvider(O, P, /*create*/ false);\n if (!provider) {\n return [];\n }\n return provider.OrdinaryOwnMetadataKeys(O, P);\n }\n // 6 ECMAScript Data Types and Values\n // https://tc39.github.io/ecma262/#sec-ecmascript-data-types-and-values\n function Type(x) {\n if (x === null)\n return 1 /* Null */;\n switch (typeof x) {\n case \"undefined\": return 0 /* Undefined */;\n case \"boolean\": return 2 /* Boolean */;\n case \"string\": return 3 /* String */;\n case \"symbol\": return 4 /* Symbol */;\n case \"number\": return 5 /* Number */;\n case \"object\": return x === null ? 1 /* Null */ : 6 /* Object */;\n default: return 6 /* Object */;\n }\n }\n // 6.1.1 The Undefined Type\n // https://tc39.github.io/ecma262/#sec-ecmascript-language-types-undefined-type\n function IsUndefined(x) {\n return x === undefined;\n }\n // 6.1.2 The Null Type\n // https://tc39.github.io/ecma262/#sec-ecmascript-language-types-null-type\n function IsNull(x) {\n return x === null;\n }\n // 6.1.5 The Symbol Type\n // https://tc39.github.io/ecma262/#sec-ecmascript-language-types-symbol-type\n function IsSymbol(x) {\n return typeof x === \"symbol\";\n }\n // 6.1.7 The Object Type\n // https://tc39.github.io/ecma262/#sec-object-type\n function IsObject(x) {\n return typeof x === \"object\" ? x !== null : typeof x === \"function\";\n }\n // 7.1 Type Conversion\n // https://tc39.github.io/ecma262/#sec-type-conversion\n // 7.1.1 ToPrimitive(input [, PreferredType])\n // https://tc39.github.io/ecma262/#sec-toprimitive\n function ToPrimitive(input, PreferredType) {\n switch (Type(input)) {\n case 0 /* Undefined */: return input;\n case 1 /* Null */: return input;\n case 2 /* Boolean */: return input;\n case 3 /* String */: return input;\n case 4 /* Symbol */: return input;\n case 5 /* Number */: return input;\n }\n var hint = PreferredType === 3 /* String */ ? \"string\" : PreferredType === 5 /* Number */ ? \"number\" : \"default\";\n var exoticToPrim = GetMethod(input, toPrimitiveSymbol);\n if (exoticToPrim !== undefined) {\n var result = exoticToPrim.call(input, hint);\n if (IsObject(result))\n throw new TypeError();\n return result;\n }\n return OrdinaryToPrimitive(input, hint === \"default\" ? \"number\" : hint);\n }\n // 7.1.1.1 OrdinaryToPrimitive(O, hint)\n // https://tc39.github.io/ecma262/#sec-ordinarytoprimitive\n function OrdinaryToPrimitive(O, hint) {\n if (hint === \"string\") {\n var toString_1 = O.toString;\n if (IsCallable(toString_1)) {\n var result = toString_1.call(O);\n if (!IsObject(result))\n return result;\n }\n var valueOf = O.valueOf;\n if (IsCallable(valueOf)) {\n var result = valueOf.call(O);\n if (!IsObject(result))\n return result;\n }\n }\n else {\n var valueOf = O.valueOf;\n if (IsCallable(valueOf)) {\n var result = valueOf.call(O);\n if (!IsObject(result))\n return result;\n }\n var toString_2 = O.toString;\n if (IsCallable(toString_2)) {\n var result = toString_2.call(O);\n if (!IsObject(result))\n return result;\n }\n }\n throw new TypeError();\n }\n // 7.1.2 ToBoolean(argument)\n // https://tc39.github.io/ecma262/2016/#sec-toboolean\n function ToBoolean(argument) {\n return !!argument;\n }\n // 7.1.12 ToString(argument)\n // https://tc39.github.io/ecma262/#sec-tostring\n function ToString(argument) {\n return \"\" + argument;\n }\n // 7.1.14 ToPropertyKey(argument)\n // https://tc39.github.io/ecma262/#sec-topropertykey\n function ToPropertyKey(argument) {\n var key = ToPrimitive(argument, 3 /* String */);\n if (IsSymbol(key))\n return key;\n return ToString(key);\n }\n // 7.2 Testing and Comparison Operations\n // https://tc39.github.io/ecma262/#sec-testing-and-comparison-operations\n // 7.2.2 IsArray(argument)\n // https://tc39.github.io/ecma262/#sec-isarray\n function IsArray(argument) {\n return Array.isArray\n ? Array.isArray(argument)\n : argument instanceof Object\n ? argument instanceof Array\n : Object.prototype.toString.call(argument) === \"[object Array]\";\n }\n // 7.2.3 IsCallable(argument)\n // https://tc39.github.io/ecma262/#sec-iscallable\n function IsCallable(argument) {\n // NOTE: This is an approximation as we cannot check for [[Call]] internal method.\n return typeof argument === \"function\";\n }\n // 7.2.4 IsConstructor(argument)\n // https://tc39.github.io/ecma262/#sec-isconstructor\n function IsConstructor(argument) {\n // NOTE: This is an approximation as we cannot check for [[Construct]] internal method.\n return typeof argument === \"function\";\n }\n // 7.2.7 IsPropertyKey(argument)\n // https://tc39.github.io/ecma262/#sec-ispropertykey\n function IsPropertyKey(argument) {\n switch (Type(argument)) {\n case 3 /* String */: return true;\n case 4 /* Symbol */: return true;\n default: return false;\n }\n }\n function SameValueZero(x, y) {\n return x === y || x !== x && y !== y;\n }\n // 7.3 Operations on Objects\n // https://tc39.github.io/ecma262/#sec-operations-on-objects\n // 7.3.9 GetMethod(V, P)\n // https://tc39.github.io/ecma262/#sec-getmethod\n function GetMethod(V, P) {\n var func = V[P];\n if (func === undefined || func === null)\n return undefined;\n if (!IsCallable(func))\n throw new TypeError();\n return func;\n }\n // 7.4 Operations on Iterator Objects\n // https://tc39.github.io/ecma262/#sec-operations-on-iterator-objects\n function GetIterator(obj) {\n var method = GetMethod(obj, iteratorSymbol);\n if (!IsCallable(method))\n throw new TypeError(); // from Call\n var iterator = method.call(obj);\n if (!IsObject(iterator))\n throw new TypeError();\n return iterator;\n }\n // 7.4.4 IteratorValue(iterResult)\n // https://tc39.github.io/ecma262/2016/#sec-iteratorvalue\n function IteratorValue(iterResult) {\n return iterResult.value;\n }\n // 7.4.5 IteratorStep(iterator)\n // https://tc39.github.io/ecma262/#sec-iteratorstep\n function IteratorStep(iterator) {\n var result = iterator.next();\n return result.done ? false : result;\n }\n // 7.4.6 IteratorClose(iterator, completion)\n // https://tc39.github.io/ecma262/#sec-iteratorclose\n function IteratorClose(iterator) {\n var f = iterator[\"return\"];\n if (f)\n f.call(iterator);\n }\n // 9.1 Ordinary Object Internal Methods and Internal Slots\n // https://tc39.github.io/ecma262/#sec-ordinary-object-internal-methods-and-internal-slots\n // 9.1.1.1 OrdinaryGetPrototypeOf(O)\n // https://tc39.github.io/ecma262/#sec-ordinarygetprototypeof\n function OrdinaryGetPrototypeOf(O) {\n var proto = Object.getPrototypeOf(O);\n if (typeof O !== \"function\" || O === functionPrototype)\n return proto;\n // TypeScript doesn't set __proto__ in ES5, as it's non-standard.\n // Try to determine the superclass constructor. Compatible implementations\n // must either set __proto__ on a subclass constructor to the superclass constructor,\n // or ensure each class has a valid `constructor` property on its prototype that\n // points back to the constructor.\n // If this is not the same as Function.[[Prototype]], then this is definately inherited.\n // This is the case when in ES6 or when using __proto__ in a compatible browser.\n if (proto !== functionPrototype)\n return proto;\n // If the super prototype is Object.prototype, null, or undefined, then we cannot determine the heritage.\n var prototype = O.prototype;\n var prototypeProto = prototype && Object.getPrototypeOf(prototype);\n if (prototypeProto == null || prototypeProto === Object.prototype)\n return proto;\n // If the constructor was not a function, then we cannot determine the heritage.\n var constructor = prototypeProto.constructor;\n if (typeof constructor !== \"function\")\n return proto;\n // If we have some kind of self-reference, then we cannot determine the heritage.\n if (constructor === O)\n return proto;\n // we have a pretty good guess at the heritage.\n return constructor;\n }\n // Global metadata registry\n // - Allows `import \"reflect-metadata\"` and `import \"reflect-metadata/no-conflict\"` to interoperate.\n // - Uses isolated metadata if `Reflect` is frozen before the registry can be installed.\n /**\n * Creates a registry used to allow multiple `reflect-metadata` providers.\n */\n function CreateMetadataRegistry() {\n var fallback;\n if (!IsUndefined(registrySymbol) &&\n typeof root.Reflect !== \"undefined\" &&\n !(registrySymbol in root.Reflect) &&\n typeof root.Reflect.defineMetadata === \"function\") {\n // interoperate with older version of `reflect-metadata` that did not support a registry.\n fallback = CreateFallbackProvider(root.Reflect);\n }\n var first;\n var second;\n var rest;\n var targetProviderMap = new _WeakMap();\n var registry = {\n registerProvider: registerProvider,\n getProvider: getProvider,\n setProvider: setProvider,\n };\n return registry;\n function registerProvider(provider) {\n if (!Object.isExtensible(registry)) {\n throw new Error(\"Cannot add provider to a frozen registry.\");\n }\n switch (true) {\n case fallback === provider: break;\n case IsUndefined(first):\n first = provider;\n break;\n case first === provider: break;\n case IsUndefined(second):\n second = provider;\n break;\n case second === provider: break;\n default:\n if (rest === undefined)\n rest = new _Set();\n rest.add(provider);\n break;\n }\n }\n function getProviderNoCache(O, P) {\n if (!IsUndefined(first)) {\n if (first.isProviderFor(O, P))\n return first;\n if (!IsUndefined(second)) {\n if (second.isProviderFor(O, P))\n return first;\n if (!IsUndefined(rest)) {\n var iterator = GetIterator(rest);\n while (true) {\n var next = IteratorStep(iterator);\n if (!next) {\n return undefined;\n }\n var provider = IteratorValue(next);\n if (provider.isProviderFor(O, P)) {\n IteratorClose(iterator);\n return provider;\n }\n }\n }\n }\n }\n if (!IsUndefined(fallback) && fallback.isProviderFor(O, P)) {\n return fallback;\n }\n return undefined;\n }\n function getProvider(O, P) {\n var providerMap = targetProviderMap.get(O);\n var provider;\n if (!IsUndefined(providerMap)) {\n provider = providerMap.get(P);\n }\n if (!IsUndefined(provider)) {\n return provider;\n }\n provider = getProviderNoCache(O, P);\n if (!IsUndefined(provider)) {\n if (IsUndefined(providerMap)) {\n providerMap = new _Map();\n targetProviderMap.set(O, providerMap);\n }\n providerMap.set(P, provider);\n }\n return provider;\n }\n function hasProvider(provider) {\n if (IsUndefined(provider))\n throw new TypeError();\n return first === provider || second === provider || !IsUndefined(rest) && rest.has(provider);\n }\n function setProvider(O, P, provider) {\n if (!hasProvider(provider)) {\n throw new Error(\"Metadata provider not registered.\");\n }\n var existingProvider = getProvider(O, P);\n if (existingProvider !== provider) {\n if (!IsUndefined(existingProvider)) {\n return false;\n }\n var providerMap = targetProviderMap.get(O);\n if (IsUndefined(providerMap)) {\n providerMap = new _Map();\n targetProviderMap.set(O, providerMap);\n }\n providerMap.set(P, provider);\n }\n return true;\n }\n }\n /**\n * Gets or creates the shared registry of metadata providers.\n */\n function GetOrCreateMetadataRegistry() {\n var metadataRegistry;\n if (!IsUndefined(registrySymbol) && IsObject(root.Reflect) && Object.isExtensible(root.Reflect)) {\n metadataRegistry = root.Reflect[registrySymbol];\n }\n if (IsUndefined(metadataRegistry)) {\n metadataRegistry = CreateMetadataRegistry();\n }\n if (!IsUndefined(registrySymbol) && IsObject(root.Reflect) && Object.isExtensible(root.Reflect)) {\n Object.defineProperty(root.Reflect, registrySymbol, {\n enumerable: false,\n configurable: false,\n writable: false,\n value: metadataRegistry\n });\n }\n return metadataRegistry;\n }\n function CreateMetadataProvider(registry) {\n // [[Metadata]] internal slot\n // https://rbuckton.github.io/reflect-metadata/#ordinary-object-internal-methods-and-internal-slots\n var metadata = new _WeakMap();\n var provider = {\n isProviderFor: function (O, P) {\n var targetMetadata = metadata.get(O);\n if (IsUndefined(targetMetadata))\n return false;\n return targetMetadata.has(P);\n },\n OrdinaryDefineOwnMetadata: OrdinaryDefineOwnMetadata,\n OrdinaryHasOwnMetadata: OrdinaryHasOwnMetadata,\n OrdinaryGetOwnMetadata: OrdinaryGetOwnMetadata,\n OrdinaryOwnMetadataKeys: OrdinaryOwnMetadataKeys,\n OrdinaryDeleteMetadata: OrdinaryDeleteMetadata,\n };\n metadataRegistry.registerProvider(provider);\n return provider;\n function GetOrCreateMetadataMap(O, P, Create) {\n var targetMetadata = metadata.get(O);\n var createdTargetMetadata = false;\n if (IsUndefined(targetMetadata)) {\n if (!Create)\n return undefined;\n targetMetadata = new _Map();\n metadata.set(O, targetMetadata);\n createdTargetMetadata = true;\n }\n var metadataMap = targetMetadata.get(P);\n if (IsUndefined(metadataMap)) {\n if (!Create)\n return undefined;\n metadataMap = new _Map();\n targetMetadata.set(P, metadataMap);\n if (!registry.setProvider(O, P, provider)) {\n targetMetadata.delete(P);\n if (createdTargetMetadata) {\n metadata.delete(O);\n }\n throw new Error(\"Wrong provider for target.\");\n }\n }\n return metadataMap;\n }\n // 3.1.2.1 OrdinaryHasOwnMetadata(MetadataKey, O, P)\n // https://rbuckton.github.io/reflect-metadata/#ordinaryhasownmetadata\n function OrdinaryHasOwnMetadata(MetadataKey, O, P) {\n var metadataMap = GetOrCreateMetadataMap(O, P, /*Create*/ false);\n if (IsUndefined(metadataMap))\n return false;\n return ToBoolean(metadataMap.has(MetadataKey));\n }\n // 3.1.4.1 OrdinaryGetOwnMetadata(MetadataKey, O, P)\n // https://rbuckton.github.io/reflect-metadata/#ordinarygetownmetadata\n function OrdinaryGetOwnMetadata(MetadataKey, O, P) {\n var metadataMap = GetOrCreateMetadataMap(O, P, /*Create*/ false);\n if (IsUndefined(metadataMap))\n return undefined;\n return metadataMap.get(MetadataKey);\n }\n // 3.1.5.1 OrdinaryDefineOwnMetadata(MetadataKey, MetadataValue, O, P)\n // https://rbuckton.github.io/reflect-metadata/#ordinarydefineownmetadata\n function OrdinaryDefineOwnMetadata(MetadataKey, MetadataValue, O, P) {\n var metadataMap = GetOrCreateMetadataMap(O, P, /*Create*/ true);\n metadataMap.set(MetadataKey, MetadataValue);\n }\n // 3.1.7.1 OrdinaryOwnMetadataKeys(O, P)\n // https://rbuckton.github.io/reflect-metadata/#ordinaryownmetadatakeys\n function OrdinaryOwnMetadataKeys(O, P) {\n var keys = [];\n var metadataMap = GetOrCreateMetadataMap(O, P, /*Create*/ false);\n if (IsUndefined(metadataMap))\n return keys;\n var keysObj = metadataMap.keys();\n var iterator = GetIterator(keysObj);\n var k = 0;\n while (true) {\n var next = IteratorStep(iterator);\n if (!next) {\n keys.length = k;\n return keys;\n }\n var nextValue = IteratorValue(next);\n try {\n keys[k] = nextValue;\n }\n catch (e) {\n try {\n IteratorClose(iterator);\n }\n finally {\n throw e;\n }\n }\n k++;\n }\n }\n function OrdinaryDeleteMetadata(MetadataKey, O, P) {\n var metadataMap = GetOrCreateMetadataMap(O, P, /*Create*/ false);\n if (IsUndefined(metadataMap))\n return false;\n if (!metadataMap.delete(MetadataKey))\n return false;\n if (metadataMap.size === 0) {\n var targetMetadata = metadata.get(O);\n if (!IsUndefined(targetMetadata)) {\n targetMetadata.delete(P);\n if (targetMetadata.size === 0) {\n metadata.delete(targetMetadata);\n }\n }\n }\n return true;\n }\n }\n function CreateFallbackProvider(reflect) {\n var defineMetadata = reflect.defineMetadata, hasOwnMetadata = reflect.hasOwnMetadata, getOwnMetadata = reflect.getOwnMetadata, getOwnMetadataKeys = reflect.getOwnMetadataKeys, deleteMetadata = reflect.deleteMetadata;\n var metadataOwner = new _WeakMap();\n var provider = {\n isProviderFor: function (O, P) {\n var metadataPropertySet = metadataOwner.get(O);\n if (!IsUndefined(metadataPropertySet) && metadataPropertySet.has(P)) {\n return true;\n }\n if (getOwnMetadataKeys(O, P).length) {\n if (IsUndefined(metadataPropertySet)) {\n metadataPropertySet = new _Set();\n metadataOwner.set(O, metadataPropertySet);\n }\n metadataPropertySet.add(P);\n return true;\n }\n return false;\n },\n OrdinaryDefineOwnMetadata: defineMetadata,\n OrdinaryHasOwnMetadata: hasOwnMetadata,\n OrdinaryGetOwnMetadata: getOwnMetadata,\n OrdinaryOwnMetadataKeys: getOwnMetadataKeys,\n OrdinaryDeleteMetadata: deleteMetadata,\n };\n return provider;\n }\n /**\n * Gets the metadata provider for an object. If the object has no metadata provider and this is for a create operation,\n * then this module's metadata provider is assigned to the object.\n */\n function GetMetadataProvider(O, P, Create) {\n var registeredProvider = metadataRegistry.getProvider(O, P);\n if (!IsUndefined(registeredProvider)) {\n return registeredProvider;\n }\n if (Create) {\n if (metadataRegistry.setProvider(O, P, metadataProvider)) {\n return metadataProvider;\n }\n throw new Error(\"Illegal state.\");\n }\n return undefined;\n }\n // naive Map shim\n function CreateMapPolyfill() {\n var cacheSentinel = {};\n var arraySentinel = [];\n var MapIterator = /** @class */ (function () {\n function MapIterator(keys, values, selector) {\n this._index = 0;\n this._keys = keys;\n this._values = values;\n this._selector = selector;\n }\n MapIterator.prototype[\"@@iterator\"] = function () { return this; };\n MapIterator.prototype[iteratorSymbol] = function () { return this; };\n MapIterator.prototype.next = function () {\n var index = this._index;\n if (index >= 0 && index < this._keys.length) {\n var result = this._selector(this._keys[index], this._values[index]);\n if (index + 1 >= this._keys.length) {\n this._index = -1;\n this._keys = arraySentinel;\n this._values = arraySentinel;\n }\n else {\n this._index++;\n }\n return { value: result, done: false };\n }\n return { value: undefined, done: true };\n };\n MapIterator.prototype.throw = function (error) {\n if (this._index >= 0) {\n this._index = -1;\n this._keys = arraySentinel;\n this._values = arraySentinel;\n }\n throw error;\n };\n MapIterator.prototype.return = function (value) {\n if (this._index >= 0) {\n this._index = -1;\n this._keys = arraySentinel;\n this._values = arraySentinel;\n }\n return { value: value, done: true };\n };\n return MapIterator;\n }());\n var Map = /** @class */ (function () {\n function Map() {\n this._keys = [];\n this._values = [];\n this._cacheKey = cacheSentinel;\n this._cacheIndex = -2;\n }\n Object.defineProperty(Map.prototype, \"size\", {\n get: function () { return this._keys.length; },\n enumerable: true,\n configurable: true\n });\n Map.prototype.has = function (key) { return this._find(key, /*insert*/ false) >= 0; };\n Map.prototype.get = function (key) {\n var index = this._find(key, /*insert*/ false);\n return index >= 0 ? this._values[index] : undefined;\n };\n Map.prototype.set = function (key, value) {\n var index = this._find(key, /*insert*/ true);\n this._values[index] = value;\n return this;\n };\n Map.prototype.delete = function (key) {\n var index = this._find(key, /*insert*/ false);\n if (index >= 0) {\n var size = this._keys.length;\n for (var i = index + 1; i < size; i++) {\n this._keys[i - 1] = this._keys[i];\n this._values[i - 1] = this._values[i];\n }\n this._keys.length--;\n this._values.length--;\n if (SameValueZero(key, this._cacheKey)) {\n this._cacheKey = cacheSentinel;\n this._cacheIndex = -2;\n }\n return true;\n }\n return false;\n };\n Map.prototype.clear = function () {\n this._keys.length = 0;\n this._values.length = 0;\n this._cacheKey = cacheSentinel;\n this._cacheIndex = -2;\n };\n Map.prototype.keys = function () { return new MapIterator(this._keys, this._values, getKey); };\n Map.prototype.values = function () { return new MapIterator(this._keys, this._values, getValue); };\n Map.prototype.entries = function () { return new MapIterator(this._keys, this._values, getEntry); };\n Map.prototype[\"@@iterator\"] = function () { return this.entries(); };\n Map.prototype[iteratorSymbol] = function () { return this.entries(); };\n Map.prototype._find = function (key, insert) {\n if (!SameValueZero(this._cacheKey, key)) {\n this._cacheIndex = -1;\n for (var i = 0; i < this._keys.length; i++) {\n if (SameValueZero(this._keys[i], key)) {\n this._cacheIndex = i;\n break;\n }\n }\n }\n if (this._cacheIndex < 0 && insert) {\n this._cacheIndex = this._keys.length;\n this._keys.push(key);\n this._values.push(undefined);\n }\n return this._cacheIndex;\n };\n return Map;\n }());\n return Map;\n function getKey(key, _) {\n return key;\n }\n function getValue(_, value) {\n return value;\n }\n function getEntry(key, value) {\n return [key, value];\n }\n }\n // naive Set shim\n function CreateSetPolyfill() {\n var Set = /** @class */ (function () {\n function Set() {\n this._map = new _Map();\n }\n Object.defineProperty(Set.prototype, \"size\", {\n get: function () { return this._map.size; },\n enumerable: true,\n configurable: true\n });\n Set.prototype.has = function (value) { return this._map.has(value); };\n Set.prototype.add = function (value) { return this._map.set(value, value), this; };\n Set.prototype.delete = function (value) { return this._map.delete(value); };\n Set.prototype.clear = function () { this._map.clear(); };\n Set.prototype.keys = function () { return this._map.keys(); };\n Set.prototype.values = function () { return this._map.keys(); };\n Set.prototype.entries = function () { return this._map.entries(); };\n Set.prototype[\"@@iterator\"] = function () { return this.keys(); };\n Set.prototype[iteratorSymbol] = function () { return this.keys(); };\n return Set;\n }());\n return Set;\n }\n // naive WeakMap shim\n function CreateWeakMapPolyfill() {\n var UUID_SIZE = 16;\n var keys = HashMap.create();\n var rootKey = CreateUniqueKey();\n return /** @class */ (function () {\n function WeakMap() {\n this._key = CreateUniqueKey();\n }\n WeakMap.prototype.has = function (target) {\n var table = GetOrCreateWeakMapTable(target, /*create*/ false);\n return table !== undefined ? HashMap.has(table, this._key) : false;\n };\n WeakMap.prototype.get = function (target) {\n var table = GetOrCreateWeakMapTable(target, /*create*/ false);\n return table !== undefined ? HashMap.get(table, this._key) : undefined;\n };\n WeakMap.prototype.set = function (target, value) {\n var table = GetOrCreateWeakMapTable(target, /*create*/ true);\n table[this._key] = value;\n return this;\n };\n WeakMap.prototype.delete = function (target) {\n var table = GetOrCreateWeakMapTable(target, /*create*/ false);\n return table !== undefined ? delete table[this._key] : false;\n };\n WeakMap.prototype.clear = function () {\n // NOTE: not a real clear, just makes the previous data unreachable\n this._key = CreateUniqueKey();\n };\n return WeakMap;\n }());\n function CreateUniqueKey() {\n var key;\n do\n key = \"@@WeakMap@@\" + CreateUUID();\n while (HashMap.has(keys, key));\n keys[key] = true;\n return key;\n }\n function GetOrCreateWeakMapTable(target, create) {\n if (!hasOwn.call(target, rootKey)) {\n if (!create)\n return undefined;\n Object.defineProperty(target, rootKey, { value: HashMap.create() });\n }\n return target[rootKey];\n }\n function FillRandomBytes(buffer, size) {\n for (var i = 0; i < size; ++i)\n buffer[i] = Math.random() * 0xff | 0;\n return buffer;\n }\n function GenRandomBytes(size) {\n if (typeof Uint8Array === \"function\") {\n var array = new Uint8Array(size);\n if (typeof crypto !== \"undefined\") {\n crypto.getRandomValues(array);\n }\n else if (typeof msCrypto !== \"undefined\") {\n msCrypto.getRandomValues(array);\n }\n else {\n FillRandomBytes(array, size);\n }\n return array;\n }\n return FillRandomBytes(new Array(size), size);\n }\n function CreateUUID() {\n var data = GenRandomBytes(UUID_SIZE);\n // mark as random - RFC 4122 § 4.4\n data[6] = data[6] & 0x4f | 0x40;\n data[8] = data[8] & 0xbf | 0x80;\n var result = \"\";\n for (var offset = 0; offset < UUID_SIZE; ++offset) {\n var byte = data[offset];\n if (offset === 4 || offset === 6 || offset === 8)\n result += \"-\";\n if (byte < 16)\n result += \"0\";\n result += byte.toString(16).toLowerCase();\n }\n return result;\n }\n }\n // uses a heuristic used by v8 and chakra to force an object into dictionary mode.\n function MakeDictionary(obj) {\n obj.__ = undefined;\n delete obj.__;\n return obj;\n }\n });\n})(Reflect || (Reflect = {}));\n","import\"reflect-metadata\";import{computed as e,watchEffect as t,shallowRef as n,markRaw as i,watch as r,isReactive as s,readonly as a,reactive as o,ref as l,nextTick as c,isRef as u,unref as h,isProxy as d,getCurrentInstance as p,onBeforeMount as f,onBeforeUnmount as m}from\"vue\";let $=e=>e;function g(e,t={}){\"string\"!=typeof e&&(e=e.toString());let n=!1,i=e;i.startsWith(\"() => \")?(i=i.substring(6),n=!0):i.startsWith(\"()=>\")&&(i=i.substring(4),n=!0);const r=i.indexOf(\"{\"),s=i.lastIndexOf(\"}\");r>-1&&s>r&&(i=i.substring(r+1,s)),t.contextFromArg||(i=$(i)),i=i.replace(/\\$parent\\?\\./,\"$parent.\");let a=i.split(\"\\n\").map((e=>e.trim())).filter((e=>e.length>0));if(t.removeDebugger&&(a=a.filter((e=>\"debogger\"!==e&&\"debugger;\"!==e))),1===a.length&&!t.skipRemoveReturn){let e=a[0];if(n)return e;if(0==e.search(/(return[\\s\\\"\\!\\'\\(\\;]|return$)/)){for(e=e.substring(6).trimStart();e.endsWith(\";\");)e=e.substring(0,e.length-1);return\"void 0\"!==e&&\"undefined\"!==e?e:void 0}}return a}!function(){{const e=\"this.\".replace(\".\",\"\\\\.\"),t=new RegExp(e+\"\\\\$methods\",\"gm\"),n=new RegExp(e+\"\\\\$root\",\"gm\"),i=new RegExp(e+\"\\\\$parent\",\"gm\"),r=new RegExp(e+\"\\\\$obj\",\"gm\"),s=new RegExp(e+\"\\\\$external\",\"gm\"),a=new RegExp(e+\"\\\\$value\",\"gm\"),o=new RegExp(e+\"\\\\$event\",\"gm\");$=e=>e.replace(t,\"$methods\").replace(n,\"$root\").replace(i,\"$parent\").replace(r,\"$obj\").replace(s,\"$external\").replace(a,\"$value\").replace(o,\"event\")}}();const y=[0,31,28,31,30,31,30,31,31,30,31,30,31],v=/^(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)([t|T|\\s](00:00:00))?$/;function b(e){const t=e.match(v);if(!t)return!1;const n=+t[1],i=+t[2],r=+t[3];return i>=1&&i<=12&&r>=1&&r<=(2===i&&function(e){return e%4==0&&(e%100!=0||e%400==0)}(n)?29:y[i])}const _=/^(\\d\\d):(\\d\\d):(\\d\\d)(\\.\\d+)?(z|[+-]\\d\\d:\\d\\d)?$/i;function w(e,t){const n=e.match(_);if(!n)return!1;const i=Number(n[1]),r=Number(n[2]),s=Number(n[3]),a=n[5];return(i<=23&&r<=59&&s<=59||23===i&&59===r&&60===s)&&(!t||\"\"!==a)}const x=/^[0-9]{2}-[0-9]{3}$/;function k(e){return x.test(e)}const F=/t|\\s/i;function M(e){const t=e.split(F);return 2===t.length&&b(t[0])&&w(t[1],!0)}const D=/\\/|:/,S=/^(?:[a-z][a-z0-9+\\-.]*:)(?:\\/?\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\\.[a-z0-9\\-._~!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)|(?:[a-z0-9\\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\\d*)?(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\\?(?:[a-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;const O=/^(?:(?:http[s\\u017F]?|ftp):\\/\\/)(?:(?:[\\0-\\x08\\x0E-\\x1F!-\\x9F\\xA1-\\u167F\\u1681-\\u1FFF\\u200B-\\u2027\\u202A-\\u202E\\u2030-\\u205E\\u2060-\\u2FFF\\u3001-\\uD7FF\\uE000-\\uFEFE\\uFF00-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+(?::(?:[\\0-\\x08\\x0E-\\x1F!-\\x9F\\xA1-\\u167F\\u1681-\\u1FFF\\u200B-\\u2027\\u202A-\\u202E\\u2030-\\u205E\\u2060-\\u2FFF\\u3001-\\uD7FF\\uE000-\\uFEFE\\uFF00-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])*)?@)?(?:(?!10(?:\\.[0-9]{1,3}){3})(?!127(?:\\.[0-9]{1,3}){3})(?!169\\.254(?:\\.[0-9]{1,3}){2})(?!192\\.168(?:\\.[0-9]{1,3}){2})(?!172\\.(?:1[6-9]|2[0-9]|3[01])(?:\\.[0-9]{1,3}){2})(?:[1-9][0-9]?|1[0-9][0-9]|2[01][0-9]|22[0-3])(?:\\.(?:1?[0-9]{1,2}|2[0-4][0-9]|25[0-5])){2}(?:\\.(?:[1-9][0-9]?|1[0-9][0-9]|2[0-4][0-9]|25[0-4]))|(?:(?:(?:[0-9KSa-z\\xA1-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+-?)*(?:[0-9KSa-z\\xA1-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+)(?:\\.(?:(?:[0-9KSa-z\\xA1-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+-?)*(?:[0-9KSa-z\\xA1-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+)*(?:\\.(?:(?:[KSa-z\\xA1-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF]){2,})))(?::[0-9]{2,5})?(?:\\/(?:[\\0-\\x08\\x0E-\\x1F!-\\x9F\\xA1-\\u167F\\u1681-\\u1FFF\\u200B-\\u2027\\u202A-\\u202E\\u2030-\\u205E\\u2060-\\u2FFF\\u3001-\\uD7FF\\uE000-\\uFEFE\\uFF00-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])*)?$/i;const z=/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i;const C=/[^\\\\]\\\\Z/;const P=[6,5,7,2,3,4,5,6,7];const R={WL1A:\"Aleksandrów Kujawski\",SU1A:\"Augustów\",OL1Y:\"Bartoszyce\",PT1B:\"Bełchatów\",KA1B:\"Będzin\",LU1B:\"Biała podlaska\",RA2G:\"Białobrzegi\",KO1B:\"Białogard\",BI1B:\"Białystok\",BB1B:\"Bielsko-Biała\",BI1P:\"Bielsk Podlaski\",ZA1B:\"Biłgoraj\",OL1B:\"Biskupiec\",TR1O:\"BochniaR1O\",JG1B:\"Bolesławiec\",EL1B:\"Braniewo\",TO1B:\"Brodnica\",OP1B:\"Brzeg\",TR1B:\"Brzesko\",LD1B:\"Brzeziny\",KS1B:\"Brzozów\",KI1B:\"Busko Zdrój\",BY1B:\"Bydgoszcz\",KA1Y:\"Bytom\",SL1B:\"Bytów\",LU1C:\"Chełm\",TO1C:\"Chełmno\",PO1H:\"Chodzież\",SL1C:\"Chojnice\",KA1C:\"Chorzów\",SZ1C:\"Choszczno\",KR1C:\"Chrzanów\",PL1C:\"Ciechanów\",BB1C:\"Cieszyn\",PO2T:\"Czarnków\",KR1K:\"Czernichów\",CZ1C:\"Częstochowa\",SL1Z:\"Człuchów\",KA1D:\"Dąbrowa Górnicza\",TR1D:\"Dąbrowa Tarnowska\",RZ1D:\"Dębica\",KR2Y:\"Dobczyce\",KO1D:\"Drawsko Pomorskie\",EL1D:\"Działdowo\",SW1D:\"Dzierżoniów\",EL1E:\"Elbląg\",OL1E:\"Ełk\",SI1G:\"Garwolin\",GD1G:\"Gdańsk\",GD1Y:\"Gdynia\",OL1G:\"Giżycko\",GL1G:\"Gliwice\",LE1G:\"Głogów\",OP1G:\"Głubczyce\",PO1G:\"Gniezno\",SZ1O:\"Goleniów\",TO1G:\"Golub-Dobrzyń\",NS1G:\"Gorlice\",GW1G:\"Gorzów Wielkopolski\",PL1G:\"Gostynin\",PO1Y:\"Gostyń\",LM1G:\"Grajewo\",WA1G:\"Grodzisk Mazowiecki\",PO1S:\"Grodzisk Wlkp.\",RA1G:\"Grójec\",TO1U:\"Grudziądz\",SZ1G:\"Gryfice\",SZ1Y:\"Gryfino\",ZG2K:\"Gubin\",BI2P:\"Hajnówka\",ZA1H:\"Hrubieszów\",EL1I:\"Iława\",BY1I:\"Inowrocław\",ZA1J:\"Janów Lubelski\",KZ1J:\"Jarocin\",PR1J:\"Jarosław\",KS1J:\"Jasło\",GL1J:\"Jastrzębie-Zdrój\",LE1J:\"Jawor\",KA1J:\"Jaworzno\",JG1J:\"Jelenia Góra\",KI1J:\"Jędrzejów\",KZ1A:\"Kalisz\",JG1K:\"Kamienna Góra\",SZ1K:\"Kamień Pomorski\",GD1R:\"Kartuzy\",KA1K:\"Katowice\",KI1I:\"Kazimierza wielka\",OP1K:\"Kędzierzyn-koźle\",KZ1E:\"Kępno\",OL1K:\"Kętrzyn\",KR2E:\"Kęty\",KI1L:\"Kielce\",OP1U:\"Kluczbork\",CZ2C:\"Kłobuck\",SW1K:\"Kłodzko\",TB1K:\"Kolbuszowa\",KO1L:\"Kołobrzeg\",KN1K:\"Koło\",KN1N:\"Konin\",KI1K:\"Końskie\",KO1K:\"Koszalin\",PO1K:\"Kościan\",GD1E:\"Kościerzyna\",RA1K:\"Kozienice\",KR1P:\"Kraków\",ZA1K:\"Krasnystaw\",LU1K:\"Kraśnik\",KS1K:\"Krosno\",ZG1K:\"Krosno Odrzańskie\",KZ1R:\"Krotoszyn\",KR2K:\"Krzeszowice\",LD1K:\"Kutno\",GD1I:\"Kwidzyn\",WA1L:\"Legionowo\",LE1L:\"Legnica\",KS1E:\"Lesko\",PO1L:\"Leszno\",RZ1E:\"Leżajsk\",SL1L:\"Lębork\",OL1L:\"Lidzbark Warmiński\",NS1L:\"Limanowa\",WL1L:\"Lipno\",RA1L:\"Lipsko\",PR1L:\"Lubaczów\",JG1L:\"Lubań\",LU1A:\"Lubartów\",LE1U:\"Lubin\",CZ1L:\"Lubliniec\",LU1I:\"Lublin\",JG1S:\"Lwówek Śląski\",RZ1A:\"Łańcut\",SR1L:\"Łask\",LD1Y:\"Łęczyca\",SZ1L:\"Łobez\",LM1L:\"Łomża\",SI2S:\"Łosice\",LD1O:\"Łowicz\",LD1M:\"Łódź\",LU1U:\"Łuków\",GD1M:\"Malbork\",SL1M:\"Miastko\",KR1M:\"Miechów\",TB1M:\"Mielec\",PO2A:\"Międzychód\",GW1M:\"Międzyrzecz\",KA1M:\"Mikołów\",WR1M:\"Milicz\",SI1M:\"Mińsk Mazowiecki\",PL1M:\"Mława\",BY1M:\"Mogilno\",EL2O:\"Morąg\",OL1M:\"Mrągowo\",NS2L:\"Mszana Dolna\",NS1M:\"Muszyna\",KA1L:\"Mysłowice\",CZ1M:\"Myszków\",KR1Y:\"Myślenice\",SZ1M:\"Myślibórz\",BY1N:\"Nakło nad Notecią\",OL1N:\"Nidzica\",KR2I:\"Niepołomice\",TB1N:\"Nisko\",SW2K:\"Nowa Ruda\",ZG1N:\"Nowa Sól\",EL1N:\"Nowe Miasto Lubawskie\",GD2M:\"Nowy Dwór Gdański\",WA1N:\"Nowy Dwór Mazowiecki\",NS1S:\"Nowy Sącz\",NS1T:\"Nowy Targ\",PO1N:\"Nowy Tomyśl\",OP1N:\"Nysa\",PO1O:\"Oborniki\",OL1C:\"Olecko\",OP1L:\"Olesno\",WR1E:\"Oleśnica\",KR1O:\"Olkusz\",OL1O:\"Olsztyn\",WR1O:\"Oława\",KI1T:\"Opatów\",PT1O:\"Opoczno\",LU1O:\"Opole Lubelskie\",OP1O:\"Opole\",OS1O:\"Ostrołęka\",KI1O:\"Ostrowiec Świętokrzyski\",EL1O:\"Ostróda\",OS1M:\"Ostrów Mazowiecka\",KZ1W:\"Ostrów Wielkopolski\",KZ1O:\"Ostrzeszów\",KR1E:\"Oświęcim\",WA1O:\"Otwock\",LD1P:\"Pabianice\",SR2W:\"Pajęczno\",WA1I:\"Piaseczno\",PO1I:\"Piła\",KI1P:\"Pińczów\",RA2Z:\"Pionki\",PT1P:\"Piotrków Trybunalski\",OL1P:\"Pisz\",KZ1P:\"Pleszew\",PL1P:\"Płock\",PL1L:\"Płońsk\",SR2L:\"Poddębice\",SZ2S:\"Police\",PO1P:\"Poznań (V)\",PO2P:\"Poznań (VI)\",KR1H:\"Proszowice\",OP1P:\"Prudnik\",WA1P:\"Pruszków\",OS1P:\"Przasnysz\",PR1P:\"Przemyśl\",PR1R:\"Przeworsk\",RA1P:\"Przysucha\",KA1P:\"Pszczyna\",GD2W:\"Puck\",LU1P:\"Puławy\",OS1U:\"Pułtusk\",SZ2T:\"Pyrzyce\",GL1R:\"Racibórz\",RA1R:\"Radom\",PT1R:\"Radomsko\",WL1R:\"Radziejów\",LU1R:\"Radzyń Podlaski\",LD1R:\"Rawa Mazowiecka\",PO1R:\"Rawicz\",RZ1R:\"Ropczyce\",GL1S:\"Ruda Śląska\",GL1Y:\"Rybnik\",LU1Y:\"Ryki\",WL1Y:\"Rypin\",RZ1Z:\"Rzeszów\",KI1S:\"Sandomierz\",KS1S:\"Sanok\",SU1N:\"Sejny\",BY2T:\"Sępólno Krajeńskie\",SI1S:\"Siedlce\",KA1I:\"Siemianowice Śląskie\",BI3P:\"Siemiatycze\",PR2R:\"Sieniawa\",SR1S:\"Sieradz\",PL1E:\"Sierpc\",KR2P:\"Skała\",KI1R:\"Skarżysko-Kamienna\",KR3I:\"Skawina\",LD1H:\"Skierniewice\",KO1E:\"Sławno\",KR1S:\"Słomniki\",GW1S:\"Słubice\",KN1S:\"Słupca\",SL1S:\"Słupsk\",PL1O:\"Sochaczew\",SI1P:\"Sokołów Podlaski\",BI1S:\"Sokółka\",GD1S:\"Sopot\",KA1S:\"Sosnowiec\",TB1S:\"Stalowa Wola\",KI1H:\"Starachowice\",SZ1T:\"Stargard Szczeciński\",GD1A:\"Starogard Gdański\",KI1A:\"Staszów\",GW1K:\"Strzelce Krajeńskie\",OP1S:\"Strzelce Opolskie\",WR1T:\"Strzelin\",RZ1S:\"Strzyżów\",KR1B:\"Sucha Beskidzka\",ZG2S:\"Sulechów\",GW1U:\"Sulęcin\",SU1S:\"Suwałki\",PO1A:\"Szamotuły\",KO1I:\"Szczecinek\",SZ1S:\"Szczecin\",OL1S:\"Szczytno\",GD2I:\"Sztum\",BY1U:\"Szubin\",RA1S:\"Szydłowiec\",PO1M:\"Śrem\",WR1S:\"Środa Śląska\",PO1D:\"Środa Wlkp.\",SW1S:\"Świdnica\",KO2B:\"Świdwin\",ZG1S:\"Świebodzin\",BY1S:\"Świecie\",SZ1W:\"Świnoujście\",TB1T:\"Tarnobrzeg\",GL1T:\"Tarnowskie Góry\",TR1T:\"Tarnów\",GD1T:\"Tczew\",ZA1T:\"Tomaszów Lubelski\",PT1T:\"Tomaszów Mazowiecki\",TO1T:\"Toruń\",PO1T:\"Trzcianka\",WR1W:\"Trzebnica\",BY1T:\"Tuchola\",TR2T:\"Tuchów\",KN1T:\"Turek\",KA1T:\"Tychy\",RZ2Z:\"Tyczyn\",KS2E:\"Ustrzyki Dolne\",KR1W:\"Wadowice\",SW1W:\"Wałbrzych\",KO1W:\"Wałcz\",WA3M:\"Warszawa (IX)\",WA1M:\"Warszawa (VI)\",WA2M:\"Warszawa (VII)\",WA4M:\"Warszawa (X)\",WA5M:\"Warszawa (XIII)\",WA6M:\"Warszawa (XV)\",TO1W:\"Wąbrzeźno\",PO1B:\"Wągrowiec\",GD1W:\"Wejherowo\",OL2G:\"Węgorzewo\",SI1W:\"Węgrów\",KR1I:\"Wieliczka\",SR1W:\"Wieluń\",WL1W:\"Włocławek\",LU1W:\"Włodawa\",KI1W:\"Włoszczowa\",GL1W:\"Wodzisław Śląski\",PO1E:\"Wolsztyn\",WA1W:\"Wołomin\",WR1L:\"Wołów\",WR1K:\"Wrocław\",PO1F:\"Września\",ZG1W:\"Wschowa\",PO2H:\"Wyrzysk\",LM1W:\"Wysokie Mazowieckie\",OS1W:\"Wyszków\",GL1Z:\"Zabrze\",NS1Z:\"Zakopane\",LM1Z:\"Zambrów\",ZA1Z:\"Zamość\",CZ1Z:\"Zawiercie\",SW1Z:\"Ząbkowice Śląskie\",SR1Z:\"Zduńska Wola\",LD1G:\"Zgierz\",JG1Z:\"Zgorzelec\",ZG1E:\"Zielona Góra\",LE1Z:\"Złotoryja\",PO1Z:\"Złotów\",RA1Z:\"Zwoleń\",ZG1G:\"Żagań\",ZG1R:\"Żary\",BY1Z:\"Żnin\",GL1X:\"Żory\",PL2M:\"Żuromin\",PL1Z:\"Żyrardów\",BB1Z:\"Żywiec\"},j={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,X:10,A:11,B:12,C:13,D:14,E:15,F:16,G:17,H:18,I:19,J:20,K:21,L:22,M:23,N:24,O:25,P:26,R:27,S:28,T:29,U:30,W:31,Y:32,Z:33};const L=[9,7,3,1,9,7,3,1,9,7];const I=[8,9,2,3,4,5,6,7];function A(e){if(9===e.length){let t=0;for(let n=0;n<8;n++){const i=Number(e[n]);isNaN(i)||(t+=i*I[n])}let n=t%11;return 10===n&&(n=0),n===Number(e[8])}return!1}const N=[2,4,8,5,0,9,7,3,6,1,2,4,8];function K(e){if(14===e.length){if(e.endsWith(\"00000\"))return A(e.substr(0,9));let t=0;for(let n=0;n<13;n++){const i=Number(e[n]);isNaN(i)||(t+=i*N[n])}let n=t%11;return 10===n&&(n=0),n===Number(e[13])}return!1}const T=[1,10,3,30,9,90,27,76,81,34,49,5,50,15,53,45,62,38,89,17,73,51,25,56,75,71,31,19,93,57];function V(e){if(\"00000000000000000000000000\"===e)return!0;if(26===(e=e.replace(/[^0-9]+/g,\"\")).length){e=(e+=\"2521\").substr(2)+e.substr(0,2);let t=0;for(let n=0;n<30;n++)t+=Number(e[29-n])*T[n];return t%97==1}return!1}const E={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,G:16,H:17,I:18,J:19,K:20,L:21,M:22,N:23,O:24,P:25,Q:26,R:27,S:28,T:29,U:30,V:31,W:32,X:33,Y:34,Z:35};function G(e){if(null==(e=e.replace(/[\\s-]/g,\"\"))||9!==e.length)return!1;e=e.toUpperCase();for(let t=0;t<4;t++)if(E[e[t]]<10)return!1;for(let t=4;t<9;t++){const n=E[e[t]];if(void 0===n||n<0||n>9)return!1}let t=7*E[e[0]]+3*E[e[1]]+1*E[e[2]]+7*E[e[3]]+3*E[e[5]]+1*E[e[6]]+7*E[e[7]]+3*E[e[8]];return t%=10,t===E[e[4]]}const W=/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i;const B=/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,U=/^[0-9a-f]{12}$/i;function Z(e){return B.test(e)}function q(e){return U.test(e)}const Y=/^\\d+$/;const H=/^\\d{9}$/;const J=/^\\d{9}$/;const X=[7,3,9,1,7,3,1,7,3];const Q={date:b,time:w,date_time:M,\"date-time\":M,nip:function(e){if(10===(e=e.replace(/[\\s-]/g,\"\")).length){let t=0;for(let n=0;n<9;n++){const i=Number(e[n]);isNaN(i)||(t+=i*P[n])}return t%11===Number(e[9])}return!1},regon:function(e){return 9===e.length?A(e):K(e)},regon9:A,regon14:K,kw:function(e){if(null==e)return!1;if(15!==e.length)return!1;if(\"/\"!==(e=e.toUpperCase())[4]||\"/\"!==e[13])return!1;if(void 0===R[e.substr(0,4)])return!1;if(isNaN(+e.substr(5,8)))return!1;const t=1*(j[e[0]]||0)+3*(j[e[1]]||0)+7*(j[e[2]]||0)+1*(j[e[3]]||0)+3*(j[e[5]]||0)+7*(j[e[6]]||0)+1*(j[e[7]]||0)+3*(j[e[8]]||0)+7*(j[e[9]]||0)+1*(j[e[10]]||0)+3*(j[e[11]]||0)+7*(j[e[12]]||0);return+e[14]==t%10},dowod:function(e){if(null==(e=e.replace(/[\\s-]/g,\"\"))||9!==e.length)return!1;if(e=e.toUpperCase(),E[e[3]]>=10)return G(e);for(let t=0;t<3;t++)if(E[e[t]]<10)return!1;for(let t=3;t<9;t++){const n=E[e[t]];if(void 0===n||n<0||n>9)return!1}let t=7*E[e[0]]+3*E[e[1]]+1*E[e[2]]+7*E[e[4]]+3*E[e[5]]+1*E[e[6]]+7*E[e[7]]+3*E[e[8]];return t%=10,t===E[e[3]]},edowod:G,passport:function(e){if(9!==e.length)return!1;let t=0;for(let n=0;n!0)}function te(e,t){return function(e,t){return ee(e)(t)}(e,t)}function ne(e){return 10===e.length?new Date(1e3*+e[0]+100*+e[1]+10*+e[2]+ +e[3],10*+e[5]+ +e[6]-1,10*+e[8]+ +e[9]):new Date(1e3*+e[0]+100*+e[1]+10*+e[2]+ +e[3],10*+e[5]+ +e[6]-1,10*+e[8]+ +e[9],10*+e[11]+ +e[12],10*+e[14]+ +e[15],10*+e[17]+ +e[18])}function ie(e,t=\"short\"){return new Intl.DateTimeFormat(e,{timeStyle:t}).format(new Date(2e3,0,2,15,4,5)).replace(\"15\",\"HH\").replace(\"03\",\"hh\").replace(\"3\",\"h\").replace(\"04\",\"mm\").replace(\"4\",\"m\").replace(\"05\",\"ss\").replace(\"5\",\"s\").replace(\"PM\",\"A\").replace(\"pm\",\"a\")}function re(e){return+(e[8]+e[9])+\".\"+e[5]+e[6]+\".\"+e[0]+e[1]+e[2]+e[3]}function se(e){return+(e[5]+e[6])+\"/\"+ +(e[8]+e[9])+\"/\"+e[0]+e[1]+e[2]+e[3]}function ae(e){switch(e){case\"pl\":return re;case\"en\":return se;default:{const t=new Intl.DateTimeFormat(e);return e=>t.format(new Date(e))}}}function oe(e){const t=new Intl.DateTimeFormat(e).formatToParts(new Date(2e3,0,2,3,4,5)),n={format:\"\",separator:\"\"};for(let e=0;ee.type===t)))||void 0===n?void 0:n.value}const he={};function de(e){var t,n;let i=he[e];return i||(i={name:e,weekdays:ce(e),weekdaysShort:ce(e,\"short\"),weekdaysMin:ce(e,\"narrow\"),weekStart:1,yearStart:4,months:le(e),monthsShort:le(e,\"short\"),ordinal:e=>e.toString(),decimalSeparator:null!==(t=ue(e,\"decimal\"))&&void 0!==t?t:\".\",groupSeparator:null!==(n=ue(e,\"group\"))&&void 0!==n?n:\" \",shortDateFormatter:ae(e),longDateFormatter:Intl.DateTimeFormat(e,{dateStyle:\"long\"}).format,shortDateReformatter:oe(e),formatSpaceNumber:Intl.NumberFormat(e,{maximumFractionDigits:2}).format,formats:{LTS:ie(e,\"medium\"),LT:ie(e,\"short\"),L:(r=e,new Intl.DateTimeFormat(r).format(new Date(2e3,0,2,3,4,5)).replace(\"2000\",\"YYYY\").replace(\"01\",\"MM\").replace(\"1\",\"M\").replace(\"02\",\"DD\").replace(\"2\",\"D\"))},relativeTime:{future:\"in %s\",past:\"%s ago\",s:\"a few seconds\",m:\"a minute\",mm:\"%d minutes\",h:\"an hour\",hh:\"%d hours\",d:\"a day\",dd:\"%d days\",M:\"a month\",MM:\"%d months\",y:\"a year\",yy:\"%d years\"},meridiem:()=>\"\"},he[e]=i,i);var r}const pe={current:de(\"pl\"),setLang(e){this.current=de(e)}};function fe(e,t=2){if(2===t)return e<10?\"0\"+e:\"\"+e;let n=\"\"+e;for(;n.length-1;){t[r]=i;let s=\"\";for(let e=0;e\");if(i>-1){const t=e.substring(0,i).trim().replace(\"(\",\"\").replace(\")\",\"\").split(\",\");e=e.substring(i+2).trim();const n=t[0].trim();\"dt7\"!==n&&(e=e.replaceAll(n+\".\",\"dt7.\"));let r=t[1];r&&(r=r.trim(),\"lang7\"!==r&&(e=e.replaceAll(r+\".\",\"lang7.\")))}r.push(e)}else\"^\"!==e[n]&&r.push('\"'+e[n]+'\"');const s=new Function(\"dt7,lang7\",\"return \"+r.join(\"+\"));return $e[n]=s,s}(t||\"yyyy-MM-dd HH:mm:ss\")),n(e,i)}return\"\"}const $e={\"d.MM.yyyy\":e=>e.getDate()+\".\"+(e.getMonth()+1).toString().padStart(2,\"0\")+\".\"+e.getFullYear(),\"dd.MM.yyyy\":e=>e.getDate().toString().padStart(2,\"0\")+\".\"+(e.getMonth()+1).toString().padStart(2,\"0\")+\".\"+e.getFullYear(),\"yyyy-MM-dd\":function(e){return e.getFullYear()+\"-\"+(e.getMonth()+1).toString().padStart(2,\"0\")+\"-\"+e.getDate().toString().padStart(2,\"0\")},\"MMMM yyyy\":(e,t)=>`${t.months[e.getMonth()]} ${e.getFullYear()}`,\"MMM yyyy\":(e,t)=>`${t.monthsShort[e.getMonth()]} ${e.getFullYear()}`,\"HH:mm:ss\":e=>`${e.getHours().toString().padStart(2,\"0\")}:${e.getMinutes().toString().padStart(2,\"0\")}:${e.getSeconds().toString().padStart(2,\"0\")}`,\"dd.MM.yyyy HH:mm:ss\":(e,t)=>$e[\"dd.MM.yyyy\"](e,t)+\" \"+$e[\"HH:mm:ss\"](e,t),\"yyyy-MM-dd HH:mm:ss\":(e,t)=>$e[\"yyyy-MM-dd\"](e,t)+\" \"+$e[\"HH:mm:ss\"](e,t),dddd:(e,t)=>t.weekdays[e.getDay()],ddd:(e,t)=>t.weekdaysShort[e.getDay()],dd:e=>e.getDate().toString().padStart(2,\"0\"),d:e=>e.getDate().toString(),DDDD:(e,t)=>t.weekdays[e.getDay()],DDD:(e,t)=>t.weekdaysShort[e.getDay()],DD:e=>e.getDate().toString().padStart(2,\"0\"),D:e=>e.getDate().toString(),MMMM:(e,t)=>t.months[e.getMonth()],MMM:(e,t)=>t.monthsShort[e.getMonth()],MM:e=>(e.getMonth()+1).toString().padStart(2,\"0\"),M:e=>(e.getMonth()+1).toString(),YYYY:e=>e.getFullYear().toString(),YY:e=>(e.getFullYear()%100).toString().padStart(2,\"0\"),yyyy:e=>e.getFullYear().toString(),yy:e=>(e.getFullYear()%100).toString().padStart(2,\"0\"),HH:e=>e.getHours().toString().padStart(2,\"0\"),H:e=>e.getHours().toString(),mm:e=>e.getMinutes().toString().padStart(2,\"0\"),m:e=>e.getMinutes().toString(),ss:e=>e.getSeconds().toString().padStart(2,\"0\"),s:e=>e.getSeconds().toString(),long:(e,t)=>t.longDateFormatter(e)};class ge{static diff(e,t){try{const n=ne(e),i=ne(t),r=n.getTimezoneOffset()-i.getTimezoneOffset();return new ge(n.getTime()-i.getTime()-60*r*1e3,n,i)}catch(e){return new ge(0)}}constructor(e,t,n){this.ms=e,this.lateDate=t,this.earlyDate=n}get totalMiliseconds(){return this.ms}get miliseconds(){return this.ms%1e3}get totalSeconds(){return this.ms/1e3}get seconds(){return Math.trunc(this.totalMinutes%1*60)}get totalMinutes(){return this.ms/6e4}get minutes(){return Math.trunc(this.totalHours%1*60)}get totalHours(){return this.ms/36e5}get hours(){return Math.trunc(this.totalDays%1*24)}get totalDays(){return this.ms/864e5}get days(){return Math.trunc(this.totalDays)}get months(){if(this.earlyDate&&this.lateDate){let e=12*(this.lateDate.getFullYear()-this.earlyDate.getFullYear());return e+=this.lateDate.getMonth(),e-=this.earlyDate.getMonth(),e>0?this.lateDate.getDate()this.earlyDate.getDate()&&e++,e}return Math.trunc(this.days/30)}get years(){return Math.trunc(this.months/12)}toString(){return fe(Math.trunc(this.totalHours),2)+\":\"+fe(this.minutes,2)+\":\"+fe(this.seconds,2)}}function ye(e,t){switch(t){case\"y\":case\"yy\":case\"yyyy\":case\"year\":return ve(e,0,4);case\"M\":case\"MM\":case\"month\":return ve(e,5,2);case\"d\":case\"dd\":case\"day\":return ve(e,8,2);case\"h\":case\"hh\":case\"hour\":return ve(e,11,2);case\"m\":case\"mm\":case\"minute\":return ve(e,14,2);case\"s\":case\"ss\":case\"second\":return ve(e,17,2);default:return 0}}function ve(e,t,n){return t{const t=16*Math.random()|0;return(\"x\"===e?t:3&t|8).toString(16)}));switch(e){case\"B\":return\"{\"+t+\"}\";case\"P\":return\"(\"+t+\")\"}return t}const xe=\"0123456789abcdef\".split(\"\");function ke(){let e=\"\";for(let t=0;t<12;t++)e+=xe[16*Math.random()|0];return e}function Fe(e){const t=e.toLocaleLowerCase();let n=\"\",i=!0;for(let e=0;e=10)switch(t){case\"dd.MM.yyyy\":return`${e.substr(8,2)}.${e.substr(5,2)}.${e.substr(0,4)}`;case\"yyyy-MM-dd\":return e.substring(0,10);default:return me(new Date(e),t,i)}return\"\"}(e,t,i):(t||(t=i.formats.L),t===Ce?Pe(e,i):me(e,t,i))}const je=$e[\"yyyy-MM-dd\"];function Le(e){return isNaN(e.getTime())?\"\":je(e,null)}function Ie(){return me(new Date)}function Ae(){return Le(new Date)}function Ne(e,t){if(t){if(\"string\"==typeof t){let n=0;for(const i of e)n+=i[t];return n}return e.reduce(((e,n,i)=>{const r=t(n,i);return void 0!==r?e+r:e}),0)}return e.reduce(((e,t)=>e+t),0)}const Ke=[\"zero\",\"jeden\",\"dwa\",\"trzy\",\"cztery\",\"pięć\",\"sześć\",\"siedem\",\"osiem\",\"dziewięć\",\"dziesięć\",\"jedenaście\",\"dwanaście\",\"trzynaście\",\"czternaście\",\"piętnaście\",\"szesnaście\",\"siedemnaście\",\"osiemnaście\",\"dziewiętnaście\"],Te=[\"dwadzieścia\",\"trzydzieści\",\"czterdzieści\",\"pięćdziesiąt\",\"sześćdziesiąt\",\"siedemdziesiąt\",\"osiemdziesiąt\",\"dziewięćdziesiąt\"],Ve=[\"\",\"sto\",\"dwieście\",\"trzysta\",\"czterysta\",\"pięćset\",\"sześćset\",\"siedemset\",\"osiemset\",\"dziewięćset\"],Ee=[[\"tysiąc\",\"tysiące\",\"tysięcy\"],[\"milion\",\"miliony\",\"milionów\"],[\"miliard\",\"miliardy\",\"miliardów\"],[\"bilion\",\"biliony\",\"bilionów\"],[\"biliard\",\"biliardy\",\"biliardów\"],[\"trylion\",\"tryliony\",\"trylionów\"],[\"tryliard\",\"tryliardy\",\"tryliardów\"],[\"kwadrylion\",\"kwadryliony\",\"kwadrylionów\"],[\"kwadryliard\",\"kwadryliardy\",\"kwadryliardów\"]];function Ge(e){if(0===e)return null;let t=\"\";const n=Math.floor(e/100);if(n>0&&(t+=Ve[n],e-=100*n),e>0)if(t.length>0&&(t+=\" \"),e<20)t+=Ke[e];else{t+=Te[Math.floor(e/10)-2];const n=e%10;n>0&&(t+=\" \",t+=Ke[n])}return t}function We(e,t,n){let i=0;const r=Math.pow(1e3,n+1);let s=t;if(r<=t){const a=(t=We(e,t,n+1))/r;if(i=Math.floor(a),e.text.length>0&&(e.text+=\" \"),s=t-i*r,i>0&&(i>1||e.text.length>0||0===s)&&(e.text+=Ge(i),e.text+=\" \"),i>0){const t=Ee[n];if(void 0!==t){const n=function(e){const t=e%10;if(e/10>=1&&1===t)return 2;const n=e%100;return n>=10&&(n<=20||0===t)||t>4?2:1===t?0:1}(i);e.text+=t[n]}}}return s}function Be(e){if(0===e)return Ke[0];const t={text:\"\"},n=We(t,e,0);return n>0&&(t.text.length>0&&(t.text+=\" \"),t.text+=Ge(n)),t.text}function Ue(e){return e<0&&(e*=-1),Be(Math.floor(e))}const Ze=[],qe=[],Ye=[[\"\",\"I\",\"II\",\"III\",\"IV\",\"V\",\"VI\",\"VII\",\"VIII\",\"IX\"],[\"\",\"X\",\"XX\",\"XXX\",\"XL\",\"L\",\"LX\",\"LXX\",\"LXXX\",\"XC\"],[\"\",\"C\",\"CC\",\"CCC\",\"CD\",\"D\",\"DC\",\"DCC\",\"DCCC\",\"CM\"],[\"\",\"M\",\"MM\",\"MMM\",\"\",\"\",\"\",\"\",\"\",\"\"]],He=[[\"\",\"i\",\"ii\",\"iii\",\"iv\",\"v\",\"vi\",\"vii\",\"viii\",\"ix\"],[\"\",\"x\",\"xx\",\"xxx\",\"xl\",\"l\",\"lx\",\"lxx\",\"lxxx\",\"xc\"],[\"\",\"c\",\"cc\",\"ccc\",\"cd\",\"d\",\"dc\",\"dcc\",\"dccc\",\"cm\"],[\"\",\"m\",\"mm\",\"mmm\",\"\",\"\",\"\",\"\",\"\",\"\"]];function Je(e,t,n){if(e>3999)return\"\";if(void 0!==n[e])return n[e];let i=0,r=e,s=\"\";for(;r>0;){const e=r%10;if(s=t[i][e]+s,e===r)break;r=Math.floor(r/10),i++}return n[e]=s}function Xe(e){return Je(e,Ye,Ze)}function Qe(e){return Je(e,He,qe)}const et=[],tt=[];function nt(e,t,n){if(void 0!==n[e])return n[e];let i=\"\";if(e>24){let n=e;for(i=\"\";n>0;){const e=n%24;if(i=String.fromCharCode(e+t)+i,n===e)break;n=Math.floor(n/24)}}else i=e?String.fromCharCode(e+t):\"\";return n[e]=i}function it(e){return nt(e,96,et)}function rt(e){return nt(e,64,tt)}function st(e,t=\"1.\"){switch(t){case\"1\":return e.toString();case\"1.\":return e+\".\";case\"1)\":return e+\")\";case\"(1)\":return\"(\"+e+\")\";case\"§\":case\"§ 1\":return\"§ \"+e;case\"§ 1.\":return\"§ \"+e+\".\";case\"a\":return it(e);case\"a)\":return it(e)+\")\";case\"a.\":return it(e)+\".\";case\"(a)\":return\"(\"+it(e)+\")\";case\"A\":return rt(e);case\"A)\":return rt(e)+\")\";case\"A.\":return rt(e)+\".\";case\"(A)\":return\"(\"+rt(e)+\")\";case\"i\":return Qe(e);case\"i.\":return Qe(e)+\".\";case\"i)\":return Qe(e)+\")\";case\"(i)\":return\"(\"+Qe(e)+\")\";case\"I\":return Xe(e);case\"I)\":return Xe(e)+\")\";case\"I.\":return Xe(e)+\".\";case\"(I)\":return\"(\"+Xe(e)+\")\";case\"abc\":return Ue(e);case\"abc)\":return Ue(e)+\")\";case\"abc.\":return Ue(e)+\".\";default:return\"*\"}}const at=[\"1.\",\"a)\",\"i.\"];let ot;ot=void 0!==String.prototype.replaceAll?(e,t,n)=>e.replaceAll(t,n):(e,t,n)=>e.replace(new RegExp(function(e){return e.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(t),\"g\"),n);const lt=(e,t)=>e.Guid===t.Guid,ct=e=>Object.assign({},e);var ut=Object.freeze({__proto__:null,avg:function(e,t){if(t){if(\"string\"==typeof t)return 0===e.length?0:Ne(e,t)/e.length;{let n=0;const i=e.reduce(((e,i,r)=>{const s=t(i,r);return void 0!==s?(n++,e+s):e}),0);return 0==n?0:i/n}}return 0===e.length?0:Ne(e,t)/e.length},bigRomanValue:Xe,capitalize:Fe,check:te,dateAdd:function(e,t,n){const i=ne(e),r=new Date(i);switch(t){case\"y\":case\"yy\":case\"yyyy\":case\"year\":r.setFullYear(i.getFullYear()+n);break;case\"M\":case\"MM\":case\"month\":r.setMonth(i.getMonth()+n);break;case\"d\":case\"dd\":case\"day\":r.setDate(i.getDate()+n);break;case\"h\":case\"hh\":case\"hour\":r.setHours(i.getHours()+n);break;case\"m\":case\"mm\":case\"minute\":r.setMinutes(i.getMinutes()+n);break;case\"s\":case\"ss\":case\"second\":r.setSeconds(i.getSeconds()+n)}return 10===e.length?me(r).replace(\" 00:00:00\",\"\"):me(r)},dateDiff:function(e,t){return ge.diff(e,t)},dateFromPesel:function(e){if(\"string\"!=typeof e||e.length<6)return\"\";let t=10*+e[2]+ +e[3];const n=10*+e[4]+ +e[5];if(t&&n){let i=10*+e[0]+ +e[1]+1900;if(t>80)i-=100,t-=80;else for(;t>20;)i+=100,t-=20;return i+\"-\"+fe(t)+\"-\"+fe(n)}return\"\"},dateHoliday:function(e){const t=ye(e,\"M\"),n=ye(e,\"d\");if(1==t&&1==n)return\"Nowy Rok\";if(1==t&&6==n)return\"Trzech Króli\";if(5==t&&1==n)return\"Święto Pracy\";if(5==t&&3==n)return\"Święto Konstytucji 3 Maja\";if(8==t&&15==n)return\"Wniebowzięcie Najświętszej Maryi Panny\";if(11==t&&1==n)return\"Wszystkich Świętych\";if(11==t&&11==n)return\"Święto Niepodległości\";if(12==t&&25==n)return\"Boże Narodzenie\";if(12==t&&26==n)return\"Boże Narodzenie\";if(t>=3&&t<=6){const i=ye(e,\"y\");let r=_e[i];if(null==r){const e=i%19;let t=(19*e+24)%30;const n=(2*(i%4)+4*(i%7)+6*t+5)%7;29==t&&6==n&&(t-=7),28==t&&6==n&&e>10&&(t-=7);const s=new Date(i,2,22+t+n),a=new Date(s.valueOf());a.setDate(s.getDate()+1);const o=new Date(s.valueOf());o.setDate(s.getDate()+49);const l=new Date(s.valueOf());l.setDate(s.getDate()+60),_e[i]=r={wielkanoc:[s.getFullYear(),s.getMonth()+1,s.getDate()],poniedzialek:[a.getFullYear(),a.getMonth()+1,a.getDate()],zieloneswiatki:[o.getFullYear(),o.getMonth()+1,o.getDate()],bozecialo:[l.getFullYear(),l.getMonth()+1,l.getDate()]}}if(r.wielkanoc[1]==t&&r.wielkanoc[2]==n)return\"Wielkanoc\";if(r.poniedzialek[1]==t&&r.poniedzialek[2]==n)return\"Poniedziałek Wielkanocny\";if(r.zieloneswiatki[1]==t&&r.zieloneswiatki[2]==n)return\"Zielone Świątki\";if(r.bozecialo[1]==t&&r.bozecialo[2]==n)return\"Boże Ciało\"}return\"\"},dateParse:ne,datePart:ye,dateSet:function(e,t,n){const i=ne(e),r=new Date(i);switch(t){case\"y\":case\"yy\":case\"yyyy\":case\"year\":r.setFullYear(n);break;case\"M\":case\"MM\":case\"month\":r.setMonth(n-1);break;case\"d\":case\"dd\":case\"day\":r.setDate(n);break;case\"h\":case\"hh\":case\"hour\":r.setHours(n);break;case\"m\":case\"mm\":case\"minute\":r.setMinutes(n);break;case\"s\":case\"ss\":case\"second\":r.setSeconds(n)}return 10===e.length?me(r).replace(\" 00:00:00\",\"\"):me(r)},deepCopy:be,defaultLang:pe,displayDate:Re,distinct:function(e,t){const n=[],i={};if(t){const r=\"string\"==typeof t;for(let s=0;s1?c+a+l[1]:c},fnumber:Se,fromDisplayDate:function(e,t,n){if(\"dd.MM.yyyy\"===t){if(e.length>=10&&\".\"==e[2]&&\".\"==e[5])return`${e.substr(6,4)}-${e.substr(3,2)}-${e.substr(0,2)}`}else if(!t){return(n||(null==this?void 0:this.lang)||pe.current).shortDateReformatter(e)}return\"\"},ftime:function(e){return $e[\"HH:mm:ss\"](e,null)},generateGuid:we,generateShortGuid:ke,includesAll:function(e,t){if(!Array.isArray(e)||!Array.isArray(t))return!1;for(const n of t)if(!e.includes(n))return!1;return!0},lang:undefined,listMonths:function(e,t,n){var i;let r=ye(e,\"M\"),s=ye(e,\"y\"),a=ye(t,\"M\");const o=ye(t,\"y\"),l=null!==(i=null==this?void 0:this.lang)&&void 0!==i?i:pe.current,c=[];if(r&&s&&a&&o){r--,a--;let e,t=\" \"+s;switch(n){case\"MMMM yyyy\":default:e=e=>l.months[e]+t;break;case\"MMM yyyy\":e=e=>l.monthsShort[e]+t;break;case\"MM yyyy\":e=e=>fe(e+1)+t;break;case\"M yyyy\":e=e=>e+1+t;break;case\"MMMM\":e=e=>l.months[e];break;case\"MMM\":e=e=>l.monthsShor[e];break;case\"MM\":e=e=>fe(e+1);break;case\"M\":e=e=>(e+1).toString()}for(;r<=a&&s===o||s11&&(r=0,s++,t=\" \"+s)}return c},listNumberFormat:st,listYears:function(e,t){let n=ye(e,\"y\");const i=ye(t,\"y\"),r=[];if(n&&i)for(;n<=i;)r.push(n),n++;return r},max:function(e,t){if(0!=e.length)return t?\"string\"!=typeof t?e.reduce(((e,n,i)=>{const r=t(n,i);return void 0!==r&&(null==e||r>e)?r:e}),void 0):void e.reduce(((e,n)=>n[t]>e?n[t]:e),e[0][t]):e.reduce(((e,t)=>t>e?t:e),e[0])},min:function(e,t){if(0!=e.length)return t?\"string\"!=typeof t?e.reduce(((e,n,i)=>{const r=t(n,i);return void 0!==r&&(null==e||rn[t]t=0;n--)r=e[n]+\".\"+r;break;case\"1.1\":case\"1.1.1\":r=\"\"+i;for(let n=t-1;n>=0;n--)r=e[n]+\".\"+r;break;default:r=st(i,n)}return e[t]=i,e.length=t+1,r},now:Ie,nullDefault:function(e,t){return null===e?t:e},padNumber:fe,percent:function(e,t){if(0===t)return 0;{const n=100*e/t;return n<0?0:De(n,8)}},get replaceAll(){return ot},smallRomanValue:Qe,sum:Ne,syncArray:function(e,t,n=lt,i=ct){if(!e||!t)return!1;if(0===t.length)return e.length>0&&(e.splice(0,e.length),!0);if(0===e.length){for(const n of t)e.push(i(n));return!0}const r=e.length;if(r===t.length&&t.every((t=>e.some((e=>n(e,t))))))return!1;let s=!1;for(const r of t)e.some((e=>n(e,r)))||(e.push(i(r)),s=!0);for(let i=r-1;i>=0;i--)t.some((t=>n(e[i],t)))||(e.splice(i,1),s=!0);return s},toWords:Ue,toWordsMoney:function(e,t=\"\",n=!1){e<0&&(e*=-1);let i=\"\";const r=Math.floor(e),s=De(100*(e-r),0);return t||(t=function(e){if(1===e)return\"złoty\";const t=e%100;if(t>=5&&t<=20)return\"złotych\";switch(t%10){case 2:case 3:case 4:return\"złote\"}return\"złotych\"}(r)),i=Ue(r)+\" \"+t,(0!==s||n)&&(i+=\" \"+fe(s,2)+\"/100\"),i},today:Ae,translate:function(e){return e},trim:function(e){return(e||\"\").trim()}});function ht(e,t,n){const i=t.split(\"/\");let r=0;if(\"#\"===i[0]){if(void 0===n)for(;e.$parent;)e=e.$parent;else e=n;r++}else\".\"===i[0]?(e.$parent&&(e=e.$parent),r++):e.$parent&&(e=e.$parent);for(let t=r;t-1&&(r=r.replace(pt,((e,n)=>{if(!t.model)return\"\";const i=new Function(\"model\",\"with(model) {return \"+n+\"}\");try{return i(t.model)}catch(e){return\"\"}})));const i=ht(o,r,l);null!==i&&(e[c]=n=i)}for(const e of Object.keys(n)){if(\"allOf\"===e)continue;const t=n[e];if(null===t)\"default\"!==e&&c>0?(delete a[e],delete o[e]):o[e]=null;else if(\"default\"===e)o[e]=t;else if(Array.isArray(t))if(void 0!==o[e]&&\"required\"===e){const n=o[e].slice();for(let e=0;en||(n=$t(a[e],t,o,i,e,u||\"items\"===e))})}if(\"object\"===o.type&&n&&\"array\"===n.type&&t.arrayItemGuidField){const e=o.properties;if(e&&void 0===e[t.arrayItemGuidField]){let n;Object.defineProperty(e,t.arrayItemGuidField,{enumerable:!0,configurable:!0,get:()=>n||(n=$t([{type:\"string\",format:\"guid\"}],t,e,i,t.arrayItemGuidField,!1))})}}return o}const gt=eval;class yt{constructor(){this.$methods=ut}}function vt(e,t){for(const n of Reflect.ownKeys(t)){const i=t[n];\"function\"==typeof i?e[n]=g(i.toString()):\"pattern\"===n&&i.constructor===RegExp?i.source&&(e.pattern=i.source,\"\"===i.flags?e.patternFlags=null:\"i\"!=i.flags&&(e.patternFlags=i.flags)):e[n]=i}}function bt(e,t){const n=e.constructor,i=n.name,r=\"schema_\"+(t||i);let s=n.prototype[r];if(!s){s={type:\"object\",$id:i,properties:{}};const t=Object.getPrototypeOf(e);if(t&&t.constructor&&t.constructor.name&&\"Object\"!==t.constructor.name){const e=bt(t,t.constructor.name);e&&e.properties&&Object.keys(e.properties).length&&(s.extends=e.$id,s.properties=Object.assign({},e.properties),Object.defineProperty(s,\"ownProperties\",{enumerable:!1,value:{}}))}n.prototype[r]=s}return s}function _t(e){if(e){let t=\"\";if(e.get)t=e.get.toString();else{if(!e.value)return;t=e.value.toString()}return g(t)}}function wt(e,t,n,i,r){const s=bt(e),a=function(e,t,n,i,r){let s=e[t];if(void 0===s&&(s=e[t]={},!i||!i.type||r)){let e;if(!r&&Reflect.getMetadata){if((r=Reflect.getMetadata(\"design:type\",n,t))&&(e=r.name,\"Function\"===e)){const i=Reflect.getMetadata(\"design:returntype\",n,t);i&&i.name&&(e=i.name)}}else e=\"Array\"===r?\"Array\":r.name;if(e){switch(e){case\"Array\":{e=\"\";let t=i.itemType||\"String\";switch(t){case\"String\":case String:t=\"string\";break;case\"Object\":t=\"object\";break;case\"Boolean\":case Boolean:t=\"boolean\";break;case\"Number\":case Number:t=\"number\";break;case\"money\":case\"integer\":break;default:if(\"function\"!=typeof t||t.prototype){Array.isArray(t)&&(t=t[0]);const e=(\"\"+t).split(\" \");\"class\"!==e[0]&&\"function\"!==e[0]||(e[0]=e[1].replace(\"(\",\"\").replace(\")\",\"\"));const n=xt(t);s.items=n||{type:\"object\",properties:{}}}else s.items=t.call()||{type:\"string\"};s.type=\"array\",t=\"\"}t&&(s.type=\"array\",s.items={type:t}),delete i.itemType}break;case\"String\":case\"Function\":e=\"string\";break;case\"Object\":e=\"object\";break;case\"Boolean\":e=\"boolean\";break;case\"Number\":e=\"number\";break;default:try{let t={};t=r.prototype?xt(r):xt(e),s.type=\"object\",t?(s.properties=t.properties,t.$id&&(s.$id=t.$id)):s.properties={},e=\"\"}catch(e){}}e&&(s.type=e)}}return i&&vt(s,i),s}(s.ownProperties||s.properties,t,e,i,r);if(s.properties[t]=a,n&&!a.calc){const e=_t(n);e&&(a.calc=e)}return a}function xt(e,t=!1){\"string\"==typeof e&&(e=gt(e));const n=e.prototype[\"schema_\"+e.name];if(n&&t){const t=new e,i=$t([n]),r=i.properties;for(const e in t)if(t.hasOwnProperty(e)){const n=t[e];if(void 0!==n){const t=r[e];void 0!==t&&void 0===t.default&&(t.default=n)}}return i}return n}function kt(e,t=!1){return xt(e,t)||{type:\"object\",properties:{}}}function Ft(e,t){return(n,i,r)=>{if(!n){if(t){let n;t.prototype&&(n=xt(t),n&&(e.type=\"object\",e.properties=n.properties,n.$id&&(e.$id=n.$id)))}return vt(e,e),e}wt(n,i,r,e,t)}}function Mt(e={}){return e.type=\"money\",Ft(e)}function Dt(e={}){return e.type=\"integer\",Ft(e)}function St(e={}){return e.type=\"string\",Ft(e)}function Ot(e={}){return e.fieldRequired=!0,Ft(e)}function zt(e,t={}){return t.type=\"string\",t.format=e,Ft(t)}function Ct(e={}){return zt(\"guid\",e)}function Pt(e){return Ft({aggregate:e})}function Rt(e={}){return t=>{const n=\"schema_\"+t.name,i=Reflect.getMetadata(n,t);if(i)for(const t in e)if(e.hasOwnProperty(t))switch(t){case\"validationMessages\":case\"warningMessages\":case\"methods\":i[t]=Object.assign(i[t]||{},e[t]);break;default:i[t]=e[t]}return t}}function jt(e={}){return t=>{const n=\"schema_\"+t.name,i=t.prototype[n];let r=null;if(i)for(const t in e){r||(r=i.$options,r||(r=i.$options={}));const n=e[t];switch(t){case\"validationMessages\":case\"warningMessages\":case\"$methods\":r[t]=Object.assign(r[t]||{},n);break;default:r[t]=n}}return t}}function Lt(e=null,t=null){return\"string\"==typeof e&&(e=[e]),\"string\"==typeof t&&(t=[t]),(n,i,r)=>{if(null===e){const n=i.toString().split(\"_\");e=[n[0]],null===t&&(t=[n[1]])}if(null!==t&&r){const i=_t(r),s=i&&\"string\"==typeof i?+i:NaN,a=bt(n);if(a){const n=a.ownProperties||a.properties;for(const r of e){const e=n[r];if(e)for(const n of t)if(e[n]=i,!isNaN(s))switch(n){case\"length\":case\"minimum\":case\"maximum\":case\"exclusiveMaximum\":case\"exclusiveMinimum\":case\"multipleOf\":case\"maxLength\":case\"minLength\":case\"maxItems\":case\"minItems\":e[n]=s}}}}}}const It={Number:function(e={}){return e.type=\"number\",Ft(e)},Integer:Dt,Money:Mt,String:St,Format:zt,Date:function(e={}){return zt(\"date\",e)},DateTime:function(e={}){return zt(\"date-time\",e)},Nip:function(e={}){return zt(\"nip\",e)},Guid:Ct,Boolean:function(e={}){return e.type=\"boolean\",Ft(e)},Array:function(e,t={}){return t.itemType=e,Ft(t,\"Array\")},Object:function(e,t={}){return Ft(t,e)},Required:Ot,Title:function(e){return Ft({title:e})},Valid:Lt,Aggregate:Pt},At=ut;function Nt(e,t){if(null===t)return!0;switch(e.type){case\"object\":return\"object\"==typeof t;case\"array\":return Array.isArray(t);case\"integer\":case\"number\":case\"money\":return\"number\"==typeof t&&(\"integer\"!==e.type||t%1==0);case\"string\":return\"string\"==typeof t;case\"boolean\":return\"boolean\"==typeof t;default:return!1}}const Kt=e=>\"function\"==typeof e,Tt=e=>null!==e&&\"object\"==typeof e,Vt=new Set([]),Et=new Set([\"enum\",\"calc\",\"fieldRequired\",\"readOnly\",\"disabled\",\"minimum\",\"maximum\",\"exclusiveMaximum\",\"exclusiveMinimum\",\"precision\",\"maxItems\",\"minItems\",\"maxLength\",\"minLength\"]);function Gt(e,t={}){if(e.$alreadyCompiled)return e;for(const n in e){const i=e[n];switch(n){case\"$ref\":break;case\"$external\":case\"$parent\":case\"$parent2\":case\"$parent3\":case\"$root\":delete e[n];break;case\"$methods\":if(Tt(i))for(const e in i){const n=i[e];if(Kt(n)){const r={body:g(n,{skipRemoveReturn:!0,removeDebugger:t.removeDebugger})};if(n.length){const t=n.toString(),s=t.indexOf(\"(\");if(s>-1){const e=t.indexOf(\")\",s);r.args=t.substring(s+1,e)}i[e]=r}else i[e]=r.body}}break;case\"$on\":if(Tt(i))for(const e in i){const n=i[e],r={body:g(n,{skipRemoveReturn:!0,removeDebugger:t.removeDebugger})};if(n.length){const e=n.toString(),t=e.indexOf(\"(\");if(t>-1){const n=e.indexOf(\")\",t);r.args=e.substring(t+1,n).split(\",\")[0]}}1==n.length&&\"event\"==r.args?i[e]=r.body:i[e]=r}break;case\"properties\":\"object\"!==e.type&&(delete e[n],e.type=\"object\",e[n]=i);for(const e in i){const n=i[e];if(Kt(n)){const r=n();Gt(r,t),i[e]=r}else Tt(n)&&Gt(n,t)}break;case\"items\":if(\"array\"!==e.type&&(delete e[n],e.type=\"array\",e[n]=i),Kt(i)){const r=i();Gt(r,t),e[n]=r}else Tt(i)&&Gt(i,t);break;default:Kt(i)?Vt.has(n)||(e[n]=g(i,{skipRemoveReturn:!Et.has(n),removeDebugger:t.removeDebugger})):Tt(i)&&Gt(i,t)}}return e}function Wt(e){const t=Gt(e);return Object.defineProperty(t,\"$alreadyCompiled\",{value:!0,enumerable:!1}),t}function Bt(...e){return tn(e)}class Ut{constructor(e,t,n,i){i&&(this.fixSchema=this.defineSchemaSimple,this.defineSchema=this.defineSchemaSimple)}defineSchema(...e){return 1==e.length?Wt(e[0]):Wt(tn(e))}defineSchemaSimple(...e){return 1==e.length?e[0]:tn(e)}fixSchema(...e){return Wt(tn(e))}}function Zt(e,t,n){return new Ut(e||{},t||{},n||{},!1).defineSchema}const qt=Zt();function Yt(e,t,n){return new Ut(e||{},t||{},n||{},!1).fixSchema}const Ht=Yt();function Jt(e,t,n){return new Ut(e||{},t||{},n||{},!0).defineSchema}const Xt=Jt();function Qt(e,t,n){return new Ut(e||{},t||{},n||{},!0).fixSchema}const en=Qt();function tn(e){const t={},n={};for(let i=0;i\"function\"==typeof t?\"[FUNCTION]\"+t:t),\" \").replace(/\"(\\[FUNCTION])?((?:\\\\.|[^\\\\\"])*)\"(:)?/g,((e,t,n,i)=>t?JSON.parse('\"FUNCTION'+n+'\"'):i&&/^\\w+$/.test(n)?n+\":\":e));return t=t.replace(/(\\b\\w+\\b):\\s*FUNCTION(function\\s)?\\1\\s*\\(/g,((e,t)=>t?t+\"(\":e)),t=t.replace(/(\\b\\w+\\b):\\s*FUNCTION\\s*\\(/g,((e,t)=>t?t+\": (\":e)),t}(e);if(t){for(const e in i)a=ot(a,\"this.$methods.\"+e,i[e]);for(const t in r)e.$methods||(e.$methods={}),e.$methods[t]=r[t]}return n&&(a=a.replace(/this\\.\\$(methods|root|external|parent3|parent2|parent|model|obj|event|value)/g,((e,t)=>\"$\"+t)),s&&e.$options&&e.$options.simpleThis&&(delete e.$options.simpleThis,0==Object.keys(e.$options).length&&delete e.$options)),a}const rn={type:\"Nieprawidłowa wartość\",number:\"Pole musi być liczbą\",money:\"Pole musi być liczbą\",integer:\"Pole musi być liczbą całkowitą\",required:\"Wartość pola jest wymagana\",fieldRequired:\"Wartość pola jest wymagana\",minimum:\"Minimalnie {{minimum}}\",maximum:\"Maksymalnie {{maximum}}\",exclusiveMinimum:\"Musi być większe niz {{exclusiveMinimum}}\",exclusiveMaximum:\"Musi być mniejsze niz {{exclusiveMaximum}}\",multipleOf:\"Musi być wielokrotnością {{multipleOf}}\",maxLength:\"Tekst jest zbyt długi, maksymalnie {{maxLength}} znaków\",minLength:\"Tekst jest zbyt krótki, minimalnie {{minLength}} znaków\",maxItems:\"Zbyt dużo elementów, maksymalnie {{maxItems}}\",minItems:\"Za mało elementów, minimalnie {{minItems}}\",enum:\"Nieprawidłowa wartość\",format:\"Nieprawidłowy format\",pattern:\"Nieprawidłowy format\",validFunc:\"Nieprawidłowa wartość\",\"format.nip\":\"Nieprawidłowy format, NIP musi składać się z dziesięciu cyfr.\",\"format.url\":\"Podaj poprawny adres URL\",\"format.email\":\"Nieprawidłowy format, adres e-mail musi być wprowadzony w formacie nazwa@domena.\",\"format.kod\":\"Nieprawidłowy format, kod pocztowy musi być wprowadzony w formacie xx-xxx i składać się z samych cyfr.\"},sn={resetOnFocus:!0,dirtyOnInput:!1,dirtyOnBlur:!0,startDirtyOnCalc:!0,disableCalculations:!1,disableValidations:!1,startDirty:!1,lazyNumbers:!1,schemaMethods:ut,fixData:!0,fixFormat:!1,fixTypes:!1,validationMessages:rn,warningMessages:rn,form:{},external:{},readOnly:!1,longGuids:!1,forceCalcEnabled:!1};function an(e,t,n=0){for(const i in t)if(t.hasOwnProperty(i)){const r=t[i];if(void 0!==r){if(0===n){if(\"_\"===i[0])continue;switch(i){case\"external\":case\"prevModel\":case\"form\":case\"i18n\":case\"Vue\":e[i]=r;continue;case\"schemaMethods\":e.schemaMethods?e.schemaMethods=Object.assign({},e.schemaMethods,t.schemaMethods):e.schemaMethods=t.schemaMethods;continue;case\"_disabledFields\":case\"_readedErrorFields\":case\"_anyEvent\":case\"_forceRecalc\":continue}}\"object\"!=typeof r||null==r||Array.isArray(r)?e[i]=r:(void 0===e[i]&&(e[i]={}),an(e[i],r,n+1))}}}function on(e,t,n,i=sn,r=\"\"){if(!(e.computed||void 0!==e.disabled&&(!0===e.disabled||i&&i._disabledFields&&i._disabledFields.has(r)))){if(\"object\"===e.type){if(\"object\"!=typeof t)return;if(null===t)return null;const s={},a=e.properties;if(a){const e=\"\"===r?r:r+\".\";for(const r in a){const o=t[r],l=a[r];if(void 0!==o){const t=on(l,o,n,i,e+r);void 0!==t&&(s[r]=t)}}}return s}if(\"array\"!==e.type){if(!Array.isArray(t)&&!Tt(t)&&(!n||Nt(e,t))&&(!n||\"\"!==t||\"date\"!==e.format&&\"date-time\"!==e.format))return t}else if(Array.isArray(t)){const s=[],a=e.items;for(let e=0;ee)))[r=0]&&r++;const l=i[r];if(l){if(\"object\"===e.type){const c=e.properties[l];if(void 0!==c){const e=o?o+\".\"+l:l;if(\"object\"===c.type||\"array\"===c.type){let o=t[l];return void 0===o&&(o=pn(c,!0,void 0,a,e),t[l]=o),fn(c,o,n,i,r+1,s,a,e)}return $n(c,t,l,n)}return!1}if(\"array\"===e.type){const c=e.items;if(void 0!==c){const e=parseInt(l,10);if(void 0===t[e])for(;t.length10&&(t=t.substring(0,10)),te(\"date\",t)||(t=\"\");break;case\"date-time\":if(t.indexOf(\"Z\")>-1){const e=new Date(t);t=isNaN(e.getTime())?\"\":me(new Date(t))}else 10===t.indexOf(\"T\")&&(t=t.replace(\"T\",\" \"));t.length<19&&t.length>=10&&(t=t.substr(0,10)+\" 00:00:00\"),te(\"date-time\",t)||(t=\"\")}}return t}function $n(e,t,n,i){return(null==i||null!=(i=mn(e,i)))&&(!!Nt(e,i)&&(t[n]=i,!0))}function gn(e,t,n,i,r=sn,s=\"\"){if(void 0===n)return!1;if(void 0===(n=mn(e,n)))return!1;const a=e.items;if(i)for(;t.length>n.length;)t.splice(t.length-1,1);let o=0;for(let e=0;e10&&(n=n.substring(0,10),i=!0),i&&(e[t]=n),i}function _n(e,t){let n=e[t],i=!1;return n&&(10===n.indexOf(\"T\")&&(n=n.replace(\"T\",\" \"),i=!0),n.length<19&&n.length>=10&&(n=n.substring(0,10)+\" 00:00:00\",i=!0)),i&&(e[t]=n),i}function wn(e,t,n){const i=e[t];if(i){let r=i;switch(n){case\"uppercase\":r=i.toLocaleUpperCase();break;case\"lowercase\":r=i.toLocaleLowerCase();break;case\"capitalize\":r=Fe(i)}if(i!==r)return e[t]=r,!0}return!1}function xn(e,t){let n=0;if(\"object\"===e.type){const i=e.properties;for(const r in e.properties){const e=i[r];switch(e.type){case\"object\":case\"array\":xn(e,t[r]);break;case\"string\":switch(e.format){case\"date-time\":n+=_n(t,r)?1:0;break;case\"date\":n+=bn(t,r)?1:0;break;case\"uppercase\":case\"lowercase\":case\"capitalize\":n+=wn(t,r,e.format)?1:0}}}}else if(\"array\"===e.type){const i=e.items;for(let e=0;e(t.length>=2&&e.push(t.substring(0,1)+\"**\"+t.substring(t.length-1)),e)),[]);return 0==t.length?\"***\":t.join(\" \")}default:return}}(t,n)}if(\"object\"===e.type){if(\"object\"!=typeof t)return;if(null===t)return null;const i={},r=e.properties;if(r)for(const e in r){const s=t[e],a=r[e];if(void 0!==s){const t=Mn(a,s,n);void 0!==t&&(i[e]=t)}}return i}if(\"array\"!==e.type)return t;if(Array.isArray(t)){const i=[],r=e.items;for(let e=0;e-1?e.replace(/\\$parent\\.\\$parent\\.\\$parent\\./g,\"$parent3.\").replace(/\\$parent\\.\\$parent\\./g,\"$parent2.\").replace(/\\$parent4./g,\"$obj.$parent.$parent.$parent.$parent.$model\").replace(/\\$parent5./g,\"$obj.$parent.$parent.$parent.$parent.$parent.$model\"):e}const zn=\"$root,$parent,$parent2,$parent3,$external,$methods,$obj,$value,$event\",Cn={};function Pn(e,t,n,i){var r,s,a,o;if(e.aggregate){if(e.__cache&&e.__cache.aggregateFunc)return e.__cache.aggregateFunc;let i=null;const l=e.aggregate.func||\"sum\";let c=e.aggregate.when||e.aggregate.if,u=\"\";if(t&&!n&&(u=`agg||${l}||array:${e.aggregate.array}||prop:${e.aggregate.property}`+(c?\"||when:\"+c:\"\")+\"||type:\"+e.type+(e.precision?\"||prec:\"+e.precision:\"\"),i=Cn[u],i))return Object.defineProperty(e,\"_aggregateFunc\",{value:i}),i;let h=e.aggregate.array;Array.isArray(h)||(h=[h]);let d=!1;c&&(c=On(c),d=!0);let p=e.aggregate.property,f=\"\";if(p){/[\\$\\.]/.test(p)?(d=!0,p=On(p)):p=\"$array[$index].\"+p}else if(\"array\"===e.type&&\"object\"===(null===(r=e.items)||void 0===r?void 0:r.type)){d=!1;f+=\"\\n var $item = $array[$index]; $item = {\"+Object.keys((null===(s=e.items)||void 0===s?void 0:s.properties)||{}).map((t=>{var n,i;return\"array\"===((null===(n=e.items)||void 0===n?void 0:n.properties)||{})[t].type||\"object\"===((null===(i=e.items)||void 0===i?void 0:i.properties)||{})[t].type?t+\": $item.\"+t+\"===undefined ? undefined : $methods.deepCopy($item.\"+t+\")\":t+\": $item.\"+t})).join(\", \")+\"}\",p=\"$item\"}else p=\"$array[$index]\";d&&(f+=\"\\n var $item = $array[$index];\");let m=\"var $length = 0;\\n\";switch(l){case\"mul\":m+=\"var $result = 1;\\n\";break;case\"min\":\"string\"===e.type?m+=\"var $result = 'źźźźźźźźźźźź';\\n\":m+=\"var $result = Infinity;\\n\";break;case\"max\":\"string\"===e.type?m+=\"var $result = '';\\n\":m+=\"var $result = -Infinity;\\n\";break;case\"map\":case\"distinct\":m+=\"var $result = [];\\n\";break;case\"distinctitem\":m+=\"var $result = [];\\n\",m+=\"var $distinct = {};\\n\";break;default:switch(e.type){case\"string\":m+=\"var $result='';\\n\";break;case\"object\":m+=\"var $result=null;\\n\";break;default:m+=\"var $result = 0;\\n\"}}let $=\"\";switch(l){case\"avg\":case\"sum\":$+=`$result += (${p}); // func: ${l}`;break;case\"max\":$+=`var $v = (${p}); // func: ${l}\\n`,$+=\" if ($v > $result)\\n\",$+=\" $result=$v\";break;case\"min\":$+=`var $v = (${p}); // func: ${l}\\n`,$+=\" if ($v < $result)\\n\",$+=\" $result=$v\";break;case\"mul\":$+=`$result *= (${p}); // func: ${l}`;break;case\"count\":$+=`$result++; // func: ${l}`;break;case\"first\":case\"last\":$+=`$result = (${p});break; // func: ${l}`;break;case\"map\":$+=`$result.push(${p}); // func: ${l}`;break;case\"distinct\":$+=`var $v = (${p}); // func: ${l}\\n`,$+=\" if ($result.indexOf($v)===-1)\\n\",$+=\" $result.push($v)\";break;case\"distinctitem\":{let t=\"\";if(\"array\"===e.type&&\"object\"===(null===(a=e.items)||void 0===a?void 0:a.type)){d||(t+=\" var $item = $array[$index];\\n\"),t+=\" $result.push({\"+Object.keys((null===(o=e.items)||void 0===o?void 0:o.properties)||{}).map((t=>{var n,i;return\"array\"===((null===(n=e.items)||void 0===n?void 0:n.properties)||{})[t].type||\"object\"===((null===(i=e.items)||void 0===i?void 0:i.properties)||{})[t].type?t+\": $item.\"+t+\"===undefined ? undefined : $methods.deepCopy($item.\"+t+\")\":t+\": $item.\"+t})).join(\", \")+\"})\\n\"}else t=\" $result.push($array[$index]);\\n\";$+=`var $v = (${p}); // func: ${l}\\n`,$+=\" if ($distinct[$v]===undefined) {\\n\",$+=t,$+=\" $distinct[$v] = $index;\\n\",$+=\" }\"}}$=c?\"first\"===l||\"map\"===l||\"distinct\"===l||\"distinctitem\"===l?`var $arrayLength = $array.length;\\nfor(var $index = 0; $index < $arrayLength; $index++) {${f}\\n if (${c}) { // if: ${e.aggregate.when||e.aggregate.if}\\n $length++;\\n ${$}\\n }\\n}`:`var $index = $array.length;\\nwhile($index--) {${f}\\n if (${c}) { // if: ${e.aggregate.when||e.aggregate.if}\\n $length++;\\n ${$}\\n }\\n}`:\"first\"===l||\"map\"===l||\"distinct\"===l||\"distinctitem\"===l?`var $arrayLength = $array.length;\\n$length += $arrayLength;\\nfor(var $index = 0; $index < $arrayLength; $index++) {${f}\\n ${$}\\n}`:`var $index = $array.length;\\n$length += $index;\\nwhile($index--) {${f}\\n ${$}\\n}`;for(let t of h){let n=null;const i=t.indexOf(\"/\");i>-1&&(n=t.substr(i+1),t=t.substr(0,i));/[\\$\\.]/.test(t)||(t=\"this.\"+t),t=On(t),n?m+=`\\nvar $parentArray = ${t}; // array: ${e.aggregate.array}\\nvar $parentLength = $parentArray.length;\\nfor(var $parentIndex=0; $parentIndex<$parentLength; $parentIndex++) {\\n var $array=$parentArray[$parentIndex].${n};\\n if ($array) {\\n ${$}\\n}\\n}`:(m+=`\\nvar $array = ${t};\\n`,m+=$+\"\\n\")}switch(\"avg\"===l&&(m+=\"\\nif ($length)\\n $result /= $length;\"),l){case\"mul\":m+=\"\\nif ($length===0)\\n $result=0;\";break;case\"min\":case\"max\":\"string\"===e.type?m+=\"\\nif ($length === 0)\\n $result = '';\":m+=\"\\nif ($length === 0)\\n $result = 0;\"}switch(e.type){case\"integer\":m+=\"\\nreturn $methods.mround($result,0);\";break;case\"money\":e.precision?m+=`\\nreturn $methods.mround($result,${e.precision});`:m+=\"\\nreturn $methods.mround($result,2);\";break;case\"number\":e.precision?m+=`\\nreturn $methods.mround($result,${e.precision});`:m+=\"\\nreturn $result;\";break;case\"object\":m+=\"\\nreturn !$result ? null : {\"+Object.keys(e.properties||{}).map((t=>\"array\"===(e.properties||{})[t].type||\"object\"===(e.properties||{})[t].type?t+\": $result.\"+t+\"===undefined ? undefined : $methods.deepCopy($result.\"+t+\")\":t+\": $result.\"+t)).join(\", \")+\"}\";break;default:m+=\"\\nreturn $result;\"}return i=new Function(\"{\"+zn+\"}\",m),u&&(e.__cache||Object.defineProperty(e,\"__cache\",{value:{}}),e.__cache.aggregateFunc=i,Cn[u]=i),i}}const Rn={};function jn(e,t,n,i){let r=null;const s=e.calc;if(s){if(Kt(s))return s;if(e.__cache&&e.__cache.calcFunc)return e.__cache.calcFunc;let i=e.calc,a=\"\",o=\"\",l=\"\";s.func&&(i=s.func,a=s.when);let c=\"\";if(t&&!n&&(c=\"calc\"+(a?`||when:${a}`:\"\")+`||type:${e.type}`+(e.precision?`||prec:${e.precision}`:\"\")+`||text:${i}`,r=Rn[c],void 0!==r))return void 0===e.__cache&&Object.defineProperty(e,\"__cache\",{value:{}}),Object.defineProperty(e.__cache,\"calcFunc\",{value:r}),r;Array.isArray(i)?(i=i.join(\"\\r\\n\"),l=On(i),o=l+\"\\r\\n\"):l=On(i),/(return[\\s\\\"\\!\\'\\(\\;]|return$)/.test(l)||(o=-1==l.indexOf(\"$result\")?`return (${l});`:`var $result;\\r\\n${l}\\r\\nreturn $result;`),a&&(o=`if (${On(a)}) {\\r\\n ${o}}`),r=new Function(\"{\"+zn+\"}\",o),c&&(Rn[c]=r,void 0===e.__cache&&Object.defineProperty(e,\"__cache\",{value:{}}),e.__cache.calcFunc=r)}return r}const Ln={minimum:/\\{\\{minimum\\}\\}/g,maximum:/\\{\\{maximum\\}\\}/g,exclusiveMaximum:/\\{\\{exclusiveMaximum\\}\\}/g,exclusiveMinimum:/\\{\\{exclusiveMinimum\\}\\}/g,multipleOf:/\\{\\{multipleOf\\}\\}/g,maxLength:/\\{\\{maxLength\\}\\}/g,minLength:/\\{\\{minLength\\}\\}/g,maxItems:/\\{\\{maxItems\\}\\}/g,minItems:/\\{\\{minItems\\}\\}/g,pattern:/\\{\\{pattern\\}\\}/g,format:/\\{\\{format\\}\\}/g,enum:/\\{\\{enum\\}\\}/g,title:/\\{\\{title\\}\\}/g,value:/\\{\\{value\\}\\}/g},In=/{{\\s*(\\w*)\\s*}}/gim;function An(e,t,n,i,r){var s,a,o,l,c,u;i=i||e.schema;const h=null===(s=e.options._i18n)||void 0===s?void 0:s.value,d=null!==(o=null===(a=e.options._lang)||void 0===a?void 0:a.value)&&void 0!==o?o:pe.current;let p=t;const f=r?null===(l=e.schema.warnings)||void 0===l?void 0:l.warningMessages:e.schema.validationMessages;if(f){let n=\"\";r?e.schema.warnings&&(\"format\"===t&&e.schema.warnings.format?n=f[\"format.\"+e.schema.warnings.format]:\"type\"===t&&e.schema.warnings.type&&(n=f[\"type.\"+e.schema.warnings.type])):\"format\"==t&&e.schema.format?n=f[\"format.\"+e.schema.format]:\"type\"==t&&e.schema.type&&(n=f[\"type.\"+e.schema.type]),n||(n=f[t]),n&&(p=h?h.t(n):n)}if(h&&p==t){let n=p,i=h.t(n);if(i===n){const s=r?\"warningMessages.\":\"validationMessages.\",a=r?null===(c=e.schema.warnings)||void 0===c?void 0:c.format:e.schema.format,o=r?null===(u=e.schema.warnings)||void 0===u?void 0:u.type:e.schema.type;\"format\"===t&&a?(n=s+\"format.\"+a,i=h.t(n)):\"type\"===t&&o&&(n=s+\"type.\"+o,i=h.t(n)),i===n&&(n=s+t,i=h.t(n))}i!==n&&(p=i)}if(p==t){const n=r?e.options.warningMessages:e.options.validationMessages;let i=\"\";r?e.schema.warnings&&(\"format\"===t&&e.schema.warnings.format?i=n[\"format.\"+e.schema.warnings.format]:\"type\"===t&&e.schema.warnings.type&&(i=n[\"type.\"+e.schema.warnings.type])):\"format\"==t&&e.schema.format?i=n[\"format.\"+e.schema.format]:\"type\"==t&&e.schema.type&&(i=n[\"type.\"+e.schema.type]),i||(i=n[t]),i&&(p=i)}return r?\"number\"==typeof e.schema.warnings[t]&&(p=p.replace(Ln[t]||\"rrr\",(()=>void 0===e.schema.warnings[t]?\"\":Se(e.schema.warnings[t])))):\"number\"==typeof e.schema[t]&&(p=p.replace(Ln[t]||\"rrr\",(()=>void 0===e.schema[t]?\"\":Se(e.schema[t],void 0,d)))),p.replace(In,((t,s)=>{var a;switch(s){case\"key\":return e.schema.$key||\"\";case\"title\":return i.title||e.schema.$key||\"\";case\"shortTitle\":return i.shortTitle||i.title||e.schema.$key||\"\";case\"format\":return r?(null===(a=e.schema.warnings)||void 0===a?void 0:a.format)||\"\":e.schema.format||\"\";case\"value\":return n;case\"minimum\":case\"maximum\":case\"exclusiveMinimum\":case\"exclusiveMaximum\":{const t=r?i.warnings[s]:i[s];if(void 0!==t){if(\"number\"==typeof t)return\"money\"===e.schema.type?ze(t,void 0,void 0,d):Se(t,void 0,d);if(\"string\"===e.schema.type)switch(e.schema.format){case\"date\":return Re(t,void 0,d);case\"date-time\":return 19===t.length?Re(t,void 0,d)+\" \"+t.substr(11):10===t.length?`${Re(t,void 0,d)} 00:00:00`:t}return t}return\"\"}default:return r?i.warnings[s]||\"\":i[s]||\"\"}}))}function Nn(e,t,n,i=null){return An(e,t,n,i,!1)}function Kn(e,t,n,i=null){return An(e,t,n,i,!0)}function Tn(e,t,n){let i=n?t._validationFunctions:void 0;if(void 0===i){if(i=[],\"array\"===e.type)void 0!==t.minItems&&i.push(En.minItems),void 0!==t.maxItems&&i.push(En.maxItems);else{if(\"string\"===e.type){if(void 0!==t.minimum&&String.prototype&&i.push(En.minimumString),void 0!==t.exclusiveMinimum&&i.push(En.exclusiveMinimumString),void 0!==t.maximum&&i.push(En.maximumString),void 0!==t.exclusiveMaximum&&i.push(En.exclusiveMaximumString),void 0!==t.maxLength&&i.push(En.maxLength),void 0!==t.minLength&&i.push(En.minLength),void 0!==t.pattern)try{const e=new RegExp(t.pattern||\"\",null===t.patternFlags?\"\":t.patternFlags||\"i\");e.flags.indexOf(\"g\")>-1?i.push((t=>{const n=e.test(t)?null:\"pattern\";return e.lastIndex=0,n})):i.push((t=>e.test(t)?null:\"pattern\"))}catch(e){i.push((()=>\"pattern\"))}if(void 0!==t.format){const e=ee(t.format);void 0!==e&&i.push((t=>e(t)?null:\"format\"))}}else void 0!==t.minimum&&String.prototype&&i.push(En.minimum),void 0!==t.exclusiveMinimum&&i.push(En.exclusiveMinimum),void 0!==t.maximum&&i.push(En.maximum),void 0!==t.exclusiveMaximum&&i.push(En.exclusiveMaximum);void 0!==t.enum&&i.push(En.enum),\"number\"!==e.type&&\"integer\"!==e.type&&\"money\"!==e.type||t.multipleOf&&i.push(En.multipleOf)}n&&Object.defineProperty(t,\"_validationFunctions\",{enumerable:!1,value:i})}return i}const Vn=(e,t)=>e.toLocaleLowerCase().localeCompare(t.toLocaleLowerCase()),En={enum:(e,t)=>{const n=t.enum;return null==n||null==n||n.indexOf(e)>-1?null:\"enum\"},minItems:(e,t)=>{const n=t.minItems;return null==n||null==n||isNaN(n)||e.length>=n?null:\"minItems\"},maxItems:(e,t)=>{const n=t.maxItems;return null==n||null==n||isNaN(n)||e.length<=n?null:\"maxItems\"},multipleOf:(e,t)=>{const n=t.multipleOf;return null==n||null==n||isNaN(n)||e%n!=0?null:\"multipleOf\"},maxLength:(e,t)=>{const n=t.maxLength;return null==n||null==n||isNaN(n)||e.length<=n?null:\"maxLength\"},minLength:(e,t)=>{const n=t.minLength;return null==n||null==n||isNaN(n)||e.length>=n?null:\"minLength\"},minimum:(e,t)=>{const n=t.minimum;return null==n||null==n||isNaN(n)||e>=n?null:\"minimum\"},exclusiveMinimum:(e,t)=>{const n=t.exclusiveMinimum;return null==n||null==n||isNaN(n)||e>n?null:\"exclusiveMinimum\"},maximum:(e,t)=>{const n=t.maximum;return null==n||null==n||isNaN(n)||e<=n?null:\"maximum\"},exclusiveMaximum:(e,t)=>{const n=t.exclusiveMaximum;return null==n||null==n||isNaN(n)||e{const n=t.minimum;return null==n||null==n||-1!==Vn(e,n)?null:\"minimum\"},exclusiveMinimumString:(e,t)=>{const n=t.exclusiveMinimum;return null==n||null==n||1===Vn(e,n)?null:\"exclusiveMinimum\"},maximumString:(e,t)=>{const n=t.maximum;return null==n||null==n||1!==Vn(e,n)?null:\"maximum\"},exclusiveMaximumString:(e,t)=>{const n=t.exclusiveMaximum;return null==n||null==n||-1===Vn(e,n)?null:\"exclusiveMaximum\"}};class Gn{constructor(){this.valid=!0,this.errors=[]}}const Wn={};function Bn(e,t,n=!0,i){let r=null;if(t)if(Kt(t))r=t;else{let e=\"\";if(e=Array.isArray(t)?t.join(\"\\r\\n\"):t,n&&!i&&(r=Wn[\"valid_\"+e],void 0!==r))return r;e=`${On(e)}`;let s=\"\";e.indexOf(\"$value\")>-1&&(s+=\"var $value=$obj.$model;\\r\\n\"),e.indexOf(\"$result\")>-1?s+=`var $result=null;\\r\\n${e}\\r\\nreturn $result;`:/(return[\\s\\\"\\!\\'\\(\\;]|return$)/.test(e)?s+=e:s+=`return (${e})`,r=new Function(\"{\"+zn+\"}\",s),n&&(Wn[\"valid_\"+e]=r)}return r}function Un(e){if(Kt(e))return e;let t=\"\";if(\"string\"==typeof e)t=`return (${e=On(e)})`;else if(Array.isArray(e))for(const n of e)if(\"string\"==typeof n)t+=On(n)+\"\\r\\n\";else{let e=n.when||n.if||\"true\";e=On(e);let i=n.value;void 0===i?i=e:\"string\"==typeof i&&(i=On(i)),i.indexOf(\"$result\")>-1?t+=`if (${e}) {${i}};\\r\\n`:-1==i.indexOf(\"return \")?t+=`if (${e}) return (${i});\\r\\n`:t+=`if (${e}) {${i}};\\r\\n`}return t.indexOf(\"$value\")>-1&&(t=`var $value=$obj.$model;\\r\\n${t}`),t.indexOf(\"$result\")>-1?t=`var $result=null;\\r\\n${t}\\r\\nreturn $result;`:-1==t.indexOf(\"return \")&&(t=`return (${t})`),new Function(\"{\"+zn+\"}\",t)}function Zn(e){if(void 0!==e._anyCalc)return e._anyCalc;if(e.calc||e.summary||e.aggregate)return Object.defineProperty(e,\"_anyCalc\",{value:!0}),!0;if(e.properties)for(const t in e.properties){if(Zn(e.properties[t]))return Object.defineProperty(e,\"_anyCalc\",{value:!0}),!0}else if(e.items)return Zn(e.items);return Object.defineProperty(e,\"_anyCalc\",{value:!1}),!1}function qn(e){return!!(e.$schema.disabled||e.$parent&&qn(e.$parent))}function Yn(e,t,n,i){const r=e.$schema;for(let s=0;s{r.options._forceRecalc&&r.options._forceRecalc;return c.call(r.thisModel||r.parent,r.calcCtx)}));if(s){let e=null;const n=t((()=>{e=c.call(r.thisModel||r.parent,r.calcCtx),s(e)}),{flush:\"post\"});r.watchStops.push(n)}Object.defineProperty(l,i,{enumerable:!0,get(){try{return u.value}catch(e){return}}})}function Jn(e,t,n,i){const r=t.schema.warnings||{},s=e.$schema;for(let a=0;al.call(i.thisModel||i.parent,i.calcCtx)));Object.defineProperty(o.warnings,n,{enumerable:!0,get(){try{return c.value}catch(e){return}}})}function Qn(e,t){t.calcCtx||(t.calcCtx={}),t.options.external?t.calcCtx.$external=t.options.external:t.calcCtx.$external={},t.calcCtx.$methods=t.options.schemaMethods,t.calcCtx.$obj=e,t.calcCtx.$root=e.$root.$model;const n=e.$parent;return n&&n.$parent?(t.calcCtx.$parent=n.$parent.$model,n.$parent.$parent?(t.calcCtx.$parent2=n.$parent.$parent.$model,n.$parent.$parent.$parent?t.calcCtx.$parent3=n.$parent.$parent.$parent.$model:t.calcCtx.$parent3={}):t.calcCtx.$parent2=t.calcCtx.$parent3={}):t.calcCtx.$parent=t.calcCtx.$parent2=t.calcCtx.$parent3={},t.calcCtx}function ei(e){var t;if(!(null===(t=e.options)||void 0===t?void 0:t.simpleThis))return new Proxy(e.calcCtx,{get(t,n,i){switch(n){case\"$root\":return t.$root;case\"$methods\":return t.$methods;case\"$external\":return t.$external;case\"$obj\":return t.$obj;case\"$parent\":return t.$parent;case\"$parent2\":return t.$parent2;case\"$parent3\":return t.$parent3;case\"$event\":return t.$event;case\"$value\":return t.$value;case\"$this\":return e.parent}return Reflect.get(e.parent,n,i)},set:(t,n,i)=>(!n||\"string\"!=typeof n||!n.startsWith(\"$\"))&&Reflect.set(e.parent,n,i)})}function ti(e,t,n){e.debounce?(e.debounceValue&&(e.debounceValue.value=t),clearTimeout(e.debounceTimer),e.debounceTimer=setTimeout((()=>{e.debounceValue&&(e.debounceValue.value=void 0),n()}),e.debounce)):n()}function ni(e){return e&&e._internal&&e._options&&e.$root}function ii(e,t){let n=(t=t||e.target)._internal.calcCtx;if(!t._options._anyEvent)return!1;!e.path&&t&&(e.path=t.$path);let i=!1;const r=t._internal;if(r.on){const s=r.on[e.type];if(s&&s.size){e.$obj=t;for(const r of s)n||(n=Qn(t,t._internal)),n.$event=e,r.call(t._internal.thisModel||t._internal.parent||t.$model,e,n),i=!0}}return t.$parent&&!e.stopPropagate&&ii(e,t.$parent)&&(i=!0),i}function ri(e,t,n,i,r,s){let a,o=n[i];if(void 0===o&&void 0!==e.default&&(o=e.default),e.calc?(void 0===e.cache&&(e.cache={}),a=e.cache.calcFunc,void 0===a&&(a=e.cache.calcFunc=jn(e,!1,!1))):e.aggregate&&(void 0===e.cache&&(e.cache={}),a=e.cache.aggregateFunc,void 0===a&&(a=e.cache.aggregateFunc=Pn(e,!1,!1))),a){let n=t.$path;\"string\"==typeof i?n=n?n+\".\"+i:i:n+=\"[\"+i+\"]\";const l={$root:r.$root,$parent:s||{},$parent2:s&&s.$parent||{},$parent3:s&&s.$parent&&s.$parent.$parent||{},$external:r.external||{},$methods:r.schemaMethods||{},$obj:{$key:i,$path:n,$model:o}};let c;Kt(e.calc)&&(c=ei({options:{},parent:t,calcCtx:l}));try{o=a.call(c||t,l)}catch(e){}}return o}function si(e,t,n,i,r){const s=e.items,a=new Proxy(t,{get(e,t){if(\"$parent\"===t)return i;if(\"$key\"===t)return r;if(s){const r=ri(s,a,e,t,n,i);if(null!=r)switch(s.type){case\"object\":return ai(s,r,n,a,t);case\"array\":return si(s,r,n,a,t)}return r}}});return a}function ai(e,t,n,i,r){const s=e.properties,a=new Proxy(t,{get(e,t){if(\"$parent\"===t)return i;if(\"$key\"===t)return r;if(\"$path\"===t){let e=\"\";return i&&(e=i.$path),e?e+\".\"+r:r||\"\"}if(s){const r=s[t];if(r){const s=ri(r,a,e,t,n,i);if(null!=s)switch(r.type){case\"object\":return ai(r,s,n,a,t);case\"array\":return si(r,s,n,a,t)}return s}}else;}});return void 0===n.$root&&(n.$root=a),a}function oi(e,t,n){const i=t.schema;t.needsCalcArgs=!0;const r=i[n];delete e[n],void 0===i.cache&&(i.cache={});let s=i.cache[`schema_${n}`];void 0===s&&(s=Un(r),i.cache[`schema_${n}`]=s),Object.defineProperty(e,n,{enumerable:!0,get(){try{return s.apply(t.parentModel,t.calcargs)}catch(e){return}}})}function li(e,t,n,i){for(const r of i)void 0!==t.schema[r]&&(typeof t.schema[r]!==n?oi(e,t,r):e[r]=t.schema[r])}function ci(e,t,n=\"\",i,r,s,a){let o=!1,l=!1;const c={},u={schema:e};let h=null;const d=(r,s,a)=>(h={path:n,validation:r,expected:void 0!==s?s:void 0===c[r]?e[r]:c[r],value:a||t},i.disableMessages||(h.message=Nn({options:i,schema:e},r,t,c)),i.errors.push(h),!!i.breakOnFirstError),p=Tn(e,e,!1);switch(e.type){case\"integer\":case\"number\":case\"money\":li(c,u,\"number\",[\"minimum\",\"maximum\",\"exclusiveMaximum\",\"exclusiveMinimum\",\"precision\"]);break;case\"string\":li(c,u,\"number\",[\"maxLength\",\"minLength\"]),li(c,u,\"number\",[\"minimum\",\"maximum\",\"exclusiveMaximum\",\"exclusiveMinimum\"]);break;case\"array\":li(c,u,\"number\",[\"maxItems\",\"minItems\",\"length\"])}void 0!==e.enum&&(Array.isArray(e.enum)?c.enum=e.enum:oi(c,u,\"enum\")),void 0===e.required||\"object\"===e.type||\"string\"!=typeof e.required&&\"boolean\"!=typeof e.required||(e.fieldRequired=e.required),li(c,u,\"boolean\",[\"fieldRequired\",\"disabled\"]),li(c,u,\"string\",[\"title\",\"shortTitle\",\"description\"]);let f=null;if(e.validFunc){u.needsCalcArgs=!0,void 0===e.cache&&(e.cache={});let t=e.cache.schema_validFunc;void 0===t&&(t=Bn(0,e.validFunc,!1,!1)),f=()=>{const e=t.apply(u.parentModel,u.calcargs);return!0===e||void 0===e?null:!1===e?\"validFunc\":e},p.push(f)}if(u.calcFunction=null,u.aggregateFunction=null,u.calcValue=void 0,i.validateCalculations)if(e.calc){u.validateCalculations=!0,u.needsCalcArgs=!0,void 0===e.cache&&(e.cache={});let t=e.cache.calcFunction;void 0===t&&(e.cache.calcFunction=t=jn(e,!1,!1)),u.calcFunction=t}else if(e.aggregate){u.validateCalculations=!0,u.needsCalcArgs=!0,void 0===e.cache&&(e.cache={});let t=e.cache.calcFunction;void 0===t&&(e.cache.aggregateFunction=t=Pn(e,!1,!1)),u.aggregateFunction=t}const m={$key:s,$model:t,$parent:r};if(m.$root=null===r?m:r.$root,u.parent=a,u.needsCalcArgs){const e={$root:{},$parent:{},$parent2:{},$parent3:{},$external:i.external,$methods:i.schemaMethods,$obj:m};a?(e.$root=i.$rootProxy,a.$parent&&(e.$parent=a.$parent,a.$parent.$parent&&(e.$parent2=a.$parent.$model,a.$parent.$parent.$parent&&(e.$parent3=a.$parent.$parent.$model))),u.calcCtx=e,u.parentModel=a):(e.$root=m.$root.$model,r&&r.$parent&&(e.$parent=r.$parent.$model,r.$parent.$parent&&(e.$parent2=r.$parent.$parent.$model,r.$parent.$parent.$parent&&(e.$parent3=r.$parent.$parent.$parent.$model))),u.calcCtx=e,u.parentModel=r?r.$model:{})}if(!c.disabled){if(u.validateCalculations)if(u.calcFunction){let t=u.parentModel;Kt(e.calc)&&(t=ei({options:{},parent:u.parentModel,calcCtx:u.calcCtx})),u.calcValue=u.calcFunction.call(t||u.parentModel,u.calcCtx)}else u.aggregateFunction&&(u.calcValue=u.aggregateFunction.call(u.parentModel,u.calcCtx));if(\"number\"===e.type||\"money\"===e.type){if(o=!0,c.fieldRequired&&null==t&&d(\"required\"))return h;if(void 0!==t)if(\"number\"!=typeof t){if(d(\"type\",e.type,typeof t))return h}else l=!0}else if(\"int\"===e.type||\"integer\"===e.type){if(o=!0,c.fieldRequired&&null==t&&d(\"required\"))return h;if(void 0!==t)if(\"number\"!=typeof t){if(d(\"type\",e.type,typeof t))return h}else if(t%1!=0){if(d(\"type\",e.type,\"float\"))return h}else l=!0}if(o){if(l){if(u.validateCalculations&&t!==u.calcValue&&d(\"calc\",u.calcValue))return h;for(const e of p){const n=e(t,c);if(n&&d(n))return h}}}else if(\"string\"===e.type){if(c.fieldRequired&&(null==t||\"\"===t)&&d(\"required\"))return h;if(void 0!==t)if(\"string\"!=typeof t){if(d(\"type\",e.type))return h}else{if(u.validateCalculations&&t!==u.calcValue&&d(\"calc\",u.calcValue))return h;for(const e of p){const n=e(t,c);if(n&&d(n))return h}}}else if(\"boolean\"===e.type){if(c.fieldRequired&&null==t&&d(\"required\"))return h;if(void 0!==t)if(void 0!==t&&\"boolean\"!=typeof t){if(d(\"type\",e.type,typeof t))return h}else{if(u.validateCalculations&&t!==u.calcValue&&d(\"calc\",u.calcValue))return h;for(const e of p){const n=e(t,c);if(n&&d(n))return h}}}else if(\"array\"===e.type){if(c.fieldRequired&&null==t&&d(\"required\"))return h;if(void 0!==t)if(null==t||Array.isArray(t)){if(u.validateCalculations&&JSON.stringify(t)!==JSON.stringify(u.calcValue)&&d(\"calc\",u.calcValue))return h;for(const e of p){const n=e(t,c);if(n&&d(n))return h}const e=c.length;if(void 0!==e&&null!==t&&t.length!==e&&d(\"length\",e))return h}else if(d(\"type\",e.type,typeof t))return h}else if(\"object\"===e.type){if(c.fieldRequired&&null==t&&d(\"required\"))return h;if(void 0!==t)if(null!==t&&\"object\"!=typeof t){if(d(\"type\",e.type,typeof t))return h}else{if(u.validateCalculations&&JSON.stringify(t)!==JSON.stringify(u.calcValue)&&d(\"calc\",u.calcValue))return h;for(const e of p){const n=e(t,c);if(n&&d(n))return h}}}}return h}function ui(e,t,n,i,r,s,a){const o={$key:s,$model:t,$parent:r,$parent2:r?r.$parent:{},$parent3:r&&r.$parent?r.$parent.$parent:{}};if(null===r?o.$root=o:(o.$root=r.$root,i.$rootProxy||(i.$rootProxy=a=function(e,t,n){return void 0===e.$parent&&(e=Array.isArray(e)?$t(e):$t([e])),ai(e,t,{external:n||{},schemaMethods:ut})}(i.$rootSchema,o.$root.$model,i.external))),a=a||i.$rootProxy,\"object\"===e.type){ci(e,t,n,i,r,s,a);const l=e.required||[];if(e.properties&&t){const r=a?a[s]:null;for(const s in e.properties){const a=e.properties[s],c=t[s];l.indexOf(s)>-1&&void 0===a.fieldRequired&&(a.fieldRequired=!0),ui(a,c,\"\"===n?s:n+\".\"+s,i,o,s,r)}}}else if(\"array\"===e.type){ci(e,t,n,i,r,s,a);const l=a?a[s]:null,c=e.items;if(c&&t){const e={$key:0,$model:null,$parent:o,$parent2:o.$parent,$parent3:o.$parent2,$root:o.$root};for(let r=0;r-1?this._prevArray[this._prevIndex]:void 0});return this._cache.value=e,e}}$clearCache(){return!!this._cache.value&&(this._cache.value.$destroy(),this._cache.value=void 0,!0)}$reset(){this._cache.value&&this._cache.value.$reset()}$dirtyList(e){return this._cache.value&&this._cache.value.$dirtyList(e),e}$destroy(){this.$clearCache()}$setKey(e){this.$key=e,this._cache.value&&this._cache.value.$changeKey(e)}beforePathChange(){this._cache.value&&this._cache.value.beforePathChange()}afterPathChange(){this._cache.value&&this._cache.value.afterPathChange()}get $model(){return this._parent[this.$key]}$removeRow(){this._dest.$removeRow(this.$key)}$remove(){this._dest.$removeRow(this.$key)}$moveUp(){this._dest.$moveUp(this.$key)}$moveDown(){this._dest.$moveDown(this.$key)}$clearRow(){this._dest.$clearRow(this.$key)}$clear(){this._dest.$clearRow(this.$key)}get $guid(){if(this._guidField)return this._parent[this.$key][this._guidField]}get $diffStatus(){return-100==this._prevIndex?\"del\":!this._prevArray||null!=this._prevIndex&&this._prevIndex>-1?\"\":\"new\"}}class mi{constructor(e){this.el=e,this.eventList={},this.watchList=[],this.hasFocus=!1}event(e,t){const n=this.eventList[e];void 0!==n&&(this.el.removeEventListener(e,n),delete this.eventList[e]),t&&(this.el.addEventListener(e,t),this.eventList[e]=t)}watch(e,t,n){const i=r(e,t,n?{immediate:!0}:void 0);return this.watchList.push(i),i}unbind(){for(const e in this.eventList)this.el.removeEventListener(e,this.eventList[e]);this.eventList={};for(const e of this.watchList)e();this.watchList=[]}}function $i(e,t,n,i=sn,r=\"\"){if(!(e.computed||e.disabled&&(!0===e.disabled||i&&i._disabledFields&&i._disabledFields.has(r)))){if(\"object\"===e.type){if(\"object\"!=typeof t)return;if(null===t)return;const s={};let a=!1;const o=e.properties;if(o){const e=\"\"===r?r:r+\".\";for(const r in o){const l=t[r],c=o[r];if(void 0!==l){const t=$i(c,l,n,i,e+r);void 0!==t&&(s[r]=t,a=!0)}}}return a?s:void 0}if(\"array\"!==e.type){if(!Array.isArray(t)&&\"object\"!=typeof t&&null!==t&&Nt(e,t)){switch(e.type){case\"boolean\":if(!1===t)return;break;case\"string\":if(\"\"===t)return}return t}}else if(Array.isArray(t)){const s=[],a=e.items;for(let e=0;ee)))[r=0]&&r++;const o=i[r];if(o){if(\"object\"===e.type){const l=e.properties[o];if(void 0!==l){if(\"object\"===l.type||\"array\"===l.type){let e=t[o];return void 0===e&&(e=pn(l,!0,void 0,s,a+\".\"+o),t[o]=e),gi(l,e,n,i,r+1,s,a+\".\"+o)}return $n(l,t,o,n)}return!1}if(\"array\"===e.type){const l=e.items;if(void 0!==l){const e=parseInt(o,10);if(void 0===t[e])for(;t.lengtha;)t.splice(t.length-1,1);return!0}function vi(e,t,n,i=sn,r=\"\"){const s=e.properties;if(!s)return!1;if(void 0===(n=mn(e,n)))return!1;const a=r?r+\".\":r;for(const e in s){const r=s[e];let o=n&&n[e];const l=!(!r.calc||r.calc.when);switch(r.type){case\"object\":{let n=t[e];if(null==n&&($n(r,t,e,pn(r,!0,void 0,i,a+e)||{}),n=t[e],!o))continue;if(!o){if(l)break;o=pn(r,!0,void 0,i,a+e)}vi(r,n,o,i,a+e)}break;case\"array\":{let n=t[e];if(null==n&&(t[e]=n=pn(r,!0,void 0,i,a+e),!o))continue;if(!o){if(l)break;o=pn(r,!0,void 0,i,a+e)}yi(r,n,o,i,a+e)}break;default:if(void 0===o){if(l&&void 0!==t[e])break;t[e]=pn(r,!0,void 0,i,a+e)}else $n(r,t,e,o)}}return!0}class bi{get $key(){return this.$parent&&this.$parent.$setLength&&this.$parent.$model,this._internal.key.value}set $key(e){this.$changeKey(e)}get $model(){return this._internal.parent[this._internal.key.value]}set $model(e){this._internal.parent[this._internal.key.value]=e}get $value(){return this._internal.debounceValue&&void 0!==this._internal.debounceValue.value?this._internal.debounceValue.value:this.getValue()}get $prevModel(){return this._internal.prevModel}get $prevValue(){if(void 0!==this._internal.prevModel)return this.getValue(this._internal.prevModel)}get $diffStatus(){if(this._options.prevModel){if(void 0===this._internal.prevModel)return\"new\";if(this._internal.prevModel!==this._internal.parent[this._internal.key.value])return\"changed\"}return\"\"}set $value(e){this._internal.debounce?ti(this._internal,e,(()=>{this.setValue(e)})):this.setValue(e)}get $form(){return this._internal.options.form}get $external(){return this._internal.options.external}set $external(e){s(e)?this._internal.options.external=e:this._internal.options.external=a(e)}get $data(){if(null===this._internal.vmUserData){const e=this._internal.schema.data?Object.assign({},this._internal.schema.data):{};this._internal.vmUserData=o(e)}return this._internal.vmUserData}get $error(){return this._options._readedErrorFields&&this._options._readedErrorFields.add(this),!this.$disabled&&this.$dirty?this.$validate():null}get $warnings(){return!this.$disabled&&this.$dirty?this.$check():[]}get $dirty(){return this.$getUserData(\"$dirty\",this._options.startDirty)}set $dirty(e){var t;if(null===(t=this._options._anyEvent)||void 0===t?void 0:t.dirty){const t=this.$dirty;e!=t&&(this.$setUserData(\"$dirty\",e),ii({target:this,type:\"dirty\",value:e,prevValue:t}))}else this.$setUserData(\"$dirty\",e);e&&(this._options._userInput=!0)}get $path(){if(this.$parent){if(\"array\"===this.$parent.$schema.type)return this.$parent.$path+\"[\"+this.$key+\"]\";const e=this.$parent.$path;return e?e+\".\"+this.$key:this.$key.toString()}return\"\"}get $langPath(){if(this.$parent){const e=this.$parent.$langPath;return\"array\"===this.$parent.$schema.type?e:e?e+\".\"+this.$key:this.$key.toString()}return this._options.langKeyPrefix||\"\"}get $hasFocus(){return this.$getUserData(\"$focused\",!1)}set $hasFocus(e){var t,n;if(e){if(null===(t=this._options._anyEvent)||void 0===t?void 0:t.focus){this.$hasFocus||(this.$setUserData(\"$focused\",!0),ii({type:\"focus\",target:this,value:!0,prevValue:!1}))}else this.$setUserData(\"$focused\",!0);this._internal.options.resetOnFocus&&this.$reset()}else{if(this._internal.debounce&&(this._internal.debounceValue&&void 0!==this._internal.debounceValue.value&&this.setValue(this._internal.debounceValue.value),clearTimeout(this._internal.debounceTimer)),null===(n=this._options._anyEvent)||void 0===n?void 0:n.blur){this.$hasFocus&&(this.$setUserData(\"$focused\",!1),ii({type:\"blur\",target:this,value:!0,prevValue:!1}))}else this.$setUserData(\"$focused\",!1);this.$disabled||this.$dirty||!this._options.dirtyOnBlur||(this.$dirty=!0)}}get $title(){let e=this.$schema.title;return this._options._i18n&&(e||void 0===this._options.langKeyPrefix||(e=this.$langPath),e)?this._options._i18n.value.t(e):e||\"\"}get $shortTitle(){return void 0!==this.$schema.shortTitle?this._options._i18n?this._options._i18n.value.t(this.$schema.shortTitle):this.$schema.shortTitle:this.$title}get $description(){return this.$schema.description?this._options._i18n?this._options._i18n.value.t(this.$schema.description):this.$schema.description:\"\"}get $enum(){return this.$schema.enum||[]}get $disabled(){return qn(this)}get $enabled(){return!qn(this)}get $readOnly(){if(this.$parent&&this.$parent.$readOnly)return!0;let e=this.$getUserData(\"readOnly\",null);return null===e&&(e=this.$schema.readOnly),!!e}set $readOnly(e){this.$setUserData(\"readOnly\",!!e||null)}get $csv(){return this._internal.schema.csv}get $isArrayItem(){return this.$parent&&this.$parent.$setLength&&\"number\"==typeof this._internal.key.value}get $arrayIndex(){return this.$isArrayItem?this._internal.key.value:this.$parent?this.$parent.$arrayIndex:-1}constructor(n,i){var s,a,o;this.$validateResult=null,this.$checkResult=[],this.$parent=n.dest;const u=this._options=n.options;n.key||(\"string\"==typeof n.propName?n.key={value:n.propName}:n.key=l(n.propName)),n.vmUserData=null,n.mparent=null,n.watchStops=[],this._internal=n;const h=n.schema,d=n.dest,p=n.key.value,f=n.parent;(\"array\"==h.type||d&&d._internal.funcCache)&&(n.funcCache=!0);const m=this;this.$root=d?d.$root:this;const $=this.$schema={type:h.type};if(void 0!==h.default&&(Kt(h.default)?Hn(this,\"default\",n):$.default=h.default),void 0===f[p]&&(Kt(h.default)?f[p]=$.default:f[p]=pn(h,!0,void 0,this._internal.options,this.$path)),n.mparent=f[p],Yn(this,n,\"string\",[\"title\",\"shortTitle\",\"description\"]),i&&i(this._internal),h.$on&&!u.disableCalculations)for(const e in h.$on){let t=\"event\",i=h.$on[e];if(Kt(i))if(\"beforeWrap\"===e){const e=i;n.calcCtx||Qn(this,n);const t=ei({options:n.options,parent:d?f:n.mparent,calcCtx:n.calcCtx}),r=e.call(t,{target:this,type:\"beforeWrap\",value:null,prevValue:null},n.calcCtx);void 0!==r&&this.$setData(r,void 0,!0)}else{const t=i;n.calcCtx||Qn(this,n),n.thisModel||(n.thisModel=ei(n)),this.$on(e,t)}else{i.body&&(i.args&&(t=i.args.split(\",\")[0]),i=i.body);let r=\"\";if(Array.isArray(i)?(i=i.join(\"\\r\\n\"),r=On(i)+\"\\r\\n\"):r=On(i),\"beforeWrap\"===e){const e=new Function(t+\",{\"+zn+\"}\",r);n.calcCtx||Qn(this,n);const i=e.call(d?f:n.mparent,{target:this,type:\"beforeWrap\",value:null,prevValue:null},n.calcCtx);null!=i&&this.$setData(i,void 0,!0)}else{const n=new Function(t+\",{\"+zn+\"}\",r);this.$on(e,n)}}}if(h.format&&($.format=h.format),void 0!==h.enum)if(m.$isArrayItem){if(!Array.isArray(h.enum)||\"string\"==typeof h.enum[0]&&\"string\"!=h.type)Hn(this,\"enum\",n,(e=>{if(e){const t=m.$model;void 0!==t&&-1===e.indexOf(t)&&c((()=>{m.$removeRow()}))}}));else{this.$schema.enum=h.enum;const e=m.$model;void 0!==e&&-1===(null===(s=this.$schema.enum)||void 0===s?void 0:s.indexOf(e))&&c((()=>{m.$removeRow()}))}if(\"object\"!==h.type&&\"array\"!==h.type){const e=r((()=>this.$model),(e=>{var t;void 0!==e&&-1===(null===(t=this.$schema.enum)||void 0===t?void 0:t.indexOf(e))&&m.$removeRow()}));this._internal.watchStops.push(e)}}else!Array.isArray(h.enum)||\"string\"==typeof h.enum[0]&&\"string\"!=h.type?Hn(this,\"enum\",n):this.$schema.enum=h.enum;if(h.debounce&&(this._internal.debounce=h.debounce,this._internal.debounceValue=l()),void 0===h.required||\"object\"===h.type||\"string\"!=typeof h.required&&\"boolean\"!=typeof h.required||(h.fieldRequired=h.required),Yn(this,n,\"boolean\",[\"fieldRequired\"]),u.readOnly?$.readOnly=!0:Yn(this,n,\"boolean\",[\"readOnly\"]),void 0!==n.schema.disabled){let e=!1;const t=t=>{if(t){let t;n.options._disabledFields||(n.options._disabledFields=new Set),n.options._disabledFields.add(this.$path),e=this.$data.$dirty,e&&(this.$dirty=!1),t=\"array\"===h.type?h.default?Kt(h.default)?$.default:\"number\"==typeof h.default?[]:Array.from($.default):[]:Kt(h.default)?$.default:pn(h,!0,void 0,this._internal.options,this.$path),void 0===t?f[p]=void 0:this.$setData(t,void 0,!0)}else{n.options._disabledFields&&n.options._disabledFields.delete(this.$path),e&&(this.$dirty=e);const t=f[p];void 0===f[p]?(Kt(h.default)?f[p]=$.default:f[p]=pn(h,!0,void 0,this._internal.options,this.$path),this._internal.mparent=f[p]):\"array\"===h.type&&(void 0!==$.length?this.$setLength($.length):\"number\"!=typeof h.default||t&&0!==t.length||this.$setLength(h.default))}};\"boolean\"!=typeof n.schema.disabled?u.disableCalculations||(Hn(this,\"disabled\",n,(e=>{t(e)})),$.disabled&&t(!0)):(this.$schema.disabled=n.schema.disabled,n.schema.disabled&&t(!0))}if(!n.options.disableValidations&&h.validFunc){let e;n.calcCtx||Qn(this,n),Kt(h.validFunc)?(e=h.validFunc,n.thisModel||(n.thisModel=ei(n))):e=Bn(0,h.validFunc,!0,!1);let i=0;const r=l();let s=!0,a=!0;const o=t((()=>{const t=++i;try{n.calcCtx&&(n.calcCtx.$value=this.$model);const l=e.call(n.thisModel||f,n.calcCtx);if(a&&(s=!(\"object\"==typeof(o=l)&&\"function\"==typeof o.then),a=!1),s)return r.value=!0===l||void 0===l?null:!1===l?\"validFunc\":l;Promise.resolve(l).then((e=>{if(t===i)return r.value=!0===e||void 0===e?null:!1===e?\"validFunc\":e}))}catch(e){}var o}));n.watchStops.push(o),Object.defineProperty($,\"validFunc\",{enumerable:!0,get:()=>r.value})}if(h.warnings&&(this.$schema.warnings={},Jn(this,n,\"boolean\",[\"fieldRequired\"]),h.warnings.format&&(this.$schema.warnings.format=h.warnings.format),void 0!==h.warnings.enum&&(Array.isArray(h.warnings.enum)?this.$schema.warnings.enum=h.warnings.enum:Xn(this,\"enum\",n)),!u.disableValidations&&h.warnings.validFunc)){let t;n.calcCtx||Qn(this,n),Kt(h.warnings.validFunc)?(t=h.warnings.validFunc,n.thisModel||(n.thisModel=ei(n))):t=Bn(0,h.warnings.validFunc,!0,!1);const i=e((()=>{n.calcCtx&&(n.calcCtx.$value=this.$model);const e=t.call(n.thisModel||f,n.calcCtx);return!0===e||void 0===e?null:!1===e?\"validFunc\":e}));Object.defineProperty($,\"warningValidFunc\",{enumerable:!0,get:()=>i.value})}if(!m._options.disableCalculations){if(h.calc){let e;n.calcCtx||Qn(this,n),Kt(h.calc)?(e=h.calc,n.thisModel||(n.thisModel=ei(n))):e=jn(h,n.funcCache,!1);let t,i,s=0;if(\"object\"===h.type||\"array\"===h.type){let e=\"return deepCopy(obj);\";if(\"object\"===h.type){const t=h.properties||{};e=Object.keys(t).map((e=>\"array\"===t[e].type||\"object\"===t[e].type?`obj.${e}===undefined ? undefined : deepCopy(obj.${e})`:`obj.${e}`)).join(\",\")}else\"object\"!==(null===(a=h.items)||void 0===a?void 0:a.type)&&\"array\"!==(null===(o=h.items)||void 0===o?void 0:o.type)&&(i=function(e){if(e)for(let t=0;t{if(s++,u._forceRecalc&&u._forceRecalc.value,m.$disabled)return t=void 0,s;try{t=e.call(n.thisModel||n.parent,n.calcCtx),!t||\"object\"!==h.type&&\"array\"!==h.type||i(t,be)}catch(e){t=void 0}return s}),(()=>{void 0!==t&&((m._options.startDirtyOnCalc||m._options._userInput)&&(!m._options.dirtyOnBlur&&!m._options.dirtyOnInput||m.$dirty||(m.$dirty=!0)),this._internal.debounce?ti(this._internal,t,(()=>{m.$setData(t,void 0,!0)})):m.$setData(t,void 0,!0))}),{immediate:!0});n.watchStops.push(l)}if(h.summary&&(h.aggregate={func:\"sum\",array:h.summary.array,property:h.summary.property,when:h.summary.when,if:h.summary.if,delay:h.summary.delay},delete h.summary),h.aggregate){n.calcCtx||Qn(this,n);const e=Pn(h,n.funcCache,!1);if(e){const t=()=>{if(u._forceRecalc&&u._forceRecalc.value,!m.$disabled)try{return e.call(f,n.calcCtx)}catch(e){return}},i=e=>{void 0!==e&&((m._options.startDirtyOnCalc||m._options._userInput)&&(m.$dirty||!m._options.dirtyOnBlur&&!m._options.dirtyOnInput||(m.$dirty=!0)),m.$setData(e,void 0,!0))};if(h.aggregate.delay)setTimeout((()=>{const e=r(t,i,{immediate:!0});n.watchStops.push(e)}),h.aggregate.delay);else{const e=r(t,i,{immediate:!0});n.watchStops.push(e)}}}}}$focus(e){e&&e.target&&(this._internal.targetElement=e.target),this.$hasFocus=!0}$blur(e){e&&e.target&&(this._internal.targetElement=e.target),this.$hasFocus=!1}$bind(e,t){var n;if(\"string\"==typeof e){const t=document.querySelector(e);if(!t)return null;e=t}if(\"INPUT\"===e.tagName||\"TEXTAREA\"===e.tagName){const t=new mi(e);let i=!1;switch(this.$schema.type){case\"number\":case\"integer\":case\"money\":i=!0}const r=this;if(t.event(\"focus\",(e=>{t.hasFocus=!0,r.$focus(e)})),t.event(\"blur\",(n=>{t.hasFocus=!1,i&&(e.value=this.$value),r.$blur(n)})),\"INPUT\"!==e.tagName||\"checkbox\"!=e.type&&\"radio\"!=e.type)t.event(\"input\",(e=>{const t=e.target.value;this.$value=t})),t.watch((()=>this.$value),(n=>{i&&t.hasFocus||(e.value=n)}),!0);else{let s=e.value;if(\"boolean\"==this.$schema.type){s=\"false\"!==(s||\"true\");const n=!s;t.event(\"change\",(()=>{r.$model=e.checked?s:n})),t.watch((()=>this.$model),(t=>{e.checked=t==s}),!0)}else if(\"array\"==r.$schema.type){const i=(null===(n=this._internal.schema.items)||void 0===n?void 0:n.type)||\"string\";\"integer\"!=i&&\"money\"!=i&&\"number\"!=i||(s=parseFloat(s)),t.event(\"change\",(()=>{let t=[];if(!!e.checked)r.$model&&(t=[...r.$model]),-1==t.indexOf(s)&&(t.push(s),r.$value=t);else{if(!r.$model)return;t=[...r.$model];const e=t.indexOf(s);e>-1&&(t.splice(e,1),r.$value=t)}})),t.watch((()=>this.$model.map((e=>e))),(t=>{e.checked=t&&t.indexOf(s)>-1}),!0)}else i&&(s=parseFloat(s)),t.event(\"change\",(()=>{r.$model=e.checked?s:null})),t.watch((()=>this.$model),(t=>{e.checked=t===s}),!0)}return this._internal.mountedItems||(this._internal.mountedItems=[]),this._internal.mountedItems.push(t),t}{const n=t&&t.error?()=>this.$error:()=>this.$value;new mi(e).watch(n,(t=>{e.textContent=t}),!0)}return null}$unbind(e){var t;if(!e){if(this._internal.mountedItems){for(let e=this._internal.mountedItems.length-1;e>=0;e--)this.$unbind(this._internal.mountedItems[e]);return!0}return!1}let n;if(e instanceof mi?n=e:this._internal.mountedItems&&(n=this._internal.mountedItems.filter((t=>t.el==e))[0]),void 0!==n&&(n.unbind(),this._internal.mountedItems)){const e=null===(t=this._internal.mountedItems)||void 0===t?void 0:t.indexOf(n);return e>-1&&this._internal.mountedItems.splice(e,1),!0}return!1}$getUserData(e,t){const n=this.$data[e];return void 0===n?(void 0===t?this.$setUserData(e,null):this.$setUserData(e,t),this._internal.vmUserData[e]):n}$setUserData(e,t){this.$data[e]=t}$forceCalc(){return this._options.forceCalcEnabled&&this._options._forceRecalc?(this._options._forceRecalc.value++,c().then((()=>!0))):Promise.resolve(!1)}$destroy(){this._internal.debounceTimer&&(this._internal.debounceValue&&null!=this._internal.debounceValue.value&&this.$setData(this._internal.debounceValue.value,null,!0),clearTimeout(this._internal.debounceTimer));const e=this._internal.definitions;if(e)for(const t in e)e[t].$destroy();if(this._options._disabledFields&&this._options._disabledFields.delete(this.$path),this._internal.watchStops){for(let e=0;e-1&&(n=e.substring(i+1),e=e.substring(0,i)),\"$\"===e)return this.$root.$child(n,t);const r=e.indexOf(\"[\");switch(this._internal.schema.type){case\"object\":if(r>-1){const i=this[e.substring(0,r)];if(i)return i.$child(e.substring(r)+\".\"+n,t)}else{const i=this[e];if(i)return i.$child(n,t)}break;case\"array\":if(r>-1){const i=e.substring(r+1,e.indexOf(\"]\",r));let s=+i;if(isNaN(s)&&(s=this.$model.findIndex((e=>e.guid==i)),-1==s))return;if(s>=this.$items.length&&t)for(;this.$items.length<=s;)this.$addRow();const a=this.$items[s];if(a)return a.$item.$child(n,t)}}}get $fields(){return{}}beforePathChange(){this.$schema.disabled&&this._options._disabledFields&&this._options._disabledFields.delete(this.$path)}afterPathChange(){this.$schema.disabled&&(this._options._disabledFields||(this._options._disabledFields=new Set),this._options._disabledFields.add(this.$path))}$changeKey(e){this.beforePathChange(),this._internal.key.value=e,this._internal.mparent=this._internal.parent[e],this.afterPathChange()}get $parent2(){return this.$parent?this.$parent.$parent:null}get $parent3(){return this.$parent2?this.$parent2.$parent:null}$removeRow(e){return!!this.$isArrayItem&&(void 0!==e?this.$parent.$removeRow(e):this.$parent.$removeRow(this.$key))}$moveUp(e){return!!this.$isArrayItem&&(void 0!==e?this.$parent.$moveUp(e):this.$parent.$moveUp(this.$key))}$moveDown(e){return!!this.$isArrayItem&&(void 0!==e?this.$parent.$moveDown(e):this.$parent.$moveDown(this.$key))}$clearRow(e){return!!this.$isArrayItem&&(void 0!==e?this.$parent.$clearRow(e):this.$parent.$clearRow(this.$key))}$fixDateFormat(){return 0}getValue(e){return null!=e?e:this.$model}setValue(e){var t;if(this.$schema.disabled||(!this.$dirty&&this._internal.options.dirtyOnInput&&(this.$dirty=!0),this._options._userInput=!0),null===(t=this._options._anyEvent)||void 0===t?void 0:t.change){let t=this.$model;(Array.isArray(t)||Tt(t))&&(t=be(t)),this.$model=e,ii({type:\"change\",target:this,value:e,prevValue:t})}else this.$model=e}get $definitions(){if(this._internal.definitions)return this._internal.definitions;let e=null;if(this._internal.schema.definitions){e={};const t=this;for(const n in this._internal.schema.definitions){const i=this._internal.schema.definitions[n];let r=null;Object.defineProperty(e,n,{get:()=>r||(r=new pi[i.type||\"string\"]({dest:t,parent:{},propName:n,schema:i,options:t._internal.options}))})}}return this._internal.definitions=e}$startRegisterErrorProps(){return this._options._readedErrorFields=new Set,!0}$getErrorProps(){var e;return null!==(e=this._options._readedErrorFields)&&void 0!==e?e:new Set}$stopRegisterErrorProps(){const e=this.$getErrorProps();return this._options._readedErrorFields=void 0,e}$traverseFirst(e,t){if((t||!this.$schema.disabled)&&e(this))return this}$changeLanguage(e,t){if(this._options._lang){if(this._options._lang.value=de(e),!t&&this._options._i18n){const t=this._options._i18n.value;if(t&&t.language!==e){const n=t.instance;n.changeLanguage(e),this._options._i18n.value={t:n.t,language:e,instance:n}}}return!0}return!1}$setExternal(e){this._options.external&&Tt(this._options.external)&&s(this._options.external)&&Tt(e)?Object.assign(this._options.external,e):this._options.external=e}get $anyError(){let e=!1;return this.$traverseFirst((t=>{if(!t.$schema.disabled&&t.$dirty&&t.$validate(void 0,!0))return e=!0,!0})),e}get $anyWarning(){const e=[];let t=!1;return this.$traverseFirst((n=>{if(!n.$schema.disabled&&n.$dirty&&n.$check(void 0,!0,e).length)return t=!0,!0})),t}$on(e,t){return function(e,t,n){const i=e._internal;return i.on||(i.on={}),i.on[t]||(i.on[t]=new Set),i.on[t].add(n),e._options._anyEvent[t]=!0,!0}(this,e,t)}$off(e,t){return function(e,t,n){const i=e._internal;return!!i.on&&(t?!!i.on[t]&&(n?i.on[t].delete(n):(i.on[t].clear(),delete i.on[t],!0)):(i.on=void 0,!0))}(this,e,t)}toString(){return this.$parent?\"$.\"+this.$path:\"$\"}}function _i(e,t,n,i){const r=new fi(e,t.parent[t.key.value],i,n,t.guidField,t.options);return t.ntable.push(r),r}function wi(e,t=0){for(let n=t;nt.ntable.length)for(;t.ntable.lengthn[t.guidField]===e)))}else s-1&&(r[\"\"+n]=!0,r.length++)}t.ntable[s]=new fi(e,t.mparent,s,t.schitems,t.guidField,t.options,i,n)}if(i&&r.length{e.schitems=u.items,e.cachedKey=\"\",e.cachedItems=[],c=e.mparent.length,e.ntable=o({table:[]}).table}));const f=this._internal;if(f.guidField=\"\",\"object\"==(null===(t=u.items)||void 0===t?void 0:t.type))if(null===(i=null===(n=u.items)||void 0===n?void 0:n.properties)||void 0===i?void 0:i.guid)f.guidField=\"guid\";else for(const e in null===(s=u.items)||void 0===s?void 0:s.properties)if(\"string\"===(null===(a=u.items)||void 0===a?void 0:a.properties[e].type)&&\"guid\"===(null===(l=u.items)||void 0===l?void 0:l.properties[e].format)){f.guidField=e;break}let m;ki(this,f),Yn(this,f,\"number\",[\"maxItems\",\"minItems\"]),this.$schema.warnings&&Jn(this,f,\"number\",[\"maxItems\",\"minItems\"]),void 0!==u.length&&(\"number\"!=typeof u.length?Hn(this,\"length\",f,(e=>this.$setLength(e))):m=u.length);const $=this,g=r((()=>p[d]?p[d].length:0),(()=>{u.debug,$.$disabled||($.$dirty=!0),$._internal.prevModel?ki(this,this._internal):xi(this,this._internal)}));if(f.watchStops.push(g),c&&!$._options.disableCalculations&&!$._options.wrapAll){const t=Zn(f.schitems),n=f.schitems.properties;if(t&&n){const t={$root:this.$root.$model,$parent:f.mparent,$parent2:{},$parent3:{},$external:h.external,$methods:h.schemaMethods,$obj:{}};e.dest&&(t.$parent2=e.dest.$model,e.dest.$parent&&(t.$parent3=e.dest.$parent.$model));for(const e of Object.keys(n)){const i=n[e];if(i.calc){let n,r,s;Kt(i.calc)?(r={options:f.options,parent:{},calcCtx:t},n=ei(r),s=i.calc):s=jn(i,!0,!1);const a={$parent:$,$key:0};t.$obj={$key:e,$parent:a,$parent2:$,$parent3:$.$parent,$arrayIndex:0};const o=$.$path;try{for(;a.$key=0;e--)-1==r.indexOf(t[e])&&t.splice(e,1);e=t}}super.setValue(e)}$validate(e,t){return this.$disabled?null:(void 0===e&&(e=this.$model),t||(this.$dirty=!0),null==e?this.$schema.fieldRequired?Nn(this._internal,\"required\",e,this.$schema):null:super.$validate(e))}$validateAll(e,t){void 0===t&&(t=[]),null!==this.$validate(void 0,e)&&t.push(this);for(let n=0;n=0){const t=this.$model;if(t){if(t.length!==e){for(;t.length>e&&this.$removeRow(t.length-1););for(;t.length=this._internal.ntable.length)return!1;if(this._internal.prevModel&&\"del\"==this._internal.ntable[e].$diffStatus)return!1;this._internal.cachedKey=\"\",(null===(t=this._options._anyEvent)||void 0===t?void 0:t.removeRow)&&ii({type:\"removeRow\",target:this,value:e});const i=this._internal.ntable.splice(e,1),r=this._internal.ntable.length;for(let t=e;te.$path.substring(a.$path.length+1))):[];this._internal.ntable[e].$clearCache();const l=this._internal.ntable[t]._cache.value,c=l?l.$dirtyList().map((e=>e.$path.substring(l.$path.length+1))):[];if(this._internal.ntable[t].$clearCache(),(null===(n=this._options._anyEvent)||void 0===n?void 0:n.exchangeRow)&&ii({type:\"exchangeRow\",target:this,value:t,prevValue:e}),i[e]=s,i[t]=r,a){this._internal.ntable[t].$item.$setDirtyChild(o)}if(l){this._internal.ntable[e].$item.$setDirtyChild(c)}if(this._internal.vmUserData&&void 0!==this._internal.vmUserData.$pageNumber){const e=Math.floor(t/this.$pageSize);e!=this.$pageNumber&&(this.$pageNumber=e)}}return!0}$moveUp(e){return!this.$disabled&&(void 0===e&&(e=this._internal.ntable.length-1),e>0&&this.$exchangeRow(e,e-1))}$moveDown(e){return!this.$disabled&&(void 0===e&&(e=0),!!(this.$model&&er[e]===t[e]?0:r[e]>t[e]?n:i)):this._internal.mparent.sort(((e,t)=>t===e?0:t>e?n:i));let r=this._internal.ntable.length;for(;r--;)this._internal.ntable[r].$clearCache()}$filter(e){return e?this._internal.ntable.filter(e):this._internal.ntable}$setDisinctValue(e){const t=this.$model;if(t&&t.indexOf(e)>-1)return!1;const n=[...t,e];return this.setValue(n),!0}get pageNumber(){return this.$pageNumber}get $pageNumber(){return this.$getUserData(\"$pageNumber\",0)}set pageNumber(e){this.$pageNumber=e}set $pageNumber(e){e<0?this.$setUserData(\"$pageNumber\",0):e>=this.$pageCount?this.$setUserData(\"$pageNumber\",this.$pageCount-1):this.$setUserData(\"$pageNumber\",e)}get pageSize(){return this.$pageSize}get $pageSize(){return this.$getUserData(\"$pageSize\",25)}set pageSize(e){this.$pageSize=e}set $pageSize(e){this.$setUserData(\"$pageSize\",e),this.pageNumber>=this.pageCount&&(this.pageNumber=this.pageCount-1)}get pageCount(){return this.$pageCount}get $pageCount(){return this.$schema.disabled||!this.$model?0:Math.ceil(this.$model.length/this.$pageSize)}get order(){return this.$order}get $order(){return this.$getUserData(\"$order\",\"\")}set order(e){this.$order=e}set $order(e){this.$setUserData(\"$order\",e)}$getItems(e,t,n){const i=this.$model;if(!i)return[];e=e||0;let r=t;void 0===r?r=i.length:(r+=e,r>=i.length&&(r=i.length));let s=[];const a=`${e}|${r}|${n}`;if(a===this._internal.cachedKey)return this._internal.cachedItems;if(n){const t=Array.from(this._internal.ntable);let a=n,o=-1;a.endsWith(\" desc\")&&(a=a.substring(0,n.length-5),o=1),a.startsWith(\"-\")&&(a=a.substring(1),o=1),t.sort(((e,t)=>i[t.$key][a]===i[e.$key][a]?0:i[t.$key][a]>i[e.$key][a]?o:-o)),s=t.slice(e,r).map((e=>e.$item))}else s=this._internal.ntable.slice(e,r).map((e=>e.$item));return this._internal.cachedItems=s,this._internal.cachedKey=a,s}$getPage(e,t,n){return null==e&&(e=this.$pageNumber),null==t&&(t=this.$pageSize),null==n&&(n=this.$order),this.$getItems(e*t,t,n)}$destroy(){wi(this._internal),super.$destroy()}$fieldTitle(e){return this.$tableField(e,(e=>e.$title))}$tableField(e,t){let n;if(this.$items.length)delete this._internal._cachedSubItems,n=\"object\"==this._internal.schema.items.type&&e?\"string\"==typeof e?this.$items[0].$item[e]:e(this.$items[0].$item):this.$items[0].$item;else if(this._internal.schema.items){let t=this._internal._cachedSubItems;if(!t){const e=this._internal.schema.items.type||\"object\";t=new pi[e]({dest:this,parent:[],propName:0,schema:this._internal.schema.items,options:Object.assign({},this._options,{disableCalculations:!0,wrapAll:!1,disableValidations:!0})}),this._internal._cachedSubItems=t}n=e?\"string\"==typeof e?t[e]:e(t):t}return t&&n?Kt(t)?t(n):n[t]:n}beforePathChange(){super.beforePathChange();for(let e=0;e-1&&(r.fieldRequired=!0);const o=r.type||(r.type=(r.properties?\"object\":r.items&&\"array\")||\"string\"),l=null===t.$parent;if(i.wrapAll&&(n.cacheProp[e]=new pi[o]({dest:t,parent:a,prevModel:n.prevModel?n.prevModel[e]:void 0,propName:e,schema:r,options:i})),i.wrapAll&&!l){const i=t[e]=n.cacheProp[e];t.$data.$dirty&&!i.$disabled&&(i.$dirty=!0)}else if(Object.defineProperty(t,e,{enumerable:!0,configurable:!0,get(){let s=n.cacheProp[e];if(null===(a=t.$model)){if(s&&(s.$destroy(),delete n.cacheProp[e],null===this.$parent)){const e=t.$visitedProps.indexOf(s);e>-1&&(t.$visitedProps=t.$visitedProps.splice(e,1))}return null}if(void 0===s&&(s=n.cacheProp[e]=new pi[o]({dest:t,parent:a,prevModel:n.prevModel?n.prevModel[e]:void 0,propName:e,schema:r,options:i}),t.$data.$dirty&&!s.$disabled&&(s.$dirty=!0)),l){-1==t.$visitedProps.indexOf(s)&&t.$visitedProps.push(s)}return s}}),a&&void 0===n.cacheProp[e]&&(\"array\"===o||void 0===a[e]||Zn(r))){const s=n.cacheProp[e]=new pi[o]({dest:t,parent:a,prevModel:n.prevModel?n.prevModel[e]:void 0,propName:e,schema:r,options:i});t.$dirty&&!s.$disabled&&(s.$dirty=!0)}}pi.object=class extends bi{constructor(e){super(e,(t=>{t.schemaprops=e.schema.properties,t.cacheProp={}})),this.$visitedProps=[];const t=this._internal;let n=t.mparent;if(t.schemaprops){if(void 0===n){const i=pn(e.schema,!0,void 0,this._internal.options,this.$path);e.parent[e.propName]=i,t.mparent=n=e.parent[e.propName]}!function(e,t,n){for(const i in t.schemaprops)Fi(i,e,t,n)}(this,t,t.options)}}$setData(e,t,n){var i,r;if(t)return fn(this._internal.schema,this.$model,e,t,0,n,this._options,this.$path);{let s;if(null===(i=this._options._anyEvent)||void 0===i?void 0:i.beforeChange){void 0===s&&(s=be(this.$model));const t={type:\"beforeChange\",target:this,value:e,prevValue:s};ii(t)&&(e=t.value)}return(null===(r=this._options._anyEvent)||void 0===r?void 0:r.change)?(void 0===s&&(s=be(this.$model)),!!fn(this._internal.schema,this.$model,e,t,0,n,this._options,this.$path)&&(ii({type:\"change\",target:this,value:e,prevValue:s}),!0)):fn(this._internal.schema,this.$model,e,t,0,n,this._options,this.$path)}}$setNewData(e,t){return gi(this._internal.schema,this.$model,e,t,0,this._options,this.$path)}get $diffStatus(){return void 0===this._internal.prevModel?\"new\":\"\"}$getInvalidValues(e=[]){if(this._internal.cacheProp)for(const t in this._internal.cacheProp){this._internal.cacheProp[t].$getInvalidValues(e)}return e}$setInvalidValues(e){for(let t=0;tt[n]});return e}$destroy(){!function(e,t,n,i){for(const n in t.schemaprops){const r=t.cacheProp[n];r&&(r.$destroy(),delete t.cacheProp[n],i&&delete e[n])}}(this,this._internal,this._options,!Object.isSealed(this)),super.$destroy()}$addProp(e,t){const n=this._internal.cacheProp[e];return n&&(n.$destroy(),delete this._internal.cacheProp[e],delete this[e]),this._internal.schemaprops[e]=t,Fi(e,this,this._internal,this._options),this[e]}beforePathChange(){super.beforePathChange();for(const e in this._internal.cacheProp){const t=this._internal.cacheProp[e];t&&t.beforePathChange()}}afterPathChange(){for(const e in this._internal.cacheProp){const t=this._internal.cacheProp[e];t&&t.afterPathChange()}super.afterPathChange()}};class Mi extends bi{constructor(e){super(e),Yn(this,this._internal,\"number\",[\"minimum\",\"maximum\",\"exclusiveMaximum\",\"exclusiveMinimum\",\"precision\"]),this.$schema.warnings&&Jn(this,this._internal,\"number\",[\"minimum\",\"maximum\",\"exclusiveMaximum\",\"exclusiveMinimum\"]),this._internal.typeok=!0}$validate(e,t){if(this.$disabled)return null;if(void 0===e&&(e=this.$model),t||(this.$dirty=!0),null===e){if(!this._internal.typeok){const t=Nn(this._internal,\"type\",e,this.$schema);return this.$validateResult={validation:\"type\",message:t,expected:this._internal.schema.type,stringValue:this.$stringValue},t}if(this.$schema.fieldRequired){const t=Nn(this._internal,\"required\",e,this.$schema);return this.$validateResult={validation:\"required\",message:t,expected:!0},t}return null}if(this.$schema.enum&&-1===this.$schema.enum.indexOf(e)){const t=Nn(this._internal,\"enum\",e,this.$schema);return this.$validateResult={validation:\"enum\",message:t,expected:this.$schema.enum},t}const n=+e;return super.$validate(n)}$check(e,t,n){if(this.$schema.warnings&&!this.$disabled){if(this.$checkResult=[],void 0===e&&(e=this.$model),t||(this.$dirty=!0),n=n||[],null===e){if(this.$schema.warnings.fieldRequired){const t=Kn(this._internal,\"required\",e,this.$schema);this.$checkResult.push({validation:\"required\",message:t,expected:!0}),n.push(t)}if(this.$schema.warnings.enum&&-1===this.$schema.warnings.enum.indexOf(e)){const t=Kn(this._internal,\"enum\",e,this.$schema);this.$checkResult.push({validation:\"enum\",message:t,expected:this.$schema.warnings.enum}),n.push(t)}return n}const i=+e;return super.$check(i,t,n)}return this.$checkResult=[]}get $stringValue(){return this.$getUserData(\"$stringValue\",null)}getValue(e){var t,n;void 0===e&&(e=this.$model);const i=null!==(n=null===(t=this._options._lang)||void 0===t?void 0:t.value)&&void 0!==n?n:pe.current,r=this.$getUserData(\"$stringValue\",null);if(this._options.lazyNumbers&&this.$hasFocus&&null!=this.lazyValue)return this.lazyValue;if(null===e)return null!==r?r:\"\";isNaN(+e)&&(e=0);let s=\"\";switch(this.$schema.type){case\"number\":s=void 0===this.$schema.precision?Se(e,8,i):Se(e,this.$schema.precision,i);break;case\"money\":s=void 0===this.$schema.precision?ze(e,!1,2,i):ze(e,!1,this.$schema.precision,i);break;case\"integer\":s=Se(e,0,i)}return s}setValue(e){var t,n,i,r,s,a,o,l;if(this.$disabled)return;const c=null!==(n=null===(t=this._options._lang)||void 0===t?void 0:t.value)&&void 0!==n?n:pe.current;this._internal.typeok=!0;let u=null;if(this._options.dirtyOnInput&&(this.$dirty=!0),this._options._userInput=!0,this._options.lazyNumbers&&this.$hasFocus&&(this.lazyValue=e),\"\"===e||null==e?u=null:(u=+e.replace(/\\s/g,\"\").replace(c.decimalSeparator,\".\"),u>Number.MAX_SAFE_INTEGER&&(u=Number.POSITIVE_INFINITY),u=10){e=(null!==(n=null===(t=this._options._lang)||void 0===t?void 0:t.value)&&void 0!==n?n:pe.current).shortDateFormatter(e)}break;case\"date-time\":if(e&&e.length>=10){const t=null!==(r=null===(i=this._options._lang)||void 0===i?void 0:i.value)&&void 0!==r?r:pe.current;if(this._options.utc){const t=-1==e.indexOf(\"Z\")?new Date(e+\"Z\"):new Date(e);e=me(t)}let n=t.shortDateFormatter(e);if(19===e.length){n+=\" \"+e.substr(11,8)}e=n}}return e||\"\"}setValue(e){var t,n,i,r,s,a;if(!this.$disabled){if(this._options._userInput=!0,null!==e&&(!0===e?e=\"true\":!1===e&&(e=\"\"),e))switch(this.$format){case\"uppercase\":e=e.toLocaleUpperCase();break;case\"lowercase\":e=e.toLocaleLowerCase();break;case\"capitalize\":e=Fe(e);break;case\"date\":if(e.length>=8){const i=(null!==(n=null===(t=this._options._lang)||void 0===t?void 0:t.value)&&void 0!==n?n:pe.current).shortDateReformatter(e);i&&(e=i)}break;case\"date-time\":if(e.length>=8){let t=(null!==(r=null===(i=this._options._lang)||void 0===i?void 0:i.value)&&void 0!==r?r:pe.current).shortDateReformatter(e);const n=e.indexOf(\" \");if(n>-1){const i=e.substring(n).trim();i&&(t+=\" \"+i)}if(t){if(this._options.utc){t=function(e){return e.getUTCFullYear()+\"-\"+fe(e.getUTCMonth()+1)+\"-\"+fe(e.getUTCDate())+\"T\"+fe(e.getUTCHours())+\":\"+fe(e.getUTCMinutes())+\":\"+fe(e.getUTCSeconds())+\"Z\"}(new Date(t))}e=t}}}if(null===(s=this._options._anyEvent)||void 0===s?void 0:s.beforeChange){const t={type:\"beforeChange\",target:this,value:e,prevValue:this.$model};ii(t)&&t.value!==e&&(e=t.value)}if(null===(a=this._options._anyEvent)||void 0===a?void 0:a.change){const t=this.$model;this.$model=e,e!=t&&ii({type:\"change\",target:this,value:e,prevValue:t})}else this.$model=e;!this.$dirty&&this._options.dirtyOnInput&&(this.$dirty=!0)}}};function Di(e,t=100,n=0){if(void 0===e)return!0;if(Array.isArray(e)){if((n+=e.length)>t)return!1;for(const i of e)if(!Di(i,t,n))return!1}else if(\"object\"==typeof e&&e){for(const i in e)if(!Di(e[i],t,n))return!1}else if(++n>t)return!1;return!0}function Si(e,t=null,n={}){return!(e=h(e)).type&&e.properties&&(e.type=\"object\"),zi(e,t,Object.assign(Object.assign({},n),{skipFix:!0}))}function Oi(e,t=null,n={}){return Si(kt(e,n.defaultsFromInstance),t,n)}function zi(e,t=null,i={}){var r,c;const u=i.onAfterSchema,$=i.onBeforeFixSchema,g=i.onBeforeWrap,y=i.vm;delete i.arrayItemGuidField,delete i.onAfterSchema,delete i.onBeforeFixSchema,delete i.onBeforeWrap,delete i.vm;let v=!0;const b=y?y._.appContext.app:null;let _;if(e=h(e),i.skipFix)_=d(e)?be(e):e;else{const n=Object.assign({},dt);void 0!==i.arrayItemGuidField?n.arrayItemGuidField=i.arrayItemGuidField:e.$options&&void 0!==e.$options.arrayItemGuidField&&(n.arrayItemGuidField=e.$options.arrayItemGuidField),n.model=t,$&&$.call(y,e,n),_=Array.isArray(e)?$t(e,n):void 0===e.$parent?$t([e],n):e}const w=function(e){const t={};return an(t,sn),t}();let x=null;if(_.$options&&(_.$options.$methods&&(x=Object.assign(x||{},_.$options.$methods)),an(w,_.$options)),_.$methods&&(x=Object.assign(x||{},_.$methods)),i.schemaMethods&&(x=Object.assign(x||{},i.schemaMethods)),an(w,i),w._disabledFields=void 0,w._forceRecalc=w.forceCalcEnabled?l(0):void 0,w._anyEvent=void 0,w._readedErrorFields=void 0,x){let e=!1;for(const t in x)if(Object.prototype.hasOwnProperty.call(x,t)){const n=x[t];if(n instanceof Function)x[t]=y?function(){return n.apply(y||this,arguments)}:n;else if(\"object\"==typeof n&&t.toLocaleLowerCase().endsWith(\"service\"))x[t]=n;else{let e=n,i=\"$0,$1,$2,$3,$4,$5,$6,$7,$8,$9\";const r=n.props||n.args,s=n.body||n.text;r&&(i=r||\"\"),s&&(e=s),Array.isArray(e)&&(e=e.join(\"\\n\")),x[t]=\"string\"==typeof e?new Function(i,e):n}e=!0}e&&(w.schemaMethods=Object.assign({},sn.schemaMethods,x),v=!1)}let k=w.lang;const F=p();let M,D=w.i18n;if(D||!D&&F&&F.appContext&&(D=null===(c=null===(r=F.appContext.config)||void 0===r?void 0:r.globalProperties)||void 0===c?void 0:c.$i18next),D){const e=D.t,t=D.language;v?(w.schemaMethods=Object.assign({},w.schemaMethods,{translate:e}),v=!1):w.schemaMethods.translate=e,M=t=>{if(w._i18n&&(w._i18n.value={t:e,language:t,instance:D}),!w.lang){if(S)return S.$changeLanguage(t,!0);if(w._lang)return w._lang.value=de(t),!0}return!1},D.on(\"languageChanged\",M),w._i18n=n({t:e,language:t,instance:D}),k||(k=t)}if(w._lang=n(k?de(k):w.schemaMethods.lang),v&&(w.schemaMethods=Object.assign({},w.schemaMethods),v=!1),w._lang&&Object.defineProperty(w.schemaMethods,\"lang\",{enumerable:!0,get(){var e;return null===(e=w._lang)||void 0===e?void 0:e.value}}),b&&(b.config.globalProperties.$methods=w.schemaMethods),y&&(y.$methods=w.schemaMethods),null==t)t=w.fixData?pn(_,!0,void 0,w):{};else if(i.gdprMode&&(t=Mn(_,t,i.gdprMode)),w.fixData&&!w.fixTypes&&vn(_,t,!0,w),w.fixTypes){const e={};fn(_,e,t,null,0,!0,w),t=e,w.fixData&&vn(_,t,!0,w)}else w.fixFormat&&(xn(_,t),fn(_,t,t,null,0,!0,w));void 0===w.wrapAll&&(w.wrapAll=Di(t,100)),s(t)||(t=o(t)),i.external&&(s(i.external)||(i.external=a(i.external))),g&&g.call(y,t,_,w),w._disabledFields=new Set,w._anyEvent={};const S=new pi.object({dest:null,parent:{model:t},prevModel:i.prevModel?i.prevModel:void 0,propName:\"model\",schema:_,options:w});u&&u.call(y,S),S._internal.onDestroy=()=>{M&&D&&D.off(\"languageChanged\",M)};try{F&&(F.appContext.app.config.globalProperties.$methods||(F.appContext.app.config.globalProperties.$methods=sn.schemaMethods),f((()=>{try{const e=p();e&&e.ctx&&!e.ctx.$schema&&(e.ctx.$schema=S)}catch(e){}})),m((()=>{try{const e=p();if(e&&e.ctx&&e.ctx.$schema){e.ctx.$schema.$destroy(),delete e.ctx.$schema,delete e.ctx.schema}}catch(e){}})))}catch(e){}return S}pi.boolean=class extends bi{constructor(e){super(e)}$validate(e,t){if(this.$disabled)return null;if(void 0===e&&(e=this.$model),t||(this.$dirty=!0),null===e){if(this.$schema.fieldRequired){const t=Nn(this._internal,\"required\",e,this.$schema);return this.$validateResult={validation:\"required\",message:t,expected:!0},t}if(this.$schema.enum&&-1===this.$schema.enum.indexOf(e)){const t=Nn(this._internal,\"enum\",e,this.$schema);return this.$validateResult={validation:\"enum\",message:t,expected:this.$schema.enum},t}return null}const n=!!e;if(this.$schema.fieldRequired&&!n){const t=Nn(this._internal,\"required\",e,this.$schema);return this.$validateResult={validation:\"required\",message:t,expected:!0},t}return super.$validate(n)}$check(e,t,n){if(this.$schema.warnings&&!this.$disabled){if(this.$checkResult=[],void 0===e&&(e=this.$model),t||(this.$dirty=!0),n=n||[],null===e){if(this.$schema.warnings.fieldRequired){const t=Kn(this._internal,\"required\",e,this.$schema);this.$checkResult.push({validation:\"required\",message:t,expected:!0}),n.push(t)}if(this.$schema.warnings.enum&&-1===this.$schema.warnings.enum.indexOf(e)){const t=Kn(this._internal,\"enum\",e,this.$schema);this.$checkResult.push({validation:\"enum\",message:t,expected:this.$schema.warnings.enum}),n.push(t)}return n}const i=!!e;if(this.$schema.fieldRequired&&!i){const t=Kn(this._internal,\"required\",e,this.$schema);this.$checkResult.push({validation:\"required\",message:t,expected:!0}),n.push(t)}return super.$check(i,t,n)}return this.$checkResult=[]}getValue(e){return void 0===e&&(e=this.$model),e?\"true\":\"\"}setValue(e){var t,n;if(!this.$disabled){if(this._options._userInput=!0,this.$disabled||this.$dirty||!this._internal.options.dirtyOnInput||(this.$dirty=!0),e=null===e||\"null\"===e?null:!1!==e&&\"false\"!==e&&\"off\"!==e&&\"\"!==e,null===(t=this._options._anyEvent)||void 0===t?void 0:t.beforeChange){const t=this.$model;if(e!==t){const n={type:\"beforeChange\",target:this,value:e,prevValue:t};ii(n)&&n.value!==e&&(e=n.value)}}if(null===(n=this._options._anyEvent)||void 0===n?void 0:n.change){const t=this.$model;this.$model=e,e!=t&&ii({type:\"change\",target:this,value:e,prevValue:t})}else this.$model=e}}};const Ci={created(){const e=this,t=e.$options.schema;t&&e.$setSchema&&e.$setSchema(t,!1)},methods:{$setSchema(e,t){const n=this;if(n.$schema&&n.$schema.$destroy(),n.$schema=n.schema=void 0,!e)return;if(void 0===n.model)throw new Error(\"no `model` property in data\");const i={};i.vm=n,n.$options.external&&(i.external=n.$external=n.$options.external),n.$form=i.form=n.form||{};const r=n.schemaOptions||n.$options.schemaOptions;let s;r&&void 0!==r.arrayItemGuidField&&(i.arrayItemGuidField=r.arrayItemGuidField),n.$options.beforeFixSchema&&(i.onBeforeFixSchema=n.$options.beforeFixSchema),n.$options.afterSchema&&(i.onAfterSchema=n.$options.afterSchema),n.$options.beforeSchema&&(i.onBeforeWrap=n.$options.beforeSchema),r&&(r.$methods&&(s=Object.assign(s||{},r.$methods),r.$methods=void 0),an(i,r)),n.$options.$methods&&(s=Object.assign(s||{},n.$options.$methods)),s&&(i.schemaMethods=s);const a=zi(e,n.model,i);return n.model=a.$model,n.$schema=n.schema=a,t&&n.$forceUpdate&&n.$forceUpdate(),a}}},Pi={created(){},beforeMount(e,t){const n=t.value;n&&n.$bind&&n.$bind(e,t.modifiers)},mounted(){},beforeUpdate(e,t){t.oldValue!==t.value&&(t.oldValue&&t.oldValue.$unbind&&t.oldValue.$unbind(e),t.value&&t.value.$bind&&t.value.$bind(e,t.modifiers))},updated(){},beforeUnmount(e,t){const n=t.value;n&&n.$unbind&&n.$unbind(e)},unmounted(){}};function Ri(t,n=25){const i=l(n),r=l(0),s=e((()=>Math.ceil(t.$model.length/i.value))),a=l(\"\"),o=e({get:()=>0==s.value?0:r.value>=s.value?s.value-1:r.value,set:e=>{e<=0?r.value=0:e>=s.value?r.value=s.value-1:r.value=e}});function c(e){o.value=Math.floor(e/i.value)}const u=e((()=>t.$getItems(o.value*i.value,i.value,a.value)));return{gotoItem:c,addRow:function(e){let n;return n=e?t.$addRow(e):t.$addRow(),o.value=s.value-1,n},removeRow:function(e){t.$removeRow(e)},moveUp:function(e){if(t.$exchangeRow(e,e-1))return c(e-1),!0},moveDown:function(e){if(t.$exchangeRow(e,e+1))return c(e+1),!0},pageSize:i,pageNumber:o,pageCount:s,items:u,order:a}}function ji(e,t,n=\"model\"){var i;e.__vnode&&(e=e.__vnode),e._&&(e=e._),e.component&&(e=e.component),(null===(i=e.subTree)||void 0===i?void 0:i.component)&&(e=e.subTree.component);const r=e.subTree?e.subTree.children:e.children;if(r&&\"string\"!=typeof r){for(let e=0;e{if(!i.has(e))return i.add(e),t(e,n)}),n)}function Ii(e,t=\"model\"){const n=new Set;return ji(e,(e=>{n.add(e)}),t),n}function Ai(e,t=\"model\"){const n=[];return Li(e,(e=>{const t=e.$validate();t&&n.push(t)}),t),n}function Ni(e){return e}Array.prototype.includes||(Array.prototype.includes=function(e){const t=Object(this),n=parseInt(t.length,10)||0;if(0===n)return!1;const i=parseInt(arguments[1],10)||0;let r,s;for(i>=0?r=i:(r=n+i,r<0&&(r=0));r(\n schema: T,\n sections: Section[],\n): {\n isFirstIndex: ComputedRef\n isLastIndex: ComputedRef\n sections: Ref\n selectedSection: Ref
\n nextSection: () => any\n prevSection: () => any\n setSection: (section: Section) => any\n} {\n let $: any\n const instance = getCurrentInstance()\n const sectionsRef = ref(isTabDisabled())\n const selectedSection = ref(sectionsRef.value[0])\n\n onMounted(() => {\n $ = getCurrentInstance()\n })\n\n function isTabDisabled() {\n if (!schema.$external.tabsEnabled.length) {\n return sections\n }\n return sections.map((section, index) => {\n section.tabDisabled = !schema.$external.tabsEnabled.includes(index)\n return { ...section }\n })\n }\n\n function nextSection() {\n const index = sectionsRef.value.findIndex((section) => section === selectedSection.value)\n if (index < 0 || index + 1 >= sectionsRef.value.length) {\n return\n }\n\n setSection(sectionsRef.value[index + 1])\n }\n\n function prevSection() {\n const index = sectionsRef.value.findIndex((section) => section === selectedSection.value)\n\n if (index < 0 || index - 1 < 0) {\n return\n }\n\n setSection(sectionsRef.value[index - 1])\n }\n\n function validateCurrentSection(): IWrappedProperty[] {\n const result: any[] = []\n\n traverseTree($, result)\n return result\n }\n\n function setSection(section: Section) {\n if (section === selectedSection.value) {\n return\n }\n const errors = validateCurrentSection()\n instance?.emit('validate', errors)\n\n if (errors.length === 0) {\n selectedSection.value = section\n instance?.emit('section-changed', section)\n return\n }\n\n return confirmService\n .confirm(\n 'Nieprawidłowo wypełniono pola w tej części wniosku. Czy chcesz przejść dalej, a błędy poprawić później?',\n )\n .then(() => (selectedSection.value = section))\n .then(() => instance?.emit('section-changed', section))\n .then(() => window.scrollTo(0, 0))\n }\n\n return {\n isFirstIndex: computed(() => sectionsRef.value[0] === selectedSection.value),\n isLastIndex: computed(\n () => sectionsRef.value[sectionsRef.value.length - 1] === selectedSection.value,\n ),\n sections: sectionsRef,\n selectedSection,\n\n nextSection,\n prevSection,\n setSection,\n }\n}\n","import { type FromSchemaProperty, wrapSchema, schemaMethods } from '@witkac/jschema'\nimport {\n type ComputedRef,\n type Ref,\n getCurrentInstance,\n watch,\n unref,\n shallowRef,\n isRef,\n} from 'vue'\n\nimport { useSections } from './sections'\nimport { confirmService } from '../services/confirm.service'\nimport type { SchemaForm } from '../typings/schemaForm'\nimport type { Section } from '../typings/section'\n\nexport function useForm>(\n schemaDef: SchemaType,\n model: unknown,\n external: ExternalType,\n sections: Section[],\n): UseFormReturnType {\n const instance = getCurrentInstance()\n\n let schema = wrapSchema(\n unref(schemaDef),\n model ? schemaMethods.deepCopy(unref(model)) : undefined,\n {\n external: unref(external),\n wrapAll: true,\n lazyNumbers: true,\n },\n )\n\n function createFieldChangedWatcher() {\n return watch(\n () => unref(schema).$model,\n () => instance?.emit('field-changed'),\n { deep: true },\n )\n }\n\n let changeWatcher = createFieldChangedWatcher()\n\n if (import.meta.env.DEV) {\n console.log('DEV MODE')\n schema = shallowRef(schema) as any\n // aktualizacja schematu\n if (isRef(schemaDef) && isRef(external)) {\n watch(\n () => [schemaDef.value, external.value],\n () => {\n changeWatcher()\n const dirtyList = schema.value.$dirtyList([]).map((x: any) => x.$path)\n const prevModel = schema.value.$model\n ;(schema.value as any).$destroy()\n const sh = wrapSchema(unref(schemaDef) as any, prevModel, {\n external: unref(external),\n wrapAll: true,\n lazyNumbers: true,\n })\n for (let i = 0; i < dirtyList.length; i++) {\n const child = sh.$child(dirtyList[i])\n if (child) {\n child.$dirty = true\n }\n }\n schema.value = sh\n changeWatcher = createFieldChangedWatcher()\n },\n )\n }\n // aktualizacja modelu\n if (isRef(model)) {\n watch(\n () => model.value,\n () => {\n changeWatcher()\n ;(schema.value as any).$setNewData(unref(model))\n changeWatcher = createFieldChangedWatcher()\n },\n )\n }\n }\n\n function onSave(leave: boolean) {\n const errors = unref(schema).$validateAll()\n instance?.emit('validate', errors)\n\n if (leave) {\n if (errors.length > 0) {\n return confirmService\n .configurable('Formularz zawiera błedy. Czy chcesz zapisać go w obecnej formie?', {\n acceptButtonText: 'Tak - wrócę do edycji później',\n rejectButtonText: 'Nie - powróć do edycji formularza',\n })\n .then(() => instance?.emit('save', leave))\n }\n }\n\n return instance?.emit('save', leave)\n }\n\n return {\n ...useSections(unref(schema), sections),\n schema,\n\n onSave,\n }\n}\n\ntype UseFormReturnType = {\n schema: FromSchemaProperty\n isFirstIndex: ComputedRef\n isLastIndex: ComputedRef\n sections: Ref\n selectedSection: Ref
\n nextSection: () => any\n prevSection: () => any\n setSection: (section: Section) => any\n onSave: (leave: boolean) => any\n}\n"],"names":["arrayAvg_1","arrayAvg","b","arrayDistinct_1","arrayDistinct","arrayDistinctItem_1","arrayDistinctItem","arrayIncludesAll_1","arrayIncludesAll","arrayMax_1","arrayMax","arrayMin_1","arrayMin","arraySum_1","arraySum","w","y","ms","createDebug","require$$0","self","v","this","createDebug_1","dateParse_1","dateParse","numberFormatPad_1","numberFormatPad","dateTimeFormat","dt","dateAdd_1","require$$1","dateAdd","dateDiff_1","dateDiff","dateFormat_1","dateFormat","dateFromPesel_1","dateFromPesel","datePart_1","datePart","dateListMonths_1","require$$2","dateListMonths","dateListYears_1","dateListYears","dateNow_1","dateNow","dateSet_1","dateSet","dateToday_1","dateToday","deepMerge_1","deepMerge","fileToBase64_1","fileToBase64","generateGuid_1","generateGuid","g","generateIban_1","generateIban","generateId_1","generateId","generatePesel_1","generatePesel","getPath_1","getPath","ibanFormat_1","ibanFormat","interpolate_1","interpolate","iterateFileByLine_1","iterateFileByLine","numberToWords_1","numberToWords","listNumberFormat_1","listNumberFormat","nullDefault_1","nullDefault","numberRound_1","numberRound","numberFormat_1","numberFormat","numberFormatMoney_1","numberFormatMoney","numberFormatSpace_1","numberFormatSpace","numberHasValue_1","numberHasValue","numberListNext_1","numberListNext","numberToWordsMoney_1","numberToWordsMoney","objectDeepCopy_1","objectDeepCopy","randomInt_1","randomInt","setPath_1","setPath","stringCheck","Z","stringReverse_1","stringReverse","stringTrim_1","stringTrim","timeFormat_1","timeFormat","tryParseBoolean_1","tryParseBoolean","tryParseDate_1","tryParseDate","tryParseFloat_1","tryParseFloat","tryParseInt_1","tryParseInt","require$$3","require$$4","require$$5","require$$6","require$$7","require$$8","require$$9","require$$10","require$$11","require$$12","require$$13","require$$14","require$$15","require$$16","require$$17","require$$18","require$$19","require$$20","require$$21","require$$22","require$$23","require$$24","require$$25","require$$26","require$$27","require$$28","require$$29","require$$30","require$$31","require$$32","require$$33","require$$34","require$$35","require$$36","require$$37","require$$38","require$$39","require$$40","require$$41","require$$42","require$$43","require$$44","require$$45","require$$46","require$$47","require$$48","require$$49","require$$50","require$$51","require$$52","require$$53","require$$54","Reflect","global","_","O","P","hasOwn","_i","x","V","metadataRegistry","metadata","OrdinaryDefineOwnMetadata","OrdinaryHasOwnMetadata","OrdinaryGetOwnMetadata","OrdinaryOwnMetadataKeys","k","defineMetadata","hasOwnMetadata","getOwnMetadata","getOwnMetadataKeys","deleteMetadata","MapIterator","Map","Set","WeakMap","e","n","t","i","r","s","o","l","a","$","c","u","h","d","F","p","M","D","S","f","m","wrapSchema","schemaMethods"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAe,aAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACCf,SAAO,eAAeA,UAAS,cAAc,EAAE,OAAO,MAAM;AAC5CA,WAAA,WAAG;AAMnB,WAASC,WAAS,OAAO,MAAM;AAC3B,QAAI,MAAM;AACN,aAAO,MAAM,OAAO,CAAC,GAAGC,OAAM,EAAE,IAAI,IAAIA,GAAE,IAAI,GAAG,CAAC,IAAI,MAAM;AAAA,IACpE,OACS;AACD,aAAO,MAAM,OAAO,CAAC,GAAGA,OAAM,IAAIA,IAAG,CAAC,IAAI,MAAM;AAAA,IACxD;AAAA,EACA;AACAF,WAAA,WAAmBC;;;;;;;;ACfnB,SAAO,eAAeE,eAAS,cAAc,EAAE,OAAO,MAAM;AACvCA,gBAAA,gBAAG;AAMxB,WAASC,gBAAc,OAAO,MAAM;AAChC,UAAM,UAAU,CAAE;AAClB,UAAM,YAAY,CAAE;AACpB,QAAI,MAAM;AACN,eAAS,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;AACnC,cAAM,KAAK,MAAM,CAAC,EAAE,IAAI;AACxB,YAAI,UAAU,EAAE,MAAM,QAAW;AAC7B,kBAAQ,KAAK,EAAE;AACf,oBAAU,EAAE,IAAI;AAAA,QAChC;AAAA,MACA;AAAA,IACA,OACS;AACD,eAAS,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;AACnC,YAAI,UAAU,MAAM,CAAC,CAAC,MAAM,QAAW;AACnC,kBAAQ,KAAK,MAAM,CAAC,CAAC;AACrB,oBAAU,MAAM,CAAC,CAAC,IAAI;AAAA,QACtC;AAAA,MACA;AAAA,IACA;AACI,WAAO;AAAA,EACX;AACAD,gBAAA,gBAAwBC;;;;;;;;AC7BxB,SAAO,eAAeC,mBAAS,cAAc,EAAE,OAAO,MAAM;AACnCA,oBAAA,oBAAG;AAM5B,WAASC,oBAAkB,OAAO,MAAM;AACpC,UAAM,UAAU,CAAE;AAClB,UAAM,YAAY,CAAE;AACpB,QAAI,MAAM;AACN,eAAS,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;AACnC,cAAM,KAAK,MAAM,CAAC,EAAE,IAAI;AACxB,YAAI,UAAU,EAAE,MAAM,QAAW;AAC7B,kBAAQ,KAAK,MAAM,CAAC,CAAC;AACrB,oBAAU,EAAE,IAAI;AAAA,QAChC;AAAA,MACA;AAAA,IACA,OACS;AACD,eAAS,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;AACnC,YAAI,UAAU,MAAM,CAAC,CAAC,MAAM,QAAW;AACnC,kBAAQ,KAAK,MAAM,CAAC,CAAC;AACrB,oBAAU,MAAM,CAAC,CAAC,IAAI;AAAA,QACtC;AAAA,MACA;AAAA,IACA;AACI,WAAO;AAAA,EACX;AACAD,oBAAA,oBAA4BC;;;;;;;;AC7B5B,SAAO,eAAeC,kBAAS,cAAc,EAAE,OAAO,MAAM;AACpCA,mBAAA,mBAAG;AAC3B,WAASC,mBAAiB,KAAK,aAAa;AACxC,QAAI,CAAC,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,QAAQ,WAAW,GAAG;AACpD,aAAO;AAAA,IACf;AACI,eAAW,WAAW,aAAa;AAC/B,UAAI,CAAC,IAAI,SAAS,OAAO,GAAG;AACxB,eAAO;AAAA,MACnB;AAAA,IACA;AACI,WAAO;AAAA,EACX;AACAD,mBAAA,mBAA2BC;;;;;;;;ACb3B,SAAO,eAAeC,UAAS,cAAc,EAAE,OAAO,MAAM;AAC5CA,WAAA,WAAG;AAMnB,WAASC,WAAS,QAAQ,MAAM;AAC5B,QAAI,SAAS,OAAO,CAAC;AACrB,QAAI,IAAI,OAAO;AACf,QAAI,MAAM;AACN,aAAO,EAAE,IAAI,GAAG;AACZ,cAAM,KAAK,OAAO,CAAC,EAAE,IAAI;AACzB,YAAI,KAAK,QAAQ;AACb,mBAAS;AAAA,QACzB;AAAA,MACA;AAAA,IACA,OACS;AACD,aAAO,EAAE,IAAI,GAAG;AACZ,YAAI,OAAO,CAAC,IAAI,QAAQ;AACpB,mBAAS,OAAO,CAAC;AAAA,QACjC;AAAA,MACA;AAAA,IACA;AACI,WAAO;AAAA,EACX;AACAD,WAAA,WAAmBC;;;;;;;;AC3BnB,SAAO,eAAeC,UAAS,cAAc,EAAE,OAAO,MAAM;AAC5CA,WAAA,WAAG;AAMnB,WAASC,WAAS,QAAQ,MAAM;AAC5B,QAAI,SAAS,OAAO,CAAC;AACrB,QAAI,IAAI,OAAO;AACf,QAAI,MAAM;AACN,aAAO,EAAE,IAAI,GAAG;AACZ,cAAM,KAAK,OAAO,CAAC,EAAE,IAAI;AACzB,YAAI,KAAK,QAAQ;AACb,mBAAS;AAAA,QACzB;AAAA,MACA;AAAA,IACA,OACS;AACD,aAAO,EAAE,IAAI,GAAG;AACZ,YAAI,OAAO,CAAC,IAAI,QAAQ;AACpB,mBAAS,OAAO,CAAC;AAAA,QACjC;AAAA,MACA;AAAA,IACA;AACI,WAAO;AAAA,EACX;AACAD,WAAA,WAAmBC;;;;;;;;AC3BnB,SAAO,eAAeC,UAAS,cAAc,EAAE,OAAO,MAAM;AAC5CA,WAAA,WAAG;AAMnB,WAASC,WAAS,OAAO,MAAM;AAC3B,QAAI,MAAM;AACN,aAAO,MAAM,OAAO,CAAC,GAAGZ,OAAM,EAAE,IAAI,IAAIA,GAAE,IAAI,GAAG,CAAC;AAAA,IAC1D,OACS;AACD,aAAO,MAAM,OAAO,CAAC,GAAGA,OAAM,IAAIA,IAAG,CAAC;AAAA,IAC9C;AAAA,EACA;AACAW,WAAA,WAAmBC;;;;;;;;;;ACZnB,MAAI,IAAI;AACR,MAAI,IAAI,IAAI;AACZ,MAAI,IAAI,IAAI;AACZ,MAAI,IAAI,IAAI;AACZ,MAAIC,KAAI,IAAI;AACZ,MAAIC,KAAI,IAAI;AAgBZ,OAAiB,SAAU,KAAK,SAAS;AACvC,cAAU,WAAW,CAAE;AACvB,QAAI,OAAO,OAAO;AAClB,QAAI,SAAS,YAAY,IAAI,SAAS,GAAG;AACvC,aAAO,MAAM,GAAG;AAAA,IACjB,WAAU,SAAS,YAAY,SAAS,GAAG,GAAG;AAC7C,aAAO,QAAQ,OAAO,QAAQ,GAAG,IAAI,SAAS,GAAG;AAAA,IACrD;AACE,UAAM,IAAI;AAAA,MACR,0DACE,KAAK,UAAU,GAAG;AAAA,IACrB;AAAA,EACF;AAUD,WAAS,MAAM,KAAK;AAClB,UAAM,OAAO,GAAG;AAChB,QAAI,IAAI,SAAS,KAAK;AACpB;AAAA,IACJ;AACE,QAAI,QAAQ,mIAAmI;AAAA,MAC7I;AAAA,IACD;AACD,QAAI,CAAC,OAAO;AACV;AAAA,IACJ;AACE,QAAI,IAAI,WAAW,MAAM,CAAC,CAAC;AAC3B,QAAI,QAAQ,MAAM,CAAC,KAAK,MAAM,YAAa;AAC3C,YAAQ,MAAI;AAAA,MACV,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACH,eAAO,IAAIA;AAAA,MACb,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACH,eAAO,IAAID;AAAA,MACb,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACH,eAAO,IAAI;AAAA,MACb,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACH,eAAO,IAAI;AAAA,MACb,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACH,eAAO,IAAI;AAAA,MACb,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACH,eAAO,IAAI;AAAA,MACb,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACH,eAAO;AAAA,MACT;AACE,eAAO;AAAA,IACb;AAAA,EACA;AAUA,WAAS,SAASE,KAAI;AACpB,QAAI,QAAQ,KAAK,IAAIA,GAAE;AACvB,QAAI,SAAS,GAAG;AACd,aAAO,KAAK,MAAMA,MAAK,CAAC,IAAI;AAAA,IAChC;AACE,QAAI,SAAS,GAAG;AACd,aAAO,KAAK,MAAMA,MAAK,CAAC,IAAI;AAAA,IAChC;AACE,QAAI,SAAS,GAAG;AACd,aAAO,KAAK,MAAMA,MAAK,CAAC,IAAI;AAAA,IAChC;AACE,QAAI,SAAS,GAAG;AACd,aAAO,KAAK,MAAMA,MAAK,CAAC,IAAI;AAAA,IAChC;AACE,WAAOA,MAAK;AAAA,EACd;AAUA,WAAS,QAAQA,KAAI;AACnB,QAAI,QAAQ,KAAK,IAAIA,GAAE;AACvB,QAAI,SAAS,GAAG;AACd,aAAO,OAAOA,KAAI,OAAO,GAAG,KAAK;AAAA,IACrC;AACE,QAAI,SAAS,GAAG;AACd,aAAO,OAAOA,KAAI,OAAO,GAAG,MAAM;AAAA,IACtC;AACE,QAAI,SAAS,GAAG;AACd,aAAO,OAAOA,KAAI,OAAO,GAAG,QAAQ;AAAA,IACxC;AACE,QAAI,SAAS,GAAG;AACd,aAAO,OAAOA,KAAI,OAAO,GAAG,QAAQ;AAAA,IACxC;AACE,WAAOA,MAAK;AAAA,EACd;AAMA,WAAS,OAAOA,KAAI,OAAO,GAAG,MAAM;AAClC,QAAI,WAAW,SAAS,IAAI;AAC5B,WAAO,KAAK,MAAMA,MAAK,CAAC,IAAI,MAAM,QAAQ,WAAW,MAAM;AAAA,EAC7D;;;;;;;;AC3JA,WAAS,MAAM,KAAK;AACnB,IAAAC,aAAY,QAAQA;AACpB,IAAAA,aAAY,UAAUA;AACtB,IAAAA,aAAY,SAAS;AACrB,IAAAA,aAAY,UAAU;AACtB,IAAAA,aAAY,SAAS;AACrB,IAAAA,aAAY,UAAU;AACtB,IAAAA,aAAY,WAAWC,UAAa;AACpC,IAAAD,aAAY,UAAU;AAEtB,WAAO,KAAK,GAAG,EAAE,QAAQ,SAAO;AAC/B,MAAAA,aAAY,GAAG,IAAI,IAAI,GAAG;AAAA,IAC5B,CAAE;AAMD,IAAAA,aAAY,QAAQ,CAAE;AACtB,IAAAA,aAAY,QAAQ,CAAE;AAOtB,IAAAA,aAAY,aAAa,CAAE;AAQ3B,aAAS,YAAY,WAAW;AAC/B,UAAI,OAAO;AAEX,eAAS,IAAI,GAAG,IAAI,UAAU,QAAQ,KAAK;AAC1C,gBAAS,QAAQ,KAAK,OAAQ,UAAU,WAAW,CAAC;AACpD,gBAAQ;AAAA,MACX;AAEE,aAAOA,aAAY,OAAO,KAAK,IAAI,IAAI,IAAIA,aAAY,OAAO,MAAM;AAAA,IACtE;AACC,IAAAA,aAAY,cAAc;AAS1B,aAASA,aAAY,WAAW;AAC/B,UAAI;AACJ,UAAI,iBAAiB;AACrB,UAAI;AACJ,UAAI;AAEJ,eAAS,SAAS,MAAM;AAEvB,YAAI,CAAC,MAAM,SAAS;AACnB;AAAA,QACJ;AAEG,cAAME,QAAO;AAGb,cAAM,OAAO,OAAO,oBAAI,MAAM;AAC9B,cAAMH,MAAK,QAAQ,YAAY;AAC/B,QAAAG,MAAK,OAAOH;AACZ,QAAAG,MAAK,OAAO;AACZ,QAAAA,MAAK,OAAO;AACZ,mBAAW;AAEX,aAAK,CAAC,IAAIF,aAAY,OAAO,KAAK,CAAC,CAAC;AAEpC,YAAI,OAAO,KAAK,CAAC,MAAM,UAAU;AAEhC,eAAK,QAAQ,IAAI;AAAA,QACrB;AAGG,YAAI,QAAQ;AACZ,aAAK,CAAC,IAAI,KAAK,CAAC,EAAE,QAAQ,iBAAiB,CAAC,OAAO,WAAW;AAE7D,cAAI,UAAU,MAAM;AACnB,mBAAO;AAAA,UACZ;AACI;AACA,gBAAM,YAAYA,aAAY,WAAW,MAAM;AAC/C,cAAI,OAAO,cAAc,YAAY;AACpC,kBAAM,MAAM,KAAK,KAAK;AACtB,oBAAQ,UAAU,KAAKE,OAAM,GAAG;AAGhC,iBAAK,OAAO,OAAO,CAAC;AACpB;AAAA,UACL;AACI,iBAAO;AAAA,QACX,CAAI;AAGD,QAAAF,aAAY,WAAW,KAAKE,OAAM,IAAI;AAEtC,cAAM,QAAQA,MAAK,OAAOF,aAAY;AACtC,cAAM,MAAME,OAAM,IAAI;AAAA,MACzB;AAEE,YAAM,YAAY;AAClB,YAAM,YAAYF,aAAY,UAAW;AACzC,YAAM,QAAQA,aAAY,YAAY,SAAS;AAC/C,YAAM,SAAS;AACf,YAAM,UAAUA,aAAY;AAE5B,aAAO,eAAe,OAAO,WAAW;AAAA,QACvC,YAAY;AAAA,QACZ,cAAc;AAAA,QACd,KAAK,MAAM;AACV,cAAI,mBAAmB,MAAM;AAC5B,mBAAO;AAAA,UACZ;AACI,cAAI,oBAAoBA,aAAY,YAAY;AAC/C,8BAAkBA,aAAY;AAC9B,2BAAeA,aAAY,QAAQ,SAAS;AAAA,UACjD;AAEI,iBAAO;AAAA,QACP;AAAA,QACD,KAAK,CAAAG,OAAK;AACT,2BAAiBA;AAAA,QACrB;AAAA,MACA,CAAG;AAGD,UAAI,OAAOH,aAAY,SAAS,YAAY;AAC3C,QAAAA,aAAY,KAAK,KAAK;AAAA,MACzB;AAEE,aAAO;AAAA,IACT;AAEC,aAAS,OAAO,WAAW,WAAW;AACrC,YAAM,WAAWA,aAAY,KAAK,aAAa,OAAO,cAAc,cAAc,MAAM,aAAa,SAAS;AAC9G,eAAS,MAAM,KAAK;AACpB,aAAO;AAAA,IACT;AASC,aAAS,OAAO,YAAY;AAC3B,MAAAA,aAAY,KAAK,UAAU;AAC3B,MAAAA,aAAY,aAAa;AAEzB,MAAAA,aAAY,QAAQ,CAAE;AACtB,MAAAA,aAAY,QAAQ,CAAE;AAEtB,YAAM,SAAS,OAAO,eAAe,WAAW,aAAa,IAC3D,KAAI,EACJ,QAAQ,KAAK,GAAG,EAChB,MAAM,GAAG,EACT,OAAO,OAAO;AAEhB,iBAAW,MAAM,OAAO;AACvB,YAAI,GAAG,CAAC,MAAM,KAAK;AAClB,UAAAA,aAAY,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC;AAAA,QACtC,OAAU;AACN,UAAAA,aAAY,MAAM,KAAK,EAAE;AAAA,QAC7B;AAAA,MACA;AAAA,IACA;AAUC,aAAS,gBAAgB,QAAQ,UAAU;AAC1C,UAAI,cAAc;AAClB,UAAI,gBAAgB;AACpB,UAAI,YAAY;AAChB,UAAI,aAAa;AAEjB,aAAO,cAAc,OAAO,QAAQ;AACnC,YAAI,gBAAgB,SAAS,WAAW,SAAS,aAAa,MAAM,OAAO,WAAW,KAAK,SAAS,aAAa,MAAM,MAAM;AAE5H,cAAI,SAAS,aAAa,MAAM,KAAK;AACpC,wBAAY;AACZ,yBAAa;AACb;AAAA,UACL,OAAW;AACN;AACA;AAAA,UACL;AAAA,QACA,WAAc,cAAc,IAAI;AAE5B,0BAAgB,YAAY;AAC5B;AACA,wBAAc;AAAA,QAClB,OAAU;AACN,iBAAO;AAAA,QACX;AAAA,MACA;AAGE,aAAO,gBAAgB,SAAS,UAAU,SAAS,aAAa,MAAM,KAAK;AAC1E;AAAA,MACH;AAEE,aAAO,kBAAkB,SAAS;AAAA,IACpC;AAQC,aAAS,UAAU;AAClB,YAAM,aAAa;AAAA,QAClB,GAAGA,aAAY;AAAA,QACf,GAAGA,aAAY,MAAM,IAAI,eAAa,MAAM,SAAS;AAAA,MACxD,EAAI,KAAK,GAAG;AACV,MAAAA,aAAY,OAAO,EAAE;AACrB,aAAO;AAAA,IACT;AASC,aAAS,QAAQ,MAAM;AACtB,iBAAW,QAAQA,aAAY,OAAO;AACrC,YAAI,gBAAgB,MAAM,IAAI,GAAG;AAChC,iBAAO;AAAA,QACX;AAAA,MACA;AAEE,iBAAW,MAAMA,aAAY,OAAO;AACnC,YAAI,gBAAgB,MAAM,EAAE,GAAG;AAC9B,iBAAO;AAAA,QACX;AAAA,MACA;AAEE,aAAO;AAAA,IACT;AASC,aAAS,OAAO,KAAK;AACpB,UAAI,eAAe,OAAO;AACzB,eAAO,IAAI,SAAS,IAAI;AAAA,MAC3B;AACE,aAAO;AAAA,IACT;AAMC,aAAS,UAAU;AAClB,cAAQ,KAAK,uIAAuI;AAAA,IACtJ;AAEC,IAAAA,aAAY,OAAOA,aAAY,MAAM;AAErC,WAAOA;AAAA,EACR;AAEA,WAAiB;;;;;;;;AC7RjB,YAAA,aAAqB;AACrB,YAAA,OAAe;AACf,YAAA,OAAe;AACf,YAAA,YAAoB;AACpB,YAAA,UAAkB,aAAc;AAChC,YAAA,UAAmB,uBAAM;AACxB,UAAI,SAAS;AAEb,aAAO,MAAM;AACZ,YAAI,CAAC,QAAQ;AACZ,mBAAS;AACT,kBAAQ,KAAK,uIAAuI;AAAA,QACvJ;AAAA,MACE;AAAA,IACF,GAAI;AAMJ,YAAiB,SAAA;AAAA,MAChB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACA;AAWD,aAAS,YAAY;AAIpB,UAAI,OAAO,WAAW,eAAe,OAAO,YAAY,OAAO,QAAQ,SAAS,cAAc,OAAO,QAAQ,SAAS;AACrH,eAAO;AAAA,MACT;AAGC,UAAI,OAAO,cAAc,eAAe,UAAU,aAAa,UAAU,UAAU,YAAW,EAAG,MAAM,uBAAuB,GAAG;AAChI,eAAO;AAAA,MACT;AAEC,UAAI;AAKJ,aAAQ,OAAO,aAAa,eAAe,SAAS,mBAAmB,SAAS,gBAAgB,SAAS,SAAS,gBAAgB,MAAM;AAAA,MAEtI,OAAO,WAAW,eAAe,OAAO,YAAY,OAAO,QAAQ,WAAY,OAAO,QAAQ,aAAa,OAAO,QAAQ;AAAA;AAAA,MAG1H,OAAO,cAAc,eAAe,UAAU,cAAc,IAAI,UAAU,UAAU,YAAW,EAAG,MAAM,gBAAgB,MAAM,SAAS,EAAE,CAAC,GAAG,EAAE,KAAK;AAAA,MAEpJ,OAAO,cAAc,eAAe,UAAU,aAAa,UAAU,UAAU,YAAa,EAAC,MAAM,oBAAoB;AAAA,IAC1H;AAQA,aAAS,WAAW,MAAM;AACzB,WAAK,CAAC,KAAK,KAAK,YAAY,OAAO,MAClC,KAAK,aACJ,KAAK,YAAY,QAAQ,OAC1B,KAAK,CAAC,KACL,KAAK,YAAY,QAAQ,OAC1B,MAAM,OAAO,QAAQ,SAAS,KAAK,IAAI;AAExC,UAAI,CAAC,KAAK,WAAW;AACpB;AAAA,MACF;AAEC,YAAM,IAAI,YAAY,KAAK;AAC3B,WAAK,OAAO,GAAG,GAAG,GAAG,gBAAgB;AAKrC,UAAI,QAAQ;AACZ,UAAI,QAAQ;AACZ,WAAK,CAAC,EAAE,QAAQ,eAAe,WAAS;AACvC,YAAI,UAAU,MAAM;AACnB;AAAA,QACH;AACE;AACA,YAAI,UAAU,MAAM;AAGnB,kBAAQ;AAAA,QACX;AAAA,MACA,CAAE;AAED,WAAK,OAAO,OAAO,GAAG,CAAC;AAAA,IACxB;AAUA,YAAc,MAAA,QAAQ,SAAS,QAAQ,QAAQ,MAAM;AAAA;AAQrD,aAAS,KAAK,YAAY;AACzB,UAAI;AACH,YAAI,YAAY;AACf,kBAAQ,QAAQ,QAAQ,SAAS,UAAU;AAAA,QAC9C,OAAS;AACN,kBAAQ,QAAQ,WAAW,OAAO;AAAA,QACrC;AAAA,MACE,SAAQ,OAAO;AAAA,MAGjB;AAAA,IACA;AAQA,aAAS,OAAO;AACf,UAAI;AACJ,UAAI;AACH,YAAI,QAAQ,QAAQ,QAAQ,OAAO;AAAA,MACnC,SAAQ,OAAO;AAAA,MAGjB;AAGC,UAAI,CAAC,KAAK,OAAO,YAAY,eAAe,SAAS,SAAS;AAC7D,YAAI,QAAQ,IAAI;AAAA,MAClB;AAEC,aAAO;AAAA,IACR;AAaA,aAAS,eAAe;AACvB,UAAI;AAGH,eAAO;AAAA,MACP,SAAQ,OAAO;AAAA,MAGjB;AAAA,IACA;AAEA,WAAiB,UAAAC,cAAmB,EAAC,OAAO;AAE5C,UAAM,EAAC,WAAU,IAAI,OAAO;AAM5B,eAAW,IAAI,SAAUE,IAAG;AAC3B,UAAI;AACH,eAAO,KAAK,UAAUA,EAAC;AAAA,MACvB,SAAQ,OAAO;AACf,eAAO,iCAAiC,MAAM;AAAA,MAChD;AAAA;;;;;;;;AC7QA,MAAI,kBAA2BC,YAAK,mBAAoB,SAAU,KAAK;AACnE,WAAQ,OAAO,IAAI,aAAc,MAAM,EAAE,WAAW,IAAK;AAAA,EAC5D;AACD,SAAO,eAAeC,aAAS,cAAc,EAAE,OAAO,MAAM;AACzCA,cAAA,cAAG;AACtB,QAAM,UAAU,gBAAgBJ,gBAAgB;AAQhD,WAASD,cAAY,WAAW;AAC5B,eAAW,QAAQ,SAAS,YAAY,SAAS;AAAA,EACrD;AACAK,cAAA,cAAsBL;;;;;;;;;AChBtB,SAAO,eAAeM,WAAS,cAAc,EAAE,OAAO,MAAM;AAC3CA,YAAA,YAAG;AAKpB,WAASC,YAAU,MAAM;AACrB,QAAI,KAAK,WAAW,IAAI;AACpB,aAAO,oBAAI,KAAK,OAAO,WAAW;AAAA,IAC1C,OACS;AACD,aAAO,IAAI,KAAK,IAAI;AAAA,IAC5B;AAAA,EACA;AACAD,YAAA,YAAoBC;;;;;;;;;ACdpB,SAAO,eAAeC,iBAAS,cAAc,EAAE,OAAO,MAAM;AACrCA,kBAAA,kBAAG;AAM1B,WAASC,kBAAgB,OAAO,YAAY,GAAG;AAC3C,QAAI,SAAS,KAAK;AAClB,WAAO,OAAO,SAAS,WAAW;AAC9B,eAAS,MAAM;AAAA,IACvB;AACI,WAAO;AAAA,EACX;AACAD,kBAAA,kBAA0BC;;;;;;;;ACd1B,WAAO,eAAc,SAAU,cAAc,EAAE,OAAO,MAAM;AAC5D,YAAA,qBAA6B,mBAAmB,QAAmB,WAAA,QAAA,aAAqB,QAAqB,aAAA,QAAA,iBAAyB;AACtI,UAAM,oBAAoBR,uBAA4B;AAKtD,aAASS,gBAAeC,KAAI,QAAQ;AAChC,aAAO,QAAQ,mBAAmB,UAAU,qBAAqB,EAAEA,GAAE;AAAA,IACzE;AACA,YAAA,iBAAyBD;AACzB,YAAqB,aAAA;AAAA,MACjB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AACD,YAAqB,aAAA;AAAA,MACjB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACH;AACD,YAAA,WAAmB,CAAC,gBAAgB,UAAU,SAAS,YAAY,UAAU,UAAU,WAAW;AAClG,UAAM,YAAY,CAAC,aAAa,gBAAgB,UAAU,SAAS,YAAY,UAAU,QAAQ;AACjG,YAAA,WAAmB,CAAC,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,GAAG;AAC3D,UAAM,YAAY,CAAC,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,GAAG;AAC1D,YAA6B,qBAAA;AAAA,MACzB,cAAc,CAACC,YAAW,kBAAkB,iBAAiBA,IAAG,QAAS,CAAA,IAAI,OAAU,GAAA,kBAAkB,iBAAiBA,IAAG,SAAU,IAAG,CAAC,IAAI,MAAMA,IAAG,YAAa;AAAA,MACrK,cAAc,CAACA,QAAOA,IAAG,YAAa,IAAG,OAAM,GAAI,kBAAkB,iBAAiBA,IAAG,aAAa,CAAC,IAAI,OAAM,GAAI,kBAAkB,iBAAiBA,IAAG,SAAS;AAAA,MACpK,aAAa,CAACA,QAAO,GAAG,QAAQ,WAAWA,IAAG,SAAQ,CAAE,CAAC,IAAIA,IAAG,YAAa,CAAA;AAAA,MAC7E,YAAY,CAACA,QAAO,GAAG,QAAQ,WAAWA,IAAG,SAAQ,CAAE,CAAC,IAAIA,IAAG,YAAa,CAAA;AAAA,MAC5E,MAAM,CAACA,QAAO,UAAUA,IAAG,OAAM,CAAE;AAAA,MACnC,KAAK,CAACA,QAAO,UAAUA,IAAG,OAAM,CAAE;AAAA,MAClC,IAAI,CAACA,SAAW,GAAA,kBAAkB,iBAAiBA,IAAG,SAAS;AAAA,MAC/D,GAAG,CAACA,QAAOA,IAAG,QAAO,EAAG,SAAU;AAAA,MAClC,MAAM,CAACA,QAAO,QAAQ,WAAWA,IAAG,UAAU;AAAA,MAC9C,KAAK,CAACA,QAAO,QAAQ,WAAWA,IAAG,UAAU;AAAA,MAC7C,IAAI,CAACA,YAAW,kBAAkB,iBAAiBA,IAAG,SAAU,IAAG,CAAC;AAAA,MACpE,GAAG,CAACA,SAAQA,IAAG,SAAU,IAAG,GAAG,SAAU;AAAA,MACzC,IAAI,CAACA,SAAW,GAAA,kBAAkB,iBAAiBA,IAAG,UAAU;AAAA,MAChE,GAAG,CAACA,QAAOA,IAAG,SAAQ,EAAG,SAAU;AAAA,MACnC,IAAI,CAACA,SAAW,GAAA,kBAAkB,iBAAiBA,IAAG,YAAY;AAAA,MAClE,GAAG,CAACA,QAAOA,IAAG,WAAU,EAAG,SAAU;AAAA,MACrC,IAAI,CAACA,SAAW,GAAA,kBAAkB,iBAAiBA,IAAG,YAAY;AAAA,MAClE,GAAG,CAACA,QAAOA,IAAG,WAAU,EAAG,SAAU;AAAA,MACrC,YAAY,CAACA,QAAO,OAAO,kBAAkB,iBAAiBA,IAAG,SAAQ,CAAE,CAAC,KAAQ,GAAA,kBAAkB,iBAAiBA,IAAG,YAAY,CAAC,KAAI,GAAI,kBAAkB,iBAAiBA,IAAG,WAAY,CAAA,CAAC;AAAA,MAClM,uBAAuB,CAACA,QAAO,QAAQ,mBAAmB,YAAY,EAAEA,GAAE,IAAI,MAAM,QAAQ,mBAAmB,UAAU,EAAEA,GAAE;AAAA,MAC7H,uBAAuB,CAACA,QAAO,QAAQ,mBAAmB,YAAY,EAAEA,GAAE,IAAI,MAAM,QAAQ,mBAAmB,UAAU,EAAEA,GAAE;AAAA,IAChI;AAAA;;;;;;;ACjED,SAAO,eAAeC,SAAS,cAAc,EAAE,OAAO,MAAM;AAC7CA,UAAA,UAAG;AAClB,QAAM,cAAcX,iBAAsB;AAC1C,QAAM,mBAAmBY,sBAA2B;AAOpD,WAASC,UAAQ,MAAM,MAAM,OAAO;AAChC,UAAM,aAAY,GAAI,YAAY,WAAW,IAAI;AACjD,UAAM,SAAS,IAAI,KAAK,SAAS;AACjC,YAAQ,MAAI;AAAA,MACR,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO,YAAY,UAAU,YAAW,IAAK,KAAK;AAClD;AAAA,MACJ,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO,SAAS,UAAU,SAAQ,IAAK,KAAK;AAC5C;AAAA,MACJ,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO,QAAQ,UAAU,QAAO,IAAK,KAAK;AAC1C;AAAA,MACJ,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO,SAAS,UAAU,SAAQ,IAAK,KAAK;AAC5C;AAAA,MACJ,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO,WAAW,UAAU,WAAU,IAAK,KAAK;AAChD;AAAA,MACJ,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO,WAAW,UAAU,WAAU,IAAK,KAAK;AAChD;AAAA,IACZ;AACI,QAAI,KAAK,WAAW,IAAI;AACpB,cAAO,GAAI,iBAAiB,gBAAgB,MAAM,EAAE,QAAQ,aAAa,EAAE;AAAA,IACnF,OACS;AACD,cAAW,GAAA,iBAAiB,gBAAgB,MAAM;AAAA,IAC1D;AAAA,EACA;AACAF,UAAA,UAAkBE;;;;;;;;;ACrDlB,SAAO,eAAe,UAAS,cAAc,EAAE,OAAO,MAAM;AAC5C,WAAA,WAAG;AACnB,QAAM,cAAcb,iBAAsB;AAC1C,QAAM,oBAAoBY,uBAA4B;AAAA,EAOtD,MAAM,SAAS;AAAA,IAmBX,YAAYd,KAAI,UAAU,WAAW;AAHrC;AACA;AACA;AAEI,WAAK,KAAKA;AACV,WAAK,WAAW;AAChB,WAAK,YAAY;AAAA,IACzB;AAAA,IAtBI,OAAO,KAAK,UAAU,WAAW;AAC7B,UAAI;AACA,cAAM,OAAO,GAAG,YAAY,WAAW,QAAQ;AAC/C,cAAM,OAAO,GAAG,YAAY,WAAW,SAAS;AAChD,cAAM,SAAS,IAAI,kBAAmB,IAAG,IAAI,kBAAiB;AAC9D,eAAO,IAAI,SAAS,IAAI,QAAS,IAAG,IAAI,QAAS,IAAG,SAAS,KAAK,KAAM,KAAK,GAAG;AAAA,MAC5F,SACe,KAAK;AACR,YAAI,QAAQ,IAAI,aAAa,eAAe;AACxC,kBAAQ,MAAM,6BAA6B,QAAQ,MAAM,SAAS,MAAM,GAAG;AAC3E;AAAA,QAChB;AACY,eAAO,IAAI,SAAS,CAAC;AAAA,MACjC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAYI,IAAI,mBAAmB;AACnB,aAAO,KAAK;AAAA,IACpB;AAAA;AAAA;AAAA;AAAA,IAII,IAAI,cAAc;AACd,aAAO,KAAK,KAAK;AAAA,IACzB;AAAA;AAAA;AAAA;AAAA,IAII,IAAI,eAAe;AACf,aAAO,KAAK,KAAK;AAAA,IACzB;AAAA;AAAA;AAAA;AAAA,IAII,IAAI,UAAU;AAEV,aAAO,KAAK,MAAO,KAAK,eAAe,IAAK,EAAE;AAAA,IACtD;AAAA;AAAA;AAAA;AAAA,IAII,IAAI,eAAe;AACf,aAAO,KAAK,KAAK;AAAA,IACzB;AAAA;AAAA;AAAA;AAAA,IAII,IAAI,UAAU;AACV,aAAO,KAAK,MAAO,KAAK,aAAa,IAAK,EAAE;AAAA,IACpD;AAAA;AAAA;AAAA;AAAA,IAII,IAAI,aAAa;AACb,aAAO,KAAK,KAAK;AAAA,IACzB;AAAA;AAAA;AAAA;AAAA,IAII,IAAI,QAAQ;AACR,aAAO,KAAK,MAAO,KAAK,YAAY,IAAK,EAAE;AAAA,IACnD;AAAA;AAAA;AAAA;AAAA,IAII,IAAI,YAAY;AACZ,aAAO,KAAK,KAAK;AAAA,IACzB;AAAA;AAAA;AAAA;AAAA,IAII,IAAI,OAAO;AACP,aAAO,KAAK,MAAM,KAAK,SAAS;AAAA,IACxC;AAAA;AAAA;AAAA;AAAA,IAII,IAAI,SAAS;AACT,UAAI,KAAK,aAAa,KAAK,UAAU;AACjC,YAAI,OAAO,KAAK,SAAS,YAAa,IAAG,KAAK,UAAU,YAAW,KAAM;AACzE,eAAO,KAAK,SAAS,SAAU;AAC/B,eAAO,KAAK,UAAU,SAAU;AAChC,YAAI,MAAM,GAAG;AACT,cAAI,KAAK,SAAS,QAAO,IAAK,KAAK,UAAU,WAAW;AACpD;AAAA,UACpB;AAAA,QACA,WACqB,MAAM,GAAG;AACd,cAAI,KAAK,SAAS,QAAO,IAAK,KAAK,UAAU,WAAW;AACpD;AAAA,UACpB;AAAA,QACA;AACY,eAAO;AAAA,MACnB,OACa;AACD,eAAO,KAAK,MAAM,KAAK,OAAO,EAAE;AAAA,MAC5C;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAII,IAAI,QAAQ;AACR,UAAI,KAAK,aAAa,KAAK,UAAU;AACjC,cAAM,OAAO,IAAI,KAAK,KAAK,EAAE;AAC7B,cAAM,QAAQ,KAAK,IAAI,KAAK,eAAgB,IAAG,IAAI;AACnD,YAAI,KAAK,WAAW,KAAK,WAAW;AAChC,iBAAO,CAAC;AAAA,QACxB;AACY,eAAO;AAAA,MACnB,OACa;AACD,eAAO,KAAK,MAAM,KAAK,SAAS,EAAE;AAAA,MAC9C;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAII,WAAW;AACP,cAAY,GAAA,kBAAkB,iBAAiB,KAAK,MAAM,KAAK,UAAU,GAAG,CAAC,IACzE,OACA,GAAI,kBAAkB,iBAAiB,KAAK,SAAS,CAAC,IACtD,OACA,GAAI,kBAAkB,iBAAiB,KAAK,SAAS,CAAC;AAAA,IAClE;AAAA,EACA;AACA,WAAA,WAAmB;;;;;;;AClJnB,SAAO,eAAegB,UAAS,cAAc,EAAE,OAAO,MAAM;AAC5CA,WAAA,WAAG;AACnB,QAAM,aAAad,gBAAqB;AAMxC,WAASe,WAAS,UAAU,WAAW;AACnC,WAAO,WAAW,SAAS,KAAK,UAAU,SAAS;AAAA,EACvD;AACAD,WAAA,WAAmBC;;;;;;;;ACXnB,SAAO,eAAeC,YAAS,cAAc,EAAE,OAAO,MAAM;AAC1CA,aAAA,aAAG;AACrB,QAAM,mBAAmBhB,sBAA2B;AAKpD,WAASiB,aAAWP,KAAI;AACpB,QAAI,QAAQ,IAAI,aAAa,cAAc;AACvC,cAAQ,IAAI,YAAYA,GAAE;AAAA,IAClC;AACI,WAAO,iBAAiB,mBAAmB,YAAY,EAAEA,GAAE;AAAA,EAC/D;AACAM,aAAA,aAAqBC;;;;;;;;ACbrB,SAAO,eAAeC,eAAS,cAAc,EAAE,OAAO,MAAM;AACvCA,gBAAA,gBAAG;AACxB,WAASC,gBAAc,OAAO;AAC1B,QAAI,CAAC,OAAO;AACR;AAAA,IACR;AACI,UAAM,aAAa,CAAE;AACrB,aAAS,IAAI,GAAG,IAAI,IAAI,KAAK;AACzB,iBAAW,CAAC,IAAI,SAAS,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC;AAClD,UAAI,MAAM,WAAW,CAAC,CAAC,GAAG;AACtB;AAAA,MACZ;AAAA,IACA;AACI,UAAM,SAAS,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAC/C,QAAI,MAAM;AACV,aAAS,IAAI,GAAG,IAAI,IAAI,KAAK;AACzB,aAAO,OAAO,CAAC,IAAI,WAAW,CAAC;AAAA,IACvC;AACI,QAAI,MAAM,MAAM,GAAG;AACf;AAAA,IACR;AACI,QAAI,OAAO,OAAO,WAAW,CAAC,IAAI,KAAK,WAAW,CAAC;AACnD,QAAI,WAAW,CAAC,KAAK,KAAK,WAAW,CAAC,IAAI,GAAG;AACzC,cAAQ,KAAK,MAAM,WAAW,CAAC,IAAI,CAAC,IAAI;AAAA,IAChD;AACI,QAAI,WAAW,CAAC,KAAK,GAAG;AACpB,cAAQ;AAAA,IAChB;AACI,UAAM,QAAS,WAAW,CAAC,IAAI,IAAK,KAAK,WAAW,CAAC;AACrD,UAAM,MAAM,WAAW,CAAC,IAAI,KAAK,WAAW,CAAC;AAC7C,WAAO,GAAG,IAAI,IAAI,MAAM,SAAQ,EAAG,SAAS,GAAG,GAAG,CAAC,IAAI,IAAI,SAAQ,EAAG,SAAS,GAAG,GAAG,CAAC;AAAA,EAC1F;AACAD,gBAAA,gBAAwBC;;;;;;;;AChCxB,SAAO,eAAe,gBAAS,cAAc,EAAE,OAAO,MAAM;AAC1C,iBAAA,aAAG;AAOrB,WAAS,WAAW,MAAM;AACtB,WAAO,OAAO,MAAM,MAAM,OAAO,QAAQ,KAAK,OAAO,QAAQ;AAAA,EACjE;AACA,iBAAA,aAAqB;;;;;;;;;ACXrB,SAAO,eAAeC,UAAS,cAAc,EAAE,OAAO,MAAM;AAC5CA,WAAA,WAAG;AAWnB,WAASC,WAAS,MAAM,MAAM;AAC1B,YAAQ,MAAI;AAAA,MACR,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO,QAAQ,MAAM,GAAG,CAAC;AAAA,MAC7B,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO,QAAQ,MAAM,GAAG,CAAC;AAAA,MAC7B,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO,QAAQ,MAAM,GAAG,CAAC;AAAA,MAC7B,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO,QAAQ,MAAM,IAAI,CAAC;AAAA,MAC9B,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO,QAAQ,MAAM,IAAI,CAAC;AAAA,MAC9B,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO,QAAQ,MAAM,IAAI,CAAC;AAAA,MAC9B;AACI,eAAO;AAAA,IACnB;AAAA,EACA;AACAD,WAAA,WAAmBC;AACnB,WAAS,QAAQ,GAAG,OAAO,QAAQ;AAC/B,QAAI,QAAQ,EAAE,QAAQ;AAClB,aAAO,CAAC,EAAE,OAAO,OAAO,MAAM;AAAA,IAKtC;AACI,WAAO;AAAA,EACX;;;;;;;ACrDA,SAAO,eAAeC,gBAAS,cAAc,EAAE,OAAO,MAAM;AACtCA,iBAAA,iBAAG;AACzB,QAAM,aAAatB,gBAAqB;AACxC,QAAM,mBAAmBY,sBAA2B;AACpD,QAAM,oBAAoBW,uBAA4B;AAOtD,WAASC,iBAAe,WAAW,SAAS,QAA2B;AACnE,QAAI,MAAK,GAAI,WAAW,UAAU,WAAW,GAAG,IAAI;AACpD,QAAI,MAAS,GAAA,WAAW,UAAU,WAAW,GAAG;AAChD,UAAM,MAAK,GAAI,WAAW,UAAU,SAAS,GAAG,IAAI;AACpD,UAAM,MAAS,GAAA,WAAW,UAAU,SAAS,GAAG;AAChD,UAAM,SAAS,CAAE;AACjB,QAAI;AACJ,YAAQ,QAAM;AAAA,MACV,KAAK;AACD,eAAO,CAAC,GAAG3B,OAAM,iBAAiB,WAAW,CAAC,IAAI,MAAMA;AACxD;AAAA,MACJ,KAAK;AACD,eAAO,CAAC,GAAGA,OAAM,iBAAiB,WAAW,CAAC,IAAI,MAAMA;AACxD;AAAA,MACJ,KAAK;AACD,eAAO,CAAC,GAAGA,QAAU,GAAA,kBAAkB,iBAAiB,IAAI,CAAC,IAAI,MAAMA;AACvE;AAAA,MACJ,KAAK;AACD,eAAO,CAAC,GAAGA,OAAM,IAAI,IAAI,MAAMA;AAC/B;AAAA,MACJ,KAAK;AACD,eAAO,CAAC,MAAM,iBAAiB,WAAW,CAAC;AAC3C;AAAA,MACJ,KAAK;AACD,eAAO,CAAC,MAAM,iBAAiB,WAAW,CAAC;AAC3C;AAAA,MACJ,KAAK;AACD,eAAO,CAAC,OAAM,GAAI,kBAAkB,iBAAiB,IAAI,CAAC;AAC1D;AAAA,MACJ,KAAK;AACD,eAAO,CAAC,OAAO,IAAI,GAAG,SAAU;AAChC;AAAA,MACJ;AACI,eAAO,CAAC,GAAGA,OAAM,iBAAiB,WAAW,CAAC,IAAI,MAAMA;AACxD;AAAA,IACZ;AACI,WAAQ,MAAM,MAAM,OAAO,MAAO,KAAK,IAAI;AACvC,aAAO,KAAK,KAAK,IAAI,EAAE,CAAC;AACxB;AACA,UAAI,KAAK,IAAI;AACT,aAAK;AACL;AAAA,MACZ;AAAA,IACA;AACI,WAAO;AAAA,EACX;AACAyB,iBAAA,iBAAyBE;;;;;;;;ACzDzB,SAAO,eAAeC,eAAS,cAAc,EAAE,OAAO,MAAM;AACvCA,gBAAA,gBAAG;AACxB,QAAM,aAAazB,gBAAqB;AAMxC,WAAS0B,gBAAc,WAAW,SAAS;AACvC,QAAI,MAAS,GAAA,WAAW,UAAU,WAAW,GAAG;AAChD,UAAM,MAAS,GAAA,WAAW,UAAU,SAAS,GAAG;AAChD,UAAM,SAAS,CAAE;AACjB,WAAO,MAAM,IAAI;AACb,aAAO,KAAK,EAAE;AACd;AAAA,IACR;AACI,WAAO;AAAA,EACX;AACAD,gBAAA,gBAAwBC;;;;;;;;AClBxB,SAAO,eAAeC,SAAS,cAAc,EAAE,OAAO,MAAM;AAC7CA,UAAA,UAAG;AAClB,QAAM,mBAAmB3B,sBAA2B;AAIpD,WAAS4B,YAAU;AACf,eAAW,iBAAiB,gBAAgB,oBAAI,KAAI,CAAE;AAAA,EAC1D;AACAD,UAAA,UAAkBC;;;;;;;;ACTlB,SAAO,eAAeC,SAAS,cAAc,EAAE,OAAO,MAAM;AAC7CA,UAAA,UAAG;AAClB,QAAM,cAAc7B,iBAAsB;AAC1C,QAAM,mBAAmBY,sBAA2B;AAOpD,WAASkB,UAAQ,MAAM,MAAM,OAAO;AAChC,UAAM,aAAY,GAAI,YAAY,WAAW,IAAI;AACjD,UAAM,SAAS,IAAI,KAAK,SAAS;AACjC,YAAQ,MAAI;AAAA,MACR,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO,YAAY,KAAK;AACxB;AAAA,MACJ,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO,SAAS,QAAQ,CAAC;AACzB;AAAA,MACJ,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO,QAAQ,KAAK;AACpB;AAAA,MACJ,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO,SAAS,KAAK;AACrB;AAAA,MACJ,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO,WAAW,KAAK;AACvB;AAAA,MACJ,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO,WAAW,KAAK;AACvB;AAAA,IACZ;AACI,QAAI,KAAK,WAAW,IAAI;AACpB,cAAO,GAAI,iBAAiB,gBAAgB,MAAM,EAAE,QAAQ,aAAa,EAAE;AAAA,IACnF,OACS;AACD,cAAW,GAAA,iBAAiB,gBAAgB,MAAM;AAAA,IAC1D;AAAA,EACA;AACAD,UAAA,UAAkBC;;;;;;;;ACrDlB,SAAO,eAAeC,WAAS,cAAc,EAAE,OAAO,MAAM;AAC3CA,YAAA,YAAG;AACpB,QAAM,eAAe/B,kBAAuB;AAI5C,WAASgC,cAAY;AACjB,eAAW,aAAa,YAAY,oBAAI,KAAI,CAAE;AAAA,EAClD;AACAD,YAAA,YAAoBC;;;;;;;;ACTpB,SAAO,eAAeC,WAAS,cAAc,EAAE,OAAO,MAAM;AAC3CA,YAAA,YAAG;AAQpB,WAAS,WAAW,KAAK,KAAK;AAC1B,eAAW,OAAO,KAAK;AACnB,UAAI,CAAC,IAAI,eAAe,GAAG,GAAG;AAC1B;AAAA,MACZ;AACQ,YAAM,UAAU,IAAI,GAAG;AACvB,YAAM,aAAa,IAAI,GAAG;AAC1B,UAAI,eAAe,UAAa,YAAY,MAAM;AAC9C,YAAI,GAAG,IAAI;AACX;AAAA,MACZ;AACQ,UAAI,YAAY,QAAW;AACvB;AAAA,MACZ;AACQ,UAAI,MAAM,QAAQ,OAAO,KAAK,OAAO,QAAQ,CAAC,MAAM,UAAU;AAC1D,YAAI,GAAG,IAAI;AAAA,MACvB,WACiB,OAAO,YAAY,YAAY,OAAO,eAAe,UAAU;AACpE,YAAI,GAAG,IAAI,WAAW,IAAI,GAAG,GAAG,OAAO;AAAA,MACnD,OACa;AACD,YAAI,GAAG,IAAI;AAAA,MACvB;AAAA,IACA;AACI,WAAO;AAAA,EACX;AAQA,WAASC,eAAa,UAAU;AAC5B,QAAI,CAAC,SAAS,QAAQ;AAClB;AAAA,IACR;AACI,QAAI,SAAS,WAAW,GAAG;AACvB,aAAO,SAAS,CAAC;AAAA,IACzB;AACI,UAAM,SAAS,OAAO,OAAO,CAAE,GAAE,KAAK,MAAM,KAAK,UAAU,SAAS,MAAK,CAAE,CAAC,CAAC;AAC7E,aAAS,QAAQ,CAAC,SAAS,WAAW,QAAQ,IAAI,CAAC;AACnD,WAAO;AAAA,EACX;AACAD,YAAA,YAAoBC;;;;;;;;ACrDpB,SAAO,eAAeC,cAAS,cAAc,EAAE,OAAO,MAAM;AACxCA,eAAA,eAAG;AAQvB,WAASC,eAAa,MAAM;AACxB,WAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACpC,YAAM,SAAS,IAAI,WAAY;AAC/B,aAAO,SAAS,MAAM,QAAQ,OAAO,MAAM;AAC3C,aAAO,cAAc,IAAI;AACzB,aAAO,UAAU,CAAC,UAAU,OAAO,KAAK;AAAA,IAChD,CAAK;AAAA,EACL;AACAD,eAAA,eAAuBC;;;;;;;;ACjBvB,SAAO,eAAeC,cAAS,cAAc,EAAE,OAAO,MAAM;AACxCA,eAAA,eAAG;AAIvB,WAASC,iBAAe;AACpB,UAAMC,KAAI;AACV,WAAOA,GAAE,QAAQ,SAAS,CAAC,MAAM;AAE7B,YAAM,IAAK,KAAK,OAAQ,IAAG,KAAM;AAEjC,YAAMrC,KAAI,MAAM,MAAM,IAAK,IAAI,IAAO;AACtC,aAAOA,GAAE,SAAS,EAAE;AAAA,IAC5B,CAAK;AAAA,EACL;AACAmC,eAAA,eAAuBC;;;;;;;;ACfvB,SAAO,eAAeE,cAAS,cAAc,EAAE,OAAO,MAAM;AACxCA,eAAA,eAAG;AAOvB,WAASC,iBAAe;AACpB,UAAM,WAAW,GAAG,gBAAiB,CAAA,GAAG,cAAe,CAAA;AACvD,UAAM,WAAW,YAAY,QAAQ;AACrC,WAAO,GAAG,QAAQ,GAAG,QAAQ;AAAA,EACjC;AACAD,eAAA,eAAuBC;AACvB,QAAM,aAAa;AAAA,IACf;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACH;AAMD,WAAS,kBAAkB;AACvB,WAAO,WAAW,KAAK,MAAM,KAAK,WAAW,WAAW,MAAM,CAAC;AAAA,EACnE;AAMA,WAAS,gBAAgB;AACrB,WAAO,IAAI,MAAM,CAAC,EACb,KAAK,MAAS,EACd,IAAI,MAAM,KAAK,MAAM,KAAK,OAAQ,IAAG,GAAK,EAC1C,SAAQ,EACR,SAAS,GAAG,GAAG,CAAC,EAChB,KAAK,EAAE;AAAA,EAChB;AACA,QAAM,WAAW;AAOjB,WAAS,YAAY,UAAU;AAC3B,UAAM,eAAe,OAAO,GAAG,QAAQ,GAAG,QAAQ,IAAI,IAAI,OAAO,EAAE;AACnE,YAAQ,KAAK,SAAS,aAAa,SAAQ,CAAE,GAAG,WAAW,SAAS,GAAG,GAAG;AAAA,EAC9E;;;;;;;;AC1DA,SAAO,eAAeC,YAAS,cAAc,EAAE,OAAO,MAAM;AAC1CA,aAAA,aAAG;AACrB,MAAI,OAAO;AAQX,WAASC,aAAW,SAAS,MAAM;AAC/B,QAAI,CAAC,QAAQ;AACT,eAAS;AAAA,IACjB;AACI,WAAO,GAAG,MAAM,IAAI,MAAM;AAAA,EAC9B;AACAD,aAAA,aAAqBC;;;;;;;;AChBrB,SAAO,eAAeC,eAAS,cAAc,EAAE,OAAO,MAAM;AACvCA,gBAAA,gBAAG;AAOxB,WAASC,kBAAgB;AACrB,UAAM,YAAY,GAAG,qBAAsB,CAAA,GAAG,mBAAoB,CAAA;AAClE,UAAM,WAAW,iBAAiB,SAAS;AAC3C,WAAO,GAAG,SAAS,GAAG,QAAQ;AAAA,EAClC;AACAD,gBAAA,gBAAwBC;AAMxB,WAAS,uBAAuB;AAC5B,UAAM,aAAa,OAAO,KAAK,MAAM,KAAK,OAAQ,IAAG,EAAE;AACvD,UAAM,cAAc,KAAK,MAAM,KAAK,OAAQ,IAAG,EAAE,IAAI;AACrD,UAAM,YAAY,KAAK,MAAM,KAAK,OAAQ,IAAG,EAAE,IAAI;AACnD,WAAO,GAAG,WAAW,SAAQ,EAAG,UAAU,CAAC,CAAC,GAAG,YAAY,SAAQ,EAAG,SAAS,GAAG,GAAG,CAAC,GAAG,UACpF,SAAQ,EACR,SAAS,GAAG,GAAG,CAAC;AAAA,EACzB;AAMA,WAAS,qBAAqB;AAC1B,UAAM,eAAe,KAAK,MAAM,KAAK,OAAQ,IAAG,GAAK;AACrD,WAAO,aAAa,SAAQ,EAAG,SAAS,GAAG,GAAG;AAAA,EAClD;AACA,QAAM,UAAU,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAO7C,WAAS,iBAAiB,WAAW;AACjC,UAAM,MAAM,QAAQ,OAAO,CAAC,OAAO,QAAQ,UAAU,QAAQ,SAAS,SAAS,UAAU,KAAK,CAAC,GAAG,CAAC;AACnG,UAAM,cAAc,MAAM;AAC1B,QAAI,gBAAgB,GAAG;AACnB,aAAO;AAAA,IACf;AACI,YAAQ,KAAK,aAAa,SAAU;AAAA,EACxC;;;;;;;;AClDA,SAAO,eAAeC,SAAS,cAAc,EAAE,OAAO,MAAM;AAC7CA,UAAA,UAAG;AASlB,WAASC,UAAQ,KAAK,YAAY;AAC9B,QAAI,CAAC,MAAM,QAAQ,UAAU,GAAG;AAC5B,mBAAa,WAAW,MAAM,GAAG;AAAA,IACzC;AACI,WAAO,WAAW,OAAO,CAAC,SAAS,QAAQ;AACvC,UAAI,CAAC,SAAS;AACV,eAAO;AAAA,MACnB,WACiB,mBAAmB,SAAS;AACjC,eAAO,QAAQ,KAAK,CAAC,UAAU,MAAM,GAAG,CAAC;AAAA,MACrD;AACQ,aAAO,QAAQ,GAAG;AAAA,IACrB,GAAE,GAAG;AAAA,EACV;AACAD,UAAA,UAAkBC;;;;;;;;ACxBlB,SAAO,eAAeC,YAAS,cAAc,EAAE,OAAO,MAAM;AAC1CA,aAAA,aAAG;AACrB,QAAM,mBAAmB;AACzB,QAAM,eAAe;AASrB,WAASC,aAAW,OAAO,YAAY,KAAK;AACxC,QAAI,CAAC,OAAO;AACR;AAAA,IACR;AACI,UAAM,eAAe,MAAM,QAAQ,cAAc,EAAE,EAAE,YAAa;AAClE,UAAM,aAAa,aAAa,SAAS;AACzC,UAAM,UAAU,aAAa,UAAU,GAAG,UAAU;AACpD,UAAM,OAAO,aAAa,UAAU,UAAU;AAC9C,WAAO,UAAU,YAAY,KAAK,QAAQ,kBAAkB,OAAO,SAAS;AAAA,EAChF;AACAD,aAAA,aAAqBC;;;;;;;;ACtBrB,SAAO,eAAeC,aAAS,cAAc,EAAE,OAAO,MAAM;AACzCA,cAAA,cAAG;AAWtB,WAASC,cAAY,qBAAqB,aAAa,MAAM;AACzD,WAAO,IAAI,SAAS,GAAI,YAAY,IAAK,YAAY,mBAAmB,IAAI,EAAE,GAAG,IAAI;AAAA,EACzF;AACAD,cAAA,cAAsBC;;;;AChBtB,MAAe,wBAAA,CAAA;;;;;;;;;;ACCf,SAAO,eAAeC,mBAAS,cAAc,EAAE,OAAO,MAAM;AACnCA,oBAAA,oBAAG;AAC5B,QAAM,OAAOpD;AACb,QAAM,aAAa;AASnB,iBAAeqD,oBAAkB,MAAM,MAAM;AACzC,UAAM,aAAa,OAAO,SAAS,YAAe,GAAA,KAAK,kBAAkB,IAAI,IAAI;AACjF,UAAM,YAAW,GAAI,WAAW,iBAAiB,EAAE,OAAO,YAAY;AACtE,qBAAiB,QAAQ,UAAU;AAC/B,YAAM,KAAK,IAAI;AAAA,IACvB;AAAA,EACA;AACAD,oBAAA,oBAA4BC;;;;;;;;;ACnB5B,SAAO,eAAeC,eAAS,cAAc,EAAE,OAAO,MAAM;AACvCA,gBAAA,gBAAG;AAExB,QAAM,QAAQ;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACH;AAED,QAAM,OAAO;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACH;AAED,QAAM,WAAW;AAAA,IACb;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACH;AAED,QAAM,eAAe;AAAA,IACjB,CAAC,UAAU,WAAW,SAAS;AAAA,IAC/B,CAAC,UAAU,WAAW,UAAU;AAAA,IAChC,CAAC,WAAW,YAAY,WAAW;AAAA,IACnC,CAAC,UAAU,WAAW,UAAU;AAAA,IAChC,CAAC,WAAW,YAAY,WAAW;AAAA,IACnC,CAAC,WAAW,YAAY,WAAW;AAAA,IACnC,CAAC,YAAY,aAAa,YAAY;AAAA,IACtC,CAAC,cAAc,eAAe,cAAc;AAAA,IAC5C,CAAC,eAAe,gBAAgB,eAAe;AAAA,EAClD;AAOD,WAAS,kBAAkB,OAAO;AAC9B,QAAI,UAAU,GAAG;AACb,aAAO;AAAA,IACf;AACI,QAAI,eAAe;AAEnB,UAAM,WAAW,KAAK,MAAM,QAAQ,GAAG;AACvC,QAAI,WAAW,GAAG;AACd,sBAAgB,SAAS,QAAQ;AACjC,eAAS,WAAW;AAAA,IAC5B;AAEI,QAAI,QAAQ,GAAG;AACX,UAAI,aAAa,SAAS,GAAG;AACzB,wBAAgB;AAAA,MAC5B;AACQ,UAAI,QAAQ,IAAI;AAGZ,wBAAgB,MAAM,KAAK;AAAA,MACvC,OACa;AAGD,wBAAgB,KAAK,KAAK,MAAM,QAAQ,EAAE,IAAI,CAAC;AAC/C,cAAM,YAAY,QAAQ;AAC1B,YAAI,YAAY,GAAG;AACf,0BAAgB;AAChB,0BAAgB,MAAM,SAAS;AAAA,QAC/C;AAAA,MACA;AAAA,IACA;AACI,WAAO;AAAA,EACX;AAUA,WAAS,gBAAgB,OAAO;AAC5B,UAAM,YAAY,QAAQ;AAC1B,QAAI,QAAQ,MAAM,KAAK,cAAc,GAAG;AACpC,aAAO;AAAA,IACf;AACI,UAAM,cAAc,QAAQ;AAC5B,QAAK,eAAe,OAAO,eAAe,MAAM,cAAc,MAAO,YAAY,GAAG;AAChF,aAAO;AAAA,IACf;AACI,WAAO,cAAc,IAAI,IAAI;AAAA,EACjC;AASA,WAAS,iBAAiB,cAAc,OAAO,OAAO;AAClD,QAAI,aAAa;AACjB,UAAM,UAAU,KAAK,IAAI,KAAM,QAAQ,CAAC;AACxC,QAAI,OAAO;AACX,QAAI,WAAW,OAAO;AAGlB,cAAQ,iBAAiB,cAAc,OAAO,QAAQ,CAAC;AACvD,YAAM,SAAS,QAAQ;AACvB,mBAAa,KAAK,MAAM,MAAM;AAC9B,UAAI,aAAa,KAAK,SAAS,GAAG;AAC9B,qBAAa,QAAQ;AAAA,MACjC;AACQ,aAAO,QAAQ,aAAa;AAC5B,UAAI,aAAa,GAAG;AAEhB,YAAI,aAAa,KAAK,aAAa,KAAK,SAAS,KAAK,SAAS,GAAG;AAC9D,uBAAa,QAAQ,kBAAkB,UAAU;AACjD,uBAAa,QAAQ;AAAA,QACrC;AAAA,MACA;AACQ,UAAI,aAAa,GAAG;AAChB,cAAM,SAAS,aAAa,KAAK;AACjC,YAAI,WAAW,QAAW;AACtB,gBAAM,SAAS,gBAAgB,UAAU;AACzC,uBAAa,QAAQ,OAAO,MAAM;AAAA,QAClD;AAAA,MACA;AAAA,IACA;AACI,WAAO;AAAA,EACX;AAOA,WAAS,SAAS,OAAO;AACrB,QAAI,UAAU,GAAG;AAEb,aAAO,MAAM,CAAC;AAAA,IACtB;AACI,UAAM,eAAe;AAAA,MACjB,MAAM;AAAA,IACT;AACD,UAAM,aAAa,iBAAiB,cAAc,OAAO,CAAC;AAC1D,QAAI,aAAa,GAAG;AAChB,UAAI,aAAa,KAAK,SAAS,GAAG;AAC9B,qBAAa,QAAQ;AAAA,MACjC;AACQ,mBAAa,QAAQ,kBAAkB,UAAU;AAAA,IACzD;AACI,WAAO,aAAa;AAAA,EACxB;AAQA,WAASC,gBAAc,OAAO;AAE1B,QAAI,QAAQ,GAAG;AACX,cAAQ,QAAQ;AAAA,IACxB;AACI,WAAO,SAAS,KAAK,MAAM,KAAK,CAAC;AAAA,EACrC;AACAD,gBAAA,gBAAwBC;;;;;;;ACrMxB,SAAO,eAAeC,kBAAS,cAAc,EAAE,OAAO,MAAM;AACpCA,mBAAA,mBAAGA,iBAAuB,kBAAGA,iBAAqB,gBAAGA,kCAAyBA,iBAAA,mBAA2B;AACjI,QAAM,kBAAkBxD,qBAA0B;AAIlD,QAAM,sBAAsB,CAAE;AAI9B,QAAM,oBAAoB,CAAE;AAI5B,QAAM,mBAAmB,CAAE;AAI3B,QAAM,qBAAqB,CAAE;AAI7B,QAAM,mBAAmB;AAAA,IACrB,CAAC,IAAI,KAAK,MAAM,OAAO,MAAM,KAAK,MAAM,OAAO,QAAQ,IAAI;AAAA,IAC3D,CAAC,IAAI,KAAK,MAAM,OAAO,MAAM,KAAK,MAAM,OAAO,QAAQ,IAAI;AAAA,IAC3D,CAAC,IAAI,KAAK,MAAM,OAAO,MAAM,KAAK,MAAM,OAAO,QAAQ,IAAI;AAAA,EAC9D;AAID,QAAM,qBAAqB;AAAA,IACvB,CAAC,IAAI,KAAK,MAAM,OAAO,MAAM,KAAK,MAAM,OAAO,QAAQ,IAAI;AAAA,IAC3D,CAAC,IAAI,KAAK,MAAM,OAAO,MAAM,KAAK,MAAM,OAAO,QAAQ,IAAI;AAAA,IAC3D,CAAC,IAAI,KAAK,MAAM,OAAO,MAAM,KAAK,MAAM,OAAO,QAAQ,IAAI;AAAA,EAC9D;AASD,WAAS,YAAY,OAAO,iBAAiB,OAAO;AAChD,QAAI,MAAM,KAAK,MAAM,QAAW;AAC5B,aAAO,MAAM,KAAK;AAAA,IAC1B;AACI,QAAI,SAAS;AACb,QAAI,QAAQ,IAAI;AACZ,UAAI,SAAS;AACb,eAAS;AACT,aAAO,SAAS,GAAG;AACf,cAAM,SAAS,SAAS;AACxB,iBAAS,OAAO,aAAa,SAAS,eAAe,IAAI;AACzD,YAAI,WAAW,QAAQ;AACnB;AAAA,QAChB;AACY,iBAAS,KAAK,MAAM,SAAS,EAAE;AAAA,MAC3C;AAAA,IACA,OACS;AACD,eAAS,QAAQ,OAAO,aAAa,QAAQ,eAAe,IAAI;AAAA,IACxE;AACI,WAAQ,MAAM,KAAK,IAAI;AAAA,EAC3B;AASA,WAAS,iBAAiB,OAAO;AAC7B,WAAO,YAAY,OAAO,IAAI,mBAAmB;AAAA,EACrD;AACAwD,mBAAA,mBAA2B;AAS3B,WAAS,eAAe,OAAO;AAC3B,WAAO,YAAY,OAAO,IAAI,iBAAiB;AAAA,EACnD;AACAA,mBAAA,iBAAyB;AASzB,WAAS,WAAW,OAAO,OAAO,OAAO;AACrC,QAAI,MAAM,KAAK,MAAM,QAAW;AAC5B,aAAO,MAAM,KAAK;AAAA,IAC1B;AACI,QAAI,QAAQ;AACZ,QAAI,SAAS;AACb,QAAI,SAAS;AACb,QAAI,SAAS;AACb,WAAO,SAAS,GAAG;AACf,YAAM,SAAS,SAAS;AACxB,eAAS,MAAM,KAAK,EAAE,MAAM,IAAI;AAChC,UAAI,WAAW,QAAQ;AACnB;AAAA,MACZ;AACQ,eAAS,KAAK,MAAM,SAAS,MAAM;AACnC;AACA,gBAAU;AAAA,IAClB;AACI,WAAQ,MAAM,KAAK,IAAI;AAAA,EAC3B;AASA,WAAS,cAAc,OAAO;AAC1B,WAAO,WAAW,OAAO,kBAAkB,gBAAgB;AAAA,EAC/D;AACAA,mBAAA,gBAAwB;AASxB,WAAS,gBAAgB,OAAO;AAC5B,WAAO,WAAW,OAAO,oBAAoB,kBAAkB;AAAA,EACnE;AACAA,mBAAA,kBAA0B;AAS1B,WAASC,mBAAiB,OAAO,OAAO,MAAM;AAC1C,YAAQ,MAAI;AAAA,MACR,KAAK;AACD,eAAO,MAAM,SAAU;AAAA,MAC3B,KAAK;AACD,eAAO,QAAQ;AAAA,MACnB,KAAK;AACD,eAAO,QAAQ;AAAA,MACnB,KAAK;AACD,eAAO,MAAM,QAAQ;AAAA,MACzB,KAAK;AAAA,MACL,KAAK;AACD,eAAO,OAAO;AAAA,MAClB,KAAK;AACD,eAAO,OAAO,QAAQ;AAAA,MAC1B,KAAK;AACD,eAAO,iBAAiB,KAAK;AAAA,MACjC,KAAK;AACD,eAAO,iBAAiB,KAAK,IAAI;AAAA,MACrC,KAAK;AACD,eAAO,iBAAiB,KAAK,IAAI;AAAA,MACrC,KAAK;AACD,eAAO,MAAM,iBAAiB,KAAK,IAAI;AAAA,MAC3C,KAAK;AACD,eAAO,eAAe,KAAK;AAAA,MAC/B,KAAK;AACD,eAAO,eAAe,KAAK,IAAI;AAAA,MACnC,KAAK;AACD,eAAO,eAAe,KAAK,IAAI;AAAA,MACnC,KAAK;AACD,eAAO,MAAM,eAAe,KAAK,IAAI;AAAA,MACzC,KAAK;AACD,eAAO,gBAAgB,KAAK;AAAA,MAChC,KAAK;AACD,eAAO,gBAAgB,KAAK,IAAI;AAAA,MACpC,KAAK;AACD,eAAO,gBAAgB,KAAK,IAAI;AAAA,MACpC,KAAK;AACD,eAAO,MAAM,gBAAgB,KAAK,IAAI;AAAA,MAC1C,KAAK;AACD,eAAO,cAAc,KAAK;AAAA,MAC9B,KAAK;AACD,eAAO,cAAc,KAAK,IAAI;AAAA,MAClC,KAAK;AACD,eAAO,cAAc,KAAK,IAAI;AAAA,MAClC,KAAK;AACD,eAAO,MAAM,cAAc,KAAK,IAAI;AAAA,MACxC,KAAK;AACD,gBAAW,GAAA,gBAAgB,eAAe,KAAK;AAAA,MACnD,KAAK;AACD,mBAAW,gBAAgB,eAAe,KAAK,IAAI;AAAA,MACvD,KAAK;AACD,mBAAW,gBAAgB,eAAe,KAAK,IAAI;AAAA,MACvD;AACI,eAAO;AAAA,IACnB;AAAA,EACA;AACAD,mBAAA,mBAA2BC;;;;;;;;AC9M3B,SAAO,eAAeC,aAAS,cAAc,EAAE,OAAO,MAAM;AACzCA,cAAA,cAAG;AAMtB,WAASC,cAAY,OAAO,aAAa;AACrC,WAAO,UAAU,OAAO,cAAc;AAAA,EAC1C;AACAD,cAAA,cAAsBC;;;;;;;;;ACVtB,SAAO,eAAeC,aAAS,cAAc,EAAE,OAAO,MAAM;AACzCA,cAAA,cAAG;AACtB,QAAM,aAAa,CAAC,GAAG,IAAI,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,GAAG;AAM5D,WAASC,cAAY,OAAO,YAAY,GAAG;AACvC,QAAI,UAAU,QAAW;AACrB,aAAO;AAAA,IACf;AACI,QAAI,QAAQ,MAAM,GAAG;AACjB,aAAO;AAAA,IACf,OACS;AACD,aAAO,KAAK,MAAM,QAAQ,WAAW,SAAS,IAAI,KAAe,IAAI,WAAW,SAAS;AAAA,IACjG;AAAA,EACA;AACAD,cAAA,cAAsBC;;;;;;;ACnBtB,SAAO,eAAeC,cAAS,cAAc,EAAE,OAAO,MAAM;AACxCA,eAAA,eAAG;AACvB,QAAM,gBAAgB9D,mBAAwB;AAM9C,WAAS+D,eAAa,OAAO,YAAY,GAAG;AACxC,QAAI,UAAU,MAAM;AAChB,aAAO;AAAA,IACf;AACI,QAAI,QAAQ,MAAM,GAAG;AACjB,aAAO,MAAM,SAAU;AAAA,IAC/B;AACI,YAAW,GAAA,cAAc,aAAa,OAAO,SAAS,EAAE,WAAW,QAAQ,KAAK,GAAG;AAAA,EACvF;AACAD,eAAA,eAAuBC;;;;;;;;ACjBvB,SAAO,eAAeC,mBAAS,cAAc,EAAE,OAAO,MAAM;AACnCA,oBAAA,oBAAG;AAC5B,QAAM,gBAAgBhE,mBAAwB;AAC9C,QAAM,aAAa,CAAC,IAAI,MAAM,OAAO,QAAQ,SAAS,UAAU,WAAW,YAAY,WAAW;AAOlG,WAASiE,oBAAkB,OAAO,YAAY,YAAY,GAAG;AACzD,QAAI,UAAU,MAAM;AAChB,aAAO;AAAA,IACf;AACI,QAAI,QAAQ,MAAM,GAAG;AACjB,UAAI,YAAY;AACZ,eAAO,MAAM,SAAQ,IAAK,WAAW,SAAS,EAAE,QAAQ,KAAK,GAAG;AAAA,MAC5E,OACa;AACD,eAAO,MAAM,SAAU;AAAA,MACnC;AAAA,IACA;AACI,UAAM,KAAQ,GAAA,cAAc,aAAa,OAAO,SAAS,EAAE,QAAQ,SAAS;AAC5E,QAAI,YAAY;AACZ,aAAO,EAAE,QAAQ,KAAK,GAAG;AAAA,IACjC,OACS;AACD,aAAO,EAAE,QAAQ,WAAW,SAAS,GAAG,EAAE,EAAE,QAAQ,KAAK,GAAG;AAAA,IACpE;AAAA,EACA;AACAD,oBAAA,oBAA4BC;;;;;;;;AC9B5B,SAAO,eAAeC,mBAAS,cAAc,EAAE,OAAO,MAAM;AACnCA,oBAAA,oBAAG;AAC5B,QAAM,sBAAsBlE,yBAA8B;AAO1D,WAASmE,oBAAkB,OAAO,YAAY,YAAY,GAAG;AACzD,QAAI;AACJ,QAAI,OAAO,UAAU,UAAU;AAC3B,aAAU,GAAA,oBAAoB,mBAAmB,OAAO,YAAY,SAAS;AAAA,IACrF,OACS;AACD,YAAM;AAAA,IACd;AACI,UAAM,QAAQ,IAAI,MAAM,GAAG;AAC3B,QAAI,SAAS;AACb,UAAM,cAAc,MAAM,CAAC,EAAE,SAAS;AACtC,aAAS,IAAI,GAAG,KAAK,aAAa,KAAK;AACnC,eAAS,MAAM,CAAC,EAAE,cAAc,CAAC,IAAI;AACrC,UAAI,IAAI,gBAAgB,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK;AAChE,iBAAS,MAAM;AAAA,MAC3B;AAAA,IACA;AACI,QAAI,MAAM,SAAS,GAAG;AAClB,aAAO,SAAS,MAAM,MAAM,CAAC;AAAA,IACrC,OACS;AACD,aAAO;AAAA,IACf;AAAA,EACA;AACAD,oBAAA,oBAA4BC;;;;;;;;ACjC5B,SAAO,eAAeC,gBAAS,cAAc,EAAE,OAAO,MAAM;AACtCA,iBAAA,iBAAG;AAQzB,WAASC,iBAAe,OAAO;AAC3B,WAAO,CAAC,CAAC,SAAS,UAAU;AAAA,EAChC;AACAD,iBAAA,iBAAyBC;;;;;;;;ACZzB,SAAO,eAAeC,gBAAS,cAAc,EAAE,OAAO,MAAM;AACtCA,iBAAA,iBAAG;AACzB,QAAM,qBAAqBtE,wBAA6B;AAIxD,QAAM,eAAe,CAAC,MAAM,MAAM,IAAI;AAWtC,WAASuE,iBAAe,QAAQ,QAAQ,GAAG,MAAM,OAAO;AACpD,QAAI,SAAS;AACb,QAAI,CAAC,MAAM;AACP,aAAO,aAAa,QAAQ,CAAC;AAAA,IACrC;AACI,QAAI,UAAU,QAAW;AACrB,eAAS,OAAO,KAAK,KAAK,KAAK;AAAA,IACvC;AACI,YAAQ,MAAI;AAAA,MACR,KAAK;AAAA,MACL,KAAK;AACD,iBAAS,QAAQ;AACjB,iBAAS,IAAI,QAAQ,GAAG,KAAK,GAAG,KAAK;AACjC,mBAAS,OAAO,CAAC,IAAI,MAAM;AAAA,QAC3C;AACY;AAAA,MACJ,KAAK;AAAA,MACL,KAAK;AACD,iBAAS,KAAK;AACd,iBAAS,IAAI,QAAQ,GAAG,KAAK,GAAG,KAAK;AACjC,mBAAS,OAAO,CAAC,IAAI,MAAM;AAAA,QAC3C;AACY;AAAA,MACJ;AACI,kBAAS,GAAI,mBAAmB,kBAAkB,OAAO,IAAI;AAAA,IACzE;AACI,WAAO,KAAK,IAAI;AAChB,WAAO,SAAS,QAAQ;AACxB,WAAO;AAAA,EACX;AACAD,iBAAA,iBAAyBC;;;;;;;;AC/CzB,SAAO,eAAe,eAAS,cAAc,EAAE,OAAO,MAAM;AACtC,gBAAA,iBAAG;AACzB,QAAM,gBAAgBvE,mBAAwB;AAM9C,WAAS,eAAe,OAAO,YAAY;AACvC,QAAI,eAAe,GAAG;AAClB,aAAO;AAAA,IACf,OACS;AACD,YAAM,SAAU,QAAQ,MAAO;AAC/B,aAAO,SAAS,IAAI,KAAQ,GAAA,cAAc,aAAa,QAAQ,CAAC;AAAA,IACxE;AAAA,EACA;AACA,gBAAA,iBAAyB;;;;;;;;ACjBzB,SAAO,eAAewE,oBAAS,cAAc,EAAE,OAAO,MAAM;AAClCA,qBAAA,qBAAG;AAC7B,QAAM,oBAAoBxE,uBAA4B;AACtD,QAAM,gBAAgBY,mBAAwB;AAC9C,QAAM,kBAAkBW,qBAA0B;AAKlD,WAAS,QAAQ,OAAO;AACpB,QAAI,UAAU,GAAG;AACb,aAAO;AAAA,IACf;AACI,UAAM,WAAW,QAAQ;AACzB,QAAI,YAAY,KAAK,YAAY;AAC7B,aAAO;AACX,YAAQ,WAAW,IAAE;AAAA,MACjB,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO;AAAA,IACnB;AACI,WAAO;AAAA,EACX;AAKA,WAAS,SAAS,OAAO;AACrB,QAAI,UAAU,GAAG;AACb,aAAO;AAAA,IACf;AACI,UAAM,WAAW,QAAQ;AACzB,QAAI,YAAY,KAAK,YAAY;AAC7B,aAAO;AACX,YAAQ,WAAW,IAAE;AAAA,MACjB,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACD,eAAO;AAAA,IACnB;AACI,WAAO;AAAA,EACX;AAQA,WAASkD,qBAAmB,OAAO,WAAW,IAAI,cAAc,OAAO,cAAc,OAAO;AACxF,QAAI,QAAQ,GAAG;AACX,cAAQ,QAAQ;AAAA,IACxB;AACI,QAAI,WAAW;AACf,UAAM,WAAW,KAAK,MAAM,KAAK;AACjC,UAAM,aAAgB,GAAA,cAAc,cAAc,QAAQ,YAAY,KAAK,CAAC;AAC5E,QAAI,CAAC,UAAU;AACX,iBAAW,QAAQ,QAAQ;AAAA,IACnC;AACI,gBAAe,GAAA,gBAAgB,eAAe,QAAQ,IAAI,MAAM;AAChE,QAAI,cAAc,KAAK,aAAa;AAChC,kBAAY,cACN,OAAU,GAAA,gBAAgB,eAAe,SAAS,IAAI,MAAM,SAAS,SAAS,IAC9E,OAAU,GAAA,kBAAkB,iBAAiB,WAAW,CAAC,IAAI;AAAA,IAC3E;AACI,WAAO;AAAA,EACX;AACAD,qBAAA,qBAA6BC;;;;;;;;ACpE7B,SAAO,eAAeC,gBAAS,cAAc,EAAE,OAAO,MAAM;AACtCA,iBAAA,iBAAG;AAKzB,WAASC,iBAAe,MAAM;AAC1B,WAAO,KAAK,MAAM,KAAK,UAAU,IAAI,CAAC;AAAA,EAC1C;AACAD,iBAAA,iBAAyBC;;;;;;;;ACTzB,SAAO,eAAeC,WAAS,cAAc,EAAE,OAAO,MAAM;AAC3CA,YAAA,YAAG;AASpB,WAASC,YAAU,MAAM,GAAG,MAAM,KAAK;AACnC,UAAM,KAAK,KAAK,GAAG;AACnB,UAAM,KAAK,MAAM,GAAG;AACpB,WAAO,KAAK,MAAM,KAAK,OAAM,KAAM,MAAM,MAAM,KAAK,GAAG;AAAA,EAC3D;AACAD,YAAA,YAAoBC;;;;;;;;ACfpB,SAAO,eAAeC,SAAS,cAAc,EAAE,OAAO,MAAM;AAC7CA,UAAA,UAAG;AASlB,WAASC,UAAQ,KAAK,OAAO,MAAM;AAC/B,QAAI,CAAC,MAAM,QAAQ,IAAI,GAAG;AACtB,aAAO,KAAK,MAAM,GAAG;AAAA,IAC7B;AACI,QAAI;AACJ,SAAK,QAAQ,GAAG,QAAQ,KAAK,SAAS,GAAG,SAAS;AAC9C,YAAM,cAAc,KAAK,KAAK;AAC9B,UAAI,CAAC,IAAI,WAAW,GAAG;AACnB,YAAI,OAAO,QAAQ,UAAU;AACzB,gBAAM,IAAI,MAAM,4BAA4B;AAAA,QAC5D;AACY,YAAI,WAAW,IAAI,CAAE;AAAA,MACjC;AACQ,YAAM,IAAI,WAAW;AAAA,IAC7B;AACI,QAAI,KAAK,KAAK,CAAC,IAAI;AAAA,EACvB;AACAD,UAAA,UAAkBC;;;;;;;;;AC3BlB,WAAO,eAAc,SAAU,cAAc,EAAE,OAAO,MAAM;AAC5D,YAAA,sBAA8B,QAAmB,WAAA,QAAA,QAAgB,QAAiB,SAAA,QAAA,UAAkB,QAAe,OAAA,QAAA,QAAgB,QAAgB,QAAA,QAAA,OAAe,QAAgB,QAAA,QAAA,UAAkB,QAAiB,SAAA,QAAA,QAAgB,QAAa,KAAA,QAAA,WAAmB,QAAc,MAAA,QAAA,QAAgB,QAAe,OAAA,QAAA,OAAe,QAAe,OAAA,QAAA,MAAc,QAAc,MAAA,QAAA,WAAmB,QAAoB,YAAA,QAAA,MAAc,QAAe,OAAA,QAAA,OAAe,QAAsB,cAAA;AACrd,UAAM,mBAAmB/E,sBAA2B;AAMpD,aAASgF,aAAY,MAAM,QAAQ;AAC/B,aAAO,oBAAoB,MAAM,EAAE,IAAI;AAAA,IAC3C;AACA,YAAA,cAAsBA;AACtB,UAAM,aAAa,CAAC,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;AACrE,UAAM,QAAQ;AASd,aAAS,KAAK,MAAM;AAEhB,YAAM,UAAU,KAAK,MAAM,KAAK;AAChC,UAAI,CAAC,SAAS;AACV,eAAO;AAAA,MACf;AACI,YAAM,OAAO,CAAC,QAAQ,CAAC;AACvB,YAAM,QAAQ,CAAC,QAAQ,CAAC;AACxB,YAAM,MAAM,CAAC,QAAQ,CAAC;AACtB,aAAO,SAAS,KAAK,SAAS,MAAM,OAAO,KAAK,QAAQ,UAAU,MAAK,GAAI,iBAAiB,YAAY,IAAI,IAAI,KAAK,WAAW,KAAK;AAAA,IACzI;AACA,YAAA,OAAe;AACf,UAAM,OAAO;AASb,aAAS,KAAK,MAAM,MAAM;AACtB,YAAM,UAAU,KAAK,MAAM,IAAI;AAC/B,UAAI,CAAC,SAAS;AACV,eAAO;AAAA,MACf;AACI,YAAM,OAAO,OAAO,QAAQ,CAAC,CAAC;AAC9B,YAAM,SAAS,OAAO,QAAQ,CAAC,CAAC;AAChC,YAAM,SAAS,OAAO,QAAQ,CAAC,CAAC;AAChC,YAAM,WAAW,QAAQ,CAAC;AAC1B,cAAU,QAAQ,MAAM,UAAU,MAAM,UAAU,MAAQ,SAAS,MAAM,WAAW,MAAM,WAAW,QAChG,CAAC,QAAQ,aAAa;AAAA,IAC/B;AACA,YAAA,OAAe;AACf,UAAM,eAAe;AAQrB,aAAS,IAAI,MAAM;AACf,aAAO,aAAa,KAAK,IAAI;AAAA,IACjC;AACA,YAAA,MAAc;AACd,UAAM,sBAAsB;AAS5B,aAAS,UAAU,MAAM;AAErB,YAAM,WAAW,KAAK,MAAM,mBAAmB;AAC/C,aAAO,SAAS,WAAW,KAAK,KAAK,SAAS,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,GAAG,IAAI;AAAA,IAC/E;AACA,YAAA,YAAoB;AACpB,UAAM,WAAW;AAQjB,aAAS,SAAS,MAAM;AACpB,aAAO,KAAK,UAAU,OAAO,SAAS,KAAK,IAAI;AAAA,IACnD;AACA,YAAA,WAAmB;AACnB,UAAM,mBAAmB;AACzB,UAAM,MAAM;AAQZ,aAAS,IAAI,MAAM;AACf,aAAO,iBAAiB,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI;AAAA,IACvD;AACA,YAAA,MAAc;AACd,UAAM,MAAM;AAQZ,aAAS,IAAI,MAAM;AACf,aAAO,IAAI,KAAK,IAAI;AAAA,IACxB;AACA,YAAA,MAAc;AACd,UAAM,OAAO;AAQb,aAAS,KAAK,MAAM;AAChB,aAAO,KAAK,KAAK,IAAI;AAAA,IACzB;AACA,YAAA,OAAe;AACf,UAAM,OAAO;AAQb,aAAS,KAAK,MAAM;AAChB,aAAO,KAAK,KAAK,IAAI;AAAA,IACzB;AACA,YAAA,OAAe;AACf,UAAM,OAAO;AAQb,aAAS,KAAK,MAAM;AAChB,aAAO,KAAK,KAAK,IAAI;AAAA,IACzB;AACA,YAAA,OAAe;AACf,UAAM,WAAW;AAQjB,aAAS,MAAM,MAAM;AACjB,UAAI,SAAS,KAAK,IAAI,GAAG;AACrB,eAAO;AAAA,MACf;AACI,UAAI;AAEA,eAAO,IAAI,OAAO,IAAI,MAAM;AAAA,MACpC,SACW,GAAG;AACN,eAAO;AAAA,MACf;AAAA,IACA;AACA,YAAA,QAAgB;AAChB,UAAM,cAAc,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAQ9C,aAAS,IAAI,MAAM;AACf,aAAO,KAAK,QAAQ,UAAU,EAAE;AAChC,UAAI,KAAK,WAAW,IAAI;AACpB,YAAI,MAAM;AACV,iBAAS,IAAI,GAAG,IAAI,GAAG,KAAK;AACxB,gBAAM,MAAM,OAAO,KAAK,CAAC,CAAC;AAC1B,cAAI,CAAC,MAAM,GAAG,GAAG;AACb,mBAAO,MAAM,YAAY,CAAC;AAAA,UAC1C;AAAA,QACA;AACQ,eAAO,MAAM,OAAO,OAAO,KAAK,CAAC,CAAC;AAAA,MAC1C;AACI,aAAO;AAAA,IACX;AACA,YAAA,MAAc;AAId,YAAmB,WAAA;AAAA,MACf,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,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","x_google_ignoreList":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,65,66]}